Arduino merupakan sebuah perangkat elektronik yang bersifat open source dan sering digunakan untuk merancang dan membuat perangkat elektronik serta software yang mudah untuk digunakan. Arduino ini dirancang sedemikian rupa untuk mempermudah penggunaan perangkat elektronik di berbagai bidang.
Arduino ini memiliki beberapa komponen penting di dalamnya, seperti pin, mikrokontroler, dan konektor yang nanti akan dibahas lebih dalam selanjutnya. Selain itu, Arduino juga sudah menggunakan bahasa pemrograman Arduino Language yang sedikit mirip dengan bahasa pemrograman C++.
A. Bagian-bagian arduino uno:
1. Power USB
Digunakan untuk menghubungkan PapanArduino dengan komputer lewat koneksi USB
2. Power jack
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
3. Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
4. Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
5. Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
6. Analog Pins
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.
7. LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Bagian-Bagian Pendukung
1. RAM
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).
2. ROM
ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.
2.2 Breadboard
Breadboard merupakan sebuah board atau papan yang berfungsi untuk merancang sebuah rangkaian elektronik sederhana. Breadboard tersebut nantinya akan dilakukan prototipe atau uji coba tanpa harus melakukan solder.
- Kabel Jumper Male to Male

- Kabel Jumper Male to Female

Biasanya kabel ini digunakan untuk menghubungkan komponen elektronika selain arduino ke breadboard
- Kabel Jumper Female to Female

Masukkan angka langsung dari kode warna Gelang ke-1 (pertama)
Masukkan angka langsung dari kode warna Gelang ke-2
Masukkan angka langsung dari kode warna Gelang ke-3
Masukkan Jumlah nol dari kode warna Gelang ke-4 atau pangkatkan angka tersebut dengan 10 (10n)
Merupakan Toleransi dari nilai Resistor tersebut
Contoh :
Gelang ke 1 : Coklat = 1
Gelang ke 2 : Hitam = 0
Gelang ke 3 : Hijau = 5
Gelang ke 4 : Hijau = 5 nol dibelakang angka gelang ke-2; atau kalikan 105
Gelang ke 5 : Perak = Toleransi 10%
Maka nilai Resistor tersebut adalah 105 * 105 = 10.500.000 Ohm atau 10,5 MOhm dengan toleransi 10%.
Contoh-contoh perhitungan lainnya :
Merah, Merah, Merah, Emas → 22 * 10² = 2.200 Ohm atau 2,2 Kilo Ohm dengan 5% toleransi
Kuning, Ungu, Orange, Perak → 47 * 10³ = 47.000 Ohm atau 47 Kilo Ohm dengan 10% toleransi
Cara menghitung Toleransi :
2.200 Ohm dengan Toleransi 5% =
2200 – 5% = 2.090
2200 + 5% = 2.310
ini artinya nilai Resistor tersebut akan berkisar antara 2.090 Ohm ~ 2.310 Ohm
Potensiometer (POT) adalah salah satu jenis Resistor yang Nilai Resistansinya dapat diatur sesuai dengan kebutuhan rangkaian elektronika ataupun kebutuhan pemakainya. Sebuah Potensiometer (POT) terdiri dari sebuah elemen resistif yang membentuk jalur (track) dengan terminal di kedua ujungnya. Sedangkan terminal lainnya (biasanya berada di tengah) adalah Penyapu (Wiper) yang dipergunakan untuk menentukan pergerakan pada jalur elemen resistif (Resistive). Pergerakan Penyapu (Wiper) pada Jalur Elemen Resistif inilah yang mengatur naik-turunnya Nilai Resistansi sebuah Potensiometer.
Simbol dan bentuk Potensiometer dapat dilihat pada gambar 9 berikut.
Gambar Bentuk dan Simbol Potensiometer
//MASTER
#include <Wire.h>
#define MASTER_ADDR 12
int analogPin = 0;
int val = 0;
void setup() {
Wire.begin();
Serial.begin(9600);
}
void loop() {
delay(50);
val = map(analogRead(analogPin), 0, 1023, 255, 1);
Wire.beginTransmission(MASTER_ADDR);
Wire.write(val);
Wire.endTransmission();
Serial.println(val);
}
PENJELASAN PROGRAMPrinsip kerja dari program master yaitu pertama-tama menginput libray yang digunakan yakni wire.h. Setelah itu, kita mendefinisikan alamat master pada pin 12 arduino master. Setelah itu, kita memmbuat variabel analog pin dan val = 0 dengan tipe data integer. Setelah itu kita membuat fungsi void setup () dimana kode didalam fungsi ini akan dieksekusi sekali. Didalam fungsi ini terdapat Wire.begin() untuk memulai wire. Selain itu, terdapatSerial.begin(9600); untuk mengatur kecepatan pengiriman data 9600 bps melalui port serial.Selanjutnya, kita membuat fungsi void loop() dimana kode di dalam fungsi ini akan dieksekusiberulang. Didalam fungsi ini terdapat delay 50 ms, terdapat variabel val untuk memetakan analogpin, 0-1023, 1-255. Selanjutnya, kita memulai transmisi dengan Wire.beginTransmission(MASTER_ADDR);. Setelah itu kita membuat Wire.write(val); Dan setelah itu kita akan mengakhiri transmisi denganWire.endTransmission(); dan kita kan print nilai varibel val pada serial monitor dengan Serial.println(val);
#include <Wire.h>
#define SLAVE_ADDR 12
int LED = 13;
int rd;
int br;
void setup() {
pinMode(LED, OUTPUT);
Wire.begin(SLAVE_ADDR);
Wire.onReceive(receiveEvent);
Serial.begin(9600);
Serial.println("I2C Slave demo");
}
void receiveEvent(){
rd = Wire.read();
Serial.println(rd);
}
void loop() {
delay(50);
br = map(rd, 1, 255, 100, 2000);
Serial.println(br);
digitalWrite(LED, HIGH);
delay(br);
digitalWrite(LED, LOW);
delay(br);
}
PENJELASAN PROGRAMPrinsip kerja dari program master yaitu pertama-tama menginput libray yang digunakan yakni wire.h. Setelah itu, kita mendefinisikan alamat slave pada pin 12 arduino. Setelah itu, kita membuat variabel br dan rd serta mendeklarasikan pin 13 digunakan untk LED. Selanjutnya fungsi void setup () dimana kode didalam fungsi ini akan dieksekusi sekali. pinMode(LED, OUTPUT); untuk mendeklarasikan LED sebagai output.Wire.begin(SLAVE_ADDR); memulai komuikasi I2C dengan variabel SLAVE_ADDR. Selanjutnya,Wire.onReceive(receiveEvent); untuk menunjukkan bahwa slave menerima data dari receiveEvent.Selain itu, terdapatSerial.begin(9600); untuk mengatur kecepatan pengiriman data 9600 bpsmelalui port serial. Terakhir di dalam fungsi ini terdapat Serial.println("I2C Slave demo"); untukmenampilkan text "I2C Slave demo" pada serial monitor.Selanjutnya terdapat fungsi void receiveEvent() untukmenunjukkan kode yang ada fidalam fungsi ini sebagai penerima:Didalam fungsi ini terdapat rd=Wire.read(); untuk variabel rd membaca nilai yang terbaca dari komunikasi I2C.Selanjutnya terdapat Serial.println(rd);} untuk memprint nilai yang terbaca padavariabel rd pada serial monitor. Selanjutnya kita membuat fungsi void loop()dimana kode dalam fungsi ini akan dieksekusi berulang.Selain itu kita beridelay selama 50ms setelah eksekusi. Setelah itu terdapat br = map(rd, 1, 255, 100, 2000);untuk menunjukkan tentang nilai rd, tentang but tegangan (1-255),dan rentang waktu (100-2000).Selain itu terdapat Serial.println(br); untuk memprint nilai variabel br pada serial monitor.Selanjutnya terdapat digitalWrite(LED, HIGH); menunjukkan LED hidup. delay(br); menunjukkan jeda waktu br ms setelah dieksekusi.digiralWrite(LED, LOW); menunjukkan LED mati dan terakhir delay(br);} menunjukkan jeda waktu br ms setelah dieksekusi.
5. Video Rangkaian [Kembali]
- Download File HTML klik disini
- Download Listing Program Master klik disini
- Download Listing Program Slave klik disini
- Download Video Simulasi klik disini
- Download Datasheet Arduino Uno klik disini
- Download Datasheet Potensiometer klik disini
- Download Datasheet BreadBoard klik disini
- Download Datasheet Resistor klik disini
- Download Datasheet LED klik disini
- Download Library Arduino UNO klik disini
No comments:
Post a Comment