『ロボット工作』(山びこ通信2012/2より)

『ロボット工作』 (担当:福西亮馬)

image106

今学期は、ロボットの仕組みを深く理解するために、ある時、モーターの代わりに7セグメントLEDという表示器をつないで点灯させるという実験をしました。

LEDの7か所の電流を、ON、OFFすることで、0~9、A~Fといった数字や文字を表示させることができます。そのような制御をロボットのマイコンを使ってしようというわけです。

マイコンにはちょうど7つの出力ポートがあります。まずそれとLEDとを配線しなくてはなりません。

次に2進数でプログラム(命令)を書きます。たとえば「1」を表示させるにはB’0011000’、「2」にはB’0101111’…といった具合に、一体「どこ」と「どこ」の電流をON(プログラム上の1)にしてドライブすれば望みの表示が得られるかで、LEDと2進数との「対応表」を作らなければなりません。どれも「にらめっこ」しながらの作業です。

そして、もしLEDの表示がおかしければ、それが配線によるのか、プログラムによるのかといった問題の切り分けが必要となります。そのようにロボットの基板やデバイス、プログラムのことをよく理解していないとできないのが、今回の勉強でした。

最初は1年生と2年生とに分かれ、どちらのチームが先にLEDを望んだように光らせることができるかで競走しました。先に述べたように、作業は二つあります。一つはハード面で、配線の作業。もう一つはソフト面で、プログラムの作業です。

結果は、さすがは2年生たち。ロボットの基板についてもプログラムについてもよく理解していた彼らは、自分の得意な所で役割分担をし、いち早く「0,1,2,…D,E,F」「0,1,2,…D,E,F」と光らせることに成功していました。私はどちらのチームも授業2回分はかかるだろうと踏んでいたのですが、お見事です。

image110

しかし、それだけで終わりではありませんでした。実際には、この後の方が素晴らしいと感じました。私は2年生たちに、次の課題として1年生たちに「教える」ことを頼みました。教えるには、3倍理解していないとできないとよく言われますが、その負荷を2年生たちはまじめな面持ちで引き受けてくれて、1年生たちに教えていました。その教え方が実に懇切丁寧でした。1年生たちが「どこでつまっているか」を理解しようと努めており、むしろ私が教えるよりも、遥かに「上手い」と顔負けするほどでした。それが頼もしく思われました。そのような先輩たちの指導のもと、1年生もまた見事実験を成功させてくれました。そのことで2年生たちもまた、さらに自信をつけてくれたように感じました。

image108

今は、各自、それまでに作ってきたロボットについて、人前でも発表できるようにレポートを書いてもらっています。それによって、先輩から後輩へと「伝授」する伝統ができればいいなと思います。

(福西亮馬)