Posts Tagged ‘cara memprogram pada bascom AVR’

Akses Motor Servo dengan Pemrograman BASCOM AVR

Nah pada postingan kali ini ane mau ngeshare nih buat temen2 yg mungkin saat ini pengen tahu tentang apa itu motor servo dan bagaimana pemrogramannya… ni ane jelasin sedikit yg ane tahu ya… :-D

Nah dipasaran itu terdapat dua jenis tipe motor servo yaitu servo standard dan servo rotation (continuous). Dimana biasanya untuk tipe standar hanya dapat melakukan pergerakan sebesar 180° sedangkan untuk tipe continuous dapat melakukan rotasi atau 360°. Contoh gambar di bawah ini adalah Servo dari Hitech dan dalemannya (hush saru c*k… hehehe ^_^)

Nah didalam motor servo tersebut terdapat motor DC, komposisi gearbox dan rangkaian kontrolernya.  Rangkaian kontrol pada motor servo digunakan untuk mengendalikan motor DC yang ada pada motor servo tersebut, oleh sebab itu untuk mengendalikan motor servo cukup hanya dengan cara memberikan pulsa-pulsa tertentu kepada rangakain kontrolernya. Nah kalo Gearbox pada motor servo berfungsi untuk meningkatkan torsi. Dikarenakan bentuknya yang compact motor servo sering  digunakan di dunia robotika, aeromodeling, car remote controler dsb.


hmmm cuma segitu teori yg ane tahu… langsung deh selanjutnya ane jelasin tentang pin pada motor servo yaitu mempunyai 3 buah pin yang terdiri dari VCC, GND dan SIGNAL/KONTROL. Berikut adalah konfigurasi pin motor servo berdasarkan merk.

Hehehe sama aja ya… Cuma beda warna doank… buat yg suka warna putih beli aja futaba begitu juga buat yg suka ma warna kuning beli ja hitec (ngaco…. :D)

Nah selanjutnya yang temen2 harus fahami lebih jauh lagi ato yg paling penting adalah mengetahui timing penggunaan servo tersebut (biasanya dijelasin di datasheetnya). Secara umum untuk mengakses motor servo tipe standard adalah dengan cara memberikan pulsa high selama 1,5 ms dan mengulangnya setiap 20 ms, maka posisi servo akan berada ditengah atau netral (0°). Untuk pulsa 1 ms maka akan bergerak berkebalikan arah jarum jam dengan sudut -90°.  Dan pulsa high selama 2 ms akan bergerak searah jarum jam sebesar 90°. Untuk lebih jelasnya perhatikan gambar berikut ini.

Untuk servo tipe continuous berbeda timing pengontrolannya… ya gitu deh teori timingnya hehehee :D Karakteristik lamanya pulsa high yang diberikan  untuk mengatur motor servo tergantung dari merk servo yang kita gunakan dengan mengacu kepada datasheet. So jangan terpaku pada teori timming diatas. Itu cuma buat pemahaman saja temen2… untuk lebih akurat dan presisinya temen dapat melakukannya secara ekperiment berlandaskan teori tersebut dan melihat spesifikasi servo temen2 pada datasheetnya. Good luck selamat berekperiment ^_^

Capek ya… baca tulisan diatas heheee maaf ya ane gak to do point alias muter2 dulu ke teorinya… maksud ane supaya temen2 dapat lebih faham tentang apa itu motor servo. Oke deh selanjutnya kita coba untuk memprogram motor servo dengan BASCOM AVR (hush ini bukan temen nya ember bukan juga bakso complit wkwkwkwk :D) oiya untuk ekperiment servo kali ini ane di bantu software PROTEUS so gak perlu punya servo dulu buat mrogramnya cukup maen simulasi aja dan baru dari hasil simulasi ini ane terapkan ke REAL WORLD :D nah ni dia susunan komponenya pada PROTEUS:

Kalo di running hasilnya kayak gini temen2:

Nah yg ane lingkaran merah itu adalah kondisi netral dari servo… di simulasi aja susah untuk presisi pada sudut 0 derajat ada error sebesar +3 derajat (ya masih kecil sih dan biasa ditolerir ^_^), nah ni dia potongan program untuk posisi netral.

Pada pemrograman servo menggunakan BASCOM AVR terlebih dahulu temen2 konfigurasi jumlah servo yang temen2 ingin gunakan dan status dari port servo temen2 diset sebagai output, contohnya temen2 gunakan 3 servo (maksimum yg dapat digunakan adalah 16 servo). Nah kalo untuk reload penjelasanya adalah “The reload value specifies the interval of the timer in uS” sebagai contoh reload temen set pada nilai 10 itu artinya “servos with 10 uS resolution(steps)”. Nah yang terpenting terakhir temen2 jangan lupa untuk mengaktifkan interrupt timernya cukup dengan menuliskan “Enable Interrupts

Berikut ini contoh program dengan kondisi:

  1. Servo 1 berputar ke kiri dengan sudut -90 derajat
  2. Servo 2 berputar ke kanan dengan sudut +90 derajat
  3. Servo 3 meneng ae hehehehehee ^_^

Dan ni dia potongan programmnya :

Hasil simulasi proteus :

Nah untuk ekperiment temen2 semua nih… coba deh lakukan perubahan nilai pada reload dan nilai pada step nya lalu amati apa yg terjadi… nanti temen2 akan memahaminya. Selamat mencoba ^_^

Tutorial Software BASCOM AVR

Bascom AVR merupakan editor list program yang berbasis  bahasa basic, software BASCOM AVR dapat dengan mudah diperoleh. link berikut jika ingin mendownload Bascom AVR versi demo, klik disini

Halaman Editor Bascom AVR

Pengenalan fungsi tools pada BASCOM AVR:

bar pada File

a.            New, digunakan untuk membuat project baru atau membuat file program baru.

b.            Open, digunakan untuk membuka project atau file program yang pernah dibuat.

c.            Save,  digunakan untuk menyimapan project atau menyimpan file program.

d.            Save As…, digunakan digunakan untuk menyimpan project tau menyimpan file dengan nama yang berbeda dari sebelumnya.

e.            Print Preview, digunakan untuk melihat hasil cetakan print out dari sintsks penulisan program.

f.            Print, digunakan untuk mencetak file program.

g.            Exit, digunakan untuk keluar dari BASCOM AVR

bar pada Edit

a.            Undo, digunakan untuk kembali ke langkah sebelumnya.

b.            Redo, kebalikan dari undo.

c.            Cut, digunakan untuk mengkopy dan menghapus teks sekaligus

d.            Copy, digunakan untk mengkopy teks.

e.            Paste, digunakan untuk menyalin bagian yang telah dikopi.

f.            Find, digunakan untuk mencari teks yang diiginkan.

g.            Find next, sama halnya dengan find hanya saja berikutnya.

bar pada Program

a.            compile, digunakan untuk mengkompile program. Proses ini akan menghsilkan file berektension *.hex

b.            syntax check, digunakan untuk memerikasa apakah terjadi kesalahan pada penulisan program atau tidak.

c.            Show result, digunakan untuk melihat hasil report dan error dari penulisan program.

d.            Simulate, digunakan untuk mensimulasikan program.

e.            Send to chip, digunakan untuk mengirim file *.hex ke dalam chip mikrokontroler (mendownload program mikrokontroler).

bar pada Tools

a.            Terminal emulator, digunakan untuk simulasi komunikasi serial dengan komputer (RS232) hampir sama dengan Hypert Terminal yang dimiliki oleh Windows.

b.            Lcd designer, digunakan untuk mendesain karakter LCD yang diinginkan.

c.            Libray Manager, digunakan untuk library yang terdapat pada BASCOM AVR

d.            Export to RTF, digunakan untuk mengkonversi penulisan program pada RTF (Rich Text Format).

e.            Graphic Converter, digunakan untuk menkonversi gambar ke LCD yang menujang RGB (high kualitas LCD).

f.            Stack Analyser, digunakan untuk menganalisa stack program.

g.            PlugIn Manager, digunakan untuk mengatur plugin yang ada.

bar pada Options

a.            Compiler, digunakan untuk mensetting chip, output, communication, I2C dan LCD.

b.            Communication, digunakan untuk mensetting komunikasi mikrokontroler.

c.            Simulator, digunakan untuk mensetting simulasi pada BASCOM AVR.

d.            Programmmer, digunakan untuk mensetting downloader programmer yang akan digunakan.

e.            Monitor, untuk mensetting tampilan.

f.            Printer, digunakan untuk mensetting printer yang digunakan.

Semoga informasi ini bermanfaat :)

Ikuti

Get every new post delivered to your Inbox.

Bergabunglah dengan 253 pengikut lainnya.