1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp

79 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Công Nghệ IoT Vào Hệ Thống Trồng Trọt Trong Nông Nghiệp
Tác giả Nguyễn Hải Bằng
Người hướng dẫn ThS. Trương Ngọc Anh
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Điện Tử, Truyền Thông
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2018
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 79
Dung lượng 5,77 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (12)
    • 1.1. GIỚI THIỆU (12)
      • 1.1.1. Đặt vấn đề (12)
    • 1.2. MỤC TIÊU CỦA ĐỀ TÀI (13)
    • 1.3. NỘI DUNG NGHIÊN CỨU (13)
    • 1.4. GIỚI HẠN (14)
    • 1.5. BỐ CỤC (14)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (15)
    • 2.1. QUY TRÌNH HOẠT ĐỘNG CỦA HỆ THỐNG (15)
    • 2.2. GIỚI THIỆU MODULE & CÁC LINH KIỆN (15)
      • 2.2.1. Vi điều khiển (15)
      • 2.2.2. Cảm biến ánh sáng (21)
      • 2.2.3. Cảm biến đo nhiệt độ và độ ẩm (22)
      • 2.2.4. Cảm biến đo độ ẩm đất (24)
      • 2.2.5. Màn hình hiển thị (26)
      • 2.2.6. Các tải động cơ (32)
    • 2.3. GIỚI THIỆU CHUẨN TRUYỀN DỮ LIỆU I2C (34)
      • 2.3.1. Giới thiệu (34)
      • 2.3.2. Chế độ hoạt động (35)
      • 2.3.3. Điều kiện Start và Stop (36)
    • 2.4. TỔNG QUAN VỀ INTERNET & NGÔN NGỮ WEB (37)
      • 2.4.1. Khái niệm về Internet (37)
      • 2.4.2. Ngôn ngữ HTML (37)
      • 2.4.3. Ngôn ngữ CSS (39)
      • 2.4.4. Ngôn ngữ PHP (40)
      • 2.4.5. Ngôn ngữ JavaScript (41)
  • CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG (42)
    • 3.1. SƠ ĐỒ KHỐI HỆ THỐNG (42)
      • 3.1.1. YÊU CẦU CỦA HỆ THỐNG (42)
      • 3.1.2. CHỨC NĂNG TỪNG KHỐI (42)
      • 3.1.3. TRÌNH TỰ HOẠT ĐỘNG GIỮA CÁC KHỐI (43)
    • 3.2. TÍNH TOÁN THIẾT KẾ HỆ THỐNG (43)
      • 3.2.1. Khối cảm biến (43)
      • 3.2.2. Khối hiển thị (45)
      • 3.2.3. Khối tải (46)
      • 3.2.4. Khối xử lý trung tâm (47)
      • 3.2.5. Khối nguồn (55)
      • 3.2.6. Sơ đồ kết nối mạch (57)
    • 3.3. THIẾT KẾ GIAO DIỆN WEBSITE (58)
      • 3.3.1. Mô tả trang web thiết kế (58)
      • 3.3.2. Mô tả Database (60)
  • CHƯƠNG 4: THI CÔNG HỆ THỐNG VÀ KẾT QUẢ THỰC HIỆN (62)
    • 4.1. THI CÔNG MẠCH IN (62)
    • 4.2. THI CÔNG MÔ HÌNH (64)
      • 4.2.1. Thiết kế, lắp ráp mô hình (64)
      • 4.2.2. Lựa chọn cây trồng (64)
    • 4.3. KẾT QUẢ ĐẠT ĐƯỢC (64)
      • 4.3.1. Mô hình sản phẩm (64)
      • 4.3.2. Giao diện trang Web điều khiển (66)
      • 4.3.3. Cơ sở dữ liệu (69)
    • 4.4. NHẬN XÉT (70)
      • 4.4.1. Ưu điểm (70)
      • 4.4.2. Nhược điểm (70)
  • CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (71)
    • 5.1. KẾT LUẬN (71)
    • 5.2. HƯỚNG PHÁT TRIỂN (71)
  • PHỤ LỤC (73)

Nội dung

TỔNG QUAN

GIỚI THIỆU

Nông nghiệp, mặc dù là nền tảng của nền văn minh nhân loại, vẫn là một trong những lĩnh vực chậm áp dụng công nghệ kết nối IoT Những thách thức như an toàn thực phẩm, cây trồng nhiễm hóa chất và cuộc sống bận rộn đã thúc đẩy nhu cầu tìm kiếm các phương pháp trồng trọt hiệu quả hơn Nhiều người vẫn đam mê trồng cây cảnh và rau trong không gian hạn chế như sân thượng và ban công, điều này càng làm nổi bật tầm quan trọng của công nghệ IoT trong nông nghiệp hiện đại.

Mặc dù nhiều địa phương đã trồng các loại cây, hoa và rau có giá trị kinh tế cao, nhưng hiện nay vẫn còn ít đơn vị nghiên cứu và thiết kế các mô hình tự động phù hợp với điều kiện kinh tế và môi trường của Việt Nam.

IoT, hay Internet of Things, được coi là cuộc cách mạng công nghệ lần thứ 4, đang phát triển mạnh mẽ trong lĩnh vực nông nghiệp Đề tài “Ứng dụng công nghệ IoT vào hệ thống trồng trọt” tập trung vào việc sử dụng cảm biến kết nối để tự động hóa quá trình trồng cây, giúp ứng phó với biến đổi khí hậu và tối ưu hóa sự sinh trưởng của cây trồng qua việc theo dõi các yếu tố như nhiệt độ, độ ẩm và ánh sáng Nhờ vào kết nối Internet, người dùng có thể giám sát và điều khiển hệ thống từ xa, với mọi thông số và trạng thái hoạt động được cập nhật và hiển thị trên giao diện web qua máy tính hoặc điện thoại thông minh.

Hình 1 1 Ứng dụng IoT trong trồng trọt thực tế

MỤC TIÊU CỦA ĐỀ TÀI

Ứng dụng công nghệ IoT trong nông nghiệp giúp tự động hóa quá trình chăm sóc cây trồng thông qua việc sử dụng kỹ thuật truyền phát không dây để giám sát và điều khiển Các thông số môi trường sẽ được cập nhật liên tục trên web, giúp người dùng dễ dàng theo dõi và xử lý Hệ thống này có khả năng trồng nhiều loại cây và rau, hoạt động theo chế độ tự động hoặc thủ công tùy theo cài đặt Nghiên cứu này nhằm phát triển giải pháp điều khiển và giám sát thiết bị từ xa qua mạng Internet.

NỘI DUNG NGHIÊN CỨU

- Nội dung 1: Kết nối mạng của bộ xử lý trung tâm, giao tiếp và lập trình các khối cảm biến

- Nội dung 2: Tìm hiểu ngôn ngữ lập trình web (HTML, CSS, PHP, thư viện Jquery), thiết kế giao diện web

- Nội dung 3: Tìm hiểu giao thức truyền nhận dữ liệu từ cảm biến, lưu trữ và xử lý dữ liệu trên database lên giao diện hiển thị

- Nội dung 4: Thiết kế mô hình, cân chỉnh hệ thống cho phù hợp thực tế

- Nội dung 5: Đánh giá kết quả thực hiện

GIỚI HẠN

- Vi điều khiển trung tâm là Wemos D1 R2.

- Số lượng cây trồng là 1, 1 cảm biến ánh sáng, 1 cảm biến độ ẩm đất 1 cảm biến nhiệt độ và độ ẩm

- Sử dụng 2 động cơ bơm với công suất từ 6-12W

- Hiển thị thông số giá trị và chế độ làm việc trên màn hình LCD 20x4

- Nhiệt độ không khí đo được từ -40 o C đến 120 o C, khoảng độ ẩm đo được từ 0% đến 100%, sử dụng chung 1 cảm biến SHT10 có vỏ bảo vệ

- Độ ẩm đất đo được từ 10% đến 70%

- Sử dụng cảm biến ánh sáng với khoảng đo từ 0.1 đến 40.000 lux

- Điều khiển tác động các thiết bị qua mạng có độ trễ nhất định

- Mô hình hoạt động ở hành lang, sân nhà hay sân thượng

- Đăng tải dữ liệu lên web host miễn phí nên bị giới hạn dung lượng.

BỐ CỤC

Chương này giới thiệu lý do lựa chọn đề tài, xác định mục tiêu nghiên cứu, nội dung chính, các giới hạn về thông số và cấu trúc của đồ án.

- Chương 2: Cơ Sở Lý Thuyết

Chương này mô tả quy trình hoạt động và giới thiệu phần cứng cũng như lựa chọn linh kiện thiết bị Nó cũng trình bày các chuẩn giao tiếp và các ngôn ngữ lập trình web như HTML, PHP, cùng với ngôn ngữ truy vấn SQL.

- Chương 3: Thiết Kế và Tính Toán

Chương này trình bày thiết kế sơ đồ khối hệ thống, giải thích chức năng của từng khối, và thực hiện tính toán cũng như thiết kế cho mạch điều khiển, khối nguồn và khối tải Ngoài ra, nó còn bao gồm thiết kế trang web, lưu đồ giải thuật, sơ đồ kết nối và sơ đồ nguyên lý toàn bộ mạch.

- Chương 4: Thi Công Hệ Thống và Kết Quả Thực Hiện

Chương này tập trung vào quy trình thi công bo mạch, bao gồm thiết kế sơ đồ mạch layout, lắp ráp và kiểm tra đóng gói sản phẩm Ngoài ra, chương cũng đề cập đến việc thi công mô hình, trình bày kết quả mô hình và giao diện điều khiển web, từ đó đưa ra những đánh giá và nhận xét cần thiết.

- Chương 5: Kết Luận và Hướng Phát Triển

Chương này tổng kết những kết quả đã đạt được, đồng thời phân tích ưu và nhược điểm để đề xuất hướng phát triển cho đề tài.

CƠ SỞ LÝ THUYẾT

QUY TRÌNH HOẠT ĐỘNG CỦA HỆ THỐNG

Hệ thống được điều khiển qua Internet bằng bộ xử lý trung tâm Arduino Wemos D1 R2, với các cảm biến đo nhiệt độ, độ ẩm không khí, độ ẩm đất và ánh sáng để thu thập dữ liệu môi trường và truyền tải lên webserver Hệ thống cung cấp hai chế độ điều khiển: Auto và Manual Trong chế độ Auto, người dùng có thể điều chỉnh các giá trị cài đặt của cảm biến để phù hợp với từng loại cây trồng thông qua giao diện web Ngược lại, chế độ Manual cho phép người dùng điều khiển trực tiếp các thiết bị như đèn, quạt và bơm thông qua bảng điều khiển trên web Đặc biệt, khi xảy ra sự cố mạng, hệ thống sẽ tự động tắt toàn bộ thiết bị và cố gắng kết nối lại với Wifi.

GIỚI THIỆU MODULE & CÁC LINH KIỆN

2.2.1 Vi điều khiển a) Máy tính nhúng Raspberry Pi

• SoC: Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC

• Hỗ trợ Power-over-Ethernet (PoE)

• Khe cắm thẻ Micro SD

• Cải thiện PXE network và USB mass-storage booting

Raspberry Pi là một máy vi tính nhỏ gọn, tích hợp đầy đủ các thành phần cần thiết để hoạt động như một máy tính, mặc dù chi phí tương đối cao Bên cạnh đó, Board Arduino Uno R3 cũng là một lựa chọn phổ biến trong lĩnh vực điện tử và lập trình.

Arduino Uno R3 có thể sử dụng 3 vi điều khiển họ 8bit AVR là

ATmega8 (bộ nhớ flash 8KB), ATmega168 (bộ nhớ flash 16KB), ATmega328 (bộ nhớ flash 32KB)

• Chân Digital I/O: 14 (với 6 chân PWM)

• Dòng sử dụng I/O pin: 20mA

Board Arduino Uno R3 có đầy đủ tính năng để thực hiện các lệnh xử lý, nhưng khi cần kết nối mạng để truyền phát không dây, việc sử dụng thêm module thu phát wifi sẽ không hiệu quả về mặt kinh tế Do đó, Board Wemos D1 R2 là một lựa chọn tối ưu hơn cho các dự án yêu cầu kết nối mạng không dây.

WeMos D1 R2 là board mạch được phát triển dựa trên Module

Board mạch Esp8266-V12 được thiết kế tương thích với Arduino UNO, hỗ trợ Arduino IDE và NodeMCU, giúp dễ dàng thực hiện các ứng dụng thu thập dữ liệu và điều khiển thiết bị qua Wifi Board này còn tích hợp khả năng chuyển đổi điện áp từ 9-24V xuống 5V với dòng tối đa 1A, là lựa chọn lý tưởng cho các dự án liên quan.

• Vi điều khiển: ESP8266EX

• Số chân I/O: 11 (tất cả các chân I/O đều có Interrupt / PWM / I2C / One-wire, trừ chân D0)

• Số chân Analog Input: 1 (điện áp vào tối đa 3.3V)

• Điện áp ra: 5V - Dòng tối đa: 1A

• Wifi: 2.4 GHz, hỗ trợ bảo mật WPA/WPA2

• Tích hợp giao thức TCP/IP

• Lập trình bằng ngôn ngữ: C/C++, Micropython, NodeMCU – Lua

ESP8266 là một vi điều khiển tích hợp Wifi (Wifi SoC) do Espressif Systems, một công ty Trung Quốc có trụ sở tại Thượng Hải, phát triển Với khả năng tích hợp vi điều khiển và Wifi, ESP8266 cho phép lập trình viên thực hiện nhiều tác vụ TCP/IP đơn giản, phục vụ cho nhiều ứng dụng khác nhau, đặc biệt là trong lĩnh vực Internet of Things (IoT).

• Vi điều khiển 32-bit RISC CPU: Tensilica Xtensa LX106 80 MHz

• Hỗ trợ Flash ngoài từ 512KB đến 4MB

• 64KBytes RAM thực thi lệnh

• Chuẩn wifi EEE 802.11 b/g/n, Wi-Fi 2.4 GHz Tích hợp TR switch, balun, LNA, khuếch đại công suất và matching network, hỗ trợ WEP, WPA/WPA2, Open network

• Tích hợp giao thức TCP/IP

• Hỗ trợ nhiều loại anten

• Có 3 chế độ hoạt động: Client, Access Point, Both Client and Access Point

• Hổ trợ SDIO 2.0, UART, SPI, I²C, PWM, I²S với DMA

• Dải nhiệt độ hoạt động rộng: -40 o C ~ 125 o C

Hình 2 5 Sơ đồ chân ESP8266EX

Bảng 2 1 Chức năng các chân ESP8266EX

Chip Enable High: On, chip works properly Low: Off, small current consumed

8 XPD_DCDC I/O Deep-sleep wakeup (need to be connected to

11 VDDPST P Digital/IO Power Supply (1.8V ~ 3.6V)

12 MTCK I/O GPIO 13; HSPI_MOSI; UART0_CTS

13 MTDO I/O GPIO 15; HSPI_CS; UART0_RTS

14 GPIO2 I/O UART Tx during flash programming; GPIO2

17 VDDPST P Digital/IO Power Supply (1.8V ~ 3.6V)

18 SDIO_DATA_2 I/O Connect to SD_D2 (Series R: 200Ω); SPIHD;

19 SDIO_DATA_3 I/O Connect to SD_D3 (Series R: 200Ω); SPIWP;

20 SDIO_CMD I/O Connect to SD_CMD (Series R: 200Ω);

21 SDIO_CLK I/O Connect to SD_CLK (Series R: 200Ω);

22 SDIO_DATA_0 I/O Connect to SD_D0 (Series R: 200Ω);

23 SDIO_DATA_1 I/O Connect to SD_D1 (Series R: 200Ω);

25 U0RXD I/O UART Rx during flash programming; GPIO3

26 U0TXD I/O UART Tx during flash programming; GPIO1;

27 XTAL_OUT I/O Connect to crystal oscillator output, can be used to provide BT clock input

28 XTAL_IN I/O Connect to crystal oscillator input

31 RES12K I Serial connection with a 12 kΩ resistor and connect to the ground

32 EXT_RSTB I External reset signal (Low voltage level: active)

2.2.2 Cảm biến ánh sáng Ánh sáng nói chung được coi là một phần của quang phổ điện từ mà mắt người có thể cảm nhận được Vì ánh sáng là một hiện tượng rất phức tạp nó không thể được đo lường một cách dễ dàng như nhiệt độ không khí và áp suất

Cảm biến ánh sáng là thiết bị quan trọng dùng để phát hiện ánh sáng, với nhiều loại như cảm biến quang trở và photodiode Tuy nhiên, để xác định chính xác cường độ ánh sáng (Lux) cho cây trồng, những loại cảm biến này không phù hợp TSL2561 là lựa chọn tối ưu nhờ có ADC nội và bộ tiền xử lý, cung cấp giá trị cường độ ánh sáng Lux trực tiếp qua giao tiếp I2C mà không cần xử lý hay tính toán thêm.

• Dòng điện tiêu thụ 0.6mA

• Đo được cường độ ánh sáng thường và hồng ngoại

• Giao tiếp I2C mức TTL 3.3 ~ 5VDC

• Cảm biến truyền dữ liệu theo chuẩn I2C

Một số giá trị về độ rọi của ánh sáng

• Trời nhiều mây trong nhà: 5 – 50 Lux

• Trời nhiều mây ngoài trời: 50 – 500 Lux

• Trời nắng trong nhà: 100 – 1000 Lux

• Ánh sáng cần thiết để đọc sách: 50 – 60 Lux

Hình 2 7 Sơ đồ khối chức năng TSL2561

2.2.3 Cảm biến đo nhiệt độ và độ ẩm

Cảm biến nhiệt độ và độ ẩm Si7021 có khả năng chuyển đổi các thông số này thành tín hiệu điện Đây là một trong nhiều loại cảm biến như DHT22 và SHT10, giúp theo dõi và đo lường chính xác nhiệt độ và độ ẩm trong môi trường.

Cảm biến độ ẩm và nhiệt độ Si7021, do Silicon Labs sản xuất, sử dụng giao tiếp I2C với độ chính xác và độ bền cao Thiết bị này có khả năng đo độ ẩm trong khoảng rộng, mang lại hiệu suất ổn định cho các ứng dụng khác nhau.

Cảm biến DHT22 có khả năng đo độ ẩm từ 0 đến 80% với sai số tối đa 3% và khoảng nhiệt độ từ -10 đến 85 độ C với sai số tối đa 0.4 độ C Thiết bị này được ứng dụng rộng rãi trong nông nghiệp, đặc biệt là trong việc theo dõi độ ẩm và nhiệt độ trong nhà kính, trồng nấm và nuôi chim yến.

Cảm biến DHT22 được trang bị một thiết bị đo nhiệt độ và một cảm biến độ ẩm chuyên dụng, đảm bảo độ chính xác cao Với kích thước nhỏ gọn và tiêu thụ điện năng thấp, DHT22 sử dụng giao tiếp 1 wire để thu thập dữ liệu Nó có khả năng đo độ ẩm trong khoảng 0 ~ 100% với sai số từ 2-5% và nhiệt độ trong khoảng -40°C ~ 80°C với sai số ±0.5°C.

Hình 2 10 SHT10 có vỏ bảo vệ

Cảm biến độ ẩm và nhiệt độ không khí SHT10, với vỏ bảo vệ chắc chắn, thường được ứng dụng trong nông nghiệp nhờ vào độ bền, độ chính xác và độ ổn định cao Cấu tạo của cảm biến bao gồm cảm biến SHT10 bên trong, được bảo vệ bởi lớp vỏ bên ngoài, giúp chống lại các tác động vật lý từ môi trường như bụi và nước, trong khi vẫn đảm bảo khả năng đo đạc chính xác độ ẩm và nhiệt độ.

• Điện áp sử dụng: 3 - 5VDC

• Khoảng nhiệt độ đo được: -40 o C ~ 120 o C, sai số 0.5 o C

• Khoảng độ ẩm đo được: 0 ~ 100%, sai số 4.5%

Hình 2 11 Sơ đồ kết nối SHT10

2.2.4 Cảm biến đo độ ẩm đất

Cảm biến độ ẩm đất sử dụng module chuyển đổi với hai chế độ ngõ ra là Analog và Digital Khi đất thiếu nước, đầu ra sẽ ở mức cao (5V), trong khi trạng thái đầu ra mức thấp là 0V Sự hấp thụ độ ẩm (hơi nước) làm biến đổi các thành phần cảm nhận trong cảm biến, như LiCL và P2O5, dẫn đến sự thay đổi điện trở của cảm biến, từ đó xác định được độ ẩm của đất.

Cảm biến độ ẩm đất hoạt động bằng cách cắm hai đầu đo vào đất để phát hiện độ ẩm Dữ liệu độ ẩm sẽ được truyền qua dây nối tới module chuyển đổi, trong đó có IC so sánh LM393 và biến trở để định ngưỡng so sánh với tín hiệu từ cảm biến Ngưỡng so sánh và tín hiệu cảm biến sẽ được xử lý để cung cấp thông tin chính xác về độ ẩm đất.

2 đầu vào của IC so sánh LM393 Khi độ ẩm thấp hơn ngưỡng định trước, ngõ ra của IC là mức cao (1), ngược lại là mức thấp (0)

• Điện áp làm việc 3.3 ~ 5VDC

• Sử dung chip LM393 để so sánh, ổn định làm việc

• Có 2 tín hiệu ngõ ra Analog hoặc Digital

• PCB có kích thước nhỏ 3.2 x 1.4 cm

• Led đỏ báo nguồn vào, Led xanh báo độ ẩm

• Cảm biến đo đầu vào tín hiệu analog chuyển đổi tín hiệu số đếm 10 bit (0 đến 1023)

Hình 2 13 Sơ đồ mạch cảm biến YL-69

2.2.5 Màn hình hiển thị a) Lựa chọn màn hình

Trên thị trường hiện nay có nhiều loại màn hình khác nhau, giúp người dùng dễ dàng lựa chọn theo nhu cầu thực tế Một số loại màn hình phổ biến bao gồm: LCD cảm ứng TFT, LCD text 20x4, màn hình GLCD, màn hình cảm ứng điện dung, màn hình OLED và màn hình LCD của Nokia.

Hình 2 14 Màn hình TFT cảm ứng Hình 2 15 Màn hình Oled

Hình 2 16 Màn hình Nokia Hình 2 17 Màn hình GLCD

Màn hình LCD 20x4 là lựa chọn lý tưởng nhờ khả năng hiển thị các ký tự đơn giản và số liệu một cách dễ dàng Nó được lập trình đơn giản, có đèn nền giúp nhìn rõ trong điều kiện ánh sáng yếu và tiêu thụ điện năng thấp.

GIỚI THIỆU CHUẨN TRUYỀN DỮ LIỆU I2C

I2C, viết tắt của Inter-Integrated Circuit, là chuẩn truyền thông do Philips Semiconductor phát triển, cho phép một thiết bị chủ giao tiếp với nhiều thiết bị tớ Chuẩn I2C sử dụng hai đường tín hiệu: SDA (dữ liệu nối tiếp) để truyền tải dữ liệu và SCL (xung clock nối tiếp) để truyền tải xung clock, giúp dịch chuyển dữ liệu Trong hệ thống I2C, thiết bị cung cấp xung clock được gọi là thiết bị chủ (master), trong khi thiết bị nhận xung clock được gọi là thiết bị tớ (slave).

Thiết bị chủ chỉ có một, trong khi thiết bị tớ có nhiều, mỗi thiết bị tớ đều có địa chỉ độc lập Với chuẩn truyền ban đầu sử dụng địa chỉ 7 bit, một thiết bị chủ có thể giao tiếp với tối đa 128 thiết bị tớ Sau này, số bit địa chỉ đã được tăng lên, cho phép giao tiếp với nhiều thiết bị hơn Địa chỉ của thiết bị tớ thường được nhà sản xuất thiết lập sẵn.

Hình 2 26 Bus I2C và các thiết bị ngoại vi

Khi kết nối thiết bị ngoại vi vào bus I2C, chân SDA của thiết bị sẽ nối với dây SDA của bus, và chân SCL sẽ nối với dây SCL Cả hai dây SDA và SCL đều được kết nối với điện áp dương thông qua điện trở kéo lên (pullup resistor), điều này là cần thiết vì chân giao tiếp I2C của thiết bị thường sử dụng cấu trúc cực máng hở (opendrain hoặc opencollector) Giá trị của các điện trở này phụ thuộc vào từng thiết bị và chuẩn giao tiếp, thường nằm trong khoảng từ 1K đến 4.7K.

Hình 2 27 Đường truyền dữ liệu chuẩn I2C

Xung đồng hồ chỉ di chuyển theo một hướng từ chủ đến tớ, trong khi luồng dữ liệu có khả năng di chuyển theo cả hai hướng, từ chủ đến tớ hoặc ngược lại từ tớ đến chủ.

Quá trình truyền dữ liệu bắt đầu bằng tín hiệu Start từ bên chủ, tiếp theo là việc gửi 7 bit dữ liệu chứa địa chỉ của bên tớ, với bit có trọng số lớn nhất (MSB) được truyền trước Bit thứ 8 xác định việc nhận bit “0” hay gửi dữ liệu bit “1” từ thiết bị tớ Sau đó, bit ACK được gửi để xác nhận thiết bị đã nhận được 1 byte dữ liệu, và cuối cùng là tín hiệu Stop để kết thúc quá trình truyền.

Các bus I2C hoạt động ở 3 chế độ:

• Chế độ tiêu chuẩn (Standard mode): có tốc độ tối đa 100kbps, sử dụng 7bit địa chỉ và 112 địa chỉ tớ

• Chế độ nhanh (Fast mode): tốc độ truyền dữ liệu 400kbps

Chế độ cao tốc High-Speed (Hs) được thiết kế để tăng tốc độ dữ liệu lên đến 36 lần so với chế độ tiêu chuẩn Chế độ này cung cấp tốc độ 1,7 Mbps khi sử dụng tụ điện Cb = 400 pF và đạt 3,4 Mbps với C > b = 100 pF.

Một bus I2C có thể hoạt động ở nhiều chế độ khác nhau:

• Một chủ một tớ (one master - one slave)

• Một chủ nhiều tớ (one master - multi slave)

• Nhiều chủ nhiều tớ (Multi master - Multi slave)

2.3.3 Điều kiện Start và Stop

Trong giao tiếp trên bus I2C, hai điều kiện thiết yếu là Start và Stop Start đánh dấu sự khởi đầu của quá trình giao tiếp, trong khi Stop chỉ ra sự kết thúc của nó.

Khi bắt đầu quá trình giao tiếp, cả hai đường SDA và SCL đều ở mức cao (SDA = SCL = HIGH), lúc này bus I2C được coi là rỗi và sẵn sàng cho giao tiếp Hai điều kiện quan trọng là Start và Stop không thể thiếu trong việc giao tiếp giữa các thiết bị I2C.

Hình 2 29 Khung truyền dữ liệu chuẩn I2C

Điều kiện Start được xác định khi có sự chuyển đổi trạng thái từ cao xuống thấp trên đường SDA, trong khi đường SCL vẫn duy trì ở mức cao Sự chuyển đổi này, với cao được biểu thị là 1 và thấp là 0, báo hiệu một điều kiện Start.

Điều kiện Stop trong giao thức I2C xảy ra khi có sự chuyển đổi trạng thái từ mức thấp lên cao trên đường SDA, trong khi đường SCL vẫn ở mức cao Cả hai tín hiệu Start và Stop đều được phát sinh bởi thiết bị chủ Sau khi nhận tín hiệu Start, bus I2C sẽ hoạt động trong trạng thái bận (busy) Bus I2C sẽ trở nên rỗi và sẵn sàng cho một giao tiếp mới sau khi nhận tín hiệu Stop từ thiết bị chủ.

Sau khi nhận tín hiệu Start, bus I2C sẽ duy trì trạng thái bận nếu tín hiệu Start được lặp lại thay vì tín hiệu Stop Cả tín hiệu Start và tín hiệu Start lặp lại (Repeated Start) đều có chức năng khởi tạo một giao tiếp trong quá trình truyền dữ liệu.

TỔNG QUAN VỀ INTERNET & NGÔN NGỮ WEB

Mạng Internet là hệ thống thông tin toàn cầu phổ biến, cho phép truy cập công cộng và kết nối nhiều mạng máy tính Mặc dù đã trải qua nhiều cải tiến, Internet vẫn sử dụng phương thức truyền thông tin theo dạng chuyển mạch gói dữ liệu (packet switching) dựa trên giao thức IP đã được chuẩn hóa.

TCP/IP, viết tắt của Transmission Control Protocol/Internet Protocol, là tập hợp các giao thức điều khiển truyền thông giữa các máy tính trên Internet Nó quy định cách đóng gói và truyền tải thông tin giữa các thiết bị kết nối TCP/IP được phát triển vào năm 1978 bởi Bob Kahn và Vint Cerf, và hiện nay là nền tảng cho việc giao tiếp trên mạng toàn cầu.

HTTP là giao thức được sử dụng để truyền dữ liệu không an toàn giữa một web client, như trình duyệt Internet, và một web server Khi người dùng muốn truy cập một trang web, trình duyệt sẽ gửi yêu cầu đến máy chủ web, và máy chủ sẽ phản hồi bằng cách gửi thông tin trang web trở lại cho web client.

HTTPS là giao thức được sử dụng để truyền tải dữ liệu an toàn giữa web client và web server, thường được áp dụng trong việc gửi thông tin giao dịch thẻ tín dụng hoặc dữ liệu cá nhân từ trình duyệt Internet đến máy chủ.

• FTP – Được sử dụng giữa hai hoặc nhiều máy tính Một máy tính gửi dữ liệu đến hoặc nhận dữ liệu từ máy tính khác một cách trực tiếp

2.4.2 Ngôn ngữ HTML a) Giới thiệu

HTML, viết tắt của HyperText Markup Language, là ngôn ngữ dùng để tạo ra các trang web Mỗi website có thể chứa nhiều trang, và mỗi trang được gọi là tài liệu HTML Tài liệu HTML được cấu thành từ các phần tử HTML, được xác định bằng các cặp thẻ Tập tin HTML thường được lưu với đuôi mở rộng html hoặc htm.

Bảng 2 4 Các thẻ cơ bản trong HTML

Còn gọi là thẻ khai báo 1 tàil liệu HTML Thẻ này xác định loại tài liệu và phiên bản HTML

Thẻ HTML bao gồm các phần quan trọng: phần đầu tài liệu được xác định bởi thẻ … và phần thân tài liệu được biểu diễn qua thẻ ….

Thẻ này đại diện cho đầu trang tài liệu mà có thể giữ các thẻ

HTML như , , …

Được sử dụng trong thẻ chỉ tiêu đề tài liệu

Thẻ này đại diện cho thân tài liệu và giữ các thẻ như ,

Thẻ này đại diện cho các tiêu đề trang

Thẻ này đại diện cho đoạn văn bản b) Cấu trúc trang HTML

Hình 2 30 Cấu trúc trang HTML

2.4.3 Ngôn ngữ CSS a) Giới thiệu

CSS, viết tắt của Cascading Style Sheets, là một loại file văn bản với phần mở rộng css, chứa các câu lệnh định dạng Mỗi lệnh CSS sẽ điều chỉnh một phần cụ thể của HTML, như font chữ, đường viền, màu nền và căn chỉnh hình ảnh CSS hoạt động bằng cách tìm kiếm các vùng chọn, có thể là tên thẻ HTML, ID, Class hoặc nhiều kiểu khác, sau đó áp dụng các thuộc tính cần thay đổi lên những vùng chọn đó.

Cú pháp của CSS được chia làm 3 phần:

} c) Các thuộc tính cơ bản trong CSS

Bảng 2 5 Các thuộc tính cơ bản CSS

Thuộc tính Ví dụ Mô tả background background: #ff0000; Định dạng nền (background) cho thành phần border border: 1px solid

To format the border of a component, use the appropriate CSS properties Set the text color by specifying the desired color code Define the cursor style to determine how the mouse pointer will appear when hovering over elements Additionally, specify the font size and typeface, such as using 12px Arial or a sans-serif font for optimal readability.

Thiết lập font cho thành phần, bao gồm font chữ, độ rộng

Chiều cao dòng được thiết lập với line-height: 1.5, giúp tạo khoảng cách giữa các dòng Để canh lề cho thành phần, sử dụng margin: 15px Tính năng visibility: visible xác định xem thành phần có hiển thị hay không Chiều cao của thành phần được thiết lập với height: 50px, trong khi chiều rộng được quy định với width: 800px.

PHP, viết tắt của "Hypertext Preprocessor", là ngôn ngữ lập trình kịch bản chạy phía server để tạo mã HTML cho client Với nhiều phiên bản cải tiến, PHP được tối ưu hóa cho ứng dụng web nhờ cách viết mã rõ ràng, tốc độ nhanh và dễ học, trở thành ngôn ngữ lập trình web phổ biến PHP hoạt động trên môi trường Webserver và lưu trữ dữ liệu qua hệ quản trị cơ sở dữ liệu, thường kết hợp với Apache, MySQL và hệ điều hành Windows (WAMP hoặc XAMPP).

Xampp là chương trình tạo máy chủ Web (Web Server) được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như phpMyAdmin

Apache là một phần mềm máy chủ web, có chức năng tiếp nhận yêu cầu từ trình duyệt người dùng, chuyển giao cho PHP để xử lý, và sau đó trả kết quả về trình duyệt.

MySQL là một hệ quản trị cơ sở dữ liệu tương tự như Postgres, Oracle và SQL Server, đóng vai trò quan trọng trong việc lưu trữ và truy vấn dữ liệu hiệu quả.

PHP sử dụng cặp thẻ mở , phía bên trong chính là nội dung của mã code PHP Ví dụ như sau:

Trong PHP, các biến được xác định bằng cách thêm dấu đô la ($) trước tên biến và không cần khai báo kiểu dữ liệu trước PHP xử lý xuống dòng như một khoảng trắng, cho phép lập trình viên viết mã theo kiểu tự do.

30 biểu được kết thúc bởi một dấu chấm phẩy (;) Phát biểu “echo” là một trong những lệnh của PHP cho phép xuất văn bản trong một trình duyệt web

JavaScript là ngôn ngữ lập trình kịch bản, cho phép lập trình viên viết mã mà không cần biên dịch hay liên kết như các ngôn ngữ biên dịch như C/C++ hay Java Thay vào đó, JavaScript được dịch ngay tại thời điểm chạy, mang lại sự linh hoạt và hiệu quả trong phát triển ứng dụng web.

JavaScript là ngôn ngữ lập trình quan trọng, được sử dụng rộng rãi trên nhiều nền tảng và môi trường khác nhau, cùng với HTML và CSS, tạo thành bộ ba không thể thiếu cho các trang web Một trong những thư viện phổ biến nhất của JavaScript là jQuery, giúp đơn giản hóa việc viết mã lệnh jQuery tích hợp nhiều module, từ hiệu ứng đến truy vấn selector, mang lại nhiều tiện ích cho lập trình viên Nhờ vào tính ưu việt của mình, jQuery đã được các công ty lớn như Google, Microsoft và Amazon tin dùng.

Các module chính mà của Jquery bao gồm:

• Attributes - xử lý thuộc tính của đối tượng HTML

• Effect - xử lý hiệu ứng

• Event - xử lý sự kiện

• DOM - xử lý Data Object Model

• Selector - xử lý luồng lách các đối tượng HTML

TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG

SƠ ĐỒ KHỐI HỆ THỐNG

Hình 3 1 Sơ đồ khối hệ thống

3.1.1 YÊU CẦU CỦA HỆ THỐNG

- Đo được chính xác nhiệt độ, độ ẩm không khí, độ ẩm đất và ánh sáng của môi trường

- Nguồn nuôi hệ thống đảm bảo cấp điện đầy đủ

- Thiết kế giao diện hiển thị và điều khiển trên trang web dễ sử dụng, thân thiện với người dùng

- Đảm bảo cây trồng sinh trưởng trong điều kiện tốt nhất

Board Wemos D1 R2 là khối xử lý trung tâm giúp kết nối mạng Internet, cho phép đọc giá trị từ các cảm biến Thiết bị này không chỉ gửi dữ liệu lên web mà còn nhận tín hiệu điều khiển từ web để quản lý trạng thái của các tải như đèn, quạt và máy bơm.

32 thị lên màn hình LCD các giá trị đo và trạng thái đóng ngắt, chế độ hoạt động

Khối cảm biến bao gồm các cảm biến ánh sáng TSL2561, cảm biến nhiệt độ và độ ẩm SHT10, cùng với cảm biến độ ẩm đất YL-69 Những cảm biến này có chức năng thu thập dữ liệu về ánh sáng, nhiệt độ, độ ẩm và độ ẩm đất Dựa vào các giá trị đo được, hệ thống sẽ xử lý thông tin theo các điều kiện đã được thiết lập sẵn.

- Khối hiển thị: Hiển thị số liệu từ cảm biến, trạng thái đóng ngắt của tải và chế độ hoạt động Auto/Manual lên màn hình LCD 20x4

Khối tải bao gồm các thiết bị như đèn, quạt tản nhiệt, bơm phun sương và bơm tưới nhỏ giọt Những thiết bị này hoạt động theo trạng thái đóng ngắt khi nhận lệnh từ vi điều khiển thông qua relay 4 kênh.

- Khối nguồn: Cung cấp nguồn cho toàn bộ hệ thống

Web server là hệ thống được cấu hình với cơ sở dữ liệu và giao diện điều khiển, cho phép người dùng quản lý và giám sát hệ thống thông qua kết nối Internet.

3.1.3 TRÌNH TỰ HOẠT ĐỘNG GIỮA CÁC KHỐI

Khối cảm biến thu thập dữ liệu và gửi về khối xử lý trung tâm, nơi dữ liệu được xử lý và gửi lên web server, đồng thời hiển thị thông tin trên màn hình LCD Khối tải sẽ điều khiển động cơ dựa trên tín hiệu từ web server mà khối xử lý trung tâm đã phân tích Khối nguồn cung cấp năng lượng cho toàn bộ hệ thống hoạt động.

TÍNH TOÁN THIẾT KẾ HỆ THỐNG

Mô hình trồng cây có kích thước nhỏ gọn (45 x 30 x 30 cm) sử dụng 1 cảm biến ánh sáng TSL2561, 1 cảm biến nhiệt độ và độ ẩm SHT10 với vỏ bảo vệ, cùng 1 cảm biến độ ẩm đất YL-69 để theo dõi và tối ưu hóa điều kiện sinh trưởng cho cây trồng.

Bảng 3 1 Kết nối cảm biến TSL2561 và Wemos D1 R2

Bảng 3 2 Kết nối cảm biến SHT10 và Wemos D1 R2

Bảng 3 3 Kết nối cảm biến YL-69 và Wemos D1 R2

Hình 3 2 Sơ đồ kết nối khối cảm biến

Màn hình LCD 20x4 cung cấp hiển thị trực quan với khả năng hiển thị linh hoạt các ký tự, bao gồm chữ, số và ký tự đồ họa, cho phép hiển thị thông số của 4 cảm biến và 4 tải trên 4 dòng, mỗi dòng 20 ký tự Thiết bị dễ dàng giao tiếp với vi điều khiển qua nhiều giao thức khác nhau, tiêu tốn ít tài nguyên hệ thống và dễ lập trình, phù hợp với các dự án Việc sử dụng module chuyển giao tiếp LCD sang I2C giúp tiết kiệm chân I/O và đơn giản hóa thiết kế mạch in.

Bảng 3 4 Kết nối module LCD I2C và Wemos D1 R2

Hình 3 3 Sơ đồ kết nối LCD

Khối tải bao gồm đèn sợi đốt 25W hoạt động ở điện áp 220VAC, giúp tăng cường khả năng quang hợp cho cây Ngoài ra, quạt tản nhiệt làm mát không khí trong những ngày nóng và hệ thống phun sương kết hợp với bơm cung cấp nước cho vòi phun sương, tạo ra môi trường lý tưởng cho sự phát triển của cây trồng.

1 bơm để cấp nước tưới nhỏ giọt cho cây trồng Các tải sẽ được điều khiển thông qua relay 4 kênh trung gian kích đóng ngắt

Bảng 3 5 Kết nối module relay 4 kênh và Wemos D1 R2

Hình 3 4 Sơ đồ kết nối module relay 4 kênh

Module 4 Relay kích H/L (5VDC) sử dụng nguồn 5VDC để nuôi mạch, tín hiệu kích có thể tùy chọn kích mức cao (High - 5VDC) hoặc mức thấp (Low

Module relay 4 kênh hỗ trợ tín hiệu 5VDC qua jumper trên mỗi relay, phù hợp cho các thiết bị như vi điều khiển Mạch kích relay được thiết kế với transistor và IC cách ly quang, đảm bảo cách ly hoàn toàn giữa mạch điều khiển và relay, giúp vi điều khiển hoạt động ổn định Chân kích của module sử dụng mức cao 5V.

• Điện áp hoạt động: 5VDC

• Dòng tiêu thụ: khoảng 200mA / 1Relay

• Tín hiệu kích: High (5VDC) hoặc Low (0VDC) chọn bằng Jumper

• Tiếp điểm đóng ngắt max: 250VAC-10A hoặc 30VDC-10A

Hình 3 5 Sơ đồ nguyên lý relay 4 kênh

3.2.4 Khối xử lý trung tâm

Phần cứng là thành phần chính của mạch, có nhiệm vụ nhận tín hiệu điện từ khối cảm biến, sau đó giải mã thành tín hiệu số Tiếp theo, dữ liệu được truyền qua web server để hiển thị trên giao diện web và xử lý việc đóng ngắt các tải.

Hình 3 6 Sơ đồ nguyên lý toàn hệ thống

❖ Phần mềm a) Lưu đồ giải thuật

Lưu đồ chương trình chính

Bắt đầu bằng việc khai báo các thư viện cần thiết và biến, sau đó khởi tạo các thông số ban đầu Hệ thống thiết lập kết nối WiFi và kiểm tra kết nối; khi hoàn tất, nó sẽ đọc dữ liệu từ cảm biến và gửi lên web server, đồng thời nhận dữ liệu từ web Khi có chuỗi dữ liệu, hệ thống sẽ tách chuỗi và kiểm tra các ký tự để xác định chế độ hoạt động là Auto hay Manual, từ đó điều khiển việc đóng mở các tải như đèn, quạt và bơm.

Hình 3 7 Lưu đồ chương trình chính

Lưu đồ đọc giá trị cảm biến

Hệ thống khởi tạo các giá trị ban đầu bằng cách đọc thông số môi trường qua cảm biến sáng TSL2561, cảm biến nhiệt độ và độ ẩm SHT10, cùng với cảm biến độ ẩm đất YL-69 Các giá trị này được xử lý tự động và hiển thị trên màn hình LCD.

Hình 3 8 Lưu đồ đọc giá trị cảm biến

Lưu đồ điều khiển các tải

Hình 3 9 Lưu đồ điều khiển tải

Sau khi nhận chuỗi line từ web, hệ thống sẽ kiểm tra xem trong chuỗi có chứa “AUTO” hay “MAN” Nếu có “AUTO”, hệ thống sẽ chuyển sang chế độ tự động, còn nếu có “MAN”, hệ thống sẽ hoạt động ở chế độ thủ công Đồng thời, các giá trị thông số môi trường và trạng thái của tải (bật hoặc tắt) sẽ được hiển thị trên màn hình LCD và trang web.

Lưu đồ chế độ Auto

Trong chế độ Auto, hệ thống tiến hành so sánh các giá trị ngưỡng giới hạn đã được cài đặt trên web Những giá trị này được tách ra từ chuỗi line và lưu trữ trong mảng arr, nhằm điều khiển việc bật tắt các tải như đèn, quạt và bơm.

Hình 3 10 Lưu đồ chế độ Auto

Lưu đồ chế độ Manual

Trong chế độ Manual, hệ thống nhận chuỗi line từ web và gán vào mảng arr[] Sau đó, hệ thống kiểm tra lần lượt các chuỗi “ON1” và “ON2” trong mảng.

“ON3” “ON4” thì bật các tải đèn, quạt, bơm 1,2 Nều có các chuỗi “OFF1”

“OFF2” “OFF3” “OFF4” thì tắt các tải đèn, quạt, bơm 1,2 đồng thời hiển thị trạng thái tải trên LCD

Hình 3 11 Lưu đồ chế độ Manual

43 b) Phần mềm lập trình Vi điều khiển

IDE, viết tắt của Integrated Development Environment, là phần mềm cung cấp cho lập trình viên một môi trường tích hợp với nhiều công cụ như trình viết mã (code editor), chương trình sửa lỗi (debugger) và mô phỏng ứng dụng (simulator) Nói chung, IDE là một giải pháp toàn diện hỗ trợ quá trình phát triển ứng dụng phần mềm hiệu quả hơn.

Ngôn ngữ lập trình Arduino, dựa trên C/C++, rất dễ học và dễ hiểu Để lập trình, gửi lệnh và nhận tín hiệu từ mạch Arduino, người dùng có thể sử dụng môi trường lập trình Arduino IDE do nhóm phát triển cung cấp.

Hình 3 12 Giao diện lập trình trên Arduino IDE

Các tính năng chính của Arduino IDE:

• Viết code cho bo mạch Arduino

• Hỗ trợ nhiều loại bo mạch Arduino

• Giao diện được sắp xếp hợp lý

• Bộ sưu tập các ví dụ mẫu

• Mảng thư viện hỗ trợ phong phú

44 c) Phần mềm lập trình Web

JetBrains PhpStorm là một IDE mạnh mẽ dành cho các nhà phát triển web, cung cấp các công cụ cần thiết để chỉnh sửa PHP, HTML, CSS, JavaScript và XML.

PhpStorm là một công cụ mạnh mẽ cho phép người dùng tạo và chỉnh sửa mã nguồn trên nhiều ngôn ngữ lập trình khác nhau Giống như các trình soạn thảo IDE khác, PhpStorm cung cấp các tính năng cơ bản như đánh dấu trang, hoàn thành mã, phóng to thu nhỏ và quản lý điểm ngắt, giúp nâng cao hiệu quả lập trình.

Hình 3 13 Phần mềm PhpStorm 3.2.5 Khối nguồn

Wemos D1 R2 được trang bị jack DC 9-12V để cung cấp nguồn hoạt động, do đó, chỉ cần tính toán nguồn cho khối tải riêng Dòng tiêu thụ của các thiết bị trong mạch được trình bày chi tiết trong bảng 3.6 và bảng 3.7.

Bảng 3 6 Dòng tiêu thụ các thiết bị điều khiển

Tên thiết bị Dòng tiêu thụ tối đa

Relay 4 kênh 800mA (200mA mỗi kênh)

THIẾT KẾ GIAO DIỆN WEBSITE

Yêu cầu của giao diện:

• Áp dụng hệ thống lưới tiêu chuẩn chia giao diện thành 12 cột

• Giao diện điều khiển trực quan, đơn giản, dễ sử dụng

• Có tài khoản riêng để đăng nhập vào web đảm bảo tính bảo mật

• Thanh Menu cho phép người dùng chọn lựa để xem chi tiết các danh mục: trang giới thiệu, trang cài đặt, trang biểu đồ

• Mọi thông tin về thông số môi trường, trạng thái hoạt động được thể hiện đầy đủ, dễ quan sát

3.3.1 Mô tả trang web thiết kế a) Trang đăng nhập

Trang đăng nhập có vai trò quan trọng trong việc bảo mật, chỉ cho phép người dùng đã được cấp tài khoản truy cập Tài khoản và mật khẩu của người dùng được thiết lập và lưu trữ an toàn trong hệ thống cơ sở dữ liệu.

Hình 3 16 Thiết kế trang đăng nhập b) Trang chủ

Trang mặc định khi đăng nhập vào website cung cấp thông tin chi tiết về dữ liệu môi trường từ các cảm biến như ánh sáng, nhiệt độ, độ ẩm không khí và độ ẩm đất Nó hiển thị giá trị cài đặt, thời gian cài, trạng thái các tải và chế độ hoạt động, cùng với các nút điều khiển Thanh menu cho phép người dùng dễ dàng chuyển hướng đến các trang khác hoặc đăng xuất.

Hình 3 17 Thiết kế trang chủ c) Trang cài đặt

Hệ thống cho phép người dùng cài đặt giá trị ngưỡng trên/dưới cho ánh sáng, nhiệt độ, độ ẩm không khí và độ ẩm đất, hoạt động tự động Các giá trị và thời gian cài đặt sẽ được hiển thị trên web, giúp người dùng dễ dàng theo dõi Để cài đặt ngưỡng cho một cảm biến, cả giá trị trên và dưới phải được nhập cùng lúc và xác nhận; nếu không, hệ thống sẽ thông báo yêu cầu nhập đầy đủ thông tin.

Hình 3 18 Thiết kế trang cài đặt

Biểu đồ giúp người dùng có thể quan sát được biến động của môi trường hiện tại một cách trực quan và dễ hiểu nhất

Hình 3 19 Thiết kế trang biểu đồ

Cơ sở dữ liệu, hay còn gọi là dữ liệu nền tảng, là một tập hợp có tổ chức các dữ liệu, bao gồm các lược đồ, bảng, truy vấn, báo cáo, quan điểm và các đối tượng khác Thiết kế bảng là một yếu tố quan trọng trong việc xây dựng cơ sở dữ liệu hiệu quả.

Bảng trong cơ sở dữ liệu (CSDL) được sử dụng để lưu trữ thông tin về một đối tượng thực tế, bao gồm các dòng và cột, và thường có khoá chính (primary key) để xác định duy nhất từng bản ghi.

CREATE TABLE ten_bang ( cot1 kieu_du_lieu, cot2 kieu_du_lieu,

50 cotN kieu_du_lieu, PRIMARY KEY (1 hoặc nhiều cột) );

Hình 3 20 Ví dụ tạo bảng CSDL b) Nhận dữ liệu từ Wemos vào CSDL

Dữ liệu sẽ được đưa vào CSDL thông qua giao thức $_GET

$data = "$anhsang $nhietdo $doam $amdat";

‘anhsang’, ‘nhietdo’, ‘doam’, ‘amdat’: là các biến lưu giá trị đo được từ cảm biến, truyền lên web bằng giao thức GET, sau đó lưu vào các biến

Để hiển thị dữ liệu lên web bằng ngôn ngữ PHP, chúng ta sử dụng lệnh SELECT để chọn bảng và cột cần hiển thị Ví dụ, để lấy giá trị cài đặt ánh sáng từ cơ sở dữ liệu, ta thực hiện các lệnh tương ứng.

$anh_sang1= 'SELECT * FROM caidat_as ORDER BY id DESC LIMIT 1';

$set1= $pdo->query($anh_sang1)->fetch()['cai_as1'];

Đầu tiên, lệnh được sử dụng để chọn bảng cài đặt ánh sáng, sau đó thực hiện truy vấn dữ liệu từ bảng này và gán vào biến $set1, biến này sẽ được hiển thị trên website.

THI CÔNG HỆ THỐNG VÀ KẾT QUẢ THỰC HIỆN

THI CÔNG MẠCH IN

Sơ đồ layout bo mạch điều khiển

Hình 4 1 Sơ đồ layout bo mạch điều khiển

Các cảm biến trong mạch được thiết kế dưới dạng module, cho phép cắm trực tiếp lên mạch Các đường dây nguồn và dây tín hiệu của các linh kiện được kết nối thông qua dây dẫn đồng của mạch in.

Hình 4 2 Sơ đồ mạch in

Bảng 4 1 Danh sách linh kiện

Stt Tên linh kiện Số lượng

THI CÔNG MÔ HÌNH

4.2.1 Thiết kế, lắp ráp mô hình

Mô hình được làm bằng mica trong suốt dày 3mm được thiết kế chắc chắn dạng hình hộp không nắp đạy, với kích thước dài x rộng x cao tương ứng

Mô hình có kích thước 45 x 30 x 30 cm, được thiết kế để chứa một chậu cây nhỏ và một khay đựng nước, cùng với một lỗ tròn nhỏ cho dây điện kết nối với bộ điều khiển Bên trái mô hình có lắp đặt một quạt điều hòa nhiệt độ để giảm nhiệt độ không khí khi cần thiết Đèn được treo trên một trục cố định cao, trong khi hai động cơ bơm nước được đặt ở một góc của mô hình, không làm ảnh hưởng đến diện tích trồng cây.

Hộp điều khiển được lắp đặt bên phải mô hình, sử dụng mica trong dày 2mm nhằm bảo vệ mạch điều khiển khỏi va đập, nước và bụi bẩn Màn hình LCD 20x4 được gắn bên ngoài hộp, giúp người dùng dễ dàng quan sát thông tin.

Sinh viên đã chọn cây rau quế vị (xá xị) để thử nghiệm hệ thống tưới nhỏ giọt Loại cây này phát triển tốt trong đất ẩm, giàu dinh dưỡng, và hệ thống tưới nhỏ giọt giúp duy trì độ ẩm mà không làm xáo trộn rễ cây Rau quế vị trồng tại nhà không cần sử dụng phân bón hóa học hay thuốc bảo vệ thực vật, vì vậy rất dễ chăm sóc.

KẾT QUẢ ĐẠT ĐƯỢC

Ứng dụng cơ bản của IoT giúp xử lý tín hiệu từ xa, mở ra cơ hội phát triển công nghệ IoT thông qua nhiều ứng dụng khác nhau.

• Thành thạo các phần mềm lập trình cho Arduino, lập trình web

• Sử dụng được các module cảm biến (ánh sáng, nhiệt độ - độ ẩm, độ ẩm đất)

• Thiết kế cơ bản giao diện web bằng ngôn ngữ HTML, CSS, JS

• Biết sử dụng công cụ hỗ trợ Chartjs để vẽ biểu đồ

• Tạo bảng, truy xuất dữ liệu từng bảng từ cơ sở dũ liệu

Hình 4 3 Mô hình sản phẩm

Hình 4 4 Bộ điều khiển ở trạng thái Auto

4.3.2 Giao diện trang Web điều khiển a) Trang đăng nhập

Hình 4 5 Trang đăng nhập b) Trang chủ

Hình 4 8 Trang cài đặt e) Trang biểu đồ

Cơ sở dữ liệu được thiết kế bao gồm các bảng dữ liệu để cài đặt giá trị ngưỡng cho nhiệt độ, độ ẩm không khí, độ ẩm đất và ánh sáng; bên cạnh đó, còn có bảng tài khoản và các bảng xuất giá trị cảm biến phục vụ cho việc tạo biểu đồ.

Hình 4 10 Các bảng cơ sở dữ liệu

Hình 4 11 Bảng cơ sở dữ liệu biểu đồ ánh sáng

NHẬN XÉT

• Hệ thống trồng cây hoạt động ổn định, mô hình chắc chắn, bảo đảm điều kiện tốt giúp cây phát triển

• Trang web được thiết kế dễ sử dụng và quan sát, màu sắc và bố cục hợp lý không gây khó chịu cho người dùng

• Có thể điều khiển và theo dõi từ xa thông qua máy tính có kết nối internet

• Chi phí các linh kiện và thiết kế thấp

• Điều khiển các tải đèn, hệ thống có độ trễ từ 5 – 10s mới thực hiện lệnh

• Trang web dùng localhost nên chỉ sử dụng được mạng wifi nội bộ, có thể mua host và tên miền để sử dụng được mọi nơi

• Khi mất kết nối mạng, hệ thống sẽ tắt hết các tải và chờ có mạng mới hoạt động lại bình thường

• Hệ thống khi mất điện sẽ không có nguồn phụ cung cấp

Ngày đăng: 28/11/2021, 09:20

HÌNH ẢNH LIÊN QUAN

Hình 1. 1 Ứng dụng IoT trong trồng trọt thực tế - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 1. 1 Ứng dụng IoT trong trồng trọt thực tế (Trang 13)
Hình 2. 1 Raspberry Pi 3 Model B+ - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 1 Raspberry Pi 3 Model B+ (Trang 15)
Hình 2. 2 Board Arduino Uno R3 - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 2 Board Arduino Uno R3 (Trang 16)
Hình 2. 4 ESP8266 - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 4 ESP8266 (Trang 18)
Hình 2. 7 Sơ đồ khối chức năng TSL2561 - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 7 Sơ đồ khối chức năng TSL2561 (Trang 22)
Hình 2. 13 Sơ đồ mạch cảm biến YL-69 - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 13 Sơ đồ mạch cảm biến YL-69 (Trang 25)
Bảng 2. 3 Các lệnh điều khiển LCD - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Bảng 2. 3 Các lệnh điều khiển LCD (Trang 28)
Hình 2. 19 Vùng nhớ CGROM - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 19 Vùng nhớ CGROM (Trang 30)
Hình 2. 20 Tổ chức bộ nhớ DDRAM - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 20 Tổ chức bộ nhớ DDRAM (Trang 31)
Hình 2. 26 Bus I2C và các thiết bị ngoại vi - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 2. 26 Bus I2C và các thiết bị ngoại vi (Trang 34)
Hình 3. 1 Sơ đồ khối hệ thống - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 3. 1 Sơ đồ khối hệ thống (Trang 42)
Hình 3. 2 Sơ đồ kết nối khối cảm biến - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 3. 2 Sơ đồ kết nối khối cảm biến (Trang 44)
Bảng 3. 4 Kết nối module LCD I2C và Wemos D1 R2 - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Bảng 3. 4 Kết nối module LCD I2C và Wemos D1 R2 (Trang 45)
Hình 3. 5 Sơ đồ nguyên lý relay 4 kênh - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 3. 5 Sơ đồ nguyên lý relay 4 kênh (Trang 47)
Hình 3. 6 Sơ đồ nguyên lý toàn hệ thống - Ứng dụng công nghệ iot vào hệ thống trồng trọt trong nông nghiệp
Hình 3. 6 Sơ đồ nguyên lý toàn hệ thống (Trang 48)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w