Tài liệu giúp đỡ các bạn trong quá trình làm đồ án .Ở đây tài liệu giúp các bạn bổ sung kiến thức và tham khảo qua về hoạt động cũng như quá trình hoàn thành đồ án ngành viễn thông(đồ án 1 và đồ 2 ).Tài liệu có code để các bạn tham khảo và mô phỏng mạch cũng như mạch thực tế .Tài liệu có hướng dẫn cách làm báo cáo sao cho đúng mẫu đúng quy trình ,đúng với hình thức báo cáo sao cho đúng
Trang 1TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA ĐIỆN – ĐIỆN TỬ
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2018
i
Trang 2TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA ĐIỆN – ĐIỆN TỬ
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2018
i
Trang 4LỜI CẢM ƠN
Trong lời đầu tiên của bài báo cáo đồ án 2 ‘‘ Hệ thống giám sát phòngkhách sạn ” em muốn gửi những lời cảm ơn và biết ơn của tôi tới tất cảnhững người đã giúp đỡ và hỗ trợ tôi trong quá trình thự hiện đồ án này
Trước hết tôi xin chân thành cảm ơn TS Nguyễn Văn A người đãtrực tiếp hướng dẫn, nhận xét, giúp đỡ tôi trong suốt quá trình thực hiện đồán
Tôi xin chân thành cảm ơn ban giám hiệu nhà trường, các thầy côtrong Khoa Điện-Điện Tử đã tạo điều kiện tốt nhất cho tôi cũng như các bạnkhác trong suốt thời gian làm đồ án
Cuối cùng tôi xin gửi lời cảm ơn đến gia đình, bạn bè, người thân đãgiúp đỡ tôi trong quá trình làm bài đồ án
Tôi rất mong nhận được ý kiến đóng góp của các giảng viên để tôi cóthêm kinh nghiệm để nhận ra thiếu sót của tôi và làm tốt hơn trong bài đồ
án tới
Tôi xin chân thành cảm ơn …
TP Hồ Chí Minh, ngày tháng năm
Tác giả
i
Trang 5CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và được
sự hướng dẫn khoa học của TS Nguyễn Văn A Các nội dung nghiên cứu,kết quả trong đề tài này là trung thực và chưa công bố dưới bất kỳ hìnhthức nào trước đây Những số liệu trong các bảng biểu phục vụ cho việcphân tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồnkhác nhau có ghi rõ trong phần tài liệu tham khảo
Ngoài ra, trong đồ án còn sử dụng một số nhận xét, đánh giá cũngnhư số liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn vàchú thích nguồn gốc
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nội dung đồ án của mình Trường đại học Tôn Đức
Thắng không liên quan đến những vi phạm tác quyền, bản quyền do tôi gây
ra trong quá trình thực hiện (nếu có)
TP Hồ Chí Minh, ngày tháng năm
Tác giả (ký tên và ghi rõ họ tên)
ii
Trang 6(Trang này dùng để đính kèm Nhiệm vụ Đồ án tốt nghiệp có chữ ký củaGiảng viên hướng dẫn)
iii
Trang 7MỤC LỤC
DANH MỤC CÁC HÌNH VẼ VIII DANH MỤC CÁC BẢNG BIỂU IX DANH MỤC CÁC TỪ VIẾT TẮT X
CHƯƠNG 1 TÌM HIỂU LINH KIỆN 1
1.1 ARDUINO UNO R3 1
1.1.1 Giới thiệu 1
1.1.2 Một vài thông số của Arduino UNO R3 2
1.1.3 Chip điều khiển 2
1.1.4 Năng lượng 2
1.1.5 Các chân năng lượng 3
1.1.6 Các cổng ra/vào 3
1.1.7 Lập trình cho Arduino 3
1.2 CẢM BIẾN NHIỆT ĐỘ DS18B20 4
1.2.1 Giới thiệu 4
1.2.2 Đặc điểm 4
1.3 CẢM BIẾN CƯỜNG ĐỘ ÁNH SÁNG BH1750 5
1.3.1 Giới thiệu 5
1.3.2 Thông số kỹ thuật 5
1.3.3 Sơ đồ nối dây 6
CHƯƠNG 2 THIÊT KẾ MẠCH 7
2.1 SƠ ĐỒ KHỐI 7
2.2 NGUYÊN LÝ HOẠT ĐỘNG 8
CHƯƠNG 3 THỰC THI PHẦN CỨNG 9
3.1 LƯU ĐỒ GIẢI THUẬT 9
3.2 GIAO TIẾP GIỮA ARDUINO VÀ MÁY TÍNH 10
3.2.1 Các cách giao tiếp 10
iv
Trang 83.2.2 Mô hình 10
3.2.3 Tìm hiểu về phần mềm Microsoft Visual Studio 10
3.2.4 Thiết kế phần mềm 12
3.3 CÁCH HOẠT ĐỘNG 13
3.4 THI CÔNG PHẦN CỨNG 13
3.4.1 Sơ đồ mạch in 13
3.4.2 Mạch thực tế 15
3.5 KẾT QUẢ 16
CHƯƠNG 4 KẾT LUẬN, ỨNG DỤNG VÀ HƯỚNG PHÁT TRIỂN 19
4.1 KẾT LUẬN 19
4.2 ỨNG DỤNG 19
4.3 HƯỚNG PHÁT TRIỂN 19
TÀI LIỆU THAM KHẢO 20 PHỤ LỤC 21
v
Trang 9DANH MỤC CÁC HÌNH VẼ
HÌNH 1-1: HÌNH ẢNH ARDUINO UNO[2] 1
HÌNH 1-2: SƠ ĐỒ NỐI DÂY GIỮA DS18B20 VÀ ARDUINO UNO R3 [2] 4
HÌNH 1-3: SƠ ĐỒ NỐI DÂY GIỮA BH1750 VỚI ARDUINO [3] 6
HÌNH 1-4: SƠ ĐỒ KHỐI CỦA MẠCH 7
HÌNH 3-1: MÔ HÌNH GIAO TIẾP GIỮA ARDUINO VỚI LAPTOP [1] 10
HÌNH 3-2: GIAO DIỆN CHÍNH CỦA PHẦN MỀM 11
HÌNH 3-3: CỬA SỔ LÀM VIỆC 12
HÌNH 3-4: GIAO DIỆN GIÁM SÁT 12
HÌNH 3-5: LIÊN KẾT LINH KIỆN VỚI NHAU 14
HÌNH 3-6: LAYOUT MẠCH IN 14
HÌNH 3-7: SƠ ĐỒ MẠCH IN 15
HÌNH 3-8: MẠCH THỰC TẾ 15
HÌNH 3-9: MẠCH IN THỰC TẾ 16
HÌNH 3-10: VIẾT CODE TRÊN ARDUINO 16
HÌNH 3-11: KẾT QUẢ HIỂN THỊ TRÊN COM 17
HÌNH 3-12: VIẾT CODE TRÊN MICROSOFT VISUAL STUDIO 17
HÌNH 3-13: KẾT QUẢ KHI CHẠY 18
DANH MỤC CÁC BẢNG BIỂU
vi
Trang 10BẢNG 1-1 MỘT VÀI THÔNG SỐ CỦA ARDUINO UNO R3 2
DANH MỤC CÁC TỪ VIẾT TẮT
vii
Trang 11GND Ground
viii
Trang 12ĐỒ ÁN 2 Trang 1/26
CHƯƠNG 1 TÌM HIỂU LINH KIỆN
1.1.2 Một vài thông số của Arduino UNO R3
Bảng 1-1 Một vài thông số của Arduino UNO R3
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 13ĐỒ ÁN 2 Trang 2/26
Số chân Digital I/O 14 (6 chân hardware PWM)
Dòng tối đa trên mỗi chân I/O 30mA
1.1.3 Chip điều khiển
Sử dụng 3 chip điều khiển họ 8bit AVR : ATmega8, ATmega168, ATmega328
1.1.4 Năng lượng
Nguồn 5V thông qua cổng USB
Nguồn 7-12V DC nếu sử dụng nguồn ngoài (giới hạn là 6-20V)
Arduino UNO sẽ hỏng nếu vượt qua giới hạn trên
1.1.5 Các chân năng lượng
Chân GND: cực âm của nguồn điện cấp cho Arduino UNO
Chân 5V: tạo điện áp ra 5V Dòng tối đa: 500mA
Chân 3.3V: tạo điện áp ra 3.3V Dòng tối đa: 50mA
Chân Vin: để cấp nguồn ngoài cho Arduino
Chân IOREF: đo điện áp hoạt động của chip điều khiển
Chân RESET: để cài lại chip điều khiển
1.1.6 Các cổng ra/vào
Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu:
2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi và nhận dữ liệu TTL Serial giao tiếpgiữa Arduino Uno với thiết bị khác
Chân PWM (~): 3, 5, 6, 9, 10, và 11: xuất ra xung PWM với độ phân giải 8bit (giátrị từ 0 → 255 tương ứng với 0V → 5V) Có thể điều chỉnh được điện áp ra
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 14ĐỒ ÁN 2 Trang 3/26
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các chứcnă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ớicác thiết bị khác
LED 13: là 1 đèn led dùng để báo hiệu khi nhấn nút RESET Khi chân 13 sử dụngLED này cũng sẽ sáng
6 chân analog (A0 → A5): cung cấp độ phân giải tín hiệu 10bit (0 → 1023) để đọcgiá trị điện áp trong khoảng 0V → 5V
2 chân A4 (SDA) và A5 (SCL): hỗ trợ giao tiếp I2C/TWI với các thiết bị khác
Cảm biến nhiệt độ DS18B20 có mã nhận diện lên đến 64bit, vì vậy chỉ dùng 1 dây dẫnduy nhất để giao tiếp với nhiều IC DS18B20
Điện áp sử dụng : 3 – 5.5V
Ở chế độ nghỉ dòng tiêu thụ rất nhỏ
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 15ĐỒ ÁN 2 Trang 4/26
Thời gian chuyển đổi cao nhất: 750ms (config 12bit)
Hình 1-2: Sơ đồ nối dây giữa DS18B20 và Arduino Uno R3 [2]
1.3 Cảm biến cường độ ánh sáng BH1750
1.3.1 Giới thiệu
Cảm Biến Cường Độ Ánh Sáng BH1750 là:
Có bộ chuyển đổi AD 16 bit tích hợp trong chip
Xuất ra trực tiếp dữ liệu theo dạng digital
BH1750 sử dụng đơn giản và chính xác hơn so với các cảm biến ánh sáng khác.Cường độ được tính như sau:
Tối không trăng: 0.001 - 0.02 lux
Trời trăng sáng: 0.02 - 0.3 lux
Trời mây (đo trong nhà): 5 - 50 lux
Trời mây (đo ngoài trời): 50 - 500 lux
Trời nắng (đo trong nhà): 100- 1000 lux
1.3.2 Thông số kỹ thuật
Chuẩn kết nối I2C
Độ phân giải cao (1 - 65535 lux)
Tiêu hao nguồn ít
Trang 16ĐỒ ÁN 2 Trang 5/26
Kích thước board: 0.85* 0.63* 0.13" (21* 16* 3.3mm)
1.3.3 Sơ đồ nối dây
Hình 1-3: Sơ đồ nối dây giữa BH1750 với Arduino [3]
CHƯƠNG 2 THIÊT KẾ MẠCH
2.1 Sơ đồ khối
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 17ĐỒ ÁN 2 Trang 6/26
Hình 1-4: Sơ đồ khối của mạch
Khối nguồn: cung cấp nguồn cho thiết bị
Ghi chú: có thể thay thế khối relay board, khối thiết bị, khối nguồn thành 1 đènLED để dễ dàng kiểm tra kết quả
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 18ĐỒ ÁN 2 Trang 7/26
Cảm biến BH1750 có ADC nội và bộ tiền xử lý nên giá trị được trả ra là giá trị trựctiếp cường độ ánh sáng lux và được gửi về máy tính thông qua giao tiếp I2C
Khi nhập giá trị “0” vào cổng COM thì chân digital 4 của Arduino sẽ ở mức cao do đóđèn LED đỏ sẽ sáng
Khi nhập giá trị “1” vào cổng COM thì chân digital 4 của Arduino sẽ ở mức thấp do
3.1 Lưu đồ giải thuật
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Bắt đầuKhởi tạo hệ thống
Trang 19ĐỒ ÁN 2 Trang 8/26
3.2 Giao tiếp giữa Arduino và máy tính
3.2.1 Các cách giao tiếp
Đối với Arduino UNO R3, Arduino Mega, thì chỉ chỉ cần kết nối bằng USB
Đối với Arduino Promini (không có sẵn module UART to Serial) thì phải có USB toSerial sau đó dùng 3 sợi dây GND, TX và RX (có thể sử dụng thêm cổng VCC để cấpnguồn cho Arduino)
Trang 20ĐỒ ÁN 2 Trang 9/26
Máy tính sẽ mở cổng COMx (hoặc dev/tty , ) sau đó các nội dung trong outputbuffer của Arduino sẽ được tuồn qua máy tính và lưu ở input buffer Máy tính đọc nhữngdòng đó rồi quy ra lệnh (Serial Command); đồng thời trên Arduino cũng song song tồn tạiphương thức ấy
Hình 3-1: Mô hình giao tiếp giữa Arduino với laptop [1]
3.2.3 Tìm hiểu về phần mềm Microsoft Visual Studio
Microsoft Visual Studio :
Là một môi trường phát triển tích hợp (IDE) của Microsoft
Sử dụng nền tảng phát triển phần mềm của Microsoft như Windows API, WindowsForms,…
Có thể sản xuất cả hai ngôn ngữ máy và mã số quản lý
Hỗ trợ nhiều ngôn ngữ lập trình khác nhau
Cho phép trình biên tập mã và gỡ lỗi để hỗ trợ (mức độ khác nhau) hầu như mọingôn ngữ lập trình
Các ngôn ngữ tích hợp gồm có C, C++, C++/CLI, VB.NET, C#, F#, J++/J#,Python, Ruby, XML/XSLT, HTML/XHTML, JavaScript và CSS
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 21ĐỒ ÁN 2 Trang 10/26
Hình 3-2: Giao diện chính của phần mềm
Hình 3-3: Cửa sổ làm việc
3.2.4 Thiết kế phần mềm
Giao diện điều khiển:
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 22ĐỒ ÁN 2 Trang 11/26
Hình 3-4: Giao diện giám sát
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 23ĐỒ ÁN 2 Trang 12/26
Trước khi thiết kế chúng ta cần biết sơ đồ nối dây giữa các linh kiện
Cách kết nối linh kiện:
Chân GND (chân 1) của DS18B20 và chân GND của BH1750 nối vớichân GND của Arduino
Chân Vdd (chân 3) của DS18B20 và chân Vcc của BH1750 nối với chân5V của Arduino
Chân data (chân 2) của DS18B20 nối với pin 2 của Arduino
Chân Vdd và chân Data của DS18B20 nối với nhau qua điện trở 4700(Ohm)
Chân SCL của BH1750 nối với chân analog pin 5 của Arduino
Chân SDA của BH1750 nối với chân analog pin 4 của Arduino
Chân ADD của BH1750 nối với GND của Arduino
Chân dương của động cơ nối với chân pin4 của Arduino
Chân còn lại của động cơ nối với chân GND của Arduino
Ta thấy:
Arduino sử dụng 8 chân nên ta xài Conn-sil 8 để thay thế
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 24ĐỒ ÁN 2 Trang 13/26
BH1750 sử dụng 5 chân nên ta xài Conn-sil 5 để thay thế
DS18B201 sử dụng 3 chân nên ta xài Conn-sil 3 để thay thế
Sau đó ta vào Proteus 8 chọn ISIS bắt đầu nối dây và ta có hình sau:
Hình 3-5: Liên kết linh kiện với nhau
3.4.2 Mạch thực tế
Hình 3-6: Mạch thực tế
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 25ĐỒ ÁN 2 Trang 14/26
3.5 Kết quả
Hình 3-10: Viết code trên Arduino
Hình 3-11: Kết quả hiển thị trên COM
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 26ĐỒ ÁN 2 Trang 15/26
Hình 3-12: Viết code trên Microsoft Visual Studio
Hình 3-13: Kết quả khi chạy
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 27ĐỒ ÁN 2 Trang 16/26
CHƯƠNG 4 KẾT LUẬN, ỨNG DỤNG VÀ HƯỚNG PHÁT TRIỂN
4.1 Kết luận
Ưu điểm:
Mach hoạt động đúng theo yêu cầu
Hiển thị được nhiệt độ và cường độ ánh sáng lên phần mền
Có thể điều khiển được thiết bị
Độ sai số của cảm biến thấp
Mạch nhỏ gọn, dễ chế tạo và sửa chữa
Nhược điểm:
Một phòng cần sử dụng một con Arduino UNO
Điều khiển thiết bị có thời gian trễ
Khá lãng phí khi sử dụng 1 Arduino cho 1 phòng
Cải thiện phần mềm để dễ dàng phù hợp với yêu cầu
Sử dụng thêm Modul Sim để có thể dễ dàng giám sát khi ở xa
Thêm phần Save Data ở phần mềm để lưu dữ liệu lại làm lịch sử của từng
phòng
TÀI LIỆU THAM KHẢO
Hệ thống giám sát phòng khách sạn SVTH: Nguyễn Văn B
Trang 28ĐỒ ÁN 2 Trang 17/26
Trang 29ĐỒ ÁN 2 Trang 18/26
Trang 30ĐỒ ÁN 2 Trang 19/26
void BH1750_Init(int address)
Trang 31ĐỒ ÁN 2 Trang 20/26
private SerialPort myport;
private DateTime datetime;
private string in_data;
Trang 32ĐỒ ÁN 2 Trang 21/26
private void start_btn_click(object sender, EventArgs e)
Trang 33ĐỒ ÁN 2 Trang 22/26
string time = datetime.Hour + ":" + datetime.Minute + ":" +datetime.Second;
Trang 34ĐỒ ÁN 2 Trang 23/26