Jumat, 04 Juli 2008

Wa UpdatezZzz.. 9 April 2009 Coblos Oiiii...

Blog yang wa buat lg neh...
tentang buat robot..

Let's Make Robot

lebih sistematis dan menarik...

Enjoy it..

Sabtu, 24 Mei 2008

Sensor LDR

Mobil robot penjejak garis ato Line Tracing mengikuti garis hitam yang berlatar lantai putih.
Biar g keluar garis digunakan sensor yang bisa membedakan warna hitam dan warna putih, ato lebih tepatnya membedakan intensitas cahaya saat lantai berwarna hitam dengan lantai berwarna putih.

Umumnya si pake Sensor LDR, yaitu berupa resistor yang peka terhadap cahaya, jadi nilai resistansi pada resistor tersebut berubah berdasarkan intensitas cahaya yang diterima. Saat gelap tahanannya mencapai satuan Mega Ohm sedangkan saat terang tahanannya hingga puluhan Ohm (g kebalik kan ?). Nah dari sifat ini bisa di gunakan 2 prinsip kerja yg intinya pembandingan nilai tegangan pada resistor yaitu menggunakan komparator dan menggunakan ADC. Komparator jauh lebih mudah di banding dengan ADC tapi ADC lebih canggih daripada komparator (ah masa...).

* Komparator / Pembanding tegangan.
Dari namanya ud tau fungsinya gimana yaitu membandingkan tegangan. Biasanya membutuhkan komponen tambahan yaitu OpAmp, nah OpAmp ini yg nantinya sebagai pembanding nya yaitu membandingkan tegangan antara masukan inverting (-) dgn masukan noninverting (+). Jika input tegangan pada + lebih besar dari input tegangan - maka output OpAmp akan mendekati sumber tegangan VCC (tegangan +) yang diberikan pada OpAmp tersebut sedangkan jika input tegangan pada + lebih kecil dari input tegangan - maka output OpAmp akan mendekati sumber tegangan VSS (tegangan -) yang diberikan pada OpAmp tersebut.

Misal : Supply OpAmp + 5 Vdc dan - 5 Vdc, jika input + lebih besar dari input - maka outputnya +5Vdc sedangkan jika input - lebih besar dari input + maka outputnya -5Vdc.
Jika mo diubah menjadi level TTL (Logic 1 = 5Vdc n Logic 0 = 0Vdc) supply + OpAmp +5Vdc dan supply - OpAmp 0 Vdc.

Gambar nya ada 2, tinggal pilih yg mau waktu kena cahaya dari penerima output lampu LED-nya nyala atau waktu kena cahaya dari penerima output lampu LED-nya mati. Variabel resistor biasanya 10KOhm untuk mengatur sensitifitas sensor.
Untuk aplikasi Line Tracing biar bagus geraknya gunakan Array LDR sensor, misalnya ada 8 buah sensor LDR jadi rangkaian itu diCopy Paste 8 kali. Wa saranin setiap rangkaian komparator OpAmp terdapat VR 10K nya meskipun tar seting sensitifitasnya mesti satu-satu tapi lebih pasti, jika 1 VR 10K trus di share untuk ke-8 OpAmp kemungkinan karakteristik n sensitifitas tiap sensor berbeda shg mempengaruhi pergerakan robotnya tar.

* ADC
Klo dgn ADC rangkaiannya jadi lebih sederhana amat. Di pemancarnya berupa resistor pembatas arus n LED yang terang trus di penerimanya berupa 1 resistor 10 KOhm (ato yg lain) seri dengan LDR nya.
Biar g pake IC ADC, gunakan aja Mikrokontroller AVR yg ud ada ADC-nya spt AVR ATmega8535 dan kawan-kawannya. Karena rangkaiannya sederhana biasanya berimbas pada programnya yg jadi lebih ruuuuwuueeet. Tapi mending software yg di utak atik di banding Hardwarenya.
Di programnya nanti nilai threshold -nya (bener g tulisannya) aja yg di ubah-ubah berdasarkan pembacaan ADC-nya. Pada AVR ud ad 8 buah ADC jadi bisa digunakan 8 buah LDR array.
Menurut yg wa baca, dengar, lihat, n raba (wew apaan..??) dgn menggunakan threshold pada sensor LDR, kepekaan sensornya bisa dgn presisi (asal LDR nya bagus) di banding dengan memutar VR. Trus katanya ne, klo di aplikasikan pada line tracing bisa lebih mantabbb..

Cara mengujinya begini :
* Di lantai buat transisi warna dari Putih terang hingga Gelap pekat. (Putih..Agak putih..abu-abu..Agak gelap..Gelap..) semakin byk semakin baik.
* Hubungkan AVR dgn komputer secara serial, lebih baik daripada menggunakan LCD karakter karena perubahan pada LCD tidak begitu kelihatan. kalo perlu buat program sendiri dgn DELPHI, VB, VC, ato yg lain untuk membuat database-nya.
* Jalanin robotnya di lantai tersebut secara perlahan n jaga agar jarak sensor dgn lantai selalu konstan.
* Lihat perubahan datanya di komputer, klo pake program sendiri yg di buat catat data ke berapa posisi robot telah berada (Biar g salah).
* Naaahhh dari database tersebut tar bisa di buat batasan-batasan yg seolah-olah FUZZY, misal
- threshold 0 - 200 Gelap bgt.
- threshold 200 - 300 Gelap.
- threshold 300- 400 Agak Gelap.
- dst.

Enakan yg mana yaa....

Senin, 05 Mei 2008

Sensor Encoder

Bagaimana cara mengetahui kecepatan pergerakan Robot, posisi Robot dari posisi sebelumnya, menggambarkan pergerakan Robot pd komputer, atau mengatur agar Robot brada pd posisi tertentu. Salah satu jawabannya yaitu dengan sensor Encoder, cara lain menggunakan sensor kompas ato menggnkn prinsip kerja GPS.

Salah satu jenis Encoder yaitu berupa sensor inframerah yg terdiri dr pemancar n penerima dlm 1 kemasan, bentuknya biasanya U (liat aj gambarnya). Ada encoder jenis lain yg bisa mengetahui sudut perputaran tp wa g tau jelasnya.

Prinsip kerjanya :
1. pemancar, memancarkan cahaya inframerah pada penerima.
2. Jika cahaya pemancar diterima oleh penerima maka dianggap logika 1 (tergantung rangkaian)
3. Jika cahaya pemancar tidak diterima oleh penerima maka dianggap logika 0.

Untuk mencegah kesalahan pembacaan data sensor encoder, sebaiknya pd program tidak mendeteksi pembacaan logika 1 saja ato logika 0 saja. Jika program mendeteksi logika 0/1 saja maka saat Motor yg terpasang encoder OFF shg posisi encoder selalu 0/1 maka terjadi kesalahan penbacaaan data.
Sebaiknya pd program mendeteksi perubahan dari 1 ke 0 (NGT) ato dari 0 ke 1 (PGT). Klo mikro AVR sudah ada fungsinya di interupsi shg mudah n kesalahan bisa diminimalkan klo d MCS51, hmmm... tau deh.

Tar klo ad kurangnya wa tambahin de..

Sabtu, 03 Mei 2008

Sensor UltraViolet

Sensor mahal neeehhh
Sebanding dgn biaya hidup wa 1 bulan jd beli sensor ini trus gembel sbulan de.

Sensor UVtron yg biasa d pke buatan Hamamatsu (kmarin dah kenalan tp g diskon jg, ckckck..)
Nih datanya.... katanya bisa deteksi nyala rokok dr jarak kira" 5 meter (woOow). Oiya tabungnya jgn di sentuh dgn tangan secara lgs, bisa rusak tuh jd g sensi dia (udah korban 1 tabung.. Hiks...3).

Cara akses UVtron berbeda" tergantung programmernya tp klo mo liat fungsi UVtron, kira" kyak gini :
- Hubungkan VCC - LED - Open kolektor (pin3) pd UVtron (datasheet drivernya).
- Hubungkan VCC (+5 V) power supply pd kaki output IC 78L05 (kemasan TO-92) jika power supply lebih dr 5 V hubungkan ke kaki inputnya (pin +).
- Nyalakan korek api atau lilin n perhatikan LED-nya saat ad lilin dgn tidak ada. Saat tidak ada LED akan mati saat ada lilin LED akan berkedip".
- Dekatkan lilin hingga jarak dekat., perhatikan kedipan LED.

Mkn ad salah wa nulisnya koreksi ya ato mkn ada cara lain buat ngecek UVtron...?

Sensor Ultrasonik

Sensor Ultrasonik bukan buatan Ultraman loo...

Sensor Ultrasonik menggunakan sinyal suara dgn frekuensi kira-kira 40KHz menggunakan prinsip kerja "mata" kelelawar. Di robot KRCI banyak yg gunakan sensor ini ad yg ampe keliling robotnya.
Fungsi nya byk juga spt: ngukur jarak, tinggi, mendeteksi ada/tidak objek, Counter, bahkan klo ultrasoniknya bagus bisa mendeteksi buah matang n tidak matang (spt kelelawar), dll.
Yg intinya klo sinyal suara yg dipancarkan menambrak sesuatu yg menyebabkan suara tersebut terpantul dan terdeteksi penerima maka ada sesuatu pada jarak tertentu.

Klo buat lomba biasanya pd males bikin mending beli jadi (pdhl harganya lebih mahal dibanding buat sendiri, kan klo bisa buat trus di jual enak kan). Sensor yg sering dignkn namanya PING buatan Paralax. Mengaksesnya jg g susah si makanya byk yg beli. (gmana mo maju klo beli terus...Zzzzzz).

Wa ad rangkaiannya neh cobain aj mkn bisa.... (lum wa coba).

Mkn ada rangkaian ygn menggnkn LM567 sebagai filter 40KHznya..

Ad yg punya g?..... bagi naaaaa.

Jumat, 02 Mei 2008

Power Supply

Power supply buat robot biasanya minimal 2 buah, yaitu buat rangkaian elektronikanya n buat motor DC sebagai peggerak robot, klo g 2 g tau deh gmana.

ni gambar rangkaian power supply yg biasa wa pake.

wa dapet jg tuh dr internet jd teori n analisisnya kurang tau deh.
Klo mo arus besar, tambahin aja transistor daya spt tipe transistor NPN 2N3055.

Agak aneh g tuh rangkaiannya...??? kasi tau ya.....

Kamis, 01 Mei 2008

Sensor Garis IR

Pasti pada tau ttg GALELOBOT yg d adain ITB.
Tuh lomba robot penjejak garis hitam.
Wa liat VIDEO-nya seru jg ampe ada yg bablas robotnya...wkwkwkwkwkw lucu".

Sensor garis yg wa ketahui ad 2 :
- LDR yaitu sensor variabel resistor yg peka dgn intensitas cahaya.
- Inframerah, sensor dengan pancaran sinar inframerah (g tau jelasinnya wa).

Kelemahan LDR, klo ada cahaya yg datang dr luar (cahaya blitz, lampu, senter) n lebih terang dari kondisi sebelumnya dapat mempengaruhi funsi sensor. Jd pas lomba ada fotografer trus robotnya kacau, kalah, nangis, suram, matiin aj tuh orang.

Inframerah hanya peka terhadap cahaya inframerah, biar cahaya terang n ada fotografer masang blitz d sluruh jaketnya tetep g ngefek. Tp jika ada cahaya matahari dari luar dpt mempengaruhi fungsi sensor (kan ad inframerahnya). Itu sebabnya klo nyoba robot dgn sensor inframerah malam hari n siang hari berbeda. Cara mengatasinya dgn inframerah menggunakan frekuensi biasanya 38KHz - 40KHz jd recievernya ad filternya jg. Robot penjejak garis biar bagus gnkan array inframerah yaitu inframerahnya byk n bejejer (konfigurasinya terserah si).
Ni gambarnya :

...........tar ya lg wa siapin, sabaaaarr...........

Terdapat 8 buah sensor IR dgn konfigurasi 4 kiri (ABCD) n 4 kanan (PQRS) dilihat dr sensor (robot dibalik).
> Sensor A / P = robot d tengah / pas garis (Robot ngebuuuut = 100%).
> Sensor B = robot agak ke kiri (Roda kanan =90% Roda kiri=100%)
> Sensor C = robot ke kiri (Roda kanan =80% Roda kiri=100%)
> Sensor B = robot ke kiri Jauh (Roda kanan =50% Roda kiri=100%)
sama jg utk QRS. (nilai %-nya coba" aj krn karakteristik tiap motor berbeda meskipun sejenis).

Yg jelas mkn ada konfigurasi yg lebih ajiiibbb...
Cobain aj n cari tahu.... (klo dah tau kasi tau wa ya... he...3).

Bahasa C CodeVisionAVR

Pada uda ad softwarenya lom?
versi brapa n lisensinya apa standar ato porfesional ( asli kagak ;) )
Utk memprogram AVR ATmega8535 wa gunakan CodeVisionAVR. Tampilannya spt ini :

versi evaluasinya byk di internet, nih linknya http://www.hpinfotech.ro/cvavre.zip
Contoh programnya menggunakan AVR ATmega128 mengakses LCD dengan USART0 dan USART1 dgn library stdio.h.
http://www.hpinfotech.ro/2usart_lcd.zip

/*****************************************************
CodeVisionAVR C Compiler
© Copyright 2000-2006 HP InfoTech S.R.L.
www.hpinfotech.com
Chip type : ATmega8535
AVR Clock frequency : 4 MHz

Struktur dasar Bahasa C AVR
By: PayZ
www.RoboticFobia.blogspot.com
*****************************************************/
#include (mega8535.h) // kurungnya ganti jd <>
#include (delay.h) // kurungnya ganti jd <>

unsigned int LED=0;
// global variabel
void main(void)
{ // inisialisasi
//....................... -->> Gunakan CodeWizzard AVR tar ada sendiri
DDDRB=0xff; // portb sebagai output
PORTB=0x00; // nilai awal portB 0x00 (off)
while (1)
{ //..........................program utama di sini.
PORTB=LED; // PORTB bernilai LED
delay_ms(200); // tunda 200 milisecond
if (LED==255) LED=0;
LED=++;
}
}

program di atas akan menampilkan led yang di hubungkan pada portB, LEDnya common Katoda jd mungkin nyalanya agak redup. klo mo terang gunakan common Anoda listingnya begini:

#include (mega8535.h) // kurungnya ganti jd <>
#include (delay.h) // kurungnya ganti jd <>

unsigned int LED=255;
void main(void)
{ DDDRB=0xff; // portb sebagai output
PORTB=0x00; // nilai awal portB 0x00 (off)
while (1)
{ PORTB=LED; // PORTB bernilai LED
delay_ms(200); // tunda 200 milisecond
if (LED==0) LED=255;
LED=--;
}
}

Masih byk kurang neh tar d tambahin. kasi masukan dunk..

Assembler MCS51

Denger (eh baca) kata Assembler lgs kebayang bahasa mesin, sulit, ribet, panjang, n capee deeee.....
Menurut anda gmana? Sama..?
Klo wa, slama g aritmetika n g pake metode aneh" si g masalah.

wa pake AT89S51 jd assemblernya yg MCS51 aj ya. Untuk Robot yg kmaren (Robot nyentuh dinding trus balik ato belok). Cukup beberapa perintah saja yg di gunakan n beberapa register aj klo mo blajar plajari bukunya, byk kok. (jgn fotokopi bukunya ya, kasian. jadi inget masa kuliah --> mang ud lulus....?)

Instruksi set-nya ini neh.......... dan ini jg...............

Listingnya begini :
;-----------------------------------------------------------------
;Listing Robot Pendeteksi dinding bY : PayZ
; www.RoboticFobia.Blogspot.com
;-----------------------------------------------------------------
;PORT2 driver motor DC
;PORT0.0 Limit switch kiri
;PORT0.1 Limit switch kanan

$MOD51

ORG 00H
;inisialisasi awal
BEGIN: MOV P2,#00H ;Port2 0x00 (motor stop)
MOV P0,#03H ;Port0.0 dan Port0.1 logika 1 (rendah aktif)
;bisa juga MOV P0,#00000011B (dalam biner)
ACALL TUNDA_1S ;tunda dulu

TESTDRIVE: ACALL MAJU ;robot maju 3 detik
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL MUNDUR ;robot mundur 3 detik
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL B_KANAN ;robot belok kanan 3 detik
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL B_KIRI ;robot belok kiri 3 detik
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL ROTASI ;robot rotasi 3 detik
ACALL TUNDA_1S
ACALL TUNDA_1S
ACALL TUNDA_1S
MOV P2,#00H ;test drive selesai
ACALL TUNDA_1S ;diam 1 detik (siap" neh)

MAIN: ACALL MAJU ;default robot maju
ACALL TUNDA ;tunda 100ms
JNB P0.0,S_KIRI ;cek sensor kiri
JNB P0.1,S_KANAN ;cek sensor kanan
SJMP MAIN ;looping terus menerus

S_KIRI: JNB P0.1,S_DUA ;cek dlu kanan jg tersentuh atau tdk?
ACALL B_KANAN ;sensor kiri tersentuh belok kanan
ACALL TUNDA_1S
SJMP MAIN

S_KANAN: ACALL B_KIRI ;sensor kanan tersentuh belok kiri
ACALL TUNDA_1S
SJMP MAIN

S_DUA: ACALL MUNDUR ;sensor kiri n kanan tersentuh robot mundur
ACALL TUNDA_1S
ACALL ROTASI ;setelah mundur robot rotasi
ACALL TUNDA_1S
ACALL TUNDA_1S
SJMP MAIN ;ke program utama

MAJU: MOV P2,#00110011 ;konfigurainya coba" aja
RET
MUNDUR: MOV P2,#11110000
RET
B_KANAN: MOV P2,#10110001
RET
B_KIRI: MOV P2,#01110010
RET

;-----------------------------------
; TUNDA
;-----------------------------------
TUNDA_1S: ACALL TUNDA_05S ; tunda selama 1 S
ACALL TUNDA_05S
RET

TUNDA_05S: MOV A,#100 ; tunda selama 0,5 S
TUNDA_LOOP: LCALL TUNDA_MODE
DJNZ ACC,TUNDA_LOOP
RET

TUNDA: MOV A,#20 ; tunda selama 100 mS
TUNDAX: LCALL TUNDA_MODE
DJNZ ACC,TUNDAX
RET

TUNDA_MODE: PUSH TMOD ; tunda selama 5 mS
MOV TMOD,#21H
MOV TH0,#0EDH
MOV TL0,#0FFH
SETB TR0
TUNDA_5MS: JBC TF0,TUNDA_OK
SJMP TUNDA_5MS
TUNDA_OK: CLR TR0
POP TMOD
RET

END


Biar enak liatnya klik aj gambar ini.....

Mikrokontroler AVR

Ini dia nih mikro yg mulai byk digunakan tp jgn tinggalin MCS51 soalnya chipnya jauh lebih murah n mudah didapetin trus aplikasinya jg masih byk.
G mungkin kan buat aplikasi yg klo dijual sharga 100rb trus pake mikro seharga 50rb, g dapet untung byk donk.

Ada AVR AT90S8515, AT90S8535, ATmega8535, ATmega32, dll. Yg ada meganya punya memori yg gede, fitur yg lengkap n .... pokoknya ma'nyus dah, jd klo mo plajari AVR jgn tanggung-tanggung lgs aja ATmega8535 at0 ATmega32.

Wa jg bru blajar AVR ATmega835 jd baru tau bbrp spt akses LCD, Keypad matriks 4x4, ADC, bbrp Interupsi, USART, n PWM (0,1,2). Ada CodeWizzardnya jd enyak.

Byk kurang neh, tar wa tambahin yaaaa...

Mikrokontroler MCS51

Sudah byk buku ttg mikrokontroler AT89S5x atau AT89C5x jd untuk penjelasan lengkap n terperincinya baca aja bukunya klo disini, beeeeeeeehhh cape deeeee.....

Wa cuma mo share rangkaian SisMin (Sistem Minimum) nya saja, dah di coba n bisa terus kok jd klo ada error cek jalur"nya ad yg konslet kalii..
Ni Schematik n gambar Boardnya. Untuk board jgn lgs d copy trus d sablon krn mkn skalanya berubah jd posisi pinnya bergeser. Buat aj sendiri biar pasti dgn program PCB.











Garis Merah berarti jumper krn wa pake single Layer.
Daftar komponen ada di topik Buat Robot YukZzz.


Ada yg mo Share SisMin mikro yg lain g? Bagii duunk.... =(

Driver Stepper

Wa pengen robot yg bisa nengok kanan 60 drjt, kiri 20 drjt, trus kanan lg 40 drjt, tru kiri lg 90 drjt (0 drjt = lurus kedepan) bikinnya gimana ya...?
Bisa tidak dgn motor DC atau motor Servo Posisi?
Gmana, bisa ga?
Tentu saja bisa, kata mak wa "Nothing is Imposible." (bhs kampung wa)

Pd motor servo posisi biasanya memiliki sudut yang terbatas, meskipun bisa diakali pada sistem mekaniknya, misalnya ditmbhkan kombinasi gear sehingga sudutnya bertambah.
Jika menggunakan motor DC maka :
1. Motor DC-nya g boleh cepet (tar pala robot ilang)
2. Untuk mengetahui posisi sudut tambahkan sensor spt Variabel resistor dgn error 1% (ato kurang), encoder, limit switch array (ad gsih?), atau yg lain, sbg umpan balik.

Pilihan yg mudah dgn menggunakan motor Stepper, baik Full step atau Half step pada stepper unipolar, buat penjelasan yg lengkap (tp bhs inggris).
http://www.sscnet.ucla.edu/geog/gessler/topics/steppers.htm
http://www.cs.uiowa.edu/~jones/step/types.html
http://www.allaboutcircuits.com/vol_2/chpt_1
3/5.html

Neh Versi wa dlm Indnonesia, gambar rangkaian stepper unipolar :
















Beberapa Link :
- http://www.technologicalarts.com/myfiles/data/1679.pdf
- http://home.cogeco.ca/~rpaisley4/Stepper.html

Gambarnya wa dapet dr internet tp sama kok spt yg wa buat wa salah bwa gambar se (hayo gambar apaan ?)

Wa menggunakan IC transistor darlington ULN2803, mkn ada ULN tipe lain tp wa milih ini krn arus output mencapai 500 mA, outputnya 8 buah jd bisa 2 stepper atau 1 stepper dgn arus besar yaitu 1 coil stepper dihubungkan dgn 2 output IC, secara teori arusnya bisa 1 A (500mA + 500mA).

Untuk memprogram motor Stepper wa pake bahasa C CodeVisionAVR biar logikanya mudah dipahami, klo pake Assembler tar bingung liatnya. Beda programmernya beda pula cara berpikirnya tapi intinya programnya sama. Listing driver Motor Stepper tidak menggunakan motor stepper FULL STEP tetapi HALF STEP.

Kelebihan Half Step :
- Sudut pergerakan motor steppernya lebih kecil. misalkan motor stepper memiliki sudut 1,8 derajat, untuk FULL STEP mencapai 1,8 derajat sedangkan HALF STEP bisa mencapai 0,9 derajat.
- Sudut semakin kecil maka gerakan semakin halus.
- Delay atau waktu tunda yang digunakan pada program bisa lebih kecil dibanding FULL STEP.

Kelemahan : programnya jadi agak panjang tapi g masalah kan.

memprogram HALF STEP dan FULL STEP :

> langkah 1 : 0001 > langkah 1 : 0001
> langkah 2 : 0011 > langkah 2 : 0010
> langkah 3 : 0010 > langkah 3 : 0100
> langkah 4 : 0110 > langkah 4 : 1000
> langkah 5 : 0100
> langkah 6 : 1100
> langkah 7 : 1000
> langkah 8 : 1001

Uji Coba:
- Motor stepper yang wa gunakan 5 Vdc 1,3 Ampere, delay minimunnya hingga 4 ms dan gerakkannya halus seperti motor DC. Wa gunakan membuka dan menutup keran air secara otomatis.
( Judulnya : KENDALI TINGGI MUKA AIR DENGAN LOGIKA FUZZY MENGGUNAKAN AVR ATmega8535 )

- Program dengan FULL STEP lalu ubah-ubah delaynya (30 ms -> 5 ms) hingga motor steppernya bergetar tetapi tidak berputar.
- Jika maksain delay paling minimum dari FULL STEP digunakan, suatu saat Step pada motor stepper akan kacau bahkan tidak bergerak.

Ni listing bahasa C-nya dalam image, ketik sendiri klo mo nyontoh n paham (Ciehh..) :












Gambar rangkaian stepper Biipolar dgn IC L293 :

Seperti rangkaian motor DC H Bridge kan ?
Memang sama tapi yg beda cara memprogramnya. Coba liat aj n pelajari di link-link d atas.



Kurang lebih kasi Comment ya........ jd masukan tuh..

Diver Motor DC

Membuat driver motor DC gampang susah-susah (30% bdg 70% = deket ke susah).
Cari diinternet jg banyak kok tinggal cari komponen, buat PCB, uji coba, aplikasikan, jadi deh.

Nih beberapa link Transistor sbg saklar :
1. http://www.rason.org/Projects/transwit/transwit.htm
2. http://www.allaboutcircuits.com/vol_3/chpt_4/2.html
3. http://www.kpsec.freeuk.com/trancirc.htm
byk lg dah.

Biar bisa semua transistor, baca spesifikasinya di datasheet transistor tsb trus buat jadi deh.
Transistor selain driver motor DC utk kendali Roda pd robot jg bisa nyalain kipas atau pompa air seperti yg digunakan pada robot KRCI.

Utk driver motor DC pada roda wa gunakan IC L298 alasannya krn bisa arus tinggi n tegangan ckup tinggi trus PWM dgn frekuensi tinggi , tp harga tinggi jg seeh. Dan robot yg bagus adalah robot dengan kendali PWM bukan On Off.
Rangkaian lengkap Motor DC dengan L298 berikut ini :














Perhatikan konfigurasi PIN-nya, wa gunakan standar konfigurasi pin utk AVR ATmega8535.
Tapi bisa juga menggunakan IC L293, krn L293 berbentuk IC PDIP shg rangkaian jd kelihatan lebih kecil. Untuk L293D terdapat Dioda internal maka tidak perlu dioda eksternal.
Rangkaian lengkap Motor DC dengan L293 berikut ini :












ad kurangnya kasi comment ya tar wa edit...

Buat Robot YukZzz

Buat robot sederhana yuk n mayan murah (haaa... muraaahhh).
Kita buat robot yg cepet jadi n kemungkinan berhasilnya 80% keatas (klo serius bisa 120%, ho oh bener). Robotnya jalan terus jika menyentuh sesuatu akan belok atau mundur dgn sendirinya.

Spek robot:
- Mekanik mobil mainan diferensial.
- Driver H Bridge L298.
- Mikrokontroller AT89S51.
- Power Supply 5 Vdc, 12 Vdc.
- Sensor Limit Switch.

Komponen n spare part :

1. Mekanik
- Beli mainan mobil"an yg tipe kendali diferensial.
ban kanan dan ban kiri ada motor + gerboxnya
Biasanya di mainan traktor ato buldoser bukan RC (Remote Control) yg tipe setir mobil.
Jgn cape d mekaniknya buat awal" beli aj dlu biar cepet jadinya.

2. Driver motor DC H-Bridge (lihat..)
- IC L298 1 buah
- Kapasitor mkm 100nF 1 buah
- Diode tipe 2N4002 8 buah
- header 2 x 5 1 buah
- terminal biru 2 pin 2 buah

3. Rangkaian Mikrokontroller (Lihat..)
- Mikrokontroller AT89S51 1 buah
- Soket IC 40 pin 1 buah
- Resistor array 10Kohm 9 pin 1 buah --> tanda titik ke VCC
- Kristal 12 Mhz /11,0592 Mhz 1 buah --> jgn lupa di-GND-kan
- Kapasitor 33 pF 2 buah
- Kapasitor 10uF/16v 1 buah
- Resistor 10Kohm 1 buah
- DB 9 male bentuk L (nempel PCB) 1 buah
- Header 2x5 4 buah
- Kapasitor mkm 100 nF 1 buah

4. Kabel Downloader maks 1 meter biar g error n perhatikan hubungannya
- DB 25 male 1 buah
- DB 9 female 1 buah
- Kabel dgn isi minimal 5 kabel.
rangkaian kabel downloader ada disoftware Aec_ISP.exe

5. Sensor dinding
- Limit switch (yg bagus) 2 buah
- Kawat kaku, tipis dan kuat 1/2 lingkaran diameter minimal = lebar robot
- Resistor 1 Kohm 2 buah

6. Power Supply (Lihat...)
- Transformer (eh transformator) 2 Ampere 2 buah
- Kapasitor 1000uF/16v 2 buah
- LM7805 1 buah
- LM7812 1 buah
- Kapasitor 470 uF/16v 1 buah
- Kapasitor 100uF/16v 1 buah
- Led merah 1 buah
- Led hijau 1 buah
- resistor 1 Kohm 12 buah.
- Baterai 9 Volt 3 buah (minimal).

7. Software
- Compiler ASM51.exe (yg lain)
- Listing tulis d notepad.exe (yg lain)
- Software Downloader Aec_ISP (yg lain)
Rangkaian kabel downloader ada disoftware Aec_ISP.exe

Listing Program Klik senee

Cara buat, catatan, n Keterangan :
> Sensor yg digunakan hanya limit switch 2 buah dgn posisi di sisi depan kanan dan depan kiri yang dihubungkan oleh kawat tipis kaku. Jika kawat sisi kanan tersentuh dinding maka LS (limit switch) kanan Close shg robot belok kiri, jika kawat sisi kiri tersentuh dinding maka LS kiri Close shg robot belok kanan, dan jika kawat sisi depan tersentuh dinding maka LS kanan dan LS kiri Close shg robot mundur atau memutar. Simpleeeeeeee kan.... ;)

> Mekaniknya bikin yg bagus ya biar tar g usa ganti mekanik, tinggal ganti rangkaian elektroniknya ato tinggal nambahin sensor spt sensor garis, sensor ultrasonik, sensor UVtron, deelel.

> Saat uji coba program sebaiknya gunakan Power Supply dgn kabel yg puaaaanjaaaaaang shg g habis"in baterai n ujung"nya habisin duit. Kalo baterai cas, tar klo abis ng-casnya lama n biasanya mutu n kualitasnya smakin berkurang. Sdngkan AKI kering bisa jg seeeh tp mahal bgt n berat buat robot selain itu ngecasnya lama jd g bisa sering" uji coba.

> Kok trafonya 2 biji (ada bijinya ya ? Ups) ? Heee... jelasinnya bingung wa tp klo satu trafo, saat motor dari kondisi OFF ke ON, motor mengkonsumsi daya yg cukup besar shg daya buat mikro berkurang ato dgn kata lain mikronya OFF sesaat kemudian ON lg. Jadi klo di program awalnya robotnya di program maju, maka robotnya akan MAJU...... STOP........ MAJU........STOP.....terus dah. Oiya groundnya harus di gabung, g gabung g konek tuh.

> Baterai 3 buah 9 Volt jg sama 1 utk mikro 2 utk Motor. INGET : baterai yg di seri harus sejenis g bole beda jenis (ex : alkaline + energizer) trus harus sama" barunya jgn 1 baru 1 bekas.

> Setiap membuat suatu sistem khususnya elektronika, sebaiknya perbagian / modular shg jika ada kerusakan atau masalah, dpt cepat diketahui n cepet perbaikinnya trus klo ad modifikasi lebih lanjut dpt di lakukan dgn fleksibel.

Tulisan diatas dr pengalaman wa aj buat robot shg pengalamin.
Saranku klo mo dpt proses blajar jgn percaya dlu kata wa cobain aj dlu 1 trafo, baterai aneh", pake AKI mobil, trus sensor keliling robot, deelel.
Cobain aj g rugi kok (masa seeehh).

Kasi Comment ya buat tambahan tar.........

Rabu, 30 April 2008

Topik lain Donk ??

Wah binggung neh mo nge-Post apa lg.

Klo ada topik baru yg mo d bahas lg ato ada masukan Comment ke Post ini yah..

misalnya seperti :
PLC menggunakan Mikrokontroler AVR ATmega8535 lebih canggih lagi.
Metode Fuzzy dengan Bahasa C untuk AVR.
Metode PID dengan Bahasa C untuk AVR.
Aplikasi rumah atau mobil cerdas dengan SMS pada Mikrokontroler.
Mengendalikan Robot menggunakan komputer.
Mengakses port paralel dan serial komputer dgn DELPHI (wa bisanya delphi 7 he..3)
truuuuu.....sss apa aja deh yg lainnya.

Ttg Driver Motor

Wah robotku kok g jalan yaa?
Yahh drivernya rusak, Overheat neeeh kanapa ya? (salah satu derita buat robot)

Setiap robot pasti ada motornya n jenisnya aneh", ad Motor DC,stepper bipolar, stepper unipolar, servo, deelel. Robot sederhana seperti penjejak garis cukup menggunakan 2 buah motor DC utk roda kanan dan kiri.
Masalahnya adalah mikro dan rangkaian elektronika lainnya membutuhkan 5 Vdc sedangkan motor DC bisa 5 V, 12 V 18 V, atau 24 V, sehingga dibutuhkan driver yg menyebabkan kendali dengan logika 0-5 V bisa menggerakkan motor yg lebih dari 5 V.

Untuk mengendalikan mobil robot agar dapat bergerak maju mundur ada 2 cara yg wa ketahui :
1 Menggunakan rangkaian H Bridge ( jembatan H). Rangkaian ini umum di gunakan pada robot dengan motor DC, dpt menggunakan Relay, Transistor, IC H Bridge, kombinasi relay+transistor.
2 Menggunakan motor stepper. Jika menggunakan motor stepper maka akan cukup kesulitan di programnya.

Bahas Driver Motor di bagian Driver motor aj ya, Motor DC ato Motor Stepper wa tunggu responnya.

Mikrokontroler MCS51 & AVR

Pake mikro apa ya buat robotku...??

Byk mikrokontroler yg beredar saking banyaknya bisa bingung milih mo pake mikro apa?
Intel MCS-51,Zilog Z80, Atmel AVR, Microchip PIC, Freescale (Motorola) HC08, dan buaaaanyaaak lg jenis lain.

Ada beberapa kriteria saat memilih mikrokontroler (yg wa ketahui lo):
1. Kapasitas memori yg dimiliki (EEPROM, RAM, Flash Memori, dll).
2. Fitur-fitur yang lengkap (ADC, Analog Komparator, Interupsi, PWM, USART, dll).
3. Banyaknya port Input Output.
4. Software pendukung (yg gratisan terutama).
5. Ketersediaan d pasaran.
6. Tutorial dan buku yg tersedia.
7. ......(tau de).

Bahasa yg wa ketahui cuma 2 bahasa assembler untuk MCS51 biasanya wa pke mikro AT89S5x untuk 40 pin, AT89Sx051 untuk 20 pin dan bahasa C pke mikro AVR ATmega8535. itupun masih dasar"nya (Dasaaaaaaaaaaaaaaaaaaaaarrrr banget, hiks").

AVR ATmega8535 sudah sgt mencukupi untuk membuat robot yang (mayan) canggih, ada PWMnya dan mengaksesnya mudah, ADC 10 bit, Analog komparator, byk dah di tambah program CodeVision AVR yg mempermudah pemrograman bahasa C dgn Code wizzardnya.

Asek dah, met blajar n cobain.
Tar wa tambahin di bagian Mikrokontroller di blog ini Baca yah n Kasih masukan.

Lihat ttg Mikrokontroler AT89S5x.
hmmm... AVR ATmega8535 ok tuh..

Selasa, 29 April 2008

Pilih Assembler ato Bahasa C ?

Bahasa pemrograman Wuiiihhhh.....

Program seperti "Qalbu / hati" bagi robot, tanpa program robot seperti mainan biasa.Baik tidaknya fungsi robot saat menjalankan tugasnya tergantung dari program yang diberikan padanya.
"Dalam diri robot terdapat segumpal program, jika baik program tersebut maka baik pula robotnya jika rusak program tersebut rusak pula robotnya, itulah yang di sebut Qalbu (ups)".
Tuh dalam kitab aja ada.... (kitab apaan)

Robot hanya menerima bahasa mesin dalam bentuk bilangan heksadesimal sehingga untuk memprogram robot harus dibisikkan bahasa mesin biar mudeng. Bahasa assembler mendekati bahasa mesin krn dgn mengubah 1 kali, bahasa assembler menjadi bahasa mesin.
Bahasa Assembler setiap mikrokontroller dr perusahaan yang sama bisa berbeda-beda tergantung dari tipe dan jenis mikronya apa lagi beda pabrik, banyak kali la bahasa assemblernya.

C mrpkn bahasa tingkat tinggi dan terstruktur lebih mudah dipahami oleh logika manusia karena bahasanya seperti bahasa sehari" manusia dan juga bahasa C sama di semua negara karena telah jadi standar internasional.

Kelebihan bahasa Assembler :
- Pengaturan register dan memori secara langsung shg programer bisa mengetahui isi register tersebut.
- Penggunaan memori program pada mikrokontroler yang maksimal.
- Manipulasi bit dan byte secara langsung dan mudah.
- (ada lagi?)

Kekurangan bahasa Assembler :
- Kesalahan 1 baris akan mengacaukan program dan sulit untuk mencari kesalahn tsb.
- Operasi aritmetika akan menyulitkan.
- Program puaaanjjaaaaaaang banget liatnya aj mules.
- (ada lagi?)

Kelebihan bahasa C:
- Bahasa mudah dimengerti dan mudah pengoreksian program.
- Memiliki library dan kemudahan membuat library sendiri shg dapat mempersingkat program.
- Operasi aritmatika tidak sulit.
- Dalam bahasa C bisa disisipkan bahasa Assembler.
- (ada lagi?)

Kekurangan bahasa Assembler :
- Penggunaan memori program yang tidak maksimal (ada memori yang tidak digunakan).
- Isi register sulit diketahui kadang data bisa tumpang tindih biasanya pada mikrokontroler yang registernya sedikit atau program yang menggunakan variabel terlalu banyak.
- (ada lagi?)

Pilih mana??
Bahasa C lebih unggul dibanding bahasa Assembler tetapi bahasa assembler tidak kalah penting untuk diketahui. Beberapa aplikasi jauh lebih mudah dan gampang saat menggunakan bahasa assembler dibanding bahasa C, tetapi saat menggunakan metode seperti PID, Fuzzy, JST ato yg lain jgn sekali" pake bahasa Assembler tar bisa lupa bahasa Indonesia lg (anee..h).

Bahas Assembler Dunk...
Bahasa C jg niihh...

Senin, 28 April 2008

PCB dgn Protel, OrCad, Eagle, Altium ?

Bagus mana yaa? bingung neeh. G mungkin kan pelajari semuanya.

Mungkin perlu tau bbrp tp tidak perlu semuanya (Otak si g terbatas tp yg punya otak yg buat batasan).
Klo mo tau bagus mana, yaaa tergantung yg menggunakan tar terbiasa sendiri kok.
Cobain aja buat rangkaian sederhana dgn Program tersebut trus putuskan salah 1 dan fokus.

Tapi bbrp kriteria program : fleksibel, sederhana, friendly, settingan dapat diatur oleh user, library lengkap, n bisa buat library sendiri. (Mkn ada lg ??)

Wa terbiasa n fokus menggunakan EAGLE untuk single n double layer. Tp kalo multilayer pake Altium DXP.

Pake EAGLE menurutku cepet buatnya n kedua tangan bisa kerja bersamaan (nambah kaki bisa kok) .
Oia klo ada Software lain, obrolin y biar tar di cobain, sapa tau keren.

Note :
Untuk print PCB sebaiknya print langsung dari softwarenya jgn print dalam PDF trus ke rental n di print PDFnya, skalanya berubah.
Jd yg g punya print, di flashdisknya copy juga softwarenya n instal dlu direntalan trus print.

Lebih lanjut ttg Eagle...

Buat Robot. Sulit ?!!

Biasanya sebelum buat robot, selalu aj ragu krn bertanya "Buat robot sulit ?".
Bagi wa yg sulit buat robot, yaa.. keluar duitnya kan mahal tuh, anak kos lagi masak tar makan robot klo kepepet. Klo ilmunya udah banyak kok di internet.

Menurut wa saat pertama kali buat robot, syarat utamanya yaitu harus jadi robotnya meskipun ga 100% sesuai keinginan. Yang penting ada robotnya, bisa diprogram, bisa maju, mundur, belok, n muter. Ga masalah robot berubah bentuk krn nabrak". Krn buat anak kos, buat robot trus gagal = habis manis sepah dibuang artinya duit abis jd anak buangan (g nyambung).

Buat Robot yg murah bisa +- 200 rb (itungnya tar aja).
Kira" buatnya gene :

Lengkapnya seneee....

What's Up'Zzz

Yowww... Salam robo

Mudah" Blog ini dapat menjadi tempat share ilmu dan tanya jawab ilmu elektronika umumnya dan robotika secara khusus nya. Sama-sama NewBiee kita di bidang ini, n smoga kita dapat berkembang pesat. Amiii....n.

"Malu bertanya sesat di jalan, banyak tanya ga jalan-jalan, salah nanya sesat beneran, kasiaaan"

Jayalah Endonesiaaaaa (Negara mana Neh ?)

The Mikrokers