去年の初めころからRaspberry Pi というクレジットカードサイズの電子モジュールのプロジェクトがMakerサイトなどで話題になっており、Arduinoと同じようなものかなあとぼんやり思いつつも、あまり趣味の幅を広めてもしょうがないので手つかずになっていた。
今年の初めに久々に手にした手作りPCの雑誌に80ドルでパソコンを作成、という記事があり、興味をもって読んでみれば、Raspberry Piを使ってLinux machine を作りましょうという記事であり、 これで初めてRaspberry Piのなんたるかを知ることとなった。(以下、Raspberry Piといちいち書くのが大変なのでRPiと略します)
さらにYoutubeでもこのRPiを32台クラスタ化してミニスーパーコンピューターをつくりました、ちなみに機械構造はレゴブロックです、という、なんともおいしそうな話がアップされていた。
で、ネットで調べてみると、ヘッダーでIOピンを直接接続できるということはさておいて、HMDI,SDカードソケット、USBソケットx2、EtherNetソケットX1と最初からコンピューターの周辺機器への接続が可能なようになっている。
それでもすでに自宅には3台のデスクトップパソコン、2台のノートブックとと2台のNASが稼働しているわけで、これ以上コンピューターを増やしてもしょうがないのでほおっておいたのだが…
昨日、他の方のBlogを見ていたら、RPiにWeb Serverを実装する云々、という記述を見つけた。 考えてみれば、 使われているハードの能力が初代のXBoxと同等または若干上、 実装されているRAMが512MB。 SDカードスロットから使うLinuxのImageが2GB程度ということなので、8GBくらいのSDカードを使えば WEBサーバーとして十分いけそうである。 電減が5V700ミリA以上の携帯用チャージャー(パワープラグがミニUSBなのだ)ということなので、520W電源のPCをサーバーとして常時つけっぱなしにしておくのに比べれば、電気代の節約になりそうだ。 ということで言い訳ができたので、さっそくAmazonを眺めてみれば現在主力で売られているmodel Bという機種は42ドルである。 従来見ていた雑誌などの記述では35ドルとあるが、最近ドルは弱いからねえ。
さっそく注文すると同時に、Raspberry PI User Guide というebookを購入した。 ebookのほうは即Nexus 7 Tabletにdownload できたので、現物が到着するのを待ちながら、こちらをぼちぼち読みだしている。
この書籍は2012年の6月頃に出版されており、実際のLinuxの導入などについてはすでに情報が古いと思われるが、この本を書いているEben Uptonという人がRaspberry Pi 産みの親であり、RPiを開発し、販売に至る経緯が詳しく載っていて非常に面白い。
この本を読んでわかったのだが、筆者の思い描くRPiの第一の使用用途は子供たちのコンピューター教育だ。 プログラミングができる若い世代が育っていないことへの危惧、それは現状を眺めてみればゲームを開発したいという希望を述べる高校生がいても実際に聞いてみれば学校”IT class”で習っているのは特定のOSのGUIをエンドユーザーとしてどう使うか、エクセルやワードの使い方や簡単なWEBページの書き方ぐらいで、肝心のプログラミングについては全く知らない。 自宅にある”コンピューター”と言えばxBox とかWiiで実際にプログラミングを勉強できる環境はなく、 例えパソコンが自宅にあったとしても、親が実用として使っていれば、パソコンを壊してしまう可能性が無きにしも非ずのプログラミング学習に避けるような状況でもない。
いわゆるデジタルデバイスの類は用途が固まりすぎていて、子供たちの創造意欲を掻き立てるようなツールにはなりえない。
筆者はプログラミングを教えることによって個人の能力がコンピューターばかりではなく、ほかの分野でも問題解決の思考に役立つという信念を持っていて 大学で教えた経験、そして実際の企業の開発部門の長としての経験から このような(英国の)現状を嘆いていた、ということが文面からひしひしと伝わってくる。
そんな状況で、実質25ドルくらいで10代の子供でも作れるようなプログラミング可能なコンピューターボードを作ってしまおう、という思いからこのプロジェクトは育っていった。 本人に言わせれば”25ドル”と言った覚えはなく、”教科書1冊くらいの値段で購入できる”ということをインタビューで述べたのが、レポーターが親切にドルに置き換えてくれたようで、本人は教科書はもっと高価だと思っていた節がある。
この「子供のために、裕福な家族でなくても出費がかさまないで、個人のパソコンが作れる」いう設計思想が、実機の仕様を決めている。
1)HDMIの出力のほかに古いTVにも接続できるようにRCA出力を備えている。
2)マイクロやミニのSDでは小さすぎて子供たちが扱えないので、普通サイズのSDカード。←古いカメラ類からリサイクルすればよい。
3)電源は巷にあふれているはずの携帯電話の充電器が使えるようにする。
などなど。
OSはフリーのLinux, 最初の試作機の時点ではハードの能力が低かったため、プログラミング言語はPythonに限定。(Raspberry PiのPIはPythonからきている)
ところで 筆者は最初RPi を ABCMicroと呼んでいたらしい。 これと現在発売されている機種がmodel A (Ethernetなし、USBx1)とModel B(Ethernetあり、USBx2) と命名されていることにピンとくる人は英国のパソコン事情に相当通じた人だ。 80年代にBBCが英国の子供たちのコンピューター教育を推進するためにBBCマイクロという構想を立ち上げ、これにコンペで参加したAcorn社のパソコンがその後大量に英国の学校で採用されたという経緯がある。 model A, Model B はその時のBBCMicroのモデル名なのだ。 さすがに英国人である。 茶目っ気がある。
筆者たちが最初にRPiを持って行ったのもBBCだったという。 ところが30年前とは環境が変わっていた。 法律が変わり、テキストブックの販売、教育番組のプロモーションと一緒にハードウエアをうるような以前のような行為は独占禁止の制限からBBCとしてはできない、ということがわかる。
そのかわり、テックジャーナリストが自分のブログに紹介ビデオを掲載してくれることになって、このプロジェクトの存在が知られるようになる(2011年5月)。 最初は数千個のバッチ生産で終わらせることになっていた計画が2011年のクリスマス時点でそれではすまないことが認識されはじめ、購入の意思表示をした人たちが2月29日の発売前にすでに10万人に達した。出荷までに10万台の部品を収集できるめどはなんとか立てたものの、オンラインオーダーの処理、梱包出荷の手間を考えるとプロジェクトの有志だけではいかんともしがたいことを悟り、英国のマイクロ専門業者2社が販売を代行するという合意をとりつけ、2月29日の発売にこぎつけた。
この2社(RS Components, Element14)のWEBサイトは両社とも発売当日注文が殺到したためにクラッシュしてしまい、接続できない状況が続いたという。 一人につき1台という制限がついていたのにもかかわらず、Element14のサイトではピーク時1秒間に7台のRPiが注文された。 この日のグーグルでは”Raspberry Pi”の検索数が”Lady Gaga”を上回った。
ではRPiで実際に何ができるか? 前述したようにIOピンが出ている(GPIO=>,SPI,I2C)ので、直接ハードウエアをたたけるようになっており、Pythonを使ってほかの機器の制御が可能。
メディアセンターとして使用。もともとメディアセンター用に設計されたワンチッププロセッサなのでビデオデコーディングなどに最適。
3Dグラフィックとマルチメディア機能があるので自作ゲームのプラットフォームに使える。
などなど。
実は30年以上前、自分が最初に手にしたコンピューターは英国Sinclair社のZX-80というものである。パーソナルコンピューターとして初めて200ドルを割ったものだった。当時日本から米国に駐在となった自分は日本でNECのTK-80がほしいなあと思いながら手が出せずにいた。米国ではほかにもタンディとかAtariとか売り出しはじめていたのだが、通信販売でSinclairを買った。箱を開けてみたら、何とも小さいおもちゃのような代物がでてきたのを覚えている。しかしながら、Z80のプログラミング、Basicの基本はこれで覚えた。多くのユーザーと同じように(RFIがあまりにもひどかったので)DIYでアルミの箱に基盤を移し、メモリを亀の子はんだ付けで2倍に増やし、メンブレーンのキーボードもフルキーボードに移植した記憶がある。 その後、フロッピー付きのTRS-80 に移行したが、Sinclairにはかなりの思い入れがある。 上記のユーザーガイドでもSinclairのZX-81 やspectrumに触れるくだりがあり、非常に懐かしかった。
今回購入したRPiについてはサーバーにしてしまうつもりだが、なんといっても30~40ドルの品物である。 もう一台買って少し遊んでみようか、と最初の一台が到着する前からいろいろ妄想を膨らませている。