kupas tuntas arduino electriboy.wordpress

Upload: hery-febrian-dinogroho

Post on 16-Jul-2015

382 views

Category:

Documents


9 download

TRANSCRIPT

Kupas tuntas arduino Judulnya aja kupas tuntas berarti disini kita akan membahas tentang arduino, bagi yang belum tau pasti bingung apaan arduino nama hewan yah. itulah hal pertama yang saya temukan ketika saya browsing di internet. Baiklah kita mulai bacaanya semoga bermanfaat.

Daftar isi1 Pengertian 2 Jadikan rahasia umum 3 Install Software arduino di ubuntu 4 Pemrograman arduinoo

4.1 structure pemrograman

4.1.1 structure 4.1.2 setup() 4.1.3 loop 4.1.4 function 4.1.5 { } curly braces 4.1.6 ; semicolon 4.1.7 /*...*/ blok comment 4.1.8 // line comment 4.2.1 variable scope 4.3.1 byte 4.3.2 integer 4.3.3 long 4.3.4 float 4.3.5 array 4.4.1 aritmetic 4.4.2 compound assignments 4.4.3 comparison 4.4.4 logic operator 4.5.1 true/false 4.5.2 high/low 4.5.3 input/output 4.6.1 if

o

4.2 Variable

o

4.3 Data type

o

4.4 Operator aritmetic

o

4.5 konstanta

o

4.6 Flow control

o

4.6.2 if... else 4.6.3 for 4.6.4 while 4.6.5 do... while 4.7.1 pinMode(pin, mode) 4.7.2 digitalRead(pin) 4.7.3 digitalWrite(pin, value) 4.8.1 analogRead(pin) 4.8.2 analogWrite(pin, value) 4.9.1 delay(ms) 4.9.2 millis() 4.10.1 min(x,y) 4.10.2 max(x,y) 4.11.1 randomSeed(seed) 4.11.2 random(min,max) 4.12.1 Serial.begin(rate) 4.12.2 Serial.prinln(data)

4.7 Digital I/O

o

4.8 Analog I/O

o

4.9 Time

o

4.10 Math

o

4.11 Random

o

4.12 Serial

PengertianArduino adalah sebuah nama produk design system minimum mikrokontroler yang di buka secara bebas. Kelebihan dari arduino adalah dia mempunya bahasa pemroraman sendiri, yah mirip bahasa C sih, emang dia ngambil dari bahasa C kali. Terus dia buat program yang namanya boot loader yang sudah di tanam di si mikronya sebelum di jual ke pasaran, si bootloader ini yang menyembatani antara software compiler arduino ama si mikronya. Arduino membuka semua sourcenya mulai dari diagram rangkain, jalur pcb, software compiler (gratis tinggal download), ame bootloader di kasih juga. Terus buat apa beli arduino atuh?, sok aja weh bikin kalau punya banyak waktu, urang mah da mun boga duit dek meuli jadi teu riweh tinggal merogram weh.

Jadikan rahasia umumArduino merupakan system minimum yang sangat modular, dia dapat ditambahkan dengan board aplikasi arduino lain yang di kehendaki fungsinya, lihat http://shieldlist.org/ board aplikasi tambahan yang dapat di gabungkan dengan breadboard arduino. Sudah banyak aplikasi yang telah dibuat menggunakan arduino, lihat http://www.freeduino.org/ Link-link di bawah juga sangat membatu loh:

http://www.arduino.cc http://www.practicalarduino.com http://www.arduinofun.com http://blog.makezine.com/blog/archive/arduino http://www.instructables.com

Install Software arduino di ubuntuBaiklah kita sampai juga pada pembahasan inti yaitu memprogram arduino di linux khususnya yang di bahas di sini di linux ubuntu. Ya ke betulan bacaan ini merupakan prasyarat naik tingkat dari niebi ke techi di POSS-IGOS ITB Bandung. Untuk membuat program atau mengcoding tentu saja kita harus punya dulu compilernya kita bisa download langsung di ubuntu software center nama compilernya Arduino IDE atau lewat terminal dengan cara apt-get install arduino. Yang penting kalau sudah install compiler anda harus cek apakah sudah ada jre,gcc-avr, dan avr-libc.

yah ketentuan lebih lanjut kalau ga bisa terinstall baca di + updatennya juga ada http://www.arduino.cc/playground/Linux/Ubuntu.

Pemrograman arduinoBaiklah kita akan bahas bahasa pemrogramannya, seperti bahasa pemrograman tingkat menegah pada umumnya arduino pun sama memiliki alur algoritma yang mirip yang beda adalah cara penulisan sintaknya.

structure pemrogramanstructureStructure dasar dari bahasa pemrograman arduino itu sederhana hanya terdiri dari dua bagian.

void setup( ) { // Statement; } void loop( ) { // Statement; }Dimana setup( ) bagian untuk inisialisasi yang hanya dijalankan sekali di awal program, sedangkan loop() untuk mengeksekusi bagian program yang akan dijalankan berulang-ulang untuk selamanya.

setup()Fungsi setup() hanya di panggil satu kali ketika program pertama kali di jalankan. Ini digunakan untuk pendefinisian mode pin atau memulai komunikasi serial. Fungsi setup() harus di ikut sertakan dalam program walaupun tidak ada statement yang di jalankan.

void setup() { pinMode(13,OUTPUT); // mengset pin 13 sebagai output }loopSetelah melakukan fungsi setup() maka secara langsung akan melakukan fungsi loop() secara berurutan dan melakukan instruksi-instruksi yang ada dalam fungsi loop().

void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); // nyalakan pin 13 // pause selama 1 detik // matikan pin 13

delay(1000); detik }function

///

pause

selama

1

Function (fungsi) adalah blok pemrograman yang mempunyai nama dan mempunyai statement yang akan di eksekusi ketika function di panggil. Fungsi void setup() dan void loop() telah di bahas di atas dan pembuatan fungsi yang lain akan di bahas selanjutnya. Cara pendeklarasian functiontype functionName(parameters) { // Statement; }

Contoh:

int delayVal() { int v; // membuat variable v bertipe integer v = analogRead(pot); // baca harga potentiometer v /= 4; // konversi 0-1023 ke 0-255 return v; // return nilai v }Pada contoh di atas fungsi tersebut memiliki nilai balik int (integer), karena kalau tidak menghendaki adanya nilai balik maka type function harus void.

{ } curly bracesCurly brace mendefinisikan awal dan akhir dari sebuah blok fungsi. Apabila ketika memprogram dan progremer lupa memberi curly brace tutup maka ketika di compile akan terdapat laporan error.

; semicolonSemicolon harus di berikan pada setiap statement program yang kita buat ini merupakan pembatas setiap statement program yang di buat.

/*...*/ blok commentSemua statement yang di tulis dalam block comments tidak akan di eksekusi dan tidak akan di compile sehingga tidak mempengaruhi besar program yang di buat untuk di masukan dalam board arduino.

// line commentSama halnya dengan block comments, line coments pun sama hanya saja yang di jadikan komen adalh perbaris.

Variable

Variable adalah sebuah penyimpan nilai yang dapat di gunakan dalam program. Variable dapat di rubah sesuai dengan instruksi yang kita buat. Ketika mendeklarisikan variable harus di ikut sertakan type variable serta nilai awal variable.Type variableName = 0;

ContohInt inputVariable = 0; inputVariable // dengan mendefinisikan nilai sebuah variable awal bernama 0

inputVariable = analogRead(2); // menyimpan nilai yang ada di analog pin 2 ke inputVariable

variable scopesebuah variable dapat di deklarasikan pada awal program sebelum void setup(), secara local di dalam sebuah function, dan terkadang di dalam sebuah block statement pengulangan. Sebuah variable global hanya satu dan dapat di gunakan pada semua block function dan statement di dalam program. Variable global di deklarasikan pada awal program sebelum fungstion setup(). Sebuah variable local di deklarasikan di setiap block function atau di setiap block statement pengulangan dan hanya dapat di gunakan pada block yang bersangkutan saja. Contoh penggunaan:int value; // value adalah variable global dan dapat di gunakan pada semua block funtion void setup() { // no setup needed } void loop() { for (int i=0; i y;

// x leboh kecil dari y // x lebih besar dari y

x = y; // x lebih besar dari sama dengan y

logic operatoroperator logical digunakan untuk membandingkan 2 expresi dan mengembalikan nilai balik benar atau salah tergantung dari operator yang di gunakan. Terdapat 3 operator logical AND,OR, dan NOT, yang biasanya di gunakan pada if statement. Contoh penggunaan: Logical ANDIf ( x > 0 && x < 5) // terpenuhi bernilai benar apabila kedua operator pembanding

Logical ORIf ( x > 0 || y > 0) // pembanding terpenuhi bernilai benar apabila salah satu dari operator

Logical NOTIf ( !x > 0 ) // benilai benar apabila ekspresi operator salah

konstantaArduino mempunyai beberapa variable yang sudah di kenal yang kita sebut konstanta. Ini membuat memprogram lebih mudah untuk di baca. Konstanta di kelasifikasi berdasarkan group.

true/falseMerupakan konstanta Boolean yang mendifinisikan logic level. False mendifinisikan 0 dan True mendifinisikan 1.If ( { //doSomething } b == TRUE );

high/lowKonstanta ini mendifinisikan aktifitas pin HIGH atau LOW dan di gunakan ketika membaca dan menulis ke digital pin. HIGH di definisikan sebagai 1 sedangkan LOW sebagai 0.digitalWrite( 13, HIGH );

input/outputKonstanta ini digunakan dengan fungsi pinMode() untuk mendifinisikam mode pin digital, sebagai input atau outputpinMode( 13, OUTPUT );

Flow controlifIf Operator if mengtest sebuah kondisi seperti nilai analog sudah berada di bawah nilai yang kita kehendaki atau belum, apabila terpenuhi maka akan mengeksekusi baris program yang ada dalam brackets kalau tidak terpenuhi maka akan mengabaikan baris program yang ada dalam brackets.If ( someVariable ?? value )

{ //DoSomething; }

if... elseOperator ifelse mengtest sebuah kondisi apabila tidak sesuai dengan kondisi yang pertama maka akan mengeksekusi baris program yang ada di else.If ( inputPin == HIGH ) { //Laksanakan rencana A; } Else { //Laksanakan rencana B; }

forOperator for digunakan dalam blok pengulangan tertutup.For ( initialization; condition; expression ) { //doSomethig; }

whileOperator while akan terus mengulang baris perintah yang ada dalam bracket sampai ekspresi sebagai kondisi pengulangan benilai salahWhile ( someVariable ?? value ) { //doSomething; }

do... whileSama halnya dengan while() hanya saja pada operator Dowhile tidak melakukan pengecekan pada awal tapi di akhir, sehingga otomatis akan melakukan satu kali baris perintah walaupun pada awalnya sudah terpenuhi.Do { //doSomething; } While ( someVariable ?? value );

Digital I/OInput / Output Digital pada breadboard arduino ada 14, pengalamatnya 0 - 13, ada saat tertentu I/O 0 dan 1 tidak bisa di gunakan karena di pakai untuk komunikasi serial, sehingga harus hati-hati dalam pengalokasian I/O.

pinMode(pin, mode)

digunakan dalam void setup() untuk mengkonfigurasi pin apakah sebagai Input atau Output. Arduino digital pins secara default di konfigurasi sebagai input sehingga untuk merubahnya harus menggunakan operator pinMode(pin, mode).pinMode (pin, OUTPUT); digitalWrite(pin, HIGH); // mengset pin sebagai output // pin sebagai source voltage

digitalRead(pin)membaca nilai dari pin yang kita kehendaki dengan hasil HIGH atau LOW.Value = digitalRead(pin); // mengset value sama dengan pin

digitalWrite(pin, value)digunakan untuk mengset pin digital. Pin digital arduino mempunyai 14 ( 0 13 ).digitalWrite ( pin, HIGH ); // set pin to HIGH

Analog I/OInput / Ouput analog pada breadboard arduino ada 6 pengalamatnya 0 - 5

analogRead(pin)membaca nilai pin analog yang memiliki resolusi 10-bit. Fungsi ini hanya dapat bekerja pada analog pin (0-5). Hasil dari pembacaan berupa nilai integer dengan range 0 sampai 1023.Value = analogRead(pin); // mengset value sama dengan nilai analog pin

analogWrite(pin, value)mengirimkan nilai analog pada pin analog.analogWrite(pin, value); // menulis ke pin analog

Timedelay(ms)Menghentikan program untuk sesaat sesuai dengan yang di kehendaki, satuanya dalam millisecond.Delay(1000); // menunggu selama satu detik

millis()Mengembalikan nilai dalam millisecond dihitung sejak arduino board menyala. Penapungnya harus long integer.Value = millis(); // set value equal to millis()

Mathmin(x,y)Membadingkan 2 variable dan akan mengembalikan nilai yang paling kecil.value = min(value, 100); dari kedua nilai // set value sebagai nilai yang paling kecil

max(x,y)Max merupakan kebalikan dari min.value = max(value, 100); dari kedua nilai //set value sebagai nilai yang paling besar

RandomrandomSeed(seed)

random(min,max)

SerialSerial.begin(rate)Statement ini di gunakan untuk mengaktifkan komunikasi serial dan mengset baudrate.void setup() { Serial.begin(9600); } //open serial port and set baudrate 9600 bps

Serial.prinln(data)Mengirimkan data ke serial port.Serial.println(100); // mengirimkan 100

Diperoleh dari "http://saung.igoscenter.org/Kupas_tuntas_arduino" Kategori: Teknologi