Laporan Percobaan3
2.1 jumper
kabel
jumper
Kabel jumper adalah kabel elektrik
yang memiliki pin konektor di setiap ujungnya dan memungkinkanmu untuk
menghubungkan dua komponen yang melibatkan Arduino tanpa memerlukan solder.
Intinya kegunaan kabel jumper ini adalah sebagai konduktor listrik untuk
menyambungkan rangkaian listrik. Biasanya kabel jamper digunakan pada
breadboard atau alat prototyping lainnya agar lebih mudah untuk mengutak-atik
rangkaian.
Jenis jenis kabel jumper yang paling
umum adalah sebagai berikut:
Kabel Jumper Male to Male
Jenis yang pertama adalah kabel
jumper male male. Kabel jumper male to male adalah adalah jenis yang sangat
yang sangat cocok untuk kamu yang mau membuat rangkaian elektronik di breadboard.
Kabel Jumper Male to Female
Kabel jumper male female memiliki
ujung konektor yang berbeda pada tiap ujungnya, yaitu male dan female.Biasanya
kabel ini digunakan untuk menghubungkan komponen elektronika selain arduino ke
breadboard
Kabel Jumper Female to Female
Jenis kabel jumper yang terakhir
adalah kabel female to female. Kabel ini sangat cocok untuk menghubungkan antar
komponen yang memiliki header male
2.2 Breadboard
Project Board/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. Umumnya breadboard terbuat dari bahan plastik yang juga sudah terdapat berbagai
lubang. Lubang tersebut sudah diatur sebelumnya sehingga membentuk pola yang
didasarkan pada pola jaringan di dalamnya. Selain itu, breadboard yang bisa
ditemukan di pasaran umumnya dibagi menjadi 3 ukuran. Pertama dinamakan sebagai
mini breadboard, kedua disebut medium breadboard, dan yang terakhir dinamakan
sebagai large breadboard.
2.3 kabel USB
Kabel
USB
Kabel Data Mini USB ini biasa digunakan sebagai kabel untuk transfer data antar
dua perangkat dan sebagai kabel untuk pemrograman Arduino yang memiliki soket
Mini USB seperti Arduino uno standar.
2.4. arduino
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++. Terdapat arduino IDE
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.5 potensiometer
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.
2.6 RESISTOR
Resistor merupakan komponen penting dan
sering dijumpai dalam sirkuit Elektronik. Boleh dikatakan hampir setiap sirkuit
Elektronik pasti ada Resistor. Tetapi banyak diantara kita yang bekerja di
perusahaan perakitan Elektronik maupun yang menggunakan peralatan Elektronik tersebut
tidak mengetahui cara membaca kode warna ataupun kode angka yang ada ditubuh
Resistor itu sendiri. Seperti yang dikatakan sebelumnya, nilai Resistor yang
berbentuk Axial adalah diwakili oleh Warna-warna yang terdapat di tubuh (body)
Resistor itu sendiri dalam bentuk Gelang. Umumnya terdapat 4 Gelang di tubuh
Resistor, tetapi ada juga yang 5 Gelang.
Gelang warna Emas dan Perak biasanya terletak
agak jauh dari gelang warna lainnya sebagai tanda gelang terakhir. Gelang
Terakhirnya ini juga merupakan nilai toleransi pada nilai Resistor yang
bersangkutan.
Tabel dibawah ini adalah warna-warna yang terdapat di
Tubuh Resistor :
Cara menghitung nilai resistor 4 gelang
Masukkan angka langsung dari kode warna Gelang ke-1 (pertama)
Masukkan angka langsung dari kode warna Gelang ke-2
Masukkan Jumlah nol dari kode warna Gelang ke-3 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 nol dibelakang angka gelang ke-2; atau kalikan 105
Gelang ke 4 : Perak = Toleransi 10%
Maka nilai Resistor tersebut adalah 10 * 105 = 1.000.000 Ohm atau 1 MOhm dengan toleransi 10%.
Cara Menghitung Nilai Resistor 5 Gelang Warna
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%.
2.7 LED
LED
(Light Emitting Diode) adalah Sebuah lampu kecil yang digunakan sebagai
penanda atau pointer. Light Emitting Diode adalah salah satu komponen
elektronika yang terbuat dari bahan semi konduktor jenis dioda yang
mempu mengeluarkan cahaya. Strukturnya juga sama dengan dioda, tetapi
pada LED elektron menerjang sambungan P-N (Positif-Negatif). Untuk
mendapatkan emisi cahaya pada semikonduktor, doping yang pakai adalah
galium, arsenic dan phosporus. Jenis doping yang berbeda menghasilkan
warna cahaya yang berbeda pula.
Pada percobaan ini kita menggunakan beberapa komponen diantaranya yaitu ada arduino, breadboard, LED, resistor, jumper, laptop, kabel usb dan potensiometer. Pada arduino master pin A0 dihubungkan dengan output potensiometer, lalu pin 5V dihubungkan dengan kaki pertama pada potensiometer dan pin ground master dan slave dihubungkan dengan kaki ketiga potensiometer.lalu pin transmiter master dihubungkan dengan receiver slave dan sebaliknya receiver master dihubungkan dengan transmiter slave, selanjutnya pada arduino slave pin 13 dihubungkan dengan resistor dan kaki anoda LED sedangkan kaki katoda dihubungkan dengan ground. Untuk prinsip kerja nya yaitu saat program master dan slave sudah diupload pada masing masing arduino, maka tegangan yang dikeluarkan oleh potensiometer akan mengalir menuju pin A0 master. Lalu tegangan yang masuk tersebut akan diproses oleh ADC. Setelah diproses maka pin transmiter akan mengirimkan hasil prosesan tersebut ke pin receiver slave, kemudian slave akan mengerjakan perintah dari master sehingga LED akan menyala, lalu lama hidup mati (kedipan) LED dapat diatur dengan menggunakan potensiometer.
Listing program master
//MASTER
#include <Wire.h>
#define MASTER_ADDR 9
int analogPin = 0;
int val = 0;
void setup() {
Wire.begin();
}
void loop() {
delay(50);
val = map(analogRead(analogPin), 0, 1023, 255, 1);
Wire.beginTransmission(MASTER_ADDR);
Wire.write(val);
Wire.endTransmission();
}
Untuk penjelasan program nya yaitu pertama tama kita include dulu library wire.h, deklarasikan MASTER_ADDR 9, lalu ada variabel analogPin dan val dengan tipe data integer. Selanjutnya ada fungsi void setup dimana pada fungsi ini semua kode akan dijalankan sekali, dalam fungsi ini terdapat wire.begin dimana Fungsi ini menginisialisasi perpustakaan Wire dan bergabung dengan bus I2C sebagai pengontrol atau periferal. Fungsi ini biasanya dipanggil hanya sekali.
Lalu ada fungsi void loop dimana dalam fungsi ini semua kode akan dijalankan secara berulang. Dalam fungsi ini ada syntaks "val = map(analogRead(analogPin), 0, 1023, 255, 1)" fungsinya yaitu pin analog akan membaca nilai yang masuk, nilai yang masuk ini kemudian akan diproses oleh ADC sehingga didapat nilai ADC dalam rentang 0-1023, kemudian nilai ADC ini akan dikonversi kerentang 1-255. Lalu ada wire.begintransmision, fungsi ini memulai transmisi ke perangkat periferal I2C dengan alamat yang diberikan. Lalu wire.write(val), fungsi ini menulis data yang terdapat pada fungsi val sebelumnya sebagai tanggapan atas permintaan dari perangkat pengontrol, terakhir ada wire.endtransmision, Fungsi ini mengakhiri transmisi ke perangkat periferal yang dimulai oleh beginTransmission()dan mentransmisikan byte yang diantrekan oleh write()
Listing program slave
//SLAVE
#include <Wire.h>
#define SLAVE_ADDR 9
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);
if(rd==1)
{
digitalWrite(LED, HIGH);
}
if(rd==255)
{
digitalWrite(LED, LOW);
}
}
Untuk penjelasan program nya yaitu pertama tama kita include dulu library wire.h, deklarasikan SLAVE_ADDR 9, lalu ada variabel LED, rd, br dengan tipe data integer dimana LED disini dihubungkan dengan pin 13.Selanjutnya ada fungsi void setup dimana pada fungsi ini semua kode akan dijalankan sekali, lalu dalam fungsi ini kita mendeklarasikan LED sebagai output, lalu ada syntaks wire.begin dimana Fungsi ini menginisialisasi perpustakaan Wire dan bergabung dengan bus I2C sebagai pengontrol atau periferal. Wire.onReceive(receiveEvent), fungsi ini mendaftarkan fungsi yang akan dipanggil saat perangkat periferal menerima transmisi dari perangkat pengontrol. Selanjutnya ada Serial.begin(9600), yaitu kecepatan pengiriman data menggunakan port serial, Serial.println("I2C Slave demo"); yaitu mencetak data I2C Slave demo ke port serial. Lalu variabel rd akan membaca data yang masuk dari arduino master dan mencetaknya menggunakan port serial.
Selanjutnya ada fungsi void loop dimana dalam fungsi ini semua kode akan dijalankan secara berulang, dalam fungsi ini ada percabangan dimana jika rd membaca nilai 1 maka LED berada dalam kondisi high sehingga akan menyala sedangkan jika rd membaca nilai 255 maka LED berada dalam kondisi low sehingga LED tikan menyala
1 Analisa pengaruh baudrate pada komunikasi I2C, dan apakah pada komunikasi I2C baudrate dapat dihilangkan
Jawab
Pengaruh baudrate pada komunikasi I2C yaitu untuk menentukan kecepatan dan penerimaan data melalui port serial. Dan apakah pada komunikasi I2C baudrate dapat dihilangkan, jawabannya adalah bisa karena I2C memiliki kelebihan salah satunya yaitu tidak diperlukan setting baudrate
2. Analisa pengaruh "SLAVE_ADDR 9" jika nilai 9 pada slave divariasikan
Jawab
Jika nilai 9 pada slave divariasikan maka output yang dihasilkan yaitu LED nya tidak akan menyala karena nilai SLAVE_ADDR nya berbeda dengan nilai MASTER_ADDR, dimana slave_ADDR ini fungsinya sama dengan baudrate pada komunikasi UART (harus disetting nilainya sama antara master dan slave)
3. Analisa pengaruh potensiometer terhadap output yang dihasilkan pada master dan slave
Jawab:
Pengaruh potensiometer terhadap output yaitu potensiometer ini dapat digunakan untuk mengatur cepat atau lambatnya hidup mati LED tergantung pada program yang digunakan, dan potensiometer juga bisa digunakan untuk mengatur LED dalam kondisi hidup atau mati yaitu dengan menggunakan percabangan if dimana jika potensiometer bernilai 1 maka LED (kondisi) dan jika potensiometer bernilai 255 LED (kondisi)
kondisi = HIGH or LOW
4. Analisa alasan menggunakan program "val=map(analogRead (analogpin),0,1023,255,1)"
Jawab:
Karena pada arduino master pin analog(A0) dihubungkan dengan potensiometer dan nilai dari potensiometer akan masuk ke pin A0 arduino master, dimana pin A0 ini adalah ADC yang memiliki rentang nilai 0-1023, lalu nilai potensiometer akan dikonversi ke rentang ADC, kemudian nilai ADC akan dikonversi ke rentang 1-255.
Kesimpulan nya yaitu, alasan menggunakan program "val=map(analogRead (analogpin),0,1023,255,1)" karena kita harus merubah rentang nilai 0-1023 ke rentang 1-255 untuk dapat menghasilkan output
Tidak ada komentar:
Posting Komentar