Materi Arduino [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

PENGENALAN ARDUINO



APA ITU ARDUINO?



Arduino adalah pengendali mikro single-board yang bersifat open source yang dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Perangkat kerasnya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri..



2



APA FUNGSI ARDUINO?



Arduino dapat berinteraksi dengan tombol, LED, motor, speaker, unit GPS, kamera, internet, dan bahkan ponsel pintar atau TV. Hal ini memungkinkan Arduino bisa dijadikan untuk membuat berbagai macam Proyek berbasis Arduino



3



PAPAN ARDUINO 4



▰ Arduino memiliki banyak varian papan atau board. Setiap papan atau board Arduino dilengkapi dengan Mikrokontroler. Namun kebanyakan mikrokontroler yang digunakan yaitu dari keluarga AVR. Jadi ada berbagai macam papan arduino, seperti uno, nano, mega dan lainya. Namun anda tidak perlu bingung, sebagai pemula untuk belajar arduino cukup mengunakan Arduino Uno. Kenapa? karena papan Arduino Uno sangat mudah ditemukan di toko elektronik atau toko online.



5



ARDUINO UNO



6



ARDUINO NANO



7



PIN ARDUINO



8



PIN ARDUINO



9



PENGENALAN KOMPONEN ELEKTRONIKA 1.RESISTOR Resistor atau disebut juga dengan Hambatan adalah Komponen Elektronika Pasif yang berfungsi untuk menghambat dan mengatur arus listrik dalam suatu rangkaian Elektronika. Satuan Nilai Resistor atau Hambatan adalah Ohm (Ω). Nilai Resistor biasanya diwakili dengan Kode angka ataupun Gelang Warna yang terdapat di badan Resistor. Hambatan Resistor sering disebut juga dengan Resistansi atau Resistance. Jenis-jenis Resistor diantaranya adalah : 1.Resistor yang Nilainya Tetap 2.Resistor yang Nilainya dapat diatur, Resistor Jenis ini sering disebut juga dengan Variable Resistor ataupun Potensiometer. 3.Resistor yang Nilainya dapat berubah sesuai dengan intensitas cahaya, Resistor jenis ini disebut dengan LDR atau Light Dependent Resistor 4.Resistor yang Nilainya dapat berubah sesuai dengan perubahan suhu, Resistor jenis ini disebut dengan PTC (Positive Temperature Coefficient) dan NTC (Negative Temperature Coefficient) 10



PENGENALAN KOMPONEN ELEKTRONIKA



11



PENGENALAN KOMPONEN ELEKTRONIKA



2. KAPASITOR Kapasitor atau disebut juga dengan Kondensator adalah Komponen Elektronika Pasif yang dapat menyimpan energi atau muatan listrik dalam sementara waktu. Fungsi-fungsi Kapasitor (Kondensator) diantaranya adalah dapat memilih gelombang radio pada rangkaian Tuner, sebagai perata arus pada rectifier dan juga sebagai Filter di dalam Rangkaian Power Supply (Catu Daya). Satuan nilai untuk Kapasitor (Kondensator) adalah Farad (F) Jenis-jenis Kapasitor diantaranya adalah : 1.Kapasitor yang nilainya Tetap dan tidak ber-polaritas. Jika didasarkan pada bahan pembuatannya maka Kapasitor yang nilainya tetap terdiri dari Kapasitor Kertas, Kapasitor Mika, Kapasitor Polyster dan Kapasitor Keramik. 2.Kapasitor yang nilainya Tetap tetapi memiliki Polaritas Positif dan Negatif, Kapasitor tersebut adalah Kapasitor Elektrolit atau Electrolyte Condensator (ELCO) dan Kapasitor Tantalum 3.Kapasitor yang nilainya dapat diatur, Kapasitor jenis ini sering disebut dengan Variable Capasitor.



12



PENGENALAN KOMPONEN ELEKTRONIKA



13



PENGENALAN KOMPONEN ELEKTRONIKA 3. DIODA Diode adalah Komponen Elektronika Aktif yang berfungsi untuk menghantarkan arus listrik ke satu arah dan menghambat arus listrik dari arah sebaliknya. Diode terdiri dari 2 Elektroda yaitu Anoda dan Katoda. Macam – macam Dioda: 1. Dioda Biasa atau Dioda Penyearah yang umumnya terbuat dari Silikon dan berfungsi sebagai penyearah arus bolak balik (AC) ke arus searah (DC). 2. Dioda Zener (Zener Diode) yang berfungsi sebagai pengamanan rangkaian setelah tegangan yang ditentukan oleh Dioda Zener yang bersangkutan. Tegangan tersebut sering disebut dengan Tegangan Zener. 3. LED (Light Emitting Diode) atau Diode Emisi Cahaya yaitu Dioda yang dapat memancarkan cahaya monokromatik 14



PENGENALAN KOMPONEN ELEKTRONIKA



4. Dioda Foto (Photo Diode) yaitu Dioda yang peka dengan cahaya sehingga sering digunakan sebagai Sensor. 5. Dioda Shockley (SCR atau Silicon Control Rectifier) adalah Dioda yang berfungsi sebagai pengendali . 6. Dioda Laser (Laser Diode) yaitu Dioda yang dapat memancar cahaya Laser. Dioda Laser sering disingkat dengan LD.



15



PENGENALAN KOMPONEN ELEKTRONIKA



16



PENGENALAN KOMPONEN ELEKTRONIKA



4. TRANSISTOR Transistor merupakan Komponen Elektronika Aktif yang memiliki banyak fungsi dan merupakan Komponen yang memegang peranan yang sangat penting dalam dunia Elektronik modern ini. Beberapa fungsi Transistor diantaranya adalah sebagai Penguat arus, sebagai Switch (Pemutus dan penghubung), Stabilitasi Tegangan, Modulasi Sinyal, Penyearah dan lain sebagainya. Transistor terdiri dari 3 Terminal (kaki) yaitu Base/Basis (B), Emitor (E) dan Collector/Kolektor (K). Berdasarkan strukturnya, Transistor terdiri dari 2 Tipe Struktur yaitu PNP dan NPN. UJT (Uni Junction Transistor), FET (Field Effect Transistor) dan MOSFET (Metal Oxide Semiconductor FET) juga merupakan keluarga dari Transistor.



17



PENGENALAN KOMPONEN ELEKTRONIKA



18



PENGENALAN KOMPONEN ELEKTRONIKA 5. Saklar (Switch) Saklar adalah Komponen yang digunakan untuk menghubungkan dan memutuskan aliran listrik. Dalam Rangkaian Elektronika, Saklar sering digunakan sebagai ON/OFF dalam peralatan Elektronika.



19



SKEMA RANGKAIAN Buat rangkaian berdasarkan skema rangkaian di bawah ini



20



SKEMA RANGKAIAN Buat rangkaian berdasarkan skema rangkaian di bawah ini



21



SOFTWARE ARDUINO 22



Software Arduino IDE adalah software yang digunakan untuk memprogram papan atau board Arduino.



Bahasa Pemograman Arduino bersifat Case Sensitive. Maksudnya dalam penulisan program, penggunaan huruf kecil atau huruf besar sangat berpengaruh ( Huruf besar dan huruf kecil dibedakan )



23



24



Berikut penjelasan setiap bagian software Arduino IDE: •



Verify Code: Berfungsi untuk mengecek code apakah ada yang error atau sudah benar.







Upload: Berfungsi untuk mengisi program yang sudah diketik pada software Arduino IDE ke papan Arduino.







New Sketch: Berfungsi untuk membuat halaman sketch atau code yang baru.







Open Sketch: Berfungsi untuk membuka sketch atau code yang sudah ada. Contohnya file yang berekstensi .ino







Save Sketch: Berfungsi untuk menyimpan sketch atau code yang kita edit maupun kita ingin save supaya aman. 25







Serial Monitor: Berfungsi untuk menampilkan serial monitor untuk membaca komunikasi serial RX TX antara laptop/PC dengan papan/board Arduino.







Void Setup: Berfungsi untuk wadah menuliskan setingan pin hingga setingan library (fungsi khusus).







Void Loop: Berfungsi untuk menjalankan program/code secara berulang tanpa batas.







Keterangan Aplikasi: Berfungsi sebagai indikator keberhasilan atau error.







Konsole Log: Berfungsi sebagai log saat melakukan compile maupun upload code/sketch ke papan Arduino.







Line Number Sketch: Berfungsi sebagai tanda cursor komputer berada pada baris keberapa.







Info Board dan Port Koneksi: Berfungsi sebagai indikator bahwa setingan PC/Laptop sudah terhubung ke papan Arduino yang benar sesuai dengan tipe papan Arduino. 26



27



PENJELASAN KODE PROGRAM void setup Semua kode program yang ada dalam void setup akan dibaca sekali oleh Arduino. Biasanya isinya berupa kode perintah untuk menentukan fungsi pada sebuah pin. Contoh kodenya seperti: pinMode(13, OUTPUT); // menentukan pin 13 sebagai OUTPUTpinMode(3, INPUT); // menentukan pin 3 sebagai INPUT void loop Semua kode program yang ada di void loop akan dibaca setelah void setup dan akan dibaca terus menerus oleh Arduino. Isinya berupa kode-kode perintah kepada pin INPUT dan OUTPUT pada Arduino. Contoh kodenya seperti: digitalWrite(13, HIGH); //untuk memberikan 5V (nyala) kepada pin 13. digitalWrite(13, LOW); //untuk memberikan 0V (mati) kepada pin 13. analogWrite(3, 225); //untuk memberikan nilai 225 (setara dengan 5V) kepada pin 3. 28



untuk komunikasi antara Arduino dengan komputer, menggunakan: Serial.begin(9600); // untuk komunikasi Arduino dengan komputer



untuk menampilkan nilai pada sebuah sensor di Serial Monitor, bisa menggunakan: Serial.print(namasensor);//menampilkan nilai sensor yang disimpan di variabel nama sensor Untuk menampilkan teks, bisa menggunakan: Serial.print("Selamat Datang"); //menampilkan teks Selamat Datang pada Serial Monitor



29



Untuk membuat catatan pada program dan tidak akan dibaca oleh Arduino, dengan cara mengetikan // kemudian mengetikan catatannya, seperti: void loop() { // catatan pada baris ini tidak akan dibaca oleh program } Tapi pemakaian tanda // hanya berfungsi untuk catatan satu baris saja, jika kamu ingin membuat catatan yang panjang yaitu berupa paragraf. Maka pertama kamu ketikan /* lalu ketikan catatan kamu, dan jika sudah selesai tutup dengan kode */ . Contohnya seperti: void loop() { /* apapun yang kamu mau ketikan disini tidak akan dibaca oleh program sepanjang apapun kamu mengetiknya */ }



30



KURUNG KURAWAL { } Digunakan untuk menentukan awal dan akhir dari program. Karena seperti bahasa pemrograman pada umumnya, Arduino membaca mulai dari atas hingga kebawah. void loop() { ….program ….program ….program } TITIK KOMA ; Setiap baris kode pada Arduino harus diakhiri dengan tanda ; void setup(){ pinMode(13, OUTPUT); } void loop(){ digitalWrite(13, HIGH); }



31



VARIABLES



Variabel adalah kode program yang digunakan untuk menyimpan suatu nilai pada sebuah nama. Yang biasa digunakan diantaranya adalah Integer, Long, Boolean, Float, Character. int (integer) Variabel yang paling sering digunakan dan dapat menyimpan data sebesar 2 bytes (16 bits). long (long) Biasa digunakan jika nilai datanya lebih besar dari integer. Menggunakan 4 bytes (32 bits). boolean (boolean) Variabel yang hanya menyimpan nila TRUE dan FALSE saja. Hanya menggunakan 1 bit saja 😉 float(float) Digunakan untuk floating point pada nilai decimal. Memory yang digunakan 4 bytes (32 bits). char(character) Menyimpan character berdasarkan ASCII kode (contoh: ‘A’=65). Menggunakan 1 byte (8 bits). 32



RANGE DATA



33



OPERATOR MATEMATIKA



Digunakan untuk memanipulasi nilai dengan perhitungan matematika sederhana seperti: penjumlahan, pengurangan, sama dengan, dan sebagainya. = (sama dengan) (contoh x=10*2 (x sekarang jadi 20)) % (persentase) (contoh 12%10 (hasilnya yaitu 2)) + (penambahan) – (pengurangan) * (perkalian) / (pembagian)



34



OPERATOR PERBANDINGAN



Digunakan untuk melakukan perbandingan secara logika. == (sama dengan) contoh: 15 == 10 FALSE atau 15 == 15 TRUE != (tidak sama dengan) contoh: 15 != 10 TRUE atau 15 != 15 FALSE < (lebih kecil dari) contoh: 15 < 10 FALSE atau 12 < 14 TRUE > (lebih besar dari) contoh: 15 > 19 TRUE atau 15 > 10 FALSE



35



pinMode, digitalWrite, digitalRead Fungsi pinMode() pada arduino adalah sebuah perintah yang fungsinya untuk mengkonfigurasi pin tertentu agar bekerja menjadi sebuah input atau output.



Sintaks : pinMode(pin, mode); •Parameter pin, fungsinya untuk menentukan pin mana yang akan dikonfigurasi, bisa 1, 2, 3 atau yang lain. Bisa juga diisi menggunakan sebuah variabel. •Patameter mode, fungsinya untuk menentukan jenis mode apa yang akan digunakan, apakah pin akan berfungsi sebagai input atau ouput. penulisannya harus menggunakan huruf kapital seperti ini; INPUT/OUTPUT.



36



pinMode, digitalRead, digitalWrite Fungsi digitalWrite() pada arduino berfungsi untuk memberi nilai 1 atau 0 kepada pin digital yang ada pada arduino. 1/0 bisa juga disebut dengan nilai HIGH dan LOW ke pin digital. Sintaks: digitalWrite(pin, nilai); •parameter pin di digitalWrite() berguna untuk menampung pin yang akan digunakan, bisa pin 1,2,3 atau yang lain sesuai kebutuhan dan penggunaan •Parameter nilai berfungsi sebagai tempat untuk memberikan nilai yang nantinya akan dikirim ke pin yang ada di Arduino. Jika kamu ingin menyalakan LED artinya kamu harus memberi nilai HIGH, jika kamu ingin mematikan LED kamu tinggal berikan nilai LOW 37



pinMode, digitalRead, digitalWrite



Fungsi digitalRead() adalah sebuah perintah yang digunakan untuk membaca nilai dari suatu inputan yang berasal dari pin digital Arduino baik nilai HIGH maupun LOW



Sintaks : digitalRead(pin)



38



DIGITAL READ SERIAL Pin digital hanya mengenali 2 angka yaitu 0 dan 1. sinyal 0 atau 0 volt sebagai nilai LOW dan sinyal 1 atau 5 volt sebagai nilai HIGH. Untuk mengilustrasikan sinyal digital yang ada di Arduino lakukan percobaan seperti dibawah ini : 1. Buka browser dan ketikkan alamat : wokwi.com



39



DIGITAL READ SERIAL 2. Buat dokumen baru dengan cara klik gambar Arduino uno



40



DIGITAL READ SERIAL 3. Tampilan lembar kerja baru



41



DIGITAL READ SERIAL 4. Tambahkan komponen LED dan tombol pushbutton dg cara kilk tanda +



42



DIGITAL READ SERIAL 5. Buat rangkaian seperti berikut



a.



b.



Positip LED ke pin 7, negative LED ke pin GND Satu kaki pushbutton ke pin 2 dan satu lagi ke pin 5V



43



DIGITAL READ SERIAL 6. Pada bagian sketch.ino tulis program seperti dibawah ini int tombol = 2; void setup() { Serial.begin(9600); pinMode(tombol, INPUT); pinMode(7, OUTPUT); } void loop() { int nilai = digitalRead(tombol); Serial.println(nilai); delay(1); if (nilai==1){ digitalWrite(7, HIGH); } else { digitalWrite(7, LOW); } }



44



DIGITAL READ SERIAL 7. Apabila rangkaian dan program sudah dibuat, selanjutnya klik icon play simulasi



45



DIGITAL READ SERIAL 8. Apabila rangkaian dan program sudah benar pada saat tombol kita tekan LED akan menyala dan pada bagian layar monitor di bawah rangkaian akan muncul angka 1 ( tombol ditekan ) dan angka 0 ( tombol tidak ditekan )



9. Screenshoot hasilnya dan kirim via GCR



46



ANALOG READ SERIAL



1. Buka browser dan ketikkan alamat : wokwi.com 2. Buat rangkaian seperti skema rangkaian dibawah ini



47



ANALOG READ SERIAL



3. Buat coding seperti di bawah ini dan simulasikan hasilnya: int Pot = A0; int nilaiPot = 0; void setup() { Serial.begin(9600); } void loop() { nilaiPot = analogRead(Pot); nilaiPot = map(nilaiPot, 0, 1023, 0, 255); Serial.println(nilaiPot); } 48



ANALOG READ SERIAL



3. Buat coding seperti di bawah ini dan simulasikan hasilnya: int led = 8; int Pot = A0; int nilaiPot = 0; void setup() { pinMode(led, OUTPUT); Serial.begin(9600); } void loop() { nilaiPot = analogRead(Pot); nilaiPot = map(nilaiPot, 0, 1023, 0, 255); analogWrite(led, nilaiPot); Serial.println(nilaiPot); }



49



BLINK LED Buat rangkaian seperti skema rangkaian dibawah ini



50



TUGAS PRAKTIK 1



Dari tugas Blink LED, ubah nyala LED menjadi nyala STROBO, 4 kali ON cepat dan 4 kali OFF cepat



51



TUGAS BLINK LED 2 Dari praktik Blink LED minggu yang lalu modifikasi dengan menggunakan tombol, sehingga LED akan berkedip jika tombol kita pencet



52