Tải bản đầy đủ (.pdf) (30 trang)

Đồ án LTHT VDK Hệ thống hỗ trợ nuôi cá cảnh SMART AQUARIUM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.01 MB, 30 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN
LẬP TRÌNH HỆ THỐNG VÀ VI ĐIỀU KHIỂN

ĐỀ TÀI:
HỆ THỐNG HỖ TRỢ NUÔI CÁ CẢNH TỰ ĐỘNG SMART AQUARIUM

GIẢNG VIÊN HƯỚNG DẪN:

TS. Phạm Công Thắng

GIẢNG VIÊN CHẤM:

TS. Huỳnh Hữu Hưng

STT NHÓM: 59

HỌC ĐIỂM QUÁ TRÌNH

LỚP

HỌ VÀ TÊN SINH VIÊN PHẦN ĐỒ ÁN
Võ Minh Đức

17N11A

Lê Đức Minh

17N11B



Nguyễn Sỹ Tuấn Thành

17N11A

Nguyễn Văn Thiên

17N11B

(do GVHD ghi)

ĐÀ NẴNG, 06/2020

ĐIỂM BẢO VỆ
(do GV chấm ghi)


Đồ án Lập trình hệ thống và vi điều khiển
TÓM TẮT ĐỒ ÁN
Trong nhịp sống hối hả của xã hội hiện đại, con người trở nên bận rộn và có nhu
cầu lớn về các hệ thống tự động, điều khiển từ xa. Đối với những người có thú vui về
nuôi cá cảnh, thủy sinh, nhưng lại không có nhiều thời gian để chăm sóc đứa con tinh
thần của họ, thì việc có một hệ thống hỗ trợ chăm sóc hồ cá là rất cần thiết.
Với việc sử dụng ESP8266 có khả năng kết nối Internet, cùng với các dịch vụ cơ
sở dữ liệu hoạt động trên nền tảng đám mây, việc thu thập dữ liệu giám sát, điều khiển
thiết bị qua Internet trở nên đơn giản hơn bao giờ hết.
Người dùng có thể giám sát các yếu tố môi trường, điều khiển các thiết bị từ xa
thông qua Smartphone. Họ có thể xem thông tin về môi trường, trạng thái thiết bị, bật
tắt đèn, máy oxi,…bất cứ khi nào, miễn là nơi đặt thiết bị và nơi người dùng đang có kết
nối Internet.

Đề tài này được hướng dẫn bởi TS. Phạm Công Thắng, giảng viên khoa Công
nghệ thông tin, trường Đại học Bách khoa- Đại học Đà Nẵng. Chúng em rất mong nhận
được sự nhận xét, góp ý của các Thầy, Cô trong bộ môn để đề tài được hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!

2


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
MỤC LỤC
I.

Giới thiệu ...........................................................................................................................5

II. Giải pháp ..............................................................................................................................6
1. Phân tích chức năng..........................................................................................................6
2. Giải pháp thực hiện...........................................................................................................8
a.

Cơ sở lý thuyết ..................................................................................................................8

i.

Giao tiếp I²C ......................................................................................................................8

ii. Giao tiếp 1-Wire : .............................................................................................................9
iii. Tổng quan về Firebase .....................................................................................................9
iv. Giao thức Network Time Protocol (NTP) .....................................................................9
b. Sơ đồ khối chung ..............................................................................................................9
c.


Sơ đồ kết nối linh kiện .................................................................................................. 10

d. Nguyên lý hoạt động và thuật toán .............................................................................. 10
e.

Thông số, kết nối phần cứng, linh kiện:...................................................................... 15

III. Kết quả ............................................................................................................................. 25
1. Chức năng xem thông tin .............................................................................................. 25
2. Chức năng điều khiển.................................................................................................... 26
3. Các chức năng khác ....................................................................................................... 27
IV. Kết luận ............................................................................................................................ 27
1. Đánh giá hệ thống.......................................................................................................... 27
a.

Ưu điểm của hệ thống ................................................................................................... 27

b. Nhược điểm của hệ thống............................................................................................. 28
2. Kết luận ........................................................................................................................... 28
3. Hướng phát triển ............................................................................................................ 29
TÀI LIỆU THAM KHẢO.................................................................................................... 30

3


Đồ án Lập trình hệ thống và vi điều khiển
DANH MỤC HÌNH ẢNH
Hình 1 Giao diện xem thông tin .............................................................................................7
Hình 2 Giao diện xem lịch sử .................................................................................................7

Hình 3 Giao diện điều khiển ...................................................................................................7
Hình 4 Giao diện hẹn giờ ........................................................................................................7
Hình 5 Giao diện thay đổi wifi ...............................................................................................8
Hình 6 Sơ đồ khối chung.........................................................................................................9
Hình 7 Sơ đồ kết nối linh kiện............................................................................................. 10
Hình 8 Sơ đồ khối chức năng gửi dữ liệu........................................................................... 11
Hình 9 Sơ đồ khối chức năng điều khiển ........................................................................... 12
Hình 10 Sơ đồ khối chức năng xử lí mất điện ................................................................... 13
Hình 11 Sơ đồ khối chức năng thay đổi Wifi .................................................................... 14

4


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium

I. Giới thiệu
1. Giới thiệu chung
Với sự phát triển của khoa học công nghệ, hiện nay trên thị trường cũng đã xuất
hiện sản phẩm nuôi cá tự động. Ở Việt Nam những sản phẩm dạng này không phổ
biến và không đáp ứng được đa phần nhu cầu của người dùng. Các sản phẩm đáp
ứng đầy đủ các nhu cầu về nuôi cá có xuất hiện nhưng lại là sản phẩm của người
nuôi cá tự học hỏi chế tạo và những sản phẩm như thế này chỉ có vài chức năng được
điều khiển từ xa, hầu hết cũng chỉ dừng lại ở việc điều khiển thủ công trực tiếp tại
hồ và chưa được gọi hoàn toàn là “smart”. Trên thế giới sản phẩm nuôi cá thông
minh tuy đã phổ biến hơn ở Việt Nam nhưng giá thành còn tương đối cao nên khó
tiếp cận với đa số người dùng ở nước ta.
Vấn đề được đặt ra là tạo ra một sản phẩm hỗ trợ cho việc nuôi cá với các chức
năng mà một hồ cá cần có, đáp ứng đầy đủ các nhu cầu của người dùng và phổ biến
sản phẩm một cách rộng rãi trên thị trường. Không chỉ dừng lại ở nuôi cá cảnh, việc
phát triển sản phẩm còn hướng tới mục tiêu hổ trợ nuôi thủy sản thương mại và bảo

quản thủy sản tươi sống khi vận chuyển từ nơi này sang nơi khác.
Từ những vấn đề trên, nhóm đã đề ra giải pháp tổng quan theo các bước như sau:
-

Tìm hiểu cơ sở lí thuyết

-

Xác định các linh kiện cần thiết, nghiên cứu nguyên lí hoạt động

-

Kiểm tra, đánh giá hoạt động của từng linh kiện

-

Lắp ráp mô hình hệ thống

-

Kết nối phần cứng và phần mềm

-

Thử nghiệm, đánh giá, và hoàn thiện hệ thống.

5


Đồ án Lập trình hệ thống và vi điều khiển

2. Phân công nhiệm vụ
STT
1

Tên sinh viên
Võ Minh Đức

Nhiệm vụ
Theo dõi, quản lý tiến độ, chịu trách nhiệm trong
việc thiết kế và thực hiện đồ án. Viết báo cáo.

2

Nguyễn Sỹ Tuấn Thành

Thiết kế mô hình hệ thống, lắp đặt các module,
phần cứng. Viết báo cáo.

3

Nguyễn Văn Thiên

Thiết kế mô hình hệ thống, hỗ trợ triển khai ứng
dụng di động. Viết báo cáo.

4

Lê Đức Minh

Phân tích, thiết kế mô hình dữ liệu, triển khai

ứng dụng di động. Viết báo cáo.

II. Giải pháp
1. Phân tích chức năng
a. Chức năng xem thông tin
Trên màn hình chính của app SmartAquarium, người dùng có thể xem
được thông tin về tình trạng hồ nuôi của mình. Các thông tin bao gồm : thông
tin về nhiệt độ, cường độ ánh sáng ở hồ nuôi, thông tin về lượng thức ăn còn
lại, trạng thái bật tắt của đèn led,….Người dùng cũng có thể xem được thông
tin về lịch sử tình trạng hồ nuôi của mình trong 30 ngày gần đây. Ngoài ra
chức năng xem thông tin còn cung cấp cho người dùng thông tin dự báo nhiệt
độ hồ nuôi trong 2 ngày tới.

6


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium

Hình 2 Giao diện xem thông tin

Hình 1 Giao diện xem lịch sử

b. Chức năng điều khiển
Khi có kết nối internet, người dùng có thể dùng app SmartAquarium điều
khiển trực tiếp các thiết bị của hồ nuôi như : led, cho ăn, lọc nước, làm nóng,
làm lạnh theo thời gian thực hoặc người dùng có thể hẹn giờ để các thiết bị
hoạt động theo thời gian mong muốn.

Hình 4 Giao diện điều khiển


Hình 3 Giao diện hẹn giờ

7


Đồ án Lập trình hệ thống và vi điều khiển
c. Các chức năng khác
Chức năng xử lí mất nguồn điện

-

Hiện nay khi nuôi cá, nhiều người thường đậy kín hồ cá của mình. Nhưng
trong trường hợp bị mất điện thì hồ sẽ không đủ oxi để cung cấp cho cá, làm
ảnh hưởng đến tình trạng của cá, vậy nên để xử lý tình huống trên và nhằm
đảm bảo cho cho sự phát triển của cá, khi thiết bị bị mất điện thì hồ cá sẽ tự
động chuyển qua sử dụng nguồn dự phòng và mở nắp hồ cá lên.
Chức năng đổi WIFI

-

Khi thiết bị khi mới được lắp đặt hoặc khi người dùng thay đổi wifi,… thì
thiết bị cần phải được kết nối với mạng wifi mới đó. Chức năng giúp người
dùng dễ dàng thực hiện kết nối hay thay đổi kết nối wifi theo ý muốn.

Hình 5 Giao diện thay đổi wifi

2. Giải pháp thực hiện
a. Cơ sở lý thuyết
i.


Giao tiếp I²C
I2C, viết tắt của từ tiếng Anh “Inter-Integrated Circuit”, là một loại bus nối

tiếp được phát triển bởi hãng sản xuất linh kiện điện tử Philips. Một trong
những ưu điểm của nó là chỉ sử dụng 2 dây: SDA (Serial Data Line) và SCL
(Serial Clock Line) [1].

8


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
ii.

Giao tiếp 1-Wire :
1-Wire là một chuẩn giao tiếp được thiết kế bởi Dallas Semiconductor và

đã được Maxim mua lại năm 2001. Nền tảng của công nghệ 1-Wire là một
giao thức nối tiếp sử dụng một dòng dữ liệu duy nhất cộng với tín hiệu nối
đất. Một thiết bị 1-Wire master khởi tạo và điều khiển một hoặc nhiều thiết bị
1-Wire slave trên 1-Wire bus [2].
iii.

Tổng quan về Firebase
Firebase là dịch vụ cơ sở dữ liệu hoạt động trên nền tảng đám mây, kèm

theo đó là hệ thống máy chủ cực kỳ mạnh mẽ của Google. Chức năng chính
là giúp người dùng lập trình ứng dụng bằng cách đơn giản hóa các thao tác
với cơ sở dữ liệu. Cụ thể là những giao diện lập trình ứng dụng API đơn giản.
Dữ liệu lưu trữ trên Firebase là Realtime Database lưu dưới dạng JSON.
Đồng thời nó cũng luôn được đồng bộ thời gian thực đến mọi kết nối client.

Tất cả các dữ liệu đều được truyền qua kết nối an toàn SSL có bảo mật với
chứng nhận 2048 bit [3].
iv.

Giao thức Network Time Protocol (NTP)
NTP là một giao thức cung cấp một cách tin cậy để truyền và nhận thời

gian chính xác dự trên giao thức TCP/ IP. NTP rất hữu ích cho việc đồng bộ
thời gian bên trong các máy tính với nguồn thời gian chung [4].
b. Sơ đồ khối chung

Hình 6 Sơ đồ khối chung

9


Đồ án Lập trình hệ thống và vi điều khiển
c. Sơ đồ kết nối linh kiện
Module I2C LCD

LCD 16x2

Servo

I2C
1-wire

DC 5V

DS18B20


Wemos D1
I2C

I2C

DC 12V

BH1750

PCF8574
AC 220V

HC-SR04
Sục Oxi

Relay

Máy sưởi

Relay

Đèn LED

Relay

Máy cho ăn

Relay


Lọc nước

Relay

Máy làm lạnh

Digital
Output

Relay

Hình 7 Sơ đồ kết nối linh kiện

d. Nguyên lý hoạt động và thuật toán
i.

Thuật toán gửi dữ liệu:

Chức năng này bao gồm 2 chức năng con: Gửi dữ liệu môi trường bể cá định kì
và gửi dữ liệu cập nhật liên tục

10


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium

Bắt đầu

Lấy thời gian thực


Giờ hiện tại
h %4==0

Sai

Đúng
Lấy nhiệt độ

Delay(30s)

Lấy ánh sáng

Gửi dữ liệu lên Firebase
Hình 8 Sơ đồ khối chức năng gửi dữ liệu

Đối với gửi dữ liệu định kỳ: khi thời gian thực là 0h, 4h, 8h, 12h, 16h, 20h, vi điều
khiển sẽ nhận dữ liệu từ cảm biến nhiệt độ và ánh sáng, sau đó sẽ thực hiện việc gửi dữ
liệu.
Đối với dữ liệu cập nhật liên tục: Mỗi 30s, khối xử lí sẽ cập nhật thông tin môi
trường bể cá và gửi lên Firebase.
Thông qua ứng dụng trên di động, người dùng có thể theo dõi thông tin của bể cá
tại thời điểm hiện tại cũng như trong quá khứ.

11


Đồ án Lập trình hệ thống và vi điều khiển
ii.

Chức năng điều khiển thiết bị:


Bắt đầu

Bắt sự kiện thay đổi

Người dùng
thay đổi

Sai
Delay(0.5s)

Đúng

Lấy dữ liệu thay đổi

Thực hiện thay đổi trên
thiết bị
Hình 9 Sơ đồ khối chức năng điều khiển

Vi điều khiển sẽ thực hiện việc bắt sự kiện thay đổi của người dùng từ ứng dụng di
động mỗi 0.5s. Khi nhận thấy thay đổi, khối xử lí và kết nối internet sẽ GET dữ liệu thay
đổi đó, sau đó gửi tín hiệu đến khối thiết bị ngoại vi để thực hiện.
iii.

Chức năng xử lý sự cố mất điện:

Sử dụng chân A0 trên mạch Wemos D1 để đọc giá trị điện áp đầu vào. Vì thông số
kĩ thuật của Wemos D1 chỉ đọc được giá trị điện áp Vmax=3.3V, trong khi đó, nguồn
cung cấp cho mạch là 5V, nên cần có mạch hạ áp trước khi đo. Để đảm bảo an toàn,
chúng em hạ áp 5V xuống 1V theo sơ đồ sau:


12


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium

Bắt đầu

Volt = analogRead(A0)

Sai
Volt < 1

Đóng Servo

Đúng
Mở Servo

Kết thúc

Hình 10 Sơ đồ khối chức năng xử lí mất điện

Nếu điện áp đo được tại chân A0 < 1, thì lúc này hệ thống chưa được cấp nguồn
chính (đang sử dụng nguồn dự phòng), thì vi điều khiển sẽ điều khiển mở nắp đậy bể cá
thông qua Servo. Ngược lại, khi A0 >= 1, tức là hệ thống đang sử dụng nguồn chính,
nắp đậy sẽ được đóng lại, và hệ thống sẽ hoạt động bình thường.
iv.

Chức năng thay đổi kết nối WIFI


Chức năng này chúng em thực hiện kết hợp cùng với chức năng xử lí mất điện
(mất nguồn chính). Khi nhận được tín hiệu mất điện, module Wifi sẽ tạo một điểm kết
nối Access Point (AP).
Người dùng sẽ kết nối đến AP, sau đó truy cập vào địa chỉ mặc định 192.168.4.1
để thay đổi SSID và Password. Các thông số này sẽ được lưu trữ trên EEPROM. Nếu
kết nối thành công, một thông báo trên màn hình LCD sẽ xuất hiện yêu cầu người dùng
khởi động lại thiết bị, ngược lại sẽ thông báo lỗi kết nối, và yêu cầu người dùng sử dụng
kết nối hợp lệ.

13


Đồ án Lập trình hệ thống và vi điều khiển

Bắt đầu

Volt = analogRead(A0)

Đúng
Volt > 1

Kết nối đến WIFI

Sai
Tạo Access Point
change = false;

Sai
change == true
Đúng

Kết nối WIFI

Sai
Connected ==true
Đúng
Kết thúc

Hình 11 Sơ đồ khối chức năng thay đổi Wifi

v.

Chức năng dự đoán nhiệt độ

Để dự đoán nhiệt độ bể cá, chúng em sử dụng thuật toán hồi quy tuyến tính bằng
phương pháp bình phương tối thiểu (Linear Least Squares) [5]. Thuật toán giả định mối
quan hệ tuyến tính hoặc đường thẳng giữa các biến đầu vào (𝑥) và biến đầu ra đơn (𝑦).
Trong đồ án này, chúng em xem biến 𝑥 là nhiệt độ ngoài trời, và 𝑦 là nhiệt độ hồ cá.

14


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
Mô hình hồi quy tuyến tính đơn được mô tả như sau: 𝑦 = 𝑎𝑥 + 𝑏 , trong đó a, b là
các hệ số cần tính toán từ bộ dữ liệu huấn luyện
Để thực hiện việc tính toán đối với phương pháp này, cần phải tính toán các giá trị
trung bình, phương sai, cũng như hiệp phương sai của 𝑥 và 𝑦
-

Các bước thực hiện:
o Tính toán giá trị trung bình và phương sai:

1

1

𝑛

𝑛

𝑥̅ = ∑𝑛𝑖=1 𝑥𝑖 ; 𝑦̅ = ∑𝑛𝑖=1 𝑦𝑖
𝑛

1

𝜎 2 (𝑥) = ∑𝑖=1(𝑥𝑖 − 𝑥̅ )2
𝑛

o Tính toán hiệp phương sai :

𝑣𝑎𝑟(𝑥, 𝑦) =

1
𝑛

𝑛

∑((𝑥𝑖 − 𝑥̅ ) ∗ (𝑦𝑖 − 𝑦̅ ))
𝑖=1

o Tính toán hệ số:


𝑎=

𝑣𝑎𝑟 (𝑥,𝑦)
𝜎 2(𝑥)

𝑏 = 𝑦̅ − 𝑎𝑥̅
o Dự đoán:
Thực hiện phép tính 𝑦 = 𝑎𝑥 + 𝑏 với 𝑥 là giá trị đầu vào (nhiệt độ ngoài
trời), ta sẽ tính được giá trị đầu ra mong muốn, chính là giá trị nhiệt độ bể cá cần
dự đoán.
e. Thông số, kết nối phần cứng, linh kiện:
-

Danh sách linh kiện:
• KHỐI CẢM BIẾN
o Cảm biến nhiệt độ DS18B20
Dùng để đo nhiệt độ của nước.
▪ Thông số kỹ thuật :
Nguồn: 3 – 5.5V

15


Đồ án Lập trình hệ thống và vi điều khiển
Dải đo nhiệt độ: -55 đến 125 o C
Sai số: ± 0.5 độ C
Chuẩn giao tiếp: 1-Wire
▪ Kết nối linh kiện :
Chân màu nâu:GND.
Chân màu vàng : Chân DATA ngõ ra giao tiếp 1 dây digital. Nên

chỉ cần mắc đến 1 chân Digital của vi điều khiển. Cần mắc điện trở
4.7k giữa chân VCC và chân DATA vì giao tiếp 1 dây cần kéo trở
lên.
Chân màu đỏ: VCC (5VDC)
▪ Code kết nối
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 13
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

o Cảm biến cường độ ánh sáng BH1750
Cảm biến BH1750 được dùng để đo cường độ ánh sáng, đơn vị lux.
▪ Thông số kỹ thuật :
Nguồn: 3~5VDC
Giao tiếp: I2C
Khoảng đo : 1 → 65535 lux.
▪ Kết nối linh kiện :
Chân VCC: 5VDC
Chân GND : GND
Chân SCL : kết nối chân SCL của khối xử lý.
Chân SDA : kết nối chân SDA của khối xử lý.
▪ Code kết nối:
#include <BH1750.h>
BH1750 lightMeter;

16


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium

o Cảm biến siêu âm HC-SR04
Cảm biến khoảng cách siêu âm HC-SR04 sử dụng sóng siêu âm để đo
khoảng cách, với độ chính xác phụ thuộc vào cách lập trình.
▪ Thông số kỹ thuật :
Điện áp: 5V DC
Dòng hoạt động: < 2mA
Khoảng cách: 2cm – 450cm
Độ chính xác: 3mm.
▪ Kết nối linh kiện :
Chân VCC : 5VDC
Chân Trig : chân điều khiển phát nối chân digital của khối xử lý.
Chân Echo : chân nhận tín hiệu phản hồi nối chân digital của khối
xử lý.
Chân GND : GND
▪ Code kết nối:
const int trig = 0;
const int echo = 2;
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);

• KHỐI XỬ LÝ VÀ KẾT NỐI INTERNET
o Mạch WeMos D1
Được thiết kế theo tiêu chuẩn của board mạch Arduino UNO,
tương thích với Arduino IDE và NodeMCU. Mạch Wemos D1 được
tích hợp Wifi, 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ị thông qua Wifi.
▪ Thông số kỹ thuật :
Vi điều khiển: ESP8266EX
Điện áp hoạt động: 3.3V
Bộ nhớ Flash: 4MB


17


Đồ án Lập trình hệ thống và vi điều khiển
Điện áp vào: 9-24V
Điện áp ra: 5V – Dòng max: 1A
Giao tiếp: Cable Micro USB
Wifi: 2.4 GHz
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)
Hỗ trợ bảo mật: WPA/WPA2
Tích hợp giao thức TCP/IP
Ngôn ngữ lập trình: C/C++, Micropython, NodeMCU – Lua.
▪ Kết nối linh kiện :
Mạch Wemos D1 có khả năng chuyển đổi điện áp trên board,
cho phép cấp 1 điện áp DC 9-24V để chuyển đổi thành 5V với dòng
tối đa 1A
Kết nối nguồn với khối nguồn.
Chân SDA, SCL là chân D3, D4 tương ứng GPIO 04, GPIO 05
trong mạch MCU.
Chân A0 là chân tín hiệu Analog dùng đọc điện áp
Chân 5VDC, GND đóng vai trò khối nguồn của cảm biến.
Còn các chân còn lại là các chân có thể xuất tín hiệu sử dụng cho
các cảm biến hoặc relay.
o Mạch mở rộng I2C WaveShare PCF8574
Board PCF8574 mở rộng thêm chân cho mạch điều khiển Wemos D1
▪ Thông số kỹ thuật :
Kết nối với Wemos D1 thông qua chuẩn giao tiếp I2C

Đầu vào: I2C
Đầu ra: 8 chân tín hiệu Digital
▪ Kết nối linh kiện

18


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
Chân VCC : 5VDC
Chân GND : GND
Chân SDA : Kết nối SDA của Wemos D1
Chân SCL : Kết nối chân SCL của Wemos D1.
▪ Code kết nối:
#include "PCF8574.h"
PCF8574 pcf8574(0x23);

• KHỐI NGUỒN
o Nguồn tổ ong 12V 5A
Nguồn tổ ong 12V 5A cung cấp điện cho các thiết bị
▪ Thông số kỹ thuật :
Điện áp đầu vào: 100VAC ~ 250VAC
Công suất: 60W
Điện áp đầu ra: 12V
Dòng điện tối đa: 5A
▪ Kết nối linh kiện
Chân N, L : Cấp nguồn điện xoay chiều cho thiết bị.
Chân V+ : Chân đầu ra nguồn điện dương 12 VDC cho thiết bị.
Chân V- : Chân đầu ra nguồn điện âm 12 VDC cho thiết bị.
o Module hạ áp 5V 3A
Mạch giảm áp DC 5V 3A 2 cổng USB Charge Module có thể giảm áp

từ các nguồn DC, Acquy xuống 5VDC cổng đầu ra USB.
▪ Thông số kỹ thuật :
Đầu vào tối đa: 6 - 36VDC.
Đầu ra cố định: 5VDC - 3A (liên tục tối
đa 10W).
Đầu ra có dạng USB, 2 cổng USB.
Hiệu suất chuyển đổi: 95%

19


Đồ án Lập trình hệ thống và vi điều khiển
▪ Kết nối linh kiện
Cần cấp nguồn vào là điện áp từ 6 – 36 VDC
o Relay trung gian MY2N
Relay trung gian MY2N có nhiệm vụ đóng, mở các tiếp điểm của tải hoặc
tín hiệu.
▪ Thông số kỹ thuật :
Tiếp điểm: 5A, 250VAC / 30VDC (tải
thuần trở)
Điện áp cuộn dây: 220V.
Thời gian tác động: 20ms Max.
Kết nối linh kiện
Chân 13, 14 cấp nguồn điện 220 VAC.
Chân 1, 9 và chân 4, 12 là các chân thường đóng.
Chân 5, 9 và chân 8, 12 là các chân thường mở, chỉ đóng khi không
có nguồn kích 220 VAC.
• KHỐI HIỂN THỊ
o Module I2C LCD
▪ Thông số kỹ thuật :

Điện áp hoạt động: 2.5V -6V
Jump chốt: Cung cấp đèn cho LCD hoặc ngắt
Biến trở xoay độ tương phản cho LCD
▪ Kết nối linh kiện
Chân VCC : 5VDC
Chân GND : GND
Chân SCL : Kết nối SCL của khối xử lý.
Chân SDA : Kết nối SDA của khối xử lý.

20


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
▪ Code kết nối:
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

o Màn hình LCD 1602
Màn hình LCD 1602 sử dụng driver HD44780, có khả năng hiển thị 2
dòng với mỗi dòng 16 ký tự.
▪ Thông số kỹ thuật :
Điện áp hoạt động là 5V.
▪ Kết nối linh kiện
Kết nối trực tiếp với module I2C.
• KHỐI THIẾT BỊ NGOẠI VI
o Động cơ 3-6V 130
Để thiết kế thiết bị cho ăn cần sử dụng
động cơ thông qua module L298N.
▪ Thông số kỹ thuật :
Điện áp hoạt động: 3V-6V

▪ Kết nối linh kiện
Chân +/- : Kết nối OUT 1-2/3-4 với module L298N.
o Module L298N
Động cơ 3-6V 130 sử dụng nguồn 3-6VDC trong khi điện áp ngõ ra
khối xử lý chỉ 3.3-5VDC, không đủ để điều khiển. Vì vậy, module
L298N sẽ giúp khối xử lý gián tiếp điều khiển nó
▪ Thông số kỹ thuật :
Driver: L298N tích hợp hai mạch cầu H.
Điện áp điều khiển: +5 V ~ +12 V
Dòng tối đa cho mỗi cầu H là: 2A
Điện áp của tín hiệu điều khiển: +5 V ~ +7 V
▪ Kết nối linh kiện
Chân DC +: Kết nối chân dương của dòng điện 12 V của khối nguồn

21


Đồ án Lập trình hệ thống và vi điều khiển
Chân DC -: Kết nối chân âm của dòng điện 12 V của khối nguồn
và chân GND của khối xử lý.
Chân IN1/IN3 : Kết nối 1 chân PWM của khối xử lý.
Chân IN2/IN4 : Kết nối 1 chân tín hiệu digital.
Chân OUT 1 – 2/3 - 4 : Kết nối với động cơ cho ăn.
▪ Code kết nối:
const int in3 = 16;
const int in4 = 1;
pinMode(in3, OUTPUT);
pcf8574b.pinMode(in4, OUTPUT);

o Relay đóng ngắt

Mạch 1 Relay chọn mức kích High/Low (5/12/24VDC) được sử dụng
để bật, tắt thiết bị AC/DC qua Relay
▪ Thông số kỹ thuật :
Điện áp sử dụng: có ba loại 5/12/24VDC
Dòng tiêu thụ: khoảng 200mA /1 Relay
Tín hiệu kích: Tùy chọn mức cao High (5/12/24VDC theo loại
Relay) hoặc thấp Low (0VDC) qua Jumper.
Tiếp điểm đóng ngắt Relay trên mạch: Max 250VAC-10A hoặc
30VDC-10A
▪ Kết nối linh kiện
Chân DC + : 5VDC.
Chân DC - : GND.
Chân IN : chân tín hiệu, tùy vào loại module relay sẽ làm nhiệm vụ
kích relay. Trong đồ án này sử dụng module relay mức thấp.
Chân COM : chân nối với 1 chân bất kỳ của đồ dùng điện, trong đồ
án này mắc vào chân nóng nếu dùng hiệu điện thế xoay chiều và
cực dương nếu là hiệu điện một chiều.
Chân NO : chân này bạn sẽ nối với chân nóng nếu dùng điện xoay
chiều và cực dương của nguồn nếu dòng điện một chiều.

22


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
o Sò nóng lạnh TEC1-12706
Sò nóng lạnh TEC1-12706 40x40mm được ứng dụng để làm bộ tản
nhiệt CPU, tủ làm mát, bộ làm mát bể cá,… hoặc các ứng dụng cần đến
khả năng làm nóng – lạnh.
▪ Thông số kỹ thuật :
Dòng điện (A): 5 A -10A

Điện áp : 3 V~ 15,4 V (dòng 1 chiều DC)
Công suất làm lạnh: 60W
▪ Kết nối linh kiện
Vì tính chất của sò là một
mặt được làm lạnh và một mặt được
làm nóng tối đa khi cấp điện nên cần
có các giải pháp tản nhiệt tốt trên cả
hai mặt để có thể tận dụng được tối
đa công suất của thiết bị.
Cấp nguồn dương 12VDC vào dây đỏ, nguồn âm nối với
dây đen. Mặt lạnh sẽ là mặt có in chữ.
Các linh kiện để tản nhiệt cho sò lạnh: Quạt, tản nhiệt mặt
nóng, nhôm cố định sò, tản nhiệt nước cho sò
o Bơm nước
Dùng để hút và bơm nước qua tản nhiệt nước.
▪ Thông số kỹ thuật :
Điện áp làm việc: DC 12V
Lưu lượng : 2-3 lít / phút
▪ Kết nối linh kiện
Cấp nguồn 12 VDC
o Động cơ Servo SG90
Động cơ servo SG90 là động cơ có khả năng điều khiển góc quay bằng
phương pháp điều độ rộng xung PWM.

23


Đồ án Lập trình hệ thống và vi điều khiển
▪ Thông số kỹ thuật :
Điện áp hoạt động: 4.8-5VDC

Tốc độ: 0.12 sec/ 60 deg (4.8VDC)
▪ Kết nối linh kiện
Chân màu nâu : GND
Chân màu đỏ : 5VDC
Chân màu cam : Nhận tín hiệu từ khối xử lý
▪ Code kết nối:
#include <Servo.h>
const int SERVO1_PIN = 14;
Servo gServo1;
gServo1.attach(SERVO1_PIN);

❖ Bảng chi phí linh kiện
STT Tên linh kiện/ thiết bị

Số lượng

Đơn giá (VND)

1

Mạch WeMos D1

1 cái

150.000đ

2

Cảm biến nhiệt DS18B20


1 cái

25.000

3

Cảm biến ánh sáng BH1750

1 cái

30.000

4

Cảm biến siêu âm HC-SR04

1 cái

25.000

5

Động cơ 3-6V 130

1 cái

20.000

6


Relay đóng ngắt

6 cái

120.000

7

Relay trung gian MY2N

1 cái

25.000

8

LCD 1602 & Module I2C LCD

1 cặp

40.000

9

Mạch điều khiển động cơ L298

1 cái

35.000


10

Module hạ áp 5V 3A

1 cái

55.000

11

Bơm nước

1 cái

55.000

12

Sò nóng lạnh TEC1-12706

1 cái

55.000

24


Hệ thống hỗ trợ nuôi cá thông minh Smart Aquarium
13


Mạch mở rộng 8574

2 cái

60.000

14

Nguồn

1 cái

75.000

15

Servo

1 cái

25.000

16

Bể cá

1 bể

330.000


17

Máy sục oxi

1 cái

50.000

18

Thiết bị làm nóng

1 cái

100.000

19

Dây led chiếu sáng

1m

35.000

20

Lọc nước

1 cái


Có sẵn

21

Dây dẫn

5m

50.000

22

Phích cắm

12 cái

70.000

23

PVC Foam

3 tấm

75.000

24

Dây USB


2 dây

40.000

25

Nhôm, quạt tản nhiệt sò nóng lạnh

1 cặp

125.000

26

Mạch hàn chân

1 cái

5000

27

Điện trở

6 cái

Không đáng kể

28


Công tắc

1 cái

10.000

Tổng

1.685.000

III. Kết quả
1. Chức năng xem thông tin
-

Tiến hành thực nghiệm trong điều kiện thực tế trong phòng, ở khu vực quận Liên
Chiểu, Đà Nẵng.

-

Dữ liệu cho chức năng dự đoán nhiệt độ được thu thập trực tiếp từ hệ thống, thông
qua cảm biến nhiệt độ. Đồng thời, sử dụng dữ liệu nhiệt độ của API thời tiết cung
cấp bởi AccuWeather.com (50 requests miễn phí/ngày), bao gồm 5 Days of Daily
Forecasts API và Current Conditions API.

25


×