Thứ Ba, 18 tháng 12, 2018

Bộ điều khiển hồ cá v3.0

PIC CCS C

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 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ấugiá 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ấuhàm số
I2CBus dữ liệu nối tiếp I2C
1WireXe buýt 1Wire để kết nối cảm biến nhiệt độ
ICSPLiên kết lập trình vi điều khiển ICSP
LCDỔ cắm màn hình LCD
chìa khóaNú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 - AN3Các ổ cắm của bộ chuyển đổi kỹ thuật số tương tự
EXT1Trình kết nối đang chờ triển khai
EXT2Trì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.
DS1307
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).
DS18B20
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.
MOC2063
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. 
FK237
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 raDB4DB5DB6DB7ERSRWGNDuccuoMộtK
Pin hiển thị111213146451231516
Pin của ổ cắm màn hình6789534212102
Đầu ra vi điều khiểnD4C5C4D3D5D7D6GND5VGNDD2GND

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ínhDi chuyển xuốngđệ trìnhVuốt lên
Chức năng trong chức năng đã chọntrừđệ trìnhthê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áitrung tâmđúng
Chức năng trong menu chínhDi chuyển xuốngđệ trìnhVuốt lên
Chức năng trong chức năng đã chọntrừđệ trìnhthê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ượngnghĩ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.
 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ú.

5. Tài liệu tham khảo

Nguồn: http://noweenergie.org/index.php?0/Article/25

Không có nhận xét nào:

Đăng nhận xét

Bài đăng mới nhất

Valdes Fernando - Microcontrollers Applications With Pic

Bài đăng phổ biến