電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた!
『電子工作』
なんとなく興味はあるけど、電気回路なんてまったくわからないし、はんだごてとか使うのもやたら危なそうだし...というイメージが(少なくとも個人的には)ある電子工作の世界。
そんなイメージは、とあるセミナーでぶっ壊されました。
なんと、最近の電子工作の世界は「プログラミング未経験でもperlでCGIやPHPぐらいならできそう」と同じくらいのところまできていたのです。
たとえば、PCを使わずに「人が通ったことをセンサーで感知して、自動的にtwitterにpostする機械」を、電子工作経験がほぼゼロの僕でもちょっとがんばれば作れそうと思えるぐらいでした。
「できたらいいなあ」が「やればできちゃう」ぐらいになってて、なんだか、視野がぐぐっと広がった感じがしてかなりテンションがあがりました。
そのセミナーというのは「オープンソースハードウェアセミナー」というブロガーイベントでした。
オープンソースハードウェアセミナー vol.1に行ってきた
オープンソースハードウェアセミナーを知ったのは「キャズムを超えろ!」さんの「5/11@渋谷でArduinoブロガーイベントやります ~組み込みソフトに興味はあるけどやったことない!というブロガー向け~ - キャズムを超えろ!」の告知でした。
最初この告知を見たときはオープンソースハードウェアという単語は知らなかったのですが、赤松さんが最近ネットと繋がるラジコンとか作ってるので、なんとなく応募したのでした。
で、参加してみたらいろいろすごかったのです。
電子工作の前提をすっとばしてハードウェア上でプログラムを動作させられる!
イベントでは「Arduino(アールドゥィーノ・アールディーノ)」というオープンソースハードウェアを使い、解説やらデモやらが行われました。
手前の足の長い部品はイーサネットシールド。奥の4つがArduino本体。大きいのも小さいのもArduino。基本は同じで、スペックが違います。
Arduinoはどういうものかといいますと、
- 完成品が3500円ぐらいで売られている。
- 自作することもできる(このあたりがオープンソース?)。
- USBでプログラムを転送して、独立して動作させられる。
- プログラムはC言語ライクな独自言語で、C言語なみの高級言語(のように見えた)。
- Arduino IDEというフリーのIDEを使って、Windows・OSX・LinuxでGUIでプログラムを書いて転送までが全部行える(!)。
- これがほんと手軽で、「ソースコードを書いて、転送ボタンを押すだけ」。
- ハードウェアプログラミングは1からやると初期化時のお約束などいろいろやること盛りだくさんなんだけど、それを全部すっとばせる。いきなり「1番目のピンに電気を流す」というコードから書けちゃう。
- 高機能な拡張ボードも売られており、その一つにイーサネットボード(正式名称はイーサネットシールド)がある。
- イーサネットボードのライブラリはよくできていて、DHCPクライアントを初期化する(IPアドレスを取得する)だけなら1行書くだけでOK。
- ソケット通信ライブラリがあり、twitterクライアントライブラリがあるw HTTPクライアントライブラリは未確認。
- Arduinoについている端子には、赤外線LEDや温度センサーなど、およそ電子工作的なものなら何でも接続可能で、プログラムから操作・状態の取得ができる。
- ArduinoをPCに繋ぐと、USBシリアルデバイスとして認識される(Windows的にはCOMポートが追加される)。
...というものです。日本語でOKとか言わない。
twitterに投稿する「ハードウェア」が、15行ぐらいのコードで完成してしまう
イベントではtwitterクライアントライブラリを使ってArduinoからtwitterに投稿するまでのライブコーディングを行っていました。コードだけなら15行前後で、あっという間にできたのでほんとに驚きました。
いわゆる電子工作と聞くと、LEDとか液晶とか、スピーカーとか、いわゆるWebとは直接関係が無いイメージでした。しかし、Arduino+イーサネットボードでWebと繋がることを知ると、あんなことやこんなことが...と想像がぐわーっと広がりました。
Arduinoは電池でも動作するので、モバイルデバイスだって自作することができます。
Webアプリが誰でも気軽に作れるようになったように、電子工作の世界もそうなるかも
このように、まるでできる気がしなかった電子工作が「あ、意外とできるかも?」と思えるところまできていました。ただ実際は電気の知識が不可欠なところは多いので、勉強無しにはできません。
ただし今はネットが無かったころと違って、わからないことがあれば検索したり質問したりすることができます。イベントスタッフの方も「わからないことがあったら検索すれば見つかることが多いです」と言っていました。
perlやPHPなどでWebアプリ開発の敷居が劇的に下がり、プログラム未経験でもWebアプリ開発を始める人が続出したように、オープンソースハードウェアでも同じようなことが起こるかもしれないと思いました。ソフトウェアほどには手軽ではないにせよ、かなり変化の波が来ているのだなあと思いました。
その他、イベントで印象的だったこと
- イベントスタッフの電子工作に詳しい方いわく「僕らが普段使い慣れている単語なのに、その単語がプレゼン中に出てきたときに、みなさん一斉にメモを取っていたのが印象的だった」(このイベントに参加しているブロガーは、電子工作に詳しくない、プログラム経験のある方がメインでした)
- まったく知らない単語を連発されると、電子工作経験者的に簡単なことを「誰でもできますよ」と言われても「できないよ!できる気しないよ!日本語でOK!」とか思ってしまった。でも自分もperlやPHPでのプログラミングを「誰でもできるよ」と言うことがあるので、ちょっと考えさせられた。あまり良い言い方ではないかも。でも簡単さをアピールするのに便利にな言い回しなのでタイトルに使っちゃいましたが。
- ブレッドボードというものがあることを知った(イベントで使用していた)。ブレッドボードははんだごて無しでリード線やセンサを繋ぎ合わせて回路を作れる超便利なもの。今まではんだごては必須だと思っていたので、かなり衝撃だった。(参考:武蔵野電波のブレッドボーダーズ)
オープンソースハードウェアセミナー vol.1はチップワンストップさんが主催でした
最後にお知らせです。オープンソースハードウェアセミナー vol.1はチップワンストップさんという、電子部品の販売や投資事業を行っている会社さんの主催で開かれました。そして、イベント参加者にはArudinoが希望者にのみ無料で配布されました。僕はもちろん希望しました。
以下のバナー掲載はそのモニタープログラム参加の条件です。よろしくお願いいたします
[Arduinoモニタープログラム参加中]
電子部品・半導体の通販サイト - チップワンストップ
記事修正履歴
レポート締め切りを過ぎてしまい内容が荒っぽくなってしまったっため修正を重ねています。ご迷惑をおかけします。
- (2009-06-08) タイトルを「電子工作がperlでCGI並に簡単できるようになっていた!」から「電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた!」に変更しました。
- (2009-06-08) Arduinoの綴りを修正しました。Arduinoという単語が出る度に綴りが間違っていてそれはもうひどい状態でした。
- (2009-06-08) 「電子工作ではない」というご指摘をいただいたのですが、裸のLEDとかセンサーとか繋がれば、十分電子工作だと思いましたので使用しました。
[...] http://www.akiyan.com/blog/archives/2009/06/open-source-hardware-arduino.html [...]
[...] 電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた! : akiyan.com [...]
[...] 電子工作の経験がなくても、誰でもハードウェアを自作できる時代が…いる端子には、赤外線ledや温度センサーなど、およそ電子工作的なものなら何でも接続可能で、プログラムから [...]
まだスペルミスが残ってますよ「奥の4つがArduioo本体。」の部分です
[...] ・電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた! : akiyan.com 「オープンソースハードウェアセミナー」に参加した時のレポート的な記事。「twitterに投 [...]