BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐIỆN - ĐIỆN TỬ
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG
GIẢI PHÁP IoT DÙNG THU THẬP DỮ LIỆU,
ĐIỀU KHIỂN THIẾT BỊ TỪ XA THÔNG QUA GSM/GPRS
GVHD: TS.NGUYỄN VĂN THÁI
SVTH: PHẠM PHÁT ĐẠT
MSSV: 15341003
SVTH: TRẦN NGỌC LÂM
MSSV: 15341018
SKL 0 0 4 4 3 2
Tp. Hồ Chí Minh, tháng 12/2016
BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
GIẢI PHÁP IoT DÙNG THU THẬP
DỮ LIỆU, ĐIỀU KHIỂN THIẾT BỊ
TỪ XA THÔNG QUA GSM/GPRS
GVHD: Ts. Nguyễn Văn Thái
SVTH:
Phạm Phát Đạt
MSSV:
15341003
SVTH:
Trần Ngọc Lâm
MSSV:
15341018
Tp. Hồ Chí Minh - 12/2016
BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
GIẢI PHÁP IoT DÙNG THU THẬP
DỮ LIỆU, ĐIỀU KHIỂN THIẾT BỊ
TỪ XA THÔNG QUA GSM/GPRS
GVHD: Ts. Nguyễn Văn Thái
SVTH:
Phạm Phát Đạt
MSSV:
15341003
SVTH:
Trần Ngọc Lâm
MSSV:
15341018
Tp. Hồ Chí Minh - 12/2016
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
Tp. HCM, ngày 15 tháng 12 năm 2016
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên:
Chuyên ngành:
Hệ đào tạo:
Khóa:
Phạm Phát Đạt
Trần Ngọc Lâm
CNKT Điện - Điện tử Truyền Thơng
Đại học chính quy
2015
MSSV: 15341003
MSSV: 15341018
Mã ngành: 41
Mã hệ:
3
Lớp: 153410B
I. TÊN ĐỀ TÀI: GIẢI PHÁP IoT DÙNG THU THẬP DỮ LIỆU, ĐIỀU KHIỂN
THIẾT BỊ TỪ XA THÔNG QUA GSM/GPRS
II. NHIỆM VỤ
1. Các số liệu ban đầu:
Tiến hành tìm hiểu và thu thập các số liệu từ các trang mạng và sách về điều
khiển thiết bị từ xa thông qua GSM/GPRS. Tham khảo các giải pháp trước đó
để xây dựng nên hệ thống điều khiển thiết bị.
Tìm hiểu các cảm biến, vi điều khiển, kết nối ngoại vi để lựa chọn ra thiết bị,
linh kiện phù hợp cho việc thực hiện đề tài.
2. Nội dung thực hiện:
Dùng module Arduino dùng ATMEGA2560 làm vi xử lý trung tâm, trên đó
gồm các IO kết nối với module SIM900A dùng để truyền nhận dữ liệu.
Thông qua đó điều khiển các thiết bị bằng khối rơle được thiết kế riêng.
Viết chương trình cho vi điều khiển
Thiết kế giao diện điều khiển và giám sát trên Web Application.
Thiết kế,thi cơng và lập trình khối đo nhiệt độ, độ ẩm và khí gas.
Kết nối các khối vào module.
Chạy thử nghiệm hệ thống, cân chỉnh hệ thống.
Viết sách luận văn.
Báo cáo đề tài tốt nghiệp.
III. NGÀY GIAO NHIỆM VỤ:
IV. NGÀY HOÀN THÀNH NHIỆM VỤ:
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN:
CÁN BỘ HƯỚNG DẪN
25/09/2016
30/12/2016
Ts.Nguyễn Văn Thái
BM. ĐIỆN TỬ CÔNG NGHIỆP
ii
TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT
TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
Tp. HCM, ngày 15 tháng 12 năm 2016
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1:
Phạm Phát Đạt
Lớp:
153410B
MSSV: 15341003
Họ tên sinh viên 2:
Trần Ngọc Lâm
Lớp:
153410B
MSSV: 15341018
Tên đề tài: Giải pháp IoT dùng thu thập dữ liệu, điều khiển thiết bị từ xa thông qua
GSM/GPRS và tin nhắn SMS
Tuần/ngày
Xác
GVHD
Nội dung
nhận
Tìm hiểu, tham khảo và thu thập các số liệu từ
25/09/2016
02/10/2016
các trang mạng và sách về điều khiển thiết bị từ
xa thông qua GSM/GPRS.
02/10/2016
09/10/2016
Dựa trên các thông số thu thập được, tiến hành
lựa chọn giải pháp thiết kế và thi công đề tài
09/10/2016
19/10/2016
Lựa chọn linh kiện cần thiết cho việc thực hiện
đề tài như lựa chọn module vi điều khiển, cảm
biến…
19/10/2016
25/11/2016
Tiến hành thiết kế cho toàn hệ thống, kết nối các
module…
25/11/2016
15/12/2016
Thiết kế lưu đồ, viết chương trình điều khiển các
khối
15/12/2016
20/12/2016
20/12/2016
30/12/2016
Tiến hành chạy thử nghiệm cho từng khối
30/12/2016
05/01/2017
Cân chỉnh hệ thống, sữa lỗi phần mềm, phần
cứng cho đạt yêu cầu
30/12/2016
05/01/2017
Viết báo cáo đề tài
Thiết kế giao diện giám sát qua internet bằng
website Applicatiom
GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)
iii
LỜI CẢM ƠN
Chúng em xin gởi lời cảm ơn sâu sắc đến Thầy Ts.Nguyễn Văn Thái đã trực tiếp
hướng dẫn và tận tình giúp đỡ tạo điều kiện để hồn thành tốt đề tài.
Em xin gởi lời chân thành cảm ơn các thầy cô trong Khoa Điện-Điện Tử đã tạo
những điều kiện tốt nhất cho chúng em hoàn thành đề tài.
Trong quá trình thực hiện đồ án chúng em đã gặp khơng ít khó khăn. Nhưng được sự giúp
đỡ, hướng dẫn nhiệt tình của q thầy cơ đã giúp chúng em khắc phục được những khó
khăn đó và hồn thành được đề tài đúng thời hạn.
Chúng em cũng gửi lời đồng cảm ơn đến các bạn lớp 153410 đã chia sẻ trao đổi
kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực hiện đề tài.
Vì là lần đầu tiên khai thác một lĩnh vực còn khá mới mẻ, nên mặc dù chúng em
đã bỏ ra rất nhiều tâm huyết, thời gian, và công sức, nhưng chắc chắn sẽ khơng tránh khỏi
những thiếu sót, những hạn chế, chúng em hy vọng rằng sẽ nhận được nhiều ý kiến đóng
góp chân thành của q thầy cơ, các cá nhân… để chúng em có thể hồn thiện hơn cho đề
tài.
Xin chân thành cảm ơn!
Người thực hiện đề tài
Phạm Phát Đạt
Trần Ngọc Lâm
v
MỤC LỤC
Trang
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP .............................................................................. ii
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP .................................................... iii
LỜI CAM ĐOAN .......................................................................................................... iv
LỜI CẢM ƠN ................................................................................................................ v
MỤC LỤC .................................................................................................................... ..vi
LIỆT KÊ HÌNH VẼ ....................................................................................................... ix
LIỆT KÊ BẢNG ............................................................................................................ xii
TĨM TẮT ...................................................................................................................... xiii
Chương 1. TỔNG QUAN ............................................................................................. 1
1.1. ĐẶT VẤN ĐỀ.......................................................................................................... 1
1.2. MỤC TIÊU ............................................................................................................... 1
1.3. GIỚI HẠN ................................................................................................................ 2
Chương 2. CƠ SỞ LÝ THUYẾT ................................................................................. 3
2.1 KHỐI VI ĐIỀU KHIỂN TRUNG TÂM ................................................................... 3
2.1.1 Sơ đồ các linh kiện của Arduino Atmega2560 ...................................................... 6
2.1.2 Vi điều khiển ATmega2560 ................................................................................... 7
a. Tổng quan ATmega2560 ............................................................................................. 7
b. Sơ đồ chân ATmega2560 .......................................................................................... 11
c. Cách hoạt động .......................................................................................................... 16
d. Cấu trúc bộ nhớ ......................................................................................................... 22
2.1.2 ATmega16U2 ....................................................................................................... 25
2.2 MODULE SIM900A ............................................................................................... 27
2.2.1 Sơ đồ thiết kế của GSM/GPRS SIM900A Easy .................................................. 28
2.2.2 Tổng quan về SIM900A ....................................................................................... 29
2.2.3 Các chế độ hoạt động của SIM900A ................................................................... 31
a. Chế độ NORMAL ..................................................................................................... 31
b. Power down ............................................................................................................... 32
c. Hạn chế chức năng .................................................................................................... 32
2.2.4 Sơ đồ khối của SIM900A ..................................................................................... 32
vi
2.2.5 Sơ đồ chân SIM900A ........................................................................................... 33
2.3 CẢM BIẾN DHT11 ................................................................................................ 38
2.3.1 Thông số kỹ thuật ................................................................................................. 38
2.3.2 Nguyên lý hoạt động ............................................................................................ 38
2.4 RƠLE ...................................................................................................................... 41
2.5 MODULE CẢM BIẾN KHÍ GA MQ2 ................................................................... 43
2.5.1 Giới thiệu .............................................................................................................. 43
2.5.2 Sơ đồ chân cảm biến khí ga MQ2 ........................................................................ 44
2.6 Opto 817 .................................................................................................................. 45
Chương 3. TÍNH TỐN VÀ THIẾT KẾ .................................................................. 47
3.1 GIỚI THIỆU TỔNG QUAN ................................................................................... 47
3.2 TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG ............................................................ 47
3.2.1 Thiết kế sơ đồ khối hệ thống ................................................................................ 47
3.2.2 Tính tốn và thiết kế mạch ................................................................................... 49
3.2.2.1 Khối giao tiếp SMS : ......................................................................................... 49
3.2.2.2 Khối vi điều khiển ATmega2560 ...................................................................... 50
3.2.2.3 Khối cảm biến .................................................................................................. 52
3.2.2.4 Khối công suất................................................................................................... 55
3.2.2.9 Khối nguồn ........................................................................................................ 56
3.2.3 Sơ đồ nguyên lý của toàn mạch ........................................................................... 57
Chương 4. THI CÔNG HỆ THỐNG ......................................................................... 60
4.1 THI CÔNG HỆ THỐNG ........................................................................................ 60
4.1.1 Thi công bo mạch ................................................................................................. 60
4.1.2 Kết nối các khối ................................................................................................... 62
4.2 LẮP RÁP VÀ ĐÓNG GÓI MẠCH ....................................................................... 64
4.3 LẬP TRÌNH HỆ THỐNG ....................................................................................... 67
4.3.1 Lưu đồ giải thuật .................................................................................................. 67
4.3.2 Phần mềm lập trình cho vi điều khiển.................................................................. 70
4.3.2.1 Phần mềm lập trình cho Arduino IDE .............................................................. 70
4.3.3 Phần mềm lập trình cho WebSever ...................................................................... 73
4.3.3.1 Phần mềm Notepad++ ....................................................................................... 73
4.4 TẠO WEBSEVER VÀ DATABASE ..................................................................... 75
4.5 QUY TRÌNH THAO TÁC SỬ DỤNG. .................................................................. 80
Chương 5. KẾT QUẢ NHẬN XÉT VÀ ĐÁNH GIÁ. .............................................. 82
5.1 BOARD MẠCH ..................................................................................................... 82
vii
5.2 NGUỒN .................................................................................................................. 82
5.4 KẾT QUẢ THỰC HIỆN TRÊN WEB APPLICATION ........................................ 83
5.4 KẾT QUẢ MÔ PHỎNG ỨNG DỤNG WEB APPLICATION ............................. 84
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................................. 84
6.1 TÓM TẮT ĐỀ TÀI. ................................................................................................ 84
6.2 KẾT LUẬN. ............................................................................................................ 84
6.3 HƯỚNG PHÁT TRIỂN .......................................................................................... 85
TÀI LIỆU THAM KHẢO ............................................................................................ 86
MỘT SỐ TRANG WEB THAM KHẢO KHÁC ....................................................... 87
PHỤ LỤC ..................................................................................................................... 88
viii
LIỆT KÊ HÌNH VẼ
Hình
Trang
Hình 2.1 : Arduino Atmega2560 mặt trước .................................................................... 3
Hình 2.2 : Arduino Atmega2560 mặt sau ....................................................................... 4
Hình 2.3 : Sơ đồ linh kiện trong Arduino Atmega2560 .................................................. 6
Hình 2.4 : Sơ đồ chi tiết các chân trong khối Arduino Atmega2560 .............................. 6
Hình 2.4 : Vi điều khiển Atmega2560 ............................................................................ 7
Hình 2.5 : Sơ đồ khối của Atmega2560 .......................................................................... 9
Hình 2.6 : Sơ đồ chân ATmega2560 ............................................................................. 11
Bảng 2.2 : Chi tiết các chân ATmega2560 ................................................................... 11
Hình 2.12 : Sơ đồ khối khối ADC ................................................................................. 19
Hình 2.13 : Sơ đồ khối đơn giản bộ ADC ..................................................................... 20
Hình 2.14 : Sơ đồ khối của USART. ............................................................................ 21
Hình 2.15 : Sơ đồ hệ thống xung clock cho Atmega2560 ............................................ 21
Hình 2.16 : Bộ nhớ chương trình .................................................................................. 22
Hình 2.17 : Bản đồ bộ nhớ dữ liệu SRAM.................................................................... 23
Hình 2.18 : Thanh Ghi EEAR ....................................................................................... 23
Hình 2.19 : Thanh Ghi EEDR ....................................................................................... 24
Hình 2.20 : Thanh Ghi EECR ....................................................................................... 24
Hình 2.21 : Sơ đồ khối của Atmega16U2 ..................................................................... 26
Hình 2.22 : Module SIM900A ...................................................................................... 27
Hình 2.23 : Sơ đồ thiết kế của GSM/GPRS SIM900A Easy ........................................ 28
Hình 2.24 : Chi tiết linh kiện trong Module SIM900A ................................................. 29
Hình 2.25 : SIM900A .................................................................................................... 29
Hình 2.26 : Sơ đồ khối của SIM900A ........................................................................... 32
Hình 2.27 : Sơ đồ chân cùa SIM900A .......................................................................... 33
Hình 2.28 : Kết nối giữa Breakout SIM900A và Vi điều khiển ................................... 34
Hình 2.29 : Cảm biến DTH11 ....................................................................................... 38
Hình 2.30: Gửi tín hiệu Start ......................................................................................... 39
Hình 2.31 : Đọc dữ liệu bit 0 ......................................................................................... 40
Hình 2.32: Đọc dữ liệu bit 1.......................................................................................... 40
Hình 2.33 : Rơle ............................................................................................................ 41
Hình 2.34 : Cấu tạo Rơle. .............................................................................................. 42
Hình 2.35 : Module cảm biến khí gas MQ2 .................................................................. 43
ix
Hình 2.36 : Cấu tạo MQ2 .............................................................................................. 44
Hình 2.37 : Sơ đồ chân Module khí ga MQ2 ................................................................ 44
Hình 2.38 : Module MQ2 with NE555 ......................................................................... 45
Hình 2.39: Opto 817 ...................................................................................................... 45
Hình 3.1 : Sơ đồ tổng quan hệ thống ............................................................................ 47
Hình 3.2 : Sơ đồ khối của bộ điều khiển ....................................................................... 48
Hình 3.3 : Sơ đồ nguyên lý module SIM900A ............................................................. 50
Hình 3.4 : Transistor kích mở/tắt nguồn cho module SIM900A .................................. 50
Hình 3.5 : Sơ đồ nguyên lý Atmega2560 ...................................................................... 51
Hình 3.6 : Giao tiếp USB .............................................................................................. 52
Hình 3.7 : Khối tạo xung dao động ............................................................................... 52
Hình 3.8 : Sơ đồ kết nối vi xử lý ................................................................................... 53
Hình 3.9 : Sơ đồ kết nối vi xử lý thực tế ....................................................................... 54
Hình 3.10 : Sơ đồ kết nối chân giữa Arduino và MQ2 ................................................. 54
Hình 3.11 : Khối cơng suất ........................................................................................... 55
Hình 3.12 : Sơ đồ nguyên lý nguồn 5V và 12V ............................................................ 57
Hình 3.13 : Sơ đồ nguyên lý tồn mạch ........................................................................ 58
Hình 4.1 : Sơ đồ mạch in nguồn.................................................................................... 61
Hình 4.2 : Sơ đồ mạch in khối Rơle .............................................................................. 61
Hình 4.3 : Kết nối Arduino Atmega2560 và module SIM900A ................................... 63
Hình 4.4 : Kết nối Arduino Atmega2560 và cảm biến, buzzer ..................................... 64
Hình 4.5 : Hình thực tế mạch nguồn ............................................................................. 65
Hình 4.6 : Hình thực tế khối cơng suất ......................................................................... 65
Hình 4.7 : Đóng gói mơ hình tồn mạch ....................................................................... 66
Hình 4.8 : Cảm biến khí ga và buzzer trong mơ hình ................................................... 66
Hình 4.9 : Các thiết bị giả lập trong mơ hình ................................................................ 67
Hình 4.10 : Lưu đồ giải thuật chương trình chính ........................................................ 68
Hình 4.12 : Lưu đồ chương trình điều khiển thiết bị .................................................... 69
Hình 4.13 : Lưu đồ chương trình nhận dữ liệu ............................................................. 70
Hình 4.14 : Lưu đồ chương trình gửi dữ liệu ................................................................ 71
Hình 4.15 : Phần mềm lập trình Arduino IDE .............................................................. 72
Hình 4.16 : Bước chọn Board ....................................................................................... 73
Hình 4.17 : Chọn cổng giao tiếp ................................................................................... 73
Hình 4.18 : Nạp chương trình cho Arduino .................................................................. 74
Hình 4.19 : Tạo New File .............................................................................................. 75
Hình 4.20 : Chọn ngơn ngữ ........................................................................................... 75
x
Hình 4.21 : Đăng ký Free Hosting ................................................................................ 76
Hình 4.22 : Đăng ký thơng tin ....................................................................................... 76
Hình 4.23 : Check thơng tin trên email ......................................................................... 77
Hình 4.24 : Login vào tài khoản.................................................................................... 77
Hình 4.25 : Giao diện đăng nhập .................................................................................. 78
Hình 4.26 : Tạo database ............................................................................................... 78
Hình 4.27 : Tạo các table để lưu các giá trị của Arduino ............................................. 79
Hình 4.28 : Khai báo tên và số cột ................................................................................ 79
Hình 4.29 : Tạo các file php để connect tới mysql và Arduino .................................... 80
Hình 4.30 : Cách upload file lên Websever .................................................................. 80
Hình 4.31 : Giao diện sau khi upload file ..................................................................... 81
Hình 4.32 : Giao diện Web Application ....................................................................... 82
Hình 5.1 : Giao diện ban đầu ........................................................................................ 83
Hình 5.2 : Giao diện sau khi các giá trị được gửi lên Web Application ....................... 83
xi
LIỆT KÊ BẢNG
Bảng
Trang
Bảng 2.1 : Cổng Serial giao tiếp với phần cứng ............................................................. 4
Bảng 2.2 : Chi tiết các chân ATmega2560 ................................................................... 11
Bảng 2.3 : APN một số nhà mạng ................................................................................. 35
Bảng 3.1 : Sơ đồ kết nối chân giữa Arduino và MQ2 ................................................... 54
Bảng 4.1 : Danh sách các linh kiện. .............................................................................. 61
xii
TÓM TẮT
"Giải pháp IoT dùng thu thập dữ liệu, điều khiển thiết bị từ xa thông qua
GSM/GPRS" là đề tài với mục đích giám sát, điều khiển các thiết bị dựa trên các số liệu
thu thập được từ các cảm biến đo được như nhiệt độ, độ ẩm, khí gas thông qua
GSM/GPRS hay Web Application. Điều này sẽ giúp cho con người có khả năng theo dõi,
giám sát và điều khiển các thiết bị ở bất kỳ nơi đâu một cách nhanh chóng, tiện lợi, góp
phần tiết kiệm điện năng, phù hợp với sự phát triển tiên tiến của xã hội.
Đề tài lấy cơ sở là mạng GSM/GPRS để điều khiển thiết bị từ xa. Việc sử dụng
Web Application để điều khiển và giám sát thiết bị có thuận lợi là nhanh chóng, tiết kiệm
chi phí, mang tính cạnh tranh và cơ động. Ngoài ra, sản phẩm của đề tài này có tính mở,
có thể áp dụng cho nhiều đối tượng khác nhau trong dân dụng cũng như trong công
nghiệp.
xiii
CHƯƠNG 1. TỔNG QUAN
Chương 1. TỔNG QUAN
1.1.
ĐẶT VẤN ĐỀ
Ngày nay cùng với sự tiến bộ của khoa học kỹ thuật, các thiết bị điện tử ra đời
ngày càng nhiều về chủng loại cũng như tính năng sử dụng. Bên cạnh đó nhu cầu sử
dụng các thiết bị một cách tự động ngày càng cao, con người ngày càng muốn các thiết
bị hỗ trợ nhiều hơn cho cơng việc của mình. Có thể ở Việt Nam chưa phát triển mạnh
mẽ trong lĩnh vực này nhưng hiện nay ở trên thế giới, nhất là các nước có ngành cơng
nghệ phát triển vượt bậc thì các thiết bị được điều khiển, giám sát thiết bị từ xa đã phát
triển rất mạnh mẽ.
Từ những yêu cầu thực tế, những đòi hỏi ngày càng cao của cuộc sống, cộng
với sự hợp tác, phát triển mạnh mẽ của mạng di động cũng như internet nên chúng em
đã chọn đề tài "Giải pháp IoT dùng thu thập dữ liệu, điều khiển thiết bị từ xa thông qua
GSM/GPRS" để đáp ứng được nhu cầu ngày càng cao của con người và góp phần vào
sự tiến bộ, văn minh, hiện đại của xã hội.
1.2.
MỤC TIÊU
Đề tài dùng module GSM/GPRS SIM900A để thu nhận dữ liệu từ xa và gửi dữ
liệu về module Arduino dùng chip ATMega2560 làm vi xử lý trung tâm, các cảm biến
như cảm biến nhiệt độ, độ ẩm, khí gas được kết nối với module này để sau đó dữ liệu
sẽ được truyền về server. Trên server sẽ cài đặt một phần mềm để làm nhiệm vụ thu
nhận, sau đó xử lý và lưu vào database các thông tin đo được và hiển thị bởi một
Website Application.
NỘI DUNG NGHIÊN CỨU
Nghiên cứu cách sử dụng GSM/GPRS thông qua module sim với Arduino
Mega 2560.
Viết chương trình cho vi điều khiển.
Thiết kế giao diện điều khiển và giám sát trên Web Application.
Thiết kế, thi cơng và lập trình khối đo nhiệt độ, độ ẩm và khí gas.
Kết nối các khối vào module.
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP
1
CHƯƠNG 1. TỔNG QUAN
Chạy thử nghiệm hệ thống.
Cân chỉnh hệ thống.
Viết sách luận văn.
Báo cáo đề tài tốt nghiệp.
1.3.
GIỚI HẠN
Trong thời gian thực hiện đề tài là có hạn, với lượng kiến thức được truyền đạt
trong suốt khóa học và khả năng có hạn, nhóm thực hiện đề tài chỉ giải quyết những
vấn đề sau:
-
Thiết lập một Web Application để điều khiển thiết bị và hiển thị trạng thái
thiết bị cũng như nhiệt độ, độ ẩm, khí gas lên Web Application.
-
Ngồi ra, hệ thống cịn có chức năng tự động phát tín hiệu cảnh báo qua
chng và hiển thị cảnh báo lên Web Sever.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
2
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Chương 2. CƠ SỞ LÝ THUYẾT
Trong phạm vi đề tài có sử dụng 3 khối module kết hợp là Arduino Mega 2560,
khối module SIM90A và khối rơle dùng để điều khiển thiết bị.
Arduino Mega 2560 đã và đang được sử dụng rất rộng rãi trên thế giới, và ngày
càng chứng tỏ được sức mạnh của chúng thông qua vô số ứng dụng độc đáo của người
dùng trong cộng đồng nguồn mở (open-source). Trong khi đó Module Sim900A là
Module được thiết kế tối ưu với giá thành thấp và phục vụ chủ yếu cho việc giám sát,
điều khiển các thiết bị từ xa thông qua GMS/GPRS. Sau đây chúng ta sẽ tìm hiểu từng
khối module cũng như hoạt động của chúng để phục vụ cho việc thực hiện đề tài.
2.1 KHỐI VI ĐIỀU KHIỂN TRUNG TÂM
Khối điều khiển trung tâm là khối Arduino Mega 2560 với chip vi điều khiển là
ATMega2560. Khối gồm 54 chân In/Out digital (trong đó có 14 ngõ ra PWM), 16 ngõ
vào analog, 4 cổng giao tiếp UART, 1 kết nối USB, cổng nguồn, đầu ICSP, nút reset
và hoạt động ở tốc độ 16 Mhz.
Hình 2.1 : Arduino Atmega2560 mặt trước
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP
3
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Hình 2.2 : Arduino Atmega2560 mặt sau
Khối Arduino Mega 2560 sử dụng chip ATmega16U2 để giao tiếp với máy
tính, giúp tăng tốc độ nạp chương trình, tốc độ truyền nhận dữ liệu và tương thích với
tất cả mã nguồn của Arduino Mega 2560. Arduino Mega 2560 là một vi điều khiển
hoạt động dựa trên chip ATmega2560. Bao gồm:
54 chân digital (trong đó có 15 chân có thể được sử dụng như những chân
PWM là từ chân số 2 → 13 và chân 44, 45, 46).
6 ngắt ngoài: chân 2 (interrupt 0), chân 3 (interrupt 1), chân 18 (interrupt 5),
chân 19 (interrupt 4), chân 20 (interrupt 3), and chân 21 (interrupt 2).
16 chân vào analog (từ A0 đến A15).
4 cổng Serial giao tiếp với phần cứng:
Bảng 2.1 : Cổng Serial giao tiếp với phần cứng
CỔNG SERIAL
CHÂN RX
CHÂN TX
Cổng 0
0
1
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
4
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
CỔNG SERIAL
CHÂN RX
CHÂN TX
Cổng 1
19
18
Cổng 2
17
16
Cổng 3
15
14
1 thạch anh với tần số dao động 16 MHz.
1 cổng kết nối USB.
1 jack cắm điện.
1 đầu ICSP.
1 nút reset.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
5
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1.1 Sơ đồ các linh kiện của Arduino Mega 2560
Hình 2.3 : Sơ đồ linh kiện trong Arduino Mega 2560
Hình 2.4 : Sơ đồ chi tiết các chân trong khối Arduino Mega 2560
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
6
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
5 Chân GND
3 chân 5V
1 chân 3.3v
1 nút reset
16 chân analog
4 chân UART
54 Chân digital trong đó có 15 chân chúng ta có thể sử dụng như PWM
6 Chân lập trình ISP
2.1.2 Vi điều khiển ATMega2560
Hình 2.4 : Vi điều khiển Atmega2560
Atmega2560 là vi điều khiển 8 bit dựa trên kiến trúc RISC có bộ nhớ 256KB ISP
flash, 8KB SRAM, 4KB EEPROM. Vi điều khiển Atmega2560 AVR có cơng suất
cao, tiêu thụ năng lượng thấp, cấu trúc RISC tiến với 130 lệnh với chu kỳ thực hiện
đơn xung lớn nhất, 32 thanh ghi đa mục đích 8 bít, 16 MIPS tại tần số đặt 16 MHz, bộ
nhân 2 chu kỳ On-chip, Power-on Reset và Brown-out Detection có thể lập trình, bộ
dao động RC bên trong có thể lập trình các mức, 5 Mode ngủ (Idle, ADC Noise
Reduction, Power-save, Power-down và Standby), có khả năng Reset khi bật nguồn,
khả năng dị lỗi Brown out lập trình được, có nguồn ngắt trong và ngắt ngồi. Cốt lõi
của AVR là sự kết hợp các câu lệnh phong phú với 32 thanh ghi đa mục đích.
a. Tổng quan ATMega2560
- Rom: 8Kbyte
- SRam: 4Kbytes
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
7
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
- EEPROM: 4Kbytes
- 64 thanh ghi I/O
- 160 thanh ghi vào ra mở rộng
- 32 thanh ghi đa mục đích
- 2 bộ định thời 8 bit (0,2)
- 4 bộ định thời 16 bit (1,3,4 và 5)
- Bộ định thời watchdog
- Bộ dao động nội RC tần số 1MHz, 2MHz, 4MHz, 8MHz
- ADC 8 kênh với độ phân giải 10 bit (Ở dòng Xmega lên tới 12 bit)
- 2 kênh PWM 8 bit
- 6 kênh PWM có thể lập trình thay đổi độ phân giải từ 2 tới 16 bit
- Bộ so sánh tương tự có thể lựa chọn ngõ vào
- Hai khối USART lập trình được
- Khối truyền nhận nối tiếp SPI
- Khối giao tiếp nối tiếp hai dây TWI
- Hỗ trợ Boot loader
- 6 chế độ tiết kiệm năng lượng
- Lựa chọn tần số hoạt động bằng phần mềm
- Đóng gói 64 chân kiểu TQFP
- Tần số tối đa 16MHz
- Điện thế: 4,5V – 5,5V
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
8
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Dưới đây là sơ đồ khối của Atmega2560 :
Hình 2.5 : Sơ đồ khối của Atmega2560
Tất cả 32 thanh ghi đều trực tiếp kết nối tới bộ xử lý logic số học - Arithmetic
Logic Unit (ALU), cho phép truy nhập 2 thanh ghi độc lập trong một câu lệnh đơn
được thực hiện trong một chu kỳ xung. Kết quả của cấu trúc trở nên gọn nhẹ, hiệu quả
hơn, trong khi vẫn đạt được thời gian xử lý nhanh hơn gấp 10 lần các vi điều khiển
CISC thơng thường khác, 256Kbyte Flash trên chíp có thể lập trình với các khả năng
đọc trong khi ghi (Read-While-Write), 4K byte EEPROM, 8K byte SRAM, 86 đường
vào ra đa mục đích, 32 thanh ghi đa mục đích, 6 Timer/Counter rất linh hoạt với các
compare mode, các ngắt trong và ngắt ngồi, một bộ USART nối tiếp có thể lập
trình được, ghép nối nối tiếp 2 dây định hướng byte, 16 kênh ADC có độ chính xác 10bit, Watchdog Timer có thể lập trình được với bộ dao động bên trong, một cổng nối
tiếp SPI và 6 mode tiết kiệm năng lượng có thể lựa chọn mềm.
Idle mode dừng CPU trong khi vẫn cho phép SRAM, Timer/Counters, cổng SPI,
và hệ thống ngắt tiếp tục chức năng của chúng.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
9
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Power-down mode tiết kiệm nội dung thanh ghi, nhưng hạn định bộ dao động,
không cho phép tất cả các chức năng khác của chíp được hoạt động cho đến khi ngắt
tiếp theo hoặc Reset phần cứng xuất hiện.
Trong Power-save mode, timer không đồng bộ tiếp tục chạy, cho phép sử dụng
để duy trì thời gian nền, trong khi các phần còn lại của thiết bị được ngủ.
ADC Noise Reduction mode dừng CPU và tất các module I/O ngoại trừ timer
không đồng bộ và ADC để tối thiểu hóa nhiễu mạch trong suốt q trình ADC trong
chuyển đổi.
Trong Standby mode, bộ dao động thạch anh/ resonator được phép chạy trong
khi các phần còn lại của thiết bị được ngủ. Điều này cho phép start-up rất nhanh cùng
với hiệu quả tiêu thụ ít năng lượng.
Thiết bị được sản suất áp dụng cơng nghệ tích hợp bộ nhớ non-volatile cao của
Atmel. Bộ nhớ chương trình Flash này có thể lập trình thơng qua ghép nối tiếp SPI
bằng chương trình lập trình bộ nhớ non-volatile riêng, hoặc bằng một chương trình
boot on – chip, chạy trong AVR core. Chương trình boot có thể sử dụng bất kỳ một
ghép nối nào để download chương trình ứng dụng trong bộ nhớ Flash. Phần mềm
trong Boot Flash sẽ tiếp tục chạy trong khi các phần sử dụng Flash vẫn được update,
hỗ trợ cho hoạt động đọc trong khi ghi (Read-While-Write).
Bằng việc kết hợp với một CPU 8-bit RISC với bộ nhớ Flash tự lập trình trong hệ
thống trên một chíp, Atmel ATmega2560 là một vi điều khiển cực mạnh, thỏa mãn
yêu cầu về một bộ vi điều khiển với độ linh hoạt cao và đem lại lợi nhuận lớn với rất
nhiều các ứng dụng điều khiển tác động nhanh.
ATMega2560 AVR cũng hỗ trợ đầy đủ về lập trình và phát triển các tool hệ
thống, bao gồm bộ dịch C, macro assemblers, bộ mơ phỏng/gỡ rối chương trình, InCircuit Emulators, và evaluation kits.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
10