d iii teknik komputer · 2020. 8. 10. · awalnya mereka memberi nama proyek itu dengan sebutan...

67
Disusun Oleh: Marson J. Budiman,SST.,MT POLITEKNIK NEGERI MANADO JURUSAN TEKNIK ELEKTRO PROGRAM STUDI D3 TEKNIK KOMPUTER 2019 D III TEKNIK KOMPUTER

Upload: others

Post on 27-Jan-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

  • Disusun Oleh:

    Marson J. Budiman,SST.,MT

    POLITEKNIK NEGERI MANADO JURUSAN TEKNIK ELEKTRO

    PROGRAM STUDI D3 TEKNIK KOMPUTER 2019

    D III – TEKNIK KOMPUTER

  • LEMBAR PENGESAHAN

    PRAKTIKUM

    MIKROKONTROLER

    Oleh :

    Marson J. Budiman,SST.,MT

    Manado, Desember 2019

    Menyetujui,

    Ketua Jurusan Teknik Elektro Koordinator Program Studi,

    Fanny J Doringin, ST.,MT Marson James Budiman, SST.,MT

    NIP. 96704301992031003 NIP. 197503052003121002

    Mengetahui,

    Wakil Direktur Bidang Akademik,

    Dra. Maryke Alelo, MBA NIP. 19641213 199103 2 001

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    DAFTAR ISI

    LEMBAR PENGESAHAN .................................................................................................................. ii

    KATA PENGANTAR ........................................................................................................................ iii

    DAFTAR ISI ....................................................................................................................................... iv

    BAB 1 ................................................................................................................................................... 1

    PENGENALAN MIKROKONTROLER ARDUINO .......................................................................... 1

    1.1 Apa itu arduino .................................................................................................................... 1

    1.2 Sejarah Singkat Arduino .................................................................................................... 1

    1.3 Kelebihan Arduino .............................................................................................................. 2

    1.4 Arduino Uno ........................................................................................................................ 3 BAB 2 ................................................................................................................................................. 17

    PRAKTIKUM LED ............................................................................................................................ 17

    A. Tujuan .................................................................................................................................... 17

    B. Alat dan Bahan yang digunakan .......................................................................................... 17

    C. Teori singkat dan Rangkaian Percobaah............................................................................. 17

    D. Membuat Sketch Program untuk Led berkedip ................................................................. 18

    E. Prosedur Percobaan .............................................................................................................. 21 BAB III ............................................................................................................................................... 22 PRAKTIKUM ANIMASI LED .......................................................................................................... 22

    A. Tujuan .................................................................................................................................... 22

    B. Alat dan Bahan yang digunakan .......................................................................................... 22

    C. Rangkaian Percobaah ........................................................................................................... 22

    D. Prosedur Percobaan .............................................................................................................. 24 BAB IV ............................................................................................................................................... 26 PRAKTIKUM INPUT PUSHBUTTON ............................................................................................. 26

    A. Tujuan .................................................................................................................................... 26

    B. Alat dan Bahan yang digunakan .......................................................................................... 26

    C. Teori singkat dan Rangkaian Percobaah............................................................................. 26

    D. Prosedur percobaan .............................................................................................................. 28

    BAB V ................................................................................................................................................ 29

    PRAKTIKUM MENGONTROL TINGKAT KECERAHAN LED .................................................... 29

    A. Tujuan .................................................................................................................................... 29

    B. Alat dan Bahan yang digunakan .......................................................................................... 29

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 29

    iv

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    D. Prosedur Percobaan .............................................................................................................. 32

    BAB VI ............................................................................................................................................... 33

    PRAKTIKUM APLIKASI POTENSIO METER ............................................................................... 33

    A. Tujuan .................................................................................................................................... 33

    B. Alat dan Bahan yang digunakan .......................................................................................... 33

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 33

    D. Prosedur Percobaan .............................................................................................................. 36 BAB VII ............................................................................................................................................. 37 PRAKTIKUM APLIKASI SOUND ................................................................................................... 37

    A. Tujuan .................................................................................................................................... 37

    B. Alat dan Bahan yang digunakan .......................................................................................... 37

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 37

    D. Prosedur Praktikum .............................................................................................................. 39 BAB VIII ............................................................................................................................................ 41 PRAKTIKUM APLIKASI THERMOMETER DIGITAL .................................................................. 41

    A. Tujuan .................................................................................................................................... 41

    B. Alat dan Bahan yang digunakan .......................................................................................... 41

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 41

    BAB IX ............................................................................................................................................... 48

    PRAKTIKUM APLIKASI THERMOMETER DIGITAL DENGAN TAMPILAN LCD .................. 48

    A. Tujuan .................................................................................................................................... 48

    B. Alat dan Bahan yang digunakan .......................................................................................... 48

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 48

    D. Prosedur Percobaan .............................................................................................................. 51

    BAB X ................................................................................................................................................ 53

    PRAKTIKUM APLIKASI SENSOR CAHAYA (LDR) .................................................................... 53

    A. Tujuan .................................................................................................................................... 53

    B. Alat dan Bahan yang digunakan .......................................................................................... 53

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 53 BAB XI ............................................................................................................................................... 58 PRAKTIKUM APLIKASI SENSOR ULTRASONIK ....................................................................... 58

    A. Tujuan .................................................................................................................................... 58

    B. Alat dan Bahan yang digunakan .......................................................................................... 58

    C. Dasar teori dan Rangkaian Percobaah ................................................................................ 58 DAFTAR PUSTAKA ........................................................................................................................ 63

    v

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB 1

    PENGENALAN MIKROKONTROLER ARDUINO

    1.1 Apa itu arduino

    Arduino adalah kit eloktronik atau papan rangkaian elektronik open source yang

    didalamnya terdapat komponen utama, yaitu sebuah chip mikrokontroler dengan jenis AVR

    dari perusahaan ATMEL. Mikrokontroler ini sendiri adalah chip atau IC (integrated circuit)

    yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada

    mikrokontroler adalah agar rangkaian elektronik dapat membaca input , memproses input

    tersebut dan kemudian menghasilkan output sesuai dengan yang diinginkan. Jadi

    mikrokontroler bertugas sebagai „otak‟ yang mengendalikan input, proses dan output sebuah

    rangkaian elektronik. Secara umum, arduino terdiri dari 2 bagian yaitu :

    1. Hardware berupa papan input/output (I/O) yang open source.atau board arduino 2. Software arduino yang open source, meliputi software arduino IDE untuk menulis

    program dan driver untuk koneksi dengan komputer.

    1.2 Sejarah Singkat Arduino

    Pendiri dari Arduino itu sendiri adalah Massimo Banzi dan David Caurtielles sebagai founder.

    Awalnya mereka memberi nama proyek itu dengan sebutan Arduin dari Ivrea tetapi seiring dengan

    perkembangan zaman, nama proyek itu diubah menjadi Arduino yang berarti “Teman yang Kuat”

    atau dalam versi bahasa inggrisnya dengan sebutan “Hardwin”.

    Proyek pengkabelan diciptakan oleh seorang seniman sekaligus programmer asal

    kolombia bernama Hernando Barragan. Pengkabelan ini adalah proyek tesis Hernando pada

    desain interaksi Institute Ivrea. Hal tersebut dimaksudkan untuk menjadi versi elektronik

    pengolahan yang digunakan dilingkungan pemrogram dan mengambil pola sintaks

    Processing. Dengan berkembangnya teknologi , Arduino menjadi sangat popular dikalangan

    mahasiswa dan pelajar saat ini. Mereka mengembangkan Arduino dengan bootdloader dan

    software dan user Friendly sehingga menghasilkan sebuah board mikrokontroler yang bersifat

    open source yang bisa dipelajari dan dikembangkan oleh mahasiswa , pelajar, profesional,

    pemula, dan penggemar elektronika maupun robotic diseluruh dunia. IDE (Integrated

    Development Envirinment) diciptakan oleh Casey Reas dan Ben Fry, berapa programmer

    1

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    yang lain juga terlihat seperti Tom Igoe , Gianluca Martino , David Mellis , dan Nicholas

    Zambett.

    1.3 Kelebihan Arduino

    Tentu saja ada banyak mikrokontroler maupun platform mikrokontroler tersedia, misalnya

    saja Basic Stamp-nya Parallax, BX-24-nya Netmedia, Phidget, MIT‟s Handyboard, dan lain

    sebagainya. Semua alat tersebut bertujuan untuk menyerderhanakan berbagai macam

    kerumitan maupun detail rumit pada pemrograman mikrokontroler sehingga menjadi paket

    mudah digunakan (easy-to-use) Arduino juga menyederhanakan proses bekerja dengan

    mikrokontroler, sekaligus menawarkan berbagai macam kelebihan antara lain :

    Murah. Papan (perangkat keras) Arduino biasanya dijual relative murah

    Sederhana dan Mudah Programnya. Perlu diketahui bahwa lingkungan pemrogram di

    arduino mudah digunakan untuk pemula , dan cukup fleksibel bagi mereka yang sudah

    tingkat lanjut. Untuk guru, dosen, Arduino berbasis pada lingkungan pemrogram

    Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing

    tentu saja akan mudah menggunakan Arduino. Bahkan didalam dos/kotak Arduino

    terdapat tulisan bahwa arduino diperuntukkan bagi seniman, desainer, penghobi, dan

    siapa saja. Sungguh membesrkan hati dan membangkitkan semangat bahwa penggunanya

    tidak harus teknisi berpengalaman atau ilmuan ber otak jenius.

    Perangkat Lunaknya Open Source. Perangkat lunak Arduino IDE dipublikasikan sebagai

    open source, tersedia bagi para pemrogram berpengalaman untuk pengembangan lebih

    lanjut bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang

    berbasis pada bahasa C untuk AVR.

    Perangkat Kerasnya Open Source. Perangkat keras Arduino berbasis mikrokontroler

    ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280. Dengan demikian , siapa

    saja bisa membuatnya (dan kemudian bisa menjualnya) perangkat keras Arduino ini,

    apalagi bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga

    menggunakan breadboard untuk membuat perangkat arduino beserta peripheral-periferal

    lain yang dibutuhkan.

    Tidak perlu perangkat chip programmer. Karena didalamnya sudah ada bootloader yang

    akan menangani upload program dari komputer.

    Sudah memiliki sarana komunikasi USB. Sehingga pengguna laptop yang tidak memiliki

    port serial/RS323 bisa menggunakannya.

    2

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Bahasa pemrograman yang relative mudah, karena software Arduino dilengkapi dengan

    kumpulan library yang cukup lengkap.

    Memiliki modul siap pakai (shield) yang bisa ditancapkan pada board Arduino. Misalnya

    shield GPS, Ethernet , SD Card, dll.

    1.4 Arduino Uno

    Arduino Uno adalah papan mikrokontroler berbasis ATmega328 yang memiliki 14 pin digital

    input/output (dimana 6 pin dapat digunakan sebagai output PWM) , 6 input analog, clock speed 16

    MHz, koneksi USB, Jack listrik, header ICSP, dan tobol reset. Board ini menggunakan daya yang

    terhubung ke komputer dengan kabel USB atau daya eksternal dengan adptor AC-DC ata baterai.

    Spesifikasi Board Arduino Uno.

    Mikrokontroler ATmega328

    Tegangan Operasi 5V

    Tegangan Input (disarankan) 7-12V

    Batas Tegangan

    Input 14(diman 6 pin output PWM)

    Pin Analog Input 6

    Arus DC per I/O pin 40 Ma

    Arus DC untuk pin 3.3V 50 Ma 32 KB(ATmega328) dimana Flash memory 0,5 KB digunakan oleh

    bootloader

    SRAM 2 KB (ATmega328)

    EEPROM 1 KB (ATmega328)

    Clock 16 MHz

    Arduino dapat diaktifkan melalui koneksi USB atau dengan catu daya eksternal.

    Sumber daya dipilih secara otomatis. Sumber daya eksternal (non-USB) dapat berasal dari

    adapter AC ke DC atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan power

    jack, dapat juga dihubungkan pada power pin (Gnd dan Vin)

    Board Arduino Uno dapat beroperasi pada pasokan eksternaldari 6 sampai 20 volt. .

    Meskipun pin 5V dapat disuplai kurang dari 5 volt, boar mungkin tidak stabil. Jika

    menggunakan tegangan lebih dari 12 V , regulator tegangan bisa panas dan merusak Board.

    Kisaran yang disarankan adalah 7 sampai 12 volt.

    3

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Adapun pin power suplai pada Arduino Uno adalah :

    - VIN. Tegangan input board arduino ketika menggunakan sumber daya (5 Volts dari

    sambungan USB atau dari sumber regulator lain). Anda dapat mensuplai tegangan

    pada pin ini jika suplai tegangan lewat power jack , dapat mengakses melalui pin ini.

    - 5V. keluaran pin ini telah diatur sebesar 5V dari regulator pada board. Board dapat

    disuplai melalui DC jack power (7-12V).konektor USB (5V), atau pin VIN (7-12 V).

    menyuplai tegangsn melalui pin 5V atau 3.3V bypasses regulator, dapat meruska

    board.

    3V3.Suplai 3,3 volt dihasilkan oleh regulator pada board menarik arus maksimum 50mA.

    Memory

    ATMEGA328 mempunyai memori 32 KB (dengan 0.5 KB digunakan untuk

    bootloader). Juga mempunyai 2 KB SRAM dan 1 KB EEPROM ( yang mana dapat di baca

    tulis dengan library EEPROM).

    Input dan Output

    Setiap pin digital pada board Arduino Uno dapat digunakan sebagai input ataupun

    output. Dengan menggunakan fungsi pin model () digital write(), dan digital read(). Pin-pin

    ini beroperasi pada tegangan 5Volt. Setiap pin mampu memberikan atau menerima arus

    maksimum dan memiliki resistor pull-up internal (secara default tidak terhubung) dari 20-50

    kOhm. Selain itu, berapa pin memiliki fungsi khusus:

    - Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan (TX)

    dan serial TTL. Pin ini terhubung ke pin yang sesuai dari chip ATmega 8U2 USB-to-

    TTL Serial

    - Interupsi Eksternal: 2 dan 3. Pin ini dapat dikonfigurasi untuk memincu interrupt pada

    nilai yang rendah , tetapi naik atau turun, atau perubahan nilai.

    - PWM:3, 5, 6, 9, 10, dan 11. Menyediakan 8-bit output PWM dengan fungsi

    analogWrite()

    - SPI: 10 (SS), 11 (MOSI), 12(MISO), 13 (SGK). Pin ini mendukung komunikasi SPI

    menggunakan library SPI.

    4

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    -

    -

    Led: 13. Terdapat LED pin digital 13 pada board. Ketika pin bernilai tinggi (HIGH),

    LED menyala (ON), ketika pin bernilai rendah (LOW), LED akan mati (OFF) Arduino

    Uno memiliki 6 input analog ,belebel A0 sampai A5, yang masing-masing

    menyediakan 10 bit resolusi (yaitu 1024 nilai yang berbeda). Secara default , 5 volt

    dari ground

    Bahasa Pemrograman Arduino

    Banyak bahasa pemrograman yang bisa digunakan untuk program mikrokontroler ,

    misalnya bahasa basic, assembly,atau bahasa C. Namun dalam pemrograman Arduino bahasa

    yang dipakai adalah bahasa C. Bahasa C adalah bahasa yang sangat lazim dipakai sejak awal

    komputer diciptakan dan sangat berperan dalam perkembangan software.

    Bahasa C telah membuat bermacam-macam sistem opreasi dan compiler untuk banyak

    bahasa pemrograman. Misalnya sistem operasi unix, linux,dsb. Bahasa C adalah bahasa

    pemrograman yang sangat ampuh yang kekuatannya mendekati bahasa assembler. Bahasa C

    menghasilkan file kode yang sangat kecil dan dieksekusi dengan sangat cepat. Karena itu,

    Bahasa C sering digunakan pada sistem operasi dan pemrograman mikrokontroler .

    Bahasa C adalah multi-platform karena bahasa C bisa diterapkan pada linkungan

    windows, unix , linux, atau sistem operasi lain tanpa mengalami perubahan source code.

    (kalaupun ada perubahan, biasanya sangat minim). Karena Arduino menggunakan bahasa C

    yang multi-platform, software arduino pun bisa dijalankan pada saat sitem operasi yang

    umum, misalnya Windows, Linux, dan MacOS.

    Struktur

    Setiap program arduino (biasa disebut Sketch) mempunyai dua buah fungsi yang harus

    ada.

    Void Setup() { }

    Semua kode di dalam kurung kurawal akan dijalankan hanya satu kali ketika program

    arduino dijalankan untuk pertama kalinya.

    Void Loop () { }

    Fungsi ini akan dijalankan setelah setup (fungsi void setup) selesai. Setelah dijalankan

    satu kali fungsi ini akan dijalankan lagi , dan lagi secara terus-menerus sampai catu daya

    (power) di lepaskan.

    5

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Syntax

    Berikut ini adalah bahasa C yang dibutuhkan untuk format penulisan.

    // (komentar satu baris.

    Kadang di perlukan untuk memberikan catatan pada arti dari kode-kode yang

    dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita

    ketikkan di belakangnya akan diabaikan oleh program.

    Contoh penggunaan :

    // proyek Blink LED, uji cobapertama kali

    /* */ (komentar banyak baris)

    Jika anda punya banyak catatan, hal ini dapat dituliskan pada beberapa baris

    sebagai komentar. Semua hal yang terletak diantara dua symbol tersebut akan

    diabaikan oleh program.

    Contoh penggunaan:

    /* Kode program proyek sensor cahaya,

    LED padam kondisi lingkugan terang danyala Jika kondisi lingkungan

    gelap */

    { } (Kurung kurawal)

    Digunakan untuk mendefenisikan kapan blok program mulai dan berakhir

    (digunakan juga pada fungsi dan pengulangan).

    Contoh penggunaan kurung

    kurawal: Void loop () {

    Serial.printIn (val)

    }

    ; (titk koma)

    Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titk koma

    yang hilang maka tidak akan bisa dijalankan).

    Contoh penggunaan titk koma : delay (1000);

    Variabel

    Sebuah program secara garis besar dapat didefenisikan sebagai instruksi untuk

    memindahkan angka dengan cara yang cerdas. Variable inilah yang digunakan untuk

    memindahkan.

    6

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Int (integer)

    Digunakan untuk menyimpan angka dalam 2 byte (16 bit). Tidak mempunyai

    angka decimal dan menimpan nilai dari -32.768 dan 32.767

    Long (long)

    Digunakan ketika integer tidak mencukupi lagi. Memakai 4 byte (32 bit) dari

    memori (RAM) dan mempunyai rentang dari 2.147.483.648 dan 2.147.483.647.

    Boolean (Boolean)

    Variable sederhana yang digunakanuntuk menyimpan nilai true (benar) atau False

    (salah). Sangat berguna karena hanya menggunakan 1 bit dari RAM

    Float

    Digunakan untuk angka decimal (foating point). Memakai 4 byte (32 bit) dari RAM

    mrmpunyai rentang dari -3,4028235E+38 dan -3,4028235E+38.

    Char (character)

    Menyimpan 1 karakter menggunakan kode ASCII (misalnya „A‟ = 65). Hanya

    memakai 1 byte (8 bit ) dari RAM.

    Byte

    Angka antara 0 dan 255. Sama halnya dengan char , namun byte hanya

    menggunakan 1 byte memory.

    Unsignt int

    Sama dengan int , menggunakan 2 byte tetapi Unsignt int ini tidak dapat digunakan

    untuk menyimpan angka negative , batas nya dari 0 sampai 65,35.

    Unsignt Long

    Sama saja dengan long, namun tidak bisa menimpang angka negative , batas nya

    dari 0 sampai 4.294.967.295.

    Double

    Angka ganda dengan persisi maksimum 1,7976931348623157x 100308

    String

    String digunakan untuk menyimpan informasi teks, dengan karakter ASCII , bisa

    menggunakan string untuk mengirim pesan via serial port , atau menampilkan teks

    pada layar LCD.

    Array

    Array adalah kumpulan variable dengan tipe yang sama. Setiap variable dalam

    kumpulan variable tersebut terdapat elemen, dapat diakses melalui indeks.

    7

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Mislanya kita ingin menginisialisasi pin 3 , pin 5 , pin 6 , pin 7, maka dengan

    menggunakan array int pins[]={3 , 5, 6, 7};

    Operator Matematika

    Operator yang digunakan untuk memanipulasi angka (bekerja seperti matematika yang

    sederhana).

    = membuat suatu menjadi sama dengan nilai yang lain (misalnya: x = 10*2, x

    sekarang sama dengan 20)

    % menghasilkan sisa dari hasil pembagian suatu angka dengan angka yang

    lain (misalnya: 12%10, ini akan menghasilkan angka 2)

    +penjumlahan

    - pengurangan

    / pembagian

    Oprator Pembanding

    Digunakan untuk membandinhkan nilai logika.

    == sama dengan (misalnya: 12==10 adalah FALSE (salah) 12=-12 adalah

    TRUE (benar))

    != tidak sama dengan (misalnya: 12!=10 adalah TRUE (benar) atau 12!=12

    adalah FALSE(salah)

    < lebih kecil dari (misalnya: 12 10 adalah TRUE (benar) aatau 12>12

    adalah FALSE (salah) atau 12 >14 adalah FALSE (salah))

    Struktur Pengaturan

    Pemrograman sangat tergantung pada pengaturan yang akan dijalankan berikutnya,

    berikut ini adalah elemen dasar pengaturan (banyak lagi yang lain dan bisa dicari diinternet.

    1. If….else, dengamn format seperti berikut ini:

    If (kondisi) { } Else { }

    Dengan struktur seperti di atas program akan menjalankan kode yang ada pada

    kurung kurawal jika kondisinya TRUE, dan jika tidak (FALSE) maka akan

    8

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    diperiksa apakah kondisi pada else if dan jika kondisinya FALSE maka kode pada

    else yang akan dijalankan.

    2. For, dengan format seperti berikut in: For (int I = 0;I

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    SOFTWARE ARDUINO IDE

    Software ini digunakan untuk menulis program pada board arduino. IDE (integrated

    Development Emvirorment) adalah sebuah software yang sangat berperan untuk menulis

    program, meng-compilemenjadi kode biner dan mengupload ke dalam memory

    mikrokontroler. Software ini dapat di download secara gratis. Instalasi SoftwareArduino IDE Langkah-langkah instalasi

    IDE Arduino adalah sebagai berikut:

    1. Download Software IDE Arduino pada website resmi Arduino

    http://arduino.cc/en/Main/Software , hasil download berupa file kompresi, Arduino-

    1.0.6-windows.zip kemudian ekstrak hasil download.

    2. Ekstrak file zip hasil download pada salah satu folder missa lpada folder D. pada

    file kompres zip terdapat arduino.exe.

    2. Jalankan aplikasi dengan mengklik dua kali arduino.exe.

    3. Setelah klik dua kali arduino.exe diperoleh jendela utama dari software IDE

    arduino seperti gambar berikut

    Gambar 1. Tampilan Software Arduino IDE

    Software IDE arduino adalah software yang ditulis dengan menggunakan java.

    Jendela utama IDE arduino terdiri dari tiga bagian utama, yaitu :

    Bagian atas, yakni toolbar , pada bagian atas juga terdapat menu file, edit, sketch,

    tools, dan help

    10

    http://arduino.cc/en/Main/Software

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Bagian tengah, yaitu tempat penulisan kode program atau sketch

    Bagian bawah berupa status bar/ jendela pesan (message windows) atau tes konsul

    yang berisi status dan pesan error.

    Instalasi Drivers USB Arduino pada Windows

    Untuk menghubungkan atau mengomunikasikan komputer/laptop dengan board

    arduino, diperlukan instalasi driver. Tentunya peralatan yang dibutuhkan adalah board

    arduino, dalam workshop ini digunakan Arduino Uno R3 dan juga dibutuhkan kabel USB

    standar A-B (sama dengan kabel yang anda gunakan untuk printer USB).

    Langkah-langkah instalasi driver untuk board arduino Uno (sama juga untuk jenis

    board Arduio Duemilanove, nano atau diecimila) dengan sistem operasi windows sebagai

    berikut :

    1. Buka atau jalankan software arduino IDE, dengan mengklik dua kali arduino.exe

    2. Hubungkan board Arduino dengan komputer menggunakan kabel USB standar (A-

    B) dan yakin bahwa LED warna hijau pada board arduino nyala (berlabel

    ON/PWR). Board arduinoakan menarik sumber daya listrik dari port USB.

    3. Selanjutnya, windows secara otomatis akan mendeteksi kalau tidak ditemukan

    driver board arduino. Jangan khwatir ini kondisi normal. Silahkan tutup saja

    jendela ini.

    4. Klik tombol start menu pada komputer anda dan buka control panel, masuk ke

    menu sistem and security.

    5. Kemudian klik sistem. Setelah tampilan sistem muncul, klik Device Manager. Lihat

    pada bagian other device. Anda akan melihat sebuah tulisan Unknown device. Ini

    menandakan bahwa board arduino anda belum dikenal windows 7.

    6. Klik kanan pada port “Unknown device” dan pilih opsi “update driver software”

    7. Kemudian , pilih opsi “Browse my komputer for driver software”

    8. Telusuri folder arduino 1.0.6 yang anda ekstrak tadi.

    9. Pilih next. Windows akan meneruskan instalasi driver.

    10. Setelah klik next akan muncul jendela piringan dari windows security, pilih install

    this driver software anyway.

    11

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    11. Klik close untuk mengakhiri instalasi. Selamat anda telah menginstal driver

    Arduino pada komputer anda, dan selanjutnya siap mengomunikasikan atau meng-

    upload program pada board arduino anda.

    12. Untuk mengecek apakah driver telah benar terinstal, masuk kembali device

    manager. Untuk melihat port (com) dari arduino.

    Bread Board dan kabel jumper

    Untuk praktek, akan menggunakan project board (ada yang menyebutnya dengan

    istilah bread board) dan beberapa kabel jumper untuk menghubungkan antara komponen dan

    Arduino (Gambar 1.2). Dengan project board kita tidak perlu menyolder rangkaian sehingga

    relatif mudah dan cepat dalam merangkai. Project board memungkinkan kita untuk

    membangun dan membongkar rangkaian dengan cepat sehingga sangat cocok untuk

    eksperimen. Tapi jika kita ingin membuat rangkaian yang permanen, maka kita harus

    menggunakan PCB.

    Gambar 1.1 Breadboard dan Kabel jumper

    Yang terpenting adalah, haruslah memahami jalur-jalur pada project board. Project board

    terdiri dari jalur vertikal dan jalur horisontal. Jalur vertikal ada di bagian tengah yang terdiri

    dari 2 x 64 jalur. Masing-masing jalur terdiri dari 5 titik vertikal, misal jalur 1A-1B-1C-1D-1E

    dan jalur 1F-1G-1H-1I-1J yang kedua tidak saling tersambung. Jalur horisontal sebanyak 8

    jalur, 4 jalur ada di bagian atas dan 4 jalur lagi di bagian bawah. Jalur ini bisa digunakan

    untuk power supply (VCC dan GND) untuk rangkaian. Untuk lebih jelasnya, silakan

    perhatikan Gambar 1.2 Garis merah menunjukkan bahwa lubang tersebut terhubung secara

    fisik.

    12

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 1.2 Peta jalur pada breadboard

    Uji Sketch Pertama

    1. buka software IDE Arduino dengan menjalankan sebuah file bernama arduino.exe

    pada lokasi software arduino di komputer anda.

    2. setelah jendela utama terbuka klik file →example→basics→blink

    3. selanjutnya akan muncul kode blink program pada kotak entri/penulisan sketch

    4. kode program siap di upload ke papan arduino

    Gambar 2. Rangkaian LED

    Kode program led berkedip

    /* simulasi dan praktik pertama led berkedip

    untuk uji simulasi dan upload program

    */

    13

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Int led = 13 ; // led terhubung pada pin 13

    Void setup () {

    ` pinMode (led,OUTPUT); // set led sebagai output

    }

    Void loop () {

    digitalWrite (led, HIGH); // set led on

    delay (500) ; // tunnda untuk ½ detik

    digitalWrite (led, LOW); // set led off

    delay (500) ; // tunnda untuk ½ detik

    }

    Penjelasan program

    1. pada baris pertama , kode program

    /* simulasi dan praktik pertama led berkedip untuk uji simulasi dan upload

    program */

    Kode ini /*..*/ digunakan untuk menuliskan catatan untuk komentar dengan banyak

    bari misal nama project, prinsip kerja, dll. Semua hal yang terletak di antara dua

    symbol tersebut akan diabaikan oleh program. Komentar untuk baris digunakan

    kode //. 2. Pada baris kedua

    Int led = 13;

    Kode ini dikenal sebagai variable. Variable adalah tempaT menyimpan data. Pada kode

    ini kita mensetting variable jenis int atau integer. Integer digunakan untuk menyimpan

    angka dalam 2 byte (16 bit). Tidak mempunyai angka decimal dan menyimpan nilai dari -

    32.768 dan 32.767. selanjutnya dari kode di atas diberi nama led dan mempunyai nilai 13.

    Pada pemrograman arduino , nama variable led merupakan pendefenisian led sebagai

    nilai 13, ini digunakan untuk menandai nomor saluran yang digunakan untuk pin arduino

    terhubung dengan led. Dengan kata lain led dipasang pada pin 13. 3. Baris program berikutnya

    Void setup () { pinMode

    (led,OUTPUT);

    14

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Fungsi void setup (), merupakan fungsi yang dieksekusi pertama kali saat setelah arduino

    diberi catu daya, berfungsi untuk perintah-printah instalasi sebelum program utama

    dieksekusi isi dari fungsi ini adalah pendefenisian pin 13 dengan sintax : pinMode(led,

    OUTPUT); memiliki arti bahwa mode dari pin yaitu saluran D13 (digital nomor 13 dari

    pin input/output) difungsikan sebagai saluran keluaran atau output. Dengankata lain,

    menset pin 13 sebagai output . 4. Baris program berikutnya Void

    loop () { digitalWrite

    (led, HIGH); delay (500)

    ; digitalWrite (led,

    LOW); delay (500) ;

    fungsi ini akan dijalankan setelah setup (fungsi Void setup) selesai.Fungsi void loop (),

    merupakan fungsi dari program utama yang akan dieksekusisecara berurutan dari atas

    sampai akhir dan kembali lagi dari atas sampai akhir, begitu seterusnya karena

    merupakan loop yang tidak pernah berakhir. Baris pertama dari fungsi ini adalah

    digitalWrite(led HIGH); artinya tulislah logika 1 (high) pada pin keluaran nomer13,

    dengan demikian led yang mengeksekusinya sintax delay ; yaitu waktu tunda selama 500

    milisekon atau ½ detik , dengandemikian led menyala selama setengah detik , berikutnya

    adalah digitalWrite (led, LOW); artinya tulisan logika 0 (low) pada pin keluaran nomor

    13, dengan delay (500) mengakibatkan led padam selam ½ detik . keseluruhan program,

    led berkedip hidup selama setengah detik , padam selama setengah detik . demikian

    seterusnya catu daya pada Arduino dilepas.

    Upload Program Pertama “Led Berkedip” Ke Board Arduino

    Jika petama kali belajar bahasa pemrograman apapun (basic,java,html,dll) biasanya

    pelajaran pertama kita , yaitu program “hello world”. Nah pada Arduino , program “hello

    world” ini adalah led berkedip (blinking led) , program ini kita gunakan untuk menguji papan

    arduino yang kita beli , apa benar-benar berfungsi sebagaimana mestinya. Daftar komponen

    dan peralatan yang diperlukan:

    1. Papan Arduino Uno R3

    2. Kabel USB standar A-B

    15

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Pada papan Arduino Uno terdapat sebuah led kecil yang terhubung ke pin digital no

    13. Led ini dapat digunakan sebagai output saat pengguna membuat/menguji

    sebuah program dan ini membutuhkan sebuah penanda dari jendela program

    tersebut. Ini adalah cara yang praktis saat pengguna melakukan uji coba.

    Langkah-langkah upload uji program pertama ke papan arduino sebagai berikut:

    1. Jalankan software IDE arduino.

    2. Colokkan kabel USB yang tersambung dengan papan arduino ke komputer anda.

    Pastikan windows sudah dapat mengenal papan ardiuno anda (srial port)

    3. Selanjutnya klik tools→board→Arduino Uno. Kemudian ketik atau maArduino

    Uno.

    4. Kemudian ketik atau masukkan kode program “led berkedip”

    5. Sebelum melakukan upload ke papan arduino sebaiknya kita cek program/sketch

    yang kita masukkan , apa ada yang eror atau tidak, caranya klik icon verify.

    Bila kode program/sketch tidak ada yang eror, maka jendela teks konsul terdapat

    keterangan ukuran byte program.

    6. Pada toolbar, klik ikon Upload untuk membuar sketch tersebut kedalam papan

    arduino , berkedip-kedip kan? Berhasi…!!!!

    16

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB 2

    PRAKTIKUM LED

    A. Tujuan Menggunakan Arduino sebagai output untuk menghidupkan nyala LED Membuat program sederhana untuk menghidupkan nyala LED

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah LED warna merah 1 buah Resistor 300 Ohm Kabel jumper

    C. Teori singkat dan Rangkaian Percobaah

    LED merupakan kependekan dari Light Emiting Diode, yaitu diode yang mampu

    mengubah listrik menjadi cahaya. Sebagaimana sifat diode, lampu LED memiliki kaki positif

    dan negatif. Sehingga pemasangannya tidak boleh terbaik, jika dipasang terbalik maka tidak

    akan ada arus yang mengalir dan LED pun tidak akan menyala. Arduino bekerja pada tegangan 5-12 volt dengan arus yang relatif besar yang sanggup

    memutuskan LED. Sehingga jika kita ingin menyambungkan LED, maka kita butuh tahanan

    (resistor) untuk membatasi arus yang masuk ke LED. LED memiliki tegangan kerja yang

    disebut dengan forward voltage (fv) yang mana tegangan ini adalah tegangan yang

    dibutuhkan LED untuk bisa menyala dengan baik. Ukuran resistor yang bisa dipakai adalah 100Ω hingga 1KΩ (Ω dibaca ohm, satuan dari

    resistansi/hambatan), makin besar nilai resistor maka nyala LED akan semakin redup. Pada

    Arduino, tegangan yang keluar dari pin-pinnya adalah 0-5 volt. Sementara catu daya untuk

    Arduino antara 5-12 volt. Oleh sebab itu, pemilihan resistor tergantung tegangan mana yang

    akan digunakan.

    17

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 2.1. Rangkaian LED

    Langkah kerja dalam membuat rangkaian percobaan:

    Sebulum menghubungkan setiap komponen kedalam rangkaian , lepaskan colokan

    kabel USB Arduino komputer. Rangkailah komponen satu persatu sesuai dengan rangkaian

    yang ditunjukan pada Gambar 3, dimana langkah-langkahnya sebagai berikut:

    1. Pasang kaki positif LED di G4 dan kaki negatifnya di G3,

    2. Setelah itu, hubungkan salah satu kaki resistor pada lubang J3, kemudian kaki satunya

    ke lubang di kolom pertama dari kanan,

    3. Ambil kabel jumper, lalu sambungkan lubang J4 ke lubang di kolom kedua dari

    kanan,

    4. Ambil kabel jumper, sambungkan salah satu lubang di kolom pertama ke socket GND

    pada board Arduino,

    5. Ambil kabel jumper, sambungkan salah satu lubang di kolom kedua ke socket 5V di

    board Arduino

    6. Hubungkan USB Arduino ke komputer/laptop.

    D. Membuat Sketch Program untuk Led berkedip

    Untuk membuat Sketch program, pertama-tama buka aplikasi Arduino IDE seperti pada

    Gambar 2.2, kemudian ketikan sketch program seperti yang ditunjukan di bawah ini.

    18

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 2.2. Tampilan Arduino IDE

    Sketch Program LED Blink:

    const int pinLED = 8;

    void setup() {

    pinMode(pinLED, OUTPUT); }

    void loop() {

    digitalWrite(pinLED, HIGH); delay(500); digitalWrite(pinLED, LOW);

    delay(500);

    }

    Setelah program diketikan seperti pada Gambar 2.2, maka proses selanjutnya adalah

    menghubungkan kabel koneksi USB yang terhubung dengan board Arduino ke port USB pada

    Laptop. Selanjutnya atur Comunikasi antara Laptop dengan board Arduino dengan cara

    seperti pada Gambar 2.3.

    19

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gaambar 2.3. SetingPengaturan koneksi Board Arduino dengan Laptop

    Selanjutnya upload program yang telah dibuat ke board Arduino dengan cara memilih icon

    upload pada Arduino IDE seperti pada Gambar 6. Jika tidak ada error pada program yang

    dibuat (dengan keterangan Done Uploading), maka system akan beroperasi seperti yang

    direncanakan, dalam hal ini adalah menyalakan lampu LED secara blink.

    Gambar 6. Proses Upload program sukses

    20

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    E. Prosedur Percobaan

    1. Amati jalannya system dan berikan tanggapannya jika pada baris program const int

    pinLED = 8; dirubah menjadi // const int pinLED = 8; 2. Amati dan berikan tanggapannya jika program di atas diubah menjadi seperti di bawah

    ini:

    // Pin 8 untuk LED

    const int pinLED = 8;

    void setup() { // pin LED sebagai output

    pinMode(pinLED, OUTPUT);

    } // awal time delay 1000 | 1 detik int timeDelay = 1000;

    void loop() { // Setiap looping, nilai timeDelay dikurangi

    100 timeDelay = timeDelay - 100;

    if(timeDelay

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB III

    PRAKTIKUM ANIMASI LED

    A. Tujuan Menggunakan Arduino untuk aplikasi animasi Led Membuat program sederhana untuk aplikasi animasi Led

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 4 buah LED warna merah 4 buah Resistor 300 Ohm Kabel jumper

    C. Rangkaian Percobaah

    Program berikut akan membuat LED menyala bergantian sebanyak 5 animasi (perulangan

    sebanyak 5 kali). Pertama, semua LED akan mati selama 5 detik. Kedua, LED 1 akan

    menyala. Ketiga, LED 1 dan 2 akan menyala. Keempat, LED 1, 2, dan 3 akan menyala.

    Kelima, semua LED akan menyala. Animasi tersebut ditentukan berdasarkan nilai i, nilai i diperiksa dengan perintah IF. Jika nilai

    i=0, maka semua LED mati, jika i=1 maka satu LED nyala, dan seterusnya. Selain menggunakan IF, ada cara lain yang lebih simpel untuk membuat animasi LED seperti

    program pada Sketch di bawah ini.

    Gambar 2.1. Rangkaian animasi Led

    22

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Langkah-langkahnya :

    1. Susun resistor 220 ohm terlebih dahulu pada breadboard seperti gambar rangkaian 2. Pasang LED merah , LED kuning , LED hijau. Perhatikan polaritas kaki LED. Kaki

    positif masing-masing LED dihubungkan dengan pin 11, pin 10 , pin 9 , dan pin 8,

    sementara kaki negative dihubungkan dengan ground 3. Gunakan kabel jumper untuk menghubungkan papan Arduino dangan Breadboard. 4. Setelah semua terpasang dengan baik, colokkan kabel USB yang terhubung dari papan

    Arduino ke komputer. 5. Selanjutnya, jalankan software IDE arduino dan ketikkan kode program pada tempat

    penulisan sketch seperti di bawah ini:

    // Inisialisasi Pin LED

    const int pinLED1 = 8;

    const int pinLED2 = 9;

    const int pinLED3 = 10;

    const int pinLED4 = 11;

    void setup() { // pin LED sebagai output

    pinMode(pinLED1, OUTPUT);

    pinMode(pinLED2, OUTPUT);

    pinMode(pinLED3, OUTPUT);

    pinMode(pinLED4, OUTPUT);

    }

    void loop() {

    // perulangan sebanyak 5 kali // dari i=0 hinga i=4 atau (i < 5) for(int i=0; i

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    // jika i=4, hidupkan semua led

    digitalWrite(pinLED1, HIGH);

    digitalWrite(pinLED2, HIGH);

    digitalWrite(pinLED3, HIGH);

    digitalWrite(pinLED4, HIGH);

    }else{ // jika tidak, matikan semua led

    digitalWrite(pinLED1, LOW);

    digitalWrite(pinLED2, LOW);

    digitalWrite(pinLED3, LOW);

    digitalWrite(pinLED4, LOW);

    } // delai selama 5 detik delay(5000); } }

    Keterangan proses kerja program:

    Program di atas akan membuat LED menyala bergantian sebanyak 5 animasi (perulangan

    sebanyak 5 kali). Pertama, semua LED akan mati selama 5 detik. Kedua, LED 1 akan

    menyala. Ketiga, LED 1 dan 2 akan menyala. Keempat, LED 1, 2, dan 3 akan menyala.

    Kelima, semua LED akan menyala.

    Animasi tersebut ditentukan berdasarkan nilai i, nilai i diperiksa dengan perintah IF. Jika

    nilai i=0, maka semua LED mati, jika i=1 maka satu LED nyala, dan seterusnya.

    6. Lakukan verifikasi terlebih dahulu untuk mengecek apakah ada kode program yang error 7. Klik icon upload pada toolbar , untuk mengupload sketch ke papan arduino. Lihat

    hasilnya. Perhatikan LED pada breadboard, LED pada breadboard.

    D. Prosedur Percobaan

    1. Ubah program diatas menjadi seperti dibawah ini, kemudian berikan tanggapan anda

    tentang jalannya kedua program tersebut

    // Inisialisasi Pin LED const int pinLED1 = 8; const int pinLED2 = 9; const int pinLED3 =

    10; const int pinLED4 = 11; void setup() { // pin LED sebagai output

    pinMode(pinLED1, OUTPUT);

    pinMode(pinLED2, OUTPUT);

    pinMode(pinLED3, OUTPUT);

    pinMode(pinLED4, OUTPUT);

    }

    void loop() {

    24

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    digitalWrite(pinLED1, LOW);

    digitalWrite(pinLED2, LOW);

    digitalWrite(pinLED3, LOW);

    digitalWrite(pinLED4, LOW);

    delay(1000);

    digitalWrite(pinLED1, HIGH);

    delay(1000);

    digitalWrite(pinLED2, HIGH);

    delay(1000);

    digitalWrite(pinLED3, HIGH);

    delay(1000);

    digitalWrite(pinLED4, HIGH);

    delay(1000); }

    2. Ubah program diatas seperti berikut:

    // Inisialisasi Jumlah LED const int numLED = 4; // LED 1,2,3,&4 jadi 1 varibel // dengaan alamat index 0,1,2,3 const int pinLED[numLED] = {8,9,10,11};

    void setup() { // Inisialisasi semua pin LED sebagai OUTPUT for(int i=0; i

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB IV

    PRAKTIKUM INPUT PUSHBUTTON

    A. Tujuan Menggunakan Arduino sebagai input melalui pushbutton untuk mengaktifkan Led Membuat program sebagai input melalui pushbutton untuk mengaktifkan Led

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 4 buah LED warna merah 4 buah Resistor 300 Ohm Kabel jumper

    C. Teori singkat dan Rangkaian Percobaah

    Pushbutton

    Tombol pushbutton (tactile) atau tombol push on. Ketika tombol ini ditekan, maka jalur akan

    tertutup (ON), ketika dilepas jalur akan kembali terbuka (OFF). Tombol ini banyak digunakan

    untuk peralatan seperti remote, keypad, keyboard, atau tombol untuk pengaturan TV, ld atau

    sejenisnya. Gambar 4.1 memperlihatkan bentuk fisik dan symbol dari pushbutton.

    Gambar 4.1 Pushbutton

    Percobaan kali ini adalah untuk mengendalikan hidup/matinya-nya LED dengan tombol

    pushbutton. Jika tombol ditekan, LED akan menyala, jika dilepas, LED kembali padam.

    Untuk melakukan percobaan ini, siapkan sebuah pushbutton, sebuah LED, dan sebuah

    resistor. Siapkan juga beberapa kabel jumper untuk merangkai komponen-komponen tersebut.

    Rangkaian Percobaan

    Buatlah rangkaian seperti yang diperlihatkan pada Gambar 4.2. dengan prosedur sebagai

    berikut:

    26

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    1. Siapkan LED dan pushbutton pada project board. Karena karena pushbutton memiliki

    4 buah kaki yang masing-masing terpisah, maka silakan tancapkan pushbutton di

    tengah-tengah lajur project board sehingga kaki-kainya tidak tersambung.

    2. Salah satu kaki pushbutton dihubungkan ke GDN di project board, sedangkan kaki

    pasangannya disambungkan ke pin 2 pada board Arduino. Bagaimana cara mengetahui

    pasangan kaki-kaki pada pushbutton? Anda bisa mengeceknya dengan AVO meter.

    3. Setting AVO meter untuk menghitung resistansi, kemudian cek masing-masing pin

    pushbutton dengan probe. Jika tombol ditekan jarum AVO meter bergerak

    menyimpang, berarti kaki-kaki tersebut sepasang.

    4. Untuk LED, sambungkan kaki negatif (pin yang lebih pendek) ke GND dengan

    resistor

    5. Kaki positif (kaki yang lebih panjang) disambungkan ke pin 8 pada board Arduino

    dengan jumper.

    Gambar 4.2 Rangkaian percobaan input pushbutton

    Program

    Buatlah program pada Arduino IDE untuk membaca keadaan input melalui pushbutton,

    apakah ditekan atau tidak. Jika ditekan, maka Led akan diaktifkan dan jika dilepas, maka Led

    akan padam. Programnyasebagai berikut:

    // pin 2 sebagai input dan pin 8 sebagai output const int pinButton = 2; const int pinLED = 8; void setup() { pinMode(pinButton, INPUT); pinMode(pinLED, OUTPUT); // aktifkan pull-up resistor

    27

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    digitalWrite(pinButton, HIGH);

    }

    void loop() {

    if(digitalRead(pinButton) == LOW){

    digitalWrite(pinLED, HIGH);

    }else{

    digitalWrite(pinLED, LOW);

    } }

    Setelah program selesai diketikan, maka lakukanlah proses ferifikasi terlebih dahulu guna

    mengetahui apakah program yang dibuat telah sesuai atau belum. Jika belum sesuai (error),

    lakukanlah perbaikan sampai program tersebut benar. Selanjutnya upload program yang

    dibuat ke board arduino.

    D. Prosedur percobaan

    1. Apa yang terjadi ketika pushbutton tidak ditekan 2. Apa yang terjadi ketika pushbutton ditekan 3. Apa yang terjadi jika pushbutton dilepas 4. Buatlah program untuk mengaktifkan dan menonaktifkan nyala Led melalui 1 buah

    pushbutoon, dimana saat pushbutton ditekan pertama kali, maka Led akan menyala, dan

    jika pusbutton ditekan kedua kalinya, maka Led akan padam. 5. Buatlah laporan dari praktikum yang telah dilakukan.

    28

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB V

    PRAKTIKUM MENGONTROL TINGKAT KECERAHAN LED

    A. Tujuan Menggunakan Arduino untuk aplikasi pengaturan tingkat kecerahan nyala Led Membuat program sederhana untuk aplikasi pengaturan tingkat kecerahan nyala Led

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah LED warna merah 1 buah Resistor 300 Ohm 2 buah pushbutton Kabel jumper

    C. Dasar teori dan Rangkaian Percobaah

    Sebelumnya kita sudah membahas tentang cara menghidupkan dan mematikan LED dengan

    sebuah pushbutton. Selanjutnya, kita akan menggunakan dua buah pushbutton dengan

    ketentuan : pushbutton yang pertama untuk menaikkan kecerahan LED hingga paling terang,

    sedangkan pushbutton yang kedua untuk menurunkan kecerahan LED hingga LED padam. Fungsi kedua pushbutton ini mirip dengan volume-up dan volume-down. Yang satu untuk

    meningkatkan volume (kecerahan), sedangkan satunya lagi untuk menurunkan volume

    (kecerahan). Setidaknya ada dua cara untuk menaikkan atau menurunkan tingkat kecerahan LED:

    1. Mengubah arus yang masuk ke LED, cara ini bisa diaplikasikan dengan mengubah

    nilai resistor

    2. Menghidup-matikan LED dengan cepat atau lambat. Begini, ketika kita menghidup-

    matikan LED dengan cepat, maka mata manusia tidak bisa mengetahuinya. Yang

    ditangkap oleh mata adalah terang atau redupnya saja. Jika kita menghidup-matikan

    led dengan cepat, maka LED tersebut akan terlihat terang, tapi kalau kita menghidup

    matikan LED dengan lebih lambat, maka LED akan terlihat lebih redup.

    Dalam elektronika digital, konsep yang kedua dikenal dengan istilah PWM (Pulse Width

    Modulation). Apa itu PWM?

    29

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Sebagian kaki / pin Arduino support PWM, kaki yang support PWM ditandai dengan adanya

    tanda tilde (~) di depan angka pinnya, seperti 3, 5, 6, dan seterusnya. Frekuensi yang

    digunakan dalam Arduino untuk PWM adalah 500Hz (500 siklus dalam 1 detik). Jadi,

    Arduino bisa menghidup-matikan LED sebanyak 500 kali dalam 1 detik.

    Untuk menggunakan PWM, kita bisa menggunakan fungsi analogWrite(). Nilai yang bisa

    dimasukkan pada fungsi tersebut yaitu antara 0 hingga 255. Nilai 0 berarti pulsa yang

    diberikan untuk setiap siklus selalu 0 volt, sedangkan nilai 255 berarti pulsa yang diberikan

    selalu bernilai 5 volt.

    Gambar 5.1 siklus pulsa PWM

    Jika kita memberikan nilai 127 (kita anggap setengah dari 0 hingga 255, atau 50% dari 255),

    maka setengah siklus akan bernilai 5 volt, dan setengah siklus lagi akan bernilai 0 volt.

    Sedangkan jika jika memberikan 25% dari 255 (1/4 * 255 atau 64), maka 1/4 siklus akan

    bernilai 5 volt, dan 3/4 sisanya akan bernilai 0 volt, dan ini akan terjadi 500 kali dalam 1

    detik. Untuk visualisasi siklus PWM, bisa Anda lihat Gambar 5.1.

    Rangkaian

    Buatlah rangkaian seperti gambar Rangkaian 5.2. Rencananya, pushbutton yang atas untuk

    menyalakan dan meningkatkan kecerahan LED, sedangkan pushbutton yang bawah untuk

    menurunkan tingkat kecerahan LED dan memadamkannya:

    1. Seperti biasa, siapkan sebuah LED dan resistornya. Sambungkan kaki positif LED ke

    pin 8 Arduino.

    2. Kemudian kaki negatif LED disambungkan ke resistor menuju GND.

    30

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    3. Siapkan dua buah pushbutton. Pushbutton yang pertama (atas) disambunkan ke GND

    dan ke pin 2 pada board Arduino.

    4. Lalu pushbutton yang kedua (bawah) disambungkan ke GND dan pin 3 pada board

    Arduino.

    Gambar 5.2 Pengaturan intensitas cahaya Led

    Program

    Buka aplikasi Arduino IDE, kemudian keikan program dibawah ini

    // pin 2 & 3 sebagai input digital const int pinBt1 = 2; const int pinBt2 = 3;

    // Ingat, pin 9 support PWM const int pinLED = 9; void

    setup() { pinMode(pinBt1, INPUT); pinMode(pinBt2,

    INPUT); pinMode(pinLED, OUTPUT);

    digitalWrite(pinBt1, HIGH); digitalWrite(pinBt2, HIGH); } int brightness = 0; void loop() { if(digitalRead(pinBt1) == LOW){ // jika pushbutton ditekan // tambahkan nilai brightness brightness++; }else if(digitalRead(pinBt2) == LOW){

    // jika pushbutton2 ditekan // kurangi nilai brightness brightness--;

    31

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    }

    // brightness dibatasi antara 0 - 255 // jika di bawah 0, maka ganti dengan 0 // jika di atas 255, maka ganti dengan 255

    brightness = constrain(brightness, 0, 255); // pinLED diberi nilai antara 0 - 255 analogWrite(pinLED, brightness); // delay agar perubahannya bertahap delay(20); }

    Setelah program selesaidiketikan, maka lakukanlah proses ferifikasi terlebih dahulu untuk

    mengetahui apakah program yang dibuat telah benar atau belum, kemudian upload program

    yang dibuat tersebut ke board Arduino.

    D. Prosedur Percobaan

    1. Tekan tombol pushbutton pertama (bagian atas), kemudian amati dan jelaskan proses

    yang terjadi

    2. Tekan pushbutton kedua (bagian bawah), kemudian amati dan jelaskan proses yang

    terjadi

    3. Ubah nilai brightness yang dibatasi dari angka 0 – 255 menjadi 100 – 255, kemudian

    amati apa yang terjadi dan berikan tanggapannya

    4. Buat laporan untuk praktikum yang telah dikerjakan

    32

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB VI

    PRAKTIKUM APLIKASI POTENSIO METER

    A. Tujuan Menggunakan Arduino untuk aplikasi pengaturan dengan potensio meter Membuat program sederhana untuk aplikasi pengaturan dengan potensio meter

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah LED warna merah 1 buah Resistor 300 Ohm 1 buah potensio meter Kabel jumper

    C. Dasar teori dan Rangkaian Percobaah

    Setelah kita belajar mengatur intensitas cahaya LED dengan pushbutton, kali ini kita akan

    mengunakan potensiometer. Kelebihan menggunakan potensiometer yaitu kita lebih mudah

    sebab kita hanya butuh satu alat untuk membuat LED lebih redup atau lebih terang. Jika kita langsung mengatur LED dengan potensiometer, kita harus memiliki potensiometer

    yang pas untuk LED tersebut. Jika hambatan potensiometer tidak sesuai, mungkin LED akan

    mati sebelum potensiometer habis, atau LED sudah full nyalanya ketika potensiometer baru

    kita naikkan setengah. Jadi, kita tidak bisa menggunakan satu putaran full potensiometer

    untuk menaikkan atau menurunkan intensitas cahaya LED tersebut. Yang digunakan di gambar adalah potensiometer trimmer yang ukurannya lebih kecil dan

    bisa ditancapkan ke project board. Gambar 6.1 adalah contoh salah satu trimmer.

    Gambar 6.1 Potensiometer jenis Trimmer

    33

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Berikut tahapan untuk membuat rangkaian tersebut:

    1. Sambungkan kaki negatif LED ke GND dengan jumper

    2. Kaki positif LED dihubungkan ke salah satu ujung kaki (kaki yang bawah)

    potensiometer dengan jumper

    3. Kaki tengah (kaki di sisi yang sendirian) dihubungkan dengan ujung kaki yang

    lainnya (kaki yang atas) dengan jumper

    4. Kaki yan atas dihubungkan ke +5v dengan resistor.

    Rankaian percobaan

    Buatlah rangkaian percobaan seperti yang diperlihatkan pada Gambar 6.2, dengan prosedur

    sebagai berikut:

    1. Sambungkan kaki positif LED ke pin 9 pada board Arduino, pin tersebut support

    PWM

    2. Kaki negatif LED disambungkan dengan resistor ke GND

    3. Kedua ujung kaki trimmer yang satu sisi (sisi kanan) masing-masing disambungkan

    ke +5v dan GND. Jika Anda menggunakan potensiometer putar, yang disambungkan

    ke +5v dan GND adalah pin yang paling pinggi.

    4. Pin yang satu (di sebelah kiri) disambungkan ke A0 pada board Arduino. Jika Anda

    menggunakan potensiometer putar,yang disambungkan ke A0 adalah pin yang tengah

    pada potensiometer. pada Arduino terdapat 3 kelompok pin dengan fungsi yang berbeda, yaitu: Pin digital (pin 0 - 13) Pin digital yang support PWM (ditandai dengan tilde “~”, yaitu pin 3, 5, 6, 9, 10, 11) Pin Analog (A0 – A5)

    Digital artinya hanya terdiri dari ON dan OFF, atau HIGH dan LOW. Digital dengan PWM

    artinya, frekuensi ON dan OFF bisa diatur berdasarkan siklus tertentu dalam frekuensi 500

    Hz dengan selang antara 0 - 255. Hal ini sudah kita bahas sebelumnya, bukan? Sedangkan pin Analog, berarti pin tersebut bisa ditulis mempunyai tegangan antara 0 – 5 volt

    dengan step kenaikan sebanyak 1024. Artinya angka 0 – 1023 akan dikonversi menjadi 0 – 5

    volt pada pin tersebut. 0 berarti 0 volt, 1023 berarti 5 volt. Kenapa maksimal 1024? Sebenarnya selang antara 0 – 5 volt bisa dicacah dengan jumlah tak terhingga. Akan tetapi,

    mikroposesor memiliki keterbatasan dalam mencacah angka, sehingga batas yang bisa

    dicacah hanya mencapai 1024 cacahan, yaitu dari 0 – 1023.

    34

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 6.2 Mengatur brightness Led dengan potensio meter

    Program

    Buka aplikasi Arduino IDE, kemudian keikan program dibawah ini

    // pin A0 adalah pin Analog // pin 9 adalah pin digital support PWM const int pinPot = A0; const int pinLED = 9; void setup() { pinMode(pinPot,

    INPUT); pinMode(pinLED, OUTPUT); } int sensor = 0; int brightness = 0; void loop() { // baca nilai kaki A0 (sensor, potensiometer) sensor = analogRead(pinPot); // konversi nilai 0-1023 (Analog) menjadi 0-255 (PWM) brightness = map(sensor, 0, 1023, 0, 255);

    // tentukan brightness LED dengan PWM analogWrite(pinLED, brightness); }

    Setelah program selesai diketikan, maka lakukanlah proses ferifikasi terlebih dahulu untuk

    mengetahui apakah program yang dibuat telah benar atau belum, kemudian upload program

    yang dibuat tersebut ke board Arduino.

    Selanjutnya, mari kita coba untuk mengatur durasi kedipan LED berdasarkan nilai pada

    potensiometer. Jika „volume‟ potensiometer rendah, durasi kedipan LED akan cepat. Jika

    35

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    „volume‟ potensiometer tinggi, maka durasi kedipan LED akan lambat. Saya sebut „volume‟

    karena potensiometer identik dengan alat untuk mengatur volume.

    D. Prosedur Percobaan

    1. Putar posisi potensio meter ke arah kanan perlahan-lahan sampai pada batas maksimal,

    amatilah apa yang terjadi terhadap nyala Led, kemudian berikan tanggapannya 2. Putar posisi potensio meter ke arah kiri perlahan-lahan sampai pada batas minimal,

    amatilah apa yang terjadi terhadap nyala Led, kemudian berikan tanggapannya 3. Ubahlah program diatas menjadi seperi dibawah ini

    // pin A0 adalah pin Analog // pin 9 adalah pin digital support PWM const int pinPot = A0;

    const int pinLED = 9;

    void setup() {

    pinMode(pinPot, INPUT);

    pinMode(pinLED, OUTPUT);

    }

    int sensor = 0;

    void loop() { // baca nilai kaki A0 (sensor, potensiometer) sensor = analogRead(pinPot); // durasi kedipan sesuai nilai pada sensor 0-1023 digitalWrite(pinLED, HIGH); delay(sensor);

    digitalWrite(pinLED, LOW); delay(sensor); }

    Upload program ke Arduino, jalankan kemudian amati nyala Led

    4. Bandingkan program pertama dan program kedua, kemudian berikan tanggapannya

    5. Buat laporan tentang praktikum yang dikerjakan

    36

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB VII

    PRAKTIKUM APLIKASI SOUND

    A. Tujuan Menggunakan Arduino untuk aplikasi menghasilkan suara melalui perangkat sound

    (speaker)

    Membuat program sederhana untuk aplikasi menghasilkan suara melalui perangkat sound (speaker)

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah speaker

    C. Dasar teori dan Rangkaian Percobaah

    Pada bagian ini kita akan bermain-main dengan suara. Sehingga kita akan membutuhkan

    speaker untuk membangkitkan suara dan nada musik sederhana. Pada dasarnya, untuk

    membuat speaker berbunyi maka kita harus menghidup-matikan speaker sesuai dengan

    frekuensi suara yang ingin kita bunyikan. Hidup-matinya speaker akan membuat spool

    speaker bergetar (bergerak maju-mundur) dan menghasilkan bunyi dengan nada tertentu. Suara musik kelas A menengah sekitar 440 Hz. Masih ingat apa itu Hz? Hz merupakan

    kependekan dari Hertz. Hertz adalah jumlah siklus perdetik. Dengan demikian, jika kita ingin

    memainkan musik kelas A menengah, maka kita harus menyalakan dan mematikan speaker

    sebanyak masing-masing 440 kali dalam 1 detik.

    Untuk menghidup-matikan speaker sebanyak masing-masing 440 kali, kita bisa

    memanfaatkan fungsi delay(). Sebelumnya kita telah membuat LED berkedip dengan

    memanfaatkan delay. Perlakuan kita terhadap LED akan kita terapkan pada speaker, tapi

    dengan tempo yang lebih cepat. Cara menghitung delay yang kita butuhkan untuk mendapatkan siklus 440 Hz (nada 440Hz)

    yaitu dengan cara:

    37

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gelombang suara merupakan gelombang analog (sinyal analog) yang merupakan gelombang

    sinus. Artinya, 1 siklus penuh adalah 1 tinggi/puncak dan 1 rendah/lembah. Kondisi tinggi

    adalah ketika speaker dinyalakan, sedangkan kondisi rendah adalah ketika speaker dimatikan.

    Oleh sebab itu, dibutuhkan 2 delay untuk 1 Hz. Karena 440 Hz adalah 440 siklus, maka

    setiap siklus pada 440 Hz dikalikan dengan 2. Semoga Gambar 4.1 memberikan pemahaman

    tentang bagaimana cara menentukan delay. Gambar 7.1 sekedar contoh sebab frekuensi 6 Hz

    tidak akan terdengar oleh telinga manusia.

    Gambar 7.1 Siklus frekwensi dan delay

    Rangkaian Percobaan

    Buatlah Rangkaian percobaan seperti pada Gambar 7.1 dengan speaker 8 ohm atau 16 ohm.

    Speaker baru atau speaker bekas radio yang masih berfungsi bisa di gunakan.

    1. Sambungkan kaki positif speaker pada pin 9 board arduino

    2. Sambungkan kaki negatif pada GND pada board arduino

    3. Jika nanti suara yang dihasilkan terlalu nyaring, maka Anda bisa menambahkan

    resistor 100 – 1 k ohm pada kaki positif atau negatif speaker. Untuk itu, penggunaan

    project board akan memudahkan Anda untuk menyambung resistor tersebut.

    38

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 7.1 Rangkaian speaker sebagai sound

    Program Percobaan

    Untuk membuat bunyi / nada 440 Hz kita harus menghidup-matikan 440 kali dengan delay

    masing-masing 1136 mikrodetik. Perhatikan, satuannya adalah mikrodetik (1/1000 milidetik).

    Padahal fungsi delay() yang sering kita gunakan sebelumnya satuannya dalam milidetik. Oleh

    sebab itu, untuk membuat delay dengan satuan mikrodetik kita bisa menggunakan fungsi

    delayMicroseconds(). Ketika program Sketch dijalankan, maka speaker akan berbunyi terus menerus hingga kabel

    speaker dilepas atau Arduino dimatikan. Begitulah cara kerja speaker berbunyi dan membuat

    program suara yang sederhana. Buatlah program seperti di bawah ini pada Arduino IDE:

    // speaker ada di pin 9

    const int pinSpeaker = 9; // delay untuk nada 440 Hz const int timeDelay = 1163; void setup() { pinMode(pinSpeaker, OUTPUT); } void loop() {

    digitalWrite(pinSpeaker, HIGH);

    delayMicroseconds(timeDelay);

    digitalWrite(pinSpeaker, LOW);

    delayMicroseconds(timeDelay);

    }

    D. Prosedur Praktikum

    1. Jalankan sistem yang telah dibuat, amatilah hasilnya dan berikan pendapatnya

    39

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    2. Ubah-ubahlah nilai frekwensi pada bagian program const int timeDelay = 1163;,

    dengan caramengganti nilainya, kemudian jalankan sistem dan amatilah hasilnya dan

    berikan pendapatnya

    3. Buatlah program seperti di bawah ini, kemudian uploadkan ke board Arduino,

    jalankan sistemnya, amati dan berikan pendapatnya

    // tangga nada C

    #define NOTE_C4 262 // DO

    #define NOTE_D4 294 // RE

    #define NOTE_E4 330 // MI

    #define NOTE_F4 349 // FA

    #define NOTE_G4 392 // SOL #define NOTE_A4 440 // LA

    #define NOTE_B4 494 // SI

    #define NOTE_C5 523 // DO // speaker ada di pin 9 const int pinSpeaker = 9; void setup() { pinMode(pinSpeaker, OUTPUT); }

    void loop() { tone(pinSpeaker, NOTE_C4, 500); delay(500); tone(pinSpeaker, NOTE_D4, 500); delay(500); tone(pinSpeaker, NOTE_E4, 500); delay(500); tone(pinSpeaker, NOTE_F4, 500); delay(500); tone(pinSpeaker, NOTE_G4, 500); delay(500); tone(pinSpeaker, NOTE_A4, 500); delay(500); tone(pinSpeaker, NOTE_B4, 500); delay(500); tone(pinSpeaker, NOTE_C5, 500);

    delay(500); noTone(pinSpeaker);

    delay(1000);

    }

    4. Buatlah laporan tentang praktikum yang dilakukan

    40

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB VIII

    PRAKTIKUM APLIKASI THERMOMETER DIGITAL

    A. Tujuan Menggunakan Arduino untuk aplikasi Thermometer digital Membuat program sederhana untuk aplikasi Thermometer digital

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah sensor suhu LM35 Kabel jumper

    C. Dasar teori dan Rangkaian Percobaah

    Sebelum kita membuat termometer digital, kita akan belajar bagaimana menggunakan Serial

    Monitor sebagai alat untuk melihat apakah sensor menghasilkan data yang benar atau tidak.

    Maksudnya begini, ketika kita menggunakan sebuah sensor untuk mengambil data, maka

    sensor akan mengirimkan data untuk diproses oleh mikrokontroller. Untuk memastikan data

    dari sensor tersebut merupakan data yang benar, maka kita bisa melihatnya melalui Serial

    Monitor. Cara kerjanya begini:

    1. Mikrokontroller akan membaca data dari sensor

    2. Kemudian mikrokontroller akan membuat koneksi serial ke komputer

    3. Selanjutnya mikrokontroller akan mengirimkan data ke komputer melalui komunikasi

    serial tersebut

    4. Lalu kita bisa melihat data yang diterima oleh komputer menggunakan serial monitor,

    hyperterminal, atau aplikasi sejenis seperti CoolTerm dan PuTTY5.

    Serial Monitor

    Serial monitor bisa di gunakan untuk men-debug secara software. Jika tanpa serial monitor,

    kita tidak bisa melakukan debug untuk aplikasi yang kita buat sehingga untuk menemukan

    solusinya, kita harus men-debug dari sisi hardware. Misal ketika ada error, kita akan

    mencoba dengan LED atau menambah/mengurangi rangkaian.

    41

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Tapi jika menggunakan serial monitor, kita akan tahu error-nya melalui data yang dikirimkan

    oleh Arduino. Misal ketika nyala LED terlalu lama atau terlalu pelan, kita langsung bisa

    mengecek nilai (angka) yang digunakan untuk delay dan semua isi variabel dalam program

    yang kita buat. Sehingga kita bisa menelusuri logika dan algoritma program berdasarkan

    data-data yang dikirimkan tadi. Perhatikan pada board arduino, pin 0 dan 1 ada tulisan RX dan TX. Pin tersebut berfungsi

    untuk menerima dan mengirim data melalui komunikasi serial dari Arduino ke komputer

    melalui kabel USB. Untuk menggunakan komunikasi serial, kita tidak perlu menambahkan

    komponen tambahan pada Arduino karena pada board tersebut sudah disediakan. Kita cukup

    menghubungkan Arduino ke komputer, dan kita bisa langsung membuat program. Mari kita

    mulai dengan Sketch

    void setup() { Serial.begin(9600);

    Serial.println("With elangsakti.com :");

    }

    int number = 0;

    void loop() {

    Serial.print("Hello World! ");

    Serial.println( number++ );

    delay(1000); }

    Pada baris ke-6, perintah Seril.begin(9600); berarti kita akan membuat koneksi serial dengan

    baud rate 9600. Sederhananya, baud berkaitan dengan jumlah bit yang akan ditransfer

    setiap detik. Nilai baud rate ini tergantung pada clock mikrokontroller. Arduino Uno sendiri

    menggunakan clock 16 MHz. Jika clock-nya makin rendah, maka baud rate harus kita

    kurangi. Sebagai contoh, jika kita menggunakan mikrokontroller dengan clock 1 MHz, maka

    baud rate yang cocok adalah 4800. Jika clock 1 MHz kita menggunakan baud rate 9600,

    maka data yang dikirim ke komputer tidak akan terbaca. Pada Arduino IDE, nilai baud rate

    default pada Serial Monitor adalah 9600. Pada baris ke-7, awalnya Arduino akan mengirim pesan “With elangsakti.com” ketika

    pertama kali Arduino start. Setelah itu, Arduino akan mengirim pesan “Hello World!” dan

    dilanjutkan dengan angka 0, 1, 2, 3, dst. Jika Serial Monitor kita tutup dan kita buka kembali,

    maka Arduino seakan-akan melakukan reset program. Arduino akan kembali mengirimkan

    pesan “With elangsakti.com” dan angka kembali ke 0 lagi. Pada baris ke 12 dan 13, kita menemukan perintha print yang berbeda, yaitu print() dan

    println(). Jika kita menggunakan print, maka kita sekedar mengirim data tanpa diikuti end of

    42

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    line (perintah untuk ganti baris , atau ENTER). Jika kita menggunakan println(), maka tulisan

    akan diikuti perintah untuk pindah baris.

    Gambar 8.1 Icon Serial monitor pad Arduino IDE

    Sebelum muncul pesan “Done Uploading”, maka Serial Monitor belum bisa dibuka. Setelah

    Serial Monitor dibuka, maka akan terlihat pesan seperti pada Gambar 8.2.

    Gambar 8.2 Tamppilan serial monitor

    Sensor LM35

    LM35 merupakan IC sensor suhu dengan bentuk yang mirip dengan transistor. Kaki IC ini

    hanya ada tiga, yaitu untuk VCC, Output, dan GND, seperti yang diperlihatkan pada Gambar

    8.3

    43

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 8.3 Sensor suhu LM35

    Sensor ini bisa digunakan untuk mengukur suhu dari -55o – 150o celcius. Berdasarkan

    datasheet LM356, maka kita bisa menggunakan pengukuran penuh (-55 – 150o celcius) atau

    pengukuran sebagian yaitu hanya bisa menghitung dari 2 – 150o celcius. Untuk pengukuran

    penuh, maka rangkaian dasarnya seperti tampak pada Gambar 8.4 sedangkan untuk

    pengukuran sebagian, rangkaian dasarnya adalah seperti pada Gambar 8.5.

    Gambar 8.4 Rangkaian Pengukuran suhu dengan LM35

    Gambar 8.5 Rangkaian dasar pengukuran dengan sensor LM35

    Rangkaian Percobaan

    Berdasarkan karakteristik kaki-kaki pada IC LM35, maka kita akan menggunakan rangkaian

    sebagian sehingga Rangkaian 5.1 hanya bisa mengukur suhu dari 2 hingga 150 derajat

    celcius. Cara merangkainya seperti pada Gambar 8.6.

    44

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 8.6 Rangkaian sensor suhu LM35 dengan Arduino

    Prosedur kerja:

    1. Sambungkan kaki 1 ke VCC 2. Sambungkan kaki kedua (tengah) ke A0. A0 adalah pin analog, kaki pin analog

    berfungsi untuk berbagasi tranduser / sensor yang mengharuskan sinyal analog. Oleh sebab itu, untuk membaca kaki ini menggunakan analogRead(), sedangkan untuk

    menulisnya menggunakan analogWrite(). 3. Sambungkan kaki ke-3 ke GND

    Karakteristik dari sensor ini yaitu setiap kenaikan 10 mV pada kaki output, menandakan

    kenaikan suhu 1o celcius. Sehingga, karena Rangkaian 5.1 hanya mampu mengukur dari 2o

    celcius, maka output LM35 minimal adalah 20 mV dan maksimal 1500 mV. Konversi suhu

    pada output LM35 juga tergantung pada tegangan referensi yang digunakan.

    Tegangan referensi pada arduino ada tiga (khusus Arduino Uno)7, tegangan referensi default,

    internal, dan eksternal. Jika kita tidak mendefinisikan tegangan referensi yang akan kita

    gunakan, maka Arduino secara default akan menggunakan tegangan referensi 5 volt. Selain 5

    volt, tegangan default yang disediakan oleh arduino adalah 3.3 volt. Akan tetapi kita harus

    membuat jumper dari 3.3 volt (di board Arduino) ke pin AREF, lalu mengeksekusi perintah

    analogReference(DEFAULT).

    Tegangan referensi internal Arduino yaitu 1.1 volt, untuk menggunakan tegangan referensi

    ini, kita harus memberikan perintah analogReference(INTERNAL).

    Program Percobaan

    Sebelum membuat program, kita akan menghitung bagaimana cara mengukur dan

    mengkonversi output dari LM35 menjadi suhu. Kita akan mengkonversi voltase pada kaki

    45

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    output LM35, kemudian menghitungnya berdasarkan tegangan referensi yang digunakan,

    mengubahnya menjadi celcius, lalu mengirimkannya ke komputer melalui komunikasi serial.

    Jika kita menggunakan tegangan referensi 5 volt, maka Arduino bisa mengukur setidaknya

    hingga 5000 mV. padahal kemampuan LM35 hanya sebatas 150o celcius atau 150 x 10 mV =

    1500 mV (1.5 volt). Sehingga tegangan yang keluar dari kaki output LM35 tidak akan mungkin melebihi

    1.5 volt. Berdasarkan persamaan sederhana, maka kita bisa menghitung suhu berdasarkan

    perbandingan antara kapasitas voltase yang bisa dicacah oleh pin analog Arduino (1024) dan

    kemampuan LM35 mengukur suhu.

    Suhu dalam Voltase (T) : 0 - 500

    Cacahan Voltase input (Vin) : 0 - 1024

    0/500 = 0/1024

    T/500 = Vin/1024

    T = (Vin * 500) / 1024

    Buat program sebagai berikut pada Arduino IDE

    const int pSuhu = A0;

    float suhu, data;

    void setup() {

    Serial.begin(9600);

    pinMode(pSuhu, INPUT);

    }

    void loop() { data = analogRead(pSuhu);

    suhu = data * 500 / 1024;

    Serial.print("data: ");

    Serial.print(data);

    Serial.print(", suhu: ");

    Serial.print(suhu);

    Serial.println();

    delay(1000); }

    Program pada Sketch akan membaca data dari sensor suhu pada pin A0 di board Arduino

    kemudian mengkonversinya menjadi 78 suhu. Informasi suhu akan dikirim ke komputer

    melalui komunikasi serial dengan baud rate 9600 setiap 1000 milisekon.

    Prosedur Percobaan

    1. Jalankan sistem thermometer digital, amati hasil pembacaannya melalui serial

    monitor, dan berikan tanggapannya

    46

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    2. Panaskan sensur suhu LM35 dengan tangan, amati hasil pembacaannya melalui serial

    monitor, dan berikan tanggapannya

    3. Panaskan sensor suhu LM35 dengan korek api, amati hasil pembacaannya melalui

    serial monitor, dan berikan tanggapannya

    4. Buatlah laporan terkait dengan praktikum yang dikerjakan

    47

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB IX

    PRAKTIKUM APLIKASI THERMOMETER DIGITAL DENGAN TAMPILAN LCD

    A. Tujuan Menggunakan Arduino untuk aplikasi Thermometer digital yang ditampilkan pada

    LCD display

    Membuat program sederhana untuk aplikasi Thermometer digital yang ditampilkan pada LCD display

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah sensor suhu LM35 1 buah LCD 2 x 16 Kabel jumper

    C. Dasar teori dan Rangkaian Percobaah

    Dalam hal ini kita akan menyiapkan LCD untuk menampilkan informasi suhu yang telah kita

    buat. Sebab melihat informasi suhu dengan komputer tentu kurang praktis bukan?

    LCD merupakan singkatan dari Liquid Crystal Display, atau umumnya disebut dengan LCD

    atau display saja. Di pasaran beragam jenis LCD dan berbagai ukuran yang bisa Anda

    gunakan. LCD bias untuk menampilkan huruf dan angka, bahkan ada yang bisa untuk

    menampilkan gambar.

    Pada praktikum ini, kita akan berkenalan dengan LCD yang umum digunakan dan harganya

    juga relatif terjangkau. LCD ini berukuran 16x2 (2 baris 16 kolom) yang cukup untuk

    menampilkan informasi suhu atau informasi yang tidak terlalu panjang. LCD ini dikenal juga

    dengan LCD 1602 dengan beberapa varian seperti 1602A, dll.

    LCD ini bisa bekerja pada 5 volt, sehingga Anda bisa menyambungkannya secara langsung

    ke pin VCC pada board Arduino. Perlu diperhatikan, jika Anda menggunakan LCD jenis

    lainnya, ada juga LCD yang bekerja pada voltase yang berbeda. Sehingga kesalahan

    pemasangan sumber tegangan bisa membuat LCD rusak.

    48

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 9.1 LCD 1602

    LCD 1602 memiliki 16 pin dengan fungsi-fungsi sebagai berikut:

    Berdasarkan karakteristik tersebut, maka semua pin akan digunakan kecuali pin D1 – D3

    sebab kita akan menggunakan jalur data untuk transfer 4 bit atau 8 bit. Penjelasan singkat

    tentang RS, R/W, dan E:

    - RS merupakan kependekan dari Register Selector, pin ini berfungsi untuk memilih

    register control atau register data. Register control digunakan untuk mengkonfigurasi

    LCD, sedangkan register data digunakan untuk menuliskan data berupa karakter

    untuk ditampilkan di LCD.

    - R/W atau Read/Write, digunakan untuk memilih aliran data mikrokontroller akan

    membaca data yang ada di LCD atau menuliskan data ke LCD. Jika LCD hanya

    digunakan untuk menulis / menampilkan data, maka pin ini bisa langsung

    disambungkan ke GND sehingga logika bisa diset menjadi L (Low).

    - E atau Enable, digunakan untuk mengaktifkan LCD ketika proses penulisan data ke

    register control dan regiter data.

    Rangkaian Dasar LCD 1602

    Untuk merangkai LCD, yang Anda butuhkan adalah beberapa kabel jumper dan sebuah

    potensiometer. Potensiometer ini berfungsi untuk mengatur kontras backlight LCD.

    Perhatikan Rangkaian 9.2.

    49

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    Gambar 9.2 Menghubungkan LCD 1602 ke Arduino

    Lankah Kerja: 1. Pin V0 pada LCD disambungkan ke kaki tengah potensiometer, sementara masing-

    masing kaki potensiometer yang ada di pinggir disambungkan ke VCC dan GND. Jika

    nanti tampilan tulisannya kurang jelas, silakan putar-putar potensiometernya.

    2. Pin R/W pada LCD disambungkan ke GND

    3. Pin RS pada LCD disambungkan ke pin 6 pada Arduino

    4. Pin E pada LCD disambungkan ke pin 7 pada Arduino

    5. Pin untuk data (D4 – D7) pada LCD disambungkan ke pin 9 – 12 pada Arduino

    6. VDD dan A pada LCD disambungkan ke +5v

    7. VSS dan K pada LCD disambungkan ke GND

    Pemograman dasar pada LCD

    Buatlah program untuk menampilkan tulisan “TEKNIK ELEKTRO” seperti dibawah ini pada

    Arduino IDE

    #include // Setting LCD RS E D4 D5 D6 D7 LiquidCrystal lcd(7, 6, 9, 10, 11, 12); void setup(){ // pilih LCD 16 x 2 lcd.begin(16,2);

    lcd.print("TEKNIK ELEKTRO");

    } int hitung = 0;

    void loop(){

    50

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    // pindah ke baris kolom 1 baris ke 2 // array selalu dimulai dari 0 lcd.setCursor(0,1); lcd.print( hitung++ ); delay(1000); }

    Upload program yang dibuat ke board Arduino.

    D. Prosedur Percobaan

    1. Jalankan program, kemudian amati dan jelaskan hasil pengamatan anda

    2. Pada bagian program lcd.setCursor(0,1); ganti (0, 1) dengan (0, ), Apa yang terjadi,

    jelaskan

    3. Buatlah program untuk menampilkan tulisan pada LCD, dimana tulisannya pada baris

    pertama tertulis “D3 LISTRIK” dan pada baris kedua tertulis “TEKNIK ELEKTRO”

    4. Buatlah program seperti dibawah ini, dimana program ini berfungsi sebagai

    thermometer digital yang hasil pembacaannya ditampilkan pada tampilan LCD

    // Termometer digital #include const int pSuhu = A0; float suhu, data; // Setting LCD RS E D4 D5 D6 D7 LiquidCrystal lcd(7, 6, 9, 10, 11, 12); void setup(){ // mengubah tegangan referensi ke internal, 1.1 volt analogReference(INTERNAL); // pinSuhu sebagai input pinMode(pSuhu, INPUT); // pilih LCD 16 x 2 lcd.begin(16,2); lcd.print("ELANGSAKTI.COM"); }

    void loop(){ data = analogRead(pSuhu); suhu = data * 110 / 1024; // pindah ke baris kolom 1 baris ke 2 // array selalu dimulai dari 0 lcd.setCursor(0,1);

    lcd.print("Suhu: ");

    lcd.print(suhu);

    lcd.print("C"); delay(1000);

    }

    Upload program ke board Arduino, jalankan program dan amati hasil pembacaannya,

    dimana prosedur percobaannya sebagai berikut:

    51

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

    1. Panaskan sensor suhu LM35 dengan tangan dan amati hasilnya pada tampilan LCD,

    kemudian jelaskan pendapat anda

    2. Panaskan sensor suhu LM35 dengan korek api dan amati hasilnya pada tampilan

    LCD, kemudian jelaskan pendapat anda

    3. Buat laporan tentang praktikum yang dikerjakan

    52

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    BAB X

    PRAKTIKUM APLIKASI SENSOR CAHAYA (LDR)

    A. Tujuan Menggunakan Arduino untuk aplikasi sensor cahaya dengan menggunakan LDR Membuat program sederhana untuk aplikasi sensor cahaya dengan menggunakan

    LDR

    B. Alat dan Bahan yang digunakan 1 buah Papan Arduino Uno 1 buah Bread Board 1 buah sensor cahaya LDR Kabel jumper

    C. Dasar teori dan Rangkaian Percobaah

    Salah satu jenis sensor cahaya adalah LDR (Light Dependent Resistor). Dengan sensor ini,

    kita bisa membuat alat yang berkaitan dengan cahaya seperti jemuran otomatis, tracking arah

    sumber cahaya matahari, lampu otomatis (untuk rumah, aquarium, dll), atau sebagai pengatur

    intensitas cahaya lampu untuk tananaman di dalam ruangan, dan banyak lagi lainnya. Di

    pasaran ada LDR yang berukuran 4 mm dan 11 mm. Pada Gambar 6.1 adalah LDR dengan

    ukuran 11 mm.

    Gambar 10.1 LDR 11 mm

    53

  • Modul Praktek Mikrokontroler Prodi D3 Teknik Komputer Jurusan Teknik Elektro, 2019

    LDR disebut juga sebagai photoresistor sebab alat ini akan memiliki resistansi yang akan

    berubah seiring dengan perubahan intensitas cahaya yang mengenainya. Dalam kondisi

    gelap, resistansi LDR bisa mencapai 10 M ohm, tapi dalam kondisi terang, resistansi LDR

    turun hingga 1 K ohm bahkan bisa kecil lagi (Gambar 6.2 dan 6.3). Sifat inilah yang

    membuat LDR bisa dimanfaatkan sebagai sensor cahaya. LDR terbuat dari sebuah cakram semikonduktor seperti kadmium sulfida dengan dua buah

    elektroda pada permukaannya. Pada saat intensitas cahaya yang mengenai LDR sedikit,

    bahan dari cakram LDR tersebut menghasilkan elektron bebas dengan jumlah yang relatif kecil. Sehingga hanya ada

    sedikit el