Categories
Mikrokontroler satelit

Indonesian Cansat Training Program

The CanSat Leader Training Program (CLTP) is a training course, conducted by UNISEC Japan, that was established for participants to experience the entire cycle of CanSat development from the design to launch of model rockets. Through the program, participants will learn the space technology and teaching methods utilized in space engineering. CLTP held in Japan in every year and followed one of them by representatives of Indonesia, Dr. Agfianto Eko Putra, in 2011. The CanSat Model of developing satellite is suitable for education of aerospace technology, especially satellites, due to a more affordable range of funds independently and components that are easier to find.

Universitas Gadjah Mada, especially Electronics and Instrumentation Dept., has adopted to implement the CanSat education among undergraduate students to develop Indonesian CanSat Training Program. In 2012, as the early years, it has been formed several teams for CanSat development. The membership of each team is 3 or 4 undergraduate students. Every team must design the mission, hardware, and software of the satellite independently. Several constrains are given in the form of dimension, mass, and power used by the satellite. The dimension of Cans is limited to 65 mm of diameter and 150 mm of the height. The maximum weight allowed is 350 grams. Maximum power used must be less then 1300 mAh. For the microprocessor unit, every team must use the PIC16F877, the microcontroller that suitable for satellite environment. Sixteen teams was formed, while the stages that has been done are MDR (Mission Design Review), PDR (Preliminary Design Review) and developing the FM (Flight Module).

(download the PDF format for this paper which was poster-presented at the 4th UN/Japan Nano-Satellite Symposium in Nagoya on October 10-13, 2012)

Categories
Mikrokontroler

Memanfaatkan EEPROM internal Mikrokontroler PIC16F877

Jika Anda belum tahu apakah EEPROM itu, silahkan klik disini. Artikel kali ini akan mengulas tentang pemanfaatan EEPROM internal pada mikrokontroler PIC16F877 yang memiliki kapasitas 256 Byte. Cukup besar untuk menyimpan data-data kritis, data-data parameter dan lain sebagainya yang tidak boleh terhapus saat catu daya ke Mikrokontroler tidak ada lagi (bersifat non-volatile).

Bahasa C menggunakan kompilator CCS sudah menyediakan beberapa instruksi yang terkait dengan pemanfaatan EEPROM ini, lantas bagaimana rangkaian yang digunakan? Wah mudah banget, lha wong cuman pake EEPROM internal ya pake saja rangkaian minimum atau yang dibutuhkan saja, contohnya liat gambar berikut.

Categories
Mikrokontroler

PIC16F877 Microcontrollers – Introduction

If you know about Microcontoller keep read it, if don’t please read my Introduction to Microcontroller first (click here or click here, all in Indonesian language, sorry).

Do you know that not only Atmel AVR is the microcontroller. The other is PIC16F877 (or PIC16F87X: PIC16F873, PIC16F874, PIC16F876 and PIC16F877), one of the microcontoller made by Microchip Inc.. There are many families for the PIC microcontroller, the PIC16F877 is the PIC16 family. PIC16F877 is one of the most commonly used microcontroller especially in automotive, industrial, appliances and consumer applications. Take a look at the picture below… (and click it if you want more information at Microchip Inc.)

The PIC16F877 is a RISC (Reduced Instruction Set Computer) Microcontoller, which gives two great advantages:

  • The CPU only recognizes 35 simple instructions. Just to mention that in order to program other microcontrollers in assembly language it is necessary to know more than 200 instructions by heart.
  • The execution time is the same for almost all instructions, and lasts for 4 clock cycles. The oscillator frequency is stabilized by a quartz crystal. The execution time of jump and branch instructions is 2 clock cycles. It means that if the microcontroller’s operating speed is 20MHz, the execution time of each instruction will be 200nS, i.e. the program will execute 5 million instructions per second!

Categories
Mikrokontroler

Belajar Mikrokontroler itu Mudah!

Sebenarnya, siapa saja yang perlu belajar mikrokontroler? Apakah hanya monopoli rekan-rekan di ELINS atau Teknik Elektro saja? Tidak, sama sekali tidak. Beberapa pembaca buku saya “Belajar Mikrokontroler AT89C51/52/55: Teori dan Praktek” berasal dari (berdasar email yang masuk dari seluruh Indonesia):

  • Para peminat atau hobyis dengan berbagai latar belakang pendidikan;
  • Pelajar SMA dan STM, bahkan tidak menutup kemungkinan pelajar SMP-pun berhak mendapatkan ilmu mikrokontroler, jika mereka berminat;
  • Mahasiswa teknik (khususnya Elektro, Industri dan Fisika), MIPA (khususnya ELINS dan Ilmu Komputer) maupun dari beberapa disiplin ilmu lainnya.

Kenapa mudah? Karena modalnya (1) Tekad dan (2) Menguasai atau minimal memahami logika dan algoritma. Hal ini disebabkan pemrograman mikrokontroler banyak membutuhkan cara berpikir yang logis dan terstruktur.

Untuk pemula saya sarankan menggunakan BASIC Stamp atau mikrokontroler dengan pendekatan bahasa BASIC atau yang sudah dipahami sebelumnya seperti Bahasa C, karena banyak kemudahan yang ditawarkan, mulai dari pembuatan rangkaian aplikasi hingga pemrogramannya. Lantas sarana belajar apa saja yang perlu disiapkan?

  • Buku-buku bacaan Mikrokontroler yang mudah dipahami, tidak hanya menggunakan bahasa yang Anda pahami (Indonesia) tetapi dituliskan atau disampaikan dengan cara yang relatif mudah dipahami.
  • Perangkat lunak kompiler atau cross assembler yang berkaitan dengan mikrokontroler yang dipelajari, ini digunakan untuk mengubah program kita menjadi siap untuk dieksekusi atau dijalankan oleh mikrokontroler yang bersangkutan. Bagaimana cara mendapatkan kompiler tersebut? Download saja dari website mikrokontroler yang bersangkutan (biasanya mereka menyediakan secara gratis).
  • Penting juga untuk menyediakan sebuah perangkat lunak lengkap yang bisa melakukan penggambaran rangkaian dan simulasi program mikrokontroler secara internal maupun visual secara real-time.
  • Perlu juga membuat rangkaian pemrogram (donwloader) atau papan pengembang atau langsung rangkaian aplikasi untuk melihat langsung hasil pemrograman mikrokontroler yang dilakukan.

Adakah perangkat lunak yang bisa untuk melakukan simulasi secara internal maupun visual? Tentu saja ada, hanya saja komersil dan harganya mahal sekali. Akan saya jelaskan ebook gratis saya yang bisa diunduh disini… monggo…

Categories
Mikrokontroler

Apakah Mikrokontroler itu?

Jika kita bicara tentang Mikrokontroler, maka tidak terlepas dengan pengertian atau definisi tentang Komputer itu sendiri, mengapa? Ada kesamaan-kesamaan antara Mikrokontroler dengan Komputer (atau Mikrokomputer), antara lain:

  • Sama-sama memiliki unit pengolah pusat atau yang lebih dikenal dengan CPU (Central Processing Unit);
  • CPU tersebut sama-sama menjalankan program dari suatu lokasi atau tempat, biasanya dari ROM (Read Only Memory) atau RAM (Random Access Memory);
  • Sama-sama memiliki RAM yang digunakan untuk menyimpan data-data sementara atau yang lebih dikenal dengan variabel-variabel;Sama-sama memiliki beberapa keluaran dan masukan yang digunakan untuk melakukan komunikasi timbal-balik dengan dunia luar.

Lantas apa yang membedakan antara Mikrokontroler dengan Komputer atau Mikrokomputer? Begitu mungkin pertanyaan yang ada di benak kita, saat kita membaca beberapa daftar kesamaan yang sudah saya tuliskan tersebut. Sama sekali berbeda, itu jawaban yang saya berikan kepada Anda:

Mikrokontroler adalah versi mini dan untuk aplikasi khusus dari Mikrokomputer atau Komputer!

Berikut saya berikan kembali daftar kesamaan yang pernah ditulis sebelumnya dengan menekankan pada perbedaan antara Mikrokontroler dan Mikrokomputer:

  • CPU pada Mikrokomputer berada eksternal dalam suatu sistem, sampai saat ini kecepatan operasionalnya sudah mencapai tingkat lebih dari 2 GHz, sedangkan CPU pada Mikrokontroler berada internal dalam sebuah chip, kecepatan bekerja masih cukup rendah, dalam orde MHz (misalnya, 24 MHz, 40 MHz dan lain sebagainya). Kecepatan yang relatif rendah ini sudah mencukupi untuk aplikasi-aplikasi berbasis mikrokontroler.
  • Jika CPU pada mikrokomputer menjalankan program dalam ROM atau yang lebih dikenal dengan BIOS pada saat awal dihidupkan, kemudian mengambil atau menjalankan program yang tersimpan dalam hard disk. Sedangkan mikrokontroler sejak awal menjalankan program yang tersimpan dalam ROM internal-nya (bisa berupa Mask ROM atau Flash PEROM). Sifat memori program ini non volatile, artinya tetap akan tersimpan walaupun tidak diberi catu daya.
  • RAM pada mikrokomputer bisa mencapai ukuran sekian MByte dan bisa di-upgrade ke ukuran yang lebih besar dan berlokasi di luar chip CPU-nya, sedangkan RAM pada mikrokontroler ada di dalam chip mikrokontroler yang bersangkutan dan ukurannya sangat minim, misalnya 128 byte, 256 byte dan seterusnya dan ukuran yang relatif kecil inipun dirasa cukup untuk aplikasi-aplikasi mikrokontroler.
  • Keluaran dan masukan pada mikrokomputer jauh lebih kompleks dibandingkan dengan mikrokontroler, yang jauh lebih sederhana, selain itu, pada mikrokontroler tingkat akses keluaran dan masukan bisa dalam satuan per bit.
  • Jika diamati lebih lanjut, bisa saya katakan bahwa Mikrokomputer atau Komputer merupakan komputer serbaguna atau general purpose computer, bisa dimanfaatkan untuk berbagai macam aplikasi (atau perangkat lunak). Sedangkan mikrokontroler adalah special purpose computer atau komputer untuk tujuan khusus, hanya satu macam aplikasi saja.

Perhatikan gambar berikut agar Anda mendapatkan gambaran tentang mikrokontroler…

ALU, Instruction Decoder, Accumulator dan Control merupakan Otak-nya mikrokontroler yang bersangkutan. Jantungnya berasal dari detak OSC (lihat gambar sebelah kiri atas). Sedangkan di sekeliling ‘Otak’ terdapat berbagai macam periferal seperti SFR (Special Function Register yang bertugas menyimpan data-data sementara selama proses berlangsung), Memori RAM (tugas hampir sama seperti SFR hanya saja tidak berhubungan langsung selama proses operasional mikrokontroler), ADC (untuk mengubah data-data analog menjadi digital untuk diolah atau diproses lebih lanjut), EEPROM (sama seperti RAM hanya saja tetap akan menyimpan data walaupun tidak mendapatkan sumber listrik/daya) dan port-port I/O untuk masukan/luaran, untuk melakukan komunikasi dengan pihak-pihak eksternal mikrokontroler (sensor dan aktuator).

Ciri khas mikrokontroler lainnya, antara lain:

  • ‘Tertanam’ (atau embedded) dalam beberapa piranti (umumnya merupakan produk konsumen) atau yang dikenal dengan istilah embedded system atau embedded controller;
  • Terdedikasi untuk satu macam aplikasi saja (lihat contoh-contoh yang akan saya terangkan pada bagian berikutnya);
  • Hanya membutuhkan daya yang rendah (low power) sekitar 50 mWatt (Anda bandingkan dengan komputer yang bisa mencapai 50 Watt lebih);
  • Memiliki beberapa keluaran maupun masukan yang terdedikasi, untuk tujuan atau fungsi-fungsi khusus;
  • Kecil dan relatif lebih murah (seri AT89 di pasaran serendah-rendahnya bisa mencapai Rp. 15.000,00 sedangkan Basic Stamp bisa mencapai Rp. 500.000,00);
  • Seringkali tahan-banting, terutama untuk aplikasi-aplikasi yang berhubungan dengan mesin atau otomotif atau militer.

Dapatkan informasi lengkapnya dengan mengunduh ebook gratisnya disini