Mạch Tưới Cây Tự Động Theo Thời Gian
Yêu cầu của đề tài
Phân tích thiết kế
Linh kiện
Vi điều khiển ATmega16
Màn hình LCD1602
- Điện áp MAX : 7V
- Điện áp MIN : - 0,3V
- Điện áp ra mức thấp : <0.4V
- Điện áp ra mức cao : > 2.4
- Hoạt động ổn định : 2.7-5.5V
- Dòng điện cấp nguồn : 350uA - 600uA
- Nhiệt độ hoạt động : - 30 - 75 độ C
Chức năng từng chân của LCD1602
- Chân số 1 - VSS : chân nối đất cho LCD được nối với GND của mạch điều khiển.
- Chân số 2 - VDD : chân cấp nguồn cho LCD, được nối với VCC=5V của mạch điều khiển.
- Chân số 3 - VE : điều chỉnh độ tương phản của LCD.
- Chân số 4 - RS : chân chọn thanh ghi, được nối với logic "0" hoặc logic "1":
· Logic “0”: Bus DB0 - DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read).
· Logic “1”: Bus DB0 - DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD.
- Chân số 5 - R/W : chân chọn chế độ đọc/ghi (Read/Write), được nối với logic “0” để ghi hoặc nối với logic “1” đọc.
- Chân số 6 - E : chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân này như sau:
· Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên trong khi phát hiện một xung (high-to-low transition) của tín hiệu chân E.
· Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp.
- Chân số 7 đến 14 - D0 đến D7: 8 đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2 chế độ sử dụng 8 đường bus này là: Chế độ 8 bit (dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7) và Chế độ 4 bit (dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7).
- Chân số 15 - A : nguồn dương cho đèn nền.
- Chân số 16 - K : nguồn âm cho đèn nền.
IC DS1307
- X1 và X2: là 2 ngõ kết nối với 1 thạch anh 32.768KHz làm nguồn tạo dao động cho chip.
- VBAT: cực dương của một nguồn pin 3V nuôi chip.
- GND: chân mass chung cho cả pin 3V và Vcc.
- Vcc: nguồn cho giao diện I2C, thường là 5V và dùng chung với vi điều khiển.
Chú ý là nếu Vcc không được cấp nguồn nhưng VBAT được cấp thì DS1307 vẫn đang hoạt động (nhưng không ghi và đọc được).
- SQW/OUT: một ngõ phụ tạo xung vuông (Square Wave / Output Driver), tần số của xung được tạo có thể được lập trình. Như vậy chân này hầu như không liên quan đến chức năng của DS1307 là đồng hồ thời gian thực, chúng ta sẽ bỏ trống chân này khi nối mạch.
- SCL và SDA là 2 đường giao xung nhịp và dữ liệu của giao diện I2C.
Bộ nhớ DS1307 có tất cả 64 thanh ghi 8-bit được đánh địa chỉ từ 0 đến 63 (từ 0x00 đến 0x3F theo hệ hexadecimal). Tuy nhiên, thực chất chỉ có 8 thanh ghi đầu là dùng cho chức năng “đồng hồ” (RTC) còn lại 56 thanh ghi bỏ trông có thể được dùng chứa biến tạm như RAM nếu muốn. Bảy thanh ghi đầu tiên chứa thông tin về thời gian của đồng hồ bao gồm: giây (SECONDS), phút (MINUETS), giờ (HOURS), thứ (DAY), ngày (DATE), tháng (MONTH) và năm (YEAR). Việc ghi giá trị vào 7 thanh ghi này tương đương với việc “cài đặt” thời gian khởi động cho RTC. Việc đọc giá từ 7 thanh ghi là đọc thời gian thực mà chip tạo ra. Ví dụ, lúc khởi động chương trình, chúng ta ghi vào thanh ghi “giây” giá trị 42, sau đó 12s chúng ta đọc thanh ghi này, chúng ta thu được giá trị 54. Thanh ghi thứ 8 (CONTROL) là thanh ghi điều khiển xung ngõ ra SQW/OUT (chân 6). Tuy nhiên, do chúng ta không dùng chân SQW/OUT nên có thề bỏ qua thanh ghi thứ 8.
Relay 5 VDC
• Điện áp kích hoạt (điện áp trên cuộn dây): 5 VDC
• Dòng kích hoạt (dòng điện danh định): 70mA
• Dòng tải AC tối đa: 10A – 250/125 VAC
• Dòng tải DC tối đa: 10A – 30/28 VDC
• Thời gian hoạt động: 10ms
• Chuyển mạch tối đa: 300 lần/phút
Các chức năng chính
Triển khai
Thiết kế phần cứng
Sơ đồ nguyên lý
Thiết kế phần mềm
Xem video vận hành hệ thống:
Mạch thật sau khi hoàn thiện sản phẩm: