Thông tin tài liệu
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 H TH NG I U KHI N CÁC THI T B TRONG PHÒNG H C GVHD: Ths Nguy n V n Hi p SVTH1: Hu nh Nguy n Nhơn H u MSSV: 14141092 SVTH2: Thái Ng c H u MSSV: 14141093 Tp.ăH ăChíăMinhăậ Tháng 01/2019 ii TR B NGă HăSPKTăTP.ăH ăCHệăMINH KHOA I N- I N T MỌN I N T CỌNG NGHI P ậ Y SINH NHI M V H ătênăsinhăviên: C NG HọA Xẩ H I CH NGH A VI T NAM C L P - T DO - H NH PHÚC o0o Tp.ăHCM,ăngƠyă10ăthángă1ăn mă2018 ÁN T T NGHI P Hu nhăNguy năNhơnăH u MSSV: 14141092 TháiăNg căH u MSSV: 14141093 Chuyên ngành: K ăthu tă i nă- i năt Mã ngành: 141 H ăđƠoăt o: iăh căchínhăquy Mưăh : Khóa: 2014 L p: 1414DT2 I.ăTểNă ăTÀI: THI T K VĨ THI CỌNG H TH NG I U KHI N CÁC THI T B TRONG PHọNG H C II.ăNHI MăV ă 1.ăCácăs ăli uăbanăđ u: _ăS ăd ngăm tăđi nătho iăh ăđi uăhƠnhăAndroid _ăS ăd ngăm tăModuleăwifiăESP8266ăNodeMCU _ăS ăd ngăm tăArduinoăMega2560 _ăS ăd ngăm tăLCDă16x2 _ăS ăd ngăm tăModuleăth iăgianăth căDS1307 _ăS ăd ngăm tăModuleă8ăRelay _ăS ăd ngăm tăModuleă4ăRelay _ăS ăd ngăm tăModuleăRFID 2.ăN iădungăth căhi n: _ăTìmăhi uăcáchăc pănh tăd ăli uăc ngănh ăl yăd ăli uăt ăFirebaseăvƠăchiaăs ăquy nă uăkhi năchoăcácăthi tăb _ăTìmăhi uăcáchăgiaoăti păgi aăModuleăESP8266ăNodeMCUăv iăFirebase _ăTìmăhi uăcáchăgiaoăti păgi aăModuleăESP8266ăNodeMCUăv iăArduinoă Mega2560 _ăTìmăhi uăthi tăk ăgiaoădi năchoăcácă ngăd ngăch yătrênăh ăđi uăhƠnhăandroidăb ngă MIT App Inventor _ăThiăcơngămơăhìnhăđi uăkhi n _ăCh nhăs a,ăhoƠnăthi nămơăhình _ă ánhăgiáăk tăqu ăth căhi n III.ăNGÀYăGIAOăNHI MăV : 08/10/2018 IV NGÀY HOÀN THÀNH NHI MăV : 15/01/2019 V.ăăH ăVÀăTểNăCỄNăB ăH NGăD N: Ths.ăNguy năV năHi pă CỄNăB ăH NGăD NăăăăăăăăăăăăăăăăBM.ă I NăT ăCỌNGăNGHI Păậ Y SINH ii TR NGă HăSPKTăTP.ăH ăCHệăMINH C NG HọA Xẩ H I CH NGH A VI T NAM KHOA I N- I N T B CL P-T MỌN I N T CỌNG NGHI P ậ Y SINH DO - H NH PHÚC o0o -Tp.ăHCM,ăngƠyă08ăthángă10ăn mă 2018 H L H L L CH TRỊNH TH C HI N ÁN T T NGHI P ătênăsinhăviênă1:ăHu nhăNguy năNhơnăH u p:14141DT2ăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăMSSV:14141092 ătênăsinhăviênă2:ăTháiăNg căH u p:14141DT2ăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăăMSSV:14141093 Tên đ tƠi: THI TăK ăVÀăTHIăCỌNGăH ăTH NGă I UăKHI NăCỄCăTHI Tă B ăTRONGăPHọNGăH C TỐ ỉ Tể i Ểiaỉ N i ếỐỉỂ 01-10 đ n 08-10 08-10 đ n 15-10 15-10 đ n 05-11 G p GVHD trao đ i vƠ xác nh n đ tƠi 3-6 7-9 05-11 đ n 26-11 10-11 26-11 đ n 17-12 17-12 đ n 24-12 24-12 đ n 07-01 12 13-14 HoƠn thƠnh đ c XáẾ ỉể ỉ GVHD ng Tìm hi u v cách k t giao ti p gi a kit arduino v i NodeMCU esp 8266, module relay RFID Tìm hi u vƠ vi t app android vƠ cách điêu n thi t b qua NodeMCU esp 8266 Thi công h th ng vƠ ch y th nghi m HoƠn thi t h th ng vƠ vi t báo cáo đ án t t nghi p HoƠn thi n h th ng vƠ báo cáo đ án t t nghi p GV H NGăD N (KýăvƠăghiărõăh ăvƠătên) iii L I CAM OAN ătƠiănƠyălƠădoănhómătơiăt ăth căhi năd aăvƠoăm tăs ătƠiăli uătr chépăt ătƠiăli uăhayăcơngătrìnhăđưăcóătr căđó Nh ngăng Thái Ng c H u căđóăvƠăkhơngăsaoă iăth căhi năđ ătƠi Hu nh Nguy n Nhơn H u iv L IC M N ăhoƠnăthƠnhăt tă ăánăt tănghi p,ăchúngă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 căbi tăchúngăemăxinăg iăl iăc mă năsơuăs căđ năTh yăNguy năV năHi pă_ă Gi ngăviênăb ămônă i năT ăCôngăNghi p- YăSinhăđưătr căti păh ngăd năvƠăt nătìnhă giúpăđ ăt oăđi uăki năđ ăhoƠnăthƠnhăt tăđ ătƠi Chúngăemăc ngăg iăl iăđ ngăc mă năđ năcácăb năl p 1414DT2Băđưă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 Cu iăcùngăchúngăemăxinăc mă năđ năgiaăđình,ălƠăch ăd aăc ngănh ălƠăngu nă đ ngăviênătinhăth năm iăkhiăchúngăemăg păkhóăkh nătrongăh căt păc ngănh ătrong qătrìnhănghiênăc uăđ ăhoƠnăthƠnhăđ ătƠiăt tănghi p.ă ChúngăemăxinăchơnăthƠnhăc mă n! Ng iăth căhi năđ ătƠi Thái Ng c H u Hu nh Nguy n Nhơn H u v M CL C Trang bìa i Nhi măv ăđ ăán .ii L chătrìnhă iii Camăđoană iv L iăc mă n v M căl c vi Li tăkêăhìnhăv viii Li tăkêăb ngăv xi Tómăt tă xii CH 1.1.ă NG 1: T NG QUAN TăV Nă 1.2 M CăTIểU 1.3 N IăDUNGăNGHIểNăC U 1.4 GI IăH N 1.5 B ăC C CH NG 2: C 2.1 V Nă S Lụ THUY T ăTI TăKI Mă I NăCỄCăTHI TăB ăDỂNăD NG 2.2ăIOTăVÀă NGăD NGăTRONGă IăS NG 2.3 L CHăS ăH ă I UăHÀNHăANDROID 2.4 KHỄIăNI MăV ăM NGăWIFI 10 2.5 C ăS ăD ăLI UGOOGLE FIREBASE VÀă NGăD NG 14 2.6ăCỌNGăNGH ăRFIDăVÀă NGăD NGăTRONGă CH IăS NG 18 NG 3: TÍNH TỐN VĨ THI T K 25 3.1ăGI IăTHI U 25 3.1.1ăTh cătr ngănhuăc u 25 3.1.2ăBƠiătoánăđ tăra 25 3.2ăTệNHăTOỄNăVÀăTHI TăK 25 vi 3.2.1ăThi tăk ăs ăđ ăkh iăh ăth ng 26 3.2.2ăAppăđi uăkhi n 27 3.2.3ăBoardăđi uăkhi n 32 CH NG 4: THI CỌNG H TH NG 50 4.1ăGI IăTHI U 50 4.2ăTHIăCỌNGăH ăTH NG 50 4.2.1ăBoardăđi uăkhi n 50 4.2.2ăAppăđi uăkhi n 66 4.3ăVI TăTÀIăLI UăH NGăD NăS ăD NG,ăTHAOăTỄC 79 4.3.1 App Android 79 4.3.2 Web-server 84 CH NG 5: K T QU -NH N XÉT- ÁNH GIÁ 87 5.1ăGI IăTHI U 87 5.2ăK TăQU ă Tă C 87 5.3ăNH NăXÉTăậ ỄNHăGIỄ 90 5.4.1ăNh năxét 90 5.4.2ă ánhăgiá 91 CH NG 6: K T LU N VĨ H NG PHÁT TRI N 92 6.1ăK TăLU N 92 6.2ăH NGăPHỄTăTRI N 92 TĨI LI U THAM KH O 93 PH L C 94 vii LI T Kể HỊNH V Hình Trang Hình 2.1: Smart home Hình 2.2: Thi tăb ăđeoăthôngăminh Hình 2.3: Smart city Hình 2.4: IoTătrongănôngănghi p Hình 2.5: Quáătrìnhăphátătri năc aăAndroid 10 Hình 2.6: Bi uăt ngăsóngăWIFI 11 Hình 2.7: H ăth ngăcácăthi tăb ăk tăn iăv iăWIFI 11 Hình 2.8: Bi uăt ngăc aăGoogleăFirebase 15 Hình 2.9: Cácă ngăd ngăc aăFirebase 16 Hình 2.10: Thi t b ăIFFăvƠăthi tăb ăRFIDăhi năđ iăngƠyănay 20 Hình 2.11: S ăđ ăkh iăc aăm tăh ăth ngăRFID 21 Hình 2.12: Ho tăđ ngăgi aătagăvƠăreaderăRFID 22 Hình 3.1: S ăđ ăkh iăc aăh ăth ng 26 Hình 3.2: Thi tăk ăgiaoădi nămƠnăhìnhăchínhăAppăAndroid 28 Hình 3.3: Thi tăk ăgiaoădi năđi uăkhi năđèn 29 Hình 3.4: Thi tăk ăgiaoădi năđi uăkhi năqu t 30 Hình 3.5: Thi tăk ăgiaoădi năđi uăkhi nă i uăhòa,ăTVăvƠăloa 31 Hình 3.6: Giaoădi năthi tăk ăweb-server 32 Hình 3.7: S ăđ ănguyênălýăESP8266 34 Hình 3.8: S ăđ ăchơnăNodeMCU 36 Hình 3.9: S ăđ ăchơnăArduinoăMegaă2560 39 Hình 3.10: Module DS1307 42 Hình 3.11: C uăt oăc aăDS1307 43 Hình 3.12: Module Relay 44 Hình 3.13: S ăđ ăchơnămoduleăRFIDăRC522 45 Hình 3.14: S ăđ ăchơnăLCDă16x2 46 viii Hình 3.15: S ăđ ăchơnămoduleăI2CăLCD 48 Hình 3.16: S ăđ ăkh iătoƠnăm ch 49 Hình 4.1: S ăđ ăm chăin 51 Hình 4.2: M chăđi uăkhi năth căt ăhoƠnăch nh 53 Hình 4.3: C aăs ălƠmăvi căc aăArduinoăIDE 54 Hình 4.4: Thêmăth ăvi năchoăArduinoăIDE 56 Hình 4.5: C aăs ăLibraryăManager 56 Hình 4.6: L uăđ ăm tăch ngătrìnhătrong Arduino IDE 57 Hình 4.7: Project setting firebase 58 Hình 4.8: Database secrets firebase 58 Hình 4.9: Code Dabase secrets 59 Hình 4.10: Realtime Database firebase 59 Hình 4.11: URL firebase 60 Hình 4.12: L uăđ ămoduleăwifi 61 Hình 4.13: L uăđ ăđ căth iăgianăth căvƠăhi năth 64 Hình 4.14: L uăđ ăđ căth ăRFID 66 Hình 4.15: Bi uăt ngăph năm măAtom 67 Hình 4.16: Giaoădi năph năm măAtom 67 Hình 4.17: Downloadăph năm măAtom 68 Hình 4.18: Giaoădi năsauăkhiăcƠiăđ t 69 Hình 4.19: Setting Atom 69 Hình 4.20: Atom live server 70 Hình 4.21: C aăs ătrìnhăduy tăweb-server 70 Hình 4.22: C uătrúcăm tăweb-server 71 Hình 4.23: C uătrúcăc ăb năc aăHTML 72 Hình 4.24: Ch năStartăNewăProject 75 Hình 4.25: Thi t k ăgiaoădi năApp 75 Hình 4.26: L pătrìnhăchoăApp 76 Hình 4.27: Biênăd chăchoăch ngătrình 76 Hình 4.28: Giaoădi nătrangăwebăFirebase 77 Hình 4.29:C aăs ăkh iăt oăProject 77 Hình 4.30: Create database 78 Hình 4.31: Ch năSecurity Rules cho Realtime Database 78 ix Hình 4.32: Giaoădi nălƠmăvi cădatabase 79 Hình 4.33: Giaoădi nămƠnăhìnhăchínhăAppăSmartRoom 80 Hình 4.34: B ngăgiaoădi năđi uăkhi năđèn 81 Hình 4.35: B ngăgiaoădi năđi uăkhi năđi uăhòa,ăTVăho căloa 82 Hình 4.36: B ng giaoădi năđi uăkhi năqu t 83 Hình 4.37: Giaoădi năc aăthi tăb ăthayăđ iătheoătr ngăthái 84 Hình 4.38: Start atom-live-server 85 Hình 4.39: Giaoădi năweb-server 85 Hình 4.40: B ngăđi uăkhi năthi tăb ătrênăweb-server 86 Hình 5.1: Giaoădi năAppăAndroidătrênăđi nătho i 87 Hình 5.2: Giaoădi năđi uăkhi năthi tăb ăAppăAndroid 88 Hình 5.3: Firebaseăc pănh tăd ăli uăquaăAppăAndroid 89 Hình 5.4: Giaoădi năweb-server 89 Hình 5.5: Giaoădi năđi uăkhi năthi tăb ătrênăweb-server 90 Hình 5.6: Firebaseăc pănh tăd ăli uăquaăweb-server 90 x lcd.setCursor(0, 0); lcd.print("CAI GIAY HEN"); lcd.setCursor(0, 1); lcd.print("GIAY:"); _HienThiSo(GiayHen); if (digitalRead(TANG) == 0) //neu nhan nut nhan { while (digitalRead(TANG) == 0); GiayHen = GiayHen + 1; if (GiayHen > 59) { GiayHen = 0; } } if (digitalRead(GIAM) == 0) //neu nhan nut nhan { while (digitalRead(GIAM) == 0); GiayHen = GiayHen - 1; if (GiayHen < 0) { GiayHen = 59; } } if (digitalRead(HEN_GIO) == 0) //neu nhan nut { while (digitalRead(HEN_GIO) == 0); CheDo = CheDo + 1; //chuyen sang che cai dat khac if (CheDo > 13) { CheDo = 0; //che chay tu dong } lcd.clear();//xoa man hinh LCD } } if (CheDo == 11) //che cai gio hen { lcd.setCursor(0, 0); lcd.print("CAI GIO TAT"); lcd.setCursor(0, 1); lcd.print("GIO:"); _HienThiSo(GioHen2); if (digitalRead(TANG) == 0) //neu nhan nut nhan { B MỌN I N T CỌNG NGHI P ậ Y SINH 112 while (digitalRead(TANG) == 0); GioHen2 = GioHen2 + 1; if (GioHen2 > 23) { GioHen2 = 0; } } if (digitalRead(GIAM) == 0) //neu nhan nut nhan { while (digitalRead(GIAM) == 0); GioHen2 = GioHen2 - 1; if (GioHen2 < 0) { GioHen2 = 23; } } if (digitalRead(HEN_GIO) == 0) //neu nhan nut { while (digitalRead(HEN_GIO) == 0); CheDo = CheDo + 1; //chuyen sang che cai dat khac if (CheDo > 13) { CheDo = 0; //che chay tu dong } lcd.clear();//xoa man hinh LCD } } if (CheDo == 12) //che cai phut hen { lcd.setCursor(0, 0); lcd.print("CAI PHUT TAT"); lcd.setCursor(0, 1); lcd.print("PHUT:"); _HienThiSo(PhutHen2); if (digitalRead(TANG) == 0) //neu nhan nut nhan { while (digitalRead(TANG) == 0); PhutHen2 = PhutHen2 + 1; if (PhutHen2 > 59) { PhutHen2 = 0; } } B MỌN I N T CỌNG NGHI P ậ Y SINH 113 if (digitalRead(GIAM) == 0) //neu nhan nut nhan { while (digitalRead(GIAM) == 0); PhutHen2 = PhutHen2 - 1; if (PhutHen2 < 0) { PhutHen2 = 59; } } if (digitalRead(HEN_GIO) == 0) //neu nhan nut { while (digitalRead(HEN_GIO) == 0); CheDo = CheDo + 1; //chuyen sang che cai dat khac if (CheDo > 13) { CheDo = 0; //che chay tu dong } lcd.clear();//xoa man hinh LCD } } if (CheDo == 13) //che cai giay hen { lcd.setCursor(0, 0); lcd.print("CAI GIAY TAT"); lcd.setCursor(0, 1); lcd.print("GIAY:"); _HienThiSo(GiayHen2); if (digitalRead(TANG) == 0) //neu nhan nut nhan { while (digitalRead(TANG) == 0); GiayHen2 = GiayHen2 + 1; if (GiayHen2 > 59) { GiayHen2 = 0; } } if (digitalRead(GIAM) == 0) //neu nhan nut nhan { while (digitalRead(GIAM) == 0); GiayHen2 = GiayHen2 - 1; if (GiayHen2 < 0) { GiayHen2 = 59; B MỌN I N T CỌNG NGHI P ậ Y SINH 114 } } if (digitalRead(HEN_GIO) == 0) //neu nhan nut { while (digitalRead(HEN_GIO) == 0); CheDo = CheDo + 1; //chuyen sang che cai dat khac if (CheDo > 13) { CheDo = 0; //che chay tu dong } lcd.clear();//xoa man hinh LCD } } } //CÁC CH NG TRỊNH CON void _HienThiSo(signed int SoDem) { signed char Ngan, Tram, Chuc, DonVi; signed int Tam = SoDem; DonVi = SoDem % 10; SoDem = SoDem / 10; Chuc = SoDem % 10; SoDem = SoDem / 10; Tram = SoDem % 10; SoDem = SoDem / 10; Ngan = SoDem % 10; if (Tam < 99) { lcd.print(Chuc); lcd.print(DonVi); } else { lcd.print(Ngan); lcd.print(Tram); lcd.print(Chuc); lcd.print(DonVi); } } void _ReadDS1307(void) { Wire.beginTransmission(DS1307); Wire.write((byte)0x00); Wire.endTransmission(); Wire.requestFrom(DS1307, NumberOfFields); second = _BCD2DEC(Wire.read() & 0x7F); minute = _BCD2DEC(Wire.read() ); B MỌN I N T CỌNG NGHI P ậ Y SINH 115 hourăăă=ă_BCD2DEC(Wire.read()ă&ă0x3F);ă//ăch ăđ ă24h wday = _BCD2DEC(Wire.read() ); day = _BCD2DEC(Wire.read() ); month = _BCD2DEC(Wire.read() ); year = _BCD2DEC(Wire.read() ); //year += 2000; } /*ăChuy năt ăformatăBCDă(Binary-Coded Decimal) sang Decimal */ int _BCD2DEC(byte num) { return ((num / 16 * 10) + (num % 16)); } /*ăChuy năt ăDecimalăsangăBCDă*/ int _DEC2BCD(byte num) { return ((num / 10 * 16) + (num % 10)); } /*ăcƠiăđ tăth iăgianăchoăDS1307ă*/ void _SetTime(byte hr, byte min, byte sec, byte wd, byte d, byte mth, byte yr) { Wire.beginTransmission(DS1307); Wire.write(byte(0x00));ă//ăđ tăl iăpointer Wire.write(_DEC2BCD(sec)); Wire.write(_DEC2BCD(min)); Wire.write(_DEC2BCD(hr)); Wire.write(_DEC2BCD(wd)); // day of week: Sunday = 1, Saturday = Wire.write(_DEC2BCD(d)); Wire.write(_DEC2BCD(mth)); Wire.write(_DEC2BCD(yr)); Wire.endTransmission(); } void _HienThiThoiGian(void) { lcd.setCursor(1, 0); lcd.print("Time:"); _HienThiSo(hour); lcd.print(":"); _HienThiSo(minute); lcd.print(":"); _HienThiSo(second); lcd.setCursor(1, 1); lcd.print("Date:"); _HienThiSo(day); lcd.print("-"); _HienThiSo(month); lcd.print("-"); _HienThiSo(2000 + year); B MỌN I N T CỌNG NGHI P ậ Y SINH 116 } Code Web-server : Code HTML: Do an phong hoc thong minh ăỄNăT Tă NGHI P ătƠi:ăH ă th ngăIOTăđi uăkhi năphòngăh căthơngăminh GVHD: Ths NGUY NăV NăHI P SVTH1: Thái Ng căH u SVTH2: Hu nhăNguy năNhơnăH u Light 1 Light 2 Light 3 Light 4 B MỌN I N T CỌNG NGHI P ậ Y SINH 117 Fan 1 Fan 2 Fan 3 Fan 4 AC 1 AC 2 TV Speaker Code CSS: body{ text-align: left; background-color: #ffffff; } LightStatus1{ color: black; font-family: Verdana; } LightButton1{ font-size: 1em; font-family: Verdana; padding: 10px; } LightStatus2{ color: black; font-family: Verdana; } LightButton2{ font-size: 1em; font-family: Verdana; padding: 10px; } LightStatus3{ color: black; font-family: Verdana; } LightButton3{ font-size: 1em; font-family: Verdana; padding: 10px; B MỌN I N T CỌNG NGHI P ậ Y SINH 118 } LightStatus4{ color: black; font-family: Verdana; } LightButton4{ font-size: 1em; font-family: Verdana; padding: 10px; } FanStatus1{ color: black; font-family: Verdana; } FanButton1{ font-size: 1em; font-family: Verdana; padding: 10px; } FanStatus2{ color: black; font-family: Verdana; } FanButton2{ font-size: 1em; font-family: Verdana; padding: 10px; } FanStatus3{ color: black; font-family: Verdana; } FanButton3{ font-size: 1em; font-family: Verdana; padding: 10px; } FanStatus4{ color: black; font-family: Verdana; } FanButton4{ font-size: 1em; B MỌN I N T CỌNG NGHI P ậ Y SINH 119 font-family: Verdana; padding: 10px; } ACStatus1{ color: black; font-family: Verdana; } ACButton1{ font-size: 1em; font-family: Verdana; padding: 10px; } ACStatus2{ color: black; font-family: Verdana; } ACButton2{ font-size: 1em; font-family: Verdana; padding: 10px; } TVStatus{ color: black; font-family: Verdana; } TVButton{ font-size: 1em; font-family: Verdana; padding: 10px; } SpeakerStatus{ color: black; font-family: Verdana; } SpeakerButton{ font-size: 1em; font-family: Verdana; padding: 10px; } Code Javascript var config = { apiKey: "AIzaSyBWeWVfwpy-E9JfHBkspFEP9jPvYu-2yYY", B MỌN I N T CỌNG NGHI P ậ Y SINH 120 authDomain: "", databaseURL: "https://smartroom8f242.firebaseio.com", //URL Firebase projectId: "", //Code Firebase cho web-server storageBucket: "", messagingSenderId: "" }; firebase.initializeApp(config); $(document).ready(function(){ var database = firebase.database(); var Light1; var Light2; var Light3; var Light4; var Fan1; var Fan2; var Fan3; var Fan4; var AC1; var AC2; var TV; var Speaker; database.ref().on("value", function(snap){ Light1 = snap.val().Light1; if(Light1 == 1){ $(".LightStatus1").text("Light1 is off"); } else { $(".LightStatus1").text("Light1 is on"); } } ); database.ref().on("value", function(snap){ Light2 = snap.val().Light2; if(Light2 == 1){ $(".LightStatus2").text("Light2 is off"); } else { $(".LightStatus2").text("Light2 is on"); } } ); database.ref().on("value", function(snap){ Light3 = snap.val().Light3; if(Light3 == 1){ $(".LightStatus3").text("Light3 is off"); B MỌN I N T CỌNG NGHI P ậ Y SINH 121 } else { $(".LightStatus3").text("Light3 is on"); } } ); database.ref().on("value", function(snap){ Light4 = snap.val().Light4; if(Light4 == 1){ $(".LightStatus4").text("Light4 is off"); } else { $(".LightStatus4").text("Light4 is on"); } } ); $(".LightButton1").click(function(){ var firebaseRef = firebase.database().ref().child("Light1"); if(Light1 == 1){ firebaseRef.set("0"); Light1 = 0; } else { firebaseRef.set("1"); Light1 = 1; } }); $(".LightButton2").click(function(){ var firebaseRef = firebase.database().ref().child("Light2"); if(Light2 == 1){ firebaseRef.set("0"); Light2 = 0; } else { firebaseRef.set("1"); Light2 = 1; } }); $(".LightButton3").click(function(){ var firebaseRef = firebase.database().ref().child("Light3"); if(Light3 == 1){ firebaseRef.set("0"); Light3 = 0; } else { firebaseRef.set("1"); Light3 = 1; } B MỌN I N T CỌNG NGHI P ậ Y SINH 122 }); $(".LightButton4").click(function(){ var firebaseRef = firebase.database().ref().child("Light4"); if(Light4 == 1){ firebaseRef.set("0"); Light4 = 0; } else { firebaseRef.set("1"); Light4 = 1; } }); database.ref().on("value", function(snap){ Fan1 = snap.val().Fan1; if(Fan1 == 1){ $(".FanStatus1").text("Fan1 is off"); } else { $(".FanStatus1").text("Fan1 is on"); } } ); database.ref().on("value", function(snap){ Fan2 = snap.val().Fan2; if(Fan2 == 1){ $(".FanStatus2").text("Fan2 is off"); } else { $(".FanStatus2").text("Fan2 is on"); } } ); database.ref().on("value", function(snap){ Fan3 = snap.val().Fan3; if(Fan3 == 1){ $(".FanStatus3").text("Fan3 is off"); } else { $(".FanStatus3").text("Fan3 is on"); } } ); database.ref().on("value", function(snap){ Fan4 = snap.val().Fan4; if(Fan4 == 1){ $(".FanStatus4").text("Fan4 is off"); } else { B MỌN I N T CỌNG NGHI P ậ Y SINH 123 $(".FanStatus4").text("Fan4 is on"); } } ); $(".FanButton1").click(function(){ var firebaseRef = firebase.database().ref().child("Fan1"); if(Fan1 == 1){ firebaseRef.set("0"); Fan1 = 0; } else { firebaseRef.set("1"); Fan1 = 1; } }); $(".FanButton2").click(function(){ var firebaseRef = firebase.database().ref().child("Fan2"); if(Fan2 == 1){ firebaseRef.set("0"); Fan2 = 0; } else { firebaseRef.set("1"); Fan2 = 1; } }); $(".FanButton3").click(function(){ var firebaseRef = firebase.database().ref().child("Fan3"); if(Fan3 == 1){ firebaseRef.set("0"); Fan3 = 0; } else { firebaseRef.set("1"); Fan3 = 1; } }); $(".FanButton4").click(function(){ var firebaseRef = firebase.database().ref().child("Fan4"); if(Fan4 == 1){ firebaseRef.set("0"); Fan4 = 0; } else { firebaseRef.set("1"); B MỌN I N T CỌNG NGHI P ậ Y SINH 124 Fan4 = 1; } }); database.ref().on("value", function(snap){ AC1 = snap.val().AC1; if(AC1 == 1){ $(".ACStatus1").text("AC1 is off"); } else { $(".ACStatus1").text("AC1 is on"); } } ); database.ref().on("value", function(snap){ AC2 = snap.val().AC2; if(AC2 == 1){ $(".ACStatus2").text("AC2 is off"); } else { $(".ACStatus2").text("AC2 is on"); } } ); $(".ACButton1").click(function(){ var firebaseRef = firebase.database().ref().child("AC1"); if(AC1 == 1){ firebaseRef.set("0"); AC1 = 0; } else { firebaseRef.set("1"); AC1 = 1; } }); $(".ACButton2").click(function(){ var firebaseRef = firebase.database().ref().child("AC2"); if(AC2 == 1){ firebaseRef.set("0"); AC2 = 0; } else { firebaseRef.set("1"); AC2 = 1; } }); database.ref().on("value", function(snap){ TV = snap.val().TV; B MỌN I N T CỌNG NGHI P ậ Y SINH 125 if(TV == 1){ $(".TVStatus").text("TV is off"); } else { $(".TVStatus").text("TV is on"); } } ); database.ref().on("value", function(snap){ Speaker = snap.val().Speaker; if(Speaker == 1){ $(".SpeakerStatus").text("Speaker is off"); } else { $(".SpeakerStatus").text("Speaker is on"); } } ); $(".TVButton").click(function(){ var firebaseRef = firebase.database().ref().child("TV"); if(TV == 1){ firebaseRef.set("0"); TV = 0; } else { firebaseRef.set("1"); TV = 1; } }); $(".SpeakerButton").click(function(){ var firebaseRef = firebase.database().ref().child("Speaker"); if(Speaker == 1){ firebaseRef.set("0"); Speaker = 0; } else { firebaseRef.set("1"); Speaker = 1; } }); }); B MỌN I N T CỌNG NGHI P ậ Y SINH 126 ... căcó các h ăth ngăđi uă năc ngănh ăgiámăsát các thi tăb trong phòng h căthìănhómăchúngăemăđưăquy tă đ nhăth căhi năđ ătƠi:ă THI T K VĨ THI CỌNG H TH NG I U KHI N THỌNG MINH CÁC THI T B TRONG. .. ngăxuyênăkhôngăt t các thi tăb ăđi n trong phòng h căsauăkhiăđiăra i uănƠyăgơyănênăm tăs ălưngăphíăr tăl n B ng 2.1: B ngăth ngăkêăcơngăsu tăđi n các thi tăb trong phòng h c Tên thi t b n dơn d... Nhómăs thi tăk ăvƠ thi cơngămơăhìnhăđi uăkhi n các thi tăb ăđi n trong phòng h cănh ăđèn,ăqu t,ă…ăquaăapp thi tăk ătrênăđi nătho iăcóăk tăn iăwifi,ăngoƠiăraăcònă uăkhi nătrênăweb. Các tínăhi
Ngày đăng: 16/11/2019, 15:10
Xem thêm: Luận Văn Thiết kế và thi công hệ thống điều khiển các thiết bị trong phòng học