Daftar Tulisan Berseri untuk tutorial AVR - PING
- Menggunakan 6 Ping dengan 2 Microcontroller AVR 8 bit RISC untuk Navigasi Robot (Bagian 0)
Pendahuluan
Tulisan ini sebenarnya saya tujukan untuk klub robotika tidak resmi di Gunadarma (Dadank, Rum, Anto, Yogi, dkk), mudahan-mudahan niat yang ikhlas untuk belajar bersama dan berbagi ilmu dapat menambah pahala dan membuka minat para mahasiswa Gunadarma lainnya, khususnya jurusan SK, TK dan elektro, untuk menggeluti bidang robotika. Mudah-mudahan tulisan ini dapat juga berguna bagi khalayak ramai
.
Tulisan ini ditujukan untuk pemula yang ingin mengenal microcontroller (uC) AVR RISC serta penggunaan 6 sensor PING (sensor ultrasonic) untuk navigasi robot dengan penerapan metode Fuzzy Logic. Dasar elektronika, microprocessor-microcontroller (uC/uP), dan pengetahuan dalam bahasa pemrograman prosedural (C, Pascal, atau Basic) merupakan nilai tambah untuk dapat mempermudah memahami tulisan ini.
Konvensi Penulisan
Jika Anda merasa janggal dengan beberapa istilah baku yang digunakan di sini, silahkan tilik Panduan Pembakuan Istilah, Pelaksanaan Instruksi Presiden Nomor 2 Tahun 2001 Tentang Penggunaan Komputer Dengan Aplikasi Komputer Berbahasa Indonesia. Agar tidak membingungkan saat bertukar dengan literal asing, saya tetap mencantumkan juga istilahnya dalam literal asing (biasanya dalam format tanda kurung dengan tulisan cetak miring, misal: lembar data (datasheet)). Penggunaan istilah microcontroller akan lebih sering digantikan dengan uC dan microprocessor dengan uP.
Untuk baris kode, saya tuliskan dalam format seperti berikut:
// Alphanumeric LCD Module functions #asm .equ __lcd_port=0x1B ;PORTA #endasm #include <lcd.h>
Format penulisan untuk ukuran memori dan penamaan register ditulis seperti berikut:
1 Kbyte, atau 512-x-16 bit. instruction register, DDRA, PORTA, PINA.0.
Tulisan ini saya buat menjadi 8 bagian, dimulai dari bagian 0 hingga bagian 7. Disetiap akhir bagian, akan saya tuliskan senarai rujukan yang digunakan dalam penulisan bagian tersebut. Namun di bagian akhir (bagian 7), semua rujukan saya kumpulkan jadi satu berikut tambahan tautan lainnya untuk mematangkan pengetahun mengenai AVR dan robotika.
Bagian 0
Yang sedang Anda baca.
Bagian 1 – Microcontroller keluarga AVR
Berisi penjelasan mengenai uC keluarga AVR.
Bagian 2 – Pemrograman AVR dengan bahasa C
Membahas cara memprogram AVR dengan menggunakan bahasa C. Penggunaan bahasa C dimaksudkan untuk mempermudah penjelasan. Dibanding assembler, bahasa C lebih mudah dibaca dan dimengerti. Salah satu IDE (Intregated Development Environment) yang cukup membantu dalam mempelajari microcontroller AVR RISC 8 bit dengan bahasa C adalah CodeVisionAVR. Sayangnya CodeVisionAVR merupakan program shareware yang memiliki keterbatasan untuk versi trial-nya. Namun versi trial-nya sudah cukup membantu memahami cara memprogram microcontroller AVR 8 bit RISC dengan bahasa C. Alternatif lain adalah menggunakan SDCC (Small Device C Compiler) atau winAVR yang gratis dan sumber terbuka. Berpindah dari satu compiler ke compiler lain dalam satu konteks bahasa yang sama (C) tidak terlalu sulit. Kelebihan CodeVisionAVR hanya ada di kemudahan manajemen berkas dan proyek dalam sebuah IDE serta fitur code wizard yang membantu menghasilkan rentetan baris kode untuk keperluan yang umum.
Bagian 3 – Proyek sederhana dengan ATmega8535
Proyek sederhana menggunakan ATmega8535 dengan menggunakan bahasa C di IDE CodeVision AVR. Penggunaan ATmega8535 tidak multlak, Anda bisa menggantikannya dengan jenis AVR lainnya. Beberapa proyek sederhana yang akan dibuat: lampu LED berjalan, menampilkan karakter di LCD 2×16, menggunakan PING dan LCD 2×16, PWM untuk motor DC melalui program, dan data PING untuk kendali PWM motor DC.
Bagian 4 – Komunikasi antara 2 uC
Komunikasi USART antara 2 microcontroller AVR.
Bagian 5 – Fuzzy Logic
Fuzzy Logic
Bagian 6 – Navigasi robot dengan Fuzzy Logic
Penerapan Fuzzy Logic untuk navigasi robot menggunakan 6 sensor PING dan 2 uC AVR yang berkomunikasi secara USART.
Bagian 7 – Informasi Lebih lanjut
Berisi senarai rujukan yang digunakan dalam keseluruhan penulisan serta tautan yang berisi informasi mengenai AVR dan robotika.
#Niksen
Saya tidak tahu secara teknikal mslh noise kedua uC tsb, mungkin bs dicek di datasheet masing-masing. Yang jelas keduanya sudah beda ”core arsitektur”-nya
Mas Gedex, saya mau tanya. Apa bener AVR lebih tahan noise dibanding MCS-51 ATMEL (89C5x)?
Kalo bisa reply lewat mail ya…
Thanks
#gie
sip cuy, i lop u beb.. mmuah
cuy code buat servo belom lo masukin? bagusnya pk C or bascom ya?eh sekalian informasi hari sabtu kopdar di bengkel!
salut, mantap, weeiiih
sekalian minta ajarkan bikin web
biar tambah banyak artikelnya
dan lupa sama skripsinya
#momogie
gw jawab ya, banyak yg gw gak bisa, yaitu: main bola, main basket & hampir semua olah raga gw gak bs kecuali gaplek ama olah raga di kamar mandi :p
#dimjun
ini masih bagian 0, ini kan artikel berseri, klo dah gw tambah linknya jg ikut bertambah nantinya, sabar ya
Dex…
Koq Q ga bisa liat artikelmu ya…
kayak ga aktif semua
seperti bagian fuzzy logic koq isinya cuma tulisan “fuzzy logic”
yang lainnya juga sama, ga ada artikel yang bisa mengobati rasa penasaran terhadap AVR….? tuing tuing ?????
mas gedex aku ajarin donk!
mas gedex gmana sih cara belajarnya ,ko bisa c’mua?(wajib djawab)
mas gedex aku … padamu!
#t33d
emang burung punya sayap :p
gw angkatan 02 bro, sampai sekarang masih blm lulus :p, nungguin temen2 gw lulus dulu (alesan)
wuih…mas gedex ini punya 4 sayap yah.. jago design..jago pemrograman berbasis web…jago c++…dan ternyata jago juga di dunia robotika.
salut…mas atas semangat berbaginya.
nb: gunadarma angkatan berapa mas??