Senin, 20 April 2015

Arduino & Android - Cara Mudah Bikin Aplikasi Android untuk Kontrol LED

Yang Harus Disiapkan :

  1. Ponsel Android
  2. Arduino
  3. Protoboard
  4. Jumper (Secukupnya)
  5. LED 2
  6. Resistor (1 atau 2 opsional)
  7. Bluetooth serial
  8. Koneksi Internet

Langkah - Langkah Pembuatan Aplikasi Android dengan mudah dan sederhana :


1.  Kunjungi website App Inventor Disini

2.  Pilih "Build" ikuti gambar berikut :

Pilih "MIT App Inventor xxx"

Login dengan email hingga jendela baru seperti pada gambar diatas

Setelah klik "Start new project" isikan nama aplikasi yang akan dibuat

Pastikan tampilan akan mirip dengan gambar diatas 


Drag and Drop :
Bagian Connectivity : BluetoothClient (Untuk Koneksi Bluetooth)
Bagian User Interface : ListPicker (Untuk Memilih Bluetooth) & Button (Untuk On/Off Led atau kirim data)
*Sesuaikan Nama Button pada bagian Properties

Klik "Blocks" untuk memprogram dengan model Drag and Drop

Buat Seperti gambar diatas

Terakhir adalah Simpan dan Download aplikasi yang sudah dibuat dengan langkah-langkah sebagai berikut :
klik "Build" -> "App ( save .apk to my computer )

Tunggu hingga proses download selesai (seperti download file biasa di internet)

Setelah selesai copy file .apk ke ponsel kemudian install manual.


3.  Siapkan Bagian Hardware

           - Berikut program untuk arduino konfigurasi pin dan baudrate bluetooth serial sesuaikan dengan program :

#include <SoftwareSerial.h>
SoftwareSerial mySerial(10,11); // RX, TX
boolean led1=true;
boolean led2=true;

void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  digitalWrite(6,LOW);
  digitalWrite(7,LOW);
}

void loop()
{
  if(mySerial.available()>0)
  {
    char c=mySerial.read();
    delay(15);
    Serial.println(c);
    if(c=='1'&&led1==true)
    {
      digitalWrite(6,HIGH);
      led1=false;
      Serial.println("Led 1 Aktif");
      delay(100);
      return;
    }
    if(c=='1'&&led1==false)
    {
      digitalWrite(6,LOW);
      led1=true;
      Serial.println("Led 1 Tidak Aktif");
      delay(15);
      return;
    }
    if(c=='2'&&led2==true)
    {
      digitalWrite(7,HIGH);
      led2=false;
      Serial.println("Led 2 Aktif");
      delay(15);
      return;
    }
    if(c=='2'&&led2==false)
    {
      digitalWrite(7,LOW);
      led2=true;
      Serial.println("Led 2 Tidak Aktif");
      delay(15);
      return;
    }
  } 
}

4.  Upload program ke arduino

5.  Sinkronkan bluetooth ponsel dengan modul bluetooth serial yang terhubung dengan arduino

6.  Buka Aplikasi yang sudah diinstall tadi kemudian sinkronkan bluetooth dari aplikasi dan pastikan terhubung

7.  Kontrol led dengan "Button" yang ada pada aplikasi tersebut.


Video di Youtube :

Sabtu, 18 April 2015

Sensor Pendeteksi Hujan Menggunakan ESP8266-01 dan Update informasi ke Geeknesia

Gambaran Sistem :









Alat dan bahan yang digunakan :
  1.  Solder + Timah
  2.  PCB Lempeng
  3. Ferit Clorida
  4. Baterai 3800 mA (Opsional)
  5. Spidol Permanen
  6.  Penggaris
  7.  Modul ESP8266
  8.   FTDI (Bisa USB to TTL jenis lain)
  9.  Kabel jumper (Secukupnya)


Software yangdigunakan :
  1. LuaUploader
  2. ESP8266Flasher

Langkah-langkah pengerjaan :
  1. Flashing ESP8266-01
           a)   Konfigurasi Hardware
               
* Untuk selektor tegangan gunakan 3v3 dan disarankan menggunakan regulator tegangan terpisah dari ic usb to ttl.


           b)   Proses Flashing firmware nodemcu
                  -          Hubungkan FTDI ke port laptop dan pastikan port terbaca
                  -          Buka Software ESP8266Flasher
                  -          Klik Flash(F) :

      

           c)   Modifikasi Hardware
                       Disini yang digunakan adalah pin ADC, karena pada ESP8266-01 belum dikeluarkan                    pin ADCnya maka untuk menggunakan pin tersebut kita harus melakukan modifikasi atau                   jumper. Ikuti gambar berikut :
                  
Pemetaan pin untuk dimodifikasi

Pin yang sudah di modifikasi

Disini jalur I/O Reset diganti menjadi jalur pin ADC, jika membutuhkan pin Reset maka tinggal dijumper kembali.


           d)   Programming dengan LUA
  • Buka Software LuaUploader
  • Pastikan port yang dipilih sudah benar
  •  Copy program berikut ini dan sesuaikan API yang didapat dari device geeknesia setelah daftar dan bikin akun. Program berikut hanya mencontohkan untuk mengirim nilai ADC ke geeknesia. Jika ingin menambahkan logikanya tinggal dimasukkan sesuai kebutuhan. 
  • Program untuk membangun koneksi dengan AP :  
          wifi.setmode(wifi.STATION)
          wifi.sta.config ( "WIFI_SSID" , "PASSWORD" ) 
          print(wifi.sta.getip())

  • Program untuk update informasi ke geeknesia :
          wifi.setmode(wifi.STATION)          wifi.sta.connect()          tmr.delay(10000)          function sendH()          t1=adc.read(0)          conn =nil          conn=net.createConnection(net.TCP,0)
          conn:on("receive", function(conn, payload)success = true
          print(payload)
          end)
          conn:on("connection",
          function(conn, payload)
  conn:send("GET http://api.geeknesia.com/api/data?api_key=APIdariGeeknesia&attributes={\"Status\":"..t1.."} HTTP/1.0\r\n\r\n")end)
          conn:on("disconnection", function(conn, payload)
          end)
          conn:connect(3000,"geeknesia.com")
          end
          sendH()
          tmr.alarm(1,3000,1,function()sendH()end)

  • Simpan program di ESP8266


           e)   Menggabungkan ESP dengan board sensor hujan dan baterai

`                        -   Merancang jalur sensor hujan



           f)   Pengujian
Untuk pengujian cukup basahi bagian trigger dengan air dan pastikan dapat terhubung dengan AP yang memiliki koneksi internet. kemudian akses kembali alamat geeknesia.com dan klik ikon yang API-nya dimasukkan ke program esp





Saran
       Kedepannya akan digunakan mode slave (tanpa relay untuk menghemat daya) dan sistem trigger masih tetap menggunakan sensor air hujan (satu sensor).



*Jika ada yg kurang jelas, kurang tepat bahkan salah, mohon dimaafkan dan silakan hubungi saya 

Kamis, 19 Maret 2015

Arduino SIM908 GPRS-GPS Tracking

Sistem tracking ini merupakan suatu sistem untuk melacak atau mengetahui pergerakan atau perpindahan koordinat dari gps receiver yang tertanam pada sim908, posisi dimonitoring pada website dengan pengiriman data. pada langkah-langkah dibawah ini akan memaparkan proses pengambilan data gps dari modul sim908 kemudian data koordinat (latitude, longitude) akan dikirim ke web server hingga data benar-benar tersimpan pada website. setelah data tersimpan maka dapat ditampilkan secara bersamaan dengan update data terbaru ataupun berbeda timing (tergantung programmer).
untuk menampilkan ke map maka diperlukan api key yang bisa didapat gratis disini, tentunya dengan daftar terlebih dahulu.

Alat/Modul yang dibutuhkan :
  1. 1x Arduino + Kabel
  2. 1x Adaptor 9-12 Volt
  3. Modul SIM908
  4. Kartu GSM yang sudah aktif paket Internet ( Biar tidak tekor haha. disini saya menggunakan Operator 3)
  5. Siapkan juga webserver/hosting. disini saya menggunakan hostinger (Kalau belum punya silakan daftar terlebih dahulu disini).
Langkah-Langkah Kerja :
  1. Download program arduino dan program php untuk terima data. disini
  2. Upload Program Arduino
  3. Upload Program/file .php ke server yang anda buat.
  4. Pasang Modul ke arduino
  5. Atur S1 dan S2 pada modul sim908 Berkomunikasi dengan arduino dan UART pilih ke gsm.
  6. Nyalakan arduino, buka serial monitor. pastikan modul mendapat data gps kemudian sukses setting gprs. dan sebagai indikator data berhasil di upload akan ada informasi "Done!" pada serial monitor.
  7. Untuk tampilan web silakan menyesuaikan sendiri.

Sabtu, 03 Januari 2015

Arduino Bootloader

Berikut cara untuk mem-bootload arduino ke mikrokontroler Atmega328P-PU yang baru di beli dan-agar dapat diprogram melalui serial salah satu tujuannya.

Komponen-komponen yang dibutuhkan :
  1. 1 x Arduino.
  2. 1 x IC Atmega328P-PU.
  3. 1 x Protoboard.
  4. 1 x Resistor 10 KOhm.
  5. 1 x Push Button.
  6. 1 x Kristal 16 MHz.
  7. 2 x Kapasitor 22 pF.
  8. Jumper Secukupnya.
Langkah-langkah bootload :
  1. Hubungkan Arduino dengan port usb.
  2. Buka Software arduino ( Compiler / IDE ).
  3. Buka Program "ArduinoISP" , Perhatikan gambar berikut :
  4. Atur atau pilih jenis Board yang anda gunakan untuk "mem-bootload":
  5. Atur atau pilih Serial Port sesuai dengan board anda :
  6. Upload program "ArduinoISP" tadi ke board:
  7. Siapkan rangkaian untuk Mikrokontroler target :
  8. Klik "Tools" -> "Programmer" -> "Arduino as ISP" :
  9. Klik "Tools" -> "Burn Bootloader" :
  10. Tunggu beberapa detik atau menit sambil memastikan tidak ada error, dan pastikan juga selama proses ada kmunikasi dua arah yang ditandai led tx & rx pada board arduino flip-flop.
  11. Jika proses bootload sukses, ketika led tx & rx berhenti flip flop akan ada tulisan "Done burning bootloader" :

  12. SELESAI. semoga bermanfaat :)

             

Link Video :
                             Video Youtube