BAB Complete
BAB Complete
PENDAHULUAN
Elektronika adalah suatu ilmu yang tidak pernah ada batas akhir dalam suatu
berbagai inovasi dalam menciptakan sebuah mesin ,alat atau robot yang membantu
tinggi. Alat–alat yang dibuat tersebut memiliki berbagai macam kegunaannya sesuai
dengan kebutuhan dari manusia itu sendiri. Salah satu contoh alat yang meringankan
tugas manusia dalam hal ini berhubungan dalam kehidupan manusia adalah Rancang
bangun alat pembuka dan penutup tong sampah otomatis. Metode yang digunakan
untuk mendeteksi keberadaan obyek ini adalah metode rancang bangun yang terdiri
dari beberapa tahap yaitu, (1)Analisa kebutuhan, (2) Perancangan, (3) Implementasi
rangkaian. Alat ini memiliki pembacaan data jarak sensor ultrasonik didapat rata-rata
tingkat ketelitian sebesar 99,55%. Alat ini mendeteksi objek pada tong sampah
1
Lhokseumawe. Itu dikarenakan peningkatan mahasiswa terlalu banyak dan terjadi
Terinspirasi dari alat pembuka dan penutup tong sampah otomatis dan
permasalahan yang ada penulis ingin merancang suatu alat untuk penelitian proyek
terindikasi penuh, maka akan ada pemberitahuan kepada penanggung jawab atau
otoritas agar sampah segera di angkat oleh petugas kebersihan Politeknik Negeri
untuk menciptakan sebuah alat yang dapat membantu dan mengatasi permasalahan,
yaitu:
penampungan sampah.
2
1.3 Batasan Masalah
Berdasarkan uraian yang terdapat dalam latar belakang, maka dapat dibatasi
Dari latar belakang dan perumusan masalah yang ada, maka tujuan penulisan
tugas akhir ini adalah menghasilkan sebuah Rancang bangun system monitoring
informasi edukasi.
3
1.6 Metode Penulisan
sebagai berikut:
dan lain-lain.
Agar pembahas pada tugas akhir ini terperinci dan terarah maka penulisan
BAB I : PENDAHULUAN
4
BAB II : :DASAR TEORI
Atmega 32.
32.
5
BAB II
TINJAUAN PUSTAKA
jurnal ilmiah dengan judul Tempat Sampah Pintar (Smart Trash Bin). Pada penelitian
ini sensor yang digunakan adalah sensor ultrasonik dan penelitian ini juga dilengkapi
dengan modul perekam suara ISD 1760 yang di kontrol oleh Arduino Uno.
Febyan Dimas Pramanta (2016). Dalam bentuk jurnal ilmiah dengan judul
Tempat Sampah Pembentuk Karakter Anak Bangsa. Pada penelitian ini sensor yang
(Arduino Mega).Pada proyek akhir ini, penulis ingin mengembangkan suatu alat
plester otomatis menjadi alat pengecat dinding, hal ini penulis ingin membuat alat
yang berjudul “
Yoreza hamit butar butar (2017).Dalam bentuk jurnal ilmiah dengan judul
mikrokontroler AT mega 328. Pada penelitian ini sensor yang digunakan adalah
sensor HC-SR04 (ultrasonik), berguna untuk membuka dan menutup tong sampah
6
Maka dari itu kami ingin mengembangkan hasil proyek sebelumnya dengan
Atmel AVR adalah salah satu jenis mikrikontroller yang sering digunakan
RISC (Reduce Instructiion set Computing) delapan bit, dimana semua instruksi
dikemas dalam kode 16-bit (16 bits word) dan sebagai besar instruksi dieksekusi
Nama AVR sendiri berasal dari “Alf (Egil Bogen) and Vegard (wollan)’s
Riscprocessor” dimana Alf Egil Bogen dan Vegard Wollan adalah adalah dua
kali dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute
7
AVR dibagi menjadi beberapa varian yaitu AT90Sxx,Atmega, dan AT86RFxx. Pada
(assembly) dan high level language (C, Basic, Pascal, JAVA, dan lain-lain)
tergantung compiler yang digunakan. Salah satu yang banyak di jumpai pasaran
yaitu:ATmega8535,ATmega16,ATmega162,ATmega32,ATmega324P,ATmega644,
ATmega 644P dan ATmega merupakan sebuah mikrokontroller low power CMOS 8
sebagai berikut
32 x 8 register umum
Kb SRAM
1 Kb In-System EEPROM
8
Master/Slave Serial Interface
On – Chip Oscillator
32 Bi-directional I/O
umum. Semua register tersebut langsung terhubung dengan Arithmetic logic Unit
(ALU) yang memungkinkan 2 register terpisah diproses dengan satu perintah tunggal
dalam satu clock cycle. Hal ini meghasilkan kode yang efektif dan kecepatan
9
a) Pin 1 sampai 8 (port B) merupakan port paralel 8 bit dua arah
feature.
b) Pin 9 (riset) jika terdapat minimum pulse pada saat active low.
spesial feature.
i) Pin 30 adalah Avcc pin penyuplai daya untuk port A dan A/D converter
hubungkan ke Vcc.
j) Pin 32 adalah A REF pin yanag berfungsi sebagai referensi untuk pin
10
k) Pin 33 sampai 40 (port A) adalah 8 bit dua arah (bi-directional I/O) port
bahasa tingkat tinggi yaitu bahasa C. Bahasa yang digunakan memiliki keunggulan
bahasa assembler dapat ditulis dengen mengunakan text editor setelah itu dapat di
11
kompilasi dengen tool tertentu misalnya asm51 untuk MCS51 dan AVR studio untuk
AVR.
atau jalur bus bagi memori program dipisahkan dengen memori data. Memori
yang terpisah. Memori data terbagi menjadi 3 bagian yaitu 32 register umum, 62 buah
register I/O,dan 512 byte SRAM internal. Register untuk keperluan umum menempati
space data pada alamat terbawah yaitu $00 sampai $5F. Register merupakan register
12
yang khusus digunakan untuk mengatur fungsi terhadap berbagai mikrokontroller
dan sebagainya. Register khususnya alamat memori secara lengkap dapat dilihat pada
tabel dibawah. Alamat memori berikut digunakan untuk SRAM 512 byte, yaitu pada
Memori program yang terletak pada flas perom tersusun dalam word atau 2
byte karena setiap instruksi memiliki lebar 16 bit atau 32. AVR ATmega memiliki 4
Kbyte x 16 bit flash perom dengen alamat mulai dari $000 sampai $FFF. AVR
tersebut memiliki 12 bit program Counter (PC) sehingga mampu mengalamati isi
Flash.
13
Gambar 2.5 Memori program AVR ATMega 32
Selaian itu AVR ATmega 32 juga memiliki memeori data berupa EEPROM
8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF.
Status register adalah register berisi status yang dihasilkan pada setiap
operasi yang di lakukan ketika suatu intruksi dieksekusi. SREG merupakan bagian
14
1. Bit 7 → I (Global Interrup Enable),Bit harus diset untuk mengeble semua
jenis interupsi.
sebagai sumber atau tujuan operasi bit. Suatau register GPR dapat disalin ke bit T
mengunakan intruksi BST, dan sebaliknya bit T dapat di salin kembali kesuatu bit
5. Bit 3→V (two’s Componet Overlow Flag). Bit ini berfungsi untuk
6. Bit 2→N (Negative Flag) Flag N akan menjadi set, jika suatu operasi
7. Bit 1→ Z (Zero Flag) bit akan menjadi set apabila hasil operasi
8. Bit 0→ (Cary Flag) bit akan menjadi set apabila hasil suatu operasi
menghasilkan carrry
pendidikan. Banyak varian dan type dari mikrokontroller yang dipelajari dan
15
digunakan di dunia pendidikan. Salah satu varian yang banyak di pelajari dan
digunakan adalah produk dari ATMEL dengen type AVR. Banyak software yang
32, dengen bahasa pemograman masing-masing. Salah satu bahasa pemograman yang
dikembangkan atau digunakan dunia pendidikan adalah bahasa C dengen struktur dan
(bahasa assembly/bahasa mesin) sampai dengen bahasa tingkat tinggi (salah satunya
bahasa C). Bagi mikrokontroller bahasa yang mudah untuk di terjemahkan bagi
tingkat tinggi merupakan bahasa yang sulit diterjemahkan oleh prosesor yang ada di
programmer. Bahasa C memiliki struktur pemograman yang khusus, selain itu bahasa
C memiliki sifat case sensitive. Artinya tersebut adalah bahwa penulisan kata/word
program sangat sensitif dengen mendeteksi perbedaan pada suatu kata yang
dibuat.
dalam program yang dibuat. Pengunaan type data ini juga harus sesuai kebutuhan
dan disesuaikan dengen fungsi setiap data. Pemilih penguna type data dapat
16
mempengaruhi besarnya memory file yang dibuat. Berikut daftar type data yang
Tabel 2.1 Daftar type data yang dapat digunakan dalam pemograman bahasa C
Penggunaan type data bersama dengen variable data yang akan digunakan.
Bit data_1; terdapat variabel dengen nama data_1 dengen type data bit
Bit data_2; terdapat variable dengen nama data_2 dengen type data integer
17
Selain tipe data, bahasa C memiliki struktur penulisan akan simbol–simbol
bahasa C
+ Penjumblahan _ Pengurangan
* Perkalian / Pembagian
% Modulus ++ Penjumblahan
berkelanjutan
-- Pengurangan = Sama
dengen/memberikan
nilai
᷉
== Nilai sama dengen NOT
dengen
18
& Dan/AND && AND(dua kondisi)
I OR II OR(dua kondisi)
̂ Faktor pangkat ?:
tubuh program, sedangkan tubuh program bisa terdiri dari induk program dan anak
19
#include <conio.h>
Int data1();
void main ()
{ Induk program
……
}Tubuh Program
int data1()
….
dari sebuah tubuh program yang dapat terdiri dari sebuah induk program dan satu
atau lebih anak program. Anak program memiliki fungsi untuk mengerjakan satu blok
oleh induk program sesuai dengankebutuhan akan sub bagian program tersebut.
20
#include <mega Penyertaan file Kepala Program
void main ()
……
…… Induk Program
while(1)
…..
Deklarasi sebuah variable dapat digolongkan menjadi dua, yaitu local variable
dan global variable Local variable dipakai dan hanya dapat diakses pada sub program
21
mikroprosesor selama mikrokontroler hidup.Beberapa Instruksi-instruksi dalam
if (kondisi )
{
1
Syarat ………(aksi yang dikerjakan)
};
if (kodisi)
{
……(aksi yang dikerjakan)
}
else if(kondisi)
Percabangan {
2
…..(aksi yang dikerjakan)
}
…..
lse
{
…..(aksi yang dikerjakan)};
22
switch (variable)
{
case nilai_variabel_ke-1:
{
….. (aksi yang dikerjakan)
}
case nilai_variabel_ke-2:
{
….. (aksi yang dikerjakan)
3 Percabangan
}
…………
………..
default:
{
…. (aksi yang dikerjakan)
}
}
goto alamat_tujuan;
…………….
…………….
Melompat
4 alamat_tujuan:
…….............
23
Melompat keluar dari break;
5
Perulangan
while (kondisi)
{
Perulangan ……(aksi yang dikerjakan)
6
}
Do
{
…..(aksi yang dikerjakan)
Perulangan
7 }
while (syarat);
for
(nilai_awal,syarat,operasi+
+/ --)
Perulangan {
8
…..(aksi yang dikerjakan)
};
24
2.5 Perangkat Lunak Pemograman CodeVision AVR
Ada beberapa program yang dapat digunakan sebagai editor dan compiler
CodeVisionAVR adalah salah satu alat bantu pemograman (programming tool) yang
Seperti aplikasi IDE lainya, CodeVisionAVR dilengkapi dengen source code editor,
complier, linker, dapat memangil Atmel AVR Studio untuk debugger nya. Tampilan
25
BAB III
buat suatu blok diagram agar dapat di ketahui prinsip kerja dari alat yang di buat
26
1.2 Perancangan Algoritma
Sebelum memulai membuat program, maka terlebih dahulu penulis membuat
1. Start
2. Menginialisasi Sensor
3. Baca Sensor
27
18. Jika ya kirim SMS
19. Selesai
rancang dapat berjalan dengan baik dan sesuai dengan harapan maka langkah yang
harus di lakukan adalah membuat sebuah flowchar tuntuk dapat menggambar kan
28
Gambar 3.2 flowchart
dan juga sebagai output dengen keluaran high low. Untuk mengatur fungsi port I/O
sebagai input atau pun output, perlu dilakukan setting pada DDR dan port. Logika
port I/O dapat di ubaha-ubah dalam program secara byte atau hanya bit tertentu.
Mengubah sebuah keluaran bit I/O dapat di lakukan menggunakan perintah cbi (clesr
29
bit I/O) untuk menghasilkan output high. Pengubahan secara byte di lakukan dengen
perintah in atau out yang mengunakan register bantu. I/O merupakan bagian yang
paling menarik dan penting untuk di amati karena I/O merupakan bagian yang
bersangkutan dengen komunikasi mikrokontroller dengen dunia luar. Selain port I/O,
yang lain,seperti ADC, EEPROM, USART, dan Timer. Untuk perencanaan port pada
PA0-PA2 Input
Port A
PA3-PA5 Input
PBO Input
Port B
PB4-PB7 Input
Alat akan berkerja jika power dinyalakan, kemudian alat penyortiran ikan
otomatis akan bekerja sesuai dengen keinginan si user tergantung bagaimana perintah
programnya.
30
DAFTAR PUSTAKA
Setiawan, dkk. 2014. “Rancang Bangun Alat Pembuka dan Penutup Tong Sampah
Otomatis Berbasis Mikrokontroller”, Jurnal Teknologi dan Sistem Informasi,
Volume 1, Nomor 1, hlm 55-62.
Pramanta, Febyan, D. 2016. “Smile Trash (Smart Learning Trash) Tempat Sampah
Pembentuk Karakter Anak Bangsa”, KaryaTulis Ilmiah Universitas Negeri
Malang.
.
31