## OTOMATISASI SYSTEM PENCUCIAN MOBIL MENGGUNAKAN MIKROKONTROLER AT89C51

## Halimatussa’diah
Fakultas Teknik Dan Ilmu Komputer, Program Studi Informatika Universitas Indraprasta PGRI Email: gbhock300679@gmail.com

## ABSTRAK
Banyaknya  peralatan elektronika yang  bekerja  secara analog dan manual yang  mempunyai kemampuan  dan efektifitas yang  rendah  membuat  orang  berpikir  untuk  membuat  peralatan elektronika yang  mempunyai  kemampuan    dan  keandalan  yang  tinggi.  Salah  satu  contohnya  adalah  aplikasi pencucian  mobil otomatis berbasis mikrokontroler .  Pada  kesempatan  ini  penulis  mencoba  merancang sistim kerja mesin pencucian mobil otomatis menggunakan mikrokontroler AT 89C51. Adapun tujuannya adalah  untuk  mengaplikasikan  ilmu  pengetahuan  yang  didapat  kedalam  bentuk  nyata  yaitu  perancangan pembuatan suatu alat. Dengan batasan masalahnya yaitu perancangan dan pembuatan perangkat keras dan lunak  dari  mesin  pencucian  mobil otomatis yang  menggunakan  bahasa Assembly MCS-51, Mikrokontroler ATMEL  89C51,  Motor Stepper penggerak belt  conveyer .  Metode  penelitiannya  adalah melakukan  studi  mengenai  sistem  mesin  pencucian  mobil otomatis menggunakan mikrokontroler dan rangkaian elektronika .  Urutan  dari sistematika penyajian  adalah  menyajikan  latar  belakang,  tujuan penulisan, batasan masalah, dan diakhiri dengan sistematika pembahasan. Menyajikan gambaran tentang karakteristik  dari mikrokontroler ATMEL  AT89C51  yang  merupakan  komponen  utama.  Ini  merupakan inti  penulisan,  tahap  perancangan  alat  mulai  dari  tujuan,  perancangan,  percobaan  perakitan  sampai ketahap setelah dinyatakan alat berfungsi. Alat hasil rancangan akan diukur dan diuji secara keseluruhan untuk  mengetahui  karakteristik  alat  dan  kendalanya  yang  akan  diuraikan  tentang  prinsip  kerja  dan  blok diagram rangkaian, rangkaian lengkap, perancangan alat, analisa rangkaian dan program komputer.
Kata kunci: efektifitas ; assembly MCS-51 , AT89C51 ; mikrokontroler; otomatis; karakteristik .

## ABSTRACT
The  number  of  electronic  devices  that  work  in  analog  and  manual  that  have  low  ability  and effectiveness make  people  think  to  make  electronics  equipments  that  have  ability  and  high  reliability.  One  example  is  a microcontroller-based automated car wash application. On this occasion the author tries to design the automatic car  washing  machine  work  system  using  AT  89C51  microcontroller.  The  purpose  is  to  apply  the  knowledge acquired into the real form of designing the making of a tool. With limitations of the problem is the  design and manufacture  of  hardware  and  software  of  automated  car  washing  machine  using  Assembly  language  MCS-51, ATMEL 89C51 Microcontroller, Stepper motor belt conveyer. The research method is to study the automatic car washing machine system using microcontroller and electronics circuit. The order of the presentation systematics is to  present  the  background,  the  purpose  of  writing,  the  boundary  of  the  problem,  and  end  with  the  systematic discussion.  Presents  a  picture  of  the  characteristics  of  ATMEL  AT89C51  microcontroller  which  is  the  main component.  This  is  the  essence  of  writing,  the  design  stage  of  the  tool  ranging  from  goal,  design,  assembly experiment  to  phases  after  the  tool  is  declared  functioning.  The  design  tool  will  be  measured  and  tested  in  its entirety to determine the tool characteristics and constraints that will be described on the working principle and block circuit diagram, complete circuit, tool design, circuit analysis and computer program.
Keywords: effectiveness; assembly MCS-51; AT89C51; microcontroller; automatic; characteristics.

## 1. PENDAHULUAN

## 1.1 Latar Belakang
Dalam kehidupan manusia di dunia yang serba modern ini, banyak manusia menggunakan perangkat elektronika sebagai penunjang kebutuhan hidupnya. Dengan kemajuan elektronika maka dapat membantu mempermudah pekerjaan yang dilakukan oleh manusia. Banyaknya peralatan-peralatan elektronika yang bekerja  secara analog dan manual yang  mempunyai  kemampuan  dan efektifitas yang  rendah  membuat
orang berpikir untuk membuat peralatan elektronika yang mempunyai kemampuan  dan keandalan yang tinggi.
Penggunaan komputer sebagai perantara pengendali pada dasarnya untuk malaksanakan otomatisasi kerja pada perangkat yang dikendalikan. Salah satu contohnya adalah aplikasi pencucian mobil otomatis berbasis mikrokontroler . Berdasarkan pemikiran di atas, pada kesempatan ini penulis mencoba merancang sistim  kerja  mesin  pencucian  mobil otomatis menggunakan mikrokontroler AT  89C51,  dimana penggunaan mikrokontroler sebagai  komponen  utama  dikarenakan mikrokontroler mempunyai kemampuan  menggerakkan  alat  atau  sistem  berdasarkan  program  yang  dimasukkan  ke  dalam mikrokontroler tersebut.
Adapun  tujuan  penulisan  adalah  untuk  mengaplikasikan  ilmu  pengetahuan  yang  didapat  kedalam bentuk nyata yaitu perancangan pembuatan suatu alat. Disamping itu dengan membuat perancangan suatu alat  penulis  dituntut  untuk  dapat  menyelesaikan  suatu  pokok  permasalahan  secara  ilmiah  dan  dapat mempertanggungjawabkan hasil suatu pemikiran.

## 1.2 Rumusan Masalah
Dalam penulisan akan dibahas hal-hal  yang berhubungan dengan proses pencucian  mobil otomatis dan untuk membatasi masalah maka hanya dibahas hal-hal sebagai berikut:
a) Bagaimana merancang dan membuat perangkat keras dari mesin pencucian mobil otomatis.
b) Bagaimana merancang dan membuat perangkat lunak dari mesin pencucian mobil otomatis yang menggunakan bahasa assembly MCS-51.
c) Bagaimana  alat  utama mikrokontroler ATMEL  89C51  digunakan  untuk  pengendali  dan pengontrol utama mesin pencucian mobil otomatis.
d) Bagaimana motor stepper digunakan untuk penggerak belt conveyer .

## 2. METODOLOGI

## 2.1 Mikrokontroler ATMEL MCS-51

## 2.1.1 Dasar Pemilihan Mikrokontroler
Bila  sebuah mikroprosesor dikombinasikan  dengan  I/O  dan memory (RAM  dan  ROM)  akan dihasilkan sebuah mikrokontroler , dimana  kombinasi dari komponen–komponen tersebut sudah terdapat dalam satu Chip Integrated Circuit [1]. Disebabkan mikrokontroler Sudah memiliki beberapa periferal di dalam chip IC, maka mikrokontroler mempunyai kelebihan dalam hal : 1) Ukuran sistem yang jauh lebih ringkas
2) Harga yang ekonomis
3) Kemudahan dalam merancang sistem yang berbasiskan Mikrokontroler.
4) Tingkat keamanan yang lebih dijamin.
5) Kehandalan yang lebih dijamin.
Kerugiannya  adalah  kemampuan  sistem  yang  terbatas  jika  menggunakan mikrokontroler. Hal  ini disebabkan  karena  adanya  keterbatasan  dari  memori  yang  digunakan.  Suatu  aplikasi  memiliki  beberapa perbedaan  dimana  terdapat  beberapa  set  instruksi  pada mikrokontroler yang  tidak  sama  dengan mikroprosesor. Set  instruksi mikroprosesor bersifat processing  intensive dalam  bekerja  dengan  inputan kapasitas  yang  cukup  besar,  bekerja  dengan  cara nibble,  byte and word .  Berikut  ini  adalah  kemampuan dari mikrokontroler AT89C51.
1) Kompatible dengan MCS 51
2) 8 Bit Mikrokontroler 3) 4 Kbytes  In  System  Reprogrammable  Flash  Memory dengan  kemampuan  sampai  1000  kali pemrograman/penghapusan.
4) Range operasi 0 – 24 MHz
5) 128 x 8 Bit RAM
6) 32 Jalur I/O
7) Dua 16 Bit Timer/Counter 8) Enam sumber interupsi
9) On–Chip Oscillator dan Clock Cicuity 10) Programmable serial channel .

## 2.1.2 Organisasi Memori
Organisasi memori pada mikrokontroler AT89C51 adalah sebagai berikut : 1. Memori Program
Mikrokontroler AT89C51  memiliki  ruang  memori  program  yang  terpisah  dengan  memori  data, ruang  memori  program  dapat  mencapai  alamat  hingga  4 Kbytes  flash ROM  ( address 0000H sampai 0FFFH).
2. Memori Data.
Memori data external pada mikrokontroler AT89C51  memiliki  ruang  hingga  64 kbytes , pengaksesan data ke memori data eksternal dilakukan dengan menggunakan data pointer melalui instruksi  “MOV  X”.  Disamping  memiliki  RAM external mikrokontroler AT  89C51  memiliki RAM internal yang  pengaksesannya  terpisah  dengan  RAM external, RAM internal AT89C51 berkapasitas  128 bytes ditambah  dengan  sejumlah  SFR  ( Special  Function  Register ),  alamat terendah  dari  128 bytes  internal yang dapat  diakses  dengan  mode  pengalamatan  langsung  atau dengan  pengalamatan  tidak  langsung,  sedangkan special  function  register (SFR)  hanya  dapat diakses  secara  pengalamatan  langsung.  Dari  128 byte RAM  internal  yang  dapat  diakses  secara pengalamatan langsung dan pengalamatan tidak langsung dapat dikelompokkan ke dalam 3 buah segmen alamat yaitu :
a) Register  Bank 0–3,  berlokasi  mulai  00H  sampai  1FH  (32 bytes ),  masing–masing register bank memiliki  8 bytes  register yaitu register 0  sampai register 7.  Pada  saat reset  register bank default ke register bank 0. Hal yang harus diperhatikan pada penggunaan register bank adalah saat setelah reset stack pointer menunjukkan ke alamat 07H pada internal RAM dan akan  naik  ke  alamat  08H  yang  merupakan register pertama  pada register  bank kedua  (R1), jadi  jika  program  digunakan  lebih  dari  satu register  bank maka  SP  ( stack  pointer )  harus diinisialisasi ke alamat yang lain dari RAM yang tidak digunakan untuk penyimpanan data.
b) Daerah pengalamatan per bit, beralamat antara 20H sampai dengan 2FH (16 bytes ), masing– masing bit dari 128 bit yang terdapat pada segmen ini dapat diakses secara langsung (alamat 00H hingga alamat bit 7FH).
c) Sratch pada area, byte 30H hingga 7FH  disediakan sebagai RAM data.
3. Special Function Register (SFR).
Register–register yang digunakan untuk pengelolaan program dan kendali komponen–komponen periferal internal tergabung  didalam  SFR,  SFR  menempati  segmen  alamat  antara  80H  sampai dengan alamat FFH di dalam RAM internal mikrokontroler AT89C51, register–register tersebut adalah :
a) Akumulator
Register  akumulator seperti  yang  pernah  disebut  sebagai  penyangga  bagi  data  yang  akan diperoleh  dan  sekaligus  tempat transit bagi  data  yang  akan  dan  telah  selesai  diolah  oleh bagian logika dan aritmatika.
b) Register B
Register B  digunakan  selama  operasi  perkalian  dan  pembagian  data  yang  akan dikalikan/dibagikan  disimpan  pada akumulator dan register B,  dan  hasilnya  disimpan  pada akumulator dan register B. c) Program Status Word (PSW)
PSW  sebagai register yang  berisi  data–data  kondisi mikrokontroler setelah  suatu  operasi selesai  dijalankan, register PSW  memiliki  lebar  8  bit,  dimana bit ke-3  dan  ke-4  digunakan untuk pemilihan register bank
d) Stack Pointer (SP) Register SP berisi alamat stack tertinggi dari lokasi stack di dalam internal RAM, register ini berguna  untuk  menyimpan  alamat-alamat  data  yang  ditandai  pada  saat  terjadi  pemanggilan sub program dan interupsi program.
e) Data Pointer (DPTR)
Register DPTR merupakan register 16 bit DPH dan DPL, DPH berisi alamat tinggi dan DPL berisi  alamat  rendah  dari  data  RAM external .  Semua  pengaksesan  data  ke  RAM external alamatnya ditunjuk melalui register DPTR.
f) Register Port
Register Port ada 4 yaitu register P0, P1, P2 dan P3. Register port berisi data-data yang akan dikirim ke luar dan data-data yang telah dibaca dari luar.
g) Register Buffer Data Serial (SBUF)
Register SBUF  terdiri  atas  dua  yaitu register buffer kirim  dan register  buffer terima,  yang masing-masing  digunakan  sebagai buffer bagi  data  yang  akan  dikirim  serial  dan  data  yang akan diterima secara serial pula.
h) Register Pewaktu.
Register pewaktu  digunakan  untuk  menyimpan  data offset yang  akan  digunakan  untuk membatasi perhitungan waktu, pewaktu yang terdapat pada mikrokontroler AT89C51 adalah pewaktu 16 bit sebanyak 2 buah, maka terdapat 2 buah register pewaktu yang dibentuk dari pasangan-pasangan register 8 bit , yaitu TH0 dan TL0 dengan TH1 dan TL1.
i) Register–register Kendali
Register IP  ( Interrupt  Priority )  merupakan register pengatur level prioritas  pada mikrokontroler AT89C51 yaitu pewaktu interupsi TF0 dan TF1, external interupsi INT0 dan INT1  dan  serial port interupsi  T1  dan  R1,  tingkatan  prioritas  interupsi  dari  keenam  buah interupsi tersebut dapat diatur sesuai dengan keperluan.
j) Register IE ( Interrupt Enable ) merupakan register yang digunakan untuk mengatur keaktifan sistem interupsi, melalui register ini interupsi–interupsi dapat diaktifkan dan dinonaktifkan
k) Register TMOD  ( Timer MODe)  merupakan register yang  berfungsi  mengatur  mode  kerja dan  keaktifan  serta  fungsi  (sebagai  pewaktu  atau  sebagai  pencacah)  pada  kedua  pewaktu yang ada pada mikrokontroler AT89C51.
l) Register TCON ( Timer CONtrol) adalah register yang digunakan  untuk  mengatur  keaktifan dan  juga  berisi flag–flag yang  menunjukkan  keaktifan  interupsi  pewaktu,  disamping  itu register TCON  juga  digunakan  untuk  mengatur  keaktifan  dari  mode  interupsi external dan berisi flag–flag yang menunjukkan keaktifan interupsi internal .
m) Register  SCON  (Serial  CONtrol) merupakan register yang  mengatur  keaktifan,  mode  dan format  data  dari  sistem  komunikasi  serial  antara mikrokontroler AT89C51  dengan lingkungannya.

## 2.1.3 Struktur Port
Keempat buah port AT89C51 masing-masing terdiri dari 8 jalur port bi-directional (biasa digunakan sebagai  masukan  dan  keluaran).  Masing–masing  jalur port tersebut  terdiri  dari latch , output  driver ,  dan input  buffer . Output  buffer dari port 0  dan  2,  dan input  buffer dari port 0  digunakan  untuk  mengakses memori external . Output Port 0 adalah alamat bagian bawah memori external yang dimultipleks dengan data yang akan ditulis atau dibaca. Output port 2 adalah alamat bagian atas dari memori external . Namun bila  tidak  dipakai  ruang  memori  program external ,  maka  kedua port tersebut  langsung  dapat  dipakai sebagai port  input atau output .  Semua  pin port 3  mempunyai  fungsi  lain  dari  luar port, fungsi  yang dimaksud adalah sebagai berikut :
a) P3.0 : Port input serial , RxD b) P3.1 : Port output serial , Txd. c) P3.2 : Input interupsi externa l, INT0 d) P3.3 : Input interupsi externa l, INT1 e) P3.4 : Input external untuk pewaktu/pencacah 0, T0
f) P3.5 : Input external untuk pewaktu/pencacah 1, T1
g) P3.6 : Sinyal tulis memori external aktif low , WR h) P3.7 : Sinyal baca memori external aktif low , RD
Konfigurasi  bagian port yang  terdiri dari latch , buffer I/O. Latch yang  dipakai  dapat  diaplikasikan dengan flip–flop D. Data dari bus internal di latch saat CPU mengarahkan pada sinyal text ke latch , dan hasil  keluaran latch diberikan  ke  bus internal saat  CPU  memberi  sinyal  baca  ke latch .  Data  pada  pin diberikan  ke  bus internal sebagai  respon  terhadap  sinyal  baca  pin  dari  CPU.  Beberapa  instruksi  yang berfungsi membaca port mengaktifkan sinyal baca latch dan yang lain mengaktifkan sinyal baca pin. Port 1, 2, 3 memiliki internal pull up , port 0 dengan open drain output . Di setiap jalur I/O bias di pakai  masing-masing  sebagai input–output .  Jika  dipakai  sebagai input , port  latch harus  berisi  1.  Untuk port 1, 2, dan 3 pin akan di- pull up tinggi oleh pull up internal , dan juga di- pull up rendah oleh sumber external . Port 0 tidak memiliki pull up internal. Pull up FET itu bisa di pakai jika ada akses external memori. Port akan berfungsi sebagai input berfrekuensi tinggi bila latch diisi 1 dan akan bersifat open drain bila sebagai output.

## 2.2 Metode Pengalamatan
Metode pengalamatan pada AT89C51 adalah sebagai berikut : a) Pengalamatan Langsung ( Direct Addressing ) Pada  pengalamatan  langsung,  dalam  perintahnya operand di  arahkan  pada  suatu  alamat  yang lebarnya  8  bit,  dan  hanya  bisa  digunakan  untuk  data internal RAM  dan  SFR.  MOV  A, direct (pindahkan langsung dari byte tertentu ke akumulator ) b) Pengalamatan Tidak Langsung ( Indirect Addressing ). Pada  pengalamatan  tidak  langsung, perintah  mengarahkan  pada  register yang  di  dalamnya terdapat alamat dari operand . External dan Internal RAM dapat dialamati secara tidak langsung. Register alamat untuk alamat dengan  lebar  8  bit  bisa  berupa  R0  dan  R1  yang  digunakan  untuk  memilih register bank atau Stack Pointer . Register alamat untuk alamat dengan lebar 16 bit digunakan data pointer DPTR. MOV A, @Ri  (Pindahkan Indirect RAM ke akumulator ). c) Pengalamatan Berindeks (Indexed Addressing)
Yang  dapat  diakses  dengan  pengalamatan berindeks hanya memori program.  Mode  ini dimaksudkan untuk membaca look up table di memori program. MOVC A,@A+PC (Pindahkan kode byte relatif program counter ke akumulator ). MOVC A,@A+DPTR (Pindahkan kode byte relatif relatif DPTR ke akumulator ) d) Pengalamatan segera ( Immediate Addressing ). Dalam  memori  program  suatu opcode dapat  langsung  diikuti  oleh  suatu konstanta ,  sebagai contoh : MOV  A,#16  :    isi akumulator dengan decimal 16,  Bila  digunakan  bilangan heksadesimal , hasilnya tetap sama yaitu MOV A,#0FH [2].

## 2.2.1 Diagram Blok  dan Cara Kerja
Tahap  selanjutnya  dalam  perancangan  suatu  alat  adalah  membuat  suatu diagram  blok, dimana diagram  blok ini  berfungsi  untuk  mempermudah  didalam  memahami  rangkaian  dan  perakitan  alat. Dengan demikian dalam tahap perancangan dan perakitan alat akan dibuat berdasarkan per- blok diagram rangkaian, masing-masing blok memiliki kegunaan yang saling berhubungan antara satu dan lainnya pada setiap rangkaian. Adapun diagram blok rangkaian yang dimaksud ditampilkan pada gambar 1.
Prinsip  kerja  alat  adalah  sebagai  berikut  :  Pada  alat  ini  terdapat  4  penempatan sensor  photodioda , dimana  masing-masing  penempatannya  digunakan  untuk  melakukan  tugas  yang  berbeda.  Penempatan photodiode yang pertama pada pintu masuk yang gunanya untuk mengaktifkan penyemprotan air sabun, photodiode kedua  pada  ruang  penyikatan  yang  digunakan  bersama  sama  oleh  dua mikrokontroler yaitu mikrokontroler pengendali konveyer dan mikrokontroler pengendali ruang penyikatan. Photodiode ketiga digunakan  untuk  mengendalikan  penyemprotan  air  bersih.  Terakhir  adalah photodioda yang  keempat digunakan untuk menggerakan fan yang berfungsi sebagai pengering. Proses kerja sistim otomatisasi ini diawali dengan pembacaan tombol start pada saat pencucian akan dimulai. Ketika tombol start diaktifkan maka mikrokontroler bekerja. Mikrokontroler akan  menggerakan Belt-conveyor (ban  berjalan)  untuk menggerakan  kendaraan  yang  terlebih  dahulu  dimatikan  mesinnya  sampai sensor  photodioda yang terpasang di pintu masuk akan terhalang kendaraan bagian depan [3].
Proses  selanjutnya,  jika mikrokontroler mendeteksi  adanya  kendaraan  pada  ruang  penyemprotan mikrokontroler melakukan proses penyemprotan air sabun yang disimulasikan dengan running led sampai sensor ruang penyemprotan kembali ke kondisi idle. Setelah  proses  pada  ruang  pertama  selesai  dan sensor pada  ruang  penyikatan  dalam  kondisi  aktif mikrokontroler akan  menginterupsi mikrokontroler pengendali ruang penyikatan  untuk me-load kembali data  hasil  sampling  diselingi  dengan  menggerakkan konveyer sebanyak  5  langkah.  Begitu  proses  ini dilakukan berulang–ulang sampai pada ketinggian terakhir kendaraan.
Pada  proses  penyikatan mikrokontroler akan  menggerakkan konveyer enam  langkah  kemudian berhenti.  Pada  saat  berhenti  ini mikrokontroler menginstruksikan  pengendali  ruang  penyikatan  untuk melakukan  tugasnya  yaitu  melakukan  proses  pembacaan  tinggi  kendaraan  dan  penyikatan.  Proses  ini dilakukan terus menerus sampai kendaraan meninggalkan ruang penyikatan.
Proses  selanjutnya  adalah  proses  pembilasan  dan  proses  pengeringan.  Proses  –  proses  tersebut dilakukan  dengan  tetap  menggerakkan konveyer .  Proses  pembilasan  dilakukan  jika sensor  photodiode yang  ada  di  ruang  pembilasan  terhalang  kendaraan.  Proses  ini  diawali  dengan  menonatifkan  proses sebelumnya  kemudian  mengaktifkan running led kedua  yang  merupakan  simulasi  air  pembilas.  Setelah proses  pembilasan  selesai  proses  berikutnya  adalah  proses  pengeringan  yang  ditandai  dengan terhalangnya sensor  photodiode di  ruang  pengeringan.  Tahap  ini  merupakan  proses  terakhir  dengan berputarnya fan pengering yang dilakukan oleh mikrokontroler master . Setelah semua tahapan dalam car wash system selesai semua buffer dan actuator kembali pada kondisi awal untuk proses pencucian

## 2.2.2 Rangkaian Simulasi Penyemprot
Rangkaian simulasi tersebut digunakan hanya sebagai simulasi dari penyemprotan air sabun dan air pembersih [5]. Pada gambar 2.2.2. A, B di bawah adalah rangkaian penyemprot yang digunakan. Masing- masing rangkaian terdiri dari 10 buah LED  yang diumpamakan sebagai penyemprot air, 10 buah dioda, IC 4017, serta 5 buah transistor yang berfungsi sebagai saklar untuk mengaktifkan LED yang dirangkai parallel .
Gambar 2. A, B. Rangkaian Simulasi Penyemprotan
A
B
Gambar 2 rangkaian A adalah simulasi untuk penyemprotan air bersih dan B adalah simulasi untuk rangkaian  penyemprotan  air  sabun.  Kedua  rangkaian  tersebut  membutuhkan  tegangan  5 Volt untuk mengaktifkan IC 4017.
Pada rangkaian diatas apabila pin 1A  mendapat tegangan 5 Volt maka IC 4017 akan aktif dan dan pin 1Y akan mengeluarkan tegangan sebesar 12 Volt , dan akan mengaktifkan penyemprot air. Apabila pin 1A mendapat  tegangan 0 Volt maka   pin 1Y akan   mendapat    tegangan 0 Volt . Rangkaian ini bekerja secara  bergantian  yaitu  apabila  rangkaian  penyemprotan  air  sabun  telah  selesai  maka  maka  secara otomatis rangkaian  penyemprot  air  bersih  (rangkaian  A  )  akan  bekerja  dan  rangkaian  pemyemprot  air sabun akan berhenti.

## 2.2.3 Perancangan Software
Apabila perangkat kerasnya sudah di aplikasikan, untuk selanjutnya bisa mengaplikasikan software nya yang bisa bekerjasama dengan perangkat keras dalam hal ini hardware , sebab tanpa adanya software atau  perangakat  lunak  maka hardware tidak  dapat  berfungsi  sebagaimana  mestinya,  maka  perangkat lunak adalah pola pikir dari hardware yang sangat penting. Untuk  membuat software , listing program  diaplikasikan  melalui sistem  prosedur dimana  setiap prosedur memiliki  kegunaan  tertentu  dan  secara  merata  prosedur  membuat  sistem  dari  program  yang diharapkan. Langkah awal dalam membuat listing program adalah membuat diagram alur atau flowchart sebagai  acuan  dasar  dalam  membuat  program.  Kemudian  setiap  fungsi  dari flowchart tersebut  dibuat listing programnya.
Adapun untuk membuat listing program dapat menggunakan  bahasa assembler yang khusus untuk keluarga mikrokontroler MCS-51,  dengan  bantuan  program  khusus  misalnya  ASEM-51  yang  sudah terkenal. Listing program  dibuat  dengan Word atau notepad kemudian  dikompilasi  oleh  ASEM-51 sehingga  berekstensi  OBJ  dan  terakhir  dikompilasi  kembali  sehingga  berekstensi  HEX.  File  yang berekstensi HEX inilah yang akan dimasukkan ke mikrokontroler AT89C51. Adapun sistem pengisian dapat dilakukan oleh program pengisi  yang ada pada program  ASEM-51 juga  dan  dengan  bantuan  alat  khusus    yang  tersedia  dipasaran  atau  dengan  meminta  bantuan  pada  toko elektronika khusus untuk mengisi program pada mikrokontroler.
Keterangan  gambar  3 flowchart  mikrokontroler  master adalah  sebagai  berikut  :  Proses  inisialisasi adalah  proses  mengkondisikan mikrokontroler untuk    siap  bekerja  [4].  Pada  proses  ini  yang  perlu diperhatikan untuk menset kondisi awal register  – register internal mikrokontroler dan input output -nya. Kemudian mikrokontroler akan mengecek kondisi pin Start switch pada pin P0.4. Jika pada pin ini terdeteksi logika 1 maka mikrokontroler akan melakukan looping sampai kondisi pin ini berubah menjadi berlogika 0. Jika logika 0 terdeteksi pada pin ini mikrokontroler akan mengirim data 1 ke pin P1.0 untuk menggerakkan motor DC penggerak konveyer . Pada  proses  selanjutnya mikrokontroler akan  menunggu  perubahan  logika  pada  pin  P0.1  berubah dari logika 0 menjadi logika 1 dimana pin ini digunakan untuk memantau apakah kendaraan sudah sampai ruang  penyiraman  air  sabun  atau  belum.  Logika  1  manandakan  bahwa  kendaraan  sudah  sampai  pada ruang penyiraman air sabun. Jika pada pin ini berlogika 1 mikrokontroler akan mengirimkan data melalui pin P1.2 untuk menyemprotkan air sabun dengan merubah logika dari 0 menjadi 1.  Proses penyemprotan air sabun ini akan bertahan sampai pin P0.1 berubah logika dari 1 menjadi 0.
Proses  pada  ruang  penyikatan  dipantau mikrokontroler melalui  P0.2.  Jika  logika  berubah  dari  0 menjadi  1  maka mikrokontroler akan  mengirim  perintah  ke  pengendali  ruang  penyikatan  untuk melakukan tugasnya. Pada proses ini mikrokontroler akan mengontrol gerakan konveyer melalui pin P0.0. Selama P0.2 berlogika 1 konveyer akan bergerak 6 langkah kemudian diam. Pada saat ini mikrokontroler kembali menginstruksi pengendali ruang penyikatan untuk melakukan tugasnya dengan mengirim logika 1 melalui pin P3.1.
Pada proses  penyiraman  air  bersih  ini mikrokontroler memantau  kondisi  dari  pin  P0.3. Jika  logika berubah  dari  0  menjadi  1  maka mikrokontroler akan  mengaktifkan  penyemprot  air  bersih  dengan memberi logika 1 pada pin P1.3 sampai pin P0.3 kembali berlogika 0.
Proses  terakhir  pada mikrokontroler adalah  proses  pengeringan.  Hal  ini  dilakukan mikrokontroler dengan  memberikan  logika  1  pada  motor  penggerak fan yaitu  pin  P1.1  selama  P0.3  berubah  logikanya dari 0 menjadi 1.

## 3. HASIL DAN PEMBAHASAN
Setelah  melakukan  perancangan  dan  pembuatan  alat  maka  langkah  berikutnya  adalah  melakukan pengukuran pada blok blok yang perlu. Pengukuran dalam hal ini diperlukan alat bantu multimeter digital.

## 3.1 Prosedur Ujicoba
Setelah perancangan dan pemahaman alat selesai, maka langkah selanjutnya adalah pengukuran dan analisa  system .  Hal  ini  dilakukan  untuk  lebih  memahami  dan  mengetahui  karakteristik  setiap blok rangkaian  sampai  fungsi  alat  secara  keseluruhan.  Dengan  demikian  dapat  kita  bandingkan  antara perancangan dan alat yang telah dibuat.

## 3.1.1 Setup Alat
Setup alat  merupakan rancangan pertam  kali supaya alat dapat berfungsi dengan  maksimal. Dalam penulisan tugas akhir ini dilakukan langkah-langkah setup alat sebagai berikut :
a) Photodiode. Sensor  photodiode berfungsi  sebagai  penerima  sinyal  berupa  pancaran  sinar  yang  dikeluarkan oleh infrared ,  yang  nantinya  akan  menjadi  input  bagi Mikrokontroller untuk  pengerjaan  suatu task.
b) Mikrokontroller AT89C51 Mikrokontroller AT89C51  ini  adalah  salah  satu  bagian  dari  MCS  yang  mempunyai  pin berjumlah 40, namun saya cukup  menjabarkan pin-pin  yang difungsikan untuk pembuatan alat, dimana  setiap port-port pada mikrokontroler mempuyai  kegunaan/kendali  khusus.  Hampir semua port pada mikrokontroller  bisa difungsikan  menjadi input dan output .  Untuk  lebih jelasnya, dibawah ini akan di paparkan kegunaan dari tiap-tiap port mikrokontroller .

## 3.1.2 Upload Software
Apabila  sudah  dapat  membuat  rancangan  dan  pembentukkan  alat,  maka  langah  berikutnya  yaitu menyusun  program  pengendali  alat  yang  terdapat  pada system ini.  Program  pengendalian  ini  bertujuan untuk mengarahkan langkah-langkah kerja pada tiap-tiap rangkaian.
Setiap  pengenadali  yang  disusun  berbasis  pengendali controller ,  sebab  pengendalian  ini  di  buat melalui  ATMEL  89C51.  Bahasa  pemrograman  yang  diaplikasikan  sebagai  pengarah program alat  ini
adalah  bahasa  pemrograman assembler .  Adapun  langkah-langkah upload  software yang  dilakukan  agar program pengendali tersebut dapat berfungsi sebagaimana mestinya adalah sebagai berikut :
a) Hidupkan komputer dan masukan pada system assembler .
b) Susunan pembuatan program harus sesuai dengan flowchart sebagai alur pengatur.
c) Jika pembuatan program selesai, maka jalankan program sesuai dengan perintah.
d) Apabila  tidak  ditemukan  masalah  pada  program,  lakukan  penyimpanan  program  ke mikrokontroller .
e) Tutup program dan lakukan pengecekan pada IC tersebut.
f) Lakukan  uji  coba  terhadap  alat,  apakah  sesuai  dengan  perancangan  yang  disusun  atau  belum. Jika  belum,  lakukan  pengecekan  pada  alur  program  atau  rubah  program  sampai  kerja  alat sempurna.

## 3.1.3 Tujuan
Tujuan  dari  pengukuran system pengaturan otomatisasi pencucian  mobil  berbasis mikrokontroller AT89C51 adalah untuk :
a) Mengetahui, apakah perangkat kerasnya dapat bekerja dengan baik atau tidak.
b) Melakukan pengambilan data untuk mendapatkan hasil kerja yang optimal.
c) Menarik kesimpulan dari seluruh proses kerja perangkat keras system tersebut secara otomatis.
Sebelum  melakukan  pengukuran  dan  analisa  pada  tugas  akhir  ini,  maka  dilakukan  prosedur  kerja untuk  mendapatkan  hasil  pengukuran  yang  akurat  dan  sempurna.  Terlebih  dahulu  dipersiapkan  hal-hal sebagai berikut :
1) Pengukuran  diatur  dengan  mengukur  bagian-bagian  pada  setiap  blok-blok  rangkaian.dalam  hal ini dilakukan beberapa kali agar mendapatkan hasil yang benar.
2) Komponen yang digunakan .
a) IC mikrokontroller AT89C51.
b) Regulator 7805 dan 7812
c) Photodiode
d) Infrared
3) Alat ukur
a) Multitester digital

## 3.2 Pengukuran Catu Daya
Rangkaian  catu  daya  adalah  hal  pertama  yang  harus  mendapat  perhatian  mengingat  catu  daya merupakan  sumber  daya  alat  sehingga  jika  catu  daya  tidak  bekerja  maka  alat  pun  tidak  akan  bekerja. Pengukuran dilakukan berulang – ulang dengan tujuan untuk meyakinkan apakah data yang diukur telah memenuhi  standar  rangkaiaan  atau  tidak  [6].  Berdasarkan  pengukuran  diperoleh  data  yang  ditunjukkan pada tabel 1 dan tabel 2.
Tabel 1. Hasil akhir tegangan output catu daya 5 VDC
Pengukuran Vout 5 VDC 1 4,9 2 4,9 3 4,9 4 4,9 5 4,9
Hasil  akhir  keluaran  tegangan  pada  pengukuran  catu  daya  sudah  sesuai  dengan  perancangan  yaitu sekitar  5  VDC  walaupun  hasil  akhirnya  tegangan  tidak  murni    bernilai  5  V,  namun  sudah  bisa  untuk digunakan.

## Table 2. Hasil akhir tegangan output catu daya 12 VDC
Pengukuran Vout 12 VDC 1 11,8 2 11,8 3 11,8 4 11,8 5 11,8
Hasil  akhir  keluaran  tegangan  pada  pengukuran  catu  daya  sudah  sesuai  dengan  perancangan  yaitu sekitar  12  VDC  walaupun  hasil  akhirnya  tegangan  tidak  murni    bernilai  12  V,  namun  sudah  bisa  untuk digunakan.

## 3.3 Pengukuran pada Photodioda
Pada  alat  ini  digunakan photodiode untuk  menerima  sinyal  berupa  pancaran  sinyal  dari infrared. Fungsi dari kedua blok rangkaian tersebut adalah sebagai pengukur ketinggian pada kendaraan yang akan memasuki  ruang  pencucian.  Penempatan sensor tersebut  terletak  ditiga  bagian  dengan prosedur pengerjaan output yang berbeda seperti yang telah dijelaskan pada bab sebelumya. Pengamatan dilakukan dengan cara yang sama dengan pengamatan catu daya. Pada saat photodiode terhalang, maka akan  diperoleh output tegangan. Begitu juga ketika photodiode tidak terhalang dan tentu saja tegangan tersebut berbeda dengan tegangan  yang diperoleh pada saat photodiode tersebut terhalang oleh benda. Hasil pengukuran output tegangan photodioda ditunjukkan pada tabel 3.
Table 3. Hasil pengukuran output tegangan photodioda
Pengukuran Vout terhalang Vout tidak terhalang 1 4,6 V 0,1 V 2 4,5 V 0.1 V 3 4,7 V 0,1 V 4 4,6 V 0,1 V 5 4,6 V 0,1 V
Disamping pengukuran tegangan, pada output juga disimulasikan dengan led . Pada saat photodiode terhalang led akan  padam  sedangkan  pada  saat photodiode tidak  terhalang led akan  menyala.  Dengan Vout seperti  pada table diatas  dapat  disimpulkan  bahwa  rangkaian photodiode tersebut  bekerja  sesuai dengan  yang diinginkan,  karena tegangan output tersebut  sesuai dengan level TTL. Rangkaian  Lengkap Otomatisasi System Pencucian Mobil Menggunakan Mikrokontroler AT89C51 ditunjukkan pada gambar 4.

## Gambar 4. Rangkaian Lengkap Otomatisasi System Pencucian Mobil Menggunakan
Mikrokontroler AT89C51

## 4. KESIMPULAN
Dari hasil yang diperoleh dan analisa terhadap sistem dapat ditarik beberapa kesimpulan, yaitu :
a) Penggunaan mikrokontroler adalah untuk mengontrol dan juga memberi command ke masing  – masing port, baik itu port masukan ataupun port keluaran. Dari pengujian sistem secara lengkap dengan menggunakan program yang tersimpan di dalam mikrokontroler, didapatkan hasil berupa putaran motor yang dapat dikontrol. Dengan memilih mikrokontroller at89c51 dengan membuat metode  pengalamatan  dalam  perancangan  suatu  alat  adalah  membuat  suatu diagram  blok, dimana diagram  blok ini  berfungsi  untuk  mempermudah  didalam  memahami  rangkaian  dan perakitan  alat.  Dengan  demikian  dalam  tahap  perancangan  dan  perakitan  alat  akan  dibuat berdasarkan  per- blok  diagram rangkaian,  masing-masing blok memiliki  kegunaan  yang  saling berhubungan antara satu dan lainnya pada setiap rangkaian.
b) Software  yang digunakan adalah bahasa assembler dimana  program ini dapat dijalankan  secara otomatis  dan  dapat  menjalankan  sistem  sesuai  dengan  yang  kita  inginkan  berdasarkan  dengan listing  program  yang  telah  kita  buat.  Sedang  perancangan software  listing  program dengan menggunakan  bahasa assembler yang  khusus  untuk  keluarga mikrokontroler MCS-51  dibuat dengan sistem prosedur dimana masing-masing prosedur memiliki kegunaan tertentu dan secara merata prosedur membuat sistem dari program yang diharapkan. Langkah awal dalam membuat listing  program adalah  membuat diagram  alur atau flowchart sebagai  acuan  dasar  dalam membuat program .  Kemudian  setiap  fungsi  dari flowchart tersebut  dibuat listing  programnya . Setelah perancangan baru dilakukan upload software secara keseluruhan.
c) Rangkaian  simulasi  penyemprotan  digunakan  hanya  sebagai  simulasi  dari  penyemprotan  air sabun  dan  air  pembersih,  dimana  Masing-masing  rangkaian  terdiri  dari  10  buah  LED  yang diumpamakan  sebagai  penyemprot  air,  10  buah dioda, IC  4017,  serta  5  buah transistor yang berfungsi  sebagai  saklar  untuk  mengaktifkan  LED  yang  dirangkai parallel .  Rangkaian  ini bekerja  secara  bergantian  yaitu  apabila  rangkaian  penyemprotan  air  sabun  telah  selesai  maka maka  secara otomatis rangkaian  penyemprot  air  bersih  (rangkaian  A  )  akan  bekerja  dan rangkaian pemyemprot air sabun akan berhenti.
d) Alat ini berjalan sesuai dengan input yang yang diberikan yaitu apabila ada obyek yang berjalan maka sensor akan  memberi input kepada mikrokontroler untuk  menjalankan  program penyemprot air. Disini program kontrol akan menjalan fungsinya kemudian akan memberi input pada mikro untuk melakukan penyikatan. Secara garis besarnya dapat disimpulkan bahwa mikro pada system pencucian mobil tersebut dapat berjalan secara baik berdasarkan program yang telah upload kan pada mikro tersebut, sedang kekurangannya adalah masih sering terjadi error pada alat apabila salah satu komponen pendukungnya tidak bekerja.
VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC U2 L293 2 7 10 15 1 9 3 6 11 14 1A 2A 3A 4A 1,2EN 3,4EN 1Y 2Y 3Y 4Y U1 AT89C51 9 18 19 29 30 31 1 2 3 4 5 6 7 8 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 39 38 37 36 35 34 33 32 RST XTAL2 XTAL1 PSEN ALE/PROG EA/VPP P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 Q3 PNP Q2 PNP Q1 PNP Y 1 12MHz C2 30pF C1 10uF C3 30pF Q4 PNP Q5 PNP R1 8K2 DIODE LED D48 IN4002 A - + MG7 Mtr Fan 1 2 A - + MG8 Mtr Fan 1 2 Q8 PNP Q7 PNP Q6 PNP Q9 PNP Q10 PNP U3B 74LS132 4 5 6 14 7 U3A 74LS132 1 2 3 14 7 U3C 74LS132 9 10 8 14 7 R2 POT 1 3 2 R3 2K C4 10nF R4 100K Q1 BC548 1 2 3 D14 D13 D12 LED R11 100K R10 3K3 Q12 BC550 1 2 3 Q11 BC550 1 2 3 R9 22K R8 100K D47 PHOTODIODE 1 2 D46 PHOTODIODE 1 2 A - + MG1 Mtr Konv ey er 1 2 D1 IN4002 R13 3K3 R12 22K U3 L293 2 7 10 15 1 9 3 6 11 14 1A 2A 3A 4A 1,2EN 3,4EN 1Y 2Y 3Y 4Y SW1 Start D46 PHOTODIODE 1 2 R8 100K R9 22K Q11 BC550 1 2 3 R10 3K3 U6 NE555 2 5 3 7 6 4 TR CV Q DIS THR R U5 NE555 2 5 3 7 6 4 TR CV Q DIS THR R R4 20K 1 3 2 C6 47uF C7 100uF U9 74LS373 3 4 7 8 13 14 17 18 1 11 2 5 6 9 12 15 16 19 D0 D1 D2 D3 D4 D5 D6 D7 OC G Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 R5 200 D4 IN4001 U7 4017 14 13 15 3 2 4 7 10 1 5 6 9 11 12 CLK ENA RST Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 CO R6 20K 1 3 2 D2 IR C9 100uF C8 47uF R2 1K R3 100 D3 PHOTODIODE 1 2 DIODE U8 4017 14 13 15 3 2 4 7 10 1 5 6 9 11 12 CLK ENA RST Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 CO R7 200 D25 IN4001 Mikro Pengendali Ruang Peny ikatan Mikro Pengendali Ruang Peny ikatan P1.0 P1.1 P1.2 P1.3 P0.3 P0.2 P0.0 P0.1 P0.4 P3.0 P3.1

## DAFTAR PUSTAKA
[1] Kurniawan,  F.  April  2009.    “ Implementasi  Mikrokontroler Sebagai  Pencacah  Berbasis  Pengukuran Periode Isyarat Masukan” Telkomnika  Vol. 7, No. 1.
[2] Wardoyo,  S.  November  2011.    “Dasar Mikroprosessor ”  Buku  Ajar  Universitas  Sultan  Ageng Tirtayasa.
[3] Anindita,  A.,  Sudjadi.,  &  Darjat.  2013  “Sistem  Informasi  Area  Parkir  Berbasis Mikrokontroler ATMEGA 16” TRANSMISI.
[4] Zulfikar.,  Tarmizi.,  Agus  Andria.  April  2011  “Perancangan  Pengontrolan Traffic  Light Otomatis ”Jurnal Rekayasa ElektrikaVol. 9, No. 3.
[5] Fathan,  M  Syuaib.,  Amalia,  F  Zahrina.,  Syufrijal.  Juni  2017  “Prototipe  Sistem  Pencucian  Mobil Otomatis Berbasis PLC” JUrnal Auto Cracy, Vol.4, no.1.
[6] Syafarudin, F., Anto, B. Oktober 2017 “Rancang Bangun Saklar Pemindah Otomatis Berpenggerak Motor Stepper  Variable  Reluctance Dengan  Pengendali Mikrokontroler ATMega8535”  Jom FTEKNIK Volume 4 no. 2