29 Nov 2020

Cara Membuat Membuat Saklar Otomatis via Wifi Android 4 Channel (Internet of Things) IoT

Kali ini kita akan membuat saklar otomatis berbasis WiFi dikendalikan melalui internet yang bisa digunakan untuk mengontrol 4 peralatan elektronik seperti lampu, kipas angin TV dan lain-lain, cukup dikontrol melalui handphone bisa kapan saja dan dimana saja.

Jika kamu ingin membuat PCB dan sedang mencari jasa cetak PCB, bisa langsung order saja ke PCBWAY.COM, harganya lebih murah $5 bisa mendapatkan papan PCB 10 keping dengan kualitas PCB yang sangat bagus.

Gambar Rangkaian

Berikut gambar rangkaian PCB nya seperti dibawah:

Daftar Komponen:

  • 1 x PCB SwitchIoT 4CH (PCBWAY)
  • 1 x NodeMCU Amica ESP8266
  • 4 x NPN Transistor BC547
  • 4 x Diode 1N4148
  • 4 x Yellow LED 3mm
  • 1 x Blue LED 3mm
  • 8 x Resistor 1K Ohm 1/4W
  • 1 x Resistor 330 Ohm 1/4W
  • 4 x Tact Switch 18mm
  • 4 x Relay 5VDC
  • 1 x Hi-Link Step-Down 220VAC to 5VDC
  • 2 x 15 pin Female Header
  • 5 x 2 pin Terminal Block Screw

  • Order PCB (PCBWAY)

    Untuk membuat proyek ini kamu perlu memesan prototipe PCB di PCBWAY. Cara pemesanannya sangat mudah, kamu akan mendapatkan 10 keping PCB seharga $5 dengan kualitas PCB yang sangat bagus.

    Langkah-langkah order:

    1. SignUp/Log in di pcbway.com

    2. Buka tautan proyek PCB ini.

    3. Klik Tambahkan ke troli.

    4. Tunggu sebentar untuk review PCB, lalu Klik Check Out.

    Memasang Komponen

    Instal semua komponen pada PCB mengikuti gambar/simbol komponen yang ada pada bagian atas PCB, untuk lebih jelasnya dapat mengikuti step by step pada video youtube.

    Menyolder Komponen

    Solder semua kaki komponen pada bagian bawah PCB, untuk lebih jelasnya dapat mengikuti step by step pada video youtube.

    Memotong kaki Komponen

    Setelah selesai menyolder semua kaki komponen, potong bagian kaiki komponen yang masih panjang menggunakan tang potong.

    Pasang NodeMCU ESP8266

    Setelah selesai semua komponen terpasang dan tersolder, langkah selanjutnya pasang board ESP8266 pada port yang sudah tersedia, perhatikan arah pemasangannya jangan sampai terbalik.

    Upload/Mengisi firmware ke NodeMCU ESP8266

    Untuk mengisi firmware dari handphone android ke NodeMCU perlu memakai USB OTG adapter/cable cara pemasangan seperti terlihat pada gambar.

    Perhatikan ketika akan mengisi firmware menggunakan Handphone Android, jangan menyambungkan perangkat ke sumber listrik 220VAC, untuk mengindari kerusakan pada handphone.

    Buka Google Playstore kemudian Instal Aplikasi SwitchIoT 4CH.

    Buka aplikasi SwitchIoT 4CH, masuk ke menu pengaturan widget, pilih opsi "Upload firmware via USB", lalu pada pilihan Relay_Pin Aktive set ke HIGH. Terakhir tekan tombol "UPLOAD" dan tunggu sampai proses menulis firmware selesai. Jika Anda tidak memiliki USB OTG atau Anda merasa berisiko dengan handphone apabila mengupload firmware dari handphone, kamu dapat menghasilkan file firmware dalam format *.bin (contoh: 0x00000_32e5_NodeMCU.bin) dengan cara menekan tombol "GENERATE .BIN" pada Aplikasi kemudian kamu bisa mengirimkannya ke email atau penyimpanan online, selanjutnya buka di komputer kamu kemudian upload firmware tersebut menggunakan software NodeMCU Flasher.

    Menghubungkan Perangkat Keras SwitchIoT 4CH ke Jaringan

    Setelah proses pengisian firmware selesai, hidupkan perangkat keras dan amati apa yang terjadi. Pertama kali LED status yang terhubung ke pin GPIO4 akan nyala berkedip cepat, itu tandanya perangkat tidak terhubung ke jaringan apa pun (atau dalam mode AP dengan nama host siot-xxxx), Kamu perlu menambahkan jaringan yang akan digunakan oleh perangkat.
    Buka Aplikasi SwitchIoT 4CH kemudian masuk ke menu setting dan pilih menu "Connect device to network", pastikan LED status masih nyala berkedip cepat, kemudian hubungkan smartphone kamu ke jaringan (sinyal wifi) dengan nama siot-xxxx, setelah itu isi SSID dan password jaringan yang akan digunakan oleh perangkat SwitchIoT. Lalu tekan "CONNECT", tunggu sampai selesai.

    Bagikan Token SwitchIoT Dengan Pengguna Lain

    Pemilik perangkat keras SwitchIoT 4CH dapat memberikan akses yang sama kepada orang lain, dan dengan demikian orang lain dapat menghidupkan/mematikan, mengubah schedule, timer, looptimer dan memberi nama perangkat menggunakan aplikasi SwitchIoT 4CH. Fungsi ini sangat cocok untuk keluarga serumah karena akan memungkinkan mereka untuk mengontrol bersama.

    Cara membagikan token perangkat keras SwitchIoT 4CH sangat mudah, kamu hanya perlu membagikan token unik kepada orang lain, dan mereka tinggal mengisikannya ke aplikasi SwitchIoT 4CH.

    Token dari setiap perangkat keras SwitchIoT 4CH adalah bersifat unik dan dihasilkan dari handphone Android kamu, oleh karena itu token ini bersifat permanen, Anda harus hati-hati untuk membagikannya dengan orang lain.

    Selamat Mencoba

    Untuk menghidupkan/mematikan ke 4 channel sakelar tersebut dilakukan melalui aplikasi secara online, kamu juga dapat menghidupkan/mematikan secara lokal dengan cara menekan tombol push button yang ada pada perangkat.
    Coba juga fitur menarik lainnya di aplikasi useperti Schedule, Timer dan Looptimer.

    21 Sep 2020

    Kit Elektronik Latihan Menyolder - Robadge#1 Flip-Flop

    Bagi agan-agan yang baru mengenal elektronik dan ingin belajar, terutama latihan menyolder komponen dasar ke papan PCB. Bisa coba Soldering Kit Robadge#1, selain bisa sebagai sarana latihan menyolder, Kit ini juga bentuknya lucu dan berfungsi sebagai rangkaian Flip-Flop (lampu LED kedap-kedip) yang bisa agan-agan pasang jadi bross menyala dibaju.


    Untuk mendapatkan Soldering Kit Robadge#1 bisa order di tokopedia.com/bluino.

    Atau jika agan ingin order PCB saja dengan jumlah lebih banyak, bisa langsung order saja PCBnya di PCBWAY.COM, harganya lebih murah $5 bisa mendapatkan papan PCB 10 keping dengan kualitas PCB yang sangat bagus. Bisa order melalui link PCB Robadge#1 disini.

    Gambar Rangkaian

    Berikut gambar rangkaiannya seperti dibawah:

    Daftar Komponen:

    • 1x PCB Robadge#1
    • 2x Transistor NPN BC527
    • 2x LED 5mm
    • 2x C 100uF/16V
    • 2x R 100 ohm 1/4W
    • 2x R 10K ohm 1/4W
    • 1x Saklar SPDT SS12D00G3
    • 1x Baterai Coin CR2032
    • 1x Dudukan Baterai Coin CR2032
    • 1x Pin Peniti besi

    LANGKAH-LANGKAH PERAKITAN

    Pasang Komponen

    Lubang kaki komponen resistor didisain untuk ukuran 1/6W. Namun masih bisa menggunakan ukuran yang lebih besar 1/4W, caranya dengan menekuk salah satu sisi kaki resistor seperti terlihan digambar, kemudian memasukannya ke lubang kaki komponen di PCB.
    Untuk pemasangan komponen lainnya mudah saja cukup dimasukan ke lubang kaki komponen di PCB mengikuti lambang/simbol pada papan PCB.

    Perhatikan jangan sampai terbailik pemasangannya, untuk kaki komponen yang lebih panjang berarti Positif.

    Menyolder Komponen

    Setelah semua komponen terpasang pada PCB, balikan PCB tersebut kemudian solder satu persatu dari setiap kaki komponen. Gunakan tang pemotong untuk memotong sisa kaki komponen yang panjang.

    Menyolder Dudukan Baterai

    Pasangkan dudukan baterai pada bagian belakang PCB kemudian solder kedua kakinya pada bagian depan PCB.

    Menyolder Pin Peniti

    Gunakan tang untuk membantu memegang Pin peniti ketika disolder, supaya tidak melukai tangan karena panas. Ketika menyolder perlu menempelkan mata solder cukup lama supaya timah bisa menempel dengan PCB dan Pin peniti.

    Memasang Baterai

    Baterai yang digunakan adalah tipe Cr2032 3V yang biasa digunakan untuk jam. Ketika memasang baterai jangan sampai terbalik kutub positif (tandanya terdapat tulisan) berada diatas atau menghadap keluar.

    Menuliskan Nama

    Pada bagian bawah dari PCB terdapat area putih, agan bisa menuliskan nama agan sendiri atau tulisan yang agan inginkan menggunakan spidol permanen.

    Menyalakan

    Untuk meyalakannya pada bagian depan terdapat saklar, geser ke kanan posisi ON dan agan akan melihat lampu LED pada bagian mata robot kedip bergantian.

    4 Sep 2020

    Upload Program Arduino Wireless Bluetooth

    Hai agan-agan sekalian, dalam tutorial kali ini ane akan menunjukan bagaimana cara Arduino Uno kamu supaya bisa diprogram menggunakan HP Android tanpa kabel alias lewat bluetooth. Caranya sangat mudah sekali, mari kita mulai saja! :)

    Tutorial ini disponsori oleh perusahaan jasa pembuatan PCB dari china PCBWAY dengan kualitas yang sangat bagus, semua produk Bluino Electronics menggunakan jasa percetakan PCBWAY.

    Peralatan dan Komponen

    • Arduino Uno
    • Bluetooth HC-05 module
    • Mini breadboard
    • Capacitor 1uf/50v (elco)
    • 5 pcs x Jumper wires Female to Male
    • USB cable
    • Android Smartphone
    • Laptop/PC

    Software:

    Program Arduino Kamu menggunakan Laptop/Komputer

    Salin kode yang ada pada kolom deskripsi dibawah ke jendela editor Arduino IDE, kemudian pada menu Tools pilih Board Arduino UNO, terakhir tekan icon Upload untuk mengisikan program ke board Arduino Uno.

    
    #include <SoftwareSerial.h>
    
    SoftwareSerial BTSerial(10, 11); // RX | TX
    
    void setup(){
      pinMode(9, OUTPUT);     
      digitalWrite(9, HIGH);  // pin ini akan membuat kondisi HIGH pada HC-05 pin EN (key pin), merubah menjadi mode AT Command
      Serial.begin(9600);     // Baud rate antara komputer dengan Arduino Uno
      Serial.println("Enter AT commands:");
      BTSerial.begin(38400);  // Baud rate antara Arduino Uno dengan HC-05, mode AT Command
    }
    
    void loop(){
      
      // Arduino uno menunggu balasan peritah dari HC-05 kemudian meneruskan kirim data ke Arduino Serial Monitor
      if (BTSerial.available())
        Serial.write(BTSerial.read());
    
      // Arduino Uno menunggu perintah dari Arduino Serial Monitor kemudian meneruskan kirim data ke HC-05
      if (Serial.available())
        BTSerial.write(Serial.read());
    }
    
    

    Pada baris kode diatas berisikan program yang memfungsikan Arduino Uno sebagai jembatan penghubung komunikasi antara serial monitor pada software Arduino IDE dengan Bluetooth HC-05 (pada mode AT Command).

    Langkah selanjutnya rangkai Arduino Uno dengan Bluetooth HC-05 seperti gambar dibawah, akan lebih mudah merangkainya menggunakan kabel jumper Dupont Male to Female.

    Setelah selesai merangkai hubungkan Arduino IDE ke Laptop/Komputer, buka Serial Monitor pada software Arduino IDE dan pilih baud rate 9600.

    Pastikan LED pada modul buletooth HC-05 berkedip dengan interval sekitar 2 detik yang menandakan HC-05 dalam mode AT Command dan siap menerima perintah untuk merubah parameter dari HC-05 tersebut. Pada Arduino IDE Serial Monitor ketik dan kirimkan perintah "AT" kemudian akan ada balasan "OK", ini tandanya rangkaian dan program yang kamu buat sudah benar.

    Sekarang saatnya merubah beberapa parameter pada bluetooth HC-05 supaya nantinya dapat berfungsi untuk upload board Aruino Uno melalui wireless bluetooth. Parameter yang perlu kamu rubah adalah:

    • AT+NAME=Bluino#01 (untuk merubah nama modul bluetooth, default "HC-05")
    • AT+UART=115200,0,0 (untuk merubah baud rate menjadi 115200, default "9600")
    • AT+POLAR=1,0 (untuk merubah kondisi pin STATE menjadi "HIGH/1", default "LOW/0")

    Kamu juga dapat merubah parameter lain yang biasa diperlukan:

    • AT+ORGL (untuk mengembalikan parameter HC-05 ke settingan default)
    • AT+PSWD=0000 (untuk merubah code keamanan pairing, default "1234")
    • AT+RESET (untuk keluar dari mode AT Command")

    Pastikan dari setiap perintah yang dikirim mendapatkan respon/balasan "OK", atau kamu dapat memastikan kembali apakah parameternya sudah berubah dengan mengirimkan perintah AT Command tanpa diikuti nilai parameter contoh seperti "AT+NAME".

    Upload Program ke Arduino Uno Melalui Bluetooth

    Setelah selesai merubah beberapa parameter HC-05 di langkah sebelumnya. Modul Bluetooth HC-05 kamu sekarang sudah dapat dirangkaikan dengan Arduino Uno untuk bisa upload program secara wireless lewat bluetooth, ikuti rangkaian seperti dibawah:

    Kamu dapat melakukan upload program ke Arduino Uno kamu melalui bluetooth dengan dua cara melalui Laptop/Komputer (Arduino IDE) atau menggunakan smartphone Android (Bluino Loader).
    Jika kamu menggunakan Laptop/komputer, langkah pertama aktifkan perangkat bluetooth pada Laptop/komputer kemudian lakukan pairing dengan modul bluetooth HC-05, apabila kamu tidak merubah code security pairing kamu bisa memasukan kode defaultnya yaitu "1234".

    Pada software Arduino IDE pilih menu tools pilih board Arduino Uno, ketika memilih port tujuan untuk program yang akan diupload, pilihlah port yang terhubung dengan modul bluetooth HC-05 yang sudah terpairing sebelumnya.

    15 Okt 2019

    Membunyikan Buzzer

    Membunyikan Buzzer

    Buzzer merupakan komponen elektronik yang dapat menghasilkan bunyi, terdapat dua jenis buzzer yaitu buzzer aktif dan buzzer pasif. Buzzer jenis actif dapat memproduksi suara/getaran sendiri, kita cukup menghubungkannya dengan tegangan 5V dan buzzer tersebut mengeluarkan suara. Sedangkan buzzer pasif tidak dapat menghasilkan suara sendiri, kita harus memberikannya tegangan berbentuk gelombang dan mempunyai frekuensi maka buzzer pasif akan mengeluarkan suara. Speaker adalah salah satu contoh dari jenis buzzer aktif.
    Pada latihan sekarng menggunakan buzzer jenis pasif untuk memainkan nada-nada sederhana.

    Kebutuhan Komponen:

    — 1 x Arduino UNO
    — 1 x Buzzer

    Komponen yang digunakan pada Shield:

    1 x Buzzer yang dihubungkan ke pin A3.


    Rangkaian:

    Upload sketch:

    Buka software Arduino IDE apabila menggunakan PC/Laptop. Jika menggunakan Android dapat membuka aplikasi Bluino Loader yang sudah diinstal dari Google Playstore. Buka sketch Latihan 08 yang sudah diunduh dan disimpan pada folder Examples sebelumnya.

    Untuk membuka sketch temukan file di: BluinoLoader > examples > Belajar_Arduino_Dasar > Latihan_08

    Cara lain dapat juga upload sketch langsung melalui aplikasi ini ke Arduino melalui USB OTG atau Bluetooth dengan cara menekan ikon upload (tanda panah ke kanan) dibawah.
    /* Bluino Starter Shield
       Latihan 08 Membunyikan Buzzer
    
       This sketch uses the buzzer to play songs.
       The Arduino's tone() command will play notes of a given frequency.
    
       Version 1.0 9/2017 MK
    */
    
    
    const int buzzerPin = A3;    // connect the buzzer to pin A3
    const int songLength = 18;   // sets the number of notes of the song
    
    // Notes is an array of text characters corresponding to the notes
    // in your song. A space represents a rest (no tone)
    
    char notes[songLength] = {
      'c', 'd', 'f', 'd', 'a', ' ', 'a', 'g', ' ', 'c', 'd', 'f', 'd', 'g', ' ', 'g', 'f', ' '};
    
    // beats[] is an array of values for each note. A "1" represents a quarter-note,
    // "2" a half-note, and "4" a quarter-note.
    // Don't forget that the rests (spaces) need a length as well.
    
    int beats[songLength] = {
      1, 1, 1, 1, 1, 1, 4, 4, 2, 1, 1, 1, 1, 1, 1, 4, 4, 2};
    
    int tempo = 113;  // The tempo is how fast to play the song (beats per second).
    
    void setup() {
      pinMode(buzzerPin, OUTPUT);  // sets the  buzzer pin as an OUTPUT
    }
    
    
    void loop() {
      int i, duration; //
    
      for (i = 0; i < songLength; i++) {  // for loop is used to index through the arrays
        duration = beats[i] * tempo;  // length of note/rest in ms
    
        if (notes[i] == ' ')          // is this a rest?
          delay(duration);            // then pause for a moment
        else {                        // otherwise, play the note
          tone(buzzerPin, frequency(notes[i]), duration);
          delay(duration);            // wait for tone to finish
        }
        delay(tempo/10);              // brief pause between notes
      }
    
    }
    
    int frequency(char note) {
      int i;
      const int numNotes = 8;  // number of notes we're storing
      char names[numNotes] = {
        'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C'    };
      int frequencies[numNotes] = {
        262, 294, 330, 349, 392, 440, 494, 523    };
    
      // Now we'll search through the letters in the array, and if
      // we find it, we'll return the frequency for that note.
    
      for (i = 0; i < numNotes; i++) { // Step through the notes
        if (names[i] == note) {        // Is this the one?
          return(frequencies[i]);     // Yes! Return the frequency and exit function.
        }
      }
      return(0);  // We looked through everything and didn't find it,
      // but we still need to return a value, so return 0.
    }
    

    Catatan kode:

    char notes[] = "cdfda ag cdfdg gf ";
    
    char names[] = {'c','d','e','f','g','a','b','C'};
    
    Sampai saat ini kita banyak berlatih dengan data numerik, tapi Arduino juga dapat mengolah data text. Satu huruf dari sebuah text disebut "char" (cahracter). Ketika text atau gabungan dari banyak character dituliskan dalam kode Arduino dapat dituliskan menggunakan tanda kutip dua (juga disebut "string").
    tone(pin, frequency, duration);
    Banyak fungsi-fungsi bawaan bahasa arduino yang sangat berguna salah satunya fungsi untuk mengendalikan buzzer adalah fungsi tone(). Fungsi ini akan mengelhasilkan frekuensi tertentu pada pin output, memjadikan fungsi ini sangat berguna untuk membunyikan sebuah buzzer atau speaker. Jika kamu memberi nilai untuk durasi (dalm milidetik), maka nada akan berbunyi dan kemudian berhenti. Jika tidak diberikan nilai durasi maka nada akan berbunyi terus menerus, namun kamu masih dapat menghentikannya menggunkan fungsi noTone().

    Apa yang seharusnya kamu lihat:

    Kamu akan mendengar musik yang keluar dari buzzer. Jika ini tidak bekerja, periksa apakah lubang suara pada buzzer tertutup dan pastikan sketch sudah masuk kedalam Arduino. 

    Mengendalikan Relay

    Mengendalikan Relay

    Relay pada dasarnya merupakan sebuah saklar mekanik yang dikontrol secara listrik. Didalam relay terdapat lilitan dengan inti besi yang akan berubah menjadi magnet ketika dialiri arus listrik dan menarik tuas saklar sehingga menyebabkan saklar menjadi kontak. Pada latihan ini akan belajar bagaimana cara menontrol relay menggunakan Arduino.

    Kebutuhan Komponen:

    — 1 x Arduino UNO
    — 1 x Relay 5V (SPDT)
    — 2 x LED
    — 1 x Transistor NPN
    — 1 x Dioda 1N4148
    — 2 x Resistor 330Ω
    — 1 x Resistor 10kΩ
    — 1 x Breadboard mini

    Komponen yang digunakan pada Shield:

    1 x Relay yang terhubung ke D12.


    Rangkaian:


    Upload sketch:

    Buka software Arduino IDE apabila menggunakan PC/Laptop. Jika menggunakan Android dapat membuka aplikasi Bluino Loader yang sudah diinstal dari Google Playstore. Buka sketch Latihan 10 yang sudah diunduh dan disimpan pada folder Examples sebelumnya.

    Untuk membuka sketch temukan file di: BluinoLoader > examples > Belajar_Arduino_Dasar > Latihan_10

    Cara lain dapat juga upload sketch langsung melalui aplikasi ini ke Arduino melalui USB OTG atau Bluetooth dengan cara menekan ikon upload (tanda panah ke kanan) dibawah.
    /* Bluino Starter Shield
       Latihan 10 Mengendalikan Relay
    
       A relay is a electrically-controlled mechanical switch. It has an
       electro-magnetic coil that either opens or closes a switch.
    
       Version 1.0 9/2017 MK
    */
    
    
    const int relayPin = 12;     // This pin drives the transistor (which drives the relay)
    const int timeDelay = 1000;  // delay in ms for on and off phases
    
    // You can make timeDelay shorter, but note that relays, being
    // mechanical devices, will wear out quickly if you try to drive them too fast.
    
    
    void setup() {
      pinMode(relayPin, OUTPUT);  // set pin as an output
    }
    
    
    void loop() {
      digitalWrite(relayPin, HIGH);  // turn the relay on
      delay(timeDelay);              // wait for one second
      digitalWrite(relayPin, LOW);   // turn the relay off
      delay(timeDelay);              // wait for one second
    }

    Catatan kode:

    digitalWrite(relayPin, HIGH);
    Ketika transistor sebagai switching aktif, akan mengaktifkan lilitan relay dan kontak pada relay terhubung, ini akan menghubungkan pin relay COM dengan NO (Normally Open). Pada latihian ini menggunakan kedua pin ini sebagai saklar LED tapi kamu bisa menggunakan untuk perangkat elektronik lain bertegagngan tinggi (220AC) seperti lampu pijar, motor dll disesuaikan dengan kemampuan relay tersebut.
    digitalWrite(relayPin, LOW);
    Relay mempunyai pin NC (Normally Close), Pin NC kebalikan dari pin NO yaitu akan terhubung antara pin COM dengan NC ketika kondisi relay mati. Pin-pin kontak pada relay dapat digunakan sesuai dengan kebutuhan apakah dalam keadaan aktif nyala atau mati. Kedua pin NO dan NC juga dapat digunakan untuk dua peralatan yang nyalanya bergantian.

    Apa yang seharusnya kamu lihat:

    Kamu seharusnya dapat mendengarkan suara klik ketika kontak relay aktif, dan melihat kedua LED menyala bergantian dengan interval waktu masing-masing 1 detik. Jika tidak terjadi, pastikan kedua LED terangkai benar dengan pin kontak relay dan pastikan sketch sudah masuk kedalam Arduino.