Gokiraji, Roboroach
“Gokiraji” is a combination of “Gokiburi” (cockroaches) and “Rajikon” (remote-controlled). This is Gokiraji, the Japanese electronic cockroach which can be charged with USB.
The price is about 21 US dollars.
In robotic, there are two research fields which related to animal and robotics. First, biomorphic robotic is a sub-discipline of robotic, focused on emulating the mechanics, sensor systems, and computing system to mimic the behaviour of animals (wiki). The other is animatronic, which is the use of mechatronic to animate rather than robotic (wiki: en,de). Jurassic Park, the movies, are example of the usage of animatronics.
Nürnberg, 13 Mei 2012
cpp & cmm
Beberapa minggu lalu, kudapat pekerjaan mendebug (menghilangkan kutu?) software eh perangkat lunak pada ECU mesin Chrysler Tiger Shark. Mesin ini akan digunakan di tahun 2013 pada mobil Dodge Dart. Suatu alat bernama Trace32 dari perusahaan Lauterbach digunakan untuk mendebug.
Alat ini terdiri dari perangkat keras dan lunak. Perangkat lunaknya memiliki tampilan GUI yang dibuat dengan Qt. Perintah-perintah teks yang dipakai menggunakan bahasa Python. Cara mengonfigurasi Trace32 mengandung file cmm. Apa itu file cmm?
CMM adalah C minus minus, lawan kata dari C plus plus (C++). Pada C++, file cpp digunakan untuk source code. Pada C, tentu saja file c. Bahasa C/C++ adalah bahasa pemrograman terstruktur, sedangkan CMM adalah bahasa scripting. Dengan CMM, kita membuat batch untuk menjalankan beberapa perintah pada Trace32.
Bahasa C ada sejak tahun 1971, menggantikan bahasa B yang lahir tahun 1969. Berbahasa C sangat baik buat orang yang senang dengan suatu bahasa pemrograman yang dekat dengan bahasa level rendah seperti assembly yang kata orang jaman dahulu disebut sebagai bahasa mesin. Orang yang ingin mengerti bagaimana hubungan prosesor dan memori bekerja, bisa mengutak-atik konsep pointer dan reference dalam bahasa C. Sebetulnya, aku juga masih tak mengerti tentang ini, jadinya suka kena error yang bukan compiling error. Biasanya galat ini disebabkan aku kelupaan melakukan release atau delete pointer.
Bahasa C mulai ditambah dengan konsep class dalam pemrograman berorientasi objek (OOP) pada tahun 1983. C with classes ini kemudian dikenal sebagai C++. Begitulah nostalgia C/C++. Pointer digabung dengan class adalah cara yang dipakai programmer jaman sekarang untuk membuat dan memakai handle pada Qt, COM, ActiveX, dan berbagai perangkat lainnya.
Kalau ingin belajar konsep OOP (object-oriented programming) yang sesungguhnya, Java adalah bahasa yang tepat. Bahasa Java ini sejak 1991. C++ adalah bahasa tanggung. Berbahasa C++ seperti berdiri di atas dua kaki. Satu kaki C dengan kerumitan pointer dan satu kaki OOP tanggung.
Pada tahun 1992, perusahaan Nombas berusaha membuat suatu bahasa scripting untuk embedded system. Bahasa ini harus cukup tangguh menggantikan makro dan cepat dipelajari seperti C++. Hasilnya adalah C minus-minus (cmm). Bahasa ini masuk dalam suatu “package” shareware CEnvi. Menurut sejarah, ide dari cmm ini melatarbelakangi pembentukan Java Script di tahun 1995.
Nah, kembali ke embedded system. Bulan ini dan bulan depan, aku perlu mempelajari cmm. Bahasa scripting ini penting karena ECU buatan Chrysler dan Continental ini belum berhasil didebug. Proyek-proyek lain dari Fiat yang menggunakan ECU dari Magneti Marelli, telah bisa didebug. Semoga bahasa ini bisa kupelajari dengan cepat demi masa depan cerah di bidang ini.
Gaptek yang tak kunjung padam!
Habis gaptek terbitlah terang ilmu!
Nürnberg, 21 April 2012
Information transfer rate (ITR) and Poco-poco dance
Information transfer rate ()
with as bits per transfer and
as speed
Speed/rate ()
with as good information transfer,
as error and
is transfer time
Bits per transfer ()
with as the number which shows how many kinds of information you can transfer,
as the accuracy, which means the number of good information (
) divided by the total information
Accuracy ()
***
First Example:
I am learning how to dance. The basic steps are just go to left and right. The dance instructor will tell “left” and “right”.
One example is “left, left, right, left, right, right, left, right” That are first eight step of line dance.
In this case, the information type is just LEFT and RIGHT.
In 15 minutes, the instructor has just taught me a dance routine. There was 100 steps. Fiuh, I am sweating. Because I am a beginner, I made 60 mistakes and 40 good dance.
minutes
The Accuracy ()
percent
The learning speed ()
The bits per learning ()
bits per learning
The information transfer rate
So I am learning how to dance with a rate of 0.2 bits per minute.
***
Second Example:
Now, I learn how to dance Poco-poco. This line dance comes from North Sulawesi in Indonesia.
The basic steps are
- move left
- move right
- move forward
- move backward
- lean forward
- lean backward
- twist left
- twist right
So the number of information types are
More advanced steps are
- cross forward right
- cross forward left
- cross backward right
- cross backward left
- and so on
So can be increasing depending on how well you learn the dance.
You can learn the basic step of Poco-poco from here.
***
Third Example:
Well, in a brain-computer interface experiment, a human subject has to do a task containing commands: LEFT, RIGHT, UP, DOWN. So . The time
, how many successful tasks
and how many mistakes
are measured. In the end, you can calculate the information transfer rate (ITR). More of this example can be read in my master thesis (here: wordpress, blogspot, scribd).
***
Well, I am still looking for books about this bits per transfer equation. It has something to do with information entropy.
Bits per transfer ()
From wikipedia, the binary entropy function ():
with as a probability in a Bernoulli process, containing only 2 states, for example success-failure, yes-no, true-false, on-off, two-side of tossing coin.
From wikipedia, the Shannon entropy function ():
with as a probability mass function of a discrete random variable
with a possible values
,
and as the base or the possible states of
(in a binary or Bernoulli process b = 2)
Entropy is a measure of uncertainty associated to random variable. Shannon entropy quantifies expected value of information contained in a message. In binary process, it is quantified in bits.
Other reference:
- J.R. Wolpaw, N. Birbaumer, D.J. McFarland, G. Pfurtscheller, and T.M Vaughan, “Brain-computer interfaces for communication and control,” Clinical Neurophysiology, vol. 113, pp. 767-791, 2002.
- M. Cheng, X. Gao, S. Gao, and D. Xu, “Design and Implementation of a Brain-Computer Interface with High Transfer Rate,” IEEE Transactions on Biomedical Engineering, vol. 49, pp. 1181-1186, October 2002.
- Atmawan-Bisawarna,I.S.C., “Improvement of Response Times in SSVEP-based Brain-Computer Interface,” Master thesis, Information and Automation Engineering, University of Bremen, 2010.
Nürnberg, 17 Maret 2012
Ethical Questions on Brain Computer Interface, by Paul Root Wolpe
Paul Root Wolpe had a talk “It’s time to questions bio-engineering” on TED.
In the talk, there are applications of Brain Computer Interface (BCI):
- Monkey controls robotic arm with brain computer interface. The monkey sits in a room watching monitor and are put on EEG electrodes. In other room, there are robotic arm and camera. The monkey can see from the monitor what happens to robotic arm in the other room through camera. First, the monkey moves his own arm and robotic arm will make the same movement. After some repetitions, the monkey stops moving his arm and the robotic arm moves with the monkey’s will.
- Flies and other insects are put on a chip to their “brain”. Then engineers can control the insects to fly with a remote control. Infact, engineers and scientist have made breakthrough with mammals: rats. Here animals are losing the autonomy of their bodies. There are ethical questions on consciousness and autonomy.
- Eels’ brain is put in gel which is put on electrodes. This bio-electronic system is put in a mobile robot as the main controller. The robot has a sensor and wheels. The robot can move toward the light although there are no programming codes to do so. A robot which is directly controlled by brain. (My notes: other researchers in different countries have successfully use rat brain tissues, see here)
Enjoy the video:
http://www.ted.com/talks/paul_root_wolpe_it_s_time_to_question_bio_engineering.html
Nürnberg, 26 Februari 2012
Bandung Brain Computer Interface
Quadrotor Dance, Pennsylvanian style
Watch dancing nano quadrotors from GRASP Lab, University of Pennsylvania!
It is an example of swarm robotics.
GRASP is General Robotics, Automation, Sensing and Perception. The researchs in this lab focus on robotics.


