SI1133470018: Perbedaan revisi

Dari widuri
Lompat ke: navigasi, cari
[revisi tidak terperiksa][revisi tidak terperiksa]
(Konsep Dasar Kendali / Kontrol)
(Teori Khusus)
Baris 1.172: Baris 1.172:
  
 
===Konsep Dasar Mikrokontroler===
 
===Konsep Dasar Mikrokontroler===
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''1.  Definisi Mikrokontroler'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Santoso dkk di dalam Jurnal FEMA Vol. 1, No. 1 (2013:17), “Mikrokontroler adalah sistem mikroprosesor lengkap yang terkandung di dalam sebuah ''chip''. Mikrokontroler berbeda dari mikroprosesor serba guna yang  digunakan dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi komponen pendukung sistem minimal mikroprosesor, yakni memori dan pemrograman ''Input-Output''”.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Mikrokontroler merupakan sebuah prosesor yang digunakan untuk kepentingan kontrol. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan ''computer mainframe'', mikrokontroler dibangun dari elemen-elemen dasar yang sama. Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan instruksi - instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang ''programmer''. Program ini menginstruksikan komputer untuk melakukan tugas yang lebih kompleks yang diinginkan oleh ''programmer''.</p></div>
 +
 +
<div align="center"><img width="350" height="200" style="margin:0px"  src="https://lh3.googleusercontent.com/-ydXZu1c13ek/WKal5lX30bI/AAAAAAAABeU/NKsZcQa-1XUDEczen-PIOAQNRQFJ-GjcwCL0B/w336-d-h235-p/14.jpg"/></div><p style="text-align: center;"><em></em></p>
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: center">
 +
 +
<p style="line-height: 2">'''Gambar 2.12 Blok Hardware Mikrokontroller'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''2. Karakteristik Mikrokontroler'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Mikrokontroler memiliki karakteristik sebagai berikut :</p></div>
 +
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"> <p style="line-height: 2">Memiliki program khusus yang disimpan dalam memori untuk aplikasi tertentu, tidak seperti PC yang multi fungsi karena mudahnya memasukkan program. Program mikrokontroler relatif lebih kecil daripada program-program pada PC.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Konsumsi daya kecil.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Rangkaiannya sederhana dan kompak.
 +
</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Harganya murah , karena komponennya sedikit.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Unit I/O yang sederhana, misalnya ''LCD'', ''LED'', ''Sensor''.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Lebih tahan terhadap kondisi lingkungan ekstrim, misalnya temperature tekanan, kelembaban, dan sebagainya.</p></li>
 +
</ol>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''3. Klasifikasi Mikrokontroler'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Mikrokontroler memiliki beberapa klasifikasi yaitu sebagai berikut:</p></div>
 +
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"> <p style="line-height: 2">ROM (Flash Memory) dengan kapasitas 1024 byte (1 KB)</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">RAM berkapasitas 68 byte</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">EEPROM (memori data) berkapasitas 64 byte</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Total 13 jalur I/O (Port B 8 bit)</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Timer/Counter 8 bit dengan prescaler</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Fasilitas pemrograman di dalam ias t (ICSP = In Circuit Serial Programing.</p></li>
 +
</ol>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''4. Arsitektur Mikrokontroller'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Setiawan (2011:11) arsitektur  adalah  rancangan  ''hardware'' internal  yang  berkaitan dengan:  tipe, jumlah  dan  ukuran  register  serta  rangkaian  lainnya. Arsitektur pada sebuah mikrokontroler sangat mempengaruhi kinerja pada saat melakukan proses pengendalian (control). </p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Setiawan (2011:11) Semua jenis mikrokontroler didasarkan pada arsitektur Von-Neuman atau arsitektur Harvard.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''a. Arsitektur Von-Neuman'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Mikrokontroler  yang  di  disain  berdasarkan  arsitektur  ini memilik  sebuah  data  bus  8-bit  yang  dipergunakan  untuk  "fetch" instruksi dan data. Program (instruksi) dan data disimpan pada memori utama  secara  bersama-sama.  Ketika  kontroler  mengalamati  suatu alamat di memori utama, hal pertama yang dilakukan dalah mengambil instruksi  untuk  dilaksanakan  dan  kemudian  mengambil  data pendukung dari instruksi tsb. Cara ini memperlambat operasi.</p></div>
 +
 +
<div align="center"><img width="250" height="250" style="margin:0px"  src="https://lh3.googleusercontent.com/-jJw3fSNO0cY/WKbAnuW6WVI/AAAAAAAABfU/kq70bc1gfm0KqHHCgReRgzIQjrBm3AFvQCL0B/w200-d-h197-p/15.jpg"/></div><p style="text-align: center;"><em></em></p>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: center">
 +
 +
<p style="line-height: 2">'''Gambar 2.13 Arsitektur Mikrokontroller Von-Neuman'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''b. Arsitektur Harvard'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Arsitektur  ini  memilik  bus  data  dan  instruksi  yang  terpisah, sehingga memungkinkan eksekusi dilakukan secara bersamaan. Secara teoritis hal ini memungkinkan eksekusi yang lebih cepat tetapi dilain pihak  memerlukan disain yang lebih kompleks.</p></div>
 +
 +
<div align="center"><img width="250" height="250" style="margin:0px"  src="https://lh3.googleusercontent.com/-r9XBm5ASf1U/WKbAruTzJ-I/AAAAAAAABfs/PRJRjbRo-gcTyZcjPX00Xp0MQA_C0czTwCL0B/w400-d-h260-p/16.jpg"/></div><p style="text-align: center;"><em></em></p>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: center">
 +
 +
<p style="line-height: 2">'''Gambar 2.14 Arsitektur Mikrokontroller Harvard'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Didalam  mempelajari  mikrokontroler,  kita  dituntut  untuk  dapat menguasai  dua  hal  yang  sangat  pokok,  berdasarkan  arsitektur mikrokontroler tersebut kedua hal tersebut adalah ''hardware'' dan ''software''. dari mikrokontroler. Hardware akan sangat kita perlukan ketika kita akan manggunakan  mikrokontroler  untuk  berhubungan  dengan  device (perangkat)  yang  sifatnya  berada  diluar  mikrokontroler,  software (instruksi)  dalam  hal  ini  juga  tidak  kalah  penting  karena  didalam mengendalikan  suatu  system  kita  juga  harus  memahami  instruksi  dari mikrokontroler yang digunakan.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''5. Instruksi Mikrokontroller'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Setiawan (2011:12) Instruksi pada mikrokontroler dikenal ada 2 yaitu: </p></div>
 +
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"> <p style="line-height: 2">CISC</p></li>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Saat ini hampir semua mikrokontroler adalah mikrokontroler CISC (''Complete Instruction Set Computer''). Biasanya memiliki lebih dari 80 instruksi. Keunggulan dari CISC ini adalah adanya instruksi yang bekerja seperti sebuah makro, sehingga memungkinkan  programmer untuk    menggunakan    sebuah instruksi  menggantikan  beberapa instruksi sederhana lainnya.</p></div>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">RISC</p></li>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Saat  ini  kecenderungan  industri  untuk  menggunakan  disain mikroprosesor RISC  (''Reduced  Instruction  Set  Computer''). Dengan menggunakan  jumlah instruksi  yang  lebih  sedikit,  memungkinkan lahan pada chip (silicon real-estate) digunakan untuk meningkatkan kemampuan  chip.  Keuntungan  dari  RISC  adalah  kesederhanaan disain, chip yang lebih kecil, jumlah pin sedikit dan sangat sedikit mengkonsumsi daya.</p></div>
 +
</ol>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''6. Input/Output Mikrokontroller'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Setiawan (2011:14) Mikrokontroller mempunyai beberapa Input/Output diantaranya yaitu :</p></div>
 +
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"> <p style="line-height: 2">UART ''(Universal Asynchronous Receiver Transmitter)'' adalah adapter serial port  adapter untuk komunikasi serial asinkron.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">USART (''Universal Synchronous/Asynchronous Receiver Transmitter'') merupakan adapter serial port untuk komunikasi serial sinkron dan asinkron. Komunikasi serial sinkron tidak memerlukan start/stop bit dan dapat beroperasi pada click yang lebih tinggi dibanding asinkron.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">SPI (''serial peripheral interface'') merupakan port komunikasi serial sinkron.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">SCI ''(serial communications interface)'' merupakan enhanced UART ''(asynchronous serial port)''.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">I2C bus ''(Inter-Integrated Circuit bus)'' merupakan antarmuka serial 2 kawat yang dikembangkan oleh Philips. Dikembangkan untuk aplikasi 8 bit dan banyak digunakan pada consumer elektronik, otomotif dan indistri. I2C bus ini berfungsi sebagai antarmuka jaringan multi-master, multi-slave dengan deteksi tabrakan data. Jaringan dapat dipasangkan hingga 128 titik dalam jarak 10 meter. Setiap titik dalam jaringan dapat mengirim dan menerima data. Setiap titik dalam jaringan harus memiliki alamat yang unik.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">''Analog to Digital Conversion'' (A/D). Fungsi ADC adalah merubah besaran analog (biasanya tegangan) ke bilangan digital. Mikrokontroler dengan fasilitas ini dapat digunakan untuk aplikasi-aplikasi yang memerlukan informasi analog (misalnya voltmeter, pengukur suhu dll). Terdapat beberapa tipe dari ADC sbb:<br>o Succesive Approximation A/D converters.<br>
 +
o Single Slope A/D converters.<br>
 +
o Delta-Sigma A/Ds converters.<br>
 +
o Flash A/D.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">D/A ''(Digital to Analog) Converters''. Kebalikan dar ADC seperti diatas.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Comparator. Mikrokontroler tertentu memiliki ssebuah atau lebih komparator. Komparator ini bekerja seperti IC komparator biasa tetapi sinyal ''input/output'' terpasang pada bus mikrokontroller.</p></li>
 +
</ol>
 +
 +
===Konsep Dasar Arduino===
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''1. Definisi Arduino'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Arduino didefinisikan sebagai sebuah platform elektronik yang open source, berbasis pada ''software'' dan ''hardware'' yang fleksibel dan mudah digunakan, yang ditujukan untuk seniman, desainer, hobbies dan setiap orang yang tertarik dalam membuat objek atau lingkungan yang interaktif (Artanto, 2012:1).</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Arduino sebagai sebuah platform komputasi fisik (''Physical Computing'') yang open source pada board input ouput sederhana, yang dimaksud dengan platform komputasi fisik disini adalah sebuah ias t fisik hyang interaktif dengan penggunaan software dan hardware yang dapat mendeteksi dan merespons situasi dan kondisi.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Menurut Artanto (2012:2), kelebihan arduino dari platform hardware mikrokontroler lain adalah:</p></div>
 +
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"> <p style="line-height: 2">IDE Arduino merupakan ''multiplatform'' yang dapat dijalankan di berbagai sistem operasi, seperti Windows, Macintosh dan Linux.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">IDE Arduino dibuat berdasarkan pada IDE ''processing'' yang sederhana sehingga mudah digunakan.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Pemrograman Arduino menggunakan kabel yang terhubung dengan port USB, bukan port serial. Fitur ini berguna karena banyak komputer yang sekarang ini tidak memiliki port serial.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Arduino adalah hardware dan software open source. Pembaca bisa mendownload software dan gambar rangkaian Arduino tanpa harus membayar ke pembuat Arduino.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Biaya hardware cukup murah, sehingga tidak terlalu menakutkan untuk membuat kesalahan.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Proyek Arduino ini dikembangkan dalam lingkungan pendidikan, sehingga bagi pemula akan lebih cepat dan mudah mempelajarinya.</p></li>
 +
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify; line-height: 2;"><p style="line-height: 2">Memiliki begitu banyak pengguna dan komunitas di internet yang dapat membantu setiap kesulitan yang dihadapi.</p></li>
 +
</ol>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Arduino memiliki berbagai macam versi. Beberapa versi yang cukup banyak tersedia di pasaran lokal, diantaranya adalah versi Arduino Duemilanove yang disebut sebagai Arduino 2009, versi Arduino Mega, dan versi Arduino Uno yang disebut sebagai Arduino 2010.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''2. Sejarah Arduino'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Proyek Arduino dimulai pertama kali di Ovre, Italy pada tahun 2005. Tujuan proyek ini awalnya untuk membuat peralatan control interaktif dan modul pembelajaran bagi siswa yang lebih murah dibandingkan dengan ''prototype'' yang lain. Pada tahun 2010 telah terjual dari 120 unit Arduino. Arduino yang berbasis open source melibatkan tim pengembang. Pendiri arduino itu Massimo Banzi dan David Cuartielles, awalnya mereka memberi nama proyek itu dengan sebutan arduino dari ivrea tetapi seturut perkembangan zaman nama proyek itu diubah menjadi Arduino.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Arduino dikembangkan dari thesis hernando Barragan di desain interaksi institute Ivrea. Arduino dapat menerima masukan dari berbagai macam sensor dan juga dapat mengontrol lampu, motor dan aktuator lainnya. Mikrokontroler pada board arduino di program dengan menggunkan bahasa pemrograman arduino (based on wiring) dan IDE arduino (based on processing). Proyek arduino dapat berjalan sendiri atau juga bisa berkomunikasi dengan software yang berjalan pada komputer.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''3. Hardware'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Papan Arduino merupakan papan mikrokontroler yang berukuran kecil atau dapat diartikan juga dengan suatu rangkaian berukuran kecil yang didalamnya terdapat komputer berbentuk suatu chip yang kecil. Pada Gambar 2.5. dapat dilihat sebuah papan Arduino dengan beberapa bagian komponen didalamnya.</p></div>
 +
 +
<div align="center"><img width="250" height="250" style="margin:0px"  src="https://lh3.googleusercontent.com/-qte-t4xHLgs/WKbEfhgUkpI/AAAAAAAABgs/-ZaFJy2sY-sAwnZ2SCeZtFXjr9D8MzMnACL0B/w364-d-h264-p/17.jpg"/></div><p style="text-align: center;"><em></em></p>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: center">
 +
 +
<p style="line-height: 2">'''Gambar 2.15 Hardware Arduino'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Pada hardware arduino terdiri dari 20 pin yang meliputi:</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''a. 14 pin IO Digital (pin 0–13)'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan input atau output yang diatur dengan cara membuat program IDE.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''b. 6 pin Input Analog (pin 0–5)'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Sejumlah pin analog bernomor 0–5 yang dapat digunakan untuk membaca nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0 dan 1023.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''c. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11)'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog dengan cara membuat programnya pada IDE.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Papan Arduino Uno dapat mengambil daya dari USB port pada komputer dengan menggunakan USB charger atau dapat pula mengambil daya dengan menggunakan suatu AC adapter dengan tegangan 9 volt. Jika tidak terdapat power supply yang melalui AC adapter, maka papan Arduino akan mengambil daya dari USB port. Tetapi apabila diberikan daya melalui AC adapter secara bersamaan dengan USB port maka papan Arduino akan mengambil daya melalui AC adapter secara otomatis.</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify">
 +
 +
<p style="line-height: 2">'''4. Software Arduino'''</p></div>
 +
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.5in">
 +
<p style="line-height: 2">Software arduino yang digunakan adalah driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama pengembangan arduino. IDE atau Integrated Development Environment suatu program khusus untuk suatu komputer agar dapat membuat suatu rancangan atau sketsa program untuk papan Arduino. IDE arduino merupakan software yang sangat canggih ditulis dengan menggunakan java. IDE arduino terdiri dari:</p></div>
 +
 +
  
  

Revisi per 17 Februari 2017 09.41

 

PROTOTYPE SISTEM PENDETEKSI POTONGAN

LOGAM PADA ROTI MENGGUNAKAN SENSOR

PROXIMITY BERBASIS ARDUINO UNO


SKRIPSI



Disusun Oleh :

NIM
: 1133470018
NAMA
: Muhamad Sahrudin


JURUSAN SISTEM KOMPUTER

KONSENTRASI CREATIVE COMMUNICATION AND INNOVATIVE TECHNOLOGY (CCIT)

SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER

STMIK RAHARJA

TANGERANG

2016/2017

SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER

(STMIK) RAHARJA

 

LEMBAR PENGESAHAN SKRIPSI

PROTOTYPE SISTEM PENDETEKSI POTONGAN LOGAM

PADA ROTI MENGGUNAKAN SENSOR PROXIMITY

BERBASIS ARDUINO UNO

SKRIPSI

Disusun Oleh :

NIM
: 1133470018
Nama
: Muhamad Sahrudin
Jenjang Studi
: Strata Satu
Jurusan
: Sistem Komputer
Konsentrasi
: Creative Communication and Innovative Technology

 

 

Disahkan Oleh :

Tangerang,Januari 2017

Ketua
       
Kepala Jurusan
STMIK RAHARJA
       
Jurusan Sistem Informasi
           
           
           
           
(Ir. Untung Rahardja, M.T.I)
       
((Ferry Sudarto,S.Kom.,Mpd)
NIP : 000594
       
NIP : 079010

SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER

(STMIK) RAHARJA

 

LEMBAR PERSETUJUAN PEMBIMBING

PROTOTYPE SISTEM PENDETEKSI POTONGAN LOGAM

PADA ROTI MENGGUNAKAN SENSOR PROXIMITY

BERBASIS ARDUINO UNO

SKRIPSI

Dibuat Oleh :

NIM
: 1133470018
Nama
: Muhamad Sahrudin

 

Telah disetujui untuk dipertahankan dihadapan Tim Penguji Ujian Komprehensif

Jurusan Sistem Komputer

Konsentrasi Creative Communication and Innovative Technology

Disetujui Oleh :

Tangerang, 16 Januari 2017

us
Pembimbing I
   
Pembimbing II
       
       
       
       
(Fredy Susanto, M.kom.,CCNA.,MTCNA)
   
(Dendy Jonas, M.Kom)
NID : 04051
   
NID : 14004

SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER

(STMIK) RAHARJA

LEMBAR PERSETUJUAN DEWAN PENGUJI

LEMBAR PERSETUJUAN PEMBIMBING

PROTOTYPE SISTEM PENDETEKSI POTONGAN LOGAM

PADA ROTI MENGGUNAKAN SENSOR PROXIMITY

BERBASIS ARDUINO UNO

Dibuat Oleh :

NIM
: 1133470018
Nama
: Muhamad Sahrudin

Disetujui setelah berhasil dipertahankan dihadapan Tim Penguji Ujian

Komprehensif

Jurusan Sistem Komputer

Konsentrasi Creative Communication and Innovative Technology

Tahun Akademik 2016/2017

Disetujui Penguji :

Tangerang, Januari 2017

Ketua Penguji
 
Penguji I
 
Penguji II
         
         
         
         
(_______________)
 
(_______________)
 
(_______________)
NID :
 
NID :
 
NID :

SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER

(STMIK) RAHARJA

 

LEMBAR KEASLIAN SKRIPSI

Saya yang bertandatangan di bawah ini :

NIM
: 1133470018
Nama
: Muhamad Sahrudin
Jenjang Studi
: Strata Satu
Jurusan
: Sistem Komputer
Konsentrasi
: Creative Communication and Innovative Technology

 

 

Menyatakan bahwa Skripsi ini merupakan karya tulis saya sendiri dan bukan

merupakan tiruan, salinan atau duplikat dari Skripsi yang telah dipergunakan

untuk mendapatkan gelar Sarjana Komputer 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, Januari 2017

 
 
 
 
 
(Muhamad Sahrudin)
NIM : 1133470018

 

)*Tandatangan dibubuhi materai 6.000;

ABSTRAKSI

Kemajuan teknologi mendorong pola hidup masyarakat yang cenderung semakin praktis, hal tersebut juga dirasakan oleh para pengusaha, seperti pengusaha roti dalam hal keamanan pembuatan roti sering kali adanya bahan logam yang tercampur dalam bahan baku. Dengan ini dirancangnya system untuk keamana tersebut, dalam perancangan system ini menggunakan sebuah sensor proximity untuk mendeteksi adanya potongan logam yang tercampur dalam bahan baku. Pengguna hanya perlu meletakan roti pada tempatnya, kemudian sensor akan bekerja mendeteksi bahan baku. Jika terdapat potongan logam, maka roti akan terpisah dengan sendirinya. Berdasarkan gambaran yang telah dipaparkan diatas maka dalam penyusunan Laporan Skripsi ini penulis mengambil judul “Prototype system pendeteksi potongan logam pada roti menggunakan sensor proximity berbasis arduino uno pada CV. Nayla JAya”. Tujuan dari pembuatan alat ini diharapkan dapat membantu dalam mendeteksi keamanan roti yang akan dijual kepada konsumen.


Kata kunci :Sensor Proximity, ArduinoUno


ABSTRAc

Technological advances encourage lifestyle of the people who tend to be more practical, it is also felt by employers, such as bakeries making bread in terms of security is often the metal material mixed in the raw material. By this he designed for the security of the system, in the design of this system uses a proximity sensor to detect metal pieces mixed in raw materials. Users only need to put the bread in place, then the sensor will work to detect raw materials. If there is a piece of metal, then the bread will separate by itself. Based on an idea that has been described above, in the author of this thesis entitled " Prototype system using a metal detector on the bread-based proximity sensor arduino uno on the CV. NAYLA JAYA ". The objective of this tool is expected to help in detecting the security of the bread to be sold to consumers.

Keywords: Proximity Sensor, ArduinoUno

KATA PENGANTAR


Bismillahirrahmanirrahim

Assalamu’alaikum Wr.Wb.

Dengan mengucapkan syukur Alhamdulillah atas Rahmat dan Hidayah yang diberikan Allah SWT kepada penulis sehingga dapat menyusun dan menyelesaikan Skripsi ini, dengan judul “PROTOTYPE SISTEM PENDETEKSI POTONGAN LOGAM PADA ROTI MENGGUNAKAN SENSOR PROXIMITY BERBASIS ARDUINO UNO”. Penelitian ini dilaksanakan dengan tujuan sebagai salah satu syarat untuk menyelesaikan program pendidikan Strata Satu (S1) jurusan Sistem Komputer konsentrasi Creative Communication and Innovative Technology (CCIT) STMIK Raharja Tangerang.

Penulis menyadari bahwa dalam penyusunan laporan skripsi ini masih terdapat banyak kekurangan, dikarenakan keterbatasan kemampuan penulis dalam mendapatkan berbagai sumber yang menjadi bahan acuan dalam penyusunan. Oleh karena itu penulis mengharapkan saran dan kritik yang membangun agar dapat dimanfaatkan pada masa yang akan datang. Untuk itu pada kesempatan ini penulis mengucapkan banyak terimakasih yang sebesar-besarnya terutama kepada :

  1. Bapak Ir. Untung Rahardja, M.T.I selaku Ketua STMIK Raharja.
  2. Bapak Sugeng Santoso, M.Kom. selaku Pembantu Ketua I Bidang Akademik STMIK RAHARJA.
  3. Bapak. Ferry Sudarto S.Kom,M.Pd., selaku Kepala Jurusan Sistem Komputer motivasi kepada penulis sehingga Laporan Skripsi ini dapat terselesaikan dengan baik,
  4. Bapak. Fredy Susanto,M.Kom.,CCNA.,MCNA selaku Pembimbing I, yang telah bersedia meluangkan waktu, pikiran dan tenaganya untuk memberikan bimbingan dan pengarahan kepada penulis.
  5. Bapak Dendy Jonas, M.Kom selaku Pembimbing II yang telah memberikan pengarahan dan motivasi untuk kelancaran penyusunan laporan skripsi ini.
  6. Bapak Sarman selaku Stakeholder dari CV. Nayla Jaya yang telah membantu dan memberikan ijin kepada penulis selama melakukan observasi.
  7. Kedua Orang tua saya Bapak H. Sahroni dan Ibu H. Ati Sumarti yang telah mendidik hingga mampu menjadi pribadi yang baik dan bertanggung jawab.
  8. Teman seperjuangan, Ferry Chrisdyanto, Maulana Khadafi, Bian Pramana Putra, Achmad Kurniawan, grup Onecakfc dan Raharjafc.
  9. Teman baik yang selalu mendukung, khususnya Monikawati dan banyak lagi yang belum bisa saya sebutkan.

Penulis menyadari bahwa dalam penyusunan laporan ini masih banyak terdapat kekurangan. Dengan segala keterbatasan dan kesederhanaan dalam penulisan dan penyusunan laporan ini, penulis sangat mengharapkan kritik dan saran. Akhir kata, kepada semua pihak yang telah membantu terwujudnya laporan Skripsi ini, semoga Allah SWT selalu melimpahkan rahmat dan hidayah-Nya.

Tangerang, Januari 2017
( Muhamad Sahrudin )
NIM : 1133470018

BAB I

PENDAHULUAN

Latar Belakang Masalah

Perkembangan teknologi komputer saat ini merupakan perkembangan yang sangat pesat dan bukan hal yang asing lagi dikalangan masyarakat. Manusia membutuhkan bantuan dari sesuatu yang dapat bekerja cepat dan tepat. Sistem otomatisasi diketahui dapat menggantikan peran manusia untuk melakukan sesuatu hal di dalam suatu lingkungan yang baik bagi kenyamanan dan keselamatan, serta mengawasi suatu daerah yang harus diamati dengan pengamatan lebih dari kemampuan panca indra manusia. Kemajuan teknologi dalam bidang elektronika akan mampu mengatasi berbagai masalah yang rumit sekalipun, dengan ketelitian dan kecepatan serta ketepatan yang sangat tinggi maka elektronika dapat menggantikan beberapa peran manusia dalam sebuah pengamatan. Di dalam suatu kegiatan khususnya yang berhubungan dengan keselamatan seseorang, dimana hal yang harus diperhatikan ialah sesuatu yang dapat mendeteksi adanya benda berbahaya yang terdapat pada makanan, sehingga dapat menjaga keselamatan seseorang. Seperti mendeteksi adanya logam pada sebuah roti, umumnya para konsumen hanya akan membeli roti yang mereka inginkan tanpa mengetahui apakah dalam makanan tersebut terdapat benda berbahaya seperti logam atau tidak, jika pada roti tersebut tidak terdapat logam maka hal tersebut tidak masalah, akan tetapi apabila dalam roti tersebut terdapat logam maka akan membahayakan orang yang memakannya..

Proses ini memanfaatkan sensor proximity sebagai pendeteksi adanya potongan logam yang terdapat pada roti. Sensor proximity akan mendeteksi logam sehingga apabila terdapat potongan logam maka sensor tersebut akan memberikan sinyal pemberitahuan. Dan sinyal tersebut akan langsung dikirimkan ke mikrokontroler yang tersambung dengan sebuah perangkat LCD. Sinyal-sinyal yang dikirimkan oleh sensor proximity inilah yang digunakan untuk mendeteksi keberadaan logam pada roti.

Berdasarkan uraian dan permasalahan diatas, muncul suatu pemikiran untuk membuat judul “Perancangan Sistem Pendeteksi Logam pada Roti Menggunakan Sensor Proximity Berbasis Anduino Uno”. Dengan penerapan sistem ini diharapkan dapat membantu mengatasi permasalahan yang ada sehingga dapat memberikan kenyamanan bagi para konsumen.

Rumusan Masalah

Berdasarkan uraian dari latar belakang diatas, rumusan masalah yang dapat diambil secara umum yaitu bagaimana merancang sebuah rangkaian aplikasi untuk mendeteksi potongan logam pada roti dapat dijabarkan sebagai berikut :

  1. Bagaimana cara membuat simulator alat yang dapat mendeteksi potongan logam menggunakan sebuah Mikrokrontroller?

  2. Bagaimana merancang alat menggunakan Arduino Uno serta mengkomunikasikannya dengan aplikasi atau pun software yang ada di dalam Mikrokrontroller agar alat tersebut dapat bekerja secara otomatis?

  3. Bagaimana mengetahui unjuk kerja alat pendeteksi yang akan dibuat tersebut, apakah kerjanya sesuai dengan yang telah direncanakan

  4. Bagaimana menangani pembuatan roti yang baik dan steril agar memberikan kenyaman bagi para konsumen

Ruang Lingkup Penelitian

Sebagai pembatasan pembahasan atas penyusunan laporan ini untuk tetap fokus dan sesuai dengan tujuan yang ditetapkan, maka penulis memberikan ruang lingkup penelitian sebagai berikut :

  1. Implementasi ini dapat dilakukan untuk semua jenis roti yang tersedian pada CV. Nayla Jaya.

  2. Sensor pendeteksi dapat berfungsi dengan baik apabila jarak antara sensor dengan roti tersebut tidak melebihi jarak maksimal yaitu 15 cm.

  3. Monitoring alat ini hanya sebatas mendeteksi adanya potongan logam yang terdapat didalam roti.

Tujuan dan Manfaat Penelitian

Tujuan Penelitian

Adapun tujuan pokok dari penelitian ini yaitu untuk menerangkan fakta-fakta yang telah ditemukan, serta menerapkan berbagai teori yang penulis dapatkan selama ini. Adapun tujuan lain yang penulis lakukan adalah sebagai berikut:

  1. Tujuan Individual
    a. Sebagai syarat kelulusan mata kuliah SKRIPSI Jurusan Sistem Komputer, STMIK Raharja.
    b. Menerapkan ilmu yang telah didapat selama ini, sehingga berguna bagi umat manusia.

  2. Tujuan Fungsional
    a. Membuat suatu sistem yang dapat mendeteksi potongan logam pada roti dengan menggunakan arduino uno dan monitoringnya.
    b. Membuat rangkaian software dan hardware yang meliputi rangkaian minimum arduino, rangkaian sensor, rangkaian penampil dan buzzer, yang digunakan sebagai alat pendeteksi potongan logam pada roti yang dapat diaplikasikan untuk meringankan beban kerja manusia.

  3. Tujuan Operasional
    a. Untuk lebih meningkatkan tingkat efisiensi yang sebelumnya tidak menggunakan perangkat elektronika apapun di dalam sebuah sistem pendeteksian potongan logam pada roti.

Manfaat Penelitian

Adapun beberapa manfaat yang dihasilkan dari penelitian ini adalah:

  1. Manfaat Individual

  2. Bagi peneliti, manfaat dari penelitian ini adalah dapat menambah pengetahuan dan wawasan peneliti mengenai interaksi antara mikrokontroller dan perangkat sensor sehingga dapat menciptakan sebuah alat yang memberikan manfaat.

  3. Manfaat Fungsional

  4. Dengan alat ini diharapkan dapat memberikan kenyamanan serta ketenangan konsumen dalam membeli roti yang ingin dimakan.

  5. Manfaat Operasional

  6. Hasil penelitian ini diharapkan agar dapat digunakan untuk mendeteksi apakah ada potongan logam didalam roti, sehingga memberi para konsumen kenyamanan dan ketenangan mengonsumsi makanan tersebut

Metode Penelitian

Dalam membuat laporan ini, penulis melakukan beberapa metode dalam meneliti masalah yang ada. Metode tersebut antara lain:

Metode Pengumpulan Data

  1. Observasi
    Melakukan peninjauan atau pengamatan secara langsung kelapangan pada CV. NAYLA JAYA dengan cara mengumpulkan data, informasi, dan mempelajari catatan serta dokumen yang ada. Adapun hasil yang di dapat dari observasi selama 1 bulan adalah mengetahui sistem kerja yang berjalan, sehingga penulis dapat melaporkan kegiatan langsung pada apa yang pernah dilihat dan dipelajari sehingga dapat dituangkan dalam penulisan laporan ini.

  2. Studi Pustaka
    Metode untuk mengumpulkan informasi dengan mencatat dan mempelajari buku-buku yang berhubungan dengan penelitan ini. Pengumpulan data dilakukan dengan melakukan pencarian melalui situs internet untuk mencari referensi materi yang bisa digunakan sebagai pemecahan masalah yang ada.

Metode Analisa

Pada metode ini penulis menganalisa sistem-sistem yang sudah ada dengan beberapa poin pertimbangan seperti bagaimana cara kerja sistem, apa saja komponen yang membangun sistem tersebut dan juga kekurangan dari sistem tersebut.

Metode Perancangan

Metode ini dimaksudkan untuk memberikan gambaran bagaimana sistem itu dirancang dan alat apa saja yang dibutuhkan.

Metode Implementasi

Metode yang digunakan untuk pengujian sistem dengan melakukan uji coba test pada sistem tersebut, sehingga diperoleh hasil implementasi yang di inginkan.

Metode Penguji

Dalam metode pengujian ini penulis melakukan uji coba dengan metode Black Box terhadap prototipe yang telah dibuat agar diketahui apakah prototipe sudah berjalan sesuai ketentuan

Sistematika Penulisan

Untuk memahami lebih jelas tentang penulisan SKRIPSI ini, maka penulis mengelompokan materi laporan ini menjadi beberapa bab yang masing-masing saling berkaitan antara bab satu dengan yang lainnya sehingga membentuk suatu kesatuan yang utuh dengan sistematika penyampaian sebagai berikut:

BAB I PENDAHULUAN

Berisi tentang latar belakang, perumusan masalah, tujuan dan manfaat penelitian, ruang lingkup penelitian, dan sistematika penulisan

BAB II LANDASAN TEORI

Bab ini berisi beberapa teori-teori dasar yang akan mendukung pembahasan masalah sebagai konsep dasar dalam penyusunan alat dan beberapa definisi yang sesuai dengan penelitian sehingga menghasilkan karya yang bernilai ilmiah dan memiliki daya guna. Uraian tersebut menjelaskan tentang sensor proximity, mikrokontroler arduino, serta beberapa komponen pendukung lainnya.

BAB III PEMBAHASAN

Bab ini menjelaskan gambaran umum dan sejarah singkat CV. Nayla Jaya, struktur organisasi, tugas dan tanggung jawab dari masing-masing bagian. Serta berisi tentang pembahasan, perancangan sistem dan cara kerja rangkaian alat secara keseluruhan.

BAB IV UJI COBA DAN ANALISA

Menjelaskan uji coba rangkaian dan analisa “Perancangan Sistem Pendeteksi Logam pada Roti Menggunakan Sensor Proximity Berbasis Anduino Uno”

BAB V PENUTUP

Bab ini berisi tentang kesimpulan dan saran dari pembuatan alat dan laporan sebagai upaya untuk perbaikan kedepan.

DAFTAR PUSTAKA

DAFTAR LAMPIRAN

BAB II

LANDASAN TEORI

Untuk mendukung pembuatan laporan ini, maka perlu dikemukakan hal-hal atau teori-teori yang berkaitan dengan permasalahan dan ruang lingkup pembahasan sebagai landasan dalam pembuatan laporan ini.

Teori Umum

Konsep Dasar Sistem

1. Definisi Sistem

Suatu sistem dapat terdiri dari beberapa subsitem atau sistem-sistem bagian. Komponen atau subsitem dalam suatu sistem tidak dapat berdiri sendiri, melainkan saling berinteraksi dan saling berhubungan membentuk satu kesatuan sehingga tujuan dapat tercapai. Ada banyak definisi mengenai sistem diantaranya adalah:

  1. Menurut Taufiq (2013:2) “Sistem adalah kumpulan dari sub-sub sistem abstrak maupun fisik yang saling terintegrasi dan berkolaborasi untuk mencapai suatu tujuan tertentu”.

  2. Menurut Hartono (2013:9) “Sistem adalah suatu himpunan dari berbagai bagian atau elemen, yang saling berhubungan secara teroganisasi berdasar fungsi-fungsinya, menjadi satu kesatuan”.

  3. Menurut Sutarman (2012:13). “Sistem adalah kumpulan elemen yang saling berhubungan dan berinteraksi dalam satu kesatuan untuk menjalankan suatu proses pencapaian suatu tujuan utama”.

Berdasarkan beberapa pendapat yang dikemukakan diatas dapat ditarik kesimpulan bahwa sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran atau tujuan tertentu.

2. Karakteristik Sistem

Suatu sistem mempunyai karakteristik atau sifat-sifat tertentu, yaitu mempunyai komponen-komponen (component), batas sistem (boundary), lingkungan luar sistem (environment), penghubung (interface), masukan (input), pengolah (process), keluaran (output), dan sasaran (objective), atau tujuan (goals), berikut adalah penjelasan dari karakteristik sistem :

  1. Komponen Sistem
    Komponen sistem (Component) yaitu dari sejumlah komponen yang saling berinteraksi, yang artinya saling bekerja sama membentuk satu kesatuan. Elemen-elemen sistem dapat berupa suatu subsistem atau bagian-bagian dari sistem. Setiap subsistem mempunyai sistem untuk menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan, setiap sistem tidak peduli betapapun kecilnya selalu mengandung subsitem-subsistem.

  2. Batas Sistem
    Batas Sistem (Boundary), yaitu daerah yang membatasi suatu sistem dengan sistem lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu sistem dipandang.

  3. Lingkungan Luar Sistem
    Lingkungan luar sistem (Environment), dari suatu sistem yaitu apapun di luar batas dari sistem yang mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga merugikan sistem tersebut. Lingkungan luar yang menguntungkan merupakan energi dari sistem yang harus tetap dijaga dan dipelihara.

  4. Penghubung
    Penghubung sistem (Interface), merupakan media penghubung antara satu subsistem dengan subsistem lainnya. Melalui penghubung ini memungkinkan sumber daya-sumber daya mengalir dari subsistem ke subsistem yang lainnya. Dengan penghubung, satu subsistem dapat berintegrasi dengan subsistem yang lainnya membentuk satu kesatuan.

  5. Masukan
    Masukan (Input), merupakan energi yang dimasukkan ke dalam sistem. Masukan dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input).

  6. Keluaran
    Keluaran (Output), Merupakan hasil dari energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna dan sisa pembuangan. Keluaran dapat merupakan masukan untuk subsistem yang lain atau kepada supra sistem.

  7. Pengolahan
    Pengolahan (Process), yaitu suatu sistem dapat mempunyai suatu bagian pengolah yang akan mengubah masukan menjadi keluaran

  8. Sasaran
    (Objectives) dan Tujuan (Goal) 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), sistem dapat diklasifikasikan dari beberapa sudut pandang, diantaranya:

  1. Sistem Abstrak dan Sistem Fisik
    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.

  2. 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.

  3. 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.

  4. Gambar 2.1 Sistem Tertutup

    Gambar 2.2 Sistem Terbuka

  5. Sistem Manusia dan Sistem Mesin
    Sistem manusia dan sistem mesin merupakan sebuah klasifikasi sistem jika dipandang dari pelakunya. Pada zaman yang semakin global dan semuanya serba maju ini tidak semua sistem dikerjakan oleh manusia tapi beberapa sistem dikerjakan oleh mesin tergantung dari kebutuhannya.Sistem manusia adalah suatu sistem yang proses kerjanya dilakukan oleh manusia sebagai contoh pelaku sistem organisasi,sistem akademik yang masih manual, transaksi jual beli di pasar tradisional, dll. Adapun sistem mesin merupakan sebuah sistem yang proses kerjanya dilakukan oleh mesin, sebagai contoh sistem motor, mobil, mesin industri, dan lain-lain.

  6. Sistem Sederhana dan Sistem Kompleks
    Sistem dilihat dari tingkat kekomplekan masalahnya dibagi menjadi dua yaitu sistem sederhana dan sistem kompleks. Sistem sederhana merupakan sistem yang sedikit subsistemnya dan komponen-komponennya pun sedikit. Adapun sistem kompleks adalah sistem yang banyak sub-sub sistemnya sehingga proses dari sistem itu sangat rumit.

  7. Sistem Bisa Beradaptasi dan Sistem Tidak Bisa Beradaptasi
    Sistem yang bisa berdaptasi terhadap lingkungannya merupakan sebuah sistem yang mampu bertahan dengan adanya perubahan lingkungan. Sedangkan sistem yang tidak bisa beradaptasi dengan lingkungan merupakan sebuah sistem yang tidak mampu bertahan jika terjadi perubahan lingkungan.

  8. Sistem Buatan Allah/Alam dan Sistem Buatan Manusia
    Sistem buatan Allah merupakan sebuah sistem yang sudah cukup sempurna dan tidak ada kekuranganya sedikitpun dari sistem ini,misalnya sistem tata surya, sistem pencernaan manusia, dan lain-lain. Sedangkan sistem buatan manusia merupakan sebuah sistem yang telah dikembangkan oleh manusia itu sendiri, sistem ini bisa dirubah sesuai dengan perkembangan zaman dan kebutuhan hidup. Sistem buatan manusia secara umum bisa disesuaikan dengan kebutuhan, jika kebutuhannya berubah maka sistem yang sudah ada tadi juga bisa berubah

  9. Sistem Sementara dan Sistem Selamanya
    Sistem sementara dan sistem selamanya merupakan klasifikasi sistem jika dilihat dari pemakaiannya. Sistem sementara merupakan sebuah sistem yang dibangun dan digunakan untuk waktu sementara waktu sebagai contoh sistem pemilihan presiden, setelah proses pemilihan presiden sudah tidak dipakai lagi dan untuk pemilihan lima tahun mendatang kemungkinan sudah dibuat sistem pemilihan presiden yang baru. Sedangkan sistem selamanya merupakan sistem yang dipakai untuk jangka panjang atau digunakan selamanya, misalnya sistem pencernaan

4. Tujuan Sistem

Menurut Taufiq (2013:5), tujuan sistem merupakan sasaran atau hasil yang diinginkan. Manusia, tumbuhan, hewan, organisasi, lembaga dan lain sebagainya pasti memiliki tujuan yang bermanfaat minimal bagi dia sendiri atau bagi lingkungannya. Tujuan sangatlah penting karena tanpa tujuan yang jelas segala sesuatu pasti akan hancur dan berantakan tapi dengan tujuan yang jelas akan lebih besar kemungkinan akan tercapai sasarannya. Begitu juga sistem yang baik adalah sistem yang memiliki tujuan yang jelas dan terukur yang memungkinkan untuk dicapai dan memiliki langkah-langkah yang terstuktur untuk mencapainya. Dengan tujuan yang jelas dan terukur serta menggunkan langkah-langkah terstruktur kemungkinan besar sistem itu akan tercapai tujuannya sesuai dengan apa yang telah menjadi tujuannya.

5. Daur Hidup Sistem

Menurut Sutabri (2012:27)[3], Siklus Hidup Sistem adalah proses evolusioner yang diikuti dalam menerapkan sistem atau subsistem informasi berbasis komputer. Fase atau tahapan dari daur hidup suatu sistem:

  1. Mengenali adanya kebutuhan
    Sebelum segala sesuatunya terjadi, timbul suatu kebutuhan yang harus dapat dikenali. Kebutuhan dapat terjadi sebagai hasil pengembangan dari organisasi dan volume yang meningkat melebihi kapasitas dari sistem yang ada. Suatu kebutuhan ini harus dapat didefinisikan dengan jelas. Tanpa adanya kejelasan dari kebutuhan yang ada, pembangunan sistem akan kehilangan arah dan efektifitasnya.

  2. Pembangunan sistem
    Suatu proses atau perangkat prosedur yang harus diikuti untuk menganalisa kebutuhan yang timbul dan membangun suatu sistem untuk dapat memenuhi kebutuhan tersebut.

  3. Pemasangan sistem
    Setalah tahap pembangunan sistem selesai,sistem akan dioperasikan. Pemasangan sistem merupakan tahap yang penting dalam daur hidup sistem. Didalam peralihan dari tahap pembangunan menuju tahap operasional terjadi pemasangan sistem yan sebenarnya yang merupakan langkah akhir dari suatu pembangunan sistem.

  4. Pengoperasian sistem
    Program-program komputer dan prosedur-prosedur pengoperasian yang membentuk suatu sistem informasi semuanya bersifat statis, sedangkan organisasi ditunjang oleh sistem informasi tadi. Ia selalu mengalami perubahan-perubahan itu karena pertumbuhan kegiatan bisnis, perubahan peraturan, dan kebijaksanaan ataupun kemajuan teknologi. Untuk perubahan-perubahan tersebut, sistem harus diperbaiki atau diperbaharui.

  5. Sistem menjadi usang
    Kadang perubahan yang terjadi begitu drastis sehingga tidak dapat diatasi hanya dengan melakukan perbaikan-perbaikan pada sistem yang berjalan. Tibalah saatnya secara ekonomis dan teknik sistem yang ada sudah tidak layak lagi untuk dioperasikan dan sistem yang baru perlu dibangun untuk menggantikannya.

  6. Gambar 2.3. Daur Hidup Sistem

Konsep Dasar Kendali / Kontrol

1. Definisi Pengontrolan

Menurut Erinofiardi (2012:261), “Suatu system control otomatis dalam suatu proses kerja berfungsi mengendalikan proses tanpa adanya campur tangan manusia (otomatis)”.

Kontrol otomatis mempunyai peran penting dalam dunia industri modern saat ini. Seiring perkembangan kemajuan ilmu pengetahuan dan teknologi, sistem kontrol otomatis telah mendorong manusia untuk berusaha mengatasi segala permasalahan yang timbul di sekitarnya dengan cara yang lebih mudah, efisien dan efektif. Adanya kontrol otomatis secara tidak langsung dapat menggantikan peran manusia dalam meringankan segala aktifitasnya.

Berdasarkan Ejaan Yang Disempurnakan (EYD) pengontrolan berasal dari kata kontrol. Kontrol sama dengan pengawasan, pemeriksaan dan pengendalian. Pada industri besar dan modern sangat memerlukan tenaga ahli perencanaan sistem pengendali dan perancangan desain sistem pengendali, termasuk teknisi profesional sebagai operator. Tidak menutup kemungkinan bahwa pengontrolan berasal dari berbagai disiplin ilmu yang saling berhubungan karena teori sistem pengendali modern dikembangkan guna mengatasi kerumitan yang dijumpai pada berbagai system pengendalian yang menuntut kecepatan dan ketelitian yang tinggi dengan hasil output yang optimal.

Dalam sistem pengendali kita mengenal adanya sistem pengendali Loop Terbuka (Open-loop Control System) dan Sistem Pengendali Loop Tertutup ( Closed-loop Control System ).

Jenis- jenis Pengontrolan

1. Sistem Kontrol Loop Terbuka

Menurut Erinofiardi (2012:261) sistem kontrol loop terbuka adalah ”suatu sistem kontrol yang keluarannya tidak berpengaruh terhadap aksi pengontrolan. Dengan demikian pada sistem kontrol ini, nilai keluaran tidak di umpan-balikkan ke parameter pengendalian.”

Gambar 2.4 Sistem pengendali loop terbuka

Sumber : Erinofiardi (2012:261)

Gambar diagram blok diatas menggambarkan bahwa didalam sistem tersebut tidak ada proses umpan balik untuk memperbaiki keadaan alat terkendali jika terjadi kesalahan. Jadi tugas dari elemen pengendali hanyalah memproses sinyal masukan kemudian mengirimkannya ke alat terkendali.

2. Sistem Kontrol Loop Tertutup

Menurut Erinofiardi (2012:261) sistem kontrol loop tertutup adalah “Suatu sistem kontrol yang sinyal keluarannya memiliki pengaruh langsung terhadap aksi pengendalian yang dilakukan.” Yang menjadi ciri dari sistem pengendali tertutup adalah adanya sinyal umpan balik. Sinyal umpan balik merupakan sinyal keluaran atau suatu fungsi keluaran dan turunannya, yang diumpankan ke elemen kendali untuk memperkecil kesalahan dan membuat keluaran sistem mendekati hasil yang diinginkan.

Gambar 2.5 Sistem pengendali loop tertutup

Sumber : Erinofiardi (2012:261)

Gambar diatas menyatakan hubungan antara masukan dan keluaran dari suatu loop sistem tertutup. Sinyal input yang sudah dibandingkan dengan sinyal umpan balik menghasilkan sinyal selisih atau sinyal kesalahan yang akan dikirimkan ke dalam elemen pengendali sehingga kemudian menghasilkan sebuah sinyal keluaran yang akan dikirim ke alat terkendali. Sinyal input berupa masukan referensi yang akan menentukan suatu nilai yang diharapkan bagi sistem yang dikendalsikan tersebut. Dalam berbagai sistem pengendalian, sinyal input dihasilkan oleh mikrokontroler.

Konsep Dasar Pengujian

1. Definisi Black Box

Menurut Siddiq (2012:4), “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) 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 kedua 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:

  1. Fungsi-fungsi yang salah atau hilang

  2. Kesalahan interface

  3. Kesalahan dalam struktur data atau akses database eksternal

  4. Kesalahan performa

  5. 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:

  1. Bagaimana validitas fungsionalnya diuji?

  2. Jenis input seperti apa yang akan menghasilkan kasus uji yang baik?

  3. Apakah sistem secara khusus sensitif terhadap nilai input tertentu?

  4. Bagaimana batasan-batasan kelas data diisolasi?

  5. Berapa rasio data dan jumlah data yang dapat ditoleransi oleh sistem?

  6. Apa akibat yang akan timbul dari kombinasi spesifik data pada operasi sistem?

Sehingga dalam uji coba Black Box harus melewati beberapa proses sebagai berikut:

  1. Menganalisis kebutuhan dan spesifikasi dari perangkat lunak.

  2. Pemilihan jenis input yang memungkinkan menghasilkan output benar serta jenis input yang memungkinkan output salah pada perangkat lunak yang sedang diuji.

  3. Menentukan output untuk suatu jenis input.

  4. Pengujian dilakukan dengan input-input yang telah benar-benar diseleksi.

  5. Melakukan pengujian.

  6. Pembandingan output yang dihasilkan dengan output yang diharapkan.

  7. Menentukan fungsionalitas yang seharusnya ada pada perangkat lunak yang sedang diuji

Metode Pengujian Dalam Black Box

Ada beberapa macam metode pengujian Black Box, berikut diantaranya:

1. 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.

2. 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.

3. 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:

  1. Causes (kondisi input), dan Effects (aksi) didaftarkan untuk modul dan identifier yang dtujukan untuk masing-masing.

  2. Pembuatan grafik Causes-Effect graph

  3. Grafik dikonversikan kedalam tabel keputusan

  4. Aturan tabel keputusan dikonversikan kedalam kasus uji

4. 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.

5. Sample and Robustness Testing

  1. Sample 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

  2. Robustness Testing
    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.

6. Behavior Testing dan Performance Testing

  1. Behavior 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.

  2. Performance Testing
    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.

7. Requirement Testing

Spesifikasi kebutuhan yang terasosiasi dengan perangkat lunak (input/output/fungsi/performansi) diidentifikasi pada tahap spesifikasi kebutuhan dan desain.

  1. Behavior 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.

  2. 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

8. 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..

9. Kelebihan dan Kelemahan Black Box

Dalam uji coba Black Box terdapat beberapa kelebihan dan kelemahan. Berikut adalah keunggulan dan kelemahannya:

Tabel. 2.1 Kelebihan dan Kekurangan Black Box

Konsep Dasar Flowchart

1. Definisi Flowchart

Menurut Sulindawati dan Muhammad Fathoni di dalam Jurnal SAINTIKOM Vol. 9, No. 2 (2010:8), “Flowchart adalah penggambaran secara grafik dari langkah-langkah dau urutan-urutan prosedur dari suatu program.

Dari pendapat di atas dapat disimpulkan bahwa Flowchart adalah bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial.

Flowchart biasanya mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan di evaluasi lebih lanjut. Bila seorang analisi dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan.

2. Cara Membuat Flow Chart

Ada beberapa petunjuk dalam pembuatan Flow chart Menurut Menurut Sulindawati dan Muhammad Fathoni dalam Jurnal SAINTIKOM Vol. 9, No. 2 (2010:8):

  1. Flowchart digambarkan dari halaman atas ke bawah dan kiri ke kanan.

  2. Aktifitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.

  3. Kapan aktifitas dimulai dan berakhir harus ditentukan secara jelas

  4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja.

  5. Setiap langkah dari aktifitas harus berada pada urutan yang benar

  6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati.

  7. Gunakan simbol-simbol flowchart yang standar

3. Jenis-Jenis Flow Chart

Ada lima macam bagan alir yang akan dibahas di modul ini, yaitu sebagai berikut:

a. Bagan Alir Sistem (Systems Flow Chart)

Merupakan bagan yang menunjukkan alur kerja atau apa yang sedang dikerjakan di dalam system secara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada dalam system

Sumber: Rachman (2012:116)

Gambar 2.6 Bagan Alir Sistem (System Flow Charts)

b. Bagan Alir Dokumen (Document Flow Chart)

Menelusuri alur dari data yang ditulis melalui sistem. Fungsi utamanya untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian yang lain.

Sumber: Rachman (2012:117)

Gambar 2.7 Bagan Alir Dokumen (Document Flow Chart)

c. Bagan Alir Skematik (Schematic Flow Chart)

Mirip dengan Flow Chart sistem yang menggambarkan suatu sistem atau prosedur.

Sumber: Rachman (2012:117)

Gambar 2.8 Bagan Alir Skematik (Schematic Flow Chart)

d. Bagan Alir Program (Program Flow Chart)

Merupakan keterangan yang lebih rinci tentang bagaimana setiap langkah program atau prosedur dilaksanakan

Sumber: Rachman (2012:117)

Gambar 2.9 Bagan Alir Program (Program Flow Chart)

e. Bagan Alir Proses (Process Flow Chart)

Merupakan teknik penggambaran rekayasa industrial yang memecah dan menganalisis langkah selanjutnya dari sebuah sistem.

Gambar 2.10 Bagan Alir Proses (Process Flow Chart)

Sumber: Rachman (2012:116)

Gambar 2.11 Contoh Variasi Aplikasi Flow Chart

Konsep Dasar Prototype

1. Definisi Prototipe

Menurut Simarmata (2010:62), “Prototype adalah bagian dari produk yang mengekspresikan logika maupun fisik antarmuka eksternal yang ditampilkan”.

Menurut Mall (2009:43), “Prototype is a toy implementation of the system”. (Prototype 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.

2. Jenis-Jenis Prototipe

Jenis-jenis Prototype secara general dibagi menjadi dua, yaitu: Menurut Simarmata (2010:64)

  1. 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.

  2. 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).

Tabel 2.2 Kelebihan dan Kekurangan Prototipe

Teori Khusus

Konsep Dasar Mikrokontroler

1. Definisi Mikrokontroler

Menurut Santoso dkk di dalam Jurnal FEMA Vol. 1, No. 1 (2013:17), “Mikrokontroler adalah sistem mikroprosesor lengkap yang terkandung di dalam sebuah chip. Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi komponen pendukung sistem minimal mikroprosesor, yakni memori dan pemrograman Input-Output”.

Mikrokontroler merupakan sebuah prosesor yang digunakan untuk kepentingan kontrol. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan computer mainframe, mikrokontroler dibangun dari elemen-elemen dasar yang sama. Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan instruksi - instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang programmer. Program ini menginstruksikan komputer untuk melakukan tugas yang lebih kompleks yang diinginkan oleh programmer.

Gambar 2.12 Blok Hardware Mikrokontroller

2. Karakteristik Mikrokontroler

Mikrokontroler memiliki karakteristik sebagai berikut :

  1. Memiliki program khusus yang disimpan dalam memori untuk aplikasi tertentu, tidak seperti PC yang multi fungsi karena mudahnya memasukkan program. Program mikrokontroler relatif lebih kecil daripada program-program pada PC.

  2. Konsumsi daya kecil.

  3. Rangkaiannya sederhana dan kompak.

  4. Harganya murah , karena komponennya sedikit.

  5. Unit I/O yang sederhana, misalnya LCD, LED, Sensor.

  6. Lebih tahan terhadap kondisi lingkungan ekstrim, misalnya temperature tekanan, kelembaban, dan sebagainya.

3. Klasifikasi Mikrokontroler

Mikrokontroler memiliki beberapa klasifikasi yaitu sebagai berikut:

  1. ROM (Flash Memory) dengan kapasitas 1024 byte (1 KB)

  2. RAM berkapasitas 68 byte

  3. EEPROM (memori data) berkapasitas 64 byte

  4. Total 13 jalur I/O (Port B 8 bit)

  5. Timer/Counter 8 bit dengan prescaler

  6. Fasilitas pemrograman di dalam ias t (ICSP = In Circuit Serial Programing.

4. Arsitektur Mikrokontroller

Menurut Setiawan (2011:11) arsitektur adalah rancangan hardware internal yang berkaitan dengan: tipe, jumlah dan ukuran register serta rangkaian lainnya. Arsitektur pada sebuah mikrokontroler sangat mempengaruhi kinerja pada saat melakukan proses pengendalian (control).

Menurut Setiawan (2011:11) Semua jenis mikrokontroler didasarkan pada arsitektur Von-Neuman atau arsitektur Harvard.

a. Arsitektur Von-Neuman

Mikrokontroler yang di disain berdasarkan arsitektur ini memilik sebuah data bus 8-bit yang dipergunakan untuk "fetch" instruksi dan data. Program (instruksi) dan data disimpan pada memori utama secara bersama-sama. Ketika kontroler mengalamati suatu alamat di memori utama, hal pertama yang dilakukan dalah mengambil instruksi untuk dilaksanakan dan kemudian mengambil data pendukung dari instruksi tsb. Cara ini memperlambat operasi.

Gambar 2.13 Arsitektur Mikrokontroller Von-Neuman

b. Arsitektur Harvard

Arsitektur ini memilik bus data dan instruksi yang terpisah, sehingga memungkinkan eksekusi dilakukan secara bersamaan. Secara teoritis hal ini memungkinkan eksekusi yang lebih cepat tetapi dilain pihak memerlukan disain yang lebih kompleks.

Gambar 2.14 Arsitektur Mikrokontroller Harvard

Didalam mempelajari mikrokontroler, kita dituntut untuk dapat menguasai dua hal yang sangat pokok, berdasarkan arsitektur mikrokontroler tersebut kedua hal tersebut adalah hardware dan software. dari mikrokontroler. Hardware akan sangat kita perlukan ketika kita akan manggunakan mikrokontroler untuk berhubungan dengan device (perangkat) yang sifatnya berada diluar mikrokontroler, software (instruksi) dalam hal ini juga tidak kalah penting karena didalam mengendalikan suatu system kita juga harus memahami instruksi dari mikrokontroler yang digunakan.

5. Instruksi Mikrokontroller

Menurut Setiawan (2011:12) Instruksi pada mikrokontroler dikenal ada 2 yaitu:

  1. CISC

  2. Saat ini hampir semua mikrokontroler adalah mikrokontroler CISC (Complete Instruction Set Computer). Biasanya memiliki lebih dari 80 instruksi. Keunggulan dari CISC ini adalah adanya instruksi yang bekerja seperti sebuah makro, sehingga memungkinkan programmer untuk menggunakan sebuah instruksi menggantikan beberapa instruksi sederhana lainnya.

  3. RISC

  4. Saat ini kecenderungan industri untuk menggunakan disain mikroprosesor RISC (Reduced Instruction Set Computer). Dengan menggunakan jumlah instruksi yang lebih sedikit, memungkinkan lahan pada chip (silicon real-estate) digunakan untuk meningkatkan kemampuan chip. Keuntungan dari RISC adalah kesederhanaan disain, chip yang lebih kecil, jumlah pin sedikit dan sangat sedikit mengkonsumsi daya.

6. Input/Output Mikrokontroller

Menurut Setiawan (2011:14) Mikrokontroller mempunyai beberapa Input/Output diantaranya yaitu :

  1. UART (Universal Asynchronous Receiver Transmitter) adalah adapter serial port adapter untuk komunikasi serial asinkron.

  2. USART (Universal Synchronous/Asynchronous Receiver Transmitter) merupakan adapter serial port untuk komunikasi serial sinkron dan asinkron. Komunikasi serial sinkron tidak memerlukan start/stop bit dan dapat beroperasi pada click yang lebih tinggi dibanding asinkron.

  3. SPI (serial peripheral interface) merupakan port komunikasi serial sinkron.

  4. SCI (serial communications interface) merupakan enhanced UART (asynchronous serial port).

  5. I2C bus (Inter-Integrated Circuit bus) merupakan antarmuka serial 2 kawat yang dikembangkan oleh Philips. Dikembangkan untuk aplikasi 8 bit dan banyak digunakan pada consumer elektronik, otomotif dan indistri. I2C bus ini berfungsi sebagai antarmuka jaringan multi-master, multi-slave dengan deteksi tabrakan data. Jaringan dapat dipasangkan hingga 128 titik dalam jarak 10 meter. Setiap titik dalam jaringan dapat mengirim dan menerima data. Setiap titik dalam jaringan harus memiliki alamat yang unik.

  6. Analog to Digital Conversion (A/D). Fungsi ADC adalah merubah besaran analog (biasanya tegangan) ke bilangan digital. Mikrokontroler dengan fasilitas ini dapat digunakan untuk aplikasi-aplikasi yang memerlukan informasi analog (misalnya voltmeter, pengukur suhu dll). Terdapat beberapa tipe dari ADC sbb:
    o Succesive Approximation A/D converters.
    o Single Slope A/D converters.
    o Delta-Sigma A/Ds converters.
    o Flash A/D.

  7. D/A (Digital to Analog) Converters. Kebalikan dar ADC seperti diatas.

  8. Comparator. Mikrokontroler tertentu memiliki ssebuah atau lebih komparator. Komparator ini bekerja seperti IC komparator biasa tetapi sinyal input/output terpasang pada bus mikrokontroller.

Konsep Dasar Arduino

1. Definisi Arduino

Arduino didefinisikan sebagai sebuah platform elektronik yang open source, berbasis pada software dan hardware yang fleksibel dan mudah digunakan, yang ditujukan untuk seniman, desainer, hobbies dan setiap orang yang tertarik dalam membuat objek atau lingkungan yang interaktif (Artanto, 2012:1).

Arduino sebagai sebuah platform komputasi fisik (Physical Computing) yang open source pada board input ouput sederhana, yang dimaksud dengan platform komputasi fisik disini adalah sebuah ias t fisik hyang interaktif dengan penggunaan software dan hardware yang dapat mendeteksi dan merespons situasi dan kondisi.

Menurut Artanto (2012:2), kelebihan arduino dari platform hardware mikrokontroler lain adalah:

  1. IDE Arduino merupakan multiplatform yang dapat dijalankan di berbagai sistem operasi, seperti Windows, Macintosh dan Linux.

  2. IDE Arduino dibuat berdasarkan pada IDE processing yang sederhana sehingga mudah digunakan.

  3. Pemrograman Arduino menggunakan kabel yang terhubung dengan port USB, bukan port serial. Fitur ini berguna karena banyak komputer yang sekarang ini tidak memiliki port serial.

  4. Arduino adalah hardware dan software open source. Pembaca bisa mendownload software dan gambar rangkaian Arduino tanpa harus membayar ke pembuat Arduino.

  5. Biaya hardware cukup murah, sehingga tidak terlalu menakutkan untuk membuat kesalahan.

  6. Proyek Arduino ini dikembangkan dalam lingkungan pendidikan, sehingga bagi pemula akan lebih cepat dan mudah mempelajarinya.

  7. Memiliki begitu banyak pengguna dan komunitas di internet yang dapat membantu setiap kesulitan yang dihadapi.

Arduino memiliki berbagai macam versi. Beberapa versi yang cukup banyak tersedia di pasaran lokal, diantaranya adalah versi Arduino Duemilanove yang disebut sebagai Arduino 2009, versi Arduino Mega, dan versi Arduino Uno yang disebut sebagai Arduino 2010.

2. Sejarah Arduino

Proyek Arduino dimulai pertama kali di Ovre, Italy pada tahun 2005. Tujuan proyek ini awalnya untuk membuat peralatan control interaktif dan modul pembelajaran bagi siswa yang lebih murah dibandingkan dengan prototype yang lain. Pada tahun 2010 telah terjual dari 120 unit Arduino. Arduino yang berbasis open source melibatkan tim pengembang. Pendiri arduino itu Massimo Banzi dan David Cuartielles, awalnya mereka memberi nama proyek itu dengan sebutan arduino dari ivrea tetapi seturut perkembangan zaman nama proyek itu diubah menjadi Arduino.

Arduino dikembangkan dari thesis hernando Barragan di desain interaksi institute Ivrea. Arduino dapat menerima masukan dari berbagai macam sensor dan juga dapat mengontrol lampu, motor dan aktuator lainnya. Mikrokontroler pada board arduino di program dengan menggunkan bahasa pemrograman arduino (based on wiring) dan IDE arduino (based on processing). Proyek arduino dapat berjalan sendiri atau juga bisa berkomunikasi dengan software yang berjalan pada komputer.

3. Hardware

Papan Arduino merupakan papan mikrokontroler yang berukuran kecil atau dapat diartikan juga dengan suatu rangkaian berukuran kecil yang didalamnya terdapat komputer berbentuk suatu chip yang kecil. Pada Gambar 2.5. dapat dilihat sebuah papan Arduino dengan beberapa bagian komponen didalamnya.

Gambar 2.15 Hardware Arduino

Pada hardware arduino terdiri dari 20 pin yang meliputi:

a. 14 pin IO Digital (pin 0–13)

Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan input atau output yang diatur dengan cara membuat program IDE.

b. 6 pin Input Analog (pin 0–5)

Sejumlah pin analog bernomor 0–5 yang dapat digunakan untuk membaca nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0 dan 1023.

c. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11)

Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog dengan cara membuat programnya pada IDE.

Papan Arduino Uno dapat mengambil daya dari USB port pada komputer dengan menggunakan USB charger atau dapat pula mengambil daya dengan menggunakan suatu AC adapter dengan tegangan 9 volt. Jika tidak terdapat power supply yang melalui AC adapter, maka papan Arduino akan mengambil daya dari USB port. Tetapi apabila diberikan daya melalui AC adapter secara bersamaan dengan USB port maka papan Arduino akan mengambil daya melalui AC adapter secara otomatis.

4. Software Arduino

Software arduino yang digunakan adalah driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama pengembangan arduino. IDE atau Integrated Development Environment suatu program khusus untuk suatu komputer agar dapat membuat suatu rancangan atau sketsa program untuk papan Arduino. IDE arduino merupakan software yang sangat canggih ditulis dengan menggunakan java. IDE arduino terdiri dari:




Contributors

Muhamad, Siti Nurhayati