perpustakaan.uns.ac.id
digilib.uns.ac.id
ALAT UKUR TINGGI BADAN OTOMATIS BERBASIS MIKROKONTROLER AT89C2051
TUGAS AKHIR
Diajukan Untuk Mamenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Diploma III Ilmu Komputer
Oleh : Fadil Andang Samsudin M3307042
PROGRAM DIPLOMA III ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET SURAKARTA
commit to user 2010
i
perpustakaan.uns.ac.id
digilib.uns.ac.id
HALAMAN PERSETUJUAN
ALAT UKUR TINGGI BADAN OTOMATIS BERBASIS MIKROKONTROLER AT89C2051
Disusun Oleh
Fadil Andang Samsudin NIM. M3307042
Tugas Akhir ini telah disetujui untuk dipertahankan Di hadapan dewan penguji : Pada hari jumat tanggal 28 Januari 2011
Pembimbing Utama
Artono Dwijo Sutomo, S.Si, M.Si NIP. 19700128 199903 1 001
commit to user
ii
perpustakaan.uns.ac.id
digilib.uns.ac.id
HALAMAN PENGESAHAN
ALAT UKUR TINGGI BADAN OTOMATIS BERBASIS MIKROKONTROLER AT89C2051
Fadil Andang Samsudin M3307042 dibimbing oleh :
Artono Dwijo Sutomo, S.Si, M.Si NIP 19700128 199903 1 001
Telah dipertahankan di depan Dewan Penguji Pada hari Jumat tanggal 28 Januari 2011 Dan dinyatakan telah memenuhi syarat
Dewan Penguji
Tanda Tangan
1.Artono Dwijo Sutomo, S.Si, M.Si
1.
NIP: 19700128 199903 1 001 2. Rudi Hartono, S.Si
2.
NIDN: 0626098402 3.Fendi Aji Purnomo, S.Si
3.
NIDN: 0626128402 Disahkan Oleh Dekan
Ketua Program Studi
Fakultas MIPA UNS
DIII Ilmu Komputer UNS
Prof. Drs. Sutarno, M.Sc, Ph.D
Drs. YS. Palgunadi, M. Sc
NIP 19600809 198612 1 001
NIP 19560407 198303 1 004 commit to user
iii
perpustakaan.uns.ac.id
digilib.uns.ac.id
ABSTRACT
Fadil Andang Samsudin.2010. Mikrokontroller AT89C2051 Based Height Measuring. Program Diploma III Computer Engineering, Faculty of Mathematich and Natural Sciences, UNS This final taks has a purpose to produce the instrument to measure the heights which works outomatically it is addressed to the users in order to make the easier usage of this product. Besides that, it will make the faster solving problems in measuring the heights. From the result above, the system uses mikrokontroller AT89C2051. The writing process of mikrokontroller AT89C2051 program uses assembly language. Also, port-port is connected to the input and output system. The result of connecting all devices, shows that an ultrasonic SRF04 which is connected to mikrokontroller AT89C2051 can do the order or command of mikrokontroller. Based on the explanation above, the writer concludes that mikrokontroller AT89C2051 can be used as a automatically heights measurer. Keyword: Alat Ukur Tinggi Badan, Ultrasonic SRF04, AT89C2051.
commit to user
iv
perpustakaan.uns.ac.id
digilib.uns.ac.id
ABSTRAK
Fadil Andang Samsudin.2010. Alat ukur tinggi Badan Otomatis Berbasis Mikrokontroler AT89C2051. Program Diploma III Teknik Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, UNS Tujuan tugas akhir ini dimaksudkan untuk menghasilkan sebuah alat ukur tinggi badan yang bekerja secara otomatis, agar pemakainya menjadi lebih mudah dan mempercepat pekerjaan manusia dibidang alat ikur tinggi badan. Dari hasil yang diatas sistem ini menggunakan mikrokontroler AT89C2051.penulisan untuk program mikrokontroler AT89C2051tersebut menggunakan bahasa Asembly, dan port-port terhubung ke inputdan output. Dari hasil perangkaian alat, menunjukan bahwa sensor ultrasonik SRF04 yang terhubung dengan mikrokontroler AT89C2051 dapat melakukan perintah suatu mikrokontroler. Berdasarkan uraian diatas, penulis menyimpulkan bahwa mikrokontroler AT89C2051 dapat digunakan sebagai alat ukur tinggi badan otomatis.
Kata kunci: Alat Ukur Tinggi Badan, Ultrasonic SRF04, AT89C2051
commit to user
v
perpustakaan.uns.ac.id
digilib.uns.ac.id
MOTTO
v Sesungguhnya sesudah ada kesulitan itu pasti ada kemudahan, maka apabila kamu telah selesai (dari sesuatu urusan), kerjakanlah dengan sungguhsungguh (urusan yang lain). Dan hanya kepada Tuhanmulah hendaknya kamu berharap. (QS. Al Intsirah : 6-8)
v Tuhan ada disini.. di dalam jiwa ini, berusahalah agar dia tersenyum. (Ebiet. G. Ade)
commit to user
vi
perpustakaan.uns.ac.id
digilib.uns.ac.id
PERSEMBAHAN
Belum banyak yang dapat aku berikan..hanyalah sebuah karya kecil ini sebagai cenderamataku dari Solo. Akan kepersembahkan kepada orang-orang yang sangat berharga dalam hidupku:
v Allah SWT dan Rasulullah Muhammad SAW. v Bapak dan Ibu yang tercinta yang selalu tulus mengasihiku. v Saudara-saudaraku. v Galuh Anindita, SwettApple. v MB UNS. v Teman-temanku semua.
commit to user
vii
perpustakaan.uns.ac.id
digilib.uns.ac.id
KATA PENGANTAR
Puji syukur dan terima kasih penulis panjatkan kehadirat Allah SWT yang selalu melimpahkan rahmat, hidayah serta karunia-Nya kepada penulis sehingga penulis dapat menyelesaikan laporan tugas akhir dengan judul “ALAT UKUR TINGGI
BADAN
OTMATIS
BERBASIS
MIKROKONTROLER
AT89C2051” Penyusunan laporan tugas akhir ini disusun sebagai salah satu syarat menempuh Program Studi D3 Teknik Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sebelas Maret Surakarta. Penulis menyadari bahwa dalam penyelesaian penulisan laporan ini, tidak lepas dari bantuan berbagai pihak, maka dalam kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar – besarnya kepada : 1. Bapak Dekan Prof. Drs. Sutarno, M.Sc, Ph.D, Staf dan seluruh Dosen di Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sebelas Maret Surakarta yang selama ini telah banyak membantu pada masa perkuliahan hingga terselesainya tugas akhir ini. 2. Bapak Drs. YS. Palgunadi, M. Sc selaku Ketua Program DIII Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sebelas Maret Surakarta. 3. Bapak Artono Dwijo Sutomo, S.Si, M.Si selaku pembimbing akademik dan dosen pembimbing tugas akhir yang telah banyak memberikan pengarahan, saran serta dukungan. 4. Kepada Bapak, Ibu, Mas Dito, dan saudara kembar penulis Ranggi yang sudah memberikan dorongan kepada penulis. Terima kasih untuk doa, kesabaran, dan pengertiannya. Semoga penulis bisa mewujudkan cita-cita Bapak dan Ibu. Amin 5. Seseorang yang sangat spesial. Galuh Anindita, terima kasih telah menemani hari-hariku yang indah, doa, kasih sayang, dan semangatnya di tiap waktu. 6. Keluarga besar TIM MB UNS khususnya angkatan 22 (dilla, petty, santi, commit to usersemoga kalian lebih semangat lagi marko, rika, ani,) kalian teman yang hebat
viii
perpustakaan.uns.ac.id
digilib.uns.ac.id
di MB tercinta. Dan juga semuanya keluarga besar MB UNS. Semoga MB UNS bisa lebih dikenal di dunia Marching Band Indonesia. UNS Jaya!!!! 7. Kos Jeruk beserta penghuninya. Tempat yang nyaman untuk berbagi suka dan duka maaf kalau sudah sering jahil. 8. Teman – teman Program D III Tehnik Komputer yang telah memberikan saran, kritik dan semangat yang membangun demi kelancaran tugas akhir. 9. Seluruh pihak yang telah membantu kelancaran tugas akhir dan dalam pembuatan laporan ini yang tidak dapat sisebutkan satu persatu. Terima kasih untuk bantuan yang diberikan Penulis mengharapkan saran dan kritik dari pembaca untuk kesempurnaan laporan ini sehingga akan lebih baik dimasa yang akan datang. Dalam menyusun tugas akhir ini tidak lepas dari kesalahan maupun kekurangan, mengingat keterbatasan ilmu yang didapat penulis selama menempuh pendidikan, maka dari itu penulis mohon maaf yang sebesar-besarnya.
Surakarta,
Agustus 2010
Penulis
commit to user
ix
perpustakaan.uns.ac.id
digilib.uns.ac.id
DAFTAR ISI
HALAMAN JUDUL ....................................................................................
i
HALAMAN PERSETUJUAN .....................................................................
ii
HALAMAN PENGESAHAN ......................................................................
iii
ABSTRAK ...................................................................................................
iv
MOTTO .......................................................................................................
v
PERSEMBAHAN .......................................................................................
vi
KATA PENGANTAR ................................................................................. vii DAFTAR ISI ................................................................................................ viii BAB I PENDAHULUAN ...........................................................................
1
A. Latar Belakang ...........................................................................
1
B. Tujuan ........................................................................................
2
C. Rumusan Masalah ......................................................................
2
D. Batasan Masalah ........................................................................
2
BAB II LANDASAN TEORI ....................................................................
4
A Deskripsi Mikrokontroler AT89C2051 .....................................
5
1
Konfigurasi Pin ....................................................................
5
2
Deskripsi PIN AT89C2051 ..................................................
5
3
Diagram Blok AT89C2051 ..................................................
8
4
Karakteristik Oscilator .........................................................
8
5
Register Fungsi Khusus/Spesial Function Register (SFR) ..
9
6
Batasan-batasan pada Instruksi Tertentu …………………… 11 commit to user
x
perpustakaan.uns.ac.id
digilib.uns.ac.id
B Sesor .......................................................................................... 14
C
1
Sensor Ultrasonik ................................................................ 14
2
Sensor Jarak Ultrasonik Devantech SRF04 .................................. 16
3
Komponen – Komponen Yang Digunakan Lainnya .......... 19
Komponen – Komponen Yang Digunakan Lainnya ................ 19 1 Resistor .............................................................................. 19 2 Fixed Resistor ................................................................... 20 3 Variable Resistor ............................................................... 22 4 Kapasitor ........................................................................... 23 5 Transistor .......................................................................... 25 6 Daerah Kerja Transistor .................................................... 27 7 Dioda ................................................................................. 28
BAB III DESAIN DAN PERANCANGAN .............................................. 32 A. Identifikasi Masalah ................................................................... 32 B. Sistem Blok .............................................................................. 33 C. Analisa Kebutuhan ..................................................................... 33 1
Hardware .................................................................. 33
2
Softwere ................................................................... 34
3
Alat Pendukung ........................................................ 35
4
Alur Tahapan Pembuatan ......................................... 36
5
Rangkaian Keseluruhan Sistem ................................ 37
6
Rangkaian Minimum AT89C2051 ........................... 39
7
Rangkaian Sensor ..................................................... 40
8
Perancangan Softwere .............................................. 41
BAB IV IMPLEMENTASI DAN ANALISA …………………………...
43
A Pengujian Visual Basic .............................................................. 43 B Pengujian Sistem AT89C2051 .................................................. 45 commit to user C Pengujian Sensor SRF04 ............................................................. 48 xi
perpustakaan.uns.ac.id
digilib.uns.ac.id
D Pengujian Alat secara Keseluruhan ........................................... 51
BAB VI PENUTUP A Kesimpulan ................................................................................. 53 B Saran ........................................................................................... 53
DAFTAR PUSTAKA ................................................................................. 54 LAMPIRAN
commit to user
xii
perpustakaan.uns.ac.id
digilib.uns.ac.id
DAFTAR GAMBAR
Gambar 1. Konfigurasi Pin AT89C2051 ......................................................
5
Gambar 2. Blok Diagram AT89C2051 .........................................................
8
Gambar 3. Perakitan Oscilator .....................................................................
9
Gambar 4. Konfigurasi Eksternal .................................................................
9
Gambar 5. Modul dan Koneksi sensor ultrasonic ........................................ 16 Gambar 6. Devantech SRF04 Ranger .......................................................... 16 Gambar 7. Susunan kaki SRF04 .................................................................. 17 Gambar 8. Contoh rangkaian SRF04 ........................................................... 18 Gambar 9. Simbol resistor ........................................................................... 19 Gambar 10. Resistor Single-In-Line ............................................................. 21 Gambar 11. Bentuk Fisik Resistor ............................................................... 21 Gambar 12. Bentuk Fisik Variable Resistor ................................................ 22 Gambar 13. Simbol Kapasitor ...................................................................... 23 Gambar 14. bentuk fisik kapasitor ............................................................... 25 Gambar 15. Transistor NPN dan PNP ......................................................... 25 Gambar 16. Penggunaan Transistor NPN .................................................... 26 Gambar 17. Garis beban DC ........................................................................ 27 Gambar 18. Simbol dan struktur dioda ......................................................... 27 Gambar 19. Dioda dengan bias maju ............................................................ 30 Gambar 20. Dioda dengan bias negatif ......................................................... 30 Gambar 21. Grafik arus dioda ...................................................................... 31 Gambar 22. Diagram blok pengukur tinggi badan ....................................... 33 Gambar 23. Tahapan Pembuatan alat ukur tinggi badan otomatis .............. 37 Gambar 24. Rangkaian Skematik pengukur tinggi badan otomatis ............. 38 Gambar 25. Rangkaian Minimum AT89C2051 ........................................... 39 Gambar 26. Rangkaian Sensor Ultrasonik SRF04 ....................................... 40 Gambar 27. Flowchart pengukur tinggi badan otomatis ............................. 42 Gambar 28. Rangkaian Pengujian Sensor .................................................... 48 commit to user Gambar 29. Hasil Pengujian Sensor ............................................................ 50
xiii
perpustakaan.uns.ac.id
digilib.uns.ac.id
DAFTAR TABEL
Tabel 1. Fungsi dan fitur spesial Port 3 yang bervariasi ..............................
7
Tabel 2. Peta Memori SFR dan Reset value ................................................ 10 Tabel 3. Range finder sensor ultrasonic SRF04 .......................................... 15 Tabel 4. Karakteristik SRF04 ................................................................................. 17 Tabel 5. Hasil Pengukuran Jarak .................................................................. 49 Tabel 6. Hasil Pengujian Alat ...................................................................... 52
commit to user
xiv
1 digilib.uns.ac.id
perpustakaan.uns.ac.id
BAB I PENDAHULUAN
A. Latar Belakang Salah satu dampak yang sangat diharapkan dengan adanya kemajuan ilmu pengetahuan dan teknologi adalah dapat membantu, mempermudah, dan mempercepat proses pekerjaan manusia. Dan hal tersebut diharapkan pula dapat menyentuh segala aspek kehidupan tanpa terkecuali. Hadirnya kendali otomatis terutama yang berbasis elektronika dirasakan sebagai terobosan besar, yang mampu menghasilkan sistem minimal, murah, namun dengan hasil yang berguna dan memuaskan. Di tengah masyarakat yang semakin modern ini, olahraga dan kesehatan tampaknya mulai menjadi sorotan, bahkan
menjadi trend masa kini.
Konsekuensinya keseimbangan antara berat dan tinggi badan merupakan patokan awal atas kondisi fisik seseorang, apakah ideal atau tidak. Akan tetapi jika kita menengok pasar sekarang ini, dari kedua hal tersebut di atas (berat badan dan tinggi badan) akan sangat sulit sekali bagi kita untuk menemukan adanya alat ukur tinggi badan otomatis. Umumnya alat ini masih bersifat manual, di mana pengguna harus menaikkan atau menurunkan sendiri palang atas kepala, kemudian membaca petunjuk skalanya. Sementara itu, bagi anak kecil atau orang yang tubuhnya pendek tentu akan kesulitan atau bahkan tidak dapat melakukannya sendiri. commit to user
1
perpustakaan.uns.ac.id
2 digilib.uns.ac.id
Oleh karenanya, perlu dirintis pembuatan alat ukur tinggi badan yang berbasis kendali elektronika, dengan harapan akan mempermudah penggunaannya sebagaimana halnya penggunaan alat ukur berat badan. Orang yang hendak mengetahui tinggi badannya cukup berdiri di depan alat, dan secara otomatis alat tersebut akan mengukur dan menampilkan hasilnya pada display.
B. Tujuan 1. Membangun suatu sistem (perangkat keras dan perangkat lunak) untuk sebuah alat ukur tinggi otomatis berbasis mikrokontroler AT89C2051. 2. Mengetahui unjuk kerja alat ukur tinggi badan berbasis mikrokontroler AT89C2051.
C. RumusanMasalah 1. Bagaimana rancangan perangkat keras dan perangkat lunak untuk aplikasi mikrokontroler AT89C2051 pada sistem alat ukur tinggi badan otomatis? 2. Bagaimana unjuk kerja alat ukur tinggi badan otomatis berbasis mikrokontroler AT89C2051?
D. Batasan Masalah 1. Alat yang dibuat adalah bukan alat ukur murni, alat ini dilengkapi dengan sarana pencatat data-data pengukuran maupun interface untuk perangkat I/O lainnya misalnya hubungan ke komputer. 2. Menggunakan AT89C2051 sebagai pengendali utama. commit to user
3 digilib.uns.ac.id
perpustakaan.uns.ac.id
3. Menggunakan sensor ultrasonic SRF04 sebagai pendeteksi. 4. Menggunakan komputer sebagai hasil pengukuran. 5. Ketelitian pengukuran hingga orde centimeter. 6. Rentang pengukuran alat yang akan dibuat disesuaikan dengan tinggi badan tertinggi rata-rata bagi orang Indonesia. Sehingga diperkirakan minimal alat dapat mengukur hingga maksimal.
commit to user
4 digilib.uns.ac.id
perpustakaan.uns.ac.id
BAB II LANDASAN TEORI
A. Deskripsi Mikrokontroler AT89C2051 Mikrokontroler jenis AT89C2051 adalah sebuah CMOS mikrokomputer 8-bit bervoltase rendah yang memiliki performa tinggi dengan 2 Kilobyte Flash Programmable Erasable Read Only Memory (PEROM). Perangkat ini dihasilkan oleh teknologi
high density nonvolatile
memory technology
yang terus
dikembangkan pabrik ATMEL. Mikrokontroler ini kompatibel dengan standar industri MCS-51TM dari segi instruksi setnya. Dengan mengkombinasi sebuah CPU 8-bit versatile dengan Flash pada sebuah monolithic Chip, ATMEL89C2051 merupakan sebuah mikrokomputer yang sangat kuat dan memiliki fleksibilitas yang tinggi. Mikrokontroler AT89C2051 menyediakan beberapa fitur standar, antara lain 2 K byte Flash memori, RAM 128 byte, 15 jalur input/output, 2 timer/counter 16-bit, 5 arsitektur interupsi jenis
two-level, sebuah serial port yang dapat
membaca dan mengirim sinyal dua arah (Full Duplex), sebuah analog komparator yang sangat presisi, oscilator on-chip dan circuit clock. Mikrokontroler AT89C2051 juga didesain dengan logika statis untuk operasi penurunan frekuensi sampai titik nol (frequency down to zero operation) dan mendukung 2 macam power saving
software operasional mode. Pertama adalah mode Idle yang
melakukan penghentian CPU dengan mengijinkan RAM, timer/counter, serial port, dan sistem interupsi untuk terus melanjutkan operasinya. Kedua adalah mode commit to user
4
5 digilib.uns.ac.id
perpustakaan.uns.ac.id
Power down yang melakukan penyimpanan isi dari RAM, melakukan pembekuan oscilator serta menghentikan semua proses pada fungsi-fungsi chip yang lain sampai hardware reset berikutnya. 1. Konfigurasi Pin
Gambar 1. Konfigurasi Pin AT89C2051 Mikrokontroler AT89C2051 memiliki beberapa port yang dapat dipakai sebagai port input maupun output, di samping port pendukung lainnya, yaitu port P1.0 sampai P1.7 dan port P3.0 sampai P3.7. Pemakaiannya harus disesuaikan dengan peraturan yang telah ditetapkan oleh produsen mikrokontroler ini. 2. Deskripsi PIN AT89C2051 VCC Suplai tegangan (+) mikrokontroler GND Suplai tegangan ( - ) mikrokontroler commit to user
6 digilib.uns.ac.id
perpustakaan.uns.ac.id
Port 1 Port 1 adalah sebuah 8-bit input/output port yang 2 arah (bidirectional I/O port). Pin port P1.2 sampai P1.7 menyediakan pull-ups secara internal. P1.0 dan P1.1 juga berfungsi sebagai input positif (AIN0) dan input negatif (AIN1) yang bertanggung jawab pada pembanding sinyal analog yang ada di dalam chip. Keluaran port 1.0 membuat arus sebesar 20 mA dan dapat digunakan untuk menyalakan LED secara langsung. Jika sebuah program mengakses Port pin1, maka port ini digunakan sebagai port input. Ketika port pin 1.2 sampai 1.7 digunakan sebagai port input dan port-port tersebut diset secara pulled-low, maka port-port tersebut dapat menghasilkan arus (IIL) karena adanya interaksi pull-ups tadi. Port 1 juga dapat menerima kode/data saat memori flash dalam kondisi diprogram atau saat proses verifikasi dilakukan. Port 3 Port 3 pin P3.0 sampai P3.5 adalah 6 input/output pin yang dapat menerima kode/data secara 2 arah (bidirectional I/O port) yang mempunyai fasilitas internal pull-ups. P3.6 adalah sebuah hardware yang digunakan sebagai input dan output dari komparator on chip, tetapi pin tersebut tidak dapat diakses sebagai port input/output standar. Port pin 3 dapat mengeluarkan arus sebesar 20 mA. Port 3 juga menyediakan fungsi dari fitur spesial yang bervariasi dari Mikrokontroler AT89C2051. Fungsi dan fitur spesial dari Mikrokontroler AT89C2051 dapat dilihat pada Tabel 1 di bawah ini :
commit to user
7 digilib.uns.ac.id
perpustakaan.uns.ac.id
Tabel 1. Fungsi dan fitur spesial Port 3 yang bervariasi Port Pin
Alternate Functions
P3. 0
RXD (serial input port)
P3. 1
TXD (serial output )
P3. 2
INT0 (external interrupt 0)
P3. 3
INT1 (external interrupt 1)
P3. 4
T0 (timer 0 external input)
P3. 5
T1 (timer 1 external input)
Port 3 juga dapat menerima beberapa sinyal kontrol untuk keperluan pemrograman Flash memory dan verifikasi data. RST RST berfungsi sebagai kaki untuk input sinyal
reset. Semua
input/output (I/O) akan kembali pada posisi nol (reset) secepatnya ketika kaki reset (RST) tersebut berlogika tinggi/high condition. Menahan pin RST untuk dua cycle machine ketika suatu oscilator sedang bekerja akan mengakibatkan resetnya semua sistem device yang ada ke dalam zero position. XTAL1 Sebagai input kepada inverting amplifier oscilator dan memberi input kepada internal clock operating sirkuit. XTAL 2 Sebagai kaki output dari rangkaian inverting amplifier oscilator. commit to user
8 digilib.uns.ac.id
perpustakaan.uns.ac.id
3. Diagram Blok AT89C2051 Diagram Blok AT89C2051 dapat dilihat pada Gambar 2 di bawah ini.
Gambar 2. Blok Diagram AT89C2051 4. Karakteristik Oscilator XTAL 1 dan XTAL 2 adalah suatu input dan output yang bertanggung jawab penuh dari sebuah amplifier inverting di mana XTAL – XTAL tersebut dapat dikonfigurasikan untuk digunakan sebagai on-chip oscilator. Gambar 3 menunjukkan rangkaian oscilator yang terbuat dari sebuah kristal quatrz atau resonator keramik. Dalam rangka pengaktifan perangkat ini dari commit to2user sebuah external clock source, XTAL harus dikondisikan tidak tersambung
9 digilib.uns.ac.id
perpustakaan.uns.ac.id
ketika XTAL 1 sedang diberi suatu sinyal/tegangan seperti yang ditunjukkan Gambar 4. Dalam posisi ini rangkaian tidak dibutuhkan lagi untuk mengkondisikan mikrokontroler ‘sedang proses’ atau
duty cycle
dalam menerima sinyal clock eksternal. Selama input, pada sirkuit clocking internal ada suatu sinyal dari sebuah device yang dibagi menjadi dua flipflop. Namun tegangan minimum dan maksimum serta time pada posisi rendah (low) maupun tinggi (high) harus dianalisis terlebih dahulu.
Gambar 3. Perangkaian Oscilator
Gambar 4. Konfigurasi Eksternal Clock Drive
Catatan : C1, C2 = 30 pF ± 10 pF untuk jenis kondensator kristal = 40 pF ± 10 pF untuk jenis resonator keramik 5. Register Fungsi Khusus/Spesial Function Register (SFR) Sebuah peta memori yang terdapat pada on-chip memory area dan disebut sebagai Special Function Register (SFR) space memory pada Tabel 3. Sebagai catatan, tidak semua alamat memori ditunjukkan pada tabel commit to user karena terbatasnya media. Alamat memori yang tidak terdapat dalam tabel
10 digilib.uns.ac.id
perpustakaan.uns.ac.id
biasanya sangat jarang digunakan atau diimplementasikan dalam suatu proyek. Akses baca (road access) pada alamat memori ini akan menghasilkan suatu data general yang bernilai acak atau random, sedangkan akses tulis (write access) akan mempunyai efek yang indeterminate. Program user tidak boleh ditulis pada alamat yang tidak tercantum dalam tabel. Dalam kasus tersebut, memori reset atau nilai inactive dari bit yang baru akan selalu nol (0). Tabel 2. Peta Memori SFR dan Reset value
commit to user
11 digilib.uns.ac.id
perpustakaan.uns.ac.id
6. Batasan-batasan pada Instruksi Tertentu Mikrokontroler AT89C2051 dan beberapa variannya adalah suatu jenis mikrokontroler yang terkenal cukup murah tetapi handal dari keluarga mikrokontroler ATMEL. Mikrokontroler tersebut memiliki 2 Kbyte Flash memori program. Mikrokontroler. a. Instruksi-insruksi branching: LCALL, LJMP, ACALL, AJMP, SJMP, JMP@+DPTR Beberapa instruksi
unconditional branching
di atas akan
dieksekusi secara benar selama software programmer selalu mengingat bahwa alamat destination branching harus jatuh di dalam batas ukuran memori kontroler (lokasi 00H sampai 7FFH
digunakan untuk
AT89C2051). Pelanggaran atas aturan pengalamatan memori di atas akan mengakibatkan program menjadi bertingkah laku aneh. CJNE [...]. DJNZ [...], JB, JNB, JC, JNC, JBC, JZ, JNZ dengan instruksi kondisional branching tersebut di atas juga harus mematuhi aturan-aturan pengalamatan memori yang telah disebutkan. Apabila programmer melanggar aturan di atas, hal itu mungkin akan mengakibatkan hasilnya menjadi tidak menentu. Beberapa penerapan yang menyertakan interupsi pada lokasi alamat servis rutin pada keluarga mikrokontroler ATMEL 80C51 dapat dipelajari pada manual-manual masing-masing. b. MOVX – related instruction, Data Memori: commit to user
12 digilib.uns.ac.id
perpustakaan.uns.ac.id
Mikrokontroler AT89C2051 mempunyai 128 byte internal data memori. Dengan kata lain, mikrokontroler AT89C2051 mempunyai batas stack sebesar 128 byte, yaitu sebesar jumlah RAM dari mikrokontroler tersebut. Akses eksternal data memori dan eksekusi eksternal program memori tidak terdapat dalam mikrokontroler jenis ini. Oleh karena itu, instruksi
MOVX
[...]
tidak
diperbolehkan
dalam
memprogram
mikrokontroler AT89C2051. Kode assambler jenis 80C51 akan tetap dieksekusi sebagai instruksi assambler, meskipun instruksi tersebut ditulis dengan kondisi yang melanggar aturan pengalamatan. Tingkah laku device atau alat yang kita buat, bertanggungjawab terhadap kesalahan eksekusi logika program, bukan pada program yang kita tulis. 7. Memprogram Flash Memori Pada Mikrokontroler AT89C2051 terdapat memori Flash sebesar 2 Kbyte. Memori ini digunakan sebagai memori kode program dan dikondisikan pada keadaan array, yang bisa ditulis dan dibaca (read-write) dan siap untuk diberi program. Memori array tersebut hanya dapat diprogram per byte pada tiap satuan waktu. Sekali memori array tersebut diberi program, maka untuk memprogram ulang harus dilakukan penghapusan data program yang telah ada secara elektrikal. Dengan kata lain, memori array tersebut tidak dapat langsung ditimpa dengan program yang baru, tetapi harus dihapus terlebih dahulu. commit to user
perpustakaan.uns.ac.id
13 digilib.uns.ac.id
Urutan Pemrograman Chip: a.
Power-up sequence: Berikan tegangan antara Vcc dan GND dan SET, XTAL 1, ke posisi GND.
b.
Set pin RST dengan nilai logika High, set pin P3.2 juga dengan nilai High.
c.
Berikan nilai level logika kombinasi High dan Low pada pin-pin P3.3, P3.4, P3.5, P3.7 sesuai mode operasi yang akan kita lakukan, apakah operasi pembacaan memori atau operasi memasukkan program ke memori.
d.
Alamatkan data program yang kita buat pada range alamat memori 000H, yaitu pada pin P1.0 sampai P1.7
e.
Berikan tegangan Vcc 12 Volt pada pin RST ketika akan melakukan program chip (mode operasi pemrograman).
f.
Masukkan pulsa kode program yang akan kita masukkan pada pin 3.2. Waktu penulisan program pada memori array akan memakan waktu sekitar 1,2 ms (millisecond)
g. Untuk verifikasi data program yang kita masukkan, ubah logika pada pin RST dari Vcc 12 Volt menjadi level logika High lalu set pin P3.3 sampai P3.7 menjadi level prioritas. Data output dapat dibaca melalui port pin P1. h. Untuk memasukkan program ke alamat memori berikutnya supaya tidak tumpang tindih, berikan pulsa positif pada pin XTAL 1. Langkah ini untuk menaikkan address counter dengan increment satu (+1 pada address counter). Masukkan data program yang baru pada port pin P1. commit to user
perpustakaan.uns.ac.id
14 digilib.uns.ac.id
i. Ulangi langkah 5 sampai 8, ubah data dan alur range memori mikrokontroler sampai batas 2 Kbyte. j.
Power-off sequence. Set XTAL1 dengan logika Low dan RST juga dengan logika Low, lalu matikan tegangan pada mikrokontroler AT89C2051.
B. Sensor Sensor adalah alat yang digunakan untuk mendeteksi suatu benda dan berfungsi untuk mengukur magnitude suatu benda/alat. Sensor adalah jenis tranducer yang digunakan untuk mengubah variasi mekanis, magnetis panas, sinar, dan kimia menjadi tegangan atau arus listrik. Sensor biasanya dikategorikan melalui pengukuran dan memegang peranan penting dalam pengendalian proses pabrikasi modern. Bentuk dan macam dari sensor sangatlah banyak dan biasanya disesuaikan dengan tujuan dan penggunaannya. Adapun sensor yang digunakan pada modul ini adalah sebagai berikut. 1. Sensor ultrasonik Sensor ultrasonik, berfungsi sebagai pendeteksi jarak yang pada aplikasinya untuk mendeteksi jarak kendaraan dengan benda di depannya. Sensor ini mampu mendeteksi jarak dengan range 3 cm sampai 3 meter. Prinsip kerjanya yaitu pemancar ultrasonik mengeluarkan frekuensi 40 Khz yang dihasilkan oleh mikrokontroler, kemudian diterima oleh pemancar ultrasonik. Dengan menghitung selang waktu antara pengiriman sinyal sampai dapat diterima oleh penerima, dapat diketahui nilai jarak dari commit to user
15 digilib.uns.ac.id
perpustakaan.uns.ac.id
kendaraan dan kendaraan sekitarnya. Sensor ultrasonik yang digunakan merupakan modul jadi dari PARALLAX dengan tipe SRF04. Spesifikasi Teknis Devantech SRF04 Ultrasonic Range Finder: Tabel 3. Range finder sensor ultrasonic SRF04 Tegangan Input
:
5 VDC
Konsumsi Arus
:
30 mA (rata-rata), 50 mA (max)
Frekuensi Suara
:
40 kHz
Jangkauan
:
3 cm - 3 m
Sensitivitas
:
Mampu mendeteksi gagang sapu berdiameter 3 cm dalam jarak > 2 m
Input Trigger
:
10 mS min. Pulsa Level TTL
Pulsa Echo
:
Sinyal level TTL Positif, Lebar berbanding proporsional dengan jarak yang dideteksi
Output dari sensor ini berupa data PWM sehingga duty cycle dari sinyal output berbanding lurus dengan data jarak. Semakin jauh objek maka semakin besar duty cycle. Untuk mengaktifkan sensor maka modul diberi triger pulsa maka sensor akan mengeluarkan sinyal pwm dan duty cycle tersebut sebagai jarak objek dengan sensor. Sensor diberi triger, kemudian dihitung lebar duty cyclenya. Jika sensor ultrasonik yang digunakan pada satu sistem lebih dari satu maka data yang dikirim secara bergantian. Data commit to user
16 digilib.uns.ac.id
perpustakaan.uns.ac.id
yang dikirim adalah data 8-bit dengan nilai 5-255, di mana nilai 0 digunakan sebagai tanda akhir data.
Gambar 5. Modul dan Koneksi sensor ultrasonic 2. Sensor Jarak Ultrasonik Devantech SRF04
Gambar 6. Devantech SRF04 Ranger
Kit ini sangat mudah untuk dirangkai dan membutuhkan sumber daya yang kecil sekali, yang sangat ideal untuk aplikasi mobile robot. Susunan kakinya sebagai berikut:
commit to user
17 digilib.uns.ac.id
perpustakaan.uns.ac.id
O 5V O echo output O pulse trigger input O not used O ground
Gambar 7. Susunan kaki SRF0 Pencari jarak ini bekerja dengan cara memancarkan pulsa suara dengan kecepatan suara (0.9 ft/milidetik). Tabel 4. Karakteristik SRF04 Tegangan
5v
Arus
30mA Typ. 50mA Max
Frekwensi
40KHz
Maximum Range
3m
Minimum Range
3 cm
Sensitifitas
Mendeteksi jarak 3cm diameter stick at > 2 m
Trigger input
10uS Min. TTL level pulse
Pulsa echo
Positive TTL level signal, width proportional to range.
Berikut contoh program menggunakan Basic Stamp 2 di mana menggunakan P0 sebagai input dari SRF04 dan P1 sebagai output echo dari SRF04.
commit to user
18 digilib.uns.ac.id
perpustakaan.uns.ac.id
Gambar 8. Contoh rangkaian SRF04 Berikut tahapan sensor SRF04 dalam mengindikasi jarak: TesSRF04.bs2 ‘Lab Robotics e-Technology Center ‘Faktor konversi ‘perintah PULSIN mengembalikan nilai round trip ‘echo time 2 uS dimana sama dengan ‘perjalan 1 arah 1uS ‘jarak=(echo time) /factor konversi ‘gunakan 74 untuk inchi
(73.74 us per 1 inchi)
‘gunakan 29 untuk sentimeter ( 29.033 pe 1 cm)
' {$STAMP BS2p} ' {$PBASIC 2.5} convfac CON 74 ' use inches counter VAR Byte wDist VAR Word
commit to user
19 digilib.uns.ac.id
perpustakaan.uns.ac.id
INIT CON 0 ’ hubungan di port p0 ECHO CON 1 main: GOSUB sr_sonar ' baca jarak depan DEBUG DEC wDist, CR sr_sonar: PULSOUT INIT,5 ' 10us init pulse PULSIN ECHO,1,wDist ' measure echo time wDist=wDist/convfac ' convert to inches RETURN
C. Komponen – Komponen Yang Digunakan Lainnya 1. Resistor Resistor merupakan komponen pasif elektronika yang berfungsi untuk membatasi arus listrik yang mengalir. Berdasarkan kelasnya resistor dibagi menjadi dua yaitu Fixed resistor dan Variable Resistor. Resistor pada umumnya terbuat dari carbon film atau metal film, tetapi tidak menutup kemungkinan untuk dibuat dari material yang lain.
Gambar 9. Simbol resistor commit to user
20 digilib.uns.ac.id
perpustakaan.uns.ac.id
2. Fixed Resistor Fixed Resistor merupakan resistor yang mempunyai nilai tetap. Ciri fisik dari resistor ini adalah bahan pembuat resistor terdapat di tengahtengah dan pada pinggirnya terdapat dua conduction metal, biasanya kemasan seperti ini disebut dengan axial. Ukuran fisik Fixed Resistor bermacam-macam, tergantung pada daya resistor yang dimilikinya. Misalnya fixed resistor dengan daya 5 watt pasti mempunyai bentuk fisik yang jauh lebih besar dibandingkan dengan fixed resistor yang mempunyai daya ¼ watt. Seiring dengan perkembangan teknologi pada saat ini, diciptakanlah sebuah teknologi baru yang disebut dengan SMT (Surface Mount Technology). Dengan menggunakan teknologi ini bentuk dari fixed resistor menjadi lebih kecil lagi, sehingga kita dapat membuat suatu sistem yang mempunyai ukuran sekecil mungkin. Ada beberapa macam kemasan standard yang sudah ditentukan oleh Industri elektronika antara lain: - 1206 ukuran = 3.0 mm x 1.5 mm, 2 terminal - 0805 ukuran = 2.0 mm x 1.3 mm, 2 terminal - 0603 ukuran = 1.5 mm x 0.8 mm, 2 terminal Selain kemasan axial terdapat pula kemasan lain yang disebut SIP (Single-In-Line). Di dalam kemasan ini terdapat lebih dari satu resistor yang biasanya disusun paralel dan mempunyai satu pusat yang disebut common. commit to user
21 digilib.uns.ac.id
perpustakaan.uns.ac.id
Gambar 10. Resistor Single-In-Line
Gambar 11. Bentuk Fisik Resistor
Pada gambar 11 ditunjukkan beberapa contoh bentuk fisik dari fixed resistor. Dari yang paling atas dapat dilihat bentuk fisik dari resistor dengan daya 1/8, ¼, 1, 2, dan 5 watt. Pada gambar 11 sebelah kanan ditunjukkan beberapa contoh bentuk fisik dari fixed resistor dengan toknologi SMT (Surface Mount Technology). Sedangkan pada gambar 10 ditunjukkan contoh bentuk fisik dari resistor dengan kemasan yang disebut SIP (SingleIn-Line). commit to user
22 digilib.uns.ac.id
perpustakaan.uns.ac.id
3. Variable Resistor Untuk jenis resistor ini memiliki dua tipe. Untuk tipe pertama dinamakan Variable Resistor dan nilainya dapat diubah sesuai keinginan dengan mudah dan sering digunakan untuk pengaturan volume, bass, balance, dll. Sedangkan yang kedua adalah semi-fixed resistor. Nilai dari resistor ini biasanya hanya diubah pada kondisi tertentu saja. Contoh penggunaan dari semi-fixed resistor adalah tegangan referensi yang digunakan untuk ADC, fine tune circuit, dll. Ada beberapa model pengaturan nilai Variable resistor, yang sering digunakan adalah dengan cara memutar. Pengubahan dengan cara memutar biasanya terbatas sampai 300 derajat putaran. Ada beberapa model variable resistor yang harus diputar berkali - kali untuk mendapatkan semua nilai resistor. Model ini dinamakan “Potentiometers” atau “Trimmer Potentiometers”.
Gambar 12. Bentuk Fisik Variable Resistor
Pada gambar 12 ditunjukkan beberapa contoh bentuk fisik dari variable resistor. Gambar bentuk yang pertama sering disebut dengan commit to user
23 digilib.uns.ac.id
perpustakaan.uns.ac.id
“Trimmer Potentiometers”. Gambar bentuk yang kedua merupakan contoh gambar dari semi-fixed resistor yang biasanya dipasang pada PCB (Printed Circuit Board). Sedang gambar bentuk yang ketiga merupakan contoh dari “Potentiometers” yang biasanya digunakan sebagai volume control. 4. Kapasitor Kapasitor adalah sebuah piranti elektrik yang dapat menyimpan energi dalam bentuk medan listrik di antara sepasang plat konduktor. Kapasitor terdiri dari dua buah elektrode yang dipisahkan oleh sebuah insulator atau dielectric. Kapasitansi dari sebuah pelat sejajar dinyatakan dengan rumus:
Kapasitansi dari kapasitor (C) menyatakan besarnya muatan (Q) yang disimpan akibat adanya beda potensial (V) yang diberikan di antara kedua pelat, dinyatakan dalam rumus berikut:
Gambar 13. Simbol Kapasitor
commit to user
24 digilib.uns.ac.id
perpustakaan.uns.ac.id
Berikut adalah beberapa contoh bentuk fisik dari kapasitor: a. Kapasitor Non-Polar - Kapasitor Tantalum
- Kapasitor Polyester Film
- Kapasitor Polypropylene
- Kapasitor Mylar
- Kapasitor Keramik
b. Kapasitor Polar - Kapasitor Elektrolit
commit to user
25 digilib.uns.ac.id
perpustakaan.uns.ac.id
c. Kapasitor Variable - Kapasitor Trimmer
- Kapasitor Tuning
Gambar 14. Bentuk fisik kapasitor 5. Transistor Transistor dalam rangkaian elektronika selain berfungsi sebagai penguat, dapat juga berfungsi sebagai saklar. Transistor adalah suatu komponen aktif yang terbuat dari bahan semi konduktor dan dibentuk dari dua hubungan PN. Dari dua hubungan tersebut terdapat dua kemungkinan hubungan yang dapat dibentuk yaitu PNP dan NPN seperti dalam Gambar 10. Transistor ini digunakan sebagai switching untuk membunyikan alarm. Basis Emiter
P N
Basis Kolektor
P
Emiter
NP
Gambar 15. Transistor NPN dan PNP commit to user
Kolektor
N
26 digilib.uns.ac.id
perpustakaan.uns.ac.id
Hal-hal yang perlu diperhatikan dalam penggunaan transistor adalah sebagai berikut: 1. Arus emitor merupakan penjumlahan dari arus kolektor dan arus basis IE = IB+IC 2. Arus kolektor hampir sama dengan arus emitor IC + IE 3. Arus basis jauh lebih kecil dari arus kolektor dan emitor IB << IC IB << IE Hubungan antara arus basis dan arus kolektor dinyatakan sebagai penguatan arus seperti dalam persamaan berikut: ß= hFE = IC/IB Jika Vin bertambah, lebih banyak arus basis yang mengalir, menimbulkan lebih banyak arus kolektor. Vin yang cukup besar akan menjenuhkan transistor. Jika transistor jenuh, kolektornya secara ideal ditanahkan. Tegangan pada resistor 1kΩ sama dengan tegangan catu dikurangi tegangan pada LED, karena itu:
Gambar 16. Penggunaan Transistor NPN Rc = VCC - VLED / ILED
commit to user
27 digilib.uns.ac.id
perpustakaan.uns.ac.id
6. Daerah Kerja Transistor Transistor bekerja pada tiga daerah kerja seperti ditunjukkan dalam Gambar:
Gambar 17. Garis beban DC § Daerah Kerja Jenuh (Saturasi) Perpotongan dari garis beban dan kurva IB=IB(sat) disebut penjenuhan (saturation). Pada daerah ini arus basis sama dengan IB(sat) dan arus kolektor adalah maksimum. Pada penjenuhan, dioda kolektor kehilangan reverse bias dan kerja transistor yang normal terhenti. Perhitungan arus kolektor pada saat saturasi adalah: I C ( sat )
VCC RC
dan perhitungan untuk arus basis adalah: I b(sat) =
I C(sat)
b dc
Tegangan kolektor-emiter pada penjenuhan adalah: V CE = VCC (sat) commit to user
perpustakaan.uns.ac.id
28 digilib.uns.ac.id
Jika arus basis lebih besar daripada IB(sat), arus kolektor tak dapat bertambah karena dioda kolektor tidak lagi dibias reverse. Dengan kata lain, perpotongan dari garis beban dan kurva basis yang lebih tinggi masih menghasilkan titik penjenuhan yang sama. § Daerah kerja sumbat (cut off). Titik dimana garis beban memotong kurva IB=0 disebut titik sumbat (cut off). Pada titik ini arus basis adalah nol dan arus kolektor kecil sehingga dapat (hanya arus bocoran ICEO yang ada). Pada titik sumbat, dioda emitor kehilangan forward bias, dan kerja transistor yang normal terhenti. Untuk perkiraan aproksimasi tegangan diabaikan kolektor-emitor adalah: ICE (cut off) = ICC § Daerah kerja aktif. Semua titik operasi antara titik sumbat dan penjenuhan adalah daerah aktif dari transistor. Dalam daerah aktif, dioda emitor dibias forward dan dioda kolektor dibias reverse. Titik Q (Quiescent) adalah titik perpotongan dari arus basis dan garis beban. 7. Dioda Dioda merupakan suatu komponen elektronik yang dapat melewatkan arus pada satu arah saja yang terbuat dari bahan semikonduktor. Jika dioda kita beri tegangan panjar mundur maka bandgap antara pita konduksi dengan pita valensi akan semakin besar sehingga menyebabkan tidak adanya elektron yang berpindah dari pita konduksi ke pita valensi. Sedangkan jika kita beri tegangan panjar maju maka bandgap antara pita commit to user
29 digilib.uns.ac.id
perpustakaan.uns.ac.id
konduksi dan pita valensi menjadi kecil yang menyebabkan elektron dapat berpindah dari pita konduksi ke pita valensi sehingga menyebabkan adanya arus yang mengalir. Kita dapat menyelidiki karakteristik statik dioda, dengan cara memasang dioda seri dengan sebuah catu daya DC dan sebuah resistor. Dioda memiliki fungsi yang unik yaitu hanya dapat mengalirkan arus satu arah saja. Struktur dioda tidak lain adalah sambungan semikonduktor P dan N. Satu sisi adalah semikonduktor dengan tipe P dan satu sisinya yang lain adalah tipe N. Dengan struktur demikian arus hanya akan dapat mengalir dari sisi P menuju sisi N.
Gambar 18. Simbol dan struktur dioda Gambar ilustrasi di atas menunjukkan sambungan PN dengan sedikit porsi kecil yang disebut lapisan deplesi (depletion layer), di mana terdapat keseimbangan hole dan elektron. Seperti yang sudah diketahui, pada sisi P banyak terbentuk hole yang siap menerima elektron sedangkan di sisi N banyak terdapat elektron-elektron yang siap untuk bebas merdeka. Lalu jika diberi bias positif, dengan arti kata memberi tegangan potensial sisi P lebih besar dari sisi N, maka elektron dari sisi N dengan serta merta akan tergerak untuk mengisi hole di sisi P. Tentu kalau elektron mengisi hole disisi P, commit to user
30 digilib.uns.ac.id
perpustakaan.uns.ac.id
maka akan terbentuk hole pada sisi N karena ditinggal elektron. Ini disebut aliran hole dari P menuju N, Kalau mengunakan terminologi arus listrik, maka dikatakan terjadi aliran listrik dari sisi P ke sisi N.
Gambar 19. Dioda dengan bias maju Sebalikya apakah yang terjadi jika polaritas tegangan dibalik yaitu dengan memberikan bias negatif (reverse bias). Dalam hal ini, sisi N mendapat polaritas tegangan lebih besar dari sisi P.
Gambar 20. Dioda dengan bias negatif Tentu jawabannya adalah tidak akan terjadi perpindahan elektron atau aliran hole dari P ke N maupun sebaliknya. Karena baik hole dan elektron masing-masing tertarik ke arah kutub berlawanan. Bahkan lapisan deplesi (depletion layer) semakin besar dan menghalangi terjadinya arus. Demikianlah sekelumit bagaimana dioda hanya dapat mengalirkan arus satu arah saja. Dengan tegangan bias maju yang kecil saja dioda sudah menjadi konduktor. Tidak serta merta diatas 0 volt, tetapi memang tegangan commit to user konduksi. Ini disebabkan karena beberapa volt diatas nol baru bisa terjadi
31 digilib.uns.ac.id
perpustakaan.uns.ac.id
adanya dinding deplesi (deplesion layer). Untuk dioda yang terbuat dari bahan Silikon tegangan konduksi adalah diatas 0.7 volt. Kira-kira 0.2 volt batas minimum untuk dioda yang terbuat dari bahan Germanium.
Gambar 21. Grafik arus dioda Sebaliknya untuk bias negatif dioda tidak dapat mengalirkan arus, namun memang ada batasnya. Sampai beberapa puluh bahkan ratusan volt baru terjadi breakdown, dimana dioda tidak lagi dapat menahan aliran elektron yang terbentuk di lapisan deplesi.
commit to user
32 digilib.uns.ac.id
perpustakaan.uns.ac.id
BAB III DESAIN DAN PERANCANGAN
A. Identifikasi Masalah Untuk mencapai tujuan perancangan alat ukur tinggi badan otomatis ini ada beberapa kebutuhan yang perlu di pertimbangkan, diantaranya: 1. Perlu komponen yang dapat mengendalikan keseluruhan. 2. Perlu komponen yang dapat mendeteksi adanya objek yang akan diukur. 3. Perlu adanya display yang digunakan untuk menampilkan hasil pengukuran tinggi bandan otomatis.
B. Sistem blok Alat pengukur tinggi badan ini menggunakan perangkat keras sebagai berikut: Mikrokontroler AT89C2051, 1 buah sensor ultrasonic SRF04 dan 1 buah leptop sebagai penampil hasil pengukuran. Blok diagram pengukur tinggi badan otomatis ditunjukan pada gambar 22.
commit to user
32
33 digilib.uns.ac.id
perpustakaan.uns.ac.id
SENSOR
MIKROKONTROLER
SRF04
AT89C2051
KOMPUTER
Gambar 22. Diagram blok pengukur tinggi badan Dari gambar 22 di atas, rancangan bangun alat pengukur tinggi badan otomatis terdiri atas tiga bagian yaitu piranti masukan, mikrokontroler, dan piranti keluaran. Pada piranti masukan terdapat sensor yang merupakan sumber perintah bagi mikrokontroler tersebut. Adapun jenis sensor yang dipakai yaitu sensor ultrasonic SRF04. Sedangkan pada piranti keluaran adalah laptop untuk menampilkan hasil pengukuran tinggi badan.
C. Analisa Kebutuhan Dalam pembuatan alat sistem ini memerlukan beberapa perangkat hardware, software, dan alat pendukung yang saling menyebabkan keterkaitan, perangkat-perangkat tersebut antara lain : 1. Hardware a. Blok Mikrokontroler Rangkaian pengendali dari alat yang bertugas mengatur kerja rangkaian dengan cara mengendalikan input output yang diberikan ke rangkaian mikrokontroler. commit to user
perpustakaan.uns.ac.id
34 digilib.uns.ac.id
b. Blok Sensor ultrasonic Sensor digunakan untuk mendeteksi tinggi badan orang. c. Blok Catu Daya Trafo digunakan untuk menurunkan tegangan sesuai dengan yang diperlukan alat/rangkaian dari tegangan AC menjadi tegangan DC. 2 Software a. Visio Program yang digunakan untuk menggambar flowchart dari alat yang dibuat. b. Protel Software yang digunakan untuk menggambar layout PCB dan rangkaian skema. c. Notepad Merupakan software untuk menulis program. d. Wordpad Merupakan software untuk mengecek kesalahan yang terjadi pada program. e. Asm_51 Digunakan untuk mengubah file dengan ekstensi ASM menjadi ekstensi HEX. f. Aec_isp Digunakan untuk mengambil file dengan ekstensi HEX dan memprogram ke dalam mikrokontroler AT89C2051 commit to user
35 digilib.uns.ac.id
perpustakaan.uns.ac.id
3. Alat Pendukung a. Solder Alat yang digunakan untuk memanaskan timah patri untuk menyambung komponen-komponen elektronika dengan PCB. b. Multimeter Merupakan alat untuk mengukur arus, tegangan dan hambatan dari suatu komponen maupun rangkaian. c. Obeng Digunakan untuk merapatkan sekrup/mur dengan rangka yang terdiri atas obeng plus dan minus. d. Bor Untuk melubangi pcb maupun rangka. e. Cutter Alat ini digunakan untuk memotong pcb serta rangka. f. Tang Alat ini digunakan untuk memotong dan mengupas kabel maupun memotong kaki komponen. g. Minyak Damar (Gondorukem) Digunakan untuk melapisi jalur pcb agar tembaga tidak mudah terkelupas saat disolder berulang-ulang dan tidak mudah berkarat. h. Lotfett Digunakan untuk membersikan solder agar hasil solderan rapi. commit to user
36 digilib.uns.ac.id
perpustakaan.uns.ac.id
i. Plastic Still Untuk menutupi soldiran kabel dengan konektor yang banyak agar tidak mudah lepas.
4. Alur Tahapan Pembuatan Dalam perancangan dan pembuatan alat pengukur tinggi badan otomatis tahapan yang dilakukan adalah membuat rancangan alat yang akan dibuat, kemudian mencetaknya ke dalam pcb serta melubanginya. Kemudian memasang setiap komponen dengan benar di pcb dan mensoldernya. Rangkaian minimum sistem dibuat dan diuji juga dengan rangkaian tiap bloknya, pengisian program dan dilakukan uji coba keseluruhan alat, jika kesalahan terjadi maka diperbaiki dan diperiksa ulang. Setelah selesai alat dipasang dalam rangka yang telah dibuat. Membuat rangkaian dan mencetak pcb Merangkai minimum
Pengujian tiap blok rangkaian
Pengisian program
Pengujian keseluruhan alat Menyatukan alat dengan rangka Hasil
Gambar 23. Tahapan Pembuatan alat ukur tinggi badan otomatis commit to user
37 digilib.uns.ac.id
perpustakaan.uns.ac.id
5. Rangkaian Keseluruhan Sistem Rangkaian keseluruhan dari alat tinggi badan otomatis dapat dibagi menjadi 3 bagian utama yaitu bagia minimum system mikrokontroler, bagian input dan output. Bagian minimum system mikrokontroler merupakan bagian dimana input dari sensor ultrasonic akan dproses sesuai program yang digunakan kemudian diteruskan kebagian output. Bagian input terdiri dari sebuah sensor ultrasonic jenis SRF04 yang digunakan sebagai pengambil data tinggi badan orang. Sedangkan bagian output berupa leptop untuk mengetahui hasil dari pengukuran tinggi badan. Rangkaian skema alat tinggi badan otomatis ditunjukan pada Gambar 24.
commit to user
38 digilib.uns.ac.id
perpustakaan.uns.ac.id
Gambar 24. Rangkaian Skematik pengukur tinggi badan otomatis
commit to user
39 digilib.uns.ac.id
perpustakaan.uns.ac.id
6. Rangkaian Minimum AT89C2051 Rangkaian mikrokontroler berfungsi sebagai pemroses data input dan menghasilkan output. Pada alat pengukur tinggi badan ini input data di peroleh dari sensor SRF04 sedangkan outputnya adalah tampilan laptop. Di dalam minimum system mikrokontroler ini terdapat tiga port yang digunakan sebagai input dan output data. Pada alat ukur tinggi badan otomatis ini hanya menggunakan dua port saja. Port B dipakai sebagai input dari sensor SRF04 dan port A sebagai output ke laptop. Rangkaian minimum system dapat dilihat pada gambar 25.
Gambar 25. Rangkaian Minimum AT89C2051
commit to user
perpustakaan.uns.ac.id
40 digilib.uns.ac.id
7. Rangkaian Sensor Pada rangkaian tinggi badan otomatis ini menggunakan sensor ultrasonic. Sensor ultrasonic adalah yang bekerja berdasarkan prinsip kerja pantulan gelombang suara, di mana sensor menghasilkan gelombang suara kemudian menangkap kembali dengan perbedaan waktu sebagai dasar pengindra. Perbedaan waktu antara gelombang suara yang dipancarkan dan diterima kembali adalah berbanding lurus dengan jarak objek yang dipantulkannya. Sensor ultrasonic dipasang di bagian atas tiang karena sensor ini digunakan untuk mendeteksi tinggi seseorang. Sensor ini memiliki tiga pin yaitu Vout, Vcc, dan Ground. Pada alat tinggi badan otomatis ini, Vout dihubungkan dengan Port B dari mikrontroler. Sensor ultrasonic ini memiliki kontak jarak 3 cm sampai 3 meter. Prinsip kerja sensor jarak sensor ultrasonic SRF04 ditunjukan pada gambar 26.
Gambar 26. Rangkaian Sensor Ultrasonik SRF04 commit to user
41 digilib.uns.ac.id
perpustakaan.uns.ac.id
8. Perancangan Software Perancangan software merupakan proses perancangan pembuatan program yang nantinya akan dijalankan oleh mikrokontroler. Program tersebut akan selalu berjalan jika mikrokontroler dinyalakan. Program ini disimpan pada EEPROM yang ada dalam mikrokontroler, sehingga hanya perlu sekali men-download-kan program ke mikrontroler. Karena walaupun sumber tegangan dimatikan program masih tersimpan pada EEPROM. Membuat program memerlukan lebih dari sekedar menulis serangkaian intruksi. Pada saat menulis program, sebaiknya dimulai dengan membuat rencana program secara terperinci atau garis besarnya. Dalam rancangan sebuah program penulis terlebih dahulu membuat flowchart. Seperti
diketahui
dalam
menyusun
program
kita
harus
memperhatikan benar-benar agar program tersebut mempunyai aturan logika yang benar. Jika logika yang ada pada suatu program tidak benar, tentunya akan adanya kesalahan dari hasil program tersebut. Untuk membantu melacak kebenaran logika sebuah program, yang juga sangat membantu anda untuk memahami sebuah persoalan sebelum anda memulai menuliskan kode-kode programnya, sering kali kita memerlukan alat bantu yang disebut flowchart. Flowchart alat ukur tinggi badan otomatis ditunjukan pada Gambar 27.
commit to user
42 digilib.uns.ac.id
perpustakaan.uns.ac.id
start
Dt- sense usirr aktif
tidak pantulan
ya Terima data Jarak= x
Tinggi= 200-x
display
tidak
end
ya stop
Gambar 27. Flowchart pengukur tinggi badan otomatis commit to user
43 digilib.uns.ac.id
perpustakaan.uns.ac.id
BAB IV IMPLEMENTASI DAN ANALISA
Pada bab ini akan dibahas mengenai langkah-langkah pengujian terhadap alat pengkur tinggi badan otomatis. Pengujian dilakukan untuk mengetahui apakah alat pengukur tinggi badan otomatis yang dibuat sesuai dengan perencanaan dan perancangan system. Pengujian alat ini meliputi: a. Pengujian program Visual Basic b. Pengujian sensor c. Pengujian sistem AT89C2051 d. Pengujian rangkaian secara keseluruhan
A. Pengujian Visual Basic Bagian ini hanya program Visual Basic yang berfungsi sebagai penampilan hasil pengukuran tinggi badan. Serial Port laptop (Tx) dihubungkan ke port P3.0 dan (Rx) dihubungkan ke port 3.1 melalui IC MAX 232 pada mikrokontroler yang berfungsi mengirimkan data hasil pengolahan untuk ditampilkan dalam bentuk database. Langkah- langkah dalam melakukan pengujian ini adalah 1. Hubungkan downloader AT89C2051 dengan leptop 2. Downloadkan program berikut. Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszsoundname As String, ByVal uFlags As Long) As Long commit to user As Integer) Private Sub Command1_Click(Index
perpustakaan.uns.ac.id
44 digilib.uns.ac.id
Select Case Index Case 0 'add If Data1.Recordset.RecordCount > 0 Then Data1.Recordset.MoveLast Text1(0).Text = Data1.Recordset.Fields(0) + 1 Else Text1(0).Text = 1 End If Data1.Recordset.AddNew For x = 1 To Text1.UBound Text1(x).Text = "" Next Text1(1).SetFocus Case 1 'save On Error Resume Next If Command1(4).Caption = "STOP" Then Data1.Recordset.Edit For x = 0 To (Text1.UBound) Data1.Recordset.Fields(x) = Text1(x).Text Text1(x).Text = "" Next Data1.Recordset.Update If Command1(4).Caption = "STOP" Then Command1_Click (5) Case 2 'edit Data1.Recordset.Edit Case 3 'delete Data1.Recordset.Delete For x = 0 To (Text1.UBound) Text1(x).Text = "" Next Data1.Recordset.Requery DBGrid1.ReBind Case 4 'RUN If Command1(4).Caption = "RUN" Then MSComm1.PortOpen = True Command1(4).Caption = "STOP" Command1(5).Caption = "Next" Command1(6).Caption = "Prev" On Error Resume Next Data1.Recordset.MoveFirst For x = 0 To (Text1.UBound) Text1(x).Text = Data1.Recordset.Fields(x) Next ucap Else MSComm1.PortOpen = False commit to user Command1(4).Caption = "RUN"
perpustakaan.uns.ac.id
Command1(5).Caption = "Print" Command1(6).Caption = "Delete All" End If Case 5 'Print If Command1(5).Caption = "Print" Then DataReport1.Show Else If Data1.Recordset.EOF Then Exit Sub Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Exit Sub On Error Resume Next For x = 0 To (Text1.UBound) Text1(x).Text = Data1.Recordset.Fields(x) Next ucap End If Case 6 'Delete All If Command1(6).Caption = "Delete All" Then xx = MsgBox("Semua data dihapus...?", vbOKCancel) If xx = vbCancel Then Exit Sub Data1.Recordset.MoveFirst Do While Not Data1.Recordset.EOF Data1.Recordset.Delete Data1.Refresh Loop Else If Data1.Recordset.BOF Then Exit Sub Data1.Recordset.MovePrevious If Data1.Recordset.BOF Then Exit Sub On Error Resume Next For x = 0 To (Text1.UBound) Text1(x).Text = Data1.Recordset.Fields(x) Next ucap End If Case 7 'Find nomor On Error Resume Next If Text1(0).Text = "" Then Exit Sub Data1.Recordset.FindFirst "nomor=" & Text1(0).Text If Data1.Recordset.NoMatch Then Exit Sub For x = 1 To (Text1.UBound) Text1(x).Text = Data1.Recordset.Fields(x) Next End Select End Sub commit to user
45 digilib.uns.ac.id
perpustakaan.uns.ac.id
46 digilib.uns.ac.id
Private Sub DBGrid1_Click() DBGrid1.Refresh End Sub Private Sub ucap() sndPlaySound "awal.wav", 0 Dim i As Integer xx = konversi(Data1.Recordset!nomor) tmpstring = Split(xx, " ") i = UBound(tmpstring) For x = 0 To i If Trim(tmpstring(x)) <> "" Then fil = App.Path & "\" & Trim(tmpstring(x)) & ".wav" sndPlaySound fil, 0 End If Next x sndPlaySound "akhir.wav", 0 End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End Sub Private Sub MSComm1_OnComm() 'Dim yy As Double 'Dim xx As String xx = MSComm1.Input Text3.Text = xx yy = (Asc(Left(xx, 1)) * 256 + Asc(Right(xx, 1))) * (12000000 / 11059200 / 58.14) Text2.Text = yy If yy > 200 Then yy = 200 Text1(4).Text = Format(200 - yy, "###") End Sub
B. Pengujian Sistem AT89C2051 Pengujian ini digunakan untuk mengetahui apakah port dari mikrokontroler dapat berfungsi dengan baik sesuai dengan program yang nantinya akan diberikan. Cara untuk melakukan pengujian adalah dengan memberikan source code program berikut pada mikrokontroler. commit to user
47 digilib.uns.ac.id
perpustakaan.uns.ac.id
$mod51 Pin bit pout bit
p3.7 p1.0
;pulse in ;pulse out
start: MOV mov mov setb loop: call jmp
clr pin SCON,#50H tmod,#21h th1,#0fdh tr1 call delay ukur loop
delay: dl2:
mov mov
r7,#10 r6,#200
;10*0,1 = 1 S ;200*0,5=0,1s
dl1: djnz djnz djnz ret
mov r5,#250 r5,$ r6,dl1 r7,dl2
;250*2=0,5mS
ukur: mov setb mov djnz clr setb jnb lagi: mov cjne kirim: mov jnb clr mov jnb clr ret end
mov tl0,#0 ;reset th0,#0 ;timer 0 pin ;pulse in high b,#5 ;delay b,$ ;10uS pin ;pulse in low tr0 ;timer on pout,$ jnb pout,kirim ;ada echo, kirim data a,th0 a,#255,lagi ;overflow clr ti ;kirim data sbuf,th0 ;kirim MSB ti,$ ti sbuf,tl0 ;kirim LSB ti,$ ti
43 timer 2 16 bit ;timer 1 baudrate, ;9600bps ;timer 1 run ;tunggu 1 detik ;ukur ;ulangi
commit to user
48 digilib.uns.ac.id
perpustakaan.uns.ac.id
C. Pengujian Sensor SRF04 Pengujian sensor ultrasonic bertujuan untuk mengetahui jarak minimum dan maksimal yang dapat diukur oleh sensor ultrasonic SRF04, serta membandingkan
jarak
sebenarnya
dengan
jarak
hasil
pengukuran
menggunakan sensor. Untuk menguji sensor ultrasonic jenis SRF04 dapat mengunakan rangkaian seperti pada Gambar 28.
Gambar 28. Rangkaian Pengujian Sensor Pengujian sensor ultrasonic jenis SRF04 ini dilakukan dengan cara menghubungkan sensor dengan downloader AT89C2051. Kemudian outputnya commit to user
49 digilib.uns.ac.id
perpustakaan.uns.ac.id
dihubungkan dengan laptop. Download-kan source code program yang telah dibuat ke mikrokontroler. Jika program yang telah di-download bisa berjalan dengan baik, maka sensor tersebut dapat digunakan untuk mengukur jarak. Selanjutnya adalah melakukan uji coba pengukuran jarak sensor SRF04 dengan cara menempatkan sensor ultrasonic di depan penghalang dan memvariasi jarak pengukuran. Hasil yang didapat dari pengukuran jarak terdapat pada tabel 5. Tabel 5. Hasil Pengukuran Jarak Jarak penghalang (cm)
Jarak tampilan pada laptop (cm)
0
3
3
3
1
3
3
3
2
3
3
3
3
3
3
3
4
5
3
3
5
5
4
5
10
11
9
12
20
16
19
18
30
31
28
31
40
42
43
42
50
51
49
49
100
105
103
103
200
210
205
208
300
340
320
325
Dari pengujian yang dilakukan didapat bahwa sensor ultrasonic commit to user SRF04 mampu mengukur jarak mulai dari 0 cm. Pada pengukuran jarak 350
50 digilib.uns.ac.id
perpustakaan.uns.ac.id
cm didapatkan hasil yang tidak sesuai atau menyimpang jauh dengan jarak sebenarnya, hal ini disebabkan karena kemampuan ultrasonic SRF04 jenis ini hanya dapat mengukur jarak maksimal 300cm atau 3 meter. Angka yang ditampilkan pada laptop terdapat selisih dengan jarak yang sebenarnya adalah karakteristik penghalang atau objek yang dapat memantulkan sinyal kembali ke sensor ultrasonic. Secara teori, sensor ultrasonic bisa bekerja dengan baik sesuai dengan sepesifikasi dari sensor ultrasonic yaitu dapat mengukur jarak mulai dari jarak minimum 3cm sampe jarak maksimum 3m.
Gambar 29. Hasil Pengujian Sensor
commit to user
51 digilib.uns.ac.id
perpustakaan.uns.ac.id
D. Pengujian Alat secara Keseluruhan Pada alat pengukur tinggi badan otomatis ini mikrokontroler AT89C2051
merupakan
otak
semua proses
hadware dan
software.
Mikrokontroler akan memproses semua data yang masuk kedalam sebuah program yang telah dibuat. Untuk
mengetahui
tinggi
badan
seseorang,
mikrokontroler
AT89C2051 akan memprose input dari sensor SRF04 melalui portB. Dalam proses menghitung tinggi badan, hasil dapat diperoleh dari tinggi sensor (200cm) dikurangi jarak pengukuran sensor kebagian kepala. Kemudian hasil yang dihasilkan ditampilka di dalam leptop. Sebelum melakukan pengujian, dilakukan pengecekan masingmasing rangkaian penyusun dan pengisian program ke IC mikrokontroler AT89C2051. Adapun langkah-langkah pengujian adalah sebagai berikut: 1. Menghubungkan rangkaian kecatu daya. 2. Mengatur jarak penghalang yang digunakan untuk pengukur 3. Mencatat hasil pengukuran untuk kemudian dianalisa. Pengujian rangkaian secara keseluruha dapat dilakukan dengan cara menghubungkan sensor SRF04 dengan mikrokontroler pada portB. Sedangkan hasil outputnya ditampilkan pada leptop yang terhubung pada mikrokontroler pada portA. Kemudian download listing program yang dipakai untuk menguj. Listing program secara keseluruhan terdapat pada lampiran. Pengujian alat dilakukan dengan mengukur jarak penghalang yang ada di depan sensor. Hasil yang diperoleh dapat dilihat pada tabel 6. commit to user
52 digilib.uns.ac.id
perpustakaan.uns.ac.id
Tabel 6. Hasil Pengujian Alat Jarak penghalang (cm)
Jarak tampilan pada leptop (cm)
5
195
197
193
10
190
188
191
15
185
187
187
20
180
182
180
25
176
176
178
30
168
169
165
40
158
159
158
50
151
149
150
60
139
142
142
Ilustrasi percobaan diatas menggunakan buku dengan mengunakan jarak yang ditentukan menggunakan meteran lalu sensor dihadapkan keatas. Dengan melihat leptop dapat dilihat hasil yang berubah ubah dan hasil tidak sama. Jadi dapat disimpulkan bahwa sensor yang digunakan tidak tepat untuk digunakan alat ukur tinggi badan otomatis secara akurat.
commit to user
53 digilib.uns.ac.id
perpustakaan.uns.ac.id
BAB V PENUTUP
A. Kesimpulan Berdasarkan teori dan pembahasan yang telah dijelaskan pada bab-bab sebelumnya, maka dapat disimpulakan bahwa: 1. Mikrokontroler AT89C2051 dapat digunakan sebagai pengendali alat tinggi badan otomatis dengan baik. 2. Dalam pemasangan alat membutuhkan tingkat ketelitian yang tinggi supaya alat ukur tinggi badan otomatis dapat beroperasi dengan baik. 3. Alat ukur tinggi badan ini memiliki skala terkecil dalam centimeter. 4. Alat pengukur tinggi badan ini belum bisa mengukur tinggi badan secara akurat.
B. Saran Sebagai acuan untuk mendapatkan yang lebih baik dari laporan yang dibuat dalam tugas akhir ini,dapat memberikan saran sebagai berikut: 1. Dengan melihat manfaat alat ini, diharapkan semoga pembaca mampu mengembangkan alat ini dengan baik lagi dan menggunakan sensor yang lebih akurat lagi misal menggunakan sensor laser. 2. Untuk ke depannya, pengukuran tinggi badan dengan menggunakan alat ini dapat lebih akurat lagi tanpa harus dipengaruhi oleh faktor luar seperti penyetingan tiang, supaya tinggi sensor dengan lantai lebih akurat (200 cm). commit to user
53