Bối cảnh và vấn đề nghiên cứu

Ngành nông nghiệp nói chung và nuôi trồng thủy sản nói riêng đóng vai trò quan trọng trong cơ cấu kinh tế Việt Nam. Theo số liệu tổng kết năm 2016 của ngành thủy sản được tác giả trích dẫn, tổng sản lượng thủy sản cả nước đạt hơn 6,7 triệu tấn (khai thác gần 3,1 triệu tấn, nuôi trồng trên 3,6 triệu tấn) với diện tích nuôi trồng 1,3 triệu ha và kim ngạch xuất khẩu đạt khoảng 7 tỷ USD. Mặc dù đem lại nguồn lợi nhuận lớn cho các hộ nông dân, nghề nuôi trồng thủy sản tại Việt Nam vẫn đối mặt với nhiều rủi ro lớn do phương thức quản lý mang nặng tính thủ công. Hiện tượng thủy hải sản chết hàng loạt do biến động môi trường nước diễn ra đột ngột và khó kiểm soát (như các sự cố cá chết tại Phú Quý năm 2016 hay trên sông Mã năm 2017) đã gây ra thiệt hại kinh tế nghiêm trọng.

Trước thực trạng đó, việc ứng dụng kỹ thuật điện tử, vi điều khiển và công nghệ truyền thông không dây để tự động hóa công tác giám sát, điều khiển các thông số chất lượng nước là một nhu cầu cấp thiết. Nghiên cứu của nhóm tác giả tập trung giải quyết các hạn chế của các đề tài trước đây: các hệ thống cũ thường sử dụng vi điều khiển 8-bit họ PIC (như PIC16F887A) hoặc AVR vốn rất hạn chế về số lượng cổng vào/ra số và chuẩn giao tiếp ngoại vi (PIC16F887A chỉ có 1 cổng UART, không đủ đáp ứng khi cần kết nối đồng thời nhiều module), trong khi các vi xử lý ARM hay máy tính nhúng Raspberry Pi lại có giá thành cao và cấu hình dư thừa so với quy mô mô hình.

Mục tiêu nghiên cứu của đồ án bao gồm:

  1. Thiết kế và thi công mô hình hồ cá đa năng vận hành tự động sử dụng bo mạch vi điều khiển Arduino Mega 2560 làm trung tâm điều khiển.
  2. Tự động hóa các chu trình chăm sóc thủy sinh: hẹn giờ bật/tắt hệ thống lọc nước, sục khí oxy, đèn chiếu sáng và cơ cấu cấp thức ăn tự động.
  3. Thu thập, xử lý và hiển thị thời gian thực các thông số môi trường nước bao gồm nhiệt độ và độ pH lên màn hình LCD.
  4. Xây dựng cơ chế bảo vệ và cảnh báo tự động: kích hoạt quạt làm mát hoặc que sưởi để cân bằng nhiệt độ khi có biến động; tự động gửi tin nhắn SMS cảnh báo tới số điện thoại người dùng qua mạng di động khi thông số vượt ngưỡng hoặc khi hệ thống gặp sự cố mất nguồn điện lưới.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Các yếu tố môi trường ảnh hưởng trực tiếp đến đời sống thủy sinh (nhiệt độ nước, độ pH); bo mạch vi điều khiển Arduino Mega 2560; cảm biến nhiệt độ kỹ thuật số DS18B20; bộ cảm biến đo độ pH của hãng DFRobot; IC thời gian thực DS1307; module truyền thông GSM/GPRS SIM800L; mạch kích công suất relay; mạch nguồn hạ áp và mạch chuyển nguồn dự phòng.
  • Phạm vi và giới hạn đề tài: Đề tài thực hiện trên mô hình thực nghiệm quy mô nhỏ; cảm biến pH hoạt động trong dải nhiệt độ mẫu từ 0°C đến 60°C với tốc độ phản ứng dưới 1 phút; cảm biến nhiệt độ DS18B20 hoạt động trong dải đo từ -10°C đến +125°C.

Cơ sở lý thuyết và phương pháp

Đồ án dựa trên nền tảng kỹ thuật điều khiển nhúng, xử lý tín hiệu cảm biến analog/digital, kỹ thuật giao tiếp nối tiếp và thiết kế mạch phần cứng điện tử ứng dụng.

Các nền tảng lý thuyết và linh kiện cốt lõi được tác giả sử dụng gồm:

  • Vi điều khiển ATmega2560: Hoạt động trên bo mạch Arduino Mega 2560, cung cấp 54 chân I/O số (15 chân PWM), 16 chân ngõ vào analog, 4 cổng truyền thông nối tiếp UART phần cứng và 6 chân ngắt ngoài.
  • Chuẩn giao tiếp 1-Wire: Ứng dụng cho cảm biến nhiệt độ kỹ thuật số DS18B20, cho phép truyền nhận dữ liệu qua một dây tín hiệu duy nhất nhờ mã định danh 64-bit tích hợp sẵn trên từng chip.
  • Chuẩn giao tiếp I2C: Ứng dụng để đọc/ghi dữ liệu thời gian giữa vi điều khiển và chip RTC DS1307 thông qua hai đường tín hiệu SDA (dữ liệu) và SCL (xung nhịp).
  • Tập lệnh AT (Hayes command set): Sử dụng để cấu hình và điều khiển module SIM800L gửi tin nhắn SMS qua cổng UART.
  • Lý thuyết nguồn xung giảm áp (Buck Converter): Ứng dụng vi mạch LM2576-ADJ để chuyển đổi điện áp nguồn DC xuống mức điện áp ổn định phục vụ toàn mạch.

Phương pháp nghiên cứu thực tế được triển khai:

  • Phương pháp phân tích và tính toán thiết kế phần cứng: Phân tích các yêu cầu kỹ thuật của tải để thiết kế mạch kích relay cách ly dùng transistor, tính toán mạch phân áp hồi tiếp cho IC nguồn hạ áp xung LM2576, phối hợp trở kháng và tính toán giá trị điện trở kéo lên (pull-up resistor) cho đường truyền tín hiệu 1-Wire và bus I2C.
  • Phương pháp lọc số và xử lý tín hiệu analog: Xây dựng thuật toán lấy mẫu liên tục tín hiệu điện áp từ cảm biến pH, lọc bỏ các giá trị nhiễu biên (loại bỏ giá trị cực đại và cực tiểu) và tính giá trị trung bình để quy đổi sang thang đo pH chuẩn.
  • Phương pháp thực nghiệm và chế tạo: Vẽ sơ đồ nguyên lý, thiết kế mạch in (PCB), hàn lắp linh kiện phần cứng, nạp chương trình điều khiển nhúng và kiểm tra thực nghiệm hoạt động của mô hình trong điều kiện thực tế.

Nguồn dữ liệu của đồ án gồm các thông số kỹ thuật từ datasheet của nhà sản xuất (Dallas Semiconductor, DFRobot, SIMCom, Texas Instruments), các tài liệu tiêu chuẩn kỹ thuật điện tử nhúng và dữ liệu đo đạc thực nghiệm từ mô hình hồ cá.

Thiết kế và triển khai hệ thống

Hệ thống được thiết kế theo cấu trúc module hóa gồm 7 khối chức năng chính tương tác chặt chẽ với nhau.

Thiết kế phần cứng

Hệ thống phần cứng bao gồm các khối chức năng và linh kiện được lựa chọn, tính toán cụ thể như sau:

Khối chức năng Linh kiện / Thiết bị chính Thông số kỹ thuật & Đặc tính thiết kế
Xử lý trung tâm Board Arduino Mega 2560 (ATmega2560) 54 chân Digital I/O, 16 chân Analog In, 4 cổng UART, cấp nguồn 5V/3.3V, xử lý toàn bộ logic hệ thống.
Cảm biến nhiệt độ DS18B20 Dải đo -55°C đến +125°C, độ chính xác ±0.0625°C (chế độ 12-bit), giao tiếp 1-Wire sử dụng điện trở kéo lên $4.7\text{ k}\Omega$.
Cảm biến pH Bộ cảm biến pH DFRobot (pH Meter V1.0) Đầu dò BNC, dải đo 0 - 14 pH, dải nhiệt độ 0 - 60°C, độ chính xác ±0.1 pH tại 25°C, xuất tín hiệu Analog vào chân vi điều khiển.
Thời gian thực IC RTC DS1307 Giao tiếp I2C (SDA, SCL), dao động thạch anh 32.768 kHz, nguồn pin dự phòng 3V (VBAT) duy trì 8 thanh ghi thời gian thực.
Giao tiếp từ xa Module SIM800L Hoạt động ở điện áp 3.2V - 4.2VDC (dùng diode 1N4007 hạ áp từ 5V), khe cắm Micro SIM, 4 băng tần, điều khiển bằng tập lệnh AT qua Serial1.
Kích công suất Transistor NPN C1815 & Relay 12V Điện trở định thiên cực B $10\text{ k}\Omega$, diode 1N4007 mắc song song ngược cuộn dây dập xung cảm ứng, LED hiển thị trạng thái ngõ ra.
Khối nguồn chính IC nguồn xung LM2576 Hạ áp cho ra điện áp +4.5VDC, dòng tải tối đa 3A, mạch hồi tiếp dùng $R_1 = 1\text{ k}\Omega$ và $R_2 \approx 2.6\text{ k}\Omega$.
Chuyển nguồn pin Relay 12V & 4 cell Pin sạc Panasonic 18650 Tự động đóng tiếp điểm relay từ nguồn Adapter 12V sang khối pin sạc dự phòng khi mất nguồn điện lưới 220V.
Mạch báo mất điện Optocoupler PC817 Cách ly quang điện áp lưới 220VAC qua trở hạn dòng $330\text{ k}\Omega$, ngõ ra nối với chân digital Arduino có trở kéo lên $10\text{ k}\Omega$.
Giao tiếp người dùng LCD 20x4 & 6 nút nhấn Hiển thị thông số 4 dòng, nút nhấn dùng điện trở kéo lên nội (INPUT_PULLUP).

Việc tính toán mạch nguồn và điện trở định thiên tuân thủ các công thức kỹ thuật:

  • Điện trở kéo lên cho bus 1-Wire và I2C được chọn thỏa mãn điều kiện xấp xỉ 1/10 trở kháng vào của vi điều khiển ($R_{in} \approx 100\text{ k}\Omega - 1\text{ M}\Omega$): $R_{PULL-UP} = 4.7\text{ k}\Omega$.
  • Điện áp ngõ ra mạch nguồn xung LM2576 được thiết lập theo công thức: $$V_{out} = 1.23 \times \left(1 + \frac{R_2}{R_1}\right)$$ Với $V_{out} = 4.5\text{V}$ và chọn $R_1 = 1\text{ k}\Omega$, tính được $R_2 \approx 2.6\text{ k}\Omega$.

Thiết kế phần mềm và giải thuật

Phần mềm điều khiển trên Arduino Mega 2560 được xây dựng thành hai khối chương trình chính: chương trình điều khiển tự động và chương trình điều khiển bằng tay thông qua giao diện LCD 20x4 và 6 nút nhấn thao tác.

  1. Giải thuật giao diện và phím bấm: Giao diện LCD bao gồm trang khởi động hiển thị tên hệ thống và 4 trang chức năng chính chuyển đổi qua phím Chuyển trang:
  • Trang 1: Hiển thị thời gian thực, giá trị nhiệt độ nước và độ pH hiện tại (cho phép truy cập trang con để chỉnh sửa thời gian RTC).
  • Trang 2: Cài đặt giờ/phút bật/tắt các thiết bị: máy cho ăn, đèn chiếu sáng, máy lọc nước, máy sủi oxy.
  • Trang 3: Hiển thị trạng thái hoạt động thực tế (Bật/Tắt) của từng tải thiết bị.
  • Trang 4: Cài đặt các ngưỡng cảnh báo nhiệt độ cao/thấp, độ pH và chế độ điều khiển thủ công bằng nút bấm.
  1. Giải thuật điều khiển tự động theo thời gian: Hệ thống đọc liên tục dữ liệu từ IC DS1307. Khi thời gian thực trùng với giá trị cài đặt:
  • Đối với cơ cấu cấp thức ăn: Vi điều khiển kích relay cấp nguồn cho động cơ DC quay đúng 12 giây (tương đương chính xác 1 chu kỳ quay của cơ cấu hộp thức ăn) rồi ngắt.
  • Đối với đèn, máy lọc, sủi oxy: Vi điều khiển so sánh giá trị giờ - phút thực tế với các mốc giờ bật và giờ tắt đã lưu để đóng/ngắt các relay tương ứng.
  1. Giải thuật đo và lọc tín hiệu cảm biến pH: Để đảm bảo độ chính xác, chương trình thực hiện đọc liên tiếp 10 mẫu điện áp analog từ module pH qua bộ biến đổi ADC. Mảng 10 giá trị được sắp xếp theo thứ tự tăng dần, sau đó loại bỏ 2 giá trị thấp nhất và 2 giá trị cao nhất, lấy trung bình cộng của 6 giá trị ổn định ở giữa. Giá trị trung bình được chuyển đổi sang điện áp millivolt và quy đổi thành giá trị pH hiển thị lên màn hình.

  2. Giải thuật điều khiển nhiệt độ và gửi tin nhắn cảnh báo qua SIM800L: Khi giá trị nhiệt độ nước vượt quá ngưỡng nhiệt độ cao cài đặt, hệ thống kích relay bật quạt làm mát, ngắt que sưởi, đồng thời gọi chương trình con gửi tin nhắn SMS cảnh báo nhiệt độ cao đến số điện thoại lập trình sẵn (0969468931). Khi nhiệt độ xuống dưới ngưỡng thấp, hệ thống ngắt quạt, bật que sưởi và gửi SMS cảnh báo nhiệt độ thấp. Module SIM800L được cấu hình ở chế độ tin nhắn văn bản bằng lệnh AT+CMGF=1, xóa ngăn nhớ thứ nhất bằng lệnh AT+CMGD=1 để tránh nghẽn bộ nhớ, gửi nội dung SMS bằng lệnh AT+CMGS và kết thúc chuỗi bằng ký tự mã ASCII 0x1A (Ctrl+Z) kèm các ký tự điều khiển <CR> (0x0D), <LF> (0x0A).

Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương 1 giới thiệu bối cảnh thực tiễn của ngành thủy sản Việt Nam, tính cấp thiết của việc áp dụng tự động hóa nhằm giảm thiểu các rủi ro làm chết sinh vật thủy sinh hàng loạt. Tác giả phân tích các ưu điểm và hạn chế của các dòng vi điều khiển trên thị trường, làm rõ lý do lựa chọn Arduino Mega 2560 làm bộ xử lý trung tâm thay cho các dòng vi điều khiển 8-bit họ PIC/AVR hay các mạch ARM/Raspberry Pi. Chương này cũng xác định rõ mục tiêu, đối tượng, phạm vi nghiên cứu thực nghiệm trên mô hình mini và bố cục tổng thể của báo cáo đồ án.

Chương 2: Tính toán và thiết kế phần cứng hệ thống

Chương 2 mô tả chi tiết sơ đồ khối và nguyên lý vận hành của 7 khối chức năng trong hệ thống. Tác giả trình bày sơ đồ nguyên lý, cấu tạo chân giao tiếp, thông số kỹ thuật và các tính toán điện tử cho từng khối: khối xử lý trung tâm (ATmega2560), khối cảm biến (DS18B20 và bộ cảm biến pH DFRobot), khối thời gian thực (DS1307 với tổ chức 64 thanh ghi và thạch anh 32.768 kHz), khối truyền thông GSM (SIM800L), khối kích relay dùng transistor C1815 kèm diode dập xung ngược 1N4007, khối nguồn xung hạ áp LM2576, mạch chuyển nguồn tự động sang pack 4 pin sạc 18650 Panasonic khi mất điện lưới và mạch phát hiện mất nguồn điện 220V sử dụng opto PC817.

Chương 3: Thiết kế phần mềm hệ thống

Chương 3 trình bày toàn bộ cấu trúc giải thuật của phần mềm nhúng điều khiển hệ thống dưới dạng các lưu đồ giải thuật chi tiết. Nội dung bao gồm: lưu đồ giải thuật phân trang và xử lý phím bấm giao diện LCD (phím Chuyển trang, Mode, Up, Down), giải thuật tự động kích hoạt máy cho ăn (động cơ quay 12 giây), giải thuật điều khiển bật/tắt đèn, máy lọc và sục khí oxy theo mốc thời gian thực, giải thuật lấy mẫu và lọc trung bình 10 giá trị analog của cảm biến pH, giải thuật đọc nhiệt độ 1-Wire DS18B20, và giải thuật giao tiếp tập lệnh AT để cấu hình, gửi tin nhắn SMS cảnh báo sự cố từ module SIM800L.

Chương 4: Kết quả, hướng dẫn sử dụng, kiểm tra, đánh giá, nhận xét

Chương 4 công bố kết quả thi công thực tế bao gồm bản vẽ thiết kế mạch in (PCB) và hình ảnh các bo mạch sau khi lắp ráp hoàn thiện: mạch chính vi điều khiển, mạch công suất relay, mạch chuyển nguồn dự phòng và mạch báo mất điện. Tác giả trình bày hình ảnh mô hình hồ cá sau khi tích hợp toàn bộ thiết bị phần cứng, cung cấp tài liệu hướng dẫn sử dụng chi tiết hệ thống 6 nút bấm trên giao diện màn hình LCD, đồng thời đưa ra các kết quả kiểm tra thực nghiệm và đánh giá khả năng vận hành của từng khối chức năng.

Chương 5: Kết luận và hướng phát triển

Chương 5 tổng kết các kết quả đạt được của đồ án trong việc đáp ứng mục tiêu thiết kế ban đầu. Tác giả thẳng thắn chỉ ra các điểm còn tồn tại về độ chắc chắn cơ khí, tính thẩm mỹ của việc đi dây trên mô hình và độ ổn định lâu dài của mạch điện trong môi trường có độ ẩm cao, đồng thời đề xuất các định hướng nâng cấp hệ thống trong tương lai.

Kết quả và đóng góp

Kết quả chính đạt được

  • Chế tạo và lắp ráp thành công 3 bo mạch phần cứng chuyên dụng: Bo mạch chính tích hợp Arduino Mega 2560 và các khối ngoại vi, bo mạch relay điều khiển công suất 7 thiết bị tải, bo mạch nguồn hạ áp LM2576 kết hợp mạch chuyển nguồn pin dự phòng và mạch opto PC817 báo mất điện lưới 220V.
  • Xây dựng hoàn chỉnh mô hình hồ cá đa năng có khả năng tự động thực hiện các chu trình nuôi dưỡng: điều khiển motor thức ăn quay 12 giây mỗi lần hẹn, bật/tắt hệ thống lọc, sục khí oxy và đèn theo đúng mốc thời gian thực cài đặt từ chip DS1307.
  • Đo đạc chính xác nhiệt độ môi trường nước (sai số nhỏ nhờ cảm biến số DS18B20) và độ pH (xử lý qua thuật toán lọc trung bình 6/10 mẫu), hiển thị trực quan dữ liệu lên màn hình LCD 20x4.
  • Vận hành ổn định cơ chế bảo vệ nhiệt độ: Tự động đóng/ngắt quạt làm mát hoặc que sưởi dựa trên ngưỡng nhiệt độ cài đặt, đồng thời gửi tin nhắn SMS cảnh báo kịp thời về điện thoại khi có hiện tượng vượt ngưỡng thông số hoặc khi mất nguồn điện lưới 220VAC.
  • Đảm bảo nguồn điện liên tục cho hệ thống: Khối chuyển nguồn relay lập tức cấp nguồn 12V từ 4 cell pin sạc Panasonic 18650 cho hệ thống ngay khi mất nguồn Adapter, giúp duy trì hoạt động giám sát không bị gián đoạn.

Giải pháp và kiến nghị đề xuất của tác giả

  • Ứng dụng giải pháp chuyển đổi nguồn tự động bằng relay kết hợp bộ pin sạc dự phòng để đảm bảo tính liên tục của hệ thống điều khiển sinh học, tránh nguy cơ cá bị ngạt khí khi mất điện lưới.
  • Đề xuất quy trình chuẩn hóa tín hiệu analog cho cảm biến pH bằng thuật toán lọc sắp xếp loại biên để loại bỏ nhiễu điện từ trong môi trường nước có nhiều thiết bị điện hoạt động đồng thời.

Đóng góp về mặt kỹ thuật

Tác giả đã hiện thực hóa một giải pháp nhúng hoàn chỉnh, tích hợp đa chức năng trên một nền tảng xử lý Arduino Mega 2560 với chi phí hợp lý. Đồ án giải quyết thành công bài toán thiếu hụt cổng giao tiếp ngoại vi của các vi điều khiển 8-bit truyền thống mà không làm tăng chi phí và độ phức tạp như các hệ thống dùng vi xử lý ARM/Raspberry Pi.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế được đề cập trong văn bản

  • Tính chắc chắn cơ khí, độ thẩm mỹ và mức độ hoàn thiện của việc bố trí dây dẫn trong mô hình lắp ráp thực tế còn chưa cao.
  • Độ bền và độ ổn định vận hành lâu dài của các linh kiện điện tử trong môi trường hơi ẩm bốc lên từ mặt hồ cá chưa được kiểm nghiệm qua thời gian dài.
  • Hệ thống mới chỉ dừng lại ở việc thử nghiệm trên quy mô mô hình mini trong phòng thí nghiệm, chưa được triển khai thử nghiệm trên các bể nuôi thực tế có quy mô công nghiệp lớn.

Hướng nghiên cứu tiếp theo

  • Nâng cấp phần cứng với vỏ hộp bảo vệ chuyên dụng có khả năng kháng ẩm, chống nước chuẩn công nghiệp để bảo vệ các bo mạch điện tử.
  • Mở rộng thêm các loại cảm biến quan trắc chất lượng nước chuyên sâu như cảm biến đo nồng độ oxy hòa tan (DO), cảm biến độ đục của nước, cảm biến tổng chất rắn hòa tan (TDS).
  • Tích hợp thêm các chuẩn kết nối mạng Internet không dây (WiFi, Ethernet, IoT Gateway) và phát triển ứng dụng di động/web server để người dùng có thể theo dõi biểu đồ thông số môi trường và điều khiển hệ thống qua Internet thay vì chỉ sử dụng tin nhắn SMS.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho sinh viên các ngành Công nghệ Kỹ thuật Điện tử - Truyền thông, Cơ điện tử, Kỹ thuật Điều khiển & Tự động hóa và Kỹ thuật Máy tính khi thực hiện các đồ án môn học, đồ án tốt nghiệp về hệ thống nhúng, đo lường và điều khiển nông nghiệp thông minh.

Các nội dung có giá trị tham khảo cao trong tài liệu gồm:

  • Thiết kế mạch phần cứng thực tế: Mạch kích relay cách ly dùng transistor C1815 có diode dập xung ngược, mạch chuyển nguồn pin dự phòng không gián đoạn và mạch nhận biết mất nguồn 220VAC sử dụng optocoupler PC817.
  • Thuật toán xử lý tín hiệu analog: Kỹ thuật lấy mẫu đa điểm, thuật toán lọc trung bình loại biên áp dụng cho cảm biến đo độ pH.
  • Lập trình giao tiếp ngoại vi: Kỹ thuật điều khiển module SIM800L qua tập lệnh AT trên cổng UART độc lập của Arduino Mega 2560 và kỹ thuật quản lý bộ nhớ 64 thanh ghi của IC thời gian thực DS1307 qua giao thức I2C.

Câu hỏi thường gặp

1. Tại sao nhóm tác giả lại chọn bo mạch Arduino Mega 2560 thay vì PIC16F887A hay Raspberry Pi?
Vi điều khiển PIC16F887A chỉ có 1 cổng UART và hạn chế về chân I/O, không đủ để kết nối cùng lúc nhiều module (SIM800L, DS1307, DS18B20, module pH, LCD, 6 nút nhấn và mạch 7 relay). Trong khi đó, Raspberry Pi hay ARM có giá thành rất cao, cấu hình dư thừa và thư viện hỗ trợ giao tiếp phức tạp hơn. Arduino Mega 2560 sở hữu chip ATmega2560 với 4 cổng UART, 54 chân Digital I/O, 16 chân Analog, cộng đồng thư viện phong phú và giá thành hợp lý.

2. Thuật toán đo và tính toán giá trị pH từ cảm biến DFRobot được thực hiện như thế nào để loại bỏ nhiễu?
Chương trình tiến hành đọc liên tiếp 10 giá trị analog từ Module pH Meter V1.0, sắp xếp 10 giá trị này theo thứ tự từ thấp đến cao, loại bỏ 2 giá trị nhỏ nhất và 2 giá trị lớn nhất, rồi tính trung bình cộng của 6 giá trị ở giữa. Giá trị trung bình này được quy đổi sang mức điện áp millivolt rồi mới tính toán ra giá trị pH chuẩn để hiển thị lên LCD.

3. Cơ chế cấp thức ăn tự động cho cá hoạt động trong thời gian bao lâu mỗi lần kích hoạt?
Khi thời gian thực từ IC DS1307 trùng khớp với giờ - phút hẹn cho ăn, vi điều khiển sẽ kích relay cấp điện cho động cơ DC gắn vào hộp thức ăn hoạt động đúng 12 giây (khoảng thời gian tương ứng chính xác với 1 vòng quay của cơ cấu nhả thức ăn) rồi tự động ngắt.

4. Mạch báo mất điện và khối nguồn dự phòng của hệ thống hoạt động theo nguyên lý nào?
Mạch báo mất điện sử dụng opto PC817 nối với nguồn điện lưới 220VAC qua điện trở hạn dòng $330\text{ k}\Omega$; khi mất điện, opto ngừng dẫn làm ngõ ra chuyển sang mức cao gửi về Arduino để gửi tin nhắn cảnh báo. Đồng thời, mạch chuyển nguồn relay sẽ tự động nhả tiếp điểm từ nguồn Adapter 12V sang khối 4 pin sạc Panasonic 18650 (12V) nối ở tiếp điểm NC, giúp hệ thống duy trì nguồn cấp liên tục qua IC nguồn xung LM2576.

5. Module SIM800L được cấu hình bằng các lệnh AT nào trong chương trình khởi tạo?
Module SIM800L được kiểm tra đáp ứng bằng lệnh AT (chờ phản hồi OK), thiết lập chế độ truyền nhận tin nhắn dạng văn bản (text mode) bằng lệnh AT+CMGF=1, và xóa dữ liệu ở ngăn nhớ thứ nhất bằng lệnh AT+CMGD=1 nhằm tránh tình trạng đầy bộ nhớ tin nhắn trên SIM.

Kết luận

Đồ án tốt nghiệp "Thiết kế và thi công hồ cá đa năng sử dụng board Arduino Mega 2560" của sinh viên Nguyễn Thành Tâm và Hồ Minh Thái đã giải quyết thành công bài toán tự động hóa chăm sóc thủy sinh và giám sát chất lượng nước quy mô mô hình. Hệ thống tích hợp hoàn chỉnh phần cứng và phần mềm, cho phép tự động điều khiển thiết bị theo thời gian thực, cân bằng nhiệt độ môi trường, đo độ pH và gửi cảnh báo qua mạng di động SIM800L. Đề tài là nguồn tài liệu kỹ thuật có giá trị thực tiễn cao cho việc nghiên cứu, phát triển các ứng dụng điều khiển nhúng và quan trắc môi trường nông nghiệp tự động.