Ii - UNHASY

Transcription

i

iiKATA PENGANTARAssalamu alaikum Wr WbRasa Syukur kami panjatkan kepada Allah SWT, atasselesainya buku yang berjudul “Modul Belajar ArduinoUno”. Penulisan buku ini merupakan hasil luaran daripengabdian kepada masyarakat yang berjudul “PelatihanDasar Arduino Uno Untuk Meningkatkan KemampuanSMK Dalam Pemrograman”. Isi buku ini menjelaskantentang latar belakang penyusunan buku, penjelasandasar terkait arduino uno dan beberapa kegiatanmembuat traffic light.Ucapan terima kasih kami sampaikan kepada1. Dr.(HC). Ir. KH. Shalahudin Wahid, selaku RektorUniversitas Hasyim Asy’ari Tebuireng Jombang.2. Prof. Dr. Haris Supratno, yang telah memberikanmasukan dalam penyusunan buku.3. Drs. Bambang Sujatmiko, M.T. selaku Ketua LPPMUniversitas Hasyim Asy’ari Tebuireng Jombang,beserta staf.4. Dr. Tri Rijanto, M.Pd, M.T, selaku Dekan FakultasTeknik Universitas Hasyim Asy’ari TebuirengJombang, beserta staf.5. Seluruhpihakterkaitpengabdiankepadamasyarakat, yang tidak dapat disebutkan satupersatu.Penulisan ini masih jauh dari sempurna, oleh karenaitu kritik dan saran selalu kami harapkan demikesempurnaan buku ini.Jombang , 19 Februari 2019Penullis

iiiDAFTAR ISIKATA PENGANTAR . iiDAFTAR ISI . iiiDAFTAR GAMBAR . iivDAFTARTABEL . viBAB I MENGENAL ARDUINO . 1A. JENIS-JENIS ARDUINO . 1B. MENGISNTAL SOFWARE ARDUINO IDE . 6C. MENCOBA SKETCH DI ARDUINO IDE . 10D. MEYIMPAN DAN MENGUNGGAH SKETCH . 16BAB II ARDUINO UNO . 20A. ARDUINO UNO . 20B. Fungsi Bagian-Bagian Pada Arduino. 22C. MACAMDANFUNGSIINSTRUKSIBAHASAPEMROGRAMAN ARDUINO . 24D. Pemanfaatan Arduino UNO . 32BAB III KEGIATAN MEMBUAT TRAFFIC LIGHT . 35KEGIATAN I ONE LED “ON” . 35KEGIATAN II FLIP -FLOP. 38KEGIATAN III TRAFFIC LIGHT . 40KEGIATAN IV TRAFFIC LIGHT WITH WARNING SYSTEM . 43KEGIATAN V TEXT ON LCD DISPLAY . 47DAFTAR PUSTAKA . 52

ivDAFTAR GAMBARGambar 1.1. Board Arduino Mega2560 .2Gambar 1.2. Board Arduino Leonardo .3Gambar 1.3. Board Arduino Nano .4Gambar 1.4. Board Arduino Lilypad.5Gambar 1.5. Board Arduino UNO .6Gambar 1.6. Tampilan Laman Arduino IDE .7Gambar 1.7. Arduino.Exe .7Gambar 1.8. Persetujuan Instalasi .8Gambar 1.9. Pilihan Instalasi.8Gambar 1.10. Instalasi Folder .9Gambar 1.11. Proses Instalasi .9Gambar 1.12. Tampilan Awal arduino .10Gambar 1.13. Sketch di Arduino IDE .10Gambar 1.14. Menu File.11Gambar 1.15. Menu Edit .12Gambar 1.16. Menu Sketch.13Gambar 1.17. Menu Tools.14Gambar 1.18. Menu Help .15Gambar 1.19. Tool Bar Software Arduino Ide .16Gambar 1.20. Tampilan Save as .17Gambar 1.21. Pengisian Nama File .18Gambar 1.22. Penyesuaian Board Arduino .18Gambar 1.23. Memilih Port Komunikasi Serial .19Gambar 2.1. Bentuk Fisik Arduino UNO.20Gambar 2.2. Tampilan Utama Arduino IDE.21Gambar 2.3. Bagian-Bagian Pada Arduino UNO .22Gambar 2.4. Letak Void Loop .28Gambar 2.5. Penulisan pinMode dan penggunakan digitalWrite.31Gambar 2.6. Project Board.32Gambar 2.7. Robot Mobil Empat Roda .33Gambar 2.8. Robot dengan Sesor Jarak .34Gambar 2.9. Robot Menggambar .34Gambar 3.1. Bagian-bagian LED .35

vGambar 3.2. Rangkaian 1 LED ke Arduino . 36Gambar 3.3. Rangkaian 2 LED ke Arduino . 38Gambar 3.4. Rangkaian 3 LED ke Arduino . 40Gambar 3.5. Contoh Buzzer. 43Gambar 3.6. Rangkaian 3 LED ke Arduino dan Buzzer . 44Gambar 3.7. Lcd 16 x 2 (16 kolom, 2 baris) . 47Gambar 3.8. Sambungan I2C ke LCD . 49Gambar 3.9. Rangkaian LCD 16x2 ke Arduino . 49

viDAFTARTABELTabel 1.1 Pilihan pada Menu File .11Tabel 1.2 Pilihan pada Menu Sketch .13Tabel 1.3 Pilihan pada Menu Tools .14Tabel 1.4 Penjelasan Tool Bar .16Tabel 2.1 Penggunaan Symbol Pada Arduino Uno.28Tabel 2.2Penggunaan Operator Matematika Pada Arduino Uno.29

1BAB IMENGENAL ARDUINOA. JENIS-JENIS ARDUINOArduino merupakan kata yang berasal dari kata Italiaartinya teman yang berani. Arduino dikembangkan oleh sebuahtim yang beranggotakan orang-orang dari berbagai belahan duniadiantaranya:1. Massimo Banzi Milano (Italia)2. David Cuartielles Malmoe (Swedia)3. Tom Igoe (New York USA)4. Gianluca Martini Torini (Italia)5. David A. Mellis Boston (USA)Profil pembuat arduino bisa diakses melalui halaman web:http://www.arduino.cc/playground/Main/People. Tujuan awaldari pembuatan arduino adalah membantu siswa membuatperangkat desain daninteraksi dengan harga murahdibandingkan dengan perangkat yang lain yang tersedia pada saatitu.Arduino merupakan board mikrokontroler yang terdiri darihadware dan sofware yang bersifat open source. Board arduinomnggunakan IC mikrokontroler yaitu ATMega8 untuk arduino NG(Severino), ATMega 328 untuk arduino mega,nano, uno. SoftwareIDE yang digunakan untuk membuat program, mengkompilasi danmengupload program ke dalam IC ATMega. Software ini yangmenghasilkan file hex dari baris kode instruksi program yangmenggunakan bahasa C yang dinamakan sketch setelah dilakukancompile dengan perintah verify/compile. Software ini dapatdiunduh pada halaman web: http://www.arduino.cc.Macam-macam arduino yang berada dipasaran diantaranya:1. Arduino Mega r yang berbasis ATMega2560. Arduino megamemiliki 54 pin input atau output yang mana 15 pin outputuntut PWM, 16 analog input, 4 UARTS, sebuah crystal osilator

216 MHz, koneksi USB, jack power, soket ICSP dan tombol reset.Gambar 1.1 board arduino Mega.Gambar 1.1. Board Arduino Mega2560Adapun ringkasan spesifikasisebagai berikut :a. Mikrokontrolerb. Tegangan Operasic. Tegangan Input (recommended)d. Tegangan Input (limit)e. Pin digital I/OArduino mega adalah:::::f.g.h.i.Pin Analog inputArus DC per pin I/OArus DC untuk pin 3.3 VFlash Memory::::j.k.l.EEPROMSRAMKecepatan Pewaktuan:::ATMEGA2560.5V7 - 12 V6-20 V54 (15 diantaranyapin PWM)1640 mA50 mA256 KB dengan 8 KBdigunakan untukBootloader4 KB8 KB16 Mhz2. Arduino LeonardoArduino leonardo adalah sebuah papan mikrokontrolerberbasis ATMega32u4. Arduino leonardo memiliki 20 digitalinput atau output dengan 7 pin digunakan sebagai output PWMdan 12 input analog, osilator kristal 16 MHz, koneksi micro

3USB, jack lisitrik, header ICSP, dan tombol reset. Gambar 1.2board arduino Leonardo.Gambar 1.2. Board Arduino LeonardoAdapun ringkasan spesifikasisebagai berikut :a. Mikrokontrolerb. Tegangan Operasic. Tegangan Input (recommended)d. Tegangan Input (limit)e. Pin digital I/Oarduino leonardo adalahf.g.h.i.::::Pin Analog inputArus DC per pin I/OArus DC untuk pin 3.3 VFlash Memoryj. EEPROMk. SRAMl. Kecepatan Pewaktuan::::::::ATMEGA32u45V7 - 12 V6-20 V20 (7 diantaranya pinPWM)1240 mA50 mA32 KB dengan 4 KBdigunakan untukbootloader1 KB2,5 KB16 Mhz3. Arduino NanoArduino nano adalah board arduino terkecil denganmenggunakan mikrokontroler ATMega168 atau ATMega328.Gambar 1.3 board arduino nano.

4Gambar 1.3. Board Arduino NanoAdapun ringkasan spesifikasi arduino nano adalahsebagai berikut :a. Mikrokontroler: ATMEGA168atauATMEGA328b. Tegangan Operasi: 5Vc. Tegangan Input (recommended) : 7 - 12 Vd. Tegangan Input (limit): 6-20 Ve. Pin digital I/O: 14 (6 diantaranya pinPWM)f. Pin Analog input:8g. Arus DC per pin I/O: 40 mAh. Arus DC untuk pin 3.3 V: 50 mAi. Flash Memory: 32 KB dengan 4 KBdigunakanuntukbootloaderj. EEPROM: 512 Byte (ATMEGA168)atau 1 KB (ATMEGA328)k. SRAM: 1 KB (ATMEGA168) atau2 KB (ATMEGA328)l. Kecepatan Pewaktuan: 16 Mhz4. Arduino LilypadArduino Lilypad adalah sebuah board mikrokontrolleryang berbasis ATmega32u4. Arduino lilypad memiliki 9 pininput atau output digital yang mana 4 pin sebagai output PWMdan 4 input analog. Gambar 1.4 board arduino lilypad.

5Gambar 1.4. Board Arduino Lilypada.b.c.d.e.f.g.h.i.j.k.l.Adapun ringkasan spesifikasi arduino lilypad adalahsebagai berikut :Mikrokontroler: ATMEGA32u4Tegangan Operasi: 3.3VTegangan Input (recommended) : 3.8 - 5 VTegangan Input (limit): 6-20 VPin digital I/O: 9 (4 diantaranya pin PWM)Pin Analog input:4Arus DC per pin I/O: 40 mAArus DC untuk pin 3.3 V: 50 mAFlash Memory: 32 KB dengan 4 KBdigunakan untuk BootloaderEEPROM: 1 KB Byte (ATMEGA32u4)SRAM: 2.5 KB (ATMEGA32u4)Kecepatan Pewaktuan: 8 Mhz5. Arduino UNOArduino uno adalah sebuah board mikrokontroller yangberbasis ATmega328. Arduino uno memiliki 14 pin input atauoutput yang mana 6 pin dapat digunakan sebagai output PWM,6 analog input, sebuah crystal osilator 16 MHz, koneksi USB,jack power, kepala ICSP, dan tombol reset. Arduino uno mampumen-support mikrokontroller; dapat dikoneksikan dengankomputer menggunakan kabel USB dan bisa disuplai dengansebuah adaptor AC ke DC atau menggunakan baterai untukmemulainya. Gambar 1.5 board arduino uno.

6Gambar 1.5. Board Arduino UNOAdapun ringkasan spesifikasi Arduino uno adalahsebagai berikut:a. Mikrokontroler: ATMEGA328b.b. Tegangan Operasi: 5Vc. Tegangan Input (recommended) : 7 - 12 Vd. Tegangan Input (limit): 6-20 Ve. Pin digital I/O: 14 (6 diantaranya pinPWM)f. Pin Analog input:6g. Arus DC per pin I/O: 40 mAh. Arus DC untuk pin 3.3 V: 150 mAi. Flash Memory: 32 KB dengan 0.5KBdigunakanuntukbootloaderj. EEPROM: 1 KBk. SRAM: 2 KBl. Kecepatan Pewaktuan: 16 MhzB. MENGISNTAL SOFWARE ARDUINO IDESoftware yang digunakan untuk mengembangkan danmemprogram ke dalam board arduino dinamakan arduino IDE.Arduino IDE dapat diunduh secara gratis pada alamat URLberikut: http://arduino.cc/en/Main/Sofware. Software inidapat digunakan pada OS Windows, Mac OS dan Linux.Tampilan laman untuk mengunduh software arduino IDEseperti pada Gambar 1.6.

7Gambar 1.6. Tampilan Laman Arduino IDEBerikut langkah-langkah mengistal software arduino IDE:1. Setelah mengunduh software arduino IDE yang sesuai denganOS yang digunakan, unzip arduino IDE hasil unduhan denganmenggunakan aplikasi winzip atau aplikasi extraksi lainnya.2. Klik dua kali file arduino.exe pada hasil extraksi sepertiGambar 1.7 berikut ini.Gambar 1.7. Arduino.Exe3. Klik tombol I Agree untuk melakukan persetujuanmenginstal sofware arduino seperti terlihat pada Gambar 1.8.

8Gambar 1.8. Persetujuan Instalasi4. Lalu muncul Installation Option, klik semua pilihanseperti pada Gambar 1.9.Gambar 1.9. Pilihan Instalasi5. Klik Next, lalu pilih Folder untuk menyimpan programarduino.

9Gambar 1.10. Instalasi Folder6. Klik Install, untuk melakukan proses instalasiGambar 1.11. Proses Instalasi7. Klik icon arduino yang ada di desktop, maka tampilanawal seperti pada Gambar 1.12 di bawah ini.

10Gambar 1.12. Tampilan Awal arduinoC. MENCOBA SKETCH DI ARDUINO IDETampilan awal sketch di arduino IDE diperlihatkan diGambar 1.13.Gambar 1.13. Sketch di Arduino IDE

11Beberapa tombol menu yang terdapat pada sofware arduinoIDE pada Gambar 1.13 adalah File, Edit, Sketch, Tools dan Help.1. FilePilihan pada menu File seperti pada Gambar 1.14.Gambar 1.14. Menu FileBagian-bagian menu file dan penjelasannya seperti padaTabel 1.1.Tabel 1.1 Pilihan pada Menu FileNewOpenSketchbookExamplesMembuat sketch* baruMembuka sketch yang sudahdisimpanMembukasketchyangpernah dibuatMembuka contoh-contoh filesketch yang berisi berbagaimacamaplikasiyang

12CloseSaveSave AsUpload to I/O BoardPage SetupPrintPreferencesQuitdisediakan oleh arduinoMenutup sketchMenyimpan sketchMenyimpan sketch dengannama lainMengunggah program keboardMengatur ukuran halamanpada pencetakMencetak sketchMengatursettingIDEarduinoKeluar dari arduino2. EditPilihan pada menu Edit seperti pada Gambar 1.15.Gambar 1.15. Menu Edit

133. SketchPilihan pada menu Sketch seperti pada Gambar 1.16.Gambar 1.16. Menu SketchBagian-bagian menu sketch dan penjelasannya sepertipada Tabel 1.2.Tabel 1.2 Pilihan pada Menu SketchVerify/CompileStopShow sketch folderImport LibraryAdd FileMengompilasi programMenghentikankompilasi(apabila ‘Hang’)Menampilkan folder darisketch yang sedang dibukaMengambil header libraridari fungsi-fungsi tambahanMenambah buka file sketchpada jendela yang sama

144. ToolsPilihan pada menu Tools seperti pada Gambar 1.17.Gambar 1.17. MenuToolsBagian-bagian menu tools danpenjelasannya seperti padaTabel 1.3.Tabel 1.3 Pilihan pada Menu ToolsAuto FormatArchive SketchFix Encoding & ReloadSerial MonitorMengatur format sketchsecara otomatisMenyimpan sketch dalambentuk zip file (kompresi)Membatalkanperubahansketch sebelumnya yangtelah disimpanMengaktifkanjendelatampilan komunikasi serialkomputer

15BoardSerial PortBurn BootloaderMenentukan jenisboardarduino yang digunakanMenentukan port serial yangdigunakanuntukmengunggah program dantersambung pada boardarduinoMemasukkanbootloaderpada mikrokontroler yangada pada board arduinomelalui ICSP5. HelpPilihan pada menu Help seperti pada Gambar 1.18.Gambar 1.18. Menu HelpBeberapa tombol tool bar yang terdapat pada sofware arduinoIDE pada Gambar 1.19 adalah Verify, Upload, New, Open, Save,Serial Monitor.

16Gambar 1.19. Tool Bar SoftwareArduino IdeBagian-bagian tool bar dan penjelasannya seperti padaTabel 1.4.Tabel 1.4 Penjelasan Tool BarVerifyUploadNewOpenSaveSerial MonitorUntuk mengkompilasi programartinya mengkonversi programpadaarduinomenjadiinformasi/data yang dapatdieksekusi/dibacaolehmikrokontrolerUntuk meng-unggah programke dalam Board ArduinoUntuk membuat file sketch baruUntuk membuka file sketch yangsudah pernah dibuatUntuk menyimpan sketch (listprogram) yang sedang dibuatUntuk mengaktifkan jendelakomunikasi serial, dan transferdata (kirim/terima) antaraBoard Arduino dan komputer.D. MEYIMPAN DAN MENGUNGGAH SKETCHSketch yang baru saja ditulis dapat disimpan ke dalamfile dengan cara sebagai berikut.1. Klik pada menu File.

172. Klik pada Save As. pada Gambar 1.20 untuk menyimpan.Langkah ini menampilkan kotak dialog berjudul “Save sketchfolder as .” seperti pada Gambar1.21.Gambar 1.20. Tampilan Save as

18Gambar 1.21. Pengisian Nama File3.4.5.6.Pilih folder arduino di bagian Save in.Ketikkan nama file di kotak edit berlabel File name.Klik tombol Save untuk menyimpan.Untuk mengunggah program yang dibuat ke dalam boardarduino pilih terlebih dahulu board arduino yang akandigunakan melalui tool dan board seperti pada Gambar 1.22.Gambar 1.22. Penyesuaian Board Arduino

197. Pilih port komunikasi serial (comm port) yang langsungtersambung pada board arduino dengan memilih menu tooldan serialport pada Gambar 1.23.Gambar 1.23. Memilih Port Komunikasi Serial8. Klik Verify pada tool bar untuk mengkompilasi kode agardijalankan oleh board arduino. Hasil kompilasi berupa binarysketch. Tujuan dari verifikasi adalah pemeriksaan terhadapkode program yang ditulis sudah benar atau masihmengandung kesalahan.9. Apabila tidak ada kesalahan atau error, unggah program yangdibuat dengan memilih tombol upload.

20BAB IIARDUINO UNOA. ARDUINO UNOArduino adalah pengendali mikro single-board yangbersifat open-source, diturunkan dari Wiring platform,dirancang untuk memudahkan penggunaan elektronik dalamberbagai bidang. Hardware nya memiliki prosesor Atmel AVRdan software nya memiliki bahasa pemrograman sendiri.Bahasa yang dipakai dalam Arduino bukan assembler yangrelatif sulit, tetapi bahasa C yang disederhanakan denganbantuan pustaka-pustaka (libraries) Arduino.Gambar 2.1. Bentuk Fisik Arduino UNOSalah satu jenis Arduino adalah “Arduino UNO”.Arduino Uno adalah board mikrokontroler berbasisATmega328 (datasheet). Memiliki 14 pin input dari outputdigital dimana 6 pin input tersebut dapat digunakan sebagaioutput PWM dan 6 pin input analog, 16 MHz osilator kristal,koneksi USB, jack power, ICSP header, dan tombol reset. Untukmendukung mikrokontroler agar dapat digunakan, cukuphanya menghubungkan Board Arduino Uno ke komputerdengan menggunakan kabel USB atau listrik dengan AC yangke adaptor-DC atau baterai untuk menjalankannya.

21Arduino merupakan perangat keras sekaligus perangkatlunak yang memungkinkan siapa saja melakukan pembuatanprototipe suatu rangkaian elektronika yang berbasismikrokontroler dengan mudah dan cepat. Dari sisi perangkatlunak, Arduino IDE adalah tool yang bermanfaat untukmenuliskan program (yang secara khusus dinamakan sketsa diArduino), mengompilasi, dan sekaligus mengunggahkannya kepapan Arduno.Gambar 2.2. Tampilan Utama Arduino IDEPapan Arduino sering disebut dengan nama ArduinoUno. Arduino Uno merupakan board yang menggunakanmikrokontroler ATmega328P. Arduino merupakan sebuahboard minimum sistem mikrokontroler yang bersifat opensource. Arduino memiliki kelebihan tersendiri dibandingkanboard mikrokontroler yang lain, yaitu mempunyai bahasapemrograman sendiri yang berupa bahasa C. Selain itu, dalamboard Arduino terdapat loader yang berupa USB sehinggamemudahkan untuk mentransfer program dari Arduino IDE keArduino Uno.Board Arduino Uno bekerja dengan teganganmasukan 7-12V. Adapun tegangan kerja yang digunakan adalah5V. Board Arduino mengandung 14 pin digital dan 6 di antara

22pin-pin tersebut dapat bertindak sebagai pin-pin PWM (PulseWidth Modulation). Untuk mengubah pin analog menjadi digitalcukup dengan mengubah konfigurasi pin pada program.B. Fungsi Bagian-Bagian Pada ArduinoMeskipun Arduino Uno memiliki ukuran yang tidak terlalubesar, namun pada board tersebut terdapat mikrokontroller dansejumlah input-output (I/O) yang memudahkan pemakai dalammenggunakannya.Gambar 2.3. Bagian-Bagian Pada Arduino UNOBagian-bagian dari Arduino UNO seperti pada gambar 2.3yang perlu diketahui adalah sebagai berikut:1.Port USB tipe BPort ini digunakan untuk sumber Arduino dari USB,digunakan untuk upload kode program dari PC ke Arduino,dan untuk komunikasi serial dari Arduino ke PC. Tipe kabelyang digunakan adalah USB type A to type B.2.Jack PowerJack Power ini digunakan untuk memberi tegangan arduinomenggunakan arus DC dari baterai maupun poweradaptor/rectifier. Tegangan kerja yang digunakan olehArduino Uno adalah 5V. Dengan Tegangan input dari 7V –12V. Sedangkan limitnya adalah 6V – 20V.

233.4.5.6.7.8.9.10.11.Regulator TeganganFungsi dari komponen ini adalah untuk mengkontroltegangan yang masuk ke papan Arduino dan menstabilkantegangan DC yang digunakan oleh seluruh komponen yangada di papan Arduino.Crytal OscillatorKomponen ini menghasilkan Frekuensi kerja Arduino.Terdapat nomor 16.000H9H yang dicetak di atas komponen,ini berarti frekuensinya adalah 16.000.000 Hertz atau 16MHz.17 ResetKita bisa me-reset papan Arduino untuk menjalankanprogram dari awal. Kita bisa me-reset Arduino Uno dengan2 cara. Yang pertama adalah dengan menggunakan tombolReset (5) yang berada di papan. Kedua adalah denganmenghubungkan tombol reset eksternal ke Pin Arduinoyang berlabel Reset (17)Pin 3.3VMengeluarkan tegangan output sebesar 3.3V.Pin 5VMengeluarkan tegangan output sebesar 5V. Pin 3.3V dan 5Vsering digunakan untuk mencatu komponen eksternal yangdigunakan Arduino, seperti LCD.18 GNDMerupakan pin yang digunakan untuk meng-ground-kansirkuit.VinDigunakan untuk mencatu arduino dari sumber powereksternal.Pin analogArduino Uno memiliki 6 pin input analog, dari A0 sampai A5.Pin ini digunakan untuk membaca sinyal dari sensor analogseperti sensor kelembapan atau sensor suhu lalumengubahnya ke digital sehingga bisa dibaca olehmikroprosesor.MikrokontrolerSetiap Arduino memiliki mikrokontrolernya masing-masing.Komponen ini merupakan otaknya papan Arduino.

2412.13.14.15.16.Mikrokontroler yang digunakan merupakan buatan dariATMEL.Pin ICSPBiasanya digunakan untuk memprogram mikrokontrolertanpa melalui bootloader. Pin ini jarang sekali digunakanmeskipun tersedia.LED Indikator PowerLED ini akan menyala ketika kita menghubungkan sumberpower ke papan Arduino. LED ini menandakan bahwa papanArduino telah dicatu dengan benar. Jika LED tidak menyalamaka bisa jadi terdapat masalah pada power.LED TX dan RXPada papan yang digunakan, terdapat dua label yaitu TX(transmit) dan RX (receive). Label tersebut muncul di 2tempat, pertama di pin digital 0 dan 1 yang digunakan untukkomunikasi serial, kedua di TX dan RX led (14). TX LED akanberkedip dengan kecepatan yang berbeda ketikamengirimkan data serial. Kecepatan berkedip bergantungpada baud rate yang digunakan. RX LED berkedip ketikaproses penerimaan.Pin Digital Input/OutputPapan Arduino memiliki 14 pin input output digital, 6diantaranya dapat digunakan sebagai PWM output. Pin inidapat dikonfigurasi agar bekerja sebagai pin input digitaluntuk membaca nilai logika 0 dan 1 atau sebagai outputdigital untuk menjalankan beberapa komponen seperti LED,Relay, dll. Pin yang terdapat label “ ” merupakan pin yangdapat digunakan sebagai PWM.AREFSebagai Analog Reference. Digunakan untuk menyeteltegangan reference eksternal (bernilai 0 sampai 5V) sebagaibatas atas untuk pin input analog. Menggunakannya denganfungsi analog Reference().C. MACAM DAN FUNGSI INSTRUKSI BAHASA PEMROGRAMANARDUINOSuatu program Arduino umumnya terdiri atas instruksi voidsetup () dan void loop (). Instruksi void setup() digunakan untukmenginisialisasi variabel-variabel yang akan digunakan, dan

25hanya dijalankan satu kali saat Arduino mulai menyala.Sedangkan instruksi void loop() digunakan untuk menjalankansuatu siklus program, yang akan dilakukan terus-menerus hinggaArduino mati/reset. Berikut ini adalah beberapa fungsi dasar padaArduino.1. pinMode(pin, SET)Fungsi ini digunakan untuk menginisialisasi sebuah pin, danmenentukan pin tersebut akan digunakan sebagai inputataupun output. Nilai SET dapat diisiOUTPUT atau INPUT,tergantung dari kebutuhan. Sedangkan nilai pin adalah nomorpin pada mikrokontroler yang akan diset sebagai input atauoutput.Contoh: pinMode(13,OUTPUT) artinyakitamenentukan pin digital 13 pada Arduino berfungsi sebagaioutput.2. digitalWrite(pin, VAL)Fungsi ini digunakan untuk menuliskan nilai secara digitalpadasuatupin.NilaiVAL dapatberupa HIGH (ON)atau LOW (OFF) dan nilai pin adalah nomor pin pada Arduinoyang akan diset. Contoh: digitalWrite(13, HIGH) artinya pindigital 13 diset pada kondisi menyala.3. digitalRead(pin)Fungsi ini digunakan untuk membaca nilai input/masukanyang diberikan ke Arduino. Nilai yang terbaca oleh Arduinomelalui digitalRead() bergantung pada voltase pada pin yangdiatur. Kebergantungan pada nilai voltase ini disebut LogicLevel. Pada Arduino, batasan nilai yang mencukupi untukmencapai HIGH adalah di antara 5-3 volt, sedangkan batasannilai yang mencapai nilai LOW adalah di antara 0 1,5 volt.Contoh: digitalRead(13) artinya Arduino akan membaca inputyang diberikan melalui pin 13, hasilnya HIGH atau LOW.4. analogWrite(pin, VAL)Fungsi analogWrite() adalah fungsi yang digunakan untukmenuliskan suatu nilai berupa angka pada sebuah komponen,misalnya LED. Pengguna dapat mengatur seberapa terangcahaya dari lampu LED saat menyala, tergantung pada nilaiyang dituliskan. Fungsi ini akan berguna ketika kita mulaibermain dengan sensor, di mana nilai yang terbaca seringkaliberupa analog (memiliki banyak nilai, misal 0-1023), bukan

265.6.7.8.9.digital (hanya memiliki 2 nilai, 0 (LOW) dan 1(HIGH)).Contoh:analogWrite(13,1023) artinyaArduinoakanmemberikan instruksi nilai maksimal pada pin 13, sehinggakomponen yang terkoneksi di pin 13 akan menyala maksimal(1023).analogRead(pin)Fungsi ini mirip dengan fungsi digitalRead(), yaitu membacanilai masukan pada suatu pin. Bedanya adalahfungsi analogRead() akan menghasilkan nilai dari 0 hingga1023, yang merepresentasikan voltase 0 v hingga 5 v. Contoh:analogRead(0) artinya Arduino akan membaca nilai input daripin 0.delay(time)Fungsi ini digunakan untuk memberikan jeda antar fungsi.Nilai time adalah waktu lamanya jeda dalam satuan ms(milisekon), di mana 1 detik setara dengan 1.000 milisekon.Serial.begin(baudrate)Pengguna dapat melakukan komunikasi serial antara Arduinodengan PC, dengan menggunakan Serial Monitor yangdisediakan pada Arduino IDE. Pada Serial Monitor, kita bisamelihat data yang dikirim dari Arduino ke PC. Selain itu, kitajuga bisa mengirim data ke Arduino dengan caramengetikkannya pada textbox di bagian atas Arduino IDE.Untuk memakai serial, yang pertama harus dilakukan adalahmelakukaninisiasidenganmenggunakanfungsi Serial.begin(baudrate). Variabel baudrate merupakanrasio modulasi, dan harus dicocokkan dengan baudratehardwareyangakandikomunikasikan.Contoh: Serial.begin(9600)artinya komunikasi akan berjalanpada rasio modulasi/baudrate 9600.Serial.available()Fungsi ini digunakan untuk mengetes apakah ada input datadari hardware yang disambungkan ke serial port, misalnyadari PC. Fungsi ini akan menghasilkan 1 apabila ada masukan,dan 0 apabila tidak ada masukan.Serial.read()Fungsi ini berfungsi untuk membaca karakter pada serial port.Karakter yang dibaca akan disimpan dalam bentuk ASCII(misalnya karakter ‘0’ memiliki representasi ASCII yaitu 48).

2710. Serial.print() dan Serial.println()Fungsi ini digunakan untuk menuliskan suatu kalimat keSerial Monitor, tetapi tidak mengirimkan data apapun, aliashanya digunakan untuk memberikan teks visual padapengguna. Serial.print("text") digunakan untuk menulis "text",sedangkan Serial.println("text") dipakai untuk menuliskankata "text" dan diakhiri dengan enter (kalimat selanjutnya adadi baris berikutnya).11. Serial.write(VAL)Untuk mengirimkan data dari arduino ke PC, kita bisamenggunakan fungsiSerial.write(VAL). Nilai VAL adalah datayang ingin dikirimkan dari arduino ke PC, dengan ukuran 1byte.Bahasa pemrograman Arduino merupakan salah satu bahasapemrograman yang menggunakan bahasa C, dan ketika sebuahperintah atau coding sedang dibuat maka hasilnya akan langsungterlihat di arduino tersebut. Berikut adalah fungsi serta intruksipada bahasa pemrograman arduino.1. Struktur dari Pemograman Arduinoa. Void SetupTempat untuk menuliskan kode atau perintah kita di siniuntuk bisa di jalan kan hanya sekalib. Void LoopPerintah void loop ini tempat di mana menulis kode untukuntuk menjalan kan program itu berulang kali agar tidakberhenti sendiri, seperti gambar di bawah ini.

28Gambar 2.4. Letak Void Loopc. VariabelSebuah program membutuhkan variabel untukmendefinisikan suatu perintah untuk memindahkanangka.Tabel 2.1 Penggunaan Symbol Pada Arduino UnoSimbol/Variabel///* */{ }KeteranganDiperlukan untuk memberi catatan.Cukup menuliskan dua buah garismiring dan apapun yang kita tulisdibelakangnya akan diabaikan olehprogram. Variabel ini digunakahanya untuk menuliskan komentarsatu baris.Diperlukanuntukmenuliskanbanyak catatan, maka hal itu dapatdituliskan pada beberapa barissebagai komentar. Semua hal yangterletak di antara dua simboltersebut akan diabaikan olehprogram.Digunakan untuk mendefinisikankapan blok program mulai danberakhir (digunakan juga pada

29;intlongbooleanfloatcharfungsi dan pengulangan).Setiap baris kode harus diakhiridengan tanda titik koma (jika adatitik koma yang hilang makaprogram tidak akan bisa dijalankan)(integer)Digunakanuntukmenyimpan angka dalam 2 byte (16bit). Tidak mempunyai angkadesimal dan menyimpan nilai dari 32,768 dan 32,767.(long) Digunakan ketika integertidak mencukupi lagi. Memakai 4byte (32 bit) dari memori (RAM)dan mempunyai rentang dari 2,147,483,648 dan 2,147,483,647.(boolean) Variabel sederhana yangdigunakan untuk menyimpan nilaiTRUE (benar) atau FALSE (salah).Sangat berguna karena hanyamenggunakan 1 bit dari RAM.(float) Digunakan untuk angkadesimal (floating point). Memakai 4byte (32 bit) dari RAM danmempunyairentangdari3.4028235E 38dan3.4028235E 38.(character) Menyimpan

11 Beberapa tombol menu yang terdapat pada sofware arduino IDE pada Gambar 1.13 adalah File, Edit, Sketch, Tools dan Help. 1. File Pilihan pada menu File seperti pada Gambar 1.14. Bagian-bagian menu file dan penjelasannya seperti pada Tabel 1.1. Tabel 1.1 Pilihan pada Menu File