Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 108 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
108
Dung lượng
4,09 MB
Nội dung
TR NG B B GIÁO D C & ÀO T O I H C S PH M K THU T TP H CHệ MINH KHOA I N ậ I N T MỌN I N T CỌNG NGHI P ậ Y SINH - ÁN T T NGHI P NGÀNH CỌNG NGH K THU T I N T TRUY N THỌNG TÀI: THI T K VÀ THI CỌNG MƠ HÌNH I U KHI N THI T B I N GVHD: ThS Nguy n ình Phú SVTH: Nguy n Tri Ph Võ Duy Tâm Tp H Chí Minh ậ 7/2019 ng 14141238 14141276 TR NG B B GIÁO D C & ÀO T O I H C S PH M K THU T TP H CHệ MINH KHOA I N ậ I N T MỌN I N T CỌNG NGHI P ậ Y SINH - ÁN T T NGHI P NGÀNH K THU T I N T TRUY N THÔNG TÀI: THI T K VÀ THI CƠNG MƠ HÌNH I U KHI N THI T B I N GVHD: ThS Nguy n ình Phú SVTH: Nguy n Tri Ph Võ Duy Tâm Tp H Chí Minh ậ 7/2019 ng 14141238 14141276 TR C NG HÒA XÃ H I CH NGH A VI T NAM NG H SPKT TP H CHệ MINH KHOA I N- I N T B MỌN I N T CL P-T CỌNG NGHI P ậ Y SINH DO - H NH PHÚC o0o -Tp HCM, ngày 28 tháng n m 2019 NHI M V H tên sinh viên: Chuyên ngành: Nguy n Tri Ph ng MSSV: 14141238 Võ Duy Tâm MSSV: 14141276 Công ngh k thu t n t truy n thông Mã ngành: 141 H đƠo t o: i h c quy Khóa: I TểN ÁN T T NGHI P Mư h : L p: 14141DT 2014 TÀI: THI T K VÀ THI CỌNG MƠ HÌNH I U KHI N THI T B I N II NHI M V : Các s li u ban đ u - Nguy n ình Phú, Giáo trình Vi u n, Tr ng H S Ph m K Thu t Tp H Chí Minh - Tr n Thu HƠ ậ Tr ng Th Bích Ngà ậ Nguy n Th L ậ Phù Th Ng c Hi u ậ D ng ậ Bùi Th Tuy t an ng Th C m Tú, Giáo trình i n t c b n, Nhà xu t b n H Qu c gia Tp H Chí Minh - Nguy n ình Phú ậ Nguy n Tr ng Duy, Giáo trình K thu t s , NhƠ xu t b n H Qu c gia Tp H Chí Minh N i dung th c hi n - i u n vƠ giám sát thi t b thông qua Internet - Thi t k giao di n ng d ng, Web Server - Thi công m ch vƠ mơ hình - Cơn ch nh h th ng - ánh giá k t qu th c hi n i - Vi t báo cáo - Báo cáo đ tƠi III NGÀY GIAO NHI M V : 18/02/2019 IV NGÀY HOÀN THÀNH NHI M V : 30/06/2019 V H VÀ TểN CÁN B H ThS Nguy n ình Phú CÁN B H NG D N NG D N: BM I N T CỌNG NGHI P ậ Y SINH ii TR C NG HÒA XÃ H I CH NGH A VI T NAM NG H SPKT TP H CHệ MINH KHOA I N- I N T B MỌN I N T CL P-T CỌNG NGHI P ậ Y SINH DO - H NH PHÚC o0o -Tp.HCM, ngày 28 tháng n m 2019 L CH TRÌNH TH C HI N H tên sinh viên 1: Nguy n Tri Ph ÁN T T NGHI P ng L p: 14141DT1B MSSV: 14141238 H tên sinh viên 2: Võ Duy Tâm L p: 14141DT2C MSSV: 14141276 Tên đ tƠi: Tểi t Ệ thi cơng mơ hình u Ệểi n tểi t b n Tu n/nỂày N i ếung Tu n G p GVHD đ trao đ i v đ tƠi đ án, ti n hƠnh ch n đ tƠi (18/2 ậ 24/2) Tu n (25/2 ậ 3/3) Tu n (4/3 ậ 10/3) Tu n (11/3 ậ 17/3) Tu n (18/3 ậ 24/3) Tu n (25/3 ậ 31/3) Tu n (1/4 ậ 7/4) XáẾ nể n GVHD Tìm hi u đ tƠi có liên quan Báo cáo h Vi t đ c ng th c hi n đ tƠi v i GVHD ng chi ti t, l ch trình th c hi n Thi t k s đ kh i, s đ nguyên lý L a ch n linh ki n Tìm hi u module Wifi ESP32 Báo cáo ti n đ cho GVHD L p trình cho ESP32 u n Led đ n Tìm hi u h u hƠnh Android, Web Server iii Tu n (8/4 ậ 14/4) Tu n (15/4 ậ 21/4) Tu n 10, 11 (22/4 ậ 5/5) Tu n 12 (6/5 ậ 12/5) Tu n 13 (13/5 ậ 19/5) Tu n 14 (20/5 ậ 26/5) Tu n 15 (27/5 ậ 2/6) Tu n 16, 17 (3/6 ậ 16/6) Thi t k ng d ng, giao di n Web L p trình ESP32 u n đ c thi t b n Báo cáo ti n đ cho GVHD T ng h p ch ng trình, giao ti p gi a module u n, truy n nh n d li u qua Internet Ti n hƠnh v vƠ thi công m ch ph n c ng Ti n hƠnh v vƠ thi công m ch ph n c ng Thi cơng mơ hình Vi t báo cáo HoƠn thƠnh m ch, mơ hình Ki m tra ho t đ ng h th ng Vi t báo cáo HoƠn thi n báo cáo vƠ mơ hình GV H NG D N (Ký vƠ ghi rõ h vƠ tên) iv L I CAM OAN Chúng xin cam k t khóa lu n t t nghi p nƠy lƠ đ tài chúng tơi nghiên c u vƠ th c hi n Chúng ch d a mà khơng chép t b t kì tƠi li u hay cơng trình đư đ c th c hi n tr c N u có b t k vi ph m nƠo, chúng tơi xin hồn tồn ch u trách nhi m Ng i th c hi n Nguy n Tri Ph ng Võ Duy Tâm v L IC M N Chúng em xin chân thành g i l i c m n sơu s c đ n Th y Nguy n Trong su t trình th c hi n đ tƠi nƠy, Th y lƠ ng ình Phú i đ ng hƠnh chúng em v i s ch d n t n tình, nh ng l i góp ý nh n xét vƠ nh ng kinh nghi m quý báu đ c Th y truy n đ t l i đư t o u ki n thu n l i đ chúng em hoƠn thƠnh t t đ tƠi Chúng em xin c m n đ n Th y, Cô khoa i nậ i n t đư gi ng d y cho chúng em nh ng ki n th c n n t ng đ chúng em có ti n đ th c thi n đ tƠi C m n cha m đư t o u ki n t t nh t, lƠ đ ng l c m nh m đ hoƠn thƠnh khóa lu n nƠy Xin chơn thƠnh c m n Ng i th c hi n Nguy n Tri Ph ng Võ Duy Tâm vi M CL C NHI M V ÁN T T NGHI P i L CH TRỊNH TH C HI N ÁN T T NGHI P iii L I CAM OAN .v L I C M N vi M C L C vii LI T Kể HỊNH xii LI T Kể B NG .xv TịM T T xvi Ch ng T NG QUAN 1.1 TV N 1.2 M C TIểU TÀI 1.3 N I DUNG NGHIểN C U 1.4 GI I H N .2 1.5 B C C Ch ng 2: C S Lụ THUY T 2.1 S D NG THI T B I N DỂN D NG 2.2 T NG QUAN V INTERNET OF THINGS .4 2.2.1 Gi i thi u .4 2.2.2 L ch s hình thành .6 2.2.3 ng d ng c a IoT 2.3 CỌNG NGH WIFI 10 2.3.1 Gi i thi u 10 2.3.2 Công ngh truy n nh n d li u 10 2.3.3 ThƠnh ph n c a m ng Wifi .11 2.3.4 C u trúc liên k t 11 2.3.5 Hotspot 12 vii 2.3.6 Cách th c ho t đ ng 12 2.3.7 Giao ti p Wifi 13 2.3.8 u nh c m 14 2.3.9 B o m t 14 2.4 H I U HÀNH ANDROID .14 2.4.1 Gi i thi u 14 2.4.2 L ch s .15 2.4.3 Tính n ng 15 2.4.4 Ki n trúc c b n 16 2.4.5 Thành ph n c a ng d ng Android 17 2.4.6 u nh c m 18 2.5 GIAO TH C MQTT 19 2.5.1 Gi i thi u 19 2.5.2 L ch s .19 2.5.3 ThƠnh ph n c a MQTT .20 2.5.4 MQTT QoS 21 2.5.5 Broker IoT 21 2.5.6 u m .22 2.5.7 B o m t 22 2.6 GI I THI U NODE ậ RED 22 2.6.1 Gi i thi u 22 2.6.2 Node ậ RED IoT 23 2.6.3 Tính n ng 24 2.7 GI I THI U PH N C NG .25 2.7.1 Gi i thi u chip Wifi ESP32 .25 2.7.1.1 T ng quan ESP32 25 2.7.1.2 c m 27 viii CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ Ch ng K T QU , NH N XÉT VÀ ÁNH GIÁ 5.1 GI I THI U Sau th i gian 17 tu n th c hi n đ tƠi, qua trình nghiên c u vƠ tìm hi u nhóm đư h c h i đ c nhi u ki n th c m i, công ngh m i ng th i áp d ng đ c nhi u lý thuy t vƠo d án th c t 5.2 K T QU T C Board ESP32-DevKitC lƠ m ch u n h th ng Nhóm đư bi t cách ng d ng ch c n ng tích h p Wifi board đ phát tri n h th ng u n thi t b t xa T n m đ c b n ch t u n, đ có th m r ng cho ng d ng IoT sau nƠy, u n đ c m t h th ng l n Thơng qua đ tƠi nhóm đư bi t cách u n vƠ giám sát thi t b qua Internet (Wifi) ng th i thi t k đ n T t c đ u đ c giao di n Web, ng d ng Android cho h th ng u c l u tr t i d ch v l u tr Cloud MQTT tƠi có s d ng c m bi n đo nhi t đ , đ m, qua nhóm bi t đ c c u t o, nguyên lý ho t đ ng c ng nh cách s d ng c m bi n C m bi n nƠy r t ph bi n, thích h p cho vi c giám sát nhi t đ , đ m h th ng nh 5.3 K T QU TH C NGHI M 5.3.1 Mơ hình Hình 5.1 Mơ hình h th ng đ B MỌN I N T c c p ngu n 220VAC CỌNG NGHI P ậ Y SINH 76 CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ 5.3.2 i u n vƠ giám sát thi t b , c m bi n qua Web Server • i u n Giao di n mƠn hình u n t t c thi t b t t: Hình 5.2 Các thi t b ch a đ c b t mƠn hình u n Giao di n mƠn hình u n t t c thi t b đ Hình 5.3 Các thi t b đ B MỌN I N T c b t: c b t mƠn hình u n CỌNG NGHI P ậ Y SINH 77 CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ • Giám sát Hình 5.4 Nhi t đ vƠ đ m b u n hi n th giao di n Web Hình 5.5 Tr ng thái thi t b đ B MỌN I N T c giám sát Cloud MQTT CỌNG NGHI P ậ Y SINH 78 CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ 5.3.3 i u n giám sát thi t b , c m bi n qua ng d ng Android Giao di n mƠn hình u n thi t b t t, đ đ ,đ c b t vƠ giá tr c a nhi t m Hình 5.6 Giao di n ng d ng Android thi t b t t, b t vƠ giá tr c m bi n Hình 5.7 Mơ hình b t thi t b B MỌN I N T CỌNG NGHI P ậ Y SINH 79 CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ 5.4 NH N XÉT VÀ ÁNH GIÁ 5.4.1 Nh n xét Sau 17 tu n th c hi n, nhóm đư hoƠn thƠnh h th ng đáp ng c b n nh ng yêu c u ban đ u đ t ra, d i đơy lƠ m t s nh n xét u m • - H th ng ho t đ ng n đ nh qua nhi u l n th nghi m - ng b tr ng thái u n t mơ hình h th ng, ng d ng Android, giao di n Web vƠ Server - Giám sát đ c l ch s u n thi t b - Giám sát đ c nhi t đ vƠ đ - T c đ u n t m c a b u n ng đ i nhanh - Giao di n u n tr c quan, đ p m t - D dƠng s d ng, l p đ t vƠ b o d • Nh ng c m - H th ng ph thu c vƠo t c đ m ng Wifi, vƠ s n đ nh c a Server Cloud MQTT - Ch a tích h p nhi u tính n ng thƠnh m t h th ng IoT hoƠn ch nh 5.4.2 ánh giá Trong trình v n hƠnh h th ng, nhóm đư ghi nh n l i k t qu đ c t ng h p B ng 5.1: S li u th c nghi m Công vi c i u n thi t b S l n thao S l n thƠnh Th i gian đáp ánh giá tác công ng 50 48 ậ giây t 50 48 ậ giây t 50 48 ậ giây t 10 giây t qua ng d ng i u n thi t b qua giao di n Web C p nh t tr ng thái thi t b Giám sát c m bi n n đ nh n đ nh ánh giá chung B MỌN I N T CỌNG NGHI P ậ Y SINH t 80 CH NG K T QU , NH N XÉT VÀ ÁNH GIÁ Qua nh ng s li u đ b n đư đáp ng đ c th ng kê b ng trên, nhóm đánh giá h th ng v c c m c tiêu đ t H th ng ho t đ ng n đ nh sau nhi u l n ch y, ki m tra th nhi u tr ng h p Mô hình nh g n, th m m , nh ng v n đ m b o tính an toƠn cao, d dƠng l p đ t vƠ s d ng Nh ng đ đ a h th ng nƠy áp d ng vƠo th c t nhóm c n ph i hoƠn thi n m t s ph n nh sau: t ng t c đ u n c ng nh ph n h i, t i u hóa mơ hình, thêm m t s ch c n ng nh : giám sát n i u n, c nh báo ch ng tr m, báo cháy, ầ B MỌN I N T CỌNG NGHI P ậ Y SINH 81 CH NG K T LU N VÀ H Ch NG PHÁT TRI N ng K T LU N VÀ H NG PHÁT TRI N 6.1 K T LU N Qua trình th c hi n nhóm đư hoƠn thƠnh đ tƠi đáp ng đ c nh ng yêu c u ban đ u đ t u m 6.1.1 - M ch u n nh g n, ho t đ ng n đ nh, th i gian đáp ng nhanh - Giao di n u n vƠ giám sát d s d ng, thơn thi n ng i dùng - Có Server qu n lý vƠ l u tr d li u - Mơ hình h th ng có tính th m m cao, đ xác, tính an toƠn vƠ d dƠng thao tác v i ng i dùng - Phù h p cho h th ng n phòng h c, h gia đình 6.1.2 Khuy t m - H p mơ hình mang tính t ng tr ng - H th ng ph thu c vƠo ngu n n 220VAC, vƠ t c đ truy c p m ng Internet - S d ng d ch v Server, nên h n ch v s n đ nh - Gi i h n v th i gian, ki n th c nên h th ng ch a đ c t i u Nhìn chung h th ng u n v c b n ho t đ ng t t 6.2 H NG PHÁT TRI N H th ng hi n t i đư đáp ng đ c vi c u n thi t b Trong q trình th c hi n, nhóm th y r ng đ tƠi nƠy r t ph bi n, có tính ng d ng r t cao nhi u d án th c t Vì v y nhóm đ a m t s đ xu t nh m c i ti n vƠ nơng c p h th ng: - M r ng s l ng c ng nh công su t thi t b u n - Giám sát n i u n b ng camera, c nh báo ch ng tr m, báo cháy - i u ch nh đ sáng đèn, t c đ qu t, nhi t đ u hòa, ầ - Thi t l p h th ng u n thi t b t đ ng nh m t i u hóa vi c s d ng vƠ ti t ki m n n ng - B ng d ng đ tƠi vƠo h th ng th c t MỌN I N T CỌNG NGHI P ậ Y SINH 82 TÀI LI U THAM KH O TÀI LI U THAM KH O ❖ Sách tham kh o [1] Nguy n ình Phú, Giáo trình Vi u n PIC, NhƠ xu t b n H Qu c gia Tp H Chí Minh, 8/2016 [2] Nguy n ình Phú ậ Nguy n Tr ng Duy, Giáo trình K thu t s , NhƠ xu t b n H Qu c gia Tp H Chí Minh [3] Tr n Thu HƠ ậ Tr ng Th Bích NgƠ ậ Nguy n Th L ậ Phù Th Ng c Hi u ậ D ng ậ Bùi Th Tuy t an ng Th C m Tú, Giáo trình i n t c b n, NhƠ xu t b n H Qu c gia Tp H Chí Minh ❖ Website tham kh o [1] stackoverflow.com [2] ắH c IoT c b n”, hocarm.org [3] H th ng giao ti p v i IoT, ắReal Time Data Transfer for IoT with MQTT, Android and NodeMCU”, Medium.com, 11/2018 [4] Giao th c MQTT, ắMQTT Protocol”, 1sheeld.com, 7/2018 [5] Gi i thi u Android, ắLearn Android”, tutorialspoint.com/android [6] ESP32, ắESP32: Connecting to a WiFi network”, techtutorialsx.com, 4/2017 [7] Datasheet: ESP32: https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pd f ESP32-WOOM-32: https://www.espressif.com/sites/default/files/documentation/esp32-wroom32_datasheet_en.pdf B MỌN I N T CỌNG NGHI P ậ Y SINH 83 PH L C PH L C SOURCE CODE Ch ng trình u n Hàm main #include #include #include #include #include "InfoWifiMQTT.h" "configDHT.h" "configHardware.h" "configMQTT.h" unsigned long lastMillis = 0; void setup() { SetupHardware(); SetupMQTT(); SetupDHT(); } void loop() { ClientLoop(); // publish a message roughly every second if (millis() - lastMillis > 10000) { lastMillis = millis(); float temp = ReadTemp(); float humi = ReadHumi(); MQTTPublish(TOPIC_PUB_TEMP,String(temp)); MQTTPublish(TOPIC_PUB_HUMI,String(humi)); } } File Header //C u hình thơng tin thi t l p Server: #include #define NAME_WIFI_1 "NgocDiem" #define PASS_WIFI_1 "0979677439" B MỌN I N T CỌNG NGHI P ậ Y SINH 84 PH L C #define NAME_WIFI_2 "Phuong's phuong" #define PASS_WIFI_2 "pianoviolin" #define NAME_WIFI_3 "Tam" #define PASS_WIFI_3 "123456" #define HOST_NAME "m12.cloudmqtt.com" #define PORT 19950 #define CLIENT_ID "calib" #define USER_NAME "njiexcgi" #define PASS_MQTT "t42k_aJXkDGY" #define #define #define #define TOPIC_SUB_LIGHT_1 TOPIC_SUB_LIGHT_2 TOPIC_SUB_LIGHT_3 TOPIC_SUB_LIGHT_4 "cmd1" "cmd2" "cmd3" "cmd4" #define #define #define #define TOPIC_PUB_LIGHT_1 TOPIC_PUB_LIGHT_2 TOPIC_PUB_LIGHT_3 TOPIC_PUB_LIGHT_4 "status1" "status2" "status3" "status4" #define TOPIC_PUB_STATUS_ON "on" #define TOPIC_PUB_STATUS_OFF "off" #define TOPIC_PUB_TEMP "temp" #define TOPIC_PUB_HUMI "humi" //C u hình MQTT: #include #include "InfoWifiMQTT.h" #include "configHardware.h" #include #include void void void void void void void void void void void B CheckWifi(const char * NameWifi, const char * PassWifi); Connect(); PublishTopic(); SubscribeTopic(); OnAndOff(String payload,uint8_t light, String status); MakeAction(String topic, String payload); MakeAction(String topic, String payload); messageReceived(String &topic, String &payload); SetupMQTT(); ClientLoop(); MQTTPublish(String topic, String data); MỌN I N T CỌNG NGHI P ậ Y SINH 85 PH L C //C u hình thi t b : #include #define #define #define #define DEN1 DEN2 DEN3 DEN4 16 #define ON HIGH #define OFF LOW void SetupHardware(); void TurnOn(uint8_t light); void TurnOff(uint8_t light); //C u hình nhi t đ , đ m: #include #include "DHT.h" #define DHTPIN 15 #define DHTTYPE DHT11 void SetupDHT(); float ReadHumi(); float ReadTemp(); Ch ng trình //C u hình thi t l p thông tin Server: #include WiFiClient net; MQTTClient client; void CheckWifi(const char * NameWifi, const char * PassWifi) { int time = 0; while(WiFi.status() != WL_CONNECTED) { WiFi.begin(NameWifi, PassWifi); Serial.print("."); delay(1000); time++; if(WiFi.status() == WL_CONNECTED){ Serial.println(String("Connected ") + String(NameWifi)); B MỌN I N T CỌNG NGHI P ậ Y SINH 86 PH L C } if(time >=10){ return; } } } void Connect() { Serial.print("checking wifi "); while (WiFi.status() != WL_CONNECTED) { CheckWifi(NAME_WIFI_1,PASS_WIFI_1); CheckWifi(NAME_WIFI_2,PASS_WIFI_2); CheckWifi(NAME_WIFI_3,PASS_WIFI_3); } Serial.print("\nconnecting "); while (!client.connect(CLIENT_ID, USER_NAME, PASS_MQTT)) { Serial.print("."); delay(1000); } Serial.println("\nconnected!"); } void PublishTopic() { client.publish(TOPIC_PUB_LIGHT_1,TOPIC_PUB_STATUS_OFF); client.publish(TOPIC_PUB_LIGHT_2,TOPIC_PUB_STATUS_OFF); client.publish(TOPIC_PUB_LIGHT_3,TOPIC_PUB_STATUS_OFF); client.publish(TOPIC_PUB_LIGHT_4,TOPIC_PUB_STATUS_OFF); } void SubscribeTopic() { client.subscribe(TOPIC_SUB_LIGHT_1); client.subscribe(TOPIC_SUB_LIGHT_2); client.subscribe(TOPIC_SUB_LIGHT_3); client.subscribe(TOPIC_SUB_LIGHT_4); } void OnAndOff(String payload,uint8_t light, String status) { if(payload.compareTo(TOPIC_PUB_STATUS_ON) == 0) { TurnOn(light); client.publish(status,TOPIC_PUB_STATUS_ON); } else if(payload.compareTo(TOPIC_PUB_STATUS_OFF) == 0) { B MỌN I N T CỌNG NGHI P ậ Y SINH 87 PH L C TurnOff(light); client.publish(status,TOPIC_PUB_STATUS_OFF); } } void MakeAction(String topic, String payload) { if(topic.compareTo(TOPIC_SUB_LIGHT_1) == 0) { OnAndOff(payload,DEN1,TOPIC_PUB_LIGHT_1); } else if(topic.compareTo(TOPIC_SUB_LIGHT_2) == 0) { OnAndOff(payload,DEN2,TOPIC_PUB_LIGHT_2); } else if(topic.compareTo(TOPIC_SUB_LIGHT_3) == 0) { OnAndOff(payload,DEN3,TOPIC_PUB_LIGHT_3); } else if (topic.compareTo(TOPIC_SUB_LIGHT_4) == 0) { OnAndOff(payload,DEN4,TOPIC_PUB_LIGHT_4); } } void messageReceived(String &topic, String &payload) { Serial.println("incoming: " + topic + " - " + payload); MakeAction(topic,payload); } void SetupMQTT() { WiFi.begin(NAME_WIFI_1, PASS_WIFI_1); client.begin(HOST_NAME,PORT, net); client.onMessage(messageReceived); Connect(); PublishTopic(); SubscribeTopic(); } void ClientLoop() { client.loop(); delay(10); //