Thursday, January 26, 2017




Tuesday, January 24, 2017

Arduino Uno dengan 2 extra pin Analog

Jika ada yang pernah memberi tahu anda bahwa sebuah arduino uno memiliki pin analog sebanyak 8 buah , jangan percaya . sebab secara default arduino uno hanya memiliki 6 buah pin Analog,yaitu pin A0-A6
berikut ini adalah arduino uno pin diagram
arduino uno pin diagram
arduino uno pin diagram
Anda dapat perhatikan bahwa dari gambar arduino uno pin diagram di atas bahwa A0-A5 adalah pin Analog yang ada pada Arduino uno standard

namun tetap saja ada yang ngotot bertanya di mana letak pin A6 dan A7 pd arduino uno ?

akhirnya terpaksa dijawab : kalau arduinio mega , arduino nano, arduino pro mini jelas ada. Kalau di Uno dengan IC DIP28 (Original Style) memang tidak ada jadi gak usah dicari bikin capek doang..
Kalau di Uno Clone IC SMD TQFP32 (ic kotak segiempat) itu ada namun tidak di breakout menjadi PIN IO..
Beberapa design Arduino Uno milik produsen seperti Robotdyn pin A6 dan A7 diberikan sebagai bonus dan dihadirkan pada pin IO arduino.. (di jawab oleh Dani Ardianto)  berikut ini gambar nya.

arduino uno dengan 8 pin analog
arduino uno dengan 8 pin analog (picture by  Sudar Elcostic)

Friday, January 20, 2017

Any Desk , Pengganti TeamViewer yang power full

Penggunaan teamviwer untuk remote dekstop control (menggunakan komputer orang lain dari jarak jauh), misal nya kita butuh menunjukkan cara memprogram alat, atau mensetting perhitungan dengan microsoft excel secara jarak jauh umumnya orang akan menggunakan team viewer.dalam hal ini laptop yang akan saya remote  menggunakan team viewer versi free sehingga tidak bisa diakses darai jarak jauh ..

saat mulai autentifikasi muncul pesan sebagai berikut :


yang menunjukkan masa trial team viewer sudah habis ,

setelah googleing beberapa waktu saya menemukan remote desktop chrome, namun malah mengalami kerepotan saat hendak menginstall dan menggunakannya, akhirnya saya mencari alternatif lain ketemulah Anydesk yang saya download dari link berikut ini KLIK DISINI

berikut adalah screenshoot dari Any Desk , Pengganti TeamViewer yang power full tersebut, dari segi penggunaan Any Desk lebih mudah daripada teamviewer. secara fitur lebih simple namun dengan error yang lebih sedikit, jika menggunakan team viewer pada menu di dalam semisal device manager, TeamViewer sering mengalami gagal saat klik pilihan pada device manager, namun dengan Anydesk dapat berjalan dengan sangat lancar

berikut ini adalah gambar user interface any desk 
user interface any desk
user interface any desk 
selamat mencoba menggunakan Any Desk , Pengganti TeamViewer yang power full  saya yakin anda akan lebih memilih Anydesk daripada team viewer

Monday, January 16, 2017

Apakah arduino uno mengijikan koneksi usb lebih dari 1 misal dari delphi/vb/java dan satunya dari arduino IDE

sebuah Pertanyaan di grup arduino indonesia
"Permisi gan mau nanya, kalo kita mau ngirim data ke arduino dari sensor dan ms visual studio secara bersamaan gimana ya, saya coba error di keterangan "COM3 Busy"
maaf gan masih pemula
Terima kasih sebelumnya"

Jawab :

"komunikasi usb pada arduino uno   tidak mengijinkan lebih dari 1 koneksi mas bro. jadi hanya 1 koneksi yang diijinkan,kalau mau 2 koneksi ya pergunakan multiplexer tapi dalam hal ini multiplexer-pun tidak bisa real time, harus ada jeda gantian make nya .
cara lain pergunakan software serial  + usb to serial ttl converter, maka anda kan memiliki 2 jalur komunikasi serial. 1 via usb aseli bawaan arduino, 2 via software serial masuk ke usb to ttl converter 

dalam hal ini koneksi nya akan berupa 2 jalur usb ya, catat bener2 1 usb port pada arduino uno tidak dapat melayani 2 koneksi, kalau 1 usb yang dapat melayani 4 usb ada, tapi bukan arduini,melaikan alat yang sudah di buat oleh master Anang Dono Prasetyo dan sudah pernah di test oleh om Affan Pringgo

Tuesday, January 10, 2017

Mengakses Sensor Waterflow YF –S201 dengan Arduino Uno

Waterflow sensor adalah sebuah sensor untuk mengukur debit air dengan keluaran pulsa yang dapat dibaca dengan mikrokontroler karena  berada pada level tegangan TTL 

Mengakses Sensor Waterflow YF –S201 dengan Arduino Uno
Mengakses Sensor Waterflow YF –S201 dengan Arduino Uno
 
Spesifikasi teknis sensor Waterflow / Specifications of flow rate sensor:
Measure liquid/water flow for your solar, water conservation systems, storage tanks, water recycling home applications, irrigation systems and much more. The sensors are solidly constructed and provide a digital pulse each time an amount of water passes through the pipe. The output can easily be connected to a microcontroller for monitoring water usage and calculating the amount of water remaining in a tank etc.

Features:
Model: YF-S201
Working Voltage: 5 to 18V DC (min tested working voltage 4.5V)
Max current draw: 15mA @ 5V
Output Type: 5V TTL
Working Flow Rate: 1 to 30 Liters/Minute
Working Temperature range: -25 to +80?
Working Humidity Range: 35%-80% RH
Accuracy: ±10%
Maximum water pressure: 2.0 MPa
Output duty cycle: 50% +-10%
Output rise time: 0.04us
Output fall time: 0.18us
Flow rate pulse characteristics: Frequency (Hz) = 7.5 * Flow rate (L/min)
Pulses per Liter: 450
Durability: minimum 300,000 cycles
Cable length: 15cm
1/2" nominal pipe connections, 0.78" outer diameter, 1/2" of thread
Size: 2.5" x 1.4" x 1.4"

dari spesifikasi di atas dapat kira tangkap informasi bahwa untuk setiap liter air yang melalui sensor, anda akan mendapatkan pulsa keluaran sejumlah 450 pulsa. untuk membaca pulsa sebanyak 450 dalam rentang waktu yang mungkin hanay sekitar 1 menit (waktu yang dibutuhkan untuk 1 liter air bisa selesai melalui sensor  Waterflow YF –S201) jika menggunakan mode pembacaan input digital pada umum nya agakanyaakan menjadi pekerjaan yang sulit, apalagi jika ada "tugas lain" yang harus dikerjakan oleh arduino,semisal membaca status sensor cahaya , atau membaca sensor suhu. tingkat akurasinya kan sangat berkurang..

Berdasarkan analisis yang saya sampaikan di atas, kami sangat menyarankan pembacaan pulsa keluaran dari sensor  Waterflow YF –S201 dengan menggunakan pin interupsi, berikut pemasangan nya

Mengakses Sensor Waterflow YF –S201 dengan Arduino Uno
Mengakses Sensor Waterflow YF –S201 dengan Arduino Uno
untuk sketch pembacaan keluaran sensor Waterflow YF –S201 dengan Arduino Uno


const int PinSensorWaterFlowTaman=2;// intr 0 // pin 2
float flow_countertaman,litertaman,adcph,teg,ph;
const int PinKranTaman =9;//// kran untuk taman
void setup()
{
 pinMode(PinSensorWaterFlowTaman, INPUT);
        digitalWrite(PinSensorWaterFlowTaman, HIGH);
        attachInterrupt(0, flowtaman, RISING); // Setup Interrupt 0 pada pin 2
 Serial.begin(9600);
  pinMode(PinKranTaman,OUTPUT);
        digitalWrite(PinKranTaman,LOW);

}

void loop()
{
 Serial.println(flow_countertaman);
 Serial.println(litertaman);

delay(1000);


void flowtaman () // Interrupt function taman
    {
      flow_countertaman++;
       litertaman=flow_countertaman/450;
}









sketch di atas silakan di upload ke board arduino dengan software arduino IDE,kemudian selesai upload silakan buka serial monitor pada pc / laptop dengan setting baudrate 9600,  alirkan air melalui selang ke modul sensor Waterflow YF –S201. pada pc anda akan nampak nilai volume yang terukur oleh sensor Waterflow YF –S201 dalam satuan liter, data akan dikirim tiap detik.

tugas anda (hehehehe, tidak wajib, untuk pembelajaran anda saja.) : silakan tampilkan data volume tersebut ke LCD 2x16 atau 4x20

selamat bereksperimen.


Menambahkan Multi Marker ke dalam google map yang diakses dengan Delphi

Menambahkan Multi Marker ke dalam google map yang diakses dengan Delphi

Dalam posting ini saya sertakan source code silakan di download,pada contoh ini saya sertakan source untuk penempatan 4 buah marker ke dalam map delphi. marker di tentukan dari nilai longitude dan latitude yang ada, anda dapat menggunakan source contoh dari saya untuk dikembangkan semisal untuk tracking kendaraan, menampilkan posisi gedung dan sebagainya.intinya kolaborasi antara google maps dan delphi dapat anda pergunakan untuk membangun aplikasi berbasis googlemaps untuk berbagai keperluan anda.
Menambahkan Multi Marker ke dalam google map yang diakses dengan Delphi
Menambahkan Multi Marker ke dalam google map yang diakses dengan Delphi

silakan download source code Menambahkan Multi Marker (empat buah marker ) ke dalam google map yang diakses dengan Delphi KLIK DISINI
sebagai catatan source code dikembangkan dengan delphi 7. sekian terimakasih


Sunday, January 1, 2017

Membuat running text dam jam digital dengan arduino+ DMD (dot matrix p10) (oleh aziz kurosaki)

Ini adalah sebuah posting catatan dari grup arduino indonesia , merupakan media penyimpan digital yang saya buat untuk mengabadikan proyek DMD yang dibuat oleh saudara Aziz Kurosaki

berikut ini adalah link Library DMD yang dipergunakan oleh Aziz
http://www.4shared.com/zip/vL6WzxU9ba/DMDaziz.html


berikut ini adalah source code yang dibuat oleh mas aziz kurosaki

#include <DMD.h>
#include <DejaVuSansBold9.h>

DMD display(3,1);

ISR(TIMER1_OVF_vect){
  display.refresh();
}
void inaik(String text){
    for(int x=0;x<display.height();x++){
      display.clear();
    display.drawText((display.width()-(text.length()*5))/2,0,text);
    display.drawFilledRect(0,0,96,(display.height()/2)-x,0);
    display.swapBuffers();
    delay(80);
    }
  }
void oturun(String text){
  for(int x=0;x<display.height();x++){
    display.clear();
    display.drawText((display.width()-(text.length()*5))/2,0,text);
    display.drawFilledRect(0,0,display.width(),x,0);
    display.swapBuffers();
    delay(80);
}

}
void ikanan(String text){
   for(int x=0;x<display.width();x++){
    display.clear();
   display.drawText((display.width()-(text.length()*5))/2,0,text);
   display.drawFilledRect(x,0,display.width(),16,0);
   display.swapBuffers();
   delay(30);
  }
}
void okiri(String text){
   for(int x=0;x<display.width();x++){
   display.clear();
   display.drawText((display.width()-(text.length()*5))/2,0,text);
   display.drawFilledRect(x,0,0,16,0);
   display.swapBuffers();
   delay(30);
  }
}
void otengah(String text){
  for(int x=0;x<=(display.width()/2)+1;x++){
    display.clear();
   display.drawText((display.width()-(text.length()*5))/2,0,text);
   display.drawFilledRect(48-x,0,49+x,16,0);
   display.drawLine(48-x,0,48-x,9);
   display.drawLine(49+x,0,49+x,9);
   display.swapBuffers();
   delay(30);
  }
}
void itengah(String text){
  for(int x=0;x<=(display.width()/2)+1;x++){
   display.clear();
   display.drawText((display.width()-(text.length()*5))/2,0,text);
   display.drawFilledRect(0,0,48-x,16,0);
   display.drawFilledRect(49+x,0,96,16,0);
   display.drawLine(48-x,0,48-x,9);
   display.drawLine(49+x,0,49+x,9);
    display.swapBuffers();
    delay(30);
  }
}
void imdown(String text){
   for(int x=0;x<=(display.height()/2);x++){
    display.clear();
    display.drawText((display.width()-(text.length()*5))/2,-8+x,text);
    display.swapBuffers();
    delay(80);
  }
}
void obulat(String text){
  for(int x=0;x<=(display.width()/2)+5;x++){   
    display.clear();
    display.drawText((display.width()-(text.length()*5))/2,0,text);
    display.drawFilledCircle(48,8,x,0);
    display.drawCircle(48,8,x);
    display.swapBuffers();
    delay(50);
  }
}
void masuk(byte urut,String text){
  switch (urut){
    case 0 : itengah(text);
    break;
    case 1 : inaik(text);
    break;
    case 2 : ikanan(text);
    break;
    case 3 :  imdown(text);
    break;
  }
 
}
void keluar(byte urut,String text){
  switch (urut){
    case 0 : okiri(text);
    break;
    case 1 : otengah(text);
    break;
    case 2 : oturun(text);
    break;
    case 3 : obulat(text);
    break;
  }
 
}
void setup(){
  display.enableTimer1();
  display.setDoubleBuffer(1);
  display.setFont(DejaVuSansBold9);
}

void loop(){
  String text="Aziz Kurosaki";
  masuk (random(4),text);
  delay (500);
  keluar (random(4),text);
  delay(500);
}


hasil video nya adalah sebagai berikut :






sedangakan source code jam digital dengan menggunakan arduino dan display modul p10 adalah sebagai berikut :

#include <DMD.h>
#include <SystemFont5x7.h>
#include <Arial_Black_16.h>
#include <Wire.h>
#include<Sodaq_DS3231.h>
#include <DejaVuSansBold9.h>
DMD display(3,1);
byte ldtk,lmnt,ljam,jam,mnt,dtk,count;

ISR(TIMER1_OVF_vect){
  display.refresh();
}
String konvert(byte nilai){
   if(nilai<10){ return "0"+String(nilai); }
  else { return String(nilai);}
}
void draw(byte pos){
  (count<3)?count++:count=0;
   if (pos==0){
     for (byte x=0;x<16;x++){
    display.drawFilledRect(11,0,29,16,0);
    display.drawText(11,0-x,String (konvert(ljam)));
    display.drawText(11,16-x,String (konvert(jam)));
    display.swapBuffersAndCopy();
    delay(15);
    }
  }
  if (pos==1){
     for (byte x=0;x<16;x++){
    display.drawFilledRect(40,0,58,16,0);
    display.drawText(40,0-x,String (konvert(lmnt)));
    display.drawText(40,16-x,String (konvert(mnt)));
    display.swapBuffersAndCopy();
    delay(15);
    }
  }
  if (pos==2){
    display.drawFilledRect(30,0,37,16,0);
    display.drawFilledRect(59,0,66,16,0);
    display.drawFilledCircle(33,3,count);
    display.drawFilledCircle(33,12,count);
    display.drawFilledCircle(62,3,count);
    display.drawFilledCircle(62,12,count);
    if(count>0){
      display.drawFilledCircle(33,3,count-1,0);
      display.drawFilledCircle(33,12,count-1,0);
      display.drawFilledCircle(62,3,count-1,0);
      display.drawFilledCircle(62,12,count-1,0);}
    for (byte x=0;x<16;x++){
    display.drawFilledRect(68,0,97,16,0);
    display.drawText(68,0-x,String (konvert(ldtk)));
    display.drawText(68,16-x,String (konvert(dtk)));
    display.swapBuffersAndCopy();
    delay(15);
    }
  }
}
void drawaziz(){
  char text[14]={"AZIZ_KUROSAKI"};
  display.setFont(SystemFont5x7);
  for (byte x=0;x<sizeof(text);x++){
    for(byte y=0;y<(x*6)+8;y++){
      display.clear();
      for(byte z=0;z<sizeof(text);z++){
        if (z<x){
          display.drawChar((z*6)+8,0,text[z]);
        }
      }
      display.drawChar(y,0,text[x]);
      display.swapBuffers();
      delay(8);
    }
  }
  for (byte x=sizeof(text);x>0;x--){
    for(byte y=(x*6)+8;y<97;y++){
      display.clear();
      for(byte z=0;z<sizeof(text);z++){
        if (z<x-1){
          display.drawChar((z*6)+8,0,text[z]);
        }
      }
      display.drawChar(y,0,text[x-1]);
      display.swapBuffers();
      delay(8);
    }
  }
}

void setup(){
  display.enableTimer1();
  display.setDoubleBuffer(1);
  Wire.begin();
  rtc.begin();
  drawaziz();
  display.clear();
  display.setFont(Arial_Black_16);
  DateTime now=rtc.now();
  ljam=now.hour()-1;
  lmnt=now.minute()-1;
  ldtk=now.second()-1;
}

void loop(){
  DateTime now=rtc.now();
  jam=now.hour();
  mnt=now.minute();
  dtk=now.second();
  if (ldtk!=dtk){
    draw(2);
    ldtk=dtk;
  }
  if (lmnt!=mnt){
    draw(1);
    lmnt=mnt;
  }
  if (ljam!=jam){
    draw(0);
    ljam=jam;
  }
}

hasil video jamd digital dengan P10 dan arduino adalah sebagai berikut :



 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Hot Sonakshi Sinha, Car Price in India