Arduino dasar untuk orang biasa

24
Tutorial Dasar Arduino Dalam tutorial ini kamu akan belajar tentang bagaimana memanfaatkan arduino untuk membaca input dan menampilkan output berupa nyala lampu LED. Nantinya kita bisa membuat robot, membuka pintu pagar menggunakan SMS, memberi makan ikan dan menyirami tanaman secara otomatis, pokoknya apapun yang bisa kamu bayangkan deh. Tapi sebelum itu, kita akan belajar yang dasar-dasar dulu. Kalau kamu ingin belajar lebih lanjut tentang arduino, silahkan download e- book di link berikut: http://it-ebooks.info/book/2988/ Apa Itu Arduino? Arduino adalah sirkuit elektronik open-source (skemanya bebas dilihat dan direplika oleh siapapun). Kamu bebas membuat rangkaian elektronikmu sendiri, menjualnya, dan memberinya nama baru. Karena sifat open-source nya ini, maka ada banyak varian arduino. Ada arduino- uno, arduino-mega, arduino-yun, dan sebagainya. Masing-masing punya kelebihan dan keunikan tersendiri. Adapun, biasanya pemula lebih menyukai arduino-uno karena harganya yang relatif murah dan fitur-fitur yang relatif standar. Gambar 1: Arduino dan bagian-bagiannya 1

Transcript of Arduino dasar untuk orang biasa

Page 1: Arduino dasar untuk orang biasa

Tutorial Dasar ArduinoDalam tutorial ini kamu akan belajar tentang bagaimana memanfaatkan arduino untuk membaca input dan menampilkan output berupa nyala lampu LED. Nantinya kita bisa membuat robot, membuka pintu pagar menggunakan SMS, memberi makan ikan dan menyirami tanaman secara otomatis, pokoknya apapun yang bisa kamu bayangkan deh. Tapi sebelum itu, kita akan belajar yang dasar-dasar dulu.

Kalau kamu ingin belajar lebih lanjut tentang arduino, silahkan download e-book di link berikut: http://it-ebooks.info/book/2988/

Apa Itu Arduino?Arduino adalah sirkuit elektronik open-source (skemanya bebas dilihat dan direplika oleh siapapun). Kamu bebas membuat rangkaian elektronikmu sendiri, menjualnya, dan memberinya nama baru.

Karena sifat open-source nya ini, maka ada banyak varian arduino. Ada arduino-uno, arduino-mega, arduino-yun, dan sebagainya. Masing-masing punya kelebihan dan keunikan tersendiri. Adapun, biasanya pemula lebih menyukai arduino-uno karena harganya yang relatif murah dan fitur-fitur yang relatif standar.

Gambar 1: Arduino dan bagian-bagiannya

1

Page 2: Arduino dasar untuk orang biasa

Pada Arduino ada sebuah chip mikrokontroler yang disebut Atmega. Bentuknya seperti persegi panjang hitam dengan banyak kaki. Chip ini adalah otak dari arduino. Rangkaian-rangkaian lain, seperti port USB, adapter jack, dan beberapa lubang pin sebenarnya hanya digunakan untuk mempermudah pengguna saja.

Berikut adalah keterangan tentang komponen-komponen yang ada di arduino:

Nama Komponen Keterangan

Atmega Otak dari arduino. Jika kelak kamu mencoba untuk memprogram AVR, kamu hanya perlu berurusan dengankomponen ini.

Pada dasarnya, pin header di arduino adalah perpanjangan dari kaki-kaki pin yang ada di atmega.

Port USB Arduino dibuat untuk keperluan prototyping (coba-coba). Oleh sebab itu, pada arduino, hampir segala sesuatunya dibuat mudah, termasuk untuk mengupload program dan men-suppy listrik untuk Atmega.

Port USB memiliki 2 fungsi, yakni untuk mengupload program dari komputer ke arduino, dan untuk memberi supply listrik.

DC Adapter Jack Saat program mu sudah terupload ke arduino, dan kamu ingin arduino mu bisa berfungsi tanpa harus terhubung ke komputer via port usb, kamu bisa menggunakan DC adapter jack. DC adapter jack ini bisa menerima tegangan dalam rentang 5 V sampai 12 V.

Tegangan yang disarankan adalah 9 V. Kamu bisa menggunakan adaptor biasa, atau baterai 9V yang dipasangi DC Jack

Pin Headers VCC Pin-pin dengan label VCC berfungsi untuk menerima/mengalirkan arus listrik. Kamu bisa memberi power pada arduinomu dengan menghubungkan salah satu port VCC dan salah satu port GND pada kutub positif dan negatif pada baterai 9V. Hati-hati, jangan sampai tertukar.

2

Page 3: Arduino dasar untuk orang biasa

5 V & 3.3 V Pin-pin dengan label ini berfungsi untuk mengalirkan arus listrik dari arduino, masih masing dengan tegangan 5 V dan 3.3 V.

Biasanya ada komponen-komponen yang membutuhkanarus listrik agar bisa berfungsi. Jika kebetulan tegangan yang dibutuhkan adalah 5 atau 3 volt, maka pin-pin ini bisa digunakan. Jangan lupa untuk menghubungkan komponen yang bersangkutan ke pin GND juga.

GND Pin-pin dengan label ini berfungsi untuk menghubungkan arduino dengan ground (kutub negatif).

Seandainya kita memberikan arus listrik pada komponek-komponen listrik melalui arduino, kita harus menghubungkan komponen terkait dengan GND.

Pin Digital Pin-pin dengan label angka tanpa tanda ~ adalah pin-pindigital. Berfungsi untuk membaca sensor atau mengirimkan sinyal digital. Sinyal nol artinya mati (0 volt), sedangkan sinyal satu artinya menyala (5 volt).

Pin PWM Pin-pin dengan label ~ adalah pin-pin PWM. Pin-pin inibisa menerima sinyal 0 sampai 255. 0 artinya mati, 255 artinya menyala. Sedangkan angka-angka di antara 0 dan 255 menyatakan beda potensial yang dipakai.

Misal untuk menyalakan LED, 255 berarti sangat terang, 0 berarti padam, 128 berarti menyala redup, 200 berarti menyala cukup terang.

Selain pin PWM sebenarnya ada pula pin analog denganlabel berawalan "A", mulai dari A0 sampai A5. Pin Analog memiliki kisaran sinyal antara 0-1023

Nah, sekarang kamu sudah mengenal komponen-komponen yang ada di arduino. Berikutnya kita akan bahas sedikit tentang mengupload program ke arduino. Untuk mengupload program ke arduino, kamu harus memiliki arduino-IDE, sebuah program yang harus kamu install di komputermu.

Silahkan kunjungi website ini: http://arduino.cc/en/main/software dan

3

Page 4: Arduino dasar untuk orang biasa

download sesuai dengan platform komputer mu. Jika kamu menggunakan windows, silahkan klik "windows-installer".

Beginilah tampilan arduino IDE:

Gambar 2: arduino IDE

Program dalam arduino ditulis menggunakan C. Adapun bahasa C yang ada di arduino relatif cukup mudah jika dibandingkan dengan bahasa C untuk memprogram AVR.

4

Page 5: Arduino dasar untuk orang biasa

Berikut adalah cuplikan program sederhana untuk mengedip-ngedipkan lampuLED yang terpasang di pin 13 pada arduino:

// bagian setup, dijalankan sekali saja, // saat pertama kali arduino dinyalakanvoid setup() { pinMode(13, OUTPUT); // men-set pin 13 sebagai output. // (pin ini terhubung ke LED)}

// bagian loop, dijalankan secara terus-menerusvoid loop() { digitalWrite(13, HIGH); // mengirimkan sinyal HIGH atau 1 // ke pin 13 untuk menyalakan LED

delay(1000); // menunggu selama 100 mili detik // (1 detik) supaya tetap nyala

digitalWrite(13, LOW); // mengirimkan sinyal LOW atau 0 // ke pin 13 untuk mematikan LED

delay(1000); // menunggu selama 100 mili detik // (1 detik) supaya tetap mati // jalankan ulang fungsi loop}

Pada dasarnya program arduino dibagi menjadi 2 bagian, yakni bagian setup dan bagian loop.

Bagian setup digunakan untuk men-setting konfigurasi awal. Pin mana yang akan digunakan untuk output, dan pin mana yang digunakan untuk input. Perintah yang digunakan untuk melakukan setting input-output adalah pinMode (perhatikan huruf besar dan huruf kecilnya)

pinMode(13, OUTPUT); // set pin nomor 13 sebagai output.pinMode(12, INPUT); // set pin nomor 12 sebagai input.

Bagian loop digunakan untuk memberi perintah pada arduino tentang apa yang harus dilakukan secara terus menerus.

5

Page 6: Arduino dasar untuk orang biasa

Ada beberapa perintah yang sering digunakan:

Perintah Keterangan Contoh

delay(milidetik); Perintah untuk tidak melakukan apapun selama jangka waktu tertentu (milidetik).

1 detik = 1000 mili detik

delay(1000);

digitalRead(port); Membaca sinyal digital dari port tertentu. Biasanya hasil pembacaan akan disimpan dalam sebuah variabel.

int a = digitalRead(12);

digitalWrite(port, sinyal); Mengirim sinyal digital ke port tertentu.

LOW = 0HIGH = 1

digitalWrite(12, HIGH);digitalWrite(13, LOW);digitalWrite(12, 1);

analogRead(port); Membaca sinyal analog dari port tertentu. Biasanya hasil pembacaan akan disimpan dalam sebuah variabel.

int a = analogRead(3);

analogWrite(port, sinyal); Mengirim sinyal analog ke port tertentu (0-255).

analogWrite(10, 255);analogWrite(10, 0);digitalWrite(10, 128);

OK, cukup sekian pembahasan tentang arduino. Kamu bisa bayangkan arduino seperti sebuah komputer kecil yang bisa kamu perintah dengan program.

6

Page 7: Arduino dasar untuk orang biasa

Bagaimana Listrik DC Bekerja?Bekerja dengan arduino membutuhkan sedikit pengetahuan elektronik. Nah, kali ini kita akan membahas tentang listrik searah (Direct Current). Supaya lebih mudah, bayangkan arus listrik seperti arus air.

Kalau kamu menumpahkan segelas air, maka air akan mengalir ke tempat yang lebih rendah, membasahi tempat-tempat yang sebelumnya kering. Kamu bisa umpamakan air seperti muatan listrik. Muatan listrik memiliki satuan coloumb.

Sama halnya seperti air mengalir dari tempat tinggi ke tempat rendah, demikian pula dengan listrik. Arus listrik mengalir dari kutub positif ke kutub negatif. Semakin besar perbedaan ketinggian antara dua tempat, maka air akan mengalir dengan lebih cepat. Kamu bisa umpamakan perbedaan ketinggian ini sebagai beda potensial (disebut pula sebagai tegangan atau voltase). Tegangan listrik memiliki satuan Volt.

Nah, sekarang bayangkan kamu ada di bawah air terjun. Banyaknya air yang mengalir pada sebuah air terjun bisa kamu umpamakan sebagai muatan, sedangkan perbedaan tinggi antara bagian atas dan bawah air terjun bisa kamu bayangkan sebagai tegangan. Dengan ketinggian sedemikian rupa, tentusaja air yang mengalir akan menjadi sangat deras. Banyak air yang mengguyur badanmu dalam setiap detik bisa kamu bayangkan sebagai kuat arus. Kuat arusmemiliki satuan Ampere.

Sekarang bayangkan kamu berada di bawah sebuah talang hujan (ketika hujan tentunya). Bergantung dari ketinggian dan banyaknya air, maka jumlah air yangmengguyur badanmu dalam setiap detik juga akan bervariasi. Jika air dari talang hujan tadi mengalir melalui tembok, maka niscaya kecepatan air akan berkurang akibat gaya gesek dengan tembok. Demikian juga jika talang tersumpal dedaunan. Sesuatu yang menghambat aliran air bisa kita analogikan sebagai hambatan. Hambatan memiliki satuan ohm.

7

Page 8: Arduino dasar untuk orang biasa

Gambar 3: Perbandingan Air dan Listrik

Ada dua macam rumus untuk menghitung kuat arus, dan kedua-duanya bisa dipakai.

I = q/t

I = V/R

I : Kuat arus (Ampere)q : Muatan (Coulomb)t : Waktu (Detik)V : Tegangan (Volt)R : Hambatan (Ohm)

Setiap komponen elektronik memiliki hambatan tertentu, dan karenanya memiliki jumlah arus dan tegangan yang bisa ditolerir. Untuk mencegah

8

Page 9: Arduino dasar untuk orang biasa

kerusakan komponen elektronik, selalu perhatikan nilai tegangan dan kuat arus yang bisa ditolerir komponen tersebut. Dalam beberapa komponen, tercantum daya (watt). Daya bisa dihitung dengan cara mengalikan tegangan dangan kuat arus (P = V x I).

Dalam rangkaian elektronik, dikenal pula rangkaian seri dan paralel. Dalam rangkaian seri, kuat arus di tiap titiknya akan sama. Bayangkan pada sebuah airterjun yang jalurnya tak bercabang, kecepatan dan banyaknya air yang mengalir di setiap titik cenderung sama. Adapun demikian untuk rangkaian seri, besar tegangan di total merupakan jumlahan dari semua tegangan yang ada pada jalur tersebut. Bayangkan bahwa pada sebuah air terjun, tinggi keseluruhan air terjun adalah jumlahan dari jarak puncak ke titik tengah air terjun dan jarak titik tengah ke dasar air terjun.

Dalam rangkaian paralel, berlaku kebalikan. Jumlah tegangan di titik-titik yang paralel adalah sama, sedangkan kuat arusnya justru terbagi. Bayangkan rangkaian paralel seperti sungai yang bercabang. Air yang mengalir akan terbagi ke dalam dua cabang anak sungai, demikian pula kuat arus. Sedangkan untuk perbedaan ketinggian dari kedua anak sungai pada titik-titik yang paralel akan tetap sama. Maka tegangan pada rangkaian paralel adalah sama.

Gambar 4: Rangkaian seri dan paralel

9

Page 10: Arduino dasar untuk orang biasa

Komponen Elektronik DasarKamu bisa membayangkan bahwa komponen-komponen elektronika adalah bagian-bagian dari sebuah bendungan yang bisa kamu gunakan untuk mengatur bagaimana arus listrik mengalir sesuai keinginan atau kebutuhanmu.

Dalam tutorial singkat ini, akan dibahas beberapa komponen elektronik dasar yang sering dipakai dalam proyek arduino.

BreadboardBreadboard adalah sebuah papan elektronik yang berfungsi untuk menampung berbagai komponen elektronik lain. Pada breadboard terdapat beberapa lubang yang memudahkan kita untuk meletakkan komponen tanpa perlu menyolder.

Gambar 5: Breadboard dan hubungan antar lubang

Anggap saja breadboard sebagai prototype PCB. Dengan breadboard kamu akan bisa melakukan bongkar pasang komponen sesuai dengan kebutuhan.

Ada empat bagian pada breadboard. Masing-masing tidak terhubung satu sama lain. Lubang-lubang pada bagian atas dan bawah terhubung secara horizontal, sedangkan lubang-lubang pada bagian tengah terhubung secara vertikal. Cukup praktis bukan?

10

Page 11: Arduino dasar untuk orang biasa

LED (Light Emitting Diode)LED sebenarnya adalah diode (komponen elektronik yang membatasi arah pergerakan arus listrik). Jika dipasang secara sesuai, maka LED akan mengalirkan arus listrik dan memancarkan sinar. Namun jika dipasang terbalik, LED akan memblokir arus listrik. LED umumnya dipakai sebagai indikator akan keberadaan arus DC.

Gambar 6: LED

Pada LED kaki yang panjang dihubungkan ke kutub positif, sedangkan kaki yang pendek dihubungkan ke kutub negatif. Seandainya karena suatu sebab, kedua kaki tersebut dipotong sama panjang (misalnya supaya mudah disolder ke PCB), maka kamu perlu melihat bagian datar pada pangkal kaki LED bagian yang datar adalah bagian negatif.

Perlu diketahui bahwa LED 5,5 mm umumnya diperuntukkan untuk menahan tegangan sebesar 2 volt, sedangkan pin digital arduino akan memberikan arus sebesar 35 mili ampere, dengan tegangan 5 volt. Maka supaya LED kita tidak cepat rusak, kita harus menambahkan resistor secara seri untuk membagi tegangan.

11

Page 12: Arduino dasar untuk orang biasa

ResistorResistor adalah komponen yang berfungsi untuk menghambat arus listrik. Resistor memiliki 4 cincin warna yang menggambarkan nilai hambatannya.

Gambar 7: Resistor

Berbeda dengan LED, resistor bisa dipasang secara bolak-balik dengan fungsiyang persis sama. Biasanya jarak antara cincin ke tiga dan ke empat agak jauh,sehingga bisa dijadikan patokan.

Berikut adalah kode warna resistor mulai dari cincin pertama sampai ke empat:

12

Page 13: Arduino dasar untuk orang biasa

Gambar 8: Kode warna pada resistor

Push ButtonPush button adalah saklar yang bisa digunakan dengan cara ditekan. Ada empat kaki pada push button. Jika kamu membalik push button, maka akan tampak garis pemisah antara dua kaki dengan kedua kaki yang lain. Dalam keadaan normal, kedua kaki pertama dan kedua kaki terakhir akan saling terputus. Saat kamu menekan tombolnya, maka saklar akan terhubung dan arus listrik akan mengalir. Kamu bisa memasang push button secara bolak-baliktanpa mempedulikan kutub positif dan negatif. Biasanya Push button diletakkan di garis pemisah tengah antara kedua bagian pada breadboard.

13

Page 14: Arduino dasar untuk orang biasa

Gambar 9: Push Button

PotentiometerPotentiometer adalah resistor yang nilai hambatannya bisa diubah dengan caramemutar knop yang ada. Potentiometer memiliki tiga buah kaki. Kaki pertama dan terakhir harus dihubungkan ke kutub positif dan negatif (boleh bolak-balik), sedangkan kaki tengah biasanya dihubungkan ke pin analog di arduino, sehingga arduino dapat membaca nilai hambatan saat ini.

Gambar 10: Potentiometer

14

Page 15: Arduino dasar untuk orang biasa

Project 1: Kedip-KedipUntuk langkah pertama, kita akan membuat arduino mampu mengedipkan LEDsetiap satu detik. Untuk itu, kamu membutuhkan:

1. Arduino

2. Breadboard

3. Beberapa kabel konektor

4. Resistor 100 ohm (coklat-hitam-coklat)

5. LED

Susunlah rangkaianmu seperti ini:

Gambar 11: Rangkaian Project 1

Arduino akan mengirimkan sinyal satu dan nol untuk memberikan arus listrik dengan tegangan sebesar 5 volt melalui pin 10. Arus dari pin 10 tadi akan

15

Page 16: Arduino dasar untuk orang biasa

melalui resistor dan LED secara seri, dan kemudian mengalir ke pin GND (ground).

Mengapa perlu resistor? Dan mengapa harus 100 ohm?

LED hanya mampu menahan tegangan sebesar 2 volt, sehingga resistor harus merelakan dirinya menahan tegangan sebesar 3 volt. Pada rangkaian seri, tegangan total akan dibagi ke setiap komponen elektronik (dalam hal ini resistor dan LED)

Varduino = Vresistor + VLED

5 Volt = Vresistor + 2 VoltVresistor = 5 Volt – 2 VoltVresistor = 3 Volt

Arus yang bisa keluar dari pin digital arduino (termasuk pin 10) masing-masing adalah 35 mili ampere. Satu mili ampere adalah seperseribu ampere. Sehingga 35 mili ampere = 0,035 ampere.

Pada rangkaian seri, kuat arus listrik yang mengalir setiap detik adalah sama, sehingga arus yang mengalir pada resistor pun sebesar 0,035 ampere. Dari perhitungan sebelumnya kita tahu bahwa tegangan yang harus ditanggung resistor adalah 3 volt. Dengan mengetahui kuat arus dan tegangan, maka kita bisa menghitung hambatan yang dibutuhkan. Seperti yang kamu sudah ketahui, I = V/R sehingga V = I x R, dan R = V/I.

Maka:

R = V/IR = 3 Volt / 0.035 AmpereR = 85,71 ohm

Nah, rasanya akan sulit menemukan hambatan sebesar itu, maka kita ambil nilai terdekat 100 ohm. Pada resistor kita cincin ke empat nya berwarna emas. Warna emas berarti toleransi 5%. 5% dari 100 adalah 20. Jadi nilai hambatan yang sebenarnya adalah berkisar antara 80 ohm sampai 120 ohm. Perbedaan sebesar 10 atau 20 ohm tidaklah terlalu berpengaruh dalam rangkaian kita ini.

Usai menyusun rangkaian hardware, sekarang waktunya kita memprogram

16

Page 17: Arduino dasar untuk orang biasa

arduino. Memprogram arduino sangatlah mudah. Kamu tinggal menghubungkan arduinomu dengan komputer menggunakan kabel USB yang sudah disediakan. Setelah itu kamu harus membuka arduino IDE yang bisa di-download di http://arduino.cc/en/main/software dan mengetikkan kode program berikut:

void setup() {

pinMode(10, OUTPUT); // Set pin 10 sebagai output

}

void loop() {

digitalWrite(10, HIGH); // beri sinyal ke pin 10

delay(1000); // tunggu 1 detik

digitalWrite(10, LOW); // matikan sinyal di pin 10

delay(1000); // tunggu 1 detik

}

Setelah mengetikkan kode program, sekarang saatnya kamu mengupload programmu ke arduino dengan menekan tombol upload (berbentuk panah kanan).

Kamu akan menemukan LED mu berkedip-kedip genit :D.

Project 2: Tekan-TekanSelain membutuhkan teknologi yang otomatis, kita juga kerap membutuhkan teknologi yang memungkinkan interaksi dengan pengguna. Pisau pada sebuah blender akan terus berputar saat saklar ditekan. Nah, kali ini kita akan memanfaatkan push button sebagai sensor.

Berikut adalah komponen-komponen yang kamu butuhkan:

1. Arduino

2. Breadboard

17

Page 18: Arduino dasar untuk orang biasa

3. Beberapa kabel konektor

4. Dua buah resistor 100 ohm (coklat-hitam-coklat)

5. Resistor 10 kilo ohm (coklat-hitam-kuning)

6. push button

7. LED

Pertama-tama, kamu harus menyusun rangkaian arduinomu menjadi seperti ini:

Gambar 12: Rangkaian Project 2

Kali ini kita memanfaatkan bagian horizontal breadboard, karena baik push button ataupun LED perlu terhubung ke ground. Satu hal yang mungkin terasa agak aneh adalah adanya rangkaian paralel antara input ke pin 9 dan ground untuk push button (ada dua resistor yang berada di dekat push button). Saat tombol ditekan, arus listrik akan mengalir melalui hambatan yang lebih kecil (100 ohm) dan mengarah ke input pin 9, sehingga pin 9 akan menerima sinyal listrik. Saat tombol dilepas, pin 9 akan terhubung ke ground dan tidak menerima sinyal listrik.

18

Page 19: Arduino dasar untuk orang biasa

Rangkaian LED pada project ini persis sama dengan rangkaian LED pada project sebelumnya.

Berikut adalah program yang harus kamu upload ke arduino:

int led = 11; // beri nama pin 11 sebagai ledint button = 9; // beri nama pin 9 sebagai buttonvoid setup() { pinMode(led, OUTPUT); // jadikan pin 9 sebagai output pinMode(button, INPUT); // jadikan pin 11 sebagai input}

void loop() { int ditekan = digitalRead(button); // baca penekanan if(ditekan){ digitalWrite(led,HIGH); // jika tertekan, nyalakan led }else{ digitalWrite(led,LOW); // jika tdk tertekan, matikan } delay(100); // tunggu sepersepuluh detik}

Sekarang, setiap kali kamu menekan tombol, lampu LED akan menyala.

Project 3: Putar-PutarJika pada kedua project sebelumnya, kita banyak bermain dengan sinyal digitalyang hanya memiliki dua state saja (0 atau 1), maka kali ini kita akan coba bermain dengan sinyal analog. Sinyal analog pada port PWM di arduino memiliki jangkauan dari 0-255, sedangkan sinyal analog pada port A0-A5 masing-masing memiliki jangkauan dari 0-1023.

Berikut adalah komponen-komponen yang kamu butuhkan:

1. Arduino

2. Breadboard

3. Beberapa kabel konektor

4. Resistor 100 ohm (coklat-hitam-coklat)

19

Page 20: Arduino dasar untuk orang biasa

5. Potentiometer

6. LED

Susun rangkaianmu menjadi seperti berikut:

Gambar 13: Project 3

Rangkaian ini mirip dengan rangkaian pada project 2, hanya saja kali ini kaki tengah potentiometer harus kamu hubungkan ke port analog. Dan ini adalah program yang harus kamu upload:

int led = 11;int potentio = A0;void setup() { pinMode(led, OUTPUT); pinMode(potentio, INPUT);}void loop() { int sinyal = analogRead(potentio); Serial.print(sinyal); analogWrite(led, sinyal/4); delay(100);}

20

Page 21: Arduino dasar untuk orang biasa

Kalau kamu perhatikan di sana ada pembagian dengan empat.analogWrite(led, sinyal/4);

Pembagian tersebut diperlukan karena sinyal yang dibaca dari pin A0 berkisar antara 0-1023, sedangkan sinyal yang bisa diberikan pin 11 hanya berkisar antara 0-255

Project 4 dan Seterusnya...Kamu sudah tahu bagaimana arduino bekerja. Selanjutnya kamu bisa membuatsendiri project-project yang lebih keren atau berguna. Tentu saja akan butuh sedikit usaha untuk itu.

Komponen-komponen elektronik yang bisa dihubungkan ke arduino (dan mikrokontroler secara umum) bukan hanya LED, push button, dan potentio-meter. Masih ada berbagai komponen yang lain, misal:

1. Sensor SonarSensor sonar (yang banyak tersedia di pasaran adalah HC-SR04) mampu mendeteksi jarak sekitar 2 meter. Sensor ini bekerja menggunakan prinsip ekolokasi seperti kelelawar. Pada sensor sonar terdapat 4 kaki, VCC, GND, TRIG, dan ECHO. VCC dan GND masing-masing harus dihubungkan ke kutub positif dan negatif. TRIG berfungsi untuk mengeluarkan bunyi ultrasonik, dan ECHO berfungsi untuk menangkap gema ultrasonik. Selisih waktu antara sinyal yang dikirim TRIG dan ditangkap ECHO bisa digunakan untuk menentukan jarak

2. Motor DCMirip dengan "dinamo" tamiya. Membutuhkan daya yang sangat besar, dan bisa mengeluarkan arus balik. Berhati-hatilah saat bermain dengan motor DC. Untuk mengendalikan motor DC, biasanya dibutuhkan power eksternal, transistor (sebagai saklar elektronik) dan diode (untuk melindungi transistor dan arduino dari arus balik saat motor berhenti).

3. Motor ServoMotor Servo memiliki torsi yang lebih besar dari motor DC. Mampu

21

Page 22: Arduino dasar untuk orang biasa

berputar 180 derajat ke kanan maupun ke kiri.

4. Motor StepperMotor stepper memiliki torsi yang bahkan lebih besar dari motor servo, biasanya dipakai untuk menggerakkan lengan robot.

5. Sensor kelembaban, Piezo sounder, buzzer, dan sebagainya.

Kamu bisa mulai mencari berbagai macam proyek menarik terkait arduino di internet. Salah satu alamat yang cukup menarik dikunjungi adalah http://www.instructables.com/tag/type-id/category-technology/channel-arduino/

Berikut adalah project robot sederhana yang sempat dikerjakan penulis, dibagidalam beberapa tahapan:

1. Test Sensor Sonar: https://www.youtube.com/watch?v=woXSY94KMFw

2. Test Motor DC: https://www.youtube.com/watch?v=h7IfU5A_m3Y

3. Prototype Robot: https://www.youtube.com/watch?v=ke-FzBScJf8

4. Test Robot: https://www.youtube.com/watch?v=Qlw_i_TzJl8

5. Robot Beraksi: https://www.youtube.com/watch?v=nqoYGAxoW80

Saat ini penulis sedang berusaha menerapkan H-Bridge Circuit sehingga motor DC pada robot bisa bergerak berlawanan. Dengan demikian proses beloknya robot akan menjadi lebih sempurna (seolah seperti berputar di tempat).

Dalam waktu dekat, penulis juga akan melengkapi robot sonar dengan beberapa LDR, sehingga bisa berfungsi sebagai line-tracer.

Masih ada banyak hal yang bisa dilakukan, semisal menambahkan algoritma maze-solver, sehingga robot bisa keluar dari labirin, serta menambahkan x-bee module sehingga robot bisa dikendalikan via smartphone atau komputer. Cukup menarik bukan?

Nah, tunggu apa lagi? Aktifkan kekreatifanmu dan bersiaplah membuat karya-karya keren dengan arduino :)

22

Page 23: Arduino dasar untuk orang biasa

PenutupSaya Go Frendi Gunawan. Dosen, developer No-CMS dan blogid.me, newbie balisong flipper, arduino hobbyist, computer enthusiast, dan seorang laki-laki biasa.

Tutorial ini saya buat untuk kalian, mahasiswa atau siapapun yang tertarik dengan pemrograman mikrokontroler. Kalian yang memiliki kemampuan untukmengubah impian menjadi kenyataan melalui rangkaian sirkuit elektronik. Sayaharap modul sederhana ini bisa memberikan gambaran awal tentang arduino dan pemrograman mikrokontroler.

Tutorial ini juga saya persembahkan untuk seseorang yang selalu menempati ruang istimewa dalam hati saya. Seseorang yang selalu saya cintai sampai kapanpun.

23

Page 24: Arduino dasar untuk orang biasa

Daftar Pustaka• http://arduino.cc

• Beginning Arduino 2nd Edition, Michael McRobets

24