Archive for Juli, 2010

Pengaturan Kecepatan Motor Dc Dengan Mikrokontroler [open-loop]

Penggunaan motor DC dewasa ini sudah sangatlah umum, salah satu kelebihan motor DC adalah relatif gampang didapat dan mudah diatur kecepatan putarnya. Secara umum pengaturan kecepatan motor DC adalah dengan menggunakan cara analog. Pada artikel kali ini akan dibahas contoh cara mengatur kecepatan motor DC dengan menggunakan mikrokontroller.

Mikrokontroler yang digunakan adalah Tipe AVR dari Atmel seperti mikrokontroler Atmega 8535, 16, 32. Informasi kecepatan motor akan ditampilkan pada modul LCD HD4480. Sedangkan sebagai driver motor menggunakan modul driver motor IC L298.

Cara pengaturan kecepatan yang digunakan adalah dengan menggunakan teknik PWM (Pulse Width Modulation), salah satu teknik untuk mengatur kecepatan motor DC yang umum digunakan. Dengan menggunakan PWM kita dapat mengatur kecepatan yang diinginkan dengan mudah. Teknik PWM untuk pengaturan kecepatan motor adalah, pengaturan kecepatan motor dengan cara merubah-rubah besarnya duty cycle pulsa. Pulsa yang yang berubah ubah duty cycle-nya inilah yang menentukan kecepatan motor. Besarnya amplitudo dan frekuensi pulsa adalah tetap, sedangkan besarnya duty cycle berubah-ubah sesuai dengan kecepatan yang diinginkan, semakin besar duty cylce maka semakin cepat pula kecepatan motor, dan sebaliknya semakin kecil duty cycle maka semakin pelan pula kecepatan motor. Sebagai contoh bentuk pulsa yang dikirimkan adalah seperti pada gambar 1, pulsa kotak dengan duty cycle pulsa 50%. Sedangkan sebagai contoh bentuk pulsa PWM adalah seperti pada gambar 2.

Gambar 1

Gambar 2

Seperti pada gambar 1, semakin besar duty cycle pulsa kotak, maka semakin lama pula posisi logika high. Jika motor diatur agar berjalan ketika diberi logika high, maka jika memberi pulsa seperti pada gambar 1 diatas, maka motor akan berada pada kondisi “nyala-mati-nyala-mati” sesuai dengan bentuk pulsa tersesebut. Semakin lama motor berada pada kondisi “nyala” maka semakin cepat pula kecepatan motor tersebut. Motor akan berputar dengan kecepatan maksimum jika mendapat pulsa dengan duty cycle 100%. Dengan kata lain motor mendapat logika high terus menerus.

Dengan mengatur besarnya duty cycle pulsa kotak yang dikirimkan, kita dapat mengatur banyaknya logika high yang diberikan pada motor, dengan kata lain mengatur lamanya waktu motor untuk berputar dalam satu periode pulsa. Jika lamanya waktu motor untuk berputar dalam satu periode pulsa ini berubah maka kecepatan purtaran motor juga akan berubah, sesuai dengan duty cycle atau waktu motor untuk berputar dalam satu periode pulsa.

Sumber :http://delta-electronic.com/article/wp-content/uploads/2008/09/an0082.pdf

===============================================================

PENGATURAN KECEPATAN MOTOR DC Berbasis Atmega8535

Skema dengan proteus:


Hasil simulasi dengan proteus:

Program Pengaturan Kecepatan Motor DC dengan Bascom AVR

$regfile = “m8535.dat”                                    ‘menggunakan Atmega8535 sebagai preprosesor

$crystal = 12000000                                      ‘menggunakan crystal clock 12 MHz

$eeprom                                                                     ‘menggunakan fasilitas eeprom Atmega8535

‘—————————inisialisasi lcd————————————

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.2 , Rs = Portc.0

Config Lcd = 16 * 2 : Cursor Off

‘—————————inisialisasi pwm———————————–

Config Timer1 = Pwm , Pwm = 10 , Prescale = 64 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up       ‘pwm dengan settingan fast pwm 10 bit

‘—————————inisialisasi port——————————–

‘inisialisasi tombol

Config Portb = Input

‘—————————pull up internal——————————–

Portb.0 = 1

Portb.1 = 1

Portb.2 = 1

Portb.3 = 1

Config Portd = Output

‘alias logika motor

M1a Alias Portd.0

M1b Alias Portd.1

M2a Alias Portd.2

M2b Alias Portd.3

‘——————————alias——————————————–

‘alias tombol

Sw_ok Alias Pinb.3

Sw_cancel Alias Pinb.2

Sw_down Alias Pinb.1

Sw_up Alias Pinb.0

‘——————————————————————————-

Dim Pwm As Integer

Dim Pwm_eprom As Eram Integer

Home

Lcd “Fahmizal_dte2006”

Lowerline

Lcd “Cek fungsi PWM”

Wait 1

Do

Pwm = Pwm_eprom

If Sw_up = 0 Then : Incr Pwm : Waitms 10

End If

If Sw_down = 0 Then : Decr Pwm : Waitms 10

End If

If Pwm > 1023 Then : Pwm = 0 : Waitms 10

End If

If Pwm < 0 Then : Pwm = 1023 : Waitms 10

End If

Pwm_eprom = Pwm

Cls

Home

Lcd “tes uji pwm”

Lowerline

Reset M1a

Reset M2a

Set M1b

Set M2b

Pwm1a = Pwm

Pwm1b = Pwm

Lcd “nilai pwm:” ; Pwm1a : Waitms 100

Loop

End

nach berikut hasil video pengaturan sinyal PWM nya ^_^

===============================================================

bacaan terkait di blog ini:

1. mudah-belajar-mikro-dengan-simulasi-program-proteus klik disini

2. aplikasi-pwm-mikrokontroler-atmega8535 klik disini

===============================================================

Transistor Sebagai Saklar

Penggunaan transistor sebagai saklar artinya mengoperasikan transistor pada salah satu kondisi yaitu saturasi atau cut off. Jika sebuah transistor berada dalam keadaan saturasi maka transistor berlaku seperti saklar tertutup antara kolektor dan emiter. Jika transistor cut off transistor berlaku seperti saklar terbuka.

Gambar di bawah menunjukkan salah satu contoh pengunaan sebuah transistor sebagai saklar beserta garis beban dc. Pengaturan on-off transistor dengan mengatur level tegangan pada basis transistor tersebut. Jika arus basis lebih besar atau sama dengan arus basis saat saturasi, titik kerja transistor berada pada ujung atas garis beban dc, dalam kondisi ini transistor berlaku sebagai saklar tertutup. Sebaliknya jika arus basis nol, titik kerja transistor berada pada titik ( P ) dalam kondisi ini transistor berlaku sebagai saklar terbuka.

Gambar Titik Kerja Transistor

Karakteristik Kolektor Transistor

Gambar Kurva Karakteristik Kolektor Transistor

Kurva karakteristik kolektor merelasikan IC dan VCE dengan IB sebagai parameter. Parameter-parameter transistor tidaklah konstan, meskipun tipe sama namun parameter dapat berbeda. Kurva kolektor terbagi menjadi tiga daerah yaitu jenuh, aktif dan cut- off.

Daerah jenuh (saturasi) adalah daerah dengan VCE kurang dari tegangan lutut (knee) VK. Daerah jenuh terjadi bila sambungan emiter dan sambungan basis berprasikap maju. Pada daerah jenuh arus kolektor tidak bergantung pada nilai IB. Tegangan jenuh kolektor – emiter, VCE(sat) untuk transistor silikon adalah 0,2 volt sedangkan untuk transistor germanium adalah 0,1 volt.

Daerah aktif adalah antara tegangan lutut VK dan tegangan dadal (break down) VBR serta di atas IBICO. Daerah aktif terjadi bila sambungan emiter diberi prasikap maju dan sambungan kolektor diberi prasikap balik. Pada daerah aktif arus kolektor sebanding dengan arus balik. Penguatan sinyal masukan menjadi sinyal keluaran terjadi pada saat aktif.

Daerah cut-off (putus) terletak dibawah IB = ICO. Sambungan emiter dan sambungan kolektor berprasikap balik. Pada daerah ini IE = 0 ; IC = ICO = IB.

\\====================================================

bacaan terkait di blog ini:

1. mengontrol-beban-besar-pada-mikrokontroler klik disini

Merancang Komparator dengan Histerisis

Rangkaian komparator pada pembahasan blog ini menggunakan histerisis, tujuan dari histerisis ini agar sistem tidak berguncang dan output dari keluaran komparator tidak mengalami noise (gangguan). Komparator dapat difungsikan dengan dua mode, yakni mode invertig dan non-inverting.

KomparatorLM324 pada blog ini digunakan dengan mode inverting sehingga saat Vin (output sensor) > Vreferensi maka Vout ≈ GND begitu pula dengan sebaliknya jika saat Vin (output sensor) < Vreferensi maka Vout ≈ VCC.

Gambar Rangkaian komparator dengan histerisis

Berikut tegangan acuan Upper Trip Point (UTP) dan Low Trip Point (LTP) pada rancangan komparator histerisis.

Nilai penguatan umpan balik adalah

Jika Vreferensi = 2,5 volt ; Vjen = 5 volt maka:

Bila keluarannya mengalami kejenuhan positif, tegangan acuan tak membalik adalah

VUTP = Vreferensi + ( BVjen )

= 2,5 + ( 0,09 5 )

= 2,5 + 0,45

= 2,95 V

Bila keluarannya mengalami kejenuhan negatif, tegangan acuan tak membalik adalah

VLTP = Vreferensi – ( BVjen )

= 2,5 – ( 0,09 5 )

= 2,5 – 0,45

= 2,05 V

\\==========================================================

bacaan terkait di blog ini:

1. merancang-rangkaian-sensor-garis klik disini

2. membuat-robot-line-follower-mikro klik disini

Merancang Rangkaian Sensor Garis

Sensor garis sering digunakan pada robot line follower (robot pengikut garis), digunakan juga sebagai pendeteksi objek dengan permukaan bidang pantul yang kontras…. nach pada blog ini dijelaskan bagaimana cara mendesain sensor garis tersebut menggunakan sensor photodiode. Selain menggunakan photodiode dapat juga dirancang dengan menggunakan phototranssistor, infra red, dan masih banyak laennya.

Sensor photodiode adalah salah satu jenis sensor peka cahaya (photodetector). Photodiode akan mengalirkan arus yang membentuk fungsi linear terhadap intensitas cahaya yang diterima. Arus ini umumnya teratur terhadap power density (Dp). Perbandingan antara arus keluaran dengan power density disebut sebagai current responsitivity. Arus yang dimaksud adalah arus bocor ketika photodiode tersebut disinari dan dalam keadaan dipanjar mundur.

Hubungan antara keluaran sensor photodiode dengan intensitas cahaya yang diterimanya ketika dipanjar mundur adalah membentuk suatu fungsi yang linier. Hubungan antara keluaran sensor photodiode dengan intensitas cahaya ditunjukkan pada Gambar berikut.

Gambar Hubungan keluaran photodiode dengan intensitas cahaya

Mekanisme Perancangan Sensor Garis

LED superbright berfungsi sebagai pengirim cahaya ke garis untuk dipantulkan lalu dibaca oleh sensor photodiode. Sifat dari warna putih (permukaan terang) yang memantulkan cahaya dan warna hitam (permukaan gelap) yang tidak memantulkan cahaya digunakan dalam aplikasi ini. Gambar dibawah ini adalah ilustrasi mekanisme sensor garis.

Gambar Ilustrasi mekanisme sensor garis

Prinsip Kerja Sensor

Pada rancangan sensor photodiode dibawah ini, nilai resistansinya akan berkurang bila terkena cahaya dan bekerja pada kondisi riverse bias. Untuk pemberi pantulan cahayanya digunakan LED superbright, komponen ini mempunyai cahaya yang sangat terang, sehingga cukup untuk mensuplai pantulan cahaya ke photodiode. Berikut ini prinsip dan gambaran kerja dari sensor photodiode.

Gambar Sensor photodiode tidak terkena cahaya

Saat photodiode tidak terkena cahaya, maka nilai resistansinya akan besar atau dapat diasumsikan tak hingga. Sehingga tidak ada arus bocor yang mengalir menuju komparator.

Gambar Sensor photodiode terkena cahaya

Saat photodiode terkena cahaya, maka photodiode akan bersifat sebagai sumber tegangan dan nilai resistansinya akan menjadi kecil, sehingga akan ada arus bocor yang mengalir ke komparator.

Nah buat temen2 yang nantinya pengen merancang sensor garis dengan multisensor dapat menggunakan multiplekser-4051 dan di akses dengan ADC-Multiplekser. info lebih lanjut, temen2 kunjungi postingan ini :

https://fahmizaleeits.wordpress.com/2010/09/02/robot-line-follower-dengan-multiplekser-adc/

\\==========================================================

bacaan terkait di blog ini:

1. merancang-komparator-dengan-histerisis klik disini

2. cara-membuat-robot-line-follower-analog klik disini

3. membuat-robot-line-follower-mikro klik disini

4. robot-line-follower-dengan-kendali-pid klik disini

Mudah Belajar Mikrokontroler dengan Simulasi Program Proteus

Buat temen-temen yang pengen belajar mikrokontroler tapi blum punya hardware  sistem minimum mikro-nya atau terkendala dengan hardware gak perlu males untuk belajar, kita dapet menggunakan program simulasi… salah satunya dengan PROTEUS. Informasi programnya dapat temen2 lihat di http://www.labcenter.com/index.cfm

Pada postingan ini, akan ane share cara penggunaan proteus…seri 6.9SP3 kalo gak salah udah da seri 7.xx tapi gak apa pake yang jadul yang penting ilmunya 🙂

Cara nya gampang buka program proteus… seperti  tertampil pada gambar dibawah ini:

Klik huruf (P) yang merupakan  “Pick device” untuk mengambil komponen apa saja yang dibutuhkan:

Nach disini tempat untuk mengambil komponen yang dibutuhkan dalam perancangan simulasi…

Caranya sangat mudah tinggal nulis komponen yang kita butuhkan pada list keyword… sebagai contoh kita ingin merancang mikrokontroler Atmega8535 dengan LED

List komponen yang dibutukan…

1.mikrokontroler Atmega8535  ketik saja keywordnya dengan “8535” maka komponen AT90s8535 akan kereload dan siap digunakan..lalu klik ok

2. sama halnya dengan cara mengambil komponen mikro…untuk mengambil LED kita juga hanya dengan cara menuliskan keywordnya dengan “LED” : catatan untuk kasus simulasi komponen yang kita reload adalah library dengan  kondisi “active” agar saat disimulasikan seolah-olah LED tersebut mengeluarkan cahaya  sesuai dengan warna led yang kita gunakan….

ini hasil reload komponen….

Setalah itu kita tinggal rancang susunan komponen, nich hasilnya….

Catatan: untuk rancangan cristal mikro dan rangkaian reset mikro gak perlu dirancang lagi (tinggal diinputkan saja) dan pencatuan mikro juga begitu.. secara default  vcc dan ground mikro telah terdefinisikan oleh software proteus ini… sebagai contoh pada rancagaan LED disusun  dengan kondisi common anode dimana anode led terhubung oleh vcc, label vcc tersebut haruslah kita buat sendiri dengan cara  klik pada “wire label” lalu isi label dengan “vcc”, begitu juga sebaliknya untuk membuat grounding… dgn menuliskan “gnd”. Oiya rangkaian LED nya jika dirancang pada real sistem harus dipasang resistor (470Ω) gunanya untuk membatasi arus yang melewati LED (sebesar 10mA).

Nach selain itu kita juga harus mengetahui.. fungsi tools laenya… seperti berikut…

Tidak semua tools dapat ane jelasin sebagian tools laennya sampai sekarang ada juga yang belum ane tahu, tapi yang tahu sedikit ni dach cukup untuk bermain-main dengan PROTEUS, nach Untuk lebih jelasnya sebagai berikut…..penjelasannya menurut sepengetahuan ane dari coba-coba…

  1. List komponent …nach ini tools digunakan untuk melihat list komponent yang kita gunakan pada rancangan kita, untuk menambahkan komponen klik dulu nich tools habis tu baru klik pick device (P).
  2. Junction dot…kalo tools yang ini berguna untuk memberi tanda penghubung suatu wire (kabel), jika ada dua wire dan ingin kita hubungkan nach gunakan tools ini, begitu juga untuk kondisi sebaliknya jika kita ingin menghilangkan sambungan kabel tersebut maka kita tinggal klik juntion dot pada sambungan kabel tersebut agar sambungannya menjadi terputus.
  3. Label wire…untuk tools yang ini penting untuk digunakan sebab kita tinggal memberi label pada wire tersebut apakah terhubung vcc ataukah gnd
  4. Bus…tools ini untuk bus kota… ngawur….nich tools digunakan untuk rancangan jalur yang menggunakan jalur bus….apa ya…ane juga bingung jelasinnya pokoke kuwi lah…..
  5. Instant edit mode…nich tools digunakan untuk mengedit komponen yang kita rancang, contoh kita menggunakan mikro, untuk mendonload file .hex dari pemrograman kompiler kita gunakan tools ini atw dengan cara klik kanan pada komponen (setelah komponen berwarna merah) klik kiri maka box edit komponent akan muncul seperti ini…

Nach disini kita tinggal masukin nilai clock frekuensi dari mikro atau cristal luar mikro sebagai contoh 12Mhz dan disini juga tempat mendonload file .hex program kita kedalam mikrokontroler…

6.   Simulation graph… nach ni tools untuk mensimulasikan grapik sinyal analog,digital, frekuensi, distorsi,fourier.dan laen sebagainya… ane ja jarang gunakan tools ini coz kayaknya ni tools buat yang dah expert dengan proteus… jadi ane juga kurang jelas…maaf ye…

7.   Tape recorder… apa lagi tools yang satu ini… ane belum pernah menggunakan ni tools… dari bahasanya jika diterjemahkan sebagai perekam.. mungkin mirip ma perekam radio tape kali…hehe….

8.   Generator… nach kalo tools yang ini mau gak mau sering  kita gunakan, Generator berarti pembangkit… yups tools ini digunakan untuk pembangkit  tegangan, arus, sinyal sinus, dan sebagainya… jadi jika pada rancangan kita membutuhkan tegangan atau arus maka gunakan nich tools…

9.   Virtual instrument… tools yang ini merupakan virtual alat pengukuran seperti osiloskop, virtual terminal, ac/dc voltmeter, ac/dc ammeter, dan sebagainya… nach jika pada rancangan kita ingin mengetahui tegangannya berapa, aru snya berapa, atau bentuk sinyal keluaranya seperti apa, maka gunakan tools ini,…

10.   Masih banyak tools yang laen yang dapat digunakan, tapi ane bingung buat jelasinnya, dicoba sendiri ja ya… ane yakin temen2 semua pasti bisa.

Semoga informasi ini bermanfaat 🙂