2012年4月29日日曜日

カブトムシの世話(2012春)

2009年からはじめたカブトムシの飼育ですが、いろいろ試行錯誤しながら、4年目に突入する感じです。今日は、だいぶ暖かくなったのでマットの交換をすることにしました。

今回は、灯油のポリタンクなどを屋外で保管するためのコンテナで飼育をしていますが、冬場は外に出しっぱなしでほとんど世話をしていません。ときどき覗いて、マットの状態を確認して、水分が少ない時だけ少し水を霧吹きでかける程度でした。ですから、中の様子など全くわかりません。昨年度の経験から、そろそろ活動をはじめる頃だろうと思ってフンの掃除をすることにしました。

コンテナは、密閉されているわけではないのですが、中は適度な湿度を保っていて、マットの状態は比較的良い感じでした。マットの上に枯葉を敷いておいたのも良かった原因かもしれません。エサとして入れた朽木も、かなり消費されていました。コンテナに入っているカブトムシの幼虫は、前回の確認で16頭だったのですが、今回は15頭確認できました。幼虫の残骸らしきものが2頭分あったので、マットの中にまだ卵が入っていたものと思われます。

それにしても、「死んだカブトムシの幼虫は土に帰る」と聞いていましたが、本当なんだなぁということを実感しました。頭部の硬い部分だけが若干残るのみで、本体はすっかり土化していました。また、今年のカブトムシは、大きさの違いがそれほどなく、みな良い感じのサイズになっていました。これなら昨年のような、サイズの小さなカブトムシにはならないだろうと思います。

フンを取り除いたマットに、新しいマットを加えてよく混ぜて、丁寧に加水をして残った朽木にも水を含ませて入れ直しました。マットに戻されたカブトムシの幼虫たちは、勢い良く潜って行きました。残り数ヶ月。さらに大きく太って立派なカブトムシへと成長して欲しいと思っています。

脂肪腫の切除手術を受けました

3月は、卒業生を送り出すこともあって大忙しでしたが、体の変化に気づいてちょっと困っていたのもブログを書けなかった原因でした。

昨年の8月頃、右肋骨の一番下の骨の付近に小さなコブのようなものを見つけました。その時は、「こんな所に骨の奇形があったかなぁ」といったような印象で、左右を見比べてもあまり差はなく、触ってみて右の方が少し出ているかなぁという程度でした。そのまま年明けを迎えて、年始に激しい腹痛のために何度か病院に通って点滴をしてもらっていたのですが、ふと脱衣所の鏡に写った自分の体を見たとき、小さかったコブが一口まんじゅうくらいの大きさにふくれあがっているのに気が付きました。赤く腫れているとか、黒ずんでいるとか、痛みがあるとかということは全くなく、ただボコっと盛り上がっている感じです。

触ってみると、柔らかくもなくガチガチでもなく、動かせそうで動かせないような感じでした。なんだろうなぁと思いながらいろいろ調べてみると、「脂肪腫」ではないかということが分かってきました。しかし、微妙に書かれていることと私の腫瘍の状況が違ったので、不安に思いながら子どもたちに迷惑はかけられないと思って、卒業式が終わるのを待って病院に行くことにしました。

3月末に病院へ行き、かなり時間をかけて検査をしてもらった結果、筋肉の中に腫瘍があって、傷は深くなるが現状なら比較的簡単に取り出せるということで、切除することになりました。(そもそも、この手の腫瘍の良性悪性の判断は、取り出してみないとわからないとか)というわけで、4月のはじめ(始業式の2日前)に病院で手術を受けました。私にとっては初手術でした。

当日、手術前に承諾書や問診票を提出し、血圧や体温を測って手術着に着替えました。執刀医や看護婦さんたちが普通に接してくれるので、あまり緊張もしないでいられました。点滴を一本打たれたあと、手術室まで歩いて行きました。手術着を脱いで手術台に寝たところで、手術担当の助手の方から「好きなアーティスト」について聞かれました。何のことやらわからなかったので「あまりこだわりはありません」と答えたら、私の年齢から推測して好きそうな曲を用意したとのことで、手術室で音楽が聞けることを知りました。

その後、局部麻酔の注射を何本か打たれて、意識のある中で手術が始まりました。はじめは普通のメスで切開していたようですが、途中から電気メスになったので、肉の焦げた匂いがしました。(ちょっとビリビリきたので麻酔を追加してもらいました)麻酔のために痛みはなかったのですが、脇の下に近いところなのでくすぐったいのが困りました。30分くらいで手術は無事に終了しました。

帰宅して麻酔が切れ始めたので、痛み止めなどを飲みました。縫われた傷口は、予告の通り5cmくらい。筋肉を切ったので、激しい筋肉痛のような痛みと、プールで足がつった時のような痛みが体のあちこちに表れました。抜糸が終わってかさぶたが取れかかった今でも、つった後のようなコリがあって、体のコントロールが上手く出来ない感じが残っています。体の抵抗力が落ちるのか、傷口を治すことに体が集中するのか、今まで絆創膏でかぶれたことがないのに、酷くかぶれてしまって困りました。気温が激しく変化すると、急に痛くなったりすることもあります。体というのは不思議なものです。

出てきたものが脂肪の塊だったので、脂肪腫で間違いありませんでした。良性のものでホっとしました。

Puppy LinuxでリマスタCDを作る

2月に取り組んだPuppyのカスタマイズが完了し、リマスタCDが完成しました。既にあちこちで「配布希望者は連絡を…」という告知をしているところですが、5月19日・20日に行われる「Scratch Day 2012 in Tokyo」で配布する予定です。(個人でやっていますのでそれほど大量にはありませんが)

私が参加&発表するのは20日の午後13時過ぎですが、興味を持って頂ける方がいらっしゃいましたら、是非会場に足を運んで頂きたいと思います。私の発表タイトルは以下の通りです。
  • 「フィジカル・コンピューティング環境を活用して豊かな未来を創る子どもたちを育てる -ScratchとPicoBoardで人と人とをつなぐコミュニケーションツール作り-」
【概要】昨年度、小学6年生の総合的な学習の時間に「みんなの願いが実現する社会を目指して」と題した学習活動を行った。豊かな人間関係づくりのための道具を考え、ScratchとPicoBoardなどを使ってモデルを作ってプレゼン発表するという活動である。この学習活動の中で、子どもたちがどんなことを考え、どんなものを作ったのかご覧いただき、こうした活動や学習環境を普及・実現させるためにはどうしたらよいか考えたい。
 Puppy LinuxのリマスタCDの作り方は、とても簡単です。問題は、この情報を探すのがちょっと面倒なことです。「Puppy Linux 子犬の飼い方」と題する一連のWebページにカスタマイズの仕方やリマスタCDの作り方などが掲載されていますが、「しつけ方」「さらなる飼い方」「名犬に育てる」などタイトルが独特な言い回しになっています。(WebページのTitleも「Puppy Linux 日本語版」になっていて、他のページとの違いがわかりにくいです) また、タイトルの下に並んでいるタグのようなリンクをクリックすると別のページに移動するのですが、ページによってタグの並び順が違ったり、タグが全く別のものになってしまって、見たかったところへ戻るのが面倒だったりします。まぁ、ボランティア的な活動で運営されているわけですので、多くを望む方が間違えていると思うのですが、情報が整理されていた方がビジター&ビギナーに好印象を与えるのではないかと思いました。

兎にも角にも、この「(4)自分だけの名犬に育てる」を参考にしながらリマスタCDのISOファイルを作りました。作業そのものはとても簡単で、あっという間に出来上がりといった印象です。イヤまぁKNOPPIXが長すぎだということでしょうか…。これだけ簡単だと、もうKNOPPIXには戻れないやぁと思いながら作業を終えて、できあがったISOファイルをCDに焼きました。

一つだけ困ったのが、命名ルールでした。今までのノリで「Puppy4Robo」と命名しようと思っていたのですが、リマスタCDを配布する場合は、命名ルールに従わなければならないようです。本家「Puppy developer news:」の「How to name your Puppy distro」や日本語版「Puppy Linux FAQ」の「Q15:パピーをベースにした私自身のディストリビューションをリリースできますか?」を読むと、本家筋との違いをはっきりさせなければならないようなので、「Physical Computing Puppy」とすることにしました。

個別にご希望を頂いた方々には、既に配布しております。(今からでも大丈夫です)何かの機会にお目にかかれることがあれば、お声がけください。学校教育や教育分野で活用して頂けると、とても嬉しいです。

2012年4月16日月曜日

Scratchから無線でモータを動かす(1)〜MacでXBee ZB開発環境を構築する

Scratchでプログラミングをして、PicoBoard + WeDo互換にしたHelloBoardなのぼ〜どにセンサやモータなどをつないで、さまざまなものをロボット化することを考えています。これまでの成果として、Arduinoの技術を応用したHelloBoardやなのぼ〜どで、PicoBoardとWeDoの機能を実現するところまではできています。 (いつもお世話になっている@abee2さんのおかげです)
#HelloBoardやなのぼ〜どをPicoBoard+WeDo互換にするスケッチなどは、以下にあります。 Scratchも特製のものを使います。(^_^)
http://squeakland.jp/abee/tmp/NanoBoardAGWithMotor.zip(1モータ用)
http://squeakland.jp/abee/tmp/NanoBoardAGWithMotors.zip(2モータ用)

これまでは、PCと有線で接続した状態でコントロールしなければならないため、その動きには自ずから制限がありました。これを無線化できないものかと考えたのが事の発端でした。いろいろと調べているうちに、いつも買い物をしているスイッチサイエンスさんで、「MBeeDuino」というXBee無線通信とモータドライバがセットになっているArduino互換機が販売されているのを見つけました。私がやりたいと思っていたことが一度にできそうな予感がして購入してみました。

MetaBoardの成果を利用しているということなので、以前にもやった通りMacからスケッチを変更する時は、Arduino-IDEの「Upload」ボタンを押した直後にMBeeDuinoのリセットボタンを押さなければならないという煩わしさはありますが、とりあえずLチカ実験は無事にクリアしました。

無線でのコントロールは、以前に買っていた「XBee ZB」を使うことにしました。 実は、XBeeを持っていたのに一度も使ったことがないという状況だったので、どうすれば良いのか調べるところからスタートしました。いろいろと調べて回ったのですが、シリーズ1についての資料はたくさん見つかったものの、ZigBee対応のもの(シリーズ2)についてはわかりやすいものがなく、やっと見つけたのが以下のサイトでした。
ボクにもわかるZigBee方式 XBee
#むしろ「XBeeで作るワイヤレスセンサーネットワーク」を読んだ方が良いです。 

とにかく、あっちこっちにつまずきました。Funnelの成果物(funnel-1.0-r806.zip内のXBeeConfigTool)を使うと簡単そうだということがわかったのでやってみましたが、シリーズ1にしか対応していないことがわかり断念しました。シリーズ1を使っている人は、これが便利だと思います。

また、X-CTUをWineで動かすことも試みました。「~/.wine/dosdevices」フォルダ内と「~/Library/Application\ Support/MikuInstaller/prefix/default/dosdevices」フォルダ内に、シリアルポートへのシンボリックリンク(「ln -s /dev/tty.usbserial-A800*[※環境によって変化する] com10」とする)を作ってXBeeを認識させるところまでは成功したのですが、肝心なデバイスタイプの変更ができませんでした。
#Linuxならきっとうまくいくと思います。きっと…。

そんな中、twitterで「MacでXBee ZBの設定ができない」とつぶやいたところ「moltosenso」というところで開発しているX-CTU互換ソフト(moltosenso Network Manager™ IRON)があることを教えて頂きました。全て英語表記ですし、若干癖の強いソフトなので操作に戸惑いましたが、使っているうちにだんだんと使い方がわかってきました。しかし、これでもデバイスタイプの変更は出来ませんでした。
#有償のものが必要というシステムでした。

もし、これらの問題を克服してまともに動かせるようになったら、Sparkfunの「XBee Explorer USB」を使ってMacにつないで次のように設定をすれば、XBee ZBが使えるようになるはずです。(FTDIのドライバソフトがインストールされている必要があります)
#XBee Explorer USBのRSTとGNDをリセットスイッチでつないでおくと便利です。
  1. 送信側
    • Serial port…/dev/cu.usbserial-A800* [※環境によって変化する]
    • Mode…Programming radio
    • Baud rate…57,600(for ATmega328)
    • PAN ID…1234 [※0001以外の任意]←受信側と同じにする
    • デバイスタイプ…Coordinator
  2. 受信側
    • Serial port…/dev/cu.usbserial-A800* [※環境によって変化する]
    • Mode…Programming radio
    • Baud rate…57,600(for ATmega328)
    • PAN ID…1234 [※0001以外の任意]←送信側と同じにする
    • デバイスタイプ…Router/End Device
調べた結果ここまでわかりました。デバイスタイプが決まると、MY IDなどが自動で決まるのかなぁ…とか、まだまだわからないことが多いです。どうも一筋縄ではいかないようです。また時間を見つけて再チャレンジしてみます。