Narotama Collection http://ejournal.narotama.ac.id
Abstrak Seiring dengan perkembangan jaman, aktifitas manusia semakin meningkat sehingga menyebabkan manusia sering meninggalkan rumah. Dengan kesibukan dalam beraktifitas tersebut sering kali pulang larut malam atau ada juga saat harus keluar kota dalam beberapa hari. Rumah yang selalu gelap atau selalu terang dapat mengundang pemikiran kriminal pihak – pihak tertentu, dengan kesimpulan tidak ada orang di dalam rumah. Di jaman perkembangan tehnologi seperti sekarang ini, dimungkinkan sekali untuk membuat suatu alat yang dapat digunakan untuk mengendalikan peralatan elektronik, baik yang terdapat dirumah, perkantoran, ruko, mal maupun apartemen dengan sebuah komputer sebagai pusat kendali.
diselesaikan baik dari sisi interfacing serial
BAB I
port
PENDAHULUAN
juga
dari
sisi
mikrokontroler.
Permasalahan-permasalahan tersebut secara 1.1.
umum adaah sebagai berikut:
Latar Belakang
1. Bagaimana
Manusia selalu ingin hidup lebih
unuk
mewujudkannya.
2. Bagaimana
Dahulu
bidang
tranportasi
dan
3. Bagaimana
banyak
5. Bagaimana
perkembangan
manusia
komunikasi
antara
komputer dan mikrokontroler.
jaman, aktifitas manusia semakin meningkat menyebabkan
pemprograman
mikrokontroller AT89s51.
lebih mudah dan lebih baik.
sehingga
interfacing
4. Bagaimana
bertujuan agar kehidupan manusia menjadi dengan
serial
mikrokontroller AT89s51.
penemuan – penemuan lainnya semua itu
Seiring
pemprograman
port menggunakan visual basic.
ditemukan sepeda untuk mempermudah dalam
komputer
terutama serial port.
mudah, karena itu manusia selalu mencari cara
interfacing
6. Bagaimana mengatifkan peralatan
sering
elektronic bersumber listrik AC.
meninggalkan rumah. Dengan kesibukan
7. Bagaimana
dalam beraktifitas tersebut sering kali pulang
penanganan
motor
stepper.
larut malam atau ada juga saat harus keluar kota dalam beberapa hari. Rumah yang selalu gelap atau selalu terang dapat mengundang pemikiran kriminal pihak – pihak tertentu, dengan kesimpulan tidak ada orang di dalam rumah. 1.2
Manfaat Dan Tujuan
Manfaat dan tujuan dari pelaksanaan Tugas Akhir ini antara lain, yaitu: 1. Untuk memenuhi tugas akhir.
Permasalahan Permasalahan
1.3.
2. Untuk memperdalam pengetahuan timbul
dan
harus
Narotama Collection http://ejournal.narotama.ac.id
BAB I PENDAHULUAN
tentang interfacing serial port. 3. Dapat
mengendalikan
peralatan
BAB II LANDASAN TEORI
elektronik dengan sebuah komputer
BAB III METODE PENELITIAN
sebagai pusat kendali.
BAB IV PEMBAHASAN OBYEK
4. Semoga
dapat
bermanfaat
bagi
BAB V PENUTUP
penulis, pembaca dan mahasiswa universitas NAROTAMA jurusan
BAB II
Sistem Komputer.
LANDASAN TEORI 2.1 Mikrokontroller AT89S51
1.4
Batasan Masalah
Mikrokontroller
merupakan
Adapun batasan masalah dalam Tugas Akhir
pengkombinasian
ini :
Processing Unit) dengan memori dan I/O
Mengendalikan lampu maksimal 8 buah
(Input/Output) dalam satu chip, yang sering
dan jendela hanya 1 buah jendela.
antara
CPU
(Central
disebut sebagai single chip microcomputer
Kekuatan mengendalikan setiap satu peralatan kurang lebih 500 watt.
(SCM). Berbeda dengan mikroprosesor yang membutuhkan ROM (Read Only Memory), RAM (Random Access Memoy), dan I/O
1.5
sebagai sarana pendukung operasinya.
Metode Penulisan Proses penyusunan Laporan Proyek
Madya
ini
melalui
beberapa
tahapan,
Mikrokontroler AT89S51 termasuk salah satu jenis mikrokontroler dari keluarga
tahapan – tahapan tersebut meliputi :
MCS51 yang dikemas dalam standart DIL (
1. Survey dan observasi
Dual In Line ) 40 pin. Mikrokontroler ini
2. Analisa data
diproduksi
3. Perancangan perangkat
karakteristik yang benar-benar kompatibel
4. Pembuatan
perangkat
keras
dan
perangkat lunak. 5. Ujicoba
oleh
ATMEL
dengan
dengan mikrokontroler produksi Intel. Beberapa
fasilitas
yang
dimiliki
oleh
mikrokontroler AT89S51 sebagai berikut:
6. Dokumentasi
1. Sebuah CPU 8 bit.
1.6
Sistematika Penulisan
2. Oscilator dan clock circuit internal.
Penulisan laporan Proyek Madya ini
3. Internal
disusun dalam suatu sistematika sebagai berikut :
ROM
jenis
EEPROM
dengan kapasitas 4 Kbyte. 4. Internal RAM 128 byte. 5. 4 x 8 bit programable I/O (port0 port 3).
Narotama Collection http://ejournal.narotama.ac.id
SCON. Register yang digunakan untuk
6. 2 buah timer/counter (T0 & T1). 7. Komunikasi data serial Full Duplex
mengatur kerja timer adalah Register TCON dan beberapa register khusus lainnya.
( SBUF ).
2.2 Port Serial ( RS232 ) 8. Lima
buah
jalur
interupsi
(2
interupsi external dan 3 interupsi internal ).
Dikenal 2 macam cara pengiriman (tranmisi) data secara serial. Kedua cara tersebut dibedakan oleh sinyal detak yang
2.1.1 Konfigurasi Pin-Pin mikrokontroler
dipakai untuk mendorong data serial, kalau
AT89S51
sinyal detak dikirim bersama – sama dengan
Konfigurasi
mikrokontroler
data serial, cara tersebut dikatakan sebagai
AT89S51 digolongkan menjadi pin sumber
tranmisi
tegangan, pin osilator, pin kontrol, pin I/O,
Sedangkan dalam transmisi data secara
dan pin untuk proses interupsi luar. AT89S51
asinkron, detak tidak dikirim bersama data
memiliki 4 group I/O, yang masing-masing
serial,
group terdiri dari 8 pin, yaitu port 0, port 1,
membangkitkan sendiri detak pendorong
port 2, dan port 3. Berikut konfigurasi pin
data serial. Transmisi data serial secara
AT89S51 :
asinkron inilah yang biasa disebut UART.
data
serial
rangkaian
secara
penerima
sinkron.
data
harus
2.3 Relay Relay
adalah
switch
yang
dioperasikan secara elektrik. Relay memiliki koil
yang
apabila
daliri
arus
listrik
menciptakan medan magnet yang akan menarik
tuas
didalamnya
sehingga
melakukan switch. Gambar 2.1 Konfigurasi Pin AT89S51 2.4 Motor Stepper Pada Motor DC biasa, akan berputar 2.1.2 SFR (Special Function Register) Special Function Registers ( SFR )
dan berputar terus selama power supply ada. Tidak ada rangkaian cerdas tertentu yang
adalah register – register yang mempunyai
diperlukan untuk mengendalikan motor
fungsi khusus, sebagai contoh P0, P1, P2,
tersebut,
dan P3 digunakan sebagai register untuk
putaran atau membalik putaran, dengan
menampung data input output. Selain itu ada
menerapkan polaritas balik. Motor stepper
juga SFR yang digunakan untuk mengatur
adalah
dan memantau kondisi UART, yaitu register
kecuali
sangat
hanya
berbeda.
memperlambat
Jika
anda
memberikan power pada motor ini, maka
Narotama Collection http://ejournal.narotama.ac.id
motor ini akan berada dalam keadaan diam,
adalah:
agar motor dapat berputar, anda harus
Private Sub MSComm1_OnComm() If MSComm1.CommEvent = comEvReceive Then Dim Data As Variant Data = MSComm1.Input End If End Sub
merubah sinyal yang masuk ke motor. 2.5 Visual Basic Visual basic merupakan salah satu Development Tool yaitu alat bantu untuk membuat
berbagai
macam
program
BAB III
komputer. Visual basic bekerja dalam ruang lingkup
Microsoft
Wndows.
METODE PENELITIAN
Microsoft
Visual Basic dapat memanfaatkan seluruh
Metode penelitian yang digunakan
kemudahan dan kecanggihan yang dimiliki
dalam perancangan perangkat keras dan
oleh sistem operasi windows. Secara umum
perangkat lunak adalah studi kepustakaan
kemampuan
adalah
dan melakukan percobaan perangkat lunak
menyediakan komponen – komponen yang
dan perangkat keras. Dalam pembuatan
memungkinkan dalam membuat program
perangkat
keras
aplikasi yang sesuai dengan tampilan dan
dilakukan
berdasarkan
cara kerja windows.
literatur masing-masing komponen.
visual
basic
dan
perangkat
lunak
data-data
dari
2.5.1 Pemprograman Serial Port Dengan Visual Basic
3.1 Downloader dan Minimum Sistem
Visual basic sudah memiliki fasilitas
Mikrokontroller AT89S51
untuk pemprograman serial port. Komponen
AT89S51 adalah keluarga MCS51
yang mengontrol serial port dalam visual
yang
basic adalah Microsoft Comm Contrl 6.0,
Programmable yang artinya sudah memiliki
konfigurasi yang perlu diberikan antara lain:
sistem pemprogram didalamnya. Dengan
MSComm1.CommPort = 1
memiliki
fitur
In
System
adanya fitur ini maka prosedur flashing
MSComm1.Settings= "9600,N,8,1" MSComm1.Handshaking = 0
Untuk mengaktifkan atau membuka dan menonaktifkan serial port gunakan instruksi
(memasukkan program kedalam chip) jadi lebih mudah. Adapun gambar rangkaian flasher atau downloader seperti dibawah ini.
dibawah ini: MSComm1.PortOpen = True MSComm1.PortOpen = False
Untuk output gunakan seperti dibawah ini: MSComm1.Output = "data"
Sedangkan input serial port merupakan suatu event
yang
penanganannya
disediakan
prosedur tertentu oleh VB, prosedur tersebut
Gambar 3.1 Downloader AT89S51
Narotama Collection http://ejournal.narotama.ac.id
Sedang
perangkat
lunak
yang
menggunakan RS232 level konverter.
digunakan dalam proses flashing ini adalah ISP Flash Progammer V3.0 yang dibangun oleh Muhammad Asim Khan dari India. Adapun minimum sistem yang harus ada dalam
pengoperasian
atau
running
mikrokontroler AT89S51 adalah sebagai berikut: Gambar 3.4 Rangkaian Umum MAX232
3.3 Pemprograman Serial Port Menggunakan Visual Basic Visual basic sudah memiliki fasilitas untuk pemprograman serial port. Komponen yang mengontrol serial port dalam visual basic adalah Microsoft Comm Control Gambar3.3 minimum sistem AT89S51
Untuk percobaan dilakukan komunikasi secara loopback yaitu menyambungkan pin
3.2 RS232 Level Konverter Bentuk sinyal RS232 yaitu logika 0 direpresentasikan antara +3 sampai +25 volt, logika 1 direpresentasikan antara -3 sampai 25 volt dan voltase antara -3 sampai +3 tidak terdefenisi. Circuit)
Sedangkan
TTL
konfigurasi
dan
sendiri
IC CMOS yaitu
(Integrated
transmit dengan pin receive sehingga kita menerima data yang kita kirim sendiri. Untuk melakukannya gunakan konektor DB9 dan sambungkan pin 2 ke pin 3 seperti gambar berikut.
memiliki logika
0
direpresentasikan dengan 0 volt, logika 1 direpresentasikan dengan +5 volt. Hampir semua perangkat digital menggunakan level logika TTL atau CMOS
Gambar 3.5 DB9 Loopback
yaitu 0 volt untuk logika 0 dan +5 volt untuk logika 1. Karena itu langkah pertama untuk menghubungkan sebuah perangkat digital ke serial port adalah mengubah level logika RS232 menjadi level logika TTL atau CMOS. Hal ini dapat dilakukan dengan
3.4 Motor Stepper Motor stepper biasanya memiliki 5 atau 6 kabel, motor stepper dengan 6 kabel memiliki 2 common dan yang 5 kabel memiliki 1 common. Motor stepper biasanya memerlukan tegangan 12 volt dan arus yang
Narotama Collection http://ejournal.narotama.ac.id
cukup besar sekitar 200mA. Tegangan dan
menjadi beberapa modul penyusun sistem,
arus output mikrokontroller tidak dapat
di antaranya : pembuatan kabel serial port,
digunakan
motor
modul serial port level konverter, modul
stepper karena terlalu kecil. Karena itu
minimum sistem mikrokontroler, modul
digunakan penguat arus dan tegangan.
relay
untuk
menggerakkan
agar
mikrokontroler
dapat
mengendalikan listrik AC dan modul motor stepper. Modul – modul tersebut tergabung dalam sistem dengan diagram blok sebagai berikut :
PC serial port
Level konverter
Gambar 3.7 Skematik mikrokontroller dan motor stepper
Mikrokontroler
3.5 Relay Koil pada relay membutuhkan arus yang relatif besar, biasanya sekitar 30 mA
Driver motor
Modul relay
untuk ralay 12V, tapi bisa sampai 100mA untuk relay – relay tertentu. Kebanyakan IC tidak dapat memenuhi kebutuhan arus relay
Motor stepper
Perangkat dengan listrik AC
Gambar 4.1 Diagram blok sistem
tersebut, maka biasanya digunakan transistor untuk menguatkan arus IC yang kecil untuk memenuhi kebutuhn arus relay yang besar.
4.1 Modul Mikrokontroler Modul
mikrokontroler
menggunakan
2
mode
ini
yaitu
mode
downloader / flasher dan mode running. Karena menggunakan mikrokontroler 89S51 yang
sudah
mendukung
In
System
Programable maka dimungkinkan untuk Gambar 3.8 Skematik relay
menggabungkan mode flash dn mode run. Flashing MISO,
BAB IV TESTING DAN IMPLEMENTASI sistem
SCK
dan
melalui reset
pin pada
mikrokontroler yang dihubungkan pada paralel
Implementasi
MOSI,
dilakukan
port
komputer.
Karena
proses
dipisahkan
flashing sifatnya hanya sementara, maka
anatara perangkat keras dan perangkat
dipasang konektor agar setelah diflash kabel
lunak. Pembuatan perangkat keras dibagi
flash dapat dilepas.
Narotama Collection http://ejournal.narotama.ac.id
Sebagai
modul
Untuk menguji apakah minimum
mikrokontroler ini berfungsi atau tidak,
sistem yang dibuat dapat bekerja, maka
maka digunakan 4 buah led yang anodanya
diflashkan program sederhana yang akan
dihubungkan ke 5 VDC dan katodanya
membuat 4 led yang dipasang menyala
dipasang pada P1.0, P1.1, P1.2 dan P1.3
bergantian. Led akan menyala jika pada pin
pada mikrokontroler. Adapun part list modul
mikrokontroler yang bersangkutan diberi
mikrokontroler ini adalah sebagai berikut :
logika ‘0’. Adapun programnya sebagai
Partlist kabel flash :
berikut :
Jumlah 1 1m 1
penguji
apakah
Part Konetor male DB25 Kabel rangkap 5 Konektor 6 pin
Gambar 4.2 Kabel flash Partlist minimum sistem dan flasher : Jumlah 1 1 2 1 1 4 4 1 1 1
Part IC 89S51 X-Tal osilator 11,0592 MHz Kapasitor 33pF Kapasitor 10µF Resistor 10kΩ Resistor 560Ω Led Header 6 pin Switch push button untuk reset Switch untuk mode
4.2
mulai: mov call mov call mov call mov call jmp
p1, 00001110b delay p1, 00001101b delay p1, 00001011b delay p1, 00000111b delay mulai
delay: mov delay1: mov delay2: mov djnz djnz djnz ret
r0,05h r1,0ffh r2,0ffh r2,$ r1,delay2 r0,delay1
Modul
Serial
Port
dan
Level
Konverter Modul serial port berupa sebuah konektor serial port DB9 dan 3 kabel yang nantinya dihubungkan pada modul serial port level konverter. Tiga kabel tersebut masing – masing adalah jalur Rx, jalur Tx dan ground. Jalur Rx adalah adalah jalur untuk menerima data, jalur Tx adalah jalur untuk mengirim data dan ground sebagai referensi tengangan jalur Rx dan Tx. Modul level konverter adalah modul yang akan menyamakan level tegangan serial port pada komputer dengan level tegangan serial port pada mikrokontroler. Adapun part list untuk kedua modul ini
Gambar 4.4 Minimum sistem dan flasher
adalah sebagai berikut:
Narotama Collection http://ejournal.narotama.ac.id
Jumlah
Part
1
Konetor female DB9
Setelah ditentukan nilai timer1, maka kita
1m
Kabel rangkap 3
dapat membuat program selengkapnya
1
IC MAX232
4
Kapasitor (C) 10µF
baudload ljmp serial_init: mov
equ start
0fdh
scon,#01010000b
mov mov mov
tmod,#00100000b th1,#baudload tcon,#01000000b
clr
ti
mov
sbuf,a
jnb
ti,$
clr jnb
ri ri,$
mov
a,sbuf
lcall lcall
serial_init terima
lcall lcall lcall sjmp
kirim kirim kirim start
ret kirim:
Gambar 4.5 Konektor serial port DB9 dan level konverter Untuk menguji apakah modul level
ret terima:
konverter ini dapat bekerja, maka modul ini dihubungkan dengan modul mikrokontroler. Pada komputer digunakan program VB yang ditulis pada BAB III. Akan dibuat program sederhana
dimana
mikrokontroler
ret start:
akan
menerima satu karakter dan mengirimkan kembali karakter yang sama sebanyak 3 kali. Karena setting serial port pada program komputer menggunakan baudrate
end
Jika pada komputer terlihat bahwa
9600 bps, maka mikrokontroler juga harus
karakter yang dikirim dikembalikan lagi
diset agar menggunakan baudrate 9600 bps
sebanyak 3 kali, maka modul level konverter
juga. Adapun perhitungan baudrate pada
dan
mikrokontroler adalah sebagai berikut:
mikrokontroler berhasil dilakukan.
komunikasi
antara
komputer
dan
SMOD = 0 Baudrate= 2SMOD x frekuensi osilator 32 12 x (256-TH1) 9600
= 20 x 11,0592 x 106 32 12 x (256 – TH1)
4.3 Modul Relay Relay
membutuhkan
arus
yang
cukup besar untuk mengaktifkan koilnya.
256 – TH1= 1 x 11,0592 x 106 32 12 x 9600
Tegangan dan arus output mikrokontroller
256 – TH1= 3
karena itu digunakan penguat arus dan
TH1
= 256 – 3
tegangan. Karena menggunakan banyak
= 253 atau FDH
relay, maka digunakan IC ULN2803 yang
tidak mencukupi untuk mengaktifkan relay
Narotama Collection http://ejournal.narotama.ac.id
merupakan transistor array. IC ULN 2803 adalah IC dengan pin
komputer adalah karakter ‘A’ dan relay akan mati jika data yang dikirim karakter ‘a’.
berjumlah 18, merupakan 8 transistor yang
Program tersebut sebagai berikut:
semua emiternya di disatukan, input IC ULN
baudload ljmp
2803 merupakan basis dari masing – masing transistor dan outputnya merupakan kolektor dari masing – masing transistor. Karena outputnya adalah kaki kolektor dari sebuah transistor maka output IC ini lebih baik digunakan sebagai penyerap arus (sink). Sehingga skematik rangkaian modul relay adalah sebagai berikut :
Gambar Modul relay Adapun partlist modul relay sebagai berikut: Jumlah
Part
1
IC 2803
1
Relay 12 Volt
1
Resistor 2k2 Ω
1
Led sebagai indikator relay
equ start
serial_init: mov mov mov mov ret kirim: clr mov jnb ret terima: clr jnb mov ret cek_data: data_a: cjne clr jmp data_abesar: cjne setb selesai: call ret start: lcall mov trap: lcall lcall jmp end
0fdh
scon,#01010000b tmod,#00100000b th1,#baudload tcon,#01000000b
ti sbuf,a ti,$
ri ri,$ a,sbuf
a,#'a',data_abesar p0.0 selesai a,#'A', selesai p0.0 kirim
serial_init p0,#00h terima cek_data trap
Jika led menyala dan terdengar Untuk menguji apakah modul relay
bunyi klik pada relay berarti modul relay
ini bekerja, digunakan sistem yang sudah
bekerja dengan baik. Sebagai tambahan,
ada yaitu modul – modul sebelumnya. Pada
pada
komputer digunakan program VB yang
mikrokontroler mengirim kembali karakter
ditulis pada BAB III. Dibuat program pada
yang diterimanya sebagai balasan.
mikrokontroler yang akan mengaktifkan relay yang terhubung pada port 0.0 (P0.0) mikrokontroler jika data yang dikirim oleh
komputer
terlihat
bahwa
Narotama Collection http://ejournal.narotama.ac.id
dan menggunakan penjadwalan, akan lebih
BAB V
berguna
PENUTUP
apabila
pengontrolan
dapat
dilakukan secara online misalnya melalui
5.1 Kesimpulan Untuk menghubungkan komputer dengan peralatan elektronik dibutuhkan
internet atau dapat juga melalui telpon atau sms.
software dan hardware, software yang digunakan adalah Visual Basic dan hardware yang digunakan
adalah
mikrokontroller
AT89S51 yang berkomunikasi melalui serial port / com port.
Daftar Pustaka
Sebelum mikrokontroler program
dapat harus
asembli
digunakan
diflash
yang
dengan
sesuai
dengan
kebutuhan kita. Dalam hal ini program yang
Agfianto Eko Putra, 2003, “Belajar Mikrokontroler At89c51/52/53 (Teori Dan Aplikasi)”, Gava Media
disikan adalah konfigurasi serial port dan tugas – tugas yang harus dikerjakan setelah menerima data dari komputer. Untuk peralatan
dapat
mengendalikan
elektronik,
mikrokontroler
memerlukan hardware tambahan yaitu relay. Relay merupakan switch yang dioperasikan secara elektrik. Dengan relay ini perangkat bertenaga listrik DC bisa mengaktifkan perangkat bertenaga listrik AC (listrik PLN). Software
yang
dibangun
menggunkan
Visual
Basic
akan
mengirimkan
karakter
tertentu
kepada
mikrokontroler
melalui
serial
port.
Mikrokontroler akan melakukan tugas sesuai dengan karakter yang dikirim kepadanya.
5.2 Saran Tugas akhir ini masih sederhana dan tidak
menutup
kemungkinan
untuk
dikembangkan lebih luas lagi. Salah satunya yaitu tugas akhir ini sifatnya masih offline
Suhata, ST, 2005, “VB Sebagai Pusat Kendali Peralatan Elektronik”, Elex Media Komputindo Krisna D Octavhiani, 2003, “Cepat Mahir Visual Basic 6.0”, www.ilmukomputer.com
“Interfacing The Serial / RS-232 Port”, www.beyondlogic.org/serial/serial.htm
John Hewes, "Electronics Club, Kelsey Park School", www.kpsec.freeuk.com