- praktikan dapat menerapkan sebuah sistem menggunakan mikrokontroller.
- praktikan dapat mengkombinasikan berbagai macam output, akumulator, display, dan berbagai media output lainnya menjadi sebuah alat.
- praktikan dapat merancang suatu sistem menjadi sebuah alat.
A.Inter
Integrated Circuit (I2C)
nter Integrated Circuit
atau sering disebut I2C adalah standar komunikasi serial dua arah
menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data.
Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA
(Serial Data) yang membawa informasi data antara I2C dengan
pengontrolnya. Piranti yang dihubungkan dengan sistem I2C Bus dapat
dioperasikan sebagai Master dan Slave. Master adalah
piranti yang memulai transfer data pada I2C Bus dengan
membentuk sinyal Start, mengakhiri transfer data dengan
membentuk sinyal Stop, dan membangkitkan sinyal clock. Slave
adalah piranti yang dialamati master.
Cara Kerja Komunikasi I2C
Pada I2C, data
ditransfer dalam bentuk message yang terdiri dari kondisi start, Address Frame,
R/W bit, ACK/NACK bit, Data Frame 1, Data Frame 2, dan kondisi Stop.
Kondisi start
dimana saat pada SDA beralih dari logika high ke low sebelum SCL.
Kondisi stop dimana
saat pada SDA beralih dari logika low ke high sebelum SCL.
R/W bit berfungsi
untuk menentukan apakah master mengirim data ke slave atau meminta data dari
slave. (logika 0 = mengirim data ke slave, logika 1 = meminta data dari slave).
ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.
ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.
B.Light
Dependent Resistor (LDR)
Light Dependent Resistor atau disingkat dengan LDR adalah jenis Resistor yang nilai hambatan atau nilai resistansinya tergantung pada intensitas cahaya yang diterimanya. Nilai Hambatan LDR akan menurun pada saat cahaya terang dan nilai Hambatannya akan menjadi tinggi jika dalam kondisi gelap. Dengan kata lain, fungsi LDR (Light Dependent Resistor) adalah untuk menghantarkan arus listrik jika menerima sejumlah intensitas cahaya (Kondisi Terang) dan menghambat arus listrik dalam kondisi gelap.
Light Dependent Resistor atau disingkat dengan LDR adalah jenis Resistor yang nilai hambatan atau nilai resistansinya tergantung pada intensitas cahaya yang diterimanya. Nilai Hambatan LDR akan menurun pada saat cahaya terang dan nilai Hambatannya akan menjadi tinggi jika dalam kondisi gelap. Dengan kata lain, fungsi LDR (Light Dependent Resistor) adalah untuk menghantarkan arus listrik jika menerima sejumlah intensitas cahaya (Kondisi Terang) dan menghambat arus listrik dalam kondisi gelap.
Prinsip kerja LDR sangat sederhana
tak jauh berbeda dengan variable resistor pada umumnya. LDR dipasang pada
berbagai macam rangkaian elektronika dan dapat memutus dan menyambungkan aliran
listrik berdasarkan cahaya. Semakin banyak cahaya yang mengenai LDR maka nilai
resistansinya akan menurun, dan sebaliknya semakin sedikit cahaya yang mengenai
LDR maka nilai hambatannya akan semakin membesar. Naik turunnya nilai Hambatan
akan sebanding dengan jumlah cahaya yang diterimanya. Pada umumnya, Nilai
Hambatan LDR akan mencapai 200 Kilo Ohm (kΩ) pada kondisi gelap dan menurun
menjadi 500 Ohm (Ω) pada Kondisi Cahaya Terang.
LDR (Light Dependent Resistor) yang
merupakan Komponen Elektronika peka cahaya ini sering digunakan atau
diaplikasikan dalam Rangkaian Elektronika sebagai sensor pada Lampu Penerang
Jalan, Lampu Kamar Tidur, Rangkaian Anti Maling, Shutter Kamera, Alarm dan lain
sebagainya.
Bagian-bagian LDR:
Grafik respon LDR:
C. Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen
utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari
perusahaan Atmel.
Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang
menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa
menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer
ataupun perangkat lain.
Adapun spesifikasi dari Arduino Uno
ini adalah sebagai berikut :
Microcontroller
ATmega328P
|
Operating
Voltage
5
V
|
Input Voltage
(recommended)
7 – 12 V
|
Input Voltage
(limit)
6 – 20 V
|
Digital I/O
Pins
14 (of which 6 provide PWM output)
|
PWM Digital I/O
Pins
6
|
Analog Input
Pins
6
|
DC Current per I/O
Pin
20 mA
|
DC Current for 3.3V
Pin
50 mA
|
Flash
Memory
32
KB of which 0.5 KB used by bootloader
|
SRAM
2 KB
|
EEPROM
1 KB
|
Clock
Speed
16 MHz
|
POWER USB
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.
POWER JACK
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino.
Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino.
Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
Digunakan untuk mengulang program Arduino dari awal atau Reset.
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.
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.
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.
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.
LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
D.LCD (Liquid Crystal Display)g
Liquid Crystal Display (LCD) adalah
sebuah peralatan elektronik yang berfungsi untuk
menampilkan output sebuah sistem
dengan cara membentuk suatu citra atau gambaran pada sebuah layar. Secara garis
besar komponen penyusun LCD terdiri dari kristal cair (liquid crystal) yang
diapit oleh 2 buah elektroda transparan dan 2 buah filter polarisasi
(polarizing filter).
Gambar
Penampang komponen penyusun LCD
Keterangan:
1. Film dengan polarizing filter
vertical untuk memolarisasi cahaya yang masuk.
2. Glass substrate yang berisi
kolom-kolom elektroda Indium tin oxide (ITO).
3. Twisted nematic liquid crystal
(kristal cair dengan susunan terpilin).
4. Glass substrate yang berisi
baris-baris elektroda Indium tin oxide (ITO).
5. Film dengan polarizing filter
horizontal untuk memolarisasi cahaya yang masuk.
6. Reflektor cahaya untuk
memantulkan cahaya yang masuk LCD kembali ke mata pengamat.
Sebuah
citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel
yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah
memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol
tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan
data melalui pin-pin input yang sudah tersedia.
Kaki-Kaki
pada LCD
E.LED
LED adalah
suaatu semikonduktor yang memancarkan cahaya, LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan
arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan
mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya.
Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati
LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.
F.Resistor
Resistor merupakan komponen elektronik yang memiliki dua pin dan didesain untuk mengatur tegangan listrik dan arus listrik.Resistor digunakan sebagai bagian dari rangkaian elektronik
dan sirkuit elektronik, dan merupakan salah satu komponen yang paling sering
digunakan. Resistor dapat dibuat dari bermacam-macam komponen dan film, bahkan
kawat resistansi (kawat yang dibuat dari paduan resistivitas tinggi seperti nikel-kromium).Karakteristik
utama dari resistor adalah resistansinya dan daya listrik yang dapat dihantarkan. Karakteristik lain termasuk koefisien suhu,
derau
listrik (noise), dan induktansi.
G.Potensiometer
Potensiometer
adalah resistor tiga terminal dengan sambungan geser yang membentuk pembagi
tegangan dapat disetel.Jika hanya dua terminal yang digunakan (salah satu
terminal tetap dan terminal geser), potensiometer berperan sebagai resistor
variabel atau Rheostat. Potensiometer biasanya digunakan untuk mengendalikan
peranti elektronik seperti pengendali suara pada penguat. Potensiometer yang
dioperasikan oleh suatu mekanisme dapat digunakan sebagai transduser.
3.Komponen [kembali]
A.Arduino
B.LCDC.LED
D.Potensiometer
E.Resistor
4.Flowchart [kembali]
//MASTER
//SLAVE
5.Listing Program [kembali]
//MASTER
#include
#define SLAVE_ADDR 9
int analogPin [] = {2,1};
int val = 2;
int vel = 1;
void setup() {
Wire.begin();
Serial.begin(9600);
}
void loop() {
{ delay(50);
val = map(analogRead(2), 0,1023, 255, 1);
vel=map(analogRead(1), 0,1023, 255, 1);
}
Serial.println(val);
Serial.println(vel);
Serial.println(" ");
Wire.beginTransmission(SLAVE_ADDR);
Wire.write(val);
Wire.write(vel);
Wire.endTransmission();
}
//SLAVE
#include
#include
#define SLAVE_ADDR 9
LiquidCrystal lcd (2,3,4,5,6,7);
byte pin []={10,11};
int a,b;
int x,y;
void setup() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
lcd.begin(16,2);
Wire.begin(SLAVE_ADDR);
Wire.onReceive(receiveEvent);
Serial.begin(9600);
}
void receiveEvent(int howMany)
{
{
a=Wire.read();
b=Wire.read();
Serial.println(a);
Serial.println(b);
Serial.println(" ");
}
}
void loop() //Semua program dalam fungsi ini dieksekusi berulang
{
void receiveEvent();
{
while(0
a=Wire.read();
b=Wire.read();
}
x=map(a,1,255,1,255);
y=map(b,1,255,1,255);
}
{
if (x<=150 && y>=150)
{
digitalWrite(10,LOW);
digitalWrite(11,HIGH);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("SELAMAT PAGI");
lcd.setCursor(0,1);
lcd.print("Ayo Bangun");
delay(1000);
}
else if (x<=150 && y<=150){
digitalWrite(10,LOW);
digitalWrite(11,LOW);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("SELAMAT SIANG");
lcd.setCursor(0,1);
lcd.print("Ayo Kerja");
delay(1000);
}
else if (x>=150 && y<=150) {
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("SELAMAT SORE");
lcd.setCursor(0,1);
lcd.print("Ayo Pulang");
delay(10000);
}
else if (x>=150 && y>=150) {
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("SELAMAT MALAM");
lcd.setCursor(0,1);
lcd.print("Ayo tidur");
delay(1000);
}
}
}
7.Video Simulasi [kembali]
8.Gambar Alat [kembali]
9.Video Alat [kembali]
10.Analisa [kembali]
Pada
rangkaian modul empat ini merupakan kita
akan membuat rangkaian untuk simulasi untuk menghidup matikan lampu otomatis
ketika mendapatkan cahaya dari luar. Pada rangkaian ini kami menggunakan 2 buah
sensor LDR dimana berfungsi sebagai sensor dari cahaya tersebut. Kita akan
meletakkan 2 buah sensor tersebut di 2 bagian kiri dan kanan rumah. Pada
rangkaian ini intesitas cahaya sangat berpengaruh dalam menghidup matikan lampu
ini. Hasil pembacaan dari sensor LDR akan ditampilkan melalui hidup mati nya
lampu LED. Selain itu untuk menampilkan indicator dari cahaya apakah
pagi,siang,sore atau malam kita akan menampilkan melalui LCD. Rangkaian ini
juga menggunakan dua buah arduino yang bertindak sebagai master dan slave.
komunikasi antar arduino mengunakan komunikasi Inter Integrated
Circuit(I2C).
Ketika LDR menerima cahaya dengan
intesitas tinggi maka nilai resistansi LDR tersebut akan semakin kecil. akibatnya teganngan dan
arus yang dilewatkan LDR akan semakin besar. nilai tegangan yang dilewatkan
oleh LDR akan di inputkan pada kaki
analog arduino master. nilai yang
diterima oleh kaki analog arduino master masih dalam bentuk analog. karena
pengolahan data oleh mikroprosessor hanya bisa dalam bentuk digital, sehingga
pada kaki pin analog arduino telah dipasang ADC (analog digital converter) yang
berguna untuk mengubah data analog menjadi data digital.
nilai yang
dihasilkan oleh pin setelah dikonversi menjadi data digital adalah dengan
rentang 0 sampai 1023. pada proses pengiriman data, komunikasi hanya bisa
mengirimkan data 8 bit (1 byte) sehingga perlu mengubah nilai 0 sampai 1023
menjadi nilai dengan rentang 0 sampai 255 dengan proses mapping. pada rangkaian
ini nilai pembacaan pin A0 yaitu 0 sampai 1023 diubah menjadi nilai 255 sampai
1. hasil proses ini yaitu saat nilai yang terbaca A0 = 0, maka nilai mapping
yang dihasilkan adalah 255. saat nilai A0 meningkat, maka nilai hasil mapping
akan menurun sampai pada saat nilai A0 yang terbaca adalah 1023 akan
menghasilkan nilai mapping 1. nilai hasil mapping akan di beri label
"val"dan “vel”.
nilai "val"
dan “vel” yang merupakan hasil mapping akan dikirimkan oleh arduino master
kepada arduino slave menggunakan komunikasi I2C melalui pin SDA dan SCL ( pin
A4 dan pin A5). alamat pada slave yaitu SLAVE_ADDR dideklarasikan pada program
arduino mater. data dikirim dalam bentuk 8 bit
nilai
yang dikirimkan oleh arduino master akan diterima dan dibaca oleh arduino slave
dengan nama "a” dan “b". nilai a dan b (data yang dibaca oleh arduino
slave dari master) akan di mapping ke variabel "x" dan “y” namun
nilai mappingnya tetap sama. dengan kata lain nilai “x” dan “y” akan sama dengan nilai a dan b. jumlah LED
yang hidup dan situasi yang ditampilkan LCD dipengaruhi oleh nilai x dan y. Ketika nilai x dan y <= 150 lampu LED akan mati ,
sedangkan jika nilai x dan y >= 150 maka lampu LED akan hidup
11.Download [kembali]
Link download semua materi (proteus,arduino,flowchart,simulasi alat)
==DISINI==
Tidak ada komentar:
Posting Komentar