Komunikasi i2c Kompas CMPS10 menggunakan Bascom AVR
|
17 April 2014
Modul sensor CMPS10 merupakan sensor Magnetometer 3-axis terintegrasi dengan accelerometer 3-axis.Modul ini menggunakan prosesor 16-bit, CMPS10 telah dirancang untuk mengurangi kesalahan yang disebabkan oleh kemiringkan PCB. CMPS10 menghasilkan keluaran hasil 0-3599 mewakili 0-359,9 atau 0 sampai 255. Output dari tiga sensor berukuran x, y dan z komponen dari medan magnet, bersama dengan pitch and roll yang digunakan untuk menghitung bearing. Modul CMPS10 membutuhkan catu daya pada 3,6 - 5V dan arus sebesar 25mA dalam penggunaannya . Ada tiga cara untuk mendapatkan bantalan dari modul. Sebuah antarmuka serial, antarmuka I2C atau output PWM. Namun kali ini yang akan saya bahas adalah menggunakan antarmuka i2c/
Untuk antarmuka CMPS10 dengan mikrokontroler sebagai berikut :
Untuk contoh programnya bisa diunduh disini
Datasheet CMPS 10 Datasheet CMPS10
Semoga Bermanfaat
Membuat Teks Berjalan dan Karakter Khusus pada LCD 16x2 menggunakan Bascom AVR
|
16 April 2014
Membuat Teks Berjalan
Geser sakedik neng, geser sakedik kang.....(hahaha, emangnya di Angkot)
Bahasan kali ini adalah untuk membuat teks berjalan pada tampilan LCD 16x2 biar bisa goyang bara bere gitu. kita dapat menggunakan fitur dari Bascom AVR yang berupa shift left dan shift right.
Langsung ajalah ga usah bertele ngocehnya, gini nih list programnya :
$regfile = "m32def.dat"
$crystal = 11059200
'konfigurasi pin
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Dim A As Integer 'deklarasi variabel A
Cursor Off 'menyembunyikan tampilan kursor
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
A = 0
For A = 1 To 5
Shiftlcd Right 'geser kekanan 10x
Waitms 500 'delay 500 ms
Next
A = 0
For A = 1 To 5
Shiftlcd Left 'geser kekiri10x
Waitms 500 'delay 500ms
Next
End
Membuat Karakter Khusus
Seringkali dalam project yang kita buat memerlukan beberapa karakter khusus, semisal saja simbol panah, jangkar ataupun derajat. Dalam kesempatan ini saya akan mencoba menjelaskan cara mendesain karakter LCD sesuai yang kita inginkan dengan menggunakan Bascom AVR.
Pada software Bascom AVR, kita dapat menggunakan fitur LCD Designer yang terdapat pada menu Tools.
Setelah masuk ke LCD Designer,langkah selanjutnya adalah membuat bentuk kakrakter yang kita inginkan.
Dalam satu kolom terdapat kotak 8x5 kotak.kali ini saya contohkan membentuk karakter Love yang akan ditampilkan pada LCD.
Setelah desain yang teah didesain dengan LCD Designer selesai, selanjutnya pilih "OK" dan Bascom akan mengenerate desain yang dibuat tadi. Contoh hasil generate dari desain diatas yang telah dibuat adalah sebagai berikut:
Deflcdchar [x],4,10,17,16,8,4,2,1 ' replace [x] with number (0-7)
ganti tulisan "[x]" dengan angka 0 sampai 7, hal ini bertujuan untuk pengalamatan dari desain untuk dipanggil saat nanti ditayangkan di LCD
Untuk pemanggilan desain yang telah dibuat, cukup menuliskan Lcd Chr(0). Angka (0) merupakan pengalamatan dari desain.
Begitu mudah kan menggunakan Bascom AVR.
Untuk mengunduh contoh dalam program dan simulasi proteus bisa diunduh disini
Salam Olahraga,
Semoga Bermanfaat.
Geser sakedik neng, geser sakedik kang.....(hahaha, emangnya di Angkot)
Bahasan kali ini adalah untuk membuat teks berjalan pada tampilan LCD 16x2 biar bisa goyang bara bere gitu. kita dapat menggunakan fitur dari Bascom AVR yang berupa shift left dan shift right.
Langsung ajalah ga usah bertele ngocehnya, gini nih list programnya :
$regfile = "m32def.dat"
$crystal = 11059200
'konfigurasi pin
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Dim A As Integer 'deklarasi variabel A
Cursor Off 'menyembunyikan tampilan kursor
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
A = 0
For A = 1 To 5
Shiftlcd Right 'geser kekanan 10x
Waitms 500 'delay 500 ms
Next
A = 0
For A = 1 To 5
Shiftlcd Left 'geser kekiri10x
Waitms 500 'delay 500ms
Next
End
Membuat Karakter Khusus
Seringkali dalam project yang kita buat memerlukan beberapa karakter khusus, semisal saja simbol panah, jangkar ataupun derajat. Dalam kesempatan ini saya akan mencoba menjelaskan cara mendesain karakter LCD sesuai yang kita inginkan dengan menggunakan Bascom AVR.
Pada software Bascom AVR, kita dapat menggunakan fitur LCD Designer yang terdapat pada menu Tools.
Setelah masuk ke LCD Designer,langkah selanjutnya adalah membuat bentuk kakrakter yang kita inginkan.
Dalam satu kolom terdapat kotak 8x5 kotak.kali ini saya contohkan membentuk karakter Love yang akan ditampilkan pada LCD.
Setelah desain yang teah didesain dengan LCD Designer selesai, selanjutnya pilih "OK" dan Bascom akan mengenerate desain yang dibuat tadi. Contoh hasil generate dari desain diatas yang telah dibuat adalah sebagai berikut:
Deflcdchar [x],4,10,17,16,8,4,2,1 ' replace [x] with number (0-7)
ganti tulisan "[x]" dengan angka 0 sampai 7, hal ini bertujuan untuk pengalamatan dari desain untuk dipanggil saat nanti ditayangkan di LCD
Untuk pemanggilan desain yang telah dibuat, cukup menuliskan Lcd Chr(0). Angka (0) merupakan pengalamatan dari desain.
Begitu mudah kan menggunakan Bascom AVR.
Untuk mengunduh contoh dalam program dan simulasi proteus bisa diunduh disini
Salam Olahraga,
Semoga Bermanfaat.
Motor Stepper
|
Definisi Motor Stepper
Motor
stepper 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 menggerakkan motor stepper diperlukan pengendali motor
stepper yang membangkitkan pulsa-pulsa periodik. Penggunaan motor stepper
memiliki beberapa keunggulan dibandingkan dengan penggunaan motor DC biasa.
Keunggulan Motor Stepper
- 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.
Jenis Motor Stepper
Pada
dasaranya terdapat 3 jenis motor stepper
yaitu:
1.
Motor stepper tipe 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):
Penampang melintang dari motor stepper tipe variable
reluctance (VR)
2.
Motor stepper tipe 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 (perhatikan
gambar 2.9). Dengan adanya magnet permanen, maka 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:
Ilustrasi sederhana dari motor stepper tipe permanent
magnet (PM)
3.
Motor stepper tipe 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:
Penampang melintang dari motor stepper tipe hybrid
Berdasarkan metode perancangan rangkain
pengendalinya, motor stepper dapat dibagi menjadi jenis unipolar dan bipolar.
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 (perhatikan gambar 2.6).
Motor stepper dengan lilitan unipolar
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 (perhatikan
gambar 2.7). 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.
Motor stepper dengan lilitan bipolar
Tutorial Tampilan LCD pada Mikrokontroler menggunakan Bascom AVR
|
14 April 2014
Halo berjumpa lagi dengan corat-coret bimo. Kali ini topik yang akan dibahas adalah LCD pada mikrokontroler menggunakan software pemrograman Bascom AVR, tentunya dengan bahasa pemrograman Basic. Sebelum bahas lebih lanjut, apa sih LCD itu?
LCD adalah singkatan dari Liquid Crystal Display, suatu media tampilan yang menggunakan kristal cair sebagai penampil utama,. LCD banyak digunakan pada alat-alat elektronik, yang sering dijumpai adalah pada TV, kalkulator, tiket parkir, tiket mainan wahana anak, dll. Tipe yang banyak digunakan dan biasanya untuk belajar mikrokontroler adalah LCD dot matrik 16x2. LCD 16x2 artinya adalah 16 kolom dan 2 baris.
Penampakan dari LCD 16x2
Konfigurasi Pin LCD adalah sebagai berikut :
Pada umumnya Pin yang digunakan sebagai I/O ke mikrokontroler adalah pin RS, R/W, En dan DB4-7
Konfigurasi Pin LCD 16x2 pada kaki mikrokontroler contohnya sebagai berikut :
'Ingat' apabila menggunakan Bascom AVR, pin 5 LCD (Pin R/W) dihubungkan ke ground. berbeda dengan menggunakan codevison, pin 5 dibungkan dengan pin.
Contoh 1 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
'konfigurasi mikrokontroler dan kristal clock
$regfile = "m32def.dat"
$crystal = 11059200
'konfigurasi pin
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Cursor Off 'menyembunyikan tampilan kursor
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
Contoh 2 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
regfile = "m32def.dat"
$crystal = 11059200
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Cursor Off
Locate 1 , 5 'meletakkan kursor ke baris pertama, kolom kelima
Lcd "Elektro"
Locate 2 , 2 'meletakkan kursor ke baris kedua, kolom ke dua
Lcd "Lead The Way"
Contoh 3 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
$regfile = "m32def.dat"
$crystal = 11059200
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Dim Nama As String * 4 'deklarsai variabel nama
Dim Nim As Long 'deklarsai variabel nim
Dim Urut As Integer 'deklarsai variabel urut
Dim Ipk As Double 'deklarsai variabel Ipk
Cursor Off 'menyembunyikan tampilan kursor
Nama = "Bimo" 'menyimpan karakter nama ke buffer
Nim = 115090055 'menyimpan karakter urut ke buffer
Urut = 4 'menyimpan karakter ipk ke buffer
Ipk = 3.34
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
Wait 1 'delay 1 detik
Cls 'menghapus layar
Home 'meletakkan kursor ke baris pertama
Lcd "Nama : " ; Nama 'menampilkan karakter nama dari buffer
Lowerline 'meletakkan kursor ke baris kedua
Lcd "NIM : " ; Nim 'menampilkan karakter nama dari buffer
Wait 1 'delay 1 detik
Cls 'menghapus layar
Home
Lcd "Urut : " ; Urut 'menampilkan karakter urut dari buffer
Lowerline
Lcd "IPK : " ; Ipk 'menampilkan karakter IPK dari buffer
End
Bila ingin mengunduh contoh program dan simulasi proteus dari topik yang dibahas diatas bisa didownload disini
Semoga Bermanfaat
LCD adalah singkatan dari Liquid Crystal Display, suatu media tampilan yang menggunakan kristal cair sebagai penampil utama,. LCD banyak digunakan pada alat-alat elektronik, yang sering dijumpai adalah pada TV, kalkulator, tiket parkir, tiket mainan wahana anak, dll. Tipe yang banyak digunakan dan biasanya untuk belajar mikrokontroler adalah LCD dot matrik 16x2. LCD 16x2 artinya adalah 16 kolom dan 2 baris.
Penampakan dari LCD 16x2
Konfigurasi Pin LCD adalah sebagai berikut :
Pada umumnya Pin yang digunakan sebagai I/O ke mikrokontroler adalah pin RS, R/W, En dan DB4-7
Konfigurasi Pin LCD 16x2 pada kaki mikrokontroler contohnya sebagai berikut :
'Ingat' apabila menggunakan Bascom AVR, pin 5 LCD (Pin R/W) dihubungkan ke ground. berbeda dengan menggunakan codevison, pin 5 dibungkan dengan pin.
Contoh 1 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
'konfigurasi mikrokontroler dan kristal clock
$regfile = "m32def.dat"
$crystal = 11059200
'konfigurasi pin
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Cursor Off 'menyembunyikan tampilan kursor
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
Contoh 2 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
regfile = "m32def.dat"
$crystal = 11059200
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Cursor Off
Locate 1 , 5 'meletakkan kursor ke baris pertama, kolom kelima
Lcd "Elektro"
Locate 2 , 2 'meletakkan kursor ke baris kedua, kolom ke dua
Lcd "Lead The Way"
Contoh 3 Listing Program Menampilkan tulisan ke tampilan LCD 16x2
$regfile = "m32def.dat"
$crystal = 11059200
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
Config Lcd = 16 * 2
Dim Nama As String * 4 'deklarsai variabel nama
Dim Nim As Long 'deklarsai variabel nim
Dim Urut As Integer 'deklarsai variabel urut
Dim Ipk As Double 'deklarsai variabel Ipk
Cursor Off 'menyembunyikan tampilan kursor
Nama = "Bimo" 'menyimpan karakter nama ke buffer
Nim = 115090055 'menyimpan karakter urut ke buffer
Urut = 4 'menyimpan karakter ipk ke buffer
Ipk = 3.34
Home 'meletakkan kursor ke baris pertama
Lcd "Elektro"
Lowerline 'meletakkan kursor ke baris kedua
Lcd "Lead The Way"
Wait 1 'delay 1 detik
Cls 'menghapus layar
Home 'meletakkan kursor ke baris pertama
Lcd "Nama : " ; Nama 'menampilkan karakter nama dari buffer
Lowerline 'meletakkan kursor ke baris kedua
Lcd "NIM : " ; Nim 'menampilkan karakter nama dari buffer
Wait 1 'delay 1 detik
Cls 'menghapus layar
Home
Lcd "Urut : " ; Urut 'menampilkan karakter urut dari buffer
Lowerline
Lcd "IPK : " ; Ipk 'menampilkan karakter IPK dari buffer
End
Bila ingin mengunduh contoh program dan simulasi proteus dari topik yang dibahas diatas bisa didownload disini
Semoga Bermanfaat
ISIS Proteus : Software Simulasi Elektronik. Belajar Mikrokontroler jadi lebih mudah dengan Simulasi.
|
13 April 2014
Hallo rekan-rekan, teman-teman ataupun saudara-saudara sekalian. Bertemu lagi dengan catatan-catatan yang gag gitu guna alias corat coret Bimo. Pada postingan kali ini saya akan berbagi software simulasi elektronik "PROTEUS" yang sering digunakan oleh penghobi elektronik, khususnya untuk project-project Mikrokontroler AVR.
Opo meneh kui (Apa lagi itu) "PROTEUS" ?
Proteus adalah salah satu jenis model bis dari karoseri Laksana. eh bukan Proteus bis woe, ini Proteus Simulasi. PROTEUS sebenarnya bernama ISIS Proteus, karena namanya kepanjangan, maka software ini sering disebut dengan PROTEUS saja. Proteus adalah suatu software buatan Labcenter Electronics yang digunakan untuk simulasi skematik elektronik. Dengan simulasi ini, ada beberapa keuntungan yang didapat. misalanya menghemat biaya komponen, menghemat waktu riset, dan mengurangi tingkat kesalahan.
Proteus lebih populer digunakan untuk simulasi Mikrokontroler (menurut pendapat pribadi sih....) karena mendukung dalam pembacaan file program (.hex) yang telah kita buat. beberapa contoh untuk simulasi LCD Display, Keypad, Push Button, PWM Motor, dll.
Penampakan dari sopwerna seperti dibawah ini :
Opo meneh kui (Apa lagi itu) "PROTEUS" ?
Proteus adalah salah satu jenis model bis dari karoseri Laksana. eh bukan Proteus bis woe, ini Proteus Simulasi. PROTEUS sebenarnya bernama ISIS Proteus, karena namanya kepanjangan, maka software ini sering disebut dengan PROTEUS saja. Proteus adalah suatu software buatan Labcenter Electronics yang digunakan untuk simulasi skematik elektronik. Dengan simulasi ini, ada beberapa keuntungan yang didapat. misalanya menghemat biaya komponen, menghemat waktu riset, dan mengurangi tingkat kesalahan.
Proteus lebih populer digunakan untuk simulasi Mikrokontroler (menurut pendapat pribadi sih....) karena mendukung dalam pembacaan file program (.hex) yang telah kita buat. beberapa contoh untuk simulasi LCD Display, Keypad, Push Button, PWM Motor, dll.
Penampakan dari sopwerna seperti dibawah ini :
Jika anda berminat dan ingin mencoba sotware ISIS PROTEUS, silahkan diunduh dan dicoba pada
link yang sudah disediakan dibawah ini :
Silahkan Download disini
Semoga Bermanfaat
Langganan:
Postingan (Atom)