Agustus 14, 2017

menggunakan lcd 1602 pada arduino uno

lcd atau liquid crystal display adalah alat yang digunakan untuk menampilkan sesuatu agar terlihat pada suatu panel jadi kita bisa melihat text,gambar atau apapun yang akan kita lihat. lcd 1602 merupakan layar atau display yang hanya mampu menampung 16 karakter dan 2baris saja jadi tidak bisa digunakan menampilkan banyak karakter, meskipun demikian cukup kok untuk menampilkan informasi suhu, kelembaban, jarak, tegangan dll. tapi tidak cukup untuk menuliskan status alay eh.

tanpa banyak basa basi ayo mulai percobaan kita, solder kabel jumper male to male or male to female silahkan pilih sendiri. solder kabel jumper lubang vss, vdd, v0, rs, rw, e, d4, d5, d6, d7, anoda dan katoda
setelah itu hubungkan vss ke ground, vdd ke 5v, v0 ke ground/potentiometer, rs ke pin 10 arduino, rw ke ground , e ke pin 9, d4 ke pin 7 ,d5 ke pin 6, d6 ke pin 5, d7 ke pin 4, anoda ke resistor yang terhubung dengan 5v, katoda ke ground sebaiknya groundnya ditaruh di breadboard dengan menghubungkan pin ground arduino ke lubang -(biru) pada breadboard dan pin 5v ke lubang +(merah) pada breadboard



kurang lebih seperti inilah bray



buka arduino ide buat sketch seperti ini

 #include <LiquidCrystal.h>  
 LiquidCrystal disp(10, 9, 7, 6, 5, 4);  
 void setup() {  
  // put your setup code here, to run once:  
  disp.begin(16,2);  
 }  
 void loop() {  
  // put your main code here, to run repeatedly:  
  for(int r=0;r<2;r++){  
   for(int c=0; c<16;c++){  
    disp.clear();  
    disp.setCursor(c,r);  
    disp.print("->");  
    delay(1000);  
   }  
  }  
 }  

dan hasilnya seperti ini





dan solderan lcdnya seperti ini

Agustus 04, 2017

Mendengarkan dan membaca data yang dikirim arduino uno di pc menggunakan python serial

python serial merupakan modul yang dapat kita gunakan untuk menerima dan mengirim data melalui port serial jadi bisa kita gunakan untuk berkomunikasi antara komputer yang kita miliki dengan arduino dalam hal ini yang saya gunakan adalah arduino uno.

dengan menggunakan python serial dan sensor dht11 kita bisa membuat project mengukur suhu dan kelembaban udara suatu ruangan dan hasilnya bisa kita lihat di komputer entah itu langsung disajikan pada terminal di linux ataupun kita tulis kedalam sebuah file text yang kita simpan jadi kita bisa buka kapan saja melalui text editor.

hubungkan pin + ke pin 5v , pin out ke pin a5, pin - ke pin ground kemudian buat source code di arduino sketch kurang lebih seperti ini

#include <DHT.h>
#define DHTTYPE DHT11
#define DHTPIN A5
DHT dht (DHTPIN, DHTTYPE);

void setup(){
    Serial.begin(9600);
    dht.begin();
}

void loop(){
    float t= dht.readTemperature();
    float h = dht.readHumidity();
    if(isnan(t) || isnan(h){
        Serial.println("terjadi kesalahan dalam pemasangan sensor dht");
    }else{
         Serial.print("suhu ruangan: ");
         Serial.print(t);
         Serial.print(" °C");
         Serial.print("\tkelembaban udara: ");
         Serial.print(h);
         Serial.println(" %");
    }
}


sekarang saatnya untuk kita membuat program di linux dengan menggunakan bahasa python dan dibantu oleh modul pySerial alias python serial untuk mengirim dan menerima data melalui jalur serial.

sekarang import serial dengan perintah import serial lalu buat variabel ser dan inisiasi dengan seperti berikut ini.

ser = serial.Serial('/dev/ttyACM0', 9600, timeout=5)

/dev/ttyACM0 adalah port yang terhubung ke arduino kalo diwindows biasanya com 9600 merupakan baudrate yang kita tentukan pada sketch arduino tadi timeout=5 artinya kita menset timeout dengan 5. Selanjutnya buat perulangan yang terus menerus berjalan menggunakan while untuk mendapatkan datanya.
Selanjutnya buat variable data yang akan kita gunakan untuk menampung data yang kita terima dari arduino dengan cara seperti ini.

data = ser.readline()

source code selengkapnya adalah seperti ini

import serial

ser = serial.Serial('/dev/ttyACM0', 9600 , timeout=5)
while True:
  data = ser.readline()
  if data != None and data != "":
     print data

seperti inilah yang akan kita lihat




 catatan /dev/ttyACM0 mengikuti port anda yang terhubung ke arduino jadi sebaiknya cek terlebih dahulu anda menggunakan port berapa bisa saja menggunakan port /dev/ttyACM1 atau port yang lain.

Juli 31, 2017

menggunakan pir sebagai saklar led

PIR (Passive InfraRed) adalah infrared passive yang dapat digunakan untuk mendeteksi keberadaan pergerakan manusia binatang dll, sensor pir hanya mendeteksi pergerakan bukan keberadaan sesuatu jadi jika objek tersebut diam tidak akan terdeteksi oleh sensor pir, pir hanya dap at mendeteksi satu titik jadi dibutuhkan banyak pir untuk mendeteksi banyak titik gerakan objek.

pir menjangkau kurang lebih 10 meter dengan sudut 15 derajat. pir sensor kita jadikan saklar lampu rumah kita berdasarkan gerakan tangan atau pun gerakan kaki bisa juga untuk project lain yang membutuhkan pendeteksi gerakan objek.

pir memiliki 3pin, pir yang aku punya pin 1 (sebelah kiri) adalah 5v, pin 2 (tengah) adalah out dan pin 3 (kanan) adalah GND (ground). hubungkan pin satu ke pin 5v atau bisa juga hubungkan pin 5v ke lubang + pada breadboard masukkan pin 1 pir ke lubang + breadboard, masukan pin 2 pir kedalam pin 2 arduino (saya menggunakan arduino uno), hubungkan pin 3 pir ke pin GND arduino atau bisa juga hubungkan pin GND arduino ke lubang - breadboard dan hubungkan pin 3 pir ke lubang - breadboard, pada led hubungkan anode dengan pin 3 arduino.

Buat sketch di arduino IDE tulis seperti source code dibaris paling bawah dari tulisan ini. demikian tulisan gaje saya semoga bisa memberikan inspirasi.


led mati setelah mendeteksi gerakan kedua

gambar pir

led menyala setelah mendeteksi gerakan



 // mendefinisikan PIR sebagai integer 2  
 #define PIR 2  
 // mendefinisakan LED sebagai integer 3  
 #define LED 3  
 int s,a; // membuat variabel s dan a  
 //variabel s untuk menampung hasil sensor, sedangkan var a untuk perulangan ketika //menyiapkan sensor pir  
 boolean dipakai=false; // variabel untuk menandai hasil sensor pir pernah dipakai  
 boolean pernah = false; // untuk mengeliminasi hasil sensor yang kedua dalam satu gerakan  
 void setup() {  
  // put your setup code here, to run once:  
  Serial.begin(9600); // menginiasiasi untuk digunakan komunikasi antara arduino dengan pc  
  pinMode(LED, OUTPUT); //set mode pin sebagai output digital  
  pinMode(PIR, INPUT); //set mode pin sebagai input digital  
  digitalWrite(LED, LOW);  
  Serial.print("menyiapkan pir ");  
  for(a=1; a < 8; a++){  
   delay(1000);  
   Serial.print(a);  
   Serial.print(".");  
  }  
  Serial.println("selesai");  
 }  
 void loop() {  
  // put your main code here, to run repeatedly:  
  s = digitalRead(PIR); // membaca sensor pir  
  if(s== HIGH && !pernah){  
   pernah = !pernah;  
   Serial.print("objek bergerak... ");  
   Serial.println(millis()/1000);  
   delay(1000);  
   if(!dipakai){  
    analogWrite(LED, 255);  
    dipakai=!dipakai;  
   }else if(dipakai){  
    analogWrite(LED, 0);  
    dipakai=!dipakai;  
   }  
  }  
  if(s==LOW && pernah){  
   pernah=!pernah;  
   Serial.print("objek diam... ");  
   Serial.println(millis()/1000);  
   delay(1000);  
  }  
 }  

Juli 26, 2017

mengetahui suhu dan kelembaban udara menggunakan sensor dht11 dan arduino uno r3 atau clone

DHT11 merupakan sensor yang dapat membaca suhu dan kelembaban udara sekaligus, sensor dht11 merupakan sensor dasar dan versi lowcost (yang termurah) dari seluruh sensor dht. meskipun demikian sensor dht11 didalamya sudah terdapat mikrokontroler 8bit yang digunakan untuk mengolah sensor suhu dan kelembaban udara sehingga data yang diterima oleh pin arduino merupakan data yang siap untuk disajikan.

dht11 membutuhkan power supplay 3,5v- 5,5v dan mengkonsumsi arus ketika pengukuran 0,3mA dipasaran dht11 terdapat dua jenis yaitu yang punya kaki 3 dan kaki 4 biasanya yang kaki 4 hanya dipakai 3 kaki saja satu kakinya diabaikan alias tidak digunakan.

Berikut ini pin-pin sensor dht11 (saya punya yang versi 3 kaki):
  • Pin 1 atau VCC disimbolkan dengan lambang positive (+).
  • Pin 2 atau data disimbolkan dengan tulisan out.
  • pin 3 atau GND disimbolkan dengan lambang negatif (-)
Cara memasangnya:
  •  hubungkan pin-pin DHT11 dengan breadboard
  • hubungkan pin 1 DHT11 dengan pin 5v arduino uno/ clone. 
         yang saya lakukan pin 1 DHT11 saya tancapkan (masukkan) ke 23e pada   breadboard dan kabel jumper male to male dari 5v ke 23a breadboard.
  • hubungkan pin 2 dengan analog 5 pada arduino(A5).
  • hubungkan pin 3 dengan ground (GND).
 kemudian terlebih dulu masukkan library DHT kedalam arduino ide dengan klik sketch lalu pilih include library cari library pilih DHT sensor library apabila tidak ada maka pilih manage library dan pada filter search DHT sensor.

memprogram arduino menggunakan arduino IDE, dalam sebuah sketch biasanya filenya berekstensi dot ino terdiri dari dua bagian yaitu setup yang berisi inisiasi yang akan kita gunakan dalam loop , setup ini hanya akan dijalankan ataupun digunakan sekali , bagian kedua adalah loop dimana semua kode program yang berada didalamnya akan dijalankan secara terus menerus.



sumber referensi yang saya gunakan salah dua dari berbagai website yang saya kunjungi, sebenarnya masih banyak yang saya baca cuma saya cuma ingat 2 situs ini, yaitu:
paling bawah saya sertakan kode suhu.ino yang saya buat  
1:  //import atau memberitahukan pada compiler bahwa saya menggunakan library itu  
2:  #include <DHT.h>  
3:  // mendifiniskan ataupun meminta kompiler mengganti yang depan dengan yang //dibelakangnya  
4:  #define DHTTYPE DHT11  
5:  #define DHTPIN A5  
6:  // inisiasi bahwa kita akan menggunakan DHT module atau fungsi DHT sebagai dht dengan //pin dan type yang sudah terdefinisi  
7:  DHT dht(DHTPIN, DHTTYPE);  
8:  void setup() {  
9:   // put your setup code here, to run once:  
10:   Serial.begin(9600);//inisiasi untuk komunikasi arduino dengan komputer pada 9600 baud //bitrate  
11:   pinMode(BUZZER, OUTPUT);  
12:   Serial.println("mulai mendeteksi...");//print kedalam output monitor serial pada arduino IDE  
13:   dht.begin();//memulai menggunakan dht  
14:  }  
15:  void loop() {  
16:   // put your main code here, to run repeatedly:  
17:   float t = dht.readTemperature();// membaca suhu  
18:   float h = dht.readHumidity();// membaca kelembaban udara  
19:   //mengecek nilai t dan h apakah terdapat nilai yang illegal  
20:   if(isnan(t)|| isnan(h)){  
21:    Serial.println("sensor tidak bekerja semestinya");  
22:   }else{  
23:    Serial.print("suhu ruangan: ");  
24:    Serial.print(t);  
25:    Serial.print(" °C");  
26:    Serial.print("\tkelembaban udara: ");  
27:    Serial.print(h);  
28:    Serial.println(" %");  
29:    delay(900000);  
30:   }  
31:  }  

Juli 22, 2017

Bermain dan Belajar dengan Arduino Uno R3

Setelah beberapa bulan menabung ahirnya terbeli juga Arduino Uno R3, setelah sampai langsung saya coba untuk membuat blink( kedip-kedip) led yang terdapat pada board arduino uno r3. hubungkan kabel usb arduino ke komputer dan board arduino(yang portnya kotak logam) kemudian buka arduino ide klik tools kemudian klik port kemudian pilih /dev/ttyACM0 arduino/genuino uno di distro ubuntu 16.04 saya kalo di windows biasanya com. pilih berkas kemudian pilih example kemudian pilih basics kemudian pilih blink. setelah muncul sketch program blink compile dengan pilih sketch kemudian pilih verify/ compile dan untuk upload (memasukkan program) ke arduino dengan memilih sketch terus pilih upload kalo builtin lednya berkedip-kedip seperti di sketch artinya upload berhasil dan arduino uno anda baik-baik saja.

Setelah kita mencoba contohnya dan berhasil maka saatnya kita membuat led berkedip bergantian, yang kita perlukan adalah breadboard, led, resistor 220 ohm. Kenapa kita menggunakan breadboard dan bukan menggunakan pcb karena breadboard ngga perlu melakukan soldering jadi mudah untuk dilepas kalo nanti kita tidak memerlukannya lagi atau mau ganti prototyping yang lain lagi. Membaca breadboard adalah begini yang ada tanda - dan + itu konduktornya vertical dan tidak akan horizontal jadi tidak akan terhubung positif dan negatif, kemudian pada abcde konduktor terhubung horizontal sehingga 1a tidak akan terhubung dengan 2a bahkan 1a tidak terhubung dengan 1f karena udah beda tempat sehingga jika kita pasang kabel ke 1a maka akan terhubung dengan 1b, 1c, 1d dan 1e.

yang saya bengkokin adalah untuk  dihubungkan dengan resistor, masukkan bagian anoda (yang akan dihubungkan dengan resistor) ke lubang 1a kemudian katoda ke lubang 3a masukan resistor ke lubang 1e dan 4e, masukkan kabel jumper dari ground di arduino ke lubang negatif, masukkan kabel jumper lagi ke lubang kedua dari lubang yang ada tanda minus (-) dan masukan sisi lain kabel jumper tersebut ke lubang 3b yang sejalur dengan anoda. masukkan kabel jumper ke 4a yang sejalur dengan resistor, sisi yang lain kabel jumper yang tadi dimasukkan ke lubang 4a masukkan ke pin 4 pada arduino uno. lakukan hal ini sekali lagi (tentu saja dipin yang beda ya) kalo ingin menggunakan dua led, kemudian buatlah programnya pada sketch save, kompil, upload.

berikut ini hasilnya maafkan kalo gambarnya jelek maklum reso kamera rendah
  
inilah source code yang saya buat
sekian curhat saya mengenai arduino uno r3 semoga bermanfaat

April 27, 2017

Orange pipc2 ane hidup lebih dari sehari

berawal dari penasaran dan iseng saya mencoba orange pipc2 ane agar tetep nyala selama berhari-hari apakah akan mengurangi performanya ternyata tidak sama sekali masih asyik dipake ngoding lua dan golang jadi kepikiran mau pake ngrock agar dapat diremote dari jauh hehe tapi sepertinya niat ini ditunda dulu karena ada banyak hal yang perlu saya pertimbangkan yaitu saya jarang keluar dari kantor so jadi buat apa diremote dari jauh sbc saya ini

arba@orangepipc2:~$ uptime
 19:41:55 up 1 day, 19:03,  1 user,  load average: 0.03, 0.01, 0.00

menggunakan lcd 1602 pada arduino uno

lcd atau liquid crystal display adalah alat yang digunakan untuk menampilkan sesuatu agar terlihat pada suatu panel jadi kita bisa melihat ...