PERANCANGAN DAN PEMBUATAN PENUNJUK ARAH SERTA DETEKSI JARAK BENDA UNTUK TUNANETRA DENGAN OUTPUT SUARA BERBASIS MIKROKONTROLER
SKRIPSI
Oleh: Titik Muji Rahayu (04540005)
JURUSAN FISIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM MALANG 2010
PERANCANGAN DAN PEMBUATAN PENUNJUK ARAH SERTA DETEKSI JARAK BENDA UNTUK TUNANETRA DENGAN OUTPUT SUARA BERBASIS MIKROKONTROLER
SKRIPSI
Diajukan Kepada: Fakultas Sains dan Teknologi Universitas Islam Negeri Maulana Malik Ibrahim Malang Untuk Memenuhi Salah Satu Persyaratan Dalam Memperoleh Gelar Sarjana Sains (S.Si)
Oleh: Titik Muji Rahayu (04540005)
JURUSAN FISIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM MALANG 2010
SURAT PERNYATAAN ORISINALITAS PENELITIAN Saya yang bertanda tangan di bawah ini: Nama
: Titik Muji Rahayu
NIM
: 04540005
Fakultas/Jurusan
: Sains dan Teknologi/Fisika
Judul penelitian
: Perancangan Dan Pembuatan Penunjuk Arah Serta Deteksi Jarak Benda Untuk Tunanetra Dengan Output Suara Berbasis Mikrokontroler
Menyatakan dengan sebenar-benarnya bahwa hasil penelitian saya ini tidak terdapat unsur-unsur penjiplakan karya penelitian atau karya ilmiah yang pernah dilakukan atau dibuat oleh orang lain, kecuali yang secara tertulis dikutip dalam naskah ini dan disebutkan dalam sumber kutipan dan daftar pustaka. Apabila ternyata hasil penelitian ini terbukti terdapat unsur-unsur jiplakan, maka saya bersedia untuk mempertanggung jawabkan, serta diproses sesuai peraturan yang berlaku.
Malang, 6 Juli 2010 Yang Membuat Pernyataan
Titik Muji Rahayu NIM. 04540005
3
LEMBAR PERSETUJUAN
PERANCANGAN DAN PEMBUATAN PENUNJUK ARAH SERTA DETEKSI JARAK BENDA UNTUK TUNANETRA DENGAN OUTPUT SUARA BERBASIS MIKROKONTROLER
SKRIPSI
Oleh: Titik Muji Rahayu (04540005)
Telah disetujui oleh: Dosen pembimbing I
Dosen pembimbing II
Drs. Muhammad Tirono, M.Si. NIP. 19641211 199111 1 001
Novi Avisena, M.Si NIP. 1961109 200604 1 004
Malang, 17 Juni 2010 Mengetahui Ketua Jurusan Fisika
Drs. Muhammad Tirono, M.Si. NIP. NIP. 19641211 199111 1 001
5
LEMBAR PERSEMBAHAN
Karya kecil ini aku persembahkan kepada: Ibu dan BapakQ, yang selalu mencurahkan kasih sayangnya, selalu memberikan dorongan dan motivasinya baik moril maupun spiritual. Semoga Allah membalasnya dengan yang berlipat-lipat. MasQ Eko Wahono Yang selalu memotivasi, menasehati dan mendo’akanQ. MbakQ Erna Yulianti yang selalu menyayangi, mengasihi dan selalu memotivasiQ. Juga Mas Hadi Royani, terimakasih atas segala bantuannya. PonakanQ yang paling imut dan menggemaskan Najwa Rifatul Azizah, semoga menjadi cerdas dan salehah Guru-guruQ dari SD Gelanglor 3, SLTP N I Sukorejo, MA N I Ponorogo, serta dosen-dosen Fisika UIN Maliki Malang . Mbah-mbahQ Mbah Joyo Sudarmo dan Mbah Supangatun, Mbah Suratun dan Mbah Kariman atas kasih sayang, dukungan dan motivasinya. Pak Poh, Bu Dhe, Pak Lik dan Bu LikQ semua atas kasih sayang, dukungan dan motivasinya. Terutama Pak Guru Kardi, terima kasih udah nganterin ke Malang Sepupu-sepupuku yang g bisa Q sebutin satu persatu, makasih atas dukungan, do’a dan motivasinya. KeluargaQ di Hirzia Apartment, segala canda tawa ini tak kan pernah terlupakan: Dewi, Anty, Eno, Arofah, Ulif, Tuhfah, Usfi, Ilmi, Elis. Juga alumni Hirzia: Mbak Aminah, Aishah, Ustadzah Sriti, Lia Temen-temen seangkatanQ: Fida, Nora, M Yu2n, M Wacil, Nuril, M Nurul Aminah yang udah lulus duluan.
7
Guru ngajiQ pertama (Mbak Leli). Guru-guru ngajiku yg lain (yang g bisa Qsebutkan namanya), juga temen-temen ngajiQ (g bisa Q sebutin juga). Makasih udah memberikan banyak ilmu. Saudari2Q di Riefa dan Mazidah, semoga ukhuwah ini tetap terjalin. Keluarga besar Mahasiswa Fisika UIN Maliki Malang, terutama angkatan 2004, jangan pernah lupa. Temen-temen yang udah banyak bantuin: Fajar, Eka’05, Leli, Reza, Evi, Aning, M. Uun, Dany, Erlina, Wondo (makasih laptopnya). Makasih banyak atas segala bantuannya. Saudara-saudaraQ di KAMMI Komsat UIN Maliki Malang, Azzam Islamic Research (AIR) UIN Maliki Malang, PIS_C Malang, KAMMI Daerah Malang, yang banyak mengajarkanQ tentang amanah dan tanggung jawab. Temen-temen masa laluQ: M. Umi, Sulis, Ratna, Nurul, Indah, M. Endang, M. Narten, Sofi. Maaf temen-temen, belum bisa nyambung silaturrahim lagi. Dan semua pihak yang belum bisa Q sebutin satu persatu, terima kasih atas semuanya.
KATA PENGANTAR
Assalamu’alaikum Wr. Wb. Segala puji bagi Allah SWT karena atas rahmat, taufiq dan hidayah-Nya, penulis dapat menyelesaikan penulisan skripsi ini sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains (S.Si). Penulis menyadari bahwa banyak pihak yang telah membantu dalam menyelesaikan penulisan skripsi ini. Untuk itu iringan do’a dan ucapan terima kasih yang sebesar-besarnya penulis sampaikan kepada: 1. Prof. Dr. H. Imam Suprayogo, selaku Rektor Universitas Islam Negeri (UIN) Maulana Malik Ibrahim Malang. 2. Prof. Sutiman Bambang Sumitro, SU. DSc selaku Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri (UIN) Maulana Malik Ibrahim Malang. 3. Bapak Drs. Muhammad Tirono, M.Si selaku ketua jurusan Fisika Universitas Islam Negeri (UIN) Maulana Malik Ibrahim Malang yang juga sebagai Dosen Pembimbing I atas bimbingan, pengarahan, dan kesabarannya hingga penulisan skripsi ini dapat terselesaikan. 4. Bapak Novi Avisena, M.Si selaku Dosen Pembimbing II atas bimbingan, pengarahan, dan kesabarannya dalam membimbing penulisan skripsi ini yang terkait dengan agama hingga penulisan skripsi ini dapat terselesaikan. 5. Seluruh Dosen Fisika dan segenap perangkat Universitas Islam Negeri
9
(UIN) Maulana Malik Ibrahim Malang. 6. Bapak dan Ibuku tercinta yang dengan sepenuh hati memberikan dukungan moril dan spirituil sehingga penulisan skripsi ini dapat terselesaikan 7. Temen-temen
Fisika
khususnya
angkatan
2004
atas
segala
kebersamaannya dari awal masuk hingga lulus kuliah 8. Serta semua pihak yang belum bisa saya sebutkan satu persatu Semoga tugas akhir ini dapat bermanfaat dan menambah khasanah ilmu pengetahuan. Wassalamu’alaikum Wr. Wb. Malang, 16 Juni 2010
Penulis
DAFTAR ISI KATA PENGANTAR ..................................................................................... i DAFTAR ISI ................................................................................................... iii DAFTAR TABEL ........................................................................................... iv DAFTAR GAMBAR ....................................................................................... v DAFTAR LAMPIRAN ................................................................................... vi ABSTRAK ....................................................................................................... vii BAB I PENDAHULUAN ................................................................................ 1 1.1 Latar Belakang ........................................................................................... 1 1.2 Rumusan masalah ...................................................................................... 5 1.3 Tujuan ........................................................................................................ 5 1.4 Manfaat ...................................................................................................... 5 1.5 Batasan masalah ......................................................................................... 6 BAB II TINJAUAN PUSTAKA ..................................................................... 7 2.1 Mata angin ................................................................................................. 7 2.2 Kompas digital HM55B ............................................................................. 9 2.3 Gelombang bunyi ....................................................................................... 13 2.4 Sensor D-Sonar .......................................................................................... 23 2.5 Mikrokontroler AT89S51 .......................................................................... 27 2.6 Keypad 4x4 ................................................................................................ 30 2.7 LCD M1632 ............................................................................................... 31 2.8 ISD 2590 .................................................................................................... 33 2.9 Amplifier..................................................................................................... 37 BAB III METODE PENELITIAN .................................................................. 38 3.1 Waktu dan Tempat Penelitian .................................................................... 38 3.2 Alat dan Bahan .......................................................................................... 38 3.3 Perancangan dan Pembuatan Alat ............................................................. 39 3.4 Pengujian.................................................................................................... 45 3.5 Tahap Pengukuran ..................................................................................... 46 3.6 Tahap Analisis ........................................................................................... 48 BAB IV HASIL DAN PEMBAHASAN ......................................................... 50 4.1 Hasil Penelitian........................................................................................... 50 4.2 Pembahasan................................................................................................ 57 BAB V PENUTUP .......................................................................................... 61 5.1 Kesimpulan ................................................................................................ 61 5.2 Saran ........................................................................................................ 62 DAFTAR PUSTAKA LAMPIRAN-LAMPIRAN
11
DAFTAR TABEL Tabel 2.1 Perintah-perintah yang dikirim ke kompas modul........................... 12 Tabel 2.2 Jawaban perintah dari kompas modul ............................................. 12 Tabel 2.3 Pin-pin pada sensor D-Sonar dan fungsinya .................................... 25 Tabel 2.4 Pin-pin pada ISD 2590 dan fungsinya ............................................. 34 Tabel 4.4 Data arah mata angin ....................................................................... 55 Tabel 4.5 Data jarak benda............................................................................... 56
DAFTAR GAMBAR Gambar 2.1 Pin-pin pada HM55B ................................................................. 10 Gambar 2.2
Cara mengukur sudut yang dibentuk arah utara dan sumbu kompas x
11
Gambar 2.3 Pergeseran dan perubahan dimensi dari elemen volume udara dalam tabung fiktif yang diambil searah gaya gangguan ..................................................................................................... 15 Gambar 2.4 Ilustrasi gelombang masuk, gelombang pantul dan gelombang transmisi pada batas antara dua media tali di x = 0 ................... 20 Gambar 2.5 Pantulan gelombang ultrasonik .................................................. 24 Gambar 2.6 Tata letak komponen pada sensor D-Sonar ............................... 24 Gambar 2.7 Timing diagram D-Sonar ........................................................... 26 Gambar 2.8 Pin-pin pada mikrokontroler AT89s51....................................... 28 Gambar 2.9 Penampang keypad 4x4 ............................................................. 31 Gambar 2.10 Pin-pin pada LCD M1632 .......................................................... 32 Gambar 2.11 Pin-pin pada ISD 2590 ............................................................... 34 Gambar 3.1 Diagram blok perancangan sistem keseluruhan ......................... 39 Gambar 3.2 Rangkaian kompas modul HM55B ............................................ 40 Gambar 3.3 Rangkaian sensor D-Sonar ......................................................... 40 Gambar 3.4 Rangkaian LCD M1632 ............................................................. 41 Gambar 3.5 Rangkaian keypad ...................................................................... 42 Gambar 3.6 Rangkaian ISD 2590 .................................................................. 42 Gambar 3.7 Flowchart perancangan software ............................................... 44 Gambar 4.1 Diagram pembagian sudut arah mata angin ............................... 51 Gambar 4.2 Grafik linear hubungan antara jarak benda (cm) dan timer (µs). 53
13
DAFTAR LAMPIRAN Lampiran 1 Gambar rangkaian skematik alat Lampiran 2 Tabel hasil pengujian arah dan jarak benda Lampiran 3 Gambar alat penunjuk arah dan deteksi keberadaan benda Lampiran 4 Listing program Assembler Lampiran 5 Analisis data hasil pengukuran
ABSTRAK Rahayu, Titik Muji. 2010. Perancangan Dan Pembuatan Penunjuk Arah Serta Deteksi Jarak Benda Untuk Tunanetra Dengan Output Suara Berbasis Mikrokontroler. Pembimbing I: Drs. Mokhamad Tirono, M.Si., Pembimbing II: Novi Avisena, M.Si Kata Kunci: Mata Angin, Gelombang Bunyi, Kompas Modul HM55B, Sensor Ultrasonik D-Sonar, Mikrokontroler, ISD 2590 Mata adalah salah satu organ tubuh manusia yang sangat penting. Mata berfungsi mengenali pertama kali berbagai benda yang kita temui dengan melihatnya. Namun tidak semua orang bisa menggnakan fungsi mata secara sempurna. Beberapa orang tidak bisa menggunakan mata sebagaimana fungsinya. Hal ini salah satunya disebabkan oleh kebutaan. Berdasarkan latar belakang tersebut penelitian dilakukan dengan tujuan untuk: (1) Untuk menghasilkan alat yang dapat mendeteksi keberadaan benda di depan penderita tunanetra dengan output suara berbasis mikrokontroler, dan (2) Untuk menghasilkan alat penunjuk arah mata angin bagi penderita tunanetra dengan output suara berbasis mikrokontroler. Perancangan alat ini memanfaatkan teori tentang mata angin dan kecepatan gelombang bunyi di udara. Perancangan dan penelitian ini dilakukan di Laboratorium Elektronika Riset UIN Maliki Malang pada tanggal 1 November 2009 sampai 30 Maret 2010. Perancangan ini melalui dua tahap, yaitu tahap perancangan hardware dan software. Hardware yang digunakan dalam perancangan alat ini adalah kompas digital HM55B untuk menentukan arah mata angin, sensor Ultrasonik D-Sonar untuk mengukur jarak pengguna dengan benda di depannya, mikrokontroler AT89S51 sebagai memori program, dan ISD 2590 sebagai perekam suara untuk output. Software pada alat ini menggunakan bahasa pemrograman Assembler. Data yang diperoleh dari penelitian ini dianalisis dan dicari simpangannya. Pada perangkat penunjuk arah HM55B diperoleh simpangan rata-rata sebesar 3,65% dengan taraf ketelitian 96,35% dan pada perangkat pendeteksi jarak benda kesalahan relatifnya sebesar 1,92% dengan taraf ketelitan 98,08%. Hasil penelitian ini menunjukkan bahwa alat tersebut dapat bekerja dengan baik.
15
ABSTRACT Rahayu, Titik Muji. 2010. Designing and Constructing the Direction Guide and Things Detector for Visually Impaired Patients with Voice Output Based on Microcontroller. Advisor I: Drs. Muhammad Tirono, M.Si, Advisor II: Novi Avisena, M.Si Keywords: Cardinal, Sound Waves, The Compass Module HM55B, D-Sonar Ultrasonic Sensors, Microcontrollers, ISD 2590 The eyes are one of the important organ of human being. The eyes are the first human organ that recognize the various objects we meet with to see it. But not everyone can make eyes function perfectly. Some people can not use the eyes as its function. One of the caus is blindness. Based on this research background the aims of this research are in order: (1) To produce a tool that can detect the distance of objects in front of visually impaired patients with microcontrollerbased on voice output, and (2) To produce a cardinal direction pointing device for visually impaired patients with microcontroller-based on voice output . The design of this tool uses the cardinal of theories and wave speed of sound in air. The process of designing and researching was conducted in the Electronics Research Laboratory Maliki of UIN Malang on November 1, 2009 until March 30, 2010. This design through two stages of hardware and software design. The hardware was used in design this tool is a HM55B digital compass to determine direction cardinal, D-Sonar Ultrasonic sensor to measure the distance the user with the objects in front of him, as the AT89S51 microcontroller program memory, and the ISD in 2590 as a voice recorder for output. The software on this device using Assembler programming language. The data obtained from this study were analyzed and searched its deviation. At the direction of a pointing device HM55B obtained an average deviation of 3,65% with 96,35 of accurate rank and the detection distance for an object relative error of 1,92% with 98,08 of accurate rank. This study has shown that these tools can work well in accordance with the design.
BAB I PENDAHULUAN
1.1 Latar Belakang Mata merupakan bagian tubuh manusia yang memegang peranan sangat penting, karena manusia mengenali apapun pertama kali melalui penglihatan. Maka tidaklah salah ketika ada yang berpendapat bahwa mata merupakan jendela dunia. Mata adalah salah satu panca indera yang diberikan Allah SWT kepada kita. Allah memberikan kita mata agar kita bisa melihat segala ciptaan-Nya di alam raya ini, sehingga kita bisa mensyukuri nikmat yang begitu besar ini. Allah berfirman dalam surat al Balad ayat 8,
óÇÑÈû÷üuZø tã¼ã&©!@yèøgwUOs9r
”Bukankah Kami telah memberikan kepadanya dua buah mata” (Al Balad:8) Dia telah menjadikan untuk manusia dua buah mata yang sangat rumit susunannya agar mampu untuk melihat. Diberi-Nya keistimewaan untuk dapat berbicara, dan diberi-Nya alat bicara yang bagus, kemudian diberi-Nya potensi-potensi khusus untuk mengetahui kebaikan dan keburukan, petunjuk dan kesesatan, kebenaran dan kebatilan supaya dia memilih mana yang
17
dikehendakinya. Maka, pada tabiatnya terdapat dua macam potensi pada dirinya untuk menempuh jalan yang mana saja dari kedua jalan itu. Tidak semua orang memiliki mata yang sempurna yang bisa menikmati semua penciptaan di alam ini. Ada beberapa orang di dunia ini yang tidak mampu melihat karena mata tidak bisa berfungsi sebagaimana mestinya. Salah satu permasalahan mata adalah kebutaan. Ada yang mengalami kebutaan sejak kecil dan ada juga yang terjadi setelah dewasa. Berdasarkan data organisasi kesehatan dunia atau WHO, setiap lima detik ada satu orang dewasa menjadi buta. Sementara setiap satu menit ada satu anak menjadi buta. Diperkirakan belasan tahun ke depan penderita kebutaan mencapai 100 juta kasus. Pada tahun 2000 saja jumlahnya sudah mencapai 45 juta orang buta dan 135 juta orang mengalami gangguan penglihatan. (http://kompas.com: 2007) Di Indonesia, terdapat sekitar 3,5 juta penderita kebutaan. Sebanyak 0,76% disebabkan katarak, 0,20% karena glaukoma dan kelainan refraksi 0,14%. (http://kompas.com: 2007) Karena
tidak
mampu
melihat,
penderita
tunanetra
seringkali
memerlukan bantuan orang lain dalam melakukan aktivitasnya sehari-hari, terutama saat berjalan. Untuk menuju suatu tempat mereka harus tahu arah mana saja yang harus ditempuh. Orang normal bisa menggunakan petunjuk kompas untuk mengetahui arah yang akan ditempuhnya. Kompas adalah alat bantu yang menggunakan fungsi kutub-kutub magnet yang memudahkan manusia karena bisa langsung
digunakan. Sebelumnya hingga saat ini pun manusia menggunakan fungsi bintang untuk mengetahui arah mata angin. Bintang sebagai benda-benda angkasa beredar mengelilingi matahari. Di antara manfaat adanya bintang di angkasa raya itu bagi kehidupan manusia adalah dapat dijadikan sebagai petunjuk kompas arah di malam hari. Sebab yang demikian itu telah dijelaskan dalam al Qur’an, (Ichwan, 2004:210)
”Dan Dialah yang menjadikan bintang-bintang bagimu, agar kamu menjadikannya petunjuk dalam kegelapan di darat dan di laut. Sesungguhnya Kami telah menjelaskan tanda-tanda kebesaran (Kami) kepada orang-orang yang mengetahui.” (Q.S. Al An’am:97)
Hamparan
daratan
dan
lautan
adalah
kegelapan
yang
dalam
mengarunginya manusia berpedoman pada bintang. Mereka sejak dahulu seperti itu hingga saat ini. Metode mereka dalam menggunakan bintang berbeda-beda. Lingkupnya meluas dengan adanya penemuan-penemuan ilmiah dan eksperimen-eksperimen yang bermacam-macam. Namun, dasarnya tetaplah sama, yaitu menggunakan benda-benda langit itu sebagai petunjuk dalam mengarungi hamparan daratan dan lautan. Baik itu dalam kegelapan indrawi maupun kegelapan tashawwur dan pemikiran. (Quthb, 2003:170) Bagi seorang tunanetra, tentu akan kesulitan untuk berjalan jika dia tidak tahu arah mata angin. Perlu suatu alat bantu yang bisa membantu mereka melakukan aktivitasnya sehari-hari. Sebuah rancangan yang telah dibuat oleh mahasiswa Teknik Informatika Universitas 17 Agustus (Untag) Surabaya adalah alat sensor 19
pendeteksi keberadaan benda bagi tuna netra. Alat yang telah dibuat tersebut memiliki kelemahan, yaitu hanya bisa mendeteksi keberadaan benda, tetapi tidak
dapat
menunjukkan
arah
yang
akan
dituju
oleh
pemakai.
(www.surya.co.id, 2008) Penulis di sini akan melengkapi alat tersebut dengan menggunakan fungsi pendengaran. Alat ini akan berfungsi ganda, yaitu sebagai pendeteksi keberadaan benda dan juga penunjuk arah mata angin. Alat ini diharapkan bisa membantu penderita untuk berjalan ke manapun tanpa khawatir menabrak benda di depannya. Selain itu rancangan penunjuk arah mata angin bisa membantu penderita untuk menuju suatu tempat dengan mengetahui arah-arah yang harus dilaluinya untuk bisa mencapai tempat tersebut. Penulis akan membuat suatu alat sebagai skripsi dengan judul “Perancangan dan Pembuatan Penunjuk Arah serta Deteksi Keberadaan Benda untuk Tunanetra Dengan Output Suara Berbasis Mikrokontroler” Alat yang dibuat ini akan dibuat portable, sehingga penderita tidak merasa keberatan dan tidak merasa terganggu saat membawa alat tersebut ke mana-mana.
1.2 Rumusan Masalah Dari latar belakang di atas dapat dirumuskan beberapa permasalahan, yaitu: 1. Bagaimana mengolah sensor ultrasonik agar bisa mengirimkan data tentang ada atau tidaknya benda di depan pemakai?
2. Bagaimana mengubah data penunjuk arah pada kompas digital menjadi data berupa suara? 3. Seberapa besar akurasi alat tersebut untuk mengetahui jarak benda? 4. Seberapa besar akurasi alat tersebut untuk menentukan arah mata angin?
1.3 Tujuan Tujuan perancangan dan pembuatan alat pendeteksi benda serta penunjuk arah mata angin ini adalah: 1. Untuk menghasilkan alat yang dapat mendeteksi jarak benda di depan penderita tunanetra dengan output suara berbasis mikrokontroler. 2. Untuk menghasilkan alat penunjuk arah mata angin bagi penderita tunanetra dengan output suara berbasis mikrokontroler.
1.4 Manfaat Manfaat pembuatan alat pendeteksi keberadaan benda serta penunjuk arah mata angin dengan output suara ini adalah: 1. Membantu penderita tunanetra agar dapat mengetahui jarak benda di depannya saat berjalan sehingga bisa menghindarinya. 2. Membantu penderita tunanetra menentukan arah mata angin saat berjalan agar bisa berjalan ke mana-mana dengan lebih dulu mengenali arah tempat yang akan ditujunya. 3. Meningkatkan kemandirian bagi tunanetra dalam melakukan aktivitasnya sehari-hari.
21
1.5 Batasan Masalah Dalam pembuatan alat ini, penulis membataskan permasalahan pada: 1. Pendeteksian jarak benda hanya yang berada di depan pengguna dan mampu memantulkan suara. 2. Arah mata angin yang ditunjukkan ada delapan yaitu utara, timur laut, timur, tenggara, selatan, barat daya, barat dan barat laut. 3. Alat ini menggunakan kompas modul HM55B, sensor ultrasonik D-Sonar dan mikrokontroler AT89S51. 4. Output berupa suara, sehingga hanya dapat digunakan untuk penderita tunanetra (tidak dapat digunakan untuk tunarungu).
BAB II KAJIAN PUSTAKA
2.1 Mata Angin Mata angin merupakan panduan yang digunakan untuk menentukan arah. Umumnya digunakan dalam navigasi, kompas dan peta. Berpandukan pada pusat mata angin, maka kita akan melihat 8 arah yaitu dengan urutan sebagai berikut (mengikuti arah jarum jam): 1. Utara (0°) 2. Timur laut (45°): Terletak di antara utara dan timur 3. Timur (90°) 4. Tenggara (135°): Terletak di antara timur dan selatan 5. Selatan (180°) 6. Barat daya (225°): Terletak di antara selatan dan barat 7. Barat (270°) 8. Barat laut (315°): Terletak di antara barat dan utara Utara, timur, selatan dan barat merupakan empat mata angin utama. Utara dan selatan menggambarkan kutub Bumi, manakala timur dan barat menentukan arah putaran Bumi. (www.wikipedia.org) Orang biasanya menggunakan petunjuk bintang untuk menentukan arah mata angin. Yang demikian itu telah disebutkan dalam al Qur’an surat Al An’am ayat 97 sebagaimana telah dijelaskan pada BAB I. Firman Allah ”Dan Dialah yang menjadikan bintang-bintang bagimu
23
agar kamu menjadikannya petunjuk dalam kegelapan di darat dan di laut.” Sebagian ulama salafi menyatakan ”Barangsiapa yang meyakini bahwa bintang-bintang itu mempunyai fungsi selain dari 3 hal tersebut, maka ia telah melakukan kesalahan dan berbuat dusta kepada Allah SWT, karena Allah telah menjadikannya sebagai hiasan langit, sebagai alat untuk melempari syaitan, dan sebagai petunjuk arah bagi manusia dalam kegelapan daratan dan lautan.” Firman-Nya ”Sesungguhnya Kami telah menjelaskan tanda-tanda kebesaran (Kami).” Maksudnya kami telah menjelaskan dan menerangkannya ”kepada orang-orang yang mengetahui.” Maksudnya orang-orang yang berakal yang mengetahui kebenaran dan menghindari semua kebathilan. (Abdullah dan Abdurrahman, 2007:98)
”Dan (Dia ciptakan) tanda-tanda (penunjuk jalan). dan dengan bintangbintang itulah mereka mendapat petunjuk.” (Q.S. An-Nahl:16) Firman Allah SWT M»yJ»n=tæur “Dan (Dia ciptakan) tanda-tanda (petunjuk)” maksudnya petunjuk-petunjuk, berupa gunung-gunung yang besar, bukit-bukit yang kecil dan sejenisnya, yang orang-orang musafir dapat mengetahui adanya daratan dan lautan jika mereka tersesat di jalan. Dan firman
Allah (brßtGöku öNèdÄNôf¨Z9$Ä) ”Dan dengan bintang-bintang itulah mereka
mendapat petunjuk,” maksudnya dalam kegelapan malam, seperti yang diucapkan Ibnu Abbas. Kemudian Allah Ta’ala mengingatkan atas kebesaranNya. Ibadah itu tidak layak kecuali kepada-Nya, bukan untuk yang lain-Nya. (Abdullah dan Abdurrahman, 2007:48) Manusia mengenal dua gugus bintang yang dapat dijadikan sebagai petunjuk arah atau waktu di malam hari, apabila mereka berada di tengah-tengah samudera atau padang sahara yang luas (Ichwan, 2004:210), yaitu: Pertama, bintang biduk (bintang tujuh). Bintang jenis ini biasanya digunakan untuk mengetahui arah pada malam hari, yaitu dengan cara membuat garis lurus sebagai penghubung di antara bintang-bintang itu, maka akan diketahui arah utara. Bintang ini menampakkan diri pada bulan Maret sampai bulan Juli, yang letaknya di belahan bumi sebelah utara. Kedua, bintang pari (bintang gubug penceng atau bintang salib selatan). Sebagaimana mengetahui arah utara, cara yang digunakan untuk mengetahui arah yang ditunjukkan bintang ini kita harus membuat garis-garis penghubung antara bintang-bintang tersebut. Sedangkan gugus bintang ini menampakkan diri pada bulan maret sampai agustus pada belahan bumi sebelah selatan.
2
Kompas Digital HM55B Kompas Modul Hitachi HM55B adalah sensor medan magnet sumburangkap yang dapat menunjukkan arah pada alat elektronik atau pembuatan robot. Perangkat yang menunjukkan arah pada Kompas Modul adalah chip Hitachi HM55B. (Parallax. Inc,2005:1)
25
2
Fitur-Fitur 1. Sensitif terhadap variasi mikrotesla (μT) dalam kekuatan medan magnet 2. Menyederhanakan arah dengan medan magnet melalui pengukuran dua kutub. 3. Resolusi yang bagus untuk 6-bit (64-arah) setelah kalibrasi software. 4. Hanya 30 hingga 40 ms antara mulai pengukuran dan data siap. 5. Merangkai resistor pengaman untuk mengurangi risiko konflik pin data bus 6. Rapi dengan papan berukuran 0,3 inci, 6-pin DIP paket (Parallax. Inc,2005:1)
2
Pin-pin pada HM55B
Gambar 2.1 Pin-pin pada HM55B 1. Din
- Input serial data
2. Dout
- Output serial data
3. GND - Ground -> 0 V
4. CLK
- Input clock
5. /EN
- Aktif-perangkat lunak
6. Vcc
- +5 V input daya (Parallax. Inc,2005:7)
2.2.3
Cara Mengoperasikan
Gambar 2.2 Cara mengukur sudut yang dibentuk arah utara dan sumbu kompas x
Kompas HM55B Hitachi Modul ini memiliki dua sumbu, x dan y. Setiap sumbu memiliki kuat medan magnet sejajar dengan itu. Sumbu x (kuat medan) × cos (θ), dan sumbu y (kuat medan) × sin (θ). Untuk mencari besar θ yang searah jarum jam menggunakan rumus: − y x θ = arctan (2.1) Di mana:
θ : sudut yang dibentuk antara arah utara dan sumbu x x : sumbu x kompas modul
27
y : sumbu y kompas modul Perintah ATN mengembalikan sudut dalam bentuk radian biner. (Parallax. Inc,2005:6)
2.2.4
Kumpulan Perintah Perintah-perintah
ini
dialihkan
ke
Kompas
Modul.
(Parallax,
Inc.2005:25)
Tabel 2.1 Perintah-perintah yang dikirim ke kompas modul Nilai Biner
Kuantitas
0000
Perangkat Reset
0001
Mulai pengukuran
0011
Laporan status pengukuran (dan mengirimkan pengukuran jika sudah siap)
2.2.5
Perintah Status Kompas Modul yang akan menjawab laporan perintah status pengukuran
dengan salah satu nilai berikut. (Parallax. Inc,2005:1)
Tabel 2.2 Jawaban perintah dari kompas modul Nilai biner
Kuantitas
Bit - 3.210
3 dan 2 menunjukkan pengukuran selesai, 1 dan 0 menunjukkan kesalahan pengukuran
1100
11 -> Pengukuran selesai; 00 -> tidak ada kesalahan
00xx
Pengukuran masih dalam proses, atau perangkat telah
direset XX11
/ EN tidak menerima rendah-tinggi-rendah dan sinyal antara laporan perintah mulai
2.3 Gelombang Bunyi Gelombang bunyi merupakan gelombang longitudinal yang terjadi karena perapatan dan perenggangan dalam medium gas, cair, atau padat. Kita dapat mendengar bunyi di sekitar kita karena kita telah diberi indera pendengar yaitu telinga.
u
”Dan Dialah yang telah menciptakan bagi kamu sekalian, pendengaran, penglihatan dan hati. Amat sedikitlah kamu bersyukur.” (QS. Al Mu’minun:78) Allah Ta’ala menyebutkan beberapa nikmatnya yang telah dilimpahkan kepada hamba-hamba-Nya, di mana dia telah memberikan pendengaran, penglihatan, dan hati yaitu pemahaman yang dengannya mereka mengingat berbagai hal serta mengambil pelajaran dari alam berupa tanda-tanda yang menunjukkan Keesaan Allah, dan bahwasannya Dia Mahaberbuat dan Memilih apa saja yang Dia kehendaki. Firman-Nya ”Amat sedikit kamu bersyukur” maksudnya, sangat sedikit sekali rasa syukur kalian kepada Allah Ta’ala atas segala nikmat yang telah dilimpahkan kepada kalian. (Abdullah dan Abdurrahman, 2007:23) Di dalam gas, kerapatan dan tekanan terkait erat. Oleh karena itu, 29
gelombang bunyi dalam gas seperti udara, dapat dipandang sebagai gelombang kerapatan atau gelombang tekanan. Di dalam gelombang pada tali, simpangan transversal tali dinyatakan fungsi gelombang y(x ± vt). Fungsi gelombang untuk gelombang bunyi yang analog dengan simpangan transversal tali adalah simpangan longitudinal molekul-molekul gas dari posisi kesetimbangannya s(x ± vt) atau fungsi yang berkaitan (perubahan tekanan gas p(x ± vt)).
2.3.1
Gelombang Bunyi Di Dalam Medium Gas/Udara
2.3.2
Hubungan Tegangan dan Regangan Sebagaimana telah kita ketahui, udara atau zat gas pada umumnya tidak
dapat melawan perubahan bentuk. Karena itu di dalam medium ini tidak mungkin terjadi gelombang geser (shear waves) atau gelombang transversal. Namun medium ini memiliki respon terhadap kompresi volume. Untuk tekanan p tertentu, besarnya respon ini ditentukan oleh modulus elastis ”bulk” K, yang didefinisikan menurut rumus di sekitar keadaan setimbang (Tjia, 1993: 11.13 -11.14): dp K = ρ 0 d ρ 0, Mengingat bahwa
ρ = m
dρ = − Sehingga
(2.2)
V , maka
m dv v2
(2.3)
dp V 2 K = ρ 0 x − dV m 0
dp = − V0 dV 0
(2.4)
Modulus K jelas berharga positif karena dp/dV selalu negatif. Perlu dicatat bahwa dalam uraian gelombang tali tidak ditinjau adanya regangan sebenarnya (panjang tali dianggap tetap), tetapi gaya penggerak osilasi lokal dikaitkan dengan perubahan bentuk (slope) tali. (Tjia, 1993: 11.14)
Gambar 2.3 Pergeseran dan perubahan dimensi dari elemen volume udara dalam tabung fiktif yang diambil searah gaya gangguan.
Untuk
menurunkan
hubungan
tegangan-tegangan
tersebut
kita
bayangkan sebuah tabung udara yang diperlihatkan dalam gambar 2.3. Andaikan dalam keadaan setimbang, tekanan yang bekerja pada kedua sisi elemen volume udara sama besarnya (= p 0 ), dan kerapatan massanya sama
31
dengan ρ 0 . Sebagai akibat sisi kiri berubah menjadi p seperti diperlihatkan dalam gambar 2.3. Perbedaan tekanan ini akan menimbulkan dua macam perubahan, yaitu (andaikan p > p 0 ) (Tjia, 1993: 11.15) a. Pergeseran kedudukan elemen udara (sisi kiri dari x ke x + ψ dan sisi kanan dari x + dx ke x + dx + ψ ’ = x + ψ + dx + dψ ). b. Perubahan tebal elemen volume dari dx menjadi dx + dψ ; rapat massa
ρ 0 berubah menjadi ρ . Berdasarkan hukum kekekalan massa, besaran-besaran tersebut harus memenuhi persamaan (Tjia, 1993: 11.15):
ρ . A(dx + dψ ) = ρ 0 A.dx
(2.5)
Atau
ρ =
ρ0 1 + dψ
dx ;
(2.5a)
Dalam aproksimasi ∂ ψ ∂ x < < 1 , persamaan ini menjadi
ρ = ρ 0 1 − dϕ dx ,
(2.5b)
Atau
ρ − ρ ρ0
0
=
− dϕ dx
(2.5c)
Pada umumnya proses gerak gelombang dalam udara bersifat adiabatik. Maka untuk medium ini berlaku hubungan (Tjia, 1993: 11.15-11.16):
(
)
pV γ = p 0V 0γ ; p = p 0V 0γ V − γ
Dengan
γ = CP
(2.6)
V = ρ CV . Karena m berharga tetap dan m
−1
maka p dapat
dipandang sebagai fungsi ρ. Sesuai dengan aproksimasi untuk persamaan 2,
( dapat pula kita abaikan harga selisih ρ − ρ
0
)2
dalam jabaran deret Taylor
untuk p di sekitar ρ 0 . Sebagai hasilnya dapat ditulis persamaan : p = p0 + ( ρ − ρ
0
)
dp dρ 0
(2.7)
Dengan bantuan persamaan (2.2), persamaan ini menjadi (Tjia, 1993: 11.16): ρ − ρ p = p 0 + K ρ0
0
(2.7a)
Selanjutnya dengan hubungan (2.5c) yang diperoleh di atas sampailah kita pada persamaan tegangan-regangan: p = p0 − K
∂ψ ∂x
(2.7b) dψ
Dalam persamaan ini, notasi
dx telah diubah menjadi
∂ψ
∂ x mengingat
bahwa ψ juga bergantung pada t. Dari persamaan ini jelas bahwa nilai p
( ) ( ) bergantung pada x, dan p 0 = p x + dx , p = p x sehingga dp = p 0 − p , dan hubungan (11-38b) dapat diturunkan menjadi (Tjia, 1993: 11.16): ∂p ∂ 2ψ = +K ∂x dx 2
(2.7c)
33
2
Persamaan gerak gelombang Persamaan gerak lokal bagi elemen medium bermassa dm dalam gambar 2.3 akan diturunkan dari Hukum Newton sebagai berikut: dF = (dm).a
(2.8)
dengan dm = ρ 0 Adx dan a sebagai percepatan pusat elemen tersebut. Andaikan dalam jangka waktu t, pergeseran pusat massa seperti diperlihatkan gambar 2.3
sama dengan
(ψ
+ ψ ')
2
≈ψ
, maka percepatannya adalah
∂ 2ψ a≈ ∂t2 Selanjutnya jelas pula dari gambar tersebut bahwa resultan gaya pada elemen udara dalam arah +X adalah dF = - Adp
(2.9)
dengan dp = p( x + dx ) − p( x ) =
∂p dx ∂x
(2.9a)
Berdasarkan pers (2.7c), ungkapan dF menjadi dF = AK
∂ 2ψ dx dx 2
(2.9b)
Substitusikan ungkapan-ungkapan dF, dm dan a ke dalam persamaan (2.3) menghasilkan persamaan gelombang bebas satu dimensi:
ρ 0 ∂ 2ψ ∂ 2ψ − = 0 K dt 2 ∂ x2 ; Dengan laju rambat:
∂ 2ψ 1 ∂ 2ψ − = 0 ∂ x2 v2 ∂ t 2
(2.10)
v=
K
ρ
(2.10a)
0
Karena gerak osilasi lokal dalam kasus ini berlangsung sejajar arah rambatnya, maka gelombang yang terjad disebut gelombang pergeseran (displecement) longitudinal. (Tjia, 1993: 11.16-11.17)
2.3.3 Ungkapan-ungkapan lain bagi v Pertama-tama akan diturunkan ungkapan v sebagai fungsi tekanan p. Untuk ini kita tinjau kembali pers (2.6) dengan substitusi v = m/ρ. Maka bentuk persamaan itu menjadi: p = p0 ρ
−γ 0
γ
ρ
(2.11)
Setelah didiferensiasi terhadap ρ, persamaan ini menghasilkan hubungan: dp = γ p 0 ρ dρ
−γ 0
ρ
γ −1
(2.11a)
Dan dp = γ p 0 ρ dρ 0
−1 0
(2.11b)
Substitusikan ungkapan ini ke dalam persamaan (2.2) segera memberikan hasil: K = γ .p 0
(2.12)
Dengan demikian, (Tjia, 1993: 11.16) v=
γ
p0
ρ
(2.13)
0
Pada keadaan standart (STP) parameter udara diketahui berharga sebagai
35
berikut: p 0 = 1atm = 1.01x10 6 dyne p0 =
29 gm 22.4 lit
cm 2
mole = 1.29 x10 − 3 g cm 2 mole
γ = 1.4 Berdasarkan harga-harga ini diperoleh kecepatan rambat gelombang bunyi sama dengan (Tjia, 1993: 11.17): v=
2.3.3
(
)
1.4 x 1.01 x10 − 9 = 332 m 1.29 det
Pemantulan Gelombang Bunyi Bila suatu gelombang datang pada suatu permukaan batas yang
memisahkan dua daerah dengan laju gelombang berbeda, maka sebagian gelombang akan dipantulkan dan sebagian yang lain akan ditransmisikan. Ini terjadi, misalnya, ketika suatu gelombang bunyi di udara menumbuk suatu permukaan padat atau cair. Berkas yang terpantul membentuk sudut dengan garis normal permukaan yang besarnya sama dengan sudut berkas datang. (Tipler, 1991: 531-532)
Gambar 2.4 Ilustrasi gelombang masuk, gelombang pantul dan gelombang transmisi pada batas antara dua media tali di x = 0
Pada gambar 2.4 medium tali bagian kiri (I) yang berawal dari x = - ∞ , bersambung dengan tali kedua pada x = 0. Tali kedua (II) memanjang ke sebelah kanan tanpa batas. Untuk sistem ini perumusan soalnya terdiri dari persamaan diferensial masing-masing daerah sebagai berikut (Tjia, 1993: 11.2211.23): ∂ 2ψ
2 1 ∂ ψ 1 − 2 = 0, x ≤ 0 v1 ∂ t 2 ;
1
∂ x2 ∂ 2ψ
−
2
∂ x2
1 ∂ 2ψ 2 = 0, x > 0 v 22 ∂ t 2 ;
(2.14)
(2.14a)
Dengan syarat-syarat batas berupa syarat-syarat kontinuitas (Tjia, 1993: 11.23): 1. ψ
1
=ψ
(2.15)
2
∂ψ 1 ∂ψ 2 = ∂t 2. dt
(2.15a)
∂ψ 1 ∂ψ 2 = ∂x 3. ∂ x
(2.15b)
pada x = 0 dan pada setiap saat t. Syarat kedua menyatakan sinkronisasi gerak pada titik temu kedua media. Syarat batas ketiga menyatakan kontinuitas slope gelombang sesaat. Membatasi diri pada gelombang harmonis, solusi untuk masing-masing medium berbentuk umum (Tjia, 1993: 11.23-11.24):
ψ
1
=ψ
m
+ ψ r = gel. Masuk + gel pantul (refleksi)
37
=ψ
dengan
ψ
2
k1 = ω
v1
cos( k 1 x − ω t ) + ψ
mo
, k1 ' = ω 1 '
ro
cos( k1 ' x + ω 1 ' t )
(2.16)
v1 , dan
= ψ t = gelombang yang diteruskan (transmisi) =ψ
dengan
to
cos( k 2 x − ω 2 t )
k2 = ω
(2.16a)
v 2 . Berlakunya syarat-syarat batas tersebut untuk setiap t
langsung menghasilkan pembatasan ω 1 = ω 1 ' = ω
2
= ω , dan persamaan k 1 ' = k 1 .
Penerapan syarat batas (I) menghasilkan persamaan:
ψ
mo
+ψ
ro
=ψ
(2.17)
to
Atau 1+r=t dengan definisi:
r= t=
ψ ψ ψ ψ
(2.17a)
ro
: koefisien pantul/refleksi
(2.18)
mo ro
: koefisien transmisi
(2.18a)
mo
Penerapan syarat batas (2) ternyata memberikan hasil yang sama. Selanjutnya penerapan syarat batas (3) menghasilkan persamaan:
(ψ
mo
−ψ
ro
) k1 = ψ
k 1 − r = t 2 k1
to
k2
Dari persamaan (2.27a) dan (2.19a) di atas diperoleh rumus-rumus:
(2.19)
(2.19a)
t=
2k 1 k1 + k 2
(2.20)
k1 − k 2 k1 + k 2
(2.21)
r=
k2 Dari rumus t dan r di atas serta harganya untuk kasus ekstrim
k2
k1
→ 0
k1
→ ∞
dan
jelas berlaku batas kisaran harga: -1 ≤ r ≤ +1 dan 0 ≤ t ≤ 2
Perhatikan bahwa pemantulan dapat menimbulkan pembalikan fase gelombang. Selanjutnya dengan mengambil contoh gelombang tali yang memenuhi hubungan: k1 =
ω ω = .Z 1 v1 T0
i = 1,2
(2.22)
Persamaan (2.20) dan (2.21) dapat dituangkan dalam bentuk: t=
2
2Z 1 Z1 + Z 2
r=
Z1 − Z 2 Z1 + Z 2
(2.23)
Sensor D-Sonar Ultrasonik adalah sebutan untuk jenis suara di atas batas suara yang bisa
didengar manusia. Seperti diketahui, telinga manusia hanya bisa mendengar suara dengan frekuensi 20 Hz sampai 20 KHz. Lebih dari itu hanya beberapa jenis binatang yang mampu mendengarnya, seperti kelelawar dan lumba-lumba. Lumba-lumba bahkan memanfaatkan ultrasonik untuk mengindera benda-benda
39
di laut. Prinsip ini kemudian ditiru oleh sistem pengindera kapal selam. (www.delta-electronic.com) Delta Sonar Interface merupakan antarmuka yang menggunakan sistem sonar dengan frekuensi tinggi (ultrasonik) dalam mengukur jarak terhadap suatu obyek. D-Sonar akan memancarkan gelombang ultrasonik yang diterima oleh obyek dan dipantulkan kembali seperti pada gambar 2.5. (www.deltaelectronic.com)
Gambar 2.5 Pantulan gelombang ultrasonik (www.delta-electronic.com)
Jarak antara obyek dengan sensor dapat diketahui dari interval antara dipancarkannya gelombang tersebut hingga diterima kembali.
2
Deskripsi Modul dan Pin a. UART, bagian antarmuka UART level TTL yang dapat dihubungkan dengan mikrokontroler UART atau Serial/COM PC.
Gambar 2.6 Tata letak komponen (www.deltasonic.com)
b
I/O PORT, bagian port di mana pengguna dapat mengakses modul ini secara manual (tanpa menggunakan mikrokontroler atau PC) yaitu hanya dengan memberikan trigger dan memeriksa lebar pulsa yang dibangkitkan pada bagian echo c. LED, indikasi bahwa D-Sonar mendeteksi obyek dalam range 3 meter
d.
TRANSMITTER, Pemancar ultrasonik yang membangkitkan frekwensi 40 KHz e
RECEIVER, Penerima ultrasonik yang mendeteksi adanya frekwensi 40 KHz
Tabel 2.3 Pin-pin pada sensor D-Sonar dan fungsinya Nama VCC
Fungsi Input sumber tegangan 5V
Echo
Pulsa hasil pengukuran jarak obyek dengan lebar antara 100uS hingga 18mS
Trigger
Input trigger (min 10uS) yang mengaktifkan D-Sonar
41
untuk mengukur jarak Hubungkan ke Ground bila tidak digunakan / Mode UART
2
Echo Invers
Invers dari pin Echo di mana lebar pulsa adalah level negatif
GND
Input sumber tegangan 0V
RXD SONAR
Bagian RX UART dari modul D-Sonar
TXD SONAR
Bagian TX UART dari modul D-Sonar
Antarmuka I/O Port
Gambar 2.7 Timing Diagram D-Sonar
Pada bagian ini, proses pengukuran jarak dapat dilakukan hanya dengan memberikan trigger dan mendeteksi lebar pulsa Echo saja seperti pada modul ultrasonik pada umumnya. Hasil pengukuran dalam bentuk pulsa dapat ditentukan dengan
menghitung lebar pulsa yang keluar pada bagian Echo. Lebar pulsa tersebut mewakili waktu merambatnya sinyal ultrasonik dari D-Sonar ke obyek dan kembali lagi, oleh karena itu jarak dapat diperoleh dengan persamaan.
(2.24) Sedangkan jarak antara D-Sonar dengan obyek adalah ½ x s atau setengah dari jarak rambat sinyal ultrasonik.
2
Mikrokontroler AT89S51 Mikrokontroler tipe AT89S51 sesuai dengan produk MCS-51, yang diproduksi oleh ATMEL dengan teknologi memori yang tidak dapat hilang dan densitas tinggi, di mana penggunaannya cukup luas. AT89S51 memerlukan daya yang rendah dengan penampilan yang baik dengan menggunakan pengisi sistem yang dapat diprogram dengan mudah melalui ISP Memory Flash. Komputer dengan mikrokontroler dapat berhubungan secara langsung hanya dengan menggunakan kabel antar muka (konektor paralel). Dengan ISP Memory Flash memungkinkan program yang telah dibuat dapat diganti dengan program yang baru dengan cara menghapus data yang ada pada mikrokontroler lalu mengisi dengan program baru. Fitur yang dimiliki oleh mikrokontroler ini adalah 4 Kbytes ISP (In- System Programmable) Memory Flash, 8 bit Unit Pengolah Pusat (UPP), 32 jalur Input/Output (I/O) yang dapat diprogram, dua buah pewaktu/penghitung 16 bit, Full DuplexSerial Port UART (Universal Asynchronous Receiver Transmitter), 128 x 8 bit RAM internal, 4 Kbyte
43
EPROM ( Erasable and Programmable ROM), Chip Oscillator, eEnam sumber sistem interupsi, watchdog timer, daerah operasi 4-5 Volt, daerah frekuensi 0-33 MHz, Waktu pengisian program singkat, dan program ISP sangat fleksible.
2.5.1
Pin-pin pada Mikrokontroler AT89S51
Gambar 2.8 Pin-pin pada mikrokontroler AT89S51
Fungsi dari masing-masing pin AT89S51 adalah (www.Ittelkom.ac.id): 1. Pin 1 sampai 8 (Port 1) merupakan port pararel 8 bit dua arah (bidirectional) yang dapat digunakan untuk berbagai keperluan (general purpose). 2. Pin 9 merupakan pin reset, reset aktif jika mendapat catuan tinggi. 3. Pin 10 sampai 17 (Port 3) adalah port pararel 8 bit dua arah yang memiliki fungsi pengganti sebagai berikut :
•
P3.0 (10) : RXD (port serial penerima data)
•
P3.1 (11) : TXD (port serial pengirim data)
•
P3.2 (12) : INT0 (input interupsi eksternal 0, aktif low)
•
P3.3 (13) : INT1 (input interupsi ekstrernal 1, aktif low)
•
P3.4 (14) : T0 (eksternal input timer / counter 0)
•
P3.5 (15) : T1 (eksternal input timer / counter 1)
•
P3.6 (16) : WR (Write, aktif low) Sinyal kontrol penulisan data dari port 0 ke memori data dan input-output eksternal.
•
P3.7 (17) : RD (Read, aktif low) Sinyal kontrol pembacaan memori data input-output eksternal ke port 0.
4. Pin 18 sebagai XTAL 2, keluaran osilator yang terhubung pada kristal. 5. Pin 19 sebagai XTAL 1, masukan ke osilator berpenguatan tinggi, terhubung pada kristal. 6. Pin 20 sebagai Vss, terhubung ke 0 atau ground pada rangkaian. 7. Pin 21 sampai 28 (Port 2) adalah port pararel 8 bit dua arah. Port ini mengirim byte alamat bila pengaksesan dilakukan pada memori eksternal. 8. Pin 29 sebagai PSEN (Program Store Enable) adalah sinyal yang digunakan untuk membaca, memindahkan program memori eksternal (ROM / EPROM) ke mikrokontroler (aktif low). 9. Pin 30 sebagai ALE (Address Latch Enable) untuk menahan alamat bawah selama mengakses memori eksternal. Pin ini juga berfungsi sebagai PROG (aktif low) yang diaktifkan saat memprogram internal flash memori pada mikrokontroler (on chip).
45
10. Pin 31 sebagai EA (External Accesss) untuk memilih memori yang akan digunakan, memori program internal (EA = Vcc) atau memori program eksternal (EA = Vss), juga berfungsi sebagai Vpp (programming supply voltage)
pada
saat
memprogram
internal
flash
memori
pada
mikrokontroler. 11. Pin 32 sampai 39 (Port 0) merupakan port pararel 8 bit dua arah. Berfungsi sebagai alamat bawah yang dimultipleks dengan data untuk mengakses program dan data memori eksternal. 12. Pin 40 sebagai Vcc, terhubung ke +5 V sebagai catuan untuk mikrokontroler.
2
Keypad 4x4 DT-I/O 4 x 4 Keypad Module merupakan modul keypad berukuran 4 kolom x 4 baris. Modul ini dapat difungsikan sebagai device input dalam aplikasi-aplikasi seperti pengaman digital, datalogger, absensi, pengendali kecepatan motor, robotik, dan sebagainya. Spesifikasi DT-I/O 4x4 Keypad Modul: -
16 tombol (dengan fungsi tergantung pada aplikasi)
-
konfigurasi 4 baris (input scanning) dan 4 kolom (output scanning)
-
konfigurasi 4 baris (input scanning) dan 4 kolom (output scanning)
-
Kompatibel penuh dengan DT-51 Low Cost Series dan DT-AVR Low Cost Series. Mendukung DT-51 Minimum System ver 3.0, DT-51 PetraFuz, DT-BASIC Series, dan sistem lain.
Gambar 2.9 Penampang keypad 4x4
2
LCD M1632 Banyak sekali kegunaan LCD dalam perancangan suatu system yang menggunakan mikrokontroler. LCD berfungsi menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler. LCD yang digunakan adalah jenis LCD M1632. LCD M1632 merupakan modul LCD dengan tampilan 16 x 2 baris dengan konsumsi daya rendah. Modul tersebut dilengkapi dengan mikrokontroler yang didesain khusus untuk mengendalikan LCD. Fungsi pin-pin pada LCD M1632 1. Pin 1 dihubungkan ke Ground 2. Pin 2 dihubungkan ke Vcc +5V 3. Pin 3 dihubungkan ke bagian tengah daerah potensiometer 10 kOhm sebagai pengatur kontras
47
Gambar 2.10 Pin-pin pada LCD M1632
4. Pin 4 memberitahu LCD bahwa sinyal yang dikirim adalah data, jika pin 4 ini diset ke logika 1 (high, +5) atau memberitahu bahwa sinyal yang dikirim adalah perintah jika pin ini diset dengan logika 0 (low, 0V) 5. Pin 5 berfungsi mengatur fungsi LCD. Jika diset ke logika 1, (high, +5) maka LCD berfungsi untuk menerima data (membaca data) dan berfungsi untuk mengeluarkan data. Jika pin ini diset ke logika 0 (low, 0V). Namun kebanyakan aplikasi hanya digunakan untuk menerima data sehingga pin 5 ini selalu dihubungkan ke Gnd 6. Pin 6 dihubungkan ke enable. Berlogika 1 setiap kali penerimaan/ pembacaan data. 7. Pin 7-14 dihubungkan ke data 8 bit data bus (aplikasi ini menggunaka aplikasi 4 bit MSB saja, sehingga pin data yang digunakan hanya pin 11 sampai pin 14) 8. Pin 15-16 adalah tegangan untuk menyalakan lampu LCD.
2
ISD 2590 Untuk
menghasilkan
output
suara
pada
perancangan
alat
ini
menggunakan ISD 2590 yang mempunyai kemampuan penyimpanan suara dengan durasi 90 detik. ISD 2590 dioperasikan dalam mode address bit, artinya setiap kata yang direkam mempunyai address sendiri. Address bit ini akan menggunakan logika bilangan biner.
2
Fitur-Fitur 1.
Mudah menggunakan chip tunggal, rekaman suara/pemutaran solusi
2.
Berkualitas tinggi, reproduksi suara alami/ audio
3.
Chip tunggal dengan durasi 90 detik.
4.
Tombol manual atau mikrokontroler yang kompatibel
5.
Pemutaran tingkat ulang diaktifkan
6.
Cascadable langsung dengan durasi lebih lama.
7.
Power-down otomatis (mode push-button), siaga saat ini 1 μA (ciri khas)
8.
Nol-maksimal kuat penyimpanan, mengurangi baterai cadangan sirkuit
9.
Pengalamatan penuh untuk menangani beberapa pesan
10. 100-tahun pesan tersimpan (ciri khas) 11. 100.000 siklus rekaman (ciri khas) 12. Sumber on-chip clock 13. Programmer dukungan dari menjalankan hingga aplikasi 14. Power supply tunggal 5 volt 15. Tersedia dalam bentuk mati, PDIP, SOIC dan TSOP kemasan
49
16. Suhu = mati (0 ° C to +50 ° C) dan paket (0 ° C to +70 ° C)
2
Deskripsi Pin
Gambar 2.11 Pin-pin pada ISD 2590 (www.winbond.com, 2005)
Tabel 2.4 Pin-pin pada ISD 2590 dan fungsinya (www.winbond.com, 2005) Nama Pin Ax/M x
Nomor Pin
Fungsi
SOIC/ PDIP 1-10/
TSOP 8-17/
Alamat/Mode Input: Alamat / Mode Input
1-7
8-14
memiliki dua fungsi tergantung pada tingkatan kedua Most Significant Bit (MSB) alamat pin (A8 dan A9).
AUX
11
18
IN
Auxiliary Input: Alat Bantu Input adalah multiplekser melalui pin output amplifier dan output speaker.
VSSA,
13, 12
20, 19
Ground: ISD2500 serangkaian perangkat
VSSD
terpisah menggunakan analog dan digital bus ground.
SP + /
14/15
21/22
SP -
Output Speaker: Semua perangkat dalam seri ISD2500 yang masuk dalam chip perbedaan kendali speaker, kemampuan mengendalikan 50mW pada 16 Ω dari AUX IN (12,2 mW dari memori).
VCCA-
16-28
23-7
VCCD
Supply Voltage: Untuk meminimalkan noise, rangkaian analog dan digital dalam perangkat seri ISD2500 menggunakan daya yang terpisah
MIC
17
24
Mikrofon: Pin mikrofon mentransfer sinyal masukan sinyal ke on-chip Preamplifier.
MIC
18
25
REF AGC
Mikrofon Referensi: Input MIC REF adalah masukan pembalik ke mikrofon Preamplifier.
19
26
Automatic Gain Control: AGC secara dinamis mengatur penambahan Preamplifier untuk mengimbangi berbagai tingkat input mikrofon.
ANA
20
27
IN ANA
sinyal analog ke chip untuk merekam. 21
28
OUT OVF
Analog Input: Analog Input mentransfer
Analog Output: pin ini memberikan output kepada Preamplifier pengguna.
22
1
Overflow: sinyal pulsa ini RENDAH dan berakhir pada memori array, menunjukkan perangkat telah diisi dan pesan telah over.
CE
23
2
Chip Enable: masukan pin CE diambil RENDAH untuk mengaktifkan semua pemutaran dan merekam operasi.
PD
24
3
Power Down: Ketika merekam atau pemutaran
51
tidak beroperasi, pin PD harus ditarik TINGGI menempatkan bagian dalam modus siaga. EOM
24
5
End-of-Message: Baterai penanda secara otomatis dimasukkan pada akhir setiap pesan rekaman.
XCL
26
5
K P/R
External Clock: masukan clock eksternal memiliki perangkat internal pull-down
27
6
Playback / Record: input pin P/R terkunci oleh pin CE.
2
Kualitas Suara/ Bunyi Winbond's
ISD2500
menyediakan
serangkaian
perangkat
yang
ditawarkan pada 4.0, 5.3, 6.4, dan 8,0 kHz sampling frekuensi, yang memungkinkan pengguna memilih kualitas suara. Meningkatkan durasi dengan menurunkan
seri produk sampling
frekuensi dan lebar suara, yang
mempengaruhi kualitas suara. (www.winbond.com, 2005) Contoh suara langsung disimpan ke dalam on-chip memori. Baterai tanpa digitalisasi dan kompresi yang terkait seperti solusi lainnya. Menyediakan penyimpanan analog langsung yang cukup baik, terdengar alami reproduksi suara, musik, nada, dan efek suara yang tidak tersedia dalam kebanyakan solusi digital. (www.winbond.com, 2005)
2.8 Amplifier
Penguat audio (amplifier) secara harfiah diartikan dengan memperbesar dan menguatkan sinyal input. Tetapi yang sebenarnya terjadi adalah, sinyal input di-replika (copied) dan kemudian di reka kembali (re-produced) menjadi sinyal yang lebih besar dan lebih kuat. (Zaki, 2007:91) Dari sinilah muncul istilah fidelitas (fidelity) yang berarti seberapa mirip bentuk sinyal keluaran hasil replika terhadap sinyal masukan. Ada kalanya sinyal input dalam prosesnya kemudian terdistorsi karena berbagai sebab, sehingga bentuk sinyal keluarannya menjadi cacat. (Zaki, 2007:91) Sistem penguat dikatakan memiliki fidelitas yang tinggi (high fidelity), jika sistem tersebut mampu menghasilkan sinyal keluaran yang bentuknya persis sama dengan sinyal input. Hanya level tegangan atau amplitudo saja yang telah diperbesar dan dikuatkan. (Zaki, 2007:91-92) Di sisi lain, efisiensi juga mesti diperhatikan. Efisiensi yang dimaksud adalah efisiensi dari penguat itu yang dinyatakan dengan besaran persentasi dari power output dibandingkan dengan power input. Sistem penguat dikatakan memiliki tingkat efisiensi tinggi (100 %) jika tidak ada rugi-rugi pada proses penguatannya yang terbuang menjadi panas. (Zaki, 2007:92)
BAB III
53
METODE PENELITIAN
31 Waktu dan Tempat Penelitian Penelitian ini akan dilaksanakan pada bulan November 2009 dan bertempat di Laboratorium Elektronika Universitas Islam Negeri Maulana Malik Ibrahim Malang.
32 Alat dan Bahan Alat yang digunakan pada penelitian ini adalah: 1. Seperangkat komputer personal tipe pentium 4 CPU 2,66 GHz, harddisk 80 Gbyte, memori 240 Mbyte RAM dan sistem operasi microsoft windows XP profesional untuk membuat program dan penulisan laporan 2. Perangkat lunak software Bahasa Assembler untuk penulisan program. Sedangkan bahan-bahan yang diperlukan dalam penelitian ini adalah: 1. Mikrokontroler AT89S51 2. ISD 2590 3. Speaker 4. Sensor ultrasonik D-Sonar 5. Kompas modul HM55B 6. LCD M1632 7. Amplifier
33 Perancangan dan Pembuatan Alat Perancangan dan pembuatan alat dibagi menjadi dua tahap, yaitu tahap pembuatan perangkat keras (hardware) dan tahap perancangan perangkat lunak (software).
3.3.1 3
Tahap Perancangan dan Pembuatan Perangkat keras
Perancangan Sistem Keseluruhan Perancangan sistem keseluruhan ini berfungsi untuk mengontrol keseluruhan kerja dari kompas modul HM55B dan sensor D-Sonar. Perancangan sistem keseluruhan ini ditunjukkan oleh diagram blok pada gambar 3.1 berikut:
Gambar 3.1 Diagram blok perancangan sistem keseluruhan
55
3
Perancangan Rangkaian Kompas Modul HM55B
Gambar 3.2 Rangkaian kompas modul HM55B 1.
Pin Data dihubungkan dengan port P3.0 dari MK untuk mengirimkan data dari kompas modul.
2.
Pin CLK dihubungkan dengan port P3.1 dari MK untuk menerima data dari kompas modul.
3.
Pin /Enable dihubungkan dengan port P3.2 dari MK untuk mengaktifkan perangkat kompas modul tersebut.
3
Perancangan Rangkaian Sensor D-Sonar
Gambar 3.3 Rangkaian sensor D-Sonar
1. Pin TRIGGER dihubungkan dengan port P2.1 MK untuk mengaktifkan D-Sonar sehingga bisa mengukur jarak 2. Pin ECHO dihubungkan dengan port P2.2 MK untuk mengirimkan pulsa hasil pengukuran jarak obyek
3
Perancangan Rangkaian LCD M1632
Gambar 3.4 Rangkaian LCD M1632
1. Pin RS dihubungkan dengan port P2.7 dari MK untuk membedakan sinyal antara instruksi program (instruksi penulisan data)
57
2. Pin E dihubungkan dengan port P2.6 dari MK untuk memberikan instruksi bahwa LCD dapat dikirimi data. 3. Pin DB0-DB7 dihubungkan dengan port P0.0-P0.7 dari MK untuk menampilkan data ke mikrokontroler. 4. Pin R/W dihubungkan dengan ground untuk sinyal tulis data.
3
Perancangan Rangkaian Keypad Keypad 4x4 merupakan susunan 16 tombol sebagai sarana input ke mikrokontroler, meskipun jumlah tombol ada 16 tapi hanya memerlukan 8 jalur port paralel. Pada pembuatan alat ini, port pararel pada keypad terhubung pada port pararel MK AT89S51 yaitu P.1.0 hingga P1.7. Rangkaian dari keypad ditunjukkan pada gambar 3.6. berikut
Gambar 3.5 Rangkaian keypad
3
Perancangan Rangkaian Sensor ISD 2590
Gambar 3.6 Rangkaian ISD 2590
1.
Pin A1/M1 sampai A7 dihubungkan secara paralel dengan port DB0 sampai DB7 dari LCD untuk pengalamatan data dari ISD ke LCD.
2.
Pin A8 dan A9 dihubungkan dengan port P25 dan P24 dari MK untuk pengalamatan awal.
3.
Pin PD diubungkan dengan port P22 dari MK untuk menempatkan modus siaga.
4.
Pin PR dihubungkan dengan port P23 dari MK untuk menampilkan kembali suara yang telah direkam.
3.3.2
Tahap Perancangan Perangkat Lunak (Software) Pembuatan perangkat lunak berfungsi untuk memberikan perintah pada
perangkat keras yang telah dirangkai agar bisa beroperasi sesuai dengan rancangan. Perangkat lunak yang digunakan dalam pembuatan alat ini adalah
59
bahasa pemrograman Assembler MCS-51. Algoritma pemrograman pada pembuatan alat ini ditunjukkan sesuai flowchart pada gambar 3.7 start
N Isi suara
N
N Dengar suara
Y
Y
Isi suara sesuai address
Dengar suara sesuai addres
N
Tekan 1
Tekan 2
Tekan 3
Y
Y
Y
Jarak<1
Baca arah
Jarak<1 Y
Y Baca jarak
Kalibrasi timer menjadi arah mata angin
Baca jarak
Kalibrasi timer menjadi jarak
Tulis arah pada LCD
Kalibrasi timer menjadi jarak
Bicara arah
Tulis jarak pada LCD
Tulis jarak pada LCD
N
Bicara jarak
Bicara jarak
Baca arah
Kalibrasi timer menjadi arah mata angin
Tulis arah pada LCD
Bicara arah
Pesan off Y End
Gambar 3.7 Flowchart perancangan software
N
N
N
34 Pengujian 3.4.1 Pengujian Rangkaian Kompas Modul HM55B Tujuan pengujian kompas modul HM55B adalah untuk mengetahui apakah kompas ini bisa membaca arah dengan tepat. 1. Peralatan pengujian: •
Mikrokontroler
•
HM55B
2. Prosedur pegujian:
•
0000 0001 0011 Mikrokontroler diprogram agar bisa mengirim data 1100 dan menerima data dalam bentuk respon 0001 dan nilali arah (sumbu x dan sumbu y) dr HM55B
•
Jika HM55B merespon dan memberikan data ke mikrokontroler, maka HM55B bekerja dengan baik
3.4.2 Pengujian Rangkaian Sensor D-Sonar Tujuan pengujian rangkaian sensor D-Sonar adalah untuk mengetaui apakah sensor bisa bekerja membaca jarak benda di depannya. 1. Peralatan pengujian: •
Mikrokontroler
•
Sensor D-Sonar
61
2. Prosedur pegujian: •
Mikrokontroler diprogram agar bisa mengirim trigger dan menerima signal dari D-Sonar yang merupakan informasi jarak
•
Jika D-Sonar merespon dan memberikan signal ke mikrokontroler, maka D-Sonar bekerja dengan baik
3.4.3
Pengujian Rangkaian Sensor ISD 2590 Tujuan pengujian ISD 2590 adalah untuk mengetahui apakah ISD dapat
merekam suara dengan baik dan menghasilkan suara sesuai dengan rancangan. 1. Peralatan pengujian: •
ISD
•
Mikrokontroler
•
LCD
2. Prosedur pengujian: •
Diberikan program pengisian dan program untuk menjalankan suara pada ISD
•
Jika ISD dapat merekam dan menjalankan suara maka ISD berfungsi dengan baik
3
Tahap Pengukuran Tahap pengukuran ini dibedakan menjadi dua, yaitu tahap pengukuran jarak benda dan tahap pengukuran arah mata angin.
3
Pengukuran Jarak Benda Langkah-langkah pengambilan data untuk jarak benda adalah: 1. Meletakkan bidang datar di depan alat. 2. Meletakkan penggaris sepanjang 100 centi meter antara bidang datar dan alat tersebut. 3. Mengukur dan mencatat jarak antara bidang dan alat. 4. Menekan tombol 1 pada keypad dan mencatat suara jarak yang terdengar dari headset. 5. Menjalankan secara perlahan-lahan alat tersebut dari jarak 100 centi meter dan berhenti pada jarak tertentu, kemudian dilakukan langkah 3 dan 4. 6. Melakukan pengukuran sebagaimana langkah 3 hingga 5 dengan jarak acak sebanyak sepuluh kali.
3
Pengukuran Arah Mata Angin Langkah-langkah pengambilan data untuk arah mata angin adalah: 1. Mencatat besar sudut delapan arah mata angin, yaitu utara, timur laut, timur, tenggara, selatan, barat daya, barat, dan barat laut. 2. Menghadapkan kompas mekanik bebas di lantai, didiamkan hingga posisinya stabil. 3. Meletakkan kertas penunjuk sudut di lantai dengan arah mengikuti
63
kompas tersebut, dan merekatnya agar tidak bergeser. 4. Meletakkan alat di atas kertas tersebut dan menghadapkannya ke arah utara (0o). 5. Menekan tombol 2 pada keypad dan memutar arah alat ke kanan atau ke kiri sedikit hingga terdengar suara “arah utara” dari headset. Mendiamkannya sejenak hingga stabil. 6. Mencatat besar sudut yang dibentuk saat terdengar suara ”arah utara”. 7. Memutar alat hingga suara berubah menjadi ”arah timur laut”. Kemudian dilakukan langkah 6. 8. Melakukan langkah 7 hingga diperoleh data hasil pengukuran delapan arah mata angin.
3
Tahap Analisis Tujuan dari tahap analisis ini adalah untuk mengetahui tingkat keakuratan perangkat elektronik yang telah disusun, apakah bekerja dengan baik. Data yang telah diambil kemudian dianalisis. Data arah mata angin dicari nilai sensitivitasnya menggunakan persamaan (3.1) berikut (Pikatan,1992:2): Sensitivitas _ sudut ( % ) =
sudut _ sebenarnya − sudut _ pengukuran x100% sudut _ sebenarnya
...(3.1)
Simpangan tersebut dijumlahkan untuk mencari simpangan totalnya. Kemudian simpangan total ini dicari simpangan rata-ratanya untuk mewakili
secara umum ketelitian alat ini dalam membaca arah mata angin. Untuk mencari simpangan rata-ratanya menggunakan persamaan (3.2) berikut (Sudjana, 2001:66-67): Sensitivitas _ rata 2(%) =
∑ Sensitivitas (%) Jumlah _ data .................................................(3.2)
Data jarak benda yang telah diperoleh kemudian dicari selisihnya. Selisih masingmasing data tersebut dicari simpangannya menggunakan persamaan (3.3) berikut (Pikatan,1992:2): jarak _ sebenarnya − jarak _ pengukuran Simpangan _ jarak ( % ) = x100% jarak _ maksimal ..(3.3) Untuk mengetahui kevalidan alat dalam membaca jarak benda di depannya maka dicari nilai kesalahan relatif dari nilai simpangan yang telah diperoleh menggunakan persamaan (3.4) berikut (Sudjana, 2001:66-67): Simpangan _ rata 2(%) =
∑ Simpangan(%) Jumlah _ data .................................................(3.4)
65
BAB IV HASIL DAN PEMBAHASAN
4.1 Hasil Penelitian Pengujian ini dilakukan pada gabungan antara perangkat keras (hardware) dan perangkat lunak (software). Software yang digunakan adalah bahasa pemrograman Assembler.
4.1.1
Hasil Pengujian Kompas Modul HM55B
Kompas modul HM55B pada alat ini berfungsi untuk menentukan arah mata angin. Cara kerja kompas ini dengan membaca kuat medan magnet. Pengujian pada kompas modul HM55B ini dilakukan dengan membagi lingkaran 360° menjadi empat kuadran, yaitu kuadran I, kuadran II, kuadran III dan kuadran IV. Tiap kuadran memiliki dua sumbu, yaitu sumbu x dan sumbu y. Pembagian kuadran tersebut ditunjukkan pada gambar 4.1. Masing-masing sumbu pada kuadran tersebut memiliki dua bagian. Satu bagian memiliki bilangan bernilai tetap dalam satu kuadran, sedangkan satu bagian lagi nilainya berubah-ubah sesuai perputaran kompas. Bagian sumbu yang memiliki bilangan tetap digunakan sebagai patokan. Salah satu sumbu bilangan yang bernilai tetap akan berubah bila mencapai batas akhir satu kuadran. Bilangan yang berubahubah menunjukkan interval dalam suatu kuadran. Besar sudut sebenarnya dari tiap bilangan yang ditampilkan ditentukan dengan memilih salah satu sumbu masing-masing kuadran.
255-205=50
Pengukuran untuk mencari sudut sebenarnya pada kuadran I dan IV menggunakan sumbu y sedangkan pada kuadran II dan III menggunakan sumbu x. Besar sudutnya dihitung dengan persamaan (3.1).
θ
n
=θ
n− 1
+
< kuadran Σ bilangan .......................................................................(3.1)
Keterangan: θn = besar sudut data ke n θn-1 = besar sudut data n-1
Gambar 4.1 Diagram pembagian sudut arah mata angin
Tabel hasil perhitungan sudut berdasarkan sistem linear tersebut
67
ditunjukkan pada lampiran 2 tabel 2.1. Data pada lampiran tersebut menunjukkan bahwa skala sudut yang digunakan berbeda-beda baik skala sudut dalam satu kuadran maupun skala sudut antarkuadran. Skala sudut yang ditunjukkan tersebut antara satu hingga tiga derajat. Sudut utama yang digunakan sebagai input pada program ini adalah 0o/360o, 90o, 180o, 270o. Selain empat sudut tersebut, sudut pertengahan dari masing-masing kuadran juga penting. Empat sudut tersebut adalah 45o, 135o, 225o, dan 315o. Tabel pada lampiran 2 tabel 2.1 tersebut menunjukkan bahwa kuadran I, II, dan III sudut pertengahannya dapat ditampilkan dengan tepat, yaitu 45o, 135o, dan 225o sedangkan pada kuadran IV sudut pertengahan yang seharusnya 315o tidak tepat terbaca, yang terbaca pada kuadran ini adalah sudut 341o dan 316o. Besar sudut ini selisihnya hanya sebesar 1o, sehingga masih mendekati nilai sebenarnya. Pengujian dan analisis di atas menunjukkan bahwa data ini dapat digunakan untuk menentukan arah mata angin.
4.1.2
Hasil Pengujian Sensor D-Sonar
Sensor D-Sonar pada alat ini berfungsi untuk menentukan jarak benda di depan penderita tunanetra. Keluaran dari sensor ini berupa timer dengan satuan µm yang menunjukkan waktu berjalannya pulsa gelombang ultrasonik. Pemberian masukan pada sensor ini dilakukan dengan mengambil data awal dengan meletakkan benda di depan sensor dengan jarak 100 cm. Keluaran timer dicatat pada tabel. Sensor digeser mendekati benda dengan kelipatan tiap kali 5 cm berhenti. Sensor terus digeser hingga jaraknya 5 cm di depan benda sambil
terus dicatat timernya. Data timer dan jarak yang telah diukur ditunjukkan pada lampiran 2 tabel 2.2. Data hasil pengukuran ini kemudian dibuat sistem linear berupa grafik yang ditunjukkan pada gambar 4.2. Pembuatan grafik ini bertujuan agar keluaran yang ditampilkan berupa jarak dengan satuan cm. Grafik tersebut menunjukkan hubungan antara timer dalam (µm) dengan jarak (cm). Data secara detail dihitung menggunakan persamaan (3.2). Persamaan ini diperoleh dari rumus pembentukan grafik linear. y = 0.5438x + 1.5159 (3.2) Grafik Hubungan Timer dan Jarak 120
Jarak (cm)
100 80 Jarak
60
Linear (Jarak)
40 20 0 0
25
50
75
100
125
150
Tim e r (m ik ro s e k on)
175
200
y = 0.5438x + 1.5159
Gambar 4.2 Grafik linear hubungan antara timer (μs) dan jarak benda (cm)
Grafik pada gambar di atas menunjukkan bahwa garis penghubung titiktitik tersebut berbentuk linear. Hubungan ini menunjukkan bahwa makin besar timer (waktu) yang diperlukan, makin besar pula jarak yang ditampilkan sehingga memenuhi persamaan (2.24). Hasil pengukuran dan analisis ini
69
menunjukkan bahwa data ini dapat digunakan sebagai input pemrograman pada sensor D-Sonar.
4.1.3
Hasil Pengujian ISD 2590
ISD 2590 memiliki durasi 90 detik dan pengalamatan 600 address. Address ini dibagi dalam skala 10. Durasi tiap pengalamatan dapat dihitung menggunakan persamaan (4.1). Hasil perhitungan menunjukkan bahwa durasi tiap pengalamatan adalah 1,5 sekon. Maksudnya bahwa waktu yang diperlukan dalam satu kali merekam suara adalah 1,5 sekon.
pengalama tan durasi _@_ pengalama tan = total _ address total _ durasi ...............................................(4.1)
Data suara yang diperlukan pada alat ini ada 30 kata sebagaimana ditunjukkan pada lampiran 2 tabel 2.3. Data tersebut menampilkan data angka biner, rekaman suara masukan dan keluaran. Pada tabel tersebut menunjukkan bahwa data suara masukan telah sesuai dengan data suara keluaran, sehingga dapat disimpulkan bahwa data ini dapat digunakan untuk pemrograman sebagai output suara.
4.1.4
Pengukuran Arah Mata Angin
Alat yang sudah dirangkai dan diberikan program kemudian digunakan untuk pengukuran arah mata angin untuk mengetahui apakah rancangan yang telah disusun bisa membaca arah mata angin dengan baik. Pengukuran arah
mata angin sebagaimana langkah-langkah yang telah disebutkan pada Subbab 3.5.2 yang lalu menghasilkan data yang ditunjukkan pada tabel 4.4 berikut:
Tabel 4.4 Data arah mata angin Sudut (o)
LCD
Suara
Sensitivi tas (%)
Sebena Penguk rnya uran 0 0 Utara
Arah Utara
45
50
Timur Laut
Arah Timur Laut
90
98
Timur
Arah Timur
8,89
135
134
Tenggara
Arah Tenggara
0,74
180
187
Selatan
Arah Selatan
3,89
225
229
Barat Daya
Arah Barat Daya
1,78
270
271
Barat
Arah Barat
0,37
315
323
Barat Laut
Arah Barat Laut
2,54
Jumlah sensitivitas (%)
0 11,1
29,31
Data di atas menunjukkan selisih antara besar sudut yang sebenarnya dengan besar sudut hasil perhitungan. Suara arah mata angin akan mengikuti sudut yang dibentuk. Sensitivitas masing-masing sudut dicari menggunakan persamaan (3.1). Perhitungan untuk mencari sensitivitas ini ditunjukkan pada lampiran 5. Hasil perhitungan sensitivitas masing-masing arah mata angin ditunjukkan pada tabel 4.4. Pada arah timur laut, sudut yang seharusnya 45o pada alat terbaca 50o, sehingga sensitivitas yang ditunjukkan cukup besar yaitu 11,1%. Pada arah timur juga demikian, sedangkan pada arah-arah yang lain sensitivitasnya kecil. Sensitivitas itu kemudian dijumlahkan untuk mendapatkan 71
sensitivitas total. Sensitiitas total tersebut selanjutnya dicari simpangan rataratanya menggunakan persamaan (3.2) sebagaimana ditunjukkan juga pada lampiran 5. Hasil perhitungan menunjukkan bahwa sensitivitas rata-rata yang diperoleh sebesar 3,66%, sehingga akurasi data tersebut adalah 96,34%.
4.1.5
Pengukuran Jarak Benda
Alat yang telah dirangkai seperti rancangan dan telah diprogram digunakan mengukur jarak benda untuk mengetahui apakah alat tersebut bisa membaca jarak benda dengan baik. Pengukuran jarak benda sebagaimana langkah-langkah yang telah disebutkan pada Subbab 3.5.1 yang lalu menghasilkan data yang ditunjukkan pada tabel 4.5 berikut:
Tabel 4.5 Data jarak benda N o. 1
Jarak Sebenarnya (cm) 100
2
98
3
87
Jarak benda sembilan puluh sembilan centi 1,02 meter Jarak benda delapan puluh delapan centi meter 1,15
4
76
Jarak benda tujuh puluh enam centi meter
0
5
65
Jarak benda enam puluh enam centi meter
1,54
6
54
Jarak benda lima puluh empat centi meter
0
7
43
Jarak benda empat puluh empat centi meter
2,32
8
32
Jarak benda tiga puluh tiga centi meter
3,12
Jarak Pada Alat (Suara) Jarak benda seratus centi meter
Simpan gan (%) 0
9
21
Jarak benda dua puluh satu centi meter
0
10
10
Jarak benda sebelas centi meter
10
Simpangan total
19,15
Data di atas menunjukkan bahwa jarak sebenarnya dengan suara yang dikeluarkan ada yang bernilai sama, ada juga yang berbeda. Selisih setiap jarak bernilai antara nol (0) hingga (satu) 1. Data yang diperoleh ini dicari simpangannya menggunakan persamaan (3.3). Pada data 1 hingga 9 penyimpangan yang terjadi masih kecil yaitu di bawah 5%, sedangkan pada data yang ke-10 penyimpangannya cukup besar, yaitu 10%. Simpangan masing-masing data ini kemudian dicari simpangan rata-ratanya menggunakan persamaan (3.4). Perhitungan untuk mencari simpangan ini ditunjukkan pada lampiran 5. Hasil perhitungan menunjukkan bahwa besar simpangan rata-rata (KR) adalah 1,92% sehingga akurasi alat ini sebesar 98,08%.
4.2 Pembahasan 4.2.1
Pembahasan Pengukuran Arah Mata Angin
Pengambilan data untuk mengetahui kevalidan alat ini dalam membaca arah mata angin dilakukan sebanyak delapan kali berdasarkan delapan arah mata angin. Data ini menampilkan besar sudut sebenarnya dari delapan arah mata angin. Data ini kemudian dibandingkan dengan data hasil pengukuran. Hasilnya
73
sebagaimana ditunjukkan pada tabel 4.5. Terdapat penyimpangan antara besar sudut sebenarnya dengan sudut hasil pengukuran. Sensitivitas sudut rata-rata yang diperoleh sebesar 3,65% sehingga akurasinya sebesar 96,35%. Secara teori data dikatakan valid apabila simpangannya maksimal 5%. Hasil analisis menunjukkan bahwa hasil pengukuran arah mata angin ini termasuk data yang valid. Keberhasilan pengukuran ini di antaranya disebabkan karena pengambilan data dilakukan di tempat yang terbuka, sehingga tidak terpengaruh oleh bahan-bahan logam di sekitarnya. Selain itu sebagaimana hasil pengujian pada Subbab 4.1.2 yang menunjukkan bahwa sudut-sudut utama dapat terbaca dengan baik, sehingga bisa diaplikasikan pada alat ini. Ada beberapa kelemahan pada saat pengukuran arah mata angin ini. Kelemahan tersebut di antaranya besar sudut mata angin dalam derajat yang berdekatan satu sama lain sehingga sudut yang dibentuk tidak bisa stabil menyebabkan kebingungan saat membaca hasilnya. Kelemahan lain adalah kompas yang berbahan magnet sangat sensitif dengan bahan-bahan logam di sekitarnya sehingga berpengaruh terhadap hasil perhitungan. Kelemahan pada alat ini bisa diminimalisir jika digunakan pada tempat terbuka dan dijauhkan dari bahan-bahan logam. Selain bahan-bahan logam, kondisi kutub-kutub magnet bumi juga sangat berpengaruh terhadap fungsi kompas. Ini adalah kendala yang cukup sulit diatasi karena di manapun alat ini berada akan selalu dipengaruhi oleh kutub-kutub magnet bumi. Kutub utara magnet Bumi pertama kali ditemukan pada 1831 dan ketika
diukur kembali pada 1904, para peneliti menemukan bahwa letaknya telah bergerak sejauh 50 kilometer. Menurut para peneliti Oregon, tingkat pergerakan kutub magnet itu meningkat seabad terakhir dibandingkan abad-abad sebelumnya. (http://www.kompas.com/teknologi/news/0512/09/) Selama berabad-abad pemandu arah yang menggunakan kompas harus belajar untuk menyesuaikan perbedaan antara arah utara magnet dengan arah utara geografis bumi. Sebuah kompas akan menunjuk arah utara magnetik bukannya
arah
Kutub
Utara.
(http://www.kompas.com/teknologi/news/0512/09/) Alat ini dapat dipakai dalam jangka waktu yang cukup lama karena pergeseran kutub-kutub magnet berjalan lambat. Kelemahan pada alat ini sebagaimana sifat kompas pada umumnya, yaitu tidak bisa stabil secara sempurna. Penggunaan bintang sebagai penunjuk arah mata angin merupakan salah satu di antara alat penunjuk arah yang lain. Seiring perkembangan ilmu pengetahuan dan teknologi, solusi untuk menentukan arah mata angin semakin bervariasi. Misalnya dengan melihat pohon, bagian pohon yang berlumut tebal menunjukan arah timur, karena pada pagi hari sinar matahari belum terik. Ada juga yang memanfaatkan gaya magnetik bumi, yaitu dengan menggunakan kompas. 4.2.2
Pembahasan Pengukuran Jarak Benda
Data pada tabel 4.5 adalah hasil pengukuran jarak benda. Data tersebut menunjukan bahwa antara jarak sebenarnya dan jarak hasil pengukuran sama
75
persis. Data hasil pengukuran setelah dihitung memiliki simpangan 1,95% sehingga akurasinya sebesar 98,08%. Hasil ini juga memenuhi teori kevalidan data, yaitu error di bawah 5%. Hal ini menunjukkan bahwa alat ini cukup teliti dalam membaca ketepatan jarak benda di depannya, hal ini sebagaimana rumusan pada datasheet dan juga sesuai dengan teori Fisika tentang pemantulan bunyi. Pada datasheet sensor D-Sonar telah dijelaskan bahwa transmitter akan memancarkan gelombang ultrasonik. Apabila mengenai suatu benda maka gelombang tersebut akan dipantulkan kembali tetapi lewat receiver. Pulsa tersebut kemudian akan diukur oleh trigger dan akan tercatat sebagai waktu (t). Waktu (t) ini kemudian digunakan untuk menghitung jarak benda menggunakan persamaan 2.24. Ketelitian alat ini juga dipengaruhi input data hasil pengujian sensor sebelumnya. Pada saat pengujian data, grafik perbandingan antara timer dan jarak berbentuk linear. Bentuk linear hubungan ini menunjukkan bahwa semakin besar timer yang dikeluarkan, jarak yang ditempuh akan semakin jauh juga. Tingkat ketelitian pada alat ini cukup bagus. Akan tetapi alat ini juga memiliki kekurangan, yaitu hanya bisa membaca jarak maksimal 100 cm (1 m). Secara teori hal-hal yang mempengaruhi kecepatan bunyi selain jarak dan waktu adalah frekuensi dan panjang gelombang. Frekuensi sensor ini telah diketahui pada datasheet, yaitu sebesar 40 KHz sebagaimana sensor ultrasonik pada umumnya. Jadi yang mempengaruhi pembacaan jarak yang hanya 100 cm (1 m) adalah panjang gelombang yang dikeluarkan oleh sensor tersebut. Pada sensor
ini, panjang gelombang yang dikeluarkan lebih pendek, sehingga kecepatannya makin kecil. Jika kecepatan yang dihasilkan kecil jarak yang ditempuh semakin pendek, sehingga alat ini tidak bisa mendeteksi keberadaan benda di depannya yang berjarak di atas 100 cm (1 m).
77
BAB V PENUTUP
5.1 Kesimpulan Dari hasil perancangan alat dan pembahasan penunjuk arah serta deteksi keberadaan benda bagi tunanetra di atas dapat diambil beberapa kesimpulan, di antaranya: a.
Sensor ultrasonik D-Sonar memancarkan gelombang melalui transmitter. Jika mengenai benda, gelombang dipantulkan kembali ke sensor melalui receiver. Sensor menghitung timer antara mulai memancarnya gelombang hingga selesai dipantulkan, yang dikirimkan ke Mikrokontroler. Timer diubah menjadi jarak menggunakan persamaan s = v.t , di mana s = jarak, v = kecepatan, dan t = timer. Jarak yang diperoleh disesuaikan dengan data rekaman suara dari ISD. Data ini akan dikeluarkan dalam bentuk suara jarak benda.
b.
Kompas digital HM55B bekerja dengan membaca letak kutub-kutub magnet bumi. Data derajat kutub-kutub magnet bumi dikirim ke Mikrokontroler untuk disesuaikan dengan data rekaman suara dari ISD. Data ini akan dikeluarkan dalam bentuk arah mata angin.
c.
Alat deteksi keberadaan benda ini memiliki simpangan jarak 1,92% sehingga tingkat ketelitiannya 98,08%. Alat ini cukup teliti dalam membaca jarak benda di depannya, tetapi hanya bisa membaca jarak maksimal 100 cm (1 m).
d. Alat penunjuk arah mata angin ini memiliki simpangan sudut 3,65% sehingga tingkat ketelitiannya 96,35%. Alat ini cukup teliti dalam membaca arah mata angin, tetapi sangat sensitif dengan benda-benda berbahan logam.
5.2 Saran a. Kompas modul HM55B sangat sensitif dengan benda berbahan logam. Untuk hasil yang lebih baik hendaknya menggunakan alat ini di tempat yang terbuka. b. Hendaknya menggunakan sensor ultrasonik kualitas yang lebih baik sehingga jarak deteksi lebih jauh. c. Alat ini dapat dikembangkan untuk mendeteksi bukan hanya delapan arah mata angin, akan tetapi menunjukkan setiap derajat sehingga arah yang dituju benar-benar valid.
79
DAFTAR PUSTAKA Abdullah dan Bin ’Abdurrahman bin Ishaq Alu Syaikh. 2007. Tafsir Ibnu Katsir Terjemahan M. Abdul Ghaffar E.M. Bogor: Pustaka Imam Syafi’i Atmel Corporation. 2001. AT89s51. www.atmel.com. Diakses tanggal 27 Mei 2009 A WikiMedia Project. Mata Angin. MediaWiki. http://wikipedia.org. Diakses tanggal 6 Januari 2009 Delta Elektronik. Delta Sonar Interface. Surabaya: www.delta-electronic.com. Diakses tanggal 22 November 2009 Gagah Wirahadi Santosa dan Mario Krisno. 2008. Sensor Penunjuk Arah untuk Tuna Netra Karya Mahasiswa Untag Surabaya. Surabaya. www.surya.co.id. Diakses tanggal 11 Desember 2008 Ichwan, Mohammad Nor. 2004. Tafsir ’Ilmiy Memahami Al Qur’an Melalui Pendekatan Sains. Jogjakarta: Menara Kudus Jogja Insan Sains Projects. 2007. LCD M1632. www.insansainsprojects.blogspot.com. Diakses tanggal 10 Januari 2010 Parallax.
Inc. 2005. Hitachi HM55B Compass Module www.parallax.com. Diakses tanggal 27 Januari 2010
(#29123).
Pikatan, Sugata. 1992. Pengukuran, Pengolahan dan Analisa Data Eksperimen. Surabaya: Lokakarya Metodologi Penelitian Universitas Surabaya Quthb, Sayyid. 2003. Tafsir Fi Zhilalil Qur’an di Bawah Naungan Al Qur’an terjemahan As’ad Yasin dkk. Jakarta: Gema Insani Perss Rohmattulloh. 2008. Rancang Ulang Dan Realisasi Kunci Elektronik Berbasis Data. Bandung: IT Telkom. www.ittelkom.ac.id. Diakses tanggal 23 Januari 2009 Sudjana, Prof. Dr. 2001. Metode Statistik Edisi ke-6. Bandung: Tarsito Syamsi Dhuha Foundation. 2004. Minimnya Perhatian Pemerintah Terhadap Tunanetra. Bandung: http://syamsidhuhafoundation.org. Diakses tanggal 10 Juni 2009 Tipler, Paul A. 1991. FISIKA Untuk Sains dan Teknik Edisi Ketiga Jilid I terjemahan Dra. Lea Prasetio, M.Sc. dan Rahmad W. Adi, Ph.D. Jakarta: Erlangga
Tjia, M.O. 1993. Diktat Kuliah F-214 Gelombang. Bandung: Jurusan Fisika FMIPA ITB Winbond Electronic Corporation. 2003. ISD 2560/75/90/120. www.winbond.com. Diakses tanggal 28 Oktober 2009 Yawan,
Handi. 2009. Kutub Utara Magnet Bumi Bergeser. http://www.kompas.com/teknologi/news/0512/09. Diakses tanggal 28 Mei 2010
Zaki. 2007. Cara Mudah Belajar Merangkai Elektronika Dasar Lanjutan. Yogyakarta: Absolut
81
Lampiran 1: Gambar Rangkaian Skematik Alat
Lampiran 2: Tabel pengujian menggunakan kompas digital HM55B Sb. Y 255 254 253 252 251 250 249 248 247 246 245 244 243 242 241 240 239 238 237 236 235 234 233 232 231 230
Linear
Kuadran I
0
0 2 5 7 9 11 14 16 18 20 23 25 27 29 32 34 36 38 41 43 45 47 50 52 54 56
83
59
229
61
228
63
227
65
226
68
225
70
224
72
223
74
222
77
221
79
220
81
219
83
218
86
217
88
216 215
Sb. Y 255 254 253 252 251 250 249 248 247 246 245 244
90
90
Linear
Kuadran I
0
0 2 5 7 9 11 14 16 18 20 23 25
27
243
29
242
32
241
34
240
36
239
38
238
41
237
43
236
45
235
47
234
50
233
52
232
54
231
56
230
59
229
61
228
63
227
65
226
68
225
70
224
72
223
74
222
77
221
79
220
81
219
83
218
86
217
88
216 215
90
90
85
Sb. Y 255 254 253 252 251 250 249 248 247 246 245 244 243 242 241 240 239 238 237 236 235 234 233 232 231 230 229 228
Linear
Kuadran I
0
0 2 5 7 9 11 14 16 18 20 23 25 27 29 32 34 36 38 41 43 45 47 50 52 54 56 59 61
227
63 65
226
68
225
70
224
72
223
74
222
77
221
79
220
81
219
83
218
86
217
88
216 215
Sb. X 255 254 253 252 251 250 249 248 247 246 245 244
90
90
Linear
Kuadran II
90
90 92 94 95 97 99 101 103 104 106 108 110
87
243 242 241 240 239 238 237 236 235 234 233 232 231 230 229 228 227 226 225 224 223 222 221 220 219 218 217 216 215
112 113 115 117 119 121 122 124 126 128 130 131 133 135 137 139 140 142 144 146 148 149 151 153 155 157 158 160 162
164
214
166
213 212
167 169
211
171
210
173
209
175
208
176
207
178
206 205
Sb.X 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
180
180
Kuadran III
Linear 180
180 182 184 185 187 189 191 193 194 196 198 200 202 203 205 207 209
89
222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250
211 212 214 216 218 220 221 223 225 227 229 230 232 234 236 238 239 241 243 245 247 248 250 252 254 256 257 259 261
263
251
265
252
266
253
268
254 255
270
270
Kuadran Sb.Y 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26
Linear
IV
270
270 272 274 276 278 280 282 284 286 288 290 292 294 296 298 300 302 304 306 308
91
310
25
312
24
314
23
316
22
318
21
320
20
322
19
324
18
326
17
328
16
330
15
332
14
334
13
336
12
338
11
340
10
342
9
344
8
346
7
348
6
350
5
352
4
354
3
356
2
358
1 0
360
360
Tabel Pengujian Jarak Terhadap Timer Jarak
Timer 7
5 10 15 20 25 30 35 40 45
16 25 34 43 52 61 70 79 89
50
99
55 60 65 70 75 80 85 90 95 100
108 117 126 135 145 154 163 171 181
93
Tabel 2.3 Data Masukan dan Keluaran Suara pada ISD 2590 Output suara
Data Biner
Rekaman suara
000
Nol
Nol
010
Satu
Satu
020
Dua
Dua
030
Tiga
Tiga
040
Empat
Empat
050
Lima
Lima
060
Enam
Enam
070
Tujuh
Tujuh
080
Delapan
Delapan
090
Sembilan
Sembilan
100
Sepuluh
Sepuluh
110
Puluh
120
Sebelas
130
Belas
140
Seratus
150
Ratus
Ratus
160
Utara
Utara
170
Timur laut
180
Timur
190
Tenggara
200
Selatan
210
Barat daya
220
Barat
230
Barat laut
240
Arah
Puluh Sebelas Belas Seratus
Timur laut Timur Tenggara Selatan Barat daya Barat Barat laut Arah
Jarak benda
250
Jarak benda
260
Meter
Meter
270
Koma
Koma
280
Centi meter
290
Derajat
Centi meter Derajat
95
Lampiran 3: Gambar Alat Penunjuk Arah dan Deteksi Keberadaan Benda
Gambar 1. Alat tampak atas
Gambar 2. Alat tampak depan
Lampiran 4: Listing Program Assembler ;
; init:
org
00h
Ukrc Uktr Hibt ISTR Lobt ISPR Rest Enbl Cmdt Cmcl Cmen
Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit
Stt0 Stt1
Bit 20h.0 Bit 20h.1
; status 0 ; status 1
Dkp0 Dkp1 Dkp2 Buf0 Buf1 Dtlo Dthi Bicr
Equ Equ Equ Equ Equ Equ Equ Equ
30h 31h 32h 33h 34h 35h 36h 37h
; ; ; ; ; ; ; ;
register register register register register register register register
Djrk Djr0 Djr1 Djr2 Djr3 Dcm0 Dcm1 Dcm2 Dcm3 Dsdt
Equ Equ Equ Equ Equ Equ Equ Equ Equ Equ
40h 41h 42h 43h 44h 45h 46h 47h 48h 49h
; ; ; ; ;
data data data data data
Char Cntr Bufr Hex0 Hex1 Dly0 Dly1 Dly2 Dly3
Equ Equ Equ Equ Equ Equ Equ Equ Equ
50h 51h 52h 53h 54h 55h 56h 57h 58h
lcall
lcd_in
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 P3.0 P3.1 P3.2
; ; ; ; ; ; ; ; ; ; ;
97
ultrasonic transmit ultrasonic receive ISD address High ISD start ISD address Low ISD play/record RS LCD E LCD compass data compass clock compass enable
data data data data data data data lama
compas compas compas compas sudut
0 0 0 0
input keypad 0 input keypad 1 input keypad 2 buffer 0 buffer 1 address lo address hi bicara
; mulai:
;
clr clr
Stt0 Stt1
mov lcall mov lcall mov lcall mov lcall lcall mov lcall mov lcall mov lcall mov lcall lcall
DPTR,#nama line1 Char,#16 tulis DPTR,#nim line2 Char,#16 tulis delay2 DPTR,#jur line1 Char,#16 tulis DPTR,#univ line2 Char,#16 tulis delay2
mov lcall mov lcall measrm: lcall mov mov movc mov mov mov lcall mov lcall mov lcall mov lcall mov lcall ; lcall ; arah00: mov cjne cjne cjne mov mov ljmp arah01: cjne cjne cjne mov
DPTR,#tpjrnm line1 Char,#16 tulis bc_jrk DPTR,#lokup0 A,TH0 A,@A+DPTR Djrk,A DPTR,#angka P0,#089h w_ins A,Djrk nilai P0,#'c' w_chr P0,#'m' w_chr P0,#0D0h w_ins bccmps R7,#10 R3,#0,arah01 R2,#0,arah01 R1,#0,arah01 DPTR,#tparut R7,#0 arah09 R3,#0,arah02 R2,#4,arah02 R1,#5,arah02 DPTR,#tpartl
arah02:
arah03:
arah04:
arah05:
arah06:
arah07:
arah08:
mov ljmp cjne cjne cjne mov mov ljmp cjne cjne cjne mov mov ljmp cjne cjne cjne mov mov ljmp cjne cjne cjne mov mov ljmp cjne cjne cjne mov mov ljmp cjne cjne cjne mov mov ljmp mov lcall mov lcall mov mov lcall mov lcall mov lcall mov lcall mov lcall mov lcall ljmp
R7,#1 arah09 R3,#0,arah03 R2,#9,arah03 R1,#0,arah03 DPTR,#tpartm R7,#2 arah09 R3,#1,arah04 R2,#3,arah04 R1,#5,arah04 DPTR,#tpartg R7,#3 arah09 R3,#1,arah05 R2,#8,arah05 R1,#0,arah05 DPTR,#tparsl R7,#4 arah09 R3,#2,arah06 R2,#2,arah06 R1,#6,arah06 DPTR,#tparbd R7,#5 arah09 R3,#2,arah07 R2,#7,arah07 R1,#0,arah07 DPTR,#tparbr R7,#6 arah09 R3,#3,arah08 R2,#1,arah08 R1,#6,arah08 DPTR,#tparbl R7,#7 arah09 DPTR,#tparah line2 Char,#16 tulis DPTR,#angka P0,#0C6h w_ins A,R3 wr_chr A,R2 wr_chr A,R1 wr_chr P0,#0DFh w_chr P0,#0D0h w_ins arah10
99
arah09: lcall mov lcall mov lcall arah10: ; tmpbcr: jb jb ljmp tpbcr0: jnb jb lcall ljmp tpbcr1: jb jnb lcall ljmp tpbcr2: jnb jnb lcall lcall tpbcr3: mov lcall ljmp ; bcrjrk: lcall mov mov div mov mov mov div mov mov ; bcrjr0: mov jz cjne lcall ljmp bcrjr1: lcall lcall bcrjr2: mov jz cjne mov jnz lcall ljmp bcrjr3: cjne lcall ljmp bcrjr4: lcall lcall
line2 Char,#16 tulis Dly3,#2 delay3 Stt0,tpbcr0 Stt1,tpbcr0 tpbcr3 Stt0,tpbcr1 Stt1,tpbcr1 bcrjrk tpbcr3 Stt0,tpbcr2 Stt1,tpbcr2 bcrarh tpbcr3 Stt0,tpbcr3 Stt1,tpbcr3 bcrjrk bcrarh Dly3,#1 delay3 measrm
; if status 0 low ; if status 1 low ; if status 0 high ; if status 1 low ; bicara jarak ; if status 0 low ; if status 1 high ; bicara arah ; ; ; ;
if status 0 high if status 1 high bicara jarak bicara arah
jrkbnd A,Djrk B,#100 AB Djr0,A A,B B,#10 AB Djr1,A Djr2,B A,Djr0 bcrjr2 A,#1,bcrjr1 sratus bcrjr2 cckn0 ratus A,Djr1 bcrjr6 A,#1,bcrjr5 A,Djr2 bcrjr3 spuluh bcrjr7 A,#1,bcrjr4 sbelas bcrjr7 cckn0 belas
; 0 = lompat ; seratus if 100 ; angka + ; ratus if not 1
; sepuluh if 10 ; sebelas if 11 ; angka + belas if not 1
ljmp bcrjr5: lcall lcall bcrjr6: mov jz lcall bcrjr7: lcall ret ; bcrarh: lcall cjne lcall ljmp bcrar0: cjne lcall ljmp bcrar1: cjne lcall ljmp bcrar2: cjne lcall ljmp bcrar3: cjne lcall ljmp bcrar4: cjne lcall ljmp bcrar5: cjne lcall ljmp bcrar6: cjne lcall ljmp bcrar7: bcra00: mov jz cjne lcall ljmp bcra01: lcall lcall bcra02: mov jz cjne mov jnz lcall ljmp bcra03: cjne lcall ljmp bcra04: lcall lcall ljmp bcra05: lcall
bcrjr7 cckn0 puluh A,Djr2 bcrjr7 cckn0 cntmtr
; angka + puluh if not 1
arah R7,#0,bcrar0 utara bcrarF R7,#1,bcrar1 timla bcrarF R7,#2,bcrar2 timur bcrarF R7,#3,bcrar3 tnggra bcrarF R7,#4,bcrar4 slatan bcrarF R7,#5,bcrar5 barda bcrarF R7,#6,bcrar6 barat bcrarF R7,#7,bcrar7 barla bcrarF A,R3 bcra02 A,#1,bcra01 sratus bcra02 cckn0 ratus A,R2 bcra06 A,#1,bcra05 A,R1 bcra03 spuluh bcra07 A,#1,bcra04 sbelas bcra07 cckn0 belas bcra07 cckn0
; 0 = lompat ; seratus if 100 ; angka + ; ratus if not 1
; sepuluh if 10 ; sebelas if 11 ; angka + belas if not 1
101
lcall bcra06: mov jz lcall bcra07: lcall ; bcrarF: ret ; bccmps: lcall clr lcall clr lcall lcall lcall lcall lcall setb lcall clr lcall setb lcall lcall clr lcall lcall lcall lcall mov lcall setb lcall clr lcall lcall setb lcall lcall lcall clr lcall lcall lcall setb clr mov bccmp0: lcall mov RLC djnz jz lcall clr mov bccmp1: lcall
puluh A,R1 bcra07 cckn0 derajt
; angka + puluh if not 1
delay0 Cmen delay0 Cmdt delay0 cmpclk cmpclk cmpclk cmpclk Cmen delay0 Cmen delay0 Cmdt delay0 cmpclk Cmdt delay0 cmpclk cmpclk cmpclk Dly1,#40 delay1 Cmen delay0 Cmen delay0 delay0 Cmdt delay0 cmpclk cmpclk Cmdt delay0 cmpclk cmpclk Cmdt A Cntr,#4 cmpclk C,Cmdt A Cntr,bccmp0 bccmp5 delay0 A Cntr,#3 cmpclk
; ( reset compass ) ; compass enable ; data = 0 ; ; ; ; ; ; ;
clock clock clock clock compass disable ( start measurement ) compass enable
; data = 1 ; clock ; data = 0 ; clock ; clock ; clock ; ( kirim status ) ; compass disable ; compass enable ; data = 1 ; clock ; clock ; data = 0 ; ; ; ; ( cek
clock clock data = 1 status )
; clock
; ( baca data compass ) ; clock
bccmp2:
bccmp3:
bccmp4:
mov RLC djnz mov clr mov lcall mov RLC djnz mov clr mov lcall mov RLC djnz mov clr mov lcall mov RLC djnz mov lcall setb
bccmp5: ; drajat: mov cjne mov cjne mov mov movc mov mov mov mov lcall mov mov lcall ljmp ; drjat0: mov cjne mov cjne mov mov movc mov mov mov mov
C,Cmdt A Cntr,bccmp1 Dcm0,A A Cntr,#8 cmpclk C,Cmdt A Cntr,bccmp2 Dcm1,A A Cntr,#3 cmpclk C,Cmdt A Cntr,bccmp3 Dcm2,A A Cntr,#8 cmpclk C,Cmdt A Cntr,bccmp4 Dcm3,A delay0 Cmen
; clock
; clock
; clock
; compass disable
A,Dcm0 A,#00,drjat0 A,Dcm2 A,#07,drjat0 DPTR,#lokup1 A,Dcm3 A,@A+DPTR R0,A R1,#0 R2,#1 R3,#0 mul16 Hex0,R0 Hex1,R1 hexdec drjat3
;\ ; | if kuadran I ; | ;/ ;\ ; | ; | ; | ; | ; | ; | ; | ; | ; | ; | ;/
A,Dcm0 A,#07,drjat1 A,Dcm2 A,#07,drjat1 DPTR,#lokup2 A,Dcm1 A,@A+DPTR R0,A R1,#0 R2,#1 R3,#0
;\ ; | if kuadran II ; | ;/ ;\ ; | ; | ; | ; | ; | ; |
103
lcall mov mov lcall ljmp
; drjat1: mov cjne mov cjne mov mov movc mov mov mov mov lcall mov mov lcall ljmp ; drjat2: mov cjne mov cjne mov mov movc mov mov mov mov lcall mov mov lcall ljmp ; drjat3: mov drjat4: ret ; cmpclk: setb lcall clr lcall ret ; bc_jrk: clr mov lcall setb mov lcall mov
mul16 Hex0,R0 Hex1,R1 hexdec drjat3
; | ; | ; | ; | ;/
A,Dcm0 A,#07,drjat2 A,Dcm2 A,#00,drjat2 DPTR,#lokup3 A,Dcm1 A,@A+DPTR R0,A R1,#0 R2,#2 R3,#0 mul16 Hex0,R0 Hex1,R1 hexdec drjat3
;\ ; | if kuadran III ; | ;/ ;\ ; | ; | ; | ; | ; | ; | ; | ; | ; | ; | ;/
A,Dcm0 A,#00,drjat4 A,Dcm2 A,#00,drjat4 DPTR,#lokup4 A,Dcm3 A,@A+DPTR R0,A R1,#0 R2,#2 R3,#0 mul16 Hex0,R0 Hex1,R1 hexdec drjat3
;\ ; | if kuadran IV ; | ;/ ;\ ; | ; | ; | ; | ; | ; | ; | ; | ; | ; | ;/
Dsdt,A Cmcl delay0 Cmcl delay0 Uktr Dly0,#2 delay0 Uktr Dly0,#50 delay0 TL0,#00h
; nyalakan trigger ultrasonic ;\ tunda waktu ;/ 4us ; matikan trigger ultrasonic ;\ tunda waktu ;/ 100us ;\
mov clr jb setb jnb clr ret
; isiisd: lcall mov isisd0: cjne mov isisd1: cjne mov isisd2: isisd3: lcall mov lcall isisd4: lcall isisd5: lcall cjne dec cjne mov isisd6: ljmp isisd7: cjne inc cjne mov isisd8: ljmp isisd9: cjne mov ljmp isisdA: cjne isisdB: cjne ljmp isisdC: cjne ljmp ; plyisd: mov lcall mov lcall mov lcall mov mov lcall lcall lcall mov mov lcall lcall lcall mov
TH0,#00h TF0 Ukrc,$ TR0 Ukrc,$ TR0
; | reset timer & flag ;/ ; tunggu signal low ; start timer ; tunggu signal high ; stop timer ;
lcdclr R5,#1 R5,#1,isisd1 DPTR,#tpdgsr R5,#2,isisd2 DPTR,#tprcsr line1 Char,#16 tulis tg_lps scnkpd R0,#15,isisd7 R5 R5,#0,isisd6 R5,#1 isisd0 R0,#16,isisd9 R5 R5,#3,isisd8 R5,#2 isisd0 R0,#11,isisdA SP,#07h mulai R0,#12,isisd5 R5,#1,isisdC plyisd R5,#2,isisdB recisd
; reset RAM
DPTR,#tpaddr line2 Char,#11 tulis DPTR,#angka tg_tkn Dkp0,R0 A,R0 wr_chr tg_lps tg_tkn Dkp1,R0 A,R0 wr_chr tg_lps tg_tkn Dkp2,R0
105
mov lcall lcall plisd0: mov lcall mov lcall mov lcall mov lcall mov mov lcall mov lcall mov lcall mov lcall mov lcall plisd1: lcall cjne mov ljmp plisd2: cjne lcall mov lcall mov lcall lcall to hex) mov plisd3: cjne clr clr plisd4: cjne setb clr plisd5: cjne clr setb plisd6: mov lcall lcall clr lcall setb lcall ljmp ; recisd: mov lcall mov
A,R0 wr_chr tg_lps DPTR,#tpdgsr line1 Char,#16 tulis DPTR,#tpaddr line2 Char,#11 tulis DPTR,#angka A,Dkp0 wr_chr A,Dkp1 wr_chr A,Dkp2 wr_chr A,#10 wr_chr A,#10 wr_chr scnkpd R0,#11,plisd2 SP,#07h mulai R0,#12,plisd1 lcdclr DPTR,#tpplyg line1 Char,#16 tulis datadd A,Dthi A,#0,plisd4 Lobt Hibt A,#1,plisd5 Lobt Hibt A,#2,plisd6 Lobt Hibt P0,Dtlo delay0 delay0 IStr tg_lps IStr tg_lps plisd0 DPTR,#tprcsr line1 Char,#16
; reset RAM
; switch data to address (dec
lcall mov lcall mov lcall mov lcall mov mov lcall lcall lcall mov mov lcall lcall lcall mov mov lcall lcall rcisd0: mov lcall mov lcall mov lcall mov lcall mov mov lcall mov lcall mov lcall mov lcall mov lcall ; rcisd1: lcall cjne mov ljmp rcisd2: cjne lcall mov lcall mov lcall lcall to hex) mov rcisd3: cjne clr
tulis DPTR,#tpaddr line2 Char,#11 tulis DPTR,#angka tg_tkn Dkp0,R0 A,R0 wr_chr tg_lps tg_tkn Dkp1,R0 A,R0 wr_chr tg_lps tg_tkn Dkp2,R0 A,R0 wr_chr tg_lps DPTR,#tprcsr line1 Char,#16 tulis DPTR,#tpaddr line2 Char,#11 tulis DPTR,#angka A,Dkp0 wr_chr A,Dkp1 wr_chr A,Dkp2 wr_chr A,#10 wr_chr A,#10 wr_chr scnkpd R0,#11,rcisd2 SP,#07h mulai R0,#12,rcisd1 lcdclr DPTR,#tprcdg line1 Char,#16 tulis datadd
; reset RAM
; switch data to address (dec
A,Dthi A,#0,rcisd4 Lobt
107
clr Hibt rcisd4: cjne A,#1,rcisd5 setb Lobt clr Hibt rcisd5: cjne A,#2,rcisd6 clr Lobt setb Hibt rcisd6: mov P0,Dtlo lcall delay0 lcall delay0 clr ISPR clr IStr lcall tg_lps setb IStr setb ISPR lcall tg_lps ljmp rcisd0 ; datadd: mov Buf0,Dkp0 -> Buf0 mov A,Dkp1 mov B,#10 10 mul AB mov B,Dkp2 add A,B mov Buf1,A mov Dtlo,#0 mov Dthi,#0 mov A,Buf0 cjne A,#0,datad1 ljmp datad3 subroutine cntadr datad1: mov R7,#100 datad2: lcall cntadr djnz R7,datad2 djnz Buf0,datad1 datad3: mov A,Buf1 cjne A,#0,datad4 ljmp datad5 subroutine cntadr datad4: lcall cntadr djnz Buf1,datad4 datad5: ret ; cntadr: inc Dtlo mov A,Dtlo cjne A,#0,cntadd inc Dthi cntadd: ret ; cckn0: cjne A,#0,cckn1 lcall angka0 cckn1: cjne A,#1,cckn2 lcall angka1 cckn2: cjne A,#2,cckn3
; simpan data input keypad 0 ;\ ; | data input keypad 1 dikali ; | ditambah dengan ; | data input keypad 2 ; | hasil simpan -> Buf1 ;/ ; reset counter lo addr ; reset counter hi addr ;\ ; | cek Buf0 = 0 ? ; | tidak -> panggil ; | sebanyak 100 kali ; | ulang sebanyak Buf0 ;/ ;\ ; | cek Buf1 = 0 ? ; | tidak -> panggil
;/
;/
; | sebanyak Buf1 ; | return ;\ ; | tambah Dtlo ; | cek Dtlo = 0 ? ; | tambah Dthi
cckn3: cckn4: cckn5: cckn6: cckn7: cckn8: cckn9:
lcall cjne lcall cjne lcall cjne lcall cjne lcall cjne lcall cjne lcall cjne lcall ret
ccknA: ; angka0: clr clr mov clr mov lcall setb mov lcall ret ; angka1: clr clr mov clr mov lcall setb mov lcall ret ; angka2: clr clr mov clr mov lcall setb mov lcall ret ; angka3: clr clr mov clr mov lcall
angka2 A,#3,cckn4 angka3 A,#4,cckn5 angka4 A,#5,cckn6 angka5 A,#6,cckn7 angka6 A,#7,cckn8 angka7 A,#8,cckn9 angka8 A,#9,ccknA angka9 Hibt Lobt P0,#00 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; nol ; address 00
Hibt Lobt P0,#10 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; satu ; address 10
Hibt Lobt P0,#20 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; dua ; address 20
Hibt Lobt P0,#30 ISTR Bicr,#13 bicara
; tiga ; address 30
109
setb mov lcall ret ; angka4: clr clr mov clr mov lcall setb mov lcall ret ; angka5: clr clr mov clr mov lcall setb mov lcall ret ; angka6: clr clr mov clr mov lcall setb mov lcall ret ; angka7: clr clr mov clr mov lcall setb mov lcall ret ; angka8: clr clr mov clr mov lcall setb
ISTR Dly3,#1 delay3 Hibt Lobt P0,#40 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; empat ; address 40
Hibt Lobt P0,#50 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; lima ; address 50
Hibt Lobt P0,#60 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; enam ; address 60
Hibt Lobt P0,#70 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; tujuh ; address 70
Hibt Lobt P0,#80 ISTR Bicr,#13 bicara ISTR
; delapan ; address 80
mov lcall ret
; angka9: clr clr mov clr mov lcall setb mov lcall ret ; spuluh: clr clr mov clr mov lcall setb mov lcall ret ; puluh: clr clr mov clr mov lcall setb mov lcall ret ; sbelas: clr clr mov clr mov lcall setb mov lcall ret ; belas: clr clr mov clr mov lcall setb mov
Dly3,#1 delay3 Hibt Lobt P0,#90 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; sembilan ; address 90
Hibt Lobt P0,#100 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; sepuluh ; address 100
Hibt Lobt P0,#110 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; puluh ; address 110
Hibt Lobt P0,#120 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; sebelas ; address 120
Hibt Lobt P0,#130 ISTR Bicr,#13 bicara ISTR Dly3,#1
; belas ; address 130
111
lcall ret ; sratus: clr clr mov clr mov lcall setb mov lcall ret ; ratus: clr clr mov clr mov lcall setb mov lcall ret ; utara: clr clr mov clr mov lcall setb mov lcall ret ; timla: clr clr mov clr mov lcall setb mov lcall ret ; timur: clr clr mov clr mov lcall setb mov lcall
delay3 Hibt Lobt P0,#140 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; utara ; address 140
Hibt Lobt P0,#150 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; utara ; address 150
Hibt Lobt P0,#160 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; utara ; address 160
Hibt Lobt P0,#170 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; timur laut ; address 170
Hibt Lobt P0,#180 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; timur ; address 180
ret ; tnggra: clr clr mov clr mov lcall setb mov lcall ret ; slatan: clr clr mov clr mov lcall setb mov lcall ret ; barda: clr clr mov clr mov lcall setb mov lcall ret ; barat: clr clr mov clr mov lcall setb mov lcall ret ; barla: clr clr mov clr mov lcall setb mov lcall ret
Hibt Lobt P0,#190 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; tenggra ; address 190
Hibt Lobt P0,#200 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; selatan ; address 200
Hibt Lobt P0,#210 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; barat daya ; address 210
Hibt Lobt P0,#220 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; barat ; address 220
Hibt Lobt P0,#230 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; barat laut ; address 230
113
; arah:
clr clr mov clr mov lcall setb mov lcall ret
; jrkbnd: clr clr mov clr mov lcall setb mov lcall ret ; meter: clr setb mov clr mov lcall setb mov lcall ret ; koma: clr setb mov clr mov lcall setb mov lcall ret ; cntmtr: clr setb mov clr mov lcall setb mov lcall ret ;
Hibt Lobt P0,#240 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; arah ; address 240
Hibt Lobt P0,#250 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; jarak benda ; address 250
Hibt Lobt P0,#004 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; meter ; address 260
Hibt Lobt P0,#14 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; koma ; address 270
Hibt Lobt P0,#24 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; centi meter ; address 280
derajt: clr setb mov clr mov lcall setb mov lcall ret ; hexdec: mov mov mov mov jz mov hexdc0: lcall djnz djnz hexdc1: mov jz hexdc2: lcall djnz hexdc3: ret ; incdec: inc cjne mov inc cjne mov inc cjne mov indec: ret ; nilai: mov div lcall mov mov div lcall mov lcall ret ; line1: mov lcall ret ; line2: mov lcall ret ;
Hibt Lobt P0,#34 ISTR Bicr,#13 bicara ISTR Dly3,#1 delay3
; derajat ; address 290
R1,#0 R2,#0 R3,#0 A,Hex1 hexdc1 Bufr,#0 incdec Bufr,hexdc0 Hex1,hexdc0 A,Hex0 hexdc3 incdec Hex0,hexdc2
; hexa -> decimal
R1 R1,#10,indec R1,#0 R2 R2,#10,indec R2,#0 R3 R3,#10,indec R3,#0
; increment decimal
B,#100 AB wr_chr A,B B,#10 AB wr_chr A,B wr_chr P0,#80h w_ins P0,#0C0h w_ins
115
tulis:
clr movc mov lcall inc djnz ret
; wr_chr: movc mov lcall ret ; w_ins: clr clr setb clr lcall ret ; w_chr: clr setb setb clr lcall ret ; lcd_in: mov lcall mov lcall mov lcall mov lcall mov lcall mov lcall ret ; lcdclr: mov lcall lcall lcall ret ; scnkpd: mov lcall col1: mov mov c1b1: cjne mov c1b2: cjne mov c1b3: cjne
A A,@A+DPTR P0,A w_chr DPTR Char,tulis A,@A+DPTR P0,A w_chr Enbl Rest Enbl Enbl delay0 Enbl Rest Enbl Enbl delay0 Dly3,#1 delay3 P0,#01h w_ins P0,#38h w_ins P0,#0Dh w_ins P0,#06h w_ins P0,#02h w_ins P0,#01h w_ins delay0 delay0 R0,#10 delay0 P1,#11111110b A,P1 A,#11101110b,c1b2 R0,#1 A,#11011110b,c1b3 R0,#2 A,#10111110b,c1b4
; Display Clear ; Function Set ; Display On, Cursor, Blink ; Entry Mode ; Cursor Home
; Display Clear
c1b4: ; col2: c2b1: c2b2: c2b3: c2b4: ; col3: c3b1: c3b2: c3b3: c3b4: ; col4: c4b1: c4b2: c4b3: c4b4:
mov cjne mov
R0,#3 A,#01111110b,col2 R0,#13
mov mov cjne mov cjne mov cjne mov cjne mov
P1,#11111101b A,P1 A,#11101101b,c2b2 R0,#4 A,#11011101b,c2b3 R0,#5 A,#10111101b,c2b4 R0,#6 A,#01111101b,col3 R0,#14
mov mov cjne mov cjne mov cjne mov cjne mov
P1,#11111011b A,P1 A,#11101011b,c3b2 R0,#7 A,#11011011b,c3b3 R0,#8 A,#10111011b,c3b4 R0,#9 A,#01111011b,col4 R0,#15
mov mov cjne mov cjne mov cjne mov cjne mov ret
P1,#11110111b A,P1 A,#11100111b,c4b2 R0,#11 A,#11010111b,c4b3 R0,#0 A,#10110111b,c4b4 R0,#12 A,#01110111b,back R0,#16
back: ; tg_tkn: lcall lcall tg_tk0: cjne ljmp tg_tk1: cjne ljmp tg_tk2: cjne ljmp tg_tk3: cjne ljmp tg_tk4: cjne ljmp tg_tk5: cjne ljmp tg_tk6: cjne ljmp tg_tk7: ret ;
scnkpd delay0 R0,#16,tg_tk1 tg_tkn R0,#15,tg_tk2 tg_tkn R0,#14,tg_tk3 tg_tkn R0,#13,tg_tk4 tg_tkn R0,#12,tg_tk5 tg_tkn R0,#11,tg_tk6 tg_tkn R0,#10,tg_tk7 tg_tkn
117
tg_lps: lcall lcall cjne ret ; delay0: djnz ret ; delay1: lcall djnz ret ; delay2: mov dely20: lcall cjne ljmp dely21: djnz ret ; delay3: lcall cjne clr clr dely30: cjne setb clr dely31: cjne clr setb dely32: cjne setb setb dely33: djnz djnz ret ; bicara: djnz djnz djnz ret ; nama: DB nim: DB jur: DB univ: DB tpdgsr: DB tpplyg: DB tprcsr: DB tprcdg: DB tpaddr: DB tpjrnm: DB tparut: DB tpartl: DB tpartm: DB tpartg: DB tparsl: DB
scnkpd delay0 R0,#10,tg_lps Dly0,delay0 scnkpd Dly1,delay1 Dly2,#15 delay1 R0,#13,dely21 isiisd Dly2,dely20 scnkpd R0,#0,dely30 Stt0 Stt1 R0,#1,dely31 Stt0 Stt1 R0,#2,dely32 Stt0 Stt1 R0,#3,dely33 Stt0 Stt1 Dly1,delay3 Dly3,delay3 Dly0,$ Dly1,bicara Bicr,bicara ' Titik Muji R ' ' NIM : 04540005 ' ' Fisika ' ' UIN Malang ' ' Dengar Suara ? ' ' Playing.... ' ' Rekam Suara ? ' ' Recording.... ' ' Address: ' ' Jarak: . m ' 'Arah: Utara ' 'Arah: Timur Laut' 'Arah: Timur ' 'Arah: Tenggara ' 'Arah: Selatan '
tparbd: tparbr: tparbl: tparah: angka: ; ; lokup0:
DB DB DB DB DB
'Arah: Barat Daya' 'Arah: Barat ' 'Arah: Barat Laut' 'Arah: ' '0123456789 '
DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB
0 1 2 3 4 5 6 7 8 9 000,003,003,004,004,005,006,006,007,000 008,008,009,009,010,010,011,012,012,013 013,014,014,025,025,016,016,017,018,018 019,019,020,020,021,021,022,022,023,023 024,025,025,026,026,027,027,028,028,029 029,030,031,031,032,032,033,033,034,034 035,035,036,037,037,038,038,039,039,040 040,041,041,042,043,043,044,044,045,045 046,046,047,047,048,049,049,050,050,051 051,052,052,053,053,054,054,055,056,056 057,057,058,058,059,059,060,060,061,062 062,063,063,064,064,065,065,066,066,067 068,068,069,069,070,070,071,071,072,072 073,074,074,075,075,076,076,077,077,078 078,079,080,080,081,081,082,082,083,083 084,084,085,085,086,087,087,088,088,089 089,090,090,091,091,092,093,093,094,094 095,095,096,096,097,097,098,099,099,100 100,100,100,100,100,100,100,100,100,100 100,100,100,100,100,100,100,100,100,100 100,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
000-009 010-019 020-029 030-039 040-049 050-059 060-069 070-079 080-089 090-099 100-109 110-119 120-129 130-139 140-149 150-159 160-169 170-179 180-189 190-199 200-209 210-219 220-229 230-239 240-249 250-255
0 1 2 3 4 5 6 7 8 9 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
000-009 010-019 020-029 030-039 040-049 050-059 060-069 070-079 080-089 090-099 100-109 110-119 120-129 130-139 140-149 150-159 160-169 170-179 180-189 190-199
; ;kuadran I ; lokup1: DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB
119
DB DB DB DB DB DB ; ;kuadran II ; lokup2: DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB ; ;kuadran III ; lokup3: DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB DB
000,000,000,000,000,000,000,000,000,000 100,098,096,094,092,090,088,086,083,081 079,077,074,072,070,068,065,063,061,059 056,054,052,050,047,045,043,041,038,036 034,032,029,027,025,023,020,018,016,014 011,009,007,005,002,000
; ; ; ; ; ;
200-209 210-219 220-229 230-239 240-249 250-255
0 1 2 3 4 5 6 7 8 9 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 190,188,186,184,182,180,178,176,175,173 171,169,167,166,164,162,160,158,157,155 153,151,149,148,146,144,142,140,139,137 135,133,131,130,128,126,124,122,121,119 117,115,113,112,110,108,106,104,103,101 099,097,095,094,092,090
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
000-009 010-019 020-029 030-039 040-049 050-059 060-069 070-079 080-089 090-099 100-109 110-119 120-129 130-139 140-149 150-159 160-169 170-179 180-189 190-199 200-209 210-219 220-229 230-239 240-249 250-255
0 1 2 3 4 5 6 7 8 9 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
000-009 010-019 020-029 030-039 040-049 050-059 060-069 070-079 080-089 090-099 100-109 110-119 120-129 130-139 140-149 150-159 160-169 170-179
DB DB DB DB DB DB DB DB ; ;kuadran IV ; lokup4: DB DB DB DB DB DB DB DB DB DB ; add16: anl mov add mov mov addc mov mov ret ; sub16: anl mov clr subb mov mov subb mov mov ret ; mul16: anl lcall lcall lcall lcall ret ; umul16: push push mov mov mul push
000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 086,086,087,088,089,090,091,092,093,094 095,095,096,097,098,099,100,101,102,103 104,104,105,106,107,108,109,110,111,112 113,113,114,115,116,117,118,119,120,121 122,122,123,124,125,126,127,128,129,130 131,131,132,133,134,135
; ; ; ; ; ; ; ;
180-189 190-199 200-209 210-219 220-229 230-239 240-249 250-255
0 1 2 3 4 5 6 7 8 9 180,179,178,177,176,175,174,173,172,171 170,169,168,167,166,165,164,163,162,161 160,159,158,157,156,155,154,153,152,151 150,149,148,147,146,145,144,143,142,141 140,139,138,137,136,135,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000 000,000,000,000,000,000,000,000,000,000
; ; ; ; ; ; ; ; ; ;
000-009 010-019 020-029 030-039 040-049 050-059 060-069 070-079 080-089 090-099
PSW,#0E7h A,R0 A,R2 R0,A A,R1 A,R3 R1,A C,OV PSW,#0E7h A,R0 C A,R2 R0,A A,R1 A,R3 R1,A C,OV PSW,#0E7h cr0r1 cr2r3 umul16 mr0r3 B DPL A,R0 B,R2 AB Acc
121
; div16:
; divok:
push mov mov mul pop add mov clr addc mov mov mov mul add mov mov addc mov clr addc push mov mov mul add mov pop addc mov mov pop pop pop ret
B A,R0 B,R3 AB 00h A,R0 R0,A A A,B DPL,A A,R2 B,R1 AB A,R0 R0,A A,DPL A,B DPL,A A A,#0 Acc A,R3 B,R1 AB A,DPL R2,A Acc A,B R3,A R1,00h 00h DPL B
anl mov orl jnz setb ret
PSW,#0E7h A,R3 A,R2 divok C
push push push lcall lcall lcall lcall clr pop pop pop ret
DPL DPH B cr0r1 cr2r3 udiv16 mr0r1 C B DPH DPL
; udiv16: mov
R7,#0
mov mov ; divlop: clr mov rlc mov mov rlc mov mov rlc mov mov rlc mov mov clr subb mov mov subb mov cpl jnc mov mov ; div_1: mov rlc mov mov rlc mov djnz mov mov mov mov mov mov mov mov ret ; cr0r1: mov jb clr ret ; c0a: setb mov cpl add mov mov
R6,#0 B,#16 C A,R0 A R0,A A,R1 A R1,A A,R6 A R6,A A,R7 A R7,A A,R6 C A,R2 DPL,A A,R7 A,R3 DPH,A C div_1 R7,DPH R6,DPL A,R4 A R4,A A,R5 A R5,A B,divlop A,R5 R1,A A,R4 R0,A A,R7 R3,A A,R6 R2,A A,R1 Acc.7,c0a 21h 21h A,R0 A A,#1 R0,A A,R1
123
; cr2r3:
; c1a:
; mr0r1:
cpl addc mov ret
A A,#0 R1,A
mov jb clr ret
A,R3 Acc.7,c1a 22h
setb mov cpl add mov mov cpl addc mov ret
22h A,R2 A A,#1 R2,A A,R3 A A,#0 R3,A
jb jb ret
21h,mr0r1b 22h,mr0r1a
; mr0r1b: jnb ret ; mr0r1a: mov cpl add mov mov cpl addc mov ret ; mr0r3: jb jb ret ; mr0r3b: jnb ret ; mr0r3a: mov cpl add mov mov cpl addc mov mov cpl addc
22h,mr0r1a A,R0 A A,#1 R0,A A,R1 A A,#0 R1,A 21h,mr0r3b 22h,mr0r3a 22h,mr0r3a A,R0 A A,#1 R0,A A,R1 A A,#0 R1,A A,R2 A A,#0
mov mov cpl addc mov ret ;
R2,A A,R3 A A,#0 R3,A
end
125
Lampiran 5: Hasil Pengukuran 1. Analisis Data Arah Mata Angin 0− 0 = 0 1. simpangan _ sudut ( % ) =
45 − 50 x100% 45
2. −5 x100% 45 = 11,1% 90 − 98 simpangan _ sudut ( % ) = x100% 90 =
3. −8 x100% 90 = 8,89% 135 − 134 simpangan _ sudut ( % ) = x100% 135 =
4. 1 x100% 135 = 0,74% 180 − 187 simpangan _ sudut ( % ) = x100% 180 =
5.
− 7 x100% 180 = 3,89% =
simpangan _ sudut ( % ) =
225 − 229 x100% 225
6. − 4 x100% 225 = 1,78% 270 − 271 simpangan _ sudut ( % ) = x100% 270 =
7. −1 x100% 270 = 0,37% 315 − 323 simpangan _ sudut ( % ) = x100% 315 =
8. −8 x100% 360 = 2,54% 0 + 11,1 + 8,89 + 0,74 + 3,89 + 1,78 + + 0,37 + 2,54 simpangan _ rata 2( % ) = 8 29,31 = 8 = 3,66% =
2. Analisis Data Jarak Benda
1.
simpangan _ jarak =
100 − 100 x100% 100
127
= 0%
= 0% 98 − 99 simpangan _ jarak = x100% 98 2. −1 = x100% 98 = 1,02% 87 − 88 simpangan _ jarak = x100% 87 3. −1 x100% 87 = 1,15% 76 − 76 simpangan _ jarak = x100% 76 4. =
5.
simpangan _ jarak =
65 − 66 x100% 65
1 x100% 65 = 1,54% 54 − 54 simpangan _ jarak = x100% 54 6. = 0% =
7.
simpangan _ jarak =
43 − 44 x100% 43
−1 x100% 43 = 2,32% 32 − 33 simpangan _ jarak = x100% 32 8. −1 = x100% 32 = 3,12% 21 − 21 simpangan _ jarak = x100% 100 9. =
= 0%
10.
simpangan _ jarak =
10 − 11 x100% 10
1 x100% 10 = 10% 0 + 1,02 + 1,15 + 0 + 1,54 + 0 + 2,32 + 3,12 + 0 + 10 simpangan _ rata − rata _(%) = 10 19,15 = 10 = 1,92 =
129