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

Nghiên cứu và mô phỏng hệ thống tưới cây tự động có hiển thị màn hình lcd

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 (2.88 MB, 76 trang )

ĐẠI HỌC CƠNG NGHIỆP TP.HCM
KHOA CƠNG NGHỆ ĐIỆN

KHĨA LUẬN TỐT NGHIỆP

NGHIÊN CỨU VÀ MƠ PHỎNG
HỆ THỐNG TƯỚI CÂY TỰ ĐỘNG
CĨ HIỂN THỊ MÀN HÌNH LCD

Nhóm sinh viên : Đặng Trung Trực

15034191

Nguyễn Văn Trường 15031591
Lớp

: DHDI11B

GVHD

: Phan Lâm Vũ

THÀNH PHỐ HỒ CHÍ MINH, NĂM 2019


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
KHOA CÔNG NGHỆ ĐIỆN



PHIẾU GIAO NHIỆM VỤ KHĨA LUẬN TỐT NGHIỆP
1.

2.

Họ và tên sinh viên/nhóm sinh viên được giao đề tài
Đặng Trung Trực

MSSV: 15034191

Nguyễn Văn Trường

MSSV: 15031591

Tên đề tài
NGHIÊN CỨU VÀ MÔ PHỎNG HỆ THỐNG TƯỚI CÂY TỰ ĐỘNG CĨ
HIỂN THỊ MÀN HÌNH LCD.

3.

Nội dung
- Tìm hiểu mạch vi điều khiển để sử dụng cho tưới cây tự động.
- Tìm hiểu về Arduino và các thiết bị liên quan.
- Lập trình cho mạch vi điều khiển.
- Thiết kế mạch vi điều khiển hệ thống tưới cây tự động có hiển thị dữ liệu ra
LCD.

4.


Kết quả
Thiết kế được mạch vi điều khiển hệ thống tưới cây tự động sử dụng Arduino
có hiển thị màn hình LCD.

Tp. HCM, ngày tháng năm 20….

Giảng viên hướng dẫn

Sinh viên

Trưởng bộ môn

i


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ii


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

MỤC LỤC

PHIẾU GIAO NHIỆM VỤ KHÓA LUẬN TỐT NGHIỆP .............................................i
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ........................................................ ii
MỤC LỤC .................................................................................................................... iii
DANH SÁCH CÁC HÌNH VẼ .......................................................................................v
CHƯƠNG 1: THỰC TRẠNG .......................................................................................1
CHƯƠNG 2: TÍNH CẤP THIẾT CỦA ĐỀ TÀI ...........................................................3
CHƯƠNG 3: NỘI DUNG ............................................................................................. 5
3.1 Sơ đồ nguyên lý mạch vi điều khiển ................................................................ 5
3.2 Nguyên lí hoạt động .........................................................................................7
3.2.1 Nguyên lí hoạt động ................................................................................7
3.2.2 Cài đặt thời gian và điều chỉnh độ ẩm .....................................................7
3.3 Các thiết bị được sử dụng.................................................................................8
3.3.1 Board Arduino .........................................................................................8
3.3.2 Board Arduino Uno R3 .........................................................................11
3.3.3 Module thời gian thực DS 1307 ............................................................ 17
3.3.4 Module cảm biến độ ẩm đất ..................................................................27
3.3.5 Lập trình cho cảm biến độ ẩm đất .........................................................30
3.3.6 Module Relay 5VDC .............................................................................31
3.3.7 Màn hình LCD .......................................................................................33
3.3.8 Bàn phím ma trận 4x4 ...........................................................................36
3.4 Giới thiệu các phần mềm được sử dụng .........................................................39
3.4.1 Giới thiệu phầm mềm Fritzing .............................................................. 39
3.4.2 Giới thiệu phần mềm Arduino IDE .......................................................41
3.5 Lập trình cho mạch vi điều khiển ...................................................................45
3.5.1 Sơ đồ thuật toán .....................................................................................45

iii


Đặng Trung Trực – Nguyễn Văn Trường


Khóa luận tốt nghiệp

3.5.2 Code .......................................................................................................46
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................................64
4.1 Kết luận ..........................................................................................................64
4.1.1 Ưu điểm .................................................................................................64
4.1.2 Nhược điểm ........................................................................................... 64
4.2 Hướng phát triển ............................................................................................ 65
4.2.1 Truyền giá trị cảm biến độ ẩm qua bộ wifi NRF24L01. .......................65
4.2.2 Đưa đề tài phát triển rộng rãi vào thực tế ..............................................65
4.3 Chi phí thực hiện đề tài ..................................................................................66

iv


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

DANH SÁCH CÁC HÌNH VẼ
Hình 1.1: Tưới cây thủ cơng ...................................................................................1
Hình 1.2: Xe tưới cây trên đường ...........................................................................2
Hình 3.1: Sơ đồ mơ phỏng linh kiện .......................................................................5
Hình 3.2: Sơ đồ khối mạch vi điều khiển ............................................................... 6
Hình 3.3: Aduino Mega ..........................................................................................8
Hình 3.4: Arduino Nano .........................................................................................9
Hình 3.5: Arduino Micro ......................................................................................10
Hình 3.6: Sheild Arduino ......................................................................................11
Hình 3.7: Arduino UNO R3 ..................................................................................12

Hình 3.8: Vi điều khiển của UNO R3...................................................................13
Hình 3.9: Các chân năng lượng Arduino .............................................................. 14
Hình 3.10: Các cổng vào ra Arduino Uno R3 ......................................................15
Hình 3.11: Giao diện Arduino IDE .......................................................................17
Hình 3.12: Cấu tạo DS 1307 .................................................................................18
Hình 3.13: Chân A4 và A5 trên Arduino .............................................................. 19
Hình 3.14: Các chân DS 1307 ..............................................................................20
Hình 3.16: Kết nối Arduino với DS 1307 ............................................................. 20
Hình 3.17: Bảng thanh ghi của DS 1307 .............................................................. 21
Hình 3.18: Tổ chức thanh ghi DS 1307 ................................................................ 22
Hình 3.19: Module cảm biến độ ẩm đất ............................................................... 28
Hình 3.20: Chuyển độ ẩm về % ............................................................................29
Hình 3.21: Module relay 1 kênh ...........................................................................31
Hình 3.22: LCD 2004 ........................................................................................... 33
Hình 3.23: LCD 2004 - module I2C .....................................................................34
Hình 3.24: Sơ đồ ngun lí Keypad .....................................................................36
Hình 3.25: Giao diện phần mềm Fritzing ............................................................. 39
Hình 3.26: Màn hình khởi động của Arduino IDE ...............................................41
Hình 3.27: Cửa sổ làm việc Arduino IDE ............................................................ 41

v


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Hình 3.28: Thơng báo lỗi trong IDE .....................................................................42
Hình 3.29: Chọn cổng kết nối IDE .......................................................................43
Hình 3.30: Menu File trong IDE ...........................................................................44

Hình 3.31: Menu Tool trong IDE .........................................................................44
Hình 3.32: Sơ đồ thuật toán ..................................................................................45

vi


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

DANH SÁCH CÁC BẢNG
Bảng 3.1: Chi tiết thông số ...................................................................................12
Bảng 3.2: Kết nối DS1307 với Arduino ............................................................... 20
Bảng 3.3: Kết nối cảm biến độ ẩm đất với Arduino. ............................................30
Bảng 3.4: Kết nối LCD với Arduino ....................................................................34
Bảng 3.5: Kết nối Arduino với Keypad ................................................................ 37

vii


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

CHƯƠNG 1: THỰC TRẠNG
Hiện nay nền nông nghiệp nước ta là nền nông nghiệp đang phát triển nhưng vẫn
chưa áp dụng ứng dụng khoa học kĩ thuật nhiều vào thực tế. Rất nhiều quy trình chăm
sóc, kỹ thuật trồng trọt được tiến hành một cách thủ công và không đảm bảo được
đúng u cầu.


Hình 1.1: Tưới cây thủ cơng

Như ơng bà ta đã nói “nhất nước, nhì phân, tam cần, tứ giống”. Câu nói được
người xưa đúc kết lại để xét đến thứ bậc của 4 yếu tố quan trọng trong sản xuất nông
nghiệp và nước là yếu tố quan trọng nhất không thể thiếu đối với cây trồng. Ở nhiều
vùng nông thôn bà con nông dân sinh sống chủ yếu bằng nghề nông vẫn dùng những
phương pháp tưới cây truyền thống chủ yếu bằng sức người hoặc dùng motor điện với
hệ thống ống dẫn nước… nhìn chung những phương pháp này khơng phát huy được
hiệu quả vì cịn mang tính thủ cơng, tốn nhiều cơng sức, chi phí cao, chưa đáp ứng nhu
cầu tiến trình cơng nghiệp hóa hiện đại hóa nơng nghiệp nơng thơn.

1


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Trong cuộc sống hiện tại vấn đề thực phẩm sạch đang được người tiêu dùng quan
tâm hàng đầu trong mỗi bữa ăn. Vì thế nhiều hộ gia đình đã áp dụng phương pháp
trồng rau sạch tại chính nhà của mình. Chẳng hạn như rau cải xanh, xà lách, hành hoa,
ớt, rau thơm thì cần tưới 1 đến 2 lần trong một ngày ….
Ngoài ra trên nhiều tuyến đường trong thành phố, chúng ta vẫn bắt gặp hình ảnh
các xe chở nước tưới cây trên đường gây ùn tắc, mất an toàn giao thơng và mỹ quan đơ
thị.

Hình 1.2: Xe tưới cây trên đường

Mặt khác nước ta đang trong giai đoạn công nghiệp hóa hiện đại hóa đất nước.
Áp dụng các thiết bị máy móc đưa vào sản xuất để phục vụ giảm thiểu sức lao động

của con người nhằm tăng chất lượng và sản lượng của cây trồng.

2


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

CHƯƠNG 2: TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Trên thực tế dù là sản xuất nông nghiệp truyền thống hay sản xuất nơng nghiệp
theo xu hướng hiện đại, có sự hỗ trợ của cơng nghệ cao thì lượng nước vẫn là yếu tố
quan trọng nhất quyết định trực tiếp đến quá trình sinh trưởng và phát triển của cây
trồng và sau đó quyết định đến năng suất và sản lượng cây trồng.
Đối với nông nghiệp truyền thống với quy mô nhỏ lẻ để cung cấp nước tưới cho
cây, người ta dùng nhiều cách để cây nhận đủ nước. Các biện pháp tưới thủ công bằng
cách gánh và múc nước từ ao hồ, tát nước vào ruộng bằng gầu xòng, bơm nước trực
tiếp… Cịn đối với những hộ gia đình mà muốn trồng rau sạch với quy mơ nhỏ để gia
đình sử dụng khi mà tưới nước bằng biện pháp thủ cơng thì bất cập là khi mà gia đình
đi đâu xa vài ngày khơng có ai ở nhà, những lúc khơng có thời gian rảnh để chăm sóc,
tưới cây, rau. Dù là cách này hay cách kia thì nhược điểm dễ nhận thấy đối với phương
pháp này là hao tốn sức lao động, nước tưới không đều, bởi chỉ dựa theo cảm tính mà
tưới nước cho cây khi quá nhiều, khi lại q ít, gây lãng phí nguồn nước, thời gian tưới
khơng ổn định. Điều này là lí do mà nhóm chúng em đã nghiên cứu thiết kế mạch vi
điều khiển hệ thống tưới cây tự động dựa trên độ ẩm đất. Ứng với từng loại cây lại có
thời gian và số lần tưới khác nhau, mơ hình giúp chúng ta có thể điều chỉnh thông số,
cài đặt được số lần tưới tối đa trong ngày là 2 lần, nếu cảm biến bị hỏng thì thời gian
tưới tối đa cho cây là 10 phút. Còn thời gian hẹn giờ tưới được chỉnh bằng bàn phím
để đảm bảo sự chính xác và tiện lợi cho người sử dụng.
Mạch vi điều khiển giao tiếp đơn giản qua nút bấm để cài đặt thời gian hẹn giờ

để tưới cây và làm việc thông minh qua cảm biến độ ẩm đất. Đối với thời tiết mưa
nắng thất thường nên cảm biến độ ẩm đất đóng vai trò hết sức quan trọng trong việc
quyết định cây trồng được nuôi trồng trong môi trường đủ độ ẩm hay không bởi việc
thừa độ ẩm cũng không tốt đối với sự phát triển của cây trồng.

3


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Bảng 2.1: Độ ẩm của một số loại cây trồng

LOẠI CÂY

ĐỘ ẨM

Xà lách

80%

Ớt

80%

Cải ngọt

70%


Hành lá

65%

Lan hồ điệp

75%

Cần ơ

85%

Ngị gai

70%

Rau răm

55%

Rau muống

70%

Mạch điều khiển đảm bảo về thời gian cài đặt, lượng nước được cung cấp cho
cây và tiện lợi cho việc giao tiếp đã tạo thành một hệ thống thông minh đáp ứng u
cầu tự động hóa trong nơng nghiệp của người nông dân.
Khách hàng sẽ yên tâm khi khu vườn nhỏ trong nhà mình sẽ được cung cấp đầy
đủ lượng nước khi khơng có nhà. Bà con nơng dân sẽ khơng cịn tốn sức lao động để
tưới cây khơng những vậy năng suất cây trồng sẽ được nâng cao khi chúng ln được

chăm sóc ở điều kiện tốt nhất.

4


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

CHƯƠNG 3: NỘI DUNG
3.1 Sơ đồ nguyên lý mạch vi điều khiển

Hình 3.1: Sơ đồ mơ phỏng linh kiện

5


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Hình 3.2: Sơ đồ khối mạch vi điều khiển

6


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp


3.2 Nguyên lí hoạt động
3.2.1 Nguyên lí hoạt động
Cảm biến độ ẩm đất được đặt dưới đất có nhiệm vụ chính là thu thập giá trị độ
ẩm của đất và trả giá trị về board mạch Arduino bằng tín hiệu Analog từ chân A0.
Module thời gian thực DS1307 giúp cho hệ thống vi điều khiển hoạt động như
chiếc đồng hồ báo thức thông qua phương thức giao tiếp I2C.
Biến trở cho phép người dùng cài đặt ngưỡng độ ẩm để cây được tưới nước.
Bàn phím Keypad giúp người dùng cài đặt giờ thực và giờ để tưới nước cho cây.
Board Arduino đóng vai trị trung tâm của hệ thống vi điều khiển. Tiếp nhận tín
hiệu thời gian từ Module thời gian thực DS1307 và độ ẩm đất từ cảm biến. Khi đến
thời gian hẹn tưới cho cây Board Arduino sẽ so sánh điều kiện giữa độ ẩm thật của đất
và độ ẩm được chỉnh từ biến trở . Nếu giá trị ta chỉnh thấp hơn giá trị độ ẩm của đất ở
tại thời gian hẹn Board Arduino sẽ xuất tín hiệu khiến relay đóng lại và khi đó động cơ
hoạt động cây được tưới nước.
3.2.2 Cài đặt thời gian và điều chỉnh độ ẩm
Cài đặt thời gian:
-

Nhấn phím A: cho phép cài giờ thực.

-

Nhấn phím B hoặc C để chỉnh chế độ cài đặt thời gian cho động cơ hoạt
động.

-

Nhấn phím # để trở về màn hình ban đầu.

Điều chỉnh ngưỡng độ ẩm đất để động cơ hoạt động: người dùng sử dụng núm

biến trở để điều chỉnh giá trị độ ẩm mà động cơ hoạt động.

7


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

3.3 Các thiết bị được sử dụng
3.3.1 Board Arduino
Arduino là một bo mạch vi xử lí dùng để lập trình tương tác với các thiết bị phần
cứng như cảm biến động cơ, đèn hoặc các thiết bị khác. Đặc điểm nổi bật của Arduino
là môi trường phát triển ứng dụng cực kì dễ sử dụng, giá thành rẻ.
Khơng giống các board mạch lập trình khác, Arduino khơng u cầu một phần
cứng riêng để lập trình mã mới lên board mà bạn chỉ cần sử dụng cáp USB. Đồng thời
phần mềm lập trình Arduino IDE sử dụng phiên bản cơ bản của C ++, giúp việc lập
trình trở nên đơn giản hơn.
Ta có thể sử dụng các dịng Arduino khác như: Arduino Mega, Arduino Nano,
Arduino Micro… Nhưng với những ứng dụng cơ bản thì mạch Arduino Uno là lựa
chọn phù hợp nhất.

Hình 3.3: Aduino Mega

Arduino MEGA có rất nhiều chân I/O so với dòng Arduino UNO (54 digital I/O
và 16 analog I/O), đồng thời bộ nhớ flash của MEGA rất lớn, gấp 4 lần so với UNO
(128kb) với vi điều khiển ATmega128. Những dự án cần điều khiển nhiều loại động
cơ và xử lý nhiều luồng dữ liệu song song (3 timer), nhiều ngắt hơn (6 cổng

8



Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

interrupt),... có thể được phát triển dễ dàng với Arduino MEGA, chẳng hạn như: máy
in 3d, quadcopter, …

Hình 3.4: Arduino Nano

Kích thước của Arduino Nano cực kì nhỏ 1.85cm x 4.3cm. Khác với Arduino
Uno sử dụng cổng USB Type B, Nano lại sử dụng một cổng nhỏ hơn có tên là mini
USB. Vì sử dụng cổng này nên kích thước board rất nhỏ gọn.

9


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Hình 3.5: Arduino Micro

Arduino Pro Micro dùng vi xử lý ATmega32u4, phiên bản Arduino Micro được
sản xuất với sự hợp tác giữa Arduino và Adafruit. Board gồm có 20 chân Input/Output
(7 chân PWM, 12 chân Analog), sử dụng thạch anh 16MHZ. Board có tất cả các chức
năng của vi xử lý. Arduino Micro gần giống như board Aruino Leonardo cùng sử dụng
chip vi xử lý ATmega32u4 tích hợp chuẩn kết nối USB, khơng cần sử dụng đến chip
USB khác Board có thể sử dụng các chức năng đặc biệt như giả lập bàn phím, chuột

vitual Serial/COM port mà các board thơng dụng như Uno hay Mega khơng có.

10


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Hình 3.6: Sheild Arduino

Ngoài ra, các Shield Arduino là các board mạch được xây dựng sẵn được sử
dụng để kết nối với một số board Arduino. Những shield này nằm trên đỉnh của các bo
mạch tương thích với Arduino để cung cấp các khả năng bổ sung như kết nối với
internet, điều khiển động cơ, cung cấp giao tiếp không dây, điều khiển màn hình
LCD,…
3.3.2 Board Arduino Uno R3
Mạch Arduino Uno là dòng mạch Arduino phổ biến, khi mới bắt đầu làm quen,
lập trình với Arduino thì mạch Arduino thường nói tới chính là dịng Arduino UNO.
Hiện dịng mạch này đã phát triển tới thế hệ thứ 3 (Mạch Arduino Uno R3).
Arduino Uno R3 là dòng cơ bản, linh hoạt, thường được sử dụng cho người mới
bắt đầu. Bạn có thể sử dụng các dòng Arduino khác như: Arduino Mega, Arduino
Nano, Arduino Micro… Nhưng với những ứng dụng cơ bản thì mạch Arduino Uno là
lựa chọn phù hợp nhất.

11


Đặng Trung Trực – Nguyễn Văn Trường


Khóa luận tốt nghiệp

Hình 3.7: Arduino UNO R3
Bảng 3.1: Chi tiết thông số

Vi điều khiển

ATmega328 họ 8bit

Điện áp hoạt động

5V DC (chỉ được cấp qua cổng USB)

Tần số hoạt động

16 MHz

Dòng tiêu thụ

khoảng 30mA

Điện áp vào khuyên dùng

7-12V DC

Điện áp vào giới hạn

6-20V DC

Số chân Digital I/O


14 (6 chân hardware PWM)

Số chân Analog

6 (độ phân giải 10bit)

Dòng tối đa trên mỗi chân I/O

30 mA

Dòng ra tối đa (5V)

500 mA

Dòng ra tối đa (3.3V)

50 mA

Bộ nhớ flash

32 KB (ATmega328) với 0.5KB dùng
bởi bootloader

SRAM

2 KB (ATmega328)

EEPROM


1 KB (ATmega328)

12


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

3.3.2.1 Vi điều khiển
Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là ATmega8,
ATmega168, ATmega328. Bộ não này có thể xử lí những tác vụ đơn giản như điều
khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo
nhiệt độ - độ ẩm và hiển thị lên màn hình LCD,…

Hình 3.8: Vi điều khiển của UNO R3

Thiết kế tiêu chuẩn của Arduino UNO sử dụng vi điều khiển ATmega328. Tuy
nhiên nếu yêu cầu phần cứng của bạn không cao hoặc túi tiền khơng cho phép, bạn có
thể sử dụng các loại vi điều khiển khác có chức năng tương đương nhưng rẻ hơn như
ATmega8 (bộ nhớ flash 8KB) hoặc ATmega168 (bộ nhớ flash 16KB).
3.3.2.2 Năng lượng
Arduino UNO có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồn
ngoài với điện áp khuyên dùng là 7-12V DC và giới hạn là 6-20V. Thường thì cấp
nguồn bằng pin vng 9V là hợp lí nhất nếu bạn khơng có sẵn nguồn từ cổng USB.
Nếu cấp nguồn vượt quá ngưỡng giới hạn trên, board sẽ bị hỏng.

Hình 2.13: Cáp USB

13



Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

3.3.2.3 Các chân năng lượng


GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO.



5V: cấp điện áp 5V đầu ra. Dòng tối đa cho phép là 500mA.



3.3V: cấp điện áp 3.3V đầu ra. Dòng tối đa cho phép là 50mA.



Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, nối cực dương của

nguồn với chân này và cực âm của nguồn với chân GND.


IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo

ở chân này. Không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó
khơng phải là cấp nguồn.



RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với

việc chân RESET được nối với GND qua 1 điện trở 10KΩ.

Hình 3.9: Các chân năng lượng Arduino

14


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

3.3.2.4 Bộ nhớ
Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng:


32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ

nhớ Flash của vi điều khiển.


2KB cho SRAM (Static Random Access Memory): giá trị các biến khi khai báo

khi lập trình sẽ lưu ở đây. Khi mất điện, dữ liệu trên SRAM sẽ bị mất.


1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory):


giống như một chiếc ổ cứng mini nơi có thể đọc và ghi dữ liệu vào và bị mất khi cúp
điện giống như dữ liệu trên SRAM.
3.3.2.5 Các cổng vào/ra

Hình 3.10: Các cổng vào ra Arduino Uno R3

Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chúng chỉ có 2
mức điện áp là 0V và 5V với dịng vào/ra tối đa trên mỗi chân là 40mA. Ở mỗi chân
đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặc
định thì các điện trở này không được kết nối).

15


Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Một số chân Digital có các chức năng đặc biệt như sau:


2 chân Serial: 0 (RX) và 1 (TX) dùng để gửi (transmit – TX) và nhận (receive –

RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2
chân này. Kết nối bluetooth thường thấy hay nói cách khác là kết nối Serial khơng dây.


Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép xuất ra xung PWM với độ phân


giải 8bit (giá trị từ 0 - 28-1 tương ứng với 0V - 5V) bằng hàm analogWrite(). Có thể
điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức
0V và 5V như những chân khác.


Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK), ngồi các chức

năng thơng thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với
các thiết bị khác.


LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút

Reset, đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi chân này được
người dùng sử dụng, LED sẽ sáng.
Arduino UNO có 6 chân Analog (A0 - A5) cung cấp độ phân giải tín hiệu 10bit
(0 - 210-1) để đọc giá trị điện áp trong khoảng 0V - 5V. Với chân AREF trên board,
bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân Analog. Tức là nếu bạn
cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân Analog để đo điện áp
trong khoảng từ 0V - 2.5V với độ phân giải vẫn là 10bit.
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp
I2C/TWI với các thiết bị khác.
3.3.2.6 Lập trình cho Arduino
Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngơn ngữ riêng. Ngơn
ngữ này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung. Và Wiring lại
là một biến thể của C/C++. Một số người gọi nó là Wiring, một số khác thì gọi là C
hay C/C++. Ngơn ngữ Arduino bắt nguồn từ C/C++ phổ biến hiện nay do đó rất dễ
học, dễ hiểu.

16



Đặng Trung Trực – Nguyễn Văn Trường

Khóa luận tốt nghiệp

Để lập trình cũng như gửi lệnh và nhận tín hiệu từ mạch Arduino, nhóm phát
triển dự án này đã cung cấp đến cho người dùng một mơi trường lập trình Arduino
được gọi là Arduino IDE (Intergrated Development Environment).

Hình 3.11: Giao diện Arduino IDE

Đoạn mã nguồn như trong hình sẽ điều khiển một đèn LED nhấp nháy với chu kì
1 giây.
3.3.3 Module thời gian thực DS 1307
3.3.3.1 Cấu tạo
DS1307 là chip thời gian thực hay RTC (Real time clock). Đây là một IC tích
hợp cho thời gian bởi vì tính chính xác về thời gian tuyệt đối cho thời gian : Thứ,
ngày,tháng, năm, giờ, phút, giây. DS1307 là chế tạo bởi Dallas. Chip này có 7 thanh
ghi 8 bit mỗi thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây. Ngồi ra
DS1307 cịn chứa 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống các thanh

17


×