Showing posts sorted by relevance for query arduino-uno-pin. Sort by date Show all posts
Showing posts sorted by relevance for query arduino-uno-pin. Sort by date Show all posts

Thursday 16 April 2015

ARDUINO DAN VB.NET :: Komunikasi Arduino dengan VB.NET (serial port)

 

Pemrograman serial port pada Arduino
Hubungkan Arduino ke PC Anda menggunakan kabel USB, lalu buka software Arduino. Program ini untuk memastikan bahwa koneksi antara Arduino dan PC tidak ada kendala.   Ketik program seperti di bawah ini lalu upload ke Arduino.
int inByte=0; // variable to receive data from serial port
void setup()
{
Serial.begin(9600);
}

void loop()
{
if (Serial.available() > 0)
{
inByte=Serial.read();
Serial.write(inByte);
}
}
Setelah itu buka Tools > Serial Monitor pada aplikasi Arduino, untuk melihat interaksi antara PC dan mikrokontroler.  Jika kita mengirim sembarang data, maka Arduino akan membalas data yang sama.  Jangan lupa periksa kecepatan komunikasi, keduanya harus sama.  Dalam hal ini 9600 bit per detik.
Pada bagian setup, kita mengaktifkan fungsi serial port pada Arduino (yang terkoneksi langsung dengan port USB) dengan perintah:
Serial.begin(9600);
Perintah ini hanya dilakukan sekali saja, pada saat Arduino diaktifkan atau di-reset.  Jika kita ingin kecepatan lebih tinggi, ganti dengan 115000.  Jika kita ingin menggunakan serial port yang lain, gunakan Serial1, Serial2 atau Serial3. (berlaku untuk mikro yang serial portnya lebih dari satu, contohnya Arduino Mega, terletak pada pin 14 sampai 19).  Jika Anda menggunakan Uno, maka tidak ada pilihan lain.
Fungsi Serial.available() memberikan nilai BENAR jika ada data yang masuk.  Sedangkan fungsi  Serial.read() untuk membaca data yang masuk sebesar 1 byte.  Perintah untuk mengirim data dari mikro ke luar adalahSerial.write(data_yg_ditulis);
Dengan melihat program di atas, maka mikrokontroler hanya akan mengirim ke luar jika ada masukan data serial, dan pengirimannya akan diulang terus sebanyak berapa byte data yang masuk.
Mengendalikan LED lewat serial port
Sekarang kita akan coba menyalakan atau mematikan LED (pin 13), melalui serial port.  Kita buat ketentuan yang sederhana sebagai berikut:  jika menerima karakter ‘A’ maka lampu akan menyala, jika menerima karakter ‘B’ maka lampu akan mati.
// variable to receive data from serial port
int inByte=0;
// Pin 13 has an LED connected on most Arduino boards.
int led = 13;
void setup()
(
// initialize UART at 9600bps
Serial.begin(9600);
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
}

void loop()
{
if (Serial.available() > 0) {
inByte=Serial.read();
Serial.write(inByte);

if (inByte==65)
{
digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
}
if (inByte==66)
{
digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
}

}
}
Ketik program di atas, upload dan jalankan Serial Monitor.  Kirim karakter ‘A’ atau ‘B’ untuk menyalakan dan mematikan LED yang ada di papan Arduino.  Catatan: tentu saja Anda bisa mengganti karakter tersebut dengan yang lain, sesuai keinginan.  (‘A’ = ASCII nomor 65 dan ‘B’ = ASCII nomor 66).

Membaca status input melalui serial port
Tahap berikutnya adalah pembacaan status input pada Arduino melalui serial port. Ketentuan yang kita buat adalah jika salah satu pin digital pada Arduino bernilai 0/low maka Arduino akan mengirim karakter ‘L’ dan jika bernilai 1/high maka akan mengirim karakter ‘H’.  Untuk memudahkan pengamatan, masing-masing karakter diikuti oleh karakter ‘CR’ atau ‘\n’.
Di contoh ini, kita gunakan pin nomor 24 yang dihubungkan ke sebuah tombol.  Kaki satu lagi dihubungkan ke ground.
// variable to receive data from serial port
int inByte=0;

// Pin 13 has an LED connected on most Arduino boards.
int led = 13;

// Push button is connected to pin 24
int buttonPin = 24;
int buttonState=0;

void setup()
{
// initialize UART at 9600bps
Serial.begin(9600);
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop()
{
if (Serial.available() > 0) {
inByte=Serial.read();
Serial.write(inByte);

if (inByte==65)
{
digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
}
if (inByte==66)
{
digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
}
}
buttonState=digitalRead(buttonPin);
if (buttonState==LOW)
{
Serial.write("L\n");  // send ‘L’ + CR
}
if (buttonState==HIGH)
{
Serial.write("H\n"); // send ‘H’ + CR
}
}
Ketik program di atas, lalu upload.  Buka Serial Monitor, lalu amati data yang diterima. Cobalah juga menekan/melepas tombol sambil mengamati perubahan yang terjadi antara ‘L’ dan ‘H’.  Di percobaan ini kita bisa amati, bahwa Arduino mengirimkan data secara terus menerus baik L ataupun H, meskipun tombol ditekan atau dilepas lama. Ingat bahwa hal ini karena instruksi ini terletak di dalam program utama/main loop.
Sekarang kita akan coba modifikasi program, sehingga yang terkirim hanya satu kali saja saat terjadi perubahan dari L ke H atau H ke L.  Untuk itu, kita harus membandingkan kondisi nilai tombol saat ini dengan kondisi pada loop sebelumnya. Variabel yang digunakan lastButtonState.  Jika tidak sama dengan buttonState, maka baru kita proses apa yang kita inginkan yaitu mengirimkan data.
// variable to receive data from serial port
int inByte=0;

// Pin 13 has an LED connected on most Arduino boards.
int led = 13;

// Push button is connected to pin 24
int buttonPin = 24;
int buttonState=0;
int lastButtonState=0;

void setup()
{
// initialize UART at 9600bps
Serial.begin(9600);
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop()
{
if (Serial.available() > 0)
{
inByte=Serial.read();
Serial.write(inByte);

if (inByte==65)
{
digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
}
if (inByte==66)
{
digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
}
}

buttonState=digitalRead(buttonPin);
if (buttonState != lastButtonState)
{
if (buttonState==LOW)
{
Serial.write("L\n");
}
else
{
Serial.write("H\n");
}
}
lastButtonState=buttonState;
}

Ketik program di atas, lalu upload, kemudian amati di Serial Monitor. Tekan tombol yang agak lama sambil amati karakter yang terkirim.  Arduino hanya akan mengirimkan satu kali saja saat ada perubahan L → H atau H → L.
Sampai di sini program di sisi Arduino sudah selesai, berikutnya kita masuk ke pemrograman serial port menggunakan Visual Studio .NET dalam hal ini kita coba memakai Visual Basic versi 2012.


Wednesday 11 May 2016

MENGUJI BOARD ARDUINO

      Perlu diketahi papan Arduino uno memiliki LED indikator  output pada pin13, sehingga untuk menguji board arduino uno anda tidak perlu lagi menggunakan LED tambahan, hal yang perlu anda lakukan untuk menguji papan Arduino yang anda miliki adalah ;

1.Bukalah Softwere Arduino IDE.
 
Gambar 2.6 Tampilan Awal Softwere Arduino IDE

2.Setelah itu bukalah Berkas  » Contoh » 01.Basics » Blink, Sehingga muncul program seperi pada gambar dibawah ini.
 
Gambar 2.7 Contoh Program

3.Pemilihan Papan Arduino 
Setelah itu pilihlah jenis Papan Arduino dengan cara klik Alat dan Pilih Papan seperti pada gambar dibawah ini. Namun perlu dikeahui pemilihan papan arduino harus sesuai dengan tipe Arduino yang anda gunakan seperti yang diketahui pada bab sebelumnya saya menggunakan papan Arduino Uno oleh sebab itu saya memilih papan arduino uno sebagai pilihanya namun jika anda mengunakan papan dengan tipe/ jenis Arduino yang berbeda maka pilihlah sesuai dengan yang anda gunakan.
 
Gambar 2.8 Pemilihan Board Arduino

4.Verify (Mengkompilasi Program)
Verify (Mengkompilasi) bertujuan untuk mengetahui kesalahan danjuga berguna untuk mengubah bahasa Pemprogramnan/ Sketch yang kita buat kedalam bahasa mesin atau kedalam format HEX sehingga dapat dijalankan oleh mikrokontroler atau papan Arduino.
Seperti yang kita ketahui bahwa Arduino IDE sendiri memiliki beberapa fasilitas di antaranya adalah Verify (Mengkompilasi Program) sehingga kita tidak perlu lagi menggunakan external Verify (Mengkompilasi Program), untuk MemVerify (Mengkompilasi Program) anda cukup menekan icon   ( Verify ) seperti pada gambar dibawah ini.
 
Gambar 2.9 Proses Kompilasi Program

Setelah Proses Verify/ Kompilasi selesai perhatikan Program/ Sketch apakah masih terdapat kesalahan atau tidak,jika masih terdapat kesalahan maka tampilanya akan menunjukanseperti pada gambar 5.10, pada bagian bawah yang berwarna jingga menunjukan kesalahan pada bagian sebelum digitalWrite yang digaris dengan warna merah jambu pada bagian Program, maka ceklah Program/ Sketch yang berada diatasnya  atau sebelumnya,perbaikilah program setelah itu Verify/dikompilasi kembali, jika sudah tidak ada kesalahan tampilanya akan berubah hal ini ditunjukan pada gambar 5. 11 disana tertulis selesai mengkompilasi dan proses selanjutnya adalah mengupload program.

Gambar 2.10 Kompilasi yang Masih Terdapat Kesalahan

Gambar 2.11 Kompilasi yang Berhasi

5. MEMILIH JALUR KOMUNIKASI
Setelah itu polihlah port yang anda gunakan dengan cara klik Alat  » Port yang digunakan untuk mengetahui port yang digunakan anda dapat melihatnya pada divace manager.

Gambar 2.12 Pemilihan Port

6.Mengupload Program (Sketch).
Untuk mengupload program ke papan arduino anda cukup menekan icon Upload seperti   atau bisa dilihat pada gambar dibawah ini.

Gambar 2.13 Mengupload Program
Atau jika anda menupload program menggunakan papan Selain papan Arduino anda juga dapat mengupload program/ sketch Arduino IDE ke sebuah minimum sistem, dengan menggunakan downloader external seperti USB Asp, Paralel Programer dan lain-lain  maka pilihlah jenis Downloadernya seperti pada gambar dibawah ini namun untuk menguploadnya anda tidak bisa dengan cara menekan icon upload melaikan dengan cara menekan Ctl+shift+U hal ini dikarenakan icon tersebut digunakan untuk menupload program hanya ke papan Arduino.

 Gambar 2.14 Arduino Programer

jika sudah mengupload program perhatikanlah LED pada pin 13,  jika LED pada pin 13  berkedip itu berarti papan arduino anda tidak bermasalah dan siap digunakan untuk project- project yang lainya.


Gambar 2.15 Tampilan Jika Berhasil

Wednesday 28 December 2016

Arduino Multiple Led Blinking

Assalamualaikum reader..

Dalam tutorial kali ini saya akan bereksperimen dengan arduino lagi dan melanjutkan tutorial sebelumnya yaitu Belajar Arduino Uno LED basic
Eksperimen kali ini saya dapatkan dari tutorial yang ada di internet dan saya tertarik untuk mencoba made it by myself. Yup.. masih tetep obyek eksperimennya berupa LED tapi kali ini jumlah LED nya adalah 3 buah. Hasil akhir dari eksperimen ini adalah membuat 3 buah LED tersebut blinking.
Bahan-bahan yang dibutuhkan adalah :
1. Arduino Uno board

2. LED (3 buah)

3. Kabel jumper

4. Breadboard

Pertama rangkailah bahan-bahan tadi seperti pada gambar berikut. 

Gambar rangkaian ini sebenarnya mau saya gambar menggunakan aplikasi namanya Fritzing, bisa anda download di internet. Cuman ketika saya coba install di laptop terdapat permasalahan (ada file system yang missing). Akhrnya saya terpaksa menggambar rangkaian ini menggunakan aplikasi yang online. Anda bisa mencobanya sendiri, salah satu websitenya adalah circuits.io
Semua kaki negatif LED (kaki yang pendek) terhubung ke pin GND yang ada di Arduino. Sedangkan untuk kaki positif (kaki yang panjang) masing-masing LED terhubung ke pin 13 (D13), pin 12 (D12), pin 11 (D11). 







Kabel jumper warna hijau (lihat gambar skema) adalah kabel negatif yang terhubung ke pin GND, sedangkan kabel warna biru, orange dan kuning adalah kabel positif yang terhubung ke pin 13, pin 12 dan pin 11.