Mata Kuliah : Sistem Digital dan
Pengantar Teknologi Informasi
Dosen Pengampu : Aditya Prapanca,
S.T., M.Kom.
1. Thomi Aditya Alhakim (057)
2. Siti Halimatus Sadiyah (065)
3. Mochamad Abhiegail Argo Pangestu (066)
4. Rama Anggoro Sakti (081)
5. Rizka Ayuningtyas (097)
6. Roy Saiful Annaz (100)
ABSTRAK
Dengan perkembangan teknologi
semakin pesat pada saat ini memungkinkan bagi kita sebagai manusia untuk
memanfaatkan dengan bijak. Salah satunya memungkinkan bagi kita untuk membuat
sebuah alat sebagai asisten untuk mengerjakan suatu pekerjaan manusia. IoT kepanjangan
dari Internet of Thing merupakan
salah satu bentuk perkembangan teknologi yang begitu pesat. Bagaimana tidak,
IoT menyediakan suatu gebrakan yang hebat bagi kehidupan. Dengan adanya IoT
berbagai permasalahan hidup mulai dari bangun tidur hingga tidur kembali sudah
mulai terampunkan.
Salah satunya seperti project Smart
Home ini. Project Smart Home ini merupakan suatu alat IoT yang sangat berguna
dalam rangka menghemat energi khususnya energi listrik. Project Smart Home bisa
disebut juga dengan pengendali rumah jarak jauh. Pengguna dapat mengendalikan
seisi rumah hanya dengan memberikan perintah ke bot (Telegram bot) dan secara
otomatis alat akan merespon dan menjalankan perintah yang diberikan.
BAB
I PENDAHULUAN
1.1
Latar Belakang
Listrik merupakan energi yang
penting bagi kehidupan saat ini. Semua kegiatan manusia saat ini rata-rata
dibantu oleh adanya energi listrik. Contohnya di dalam rumah kita menggunakan
lampu untuk menerangi saat gelap. Kemudahan untuk menggunakan yang membuat kita
sebagai manusia menjadi tergiur akan hadirnya listrik ini. Bagaimana tidak,
kita ditawarkan kemudahan menggunakan sesuatu dengan sekali tekan. Tidak
seperti zaman dahulu yang menerangi kegelapan dengan menggunakan api yang
disalurkan melalui sumbu. Dengan kemudahan seperti ini, manusia tidak lagi
pusing memikirkan bagaimana cara menerangi kegelapan, bagaimana cara mencuci
dengan benar, dan bagaimana cara mengeraskan suara. Hal-hal seperti itu tidak
lagi menjadi sebuah tanggungan bagi generasi manusia saat ini.
Namun, dalam penggunaannya, listrik
juga mengalami banyak kendala yang merugikan masyarakat. Seperti halnya, ketika
lupa untuk mematikan atau mencabut alat elektronik ketika selesai digunakan.
Sehingga jika dibiarkan, akan berakibat fatal untuk pemakai. Energi listrik
jika digunakan terus menerus, maka biaya yang perlu untuk dibayarkan akan lebih
besar, mengingat listrik merupakan energi yang berbayar. Juga banyak dampak
yang dihasilkan akibat terlupa untuk mematikan alat elektronik ketika sudah digunakan.
Oleh karena itu, dibutuhkannya
pengingat atau sebagai rambu jika memang kita terlupa untuk mematikan alat
elektronik. IoT (Internet of Things) merupakan suatu inovasi yang menggunakan
internet sebagai media komunikasi dengan suatu alat. Yang dalam arti lain bahwa
IoT merupakan teknologi dimana suatu alat dengan alat lainnya dapat
berkomunikasi melalui jaringan internet. Pada saat ini IoT banyak digunakan
untuk tata kelola sistem keamanan.
Salah satu bentuk pengembangan dari
teknologi IoT ini adalah sistem keamanan rumah atau secure home. Alat ini
berfungsi sebagai pemantau kondisi rumah dan proteksi rumah secara otomatis
jika terjadi suatu hal yang tidak diinginkan seperti terlupa untuk mematikan
kompor atau terlupa untuk mematikan listrik di rumah. Dengan alat ini
kemungkinan terburuk akan dapat terminimalisir.
1.2
Hasil yang Diharapkan
1. Project
IoT ini diharapkan dapat mengantisipasi dan meminimalisir suatu keadaan yang
tidak diinginkan saat kita meninggalkan rumah.
1.3
Tujuan
1. Sebagai pemahaman
praktek dari mata kuliah sistem digital
dan pengantar teknologi informasi.
2. Mempelajari dan
mengimplementasikan bagaimana cara kerja suatu perangkat dan hubunganya tentang
sistem digital serta pemahaman tentang sistem IoT.
3. Memberikan pengetahuan
manfaat dari Internet of Things yang dapat diterapkan dan mendukung Smart Home.
BAB II KAJIAN PUSTAKA
2.1
Deskripsi Karya
Project ini merupakan project dengan
memanfaatkan IoT sebagai otaknya. Seperti nama dari project ini “My Home on My
Hand”, project ini menyediakan berbagai fitur yang dapat digunakan untuk
mengontrol atau memantau seisi rumah. Mulai dari nyala lampu sampai nyala
kompor.
Project ini juga menyediakan security untuk mengamankan rumah. Jika
pengguna mengaktifkan mode aman atau safe
mode maka secara otomatis alat akan mendeteksi dan berada di mode siaga (Safe Mode). Jika terdeteksi pergerakan
mencurigakan, maka alat akan segera menyalakan alarm dan mengirimkan pesan
kepada pengguna selagi pengguna terkoneksi internet.
Salah satu keunggulan dari project
ini adalah pada saat memasuki chatroom dari
bot, maka pengguna dipersilahkan untuk memasukkan password terlebih dahulu
sebelum menggunakan bot, sehingga bot aman dari orang-orang yang tidak
bertanggung jawab.
2.2
Penelitian Eksperimental ( Alat dan Bahan)
a. Bahan :
1. Node MCU
Rp.40.000
2. Relay 5V
Rp.10.000
3. Sensor Motion
Rp.12.000
4. Flame Sensor
Rp.9.000
5. Buzzer
Rp.7.000
6. Kabel Jumper Rp.10.000
7. Lampu LED
Rp.500
8. Breadboard
Rp.20.000
9. Arduino UNO
-
10. Timah
-
Total :
Rp.108.500
b.
Alat :
1. Gunting
-
2. Solder
-
3.
Handphone -
4. Kabel USB -
5.
Obeng -
Total :
-
Untuk tempat pembelian kami membeli
di Akhi Electro Shop yang berada di Jl. Keputih Surabaya.
3.1 Analisis Bahan
1. Node MCU
Node MCU merupakan open source platform IoT, yang di dalamnya sudah terdapat firmware dengan modul wifi ESP 8266 Wi-Fi SoC dari Espressif System, dengan mikrokontroller ESP-12 . Firmware menggunakan bahasa pemrograman Lua. Orang awam sering keliru bahwa Nodemcu merupakan Arduino,karena Node MCU dapat menggunakan bahasa pemrograman C Arduino. Secara fungsional memang terlihat sama karena pada dasarnya baik Nodemcu maupun Arduino merupakan mikrokontroler development board. Namun penggunaan Node MCU lebih powerfull jika digunakan untuk kontrol berbasis IoT.
NodeMCU |
2. Relay
Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi. Sebagai contoh, dengan Relay yang menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi sebagai saklarnya) untuk menghantarkan listrik 220V 2A.
Relay 5V |
3. Sensor motion
Sensor motion sebagai alarm,
perangkat ini dapat mendeteksi ketika ada objek yang bergerak, seperti orang
yang berjalan. Biasanya perangkat ini terintegrasi dengan perangkat lain untuk
membunyikan alarm atau memberikan notifikasi melalui smartphone saat mendeteksi
gerakan pada wilayah yang menjadi pantauannya.
Motion Sensor |
4. Flame sensor
Alat yang sensitif terhadap radiasi
sinar ultraviolet yang ditimbulkan oleh nyala api, tetapi detector ini tidak
bereaksi pada lampu ruangan, infra merah atau sumber cahaya lain yang tidak ada
hubungannya dengan nyala api (flame).
Flame Sensor |
5. Buzzer
Sebuah komponen elektronika yang
berfungsi untuk mengubah getaran listrik menjadi getaran suara.
Buzzer |
6. Kabel jumper
7. Lampu LED
Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memancarkan cahaya monokromatik ketika diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan semikonduktor yang dipergunakannya. LED juga dapat memancarkan sinar inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada Remote Control TV ataupun Remote Control perangkat elektronik lainnya.
8. Breadboard
Lampu LED 5mm |
Board yang digunakan untuk membuat
rangkaian elektronik sementara dengan tujuan uji coba atau prototipe tanpa
harus menyolder.
Breadboard |
9. Arduino UNO
Arduino Uno adalah board
mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari
output digital dimana 6 pin input
tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz
osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk
mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board
Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC
yang-ke adaptor-DC atau baterai untuk menjalankannya.
Uno berbeda dengan semua board
sebelumnya dalam hal koneksi USB-to-serial yaitu menggunakan fitur Atmega8U2
yang diprogram sebagai konverter USB-to-serial berbeda dengan board sebelumnya
yang menggunakan chip FTDI driver USB-to-serial.
Arduino UNO |
10. Timah
Timah yang terbuat dari pencampuran
bahan perak dan timah, timah solder untuk keperluan mematri komponen
elektronika sering juga dikenal dengan istilah Alloy.
Kawat Timah |
3.2 Analisis Karya
Berdasarkan pembuatan project IoT
“My Home on My Hand” ini kita dapatkan 2 Fungsi Utama, yakni:
- Dapat digunakan untuk mengecek kondisi listrik di rumah
Iot ini dibuat memang dikhususkan
untuk orang yang sering lupa ketika keluar rumah dan listrik tidak dimatikan.
Dengan Project Iot ini masalah seperti itu sudah terselesaikan dengan mudah. Pengguna
cukup mengecek melalui telegram dan bot akan membalas listrik apa saja yang
menyala dan listrik mana saja yang mati.
- Dapat digunakan untuk pengaman rumah
Seperti yang dituliskan pada bab-bab
sebelumnya bahwa project ini dapat digunakan untuk mode aman atau safe mode. Dengan aktifnya mode
tersebut, maka alat akan otomatis menjadi mode siaga.
3.3
Metode Pembuatan
Metode yang kami gunakan dalam
membuat project IoT ini adalah metode kualitatif. Dengan metode kualitatif,
fokus pemahaman yang kami ambil adalah fenomena sosial yang sering terjadi di
masyarakat.
Selama pembuatan, terjadi beberapa
tahapan yaitu,
- Melakukan survei
Sebelum membuat project ini, kami
melakukan survei terlebih dahulu dengan melihat kondisi sekitar apa yang perlu
dipermudah dengan teknologi IoT ini dan apa yang tidak perlu.
- Mencari referensi
Setelah survei dan mendapatkan
masalah, maka kami mencari referensi yang tepat sesuai project apa yang ingin
kami kembangkan. Referensi dari berbagai sumber kami kumpulkan dan kami membuat
kesimpulan untuk menyelesaikan masalah yang ada.
- Membuat alat
Setelah melakukan survei dan
mendapatkan referensi yang tepat mengenai masalah yang ada, maka proses
pembuatan project dapat dilaksanakan. Adapun tahapan dalam pembuatan project
ini sebagai berikut.
a. Mengumpulkan alat dan bahan yang
dibutuhkan untuk membuat project IoT ini.
b.
Memprogram
Nodemcu dengan Arduino IDE, untuk program yang kami buat sebagai berikut.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 | #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> #include <ESP8266WebServer.h> #include <CTBot.h> #include <CTBotDataStructures.h> #include <CTBotInlineKeyboard.h> #include <CTBotReplyKeyboard.h> #include <Utilities.h> #include <EEPROM.h> /* PENJELASAN PIN D0 = Buzzer A0 = Sensor Flame */ int i = 0; int sumConnection; int statusCode; String pass; String ssid_; int ssid; String BotToken = "882232600:AAFZJ1qLdzNPxp40Csc5YtGDYB4LrICVWE4"; const int id = 787077279; String st; String content; CTBot botTL; bool testConnectWifi(); void createAP(); void createWebServer(); void launchWeb(); ESP8266WebServer server(80); //=========================================================== SETUP ==================================================================== // void setup() { Serial.begin(115200); while (!Serial) { ; } delay(3000); WiFi.mode(WIFI_STA); Serial.println("Disconnecting"); WiFi.disconnect(); delay(100); EEPROM.begin(512); // ========================================= READ EEPROM FROM CURRENT SSID AND PASS Serial.print("Reading SSID"); String essid; String espass = ""; for (int i = 0; i < 32; i++) { essid += char(EEPROM.read(i)); Serial.print("."); delay(100); } Serial.println(""); if (essid != NULL) { Serial.print("SSID: "); Serial.println(essid); } else { Serial.println("No such of SSID saved before!"); } Serial.print("Reading PASS"); for (int i = 32; i < 96; i++) { espass += char(EEPROM.read(i)); Serial.print("."); delay(100); } Serial.println(""); if (espass != NULL) { Serial.print("PASS: "); Serial.println(espass); } else { Serial.println("No such of Pass saved before!"); } WiFi.begin(essid.c_str(), espass.c_str()); if (testConnectWifi()) { Serial.println("Successfully Connected!!!"); } else { Serial.println("Turning the HotSpot On"); launchWeb(); createAP(); Serial.println(); Serial.println("Waiting."); while ((WiFi.status() != WL_CONNECTED)) { Serial.print("."); delay(100); server.handleClient(); } } botTL.setTelegramToken(BotToken); botTL.sendMessage(id, "Alat telah menyala!"); Serial.println("Pesan Terkirim"); botTL.sendMessage(id, "Password : "); bool benar = false; while (!benar) { TBMessage msg; if (botTL.getNewMessage(msg)) { if (!(msg.text.equalsIgnoreCase("thomiaditya"))) { botTL.sendMessage(id, "Password Salah!"); } else { botTL.sendMessage(id, "Password Benar!"); benar = true; } } } pinMode(D1, OUTPUT); pinMode(D2, OUTPUT); pinMode(D5, INPUT); Serial.println("Setup selesai"); } //=================================================================== END SETUP ============================================================== /* searchWifi() method Berguna untuk mencari wifi yang tersedia */ void createAP() { WiFi.mode(WIFI_STA); Serial.println("Disconnecting"); WiFi.disconnect(); delay(100); Serial.println("Scan start!"); int n = WiFi.scanNetworks(); sumConnection = n; Serial.println("Scan done!"); if (n == 0) { Serial.println("No networks found!"); } else { Serial.print(n); Serial.println(" Networks found!"); for (int i = 0; i < n; ++i) { Serial.print(i + 1); Serial.print(": "); Serial.print(WiFi.SSID(i)); Serial.print(" ("); Serial.print(WiFi.RSSI(i)); Serial.print(")"); Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE) ? " " : "*"); delay(10); } } Serial.println(""); st = "<ol>"; for (int i = 0; i < n; ++i) { // Print SSID and RSSI for each network found st += "<li>"; st += WiFi.SSID(i); st += " ("; st += WiFi.RSSI(i); st += ")"; st += (WiFi.encryptionType(i) == ENC_TYPE_NONE) ? " " : "*"; st += "</li>"; } st += "</ol>"; delay(100); WiFi.softAP("iothotspot"); Serial.println("softap"); launchWeb(); Serial.println("over"); } /* Menjalankan Website */ void launchWeb() { Serial.println(""); if (WiFi.status() == WL_CONNECTED) Serial.println("WiFi connected"); Serial.print("Local IP: "); Serial.println(WiFi.localIP()); Serial.print("SoftAP IP: "); Serial.println(WiFi.softAPIP()); createWebServer(); server.begin(); Serial.println("Server started"); } /* testConnectWifi() Method Mendeteksi apakah wifi terkoneksi Return bool; */ bool testConnectWifi() { Serial.print("Connecting please wait "); for (int i = 0; i < 35; i++) { if (WiFi.status() == WL_CONNECTED) { return 1; } delay(200); Serial.print("."); } Serial.println(""); Serial.println("Connection failed! (Gagal)"); return 0; } /* Membuat Web Server */ void createWebServer() { { server.on("/", []() { IPAddress ip = WiFi.softAPIP(); String ipStr = String(ip[0]) + '.' + String(ip[1]) + '.' + String(ip[2]) + '.' + String(ip[3]); content = "<!DOCTYPE HTML>\r\n<html>Hello from ESP8266 at "; content += "<form action=\"/scan\" method=\"POST\"><input type=\"submit\" value=\"scan\"></form>"; content += ipStr; content += "<p>"; content += st; content += "</p><form method='get' action='setting'><label>SSID: </label><input name='ssid' placeholder='Masukkan ID' length=32><br><label>PASS: </label><input name='pass' length=64><br><input type='submit'></form>"; content += "</html>"; server.send(200, "text/html", content); }); server.on("/scan", []() { //setupAP(); IPAddress ip = WiFi.softAPIP(); String ipStr = String(ip[0]) + '.' + String(ip[1]) + '.' + String(ip[2]) + '.' + String(ip[3]); content = "<!DOCTYPE HTML>\r\n<html>go back"; server.send(200, "text/html", content); }); server.on("/setting", []() { String qsid = WiFi.SSID(server.arg("ssid").toInt() - 1); String qpass = server.arg("pass"); if (qsid.length() > 0 && qpass.length() > 0) { Serial.println("clearing eeprom"); for (int i = 0; i < 96; ++i) { EEPROM.write(i, 0); } Serial.println(qsid); Serial.println(""); Serial.println(qpass); Serial.println(""); Serial.println("writing eeprom ssid:"); for (int i = 0; i < qsid.length(); ++i) { EEPROM.write(i, qsid[i]); Serial.print("Wrote: "); Serial.println(qsid[i]); } Serial.println("writing eeprom pass:"); for (int i = 0; i < qpass.length(); ++i) { EEPROM.write(32 + i, qpass[i]); Serial.print("Wrote: "); Serial.println(qpass[i]); } EEPROM.commit(); content = "{\"Success\":\"saved to eeprom... reset to boot into new wifi\"}"; statusCode = 200; ESP.reset(); } else { content = "{\"Error\":\"404 not found\"}"; statusCode = 404; Serial.println("Sending 404"); } server.sendHeader("Access-Control-Allow-Origin", "*"); server.send(statusCode, "application/json", content); }); } } //================================== GERAK SENSOR DLL ================================== String checking(int read) { if (read == 1) return "Menyala"; else if (read == 0) return "Mati"; } int sensorMotion (int read) { if (read > 100) return 1; else return 0; } void safeMode(int sensorMotion, TBMessage msg, CTBot botTL) { if (sensorMotion == 1) { digitalWrite(D1, HIGH); botTL.sendMessage(msg.sender.id, "Ada penyusup!!!"); delay(1); } else digitalWrite(D1, LOW); } bool safeModeOn = false; void loop() { TBMessage msg; if (botTL.getNewMessage(msg)) { if (msg.text.equalsIgnoreCase("BUZZER ON")) { digitalWrite(D1, HIGH); botTL.sendMessage(msg.sender.id, "Buzzer Menyala"); } else if (msg.text.equalsIgnoreCase("BUZZER OFF")) { digitalWrite(D1, LOW); botTL.sendMessage(msg.sender.id, "Buzzer Mati"); } else if (msg.text.equalsIgnoreCase("LAMPU ON")) { digitalWrite(D2, HIGH); botTL.sendMessage(msg.sender.id, "Lamp Menyala"); } else if (msg.text.equalsIgnoreCase("LAMPU OFF")) { digitalWrite(D2, LOW); botTL.sendMessage(msg.sender.id, "Lamp Mati"); } else if (msg.text.equalsIgnoreCase("CHECK")) { int sensorFlameAnalog = digitalRead(D5); String sensorApi = sensorFlameAnalog == 1 ? "Menyala" : "Mati"; botTL.sendMessage(msg.sender.id, "Lampu " + checking(digitalRead(D2)) + "\nBuzzer " + checking(digitalRead(D1)) + "\nKompor " + sensorApi ); } else if (msg.text.equalsIgnoreCase("SAFE MODE ON")) { safeModeOn = true; Serial.println("Safe Mode Online"); botTL.sendMessage(msg.sender.id, "Safe Mode Online"); } else if (msg.text.equalsIgnoreCase("SAFE MODE OFF")) { safeModeOn = false; Serial.println("Safe Mode Offline"); botTL.sendMessage(msg.sender.id, "Safe Mode Offline"); } else { String reply; reply = (String)"Aku tidak mengerti " + msg.sender.username + (String)"."; botTL.sendMessage(msg.sender.id, reply); } } if (safeModeOn) { safeMode(sensorMotion(analogRead(A0)), msg, botTL); Serial.println("Hai!!"); } // // // // Serial.println(analogRead(A0)); // // if (sensorFlameAnalog < 70) { // Serial.println("Danger, there's Fire around!"); // digitalWrite(D1, HIGH); // botTL.sendMessage(msg.sender.id, "Ada api!!"); // } else { // digitalWrite(D1, LOW); // } //Serial.println(sensorMotion(analogRead(A0))); } |
c.
Setelah
memasukkan program pada Nodemcu, kami memasangkan alat serta sensor yang
dibutuhkan ke pin yang tersedia sesuai program yang dibuat. Kami menggunakan
Nodemcu sebagai sumber tegangan 3.3V dan Arduino UNO sebagai sumber tegangan
5V.
- Tahapan uji coba
Untuk tahapan terakhir yaitu tahapan
uji coba alat. Tahapan ini adalah tahapan paling penting dari tahapan
sebelumnya. Karena pada tahapan ini terjadi pendapat-pendapat atau asumsi untuk
sebuah alat agar alat dapat mendekati sempurna. Dengan melakukan uji coba kami
menjadi tahu mana yang perlu dikembangkan dan mana yang sudah benar.
BAB IV PENUTUP
4.1 Kesimpulan
IoT ini merupakan suatu alat yang
terdiri dari modul WiFi atau Modul SIM Card yang berfungsi untuk berkomunikasi
antara sistem dan manusia dengan menggunakan jaringan internet atau dengan
menggunakan jaringan seluler. Dengan adanya IoT, pekerjaan kita lebih mudah
untuk diselesaikan.
Untuk projek kami yaitu Smart Home,
kami menggunakan modul Nodemcu sebagai konektor dengan jaringan wifi dan
sebagai otak dari program melalui Arduino IDE.
4.2 Saran
Untuk kedepannya kemungkinan alat
ini akan dikembangkan dengan menambah relay yang tersambung supaya dapat
digunakan untuk banyak alat elektronik di rumah.
LAMPIRAN
Tidak ada komentar:
Posting Komentar