MAKALAH SISTEM MIKROPROSESOR
PARALLEL
INTERFACING
Oleh Kelompok IV :
1. Rieke Syochrani Zaef
(1611012008)
2.
Viviean Anneesa
(1611011004)
3.
Winda Wahyuni R
(1611011013)
Dosen Pembimbing : Efrizon, SST,
MT.
POLITEKNIK NEGERI PADANG
JURUSAN TEKNIK ELEKTRO
PROGRAM STUDI DIV ELEKTRONIKA
INDUSTRI
TAHUN 2017
KATA PENGANTAR
Assalamu’alaikum warahmatullahi wabarakatuh.
Alhamdulillahirabbilalamin,
Puji syukur kepada Allah
SWT yang telah memberikan banyak nikmat, rahmat, taufik, serta hidayah-Nya sehingga kami dapat menyelesaikan makalah dengan judul ”PARALLEL INTERFACING”. Penulis berharap isi dari makalah ini bebas dari
kekurangan dan kesalahan,
maka dari itu penulis meminta maaf apabila dalam penulis masih ada kekurangan. Oleh karena
itu, penulis mengharapkan kritik dan saran yang membangun agar makalah ini dapat lebih baik lagi. Akhir kata kami dari penulis berharap agar makalah ini bermanfaat bagi semua
pembaca.
Semoga dalam penulisan makalah ini bisa
memberikan informasi dan ilmu yang bisa bermanfaat.
Wassalamu’alaikum Wr. Wb
Padang, 16 November 2017 |
Penulis |
|
DAFTAR ISI
Cover
Makalah.............................................................................................
Kata Pengantar............................................................................... ............
Daftar Isi.......................................................................................... ............
BAB I PENDAHULUAN
A. Latar Belakang........................................................................... ..........
B. Rumusan Masalah...................................................................... ..........
C. Tujuan......................................................................................... ..........
BAB II PEMBAHASAN
A.
Pengertian Interfacing dan
Stepper Motor............................................
B.
Prinsip Kerja Stepper Motor….............................................................
C.
Rangkaian Driver Stepper Motor.........................................................
D.
Eksperimen Robot Micromouse..........................................................
E.
Interfacing ke DAC dan
Interfacing ke ADC...................................
BAB III PENUTUP
A. Kesimpulan................................................................................... ......
B. Saran............................................................................................ ......
DAFTAR PUSTAKA........................................................................... ....
BAB
I
PENDAHULUAN
A. Latar Belakang
Interfacing adalah bagian dari disiplin ilmu komputer yang mempelajari yang
mempelajari teknik-teknik menghubungkankomputer dengan perangkat alat
elektronika lain.
Sistem komputer yang berpusat pada pemroses utama memiliki kemampuan yang
besar dalam memecahkan masalah tetapi tidak ada manfaatnya tanpa menghubungkan
dengan peralatan lainnya.
Kita tidak
dapat langsung menghubungkan pemroses utama dengan peralatan tersebut,
disebabkan oleh hal – hal berikut :
1. Terdapat
beraneka ragam peralatan / piranti yang memiliki metode operasi beragam.
2. Laju transfer data dalam piranti seringkali
lebih lambat dibandingkan dengan laju transfer data dengan pemroses utama
(Mikroprosessor)
3. Piranti seringkali menggunakan format data yang
berbeda dengan pemroses utama
Jadi tidaklah praktis untuk
menghubungkan mikroprosessor secara langsung dengan piranti yang ingin
dijalankannya. Diperlukan suatu teknik untuk mem”perantarakan”kan pemroses
utama dengan dunia luar. Teknik ini dapat dijalankan melalui :
1. Perangkat lunak Berupa Program
Yaitu suatu prosedur tertentu untuk menjalankan
piranti. Dalam dunia komputer program ini lebih dikenal dengan Drive /
Installer.
2. Perangkat Keras Berupa IC, Chipsets-
Onboard, Card
B. Rumusan Masalah
a.
Bagaimana
prinsip kerja stepper motor?
b.
Bagaimana
rangkaian driver stepper motor?
c.
Seperti
apa pemrograman stepper motor?
d.
Bagaimana
eksperimen Robot Micromouse menggunakan penggerak stepper motor?
e.
Apa itu
Interfacing ke DAC?
f.
Apa itu
Interfacing ke ADC?
C. Tujuan
a.
Dapat mengenal
dan memahami apa itu inerfacing.
b.
Dapat
memahami bagaimana prinsip kerja dari stepper motor.
c.
Mengetahui
dan memahami bentuk rangkaian driver stepper motor.
d.
Mengetahui
bagaimana eksperimen robot micromouse menggunakan penggerak stepper motor.
e.
Memahami
interfacing ke DAC dan interfacing ke ADC.
BAB
II
PEMBAHASAN
A. Apa itu Interfacing dan Stepper Motor?
Interfacing adalah bagian dari disiplin ilmu
komputer yang mempelajari yang mempelajari teknik-teknik menghubungkankomputer
dengan perangkat alat elektronika lain.
Motor stepper atau stepper motor
adalah perangkat elektromekanis yang bekerja dengan mengubah pulsa elektronis
menjadi gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan
pulsa yang diberikan kepada motor. Karena itu, untuk menggerakkannya diperlukan
pengendali motor stepper yang membangkitkan pulsa-pulsa periodik. Penggunaan
motor stepper memiliki beberapa keunggulan dibandingkan dengan penggunaan motor
DC biasa. Keunggulannya antara lain adalah :
- Sudut rotasi motor proporsional dengan pulsa masukan sehingga lebih mudah diatur.
- Motor dapat langsung memberikan torsi penuh pada saat mulai bergerak
- Posisi dan pergerakan repetisinya dapat ditentukan secara presisi
- Memiliki respon yang sangat baik terhadap mulai, stop dan berbalik (perputaran)
- Sangat realibel karena tidak adanya sikat yang bersentuhan dengan rotor seperti pada motor DC
- Dapat menghasilkan perputaran yang lambat sehingga beban dapat dikopel langsung ke porosnya
- Frekuensi perputaran dapat ditentukan secara bebas dan mudah pada range yang luas.
B. Prinsip kerja motor stepper
Motor stepper merupakan perangkat
pengendali yang mengkonversikan bit-bit masukan menjadi posisi rotor. Bit-bit
tersebut berasal dari terminal-terminal input yang ada pada motor stepper yang
menjadi kutub-kutub magnet dalam motor. Bila salah satu terminal diberi sumber
tegangan, terminal tersebut akan mengaktifkan kutub di dalam magnet sebagai
kutub utara dan kutub yang tidak diberi tegangan sebagai kutub selatan. Dengan
terdapatnya dua kutub di dalam motor ini, rotor di dalam motor yang memiliki
kutub magnet permanen akan mengarah sesuai dengan kutub-kutub input. Kutub
utara rotor akan mengarah ke kutub selatan stator sedangkan kutub selatan rotor
akan mengarah ke kutub utara stator.
Prinsip kerja motor stepper mirip
dengan motor DC, sama-sama dicatu dengan tegangan DC untuk memperoleh medan
magnet. Bila motor DC memiliki magnet tetap pada stator, motor stepper
mempunyai magnet tetap pada rotor. Adapun spesifikasi dari motor stepper adalah
banyaknya fasa, besarnya nilai derajat per step, besarnya volt tegangan catu
untuk setiap lilitan, dan besarnya arus yang dibutuhkan untuk setiap lilitan.
Motor stepper tidak dapat bergerak
sendiri secara kontinyu, tetapi bergerak secara diskrit per-step sesuai dengan
spesifikasinya. Untuk bergerak dari satu step ke step berikutnya diperlukan
waktu dan menghasilkan torsi yang besar pada kecepatan rendah. Salah satu
karakteristik motor stepper yang penting yaitu adanya torsi penahan, yang
memungkinkan motor stepper menahan posisinya yang berguna untuk aplikasi motor
stepper dalam yang memerlukan keadaan start dan stop.
Karakteristik motor stepper
- Tegangan
Tiap motor stepper mempunyai tegangan rata-rata yang
tertulis pada tiap unitnya atau tercantum pada datasheet masing-masing motor
stepper. Tegangan rata-rata ini harus diperhatikan dengan seksama karena bila
melebihi dari tegangan rata-rata ini akan menimbulkan panas yang menyebabkan
kinerja putarannya tidak maksimal atau bahkan motor stepper akan rusak dengan sendirinya
- Resistansi
Resistansi per lilitan adalah karakteristik yang lain
dari motor stepper. Resistansi ini akan menentukan arus yang mengalir, selain
itu juga akan mempengaruhi torsi dan kecepatan maksimum dan motor stepper.
- Derajat per step
Besarnya derajat putaran per step adalah parameter
terpenting dalam pemilihan motor stepper karena akan menentukan ukuran langkah
gerakan yang paling kecil (resolusi). Tiap-tiap motor stepper mempunyai
spesifikasi masing-masing, antara lain 0.72° per step, 1.8° per step, 3.6° per
step, 7.5° per step, 15° per step, dan bahkan ada yang 90° per step. Dalam
pengoperasiannya kita dapat menggunakan 2 prinsip yaitu full step atau half
step. Dengan full step berarti motor stepper berputar sesuai dengan spesifikasi
derajat per stepnya, sedangkan half step berarti motor stepper berputar
setengah derajat per step dari spesifikasi motor stepper tersebut.
Jenis-jenis motor stepper
Berdasarkan struktur rotor dan stator pada motor stepper,
maka motor stepper dapat dikategorikan dalam 3 jenis sebagai berikut :
- Motor Stepper Variable Reluctance (VR)
Motor stepper jenis ini telah lama ada dan merupakan
jenis motor yang secara struktural paling mudah untuk dipahami. Motor ini
terdiri atas sebuah rotor besi lunak dengan beberapa gerigi dan sebuah lilitan
stator. Ketika lilitan stator diberi energi dengan arus DC, kutub-kutubnya
menjadi termagnetasi. Perputaran terjadi ketika gigi-gigi rotor tertarik oleh
kutub-kutub stator. Berikut ini adalah penampang melintang dari motor stepper
tipe variable reluctance (VR):
- Motor Stepper Permanent Magnet (PM)
Motor stepper jenis ini memiliki rotor yang berbentuk
seperti kaleng bundar (tin can) yang terdiri atas lapisan magnet permanen yang
diselang-seling dengan kutub yang berlawanan. Dengan adanya magnet permanen,
maka i
Motor stepper
Intensitas fluks magnet dalam motor ini akan meningkat
sehingga dapat menghasilkan torsi yang lebih besar. Motor jenis ini biasanya
memiliki resolusi langkah (step) yang rendah yaitu antara 7,50
hingga 150 per langkah atau 48 hingga 24 langkah setiap putarannya.
Berikut ini adalah ilustrasi sederhana dari motor stepper tipe permanent magnet
:
- Motor Stepper Hybrid (HB)
Motor stepper tipe hibrid memiliki struktur yang
merupakan kombinasi dari kedua tipe motor
stepper sebelumnya. Motor stepper tipe hibrid memiliki gigi-gigi seperti
pada motor tipe VR dan juga memiliki magnet permanen yang tersusun secara
aksial pada batang porosnya seperti motor tipe PM. Motor tipe ini paling banyak
digunkan dalam berbagai aplikasi karena kinerja lebih baik. Motor tipe hibrid
dapat menghasilkan resolusi langkah yang tinggi yaitu antara 3,60
hingga 0,90 per langkah atau 100-400 langkah setiap putarannya.
Berikut ini adalah penampang melintang dari motor stepper tipe hibrid :
Berdasarkan metode perancangan rangkain pengendalinya,
motor stepper dapat dibagi menjadi 2 jenis yaitu motor stepper unipolar dan
motor stepper bipolar.
- Motor Stepper Unipolar
Rangkaian pengendali motor stepper unipolar lebih mudah
dirancang karena hanya memerlukan satu switch / transistor setiap lilitannya.
Untuk menjalankan dan menghentikan motor ini cukup dengan menerapkan pulsa
digital yang hanya terdiri atas tegangan positif dan nol (ground) pada salah
satu terminal lilitan (wound) motor sementara terminal lainnya dicatu dengan
tegangan positif konstan (VM) pada bagian tengah (center tap) dari lilitan
seperti pada gambar berikut.
- Motor Stepper Bipolar
Untuk motor stepper dengan lilitan bipolar, diperlukan
sinyal pulsa yang berubah-ubah dari positif ke negatif dan sebaliknya. Jadi
pada setiap terminal lilitan (A & B) harus dihubungkan dengan sinyal yang
mengayun dari positif ke negatif dan sebaliknya. Karena itu dibutuhkan
rangkaian pengendali yang agak lebih kompleks daripada rangkaian pengendali
untuk motor unipolar. Motor stepper bipolar memiliki keunggulan dibandingkan
dengan motor stepper unipolar dalam hal torsi yang lebih besar untuk ukuran
yang sama.
semua tipe mempunyai kemiripan yaitu dalam hal
aktivasinya. Namun yang paling membedakan adalah dalam hal urutan pemberian
data aktivasi setiap lilitan pada motor stepper. Motor stepper merupakan motor
listrik yang tidak mempunyai komutator, di mana semua lilitannya merupakan
bagian dari stator. Dan pada rotornya hanya merupakan magnet permanen. Semua
komutasi setiap lilitan harus di kontrol secara eksternal sehingga motor
stepper ini dapat dikontrol sehingga dapat berhenti pada posisi yang diinginkan
atau bahkan berputar ke arah yang berlawanan.
Pada bagaian ini akan dibahas mengenai bagaian terakhir
dari rangkaian penggerak motor stepper.
Rangkaian ini pada dasarnya hanya merupakan rangkaian switching arus yang
mengaliri lilitan pada motor stepper. Urutan pemberian data pada motor stepper
ini dapat mengontrol arah putaran dari motor stepper ini. Penambahan kecepatan
pada motor stepper dapat dilakukan dengan cara meningkatkan frekuensi pemberian
data pada rangkaian switching arus.
Rangkaian kontrol motor stepper ini nantinya terhubung langsung
dengan lilitan pada motor, rangkaian power supplai, dan rangkaian yang
dikontrol secara digital yang pada akhirnya menentukan kapan lilitan yang
diinginkan dalam kondisi off atau on. Selain hanya menggunakan transistor
switching ar, saat ini sudah tersedia driver motor yang memang diperuntukkan
bagi motor stepper, yang lebih dikenal dengan H-Bridge. Komponen ini
biasanya digunakan pada motor stepper tipe bipolar, walaupun demikian tidak
menutup kemungkinan digunakan pada motor stepper tipe yang lain.
Rangkaian Driver Variabel Reluctance Motor Stepper
Kontrol Pada Varibel Reluctance Motor Stepper
Di dalam gambar diatas tersebut
terdapat sebuah 3 blok dimana masing-masing mengatur
sebuah kumparan motor stepper. Blok tersebut terdiri dari
saklar arus yang dikontrol secara digital. Blok ini berperan penting di
dalam pengontrolan arus yang akan melewati kumparan
motor tertentu. Pengontrollan blok ini dapat dilakukan
oleh sebuah rangkaian digital sederhana atau bahkan sebuah komputer melalui
printer port. Dengan menggunakan komputer maka diperlukan perangkat lunak yang
nantinya akan mengatur pemberian data dengan suatu
urut-urutan tertentu kepada komponen saklar di dalam blok.
Kumparan pada motor stepper mempunyai
karakteristik yang sama dengan karakteristik beban
induktif lainnya. Oleh sebab itu ketika terdapat arus yang
melalui kumparan motor, tidak dapat dimatikan dengan seketika tanpa
menghasilkan tegangan transien yang sangat tinggi. Kondisi ini biasanya
nampak dengan timbulnya percikan bunga api (ketika
menggunakan motor DC dengan daya yang besar). Hal ini sangat
tidak diinginkan karena dapat merusak saklar sehingga perlu diberikan rangkaian
tambahan untuk membatasi tegangan transien yang muncul. Sebaliknya
ketika saklar tertutup maka terdapat arus yang mengalir ke kumparan motor dan akan menghasilkan kenaikan tegangan secara perlahan.
Untuk membatasi tegangan spike yang
muncul maka ada dua alternatif penyelesaiannya yaitu dengan memparalel pada
kumparan motor dengan dioda dan alternatif yang kedua adalah dengan menggunakan
kapasitor yang dipasang paralel dengan kumparan motor stepper.
Spike Voltage Reducer
Diode yang yang terpasang paralel tersebut harus mampu
melewatkan arus balik yang terjadi ketika saklar terbuka. Dioda yang digunakan
dapat berupa dioda yang umum dipakai seperti 1N4001 atau 1N4002. Jika digunakan
dioda yang mempunyai karakteristik ‘fast switch’ maka perlu diberikan
penambahan kapasitor yang dipasang secara paralel pada dioda.
Pemasangan kapasitor paralel dengan kumparan motor dapat
menyebabkan spike yang ditimbulkan akan menyebabkan kapasitor tersebut charge
sehingga tegangan spike yang terjadi tidak akan keluar tetapi diredam oleh
kapasitor ini. Tetapi yang paling penting adalah kapasitor ini harus mampu
menahan surge current pada saat terjadi spike. Surge current
adalah arus tiba-tiba yang sangat besar yang muncul bersamaan dengan tegangan
spike. Nilai kapasitor harus dipilih pada kondisi dimana nilai induktansi dari
kumparan motor stepper paling besar. Inilah karakteristik motor stepper dengan
tipe variabel reluctance dimana nilai induktansinya berubah-ubah tergantung
dari sudut putaran pada poros rotor. Penambahan kapasitor sehingga tepat akan
membentuk sebuah rangkaian resonansi yang dapat menyebabkan peningkatan torsi
pada motor dengan tipe ini.
Rangkaian Driver Unipolar Permanent Magnet And Hybrid Motor Stepper
Kontrol Pada Unipolar Permanent Magnet Motor
Rangkaian kontrol untuk mengendalikan motor stepper dengan tipe unipolar ini hampira samadengan rangkaian kontrol pada motor tipe variabel
reluctance. Perbedaanya hanya pada struktur kumparan motornya
saja.
Spike Voltage Reducer Untuk Unipolar Stepper Motor
Walaupun demikian karena bebanya merupakan beban induktif
maka selalu ada tegangan spike yang muncul ketika saklar terbuka. Oleh sebab
itu perlu penambahan dioda yang terpasang paralel dengan kumparan motor stepper
seperti terlihat pada gambar diatas.
Dua buah dioda tambahan diperlukan karena kumparan motor
bukanlah kumparan yang independen tetapi sebuah kumparan yang mempunyai tap di
tengah-tengah kumparan seperti struktur pada autotransformer. Ketika salah satu
saklar dibuka maka tegangan spike muncul di kedua ujung kumparan motor tersebut
dan di clamp oleh dua buah dioda ke supplay motor. Tetapi jika salah
satu ujung kumparan motor tersebut tidak floating terhadap supplai
motor maka tegangan spike ini akan lebih negatif daripada referensi ground.
Jika saklar yang digunakan berupa relay, kondisi ini bukan menjadi masalah.
Kondisi ini baru menjadi masalah ketika saklar yang digunakan adalah saklar
semikonduktor seperti transistor atau FET.
Untuk membatasi level tegangan spike dapat pula digunakan
kapasitor yang terpasang seperti pada gambar berikut.
Pemberian Kapasitor Pembatas Tegangan Spike
Rangkaian Praktis Pengendali/Driver Motor Stepper
Jika rangkaian kontrol yang
mengendalikan rangakaian motor driver ini berupa mikrokontroller atau komponen
digital maka ada baiknya agar setiap port yang mengontrol rangkaian driver motor stepper ini diberi buffer terlebih dahulu
agar tidak membebani port mikrokontroller yang digunakan. Seperti pada gambar
3, pin control_0, control_1, control_2 dan control_3 ini dapat dikontrol secara
digital dengan menggunakan mikrokontroller dengan memberi komponen yang
berfungsi sebagai buffer seperti pada gambar berikut.
Rangkaian Sederhana Penggerak Motor Stepper
Pada gambar diatas hanya ditampilkan satu bagian untuk
mengontrol satu buah kumparan motor stepper. Ada dua alternatif yaitu dengan
menggunakan buffer terlebuh dahulu atau menggunakan FET, yang mempunyai
impedansi input yang sangat tinggi, sebagai komponen saklarnya. Tegangan Vmotor
tidaklah harus selalu sama dengan tegangan VCC pada mikrokontroller. Oleh sebab
itu digunakan sebuah komponen buffer yang mempunyai outputopen collector
sehingga outputnya dapat di pull-up ke tegangan yang diinginkan.
Untuk dasar pemilihan transistornya adalah pada
karakteristik IC (arus kolektor). Transistor ini harus merupakan
transistor power yang mampu melewatkan arus sesuai dengan arus yang diperlukan
oleh kumparan motor stepper ini. Jika arus yang ditarik oleh kumparan motor
stepper ternyata lebih besar daripada kemampuan transistor maka transistor akan
cepat panas dan dapat menyebabkan rusaknya transistor tersebut.
R pull-up sebesar 470 akan memberikan arus
sebesar 10 mA ke basis transistor Q1. Jika Q1 mempunyai gain sebesar 1000 maka
arus yang dapat diliewatkan adalah sekitar beberapa ampere, tergantung
dari besar arus yang ditarik oleh kumparan motor stepper tersebut. Arus ini
harus lebih kecil dari arus IC yang diperbolehkan.
Untuk komponen FET dapat digunakan komponen IRL540 yang
dapat mengalirkan arus sampai 20 A dan mampu menahan tegangan balik sampai
100V. Hal ini disebabkan oleh karena FET ini mampu menyerap tegangan spike
tanpa perlindungan dioda. Tetapi komponen ini memerlukan heat sink yang
besar dan harus cukup baik dalam hal penyerapan panasnya. Ada baiknya jika
digunakan kapasitor untuk menekan level tegangan spike yang ditimbulkan dari
transisi saklar dari on ke off pada rangkaian driver motor stepper.
Pemrograman Motor Stepper dengan
Menggunakan Bahasa Pemrograman C
Flowchart sistem untuk proses menggerakkan motor stepper kiri-kanan
#include <mega8535.h>
void tunda (unsigned char i);
void putar_kiri (void);
void putar_kanan (void);
unsigned char w_tunda;
void main (void)
{
char arah = 0;
//inisialisasi port A
PORTA = 0xFF;
DDRA = 0x00;
//inisialisasi port B
PORTB = 0x00;
DDRB = 0x00;
//inisialisasi port C
PORTC = 0x00;
DDRC = 0x0F;
//inisialisasi port D
PORTD = 0x00;
DDRD = 0x00;
//inisialisasi timer counter 0
TCCR0 = 0x00;
TCNT0 = 0x00;
OCR0 = 0x00;
//inisialisasi timer counter 1
TCCR1A = 0x00;
TCCR1B = 0x00;
TCNT1H = 0x00;
TCNT1L = 0x00;
OCR1AH = 0x00;
OCR1AL = 0x00;
OCR1BH = 0x00;
OCR1BL = 0x00;
//inisialisasi timer counter 2
ASSR = 0x00;
TCCR2 = 0x00;
TCNT2 = 0x00;
OCR2 = 0x00;
//inisialisasi interupsi eksternal
MCUCR = 0x00;
MCUCSR = 0x00;
//inisialisasi Interupsi Timer/Counter
TIMSK = 0x00;
//inisialisasi pembanding analog
ACSR = 0x80;
SFIOR = 0x00;
w_tunda = 10;
while (1)
{
if (PINA.0 == 0) {arah = 1;};
if (PINA.1 == 0) {arah = 2;};
switch (arah)
{
case 1:
putar_kiri();
break;
case 2:
putar_kanan();
break;
}
}
//prosedur putar kiri
void putar_kiri (void)
{
PORTC = 0x01;
tunda (w_tunda);
PORTC = 0x02;
tunda (w_tunda);
PORTC = 0x04;
tunda (w_tunda);
PORTC = 0x08;
tunda (w_tunda);
}
//prosedur putar kanan
void putar_kanan (void)
{
PORTC = 0x08;
tunda (w_tunda);
PORTC = 0x04;
tunda (w_tunda);
PORTC = 0x02;
tunda (w_tunda);
PORTC = 0x01;
tunda (w_tunda);
}
//prosedur tunda
void tunda (unsigned char k)
{
unsigned char j, i;
j = 0;
while (j < k)
{
j = j + 1;
i = 5;
while (i--)
{
#asm
nop
nop
#endasm
};
};
}
}
- Eksperimen Robot Micromouse Menggunakan Penggerak Stepper Motor
Robot Micromouse adalah robot cerdas yang dapat bergerak bebas di dalam
sebuah
labirin(maze) tanpa menyentuh objek sekitarnya, robot mengetahui ke arah mana
harus bergerak, berapa derajat harus berputar jika menemui jalan buntu pada
area labirin. Robot Micromouseini termasuk ke dalam jenis Robot
Mobileyaitu Autonomous Mobile Robot. Autonomous.Mobile Robot adalah pengendalian gerakan dari
robot yang berdasarkan program kemudi yang diberikan sehingga seolah -olah
robot tersebut bergerak sendiri. Robot ini dibangun atau dibuat dengan
menggunakan mikrokontroler ATMEGA 128 sebagai pengendali, tiga buah sensor
inframerah GP2D12 buatan SHARP untuk mendeteksi adanya tembok atau tidak adanya
tembok, dua buah drivermotor yaitu SPC Stepper Motordan dua buah stepper motoryang
sumber tegangannyaberasal dari satu buah baterai Lithium Polymer. Robot
Micromouse memiliki dua
mode yaitu mode eksplorasi dan mode hafalan. Mode eksplorasi robot akan melalui
semua jalan yang ada pada labirin sedangkan mode hafalan robot akan bergerak
sesuai dengan data yang tersimpan pada Electrically Erasable Programmable
Read-Only Memory(EEPROM) mikrokontroler yang diperoleh dari mode eksplorasi.
Robot ini menggunakan algoritma Depth-First Search untuk mencari jalan keluar dalam suatu labirin. Bahasa
pemograman yang digunakan adalah bahasa C. Hasil pengujian, menunjukkan bahwa
robot dapat menemui jalan keluarnya sendiri dengan beragam konfigurasi labirin,
dengan asumsi titik mulai dan titik akhir tetap. (Syafidtri, 2010).
E. INTERFACING ADC
DAN DAC
1. Interfacing Analog to Digital Converter (ADC)
ADC adalah
kepanjangan dari Analog To Digital Converter yang berfungsi
untuk mengubah input analog menjadi kode – kode digital. ADC banyak
digunakan sebagai Pengatur proses industri, komunikasi digitaldan
rangkaian pengukuran/atau pengujian.Umumnya ADC digunakan sebagai perantara
antara sensor yang kebanyakan analog dengan sistim komputer seperti
sensor suhu, cahaya, tekanan atau berat, aliran dan sebagainya kemudian diukur
dengan menggunakan sistim digital (komputer).
Secara singkat prinsip
kerja dari konverter A/D adalah semua bit-bit diset kemudian diuji, dan
bilamana perlu sesuai dengan kondisi yang telah ditentukan. Dengan rangkaian
yang paling cepat, konversi akan diselesaikan sesudah 8 clock, dan keluaran D/A
merupakan nilai analog yang ekivalen dengan nilai regiser SAR.
Apabila konversi telah dilaksanakan, rangkaian
kembali mengirim sinyal selesai konversi yang berlogika rendah. Sisi turun
sinyal ini akan menghasilkan data digital yang ekivalen ke
dalam register buffer. Dengan demikian,
keluaran digital akan tetap tersimpan sekalipun akan di mulai siklus
konversi yang baru.
Blok diagram ADC
Jenis-jenis
dari ADC dan fungsi dari masing-masing jenisnya
Tipe Tracking Tipe
tracking menggunakan prinsip up down counter (pencacah naik dan turun).
Fungsinya adalah : Binary counter (pencacah biner)
akan mendapat masukan clock secara kontinyu dan hitungan akan
bertambah atau berkurang tergantung pada kontrol dari pencacah apakah sedang
naik (up counter) atau sedang turun (down counter).
Tipe flash / paralel Tipe ini
dapat menunjukkan konversi secara lengkap pada kecepatan 100 MHz dengan
rangkaian kerja yang sederhana. Berfungsi untuk mengatur masukan inverting dari
tiap-tiap konverter menuju tegangan yang lebih tinggi dari konverter
sebelumnya, jadi untuk tegangan masukan Vin, dengan full scale range,
komparator dengan bias dibawah Vin akan mempunyai keluaran rendah.
Tipe
successive approximation Tipe successive
approximation merupakan suatu konverter yang paling sering ditemui dalam desain
perangkat keras yang menggunakan ADC. Tipe ini memiliki kecepatan konversi yang
cukup tinggi, meskipun dari segi harga relatif mahal. Prinsip kerja konverter
tipe ini adalah, dengan membangkitkan pertanyaan-pertanyaan yang pada intinya
berupa tebakan nilai digital terhadap nilai tegangan analog yang
dikonversikan.
Tipe Integrating,
menawarkan resolusi tertinggi dengan biaya terendah. ADC tipe ini tidak
dibutuhkan rangkaian sample hold. Tipe ini memiliki kelemahan yaitu waktu
konversi yang agak lama, biasanya beberapa milidetik.
contoh Fungsi dari ADC adalah untuk mengubah data analog menjadi
data digital yang diaplikasiakn pada komponen digital misalkan pada
mikrokontroller AT89S51. Inputan dari ADC ini ada 2 yaitu input positif (+) dan
input negatif (-). ADC 0804 ini terdiri dari 8 bit microprocessor Analog to
Digital Converter.
V (+) dan V (-) adalah inputan tegangan
analog differensial sehingga data tegangan yang akan diproses oleh ADC adalah
selisih antara Vi (+) dan Vi (-). Vref adalah tegangan referensi ADC yang
digunakan untuk mengatur tegangan input pada Vi+ dan Vi-. Besarnya tegangan
referensi ini adalah setengah dari tegangan input maksimal. Hal ini bertujuan
agar pada saat inputan maksimal data digital juga akan maksimal. Frekuensi
clock dari ADC dapat diatur dengan komponen R dan C eksternal pada pin Rclk dan
Cclk dengan ketentuan :
Fclk = 1 / (1,1 RC)
Chip select fungsinya untuk mengaktifkan ADC
yang diaktifkan dengan logika low. Read adalah inputan yang digunakan untuk
membaca data digital hasil konversi yang aktif pada kondisi logika low. Write
berfungsi untuk melakukan start konversi ADC diaktifkan pada kondisi logika low.
Instruksi berfungsi untuk mendeteksi apakah konversi telah selesai atau tidak,
jika sudah selesai maka pin instruksi akan mengeluarkan logika low. Data
outputan digital sebanyak 8 byte (DB0-DB7) biner 0000 0000 sampai dengan 1111
1111, sehingga kemungkinan angka decimal yang akan muncul adalah 0 sampai 255
dapat diambil pada pin D0 sampai D7. DB0-DB7 mempunyai sifat latching.
Gambar
: Konfigurasi Pin ADC 0804
Deskripsi Fungsi Pin ADC 0804 :
- WR, pulsa transisi high to low pada input input write maka ADC akan melakukan konversi data, tegangan analog menjadi data digital. Kode 8 bit data akan ditransfer ke output lacht flip – flop.
- INT, bila konversi data analog menjadi digital telah selesai maka pin INT akan mengeluarkan pulsa transisi high to low. Perangkat ADC dapat diopersikan dalam mode free running dengan menghubungkan pin INT ke input WR.
- CS, agar ADC dapat aktif , melakukan konversi data maka input chip select harus diberi logika low. Data output akan berada pada kondisi three state apabila CS mendapat logika high.
- RD, agar data ADC data dapat dibaca oleh sistem mikroprosessor maka pin RD harus diberi logika low.
- Tegangan analog input deferensial, input Vin (+) dan Vin (-) merupakan input tegangan deferensial yang akan mengambil nilai selisih dari kedua input. Dengan memanfaatkaninput Vin maka dapat dilakukan offset tegangan nol pada ADC.
- Vref, tegangan referensi dapat diatur sesuai dengan input tegangn pada Vin (+) dan Vin (-), Vref = Vin / 2.
Vresolusi = Vin max / 255.
- CLOCK, clock untuk ADC dapat diturunkan pada clock CPU atau RC eksternaldapat ditambahkan untuk memberikan generator clock dari dalam CLK In menggunakan schmitt triger
Resolusi
dari converter menandakan nilai angka diskret yang menghasilkan range
nilai analog, biasanya ditulis dalam biner dalam bit-bit. Contoh ADC
dengan resolusi 8 bit dapat mengenkode masukan analog ke 256 (28=256),
yang merepresentasikan range dari 0 sampai 255 (unsigned integer) atau
dari -128 ke 127 (signed integer) tergantung pada aplikasi.Resolusi juga dapat
didefinisikan secara elektris dan diekspresikan dalam volt. Resolusi tegangan
ADC sama dengan range pengukuran tegangan dibagi dengan jumlah interval
diskret, sebagaimana ditunjukkan berikut;
Dimana Q merupakan resolusi dalam volt per
step (volt per kode keluaran), EFSR merupakan skala penuh range
tegangan = VRefHi – VrefLow, M merupakan resolusi
ADC dalam bit dan N merupakan jumlah interval yang diberikan oleh kode keluaran
dimana N=2M.
Pada prakteknya, resolusi
dari converter dibatasi oleh signal-to-noise ratio terbaik yang dapat
dicapai untuk digitized signal. ADC dapat menghasilkan sinyal dengan resolusi
bit angka tertentu yang disebut “effective number of bits” (ENOB). Satu
resolusi bit saja dapat merubah signal-to-noise ratio dari digitized
signal oleh 6dB, jika resolusi dibatasi oleh ADC. Jika preamplifier digunakan
pada konversi A/D makaamplifier akan berkontribusi pada hasil SNR
(Signal-to-Noise Ratio).
2. Interfacing Digital to Analog Converter (DAC)
DAC (Digital to Analog Converter)
adalah perangkat untuk mengkonversikan sinyal masukan dalam bentuk
digital menjadi sinyal keluaran dalam bentuk analog (tegangan, arus, muatan
electrik).Tegangan keluaran yang dihasilkan DAC sebanding dengan nilai digital
yang masuk ke dalam DAC.Sinyal mudah di simpan dan di transmisikan dalam bentuk
digital, tapi DAC diperlukkan untu sinyal utuk diakui oleh indera manusia atau
non-sistem digital.
contohnya pada DAC0808, sebuah digital to analog
converter 8-bit monolothic yang mempunyai
waktu settling sekitar 150 ns. Tidak
diperlukan setting arus referensi (IREF)dalam berbagai
penerapan. Pada pengaturan skala penuh arus output yang dikeluarakan
umumnya 255 (IREF/256). Arus power supply dari DAC0808
tidak bergantung pada kode bit dan akan menunjukkan karakteristik DAC yang
tetap konstan pada keseluruhan jangkauan tegangan. DAC0808 mempunyai jangkauan
tegangan power supply: ±4,5V sampai ±18V dengan konsumsi daya
berkisar 33 mW pada tegangan ±5V. Untuk penggunaan interface ADC0808
dapat dihubungkan langsung ke level logika CMOS, TTL dan DTL.
Gambar
: Konfigutasi Pin DAC0808
- A1-A8, input digital 8 bit, data inputan yang akan dikonversikan ke besaran tegangan analog.
- VREF(-), VREF(+) input tegangan referensi yang digunakan untuk mengatur levelouput tegangan analog.
- Compensation, pin compensation dihubungkan dengan menggunakan capasitor ke VEE atau ground untuk mempertahankan batas fase yang bersesuaian.
Gambar
: Koneksi rangkaian DAC dan konverter arus ke tegangan
Pengubahan besaran analog ke digital
ditentukan oleh besar tegangan input maksimum yang diukur dalam Volt, mVolt
atau uVolt, sedang nilai konversi digitalnya juga bebas ditentukan hal ini
tergantung berapa bita yang digunakan untuk mengkonversinya. Begitu pula untuk
pengubah digital ke analog juga sama dan hasil konversi tergantung pula pada
besar tegangan referensinya.
Bila
kita gunakan tegangan tertinggi untuk konversi 15 volt maka setiap kenaikan
nilai konversi adalah 1 volt jadi bila nilai digital 0100 hasil konversinya
adalah 4x1volt = 4 volt. Seandainya nilai tertinggi dibuat 4,5 volt maka setiap
kenaikan adalah 0,3 volt sehingga bila nilai digital 0100 hasil konversinya
adalah 4×0,3volt = 1,2 volt.
Gambar : Pengubah digital ke analog (DAC) 4 bit
Dari penjelasan diatas dapat ditentukan
jumlah harga tegangan atau aplitudo sebagai hasil konversi adalah tergantung
pada jumlah bit digital yang dikonversikan, dan besar kecilnya harga analog
hasil konversi juga ditentukan oleh besar kecilnya tegangan referensi.
Makin banyak jumlah bit yang digunakan untuk
konversi maka akan semakin banyak jumlah harga amplitudo yang di dapat, dan
dengan semakin banyaknya jumlah tersebut akan menyebabkan tingkat kehalusan
konversi semakin tinggi. Sebagai contoh untuk konversi tegangan analog 10 volt
dengan menggunakan jumlah bit 10, maka akan didapatkan jumlah harga amplitudo
1024 dengan demikian akan diperoleh perbedaan setiap tingkat konversi adalah
10volt dibagi (1024-1) yaitu sama dengan 9,77 milivolt dan bila digunakan 8 bit
maka perbedaan setiap tingkat konversi adalah 39,21 milivolt.
BAB III
PENUTUP
PENUTUP
A. KESIMPULAN
1. Interfacing adalah bagian dari
disiplin ilmu komputer yang mempelajari yang mempelajari teknik-teknik
menghubungkankomputer dengan perangkat alat elektronika lain.
2. Motor stepper atau stepper
motor adalah
perangkat elektromekanis yang bekerja dengan mengubah pulsa elektronis menjadi
gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan pulsa yang
diberikan kepada motor. Karena itu, untuk menggerakkannya diperlukan pengendali
motor stepper yang membangkitkan pulsa-pulsa periodik.
3. Prinsip kerja stepper
motor sama dengan DC motor, yaitu pembangkitan medan magnet untuk memperoleh
gaya tarik ataupun gaya lawan dengan menggunakan catu tegangan DC pada
lilitan/kumparannya.
B. SARAN
Dengan adanya Makalah
ini penulis mengharapkan isi makalah dapat di pelajari dan di aplikasikan,
serta Penulis mengharapkan dapat di beri saran dalam penulisan makalah karena
masih banyak kekurangan dan kesalahan yang terdapat di dalam makalah ini.
DAFTAR PUSTAKA
Heryanto, M. Ary, dkk, ”Pemrograman Bahasa C untuk Mikrokontroler ATMEGA8535”, 2008, Yogyakarta, CV.
Andi Offset. Moh. Ibnu Malik & Anistardi, ”Bereksperimen dengan
Mikrokontroller 8031”, 1999, PT Elex Media Komputindo.
Nalwan, PA 2003, “Teknik Antar Muka dan Pemograman Mikrokontroller
AT89C51”, PT. Elex Media Komputindo, Jakarta.
Schuler, CA & McName, WL 1993, ”Modern Industrial Electronics”, McGraw
Hill,
New York
Tidak ada komentar:
Posting Komentar