Mục tiêu
Mục tiêu của dự án là xây dựng một bộ điều khiển hồ cá sẽ:
- điều khiển ánh sáng - bật và tắt tại thời điểm đã đặt,
- kiểm soát nhiệt độ nước trong bể và trình bày trên màn hình LCD,
- báo hiệu âm thanh khi nhiệt độ vượt quá 29 ° C,
- điều khiển lò sưởi để duy trì nhiệt độ cài đặt trong bể,
- kiểm soát thức ăn
- điều khiển máy sục khí.
Thay đổi trong phiên bản 3.0
Bộ điều khiển là phiên bản mới của hệ thống được mô tả trong bài viết "Bộ điều khiển hồ cá v2.0 ".
Thay đổi ngụ ý:
Thay đổi ngụ ý:
- thay thế bàn phím bằng một điện trở có thể điều chỉnh,
- thay thế rơle bằng triacs,
- tăng số lượng kết nối chuyển đổi analog / kỹ thuật số,
- ổ cắm đầu vào / đầu ra bổ sung,
- đầu ra điều khiển bổ sung cho các thiết bị năng lượng thấp.
1. Thiết kế PCB
Thiết bị đã được thiết kế bằng cách sử dụng các subassemblies được lắp ráp bằng phương pháp THT. Bảng mạch PCB có một lớp đường dẫn, kích thước của nó là 135mm x 95mm.
Hình. Thiết kế PCB của thiết bị cùng với sự sắp xếp của các thành phần.
2. Các thành phần của thiết bị
Hình. Bộ điều khiển hồ cá trong quá trình lắp ráp trong nhà ở
Thành phần chính là vi điều khiển PIC16F877A, điều khiển các rơle và triac kích hoạt các thiết bị bên ngoài. Nhiệm vụ của nó cũng là đọc nhiệt độ hiện tại từ cảm biến DS18B20, đọc thời gian thực từ đồng hồ DS1307 và hiển thị dữ liệu trên màn hình LCD.
Tab. Danh sách các thành phần
dấu | giá trị |
---|---|
R 1, R8, R22, R20 | 4,7kΩ |
R9, R4, R7, R15 | 3,3kΩ |
R5, R6, R16, R34 | 510Ω |
R17, R14, R19, R18, R13, R12, R11, R10 | 360Ω |
C1, C2 | 22pF |
C4 | 100nF |
C5 | 100uF |
C7, C8 | 470uF |
U1 | PIC16F877A (vi điều khiển) |
U2 | DS1307 (đồng hồ thời gian thực) |
BAT | CR2032 (pin 3,3V) |
BUZZ | HCM1005 (còi 5V) |
(gắn ra khỏi tấm) | DS18B20 (cảm biến nhiệt độ) |
U5, U6, U9, U12 | BTA16-6008 (triac) |
U4, U3, U11, U8 | MOC3061 |
U7 | LM7805 (ổn áp 5V) |
Quý 1, quý 3 | 2N3904 (bóng bán dẫn) |
D4 | cầu chỉnh lưu |
D1 | 1N4004 (diode chỉnh lưu) |
X1 | 20 MHz (thạch anh) |
X2 | 32,768 kHz (thạch anh) |
J1 - J15 | dải pin |
(gắn ra khỏi tấm) | WC1602A0 (hiển thị) |
U10 | bảo vệ varistor (ví dụ 400V) |
(gắn ra khỏi tấm) | 45kΩ Điện trở điều chỉnh logarit - gắn trên vỏ |
2.1. Connectors
Hình. Bảng chính của bộ điều khiển với các đầu nối được đánh dấu
Tab. Dấu kết nối
dấu | hàm số |
I2C | Bus dữ liệu nối tiếp I2C |
1Wire | Xe buýt 1Wire để kết nối cảm biến nhiệt độ |
ICSP | Liên kết lập trình vi điều khiển ICSP |
LCD | Ổ cắm màn hình LCD |
chìa khóa | Núm điều khiển / ổ cắm bàn phím |
không khí | Ổ cắm sục khí (230 VAC) |
nuôi | Ổ cắm cho ăn (230 VAC) |
la | Ổ cắm chiếu sáng (230 VAC) |
gr | Ổ cắm nóng (230 VAC) |
Zas | Ổ cắm điện (230 VAC) |
AN0 - AN3 | Các ổ cắm của bộ chuyển đổi kỹ thuật số tương tự |
EXT1 | Trình kết nối đang chờ triển khai |
EXT2 | Trình kết nối đang chờ triển khai |
2.2. vi điều khiển
Bộ vi điều khiển PIC16F877A bốn mươi pin với công suất tính toán 5 MIPS. Nó được nhà sản xuất trang bị trong số những thứ khác trong PWM, bus I2C và trong bộ điều chỉnh kỹ thuật số tương tự tám kênh mười bit. Hoạt động trong phạm vi điện áp từ 2V đến 5,5V. Nó cung cấp cho bạn bộ nhớ Flash 14KB và bộ nhớ 368 B. Nó có hai bộ định thời 8 bit và một bộ hẹn giờ 16 bit.
Vẽ chì PIC16F877A (nguồn: Lưu ý danh mục) .
2.3. Đồng hồ thời gian thực
Chip DS1307 là đồng hồ thời gian thực. Bộ vi điều khiển đọc thời gian hiện tại từ đồng hồ thông qua bus I2C. Nếu nguồn điện bên ngoài không thành công, đồng hồ sẽ tự động chuyển sang nguồn khẩn cấp từ pin 3.2V.
Hình. Đồng hồ thời gian thực DS1307.
2.4. Cảm biến nhiệt độ
Việc đọc nhiệt độ được thực hiện bằng cảm biến DS18B20. Giao tiếp giữa vi điều khiển và cảm biến diễn ra trên bus 1Wire, cho phép kết nối đồng thời nhiều cảm biến. Một hệ thống được cài đặt trên bo mạch của mô-đun, cảm biến nhiệt độ nước trong bể phải được kết nối với đầu nối 1Wire (chương 2.1).
Hình. Dịch chuyển của DS18B20
2.5. triacs
Hai loại triacs BTA16-6008 trong vỏ TO-220 có tải tối đa 16A và điện áp tối đa 600V (theo ghi chú của danh mục ) được điều khiển bởi bộ vi điều khiển thông qua bộ cách ly quang MOC3063. Chúng thực hiện chức năng điều khiển các thiết bị bên ngoài.
Hình. Điều khiển Triac bằng máy quang điện MOC3063 (nguồn: Lưu ý danh mục) .
Các triac được trang bị làm mát với bộ tản nhiệt FK237 với khả năng chịu nhiệt 21 ° C / W.
Hình. Bộ tản nhiệt FK237 (nguồn: Lưu ý danh mục).
2.6. Màn hình LCD
Thiết bị sử dụng màn hình ký tự hai dòng với đèn nền màn hình tích hợp với ký hiệu WC1602A0. Nó được kết nối với ổ cắm hiển thị trên PCB (chương 2.1).
Hình. Sơ đồ kết nối màn hình LCD với các cổng vi điều khiển
Tab. Danh sách các kết nối màn hình LCD
Hiển thị đầu ra | DB4 | DB5 | DB6 | DB7 | E | RS | RW | GND | ucc | uo | Một | K |
Pin hiển thị | 11 | 12 | 13 | 14 | 6 | 4 | 5 | 1 | 2 | 3 | 15 | 16 |
Pin của ổ cắm màn hình | 6 | 7 | 8 | 9 | 5 | 3 | 4 | 2 | 1 | 2 | 10 | 2 |
Đầu ra vi điều khiển | D4 | C5 | C4 | D3 | D5 | D7 | D6 | GND | 5V | GND | D2 | GND |
2.7. kiểm soát
Điều khiển thiết bị, chọn tùy chọn từ menu, v.v ... được thực hiện bằng cách sử dụng núm điều khiển (2.7.1). Ngoài ra, một bàn phím được tạo thành từ ba phím (2.7.2) có thể được sử dụng.
2.7.1. Núm điều khiển
Thiết bị đã được trang bị một núm điều khiển. Chức năng này được thực hiện bởi một điện trở điều chỉnh logarit 45 kΩ được kết nối với ổ cắm AN1 trên PCB.
Hình. Sơ đồ kết nối điện trở điều chỉnh
Tab. Các chức năng phụ thuộc vào độ võng của núm điều khiển
trái | trung tâm | đúng | |
Chức năng trong menu chính | Di chuyển xuống | đệ trình | Vuốt lên |
Chức năng trong chức năng đã chọn | trừ | đệ trình | thêm |
2.7.2 Bàn phím điều khiển
Một tùy chọn thay thế cho phép điều khiển thiết bị là bàn phím. Nó được xây dựng từ ba nút đặt lại mà các điện trở đã được kết nối. Bàn phím phải được kết nối với ổ cắm AN1.
Hình. Sơ đồ kết nối bàn phím điều khiển
Giá trị điện trở:
- R 1 - 100Ω
- R2 - 6kΩ
- R3 - 45kΩ
Tab. Chức năng của các nút điều khiển
trái | trung tâm | đúng | |
Chức năng trong menu chính | Di chuyển xuống | đệ trình | Vuốt lên |
Chức năng trong chức năng đã chọn | trừ | đệ trình | thêm |
3. Vận hành thiết bị
3.1. Khởi động thiết bị
Trong quá trình vận hành, thiết bị sẽ phát hiện các cảm biến nhiệt độ được kết nối, tóm tắt hoạt động với một thông báo phù hợp trên màn hình.
Lần khởi động đầu tiên yêu cầu cấu hình thiết bị:
- Đặt nhiệt độ mong muốn được duy trì bằng cách tự động bật và tắt máy sưởi. Để xác định nhiệt độ, hãy chuyển đến "Menu" và sau đó chọn tùy chọn "Nhiệt độ".
- Cung cấp giờ và phút hiện tại, khi đồng hồ thời gian thực được kích hoạt; chiếu sáng, trung chuyển và sục khí.
- Sau khi thực hiện các cài đặt ở trên, có thể xác định thời gian bật đèn, bộ nạp và thiết bị sục khí.
3.2. thực đơn
Việc vào "Menu" của thiết bị được thực hiện sau khi di chuyển núm điều khiển sang phải (chương 2.8). Việc chuyển sang các chức năng menu tiếp theo được thực hiện bằng cách dừng núm xoay sang phải (mục tiếp theo trong menu) hoặc xoay núm sang phải (tùy chọn menu trước). Mục nhập vào tùy chọn đã chọn được thực hiện sau khi dừng núm ở vị trí chính giữa trong vài giây.
3.2.1. Rời khỏi thực đơn
Chọn "Thoát Menu" sẽ hiển thị "Bảng trạng thái thiết bị" (chương 3.3).
3.2.2. nhiệt độ
Để đặt nhiệt độ được duy trì bởi thiết bị, hãy chuyển đến "Menu" (chương 3.2) và chọn tùy chọn "Nhiệt độ". Sau đó bấm "Xác nhận". Đặt nhiệt độ bằng cách tăng hoặc giảm giá trị hiện tại bằng các nút "trái" và "phải". Xác nhận cài đặt hiện tại được thực hiện bằng cách nhấp vào nút "giữa".
3.2.3. Bật đèn
Việc tự động bật đèn chiếu sáng diễn ra vào một giờ và phút cố định. Sau khi vào "Menu" (chương 3.2) và chọn tùy chọn "Bật sáng", nhấp vào nút "Xác nhận", đặt giờ và phút bằng cách tăng hoặc giảm giá trị hiện tại bằng các nút "trái" và "phải". Xác nhận cài đặt giờ và phút được thực hiện bằng cách nhấp vào nút "giữa".
3.2.4. Tắt đèn
Việc tự động tắt ánh sáng diễn ra vào một giờ và phút cố định. Sau khi vào "Menu" (chương 3.2) và chọn tùy chọn "Tắt đèn", nhấp vào nút "Xác nhận", đặt giờ và phút bằng cách tăng hoặc giảm giá trị hiện tại bằng các nút "trái", "phải". Xác nhận cài đặt giờ và phút được thực hiện bằng cách nhấp vào nút "giữa".
3.2.5. sự thoáng khí
Việc tự động bật thiết bị sục khí diễn ra trong một khoảng thời gian cụ thể được tính theo giờ kể từ thời điểm lưu cài đặt. Sau khi vào "Menu" (chương 3.2) và chọn tùy chọn "sục khí", hãy đặt giá trị khoảng thời gian hàng giờ bằng cách tăng hoặc giảm giá trị hiện tại. Sau đó đặt thời gian hoạt động của thiết bị sục khí, được xác định bằng phút.
3.2.6. Thức ăn chăn nuôi
Bộ nạp của bộ nạp được tự động bật vào khoảng thời gian được chỉ định tính bằng giờ kể từ khi cài đặt được lưu. Sau khi vào "Menu" (chương 3.2) và chọn tùy chọn "Cho ăn", hãy đặt giá trị khoảng thời gian hàng giờ bằng cách tăng hoặc giảm giá trị hiện tại. Sau đó đặt thời gian cho ăn đối với thực phẩm, được chỉ định bằng giây.
3.2.7. đồng hồ
Đồng hồ thời gian thực được đặt bằng cách vào "Menu" (chương 3.2), chọn tùy chọn "Đồng hồ" và nhấp vào nút "Xác nhận". Đặt giờ và phút bằng cách tăng hoặc giảm giá trị hiện tại bằng các nút "trái" và "phải". Xác nhận cài đặt giờ và phút được thực hiện bằng cách nhấp vào nút "giữa".
3.2.8. thử nghiệm
Quy trình thử nghiệm vận hành
- chiếu sáng,
- lò sưởi
- trung chuyển
- thiết bị thông gió.
3.3 Bảng trạng thái thiết bị
Bảng trạng thái thiết bị chứa thông tin cơ bản về các thiết bị bên ngoài, thời gian hiện tại và chỉ báo nhiệt độ nước.
Hình. Bảng trạng thái thiết bị hiển thị trên màn hình LCD.
Tab. Ý nghĩa của các biểu tượng - bảng trạng thái thiết bị.
biểu tượng | nghĩa |
Nhiệt độ nước | |
Chiếu sáng trên | |
Máy sưởi đang bật | |
Sục khí trên | |
Cho ăn thức ăn | |
Thời gian hiện tại |
4. Tập tin
Hồ sơ dự án.
- Phí vi điều khiển .
- Thiết kế PCB ở định dạng PDF .
- Bản địa hóa các yếu tố trên PCB ở định dạng PDF .
Mã nguồn của các thư viện được sử dụng trong chương trình trình điều khiển.
- resistometr.c - vận hành điện trở điều chỉnh như một bộ điều khiển menu.
- lcd.c - thư viện "flex lcd" mở rộng với khả năng xác định các ký tự của riêng bạn trên màn hình.
- DS1820.c one_wire.c - hỗ trợ cho nhiều nhiệt kế DS18B20 được kết nối với bus một dây.
- ds1307.c conversion.c - dịch vụ DS1307 real-time clock.
Danh mục ghi chú.
- PIC16F877A - vi điều khiển.
- DS1307 - đồng hồ thời gian thực.
- DS18B20 - cảm biến nhiệt độ.
- MOC3063 - optoisolator kiểm soát triac.
- BTA16-6008 - triac điều khiển thiết bị bên ngoài.
5. Tài liệu tham khảo
- Chủ đề trên diễn đàn elektroda.pl liên quan đến dự án
- Một trang internet để giúp bạn thiết kế các ký tự của riêng mình cho màn hình HD44780
Không có nhận xét nào:
Đăng nhận xét