- Untuk memudahkan saat membuka tempat sampah tanpa harus menyentuhnya
- Mengetahui kapasitas sampah yang sudah terisi pada tempat sampah
- Mengajak untuk membuang sampah pada tempatnya
- LDR
- LED
- LCD
- Arduino
- Motor Servo
- Sensor Ultrasonik HC-SR04
- Buzzer
- Tempat Sampah
Arduino uno
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 |
BAGIAN-BAGIAN ARDUINO UNO
POWER 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.
Crystal Oscillator
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.
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.
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.
LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik
dengan baik.
BAGIAN-BAGIAN PENDUKUNG
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)
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.
Komunikasi UART
UART (Universal Asynchronous
Receiver-Transmitter) adalah bagian perangkat keras komputer yang menerjemahkan
antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit
terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port
serial perangkat periperal.
Cara Kerja Komunikasi UART
Gambar
3.2 Cara Kerja Komunikasi UART
Data
dikirimkan secara paralel dari data bus ke UART1. Pada UART1 ditambahkan start
bit, parity bit, dan stop bit kemudian dimuat dalam satu paket data. Paket data
ditransmisikan secara serial dari Tx UART1 ke Rx UART2. UART2 mengkonversikan
data dan menghapus bit tambahan, kemudia di transfer secara parallel ke data
bus penerima
A. Sensor
yang digunakan pada tempat sampah pintar
1. Sensor Infrared
Modul sensor infrared FC-51
merupakan sebuah sensor yang bekerja untuk mendeteksi adanya hambatan yang
berada didepan modul sensor. Modul sensor infrared FC-51 ini memiliki dua
bagian utama yang terdiri dari IR transmitter dan IR receiver. Fungsi dari IR
transmitter adalah bagian yang bertugas untuk memancarkan radiasi inframerah
kepada sebuah objek ataupun hambatan. Sedangkan IR receiver merupakan bagian
yang berfungsi untuk mendeteksi radiasi yang telah dipantulkan oleh objek yang
berasal dari IR transmitter. Pada bagian IR transmitter ini tampilannya sama
seperti LED pada umumnya, akan tetapi radiasi yang dipancarkan tidak dapat
terlihat oleh mata manusia.
Bagian-bagian dari modul sensor infrared FC-5.
Gambar
3.3 Bagian-bagian sensor infrared FC-5
Selain terdapat IR transmitter dan juga IR
receiver, Pada modul sensor infrared ini juga terdapat beberapa bagian yang
berupa potensiometer, IC LM393, LED Obstacle dan juga LED power.
Fitur :
- Ketika
ada hambatan, lampu indikator hijau akan menyala
- Output
level adalah digital output signal (LOW ketika mendeteksi hambatan)
- Jarak
pendeteksian adalah 2 cm samapai dengan 30 cm
- Sudut
pendeteksian adalah 35°
- Modul
ini menggunakan komparator LM393
- Rentang
jarak deteksi yang dapat disesuaikan melalui potensiometer. Ketika
potensiometer diputar searah jarum jam maka berfungsi untuk meningkatkan
jarak deteksi, dan apabila berlaanan arah jarum jam maka berfungsi
mengurangi jarak deteksi.
Spesifikasi :
- Tegangan
kerja 3-5 V DC
- Konsumsi
arus pada 3,3V = 23 mA dan pada 5V = 43mA
- Ukuran
board 3.2 x 1,4cm
- Lubang
sekrup 3mm
Grafik Respon Sensor
Infrared
Gambar 3.4 Grafik respon sensor infrared
Grafik menunjukkan hubungan antara resistansi dan jarak potensial untuk
sensitivitas rentang antara pemancar dan penerima inframerah. Resistor yang
digunakan pada sensor mempengaruhi intensitas cahaya inframerah keluar dari pemancar.
Semakin tinggi resistansi yang digunakan, semakin pendek jarak IR Receiver yang
mampu mendeteksi sinar IR yang dipancarkan dari IR Transmitter karena
intensitas cahaya yang lebih rendah dari IR Transmitter. Sementara semakin
rendah resistansi yang digunakan, semakin jauh jarak IR Receiver mampu
mendeteksi sinar IR yang dipancarkan dari IR Transmitter karena intensitas
cahaya yang lebih tinggi dari IR Transmitter.
2. Sensor
Ultrasonic
Sensor ultrasonik adalah sebuah sensor yang berfungsi untuk mengubah
besaran fisis (bunyi) menjadi besaran listrik dan sebaliknya. Cara kerja sensor
ini didasarkan pada
prinsip dari pantulan suatu gelombang suara sehingga dapat dipakai untuk
menafsirkan eksistensi (jarak) suatu benda dengan frekuensi tertentu. Disebut
sebagai sensor ultrasonik karena sensor ini menggunakan gelombang ultrasonik
(bunyi ultrasonik). Gelombang ultrasonik adalah gelombang bunyi yang mempunyai
frekuensi sangat tinggi yaitu 20.000 Hz. Bunyi ultrasonik tidak dapat di dengar
oleh telinga manusia.Bunyi ultrasonik dapat didengar oleh anjing, kucing,
kelelawar, dan lumba-lumba. Bunyi ultrasonik nisa merambat melalui zat padat,
cair dan gas. Reflektivitas bunyi ultrasonik di permukaan zat padat hampir sama
dengan reflektivitas bunyi ultrasonik di permukaan zat cair. Akan tetapi,
gelombang bunyi ultrasonik akan diserap oleh tekstil dan busa.
Gambar 3.5 Sensor ultrasonic HC-SR04
Prinsip Kerja Sensor
Sinyal
dipancarkan oleh pemancar ultrasonik dengan frekuensi tertentu dan dengan
durasi waktu tertentu. Sinyal tersebut berfrekuensi diatas 20kHz. Untuk
mengukur jarak benda (sensor jarak), frekuensi yang umum digunakan adalah
40kHz.
Sinyal
yang dipancarkan akan merambat sebagai gelombang bunyi dengan kecepatan sekitar
340 m/s. Ketika menumbuk suatu benda, maka sinyal tersebut akan dipantulkan
oleh benda tersebut.
Setelah gelombang
pantulan sampai di alat penerima, maka sinyal tersebut akan diproses untuk
menghitung jarak benda tersebut. Jarak benda dihitung berdasarkan rumus : S =
340.t/2 dimana S merupakan jarak antara sensor ultrasonik dengan benda (bidang
pantul), dan t adalah selisih antara waktu pemancaran gelombang oleh
transmitter dan waktu ketika gelombang pantul diterima receiver.
Karakteristik HC-SR04
1. Tegangam sumber operasi tunggal 5.0 V
2. Frekuensi operasi 40 kH
3. Minimum pendeteksi jarak 2cm
4. Maksimum pendeteksi jarak 4 m
5. Akurasi 5 mm
6. Memiliki 4 pin : Pin Vcc, Gnd, Trigger, dan Echo.
Pin Vcc untuk listrik positif dan Gnd untuk groundnya.
Pin Trigger untuk trigger keluarnya sinyal dari sensor dan pin Echo untuk
menangkap sinyal pantul dari benda.
Gambar 3.6 Pin pada sensor HC-SR04
Kurva Waktu
Gambar 3.7 Kurva waktu HC-SR04
HC-SR04 memerlukan sinyal logika ‘1’ pada pin Trig dengan durasi waktu 10
mikrodetik (us) untuk mengaktifkan rentetan (burst) 8x40KHz gelombang
ultrasonik
pada elemen Pembangkitnya. Selanjutnya
pin Echo akan berlogika ‘1’ setelah rentetan
8×40 KHz tadi, dan otomatis akan berlogika ‘0’ saat gelombang pantulan diterima
oleh
elemen Pendeteksi gelombang ultrasonik.
Grafik Sensor
Ultrasonik
Gambar 3.8 Grafik Sensor Ultrasonik
Pada grafik diatas terlihat bahwa hasil pengukuran sensor ultrasonik ini
tidak linier. Hasil pengukuran ini tidak linier ini disebabkan karena sensor
ini sangat peka terhadap perubahan sudut pantulan. Sedikit saja posisi sudut
sensor dengan halangan didepannya bergeser, maka tegangan output akan
berkurang.
B. Aktuator
dan output pada tempat sampah pintar
1.
Motor Servo
Motor servo
merupakan perangkat yang terdiri dari motor DC, serangkaian gear, rangkaian
kontrol dan potensiometer. Serangkaian gear yang melekat pada poros motor DC
akan memperlambat putaran poros dan meningkatkan torsi motor servo, sedangkan
potensiometer dengan perubahan resistansinya saat motor berputar berfungsi
sebagai penentu batas posisi putaran poros motor servo. Sedangkan sudut dari
sumbu motor servo diatur berdasarkan lebar pulsa yang dikirim melalui kaki
sinyal dari kabel motor servo. Bentuk Fisik Motor Servo dapat dilihat pada Gambar 3.9
Gambar 3.9 Bentuk Fisik dan Simbol
Motor Servo
Prinsip kerja
motor servo hampir sama dengan motor DC yang lain. Hanya saja motor ini dapat
bekerja searah maupun berlawanan jarum jam mulai dari gerakan 0 derajat, 90
derajat, 180 derajat, hingga 360 derajat. Derajat putaran dari motor servo juga
dapat dikontrol dengan mengatur pulsa yang masuk ke dalam motor tersebut.
Motor servo akan
bekerja dengan baik apabila pin kontrolnya diberikan sinyal PWM dengan
frekuensi (f) 50 Hz atau dengan periode (t) 20 ms. Frekuensi tersebut dapat
diperoleh ketika kondisi Ton duty cycle berada di angka 1,5 ms. Dalam posisi
tersebut rotor dari motor berhenti tepat di tengah-tengah (0°) atau netral.
Pada saat kondisi Ton duty cycle kurang dari angka 1,5 ms, maka rotor akan
berputar berlawanan arah jarum jam. Sebaliknya pada saat kondisi Ton duty cycle
lebih dari angka 1,5 ms, maka rotor akan berputar searah jarum jam seperti
diperlihatkan pada Tabel.
2.
Buzzer
Buzzer adalah
sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik
menjadi getaran suara getaran listrik menjadi getaran suara. Pada dasarnya
prinsip kerja buzzer hampir sama dengan loudspeaker, jadi buzzer juga terdiri
dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut
dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke
dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena
kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan
diafragma secara bolak-balik sehingga membuat udara bergetar yang akan
menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah
selesai atau terjadi suatu kesalahan pada sebuah alat (alarm).
Gambar 3.10 Buzzer
3.
LCD 16x2
LCD
(Liquid Crystal Display) adalah suatu jenis media tampil yang menggunakan
kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang
misalnya alal–alat elektronik seperti televisi, kalkulator, atau pun layar
komputer. Pada postingan aplikasi LCD yang dugunakan ialah LCD dot matrik
dengan jumlah karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang
nantinya akan digunakan untuk menampilkan status kerja alat.
Gambar 3.11 LCD 16x2
Fitur LCD 16 x 2 :
a. Terdiri dari 16
karakter dan 2 baris.
b. Mempunyai 192
karakter tersimpan.
c. Terdapat
karakter generator terprogram.
d. Dapat dialamati
dengan mode 4-bit dan 8-bit.
e. Dilengkapi
dengan back light.
Spesifikasi Kaki
LCD 16 x 2
Pin Deskripsi
1 Ground
2 Vcc
3 Pengatur kontras
4 “RS”
Instruction/Register Select
5 “R/W” Read/Write LCD
Registers
6 “EN” Enable
7-14
Data I/O Pins
15 Vcc
16 Ground
Cara Kerja LCD
Secara Umum
Pada
aplikasi umumnya RW diberi logika rendah “0”. Bus data terdiri dari 4-bit atau
8-bit. Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7.
Sebagaimana terlihat pada table diskripsi, interface LCD merupakan sebuah
parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan
dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang
8-bit dikirim ke LCD secara 4-bit atau 8 bit pada satu waktu. Jika mode 4-bit
yang digunakan, maka 2 nibble data dikirim untuk membuat sepenuhnya 8-bit
(pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap
nibblenya). Jalur kontrol EN digunakan untuk memberitahu LCD bahwa
mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program
harus menset EN ke kondisi high “1” dan kemudian menset dua jalur kontrol
lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus.
Saat
jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat
(tergantung pada datasheet LCD), dan set EN kembali ke high “1”. Ketika jalur
RS berada dalam kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai
sebuah perintah atau instruksi khusus (seperti bersihkan layar, posisi kursor
dll). Ketika RS dalam kondisi high atau “1”, data yang dikirimkan adalah data
ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf “A” pada
layar maka RS harus diset ke “1”. Jalur kontrol R/W harus berada dalam kondisi
low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada
dalam kondisi high “1”, maka program akan melakukan query (pembacaan) data dari
LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD),
lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang
menggunakan LCD, R/W selalu diset ke “0”. Jalur data dapat terdiri 4 atau 8
jalur (tergantung mode yang dipilih pengguna), DB0, DB1, DB2, DB3, DB4, DB5, DB6
dan DB7. Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode
operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode
operasi merupakan hal yang paling penting.
Mode
8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah
aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin
untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk
kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau
instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di
set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau
ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke
LCD atau status eksekusi dari instruksi terakhir yang dibaca
4.
LED
Light Emitting
Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat
memancarkan cahaya monokromatik ketika diberikan tegangan maju. LED
merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna
Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan semikonduktor yang
dipergunakannya.
Gambar 3.12
Bentuk dan simbol LED
//Master
#include <LiquidCrystal.h>
LiquidCrystal lcd(5,6,7,8,9,10);
//buka
otomatis
int ir_sensor = 4;
//info
kapasitas
int trigger =3;
int echo =2;
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
//buka
otomatis
pinMode(ir_sensor,INPUT);
//info
kapasitas
pinMode (trigger, OUTPUT);
pinMode (echo, INPUT);
}
void loop() {
lcd.setCursor(0,0);
lcd.print("Buanglah Sampah");
lcd.setCursor(0,1);
lcd.print("Pada Tempatnya:)");
//buka
otomatis
int baca;
baca = digitalRead(ir_sensor);
if (baca==HIGH)
{
Serial.print("1");
}
if (baca==LOW)
{
Serial.print("2");
}
//info
kapasitas
int durasi, jarak;
digitalWrite (trigger, HIGH);
delay (1);
digitalWrite (trigger, LOW);
durasi = pulseIn (echo, HIGH);
jarak = (durasi/2) /29.1; //jarak dalam cm
if (jarak >= 51 && jarak
<=75){
//penuh
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Tempat sampah");
lcd.setCursor(0,1);
lcd.print("sudah penuh");
Serial.print("3");
delay (2000);
}
else if
(jarak >= 26 && jarak <=50){
//setengah
Serial.print("4");
delay (2000);
}
else if
(jarak >= 0 && jarak <=25){
//sedikit
Serial.print("5");
delay (2000);
}
}
Slave:
//Slave
#include <Servo.h>
//buka
otomatis
Servo putaran_servo;
int servo =5;
//info
kapasitas
int buzzer =6;
int ledhijau=4;
int ledkuning=3;
int ledmerah=2;
void setup(){
Serial.begin(9600);
//buka otomatis
putaran_servo.attach(servo);
//info
kapasitas
pinMode (ledhijau, OUTPUT);
pinMode (ledkuning, OUTPUT);
pinMode (ledmerah, OUTPUT);
pinMode (buzzer, OUTPUT);
}
void loop(){
//buka
otomatis
if (Serial.available() > 0)
{
int data = Serial.read();
if (data=='1')
{
putaran_servo.write(90);
}
if (data=='2')
{
putaran_servo.write(180);
}
//info
kapasitas
if (data=='3'){
//penuh
digitalWrite (buzzer, HIGH);
digitalWrite (ledhijau, LOW);
digitalWrite (ledkuning, LOW);
digitalWrite (ledmerah, HIGH);
}
else if
(data=='4'){
//setengah
digitalWrite (buzzer, LOW);
digitalWrite (ledhijau, LOW);
digitalWrite (ledkuning, HIGH);
digitalWrite (ledmerah, LOW);
}
else if
(data=='5'){
//sedikit
digitalWrite (buzzer, LOW);
digitalWrite (ledhijau, HIGH);
digitalWrite (ledmerah, LOW);
digitalWrite (ledkuning, LOW);
}
else{
digitalWrite (buzzer, LOW);
digitalWrite (ledhijau, HIGH);
digitalWrite (ledkuning, HIGH);
digitalWrite (ledmerah, HIGH);
}
delay (100);
}
}
Rangkaian tempat sampah ini menggunakan
sensor infrared dan ultrasonic. Sensor infrared digunakan untuk mendeteksi
hambatan. Jika sensor mendeteksi adanya hambatan maka sensor akan mengirimkan
sinyal berlogika LOW ke arduino uno yang bertindak sebagai master. Arduino yang
bertindak sebagai master ini akan mengirimkan informasi menggunakan komunikasi
UART ke arduino uno yang bertindak sebagai slave. Lalu Arduino ini akan memutar
servo 90ยบ sehingga tempat sampah akan tebuka. LCD berguna untuk menampilkan
“Buanglah Sampah Pada tempatnya”. Sensor ultrasonic berfungsi untuk mengukur
kapasitas dari tempat sampah ini yang di lihat dari tinggi sampah yang berada
dalam tempat sampah. Pada saat tinggi sampah di bawah 25 maka LED hijau akan
hidup, saat 26-50 maka LED kuning yang akan hidup, dan saat 51-lebih maka LED
merah akan menyala dan LCD akan menampilkan “Tempat Sampah Sudah Penuh”. Pembacaan
yang di hasilakan sensor ultrasonic akan di kirm ke Arduino master yang akan
menginformasikan ke Arduino slave melalui komunikasi UART.
Untuk mendownload file yang ada diatas, silakan gunakan link berikut :
Rangkaian simulasi Click Here
Video Simulasi Click Here
Tidak ada komentar:
Posting Komentar