KP1133469703
PROTOTIPE PENGUKUR TINGGI BADAN MENGGUNAKAN SENSOR
ULTRASONIK BERBASIS MIKROKONTROLER ATMEGA328
DENGAN OUTPUT SUARA PADA RSIA KELUARGA KITA
LAPORAN KULIAH KERJA PRAKTEK
OLEH:
1133469703 MUHAMMAD KHIABANI FAKHRI
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER
RAHARJA
(2014/2015)
LEMBAR PERSETUJUAN
PROTOTIPE PENGUKUR TINGGI BADAN MENGGUNAKAN SENSOR
ULTRASONIK BERBASIS MIKROKONTROLER ATMEGA328
DENGAN OUTPUT SUARA PADA RSIA KELUARGA KITA
Diajukan guna melengkapi sebagian syarat untuk mengikuti Skripsi pada Jurusan Sistem Komputer
Konsentrasi Creative Communication And Innovative Technology
STMIK Raharja Tahun Akademik 2014/2015.
Tangerang, 17 Januari 2015
Dosen Pembimbing
( Ignatius Agus Supriyono,S.Kom.,MM. )
NID. 09004
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER
RAHARJA
LEMBAR KEASLIAN KULIAH KERJA PRAKTEK
Saya yang bertandatangan di bawah ini,
NIM |
: 1133469703
|
Nama |
|
Jenjang Studi |
: Strata Satu
|
Jurusan |
: Sistem Komputer
|
Konsentrasi |
: Creative Communication and Innovative Technology
|
Menyatakan bahwa Kuliah Kerja Praktek ini merupakan karya tulis saya sendiri dan bukan merupakan tiruan, salinan atau duplikat dari Kuliah Kerja Praktek yang telah dipergunakan untuk melanjutkan dalam pembuatan Skripsi baik dilingkungan Perguruan Tinggi Raharja, maupun di Perguruan Tinggi lain, serta belum pernah dipublikasikan.
Pernyataan ini dibuat dengan penuh kesadaran dan rasa tanggung jawab serta bersedia menerima sanksi jika ternyata pernyataan diatas tidak benar.
Tangerang, 17 Januari 2015 | |
Muhammad Khiabani Fakhri | |
NIM. 1133469703 |
)*Tandatangan dibubuhi materai 6.000;
ABSTRAKSI
Pengukuran merupakan hal yang penting dalam dunia ilmu pengetahuan. Pengukuran-pengukuran tersebut antara lain: pengukuran tinggi dari satu titik ke titik lain, pengukuran waktu dari satu kejadian ke kejadian yang lainnya, pengukuran temperatur/suhu suatu daerah, dan pengukuran kecepatan dari suatu benda. Saat ini hasil pembacaan skala pada alat ukur tinggi badan manual yang dilakukan manusia memiliki tingkat ketelitian dan ketepatan yang kurang sehingga sering terjadinya human error. Maka dibutuhkan alat pengukur tinggi badan yang dapat bekerja secara otomatis, melakukan proses pengukuran, membaca hasil pengukuran, sekaligus memberitahukan hasil pengukuran tersebut dengan output suara berbasis Mikrokontroler ATmega328. Rangkaian Pengukur Tinggi Badan Digital ini menggunakan Sensor Ultrasonik yang digunakan untuk mendeteksi benda disekitar sensor. Jika gelombang ultrasonik memantul kembali ke penerima, berarti ada objek di sekitar sensor. Mikrokontroler akan menghitung waktu yang dibutuhkan untuk menerima gelombang ultrasonik dan menentukan jarak antara sensor dengan lantai. Pengukur tinggi badan secara digital menjadi hal penting dalam meminimalisir human error yang sering terjadi pada saat dilakukannya pengukuran secara manual. Sehingga dapat meningkatkan efisiensi dalam mengukur tinggi badan pada RSIA Keluarga Kita.
Kata Kunci: Mikrokontroler ATmega328, Sensor Ultrasonik, Tinggi Badan
ABSTRACT
Measurement is important in the world of science. The measurements are: height measurements from one point to another, the measurement of time from one incident to another incident, measurement of temperature / temperature of a region, and measurement of the speed of a benda. In these readings on the scale height measuring instrument manual that humans do have a level of accuracy and precision are less so frequent occurrence of human error. Then the required height gauges that can work automatically, perform the measurement process, read the measurement results, as well as notify the measurement results with the ATmega328 microcontroller-based voice output. Digital Height Measuring Circuit uses ultrasonic sensors are used to detect objects around sensor. If ultrasonic waves bounce back to the receiver, means there is an object in the vicinity of the sensor. The microcontroller will calculate the time it takes to receive ultrasonic waves and determine the distance between the sensor with the floor. Digital height gauge be important in minimizing human error that often occurs at the time of measurement manually. So as to improve efficiency in measuring height on RSIA Keluarga Kita.
Keywords : Microcontroller ATmega328, Ultrasonic Sensors, Height
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa yang telah memberikan rahmat-Nya sehingga penulis dapat menyelesaikan laporan Kuliah Kerja Praktek (KKP) ini dengan baik. Laporan ini disajikan dalam bentuk buku. Adapun judul yang diambil dalam penyusunan Kuliah Kerja Praktek (KKP) ini adalah "PROTOTIPE PENGUKUR TINGGI BADAN MENGGUNAKAN SENSOR ULTRASONIK BERBASIS MIKROKONTROLER ATMEGA328 DENGAN OUTPUT SUARA PADA RSIA KELUARGA KITA".
Laporan ini merupakan hasil kerja praktek penulis di Perguruan Tinggi Raharja. Laporan ini merupakan salah satu syarat yang ditempuh oleh mahasiswa sebelum melaksanakan Skripsi dalam jenjang Sarjana jurusan Sistem Komputer pada Perguruan Tinggi Raharja, Tangerang. Sebagai bahan penulisan, data dikumpulkan berdasarkan hasil observasi, wawancara, dan sumber literature yang mendukung penulisan ini. Penulis menyadari bahwa tanpa bimbingan dan dorongan banyak pihak, maka penulis tidak akan dapat menyelesaikan tugas ini dengan baik dan tepat waktu.
Penulis menyampaikan ucapan terima kasih kepada pihak-pihak yang telah membantu dalam menyelesaikan laporan Kuliah Kerja Praktek (KKP) ini, antara lain :
- Bapak Ir. Untung Rahardja, M.T.I selaku Presiden Direktur Perguruan Tinggi Raharja.
- Bapak Drs. Po. Abas Sunarya, M.Si selaku Direktur Perguruan Tinggi Raharja.
- Bapak Ferry Sudarto, S.Kom., M.Pd selaku Kepala Jurusan Sistem Komputer.
- Bapak Ignatius Agus Supriyono, S.Kom., MM selaku pembimbing yang telah memberikan banyak masukan dalam penyusunan KKP ini.
- Bapak dan Ibu Dosen Perguruan Tinggi Raharja yang telah memberikan ilmu pengetahuan kepada penulis.
- Kedua orang tua, Adik dan semua saudara dalam keluarga yang telah memberikan dukungan, baik moril, materil, maupun doa untuk keberhasilan kepada penulis dalam menyelesaikan laporan Kuliah Kerja Praktek (KKP) ini.
- Teman-teman FUMMRI yang selalu memberikan motivasi kepada penulis dalam penyusunan KKP ini.
- Rekan-rekan seperjuangan yang telah memberikan saya semangat dalam menyelesaikan KKP ini.
- Serta semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah ikut membantu dalam penyusunan KKP ini.
Penulis menyadari bahwa dalam penyajian dan penyusunan laporan Kuliah Kerja Praktek (KKP) ini masih banyak kekurangan dan kesalahan, baik dalam penulisan, penyajian ataupun isinya. Oleh karena itu, penulis senantiasa menerima kritik dan saran yang bersifat membangun agar dapat dijadikan acuan bagi penulis untuk menyempurnakan nya di masa yang akan datang.
Akhir kata, penulis mengucapkan terima kasih atas perhatian dari pembaca. Semoga Tuhan Yang Maha Esa memberikan rahmat-Nya kepada kita semua. Dan semoga laporan Kuliah Kerja Praktek (KKP) ini dapat bermanfaat, khususnya bagi penulis dan umumnya bagi seluruh pembaca sekalian.
Tangerang, 17 Januari 2015 | |
Muhammad Khiabani Fakhri | |
NIM. 1133469703 |
Daftar isi
- 1 BAB I
- 2 BAB II
- 3 BAB III
- 4 BAB IV
- 5 DAFTAR PUSTAKA
- 6 DAFTAR LAMPIRAN
DAFTAR TABEL
Tabel 2.1 Keunggulan dan Kekurangan Prototipe
Tabel 2.2 Kelebihan dan Kelemahan Black Box
Tabel 2.3 Tipe-tipe Data dalam BASCOM-AVR
Tabel 2.4 Tabel Operasi Relasi
DAFTAR GAMBAR
Gambar 2.3 Blok Rangkaian Internal Mikrokontroler
Gambar 2.4 Arsitektur ATmega328
Gambar 2.5 Susunan PIN ATmega328
Gambar 2.6 Perambatan Ultrasonik
Gambar 2.7 Interaksi Gelombang Ultrasonik Dalam Medium
Gambar 2.8 Ilustrasi Cara Kerja Ultrasonik
Gambar 2.9 Contoh Sensor Proximity
Gambar 2.10 Contoh Sensor Magnet
Gambar 2.11 Contoh Sensor Ultrasonik
Gambar 2.12 Contoh Sensor Efek-Hall
Gambar 2.13 Contoh Sensor Tekanan
Gambar 2.14 Contoh Sensor Suhu
Gambar 2.15 Susunan Kaki Transistor dan Lambang Transistor
Gambar 3.1 RSIA. Keluarga Kita
Gambar 3.2 Struktur Organisasi RSIA Keluarga Kita
Gambar 3.4 Rangkaian Catu Daya Battery
Gambar 3.5 Rangkaian Sensor Objek
Gambar 3.6 Susunan PIN ATmega328
Gambar 3.7 Rangkaian Minimum Mikrokontroler ATmega328
Gambar 3.8 Rangkaian Voice Module
Gambar 3.9 Flowchart Sistem Pengukur Tinggi Badan dengan Output Suara
Gambar 3.10 Tampilan Layar Program BASCOM AVR
Gambar 3.11 Penulisan Listing Program Basic
Gambar 3.12 Penyimpanan File BAS
Gambar 3.16 Pemilihan Jenis Mikrokontroler
BAB I
Latar Belakang
Pengukuran merupakan hal yang penting dalam dunia ilmu pengetahuan. Pengukuran-pengukuran tersebut antara lain: pengukuran tinggi dari satu titik ke titik lain, pengukuran waktu dari satu kejadian ke kejadian yang lainnya, pengukuran temperatur/suhu suatu daerah, pengukuran kecepatan dari suatu benda.
Panjang dan tinggi merupakan salah satu besaran fisis yang sering diukur dalam berbagai keperluan yang membutuhkan data tinggi seseorang. Alat ukur tinggi badan yang beredar dipasaran, kurang memungkinkan untuk mendapatkan data yang akurat, karena kebanyakan alat ukur tinggi badan yang beredar dipasaran masih bersifat manual.Artinya untuk mendapatkan data tinggi badan seseorang masih menggunakan cara pengukuran dengan tenaga manusia.
Hal tersebut kemudian berdampak terhadap kurang efisien dalam pemakaiannya. Untuk mengukur tinggi badan seseorang, minimal harus ada operator alat yang tak lain adalah manusia, yang bertugas melakukan pengukuran sekaligus membaca data yang tampak pada hasil pengukuran tersebut. Hasil pembacaan skala pada alat ukur tinggi badan manual yang dilakukan manusia memiliki tingkat ketelitian dan ketepatan yang kurang. Belum lagi jika sampai terjadi human error.
Selaras dengan perkembangan jaman, dibutuhkan alat pengukur tinggi badan yang dapat bekerja secara otomatis, melakukan proses pengukuran, membaca hasil pengukuran, sekaligus memberitahukan hasil pengukuran tersebut dengan output suara berbasis mikrokontroler. Seseorang yang sedang diukur tinggi badannya dapat mengetahui secara langsung hasil pengukurannya. Pembacaan hasil yang didapat lebih akurat dan presisi jika dibanding dengan hasil pembacaan manusia.
Oleh sebab itu diperlukan teknologi yang dapat membantu dalam mengukur tinggi badan, maka penulis membuat “PROTOTIPE PENGUKUR TINGGI BADAN MENGGUNAKAN SENSOR ULTRASONIK BERBASIS MIKROKONTROLER ATMEGA328 DENGAN OUTPUT SUARA PADA RSIA KELUARGA KITA”.
Perumusan Masalah
Dalam melakukan pengukuran tinggi badan dibutuhkan alat pengukur tinggi badan yang dapat bekerja secara otomatis, melakukan proses pengukuran, membaca hasil pengukuran, sekaligus memberitahukan hasil pengukuran tersebut dengan output suara berbasis mikrokontroler. Berdasarkan latar belakang dan berdasarkan pengamatan yang dilakukan, maka dapat diurutkan permasalahan yang dihadapi, antara lain:
Berdasarkan uraian diatas maka di dapatkan rumusan masalah yang terjadi didalam penggunaan airzone.me, didapat beberapa pokok permasalahan, diantaranya :
- Bagaimana menggunakan sensor ultrasonik untuk mengukur tinggi badan ?
- Bagaimana memprogram ATmega328 untuk mengukur tinggi badan ?
- Bagaimana menghasilkan output suara dari hasil pengukur tinggi badan ?
Tujuan dan Manfaat Penelitian
Tujuan Penelitian
Setiap penelitian tentunya mempunyai beberapa tujuan dan manfaat, dalam penulisan laporan Kuliah Kerja Praktek (KKP) ini penulis memiliki tujuan penelitian sebagai berikut :
Untuk Menciptakan alat pengukur tinggi badan menggunakan sensor ultrasonik dengan output suara.
Untuk Menghasilkan program ATmega328 untuk dapat dijalankan sebagai pengukur tinggi badan secara digital.
Untuk mengetahui hasil pengukuran tinggi badan dengan output suara menggunakan module suara yang di konfigurasi oleh ATmega328.
Manfaat Penelitian
Adapun manfaat dari penelitian ini antara lain :
Untuk mengetahui bagaimana marancang dan membuat deteksi tinggi badan dengan output suara berbasis mikrokontroler, sehingga ditemukan sebuah solusi yang terbaik bahwa mikrokontroler tersebut memiliki tingkat kehandalan dan kestabilan yang tinggi dan mudah digunakan.
Untuk mengetahui Tinggi badan yang telah diukur menggunakan sensor ultrasonik dan menghasilkan output suara dari program ATmega328 yang telah dikonfigurasi.
Dapat mengetahui secara langsung hasil pengukurannya. Pembacaan hasil yang didapat lebih akurat dan presisi jika dibanding dengan hasil pembacaan manusia.
Ruang Lingkup Penelitian
Sebagai pembatasan atas penyusunan laporan ini untuk tetap fokus dan sesuai dengan tujuan yang ditetapkan, maka penulis memberikan ruang lingkup penelitian sebagai berikut:
- Menggunakan arsitektur mikrokontroler ATmega328.
- Pengukuran tinggi badan dengan menggunakan sensor ultrasonik.
- Menggunakan voice module.
Metode Penelitian
Metode penelitian merupakan suatu rangkaian cara atau kegiatan pelaksanaan penelitian yang didasari oleh asumsi-asumsi dasar, pandangan-pandangan filosofis dan ideologis, pertanyaan dan isu-isu yang dihadapi. Suatu penelitian mempunyai rancangan penelitian tertentu. Rancangan ini menggambarkan prosedur atau langkah-langkah yang harus ditempuh, waktu penelitian, sumber data dan kondisi arti apa data dikumpulkan dan dengan cara bagaimana data tersebut dihimpun dan diolah untuk digunakan dalam pembuatan laporan.
Adapun penjelasan lebih rinci mengenai metode yang digunakan penulis dalam menyusun Laporan Kuliah Kerja Praktek (KKP) ini sebagai berikut:
1. Metode Observasi
Metode pengumpulan data yaitu penulis mengadakan pengamatan langsung pada RSIA Keluarga Kita, metode ini dilakukan untuk mengumpulkan data yang merupakan sumber informasi yang sangat penting yang dapat membantu menganalisa dalam rangka pembangunan sistem tersebut.
2. Metode Wawancara
Adalah suatu metode untuk mendapatkan data dan keterangan-keterangan yang di inginkan dengan cara melakukan tanya jawab secara lisan terhadap responden dan stake holder.
3. Metode Studi Pustaka
Studi Pustaka adalah segala upaya yang dilakukan oleh penulis untuk memperoleh dan menghimpun segala informasi tertulis yang relevan dengan masalah yang diteliti. Informasi ini dapat diperoleh dari buku-buku, laporan penelitian, jurnal ilmiah, serta browsing di internet. Pada metode ini penulis mendapatkan informasi dengan mempelajari buku-buku dan literature yang ada, serta melakukan browsing di internet.
Metode Perancangan
Dalam melakukan perancangan penulis menggunakan Sistem Flowchart dimana tahap demi tahap proses pembuatan Prototipe Pengukur Tinggi Badan Menggunakan Sensor Ultrasonik Berbasis Mikrokontroler ATmega328 dengan Output Suara pada RSIA Keluarga Kita.
Sistematika Penulisan
Agar lebih memahami laporan KKP ini, maka laporan KKP ini dikelompokkan ke dalam beberapa sub bab pembahasan dan menggunakan sistematika penyampaian sebagai berikut:
Penulis akan menjelaskan mengenai uraian secara umum mengenai latar belakang permasalahan, perumusan masalah, tujuan dan manfaat penelitian, ruang lingkup penelitian, metode penelitian serta sistematika penulisan.
Bab ini berisi tentang uraian mengenai teori-teori dasar yang akan mendukung pembahasan masalah, serta cara berfikir dalam penelitian Kuliah Kerja Peraktek (KKP) ini. Uraian tersebut menjelaskan tentang Infrastruktur apa saja yang harus digunakan serta perancanganya.
Bab ini berisi tentang gambaran umum perusahaan yang terdiri dari profile RSIA Keluarga Kita, sejarah singkat RSIA Keluarga Kita, visi dan misi RSIA Keluarga Kita, struktur organisasi dan wewenang serta tanggung jawab, pembahasan sistem, serta cara kerja rangkaian alat secara keseluruhan.
Berisi tentang kesimpulan dan saran yang diberikan penulis dari hasil laporan Kuliah Kerja Praktek (KKP).
BAB II
Teori Umum
Konsep Dasar Sistem
1. Definisi Sistem
Berikut ini adalah beberapa definisi sistem menurut beberapa ahli, di antaranya:
1. Menurut Taufiq (2013:2)[1], “Sistem adalah kumpulan dari sub-sub sistem abstrak maupun fisik yang saling terintegrasi dan berkolaborasi untuk mencapai suatu tujuan tertentu”.
2. Menurut Sutarman (2012:13)[2], Sistem adalah kumpulan elemen yang saling berhubungan dan berinteraksi dalam satu kesatuan untuk menjalankan suatu proses pencapaian suatu tujuan utama.
3. Menurut Yakub (2012:1)[3], “Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang berhubungan, terkumpul bersama-sama untuk melakukan suatu kegiatan atau tujuan tertentu”.
Berdasarkan beberapa pengertian diatas mengenai sistem, dapat disimpulkan bahwa suatu sistem merupakan kumpulan elemen-elemen yang saling berkaitan dan berinteraksi untuk mencapai suatu tujuan tertentu.
Terdapat dua kelompok pendekatan didalam pendefinisian sistem, yaitu :
1. Pendekatan yang menekankan pada prosedur, mendefinisikan sistem sebagai suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu.
2. Pendekatan yang menekan pada elemen atau komponen, mendefisinikan sistem sebagai kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu.
2. Karakteristik Sistem
Menurut Tata Sutabri (2012:20)[4],sebuah sistem adalah input, proses, dan output. Hal ini merupkan konsep sebuah sistem yang sangat sederhana sebab sebuah sistem dapat mempunyai beberapa masukan dan keluaran. Selain itu, sebuah sistem memiliki karakteristik atau sifat-sifat tertentu, yang mencirikan bahwa hal tersebut bisa dikatakan sebagai suatu sistem”. Adapun karakteristik yang dimaksud adalah sebagai berikut :
1. Komponen Sistem (Component) Komponen-komponen sistem tersebut dapat berupa suatu bentuk subsistem. Setiap subsistem memiliki sifat dari sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan.
2. Batasan Sistem (Boundary) Ruang lingkup sistem merupakan daerah yang membatasi antara sistem dengan sistem yang lain atau sistem dengan lingkungan luarnya. Batasan sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan yang tidak dapat dipisahkan.
3. Lingkungan Luar Sistem (Environment) Bentuk apapun yang ada diluar ruang lingkup atau batasan sistem yang mempengaruhi operasi sistem tersebut disebut lingkungan luar sistem. Lingkungan luar sistem ini dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut.
4. Penghubung (Interface) Media yang menghubungkan sistem dengan subsistem yang lain disebut penghubung sistem atau interface. Penghubung ini memungkinkan sumber-sumber daya mengalir dari satu subsistem ke subsistem lain. Bentuk keluaran dari satu subsistem akan menjadi masukan untuk subsitem lain melalui penghubung tersebut. Dengan demikian, dapat terjadi suatu integrasi sistem yang membentuk satu kesatuan.
5. Masukan Sistem (Input) Energi yang dimasukkan ke dalam sistem disebut masukan sistem, yang dapat berupa pemeliharaan (maintenance input) dan sinyal (signal input).
6. Keluaran Sistem (Output) Hasil energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna. Keluaran ini dapat mennjadi masukan bagi subsistem yang lain seperti sistem informasi. Keluaran yang dihasilkan adalah informasi. Informasi ini dapat digunakan sebagai masukan untuk pengambilan keputusan atau hal-hal lain yang menjadi input bagi subsitem lain.
7. Pengolah Sistem (Process) Suatu sistem dapat mempunyai suatu proses yang akan mengubah masukan menjadi keluaran.
8. Sasaran (Objectives) dan Tujuan (Goal) Suatu sistem mempunyai tujuan dan sasaran yang pasti dan bersifat deterministik. Kalau suatu sistem tidak memiliki sasaran maka operasi sistem tidak ada gunanya. Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuan yang telah direncanakan.
Suatu sistem dikatakan berhasil apabila mengenai sasaran atau tujuannya. Jika suatu sistem tidak mempunyai sasaran, maka operasi sistem tidak akan ada gunanya.
3. Klasifikasi Sistem
Menurut Taufiq (2013:8)[1], sistem dapat diklasifikasikan dari beberapa sudut pandang, diantaranya:
- Sistem Abstrak (Abstract System) dan Sistem Fisik (Physical System)
Jika dilihat dari bentuknya sistem bisa dibagi menjadi dua yaitu sistem abstrak dan sistem fisik. Sistem abstrak merupakan suatu sistem yang tidak bisa dipegang atau dilihat secara kasat mata atau lebih sering disebut sebagai prosedur, contohnya dari sistem abstrak adalah prosedur pembayaran keuangan mahasiswa, prosedur belajar mengajar, sistem akademik, sistem diperusahaan, sistem antara manusia dengan Tuhan, dan lain-lain.
Sistem fisik merupakan sistem yang bisa dilihat dan bisa dipegang oleh panca indera. Contoh dari sistem fisik adalah sistem komputer, sistem transportasi, sistem akuntansi, sistem perguruan tinggi, sistem mesin pada kendaraan bermotor, sistem mesin mobil, sistem mesin-mesin perusahaan.
Dilihat dari fungsinya, baik sistem abstrak maupun sistem fisik memiliki fungsi yang pentingnya, sistem abstrak berperan penting untuk mengatur proses-proses atau prosedur yang nantinya berguna bagi sistem lain agar dapat berjalan secara optimal sedangkan sistem fisik berperan untuk mengatur proses dari benda-benda atau alat-alat yang bisa digunakan untuk mendukung proses yang ada di dalam organisasi. - Sistem dapat dipastikan dan Sistem tidak dapat dipastikan
Sistem dapat dipastikan merupakan suatu sistem yang input proses dan outputnya sudah ditentukan sejak awal. Sudah dideskripsikan dengan jelas apa inputannya bagaimana cara prosesnya dan harapan yang menjadi outputnya seperti apa. Sedangkan sistem tidak dapat dipastikan atau sistem probabilistik merupakan sebuah sistem yang belum terdefinisi denganjelas salah satu dari input-proses-output atau ketiganya belum terdefinisi dengan jelas. - Sistem Tertutup dan Sistem Terbuka
Sistem tertutup dan sistem terbuka yang membedakan adalah ada faktor-faktor yang mempengaruhi dari luar sistem atau tidak, jika tidak ada faktor-faktor yang mempengaruhi dari luar itu bisa disebut dengan sistem tertutup tapi jika ada pengaruh komponen dari luar disebut sistem terbuka.
![](http://i1291.photobucket.com/albums/b547/ekapurwandari/sistemtertutup_zps7b29323d.jpg)
Gambar 2.1 Sistem Tertutup (Taufiq : 2013)
![](http://i1294.photobucket.com/albums/b610/hardi_cyntia/22_zps293e2fbe.jpg)
Gambar 2.2 Sistem Terbuka (Taufiq : 2013)
Konsep Dasar Analisa Sistem
1. Definisi Analisa Sistem
Menurut Yakub (2012:142)[3], Analisa sistem dapat diartikan sebagai suatu proses untuk memahami sistem yang ada, dengan menganalisa jabatan dan uraian tugas (business users), proses bisnis (business proses), ketentuan atau aturan (business rule), masalah dan mencari solusinya (business problem and business solution), dan rencana-rencana perusahaan (business plan).
Menurut Mulyanto (2009:125)[5], Analisa sistem adalah teori sistem umum yang sebagai sebuah landasan konseptual yang mempunyai tujuan untuk memperbaiki berbagai fungsi di dalam sistem yang sedang berjalan agar menjadi lebih efisien, mengubah sasaran sistem yang sedang berjalan, merancang/mengganti output yang sedang digunakan, untuk mencapai tujuan yang sama dengan seperangkat input yang lain (bisa jadi lebih sederhana dan lebih interaktif) atau melakukan beberapa perbaikan serupa.
Berdasarkan beberapa pendapat para ahli yang dikemukakan di atas dapat ditarik kesimpulan bahwa analisis sistem adalah suatu proses sistem yang secara umum digunakan sebagai landasan konseptual yang mempunyai tujuan untuk memperbaiki berbagai fungsi di dalam suatu sistem tertentu.
2. Tahap-Tahap Analisa Sistem
Menurut Mulyanto (2009:126)[5], Tahap analisis sistem merupakan tahap yang kritis dan sangat penting, karena kesalahan di dalam tahap ini akan menyebabkan juga kesalahan di tahap selanjutnya. Tahapan ini bisa merupakan tahap yang mudah jika client sangat paham dengan masalah yang dihadapi dalam organisasinya dan tahu betul fungsionalitas dari sistem informasi yang akan dibuat. Tetapi tahap ini bisa menjadi tahap yang paling sulit jika client tidak bisa mengidentifikasi kebutuhannya atau tertutup terhadap pihak luar yang ingin mengetahui detail-detail proses bisnisnya.
Menurut Mulyanto (2009:129)[5], Di dalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh seorang analis sistem, diantaranya adalah:
1. Identify, yaitu proses yang dilakukan untuk mengidentifikasi masalah.
2. Understand, yaitu memahami kerja dari sistem yang ada.
3. Analysis, yaitu melakukan analisa terhadap sistem.
4. Report, yaitu membuat laporan dari hasil analisis yang telah dilakukan dalam kurun waktu tertentu.
3. Fungsi Analisa Sistem
Adapun fungsi analisa sistem adalah sebagai berikut :
1. Mengidentifikasi masalah–masalah kebutuhan pemakai (user).
2. Menyatakan secara spesifik sasaran yang harus dicapai untuk memenuhi kebutuhan pemakai.
3. Memilih alternatif–alternatif metode pemecahan masalah yang paling tepat.
4. Merencanakan dan menerapkan rancangan sistemnya. Pada tugas atau fungsi terakhir dari analisa sistem menerapkan rencana rancangan sistemnya yang telah disetujui oleh pemakai.
Konsep Dasar Perancangan Sistem
1. Definisi Perancangan Sistem
Menurut Yakub (2012:142)[3], Analisa sistem dapat diartikan sebagai suatu proses untuk memahami sistem yang ada, dengan menganalisa jabatan dan uraian tugas (business users), proses bisnis (business proses), ketentuan atau aturan (business rule), masalah dan mencari solusinya (business problem and business solution), dan rencana-rencana perusahaan (business plan).
Menurut Verzello/John Reuter III dalam Darmawan (2013:227) [6], “Perancangan Sistem adalah tahap setelah analisis dari siklus pengembangan sistem: pendefinisian dari kebutuhan-kebutuhan fungsional dan persiapan untuk rancang bangun implementasi: “menggambarkan bagaimana suatu sistem dibentuk”.
Menurut Al-Jufri (2011:141)[7], “Rancangan Sistem adalah penentuan proses dan data yang diperlukan oleh sistem baru.
Berdasarkan kedua definisi di atas, maka dapat disimpulkan perancangan sistem adalah suatu tahapan perencanaan untuk membentuk suatu sistem agar dapat berfungsi.
2. Tujuan Perancangan Sistem
Menurut Darmawan (2013:228)[8], Tahap Perancangan/Desain Sistem mempunyai 2 tujuan utama, yaitu:
1. Untuk memenuhi kebutuhan pemakai sistem.
2. Untuk memberikan gambaran yang jelas dan rancang bangun yang lengkap pada pemograman komputer dan ahli-ahli teknik yang terlihat (lebih condong pada disain sistem yang terperinci).
3. Tahap-tahap Perancangan Sistem
Menurut Al-Jufri (2011:141)[7] Langkah-langkah tahap rancangan yaitu:
A. Menyiapkan Rancangan Sistem Yang Terinici
Analis bekerja sama dengan pemakai dan mendokumentasikan rancangan sistem baru denagan alat-alat yang dijelaskan dengan modul teknis. Bebrapa alat memudahkan analis untuk menyiapkan dokumentasi secara top down, dimulai dengan gambaran besar dan secara bertahap mengarah lebih rinci. Pendekatan top down ini merupakan ciri rancangan terstruktur (structured design), yaitu rancangan bergerak dari tingkat sistem ke tingkat subsistem. Alat-alat dokumentasi yang popular yaitu:
- Diagram arus data (data flow diagram).
- Diagram hubungan entitas (entity relathionship diagram).
- Kamus data (Data dictionary).
- Flowchart.
- Model hubungan objek.
- Spesifikasi kelas.
B. Mengidentifikasi Berbagai Alternatif Konfigurasi Sistem
Analis mengidentifikasi konfigurasi, bukan merek atau model peralatan komputer yang akan memberikan hasil yang terbaik bagi sistem dalam menyelesaikan pemrosesan.
C. Mengevaluasi berbagai Alternatif Konfigurasi Sistem
Analis bekerjasama dengan manager mengevaluasi berbagai alternatif. Alternatif yang dipilih adalah yang paling memungkinkan subsistem memenuhi kriteria kinerja, dengan kendala-kendala yang ada.
D. Memilih Konfigurasi Terbaik
Analis mengevaluasi semua konfigurasi subsistem dan menyesuaikan kombinasi peralatan sehingga semua subsistem menjadi satu konfigurasi tunggal. Setelah selesai analis membuat rekomendasi kepada manager untuk disetujui.Bila manager menyetujui konfigurasi tersebut, persetujuan selanjutnya dilakukan oleh MIS.
E. Menyiapkan Usulan Penerapan
Analis menyiapakn usulan penerapan (implementation proposal) yang mengikhtisarkan tugas-tugas penerpan yang harus dilakukan, keuntungan yang diharapkan, dan biayanya.
F. Menyetujui atau Menolak Penerapan Sistem
Keputuasan untuk terus pada tahap penerapan sangatlah penting, karena usaha ini akan sangat meningkatkan jumlah orang yang terlibat. Jika keuntungan yang diharapkan dari sistem melebihi biayanya, maka penerapan akan disetujui.
Konsep Dasar Monitoring
Sebuah kegiatan monitoring didasari oleh keinginan untuk mencari hal-hal yang berkaitan dengan peristiwa atau kejadian baik menyangkut siapa, mengapa dapat terjadi, sumber daya publik yang berkaitan, kebijakan dan juga dampak yang terjadi atau harus diantisipasi serta hal-hal lain yang berkaitan dengan aktivitas mencatat secara terstruktur.
1. Definisi Monitoring
Menurut Khanna (2013)[9], “Monitoring adalah kegiatan memantau yang dilakukan dengan rutin mengenai kemajuan pada project yang akan berjalan atau kegiatan memantau sebuah perubahan proses dan output project”.
Menurut Nikolaos (2013)[10], “Monitoring yaitu kegiatan dalam melakukan pengawasan pada suatu program atau kinerja terhadap suatu kelompok dalam organisasi”.
Berdasarkan dari kutipan di atas, dapat disimpulkan monitoring yaitu kegiatan memantau yang dilakukan untuk kemajuan suatu project yang sedang berjalan dengan tujuan memaksimalkan bagi sumber daya. Proses dasar untuk pemantauan (monitoring) ini, meliputi 3 tahap yaitu:
- Menetapkan standar pelaksanaan.
- Pengukuran pelaksanaan.
- Menentukan deviasi antara pelaksanaan dengan standar dan rencana.
Konsep Dasar Prototipe
Menurut Simarmata (2010:62)[11], “Prototype adalah bagian dari produk yang mengekspresikan logika maupun fisik antarmuka eksternal yang ditampilkan”.
Menurut Mall (2009:43)[12], “Prototype is a toy implementation of the system”. (Prototipe adalah sebuah implementasi tiruan dari sebuah sistem)
Berdasarkan kedua definisi di atas, maka dapat disimpulkan Prototype adalah contoh dari produk atau sistem dalam bentuk sebenarnya yang dapat dirubah sesuai keinginan sebelum direalisasikan.
Jenis-jenis Prototipe secara general dibagi menjadi dua, yaitu: Menurut Simarmata (2010:64)[11]
- Rapid Throwaway Prototyping
Pendekatan pengembangan perangkat keras/Iunak ini dipopulerkan Soleh Gomaa dan Scoot (1981) yang saat ini telah digunakan secara luas oleh industri, terutama di dalam pengembangan aplikasi. Pendekatan ini biasanya digunakan dengan item yang berisiko tinggi (high-risk) atau dengan bagian dari sistem yang tidak dimengerti secara keseluruhan oleh para tim pengembang. Pada pendekatan ini, Prototype "quick and dirty" dibangun, diverifikasi oleh kansumen, dan dibuang hingga Prototype yang diinginkan tercapai pada saat proyek berskala besar dimulai. - Prototype Evolusioner
Pada pendekatan evolusioner, suatu Prototype berdasarkan kebutuhan dan pemahaman secara umum. Prototype kemudian diubah dan dievolusikan daripada dibuang. Prototype yang dibuang biasanya digunakan dengan aspek sistem yang dimengerti secara luas dan dibangun atas kekuatan tim pengembang. Prototype ini juga didasarkan atas kebutuhan prioritas, kadang-kadang diacu sebagai “chunking” pada pengembang aplikasi (Hough, 1993).
Kelebihan dan Kelemahan prototyping adalah sebagai berikut :
![](https://lh5.googleusercontent.com/-jMWSImAPuug/VJEzxBnAKzI/AAAAAAAAAFM/WS1FDkOAC2M/w702-h478-no/Prototipe.png)
Tabel 2.1 Keunggulan dan Kekurangan Prototipe
Sumber: Simarmata (2010:68)[11]
Konsep Dasar Flowchart
1. Definisi Flowchart
Menurut Adelia (2011:116)[13], “Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program”. Flowchart menolong analyst dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian. Flowchart biasanya mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
Menurut Sulindawati (2010:8)[14], “Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urutan-urutan prosedur dari suatu program”. Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengopersian.
Berdasarkan beberapa pendapat yang dikemukakan di atas dapat ditarik kesimpulan flowchart atau diagram alur adalah suatu alat yang banyak digunakan untuk membuat algoritma, yakni bagaimana rangkaian pelaksanaan suatu kegiatan. Suatu diagram alur memberikan gambaran dua dimensi berupa simbol-simbol grafis. Masing-masing simbol telah ditetapkan terlebih dahulu fungsi dan artinya.
2. Jenis-jenis Flowchart
Menurut Sulindawati (2010:8)[14], Flowchart terbagi atas lima jenis, yaitu:
- Flowchart Sistem (System Flowchart)
Flowchart Sistem merupakan bagan yang menunjukan alur kerja atau apa yang sedang dikerjakan di dalam sistemsecara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain, flowchart ini merupakan deskripsi secara grafik dari urutan prosedur-prosedur yang terkombinasi yang membentuk sistem.
Flowchart sistem terdiri dari tiga data yang mengalir melalui sistem dan proses yang mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat digambarkan secara online (dihubungkan langsung dengan komputer) atau offline (tidak dihubungkan langsung dengan komputer, misalnya mesin tik, cash register atau kalkulator). - Flowchart Paperwork (Document Flowchart)
Flowchart Paperwork menelusuri alur dari data yang ditulis melalui sistem. Flowchart Paperwork sering disebut juga dengan Flowchart Dokumen. Kegunaan utamanya adalah untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat atau disimpan. - Flowchart Skematik (Schematic Flowchart)
Flowchart Skematik mirip dengan Flowchart Sistem yang menggambarkan suatu sistem atau prosedur. Flowchart Skematik ini bukan hanya menggunakan simbol-simbol flowchart standart, tetapi juga menggunakan gambar-gambar komputer, peripeheral, form-form atau peralatan lain yang digunakan dalam sistem.
Flowchart Skemantik digunakan sebagai alat komunikasi antara analis sistem dengan seseorang yang tidak familiar dengan simbol-simbol flowchart yang konvensional. Pemakaian gambar sebagai ganti dari simbol-simbol flowchart akan menghemat waktu yang dibutuhkan oleh sesorang untuk mempelajari simbol abstrak sebelum dapat mengerti flowchart. - Flowchart Program (Program Flowchart)
Flowchart Program dihasilkan dari Flowchart Sistem. Flowchart Program merupakan keterangan yang lebih rinci tentang bagaimana setiap langkah program atau prosedur sesungguhnya dilaksanakan. Flowchart ini menunjukan setiap langkah program atau prosedur dalam urutan yang tepat saat terjadi. Programmer menggunakan Flowchart Program untuk menggambarkan urutan instruksi dari program komputer. Analisa sistem menggunakan flowchart program untuk menggambarkan urutan tugas-tugas pekerjaan dalam suatu prosedur atau operasi. - Flowchart Proses (Process Flowchart)
Flowchart Proses merupakan teknikmenggambarkan rekayasa industrial yang memecah dan menganalisis langkah-langkah selanjutnya dalam suatu prosedur atau sistem. Flowchart Proses memiliki lima simbol khusus. Flowchart Proses digunakan oleh perekayasa industrial dalam mempelajari dan mengembangkan proses-proses manufacturing. Dalam analisis sistem, Flowchart ini digunakan secara efektif untuk menelusuri alur suatu laporan.
Konsep dasar Pengujian
1. Definisi Pengujian
Menurut Rizky (2011:237)[15], “Testing adalah sebuah proses yang diejawantahkan sebagai siklus hidup dan merupakan bagian dari proses rekayasa perangkat lunak secara terintegrasi demi memastikan kualitas dari perangkat lunak serta memenuhi kebutuhan teknis yang telah disepakati dari awal.
Menurut Simamarta (2010:323) [16], “Pengujian adalah proses terhadap aplikasi. Program untuk menemukan segala kesalahan dan segala kemungkinan yang akan menimbulkan kesalahan sesuai dengan spesifikasi perangkat lunak yang telah ditentukan sebelum aplikasi tersebut diserahkan kepada pelanggan.
Dari pengertian diatas dapat disimpulkan bahwa pengujian adalah prose terhadap aplikai yang saling terintegrasi guna untuk menemukan kesalahan dan segala kemungkinan yang akan menimbulkan kesalahan.
Secara teoritis, testing dapat dilakukan dengan berbagai jenis tipe dan teknik. Namun secara garis besar, terdapat dua jenis tipe testing yang paling umum digunakan di dalam lingkup rekayasa perangkat lunak. Dua jenis tersebut adalah Black box dan White box testing.
2. Definisi Black Box
Menurut Simanjuntak, dkk (2010:1)[17], black box pengujian adalah metode pengujian perangkat lunak yang tes fungsionalitas dari aplikasi yang bertentangan dengan struktur internal atau kerja (lihat pengujian white-box). pengetahuan khusus dari kode aplikasi / struktur internal dan pengetahuan pemrograman pada umumnya tidak diperlukan. Uji kasus dibangun di sekitar spesifikasi dan persyaratan, yakni, aplikasi apa yang seharusnya dilakukan.
Menurut Siddiq (2012:4)[18], “Pengujian black box adalah pengujian aspek fundamental sistem tanpa memperhatikan struktur logika internal perangkat lunak. Metode ini digunakan untuk mengetahui apakah perangkat lunak berfungsi dengan benar.
Menurut Budiman (2012:4)[19] Pengujian black box merupakan metode perancangan data uji yang didasarkan pada spesifikasi perangkat lunak. Data uji dibangkitkan, dieksekusi pada perangkat lunak dan kemudian keluaran dari perangkat lunak diuji apakah telah sesuai dengan yang diharapkan.
Dari ketiga definisi di atas dapat disimpulkan bahwa metode pengujian Black Box digunakan untuk menguji sistem dari segi user yang dititik beratkan pada pengujian kinerja, spesifikasi dan antarmuka sistem tersebut tanpa menguji kode program yang ada.
Black Box Testing tidak membutuhkan pengetahuan mengenai, alur internal (internal path), struktur atau implementasi dari software under test (SUT). Karena itu uji coba Black Box memungkinkan pengembang software untuk membuat himpunan kondisi input yang akan melatih seluruh syarat-syarat fungsional suatu program.
Uji coba Black Box berusaha untuk menemukan kesalahan dalam beberapa kategori, diantaranya:
- Fungsi-fungsi yang salah atau hilang.
- Kesalahan interface
- Kesalahan dalam struktur data atau akses database eksternal
- Kesalahan performa
- kesalahan inisialisasi dan terminasi
Uji coba Black Box diaplikasikan dibeberapa tahapan berikutnya. Karena uji coba Black Box dengan sengaja mengabaikan struktur kontrol, sehingga perhatiannya difokuskan pada informasi domain. Uji coba didesain untuk dapat menjawab pertanyaan pertanyaan berikut:
- Bagaimana validitas fungsionalnya diuji?
- Jenis input seperti apa yang akan menghasilkan kasus uji yang baik?
- Apakah sistem secara khusus sensitif terhadap nilai input tertentu?
- Bagaimana batasan-batasan kelas data diisolasi?
- Berapa rasio data dan jumlah data yang dapat ditoleransi oleh sistem?
- Apa akibat yang akan timbul dari kombinasi spesifik data pada operasi sistem?
Sehingga dalam uji coba Black Box harus melewati beberapa proses sebagai berikut:
- Menganalisis kebutuhan dan spesifikasi dari perangkat lunak.
- Pemilihan jenis input yang memungkinkan menghasilkan output benar serta jenis input yang memungkinkan output salah pada perangkat lunak yang sedang diuji.
- Menentukan output untuk suatu jenis input.
- Pengujian dilakukan dengan input-input yang telah benar-benar diseleksi.
- Melakukan pengujian.
- Pembandingan output yang dihasilkan dengan output yang diharapkan.
- Menentukan fungsionalitas yang seharusnya ada pada perangkat lunak yang sedang diuji.
3. Metode Pengujian dalam Black Box
Ada beberapa macam metode pengujian Black Box, berikut diantaranya:
a. Equivalence Partioning
Equivalence Partioning merupakan metode uji coba Black Box yang membagi domain input dari program menjadi beberapa kelas data dari kasus uji coba yang dihasilkan. Kasus uji penanganan single yang ideal menemukan sejumlah kesalahan (misalnya: kesalahan pemrosesan dari seluruh data karakter) yang merupakan syarat lain dari suatu kasus yang dieksekusi sebelum kesalahan umum diamati.
b. Boundary Value Analysis
Sejumlah besar kesalahan cenderung terjadi dalam batasan domain input dari pada nilai tengah. Untuk alasan ini boundary value analysis (BVA) dibuat sebagai teknik uji coba. BVA mengarahkan pada pemilihan kasus uji yang melatih nilai-nilai batas. BVA merupakan desain teknik kasus uji yang melengkapi Equivalence partitioning. Dari pada memfokuskan hanya pada kondisi input, BVA juga menghasilkan kasus uji dari domain output.
c. Cause-Effect Graphing Techniques
Cause-Effect Graphing merupakan desain teknik kasus uji coba yang menyediakan representasi singkat mengenai kondisi logikal dan aksi yang berhubungan. Tekniknya mengikuti 4 tahapan berikut:
- Causes (kondisi input), dan Effects (aksi) didaftarkan untuk modul dan identifier yang dtujukan untuk masing-masing.
- Pembuatan grafik Causes-Effect graph.
- Grafik dikonversikan kedalam tabel keputusan.
- Aturan tabel keputusan dikonversikan kedalam kasus uji.
d. Comparison Testing
Dalam beberapa situasi (seperti: aircraft avionic, nuclear Power plant control) dimana keandalan suatu software amat kritis, beberapa aplikasi sering menggunakan software dan hardware ganda (redundant). Ketika software redundant dibuat, tim pengembangan software lainnya membangun versi independent dari aplikasi dengan menggunakan spesifikasi yang sama. Setiap versi dapat diuji dengan data uji yang sama untuk memastikan seluruhnya menyediakan output yang sama. Kemudian seluruh versi dieksekusi secara parallel dengan perbandingan hasil real-time untuk memastikan konsistensi. Dianjurkan bahwa versi independent suatu software untuk aplikasi yang amat kritis harus dibuat, walaupun nantinya hanya satu versi saja yang akan digunakan dalam sistem. Versi independent ini merupakan basis dari teknik Black Box Testing yang disebut Comparison Testing atau back-to-back Testing.
e. Sample and Robustness Testing
- Sample Testing
- Robustness Testing
Melibatkan beberapa nilai yang terpilih dari sebuah kelas ekivalen, seperti Mengintegrasikan nilai pada kasus uji. Nilai-nilai yang terpilih mungkin dipilih dengan urutan tertentu atau interval tertentu.
Pengujian ketahanan (Robustness Testing) adalah metodologi jaminan mutu difokuskan pada pengujian ketahanan perangkat lunak. Pengujian ketahanan juga digunakan untuk menggambarkan proses verifikasi kekokohan (yaitu kebenaran) kasus uji dalam proses pengujian.
f. Behavior Testing dan Performance Testing
- Behavior Testing
- Performance Testing
Hasil uji tidak dapat dievaluasi jika hanya melakukan pengujian sekali, tapi dapat dievaluasi jika pengujian dilakukan beberapa kali, misalnya pada pengujian struktur data stack.
Digunakan untuk mengevaluasi kemampuan program untuk beroperasi dengan benar dipandang dari sisi acuan kebutuhan. Misalnya: aliran data, ukuran pemakaian memori, kecepatan eksekusi, dll. Selain itu juga digunakan untuk mencari tahu beban kerja atau kondisi konfigurasi program. Spesifikasi mengenai performansi didefinisikan pada saat tahap spesifikasi atau desain. Dapat digunakan untuk menguji batasan lingkungan program.
g. Requirement Testing
Spesifikasi kebutuhan yang terasosiasi dengan perangkat lunak (input/output/fungsi/performansi) diidentifikasi pada tahap spesifikasi kebutuhan dan desain.
- Requirement Testing melibatkan pembuatan kasus uji untuk setiap spesifikasi kebutuhan yang terkait dengan program.
- Untuk memfasilitasinya, setiap spesifikasi kebutuhan bisa ditelusuri dengan kasus uji dengan menggunakan traceability matrix.
h. Endurance Testing
Endurance Testing melibatkan kasus uji yang diulang-ulang dengan jumlah tertentu dengan tujuan untuk mengevaluasi program apakah sesuai dengan spesifikasi kebutuhan. Contoh: Untuk menguji keakuratan operasi matematika (floating point, rounding off, dll), untuk menguji manajemen sumber daya sistem (resources) (pembebasan sumber daya yang tidak benar, dll), input/outputs (jika menggunakan framework untuk memvalidasi bagian input dan output). Spesifikasi kebutuhan pengujian didefinisikan pada tahap spesifikasi kebutuhan atau desain.
4. Kelebihan dan Kelemahan Black Box
Dalam uji coba Black Box terdapat beberapa kelebihan dan kelemahan. Berikut adalah keunggulan dan kelemahannya:
![](https://lh5.googleusercontent.com/-ozx5SsIqVWE/VJFt0ZkcxfI/AAAAAAAAAFg/GkQJkcgGYm0/w500-h374-no/Prototipe.png)
Tabel 2.2 Kelebihan dan Kelemahan Black Box
Sumber: Siddiq (2012:14)[20]
5. Definisi White Box
Menurut Shivani Archarya dan Vidhi Pandya (ISSN-2277-1956 Vol.2) White box testing is testing beyond the user interface and into the nitty-gritty of a system. This method is named so because the software program, in the eyes of the tester, is like a white/transparent box; inside which one clearly sees. White Box Testing is contrasted with Black Box Testing.
(white Box adalah pengujian di luar antarmuka pengguna dan menjadi intisari dari sistem . Metode ini dinamakan demikian karena program perangkat lunak , di mata tester , seperti kotak putih / transparan; dalam yang satu jelas melihat . Pengujian White Box adalah kontras dengan Black Box Testing).
Keuntungan pengujian White Box
- Peningkatan Efektivitas : silang keputusan desain dan asumsi terhadap kode sumber dapat menguraikan kuat.
- desain , tapi pelaksanaannya mungkin tidak sejajar dengan maksud desain .
- Kode penuh Pathway Mampu : semua jalur kode yang mungkin dapat diuji termasuk penanganan error ,dependensi , dan tambahan kode logika / aliran intern .
- Awal Cacat Identifikasi : Menganalisis kode sumber dan mengembangkan tes berdasarkan rincian pelaksanaan memungkinkan.
- penguji untuk menemukan kesalahan pemrograman dengan cepat .
- Mengungkapkan Kode Tersembunyi Cacat : akses modul program.
- Tidak ada Waiting : Pengujian dapat dimulai pada tahap awal . Satu tidak perlu menunggu GUI akan tersedia).
Menurut Rizky (2011:262) [15], “White Box Testing secara umum merupakan jenis testing yang lebih berkonsentrasi terhadap isi dari perangkat lunak itu sendiri. Jenis ini lebih banyak berkonsentrasi kepada source code dari perangkat lunak yang dibuat.
- Decision (Branch) Coverage
- Condition Coverage
- Path Analysis
- Executive Time
- Algorithm Analysis
Sesuai dengan namanya, teknik testing ini fokus terhadap hasil dari tiap skenario yang dijalankan terhadap bagian perangkat lunak yang mengandung percabangan (if...then...else).
Teknik ini hampir mirip dengan teknik yang pertama, tetapi dijalankan terhadap percabangan yang dianggap kompleks atau percabangan majemuk. Hal ini biasanya dilakukan jika dalam sebuah perangkat lunak memiliki banyak kondisi yang dijalankan dalam satu proses sekaligus.
Merupakan teknik testing yang berusaha menjalankan kondisi yang ada dalam perangkat lunak serta berusaha mengoreksi apakah kondisi yang dijalankan telah sesuai dengan alur diagram yang terdapat dalam proses perancangan.
Pada teknik ini, perangkat lunak berusaha dijalankan atau dieksekusi kemudian dilakukan pengukuran waktu pada saat input dimasukkan hingga output dikeluarkan. Waktu eksekusi yang dihasilkan kemudian dijadikan bahan evaluasi dan dianalisa lebih lanjut untuk melihat apakah perangkat lunak telah berjalan sesuai dengan kondisi yang dimaksud oleh tester.
Teknik ini umumnya jarang dilakukan jika perangkat lunak yang dibuat berjenis sistem informasi. Sebab teknik ini membutuhkan kemampuan matematis yang cukup tinggi dari para tester, karena di dalamnya berusaha melakukan analisa terhadap algoritma yang diimplementasikan pada perangkat lunak tersebut.
Dari beberapa pengertian diatas dapat disimpulkan bahwa pengujian white box adalah suatu pengujian di luar antarmuka pengguna dan menjadi intisari dari sistem, dengan seperti pengujian dapat diketahui secara cepat.
Teori Khusus
Mikrokontroler
1. Definisi Mikrokontroler
Menurut Sumardi (2013:1) [21], “Mikrokontroler merupakan suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data”.
Menurut Syahrul (2012:3) [22], “Mikrokontroler adalah sebuah sistem komputer dalam chip tunggal dan juga sebuah general purpose device yang difungsikan untuk membaca data, melakukan kalkulasi terbatas pada data dan mengendalikan lingkungannya berdasarkan kalkulasi tersebut”.
Dari beberapa definisi-definisi diatas dapat disimpulkan bahwa Mikrokontroler adalah sebuah sistem mikroprosesor dalam chip tunggal yang dimana didalamnya terdapat CPU, ROM, RAM, I/O, Clock dan peralatan internal lainnya, dan juga mempunyai masukan dan keluaran serta kendali yang difungsikan untuk membaca data, dan dengan program yang bisa ditulis dan dihapus dengan cara khusus.
2. Karakteristik Mikrokontroler
Menurut Sumardi (2013:2) [21], mikrokontroler memiliki karakteristik sebagai berikut :
- Memiliki program khusus yang disimpan dalam memori untuk aplikasi tertentu, tidak seperti PC yang multifungsi karena mudahnya memasukkan program. Program mikrokontroler relative lebih kecil daripada program-program pada PC.
- Konsumsi daya kecil.
- Rangkaiannya sederhana dan kompak.
- Harganya murah , karena komponennya sedikit.
- Unit I/O yang sederhana, misalnya LCD, LED, Latch.
Lebih tahan terhadap kondisi lingkungan ekstrim, misalnya temperature tekanan, kelembapan, dan sebagainya.
3. Klasifikasi Mikrokontroler
Menurut Malik dan Mohammad Unggul Juwana (2009:3) [23], Mikrokontroler memiliki beberapa klasifikasi yaitu sebagai berikut:
- ROM (Flash Memory) dengan kapasitas 1024 byte (1 KB).
- RAM berkapasitas 68 byte.
- EEPROM (memori data) berkapasitas 64 byte.
- Total 13 jalur I/O (Port B 8 bit).
- Timer/Counter 8 bit dengan prescaler.
- Fasilitas pemrograman di dalam sistem (ICSP = In Circuit Serial Programming).
4. Fitur-fitur Mikrokontroler
Menurut Malik dan Mohammad Unggul Juwana (2009:3)[23], ada beberapa fitur yang pada umumnya ada di dalam mikrokontroler adalah sebagai berikut :
- RAM (Random Access Memory).
- ROM (Read Only Memory).
- Register.
- Special Function Register.
- Input dan Output Pin.
- Interrupt.
RAM digunakan oleh mikrokontroler untuk tempat penyimpanan variable. Memori ini bersifat volatile yang artinya akan kehilangan semua datanya jika tidak mendapatkan catu daya.
ROM disebut sebagai kode memori karena berfungsi untuk tempat penyimpanan program yang akan diberikan oleh user.
Register merupakan tempat penyimpanan nilai-nilai yang akan digunakan dalam proses yang telah disediakan oleh mikrokontroler.
Merupakan register khusus yang berfungsi untuk mengatur jalannya mikrokontroler dan register ini terletak di RAM.
Pin Input adalah bagian yang berfungsi sebagai penerima signal dari luar dan pin ini dihubungkan ke berbagai media inputan seperti keypad, sensor, keyboard, dan sebagainya. Pin Output adalah bagian yang berfungsi untuk mengeluarkan signal dari hasil proses algoritma mikrokontroler.
Interrupt merupakan bagian dari mikrokontroler yang berfungsi sebagai bagian yang dapat melakukan interupsi, sehingga ketika program sedang dijalankan, program tersebut dapat diinterupsikan dan menjalankan program interupsi terlebih dahulu.
Menurut Malik dan Mohammad Unggul Juwana (2009:3)[23], ada beberapa interrupt yang terdapat pada mikrokontroler adalah sebagai berikut :
- Interrupt Eksternal.
- Interrupt Timer.
- Interrupt Serial.
Interrupt ini akan terjadi ketika ada inputan dari pin interrupt.
Interrupt ini akan terjadi ketika waktu tertentu telah tercapai.
Interrupt ini akan terjadi ketika ada penerimaan data dari komunikasi serial.
5. Pengenalan Mikrokontroler
Mikrokontroler sebagai suatu terobosan teknologi mikroprosesor dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang yang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) membuat harganya menjadi lebih murah (dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu bahkan mainan yang lebih baik dan canggih.
Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk suatu aplikasi tertentu saja (hanya satu program saja yang bisa disimpan). Perbedaan lainnya terletak pada perbandingan RAM dan ROM. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antarmuka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada Mikrokontroler, perbandingan ROM dan RAM-nya yang besar, artinya program kontrol disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpan sementara, termasuk register-register yang digunakan pada mikrokontroler yang bersangkutan.
Adapun kelebihan dari mikrokontroler adalah sebagai berikut :
- Penggerak pada mikrokontoler menggunakan bahasa pemograman assembly dengan berpatokan pada kaidah digital dasar sehingga pengoperasian sistem menjadi sangat mudah dikerjakan sesuai dengan logika sistem (bahasa assembly ini mudah dimengerti karena menggunakan bahasa assembly aplikasi dimana parameter input dan output langsung bisa diakses tanpa menggunakan banyak perintah). Desain bahasa assembly ini tidak menggunakan begitu banyak syarat penulisan bahasa pemrograman seperti huruf besar dan huruf kecil untuk bahasa assembly tetap diwajarkan.
- Mikrokontroler tersusun dalam satu chip dimana prosesor, memori, dan I/O terintegrasi menjadi satu kesatuan kontrol sistem sehingga mikrokontroler dapat dikatakan sebagai komputer mini yang dapat bekerja secara inovatif sesuai dengan kebutuhan sistem.
- Sistem running bersifat berdiri sendiri tanpa tergantung dengan komputer sedangkan parameter komputer hanya digunakan untuk download perintah instruksi atau program. Langkah-langkah untuk download komputer dengan mikrokontroler sangat mudah digunakan karena tidak menggunakan banyak perintah.
- Pada mikrokontroler tersedia fasilitas tambahan untuk pengembangan memori dan I/O yang disesuaikan dengan kebutuhan sistem.
- Harga untuk memperoleh alat ini lebih murah dan mudah didapat.
Menurut Bagus (2012:1-2)[24], Mikrokontroler digunakan jika proses yang dikontrol melibatkan operasi yang kompleks baik itu aritmetika. Logika, pewaktuan, atau lainnya yang akan sangat rumit bila diimplementasikan dengan komponen-komponen diskrit. Salah satu keunggulan dari mikrokontroler adalah fleksibilitas dalam merangkai komponen-komponen diskrit karena dilakukan secara software. Prosesor didalam mikrokontroler mengerjakan instruksi sesuai software yang didalam memorinya (ROM). software tersebut berupa bahasa assembler yang sebenarnya mewakili kode-kode (opcode) yang diterjemahkan dan dieksekusi oleh prosesor.
Sinyal yang bisa diolah oleh mikrokontroler adalah sinyal digital, untuk sinyal analog diperlukan konversi dengan menggunakan ADC (analog to digital converter) untuk mendapatkan nilai digital setaranya, sebaiknya jika menginginkan keluaran sinyal analog dari data digital maka diperlukan DAC (digital to analog converter).
![](https://lh3.googleusercontent.com/-2WaGRFHODj4/VJGUCiDYY_I/AAAAAAAAAF0/aq9hj-iEdVw/w444-h233-no/Prototipe.png)
Gambar 2.3 Blok Rangkaian Internal Mikrokontroler
Sumber: pemrograman mikrokontroler dengan bahasa c
Gambar 2.1 memperlihatkan contoh blok rangkaian internal sebuah mikrokontroler beserta jalur datanya. Didalamnya selain ada Mikroprosessor, ROM, RAM, dan Port I/O bisa juga peripheral lain seperti UART, ADC, EEPROM, Timer dan lainnya.
- Mikroprosessor: unit yang mengoreksi program dan mengatur jalur data, jalur alamat, dan jalur kendali perangkat-perangkat yang terhubung dengannya.
- ROM (Read Only Memory): memori untuk menyimpan program yang dieksekusi oleh mikroprosesor. Bersifat non volatile artinya dapat mempertahankan data didalamnya walapun tak ada sumber tegangan. Saat sistem berjalan memori ini bersifat read only (hanya bisa dibaca).
- RAM (Random Access Memory): memori untuk menyimpan data sementara yang diperlukan saat eksekusi program. Memori ini bisa digunakan untuk operasi baca tulis.
- Port I/O: Port Input/Output sebagai pintu masukan atau keluaran bagi mikrokontroler. Umumnya sebuah port bisa difungsikan sebagai port masukan atau port keluaran bergantung kontrol yang dipilih.
- Timer: pewaktu yang bersumber dari oscillator mikrokontroler atau sinyal masukan ke mikrokontroler. Program mikrokontroler bisa memanfaatkan timer untuk menghasilkan pewaktuan yang cukup akurat.
- EEPROM: memori untuk menyimpan data yang sifatnya non volatile.
- ADC: converter sinyal analog menjadi data digital.
- UART: sebagai antarmuka komunikasi serial asynchronous.
6. Mikrokontroler AVR ( Alf and Vegaard’s Risc Processor)
Menurut Slamet dan Muhammad Munir (2013)[25] , Mikrokontroler jenis AVR adalah prosesor yang sekarang ini paling banyak digunakan dalam membuat aplikasi sistem kendali bidang instrumentasi, dibandingkan dengan mikrokontroler keluarga MCS51 seperti AT 89C51/52. Mikrokontroler seri AVR pertama kali diperkenalkan ke pasaran sekitar tahun 1997 oleh perusahaan Atmel, yaitu sebuah perusahaan yang sangat terkenal dengan produk mikrokontroler seri AT89S51/52-nya yang sampai sekarang masih banyak digunakan di lapangan. Keterbatasan pada mikrokontroler tersebut (resolusi, memori, dan kecepatan) menyebabkan banyak orang beralih ke mikrokontroler AVR. Hal ini karena ada beberapa kelebihan dari tipe AVR ini yaitu diantaranya ADC, DAC, Counter, Timer, I2C, USART, dan sebagainya.
Mikrokontroler AVR standar memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16 bit dan sebagian besar instruksi dieksekusi dalam satu situs clock, berbeda dengan instruksi MCS51 yang membutuhkan 12 situs clock. Hal ini karena kedua jenis mikrokontroler tersebut memiliki arsitektur yang berbeda. AVR berteknologi RISC (Reduce Insruction Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing). AVR dapat dikelompokkan menjadi empat kelas yaitu ATtiny, AT90Sxx, ATmega, dan AT86RFFxx. Perbedaan dari masingmasing keluarga AVR tersebut adalah memori, peripheral, dan fungsinya.
7. ATmega328
1. Definisi ATmega328
Menurut Syahid (2012:33) [26], "ATmega328 merupakan mikrokontroler keluarga AVR 8 bit. Beberapa tipe mikrokontroler yang sama dengan ATMega8 ini antara lain ATMega8535, ATMega16, ATMega32, ATmega328, yang membedakan antara mikrokontroler antara lain adalah, ukuran memori, banyaknya GPIO (pin input/output), peripherial (USART, timer, counter, dll)".
Dari segi ukuran fisik, ATmega328 memiliki ukuran fisik lebih kecil dibandingkan dengan beberapa mikrokontroler diatas. Namun untuk segi memori dan periperial lainnya ATmega328 tidak kalah dengan yang lainnya karena ukuran memori dan periperialnya relatif sama dengan ATMega8535, ATMega32, hanya saja jumlah GPIO lebih sedikit dibandingkan mikrokontroler diatas.
Mikrokontroler ini memiliki beberapa fitur antara lain :
- 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.
- 32 x 8-bit register serba guna.
- Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
- 32 KB flash memory dan pada arduino memiliki bootloader yang menggunakan 2 KB dari flash memori sebagai bootloader.
- Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanent karena EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.
- Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
- Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width Modulation) output.
- Master / Slave SPI Serial interface.
Mikrokontroler ATmega328 memiliki arsitektur Harvard, yaitu memisahkan memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan kerja dan paralelisme. Instruksi – instruksi dalam memori program dieksekusi dalam satu alur tunggal, dimana pada saat satu instruksi dikerjakan instruksi berikutnya sudah diambil dari memori program. Konsep inilah yang memungkinkan instruksi – instruksi dapat dieksekusi dalam setiap satu siklus clock.
32 x 8-bit register serba guna digunakan untuk mendukung operasi pada ALU (Arithmatic Logic unit) yang dapat dilakukan dalam satu siklus. 6 dari register serbaguna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode pengalamatan tak langsung untuk mengambil data pada ruang memori data. Ketiga register pointer 16-bit ini disebut dengan register X ( gabungan R26 dan R27 ), register Y ( gabungan R28 dan R29 ), dan register Z ( gabungan R30 dan R31 ).
Hampir semua instruksi AVR memiliki format 16-bit. Setiap alamat memori program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna di atas, terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar 64 byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai register Control Timer/Counter, Interupsi, ADC, USART, SPI, EEPROM, dan fungsi I/O lainnya.
Berikut ini adalah tampilan arsitektur ATmega 328 :
![](https://lh3.googleusercontent.com/-zZT13drBLt4/VJGYRzGfkUI/AAAAAAAAAGM/wwSayRK14AE/w400-h516-no/Prototipe.png)
Gambar 2.4 Arsitektur ATmega328
Sumber: Data sheet Microcontroler : 8
2. Konfigurasi PIN ATmega328
![](https://lh6.googleusercontent.com/-fH-kriOquhY/VJGYmHiMSvI/AAAAAAAAAGU/Luuq6rITsdM/w323-h429-no/Prototipe.png)
Gambar 2.5 Susunan PIN ATmega328
Sumber: jurnal Syahid tahun 2012 halaman 34
Menurut Syahid (2012:34) [26] ATmega328 memiliki 3 buah PORT utama yaitu PORTB, PORTC, dan PORTD dengan total pin input/output sebanyak 23 pin. PORT tersebut dapat difungsikan sebagai input/output digital atau difungsikan sebagai periperial lainnya.
1. Port B
Port B merupakan jalur data 8 bit yang dapat difungsikan sebagai input/output. Selain itu PORTB juga dapat memiliki fungsi alternatif seperti di bawah ini.
- ICP1 (PB0), berfungsi sebagai Timer Counter 1 input capture pin.
- OC1A (PB1), OC1B (PB2) dan OC2 (PB3) dapat difungsikan sebagai keluaran PWM (Pulse Width Modulation).
- MOSI (PB3), MISO (PB4), SCK (PB5), SS (PB2) merupakan jalur komunikasi SPI.
- Selain itu pin ini juga berfungsi sebagai jalur pemograman serial (ISP).
2. Port C
Port C merupakan jalur data 7 bit yang dapat difungsikan sebagai input/output digital. Fungsi alternatif PORTC antara lain sebagai berikut.
- ADC6 channel (PC0,PC1,PC2,PC3,PC4,PC5) dengan resolusi sebesar 10 bit. ADC dapat kita gunakan untuk mengubah input yang berupa tegangan analog menjadi data digital.
- I2C (SDA dan SDL) merupakan salah satu fitur yang terdapat pada PORTC. I2C digunakan untuk komunikasi dengan sensor atau device lain yang memiliki komunikasi data tipe I2C seperti sensor kompas, accelerometer nunchuck.
- USART (TXD dan RXD) merupakan jalur data komunikasi serial dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data serial, sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi untuk menerima data serial.
- Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari program, misalkan pada saat program berjalan kemudian terjadi interupsi hardware/software maka program utama akan berhenti dan akan menjalankan program interupsi.
- XCK dapat difungsikan sebagai sumber clock external untuk USART, namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu membutuhkan external clock.
- T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan timer 0.
- AIN0 dan AIN1 keduanya merupakan masukan input untuk analog comparator.
3. Port D
Port D merupakan jalur data 8 bit yang masing-masing pin-nya juga dapat difungsikan sebagai input/output. Sama seperti Port B dan Port C, Port D juga memiliki fungsi alternatif dibawah ini.
Mode Pemrograman
Menurut widodo (2009:22) [27], perkembangan mikrokontroler sangalah pesat, diawali dengan penggunaan bahsa assembly, kini penggunaan dapat memilih bahasa yang digunakan sesuai dengan ketersedian compiler (penerjemah bahasa). Bahasa-bahasa tingkat menengah dan tinggi yang umum digunakan adalah basic, bahasa c, pascal dan juga berbagai bahasa lain yang ditemukan, sesuai perkembangan teknologi informasi dan komunikasi, berikut contoh berbagai compailer.
- Compailer bahasa C untuk keluarga MCS-51:RIDE51.
- Code vision C-AVR untuk keluarga Atmel AVR.
- Nc30wa untuk keluarga renesas M16C dan R8C.
Bahasa Pemrograman
Pengertian bahasa pemograman Menurut Simamarta (2010;394) [16], “bahasa pemograman adalah teknik komando/instruksi standar untuk memerintah komputer”. Menurut Noersasongko dan Andono (2010:116) [28], “bahasa pemograman adalah suatu bahasa maupun suatu tata cara yang dapat digunakan oleh manusia (programmer) untuk berkomunikasi secara langsung dengan komputer”.
Dari pengertian diatas dapat disimpulkan bahwa bahasa pemograman adalah suatu bahasa yang digunakan untuk berinteraksi dengan komputer.
Klasifikasi Bahasa Pemrograman
Menurut Farik dan Matamaya Studio (2010:16) [29], klasifikasi bahasa pemograman secara umum terbagi menjadi 3 yaitu:
- Bahasa Tingkat Tinggi (high level language)
- Perintah mirip dengan bahasa manusia, khususnya bahasa inggris.
- Mudah dimengerti
- Kemampuan untuk mengakses hardware secara langsung rendah
- Bahasa Tingkat Menengah (middle level language)
- Bahasa Tingkat Rendah (low level language)
Ciri-ciri bahasa tingkat tinggi adalah:
Contoh pemrogaman tingkat tinggi adalah BASIC (beginner all-purpose symbolic interchange code), PASCAL(common bussiness oriented language) pascal (Nama Penemu).
Penggolongan bahasa tingkat menengah ini baru muncul pada jangka waktu tak terlalu lama. Ciri khas dari bahasa tingkat menengah adalah kecepatan akses dan kemampuannya yang cukup dapat diandalkan. Keistimewaan lainnya adalah perintah yang digunakan hampir sama dengan bahasa manusia. Contoh bahasa pemograman tingkat menengah Bahasa C.
Bahasa tingkat rendah cukup sulit dipelajari karena perintahnya tidak sama dengan bahasa manusia. Keistimewaan bahasa tingkat rendah adalah kecepatan yang paling tinggi ketika dijalankan dan kemampuan untuk mengakses hardware secara langsung. Untuk membuat program dalam bahasa rendah tidak diperlukan struktur program. Contoh bahasa pemograman tingkat rendah adalah bahasa mesin atau yang biasa disebut Bahasa Assembly.
Bahasa Pemrograman BASCOM-AVR
Menurut Agfianto, Bahasa BASCOM-AVR menggunakan bahasa pemrograman BASIC. Bahasa BASIC adalah bahasa pemrograman yang dapat dikatakan bahasa pemrograman berlevel tinggi. Bahasa pemrograman berlevel rendah berarti bahasa pemrograman yang berorientasi pada mesin, misalnya bahasa assembly. Sedangkan bahasa pemrograman berlevel tinggi merupakan bahasa pemrograman yang berorientasi pada manusia. Bahasa pemrograman berlevel rendah merupakan bahasa pemrograman dengan sandi yang hanya dimengerti oleh mesin, sehingga untuk memprogram dalam bahasa ini diperlukan tingkat kecermatan yang tinggi. Bahasa pemrograman berlevel tinggi relatif mudah digunakan, karena ditulis dengan bahasa manusia yang lebih mudah dimengerti dan tidak tergantung pada mesin.
Penulisan program dalam bahasa BASCOM-AVR ini tidak mengenal aturan penulisan di kolom tertentu. Jadi bisa dimulai dari kolom manapun. Namun demikian, untuk mempermudah dalam pembacaan program dan untuk keperluan dokumentasi, sebaiknya penulisan program dalam bahasa BASCOM-AVR ini diatur sedemikian rupa sehingga mudah dibaca.
1. Tipe Data
Tipe data merupakan bagian program yang penting karena tipe data mempengaruhi setiap instruksi yang akan dilaksanakan komputer. Pemilihan tipe data yang tepat akan membuat operasi data menjadi lebih efisien dan efektif.
Tabel 2.3 Tipe-tipe Data dalam BASCOM-AVR
2. Variabel
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variabel bisa berubah-ubah sesuai dengan kebutuhan. Nama dari suatu variabel mempunyai ketentuan sebagi berikut:
- Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.
- Tidak boleh mengandung karakter spasi. Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah (underscore). Yang termasuk simbol khusus yang tidak boleh digunakan adalah $ ? % # ! & * , ( ) - + = @ .
- Panjang sebuah nama variabel hanya 32 karakter.
Untuk dapat menggunakan variabel, maka variabel tersebut harus dideklarasikan terlebih dahulu pada program yang dibuat. Berikut ini merupakan cara mendeklarasikan variabel pada BASCOM-AVR.
DIM Nama_variabel AS Nama_tipe
Contoh:
dim x as integer : ‘Deklarasi x bertipe integer
dim a as long : ‘Deklarasi a bertipe long
3. Operasi-operasi dalam BASCOM-AVR
Bahasa pemrograman BASCOM-AVR ini dapat digunakan untuk menggabungkan, membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan menggunakan operator-operator yang tersedia di BASCOM-AVR.
- Operator Aritmatika
- Operator relasi
- Operator logika
- Operator fungsi
Operator ini adalah operator yang digunakan dalam perhitungan. Operator aritmatika meliputi + (tambah), - (kurang), / (bagi), dan * (kali).
Operator ini berfungsi membandingkan nilai sebuah angka. Hasilnya dapat digunakan untuk membuat keputusan yang sesuai dengan program yang kita buat. Operator relasi meliputi:
Tabel 2.4 Tabel Operasi Relasi
Operator logika digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi Boolean. Dalam BASCOM-AVR ada 4 buah operator logika, yaitu AND, OR, NOT, dan XOR.
Operator fungsi digunakan untuk melengkapi operator yang sederhana.
Gelombang Ultrasonik
Menurtu Subandi (2009:30) [30], Ditinjau dari arah rambat dan getarnya, gelombang bunyi termasuk dalam gelombang longitudinal, dimana arah rambatnya sama dengan arah getarnya. Karena untuk merambatnya gelombang bunyi selalu memerlukan zat antara (medium), maka selama merambatnya gelombang selalu disertai getaran zat antara yang dilaluinya. Yang dimaksud getaran zat antara ialah pergeseran atom-atom atau molekul-molekul zat dari kedudukan setimbangnya. Hal ini menyebabkan getaran tekanan, yaitu terbentuknya daerah yang tekanannya berbeda dengan daerah sekitarnya. Perubahan tekanan inilah yang dirambatkan sebagai gelombang bunyi. Keras lemahnya bunyi yang dihasilkan tergantung dari amplitudo yang dapat berupa perbedaan maksimum tekanan atmosfer.
Menurut Parmono dan Iswanto (2011:30)[31], Gelombang ultrasonik merupakan salah satu contoh dari gelombang longitudinal yang mana arah dari getaran pertikel medium paralel atau sejajar dengan arah rambat gelombang . Gelombang ini dapat merambat melalui beberapa medium dengan kecepatan yang bergantung pada sifat medium tersebut. Gelombang ultrasonik ini merupakan getaran partikel-partikel yang saling beradu satu sama lain akan tetapi partikel tersebut terkoordinasi menghasilkan suatu gelombang serta mentransmisikan energi. Peristiwa yang sebenarnya terjadi adalah proses “aliran energi” dari satu tempat ke tempat lainnya. Energi ini terjadi secara mekanik di dalam medium dalam bentuk regangan dan rapatan dari partikel. Partikel medium bergerak ketika gelombang akustik melewatinya, tapi pergerakan ini terlokalisasi tanpa adanya perpindahan masa.
![](https://lh5.googleusercontent.com/-lsuKinXH5lg/VJGZf4vfuGI/AAAAAAAAAGs/Ut0CvE3S-5U/w401-h186-no/Prototipe.png)
Gambar 2.6 Perambatan Ultrasonik
Kecepatan gelombang ultrasonik tidak dipengaruhi oleh frekuensinya, melainkan bergantung pada sifat medium yang dilewatinya. Panjang gelombang (λ) akan semakin pendek jika frekuensi (ƒ) semakin tinggi. Panjang gelombang adalah jarak tempuh gelombang dalam periode satu getaran, sedangkan frekuensi adalah banyaknya gelombang yang bergetar dalam waktu satu detik. Panjang gelombang berbanding lurus dengan kecepatan gelombang dan berbanding terbalik dengan frekuensi. Hubungan ini ditunjukkan oleh persamaan berikut:
v =λ. F
dimana v (m/s) adalah kecepatan gelombang ultrasonik dalam medium, λ (m) adalah panjang gelombang, dan ƒ (Hz) adalah frekuensi. Kecepatan gelombang ultrasonik di dalam medium diberikan dalam tabel berikut:
![](https://lh3.googleusercontent.com/-_l_pY-Jig80/VJGZ37Tip2I/AAAAAAAAAG0/K1zU-cDrzXU/w308-h530-no/Prototipe.png)
Tabel 2.5 Cepat Rambat Gelombang Ultrasonik Dalam Medium
Kecepatan gelombang ultrasonik bergantung pada temperatur dari medium tersebut. Untuk gelombang yang merambat melalui udara, hubungan antara kecepatan gelombang dan temperatur medium adalah:
![](https://lh5.googleusercontent.com/-oCEwFXr6-tg/VJUvJ5Us2XI/AAAAAAAAAJo/ym2lljjQJTE/w520-h167-no/2.2.png)
dimana 331 m/s adalah kecepatan ultrasonik di udara saat 0oC, dan TC merupakan temperatur udara dalam derajat Celcius. Menggunakan persamaan ini, pada saat temperatur 29oC cepat rambat gelombang ultrasonik di udara sekitar 348.14 m/s. Apabila gelombang ultrasonik mengenai permukaan antara dua medium yang memiliki perbedaan impedansi akustik (Z), maka sebagian dari gelombang ultrasonik ini akan direfleksikan/dipantulkan dan sebagian lagi akan ditransmisikan /diteruskan. Pulsa yang mengenai suatu batas medium yang memiliki impedansi akustik berbeda akan direfleksikan dan ditangkap oleh receiver untuk diolah menjadi sinyal.
![](https://lh3.googleusercontent.com/-n-Cc4CfFD_0/VJUvOvgDaUI/AAAAAAAAAIU/7pdL19oupJQ/w628-h335-no/Interaksi%2BGelombang%2BUltrasonik%2BDalam%2BMedium.png)
Gambar 2.7 Interaksi Gelombang Ultrasonik Dalam Medium
1. Ultrasonik Sebagai Pengukur Jarak
Menurut Subandi (2009:29-39) [30], Gelombang ultrasonik adalah gelombang mekanis yang mempunyai daerah frekuensi diatas kemampuan manusia atau diatas 20 Khz. Karena frekuensinya yang tinggi, gelombang ini lebih mudah diarahkan dari pada gelombang yang berada dibawah daerah frekuensinya. Gelombang ini biasa digunakan dalam aplikasi pengukuran jarak.
Prinsip kerja dari sensor ultrasonik adalah sebagai berikut:
- Sinyal dipancarkan oleh pemancar ultrasonik. Sinyal tersebut berfrekuensi diatas 20kHz, biasanya yang digunakan untuk mengukur jarak benda adalah 40kHz. Sinyal tersebut di bangkitkan oleh rangkaian pemancar ultrasonik.
- Sinyal yang dipancarkan tersebut kemudian akan merambat sebagai sinyal / gelombang bunyi dengan kecepatan bunyi yang berkisar 344 m/s. Sinyal tersebut kemudian akan dipantulkan dan akan diterima kembali oleh bagian penerima Ultrasonik.
- Setelah sinyal tersebut sampai di penerima ultrasonik, kemudian sinyal tersebut akan diproses untuk menghitung jaraknya.
![](https://lh4.googleusercontent.com/-s-v5aPl_v4M/VJUvNyxXVfI/AAAAAAAAAII/aN135kRvrts/w718-h173-no/Ilustrasi%2BCara%2BKerja%2BUltrasonik.png)
Gambar 2.8 Ilustrasi Cara Kerja Ultrasonik
Sensor Ultrasonik mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik (40 kHz) kemudian mendeteksi pantulannya. Gelombang ultrasonik ini melalui udara dengan kecepatan 344 meter per detik, mengenai obyek dan memantul kembali ke sensor.
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 sensor ke obyek dan kembali lagi, oleh karena itu jarak dapat diperoleh dengan persamaan.
Sesuai rumus fisika:
s = v.t
Namun waktu yang dihitung adalah waktu pergi dan waktu datang sehingga jarak yang ditempuh adalah dua kali. Jadi untuk menghitung jarak
![](https://lh5.googleusercontent.com/-Wo3tCjBoBSA/VJUvKxWXFdI/AAAAAAAAAHo/G7aXJ1ymfig/w107-h60-no/2.4.png)
Keterangan :
s = Jarak hasil pengukuran (meter )
v = Kecepatan gelombang suara di udara (meter / sekon)
t = Waktu antara gelombang dikirim dan diterima (sekon)
Komponen Elektronika dan Instrumensi
1. Sensor
Menurut subandi (2009:30) [30], Sensor berfungsi untuk menyediakan informasi umpan balik untuk mengendalikan program dengan cara mendeteksi keluaran. Sensor itu sendiri terdiri dari tranduser dengan atau tanpa penguat atau pengolah sinyal yang terbentuk dalam satu sistem pengindera. Dalam lingkungan sistem pengendali dan robotika, sensor memberikan kesamaan yang menyerupai mata, pendengaran, hidung, lidah yang kemudian akan diolah oleh kontroler sebagai otaknya. Sensor dibedakan menjadi dua, yakni sensor pasif dan sensor aktif. Sensor pasif adalah sensor yang dalam sistem kerjanya tidak dapat menghasilkan tegangan sendiri tetapi dapat menghasilkan perubahan nilai resistansi, kapasitansi, dan induktansi pada lingkungan sekelilingnya. Perubahan ini menyebabkan perubahan tegangan atau arus yang dihasilkan tranduser. Perubahan inilah yang dimanfaatkan untuk mengetahui keadaan yang diukur.
- Sensor Kedekatan (Proximity)
- Sensor Magnet
- Sensor Ultrasonik
- Sensor Efek-Hall
- Sensor Sinar
- Sensor Tekanan
- Sensor Suhu
- Thermocouple (T/C)
- Resistance Temperature Detector (RTD)
- Termistor
- IC Sensor
- Sensor Kecepatan (RPM)
- Sensor Penyandi (encoder)
- Penyandi rotari tambahan (yang mentransmisikan jumlah tertentu dari pulsa untuk masing-masing putaran) yang akan membangkitkan gelombang kotak pada objek yang diputar.
- Penyandi absolut (yang memperlengkapi kode binary tertentu untuk masing-masing posisi sudut) mempunyai cara kerja yang sama dengan perkecualian, lebih banyak atau lebih rapat pulsa gelombang kotak yang dihasilkan sehingga membentuk suatu pengkodean dalam susunan tertentu.
Sensor kedekatan (proximity), yaitu sensor atau saklar yang dapat mendeteksi adanya target (jenis logam) dengan adanya kontak fisik. Sensor jenis ini biasanya terdiri dari alat elektronis solid-state yang terbungkus rapat untuk melindunginya dari pengaruh getaran, cairan, kimiawi, dan korosif yang berlebihan. Sensor ini dapat diaplikasikan pada kondisi penginderaan pada objek yang dianggap terlalu kecil (lunak) untuk menggerakan suatu mekanis saklar. Prinsip kerjanya adalah dengan memperhatikan perubahan amplitudo suatu lingkungan medan frekuensi tinggi.
![](https://lh3.googleusercontent.com/-wnWELC30Zpw/VJUvMkisEdI/AAAAAAAAAJQ/p9maf_MQHXk/w422-h255-no/Contoh%2BSensor%2BProximity.png)
Gambar 2.9 Contoh Sensor Proximity
Sensor magnet juga disebut relai buluh, adalah alat yang akan terpengaruh medan magnet dan akan memberikan perubahan kondisi pada keluaran. Seperti layaknya saklar dua kondisi (on-off) yang digerakkan oleh adanya medan magnet disekitarnya. Biasanya sensor ini dikemas dalam bentuk kemasan yang hampa dan bebas dari debu, kelembapan, asap, ataupun uap.
![](https://lh6.googleusercontent.com/-ovjxuGGS0So/VJUvMT5FvfI/AAAAAAAAAJU/BsSBWOk5Bps/w555-h150-no/Contoh%2BSensor%2BMagnet.png)
Gambar 2.10 Contoh Sensor Magnet
Sensor ultrasonik adalah sensor yang bekerja berdasarkan prinsip pantulan gelombang suara, dimana sensor ini menghasilkan gelombang suara yang kemudian menangkapnya kembali dengan perbedaan waktu sebagai dasar penginderaannya. Perbedaan waktu antara gelombang suara dipancarkan dengan ditangkapnya kembali gelombang suara tersebut adalah berbanding lurus dengan jarak atau tinggi objek yang memantulkannya. Jenis objek yang dapat diindera diantarannya adalah: objek padat, cair, butiran, maupun tekstil.
Gambar 2.11 Contoh Sensor Ultrasonik
Sensor efek-hall, dirancang untuk merasakan adanya objek magnetis dengan perubahan posisinya. Perubahan medan magnet yang terus menerus menyebabkan timbulnya pulsa yang kemudian dapat ditentukan frekuensinya, sensor jenis ini biasa digunakan sebagai pengukur kecepatan.
![](https://lh3.googleusercontent.com/-8wY4Y6TYUbE/VJUvLia-u2I/AAAAAAAAAJY/mHBSLgqMgV8/w207-h236-no/Contoh%2BSensor%2BEfek-Hall.png)
Gambar 2.12 Contoh Sensor Efek-Hall
Sensor sinar terdiri dari 3 (tiga) kategori, antara lain:
A. Fotovoltaic atau sel solar adalah alat sensor sinar yang mengubah energi sinar langsung menjadi energi listrik, dengan adanya penyinaran cahaya akan menyebabkan pergerakan elektron dan menghasilkan tegangan.
B. Fotokonduktif (fotoresistif) yang akan memberikan perubahan tahanan (resistansi) pada sel-selnya, semakin tinggi intensitas cahaya yang diterima, maka akan semakin kecil pula nilai tahanannya.
C. Fotolistrik adalah sensor yang berprinsip kerja berdasarkan pantulan karena perubahan posisi/jarak suatu sumber sinar (inframerah atau laser) ataupun target pematulannya, yang terdiri dari pasangan sumber cahaya dan penerima.
Sensor tekanan adalah sensor yang memiliki transdesur yang mengukur ketegangan kawat, dimana mengubah tegangan mekanis menjadi sinyal listrik. Dasar penginderanya pada perubahan tahanan pengantar (transduser) yang berubah akibat perubahan panjang dan luas penampangnya.
![](https://lh3.googleusercontent.com/-cwxFq8ajtaM/VJUvNQppCfI/AAAAAAAAAJM/__aAPJNBnLg/w395-h265-no/Contoh%2BSensor%2BTekanan.png)
Gambar 2.13 Contoh Sensor Tekanan
ada 4 (empat) jenis utama sensor suhu yang biasa digunakan antara lain:
Thermocouple (T/C) pada pokoknya terdiri dari sepasang transduser panas dan dingin yang disambungkan/dilebur bersama, perbedaan yang timbul antara sambungan tersebut dengan sambungan referensi yang berfungsi sebagai pembanding.
Resistance temperature detector (RTD didasari pada tahanan listrik dari logam yang bervariasi sebanding dengan suhu.
Termistor adalah resistor yang peka terhadap panas yang biasanya mempunyai koefisien suhu negatif, karena saat suhu meningkat maka tahanan menurun atau sebaliknya. Jenis ini sangat peka dengan perubahan tahan 5% per C sehingga mampu mendeteksi perubahan suhu yang kecil.
Adalah sensor dengan rangkaian terpadu yang menggunakan chip silikon untuk kelemahan penginderanya. Mempunyai konfigurasi output tegangan dan arus yang sangat linear.
Gambar 2.14 Contoh Sensor Suhu
Yaitu sensor dimana proses penginderaan merupakan proses kebalikan dari suatu motor, dimana suatu poros (object) yang berrputar pada suatu generator akan menghasilkan suatu tegangan yang sebanding dengan kecepatan putaran object. Kecepatan putar sering pula diukur dengan menggunakan sensor yang mengindera pulsa magnetis (induksi) yang timbul saat medan magnetis terjadi.
digunakan untuk mengubah gerakan linear atau putaran menjadi sinyal digital, dimana sensor putaran memonitor gerakan putar dari suatu alat. Sensor ini biasanya terdiri dari 2 lapis jenis penyandi yaitu :
2. Transistor
Menurut Widodo (2010:48) [32] “Transistor bipolar biasanya digunakan sebagai saklar dan penguat pada rangkaian elektronika digital”. Transistor memiliki 3 terminal komponen semi konduktor pada satu terminal adalah berfungsi sebagai pembuka (open) atau rangkaian. Transistor biasanya lebih banyak dibuat dari jenis silikon ini dapat mengubah dari jenis N dan P. Tiga kaki yang berlainan membentuk transisotr bipolar adalah emitor,basis, dan kolektor. Mereka dapat dikombinasikan menjadi jenis N-P-N atai P-N-P yang menjadi satu sebagai tiga kaki transistor. Pada rangkaian elektronika, sinyal inputnya adalah 1 atau 0. Sinyal ini selalu dipakai pada basis transistor, yang mana kolektor dan emitor sebagai penghubung untuk pemutus (short) atau sebagai pembuka rangkaian.
![](https://lh6.googleusercontent.com/-Lb44cW6kJwg/VJUvRMgpZJI/AAAAAAAAAJA/nkP4Z_3FOf0/w681-h311-no/Susunan%2BKaki%2BTransistor%2Bdan%2BLambang%2BTransistor.png)
Gambar 2.15 Susunan Kaki Transistor dan Lambang Transistor
3. Dioda
Menurut widodo (2010:41) [32], dioda adalah komponen semikonduktor yang mengalirkan arus satu arah saja. Dioda terbuat dari germanium atau silikon yang lebih dikenal dengan dioda function. Sturktur dari dioda ini sesuai dengan namanya, adalah sambungan antara semikonduktor tipe P dan semikonduktor tipe N. semikonduktor tipe P berperan sebagai anoda dan semikondkutor tipe N berperan sebagai katoda. Dengan struktur ini arus hanya dapat mengalir dari sisi P ke sisi N.
Ada tiga kalimat kunci yang membedakan dioda dengan komponen lain:
- Memiliki dua terminal seperti halnya resistor.
- Arus yang mengalir tergantung pada beda potensial antara kedua terminal.
- Tidak mematuhi hukum OHM.
![](https://lh4.googleusercontent.com/-2969PFedSxA/VJUvLYBKnyI/AAAAAAAAAJc/Uldscnsqjo0/w709-h352-no/Bias%2Barus%2Bdioda.png)
Gambar 2.16 Bias arus dioda
4. Kapasitor
Menurut widodo (2010:35) [32], Kapasitor adalah komponen elektrik yang berfungsi menyimpan muatan listrik. Salah satu jenis kapasitor adalah kapasitor keping sejajar. Kapasitor ini terdiri atas dua buah keping metal sejajar yang dipisahkan oleh isolator yang disebut dielektrik. Bila kapasitor dihubungkan ke baterai, kapasitor terisi hingga beda potensial antara kedua terminalnya sama dengan tegangan baterai. Jika baterai dicabut, muatan-muatan listrik akan habis dalam waktu yang sangat lama, terkecuali bila sebuah konduktor dihubungkan pada kedua terminal kapasitor.
![](https://lh4.googleusercontent.com/-XA4ZqaZn1fk/VJUvO_1rw9I/AAAAAAAAAIc/t4Y8ub0cgt0/w358-h357-no/Kapasitor.png)
Gambar 2.17 Kapasitor
5. Resistor
Menurut widodo (2010:29) [32], resistor adalah komponen elektrik yang berfungsi memberikan hambatan terhadap aliran arus listrik. Dalam rangkaian listrik dibutuhkan resistor dengan spesifikasi tertentu, seperti besar hambatan, arus maksimum yang boleh dilewatikan dan karakteristik hambatan terhadap suhu dan panas. Pada skematik rangkaian, resistor disimbolkan sebagai garis zig-zag atau kotak dengan gaaris dikanan dan kirinya, sedangkan bentuk resistor yang umum adalah silinder tabung dengan dua kaki tembaga dikiri dan kanan.
Gambar 2.18 Resistor
Pada badannya terdapat lingkaran membentuk gelang kode warna untuk mengenali besar resistansi, kode warna tersebut ditetapkan oleh standar manufaktur yang dikeluarkan oleh EIA (Electronic industries association) seperti yang ditunjukan pada tabel dibawah ini:
Tabel 2.6 Kode Warna Pada Resistor
6. Osilator
Menurut widodo (2010:28) [32], Osilator atau kristal merupakan pembangkit clock internal yang menentukan rentetan kondisi-kondisi (state) yang membentuk sebuah siklus mesin mikrokontroler. Siklus mesin tersebut diberi nomor S1 hingga S6, masing-masing kondisi panjangnya 2 periode osilator, dengan demikian satu siklus mesin paling lama dikerjakan dalam 12 periode osilator.
Osilator juga digunakan untuk mengetahui kecepatan percepatan dari baudrate, dimana untuk mode 0 adalah 1/12 frekuensi osilator dan mode 2 adalah 1/64 frekuensi osilator.
Gambar 2.19 Osilator
Konsep Dasar Literature Review
1. Definisi Literature Review
Menurut Hasibuan [33], Literature review berisi uraian tentang teori, temuan dan bahan penelitian lain yang diperoleh dari bahan acuan untuk dijadikan landasan kegiatan penelitian. Uraian dalam literature review ini diarahkan untuk menyusun kerangka pemikiran yang jelas tentang pemecahan masalah yang sudah diuraikan dalam sebelumnya pada perumusan masalah. Literature review berisi ulasan, rangkuman, dan pemikiran penulis tentang beberapa sumber pustaka (dapat berupa artikel, buku, slide, informasi dari internet, dan lain-lain) tentang topik yang dibahas, dan biasanya ditempatkan pada bab awal. Hasil-hasil penelitian yang dilakukan oleh peneliti lain dapat juga dimasukkan sebagai pembanding dari hasil penelitian yang akan dicobakan disini. Semua pernyataan dan/atau hasil penelitian yang bukan berasal dari penulis harus disebutkan sumbernya, dan tatacara mengacu sumber pustaka mengikuti kaidah yang ditetapkan. Suatu literature review yang baik haruslah bersifat relevan, mutakhir (tiga tahun terakhir), dan memadai.
Fokus utama suatu tinjauan pustaka atau literature review dalam suatu penelitian adalah mengetahui apakah peneliti lain telah menemukan jawaban untuk pertanyaan-pertanyaan penelitian tersebut dalam berbagai pustaka atau laporan hasil penelitian yang paling aktual, maka kita tidak perlu melakukan penelitian yang sama. [34]
Metode Literature Review ini dilakukan untuk menunjang metode observasi yang telah dilakukan. Pengumpulan informasi yang dibutuhkan dalam mencari referensi-referensi yang berhubungan dengan penelitian yang dilakukan.
2. Kajian Literature Review
Dalam melakukan kajian literature review ini, langkah-langkah yang harus dilakukan sebagai berikut :[34]
Mengidentifikasikan kesenjangan (identify gaps) dari penelitian ini.
Menghindari membuat ulang (reinventing the wheel) sehingga banyak menghemat waktu dan juga menghindari kesalahan- kesalahan yang pernah dilakukan oleh orang lain.
Mengidentifikasikan metode yang pernah dilakukan dan yang relevan terhadap penelitian ini.
Meneruskan capaian penelitian sebelumnya sehingga dengan adanya studi pustaka ini, penelitian yang akan dilakukan dapat dibangun di atas platform pengetahuan atau ide yang sudah ada.
Untuk mengetahui orang lain yang spesialis dan mengerjakan di area penelitian yang sama, sehingga dapat terjaring dalam komunitas yang dapat memberi kontribusi sumber daya yang berharga.
Study Pustaka (Literature Review)
Banyak penelitian yang sebelumnya dilakukan mengenai deteksi jarak benda berbasis mikrokontroler. Dalam upaya mengembangkan dan menyempurnakan deteksi jarak benda berbasis mikrokontroler ini perlu dilakukan studi pustaka (literature review) sebagai salah satu dari penerapan metode penelitian yang akan dilakukan. Manfaat dari studi pustaka (Literature Review) ini antara lain :
1. Penelitian dalam sebuah jurnal yang telah dilakukan oleh Ferry Sudarto, M.Firman dan Sugeng Adi Atma (2013) [35] yang berjudul “Tongkat Ultrasonik untuk Tunanetra sebagai Deteksi Jarak Benda dengan Output Suara” ini diusulkan untuk merancang tongkat ultrasonik untuk tunanetra dengan menggunakan teknologi berbasis mikrokontroler yang dapat mendeteksi keberadaan suatu objek. Untuk bisa mendeteksi jarak benda, tongkat ultrasonik dilengkapi oleh berbagai modul diantaranya adalah sensor Ultrasonik D-Sonar untuk mengukur jarak pengguna dengan benda didepannya, mikrokontroler AT89S51 sebagai memori program, dan ISD 2590 sebagai perekam suara untuk output. Gelombang ultrasonik ini akan dipancarkan dan sinyal yang mengenai suatu objek sebagian akan dipantulkan kembali. Sinyal pantul akan diterima oleh suatu penerima untuk kemudian diolah oleh mikrokontroler. Mikrokontroler akan mengontrol dan mengolahnya, sehingga dapat dihasilkan suatu output berupa suara. Dan sebagai pencatu tegangan untuk semua rangkaian digunakan battery.
2. Penelitian dalam sebuah jurnal yang telah dilakukan oleh Titik Muji Rahayu (2010) [36] yang berjudul “Perancangan Dan Pembuatan Penunjuk Arah Serta Deteksi Jarak Benda Untuk Tunanetra Dengan Output Suara Berbasis Mikrokontroler” ini diusulkan untuk merancang dan membuat alat penunjuk arah serta mendeteksi jarak benda untuk penderita tunanetra dengan menggunakan output suara berbasis mikrokontroler. Perancangan alat ini memanfaatkan teori tentang mata angin dan kecepatan gelombang bunyi di udara. 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%.
3. Penelitian dalam sebuah jurnal yang telah dilakukan oleh Dita Ditafrihil Fuadah dan Mada Sanjaya WS.Ph.D. (2013) [37] yang berjudul “Monitoring dan Kontrol Level Ketinggian Air dengan Sensor Ultrasonik Berbasis Arduino” Sensor ultrasonik adalah sensor pengukur jarak dengan menggunakan gelombang ultrasonik. Sensor HY-SRF05 merupakan sensor ultrasonik yang mampu mengukur jarak dari 2 cm sampai 450 cm. Keluaran sensor ini memungkinkan membaca perubahan jarak pada ketinggian air menggunakan gelombang ultrasonik berbasis Arduino Uno dan dengan interfacing pada Matlab. Pengujian menggunakan bejana bulat denga ketinggian 10 cm.
BAB III
Analisa Organisasi
Gambaran Umum RSIA Keluarga Kita
Rumah Sakit adalah fasilitas pelayanan kesehatan yang menyelenggarakan pelayanan kesehatan perorangan yang menyediakan pelayanan medis dasar dan/atau spesialistik, diselenggarakan oleh lebih dari satu jenis tenaga kesehatan (perawat dan atau bidan) dan dipimpin oleh seorang tenaga medis (dokter umum, dokter spesialis, dokter gigi dan dokter anak).
Sejarah Singkat RSIA Keluarga Kita
![](http://www.keluargakita.co.id/wp-content/uploads/2012/07/rsiakk.png)
Gambar 3.1 RSIA. Keluarga Kita
RSIA “Keluarga Kita” yang bernaung PT. Cipta Kesehatan Mandiri, dikelola oleh tim ahli yang menerapkan sistem manajemen modern dan ditunjang oleh fasilitas lengkap serta modern dengan memberikan layanan kesehatan berkualitas serta memberikan solusi yang tepat untuk menyelesaikan permasalahan kesehatan di masyarakat, khususnya di bidang kesehatan ibu dan anak.
Berlokasi di titik tengah Jalan Raya Curug tepatnya di Kelurahan Sukabakti, Curug, Tangerang, Banten. Dimana Kecamatan Curug diproyeksi menjadi pusat perkotaan dan perdagangan. Dihimpit oleh 2 perumahan terbesar yaitu : Lippo Village dan Citra Raya. Sehingga dapat dijadikan pilihan Rumah Sakit Ibu dan Anak yang tepat khususnya wilayah Curug dan sekitarnya.
Berdiri pada tahun 2010 dengan menempati luas lahan 3346 m2 dengan luas bangunan 2742 m2, RSIA “Keluarga Kita” dibangun dengan konsep ramah lingkungan, pencahayaan dan ventilasi ruangan yang baik, lahan parkir yang memadai serta di desain untuk memberikan pelayanan kesehatan yang optimal.
Visi, Misi, dan Tujuan Perguruan Tinggi Raharja
1. Visi RSIA Keluarga Kita
Dengan konsep pendekatan keluarga RSIA “Keluarga Kita” di Kecamatan Curug, diharapkan dapat menjadi sarana pelayanan yang terpadu, terpercaya dan terjangkau.
2. Misi RSIA Keluarga Kita
- Menyediakan tenaga kesehatan yang terampil dan berintegritas.
- Menyediakan sarana prasarana yang memadai, efisien dan efektif.
- Menjalin kemitraan strategis dengan institusi kesehatan lainnya (sistem rujukan).
- Menyiapkan tenaga managemen profesional dan sistem informasi (IT) untuk menjamin terlaksananya sistem pelayanan yang komprehensif dan nyaman.
- Koordinasi dan kerjasama secara efektif dengan pemerintah.
2. Tujuan RSIA Keluarga Kita
- Terwujudnya pelayanan memuaskan dengan sistem terpadu yang berkomputerisasi, konsep ramah lingkungan, pencahayaan dan ventilasi yang baik untuk memberikan pelayanan kesehatan yang optimal.
- Menghasilkan lulusan yang mampu mengadakan penelitian dalam bidang informatika dan komputer, yang hasilnya dapat diimplementasikan untuk memenuhi kebutuhan masyarakat di lapangan.
- Dengan konsep pendekatan keluarga, diharapkan dapat menjadi sarana pelayanan kesehatan yang terpadu, terpercaya dan terjangkau.
Struktur Organisasi
Agar setiap perusahaan dapat menjalankan usahanya dengan baik dan aktivitas operasional perusahaan tersebut dapat berjalan dengan lancar maka dibentuklah struktur organisasi yang jelas dan sistematis. Struktur organisasi sangat diperlukan dalam aktivitas perusahaan, hal tersebut dimaksudkan agar setiap karyawan mengetahui dengan pasti apa saja yang menjadi tugas, wewenangnya masing-masing dan kepada siapa karyawan tersebut harus mempertanggung-jawab kan hasil pekerjaannya.
![](https://lh5.googleusercontent.com/-Xj5onlH72Qs/VJpYfJbJFOI/AAAAAAAAAKw/OkJQMA8maSs/w783-h554-no/Struktur%2BOrganisasi.png)
Gambar 3.2 Struktur Organisasi RSIA Keluarga Kita
Keterangan :
_________ : Garis Komando / Tugas
Wewenang dan Tanggung Jawab
Pembagian tugas masing-masing bagian dalam susunan organisasi RSIA Keluarga Kita terdiri dari :
1) Direktur Utama
Mempunyai tugas melaksanakan kegiatan, pengendalian, terhadap pengelolaan dan pelaksanaan operasioanal rumah sakit, serta mutu menejemen pada:
a. Manager Medik.
b. Manager Marketing.
c. Manager HRD dan Umum.
d. Manager Akuntansi dan Keuangan.
Tanggung jawab:
Memimpin penyelenggaraan pendidikan, penelitian, pengabdian kepada masyarakat, membina tenaga pendidikan, mahasiswa, tenaga administrasi dan administrasi IK Raharja hubungannya dengan lingkungan.
2) Manager Medik
Mempunyai tugas mengelola dan membina penunjang medik pada :
a. Supv. YanMed.
b. Supv. Keperawatan & Dutty Officer.
c. Supv. JangMed.
d. Supv. RM.
3) Manager Marketing
Mempunyai tugas mengelola dan membina pemasaran serta pelayanan pada :
a. Marketing Eksternal.
b. Customer Service.
c. Admin Marketing.
4) Manager HRD dan Umum
Mempunyai tugas mengelola dan membina kesejahteraan karyawan pada :
a. Bagian Sumber Daya Manusia.
b. Bagian Umum.
5) Manager Akuntansi dan Keuangan
Mempunyai tugas mengelola dan membina administrasi umum dan keuangan pada :
a. Bagian Akuntasi
b. Bagian Keuangan.
c. Bagian Purchasing.
d. Bagian Logistik
6) Komite Medik
Mempunyai tugas pokok melaksanakan kegiatan penyusunan standar mutu pelayanan medis, penegakan kode etik medik dan melaksanakan audit mutu pelayanan medik.
7) Sekretaris.
Mempunyai tugas mengurus warkat, menyusun korespondensi dan pekerjaan tulis-menulis lainnya.
8) Divisi IT.
Mempunyai tugas memberikan layanan teknologi informasi berbasis Website, dan memberikan kemudahan bagi user dalam mencari informasi terkait RSIA Keluarga Kita secara online, serta menjamin sistem pelayanan yang komprehensif dan nyaman.
Blok Diagram Rangkaian Sistem
Penelitian terdiri dari perancangan alat, realisasi sistem, dan pengujian. Secara prinsip alat memanfaatkan mikrokontroler ATmega328 sebagai pengendali alat, dapat dipisahkan menjadi beberapa bagian yaitu: rangkaian catu daya battery sebagai pensuplay tegangan ke seluruh rangkaian alat, rangkaian input berupa sensor ultrasonik. Rangkaian kontrol utama berupa mikrokontroler ATmega328, dan rangkaian output berupa voice module dan switch untuk menghidupkan dan mematikan alat. Untuk lebih jelasnya dapat dilihat pada diagram blok rangkaian ditunjukan pada gambar 3.3.
![](https://lh6.googleusercontent.com/-iuHReByDlic/VKJreKae9tI/AAAAAAAAAPg/cVtCFRVA-Ls/w532-h589-no/Diagram%2BBlok1.png)
Gambar 3.3 Diagram Blok
- Rangkaian catu daya battery berfungsi untuk mengubah tegangan 12 volt battery menjadi 5 volt, serta berfungsi untuk mensuplay tegangan ke seluruh rangkaian alat.
- Rangkaian mikrokontroler berfungsi mengolah dan mengontrol hasil pembacaan yang diterima dari sensor ultrasonik, sehingga dapat dihasilkan suatu informasi tentang keberadaan obyek sekaligus mengukur jarak antara obyek dengan alat.
- Rangkaian sensor ultrasonik berfungsi 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.
- Voice Module berfungsi sebagai piranti perekam dan pemutar kembali suara dalam bentuk single chip (chip tunggal).
Perancangan Perangkat Keras (Hardware)
Perancangan hardware adalah penentuan rangkaian yang akan digunakan dalam alat pemanfaatan mikrokontroler ATmega328 untuk mengukur tinggi badan dengan output suara.
Rangkaian Catu Daya
Rangkaian ini berfungsi untuk mensuplay tegangan keseluruh rangkaian yang ada. rangkaian catu daya yang dibuat mempunyai keluaran 5 volt digunakan untuk mensuplay tegangan ke seluruh rangkaian. rangkaian catu daya ditunjukan pada gambar 3.4.
Gambar 3.4 Rangkaian Catu Daya Battery
Keterangan:
- Tegangan masuk sebesar 9V didapat dari sumber tegangan baterai kotak.
- SW1, digunakan sebagai pemutus dan penghubung sumber catu daya untuk semua rangkaian.
- D1, digunakan untuk memastikan pemasangan baterai tidak terbalik dan tidak membuat short rangkaian. Jika menggunakan arus AC komponen ini dapat digunakan sebagai penyearah setengah gelombang (Half wave), tipe dioda yang digunakan adalah 1N4002.
- C1, merupakan komponen elektrolit capasitor (Elco) yang berfungsi sebagai perata ripple tegangan awal sebelum masuk pada komponen penurun tegangan atau lebih dikenal dengan IC regulator adapun nilai yang digunakan adalah sebesar 100uF/16V.
- IC 1, digunakan menurunkan tegangan menjadi +5V yang digunakan sebagai tegangan kerja komponen mikrokontroler dan modul suara.
- C2, digunakan sama seperti pada komponen C1 akan tetapi bentuk kapasitor yang digunakan berbeda yaitu menggunakan nilai 100nF.
- R1, digunakan sebagai penurun tegangan, besar nilai tahanan yang digunakan disesuaikan dengan tegangan kerja dari komponen LED (D2) dengan nilai tahanan yang digunakan pada rangkaian ini adalah sebesar 220 ohm.
- D2, merupakan jenis dioda yang dapat memancarkan cahaya atau yang lebih dikenal dengan istilah LED digunakan sebagai indikator adanya tegangan yang keluar dari IC regulator ukuran LED yang digunakan adalah dengan diameter 3mm.
- Tegangan pada Vout adalah sebesar +5V DC yang siap untuk didistribusikan pada masing-masing rangkaian.
Rangkaian Sensor Ultrasonik
Rangkaian Sensor Ultrasonik
Sensor ultrasonik adalah sebuah piranti yang didesain untuk dapat mentransmisikan gelombang ultrasonik dan menghasilkan pulsa keluaran yang sesuai dengan waktu tempuh untuk pemancaran dan pemantulan gelombang. Dengan menghitung waktu tempuh dari pulsa maka jarak sensor dengan target dapat dengan mudah dihitung, proses pengukuran jarak dilakukan hanya dengan memberikan Trigger dan mendeteksi lebar pulsa Echo seperti pada modul sensor 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 sensor ultrasonik ke obyek dan kembali lagi. Sensor ultrasonik bekerja dengan menggunakan tegangan sumber sebesar 5 volt dc, sensor objek ditunjukan pada gambar 3.5.
Gambar 3.5 Rangkaian Sensor Objek
Keterangan:
- VCC, merupakan masukan untuk tegangan kerja sensor tersebut sebesar +5V.
- GND, dihubungkan dengan kutub negatif atau ground pada rangkaian.
- OUT, sebagai keluaran yang dihubungkan pada pin PD.2 mikrokontroler ATmega8 yang akan memberikan logika high (1) dan Low (0) pada mikrokontroler untuk mendeteksi adanya objek, sensor ultrasonik bekerja dengan mentransmisikan gelombang ultrasonik dan menghasilkan pulsa keluaran yang sesuai dengan waktu tempuh untuk pemancaran dan pemantulan gelombang. Dengan menghitung waktu tempuh dari pulsa maka jarak dengan objek dapat dihitung.
Rangkaian Minimum Mikrokontroler
Konfigurasi PIN ATmega328
![](https://lh6.googleusercontent.com/-fH-kriOquhY/VJGYmHiMSvI/AAAAAAAAAGU/Luuq6rITsdM/w323-h429-no/Prototipe.png)
Gambar 3.6 Susunan PIN ATmega328
Sumber: Jurnal Syahid tahun 2012 halaman 34
Berikut ini adalah susunan pin/kaki dari ATmega328:
- VCC adalah merupakan pin masukan positip catu daya.
- GND sebagai pin Ground.
- PORT B (B.0-B.5) merupakan pin I/O dua arah dan pin fungsi khusus yaitu Timer/Counter, dan SPI.
- PORT C (C.0-C.6) merupakan pin I/O dua arah dan dapat diprogram sebagai pin ADC.
- PORT D (D.0-D.4) merupakan pin I/O dua arah dan pin fungsi khusus yaitu interupsi eksternal dan komunikasi serial.
- Reset merupakan pin yang digunakan untuk me-reset mikrokontroler.
- XTAL1 dan XTAL2 sebagai pin masukan clock eksternal. Suatu mikrokontroler membutuhkan sumber detak (clock) agar dapat mengeksekusi instruksi yang ada di memori. Semakin tinggi kristalnya, semakin cepat kerja mikrokontroller tersebut.
- AVCC sebagai pin suplai tegangan untuk ADC.
- AREF sebagi pin masukan tegangan referensi untuk ADC.
![](https://lh6.googleusercontent.com/-xVJg05yPh8M/VJqSgmN7pXI/AAAAAAAAANo/GmgZgMJoQCI/w489-h466-no/Rangkaian%2BMinimum%2BMikrokontroler%2BATmega328.png)
Gambar 3.7 Rangkaian Minimum Mikrokontroler ATmega328
Keterangan:
- Pin 2 (RXD), merupakan jalur untuk melakukan proses penerimaan data pada komunikasi serial.
- Pin 3 (TXD), merupakan jalur untuk melakukan proses pengiriman data pada komunikasi serial. Pada sistem ini digunakan untuk mengirimkan perintah berupa string ke rangkaian voice module untuk menjalankan voice yang sesuai.
- Pin 1 (RESET), digunakan untuk proses reset program, yaitu mengembalikan program pada kondisi awal atau baris perintah program seperti pertama kali sistem berjalan.
- Pin 9 (XTAL1), merupakan pin masukan untuk sumber clock eksternal pada rangkaian mikrokontroler sehingga mikrokontroler akan bekerja dengan kecepatan sesuai dengan nilai dari crystal dan konfigurasi nilai clock pada program.
- Pin 10 (XTAL2), merupakan keluaran clock yang dapat digunakan untuk sumber clock rangkaian lain yang di rangkai secara serial.
- Pin 8 dan 22, merupakan ground pada rangkaian mikrokontroler yang terhubung langsung dengan rangkaian ground catu daya.
- Pin 7 (VCC), 20 (AVCC), 21 (AREF), merupakan pin yang masing-masing pin dihubungkan secara bersamaan pada tegangan +5V pada rangkaian catu daya. Ini dilakukan jika pin input analog pada mikrokontroler ATmega8 tidak di fungsikan sebagai Analog to Digital Converter, sedangkan jika pin analog akan digunakan sebagai ADC maka pin 20 dihubungkan pada tegangan +5V melalui lilitan dengan nilai 100uH agar tegangan yang digunakan tidak terpengaruh oleh fluktuatif tegangan kerja pada mikrokontroler. Sedangkan pada pin 21 dihubungkan dengan komponen variabel resistor atau trimpot untuk melakukan pengaturan tegangan referensi yang sesuai dengan kebutuhan dalam aplikasinya.
- Pin 4 (INT0), merupakan pin yang dihubungkan dengan rangkaian sensor ultrasonik, yang difungsikan sebagai sensor pendeteksi jarak objek yang berada tepat didepan sensor tersebut. pada pin ini merupakan pin yang digunakan sebagai sumber interupsi eksternal pertama pada mikrokontroler Atmega328.
Rangkaian Voice Module
Rangkaian ini berfungsi untuk mensuplay tegangan keseluruh rangkaian yang ada. rangkaian catu daya yang dibuat mempunyai keluaran 5 volt digunakan untuk mensuplay tegangan ke seluruh rangkaian. rangkaian catu daya ditunjukan pada gambar 3.7. Secara keseluruhan pada voice module ini hanya terdapat dua buah komunikasi data secara serial dengan perangkat mikrokontroler. Module ini akan mengeluarkan suara sesuai dengan string yang diterima dari rangkaian mikrokontroler yang terhubung secara serial serta file suara yang tersimpan dalam memori SD card disesuaikan dengan kebutuhan pada aplikasi yang dibuat. Adapun format untuk perangkat SD card yang digunakan adalah menggunakan FAT16 serta format suara yang tersimpan pada memori SD card tersebut dalam bentuk file WAV dan dengan masing-masing pada nama file diinisialisasikan dengan urutan sesuai abjad.
Gambar 3.8 Rangkaian Voice Module
Keterangan:
- Pin (RXD), merupakan jalur untuk melakukan proses penerimaan data pada komunikasi serial.
- Pin (TXD), merupakan jalur untuk melakukan proses pengiriman data pada komunikasi serial. Pada sistem ini digunakan untuk mengirimkan perintah berupa string ke rangkaian voice module untuk menjalankan voice yang sesuai.
Perancangan Perangkat Lunak (Software)
Pada bagian perancangan perangkat lunak ini, ada beberapa langkah-langkah yang harus dilakukan untuk menghasilkan listing program yang diinginkan sesuai dengan perancangan perangkat keras.
Penulisan Listing Program
Pada perancangan perangkat lunak yaitu menggunakan program BASCOM AVR yang digunakan untuk menuliskan listing program dan mengkompilasi menjadi file heksa. File heksa yang dihasilkan setelah proses kompilasi tersebut akan dimasukkan kedalam mikrokontroler, sehingga mikrokontroler akan bekerja sesuai dengan perintah yang ada pada memori flash, yang digunakan untuk mengendalikan input dan output dari mikrokontroler ATmega328 untuk mengukur tinggi badan dengan output suara, adapun tampilan layar program BASCOM AVR adalah pada gambar 3.10.
![](https://lh5.googleusercontent.com/-I37GUPQmRhc/VJqOBfnDZpI/AAAAAAAAAMs/9qFqbHe5aXE/w1044-h587-no/Tampilan%2BLayar%2BProgram%2BBASCOM%2BAVR.png)
Gambar 3.10 Tampilan Layar Program BASCOM AVR
Setelah form utama program BASCOM AVR ditampilkan, maka langkah selanjutnya adalah memilih chip dan menuliskan listing program, penulisan listing program dilakukan sama seperti melakukan penulisan dengan menggunakan program standar teks editor yang sudah ada pada microsoft windows, seperti: notepad, microsoft word dan program teks editor lainnya. Hal yang harus diperhatikan dalam melakukan penulisan listing program adalah mengetahui mnemonic dan susunan dari struktur perintah bahasa Basic untuk mikrokontroler keluarga AVR. Mikrokontroler ATmega328 merupakan mikrokontroler yang mempunyai kesamaan dari mnemonic yang digunakan oleh mikroprosesor AVR.
Cara penulisan listing program basic dapat dilihat pada gambar 3.11 yang menunjukan bagaimana format penulisan bahasa basic menggunakan program aplikasi BASCOM AVR.
![](https://lh3.googleusercontent.com/-mnR8MyPNnFE/VJqN9TtvkaI/AAAAAAAAAME/2mlGCnsj_98/w1044-h587-no/Penulisan%2BListing%2BProgram%2BBasic.png)
Gambar 3.11 Penulisan Listing Program Basic
Langkah selanjutnya adalah menyimpan listing program yang sudah dibuat dengan nama file. BAS dalam penelitian ini akan diberikan nama PengukurTinggiBadan, penyimpanan listing program yang telah dibuat kemudian disimpan pada folder yang sudah ditentukan, dengan memberikan ekstensi pada file yang kita buat dengan BAS agar file yang sudah tersimpan tidak lagi terbaca oleh komputer sebagai teks biasa, melainkan sebagai Basic.
![](https://lh4.googleusercontent.com/-nRcsyIXHRI0/VJqN_RSSumI/AAAAAAAAAMU/5oO1Wo-8Pj8/w1044-h587-no/Penyimpanan%2BFile%2BBAS.png)
Gambar 3.12 Penyimpanan File BAS
Setelah melakukan penyimpanan file, maka langkah selanjutnya adalah melakukan kompilasi file BAS menjadi file Heksa. Sehingga setelah melakukan proses ini, akan ada 7 buah file yang ada pada folder yang sebelumnya untuk menyimpan file BAS. Tampilan dari proses kompilasi ini dapat dilihat pada gambar 3.13.
![](https://lh5.googleusercontent.com/-F2Po_QNGRAA/VJqN_ZXnxMI/AAAAAAAAAMY/-BpZ4larHp0/w1044-h587-no/Proses%2BKompilasi%2BFile%2BBAS.png)
Gambar 3.13 Proses Kompilasi File BAS
Dari hasil proses diatas akan menghasilkan enam buah file yaitu: PengukurTinggiBadan.bas, PengukurTinggiBadan.BM, PengukurTinggiBadan.dbg, PengukurTinggiBadan.obj, PengukurTinggiBadan.rpt, PengukurTinggiBadan.bin, PengukurTinggiBadan.hex. File heksa inilah yang akan dimasukkan kedalam mikrokontroler ATmega328 menggunakan isp flash programmer.
Pengisian Program IC ATmega328
Mikrokontroler bisa bekerja jika didalamnya sudah dimasukkan listing program yang sudah dibuat dengan menggunakan program aplikasi BASCOM AVR. Untuk melakukan proses pengisian menggunakan perangkat keras dan perangkat lunak, untuk rangkaian perangkat keras yang digunakan untuk memasukkan program heksa kedalam mikrokontroler.
Dengan menggunakan kabel isp flash programmer, maka file heksa yang sudah dibuat dapat langsung dimasukkan kedalam mikrokontroler ATmega328 dengan menggunakan perangkat lunak yang dikeluarkan oleh perusahaan atmel yang tidak lain adalah pembuat mikrokontroler tersebut dan bisa didapatkan dengan gratis. Langkah langkah yang terpenting dalam memasukkan listing program heksa kedalam mikrokontroler ATmega328 adalah sebagai berikut:
- Langkah pertama, adalah menjalankan program aplikasi progisp versi 1.72. Untuk tampilan layar utama perangkat lunak progisp versi 1.72 adalah seperti gambar 3.14 berikut:
- Langkah kedua, program progisp akan menampilkan isi memori dari mikrokontroler ATmega328 yang sudah melalui proses pembacaan isi mikrokontroler tersebut. Jika tidak ada program didalam mikrokontroler, maka akan ditampilkan dengan nilai FFFF pada setiap larik memori flash mikrokontroler. Dan jika didalam mikrokontroler tersebut sudah terdapat program heksa, akan ditampilkan dengan data yang berbeda-beda. Untuk lebih jelas mengenai isi dari buffer memori flash mikrokontroler adalah pada gambar 3.16 berikut:
- Langkah ketiga, pada langkah ini adalah melakukan pengisian memori buffer yang ditampilkan pada bagian layar, yang kemudian dimasukkan kedalam mikrokontroler ATmega328.
![](https://lh6.googleusercontent.com/--U35yL_lFvU/VJqwAyMRAtI/AAAAAAAAAOs/1ZDq3sxLLP8/w648-h541-no/Tampilan%2BUtama%2BProgisp.png)
Gambar 3.14 Tampilan Utama Progisp
Pada tampilan gambar diatas, ditunjukan langkah selanjutnya untuk menentukan jenis mikrokontroler yang akan dimasukkan listing program, pada bagian ini akan dipilih dengan jenis mikrokontroler ATmega328. Adapun tampilan layar dari form dialog pemilihan mikrokontroler yang dipilih dapat dilihat pada gambar 3.15.
![](https://lh5.googleusercontent.com/-QjMnmA_MUoU/VJqwAhUinII/AAAAAAAAAOo/34FyAGLxKQI/w650-h543-no/Pemilihan%2BJenis%2BMikrokontroler.png)
Gambar 3.15 Pemilihan Jenis Mikrokontroler
![](https://lh5.googleusercontent.com/-QTL_pvlsaNE/VJqwAukA1XI/AAAAAAAAAOw/xjp6CJJngPg/w649-h543-no/Tampilan%2BBuffer%2BMemori%2BFlash.png)
Gambar 3.16 Tampilan Buffer Memori Flash
Untuk melakukan pengambilan file PengukurTinggiBadan.Hex yang sudah tersimpan pada folder yang sudah ditentukan adalah dengan membuka menu file -> load flash kemudian akan ditampilkan form dialog pencarian file, pilihlah file PengukurTinggiBadan.Hex yang sudah tersimpan tersebut kemudian klik tombol open.
![](https://lh6.googleusercontent.com/-honDOibNrsw/VLDxfS-8J1I/AAAAAAAAAVw/4i0vqwwISs4/w648-h542-no/LoadFlashOpen.png)
Gambar 3.17 Load Flash File
Pada tampilan pemrogaman mikrokontroler ATmega328 diatas, mengambil file hexa yang telah tersimpan pada folder yang sebelumnya telah dilakukan proses kompilasi program.
![](https://lh5.googleusercontent.com/-Zj-uHCkhfo8/VLDxXUGGwcI/AAAAAAAAAVY/IPMm8utE88M/w648-h543-no/ChipEraseSuccesfully.png)
Gambar 3.18 Erasing Chip
Program aplikasi progisp pertama kali akan melakukan penghapusan program yang sudah ada didalam mikrokontroler.
![](https://lh6.googleusercontent.com/-tdmMovVnEDQ/VLDxcRo8VBI/AAAAAAAAAVo/mOPHkY0Ep80/w648-h542-no/FlashWrittenSuccesfully.png)
Gambar 3.19 Write Flash
Kemudian melakukan proses memasukkan isi buffer kedalam mikrokontroler sampai tidak ada lagi isi buffer yang tersisa.
![](https://lh3.googleusercontent.com/-fdHC5ztQ800/VLDxZ1q_1GI/AAAAAAAAAVg/jvwWw4-9RJc/w648-h542-no/FlashVerifySuccesfully.png)
Gambar 3.20 Verify Flash
Langkah terakhir adalah melakukan proses perbandingan atau verifying. Informasi yang dihasilkan dari proses perbandingan ini adalah berupa tampilan isi buffer dengan isi mikrokontroler tersebut. Tetapi jika isi dari buffer dan mikrokontroler sesuai maka akan ditampilkan kotak pesan bahwa proses perbandingan sudah sukses atau tidak diketemukan ketidak sesuaian. Jika proses ini sudah selesai maka untuk proses pengisian file heksa kedalam mikrokontroler ATmega328 sudah selesai dan mikrokontroler sudah siap untuk digunakan.
Diagram Alir (Fowchart)
Tujuan utama penggunaan flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurai rapi dan jelas dengan menggunakan simbol-simbol yang standar. Tahap peneyelesaian masalah yang disajikan harus jelas, sederhana efektif dan tepat. Dalam penulisan flowchart dikenal dua model, yaitu sistem flowchart dan program flowchart.
- Sistem flowchart
- Program flowchart
Sistem flowchart merupakan diagram alir yang menggambarkan suatu sistem peralatan komputer yang digunakan dalam proses pengolah data serta hubungan antar peralatan tersebut. Sistem flowchart ini tidak digunakan untuk menggambarkan urutan langkah untuk memecahkan masalah, tetapi hanya untuk menggambarkan prosedur dalam sistem yang dibentuk.
Program flowchart adalah diagram alir yang menggambarkan urutan logika suatu prosedur pemecahan masalah. Untuk menggambarkan program flowchart telah tersedia simbol-simbol standar.
![](https://lh4.googleusercontent.com/-ABbMadBZ45w/VJqSgrfALVI/AAAAAAAAAN0/ETvkEJLkF34/w139-h588-no/Flowchart%2BSistem%2BPengukur%2BTinggi%2BBadan%2Bdengan%2BOutput%2B%2BSuara.png)
Gambar 3.9 Flowchart Sistem Pengukur Tinggi Badan dengan Output Suara
BAB IV
Kesimpulan
Berikut kesimpulan perihal rumusan masalah mengenai Prototipe pengukur tinggi badan menggunakan sensor ultrasonik dengan output suara pada RSIA Keluarga Kita adalah sebagai berikut:
- Menciptakan alat pengukur tinggi badan menggunakan sensor ultrasonik berbasis mikrokontroler ATmega328 dengan menghasilkan output suara yang dirancang dan dibuat untuk mendeteksi tinggi badan seseorang sehingga ditemukan solusi terbaik bahwa mikrokontroler memiliki tingkat kehandalan dan kestabilan yang tinggi dan hasil lebih akurat.
- Proses konfigurasi program ke dalam mikrokontroler ATmega328 mempengaruhi kinerja sistem sensor ultrasonik untuk mendeteksi tinggi badan seseorang dengan menghasilkan output suara.
- Dari alat pengukur tinggi badan yang telah dirancang dapat mengetahui secara langsung hasil pengukurannya melalui output suara, pembacaan hasil yang didapat lebih akurat dan presisi jika dibanding dengan hasil pembacaan manusia.
Saran
- Hendaknya menggunakan sensor ultrasonik dengan kualitas yang lebih baik sehingga dalam pengukuran tinggi badan dihasilkan data yang lebih akurat dan presisi.
- Output suara yang dihasilkan oleh sistem pengukur tinggi badan masih kurang efektif dan akurat karena suara hanya dapat di dengar satu kali sehingga data yang didapat tidak maksimal maka diperlukan penambahan data secara tertulis dengan menggunakan monitoring melalui tampilan di OS Android.
- Informasi pengukuran tinggi badan dapat diintegrasikan dengan database sehingga dapat menambahkan atau menghapus data yang dihasilkan oleh sistem tersebut.
DAFTAR PUSTAKA
DAFTAR PUSTAKA
- ↑ 1,0 1,1 Taufiq, Rohmat. 2013. Sistem Informasi Manajemen.Yogyakarta: Graha Ilmu.
- ↑ Sutarman. 2012:13.
- ↑ 3,0 3,1 3,2 Yakub. 2012. Pengantar Sistem Informasi. Yogyakarta: Graha Ilmu
- ↑ Sutabri, Tata. 2012. “Konsep Sistem Informasi”. Yogyakarta: Andi Offset
- ↑ 5,0 5,1 5,2 Mulyanto, Agus. 2009. Sistem Informasi Konsep & Aplikasi. Yogyakarta: Pustaka Pelajar.
- ↑ Verzello. Reuter, John III. dalam Darmawan 2013.
- ↑ 7,0 7,1 Al-Jufri. 2011.
- ↑ Darmawan. 2013.
- ↑ Khanna, Ika Nur. 2013. WirelessMon, Very Handle to Capturing your WiFi Network Access. Diambil dari http://ilmukomputer.org
- ↑ Nikolaos Bourbakis, Konstantina S. Nikita and Ming Yang. 2013. International Journal of Monitoring and Surveillance Technology Resarch. Vol 1:2, ISSN:2166-7241, EISSN:2166-725X. IGI PA, USA.
- ↑ 11,0 11,1 11,2 Simarmata, Janner. 2010. Rekayasa Perangkat Lunak. Yogyakarta: CV Andi Offset.
- ↑ Mall. 2009. Rekayasa Perangkat Lunak 2. Jakarta: PT Rineka Cipta.
- ↑ Adelia, dan Jimmy Setiawan. 2011. Implementasi Customer Relationship Management (CRM) pada Sistem Reservasi Hotel berbasisi Website dan Desktop. Bandung: Universitas Kristen Maranatha. Vol. 6, No. 2, September 2011:113-126.
- ↑ 14,0 14,1 Sulindawati, dan Muhammad Fathoni. 2010. PengantarAnalisa Perancangan “Sistem”. Medan: STMIK Triguna Dharma. Vol. 9, No. 2, Agustus 2010.
- ↑ 15,0 15,1 Rizky. 2011.
- ↑ 16,0 16,1 Simamarta. 2010.
- ↑ Simanjuntak. 2010.
- ↑ Shiddiq. 2012.
- ↑ Budiman. 2012.
- ↑ Siddiq. 2012.
- ↑ 21,0 21,1 Sumardi. 2013.
- ↑ Syahrul. 2013.
- ↑ 23,0 23,1 23,2 Unggul Juwana. 2009.
- ↑ Bagus. 2012.
- ↑ Munir. 2013.
- ↑ 26,0 26,1 Syahid. 2013.
- ↑ Widodo. 2009.
- ↑ Noersasongko. Andono. 2010.
- ↑ Studio. Farik Matamaya. 2010.
- ↑ 30,0 30,1 30,2 Subandi. 2009.
- ↑ Parmono, Iswanto. 2011.
- ↑ 32,0 32,1 32,2 32,3 32,4 Widodo. 2010.
- ↑ Hasibuan, Zainal A. 2007. Metodologi Penelitian Pada Bidang Ilmu Komputer Dan Teknologi Informasi: Konsep, Teknik, Dan Aplikasi. Jakarta: Fakultas Ilmu Komputer Universitas Indonesia.
- ↑ 34,0 34,1 Suryo Guritno, Sudaryono, dan Untung Rahardja. 2011. Teory and Application of IT Research: Metodelogi Penelitian Teknologi Informasi.Yogyakarta: CV ANDI OFFSET
- ↑ Sudarto, Ferry.M.Firman.Adi Atma, Sugeng.2013. Tongkat Ultrasonik untuk Tunanetra sebagai Deteksi Jarak Benda dengan Output Suara. Informatic Technique Journal: Medan.
- ↑ Muji Rahayu, Titik. 2010. 'Perancangan Dan Pembuatan Penunjuk Arah Serta Deteksi Jarak Benda Untuk Tunanetra Dengan Output Suara Berbasis Mikrokontroler. Jurnal UIN: Malang.
- ↑ Fuadah Ditafrihil, Dita. Sanjaya, Mada WS.Ph.D. 2013. 'Monitoring dan Kontrol Level Ketinggian Air dengan Sensor Ultrasonik Berbasis Arduino. Jurnal Sains Fisika UIN Sunan Gunang Djati: Bandung.
DAFTAR LAMPIRAN
DAFTAR LAMPIRAN