Menghubungkan Node-RED dengan Arduino
- Menyalakan LED di Arduino (Wokwi) dengan node Inject (Node-RED)
- Menyalakan LED di Arduino (Wokwi) dengan suara (Alexa/Google Home)
- Menyalakan LED di Arduino (Wokwi) dengan Telegram
- Membaca Switch di Arduino (Wokwi) dan mengirimkan datanya ke Telegram
- Membacakan nilai Sensor di Arduino (Wokwi) dengan Alexa/Google Home
Berikut ini uraian masing-masing:
==========================================================================
1. Menyalakan LED di Arduino (Wokwi) dengan node Inject (Node-RED)
Berikut ini langkah-langkahnya:1. Buka Wokwi di link ini: https://wokwi.com/projects/429788223582224385
Gambar 1.1 Rangkaian Arduino Uno di Wokwi dengan LED di kaki D13
2. Penjelasan program Arduino:
- void setup() {
- Serial.begin(9600);
- pinMode(13, OUTPUT);
- }
- void loop() {
- }
- void serialEvent() {
- while (Serial.available()) {
- int data = Serial.parseInt();
- if (Serial.read() == char(13)) {
- if (data == 1) digitalWrite(13, HIGH);
- else digitalWrite(13, LOW);
- }
- }
- }
Catatan:
- Program di atas akan menyalakan LED di kaki D13 setiap kali port serial Arduino menerima karakter 1, dan mematikan LED di kaki D13 setiap kali port serial Arduino menerima karakter 0.
- Agar Wokwi bisa terhubung dengan port serial di komputer, silahkan menambahkan kode berikut ini di diagram.json.
{ "version": 1,"author": "dian artanto","editor": "wokwi","parts": [{"type": "wokwi-serial-port","id": "serial","attrs": {"baud": "9600"}},...],"connections": [["uno:0","serial:TX","",[]],["uno:1","serial:RX","",[]],...],"dependencies": {}}
3. Unduh flow (nodered_arduino1.json) di link ini:
4. Import flow tersebut, dengan membuka Menu, pilih Import, pilih Select a file to Import, arahkan ke lokasi file nodered_arduino1.json.
Gambar 1.3 Import flow nodered_arduino1.json
5. Apabila Import berhasil, maka akan terlihat 2 buah node Inject, yang output-nya terhubung ke node Serial Out, seperti terlihat pada gambar berikut ini. Klik 2 kali pada node Inject dengan label 1, terlihat isi msg.payload = 1 (tipe String: a-z) sesuai dengan labelnya. Begitu pula untuk node Inject dengan label 0, apabila dibuka, akan terlihat isi msg.payload = 0 (tipe String: a-z) sesuai dengan labelnya.
Gambar 1.4 Msg.payload node Inject pertama berisi String 1 dan node Inject kedua berisi String 0
6. Berikutnya klik 2 kali node Serial Out hingga muncul jendela, di kolom Serial Port, klik tombol pensil untuk mengedit, atur pilihan COM, pastikan menggunakan pasangan COM (lihat Device Manager), atur juga Baud Rate = 9600 (agar sama seperti baud rate Arduino di Wokwi), kemudian tambahkan karakter di bagian Output: \r\n sebagai akhiran (\r\n adalah karakter CR LF, yang sama dengan Enter). Klik Update, klik Done.
Gambar 1.5 Di node Serial Out, atur port COM, baud rate dan tambahkan karakter akhiran CR+LF
7. Berikutnya, klik tombol Deploy yang berada di kanan atas. Pilih opsi Modified flows agar flow yang sedang dibuka (dimodifikasi) saja yang dijalankan. Apabila muncul tulisan Successfuly deployed, maka flow tersebut dijalankan.
8. Berikutnya, buka kembali Wokwi di link ini: https://wokwi.com/projects/429788223582224385. Tekan tombol Start the Simulation, pastikan muncul kotak pemilihan Port COM. Dalam contoh di sini, digunakan pasangan COM5 dan COM6. Port COM5 untuk Node-RED, dan COM6 untuk Wokwi.
Gambar 1.7 Tekan tombol Start the simulation, pastikan muncul kotak pemilihan Port COM, pilih COM yang berpasangan dengan COM di Node-RED
9. Munculkan Wokwi berdampingan dengan Node-RED. Agar penekanan tombol di node Inject dapat terlihat di kolom Debug Message, tambahkan node Debug, hubungkan output node Inject 1 dan node Inject 0 ke node debug, Deploy sekali lagi, kemudian tekan tombol di samping node Inject 1, maka akan terlihat muncul pesan di kolom Debug Message, dan LED di Wokwi menyala.
Gambar 1.8 Tambahkan node Debug, hubungkan ke node Inject 1 dan node Inject 0, tekan Deploy, kemudian buat Node-RED dan Wokwi berdampingan, tekan tombol di samping node Inject 1, seharusnya LED di Wokwi menyala
10. Tekan tombol di samping node Inject 0, seharusnya muncul pesan di kolom Debug, dan LED di Wokwi padam.
Gambar 1.9 Tekan tombol di samping node Inject 0, maka muncul pesan di kolom Debug Message dan LED di Wokwi padam
11. Berikutnya, diinginkan LED yang dikontrol lebih dari 1. Untuk itu tambahkan 2 buah LED lagi, hubungkan ke kaki D11 dan kaki D12, tambahkan resistor 330 ohm di masig-masing LED untuk membatasi tegangan, seperti ditunjukkan pada gambar rangkaian Wokwi berikut ini: (link Wokwi: https://wokwi.com/projects/430006889237875713)
Gambar 1.10 Rangkaian Arduino Uno di Wokwi dengan 3 buah LED
12. Modifikasi kode program, sehingga ketika port serial Arduino menerima karakter 1: LED merah menyala, menerima karakter 0: LED merah padam, menerima karakter 3: LED kuning menyala, menerima karakter 2: LED kuning padam, menerima karakter 5: LED hijau menyala, menerima karatker 4: LED hijau padam.
- void setup() {
- Serial.begin(9600);
- pinMode(11, OUTPUT);
- pinMode(12, OUTPUT);
- pinMode(13, OUTPUT);
- }
- void loop() {
- }
- void serialEvent() {
- while (Serial.available()) {
- int data = Serial.parseInt();
- if (Serial.read() == char(13)) {
- if (data == 0) digitalWrite(13, LOW);
- if (data == 1) digitalWrite(13, HIGH);
- if (data == 2) digitalWrite(12, LOW);
- if (data == 3) digitalWrite(12, HIGH);
- if (data == 4) digitalWrite(11, LOW);
- if (data == 5) digitalWrite(11, HIGH);
- }
- }
- }
13. Di Node-RED, duplikasi node Inject hingga ada 6 node Inject. Susun secara bertingkat dari atas ke bawah, isi secara berturut-turut dengan karakter (String: a-z) 0, 1, 2, 3, 4, 5. Hubungkan ke-6 node Inject tersebut ke node Debug dan node Serial Out, seperti ditunjukkan gambar berikut ini.
Gambar 1.11 Tambahkan node Inject hingga ada 6 node Inject, dengan karakter yang dikirimkan secara berturut-turut: 0, 1, 2, 3, 4, dan 5
14. Buat Node-RED dan Wokwi berdampingan. Tekan tombol Deploy untuk menjalankan Node-RED. Setelah itu tekan tombol Start the simulation di Wokwi, seharusnya muncul kotak pilihan Port COM, pilih COM yang berpasangan dengan COM di Node-RED. Dalam contoh di sini, COM5 dan COM6 berpasangan, COM5 untuk Node-RED dan COM6 untuk Wokwi.
Gambar 1.12 Buat Node-RED dan Wokwi berdampingan, Deploy flow Node-RED, tekan tombol Start the Simulation Wokwi, pilih COM yang berpasangan
15. Tekan tombol di samping node Inject 1, maka muncul pesan di kolom Debug Messsage, dan LED merah menyala.
Gambar 1.13 LED merah menyala ketika tombol di node Inject 1 ditekan
16. Tekan tombol di samping node Inject 3, maka muncul pesan di kolom Debug Messsage, dan LED kuning menyala.
Gambar 1.14 LED kuning menyala ketika tombol di node Inject 3 ditekan
17. Tekan tombol di samping node Inject 5, maka muncul pesan di kolom Debug Messsage, dan LED hijau menyala.
Gambar 1.15 LED hijau menyala ketika tombol di node Inject 5 ditekan
18. Secara berurutan, tekan tombol di samping node Inject 0, node Inject 2 dan node Inject 4, maka muncul pesan di kolom Debug Messsage, dan ketiga LED padam.
Gambar 1.16 Ketiga LED padam ketika tombol di node Inject 0, node Inject 2 dan node Inject 4 ditekan
19. Rekan--rekan dapat mengunduh flow program Node-RED di atas di link ini:
20. Untuk lebih jelasnya, perhatikan video berikut ini:
Video menyalakan LED dengan node Inject
==========================================================================
2. Menyalakan LED di Arduino (Wokwi) dengan suara (Alexa/Google Home)
Diinginkan ketiga LED pada rangkaian Wokwi di atas dapat dihidup/matikan dengan suara, dengan memanfaatkan aplikasi Alexa Amazon atau Google Home.Berikut ini langkah-langkahnya:
1. Instal node-red-contrib-alexa-smart-home di Node-RED, caranya: buka Menu, pilih Manage palette, di jendela yang terbuka, klik Tab Install, di kolom Search Module, ketik "alexa smart home", tekan Enter, setelah node-red-contrib-alexa-smart-home muncul, tekan tombol Install, klik Close.
Gambar 2.1 Instal node-red-contrib-alexa-smart-home
Catatan: flow atau program Node-RED di bawah ini merupakan hasil pembuatan flow di topik sebelumnya. Bagi rekan-rekan yang belum membuatnya, silakan download di link ini:
https://drive.google.com/file/d/1ahW5qDAsw-tPWN_eTfD-raQ3sxlXV20X/view?usp=sharing
Gambar 2.4 Pilih Getting Started di halaman Node-RED Smart Home Control
Gambar 2.18(b) LED merah di-ON-kan dengan tombol di Alexa
Gambar 2.19(d) Ketiga LED di-OFF-kan dengan tombol di Google Home

Gambar 2.2 Tarik node Alexa Smart Home v3, tempatkan di halaman flow
3. Sementara node Alexa Smart Home v3 di halaman Flow1 masih terpilih, klik tombol Help (bergambar buku), maka di kolom kanan akan menampilkan informasi tentang node Alexa Smart Home v3. Klik link instruksi penggunaan.
Gambar 2.3 Klik link instruksi penggunaan node Alexa Smart Home v3
4. Terbuka halaman Node-RED Smart Home Control, klik Getting Started.
- Create an account via https://red.cb-net.co.uk/new-user.
- Verify your account, using the email sent following account creation
- Link your Amazon and/ or Google account with the Node-RED Smart Home Control API
- Define one or more devices.
- Install required Node-RED Nodes
- Setup Node-RED flows using your devices.
5. Seperti terlihat pada bagian Getting Started, ada 6 langkah yang diperlukan:
1. Buat akun di https://red.cb-net.co.uk/new-user
2. Verifikasi akun yang telah dibuat, menggunakan email yang dikirim
3. Hubungkan akun Amazon dan Google dengan API Node-RED Smart Home Control
4. Tambahkan Device dan pilih tipe yang sesuai
5. Instal node yang diperlukan di Node-RED
6. Buat flow di Node-RED, dan Deploy
6. Mulai dari langkah pertama membuat akun, klik link ini https://red.cb-net.co.uk/new-user, maka akan terbuka halaman seperti berikut ini. Isi dan kemudian tekan tombol Register.
Gambar 2.5 Halaman untuk membuat akun, isi dan kemudian tekan tombol Register
7. Verifikasi akun yang dibuat dengan membuka email yang didaftarkan dan klik verifikasi. Setelah terverifikasi, berikutnya tambahkan Device. Klik Add Device (apabila halaman Add Device ini belum muncul, klik pada tombol My Devices di menu Tab bagian atas).
Gambar 2.6 Tambahkan Device
8. Untuk menyalakan LED, pilih tipe Light/Bulb, dengan Interface: Power yang bisa ON/OFF. Jangan lupa mengisi Name dan Description. Dalam contoh di sini, digunakan nama merah untuk LED1, kuning untuk LED2 dan hijau untuk LED3. Isi Description dengan penjelasan singkat, contoh: on off.
Gambar 2.7 Pilih tipe dan interfaces, untuk menghidupkan dan mematikan LED, gunakan Tipe Light/Bulb dan Interface: Power, jangan lupa mengisi Name dan Description
9. Klik tombol Save, maka akan muncul sebuah nama di daftar Device.
Gambar 2.8 Muncul nama di daftar Device
10. Ulangi menambahkan Device hingga muncul 3 buah nama Device dengan tipe yang sama. Nama ini akan menjadi nama panggilan alat, baik di Alexa maupun di Google Home.
Gambar 2.9 Ulangi menambahkan Device hingga muncul 3 buah nama di daftar Device
11. Setelah berhasil membuat Device, buka kembali Node-RED, klik 2 kali node Alexa Smart Home v3, tekan tombol + untuk menambahkan akun baru, atau tombol pensil untuk mengedit akun sebelumnya.
Gambar 2.10 Buka kembali Node-RED, klik 2 kali node Alexa Smart Home v3, klik tombol + untuk menambahkan akun
12. Di kolom Username, isi akun dan isi password sesuai akun dan password yang didaftarkan di halaman Node-RED Smart Home Control, klik tombol Add.
Gambar 2.11 Isi akun dan password sesuai dengan yang didaftarkan di halaman Node-RED Smart Home Control
13. Apabila akun dan password sudah sesuai, maka di kolom Device akan muncul nama-nama Device sesuai dengan yang sudah ditambahkan, dalam contoh di sini, terlihat nama Device: merah, kuning, dan hijau. Pilih Device: merah, kemudian klik Done.
Gambar 2.12 Setelah akun yang dipilih sesuai, maka di kolom Device muncul nama-nama Device sesuai dengan yang ditambahkan, pilih merah, klik Done
14. Duplikasi node Device merah, dan kemudian di kolom Device, ganti pilihan merah menjadi kuning. Duplikasi lagi node Device kuning, dan kemudian di kolom Device, ganti pilihan kuning menjadi hijau, seperti ditunjukkan gambar berikut ini.
Catatan: Pastikan untuk memberi centang pada opsi Auto Acknowledge. Apabila tidak dicentang, Alexa tidak akan merespon permintaan on dan off saat dijalankan.
Gambar 2.13 Perbanyak node merah, kemudian ganti menjadi node kuning dan node hijau. Jangan lupa mencentang opsi Auto Acknowledge, agar Alexa bisa merespon saat dijalankan
15. Diinginkan ketika node merah menerima input "ON", maka akan mengirimkan karakter 1, dan ketika menerima input "OFF", akan mengirimkan karakter 0. Untuk itu tambahkan node function, isi dengan kode program berikut ini:
- if (msg.payload === "ON") {
- msg.payload = 1;
- return msg;
- }
- else if (msg.payload === "OFF") {
- msg.payload = 0;
- return msg;
- }
- return null;
Gambar 2.14 Tambahkan node function untuk mengubah input teks "ON" menjadi 1 dan intput teks "OFF" menjadi 0
16. Begitu pula untuk node kuning dan hijau, tambahkan node function, hanya output di kode programnya perlu diubah. Untuk node kuning, buat outputnya menjadi 3 untuk input "ON" dan outputnya menjadi 2 untuk input "OFF". Sedangkan untuk node hijau, buat outputnya menjadi 5 untuk input "ON" dan outputnya menjadi 4 untuk input "OFF". Hubungkan output ketiga node function tersebut ke node Debug dan juga ke node Serial Out.
node function untuk node kuning:
- if (msg.payload === "ON") {
- msg.payload = 3;
- return msg;
- }
- else if (msg.payload === "OFF") {
- msg.payload = 2;
- return msg;
- }
- return null;
node function untuk node hijau:
- if (msg.payload === "ON") {
- msg.payload = 5;
- return msg;
- }
- else if (msg.payload === "OFF") {
- msg.payload = 4;
- return msg;
- }
- return null;
Gambar 2.15 Tambahkan node function juga untuk node kuning dan node hijau; untuk node kuning, ubah outputnya menjadi 3 ketika input "ON" dan menjadi 2 ketika input "OFF", sedangkan untuk node hijau, ubah outputnya menjadi 5 untuk input "ON" dan menjadi 4 untuk input "OFF"
17. Setelah program di Node-RED selesai, langkah berikutnya, instal Alexa Amazon atau Google Home di HP Android dan lakukan pengaturan. Gambar berikut ini menunjukkan langkah-langkah pemasangan dan pengaturan Alexa:
Berikut ini langkah-langkah pengaturan Alexa Amazon, sesuai urutan nomor pada Gambar 2.16 di atas:
- Instal Alexa Amazon.
- Klik tombol bergambar lampu.
- Pilih Device.
- Buat layar turun ke bawah.
- Pilih Other.
- Pilih Can't find a matching logo?
- Pilih Device requires set up in a device maker app
- Klik pada link Smart Home Skills
- Di kolom Search Results, ketik "node red smart home"
- Pilih dari daftar: Node-RED Smart Home Control
- Klik Enable to Use, untuk menghubungkan Node-RED Smart Home Control dengan Alexa.
- Buat layar turun ke bawah.
- Isi Username dan Password sesuai dengan Username dan Password di akun yang telah didaftarkan di Node-RED Smart Home Control.
- Klik tombol Authorize, maka Alexa telah terhubung dengan API Node-RED Smart Home Control.
- Klik tombol Next, seharusnya Alexa menemukan Device yang dibuat di Node-RED Smart Home Control, apabila belum menemukan, klik tombol Discover Devices.
- Setelah Alexa menemukan Device merah, kuning dan hijau, set up ketiganya.
- Klik Continue, maka ketiga Device akan muncul di halaman awal.
- Klik tombol On/Off di samping masing-masing Device, atau gunakan suara "Alexa, turn on merah", atau "Alexa, turn off merah", atau "Alexa turn on kuning", dan seterusnya.
18. Selain menggunakan Alexa, API Node-RED Smart Home Control ini juga bisa dihubungkan dengan Google Home. Gambar-gambar berikut ini menunjukkan langkah-langkah pemasangan dan pengaturan di Google Home:
- Buka Play Store, instal dan kemudian buka Google Home.
- Klik Buat rumah.
- Beri nama rumah.
- Klik Simpan.
- Isi alamat rumah atau lewati.
- Klik Perangkat untuk membuka halaman Perangkat.
- Klik Tambahkan perangkat.
- Pilih jenis perangkat ketiga: Kompatibel dengan Google Home.
- Tekan tombol pencarian.
- Ketik "node-red"
- Pilih Node RED Smart Home Control.
- Pilih Lanjutkan.
- Isi Username dan Password sesuai dengan akun yang didaftarkan.
- Klik tombol Authorize.
- Muncul nama ketiga Device yang telah didaftarkan, lakukan pengaturan/penambahan ketiga perangkat.
- Klik tombol Selesai.
- Di halaman Perangkat, nyala/matikan ketiga Device dengan meng-klik tombol sesuai dengan nama Device-nya.
- Gunakan suara untuk menghidup/matikan ketiga Device, contoh "Google, turn on merah", "Google turn off merah", "Google turn on kuning", dst.nya.
19. Sampai di sini pengaturan Alexa maupun Google Home selesai. Jalankan Node-RED dengan men-Deploy flow, diikuti dengan menjalankan simulasi Wokwi. Pastikan kotak dialog pemilihan Port COM muncul. Pilih COM yang berpasangan dengan COM di Node-RED. Setelah simulasi berjalan, hidup/matikan ketiga LED di Wokwi dengan menggunakan tombol atau menggunakan suara di aplikasi Alexa Amazon atau di Google Home, seperti ditunjukkan gambar berikut ini:
Gambar 2.18(a) LED hijau di-ON-kan dengan tombol di Alexa
Gambar 2.18(b) LED merah di-ON-kan dengan tombol di Alexa
Gambar 2.19(d) Ketiga LED di-OFF-kan dengan tombol di Google Home
20. Rekan--rekan dapat mengunduh flow program Node-RED di atas di link ini:
21. Untuk lebih jelasnya, perhatikan video berikut ini:
Video pembuatan kontrol LED dengan suara di Alexa/Google Home
==========================================================================
3. Menyalakan LED di Arduino (Wokwi) dengan Telegram
Diinginkan ketiga LED pada rangkaian Wokwi di atas dapat dihidup/matikan dengan Telegram.
Berikut ini langkah-langkahnya:
Catatan: Untuk bisa mengikuti langkah-langkah pembuatan berikut ini, silakan bisa mengunduh flow sebelumnya, yang bisa diunduh di link ini:
https://drive.google.com/file/d/1ahW5qDAsw-tPWN_eTfD-raQ3sxlXV20X/view?usp=sharing1. Di Node-RED, instal node-red-contrib-telegrambot.
Gambar 3.1 Instal node-red contrib telegrambot
2. Setelah terinstal, di kolom filter nodes di pojok kiri atas, ketik telegram, kemudian tarik node Telegram Receiver, tempatkan di halaman Flow, kemudian hubungkan kaki output Telegram Receiver ini ke node Debug.
Gambar 3.2 Tempatkan node Telegram Receiver, hubungkan kaki outputnya ke node Debug
Catatan: Agar tidak membuat masalah, node Alexa merah, kuning dan hijau, tidak disertakan dalam flow yang diunduh di atas.
3.
Klik 2 kali node Telegram Receiver, tekan tombol + untuk menambahkan nama Telegram Bot.
Gambar 3.3 Klik 2 kali node Telegram Receiver, di kolom Bot, tekan tombol + untuk menambahkan Bot
4. Di jendela penambahan Bot, ada 2 kolom yang perlu diisi, yaitu Nama Bot dan Token. Nama Bot dan Token ini dapat diperoleh dari pembuatan Bot di Telegram.
Gambar 3.4 Ada 2 kolom yang perlu diisi, yaitu Nama Bot dan Token
5. Buka aplikasi Telegram di HP atau di PC. Di kolom Search, ketik BotFather. Klik 2 kali BotFather hingga terbuka halaman chat dengan BotFather. Di kolom Write a message, klik tombol Menu, klik pilihan /newbot.
Gambar 3.5 Buat Bot dengan bantuan BotFather, pilih /newbot
6. BotFather akan meminta kita memasukkan sebuah nama. Nama ini nantinya digunakan untuk nama profil Bot. Silahkan membuat nama yang unik, sehingga belum ada yang menggunakan nama tersebut. Berikutnya, kita akan diminta lagi untuk memasukkan nama kedua. Nama kedua ini nantinya yang digunakan untuk mengisi nama Bot di node Telegram Receiver, nama kedua ini harus diakhiri dengan kata "bot". Dalam contoh di sini, saya menggunakan nama profil "nodered_telegram", sedangkan nama keduanya adalah "nodered_telegram_wokwi_bot". Apabila pembuatan nama unik berhasil, BotFather akan memberikan kode Token, seperti terlihat pada gambar berikut ini:
Gambar 3.6 Buat 2 buah nama, yaitu nama profil dan nama untuk komunikasi yang diakhiri dengan kata Bot, apabila pembuatan nama berhasil, BotFather akan memberikan kode Token
7. Isikan nama yang diakhiri dengan kata Bot dan kode Token ke kolom isian node Telegram Receiver. Klik tombol Add.

Gambar 3.7 Isi kolom Nama Bot dengan nama yang diakhiri kata Bot, dan kode Token yang diberikan BotFather, klik tombol Add
8. Muncul jendela Edit yang pertama, pilih Bot yang sudah dibuat, klik Done. Kemudian klik tombol Deploy. Di Telegram, klik link untuk membuka Bot yang baru, yang diawali dengan kata t.me/...
Gambar 3.8 Di Node-RED, Klik Done, klik Deploy. Di Telegram, klik link t.me/... untuk membuka halaman chat Bot yang baru
9. Di halaman chat Bot yang baru, klik Mulai atau /start, maka terlihat di kolom Debug Message Node-RED, akan muncul data, dengan isi content: "/start".
Gambar 3.9 Tempatkan node Telegram Receiver, hubungkan outputnya ke node Debug
10. Di halaman chat Bot yang baru, ketik "halo nodered", maka kembali di kolom Debug Message Node-RED, akan muncul data dengan isi content: "halo nodered".
Gambar 3.10 Ketik sembarang kata di Telegram, akan muncul kata tersebut di kolom Debug Message Node-RED
11. Diinginkan node Telegram Receiver bisa mengirimkan data untuk Serial Out, untuk keperluan mengontrol ketiga buah LED. Untuk itu, bagaimana membuat output di node Telegram Receiver hanya mengeluarkan isi content saja, bukan semua data.
Gambar 3.11 Diinginkan node Telegram Receiver hanya mengeluarkan isi content saja, untuk keperluan kontrol LED melalui komunikasi serial
12. Untuk bisa mengeluarkan isi content saja, perlu penambahan node Change, yang bisa membuat nilai output sesuai dengan data tertentu. Sisipkan node Change (set msg.payload) di antara node Telegram Receiver dengan node Debug. Hubungkan juga output node Change ini ke node Serial Out.
Gambar 3.12 Sisipkan node Change di antara node Telegram Receiver dengan node Serial Out
13. Klik 2 kali node Change, isi pada kolom to the value = msg.payload.content, klik Done, klik Deploy.
Gambar 3.13 Klik 2 kali node Change, isi di kolom to the value = msg.payload.content, klik Done, klik Deploy
14. Agar Wokwi bisa dijalankan, Wokwi harus dimunculkan di layar. Klik link ini: https://wokwi.com/projects/430006889237875713. Buat Wokwi berdampingan dengan Node-RED dan Telegram. Jalankan Wokwi, pastikan kotak dialog pencarian Port COM muncul. Pilih COM yang berpasangan dengan COM di Node-RED, dalam contoh di sini, COM5 dan COM6 berpasangan, COM5 untuk Node-RED dan COM6 untuk Wokwi.
Gambar 3.14 Buat tampilan Wokwi berdampingan dengan Node-RED dan Telegram, jalankan Wokwi, pastikan kotak dialog pencarian COM muncul, pilih COM yang berpasangan dengan COM di Node-RED
15. Di Telegram ketik angka 1, seharusnya di kolom Debug muncul karakter 1, dan LED merah di Wokwi menyala.
Gambar 3.15 Ketik angka 1 di Telegram, maka LED merah menyala
16. Di Telegram ketik angka 3, seharusnya di kolom Debug muncul karakter 3, dan LED kuning di Wokwi menyala.
Gambar 3.16 Ketik angka 3 di Telegram, LED kuning menyala
17. Di Telegram ketik angka 5, seharusnya di kolom Debug muncul karakter 5, dan LED hijau di Wokwi menyala.
Gambar 3.17 Ketik angka 5 di Telegram, LED hijau menyala
18. Di Telegram ketik angka 0, 2 dan 4, seharusnya ketiga LED di Wokwi padam.
Gambar 3.18 Ketik angka 0, 2 dan 4 di Telegram, ketiga LED padam
19. Mengetikkan angka 0 - 5 di Telegram terlihat kurang praktis. Terinspirasi dengan video ini https://youtu.be/bGzOImDQlo0?feature=shared, maka akan lebih baik apabila di Telegram muncul tombol menu angka 0 - 5 yang bisa ditekan. Untuk menambahkan tombol menu angka tersebut, gunakan node Telegram Command, kemudian diikuti node Function, dan terakhir tambahkan node Telegram Sender, hubungkan ketiga node tersebut.
Gambar 3.19 Ambil node Telegram Command, node Function dan node Telegram Sender, hubungkan ketiga node tersebut
20. Klik 2 kali node Telegram Command, pilih nama Bot sebelumnya, di kolom Command, isi dengan sembarang kata diawali dengan tanda garis miring. Dalam contoh di sini, menggunakan kata "/kontrol". Setiap kali kata "/kontrol" diketikkan di Telegram, node Telegram Command ini akan dijalankan.
Gambar 3.20 Pilih nama Bot, isi kolom Command dengan kata sembarang diawali garis miring
21. Klik 2 kali node Function, isi dengan kode program di bawah gambar ini.
Gambar 3.21 Ketik angka 5 di Telegram, LED hijau menyala
Kode program node Function4:
- var opts = {
- reply_markup: JSON.stringify({
- "inline_keyboard": [[
- {
- "text": "0",
- "callback_data": "0"
- },
- {
- "text": "1",
- "callback_data": "1"
- },
- {
- "text": "2",
- "callback_data": "2"
- },
- {
- "text": "3",
- "callback_data": "3"
- },
- {
- "text": "4",
- "callback_data": "4"
- },
- {
- "text": "5",
- "callback_data": "5"
- }]
- ]
- })
- };
- msg.error = false;
- msg.payload.content = 'Pilihan?';
- msg.payload.options = opts;
- msg.payload.chatId = 1773437310;
- msg.payload.type = "message";
- return [msg];
Catatan: Baris 34 memerlukan chatId. Untuk mendapatkan chatId ini, silakan menghubungkan node Telegram Receiver ke node Debug, dan klik Deploy. Kirim sembarang karakter dari Telegram, dan perhatikan kolom Debug Messages, seharusnya muncul data lengkap, termasuk chatId, seperti terlihat pada Gambar 3.11 di atas. Copy chatId tersebut, dan tempelkan menggantikan angka di baris 34.
22. Klik 2 kali node Telegram Sender, pilih nama Bot yang dibuat sebelumnya, klik tombol Save.
Gambar 3.22 Klik 2 kali node Telegram Sender, pilih nama Bot yang dibuat sebelumnya
23. Klik Deploy. Buka Telegram, ketikkan kata di kolom Command (dalam contoh ini menggunakan kata /kontrol), maka akan muncul tombol pilihan seperti gambar berikut.
Gambar 3.23 Di Telegram, ketik kata /kontrol, maka muncul tombol pilihan 0 - 5
24. Untuk bisa menangkap pilihan yang dimasukkan pengguna di Telegram, tambahkan node Telegram Event (callback_query). Hubungkan node ini ke node Debug. Klik 2 kali node ini, pilih nama Bot yang dibuat sebelumnya, klik Done. Klik Deploy.
Gambar 3.24 Ambil node Telegram Event (callback_query), hubungkan ke node Debug, di node Telegram Event ini, pilih nama Bot yang dibuat sebelumnya
25. Ketikkan angka 0 - 5 di node Telegram secara berurutan, maka akan terlihat di kolom Debug Messages, muncul data lengkap, dengan content bertipe String, mulai dari 0 - 5. Data lengkap ini sama seperti data yang dihasilkan node Telegram Receive.
Gambar 3.25 Ketik angka 5 di Telegram, LED hijau menyala
26. Sama seperti node Telegram Receiver, agar data yang diberikan ke node Serial Out hanyalah isi content saja, maka perlu penambahan node Change (set msg.payload). Untuk itu, sebelum ke node Serial Out, lewatkan output node Telegram Event (callback_query) ke node Change dulu, baru output node Change masuk ke node Serial Out dan node Debug. Klik Deploy, kemudian tekan tombol 0 - 5 di Telegram, maka terlihat di kolom Debug Messages akan muncul data String 0 - 5.
Gambar 3.26 Berikan output node Telegram Event (callback_query) ke node Serial Out dan node Debug melalui node Change (set msg.payload)
27. Klik Deploy, buat Node-RED dan Telegram dan Wokwi berdampingan. Tekan tombol angka 0 - 5 di Telegram secara berturut-turut, maka akan terlihat muncul teks 0 - 5 di kolom Debugs Messages, serta ketiga LED dapat dinyalakan/dimatikan.
Gambar 3.27 Tekan tombol angka 0 - 5 di Telegram, maka akan muncul data teks 0 - 5 di kolom Debug Message dan ketiga LED di Wokwi dapat dinyalakan/dipadamkan
28. Rekan--rekan dapat mengunduh flow program Node-RED di atas di link ini: https://drive.google.com/file/d/1h7GkkXg5ElEVrG5oVZVmFbJDy_oAwCNM/view?usp=sharing
29. Untuk lebih jelasnya, perhatikan video berikut ini:
Video menyalakan LED dengan telegram
==========================================================================
4. Membaca Switch di Arduino (Wokwi) dan mengirimkan datanya ke Telegram
Diinginkan ada 4 buah Switch (saklar) di Arduino yang kondisinya dapat dibaca dan ditampilkan di Telegram. Berikut ini langkah-langkahnya:
==========================================================================
5. Membacakan nilai Sensor di Arduino (Wokwi) dengan Alexa/Google Home
Diinginkan ada sebuah sensor di Arduino yang kondisinya dapat dibacakan dan ditampilkan di Alexa/Google Home. Berikut ini langkah-langkahnya:












































































No comments:
Post a Comment