全盲のための組み込みシステム入門

初めに

なにやら大げさなタイトルだが、ようはマイコンで遊ぼうということだ。 パソコン上でプログラムを書いて、そのパソコン上でHello Worldと表示させていてもあまり面白くはない。 むしろプログラムでロボットを動かしたり、ラジコンの玩具を作ったりということの方が私は「プログラムを書いた」という喜びを 感じる。前から組み込みコントローラであるマイコンについて全盲者がどうやって遊んだらよいだろうかということを 書きたいと思っていた。 やっと気分が書いてみようかなという方向になってきたので、いつものごとくだらだらと これから時間をかけて書いて行きたいと思っている。

[an error occurred while processing this directive]

PICマイコンの概要

PICマイコンとはなにかということだが、簡単にいうと、パソコンで書いたプログラムをパソコンからUSB等を利用してPICマイコン本体に書き込んでやることによって、簡単な電気制御ができるLSI(IC)である。

例えば、LEDを1秒おきにちゃかちゃか点滅させるとか、ブザーを1秒おきにならす、簡単なメロディーを鳴らす、ロボットやラジコンなどで利用されているモーターを制御するというようなことが、2,30行ぐらいのプログラムを書くことによって、簡単にできるのだ。

例えば、上の例で上げた、LEDをちゃかちゃか点灯させるということをプログラムを書かずにトランジスタ、コンデンサ、抵抗を集めて組もうと思うと トランジスタ2こ、コンデンサを数本、抵抗も数本、もちろんLEDも必要だがこれだけの部品を集めて、マルチバイブレーターという回路を組まなければならない。それに加えて、 コンデンサと抵抗での時定数や、その他の回路定数を決めて計算して初めてそれで1秒おきにちゃかちゃかさせると いうことになる。これはかなり知識も必要になり、マルチバイブレーターの概要を理解するのは小学生でもできるとは思うが、ちゃんと理解しようとすると、理工系の大学の1年生ぐらいの数学や電磁気学の知識とが必要となる。

ところがそれが2,30行ぐらいのプログラムを書くことによって、何秒おきにLEDやブザーを鳴らすかということが制御でき、部品もPICマイコン本体、LED1ほんあるいはブザー、抵抗1ポン、コンデンサ1ポンでできる。電気的な知識と言えば、オームの法則を知っていれば間に合う。

それに間違ったプログラムを書き込んでも何度でも書き込み直しができる。PICマイコン本体も100円しないものが殆どである。

上の書き方だと誤解を受けそうなので書いて置くが、PICマイコンを利用すれば電磁気学や数学の知識が不要ということではまったくない。PICマイコンは、マイコンの1番ピンにこれだけの電気を一定の時間だけ流してとかというようなことをするだけなので、もちろんPICマイコンが制御する対照は電気部品であったり、電気的に動作するセンサーであったり、モーターであったりというように、制御する対照の部品の動作をしっていないと最終的には困ることになる。 PICマイコンは、マイコンといっているようにいわゆるデジタルなものだが、制御する先はアナログ回路が殆どで、アナログ回路の知識があればかなり有利になる。 PICマイコンは、電気回路の黒幕といっても間違いではないだろう。

全盲者がPICマイコンで遊ぶ場合

ブレッドボードの薦め

これはPICマイコンを利用する場合に限ったことではないのだが、全盲者が電子工作をしようと思った場合、「はんだ付け」はどうすんの?ということになる。 もちろんユニバーサル基板を利用して最終的にははんだ付けをして、回路をくめるようになれば大成功だと思う。ユニバーサル基板でのはんだ付けは全盲でも十分に可能だ。これについては 全盲のはんだ付けの方法 に書かせて頂いた。動画もアップしてある。 ところが、はんだ付けをまったく利用しなくてもかなり電子工作は楽しめるし、それにPICマイコンでは利用する部品が少なくなるという利点もありいろいろなことができる。

基板としては「ブレッドボード」というものを利用すればはんだ付けは不要となる。

ブレッドボードとは、碁盤の目のように一定間隔(2.54mm)で部品の足を挿すための穴が空いていて、それらの穴は5こぐらいの集まりで一つのグループになっていて、それらが電気的に導通している。 なので、部品同士の足を電気的に接触させたければ同じグループの穴にそれらの足を挿せばそれでよい。 ブレッドボードは、実験とか試作のためのかいろをちょっと組んだりするのに利用されるが、一般の人もブレッドボードで電子工作を楽しんでいる人もかなり多い。 なので自分ははんだができないからと負い目を感じる必要はない。 いろいろと経験をして最終的に自分でブレッドボード上に組んだ回路が、ユニバーサル基板に乗せることができれば よいのだが、私はブレッドボード上だけでも、電子部品の動作や、マイコンの勉強は十分に学べると思う。 具体的なブレッドボードの説明は実際に利用するときに説明したいと思う。

テスターはどうするの

電子工作と言えばやはりどうしても簡単なテスターがほしいところである。 全盲が利用できるテスターというものがなかなかないと思われているが、それが結構デジタルテスターだったら利用できそうなものが簡単に手に入る。 テスターに関しては以下のページを見て頂きたい。 全盲でも利用できるデジタルマルチメータ(テスター)について

PICマイコンにプログラムを書き込む道具は?

自分の使い慣れたエディタでプログラムを書いて、コンパイルしてできた機械語のファイルをパソコンからPICマイコンに転送することによって、初めてPICマイコンは動く。 プログラムというと、自分のパソコンで書いてそれをそのパソコンで動かすというようなことが思いつくのだが、PICマイコンにはもちろんプログラムをコンパイルする機能はないし、ましてやキーボードは付いてない。OSも乗るようなCPUではないのだ。大きさも、親指の頭ぐらいのものである。 ということで、WindowsパソコンやLinux環境でプログラムをコンパイルしてPICマイコンに書き込む。大げさに言えばクロスコンパイルするのだ。

私はWindows XP上でPCトーカを利用して、Microchip社が無量で提供しているPICマイコンのプログラム環境のMPLAB IDEというものが利用できることを確認している。もちろんPCトーカで利用できるので他のスクリーンリーダでも利用できるだろう。 MPLAB IDEはマイクロチップ社のWebサイトからダウンロードできる。

さて、上のMPLAB IDEはプログラムを書いてコンパイルするだけである。コンパイルしてできた機械語プログラムを、USB等を利用してPICマイコンに書き込むためのハード的な道具が必要である。

いろいろなものがあるのだが、これはやはりマイクロチップ社が出しているPICkit2というものを利用するのが便利で全盲には使いやすい。 PICkit2には、PICkit2スタータキットというものと、PICkit2デバグエクスプレスというものがあるが、どちらでも良い。本体と、デモ用のボードが付いてくる。だが本体のみで十分であるのだが、本体だけ単品で手にはいるかはわからない。 どちらにすればということだが、ちょっと値段はするのだが、スタータキットの方が良いかもである。これは上にも書いたとおり、デモ用のボードと、サンプルプログラムが10こ付いてくるので、すぐに試すことができる。 が、べつにそのデモボードがなくてもPICマイコンはできるのでPICkit2本体だけで十分なのだが。

次回はこの続きを書きたいと思う。 次回はプログラミング環境を整えて、PICマイコンでブザーを鳴らすところまで書きたいと思う。

トップページに戻る