Tải bản đầy đủ (.docx) (38 trang)

Báo cáo thiết kế ngoại vi: Đề tài Vườn thông minh

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 (9.29 MB, 38 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG

BÁO CÁO
MƠN HỌC: THIẾT KẾ NGOẠI VI VÀ KỸ THUẬT GHÉP NỐI
Nhóm: 04
Giảng viên hướng dẫn:

Cơ T.T.T. Hà

Sinh viên:

Vũ Đình Long

B18DCDT138

Hầu Nhật Hoa

B18DCDT082

Đào Cơng Minh

B18DCDT149

Nguyễn Đắc Hưng

B18DCDT102

Nhóm mơn học:

02


Hà Nội, tháng 5 năm 2022


Mục lục
Phần 1: Đề số 08: Tìm hiểu về chuẩn giao tiếp CAN.............................................2
I.

Khái niệm..........................................................................................................2

II.

Lịch sử phát triển..............................................................................................2

III.

Kiến trúc của CAN...........................................................................................3

IV.

Ứng dụng của CAN..........................................................................................3

1.

Sử dụng trong chế tạo phương tiện giao thông (thời kỳ đầu)............................3

2.

Mạng điều khiển nhúng.....................................................................................4

V.


Cách thức hoạt động, tổ chức của CAN............................................................5

1.

Nguyên tắc.........................................................................................................5

2.

Cách truyền dữ liệu...........................................................................................5

3.

Độ chính xác của chuẩn giao tiếp CAN............................................................6

VI.

Ứng dụng của giao thức CAN trên ô tô...........................................................8

VII.

Ưu điểm và nhược điểm của chuẩn giao tiếp CAN....................................12

Phần 2: Hệ thống vườn thông minh........................................................................13
CHƯƠNG 1: Cơ sở lý thuyết..................................................................................13
1.1) Tổng quan về đề tài..........................................................................................13
1.2) Mục tiêu...........................................................................................................13
1.3) Các công việc cần thực hiện.............................................................................13
2.1) Cơ sở lý thuyết.................................................................................................14
2.1.1: Linh kiện sử dụng...................................................................................14

2.1.2: Lý thuyết liên quan.................................................................................23
CHƯƠNG 2: THIẾT KẾ HỆ THỐNG....................................................................30
2.2) Sơ đồ khối hệ thống.........................................................................................30
2.3) Lưu đồ thuật toán điều khiển...........................................................................31
CHƯƠNG 3: Đánh giá kết quả...............................................................................31
2.4) Kết quả đạt được..............................................................................................31
2.5) Định hướng phát triển mở rộng........................................................................36
CHƯƠNG 4: TÀI LIỆU THAM KHẢO...................................................................36
1|Page


Phần 1: Đề số 08: Tìm hiểu về chuẩn giao tiếp CAN
I.

II.

Khái niệm
Controller Area network (CAN bus) là một chuẩn bus ổn định dùng cho
các phương tiện giao thông, đặc biệt là xe hơi. CAN được thiết kế để các vi điều
khiển và các thiết bị giao tiếp với nhau mà khơng cần thơng qua máy tính. CAN là
một giao thức hoạt động dựa trên các gói tin (message-based protocol), ban đầu
được thiết kế ghép kênh (multiplex) các dây điện trong ô tô để tiết kiệm số lượng
dây dẫn, nhưng sau đó được sử dụng rộng rãi hơn trong các trong các hệ thống tự
động hóa cơng nghiệp hay hàng không.
CAN cho phép các module khác nhau và các máy tính trên xe ơ tơ nói
chuyện với nhau. Nó như một nhóm các đường dẫn với tốc độ rất cao cho phép các
dữ liệu và các lệnh được nén qua lại từ một module khác nhau. Điều này cho phép
các hệ thống như hệ thống điều khiển điện tử của hệ thống động cơ ECU, hệ thống
phanh chống bó cứng ABS, hệ thống kiểm soát độ bám đường, hệ thống kiểm soát
tay lái, hệ thống cân bằng điện tử, hệ thống treo điện tử, hệ thống kiểm soát làm

lạnh tự động, module điều khiển ánh sáng và hàng chục, hàng trăm hệ thống
khác… tất cả được kết nối với nhau bằng điện tử.
Lịch sử phát triển
CAN được phát triển lần đầu tiên bởi Robert Bosch GmbH, Đức vào năm 1986 khi
họ được Mercedes yêu cầu phát triển một hệ thống liên lạc giữa ba ECU (bộ điều khiển
điện tử) trên xe. Họ nhận thấy rằng UART khơng cịn phù hợp trong tình huống này vì nó
được sử dụng trong giao tiếp điểm – điểm. Nhu cầu về một hệ thống liên lạc đa chủ trở
nên cấp thiết. Bởi vậy, mạng CAN đầu tiên đã xuất hiện vào năm 1987 bởi Intel chế tạo.
Tóm tắt lịch sử:
 Năm 1983: Bắt đầu dự án phát triển mạng trên xe hơi trong nội bộ hãng
Bosch.
 Năm 1986: Chính thức giới thiệu giao thức CAN.
 Năm 1987: Những chíp điều khiển CAN đầu tiên xuất hiện ở nhà sản xuất
linh kiện bán dẫn Intel và Philips.
 Năm 1991: Bosch xuất bản thông số kỹ thuật CAN 2.0.
 Năm 1992: Thành lập nhóm các nhà sử dụng và sản xuất CAN quốc tế: Hội
CAN tự động hóa (CiA). Hội CiA xuất bản giao thức Lớp ứng dụng CAN
(CAN Application Layer, CAL). Những chiếc xe Mercedes-Benz đầu tiên
được trang bị CAN xuất hiện.
 Năm 1993: Xuất bản tiêu chuẩn ISO 11898.
 Năm 1994: CiA tổ chức Hội nghị CAN quốc tế lần thứ nhất (iCC). AllenBradley giới thiệu giao thức DeviceNet.
 Năm 1995: Xuất bản Tiêu chuẩn ISO 11898 sửa đổi (định dạng khung mở
rộng). CiA xuất bản giao thức CANopen.
Trong đó:

2|Page


CiA (CAN in Automation): Là nhóm các nhà sản xuất và sử dụng trên thế giới phát
triển và hỗ trợ CANopen và các giao thức CAN cơ bản lớp cao hơn khác. Đây là tổ chức

phi lợi nhuận được thành lập từ năm 1992 để cung cấp thông tin về cơng nghệ CAN cơ
bản, sản xuất và tiếp thị. Có khoảng 500 công ty là thành viên của tổ chức phi lợi nhuận
này và có trụ sở chính đặt tại Nuremberg, Đức.
DeviceNet và CANopen: là hai chuẩn quy định hoạt động của CAN ở lớp cao hơn
(Application Layer) dựa trên chuẩn CAN (Chuẩn CAN quy định việc thực thi giao thức ở
lớp Liên kết dữ liệu (Data Link Layer) và lớp vật lý (Physical Layer))

III.

Kiến trúc của CAN
CAN là một bus truyền thơng nối tiếp (serial bus) có thể chứa nhiều master (multimaster) để kết nối các ECU (Electronic Control Unit) như là những node (nút mạng) trên
đường truyền. Cần ít nhất hai node trên đường truyền CAN để có thể giao tiếp. Trên bus,
một node có thể giao tiếp với các dạng thiết bị như PLD hay máy tính nhúng (embedded
computer).

(ví dụ mơ hình sử dụng CAN trên phương tiện giao thông)

Các node được kết nối với nhau trên một bus vật lý gồm 2 dây xoắn với trở kháng
đặc tính (characteristic impedance) 120 Ω. Hệ thống bus này xác định mức logic dựa trên
sai biệt điện áp (differential signals).

IV.

Ứng dụng của CAN
1. Sử dụng trong chế tạo phương tiện giao thông (thời kỳ đầu)
- Khi các hãng xe yêu cầu phát triển một hệ thống liên lạc giữa ba ECU (bộ
điều khiển điện tử) trên xe. Họ nhận thấy rằng UART khơng cịn phù hợp
trong tình huống này vì nó được sử dụng trong giao tiếp điểm – điểm.
Nhu cầu về một hệ thống liên lạc đa chủ trở nên cấp thiết


3|Page


- Về mặt lý thuyết, CAN có thể liên kết tới 2032 thiết bị (giả sử một nút với
một mã ID) trên một mạng duy nhất. Nó cung cấp tốc độ truyền thông tốc
độ cao lên đến 1 Mbits / giây do đó cho phép điều khiển thời gian thực.
Ngồi ra, tính năng hạn chế lỗi và phát hiện lỗi làm cho nó đáng tin cậy
hơn trong mơi trường nhiễu nghiêm trọng.
2. Mạng điều khiển nhúng
- Tự động hóa cơng nghiệp, ứng dụng y tế, xây dựng tự động hóa, máy
dệt, máy móc sản xuất.
- Tự động hóa trong nhà máy: việc điều khiển tự động hóa các thiết bị có
thể sử dụng giao thức DeviceNet, một giao thức xay dựng trên chuẩn
CAN

- Hệ thống thang máy: Các bo điều khiển thông tin với nhau qua bus CAN
ở các tầng và bo mạch chính.

4|Page


- Trong bệnh viện, mạng CAN có thể sử dụng để điều khiển các thiết bị
trong phòng như đèn, bảng điện tử, máy nội soi, máy X-quang, camera,
máy in… (giao thức có thể sử dụng là CANOpen)

V.

Cách thức hoạt động, tổ chức của CAN
CAN sử dụng CSMA / CD + AMP (Carrier Sense Multiple Access /
Collision Detection with Arbitration on Message Priority). Trước khi gửi thông

điệp, nút CAN sẽ kiểm tra xem bus có bận khơng. Nó cũng sử dụng để phát hiện
khả năng trùng lặp. Những phương thức này cũng tương tự như Ethernet Tuy nhiên,
khi một mạng Ethernet phát hiện xung đột, cả hai nút gửi sẽ ngừng truyền. Sau đó,
nó đợi một khoảng thời gian trễ ngẫu nhiên trước khi thử gửi lại. Điều này làm cho
mạng Ethernet rất nhạy cảm với tải bus cao. Có thể giải quyết vấn đề này với
nguyên tắc xác định quyền ưu tiên rất thông minh trong mạng CAN.
1. Nguyên tắc
Thông điệp dữ liệu được truyền từ bất kỳ nút nào trên bus CAN không chứa địa chỉ
của nút truyền hoặc của bất kỳ nút nhận dự kiến nào.
Thay vào đó, nội dung của thông điệp được gắn nhãn bởi một số nhận dạng (ID) là
duy nhất trên toàn mạng. Tất cả các nút khác trên mạng đều nhận được thông điệp
và mỗi nút thực hiện kiểm tra sự chấp nhận trên mã ID để xác định xem thơng điệp
có liên quan đến nút đó hay khơng. Nếu thơng điệp có liên quan, nó sẽ được xử lý;
nếu khơng thì nó bị bỏ qua.

5|Page


2. Cách truyền dữ liệu
Chọn chế độ trong 4 chế độ Data Frame, Remote Frame, Error Frame và Overflow Frame.
Các chế độ đều có cách truyền dữ liệu giống nhau, ta xét chế độ Data Frame (bit RTR =
0)
Khi thiết lập CAN, đầu tiên ta chọn cách truyền:
 chế độ CAN 2.0A – RTR= 0, IDE = 0
 chế độ CAN 2.0B – RTR= 0, SRR = 1, IDE = 1, cấu hình thêm ID mở rộng
(18 bit)
Sau khi thiết lập, cấu hình ID cho từng Node, cấu hình các bit DLC để chọn số dữ liệu sẽ
truyền trong 1 nhịp.
Ta chọn chế độ Data Frame, CAN 2.0A và truyền 8 byte dữ liệu (~DLC = 0100).


Khung truyền dữ liệu của Chuẩn giao tiếp CAN
Khi truyền dữ liệu, bit SOF sẽ bắt đầu, sau đó dựa trên các thơng số thiết lập sẽ nhảy vào
chế độ cụ thể. Ở đây ta nhảy vào chế độ truyền Data Frame với CAN 2.0A, ở các Node
trên mạng lưới sẽ so sánh địa chỉ ID của chúng. Nếu ID giống sẽ bắt đầu nhận dừ liệu từ
Node phát. Khi nhận xong dữ liệu (8 byte) sẽ tiến hành check hàng (so sánh trường CRC
ở Node thu và Node phát). Nếu đúng thì cho bit ACK về 0, rồi kết thúc nhịp truyền bằng
bit kết thúc EOF. Q trình truyền hồn tất.

6|Page


3. Độ chính xác của chuẩn giao tiếp CAN
2 đường dây CAN_H và CAN_L đều để truyền dữ liệu. Ở đầu ra của bộ thu phát
CAN, hình ảnh bên dưới, sẽ điều chế tín hiệu TX thành 2 dạng, đưa vào CAN_H và
CAN_L

Các thành phần của 1 Node
Trên CAN_H và CAN_L tín hiệu sẽ có dạng đối xứng với nhau. Đối xứng để làm
gì, đối xứng để trên đương dây sai số tạo ra trên CAN_H và CAN_L là như nhau.
Khi đưa ngược lại bộ thu phát CAN để biến đổi, đưa tín hiệu tổng hợp ra dây RX.
Tín hiệu tổng hợp trên dây RX chính là hiệu của CAN_H và CAN_L. Do sai số tạo
ra trên CAN_H và CAN_L là như nhau, nên khi trừ tín hiệu, sai số này sẽ bị triệt
tiêu.

7|Page


Bus CAN
Đó chính là lý do khiến chuẩn giao tiếp CAN có thể truyền cực xa từ 40m -> 6km
mà vẫn đảm bảo độ chính xác. Các bit ở trường CRC (15bit so sánh) và ACK (bit

xác nhận) giúp tăng độ chính xác của dữ liệu.
4. Mức độ ưu tiên của các địa chỉ của Node trong hệ thống

ID là duy nhất và cũng để xác định mức độ ưu tiên của thông điệp. Giá trị số của
mã ID càng thấp thì mức độ ưu tiên càng cao. Điều này cho phép phân xử nếu hai
(hoặc nhiều) nút cạnh tranh để truy cập vào bus cùng một lúc.
Thơng điệp có mức độ ưu tiên cao hơn được đảm bảo có được quyền truy cập
bus như thể nó là thơng điệp duy nhất được truyền đi. Các thơng điệp có mức ưu
tiên thấp hơn sẽ tự động được truyền lại trong chu kỳ bus tiếp theo hoặc trong một
chu kỳ bus tiếp theo nếu vẫn cịn các thơng điệp khác mà có mức ưu tiên cao hơn
đang chờ được gửi.
Mỗi thơng điệp trong CAN có một mã ID là 11bit (A) hoặc 29 bit (B). ID này là
phần nguyên tắc của Arbitration Field trong CAN, trường này nằm ở đầu mỗi thông
điệp CAN. ID xác định loại thông điệp, nhưng cũng là mức độ ưu tiên của thông
điệp.
Các bit trong thông điệp mạng CAN có thể được gửi ở dạng cao hoặc thấp. Các
bit thấp ln chiếm ưu thế, có nghĩa là nếu một nút cố gắng gửi mức thấp và nút
khác cố gửi mức cao, kết quả trên các bus sẽ là mức thấp. Một nút truyền luôn lắng
nghe trên bus trong khi truyền. Một nút gửi mức cao trong Arbitration Field và phát
hiện mức thấp biết rằng nó đã mất quyền ưu tiên. Nó ngừng truyền, để cho nút
khác, với một thơng điệp có mức độ ưu tiên cao hơn, tiếp tục mà không bị gián
đoạn.
8|Page


Hai nút trên mạng không được phép gửi thông điệp có cùng ID. Nếu hai nút cố
gắng gửi một thơng điệp với cùng một ID tại cùng một thời điểm, trường xác định
quyền ưu tiên sẽ không hoạt động. Thay vào đó, một trong các nút truyền sẽ phát
hiện ra rằng thơng điệp của nó bị bóp méo bên ngồi Arbitration Field. Sau đó, các
nút sẽ sử dụng trường xử lý lỗi của CAN, trong trường hợp này, cuối cùng sẽ dẫn

đến việc một trong các nút truyền bị tắt (chế độ tắt bus).
VI.

Ứng dụng của giao thức CAN trên ô tô
CAN là hệ thống mạng giao tiếp trên ô tô phổ biến nhất hiện nay. Hệ thống
mạng giao tiếp trên ô tô được phát triển từ những năm 1980 tuy nhiên phải đến
những năm đầu thế kỷ 21 thì CAN mới bắt đầu thực sự thịnh hành và xuất hiện
trong các xe mới.
Kể từ đó cho đến nay, ngày càng nhiều xe ô tô đã được trang bị hệ thống
CAN, và ở Mỹ, đến năm 2008 khi hầu như tất cả các xe ô tô chở khách và xe tải
nhẹ bán ra tại Mỹ được trang bị mạng giao tiếp này.

9|Page


CAN là một chuẩn giao tiếp cho phép các module khác nhau và các máy tính
trên xe ơ tơ nói chuyện với nhau. Nó như một nhóm các đường dẫn với tốc độ rất
cao cho phép các dữ liệu và các lệnh được nén qua lại từ một module khác nhau.
Điều này cho phép các hệ thống như hệ thống điều khiển điện tử của hệ thống động
cơ ECU, hệ thống phanh chống bó cứng ABS, hệ thống kiểm sốt độ bám đường,
hệ thống kiểm soát tay lái, hệ thống cân bằng điện tử, hệ thống treo điện tử, hệ
thống kiểm soát làm lạnh tự động, module điều khiển ánh sáng và hàng chục, hàng
trăm hệ thống khác… tất cả được kết nối với nhau bằng điện tử.

10 | P a g e


Sơ đồ tổng quát của đường truyền CAN
* Các ecu và cảm biến trong hệ thống CAN:
– ECU điều khiển trượt.

– Cảm biến độ lệch thân xe.
– Cảm biến góc quay vơ lăng.
– Đến ECU chính thân xe.
– Cảm biến túi khí trung tâm.
– ECM.
– ECU trung tâm.
– ECU chứng nhận.
– ECU điều khiển gương ngoài.
– ECU chân máy điều khiển chủ động.
– Bộ khuyếch đại điều hoà.
– Đồng hồ táp lô.
– ECU báo khoảng cách.
– ECU điều khiển vị trí ghế (ghế trước trái).
– AFS ECU.
– ECU nghiêng và trượt đa năng.
* Cách các thiết bị trong ô tô gửi – nhận dữ liệu trên hệ thống CAN
Trong mạng CAN, các thành phần nối với mạng có quyền ngang nhau trong việc
truyền và nhận thông tin (multi master), và bất kỳ các thành phần đó đều có thể
truyền cũng như nhận thông tin mà chúng cần từ các thành phần khác. Tuy nhiên,
về thứ tự truyền thì tùy thuộc vào độ ưu tiên của thông tin mà chúng muốn truyền
(cái này được quy định trong cấu trúc của tập tin được truyền đi), cái này là để
chống quá tải khi có nhiều thành phần cùng truyền và nhận.
Mỗi module được gắn vào một mạng lưới dữ liệu có khả năng gửi và nhận tín hiệu
và chúng đều có địa chỉ của mình trên mạng lưới cho phép các module nhận được
các thông tin đầu vào và các dữ liệu cần thiết để hoạt động. Khi module truyền
thông tin qua mạng lưới, các thơng tin này sẽ được mã hóa để tất cả các module
khác nhận ra nó đến từ đâu và gửi thơng tin gì.
Dữ liệu được gửi là một loạt các bit kỹ thuật số bao gồm “0” và “1 “. Thông số điện
áp thấp tương ứng với giá trị “0”, giá trị đo điện áp cao tương ứng với “1”. Thông
thường điện áp thực tế tại đây sẽ được hoạt động trong phạm vi 5-7 volt.

Thông thường các module điều khiển hoặc cụm mô đun trên xe được giao nhiệm
vụ quản lý lưu lượng mạng. Khi các module thấy một thơng điệp tới, nó sẽ nhìn
vào bit đầu tiên trong dòng dữ liệu. Nếu bit là một “0”, nó sẽ được ưu tiên hơn các
thơng điệp khác, được gọi là một “trội tin nhắn”. Nếu bit đầu tiên là một “1” được
cho một ưu tiên thấp hơn được gọi là một “lặn tin nhắn”.
11 | P a g e


Như vậy, thông điệp ưu tiên cao nhất luôn được thơng qua đến các địa điểm dự
định của nó và những thơng điệp ưu tiên thấp sẽ có thể tạm thời bị chặn cho đến khi
“giao thông trên đường truyền giảm tốc”.
Có thể thấy mạng giao tiếp CAN đã giúp 1 chiếc xe ơ tơ bình thường trở nên
“thơng minh” và tiện lợi hơn rất nhiều.

VII.

Ưu điểm và nhược điểm của chuẩn giao tiếp CAN.
1, Ưu điểm.
Đơn giản, chi phí thấp: bus CAN chỉ có 2 dây giúp kết nối các module điều
khiển với nhau dễ dàng hơn khi so sánh với cách làm truyền thống. Kèm theo đó là
nhiều lợi ích về việc dễ lắp đặt và dễ sửa chữa, bảo trì khi có sự cố.


Tạo ra một giao thức chung để nhiều nhà cung cấp khác nhau có thể phát
triển các module điều khiển tương thích với nhau


Tính ưu tiên của thông điệp (Prioritization of messages): mỗi thông điệp
được truyền ra từ một nút (node) hay trạm (station) trên bus CAN đều có mức ưu
tiên. Khi nhiều thơng điệp được truyền ra bus cùng lúc thì thơng điệp có mức ưu

tiên cao nhất sẽ được truyền. Cá thơng điệp có mức ưu tiên thấp hơn sẽ tạm dừng
và được truyền lại khi bus rảnh. Việc xác định mức ưu tiên của thông điệp dựa trên
cấu tạo (cấu trúc) thông điệp và cơ chế phân xử quy định trong chuẩn chuẩn CAN.


Cấu hình linh hoạt: cho phép thiết lập cấu hình thời gian bit, thời gian đồng
bộ, độ dài dữ liệu truyền, dữ liệu nhận, …


Nhận dữ liệu đa điểm với sự đồng bộ thời gian: một thông điệp có thể được
nhận bởi nhiều node khác nhau trong bus cùng lúc. Tất cả các node trên bus đều có
thể thấy thông điệp đang truyền trên bus, tùy vào cấu hình ở mỗi node mà node sẽ
quyết định có chấp nhận thông điệp này hay không.




Nhiều master (multimaster)

Phát hiện và báo hiệu lỗi: Mỗi thơng điệp có kèm theo mã CRC (Cyclic
Redundancy Code) để thực hiện kiểm tra lỗi. Nếu lỗi xuất hiện, node nhận sẽ bỏ
qua thông điệp lỗi và truyền khung báo lỗi (error frame) lên bus CAN. Mỗi node
trong bus có bộ đếm quản lý lỗi truyền nhận riêng để xác định trạng thái lỗi của
chính nó. Nếu lỗi xuất hiện quá nhiều, một node có thể tự động ngắt khỏi bus.
Ngồi ra cịn một số dạng lỗi khác có thể được phát hiện với chuẩn CAN.


12 | P a g e



Tự động truyền lại các thông điệp bị lỗi khi bus rảnh: Một thông điệp được
truyền ra bus nếu bị lỗi thì sẽ khơng mất đi mà node truyền thơng điệp này sẽ giữ
nó lại và tự động phát lại thông điệp này khi bus CAN rảnh cho đến khi thành cơng.
Điều này giúp đảm bảo tính tồn vẹn dữ liệu trong bus


2, Nhược điểm.
Khó tiếp cận hơn, phức tạp hơn các chuẩn giao tiếp khác như I2C, SPI,
UART…

Phần 2: Hệ thống vườn thông minh

CHƯƠNG 1: Cơ sở lý thuyết
1.1) Tổng quan về đề tài
Nền nông nghiệp của nước ta là nền nơng nghiệp vẫn cịn lạc hậu cũng như chưa có
nhiều ứng dụng khoa học kĩ thuật được áp dụng vào thực tế. Rất nhiều quy trình kĩ
thuật trồng trọt, chăm sóc được tiến hành một cách chủ quan và khơng đảm bảo
được đúng u cầu. Có thể nói trong nơng học ngồi những kĩ thuật trồng trọt,
chăm sóc thì tưới nước là một trong các khâu quan trọng nhất trong trồng trọt, để
đảm bảo cây sinh trưởng và phát triển bình thường, tưới đúng và tưới đủ theo yêu
cầu nông học của cây trồng sẽ không sinh sâu bệnh, hạn chế thuốc trừ sâu cho sản
phẩm an toàn, đạt năng suất, hiệu quả cao. Hơn thế nữa, với việc thiết kế một hệ
thống tưới cây tự động sẽ giúp cho con người không phải tưới cây, không phải tốn
chi phí th nhân cơng tưới nước cũng như giám sát thời gian tưới cây. Với hệ
thống này, việc tưới cây sẽ là tự động tùy theo nhiệt độ thời tiết nắng hay mưa, độ
ẩm cao hay thấp…Tất cả các điều kiện đó sẽ được đưa vào hệ thống tính tốn và
đưa ra thời gian chính xác để bơm nước. Người lao động sẽ không cần phải quan
tâm đến việc tưới cây, cây sẽ được sinh trưởng và phát triển tốt hơn nhờ việc tưới
cây phù hợp và chính xác hơn. Xuất phát từ những vấn đề thực tiễn trên em đã
nghiên cứu và tiến hành thiết kế hệ thống “Vườn thơng minh”.

1.2) Mục tiêu
• Giảm được cơng sức, thời gian cho người trồng và cho sản phẩm chất lượng vượt
trội.
13 | P a g e


• Hệ thống cảm biến sẽ thu thập mọi thông tin về môi trường như nhiệt độ, độ ẩm;
độ ẩm đất từ đó có những điều chỉnh phù hợp với điều kiện phát triển của cây.
• Nâng cao khả năng nghiên cứu và tự nghiên cứu của sinh viên.
1.3) Các cơng việc cần thực hiện
• Tìm hiểu và tham khảo các tài liệu, giáo trình, nghiên cứu
• Tìm hiểu các linh kiện được sử dụng trong hệ thống: STM32F103C8T6;
các cảm biến: nhiệt độ, độ ẩm, độ ẩm đất; LCD; keypad…
• Tìm hiểu các giao thức kết nối: GPIO, I2C, chuẩn 1 wire…
• Thiết kế sơ đồ khối và sơ đồ nguyên lý hệ thống
• Thiết kế phần cứng
• Viết chương trình đọc dữ liệu từ các cảm biến hiển thị lên LCD và điều
khiển các thiết bị.
• Chạy thử nghiệm và cân chỉnh hệ thống
• Hồn thiện và viết báo cáo
2.1) Cơ sở lý thuyết
2.1.1: Linh kiện sử dụng

a. Kit STM32F103C8T6 bluepill

KIT STM32F103C8T6 Mini thuộc loại kit phát triển là Kit phát triển
được thiết kế với đơn giản, kít ra đầy đủ chân của vi điều khiển, có cổng giao tiếp
USB và cổng nạp SWD, sử dụng dòng vi điều khiển 32 Bit của dịng ST.
Thích hợp với những người tiếp cận dòng STM 32 Bit.


14 | P a g e


Thơng số kỹ thuật:
• Vi điều khiển: STM32F103C8T6.

• Điện áp cấp 5VDC qua cổng Micro USB sẽ được chuyển đổi thành 3.3VDC
qua IC nguồn và cấp cho Vi điều khiển chính.
• Tích hợp sẵn thạch anh 8Mhz.
• Tích hợp sẵn thạnh anh 32Khz cho các ứng dụng RTC.
• Ra chân đầy đủ tất cả các GPIO và giao tiếp: CAN, I2C, SPI, UART, USB,…
• Tích hợp Led trạng thái nguồn, Led PC13, Nút Reset.
• Kích thước: 53.34 x 15.24mm
• Sử dụng với các mạch nạp:
o

ST-Link Mini

o

J-link

o

USB TO COM

• Kết nối chân khi nạp bằng ST-Link Mini
15 | P a g e



• Nạp theo chuẩn SWD
o

TCK — SWCLK

o

TMS — SWDIO

o

GND — GND

3.3V — 3.3V
b) Cảm biến DHT11
o

Cảm biến độ ẩm và nhiệt độ DHT11 Temperature Humidity Sensor là cảm biến rất
thông dụng hiện nay vì chi phí rẻ và rất dễ lấy dữ liệu thông qua giao tiếp One wire
(giao tiếp digital 1 dây truyền dữ liệu duy nhất). Bộ tiền xử lý tín hiệu tích hợp
trong cảm biến giúp bạn có được dữ liệu chính xác mà khơng phải qua bất kỳ tính
tốn nào. So với cảm biến đời mới hơn là DHT22 thì DHT11 cho khoảng đo và độ
chính xác kém hơn rất nhiều.

Thông tin kỹ thuật:


Nguồn: 3 -> 5 VDC.




Dòng sử dụng: 2.5mA max (khi truyền dữ liệu).



Đo tốt ở độ ẩm 20 to 70%RH với sai số 5%.



Đo tốt ở nhiệt độ 0 to 50°C sai số ±2°C.

16 | P a g e




Tần số lấy mẫu tối đa 1Hz (1 giây 1 lần)



Kích thước 15mm x 12mm x 5.5mm.



4 chân, khoảng cách chân 0.1”.

c) Cảm biến độ ẩm đất

• Cảm biến độ ẩm đất được hoạt động với 2 chế độ ngõ ra (Analog & Digital), trạng
thái đầu ra mức thấp (0V), khi đất nhiều nước sẽ ở mức cao (5V).

• Cảm biến đất: Hai đầu của cảm biến được cắm vào đất để phát hiện độ ẩm. Dùng
dây nối giữa cảm biến và module chuyển đổi. Thông tin về độ ẩm đất sẽ được đọc
và gửi về module chuyển đổi.
• Module chuyển đổi: Module chuyển đổi có cấu tạo chính gồm một IC so sánh
LM393, một biến trở, 4 điện trở dán 100 Ohm và 2 tụ dán. Biến trở có chức năng
định ngưỡng so sánh với độ ẩm đất đọc về từ cảm biến. Ngưỡng so sánh và tín hiệu
cảm biến sẽ là hai đầ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).
• Đặc điểm:
- Điện áp hoạt động: 3.3V-5V
- Kích thước PCB: 3cm x 1.6cm
- Led báo hiệu: + Led đỏ báo nguồn
+ Led xanh báo mức độ ẩm ở Do
• Mơ tả các pin trên module:
Pin
Mơ tả
VCC
3.3V-5V
GND
GND
Do
Đầu ra tín hiệu số(0 và 1)
Ao
Đầu ra tín hiệu tương tự
d) LCD 16x2
17 | P a g e


LCD (Liquid Crystal Display) được sử dụng trong rất nhiều các ứng dụng của
Vi Điều Khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị khác. Nó

có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ
dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn
rất ít tài nguyên hệ thống và giá thành rẻ…
Thông số kỹ thuật
- Điện áp hoạt động: 5V
- Hiển thị tối đa 20 tự trên 4 dòng
- Chữ đen nền xanh lá

e) Module I2C

LCD có quá nhiều chân gây khó khăn trong q trình kết nối và chiếm dụng nhiều
chân của vi điều khiển. Module chuyển đổi I2C cho LCD sẽ giải quyết vấn đề này,
thay vì sử dụng tối thiểu 6 chân của vi điều khiển để kết nối với LCD (RS, EN, D7,
D6, D5 và D4) thì với module chuyển đổi bạn chỉ cần sử dụng 2 chân (SCL, SDA)
để kết nối. Module chuyển đổi I2C hỗ trợ các loại LCD sử dụng driver
HD44780(LCD 1602, LCD 2004...), kết nối với vi điều khiển thông qua giao tiếp
I2C, tương thích với hầu hết các vi điều khiển hiện nay.
18 | P a g e


Ưu điểm:
- Tiết kiệm chân cho vi điều khiển
- Dễ dàng kết nối với LCD
Thông số kĩ thuật:
- Điện áp hoạt động: 2.5-6V DC
- Hỗ trợ màn hình: LCD1602,1604,2004 (driver HD44780)
- Giao tiếp: I2C
- Địa chỉ mặc định: 0X27 (có thể điều chỉnh bằng ngắn mạch chân A0/A1/A2)
- Kích thước: 41.5mm(L)x19mm(W)x15.3mm(H)
- Trọng lượng: 5g

- Tích hợp Jump chốt để cung cấp đèn cho LCD hoặc ngắt
- Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD
f) Keypad 4x4

Bàn phím ma trận Mềm 4x4 Keypad được thiết kế với giao diện đơn giản giúp dễ
dàng giao tiếp với bất kì vi điều khiển nào. Mặt sau dính thuận tiên để gắn bàn
phím trong nhiều dự án.
19 | P a g e


Thơng số kỹ thuật:
 16 phím
 Độ dài cáp: 88mm
 Nhiệt độ hoạt động: -40°C ~ +70°C
 Đầu nối ra 8 chân
 Kích thước bàn phím: 77*69mm

Sơ đồ chân Keypad 4x4
g) ESP8266
ESP8266 là một mạch vi điều khiển có thể giúp chúng ta điều khiển
các thiết bị điện tử. Thêm vào đó nó được tích hợp wi-fi 2.4GHz có
thể dùng cho lập trình.

20 | P a g e


Thông số kỹ thuật

WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n
-Điện áp hoạt động: 3.3V

-Điện áp vào: 5V thông qua cổng USB
-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)
-Bộ nhớ Flash: 4MB
-Giao tiếp: Cable Micro USB ( tương đương cáp sạc điện thoại )
-Hỗ trợ bảo mật: WPA/WPA2
21 | P a g e


-Tích hợp giao thức TCP/IP
-Lập trình trên các ngơn ngữ: C/C++, Micropython…

h) blynk
- Tính năng:
Hỗ trợ kết nối các thiết bị thông qua dây Mạng, Wifi, GSM, 2G, 3G, LTE...
Hỗ trợ chạy trên nhiều nên tảng: C++, JS, Python, HTTP...
Blynk Cloud là mã nguồn mở, cho phép tự do phát triển. Có thể chạy trên nền máy
chủ, máy chủ cục bộ, máy chủ doanh nghiệp, hoặc ngay trên máy tính cá nhân.
Blynk Server có thể cài đặt và sử dụng ngay trong vòng vài phút.

- Nguyên lý cơ bản

22 | P a g e


Blynk Library sẽ được upload vào các mạch điều khiển Esp8266 trên mạch kết nối
với nhiều cảm biến, thiết bị... Và được kết nối với Blynk Server thông qua Wifi
2.1.2: Lý thuyết liên quan
a) GPIO

GPIO là viết tắt của General Purpose Input Output. GPIO chính là “cổng” để vi
điều khiển có thể kết nối được với những ngoại vi bên ngồi.
Chức năng cơ bản của GPIO là xuất tín hiệu ra (output) và nhận tín hiệu vào
(input), VD: output có làm sáng tắt bóng LED, input có thể nối với nút nhấn.
b) I2C (inter-integrated circuit)
I2C là chuẩn truyền thông nối tiếp 2 dây gồm 1 dây xung clock (SCL) và 1
dây dữ liệu (SDA). Các chip chủ-tớ được nối chung với nhau trên hai đường dây
này và được nối với điện trở treo.

23 | P a g e


Giao diện kết nối I2C

Đặc điểm
 Chỉ cần có hai đường bus (dây) chung để điều khiển bất kỳ thiết bị / IC nào
trên mạng I2C
 Không cần thỏa thuận trước về tốc độ truyền dữ liệu như trong giao tiếp
UART. Vì vậy, tốc độ truyền dữ liệu có thể được điều chỉnh bất cứ khi nào
cần thiết
 Cơ chế đơn giản để xác thực dữ liệu được truyền
 Sử dụng hệ thống địa chỉ 7 bit để xác định một thiết bị / IC cụ thể trên bus
I2C
 Các mạng I2C dễ dàng mở rộng. Các thiết bị mới có thể được kết nối đơn
giản với hai đường bus chung I2C
Phần cứng
Bus vật lý I2C
Bus I2C (dây giao tiếp) chỉ gồm hai dây và được đặt tên là Serial Clock Line (SCL)
và Serial Data Line (SDA). Dữ liệu được truyền đi được gửi qua dây SDA và được
24 | P a g e



×