Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 86 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
86
Dung lượng
3,95 MB
Nội dung
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN VIỄN THÔNG -o0o - LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC ĐIỀU KHIỂN THIẾT BỊ QUA MẠNG INTERNET GVHD: PGS.TS Hồ Văn Khương SVTH: Nguyễn Phước Hiện MSSV: 41104450 TP HỒ CHÍ MINH, THÁNG 12 NĂM 2017 MỤC LỤC LỜI CẢM ƠN TÓM TẮT LUẬN VĂN .2 Chương GIỚI THIỆU ĐỀ TÀI 1.1 Đặt vấn đề 1.2 Yêu cầu luận văn 1.3 Nội dung tìm hiểu 1.4 Kết cần đạt Chương TỔNG QUAN VỀ INTERNET VÀ TCP/IP 2.1 Mạng Internet 2.1.1 Khái niệm mạng Internet 2.1.2 Cấu trúc internet 2.1.3 Giao thức mạng Internet - giao thức IP 2.1.4 Mơ hình OSI 2.1.4.1 Tầng vật lý (Physical) 2.1.4.2 Tầng liên kết liệu (Data Link) 10 2.1.4.3 Tầng mạng (Network) 10 2.1.4.4 Tầng giao vận (Transport) 10 2.1.4.5 Tầng phiên (Session) 10 2.1.4.6 Tầng trình diễn (Presentation) 10 2.1.4.7 Tầng ứng dụng (Application) 11 2.2 Bộ giao thức TCP/IP 11 2.2.1 Tổng quan 11 2.2.1.1 Tầng liên kết 12 2.2.1.2 Tầng internet 12 2.2.1.3 Tầng giao vận 12 2.2.1.4 Tầng ứng dụng 13 2.2.2 So sánh TCP/IP với OSI 13 2.2.3 Giao thức mơ hình TCP/IP 14 2.2.3.1 Internet Protocol – IP 14 2.2.3.2 Transmission Control Protocol - TCP 15 2.2.3.3 User Datagram Protocol - UDP 17 2.2.3.4 Internet control message protocol – ICMP 18 2.2.3.5 Giao thức phân giải địa - ARP 19 2.2.3.6 Giao thức phân giải địa - RARP 20 Chương TỔNG QUAN VỀ MẠNG ZIGBEE 21 3.1 Giới thiệu giao thức truyền thông không dây 21 3.1.1 Personal area network (PAN) 21 3.1.2 Local area network (LAN) 21 3.1.3 Metropolitan area network (MAN) 22 3.1.4 Wide area network (WAN) 22 3.2 Giao thức Zigbee 23 3.2.1 Giới thiệu 23 3.2.2 Chuẩn truyền thông không dây IEEE 802.15.4 23 3.2.3 Cấu trúc giao thức Zigbee 24 3.2.4 Thành phần mạng Zigbee 25 3.2.5 Mơ hình mạng Zigbee 26 3.2.5.1 Mạng mắt lưới (mesh) 27 3.2.5.2 Mạng hình (star) 27 3.2.5.3 Mạng hình (cluster tree) 28 3.3 Mơ hình giao thức Zigbee/IEEE 802.15.4 28 3.3.1 Tầng vật lý 29 3.3.2 Tầng điều khiển liệu 29 3.3.3 Tầng mạng 30 3.3.4 Tầng ứng dụng 30 Chương CƠ SỞ DỮ LIỆU MYSQL VÀ RESTFUL WEB SERVICE 32 4.1 Cơ sở liệu MySQL 32 4.1.1 Giới thiệu 32 4.1.2 Tiến trình kết nối ODBC 32 4.1.3 Kết hợp PHP MySQL 33 4.1.4 Định danh phân quyền 35 4.1.4.1 Định danh 35 4.1.4.2 Phân quyền MySQL 35 4.1.5 Cơ sở liệu phpMyAdmin 36 Giao diện phpMyAdmin 36 4.2 RESTful web sevice 40 4.2.1 Giới thiệu 40 4.2.2 Quy tắc để cài đặt RESTful web service 40 4.2.2.1 Sử dụng phương thức HTTP cách rõ ràng 40 4.2.2.2 Phi trạng thái 42 4.2.2.3 Cấu trúc thư mục URI 42 4.2.2.4 Chuyển đổi XML, JSON hai 42 Chương THIẾT KẾ VÀ THI CÔNG PHẦN CỨNG 44 5.1 Yêu cầu thiết kế 44 5.2 Phương hướng thiết kế 44 5.3 Các module sử dụng 45 5.3.1 Module wifi ESP8266 45 5.3.1.1 Tổng quan 45 5.3.1.2 Cấu hình thiết bị 47 5.3.2 Module DRF1605H 50 5.3.2.1 Tổng quan 50 5.3.2.2 Cấu hình thiết bị 51 5.4 Thiết kế mạch điều khiẻn 55 5.4.1 Sơ đồ mạch tổng quát 55 5.4.2 Sơ đồ mạch nguồn 56 5.4.3 Sơ đồ kết nối vi xử lý 57 5.4.4 Sơ đồ chân nạp, thạch anh reset cho pic 59 5.4.5 Sơ đồ mạch điều khiển relay 60 5.4.6 Khối ESP8266 60 5.4.7 Khối Zigbee DRF1605H 61 5.5 Mạch in 62 Chương THIẾT KẾ VÀ THI CÔNG PHẦN MỀM 63 6.1 Yêu cầu thiết kế 63 6.2 Phương pháp thực 63 6.3 Sơ đồ giải thuật 64 6.3.1 Mạch điều khiển Coordinator 64 6.3.2 Mạch điều khiển Router 65 6.3.3 Các hàm sử dụng PHP lấy liệu cho mạch điều khiển 66 Chương KẾT QUẢ THỰC TẾ 67 7.1 Phần cứng 67 7.2 Phần mềm 68 7.3 Ứng dụng vào thiết bị thực tế 69 7.4 Quy trình hoạt động .70 7.5 Nội dung đạt 72 7.6 Nội dung chưa đạt 73 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 74 TÀI LIỆU THAM KHẢO 75 DANH MỤC HÌNH VẼ Hình 2.1-1: Cấu trúc mạng internet Hình 2.1-2: Internet góc nhìn người sử dụng .6 Hình 2.1-3: Cấu trúc IP datagram .7 Hình 2.1-4: Mơ hình OSI Hình 2.2-1: Mơ hình TCP/IP .12 Hình 2.2-2: Sự khác TCP/IP với OSI .13 Hình 2.2-3: cấu trúc gói tin giao thức IP 14 Hình 2.2-4: Cấu trúc gói tin TCP 16 Hình 2.2-5: Qua trình hủy kết nối TCP 17 Hình 2.2-6: cấu trúc gói tin UDP 18 Hình 2.2-7: Hoạt động ARP 20 Hình 2.2-8: Hoạt động RARP .20 Hình 3.1-1: Các nhóm truyền thơng khơng dây 21 Hình 3.2-1: Băng tần hệ thống mạng Zigbee .24 Hình 3.2-2: cấu trúc giao thức Zigbee 25 Hình 3.2-3: Cấu trúc liên mạng mạng Zigbee 26 Hình 3.2-4: Cấu trúc mạng mắt lưới Zigbee 27 Hình 3.2-5: Cấu trúc mạng hình Zigbee .27 Hình 3.2-6: Cấu trúc mạng hình Zigbee 28 Hình 3.3-1: Mơ hình giao thức Zigbee 29 Hình 4.1-1: PHP kết hợp MySQL 34 Hình 4.1-2: Giao diện quản lý phpMyAdmin 37 Hình 4.1-3: Thơng tin Database Server 37 Hình 4.1-4: Các mục giao diện quản lý phpMyAdmin 37 Hình 4.1-5: Mục Browse phpMyAdmin .38 Hình 4.1-6: Mục Structure phpMyAdmin .38 Hình 4.2-1: sử dụng sai phương thức HTTP .41 Hình 4.2-2: sử dụng phương thức HTTP 41 Hình 4.2-3: minh họa URI RESTul web service 42 Hình 5.3-1: Module ESP8266 45 Hình 5.3-2: Sơ đồ mạch module ESP826 46 Hình 5.3-3: Module Zigbee DRF1605H 50 Hin ̀ h 5.3-4: Các chân DRF1605H 51 Hin ̀ h 5.4-1: Sơ đồ mạch điều khiển .55 Hin ̀ h 5.4-2: Sơ đồ mạch nguồn 56 Hin ̀ h 5.4-3: Sơ đồ két nối dsPic30F4013 57 Hình 5.4-4: Mạch thạch anh, reset chân nạp cho Pic 59 Hình 5.4-5: Sơ đồ mạch relay 60 Hình 5.4-6: Sơ đồ mạch ESP8266 .60 Hin ̀ h 5.4-7: Sơ đồ mạch DRF1605H .61 Hin ̀ h 5.5-1: Mạch in mạch điều khiển - Router 62 Hin ̀ h 5.5-2: Mạch in mạch điều khiển - Coordinator 62 Hin ̀ h 6.3-1: Sơ đồ giải thuật mạch điều khiển Coordinator 64 Hình 6.3-2: Sơ đồ giải thuật mạch điều khiển Router 65 Hình 6.3-3: Sơ đồ giải thuật cho hàm xử lý dùng Restful 66 Hình 7.1-1: Mạch điều khiển – Router 67 Hin ̀ h 7.1-2: Mạch điều khiển – Coordinator 67 Hình 7.2-1: Giao diện bảo mật 68 Hình 7.2-2: Giao diện quản lý 68 Hin ̀ h 7.3-1: Các relay trạng thái ngắt 69 Hin ̀ h 7.3-2: Các relay trạng thái đóng 69 Hin ̀ h 7.4-1: SQL Server liệu quản lý người dùng 70 Hin ̀ h 7.4-2: SQL Server lưu liệu .70 Hình 7.4-3: Thông tin lấy từ server 71 Hình 7.4-4: Chế độ truyền transparent data 72 DANH MỤC BẢNG Bảng 2.2-1: Thông điệp ICMP 19 Bảng 4.1-1: Bảng định danh MySQL 35 Bảng 4.1-2: Lệnh thường dùng với phpMySQL 39 Bảng 5.3-1: Bảng kết nối ESP8266 .47 Bảng 5.3-2: Tập lệnh AT cho ESP8266 49 Bảng 5.3-3: Một số lệnh điều khiển DRF1605H 54 Bảng 5.4-1: Tính chất điện áp ic LM2576T 56 Bảng 5.4-2: Tính chất điện áp ic ASM1117 56 Bảng 5.4-3: Kết nối vi xử lý Pic 58 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 5.5 Mạch in Hiǹ h 5.5-1: Mạch in mạch điều khiển - Router Hiǹ h 5.5-2: Mạch in mạch điều khiển - Coordinator 62 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương Chương THIẾT KẾ VÀ THI CÔNG PHẦN MỀM 6.1 Yêu cầu thiết kế Để thiết bị phần cứng hoạt động, cần lập trình phần mềm tương ứng tạo giao diện quản lý cho hệ thống Để đáp ứng điều cần thực yêu cầu sau: Lập trình cho vi xử lý PIC nhận, gửi xử lý tín hiệu, giao tiếp tốt với mạch wifi ESP8266 mạch zigbee DRF1605H Tạo sở liệu lưu trữ thông tin Tạo hàm để xử lý liệu Tạo website quản lý thiết bị 6.2 Phương pháp thực Để đáp ứng yêu cầu thiết kế ta sử dụng chương trình biên dịch, thiết kế khác em xin chọn ngơn ngữ lập trình ứng dụng quen thuộc sau: Sử dụng chương trình biên dịch PIC C để lập trình cho vi xử lý PIC Sử dụng sở liệu web với chương trình hỗ trợ PHPMyAdmin Sử dụng ngơn ngữ lập trình PHP tạo hàm xử lý liệu phục vụ cho giao tiếp với thiết bị PIC, điện thoại thơng minh, máy tính bảng Kết hợp HTML PHP tạo giao diện quản lý website 63 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 6.3 Sơ đồ giải thuật 6.3.1 Mạch điều khiển Coordinator Hiǹ h 6.3-1: Sơ đồ giải thuật mạch điều khiển Coordinator 64 Luận văn tốt nghiệp 6.3.2 GVHD: PGS.TS Hồ Văn Khương Mạch điều khiển Router Hiǹ h 6.3-2: Sơ đồ giải thuật mạch điều khiển Router 65 Luận văn tốt nghiệp 6.3.3 GVHD: PGS.TS Hồ Văn Khương Các hàm sử dụng PHP lấy liệu cho mạch điều khiển Hình 6.3-3: Sơ đồ giải thuật cho hàm xử lý dùng Restful 66 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương Chương KẾT QUẢ THỰC TẾ 7.1 Phần cứng Hình 7.1-1: Mạch điều khiển – Router Hình 7.1-2: Mạch điều khiển – Coordinator 67 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 7.2 Phần mềm Hin ̀ h 7.2-1: Giao diện bảo mật Hình 7.2-2: Giao diện quản lý 68 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 7.3 Ứng dụng vào thiết bị thực tế Hình 7.3-1: Các relay trạng thái ngắt Hình 7.3-2: Các relay trạng thái đóng 69 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 7.4 Quy trình hoạt động Nơi lưu liệu trung gian MySQL Server quản lý công cụ phpMyAdmin Hiǹ h 7.4-1: SQL Server liệu quản lý người dùng Hình 7.4-2: SQL Server lưu liệu Khi click vào nút bấm giao diện quản lý gọi hàm ghi liệu lên SQL biết main_id sub_id Main_id: mã số nhận diện cho mạch điều khiển - Coordinator Sub_id: mã số nhận diện cho mạch điều khiển - Router 70 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương Do thiết kế mạch em sử làm mạch điều khiển – Coordinator có ln việc điều khiển relay nên mạch điều khiển – Coordinator có main_id sub_id Sử dụng main_id cho biết thiết bị quản lý mạng zigbee Khi thiết bị điều khiển lấy thông tin SQL server cần sử dụng main_id Các cột stt1, stt2, stt3, stt4 chứa giá trị tương ứng với việc đóng, ngắt relay (0 ngắt, đóng) Mạch điều khiển - Coordinator thông qua kết nối wifi module ESP8266 kết nối vào mạng internet, gửi yêu cầu lấy liệu server 2s lần Dữ liệu trả dạng JSON {"id":"R0001","stt1":"0","stt2":"1","stt3":"1","stt4":"0"} {"id":"R0002","stt1":"1","stt2":"1","stt3":"1","stt4":"1"} Hình 7.4-3: Thông tin lấy từ server Tiếp theo dựa vào chuỗi json nhận được, dsPic40F4013 phân tích chuỗi lấy thơng tin theo giá trị ID Mỗi lần lấy thông tin vi xử lý so sánh liệu nhận với liệu cũ Nếu liệu thay đổi gửi liệu vào mạng Zigbee, khơng có thay đổi lại tiếp tục yêu cầu lấy thông tin từ SQL server Trong mạng zigbee hoạt động chế độ Transparent Data Transmission: Khi Coordinator nhận tín hiệu từ cổng nối tiếp nó, gửi thơng tin tồn nodes mạng nên tất Router nhận thông tin từ Coordinator 71 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương Ngược lại, Router gửi tự động gửi tới Coordinator, Router khơng nhận gói tin từ Router khác Hiǹ h 7.4-4: Chế độ truyền transparent data 7.5 Nội dung đạt Đã giao tiếp thành công thiết bị với Vi xử lý với ESP8266, DRF1605H, liên lạc lấy gửi liệu tới server thành công Mạng Zigbee hoạt động ổn định, truyền tốt mạng Thiết kế giao diện web, đơn giản trực quan dễ sử dụng Thiết kế giao diện bảo mật cho web quản lý điều khiển Thiết lập server web hàm xử lý thông tin tốt, không gây lỗi Các relay điều khiển bật/tắt hầu hết thiết bị gia dụng (yêu cầu sử dụng 220V dòng điện nhỏ 7A) Mạch điều khiển hoạt động ổn định, khơng nóng, hao điện cần cấp nguồn sạc điện thoại (5V-1A) hoạt động liên tục 72 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 7.6 Nội dung chưa đạt Giao diện web đơn giản, chưa có hệ thống phân chia thiết bị, hệ thống quản lý cho nhiều người sử dụng Dữ liệu nhận qua internet đơi có gói Trong mạng zigbee truyền gói tin khơng đủ Hệ thống có chậm trễ 3-5s phải truyền thông tin qua mạng internet chu kỳ lấy liệu vi xử lý 2s 73 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Sau thiết kế, thi công kiểm nghiệm lại kết quả, mạch chạy ổn định Chúng ta nơi miễn có kết nối internet điều khiển thiết bị Có thể ứng dụng đề tài vào thực tế ngay, nhiên cần thiết kế thu gọn lại mạch điều khiển, phân loại loại mạch điều khiển, thu thập thông tin, giám sát, báo động,… để thành lập hệ thống quản lý cho nhiều người sử dụng Ngồi ra, phát triển ứng dụng di động tương tác với SQL server để điều khiển thiết bị làm tăng tính tiện dụng cho sống Chỉ với thiết bị cầm tay có kết nối internet quản lý thiết bị điện xung quanh Qua việc thực luận văn giúp em có thêm kiến thức nhiều lĩnh vực khác là: lập trình web, lập trình vi xử lý, thiết lập SQL Server, hiểu thêm giao thức TCP, UDP, IP, có hiểu biết chuẩn IEEE Ethernet 802.3, Wifi 802.11, Zigbee 802.15.4,… Cuối em xin chân thành cảm ơn thầy Hồ Văn Khương giúp đỡ em tìm hiểu hoàn thành luận văn tốt nghiệp 74 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương TÀI LIỆU THAM KHẢO James F Kurose and Keith W.Ross Computer Networking – A Top-Down Approach (5th edition).[ONLINE] Shahin Farahani ZigBee Wireless Networks and Transceiver.[ONLINE] AdamEngst and GlennFleishman The Wireless Networking Starter Kit.(2nd edition).[ONLINE] https://viblo.asia/p/tim-hieu-ve-restful-web-service-OEqGj5JNM9bL https://www.ibm.com/developerworks/webservices/library/ws-restful/ http://fit.mta.edu.vn/files/DanhSach/LTMANGC6%20TCPIP(201210302340 ).pdf https://en.wikipedia.org/wiki/Internet https://vi.wikipedia.org/wiki/TCP/IP Hồ Trung Mỹ, VI XỬ LÝ, Nhà xuất Đại học Quốc gia 10 Đặng Thành Tín, HỆ THỐNG MÁY TÍNH VÀ NGÔN NGỮ C Nhà xuất Đại Học Quốc Gia,2010 11 Microchip.PIC16F87XA Datasheet [ONLINE] http://www.microchip.com/wwwproducts/Devices.aspx?product=PIC16F877 A 12 Microchip dsPIC30F3014/4013 Data Sheet [ONLINE] http://www.microchip.com/wwwproducts/Devices.aspx?product=dsPIC30F4 013 13 [ONLINE] https://secure.php.net/manual/en/ 14 [ONLINE].http://hocwebchuan.com/ 15 [ONLINE].https://primalcortex.wordpress.com/2015/02/19/esp8266-loggingdata-in-a-mysql-database/ 16 [ONLINE].http://smart-techvn.com/7225-huong-dan-test-module-wifiesp8266-voi-may-tinh-phan-1.html 17 [ONLINE].http://smart-techvn.com/7225-huong-dan-test-module-wifiesp8266-voi-may-tinh-phan-2.html 75 Luận văn tốt nghiệp GVHD: PGS.TS Hồ Văn Khương 18 [ONLINE].http://myclass.vn/khoa-hoc/khoa-hoc-php-can-ban/ 19 [ONLINE].http://vietjack.com/sql/index.jsp 20 [ONLINE] http://freetuts.net/json-la-gi-cau-truc-chuoi-json-236.html 21 [ONLINE] http://blog.huntgang.com/2015/01/20/arduino-esp8266-tutorialweb-server-monitor-example/ 22 [ONLINE] http://www.ccsinfo.com/downloads.php#manuals 23 Nguyễn Sỹ Hậu Giáo trình hướng dẫn thiết kế mạch điện tử với Altium Designer v1.0.[ONLINE] http://www.slideshare.net/Syhaunguyen/gio-trnhhng-dn-thit-k-mch-in-t-vi-altium-designer-v10 24 Sharp.Opto PC817 datasheet.[ONLINE] 25 YLE.Relay5V-7A datasheet.[ONLINE] 76 ... tần hệ thống mạng Zigbee .24 Hình 3.2-2: cấu trúc giao thức Zigbee 25 Hình 3.2-3: Cấu trúc liên mạng mạng Zigbee 26 Hình 3.2-4: Cấu trúc mạng mắt lưới Zigbee 27 Hình... Chương 3: Tổng quan mạng Zigbee o Chương 4: Cơ sở liệu MySQL RESTful web service Phần 2: Thiết kế thi công o Chương 5: Thiết kế thi công phần cứng o Chương 6: Thiết kế thi công phần mêm o Chương... lưới Zigbee 27 Hình 3.2-5: Cấu trúc mạng hình Zigbee .27 Hình 3.2-6: Cấu trúc mạng hình Zigbee 28 Hình 3.3-1: Mơ hình giao thức Zigbee 29 Hình 4.1-1: PHP kết hợp MySQL