KELOMPOK 4 PTI 2020B
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5ewMgRhDkNVlsN_fztjPmcGrXNpKoNOw9FROhblmAY_-FiPn5otElxXabqC2j76es7XEcGW3J6n3ZUueXgY1TKKL2Hvczvv9AfMz-0n9SkKmEwBa1nZj0RvRCej0P_QNDj3KNfGXw_oc/
Pada dasarnya, fungsi modul relay adalah sebagai saklar elektrik. Dimana ia akan bekerja secara otomatis berdasarkan perintah logika yang diberikan. Kebanyakan, relay 5 volt DC digunakan untuk membuat project yang salah satu komponennya butuh tegangan tinggi atau yang sifatnya AC (Alternating Current).
Sedangkan kegunaan relay secara lebih spesifik adalah sebagai berikut:
- Menjalankan fungsi logika dari mikrokontroler Arduino
- Sarana untuk mengendalikan tegangan tinggi hanya dengan menggunakan tegangan rendah
- Meminimalkan terjadinya penurunan tegangan
- Memungkinkan penggunaan fungsi penundaan waktu atau fungsi time delay function
- Melindungi komponen lainnya dari kelebihan tegangan penyebab korsleting.
- Menyederhanakan rangkaian agar lebih ringkas.
KABEL JUMPER (Jumper Wires) Adalah kabel-kabel pendek yang digunakan untuk menghubungkan antara komponen yang satu dengan komponen lainnya pada breadboard sehingga terdapat hubungan listrik dan terbentuk rangkaian elektronik.
Cara Kerja :
yaitu menghantarkan arus listrik dari satu komponen ke komponen lainnya yang dihubungkan. Ini terjadi karena di ujung dan di dalam kabel terdapat konduktor listrik kecil yang memang fungsinya untuk menghantarkan listrik.
Kelebihan :
- Memiliki konektor di ujungnya yang sangat memudahkan kita dalam memasang maupun melepas kabel ke komponen.
- Harganya terjangkau
- Memiliki warna bervariasi yang memudahkan kita dalam membuat rangkaian
Berbicara tentang kekurangannya, menurut saya kabel jumper Arduino tidak memiliki kekurangan yang berarti karena dengan adanya kabel jumper ini sudah sangat memudahkan kita dalam membuat rangkaian proyek.
Fitur dan Spesifikasi EPS32
A. Prosesor:
- Prosesor utama: Mikroprosesor Tensilica Xtensa 32-bit LX6
- Core: 2 atau 1 (tergantung variasi)
- Frekuensi jam: hingga 240 MHz
- Performa: hingga 600 DMIPS
- Ko-prosesor berdaya sangat rendah: memungkinkan Anda melakukan konversi ADC, komputasi, dan ambang batas level saat dalam tidur nyenyak.
B. Konektivitas nirkabel:
- Wi-Fi: 802.11 b / g / n / e / i (802.11n @ 2,4 GHz hingga 150 Mbit / s)
- Bluetooth: v4.2 BR / EDR dan Bluetooth Hemat Energi (BLE)
C. Memori:
Memori internal:
- ROM: 448 KiB
- SRAM: 520 KiB
- SRAM cepat RTC: 8 KiB
- RTC SRAM lambat: 8 KiB
- eFuse: 1 Kibit
Flash tertanam:
- 0 MiB (chip ESP32-D0WDQ6, ESP32-D0WD, dan ESP32-S0WD)
- 2 MiB (chip ESP32-D2WD)
- 4 MiB (modul ESP32-PICO-D4 SiP)
Flash eksternal & SRAM: ESP32 mendukung hingga empat flash QSPI eksternal 16 MiB dan SRAM dengan enkripsi perangkat keras berdasarkan AES untuk melindungi program dan data. ESP32 dapat mengakses flash QSPI eksternal dan SRAM melalui cache berkecepatan tinggi.
- Hingga 16 MiB flash eksternal dipetakan dengan memori ke dalam ruang kode CPU, mendukung akses 8-bit, 16-bit dan 32-bit. Eksekusi kode didukung.
- Hingga 8 MiB memori flash / SRAM eksternal dipetakan ke data CPU ruang, mendukung akses 8-bit, 16-bit dan 32-bit. Mendukung pembacaan data pada flashdisk dan SRAM. Penulisan data didukung di SRAM.
D. Input / output periferal:
Antarmuka periferal yang kaya dengan DMA yang mencakup kapasitif sentuh, ADC (pengonversi analog-ke-digital), DAC (pengonversi digital-ke-analog), I²C (Sirkuit Terpadu Antar), UART (penerima / pemancar asinkron universal), CAN 2.0 (Jaringan Area Pengontrol), SPI (Antarmuka Periferal Serial), I²S (Suara Inter-IC Terintegrasi), RMII (Antarmuka Independen Media yang Dikurangi), PWM (modulasi lebar pulsa), dan lainnya.
E. Keamanan:
- Fitur keamanan standar IEEE 802.11 semuanya didukung, termasuk WFA, WPA / WPA2 dan WAPI
- Boot aman
- Enkripsi flash
- 1024-bit OTP, hingga 768-bit untuk pelanggan
- Akselerasi perangkat keras kriptografi: AES, SHA-2, RSA, kurva elips kriptografi (ECC), generator bilangan acak (RNG).
F. Pin GPIO ESP32
WROOM DevKit V1.
Pada board ESP32
DevKit terdapat 25 pin GPIO (General Purpose Input Output) dengan masing –
masing pin mempunyai karakteristik sendiri – sendiri.
Pin hanya sebagai
INPUT :
- GPIO 34
- GPIO 35
- GPIO 36
- GPIO 39
Pin dengan
internal pull up, dapat diseting melalui program :
- GPIO14
- GPIO16
- GPIO17
- GPIO18
- GPIO19
- GPIO21
- GPIO22
- GPIO23
Pin tanpa internal
pull up (dapat ditambahkan pull up eksternal sendiri) :
- GPIO13
- GPIO25
- GPIO26
- GPIO27
- GPIO32
- GPIO33
BAB II
PENYUSUNAN
A. Membuat Bot Telegram menggunakan BotFather
BotFather adalah satu-satunya cara
membuat bot Telegram tanpa coding untuk memerintah bot yang ada. Caranya adalah
sebagai berikut:
- Buka BotFather. Ketik Botfather
di kotak pencarian Telegram Anda. Klik untuk membuka bot.
- Ketikkan perintah / newbot
untuk membuat bot baru.
- Pilih nama pengguna untuk bot
baru Anda. Nama pengguna bisa panjang antara 5-32 karakter tidak sensitif
huruf besar. lalu kemudian memasukan id bot yang di buat Sebagai aturan, nama pengguna harus diakhiri dengan sufiks
-bot, contoh tugasarkombot.
- Setelah selesai, Anda akan
menerima token API HTTP. yaitu sesuatu seperti: 435074775:
AAHRQTtAOhQ1POBw9L98ru6Giek0qafTvME.
- Amankan token ini dan simpan dengan aman. Jika ada yang memegang token ini, mereka dapat sepenuhnya mengendalikan bot Anda.
Download File Software Arduino IDE untuk Windows
Silahkan download Software IDE Arduino di https://www.arduino.cc/en/Main/Software. Kemudia pilih Windows Installer paling atas. kemudian akan tampil pilihan Download. Silahkan klik Just Download atau Contribute dan Download untuk donasi.Pilih Opsi Instalasi
Untuk Installation Option pilih semua option dan klik tombol Next.Pilih Folder
Installation Folder atau Pilihan Folder untuk memilih folder tempat menyimpan program arduino dan klik tombol install untuk memulai proses instalasi software.Proses Extract dan Instalasi di mulai
Proses instalasi di mulai,program di extract ke Windows.Install USB Driver
Saat proses instalasi sedang berlangsung akan muncul pilihan untuk install driver, pilih tombol instal,proses ini untuk mengenali dan melakukan komunikasi dengan board arduino melalui port USB.Proses Instalasi Selesai
Setelah selesai silahkan klik close.
- Pada Arduino IDE,
masuk menu File > Preferences hingga jendela dialog Preferences terbuka
- Pada Additonal
Board Manager URLs, klik button yang
berada di sebelah kanan field sehingga muncul kotak dialog sebagai berikut.
Isikan dengan URL https://dl.espressif.com/dl/package_esp32_index.json, lalu
klik OK.
- Jalankan Boards
Manager melalui menu Tools>board>board manager. Pastikan komputer
terhubung dengan koneksi internet, karena Arduino IDE akan mengunduh data dari
alamat url repositori yang dimasukan pada menu preferences di langkah
sebelumnya.
- Ketikan ESP32 pada
filter pencarian, sehingga muncul seperti gambar. Lalu klik Install
- Tunggu beberapa saat hingga proses download dan instalasi selesai. Lalu klik Close
D. Input Library CTBot
- Instal library Menggunakan manager Library
- Pada menu Sketch, pilih
menu Include Library>Manage Libraries
- Apabila sudah masuk ke Library
Manager, kemudian ketik “CTBot” pada filter pencarian, sehingga muncul seperti gambar. Lalu klik Install
- Tunggu beberapa saat hingga proses download dan instalasi selesai. Lalu klik Close
E. Membuat Sketch Code LightBot(CTBot)
- Pertama yang harus di
lakukan adalah klik menu file -> examples -> CTBot -> LightBot.
Pada sketch yang disediakan oleh CTBot sebenarnya ada beberapa pilihan. Namun, karna pada projek kali ini kami membuat sebuah home automation menggunakan riley dan lampu maka di sini kami memilih sketch LightBot. - Setelah sketch LightBot
di pilih makan akan muncul jendela Arduino baru yang berisi sketch yang sudah di pilih tadi.
- pada bagian #include
“CTBot.h”; berfungsi untuk memanggil library dari CTBot
- kemudian ada 4 variabel yaitu ssid,
pass, token, dan led. Variabel tersebut nantinya berfungsi
untuk mengkoneksikan esp32 kita ke relay, wifi dan bot
telegram yang telah kita buat.
> ssid = nama wifi yang akan kita koneksikan dengan eps32.
> pass = password wifi.
> token = berisi token bot telegram yang telah di buat menggunakan BotFather.
> led = pin yang nantinya akan disambungkan dari board esp ke pin relay. Untuk keterangan pin dapat dilihat pada masing-masing board yang digunakan (esp32/nodeMCU) dalam kasus kali ini kami menggunakan esp32 dan menginputkan pin 2 ke vairabel led. - pada function void setup ().
Didalamnya berisi codingan untuk mengkoneksikan esp32 board dengan wifi dan bot
telegram serta relay sesuai dengan isian variabel yang telah kita masukan.
> Serial.begin(115200); = merupakan sebuah perintah untuk mendeklarasikan kecepatan transfer data pada Arduino dalam satuan bps (bit per second). Pada sketch LightBot sudah tertulis 115.200 bps yang merupakan kecepatan maksimal pada Arduino. Sedangkan untuk Serial/println sendiri fungsi adalah untuk menampilkan data pada serial monitor yang ada di Arduino
> Mybot.wifiConnect(ssid, pass); = merupakan statement perintah untukmengkoneksikan board kita ke wifi sesuai dengan variabel ssid(nama wifi) dan pass (password wifi) yang telah kita isikan sebelumnya.
> Mybot.setTelegramToken(token); = statement yang berfungsi untuk menset token bot telegram yang telah kita buat yang nantinya akan dikoneksikan dengan perangkat IoT kita.
> Kemudian ada statement didalam if(). Yang berfungsi untuk mengecek proses koneksi yang telah dilakukan sebelumnya. Jika koneksi berhasil dilakukan maka serial monitor akan menunjukan bahwa “testConnection OK” apabila koneksi gagal atau ada permasalahan dalam pengkoneksian maka pada serial monitor akan tertulis “testConnection NOK”
> pinMode (led, OUTPUT); = merupakan statement untuk menset pin yang akan digunakan sebagai input/output pada board.
> digitalWrite(led, HIGH); = sebuah perintah untuk memberikan nilai 1(HIGH)/0(GROUND) pada pin yang telah kita pilih. Karna pada sketch LightBot ini menggunakan inverse logic yang artinya nilai HIGH/1 berfungsi untuk mematikan pin/mematikan relay begitu juga sebaliknya. - Pada function void loop ().
Berisi statement interaksi yang akan dilakukan user dan esp32 pada bot
telegram.
> Apabila user mengetikan “light on” pada telegram bot, maka esp akan menginisiasikan relay untuk menyala “digitalWrite(led, LOW);” sedangkan bot akan memberikan feedback berupa pesan “Light is now ON”. Begitu juga sebaliknya. Tulisan tersebut dapat di custom sesuai dengan keinginan user.
> Apabila user pertama kali menyalakan bot atau menghidupkan Kembali maka nantinya secara otomatis bot akan mengenerate pesan ke user beruma “welcome + id sender telegram + try light on or light off” - Pada bagian bawah terdapat delay(500)
yang berarti waktu tunda sebelum mengekesekusi perintah selanjutnya, dalam
satuan millisecond. 500 mili = 0.5 second.
Setelah variabel pada sketch telah disesuaikan dengan nama dan password wifi, token bot, dan pin yang akan digunakan, selanjutnya adalah proses upload
- Pilih menu tools -> board: “Arduino uno” -> ESP32 Arduino -> ESP32 Dev Modul
- Maka
akan muncul pada tool seperti ini
- Lalu
pastikan port telah sesuai dengan tempat kita menancapkan board esp pada
laptop/pc kita
- Setelah
itu klik upload
- Jika
sudah selesai maka pada bagian bawah akan muncul tulisan seperti ini
- Vcc(relay) -> Vin/3.3V(ESP32)
- Gnd(Relay) -> Gnd(ESP32)
- In(relay) -> Pin GPIO2(ESP32)
- maka akan jadi seperti ini
- Potong kabel, ambil bagian kanan
atau bagian ground kemudian pasang kabel sesuai contoh
- Pasang kabel pada tatakan lampu
- kabel kiri menuju lampu
- kabel kanan menuju
steker
- Pasang lampu ke tatakan
- Pada saat pertama kali membuka bot
klik start
- Maka akan muncul pesan dari bot
seperti ini dan keadaan lampu akan mati
- Ketika kita mengirim pesan “light
on” maka lampu akan menyala dan bot akan memberikan respon “Light is now ON”
- Ketika kita mengirim pesan “light off” maka lampu akan mati dan bot akan memberikan respon “Light is now OFF”
Tidak ada komentar:
Posting Komentar