TUGAS AKHIR PENGENDALIAN MOTOR DC PADA BILLBOARD BERBASIS MIKROKONTROLLER AT89S51

dokumen-dokumen yang mirip
I/O dan Struktur Memori

MIKROKONTROLER AT89S52

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

Gambar 1.1. Diagram blok mikrokontroller 8051

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

Pendahuluan Mikrokontroler 8051

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

Mikrokontroler 89C51 Bagian II :

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

BAB III PERANCANGAN ALAT

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

BAB III PERANCANGAN DAN PEMBUATAN ALAT

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

BAB 2 TINJAUAN TEORITIS

BAB III PERANCANGAN SISTEM

BAB III ANALISA DAN CARA KERJA RANGKAIAN

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB III PERANCANGAN SISTEM. 3.1 Pengantar Perancangan Sistem Pengendalian Lampu Pada Lapangan Bulu

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global.

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

4. Port Input/Output Mikrokontroler MCS-51

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer,

BAB III PERANCANGAN SISTEM

Perancangan Serial Stepper

BAB 3 PERANCANGAN SISTEM

BAB 2 LANDASAN TEORI

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

Memprogram Port sebagai Output dan Input Sederhana

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

AT89S52 8kByte In-System Programmable Mikrokontroler

BAB III PERANCANGAN ALAT

BAB III KEGIATAN PENELITIAN TERAPAN

BAB III METODE PENELITIAN

TIMER DAN COUNTER MIKROKONTROLER ATMEL

CABLE LAN TESTER DENGAN TAMPILAN LCD TUGAS AKHIR DEMI SYAPUTRI

BAB 3 PERANCANGAN SISTEM

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

RANCANG BANGUN PENGAMAN MOBIL BERBASIS MIKROKONTROLER AT89S51 DENGAN APLIKASI TELEPON SELULER SEBAGAI INDIKATOR ALARM

BAB II TINJAUAN PUSTAKA. Jantung dalam terminologi sederhana, merupakan sebuah pompa yang terbuat

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB II LANDASAN TEORI

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash,

BAB II TINJAUAN PUSTAKA

BAB III PERENCANAAN DAN REALISASI

RANCANG BANGUN SISTEM KONTROL LAMPU OTOMATIS BERBASIS WEB

BAB 2 LANDASAN TEORI

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN ALAT PENDETEKSI KERUSAKAN KABEL

Tabel 1. Karakteristik IC TTL dan CMOS

BAB III PERANCANGAN DAN CARA KERJA RANGKAIAN

BAB II LANDASAN TEORI. Perkembangan robot sangat berkaitan erat dengan adanya kebutuhan

DAFTAR ISI. ABSTRAK... i KATA PENGANTAR... ii DAFTAR ISI... iv DAFTAR GAMBAR... vii DAFTAR TABEL... x DAFTAR LAMPIRAN... xi

BAB II TINJAUAN PUSTAKA

BAB III PERANCANGAN ALAT. Gambar 3.1 Diagram Blok Pengukur Kecepatan

DAFTAR ISI ABSTRAKSI KATA PENGANTAR DAFTAR TABEL DAFTAR GAMBAR DAFTAR LAMPIRAN DAFTAR ISTILAH DAN SINGKATAN. 1.1 Latar Belakang Masalah 1

III. METODE PENELITIAN. Penelitian tugas akhir ini dilaksanakan di Laboratorium Elektronika Dasar

MICROCONTROLER AVR AT MEGA 8535

BAB 3 PERANCANGAN SISTEM

TUGAS AKHIR RANCANG BANGUN PESAWAT CENTRIFUGE BERBASIS MIKROKONTROLLER AT89C51. Diajukan guna melengkapi sebagian syarat

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN ALAT

TUGAS AKHIR PERANCANGAN DAN IMPLEMENTASI PROTOTYPE PORTAL PINTU OTOMATIS PADA JALUR BUSWAY DENGAN SISTEM RADIO FREQUENCY

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

BAB III DESKRIPSI MASALAH

AKSES MEMORI Menggunakan DT-51 MinSys

Arsitektur Mikrokontroler

BAB III PROSES PERANCANGAN

TUGAS AKHIR. PEMISAH BARANG BERDASARKAN WARNA BERBASIS MIKROKONTROLLER BASIC STAMP MINI SYSTEM (BS2p)

BAB 3 PERANCANGAN SISTEM

TUGAS AKHIR PENGENDALIAN MOBIL MAINAN MENGGUNAKAN HANDPHONE

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

Mikroprosesor Z80 Suryanto Sutikno

BAB III PERANCANGAN ALAT. dimmer atau terang redup lampu dan pengendalian pada on-off lampu. Remote

Desain Tracker Antena Parabola Berbasis Mikrokontroler

REGISTER-REGISTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

TUGAS AKHIR. Pengendalian Perangkat Listrik Melalui Port Paralel Menggunakan Bahasa Program Borland Delphi 7.0

Sumber Clock, Reset dan Antarmuka RAM

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBAHASAN ALAT

BAB III PERANCANGAN ALAT DAN PROGRAM MIKROKONTROLER. program pada software Code Vision AVR dan penanaman listing program pada

BAB III PERANCANGAN DAN PEMBUATAN ALAT

MANAJEMEN ENERGI PADA SISTEM PENDINGINAN RUANG KULIAH MELALUI METODE PENCACAHAN KEHADIRAN & SUHU RUANGAN BERBASIS MIKROKONTROLLER AT89S51

PERTEMUAN TIMER & COUNTER MIKROKONTROLER 89C51

Transkripsi:

TUGAS AKHIR PENGENDALIAN MOTOR DC PADA BILLBOARD BERBASIS MIKROKONTROLLER AT89S51 Diajukan Guna Melengkapi Sebagian Syarat Dalam Mencapai Gelar Sarjana Strata Satu (S1) Disusun Oleh : Nama : Rudy Handoko NIM : 41405110097 Program Studi : Teknik Elektro Peminatan : Elektronika Pembimbing : Eko Ihsanto, Ir. M.Eng. TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS MERCU BUANA JAKARTA 2009 i

LEMBAR PERNYATAAN Yang bertanda tangan di bawah ini, N a m a : Rudy Handoko N.I.M : 41405110097 Program Studi : Teknik Elektro Fakultas : Teknologi Industri Judul Skripsi : Pengendalian Motor DC Pada Billboard Berbasis Mikrokontroller AT89S51 Dengan ini menyatakan bahwa hasil penulisan Skripsi yang telah saya buat ini merupakan hasil karya sendiri dan benar keasliannya. Apabila ternyata di kemudian hari penulisan Skripsi ini merupakan hasil plagiat atau penjiplakan terhadap karya orang lain, maka saya bersedia mempertanggungjawabkan sekaligus bersedia menerima sanksi berdasarkan aturan tata tertib di Universitas Mercu Buana. Demikian, pernyataan ini saya buat dalam keadaan sadar dan tidak dipaksakan. Penulis, Materai Rp.6000 [ ] ii

LEMBAR PENGESAHAN Pengendalian Motor DC Pada Billboard Berbasis Mikrokontroller AT89S51 Disusun Oleh : Nama : Rudy Handoko NIM : 41405110097 Peminatan : Elektronika Program Studi : Teknik Elektro Fakultas : Teknologi Industri Menyetujui, Pembimbing, (Eko Ihsanto, Ir. M.Eng. ) Mengetahui, Koordinator Tugas Akhir / Ketua Jurusan Teknik Elektro, ( Yudhi Gunardi, Ir. MT. ) iii

ABSTRAK Media iklan merupakan sarana informasi untuk memperkenalkan suatu produk kepada khalayak umum. Salah satu yang sering kita jumpai papan iklan reklame atau billboard di pinggiran jalan maupun dipertokoan. Dengan pembuatan alat rolling reklame ini maka iklan yang ditampilkan tidak monoton/ statis, seperti iklan-iklan yang suka dipajang atau ditempel di dinding pertokoan, terutama yang dalam ruangan (indoor). Alat rolling billboard ini, manfaatnya bagi pengguna tidak perlu repotrepot untuk menggeser atau menempel pada dinding, dan selain tampilannya menjadi menarik, juga dapat mengiklankan secara berganti-ganti tampilan, yaitu dengan tampilan sebanyak empat slide gambar iklan, pada satu tempat sehingga tidak banyak memakan tempat. Alat yang berbasis mikrokontroller AT89S51 ini berbentuk persegi panjang berukuran 65 x 57 Cm dengan tebal casing 5 Cm, sedangkan untuk tiap screen slidenya 50 x 40 Cm. Dalam tiap satu frame rolling, mendisplay satu slide gambar saja, dari empat slide gambar. Alat ini menggunakan 2 buah motor DC yang diletakan di atas dan di bawah casing, fungsinya untuk memutar screen slide gambar tadi, dengan cara motor DC-nya yang satu berputar sedangkan satunya lagi kondisi loss, begitu juga sebaliknya. Pergerakan motor tersebut mengunakan IC driver motor DC L293 dengan pengaplikasian H-Bridge. Sedangkan untuk waktu berhenti dan bergeraknya motor DC pada tiap slidenya diperlukan sensor posisi yaitu optocoupler, yang terdapat pada bagian bawah motor DC. Data-data pulsa cacahan yang dihasilkan dari putaran plat optocoupler inilah, sebagai masukan untuk diproses oleh mikrokontroller AT89S51 untuk menentukan kapan motor tersebut, harus berhenti atau tidak tiap slide gambarnya. Selanjutnya output dari mikrokontroller AT89S51 berguna untuk pemicu pengaturan driver motor L293 tadi, sehingga terjadi ketepatan perputaran motor DC pada saat running ataupun berhenti. iv

KATA PENGANTAR Alhamdulillahi Rabbilallamin. Puji syukur kehadiran Allah SWT, berkat taufik dan hidayah-nya serta tidak lupa pula kepada junjungan Nabi besar Muhammad SAW, yang telah melimpahkan kepada Penulis sehingga Penulis dapat menyelesaikan Tugas Akhir ini dengan judul Pengendalian Motor DC Pada Billboard Berbasis Mikrokontroller AT89S51. Adapun tujuan dari pada penyusunan Tugas Akhir ini adalah untuk memenuhi salah satu syarat guna memperoleh gelar sarjana strata satu (S1) pada Fakultas Teknologi Industri, Jurusan Teknik Elektro, Universitas Mercu Buana. Penulis menyadari meskipun telah berusaha untuk menyajikan pembahasan sebaik mungkin, namun masih terdapat kekurangan dalam Tugas Akhir ini, hal ini terjadi dikarenakan masih terbatasnya kemampuan dan pengetahuan Penulis. Penulis mengharapkan kritik serta saran yang membangun untuk menyempurnakan Tugas Akhir ini. Pada kesempatan ini, Penulis tidak lupa mengucapkan banyak terima kasih pada pihak-pihak, yang telah banyak memberikan bimbingan dan pengarahan dalam penyusunan Tugas Akhir ini hingga selesai, yaitu kepada : 1. Kedua Orang Tua, serta Abang, Kakak dan Keponakanku yang tercinta, yang selalu sabar membimbing Anaknya hingga kini dengan dukungan moril dan materil, semoga setelah lulus dapat memberikan yang terbaik untuk Keluarga (Amin). 2. Eko Ihsanto, Ir. M.Eng. selaku pembimbing yang telah memberikan kesempatan, waktu, saran, pikiran, dan tenaganya yang tak terhingga yang tak tergantikan oleh apapun dalam penyusunan Tugas Akhir ini. 3. Yudhi Gunardi, Ir. MT. selaku Ketua Jurusan Teknik Elektro, Universitas Mercu Buana. v

4. Rektor, Dekan serta semua Dosen Jurusan Elektro, Universitas Mercu Buana yang telah mendidik dan memberikan pelajaran yang berharga sebagai warisan hidup. 5. Rekan-rekan Mahasiswa Teknik Elektro. 6. Dan semua pihak yang telah membantu Penulis dalam penyusunan Tugas Akhir ini, yang tidak dapat disebutkan satu persatu. Kami berharap semoga Tugas Akhir ini dapat bermanfaat bagi para Pembaca, khususnya Mahasiswa Teknik Elektro Universitas Mercu Buana dan semoga dapat diterima bagi para Pembaca. Jakarta, Februari 2009 Penulis vi

DAFTAR ISI Halaman Judul. Halaman Pernyataan... Halaman Pengesahan... Abstrak...... Kata Pengantar... Daftar Isi... Daftar Tabel.. Daftar Gambar. i ii iii iv v vii x xi BAB I PENDAHULUAN 1.1 Latar Belakang.... 1 1.2 Pembatasan Masalah... 2 1.3 Tujuan Penelitian.... 2 1.4 Metodologi Penelitian. 2 1.5 Sistematika Penulisan. 3 BAB II LANDASAN TEORI 2.1 Mikrokontroller AT89S51 4 2.1.1 Arsitektur Mikrokontroller AT89S51. 4 2.1.1.1 Instruction Decoder 9 2.1.1.2 Program Counter (PC) dan Data Pointer (DPTR).. 9 2.1.1.3 Register A dan B 9 2.1.1.4 Register Program Status Word (PSW)... 9 2.1.1.5 RAM Internal. 10 2.1.1.6 ROM Internal. 10 2.1.1.7 Stack Pointer (SP).. 10 2.1.1.8 Special Function Register (SFR) 11 vii

2.1.1.9 Port 0, Port 1, Port 2 dan Port 3. 11 2.1.2 Organisasi Memori.. 11 2.1.3 Fasilitas Mikrokontroller AT89S51. 11 2.1.3.1 Port Input/Output... 11 2.1.3.2 Pewaktu CPU. 12 2.1.3.3 Port Serial... 12 2.1.3.4 Timer/ Counter... 12 2.1.3.5 Reset... 16 2.1.4 Mode Pengalamatan MCS-51. 16 2.1.4.1 Mode Pengalamatan Segera... 16 2.1.4.2 Mode Pengalamatan Langsung.. 16 2.1.4.3 Mode Pengalamatan Tidak Langsung 17 2.1.4.4 Mode Pengalamatan Register. 17 2.1.4.5 Mode Pengalamatan Kode Tak Langsung. 17 2.2 Sensor Posisi Motor... 17 2.3 Driver Motor DC... 18 2.4 Motor Arus Searah 21 2.4.1 Dasar Berputarnya Motor.. 21 BAB III PERANCANGAN DAN REALISASI ALAT 3.1 Rancangan Perangkat Keras.. 24 3.1.1 Rangkaian Sensor Posisi. 25 3.1.2 Komponen Mikrokontroller AT89S51 26 3.1.2.1 Realisasi Komponen Mikrokontroller 26 3.1.2.2 Driver Motor DC 29 3.1.3 Komponen Catu Daya. 30 3.1.4 Perancangan Casing Dan Screen Rolling... 32 3.2 Perancangan Perangkat Lunak.. 34 3.2.1 Pemrograman Mikrokontroller... 35 3.2.2 Realisasi Rancangan Perangkat Lunak... 36 viii

BAB IV PENGUJIAN ALAT 4.1 Pengujian Pencacahan Sensor Posisi... 37 4.2 Data Hasil Pengujian Pengukuran Selisih Slide Gambar Pada Alat... 38 BAB V KESIMPULAN Kesimpulan Dan Saran...... 40 DAFTAR PUSTAKA LAMPIRAN ix

DAFTAR TABEL Tabel 2.1 Register Timer Control (TCON).... 13 Tabel 2.2 Fungsi Bit-Bit Pada Register TCON.. 13 Tabel 2.3 Register Timer Mode Control (TMOD). 14 Tabel 2.4 Fungsi Bit-Bit Pada Register TMOD. 14 Tabel 2.5 Bit Pengatur Mode Timer/ Counter.... 15 Tabel 2.6 Tabel Kebenaran Dari IC L293.. 20 Tabel 3.1 Tabel Cara Kerja Driver Motor H-Bridge.. 30 Tabel 4.1 Pengukuran Selisih Slide Gambar Pertama... 38 Tabel 4.2 Pengukuran Selisih Slide Gambar Kedua... 38 Tabel 4.3 Pengukuran Selisih Slide Gambar Ketiga... 39 Tabel 4.4 Pengukuran Selisih Slide Gambar Keempat... 39 x

DAFTAR GAMBAR Gambar 2.1 Susunan Kaki-Kaki Mikrokontroller AT89S51. 5 Gambar 2.2 Diagram Blok Arsitektur Mikrokontroler AT89S51.. 8 Gambar 2.3 Optocoupler... 18 Gambar 2.4 H-Bridge... 19 Gambar 2.5 Motor DC (a) Searah Jarum Jam... (b) Berlawanan Arah Jarum Jam... 19 Gambar 2.6 Blok Diagram Internal L293 Driver Motor 20 Gambar 2.7 Penghantar Berarus Listrik Berada Di dalam Medan Magnet... 21 Gambar 2.8 Bangunan Motor Arus Searah 22 Gambar 2.9 Bentuk Fisik Motor Arus Searah (DC) dan Pemasangan Terminal Positif dan Negatif.. 23 Gambar 3.1 Diagram Kerja Rancangan Alat. 24 Gambar 3.2 Sensor Posisi... 25 Gambar 3.3 Skema Lengkap Rangkaian Rolling Reklame 27 Gambar 3.4 Rangkaian Mikrokontroller Pada Papan PCB 28 Gambar 3.5 Rangkaian Driver Motor DC (H-Bridge).... 29 Gambar 3.6 Rangkaian Regulator 12 Dan 5 Volt Realisasi Catu Daya. 31 Gambar 3.7 Skematik Frame Rolling Reklame.. 32 Gambar 3.8 Skematik Screen Rolling Reklame.... 33 Gambar 3.9 Realisasi Frame Rolling Reklame.... 34 Gambar 3.10 Flow Chart.. 35 xi

BAB I PENDAHULUAN 1.1 Latar Belakang Promosi merupakan salah satu kegiatan yang sering digunakan oleh perusahaan untuk mengadakan komunikasi dengan pasarnya. Promosi juga sering dikatakan sebagai Proses Berlanjut, karena dapat menimbulkan rangkaian kegiatan selanjutnya dari perusahaan. Oleh karena itu promosi dipandang sebagai: Arus informasi atau persuasi satu arah yang dibuat untuk mengarahkan seseorang atau organisasi untuk menciptakan pertukaran dalam pemasaran, salah satunya media iklan reklame. Media iklan merupakan sarana informasi untuk memperkenalkan suatu produk kepada khalayak umum. Salah satu yang sering kita jumpai papan reklame atau billboard di jalan-jalan maupun di pertokoan. Billboard-billboard tersebut sangat berperan penting di masyarakat, karena dengan iklan yang gencar, diimages masyarakat, bahwa produk tersebut memiliki kualitas yang baik. Oleh karena itu Penulis memilih judul Pengendalian Motor DC Pada Billboard Berbasis Mikrokontroller AT89S51. Dengan alat billboard screen rolling ini, maka iklan yang ditampilkan tidak monoton/ statis, seperti iklan-iklan yang suka dipajang atau ditempel di tembok pertokoan, terutama di indoor. Dengan alat ini diharapkan Penguna tidak perlu repot-repot untuk menggeser atau menempel pada dinding, dan selain tampilannya menjadi menarik, juga dapat mengiklankan pada satu tempat, yaitu empat slide gambar iklan sehingga tidak banyak memakan tempat. Alat ini berbasis mikrokontroller AT89S51, Outputnya berguna untuk mengendalikan dua buah motor DC, dengan sistem kerja pada motor bergantian, yaitu yang satu berputar dan satunya lagi loss, begitu sebaliknya. Pergerakan memutar motor pertama yaitu menggulung screen dari bawah ke atas, setiap 1

perputaran akan mendisplay atau menampilkan satu slide gambar iklan selama lebih kurang satu menit, kemudian motor DC akan memutar kembali ke slide gambar berikutnya, begitu seterusnya sampai empat kali tampil/ pendisplay-an. Jika sudah selesai maka motor kedua akan bergerak dari atas ke bawah, dan juga seperti sebelumnya akan mendisplay slide gambar iklan tadi. 1.2 Pembatasan Masalah Dari keseluruhan perancangan sistem ini Penulis akan membahas tentang cara kerja rangkaian pengendalian motor DC pada billboard berbasis mikrokontroller AT89S51. 1.3 Tujuan Penelitian Tujuan dari Penulis dan pembuatan Tugas Akhir adalah : 1. Membuat alat billboard screen saver, dengan display berukuran 50 cm x 40 cm, memiliki empat slide gambar dan tiap satu frame rolling reklame mendisplay/ menampilkan satu slide gambar saja. 2. Screen/ layar slide gambar bekerja sesuai pergerakan sensor posisi dan screen berjalan setiap slidenya, berhenti untuk slide gambar selanjutnya, kemudian screen berbalik arah dari atas ke bawah atau dari bawah ke atas. 3. Menjelaskan prinsip kerja rangkaian-rangkaian yang mendukung dalam perancangan sistem Pengendalian Motor DC Pada Billboard Berbasis Mikrokontroller AT89S51. 1.4 Metodologi Penelitian Metode yang digunakan pada penulisan Tugas Akhir ini adalah : 1. Metode Study Literatur Metode ini dilakukan dengan cara mempelajari dan berusaha memahami buku-buku literature, laporan-laporan, pencarian di internet dan bentuk penulisan lain yang berhubungan dengan penulisan ini. 2

2. Perancangan dan Pembuatan Alat Metode ini merupakan tahap awal dalam pembuatan alat dan tindak lanjut dari tahap perancangan, yaitu untuk merealisasikan alat sesuai dengan tujuannya. 1.5 Sistematika Penulisan Untuk memudahkan pembahasan, sistematika penulisan dibagi atas beberapa bab. Adapun sistematika penulisan tersebut sebagai berikut : BAB I PENDAHULUAN Bab ini berisi latar belakang, tujuan penulisan, pokok pembahasan, metode penulisan dan sistematika penulisan. BAB II LANDASAN TEORI Bab ini berisi teori dasar yang berhubungan dengan perancangan, antara lain : mengenai mikrokontroller AT89S51, sensor posisi, driver motor DC, motor DC dan penjelasan komponen pendukung lainnya. BAB III PERANCANGAN DAN REALISASI ALAT Bab ini membahas mengenai rangkaian lengkap dengan implementasi rangkaian ke PCB serta perangkat lunak. BAB IV PENGUJIAN ALAT Bab ini berisi data pengujian alat, pengujian sistem serta pengambilan data pengukuran dari sistem yang telah dijalankan. BAB V KESIMPULAN Bab ini berisi kesimpulan dari keseluruhan bab yang dibahas dan saran-saran. 3

BAB II LANDASAN TEORI 2.1 Mikrokontroller AT89S51 2.1.1 Arsitektur Mikrokontroller AT89S51 Mikrokontroller AT89S51 yang sesuai dengan bahasa pemrograman MCS- 51 menggunakan Flash Programable Erasable Read Only Memory (Flash PEROM) yang mempunyai banyak kepraktisan sehingga penghapusan data dapat dilakukan secara cepat dan serentak (tidak Byte per-byte seperti pada EPROM) dengan menggunakan energi listrik (secara elektris). Mikrokontroller AT89S51 memiliki karakteristik-karakteristik yang sangat menguntungkan dan memudahkan perancang dalam membuat suatu instrument ukur ataupun instrument kendali, berikut karakteristik-karakteristik yang dimiliki oleh AT89S51 : 1. CPU 8 bit yang dioptimasi untuk aplikasi instrument kendali dan ukur. 2. 8 KBytes Flash PEROM. 3. Tahan 1000 kali pengulangan penulisan dan penghapusan. 4. Operasi statis secara penuh antara 0 Hz sampai 24 MHz untuk kode 24AC, 24JC, 24PC, 24SC. 5. Memiliki 256 x 8 bit memori internal (RAM). 6. Memiliki 32 jalur input/ output yang dapat diprogram. 7. Memiliki 2 buah timer 16 bit timer/ counter. 8. Mempunyai 5 sumber interupsi. 9. Memiliki serial port yang dapat diprogram. 10. Memiliki mode Low Power Idle dan Power Down. 11. Sesuai dengan bahasa pemrograman MCS-51. 12. Memiliki sistem penguncian memori. 4

Dengan karakteristik-karakteristik tersebut, menjadikan pembuatan suatu sistem menjadi lebih sederhana, baik dalam proses perancangan perangakat keras maupun perangkat lunak. Mikrokontroller AT89S51 adalah salah satu anggota dari keluarga mikrokontroller MCS-51 yang memiliki 4 KByte Flash PEROM yang dikemas dalam paket 40 pin dengan satu daya tunggal. Berikut diagram susunan kaki dan symbol logika dari mikrokontroller AT89S51 : (T2) P 1.0 1 40 VCC (T2 EX) P 1.1 2 39 P 0.0 (AD 0) P 1.2 3 38 P 0.1 (AD 1) P 1.3 4 37 P 0.2 (AD 2) P 1.4 5 36 P 0.3 (AD 3) P 1.5 6 35 P 0.4 (AD 4) P 1.6 7 34 P 0.5 (AD 5) P 1.7 8 33 P 0.6 (AD 6) RESET 9 32 P 0.7 (AD 7) (RXD) P 3.0 10 31 EA/VPP (TXD) P 3.1 (INT0) P 3.2 11 12 AT89S51 30 29 ALE/PROG PSEN (INT1) P 3.3 13 28 P 2.7 (A 15) (T0) P 3.4 14 27 P 2.6 (A 14) (T1) P 3.5 15 26 P 2.5 (A 13) (W R) P 3.6 16 25 P 2.4 (A 12) (RD) P 3.7 17 24 P 2.3 (A 11) XTAL 2 18 23 P 2.2 (A 10) XTAL 1 19 22 P 2.1 (A 9) GND 20 21 P 2.0 (A 8) Gambar 2.1 Susunan Kaki-Kaki Mikrokontroller AT89S51 5

Berikut adalah penjelasan dan fungsi dari masing-masing kaki dari mikrokontroller AT89S51 : 1. Vcc (pin 40) Catu daya + 5 Volt DC 2. GND (pin 20) Ground (GND) 3. Port 0 (pin 32-39) Port 0 merupakan port I/O 8 bit yang bersifat bidireksional. Masingmasing pin/ kaki dapat dihubungkan secara langsung dengan 8 input TTL. Port ini juga dapat dikonfigurasikan sebagai jalur (bus) alamat/ data Byte rendah (low Byte) selama pengaksesan data dan program eksternal. Masing-masing kaki diberi nama P0.0/ AD0, P0.1/ AD1,.., P0.7/ AD7. 4. Port 1 (pin 1-8) Port 1 merupakan port I/O 8 bit yang bersifat bidireksional yang dilengkapi dengan pull-up internal. Masing-masing kaki diberi nama P1.1, P1.2,.., P1.7 yang digunakan berhubungan dengan peralatan luar dan tidak memiliki fungsi khusus. 5. Port 2 (pin 21-28) Port 2 merupakan port I/O 8 bit yang bersifat bidireksional yang dilengkapi dengan pull-up internal. Port ini juga dapat dikonfigurasikan sebagai jalur (bus) alamat/ data Byte tinggi (high Byte) selama pengaksesan data dan program eksternal. Masing-masing kaki diberi nama P2.0, P2.1,.., P2.7. 6. Port 3 (pin 10-17) Selain berfungsi sebagai port I/O yang berfungsi umum, masing-masing kaki pada port 3 juga mempunyai fungsi-fungsi yang bersifat lebih khusus. 6

Berikut fungsi-fungsi khusus yang dimiliki oleh masing-masing pin yang terdapat pada port 3 : - RXD (P3.0) : Masukan data serial. - TXD (P3.1) : Keluaran data serial. - INT0 (P3.2) : Masukan interupsi 0 dari luar. - INT1 (P3.3) : Masukan interupsi 1 dari luar. - T0 (P3.4) : Masukan ke timer/ counter 0. - T1 (P3.5) : Masukan ke timer/ counter 1. - WR (P3.6) : Sinyal tulis memori eksternal. - RD (P3.7) : Sinyal baca memori eksternal. 7. RST (pin 9) Pin RST digunakan sebagai masuk reset yang aktif tinggi yang akan mereset mikrokontroller AT89S51, ketika sinyal tinggi diberikan selama lebih dari dua siklus mesin. Setelah terjadi reset, jalur program pada mikrokontroller akan kembali ke alamat awal program. 8. ALE/PROG (Address latch Enable) (pin 30) Pin ALE/PROG digunakan untuk menahan alamat Byte rendah (low Byte address) selama mengakses memori eksternal. Selain hal tersebut pin ALE/PROG juga digunakan untuk memasukan pulsa program selama pemrograman Flash PEROM. 9. PSEN (Program Store Enable) (pin 29) Program Store Enable (PSEN) merupakan suatu sinyal output yang digunakan untuk mengendalikan memori program eksternal (EPROM eksternal). PSEN biasanya dihubungkan dengan pin Output Enable (OE) dari suatu EPROM eksternal untuk mengijinkan program memori eksternal masuk ke dalam bus selama proses pemberian atau pengembalian instruksi (fetching). 7

10. EA/Vpp (External Access Enable) (pin 31) Pin EA (External Access Enable) merupakan suatu pin yang digunakan untuk memilih apakah mikrokontroller akan menggunakan memori program internal atau eksternal. Untuk mengakses memori program internal maka pin EA harus dihubungkan dengan Vcc +5 Volt DC, sedangkan untuk mengakses memori program eksternal, maka pin ini harus dihubungkan dengan ground (GND). 11. XTAL1 (pin 18) Pin XTAL1 digunakan sebagai pin masukan rangkaian osilator internal. Sebuah osilator kristal atau sumber osilator luar dapat digunakan. 12. XTAL2 (pin 19) Pin XTAL2 digunakan sebagai keluaran rangkaian osilator internal. Pin ini dipakai bila menggunakan osilator kristal. P 0.0 - P 0.7 P 2.0 - P 2.7 VCC PORT 0 DRIVERS PORT 2 DRIVERS GND RAM ADDR REGISTER RAM PORT 0 PORT 2 LATCH LATCH FLASH B REGISTER ADD STACK POINTER PROGRAM ADDRESS REGISTER TMP2 TMP1 BUFFER ALU INTERRUPT SERIAL PORT AND TIMER BLOCK PC INCREMENTER PSW PROGRAM COUNTER PSEN ALE/PROG EA/Vpp RST TIMING AND CONTROL INSTRUCTION REGISTER DUAL DPTR WATCH DOC PORT 3 LATCH PORT 1 LATCH ISF PORT PROGRAM LOGIC OSC PORT 3 DRIVERS PORT 1 DRIVERS P 3.0 - P 3.7 P 1.0 - P 1.7 Gambar 2.2 Diagram Blok Arsitektur Mikrokontroller AT89S51 8

Berikut penjelasan dari tiap-tiap blok yang terdapat pada diagram di atas : 2.1.1.1 Instruction Dekoder Berfungsi sebagai penerjemah program yang telah dibaca, serta mengendalikan sumber dan tujuan dari data seperti pada operasi fungsi dari Arithmatic Logic Unit (ALU). 2.1.1.2 Program Counter (PC) dan Data Pointer (DPTR) Register Program Counter (PC) merupakan register 16 bit yang digunakan untuk mengamati lokasi instruksi program yang tersimpan di dalam ROM. Register Data Pointer (DPTR) adalah register 16 bit yang terbagi atas register DPH (Data Pointer High Order Byte) dan DPL (Data pointer Lower Byte). DPTR digunakan untuk pengalamatan register tak langsung untuk memindahkan isi memori program, memindahkan variable data dari atau ke luar memori data eksternal, dalam hal ini RAM eksternal, serta digunakan untuk percabangan alamat memori program sampai 64 KByte. 2.1.1.3 Register A dan B Register A merupakan Akumulator yang digunakan untuk berbagai operasi termasuk operasi aritmatika maupun logika. Sedangkan Register B digunakan untuk membantu Register A dalam operasi perkalian dan permbagian. 2.1.1.4 Register Program Status Word (PSW) Register Program Status Word (PSW) terdiri atas 4 flags yang dipakai secara otomatis pada operasi matematika yaitu carry flag (CY), auxiliary carry (AC), parity (P) dan userflag (F0) yang digunakan untuk keperluan umum. Sedangkan RS0 dan RS1 digunakan untuk memilih register bank. Tiap-tiap flag yang terdapat pada register PSW tersebut merupakan register yang dapat dialamati setiap bit (bit addressable). 9

2.1.1.5 RAM Internal (Internal RAM) RAM internal yang dimiliki oleh mikrokontroller AT89S51 berkapasitas 256 Byte yang terdiri dari dua bagian yaitu upper 128 Byte menempati ruang alamat yang paralel dengan Special Function Register (SFR). Walaupun upper 128 Byte memiliki alamat yang sama dengan Special Function Register (SFR), namun secara fisik terpisah. Sedangkan bagian lower 128 Byte memiliki konfigurasi yang sama dengan konfigurasi RAM pada mikrokontroller AT89S51 yang terdiri dari 3 bagian yang berbeda yaitu : Alamat 00H - 1FH merupakan daerah memori yang membentuk 32 register yang terbagi dalam 4 bank yaitu bank 1, bank 2, bank 3 dan bank 4 yang masing-masing memiliki 8 buah register yaitu R0 sampai R7. Alamat 20H - 2FH merupakan daerah memori yang dapat dialamati secara bit. Alamat 30H - 7FH merupakan daerah memori yang digunakan secara umum dan hanya dialamati secara Byte. 2.1.1.6 ROM Internal (Internal ROM ) Mikrokontroller AT89S51 memiliki ROM internal yang berkapasitas 8 KByte yang menempati alamat 0000H - 1FFFH. Bila menggunakan ROM eksternal, maka dapat dipilih apakah total instruksi pada ROM internal saja atau gabungan internal dan eksternal, atau hanya ROM eksternal saja. 2.1.1.7 Stack Pointer (SP) Register Stack Pointer (SP) berfungsi untuk menunjuk ke suatu alamat RAM internal yang berhubungan dengan operasi menyimpan dan mengambil data secara cepat atau digunakan untuk menahan alamat RAM internal yang disebut top of stack. 10

2.1.1.8 Special Function Register (SFR) Special Function Register (SFR) merupakan register khusus yang menangai beberapa perantaraan CPU dan piranti di sekeliling mikrokontroller. 2.1.1.9 Port 0, Port 1, Port 2, dan Port 3 Keempat buat port yang dimiliki oleh mikrokontroller AT89S51 menyediakan 32 jalur I/O yang masing-masing jalur digunakan untuk perantaraan dengan piranti yang berada di luar mikrokontroller. 2.1.2 Organisasi Memori Semua mikrokontroller keluarga MCS-51 memiliki pembagian ruang alamat untuk memori program dan memori data. Pemisahan memori program dengan memori data tersebut membolehkan memori data untuk diakses oleh alamat 8 bit. Mikrokontroller AT89S51 memiliki memori program yang terpisah dengan dari data. Kapasitas memori program internal sebanyak 4 KByte yaitu dari alamat 0000H 0FFFH. Namun memori program AT89S51 ini dapat ditingkatkan sampai 64 KByte dengan menggunakan memori program eksternal. Pembatasan alamat sampai 64 KByte ini disebabkan karena mikrokontroller AT89S51 hanya memiliki 16 jalur alamat (216 = 65536 Byte). Mikrokontroller AT89S51 juga memiliki memori data internal yang disebut sebagai RAM internal, ruang memori data dibagi menjadi tiga blok, yaitu bagian rendah 128 Byte (lower 128 Byte), bagian tinggi 128 Byte (upper 128 Byte), dan SFR (Special Function Register). 2.1.3 Fasilitas Mikrokontroller AT89S51 2.1.3.1 Port Input/Output Mikrokontroller AT89S51 mempunyai port input/ output (I/O) paralel sebanyak 4 buah. Masing-masing port memiliki lebar jalur 1 Byte (8 bit) yang bersifat bidireksional. 11

2.1.3.2 Perwaktu CPU Mikrokontroller jenis AT89S51 memiliki osilator internal (onchiposilator) yang dapat digunakan sebagai sumber clock bagi CPU. Untuk menggunakan osilator internal diperlukan sebuah osilator kristal yang dipasang pada pin XTAL1 dan pin XTAL2 dan 2 buah kapasitor yang menghubungkan kaki osilator kristal ke ground (GND). Untuk osilator kristal dapat digunakan frekuensi dari 0 sampai 24 MHz, sedangkan untuk kapasitor dapat bernilai antara 27 pf sampai 33pF. 2.1.3.3 Port Serial Mikrokontroller jenis AT89S51 juga dilengkapi dengan port serial. Port serial ini berfungsi untuk pengiriman data dalam bentuk atau format serial. Apabila hendak menghubungkan dengan sebuah PC (Personal Computer) melalui port serial, level tegangan TTL harus diubah menjadi level tegangan RS 232. Untuk keperluan ini dapat digunakan IC MAX 232. Port serial dalam mikrokontroller AT89S51 memiliki sifat Fullduplex, yang berarti dapat melakukan komunikasi secara dua arah dalam waktu yang bersamaan. Register penerima dan pengirim pada port serial diakses pada SBUF (Serial Buffer). Sedangkan bit-bit status akan menunjukkan akhir dari suatu pengiriman atau penerimaan data. 2.1.3.4 Timer/ Counter Mikrokontroller AT89S51 memiliki tiga buah timer/ counter 16 bit yaitu timer/ Counter 0, 1 dan 2 yang dapat digunakan sebagai perhitungan jumlah pulsa, penghitung lebar pulsa, periode dan frekuensi. Selain hal tersebut timer/ counter 16 bit yang dimiliki oleh mikrokontroller AT89S51 juga dapat digunakan untuk membangkitkan pulsa dengan frekuensi tertentu untuk keperluan interupsi atau penentuan laju pengiriman data secara serial. Timer/ counter yang diaktifkan pada frekuensi kerja mikrokontroller 12 MHz akan memiliki 1 priode waktu perhitungan sebesar 11 detik atau 1 siklus mesin. Satu siklus timer/ counter 12 12

sama dengan satu pelaksanaan perintah atau instruksi. Periode waktu timer/ counter secara umum ditentukan oleh persamaan berikut : Sebagai timer/ counter 8 bit : T = (255-TLx) X 1 periode waktu timer/ counter Tlx adalah ini register TL0 atau TL1 Sebagai timer/ counter 16 bit : T = (65535 THx TLx) X 1 periode waktu timer/ counter THx adalah isi register TH0 atau TH1 TLx adalah ini register TL0 atau TL1 Hasil pencacahan suatu timer/ counter akan disimpan pada register TLx dan THx. Untuk timer/ counter 0 dan 1 tersebut dikendalikan oleh register Timer Mode Control (TMOD) dan Timer Control (TCON), sedangkan untuk timer counter 2 dikendalikan oleh register timer 2 Control (T2CON) dan registerregister capture yaitu RCAP2L dan RCAP2H. Adapun susunan dan definisi dari bit-bit pada TCON dan TMOD adalah sebagai berikut : Tabel 2.1 Register Timer Control (TCON) MSB LSB TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 Keterangan dari bit-bit register TCON di atas adalah sebagai berikut : Tabel 2.2 Fungsi Bit-Bit Pada Register TCON Bit Simbol Alamat Keterangan 13

TCON.7 TF1 8FH Timer 1 overflow flag TCON.6 TR1 8EH Timer run control bit TCON.5 TF0 8DH Timer 0 overflow flag TCON.4 TR0 8CH Timer 0 run control bit TCON.3 IE1 8BH External interrupt 1 edge flag TCON.2 IT1 8AH External interrupt 1 signal type control bit TCON.1 IE0 89H External interrupt 0 edge flag TCON.0 IT0 88H External interrupt 0 signal type control bit Tabel 2.3 Register Timer Mode Control (TMOD) MSB LSB GATE C/_T M1 M0 GATE M1 M0 C/_T Timer Counter1 Timer/ Counter 0 Keterangan dari bit-bit register TMOD di atas adalah sebagai berikut : Tabel 2.4 Fungsi Bit-Bit Pada Register TMOD Bit Nama Timer Keterangan 7 Gate 1 OR Gate enable bit which control RUN/ STOP of Timer 14

6 C/_T 1 Pemilihan Timer atau Counter 5 M1 1 Bit pemilih mode 4 M0 1 Bit pemilih mode 3 Gate 0 OR Gate enable bit which control RUN/ STOP of Timer 2 C/_T 0 Pemilihan Timer atau Counter 1 M1 0 Bit pemilih mode 0 M0 0 Bit pemilih mode Mode dari Timer/ Counter 1 diatur pada bit 4 dan 5, sedangkan timer/ Counter 0 diatur pada bit 0 dan 1. Kombinasi dari M1 dan M0 akan menentukan mode kerja dari timer/ counter 0 dan 1 dari mikrokontroller. Berikut kombinasi dari bit M1 dan M0 yang terdapat pada register TMOD Tabel 2.5 Bit Pengatur Mode Timer/ Counter M1 M0 Mode Keterangan 0 0 0 Timer/ Counter mode 13 bit 0 1 1 Timer/ Counter mode 16 bit 1 0 2 Timer/ Counter 8 bit 1 1 3 Split Timer mode 15

Timer/ Counter akan berfungsi sebagai pencacah (counter) jika sumber detak berasal dari luar dan sebagai pewaktu (timer) apabila sumber detak berasal dari osilator internal. Masukan dari sumber luar atau dari osilator internal ditentukan oleh bit C/_T. Jika sumber detak menggunakan osilator internal maka bit C/_T diset 0, namun jika sumber detak berasal dari luar maka bit C/_T diset 1. Pencacah dapat diaktifkan dengan menset 1 bit TR0 dan TR1, sedangkan untuk menghentikan pencacahan dilakukan dengan menset 0 bit TR0 dan TR1. 2.1.3.5 Reset Reset merupakan interupsi istimewa karena program tidak dapat menghalangi aksi pin RST (pin 9) bila diaktifkan, dimana instruksi program harus melompat ke alamat awal program dan akan menjalankan program dari alamat awal tersebut. Untuk mereset mikrokontroller AT89S51, pin RST harus ditahan pada logika tinggi selama lebih dari dua siklus mesin. 2.1.4 Mode Pengalamatan MCS-51 Data bisa berada di tempat yang berbeda sehingga dikenal beberapa cara untuk mengakses data tersebut yang dinamakan sebagai mode pengalamatan (addressing mode ) antara lain : 2.1.4.1 Mode Pengalamatan Segera (Immediate Addressing Mode) Cara ini menggunakan konstanta, missal : MOV A#20H. Data konstan merupakan data yang menyatu dengan instruksi, contoh instruksi tersebut mempunyai arti bahwa data konstanta 20H, (sebagai data konstan harus diawali dengan # ) disalin ke Akumulator A. 2.1.4.2 Mode Pengalamatan Langsung (Dirrect Addressing Mode) Cara ini dipakai untuk menunjuk data yang berada disuatu lokasi memori dengan cara menyebut lokasi (alamat) memori tempat data tersebut berada misal : 16

MOV A,30H. instruksi ini mempunyai arti bahwa data pada memori dengan lokasi 30H disalin ke Akumulator A. 2.1.4.3 Mode Pengalamatan Tidak Langsung (Indirect Addresing Mode) Cara ini dipakai untuk mengakses data di dalam memori, tetapi lokasi memori tidak disebut secara langsung, namun dititipkan pada register lain, misal : MOV A,@R0. Dalam instruksi tersebut register serba guna R0 dipakai untuk menyimpan lokasi memori, sehingga instruksi ini mempunyai arti memori data yang alamat lokasinya tersimpan dalam R0 isinya disalin ke Akumulator A. 2.1.4.4 Mode Pengalamatan Register (Register Addressing Mode) Misal : MOV A,R5, instruksi ini mempunyai arti bahwa data dalam register serba guna R5 disalin ke Akumulator A. Instruksi ini menjadikan register serba guna R0 sampai R7 sebagai tempat penyimpanan data yang praktis dan kerjanya sangat cepat. 2.1.4.5 Mode Pengalamatan Kode Tak Langsung (Code Indirect address in Mode) Untuk keperluan ini, MCS-51 mempunyai cara penyebutan data dalam memori program yang dilakukan secara tidak langsung, misalnya : MOVC A,@ + DPTR. Dalam instruksi tersebut instruksi MOV diganti dengan MOVC, tambahan MOVC tersebut dimaksudkan untuk membedakan bahwa instruksi ini digunakan untuk memori program (MOV tanpa huruf C digunakan untuk memori data). 2.2 Sensor Posisi Motor Sensor posisi ini menggunakan optocoupler yang berfungsi sebagai jembatan suatu rangkaian agar dari satu sistem dengan sistem lainnya tidak berhubungan langsung. Optocoupler sendiri terdiri dari 2 bagian, yaitu transmitter (pengirim) dan receiver (penerima). 17

1. Transmitter, merupakan bagian yang terhubung dengan rangkaian input atau rangkaian kontrol. Pada bagian ini terdapat sebuah LED infra merah (IR LED) yang berfungsi untuk mengirimkan sinyal kepada receiver. 2. Receiver, merupakan bagian yang terhubung dengan rangkaian output atau rangkaian beban, dan berisi komponen penerima cahaya yang dipancarkan oleh transmitter. Komponen penerima cahaya ini dapat berupa photodioda ataupun phototransistor. 1 6 2 3 5 4 PIN : 1. ANODE 2. CATHODE 3. NO CONNECTION 4. EMITTER 5. COLLECTOR 6. BASE Gambar 2.3 Optocoupler Pada alat ini optocoupler yang digunakan adalah opto type U, dimana antara dioda dan transistornya berhubungan melalui cahaya. Phototransistor ini akan bekerja/ aktif bila photodioda ini mengeluarkan cahaya, bila tidak maka collector - emitter mempunyai impedansi yang tinggi (seperti saklar yang membuka). 2.3 Driver Motor DC Driver motor DC ini adalah penggerak motor yang mempunyai arus cukup besar sesuai dengan arus motor tersebut, inputnya cukup kecil sehingga bisa digerakan dari mikrokontroller. Driver motor ini ada yang searah/ hanya dapat menggerakan motor searah jarum jam saja dan ada juga yang bisa dua arah 18

(memutar motor searah dan berlawanan jarum jam/ CW atau CCW). Sedangkan metode dua arah ini biasa disebut dengan H-Bridge. H-Bridge adalah sebuah rangkaian dimana motor menjadi titik tengahnya dengan dua jalur yang biasa dibuka tutup untuk melewatkan arus pada motor tersebut, persis seperti huruf H (dengan motor berada pada garis horizontal). 1 3 + POWER SUPPLAY a M b - 4 2 Gambar 2.4 H-Bridge 1 3 1 3 + POWER SUPPLAY + M - + POWER SUPPLAY - M + - 4 2-4 2 (a) (b) Gambar 2.5 Motor DC (a) Searah Jarum Jam dan (b) Berlawanan Arah Jarum Jam Dua terminal motor a dan b dikontrol oleh 4 saklar (1 s/d 4). Ketika saklar satu dan dua aktif (saklar 3 dan 4 dalam keadaan off), maka terminal motor a akan mendapat tegangan (+) dan terminal b akan terhubung ke ground (-), hal ini menyebabkan motor bergerak maju (atau searah jarum jam). 19

Sedangkan sebaliknya, bila saklar 1 dan 2 dalam keadaan off, saklar 3 dan 4 keadaan aktif, maka terminal a akan terhubung ke ground (-) dan terminal b akan mendapat tegangan (+), dan tentunya hal ini dapat menyebakan motor berubah arah putarnya, menjadi bergerak mundur (atau berlawanan dengan arah jarum jam) Pada perancangan ini menggunakan L293D dimana IC ini sudah terdiri dari 4 buah driver motor 1 arah atau 2 buah H-Bridge. Gambar 2.6 Blok Diagram Internal L293 Driver Motor Tabel 2.6 Tabel Kebenaran dari IC L293 INPUT OUTPUT A EN Y H H H L H L X L Z H = High L = Low X = High / Low Z = High Impedance (off) 20

2.4 Motor Arus Searah Motor adalah alat yang dapat merubah daya listrik menjadi gerakan mekanik. Rangkaian motor ini terdiri dari dua bagian utama, yaitu : a. Stator Stator adalah bagian dari motor yang terluar. Stator berfungsi sebagai wadah dari motor bagian dalam, pada stator juga melekat magnet tetap sebagai penghasil medan magnet, cicin belah, sikat sebagai penghubung arus listrik dari sumber kepada rangkaian di dalamnya. b. Rotor Merupakan bagian motor yang berada di dalam dari motor, bagian ini yang berputar. Terdiri dari gulungan kawat berlapis (kawat email) yang disebut bagian jangkar (armatur), inti besi jangkar, dan komutator 2.4.1 Dasar Berputarnya Motor Jika sebuah penghantar yang mengandung arus listrik berada di dalam magnet, maka kepada penghantar itu bekerjalah gaya, dan penghatarnya akan bergerak (seakan-akan ditendang). U S Gambar 2.7 Penghantar Berarus Listrik Berada Di Dalam Medan Magnet 21

Gambar 2.7 memperlihatkan keadan medan magnet ketika diusik oleh keberadaan sepotong penghantar yang diberikan arus listrik. Arah arus yang mengaliri penghantar menuju ke luar (ditandai dengan titik), medan magnet hasil dari aliran arus pada sebuah penghantar digambarkan berlawanan arah jarum jam. Sedangkan arah aliran medan magnet dari magnet tetap digambarkan mengalir dari utara ke selatan. Arah arus medan magnet dari penghantar berlawanan arah dengan aliran medan magnet yang berada sebelah kanan (lihat gambar 2.7), sehingga medan magnet di bagian kanan saling melemahkan. Sedangkan arah medan magnet yang disebelah kiri satu arah dengan medan magnet dari penghantar berarus, sehingga medan magnet saling menguatkan. Hasil dari keadaan ini adalah terdorongnya penghantar berarus oleh medan magnet terkuat ke arah medan magnet yang lebih lemah. Dari dasar pengertian di atas akan memudahkan penjelasan cara kerja dari motor arus searah. U DC SIKAT CINCIN BELAH A IJANGKAR ARAH PUTARAN JANGKAR MAGNET TETAP B S Gambar 2.8 Bangunan Motor Arus Searah Gambar di atas memperlihatkan rancangan bangunan motor arus secara lengkap dengan tegangan sumbernya, gambar ini yang akan membuat lebih mudah dalam mempelajari cara kerja dari motor arus searah. Kejadian berputarnya jangkar diawali dengan mengalirnya arus listrik di dalam sebuah kawat penghantar, dalam hal ini adalah jangkar. Arus yang mengalir dari tegangan 22

sumber lalu ke titik A kemudian terus mengalir jangkar dan menghasilkan medan magnet disekitar penghantar, medan magnet akibat arus listrik ini mengusik medan magnet dari magnet tetap membuat jangkar beputar. Ketika berputar 90 0, posisi titik A dan B bertukar (A di bawah dan B di atas) arus untuk yang kedua kalinya mengaliri penghantar dari B ke A (setelah bertukar tempat) akan tetapi arah mengalirnya tidak mengalami perubahan, kejadian ini terus berlanjut sampai dengan tegangan sumber dipadamkan. Dengan berdasarkan dengan arah aliran arus dan arah aliran medan magnet dari magnet tetap dapat diperkirakan arah putaran adalah seperti yang ditunjukkan oleh gambar 2.8 M M Gambar 2.9 Bentuk Fisik Motor Arus Searah (DC) Dan Pemasangan Terminal Positif dan Negatif Motor DC yang digunakan pada umumnya mempunyai tegangan 5V, 12V, 24V dan 48V. Sedangkan motor arus searah (DC) yang digunakan untuk aplikasi industri umumnya mempunyai tegangan 90V, 180V dan 250V. Bentuk motor DC dengan gearbox dapat dilihat pada gambar 2.9 23

BAB III PERANCANGAN DAN REALISASI ALAT Perancangan sistem pengendalian motor DC ini terdiri dari dua bagian. Bagian pertama adalah perancangan perangkat keras yang menghubungkan Mikrokontroller, Driver Motor DC dan Sensor. Bagian kedua adalah perancangan perangkat lunak. Secara garis besar diagram kerjanya dapat dilihat di bawah ini : Motor Atas Mikrokontroller AT89S51 Driver Motor DC Motor Bawah Sensor Posisi Gambar 3.1 Diagram Kerja Rancangan Alat 3.1 Rancangan Perangkat Keras Ada beberapa komponen perangkat keras yang dirancang untuk pengaturan motor DC ini. Beberapa komponen yang dirancang diantaranya komponen mikrokontroller, sensor posisi dan driver motor DC (H-Bridge) serta komponen catu daya. 24

3.1.1 Rangkaian Sensor Posisi Sensor yang dipakai pada perancangan alat ini menggunakan sensor cahaya infra red yang disebut dengan optocoupler. Pada transmitter cahaya digunakan dioda laser, dan receiver cahaya phototransistor. Sensor ini dipasang pada piringan yang dilubangi, dimana piringan sensor posisi tersebut terdiri dari delapan lubang. Bila sensor pada posisi piringan yang dilubangi maka cahaya infra akan menembus ke phototransistor sehingga nilai dari phototransistor akan berubah, seperti basis transistor mendapatkan tegangan. Gambar 3.2 Sensor Posisi Cara kerja dari sensor posisi ini yaitu apabila phototransistor menerima cahaya dari dioda laser maka phototransistor berfungsi sebagai saklar tertutup (short circuit) yang mengalirkan arus Vcc, R 14, Colector menuju Emitor (ground) dan oleh rangkaian schmit trigger di not, sehingga pada kaki P3.4 menerima logic 1. Dan apabila photo transistor tidak menerima cahaya maka P3.4 menerima logic 0. Selain itu fungsi dari IC shcmit trigger adalah bersama dengan R dan C pada inputnya sebagai penghilang ripple. 25

3.1.2 Komponen Mikrokontroler AT89S51 Mikrokontroller yang digunakan adalah AT89S51, mikrokontroller ini berfungsi sebagai interface antara sensor posisi dengan komponen H-Bridge sebagai penggerak motor. Mikrokontroller akan mendeteksi sinyal dari bagian sensor secara terus menerus berupa data-data pulsa dari putaran motor. Langkah-langkah perancangan komponen mikrokontroller adalah sebagai berikut: 1. Menghubungkan Port 3.4 milik AT89S51 yang berfungsi sebagai input untuk sensor, dengan pin output pada sensor yang berfungsi sebagai output pulsa (sensor posisi). 2. Menghubungkan Port 0 mikrokontroller yang berfungsi sebagai driver 2 buah motor DC. Adapun pin-pin sebagai beriktu: Port 0.0 sebagai Enable Motor 1 Port 0.1 sebagai Motor 1 (+) Port 0.2 sebagai Motor 1 ( ) Port 0.3 sebagai Enable Motor 2 Port 0.4 sebagai Motor 2 (+) Port 0.5 sebagai Motor 2 (-) 3. Menghubungkan Catu daya 5V DC dengan pin 40 sebagai positif dan pin 20 sebagai ground. 3.1.2.1 Realisasi Komponen Mikrokontroller Mikrokontroller menggunakan catu daya 5 Volt. Mikrokontroller dirancang sebagai ISP (In System Programming) sehingga jika ada perubahan pada algoritma, atau program pada mikrokontroller, maka dapat langsung diubah tanpa merubah sistem/ perangkat kerasnya. Rancangan lengkapnya dapat dilihat pada gambar dibawah ini: 26

Gambar 3.3 Skema Lengkap Rangkaian Rolling Reklame 27

Gambar 3.4 Rangkaian Mikrokontroler Pada Papan PCB Pada sistem ini mikrokontroller merupakan jantung rangkaian dimana berfungsi sebagai : Pada outputnya Port 0 menggerakan motor DC dan pada inputnya menerima data sensor posisi, sensor posisi inilah diproses oleh mikrokrontroller untuk menentukan kapan motor harus berhenti pada setiap slidenya. 28

3.1.2.2 Driver Motor DC (H-Bridge) Gambar 3.5 Rangkaian Driver Motor DC (H-Bridge) Rangkaian Driver Motor ini menggunakan IC L293 dimana terdapat 4 buah penguat/ driver yang digunakan untuk menggerakan motor atau relay, pada inputnya berlevel TTL sehingga dapat digerakan langsung oleh mikrokontroller. Untuk menggerakan motor agar dapat dijalankan berputar ke kiri dan ke kanan maka, diperlukan suatu teknik yaitu H-Bridge dimana pada outputnya yang terhubung ke motor dapat ditukar polaritasnya, enable pada pin 1 untuk mengaktif atau non aktifkan keluaran Port 3 dan 6 sedangkan, enable pada pin 9 untuk mengaktif atau non aktifkan keluaran Port 11 dan 14. Lampu led digunakan hanya sebagai indicator pada saat outputnya yang bernilai tegangan positif, maka lednya akan menyala. Tabel cara kerjanya sebagai berikut : 29

Tabel 3.1 Tabel Cara Kerja Driver Motor H-Bridge INPUT ENABLE OUTPUT 2A 1A EN 1,2 2Y 1Y L L H L L L H H L H H L H H L H H H H H X X L Z Z Dapat dilihat pada table di atas outpunya bisa berbalik polaritas sehingga bila dipandang motor, maka akan berputar ke kiri dan ke kanan. 3.1.3 Komponen Catu Daya Catu daya digunakan untuk mengkonversi tegangan 220Vac dari PLN menjadi tegangan 5V DC yang dibutuhkan oleh komponen mikrokontroller. Catu daya ini dirancang dengan menggunakan transformator 220Vac/12Vac yang berarti transformator ini dapat mengubah tegangan primer 220Vac menjadi tegangan sekunder 12Vac. Selain itu, catu daya ini menggunakan jembatan dioda 1N4007 yang berguna sebagai penyearah gelombang penuh. Hasil dari penyearah gelombang penuh ini masih terlihat adanya gelombang, untuk menghilangkan gelombang ini digunakan kapasitor sebagai filter. Secara teori, tegangan hasil keluaran kapasitor dapat digunakan untuk menyediakan tegangan ke rangkaian, tetapi kenyataannya tegangan yang dihasilkan tidak murni karena terdapat ripple. Akibat adanya ripple ini, tegangan keluaran kapasitor menjadi turun. Untuk menanggulangi hal tersebut, digunakan IC voltage regulator 7812. IC 7812 digunakan sebagai stabilisator yang mengubah tegangan 15V DC menjadi 12V DC dan untuk menjaga agar hasil keluaran catu daya tetap stabil apabila terjadi perubahan pada tegangan primer atau beban. Dengan digunakannya IC 7812 pada rangkaian catu daya, tegangan keluaran yang 30

dihasilkan akan stabil dan tidak terganggu ripple. Tegangan 12V DC teregulasi inilah digunakan untuk supply motor sedangkan untuk mikrokontroller dibutuhkan 5V DC maka pada keluaran 12V DC ini dihubungkan lagi dengan IC 7805 agar mempunyai keluaran 5V DC. Inputnya dari transformator 1A, 12 Vac CT (Center Tap). Agar lebih jelasnya dapat dilihat pada rangkaian regulator 12 dan 5 Volt DC dibawah ini: Gambar 3.6 Rangkaian Regulator 12 dan 5 Volt Realisasi Catu Daya Rancangan catu daya digunakan untuk memberikan tegangan kepada komponen mikrokontroller, komponen Sensor Posisi IC Driver Motor L293 5V dan Motor 12V. 31

Adapun realisasi catu daya adalah sebagai berikut: 1. Tegangan output 12 Vac dari trafo dihubungkan ke komponen sistem mikrokontroller yang dipakai. Setelah DC tegangan naik sampai 15V sehingga dibutuhkan IC 7812 agar keluarnya stabil 12V DC. Untuk mikrokontroller memerlukan 5V DC, maka digunakan IC 7805 pada sistem mikrokontroller agar tegangan stabil pada 5 V. 2. Komponen sensor posisi juga mendapatkan tegangan agar bisa beroperasi, tegangan yang dibutuhkan berkisar 5V. 3. Komponen driver motor juga mendapatkan tegangan agar bisa beroperasi. Tegangan yang dibutuhkan berkisar 5V pada pin 16 dan 12V untuk supply motor DC pada pin 8 Vcc 2. 3.1.4 Perancangan Casing Dan Screen Rolling Dalam perancangan frame/ casing rolling ini memiliki ukuran sesuai gambar skematik di bawah ini. Ukurannya sebagai berikut : 57 Cm 40 Cm 8 Cm SCREEN MENGGULUNG DI DALAM BESI ROLLING MOTOR 8 Cm CASING M MOTOR 65 Cm 50 Cm SLIDE GAMBAR SLIDE GAMBAR 5 Cm M Gambar 3.7 Skematik Frame Rolling Reklame 32

Untuk ukuran screen rollingnya sebagai berikut : 0,5 Cm 0,5 Cm 3 Cm { SLIDE GAMBAR 1 3 Cm { SLIDE GAMBAR 2 3 Cm { SLIDE GAMBAR 3 3 Cm { SLIDE GAMBAR 4 3 Cm { Gambar 3.8 Skematik Screen Rolling Reklame 33

Untuk realisasi rancangan alat tersebut sebagai berikut : Bagian Depan Bagian Belakang Isi Bagian Belakang Letak Sensor Posisi Gambar 3.9 Realisasi Frame Rolling Reklame 3.2 Perancangan Perangkat Lunak Pada perangkat lunak komponen perangkat yang dirancang untuk menggerakan motor dan membaca posisinya. Pemograman mikrokontroller ini 34

bertujuan agar mikro dapat bekerja untuk mengatur jalannya perangkat keras yang dirancang agar bisa bekerja sesuai dengan yang dirancangkan. 3.2.1 Pemrograman Mikrokontroller Pemrograman mikrokontroller ini menggunakan bahasa assembler di dalamnya. Diagram Flowchart : Inisialisasi Port Memori Slide Inisialasi Timer 0 Mematikan(Enable =0) Kedua Motor (Atas dan Bawah) Motor Down Aktif Y Tombol Down = 0 Tombol Start = 0 N Rolling ke Atas / Motor Up Aktif Input =0 N Jumlah Naik + 1 Jumlah Naik = Slide 2 Jumlah Naik = Slide 3 Jumlah Naik = Slide 4 Stop Motor Up Delay Stop Motor Up Delay Stop Motor Up Delay Program Down Gambar 3.10 FlowChart 35

Cara kerja program sebagai berikut: Mikro dinyalakan, maka akan menunggu tombol start atau tombol down motor. Bila start ditekan maka motor up akan aktif dan terus rolling pada saat itu sensor mulai bekerja menghitung banyaknya putaran. Alurnya sebagai berikut : 1. Mikro dinyalakan, inisialisasi mikro, driver motor dan penamaan Port serta inisialisasi memori dan timer. 2. Mikro mengirim perintah untuk membaca menjalankan motor up. 3. Mikro mengirim perintah untuk membaca sensor posisi lalu membuat counter up sebagai banyaknya putaran slide gambar. 4. Setelah datanya sesuai dengan slide gambar 1 maka motor berhenti sejenak lalu melanjutkan ke slide gambar 2 begitu seterusnya sampai slide gambar 4. 5. Setelah itu mikro memerintahkan motor down untuk memutar dari slide gamabar 4 menuju slide gambar 3 begitu seterusnya sampai kembali ke slide gambar 1. begitu terus prosesnya berulang. 3.2.2 Realisasi Rancangan Perangkat Lunak Digunakan bahasa pemrograman assembly. Software yang digunakan adalah Reads51. Pada program ini dapat menulis, compiler dan testing serial jika dibutuhkan. Setelah source code dengan assembly dibuat, maka kemudian build, sehingga langsung dibuat file Hexa-nya. File Hexa inilah yang kemudian didownloadkan ke dalam mikrokontroller melalui downloader ISP (In System Programming). Proses build/ compiler, download file ke mikro terjadi dalam satu proses. Bila ada error maka akan diberitahukan oleh Reads51 dan memberitahukan posisi baris salah sehingga memudahkan kita dalam pembuatan software. 36

BAB IV PENGUJIAN ALAT Untuk membuktikan bahwa alat ini bekerja dengan baik, maka alat ini perlu dilakukan pengujian yang mana untuk mengetahui keakuratan dalam pendisplayan tiap slide gambar. Dan motor DC bekerja merunning screen sesuai diharapkan yaitu slide per-slide gambar. 4.1 Pengujian Pencacahan Sensor Posisi Sistem pengujian pencacahan merupakan hasil dari perputaran plat/ piringan sensor posisi yang terdiri dari delapan lubang untuk optocouplernya. Hasil pencacahan dalam bentuk pulsa tersebut berguna untuk mikrokontroller inputan Port 3.4 AT89S51. Perputaran hasil pencacahan dalam bentuk pulsa Sebagai berikut : Aktif Rolling Atas : Jumlah Putaran Slide Gambar 1 = cacahan 1 = ( kondisi awal ) lub ang 8 Jumlah Putaran Slide Gambar 2 = 8 55 = 6,875 ( 6 putaran + 7 lubang ) Jumlah Putaran Slide Gamabar 3 = 120 = 15 8 Jumlah Putaran Slide Gamabar 4 = Aktif Rolling Bawah : Jumlah Putaran Slide Gambar 4 = 201 = 25,125 ( 25 putaran + 1 lubang ) 8 cacahan 1 = ( kondisi awal ) lub ang 8 14 Jumlah Putaran Slide Gambar 3 = = 1,75 ( 1 putaran + 6 lubang ) 8 37

Jumlah Putaran Slide Gambar 2 = 8 26 = 3,25 ( 3 putaran + 2 lubang ) Jumlah Putaran Slide Gambar 1 = 8 38 = 4,75 ( 4 putaran + 4 lubang ) 4.2 Data Hasil Pengujian Pengukuran Selisih Slide Gambar Pada Alat Pada pengujian alat ini ternyata dalam pendisplayan mengalami ketidak tepatan posisi slide, dengan kata lain slide tidak begitu center/ pas di tengah. Maka pengujian dilakukan pengukuran selisih tiap slidenya, karena tiap slide memiliki selisih berbeda-beda tiap Centimeternya. Pengujian dilakukan tiap slidenya sebanyak 10 kali pengulangan. Tabel 4.1 Pengukuran Selisih Slide Gambar Pertama Ke-1 Ke-2 Ke-3 Ke-4 Ke-5 Ke-6 Ke-7 Ke-8 Ke-9 Ke-10 0,6 0,6 0,8 0,8 0,8 1 1,5 2 2 2 12, 1 Rata-rata Selisih Errornya = = 1,21 10 Tabel 4.2 Pengukuran Selisih Slide Gambar Kedua Ke-1 Ke-2 Ke-3 Ke-4 Ke-5 Ke-6 Ke-7 Ke-8 Ke-9 Ke-10 0,4 0,4 0,4 0,6 0,6 0,6 0,6 0,8 0,8 0,8 Rata-rata Selisih Errornya = 10 6 = 0,6 38

Tabel 4.3 Pengukuran Selisih Slide Gambar Ketiga Ke-1 Ke-2 Ke-3 Ke-4 Ke-5 Ke-6 Ke-7 Ke-8 Ke-9 Ke-10 0,6 0,6 0,6 0,6 0,6 0,6 0,6 0,8 0,8 0,8 6, 6 Rata-rata Selisih Errornya = = 0,66 10 Tabel 4.4 Pengukuran Selisih Slide Gambar Keempat Ke-1 Ke-2 Ke-3 Ke-4 Ke-5 Ke-6 Ke-7 Ke-8 Ke-9 Ke-10 0,8 0,8 0,8 0,8 0,8 1 1,4 1,4 1,6 1,6 11 Rata-rata Selisih Errornya = = 1,1 10 39

BAB V KESIMPULAN Alat sudah bekerja sesuai dengan semestinya yaitu motor satu rolling ke atas, motor dua kondisi loss lalu screen running mendisplay slide gambar satu - delay 30 detik - screen bergerak ke atas mendisplay slide gambar dua - delay 30 detik - screen bergerak ke atas mendisplay slide gambar tiga - delay 30 detik - screen bergerak ke atas mendisplay slide empat. Dan kemudian sebaliknya motor dua aktif rolling ke bawah, motor satu kondisi loss lalu screen running kembali mendisplay slide gambar tiga - delay 30 detik - screen bergerak ke bawah mendisplay slide gambar dua - delay 30 detik - screen bergerak ke atas mendisplay slide gambar satu kembali, begitu seterusnya untuk looping sistem kerja screennya. Dari perputaran alat tersebut berjalan setiap slidenya berhenti untuk slide gambar selanjutnya, sudah sesuai dengan yang diinginkan walaupun posisi tidak terlalu tepat sekali pada garis, tapi sudah dapat hanya menampilkan satu slide gambar saja. Pada alat tersebut ternyata mengalami timing yang berbeda di mana saat screen rolling ke atas dan ke bawah, ini dikarenakan kinerja motor pada saat turun bebannya lebih ringan dari pada saat naik. Oleh karena itu kelebihan dari alat ini adalah sensor posisi yang menentukan berapa banyaknya putaran untuk setiap slidenya. Kekurangannya karena sensor posisinya hanya delapan lubang untuk 360 derajat maka akurasinya hanya 360 o. sehingga sensor hanya mengetahui 8 pergerakan setiap 45 derajat. Untuk sarannya supaya keakuratanya lebih baik dibuat lubang yang lebih banyak pada sensor posisi sehingga bisa mendeteksi setiap 1 derajat. Dan sistem mekaniknya lebih presisi sesuai ketentuan yang dinginkan. 40

DAFTAR PUSTAKA 1. Widodo Budiharto, 2005, Perancangan Sistem dan Aplikasi Mikrokontroler, Jakarta: Elex Media Komputindo. 2. Haline, 2003, User s Manual Programmer, Minimum System, Emulator & Evaluation Board Type : HB2000S, Haline Elektronik. 3. Setiawan, Sulhan, 2006, Mudah dan Menyenangkan Belajar Mikrokontroller, Yogyakarta, C.V Andi Offset. 4. AVR Data Sheet by Atmel 41

LAMPIRAN 42

Program Assembler lengkapnya sebagai berikut : #include <sfr52.inc> EnableMotorUp bit P0.0 ;High Motor1 aktif Low Motor1 off Motor1P bit P0.1 ;High Output Motor1P=12V Low kebalikan Kondisi Larangan M1P & M1M adalah + ; akan membuat IC Rusak Motor1M bit P0.2 ;Low Output Motor1M=0V High Kebalikan EnableMotorDown bit P0.3 ;High Motor2 aktif Low Motor2 Off Motor2P bit P0.4 ;High Output Motor2P=12V Low Kebalikan Motor2M bit P0.5 ;Low Output Motor2M=0 High kebalikan TombolDown bit P3.2 TombolStart bit P3.3 Input1 bit P3.4 ;1 opto kena sinar/ pas di lubang Input2 bit P3.5 ;0 Bila terhalang LedUp bit P3.6 LedDown bit P3.7 Arah bit 00H ;0 maka turun 1 maka naik JumlahNaik equ 30H JumlahTurun equ 31H Slide1 equ 32H ;jumlah putaran setiap slide Slide2 equ 33H Slide3 equ 34H Slide4 equ 35H Pengali equ 36H ;utk mengalikan timer 0 InitTimer: Mov InitSerial: Mov Mov Setb Tmod,#00100001B Scon,#01010000B Th1,#-3 TR1 Init:Mov Clr Clr Mov Clr Mov P0,#0ffH EnableMotorUp EnableMotorDown P3,#0ffH Arah JumlahNaik,#0 43

Mov JumlahTurun,#0 Mov Dptr,#MenuAwal Acall KirimKarakter Acall Enter Awal:Jnb TombolDown,GoBawah Jnb TombolStart,Main Acall StopDown Sjmp Awal GoBawah: Acall ShortDelay Acall RollingBawah Sjmp Awal Main:Acall ShortDelay IklanNaik: Acall RollingAtas HitungNaik: Jb Input1,CounterUp ;kalau sudah dipasang ke alat maka ganti dg JB Sjmp HitungNaik CounterUp: Clr LedUp Acall ShortDelay Jb Input1,$ Setb LedUp Mov A,JumlahNaik Add A,#1 Mov JumlahNaik,A ;memori utk menghitung jumlah putaran Acall KonversiHex2Des Acall Enter Mov A,JumlahNaik Cjne A,#55,CekSlide2 Mov Slide1,JumlahNaik ;simpan putaran ke slide 1 Mov Dptr,#SimpanSlide1 Acall KirimKarakter StopSlide1: Acall StopUp Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan ;================================================= ;Dari sini lanjutkan rolling up menuju slide dua ;------------------------------------------------------ 44

Sjmp IklanNaik CekSlide2: Cjne A,#120,CekSlide3 Mov Slide2,JumlahNaik Mov Dptr,#SimpanSlide2 Acall KirimKarakter StopSlide2: Acall StopUp Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan Sjmp IklanNaik CekSlide3: Cjne A,#201,HitungNaik Mov Slide3,JumlahNaik Mov Dptr,#SimpanSlide3 Acall KirimKarakter StopSlide3: Acall StopUp Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan Mov JumlahNaik,#0 Mov JumlahTurun,#0 ;=========================================== ;Selesai Rolling Naik ganti ke Rolling Bawah ;------------------------------------------- IklanTurun: Acall RollingBawah HitungTurun: Jb Input1,CounterDown ;kalau sudah dipasang ke alat maka ganti dg JB Sjmp HitungTurun CounterDown: Clr LedUp Acall ShortDelay Jb Input1,$ Setb LedUp Mov A,JumlahTurun Add A,#1 Mov JumlahTurun,A ;memori utk menghitung jumlah putaran 45

Acall KonversiHex2Des Acall Enter Mov A,JumlahTurun Cjne A,#14,CekSlide2Turun ;CekSlide2Turun Mov Slide3,JumlahTurun ;simpan putaran ke slide 1 Mov Dptr,#SimpanSlide3Turun Acall KirimKarakter Mov JumlahNaik,#0 ;=============================================== ;Selesai Rolling Naik ganti ke Rolling Atas lagi ;----------------------------------------------- Acall StopDown Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan CekSlide2Turun: Cjne A,#26,CekSlide1Turun Mov Slide2,JumlahTurun Mov Dptr,#SimpanSlide2 Acall KirimKarakter StopSlide2Turun: Acall StopDown Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan` CekSlide1Turun: Cjne A,#38,IklanTurun Mov Slide1,JumlahTurun Mov Dptr,#SimpanSlide1 Acall KirimKarakter StopSlide1Turun: Acall StopDown Acall DelayIklan Acall DelayIklan ; Acall DelayIklan ; Acall DelayIklan Ajmp Main ;===================================================== RollingAtas: Setb Clr Motor1P Motor1M 46

Acall ShortDelay Setb EnableMotorUp Acall LongDelay Setb Arah ;tanda lagi naik Ret StopUp: Acall ShortDelay Setb Motor1P Setb Motor1M Clr EnableMotorUp Acall LongDelay Ret StopDown: Acall ShortDelay Setb Motor2P Setb Motor2M Clr EnableMotorDown Acall LongDelay Ret RollingBawah: Setb Motor2P Clr Motor2M Acall ShortDelay Setb EnableMotorDown Acall LongDelay Clr Arah ;tanda lagi turun Ret ;====================================================== KonversiHex2Des: Mov R2,#0 Mov R3,#0 Mov R4,#0 Ratusan: Clr C RAtus: Subb A,#100 JC Puluhan Inc R2 Sjmp Ratus Puluhan: Clr C Add A,#100 Puluh: Subb A,#10 Jc Satuan 47

Inc R3 Sjmp Puluh satuan: Clr C Add A,#10 Mov R4,A ;nilai satuan simpan di r4 ;------------------------------------------------------ KirimString: Mov A,R2 Add A,#30H Acall Send Mov A,R3 Add A,#30H Acall Send Mov A,R4 Add A,#30H Acall Send Ret KirimKarakter: Clr A Movc A,@A+DPTR JZ Exit Acall Send Inc Dptr Sjmp KirimKarakter Exit:Ret Enter: Mov Acall Mov Acall Ret Send: Mov Jnb Clr Ret A,#13 Send A,#10 Send Sbuf,A Ti,$ Ti ShortDelay: Djnz R7,ShortDelay Ret LongDelay: Mov R5,#3 Loop: Djnz R7,Loop 48

49 Djnz R6,Loop Djnz R5,Loop Ret DelayIklan: Mov R5,#20 Loop2: Djnz R7,Loop2 Djnz R6,Loop2 Djnz R5,Loop2 Ret Delay10S: Mov Pengali,#200 Wait10S: Acall Delay50mS Djnz Pengali,Wait10S Ret Delay5S: Mov Pengali,#100 Wait5S: Acall Delay50mS Djnz Pengali,Wait5S Ret Delay1S: Mov Pengali,#20 Wait1S: Acall Delay50mS Djnz Pengali,Wait1S Ret Delay500mS: Mov Pengali,#10 Wait500mS: Acall Delay50mS Djnz Pengali,Wait500mS Ret Delay50ms: Mov Th0,#3CH Mov TL0,#0AFH Setb TR0 Wait: Jnb TF0,Wait Clr TR0

Clr TF0 Ret MenuAwaL: DB "Program Rolling Iklan Reklame",0 SimpanSlide1: DB "Simpan Slide 1",13,10,0 SimpanSlide2: DB "Simpan Slide 2",13,10,0 SimpanSlide3: DB "Simpan Slide 3",13,10,0 SimpanSlide4: DB "Simpan Slide 4",13,10,0 SimpanSlide3Turun: DB "Simpan Slide 3 Turun",13,10,0 End 50

Skema Rangkaian Rolling Billboard 51

Encoder Motor DC 52

H Bridge Motor DC 53

Single Power Supplay 54

Layout PCB 55

Skematik Komponen Pada PCB 56