2 3.1 ĐIỀU KHIỂN, GIÁM SÁT MÔ HÌNH NHÀ YẾN BẰNG ĐIỆN THOẠI
3.3.3 Khối xử lí trung tâm và kết nối internet, kết nối điện thoại
Quá trình điều khiển toàn bộ hoạt động của bộ điều khiển - quản lí truyền và nhận dữ liệu với websever, điều khiển thiết bị được thực hiện bởi khối xử lí trung tâm và kết nối internet. Hiện nay trên thị trường có rất nhiều loại vi điều khiển để xử lí dữ liệu và kết nối internet như: ESP01, ESP07, ESP12E. Mỗi loại sẽ có ưu nhược điểm khác nhau được trình bày như bảng sau:
Tên Thông số nổi bật Ưu điểm Nhược điểm ESP-
01
- Sử dụng on-boảd PCB anten - Đưa ra 3 chân GPIO0, GPIO2 và GPIO6 và 2 chân TXD/RXD cho UART
- Dung lượng SPI Flash là 4Mbyte
Chân được đưa ra jumper nên có thể kết nối trực tiếp với các board khác một cách nhanh chóng.
Đơn giản, số chân GPIO ít và không có shield chống nhiễu.
ESP- 07
- Sử dụng chip on-board anten - Đưa ra 9 chân GPIO, 2 chân TX/RX cho UART, 1 chân REST để reset chip, 1 chân ADC, 1 chân CH_PD để đưa chip vào chế độ low power.
- Dung lượng SPI Flash trên board là 4Mbyte
-Nhiều chân GPIO, có shield chống nhiễu.
-Có thể tăng khoảng cách truyền bằng cách gắn thêm anten ngoài với IPEX comnector trên board. Dùng chip anten nên khoảng cách truyền không xa bằng PCB anten ESP- 12E
- Sử dung PCB anten on-board - Đưa ra 11 chân GPIO, 2 chân TX/RX cho UART, các chân cho SPI, chân RST để reset chip, 1 chân ADC.
- Dung lượng SPI Flash là 4Mbyte.
ESP-12E đứa ra nhiều chân GPIO nhất, có shield chống nhiễu và on- board PCB anten giúp truyền xa hơn.
Giá thành nhỉnh hơn ESP-01 và ESP-07.
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ
Tiến hành lựa chọn linh kiện: Từ yêu cầu thiết kế, thiết bị cần 1 module có khả
năng ổn định, chống nhiễu, truyền xa và kích thước nhỏ gọn. Qua bảng so sánh các linh kiện trên thị trường, nhận thấy ESP-12 đáp ứng được yêu cầu thiết kế. ESP-12E đưa ra nhiều chân GPIO nhất, có shield chống nhiễu và on-board PCB anten giúp truyền xa hơn. Vì vậy nhóm lựa chọn module ESP8266 có tích hợp vi điều khiển ESP-12E cho mô hình.
Bên cạnh đó Arduino là một board mạch vi điều khiển được phát triển bởi Arduino.cc, một nền tảng điện tử mã nguồn mở chủ yếu dựa trên vi điều khiển AVR Atmega328P. Với Arduino chúng ta có thể xây dựng các ứng dụng điện tử tương tác với nhau thông qua phần mềm và phần cứng hỗ trợ. Hiện nay trên thị trường có rất nhiều loại Arduino thông dụng như Arduino Uno, Arduino Mega 2560, Arduino Nano. Mỗi cái sẽ có ưu nhược điểm khác nhau được trình bày như bảng sau:
Tên Thông số nổi bật Ưu điểm Nhược
điểm Arduino
Uno
- Chip điều khiển chính: ATmega328
- Nguồn nuôi mạch: 5VDC
- Số chân Digital: 14 (hỗ trợ 6 chân PWM)
- Số chân Analog: 6
- Dòng ra tối đa GPIO: 40mA
- Dòng ra tối đa trên chân cấp nguồn 3.3VDC: 150 zmA Giá thành rẻ hơn arduino Mega 2560 và arduino Nano. Sử dụng cổng USB. Dễ dàng lập trình Số chân digital ít đối với việc muốn kết nối nhiều thiết bị lại. Arduino Mega 2560
- Chip vi điều khiển: ATmega2560. - Điện áp cấp nguồn: 5V.
- Số chân Digital I/O: 54 (có 15 chân điều chế độ rộng xung PWM).
- Số chân Analong: 16 chân.
- Dòng DC trên chân I/O: 40 mA, dòng DC cho chân 3.3V: 50 mA.
Có nhiều chân và tính năng mạnh mẽ hơn arduino Uno Giá thành đắt hơn arduino Uno và arduino Nano Arduino Nano
- Chip vi điều khiển: ATmega328 (họ 8bit), dòng DC trên chân I/O: 40 mA
- Điện áp cấp nguồn: 5V.
- Số chân Digital I/O: 14 (6 chân PWM) - Số chân Analong: 8 (độ phân giải 10bit).
Kích thước nhỏ gọn hơn arduino Uno và arduino Mega 2560. Sử dụng cổng Mini USB. Cần đến 2KB bộ nhớ cho bootloader
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ
Tiến hành lựa chọn linh kiện: Từ yêu cầu thiết kế, thiết bị cần 1 board mạch vi
điều khiển có khả năng xử lí trung tâm. Thiết bị có khả năng thu thập tất cả thông tin từ cảm biến, module thời gian thực, sau đó xử lí thông tin và điều khiển các thiết bị ngoại vi. Bên cạnh đó thiết bị còn thực hiện truyền nhận dữ liệu từ website và qua ứng dụng điện thoại thông qua ESP. Qua bảng so sánh các board Arduino, nhóm nhận thấy board Arduino Mega2560 có thể đáp ứng được yêu cầu. Board Arduino Mega 2560 có nhiều chân hơn các board còn lại, nên có thể giao tiếp được cùng lúc rất nhiều module và cảm biến. Vì vậy nhóm lựa chọn Arduino Mega 2560 cho mô hình.
Sau khi tiến hành lựa chọn linh kiện thì thực hiện thiết kế sơ đồ nguyên lí cho khối xử lí trung tâm và kết nối internet.
Hình 3.5 Sơ đồ nguyên lí khối xử lí trung tâm và kết nối internet.
Trong sơ đồ nguyên lí khối xử lí trung tâm và kết nối internet, kết nối điện thoại thì module NODE MCU sẽ thực hiện kết nối các chân TX và RX giao tiếp với các chân TX và RX của board mạch Arduino Mega 2560 thông qua giao thức truyền thông UART. Chức năng chính của UART là truyền dữ liệu nối tiếp. Trong UART, giao tiếp giữa hai thiết bị có thể được thực hiện theo hai cách là giao tiếp dữ liệu nối tiếp và giao tiếp dữ liệu song song.
Nguyên lí hoạt động: Module ESP8266 sẽ thực hiện việc ghi dữ liệu từ ứng dụng
blynk, điều khiển bằng giọng nói thông qua google assistant, ghi dữ liệu từ web để điều khiển bật tắt các thiết bị ngoại vi trong mô hình nhà yến. Tất cả dữ liệu thu được sẽ truyền qua board mạch Arduino Mega 2560. Arduino Mega 2560 thực hiện việc nhận dữ liệu từ khối cảm biến và khối thời gian thực, tiến hành xử lí và truyền nhận lại với module
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ
ESP8266 để thực hiện việc cập nhật thông tin về ánh sáng, nhiệt độ, độ ẩm lên web server và qua ứng dụng blynk cho người nuôi chim dễ nắm bắt.