Workshop: Pemrograman Praktis Mikrokontroler PIC untuk Aplikasi Robot

Pada hari Selasa dan Rabu, 19-20 Agustus 2008, saya bersama DR. Riza Muhida, asisten profesor bidang Mekatronika di International University Malaysia, memberikan workshop setengah hari kepada 34 orang guru dan siswa dari SMPK/SMAK TRIMULIA dan SMP Bintang Mulia Bandung. Ini merupakan kegiatan workshop mikrokontroler dan robotika pertama untuk kalangan sekolah menengah, khususnya di kota Bandung.

Dengan menggunakan mikrokontroler PIC dan Bahasa C, serta pemrograman mikrokontroler melalui port serial komputer; para guru dan siswa diajak untuk menyelami aplikasi praktis, bagaimana memprogram mikrokontroler, membuat aplikasi sistem lalu lintas, sistem keamanan, membaca data dari sensor, dan lain-lain; serta bagaimana mengendalikan motor, yang nantinya akan digunakan dalam aplikasi robot.

Saat ini, mikrokontroler dan Bahasa C bukan lagi konsumsi para mahasiswa di perguruan tinggi. Dengan pola pembelajaran yang mengedepankan kepraktisan dan kemudahan, serta dukungan dari teknologi terkini, para siswa sekolah menengah pun dapat menikmatinya.

Riding the wave dan Don’t Reinventing the Wheel.

Memrogram Mikrokontroler PIC dengan BASIC

Pada saat kemunculan komputer pribadi di era 1980an, bahasa BASIC cukup populer. Saat ini, BASIC masih diperhitungkan sebagai bahasa pemrograman yang paling mudah digunakan, tidak terkecuali di dalam dunia mikrokontroler. BASIC memungkinkan pengembangan aplikasi lebih cepat dibanding bahasa assembly. Ketika menulis kode untuk mikrokontroler, programmer sering kali berhadapan dengan isu yang sama, seperti komunikasi serial, menampilkan informasi pada tampilan LCD, membangkitkan sinyal PWM, dan yang lainnya. Untuk maksud mem-fasilitasi pemrograman, BASIC menyediakan sejumlah rutin dan pustaka untuk memecahkan masalah ini.

Dalam konteks ukuran program dan kecepatan eksekusi, assembly memiliki sedikit keunggulan dibanding BASIC. Namun, kita bisa menyisipkan kode assembly di dalam BASIC, untuk menangani bagian dimana waktu eksekusi merupakan hal yang kritis.

Mikrokontroler modern seperti PIC, meng-eksekusi instruksi dalam satu siklus. Jika clock mikrokontroler adalah 4MHz, maka satu instruksi assembly memerlukan 250ns x 4 = 1us. Secara teknis, satu perintah BASIC terdiri dari sejumlah instruksi assembly. Waktu eksekusi untuk setiap perintah merupakan jumlah dari waktu eksekusi dari sejumlah instruksi assembly yang mewakilinya.

Saat ini, pilihan terbaik untuk pengembangan aplikasi dengan BASIC adalah PIC16F84, PIC16F87x, PIC16F62x, PIC18Fxxx. Kontroler ini memiliki program memory dengan teknologi flash, yang dapat dihapus dan diprogram ulang secara cepat, sehingga memungkinkan debugging secara cepat pula. Dengan satu kali klik mouse di dalam programming software, program mikrokontroler dapat secara instan dihapus kemudian di-reload tanpa harus mencabut chip dari alat. Program yang telah di-load ke dalam memori flash dapat tersimpan walaupun catu daya dimatikan. Disamping memori flash, mikrokontroler seri PIC16F87x dan PIC16F84 memiliki 64-256 byte memori EEPROM internal, yang dapat digunakan untuk menyimpan data program dan parameter lain ketika catu daya dimatikan. Instruksi BASIC, EEPROM_Read dan EEPROM_Write, dapat digunakan untuk keperluan ini.

Berikut adalah program LED berkedip yang dibuat dengan mikroBASIC untuk mikrokontroler PIC.

program LED_Blink
main:
 TRISB = 0         ' Configure pins of PORTB as output
eloop:
 PORTB = $FF       ' Turn on diodes on PORTB
 Delay_ms(1000)    ' Wait 1 second
 PORTB = 0         ' Turn off diodes on PORTB
 Delay_ms(1000)    ' Wait 1 second
 goto eloop            ' Stay in loop
end.

Menggunakan ADC pada ATmega8535

Dalam mikrokontroler keluarga AVR, khususnya kelas ATmega, umumnya sudah dilengkapi dgn ADC – Analog to Digital Conver, yang tertanam di dalamnya. Sebagai contoh, ATmega8535 yang cukup populer di negeri ini.

Menggunakan fasilitas ADC yang terdapat dalam ATmega8535 dengan Bahasa BASIC, cukup mudah. Cukup melakukan inisialisasi untuk modus operasi, prescaler dan tegangan referensi yang digunakan. Selanjutnya, data analog siap diubah menjadi digital.

Berikut adalah contoh penerapannya dengan menggunakan BASCOM-AVR:

$regfile = "m8535.dat"
$baud = 9600
Config Adc = single, Prescaler = auto, Reference = avcc
Start Adc
Dim W as Word
Do
  W = Getadc(0)
  Print W
  Waitms 1000
Loop
End

Selamat mencoba.

NEXT SYSTEM
Robotics Learning Center
ITC Kosambi F2
Jl. Baranang Siang 6-8, Bandung 40112
Tel. (022) 4222062
WhatsApp 085102238024

Email: info@nextsys.web.id

Official Website: http://edukasi.nextsys.web.id

Mengapa Memilih PICAXE?

Mikrokontroler merupakan single chip computer yang saat ini relatif populer, baik di kalangan industri maupun pendidikan. Dari sekian banyak pilihan, terdapat sejumlah mikrokontroler yang sejak semula memang dirancang untuk sebuah kemudahan dalam penggunaannya (teknologi seyogyanya membawa kemudahan, bukan). Sebut saja produk turunan dari mikrokontroler PIC yang populer dengan nama PICAXE
(http://www.rev-ed.co.uk).

Sistem PICAXE menawarkan harga yang ekonomis untuk sebuah solusi yang powerful dan simple. Program dapat di-download langsung melalui kabel, tidak memerlukan programmer atau eraser. Software untuk memprogramnya disediakan secara cuma-cuma.

Program dapat dibuat secara grafis menggunakan flowchart, serta dapat juga diprogram dengan Bahasa BASIC. Keduanya tersedia dalam software yang bebas digunakan.

Jadi, PICAXE bisa disebut sebagai sistem, karena ke dalamnya sudah dimasukkan sejumlah fasilitas. Ini semua untuk memudahkan penggunanya.

Agak disayangkan, saya belum menemukan produk ini di Indonesia (kalau ada rekan yang mengetahuinya, silahkan share). Distributor terdekat ada di Singapura. Mungkin Pak Riza bisa menambahkan, apakah di Malaysia ada distributor-nya? atau harus impor dari Singapura? 🙂

Mengapa Memilih Mikrokontroler AVR?

Kebanyakan pengguna MCS51 beralih ke AVR saat membutuhkan kecepatan yang lebih tinggi. Bisa dipahami karena kebanyakan instruksi di-eksekusi dalam satu siklus clock saja (bandingkan dgn MCS51 yang memerlukan 1-12 siklus clock). Kedua, di kebanyakan chip AVR buatan Atmel – www.atmel.com – sudah memiliki built-in ADC (biasanya 10 bit), sehingga untuk meng-capture masukan analog, tidak perlu menambahkan rangkaian eksternal, kecuali resolusi 10-bit tidak memadai.

Dari sisi bahasa pemrograman, khususnya bahasa tingkat tinggi, hampir tidak ada perbedaan. Hanya perlu perhatian pada fitur spesifik yg hanya dimiliki oleh AVR.

Harga? Untuk yang non-industrial standard, kelihatannya cukup murah. Misalnya saja ATTINY2313 (2k Flash, 20 pin, 18 pin I/O, dapat dipacu hingga 20MHz) sekitar 15 ribu. Yang lebih besar seperti ATMEGA8 (8k Flash) sekitar 15 ribu juga. Yang memiliki built-in ADC seperti ATTINY26 (2k Flash, 11 channel ADC 10 bit) sekitar 16 ribu. Yang lebih besar seperti ATMEGA8535 sekitar 50 ribu. Untuk yg membutuhkan flash yang besar hingga 128k, bisa memilih ATMEGA128, yang harganya sekitar 80 ribu.

Jadi, dari sisi harga, relatif terjangkau.

Berikut adalah contoh pemrograman dalam bahasa BASIC (dgn BASCOM-AVR – www.mcselec.com) untuk membuat sebuah LED yang terhubung dgn port B.0 berkedip:

Config Portb = Output 'set port B as output

Do
 Portb.0 = 1 ' set port B high
 Waitms 500 ' wait 500 ms
 Portb.0 = 0 ' set port B low
 Waitms 500 ' wait 500 ms
Loop

Cukup sederhana, bukan? 🙂

Memilih Mikrokontroler

Saat ini, beragam jenis mikrokontroler (uC) dapat kita jumpai di pasaran. Mulai yang berteknologi 8-bit  hingga 32-bit, bahkan mikrokontroler dengan sejumlah prosesor di dalamnya (Propeller dari
Parallax).

Namun, apapun teknologi dan brand uC yang dipilih, yang penting bisa memenuhi kebutuhan dari aplikasi yang akan dikembangkan. Kita tidak perlu memilih uC yang “canggih” jika ingin membuat pengontrol pompa air. Atau, kurang tepat bila memilih uC yang “sederhana” untuk aplikasi robot yang kompleks serta  memerlukan respons yang cepat. Jadi, perlu mempertimbangkan aspek tepat guna, sehingga hasilnya pun cost-effective 🙂

Dalam diskusi dgn beberapa rekan beberapa waktu lalu, banyak yang mempersoalkan penggunaan mikrokontroler BASIC Stamp karena lambat. Dengan kemampuan mengolah 4000 instruksi per detik (BS2), rasanya tidak “lambat-lambat” amat. Bahkan untuk aplikasi robot sederhana, hasilnya cukup memuaskan.

So, mulailah dari yang sederhana, mudah dan ekonomis; dan segera wujudkan aplikasi pertama Anda. Itu merupakan trigger yang yang akan memicu lahirnya aplikasi-aplikasi berikutnya.

Proyek running LED merupakan aplikasi favorit dari banyak penulis buku mikrokontroler berbahasa Indonesia. Mungkin bisa dicoba juga sebagai aplikasi pertama kita 🙂

Start small. Start now.

Pelatihan Mikrokontroler dan Robotika

NEXT SYSTEM Robotics Learning Center menyediakan dan mengembangkan Produk, Konsultasi, dan Pelatihan / Training (reguler dan inhouse) tentang Mikrokontroler, Pemrograman Mikrokontroler dan Robotika, untuk siswa SD hingga SMA, mahasiswa, guru dan dosen, serta profesional dan umum; juga orang tua yang ingin memberikan bimbingan teknologi kepada anaknya.

Pelatihan / training dikemas dalam kelas “bermain” – hands-on activities dan learning by doing, sehingga peserta akan senang dan menikmati proyek-proyek yang dikembangkannya, sekaligus melihat, bahwa perkembangan teknologi terkini memang mengusung dan mengedepankan kemudahan. Juga diangkat sejumlah kasus dan solusi praktis serta tips & tricks.

Jadi, yang menjadi fokus pelatihan adalah aplikasi atau penerapan, sehingga peserta dapat segera menjadi produktif selepas mengikuti kelas.

Mulai Desember 2010, kami menyelenggarakan satu program baru: Physical Computing. Dalam kelas ini, peserta akan mempelajari bagaimana mengembangkan sistem yang merupakan kolaborasi dari sistem embedded berbasis mikrokontroler dan aplikasi di sisi komputer.

We make IT simple and fun!

Berikut adalah program dan kelas pelatihan yang kami selenggarakan, baik privat intensif, reguler maupun inhouse:

Robotik : Robot Lego Mindstorms dan Robot Edukasi

  • Pemrograman Robot Lego Mindstorms NXT dengan NXT-G (3 hari)
  • Pemrograman Robot Lego Mindstorms NXT dengan Bahasa C (3 hari)
  • Pemrograman Robot Lego Mindstorms NXT dengan Bahasa Java (3 hari)
  • Pemrograman Robot Lego Mindstorms NXT dengan Microsoft Robotics Studio (3 hari)
  • Pemrograman Robot Edukasi AVR dengan Bahasa BASIC (2 hari)
  • Pemrograman Robot Edukasi AVR dengan Bahasa C (2 hari)
  • Pemrograman Robot Edukasi AVR dengan Bahasa Pascal (2 hari)
  • Pemrograman Robot Edukasi PIC dengan Bahasa BASIC (2 hari)
  • Pemrograman Robot Edukasi PIC dengan Bahasa C (2 hari)
  • Pemrograman Robot Edukasi PIC dengan Bahasa Pascal (2 hari)
  • Pemrograman Robot Edukasi Combo : AVR dan PIC dengan Bahasa BASIC (3 hari)
  • Pemrograman Robot Edukasi Combo : AVR dan PIC dengan Bahasa C (3 hari)
  • Pemrograman Robot Edukasi Combo : AVR dan PIC dengan Bahasa Pascal (3 hari)
  • Pemrograman Robot Edukasi AVR dengan Arduino (2 hari)

** Untuk kelas Pemrograman Robot Edukasi, peserta memiliki opsi untuk membawa pulang set Robot Edukasi AVR atau Robot Edukasi PIC atau Robot Edukasi AVR Arduino

** Kelas khusus – Extreme Lego Mindstorms NXT, mempelajari bagaimana mengembangkan Lego Mindstorms NXT, menghubungkan dan memrogram sejumlah sensor non-Lego, termasuk sensor buatan sendiri; serta mengendalikan sejumlah output devices. Peserta wajib memiliki set Lego Mindstorms NXT.

Mikrokontroler: AVR, PIC, AT89S51/52 dan BASIC Stamp

  • Pemrograman Mikrokontroler BASIC Stamp dengan Bahasa BASIC (2 hari)
  • Pemrograman Mikrokontroler AT89S51/52 dengan Bahasa BASIC (2 hari)
  • Pemrograman Mikrokontroler AT89S51/52 dengan Bahasa C (2 hari)
  • Pemrograman Mikrokontroler AT89S51/52 dengan Bahasa Pascal (2 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa BASIC (2 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa C (2 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa Pascal (2 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa BASIC (2 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa C (2 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa Pascal (2 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa BASIC dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa C dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa Pascal dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa BASIC dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa C dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa Pascal dan Aplikasinya dalam Robotika (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa BASIC dan Aplikasinya dalam Robot Edukasi (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Bahasa C dan Aplikasinya dalam Robot Edukasi (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa BASIC dan Aplikasinya dalam Robot Edukasi (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa C dan Aplikasinya dalam Robot Edukasi (3 hari)
  • Pemrograman Mikrokontroler PIC dengan Bahasa Pascal dan Aplikasinya dalam Robot Edukasi (3 hari)
  • Pemrograman Mikrokontroler Combo : AVR dan PIC dengan Bahasa BASIC (3 hari)
  • Pemrograman Mikrokontroler Combo : AVR dan PIC dengan Bahasa C (3 hari)
  • Pemrograman Mikrokontroler Combo : AVR dan PIC dengan Bahasa Pascal (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Arduino (2 hari)
  • Pemrograman Mikrokontroler AVR dengan Arduino dan Aplikasinya dalam Robotik (3 hari)
  • Pemrograman Mikrokontroler AVR dengan Arduino dan Aplikasi dalam Robot Edukasi (3 hari)

Dalam kelas Pemrograman Mikrokontroler dasar ini, peserta akan mempelajari dasar-dasar mikrokontroler dan pemrogramannya, serta menikmati pengalaman bermain mikrokontroler dalam sejumlah aplikasi yang dikembangkan. Mulai dari pemrograman input output digital, komunikasi data, akuisisi data, pengendalian motor DC, dan yang lainnya.

Peserta dapat melanjutkan pembelajarannya dengan mengikuti kelas dasar lanjutan, yang akan membahas prinsip, pemrograman dan penggunaan timer dan interupsi, pengendalian servo, pengendalian motor stepper, komunikasi antar divais melalui I2C, dan yang lainnya. Program dasar lanjutan ber-durasi 2 (dua) hari.

Yang pasti, peserta akan menikmati dan mengalami dunia mikrokontroler dengan asyik dan menyenangkan.

Untuk kelas Pemrograman Mikrokontroler (2 hari) dan kelas Pemrograman Mikrokontroler dan Aplikasinya dalam Robotik (3 hari), peserta akan mendapatkan development board atau sistem minimum dari mikrokontroler yang bersangkutan:

Untuk kelas Pemrograman Mikrokontroler dan Aplikasinya dalam Robot Edukasi (3 hari), peserta akan mendapatkan set Robot Edukasi.

Program Khusus: Line Following Robot

  • Pemrograman Robot Line Follower dengan Bahasa BASIC (2 hari)
  • Pemrograman Robot Line Follower dengan Bahasa C (2 hari)
  • Pemrograman Robot Line Follower dengan Bahasa Pascal (2 hari)
  • Pemrograman Mikrokontroler dengan Bahasa BASIC dan Aplikasinya pada Line Following Robot (3 hari)
  • Pemrograman Mikrokontroler dengan Bahasa C dan Aplikasinya pada Line Following Robot (3 hari)
  • Pemrograman Mikrokontroler dengan Bahasa Pascal dan Aplikasinya pada Line Follower Robot (3 hari)
  • Pemrograman Line Following Robot dengan Kendali PID – Proportional Integral Derivative (1 hari)**
  • Pengendalian Kecepatan dan Posisi dengan Kendali PID (1 hari)**

** Line Following Robot dengan kendali PID merupakan materi tambahan, yang dapat diikuti peserta pelatihan setelah menuntaskan kelas Pemrograman Robot Line Follower.

Program Khusus: Maze Solving Robot

  • Pemrograman Robot Maze Solving dengan Bahasa BASIC (2 hari)
  • Pemrograman Robot Maze Solving dengan Bahasa C (2 hari)

Program ini dikhususkan bagi mereka yang ingin mendalami Line Following dan Maze Solving serta persiapan untuk partisipasi dalam kompetisi robot terkait.

Program Khusus: Aplikasi Robotik Lanjutan

Dalam kelas pelatihan ini peserta akan diajak untuk menyelami beberapa aplikasi robotik yang memanfaatkan sejumlah teknologi terkini, seperti kendali robot secara wireless melalui RF – Radio Frequency, menggunakan GPS – Global Positioning System, mengatur arah pergerakan robot dengan Kompas Digital, menggunakan accelerometer, camera, komunikasi data melalui jaringan GSM, security control melalui RFID, kendali robot secara wireless melalui sinyal infra merah, dan yang lainnya.

Program Khusus : Aplikasi Khusus

Program pelatihan ini dikhususkan untuk mereka yang ingin mempelajari topik-topik khusus dari aplikasi mikrokontroler dan robotik, misalnya untuk mendapatkan dasar teori yang kokoh dan aplikatif, serta pengalaman praktis guna mendukung pengerjaan proyek tugas akhir atau proyek lainnya.

Program Khusus : Physical Computing

Program pelatihan Physical Computing dikhususkan untuk mereka yang ingin mempelajari akuisisi data melalui sistem berbasis mikrokontroler dan mengolahnya lebih lanjut di sisi komputer, serta visualisasi melalui layar monitor komputer – visually oriented applications. Program ini merupakan kolaborasi sistem berbasis mikrokontroler dan komputer agar didapat sebuah sistem utuh yang user friendly.

Dalam program pelatihan ini peserta akan mendapatkan pengalaman bermain mikrokontroler lanjutan serta pemrograman visual interaktif.

Program ini memiliki prasyarat, peserta pernah menggunakan dan ber-eksperimen dengan mikrokontroler yang digunakan, minimal 6 bulan.

  • Pemrograman dan Aplikasi Mikrokontroler AVR dalam Physical Computing (3 hari)

Program Pelatihan Lainnya

Selain kelas pemrograman di atas, kami pun menyelenggarakan sejumlah program lainnya, seperti:

  • Robotic for Kids – Program pelatihan robotik untuk siswa SD, SMP atau SMA, dengan pilihan intensif dan reguler.
  • Robotic for Parents – Program pelatihan intensif untuk para orang tua yang ingin memberikan bimbingan teknologi kepada putra-putrinya.
  • Robotic for Families – Program outbond dengan media robotik untuk membangun komunikasi antar anggota keluarga.
  • Robotic for Teachers – Program pelatihan intensif untuk pengajar, yang akan mengajar robotika di sekolah / kampusnya.
  • Robotic for Olympiad – Program pelatihan intensif untuk persiapan kompetisi robotik, baik tingkat regional, nasional maupun internasional.

Program Baru Robotic for Kids!

Program Robotic for Kids reguler yang sudah berlangsung selama 4 (empat) tahun, kini diselenggarakan dalam bentuk yang berbeda. Program reguler Robotic for Kids yang selama ini berjalan dengan durasi 90 menit setiap hari Sabtu, kini dibagi menjadi sejumlah program intensif unggulan:

  • Fast Track to Robotic – program pelatihan singkat untuk pengenalan robotik, berlangsung selama 1 (satu) kali pertemuan, pk. 09.30 – 14.30 wib hari Sabtu. Walaupun bersifat pengenalan, materi yang diberikan dalam pelatihan cukup dalam, dan men-stimulasi anak agar bisa berpikir secara terbuka, melihat persoalan dari banyak sisi, serta berpikir kreatif.
  • Robotic for Kids Basic – berlangsung selama 5 (lima) kali pertemuan @ 5 jam, 09.30 – 14.30 wib setiap hari Sabtu. Program ini dikhususkan bagi pemula robotik yang ingin menyelesaikan program robotik tingkat dasar secara intensif dan lebih cepat. Materi pelatihan disusun sedemikian dan mendalam, sarat dengan tantangan, dan mengajak peserta untuk meng-eksplorasi seluruh kemampuan yang dimilikinya.
  • Robotic for Kids Advanced – berlangsung selama 6 (enam) kali pertemuan @ 5 jam, 09.30 – 14.30 wib setiap hari Sabtu. Program ini dikhususkan bagi mereka yang ingin mempelajari robotik lebih jauh, dan bagi mereka yang ingin mendapatkan pengetahuan dan pengalaman untuk persiapan  mengikuti kompetisi robotik. Program pembelajaran akan dimulai dengan Pengenalan Mikrokontroler, Pemrograman Mikrokontroler dengan Bahasa C, serta memadukan dan mengembangkanya dalam aplikasi robotik.
  • Robotic for Olympiad – merupakan program unggulan yang dikhususkan untuk mempersiapkan peserta, untuk ber-partisipasi dalam event kompetisi robotik. Program ini bersifat khusus, dimana materi pelatihan disusun dan dikembangkan sesuai dengan target lomba. Untuk mengikuti program ini, peserta harus menyelesaikan program Robotic for Kids Advanced terlebih dahulu, atau memiliki pengetahuan dan pengalaman yang menjadi prasyarat.

Selain pelatihan di atas, kami pun menyelenggarakan seminar dan workshop seputar mikrokontroler dan robotik, serta pelatihan khusus untuk mempersiapkan tim dalam kompetisi robotik.

Program Bimbingan Tugas Akhir

Sejak tahun 2009, NEXT SYSTEM Robotics Experience Center menyelenggarakan sebuah program khusus, Bimbingan Tugas Akhir, dengan pembatasan pada bidang mikrokontroler dan robotika.

Program ini dikhususkan untuk peserta mahasiswa yang merasa perlu mendapatkan pembekalan, pengalaman dan bimbingan; khususnya dalam rancang bangun proyek tugas akhir yang tengah dikerjakannya.

Dalam program ini, mahasiswa akan mengikuti program pelatihan intensif selama beberapa hari, dengan fokus pada dasar-dasar mikrokontroler dan robotika. Bagian ini sangat penting untuk memberikan modal kepada peserta sebelum memasuki tahapan berikutnya.

Selama pelatihan, peserta akan berhadapan dengan sejumlah kegiatan praktek, untuk membumikan pengetahuan teori yang dipahaminya. Kegiatan ini akan memberikan pengalaman kepada peserta. Pengalaman inilah yang akan menjadi modal utama untuk mengerjakan proyek tugas akhir.

Program Bimbingan Tugas Akhir akan mengasah kemampuan dan kompetensi peserta, sehingga pada saatnya, mereka akan mandiri dalam menyelesaikan tugasnya.

Harus diakui, pengalaman praktek mahasiswa selama masa perkuliahan, sangat minim. Sehingga, ketika dihadapkan pada konteks tugas akhir yang menuntut pengalaman untuk menyelesaikannya, membuat perjalanan penyelesaian tugas akhir menjadi terhambat.

Setelah melalui proses pembekalan intensif, peserta akan memasuki tahapan bimbingan. Pada tahapan ini, peserta wajib menyelesaikan tahapan-tahapan pengerjaan tugas akhirnya secara mandiri. Tim mentoring menempatkan diri sebagai supervisor sekaligus rekan diskusi. Demikian, sampai proyek selesai.

Dengan pengalaman yang dimiliki selama mengikuti program, diharapkan, peserta dapat mengikuti proses ujian sidang dengan tingkat percaya diri yang tinggi.

Dalam program Bimbingan Tugas Akhir, NEXT SYSTEM tidak pernah dan tidak akan pernah membuatkan proyek untuk peserta; karena keberadaan program ini semata-mata untuk memberikan pengalaman kepada peserta, sehingga yang bersangkutan dapat menyelesaikan proyeknya secara mandiri.

Dalam program Bimbingan Tugas Akhir, kami membatasi jumlah peserta yang mengikutinya. Dalam program ini kami mengusung semangat dan motto – Merubah Pasir Menjadi Mutiara!

Untuk informasi lebih lanjut mengenai seluruh program pelatihan dan pemberdayaan yang diselenggarakan, silahkan menghubungi:

NEXT SYSTEM
Robotics Learning Center
ITC Kosambi F2
Jl. Baranang Siang 6-8
Bandung 40112
Telp. (022) 4222062, 085100775874
WhatsApp: 085102238024, 085100775874
Instagram: @nextsystem.id

Email: info at nextsys dot web dot id atau nextsystem.robotics at gmail dot com

Mikrokontroler: Sebuah Catatan Pemula

Di era digital saat ini, keberadaan mikrokontroler dan mikroprosesor sudah menyebar sedemikian dekat dgn kehidupan kita. Kedua, keberadaannya yang semakin mudah dijangkau, baik dari sisi biaya maupun penguasaannya.

Sewaktu kuliah dulu, mikrokontroler belum populer. Waktu itu hanya diperkenalkan mikroprosesor Z80, itupun di tingkat akhir. Jadi, belum sempat ngoprek sudah harus lulus 🙂

Baru beberapa tahun terakhir menyimak perkembangan mikrokontroler, ternyata perkembangannya memang luar biasa. Perubahannya menggelinding sedemikian cepat, sesaat setelah Intel membebaskan rancangan arsitektur 8051-nya.

Di awal 1980an, untuk bermain mikrokontroler, tidak ada pilihan bahasa pemrograman. Mutlak harus menggunakan assembly. Bahkan waktu programming Z80, yang di-input adalah machine code dalam heksadesimal. Rumit sekali!

Sekarang, ada sejumlah pilihan bahasa pemrograman, yang semuanya menawarkan kemudahan, sehingga semakin banyak orang memasuki dunia kontrol dan otomasi. Untuk pemula, bisa mulai dengan BASIC atau PASCAL yang cukup ramah. Untuk tingkat berikutnya bisa mencoba C. Untuk yang ingin mempertahankan idealisme, bisa tetap bermain di Assembly 🙂

Modul-modul pendukung pun sangat banyak. Mulai dari sistem minimum sampai asesorisnya. Jadi, untuk memulai, pemula awam tidak perlu menyolder atau hunting komponen, tapi bisa memulainya dgn cara modular seperti mainan LEGO. Yang penting, hasil atau aplikasinya bisa langsung terlihat, tanpa harus jungkir balik membangunnya. Lebih mudah, lebih cepat, hemat usia 🙂

Mikrokontroler: Idealisme dan Aplikasi

Dalam diskusi dengan beberapa pemain mikrokontroler, ada satu isu yang mengemuka, apakah kita akan bertahan dengan idealisme? Artinya, setiap pengguna mikrokontroler haruslah menggunakan bahasa assembly sebagai bahasa pemrograman, atau lebih fokus pada aplikasi, tanpa menghiraukan bahasa pemrograman yang digunakan?

Harus diakui, belajar assembly tidak mudah. Sehingga, dalam masa pembelajarannya, kerap kali, kita kehabisan waktu, sehingga banyak proyek menjadi terbengkalai alias tidak selesai.

Dalam diskusi tersebut, muncul perdebatan yang sangat hangat. Perdebatan baru berhenti setelah seorang teman yang sangat senior berkata, “Kalian memperdebatkan idealisme, siapa paling hebat dalam hal assembly. Mohon maaf, berapa banyak aplikasi yang sudah kalian buat?

Saya kira, soal bahasa pemrograman yang digunakan, tidak perlu diperdebatkan. Yang penting, hasil atau aplikasinya ada, selesai dan bisa segera dimanfaatkan. Menggunakan assembly tidak masalah. Menggunakan C atau BASIC pun tidak masalah. Terkadang, pengguna mikrokontroler merasa kurang afdol kalau belum menguasai assembly. Ya, silahkan saja. Yang penting, jangan sampai kehabisan waktu, sementara proyek yang dikerjakan tidak kunjung selesai 🙂

Harus diakui, untuk proyek yang menuntut respons yang segera (real time), mau tidak mau, suka tidak suka, assembly adalah pilihan. Untuk kebutuhan seperti ini, mikrokontroler yang digunakan pun harus gegas dan memang dikhususkan untuk operasi real time.

Namun dalam perkembangan terakhir, terdapat fenomena yang menarik untuk disimak. Ada sebuah pergeseran konsep disain yang dilakukan oleh sejumlah pengembang chip mikrokontroler. Dua varian, AVR dan PIC, menggunakan rujukan Bahasa C dalam pengembangan sejumlah produknya – C Optimized. Artinya, chip-chip tersebut memang dirancang untuk diprogram secara optimal dengan Bahasa C.