Page 2 of 6

Re: Programmable Servo Tester

Posted: 11 May 2010, 07:36
by jakatawakalna
salam kenal om coyo.....mantab dan kreatif...pastinya berguna.. =D> =D> =D>

cuman bisa nyimak aja dulu... :)

Re: Programmable Servo Tester

Posted: 11 May 2010, 08:42
by didin
coyo wrote:
rachmatjeny wrote:mantap om... ATTINY ya... =D> =D>


iya Om, tau aja.....
tadinya mo belajar PIC tp akhirnya menuruti saran Om Jedx pake AVR aja.
Lagian di forum ini banyak yg posting bikin alat macem2 pake AVR tapi gak dijelasin dari dasarnya, 'buat newbie kaya' sy gini kan bingung......



Betul Om...akibatnya...bengong aja...

Turut menyimak...

Re: Programmable Servo Tester

Posted: 11 May 2010, 10:17
by coyo
Ok Boss, sy coba gambar dulu skematiknya pake Eagle (http://www.cadsoftusa.com/download.htm) biar rapi

Re: Programmable Servo Tester

Posted: 11 May 2010, 15:37
by coyo
Sebelum ngebahas rangkaian, kita bahas tentang sinyal servo dulu deh.
Image

hmm...... jadi bingung ngejelasinnya......
kita liat animasi berikut aja deh, 'kan gambar mewakili sejuta kata hehehe.....
Image

jadi intinya untuk menggerakkan servo, butuh pulsa selebar 1.0 ~ 2.0 ms (mili detik):
1.0 ms => posisi minimum
1.5 ms => posisi tengah
2.0 ms => posisi maksimum

jarak antara 1 pulsa ke pulsa berikutnya sekitar 10~20 ms

Re: Programmable Servo Tester

Posted: 11 May 2010, 22:32
by rachmatjeny
mantap om... lanjut.. =D> =D> =D> =D>
btw ini pake PWM control ato pake delay?

trus program pake winavr/codevision?

Re: Programmable Servo Tester

Posted: 12 May 2010, 11:32
by coyo
Begini skematiknya: (akhirnya digambar pake Visio aja)
Image
(mudah2an gak salah nggambar)

Ini pinout IC-nya:
Image
Datasheet bisa di cari di http://www.atmel.com

Re: Programmable Servo Tester

Posted: 12 May 2010, 11:35
by coyo
Setelah semua dirakit dgn benar maka.....
dijamin 100% setelah disambung dgn servo & batere gak bakalan jalan......

hehehe......

Re: Programmable Servo Tester

Posted: 12 May 2010, 12:42
by thoha
apik... =D>

Re: Programmable Servo Tester

Posted: 13 May 2010, 09:01
by coyo
Biar bisa jalan, kita pake baskom..... eh, bascom yg bisa di donlot di http://www.mcselec.com/index.php?option ... &Itemid=54 pilih BASCOM-AVR DEMO - yg gratisan aja

Sebetulnya bisa juga pakai Winavr, CodeVision, AVR Studio dll. tapi sy 'ra mudheng bahasa C & Assembly - paling2 cuma berhasil bikin LED Flasher doang.....

Kenapa pake BASCOM-AVR ? karena untuk pemula seperti sy, bahasa ini lebih mudah dimengerti.
Image

Re: Programmable Servo Tester

Posted: 13 May 2010, 09:03
by coyo
Berikut listing programnya:

Code: Select all

$regfile = "attiny13.dat"               ' Micon yg dipakai adalah ATtiny13
$crystal = 9600000                      ' = 9.6MHz
$hwstack = 32
$swstack = 8
$framesize = 16

Config Portb.0 = Output                 ' PB0 (Pin5) sebagai output
Config Pinb.1 = Input                   ' PB1 (Pin 6) sebagai input
Config Pinb.2 = Input                   ' PB2 (Pin 7) sebagai input
Config Pinb.3 = Input                   ' PB3 (Pin 2) sebagai input

Sw1 Alias Pinb.1                        ' PB1 (Pin 6)
Sw2 Alias Pinb.2                        ' PB2 (Pin 7)
Sw3 Alias Pinb.3                        ' PB3 (Pin 2)

' mengaktifkan internal pull-up resistor
Set Portb.1
Set Portb.2
Set Portb.3

' Untuk clock 4MHz satuan dalam 1uS (microdetik),
' jadi untuk 9.6MHz harus dikalian 2.4
Const Servomax = 4800                   ' = 2000uS * 2.4
Const Servomin = 2400                   ' = 1000uS * 2.4
Const Servocen = 3600                   ' = 1500uS * 2.4

Dim A As Word
Dim B As Word

B = Servocen                            ' posisi awal servo di tengah

Do
  If Sw1 = 0 Then                       ' jika Sw1 ditekan
     B = Servomax                       ' servo ke posisi maksimum
  End If
  If Sw2 = 0 Then                       ' jika Sw2 ditekan
     B = Servocen                       ' servo ke posisi tengah
  End If
  If Sw3 = 0 Then                       ' jika Sw3 ditekan
     B = Servomin                       ' servo ke posisi minimum
  End If

  Pulseout Portb , 0 , B                ' Menghasilkan pulsa di PB0 (Pin 5)
  Waitms 20                             ' tunggu 20 milidetik
Loop                                    ' ulangi terus sampai bosen
End