2010年3月14日日曜日

Roomemoba

どうも、最近あまり体調が良くないQです、こんちには。

先週は咳&喉の痛みで、今日はなぜか頭痛がする。今はかなり落ち着いたけどまだ若干ふらふらする・・・。ここんとこ色々不調が多いので気を付けないとなぁ。差し当たり無茶してるつもりはないんだけど。


1.hacking roomba
9割がた読み終わった。まあ16章の一部と付録は正直どうでもいいor今更な内容だったのでもう読み終わったとしても問題ないかと。TOEIC400点に満たない僕でも普通に理解できたのでそれなりに平易な英語で書かれていると思う。簡単なレビュー、参考まで。

1章
この本の全体的な概要とRoombaの簡単な説明(本来の機能とか簡単な歴史とか)。この本読むような人はおそらく中古で安いのを探している∧Roombaの簡単な構造とかを知りたいだろうと思うので、ここだけでも読む価値があると思う。

2章
Roomba製造元のiRobotが公開したROI(Roomba Open Interface)の説明。要するにコネクタの各ピンの機能、通信プロトコル、及びRoombaの動作モードについて。マイコンとかでガシガシ遊んでいる人は1章、2章だけ読めば後は読む必要はないかもしれない。以降はこんなのを作ってみよう、使ってみよう系の話なので。

3章
Serial Tetherの製作。PCのRS232CとRoombaを接続する簡単な中継基盤を作る。2章が問題なく理解できる人は、著者が提供しているRoombaCommTestの部分以外は読む価値は無いと思う。逆に初心者の人は抵抗やLEDの簡単な使い方なんかを説明しているので、初めての半田付けくらいの気持ちで読むといいかも。

4章
Serial TetherのBluetooth版の製作。僕は実際これを作った。製作自体はむしろ3章より簡単。BlueSMiRFという装置の使い方が分かる。

5章
モーター部分の分解の様子と、Driveコマンド(実際に動かすコマンド)、およびそれ関連のjavaソースコードの説明。また、Roombaの移動指示をどう計算すればよいかも載っているが、一部間違っているので注意。本家サイトにエラッタ関連のコメントを確認。

6章
センサー部分の説明と使い方、それ関連のjavaソースコードの説明。ここではbumpturn(ぶつかったら方向を変えて進む)とか、角度や距離の検出法なんかも書いてある。

7章
Processingを使った、RoombaViewのプログラミング。平たく言えばRoombaを上から見てどのように動作するかのモーションシミュレータと、操作ボタンを組み合わせたようなプログラム。実際にはソースコードが著者サイトに落ちているので書く必要はない。

8章
同じくProcessingを使ってRoombaに歌わせるプログラミング。songコマンドとかplayコマンドの説明とか。パソコンのキーボードを鍵盤にみなして、Roombaに音を出させるprocessingプログラムが著者サイトにある。

9章
Roombaに絵を書かせるプログラミング。スピログラフがらみの話とかマジックをどうRoombaに取り付けるか、とか。なお後半はちょ、おま!!という展開になっている(笑)こういう行動力は素晴らしいと思う。

10章
Roombaをマウス代わりにしてみたりThereminもどきにしてみたり、目覚まし時計にしてみたり。いずれもprocessingが前提だが、versionが合ってなかったりlibraryが古かったりで本気でやろうと思うと結構面倒くさいと思う。一応Thereminは書いてみたが、むしろprocessingの方ではまった。

11章
RoombaにEthernetを乗せようと言う内容。色々書いてあるが、日本ではXPortが有るのでこっちが重要な内容かな…。XPortの使い方、javaでsocket開いて繋ぐ内容があるので読む価値はあるかも。ちなみに、ここではあくまでEthernet-RS232変換装置、という位置づけ。

12章
11章のwiportバージョン。wiportは素晴らしい製品だと思うが、残念ながら日本でwimicro(wiport+ベース基盤)を手に入れることは出来ない(電波法の関係)。もしwiportを使おうと思うと、自分でベースとなる基盤を作らなければいけない。

13章
RoombaにBasic Stamp、Arduinoを乗せて動かしてみようという話。Basic StampはともかくArduinoはブームなので、これで遊んでみたい人は読んでみると良いかもしれない。Arduinoに限って言うと、bumpturnとbumpturn+moodlight(怪しく光らせて走り回らせよう的な感じ)の作り方が載っている。

14章
15章とともに最も残念になってしまった章。Roombaにlinuxを乗せようという話なのだが、linuxを積んだwireless router等を使っている。これらが、まず販売終了しているのと中古も無い、海外からは変えない(同じく電波法)と言う三重苦。OpenWrtというrouter用linuxのディストリビューションや、それ関係の勉強の章になっちゃってる。非常に悔しいところ。

15章
おそらくこの本の最大の売り所だった章。Roombaにwireless router+webcamを乗せようという話。残念ながらrouterもwebcamも手に入らない。ちゃんと探していないのでもしかしたらどっかに有るかもしれないが…ただそれ関連の簡単な使い方に関する勉強にはなる。僕のようなヘッポコlinux userには以外とありがたい話。

16章+付録
他のなんか乗せてみたの事例紹介と、着せ替え?用のコスチュームの話、と実際にちょっとだけハードに手を加えるような話。付録は、半田付けについて、電気回路について、及びROIの仕様書。まあさすがにこれはいいやって感じなのでちゃんと読んでません。


てな感じ。全体として、「Roombaはファンタスティックで凄いんだ、でもこの部分が…」「Roombaでこんなことできたら楽しいと思わないかい?」的な文体です。ジョークも織り交ぜられており、親しみの持てる内容じゃないかと思います。もし邦訳するなら14章までが価値のあるところかな。邦訳するよりも、この本をベースにして日本で手に入る部品や装置を元にもう少し今風に書き直すってのが良いかも。





2.N330、D410、D510の消費電力、参考まで
D410(SSD:8GB,memory:2GB×1)
起動していない状態 1.5W位
bios画面 18W位
LiveCD(ubuntu),idle 20.5W位

D410(HDD:320GB(7200rpm),memory:2GB×1)
installed centos,idle 23W位

D510(SSD:8GB,memory:2GB×1)
起動していない状態 1.5W位
bios画面 17W位
LiveCD(ubuntu),idle 20.5W位
installed ubuntu,idle 19.0W位

N330(HDD:320GB(7200rpm),memory:2GB×1)
installed centos,idle 32W位

↑結構適当なので注意。あくまで参考。

意外なのがidleだとD510の方がD410よりも消費電力が少ないこと。まじで?つまりD410意味無いじゃん!!というかD410の消費電力に関するレビューが全く見つからないのはどういうこと?まあD410+1000円でD510買えるならD510買うわな、そりゃ。
Atom N世代からD世代で約20%程度の消費電力削減らしいのでまあ妥当なところなんじゃないかと思っている。

今までN330をサーバーに使っていたが、D410のあてが全くなくなってしまったのでそのまま植え替えた(笑)まあどうせ大した負荷は掛からないのと超静かなのが素晴らしい。逆にN330どうすんねんという(笑)しかしD510スゲェな…。てかスペック的に微妙なPCばっかり持ってる漏れ…。





3.D510+SSD+ubuntu9.04について
なんかたまに起動失敗するので、biosでpre-delayという項目を0⇒5にしたら直った。まあ遅いSSD使ってるのでなんとなくその辺の原因かなと思っている。しかし、それでも起動超速い(笑)ヤバイ、SSDはまりそう。


この辺の作業でこのブログが今ままで初めて役に立った(笑)メモは重要じゃよ。







吹雪から
花吹雪なる
想いかな

0 件のコメント:

コメントを投稿