読者です 読者をやめる 読者になる 読者になる

bitterharvest’s diary

A Bitter Harvestは小説の題名。作者は豪州のPeter Yeldham。苦闘の末に勝ちえた偏見からの解放は命との引換になったという悲しい物語

Lego BotsをHaskellで動かす-ロボットの作成

1.ロボットを作成

今年は、梅雨に入ってから、殆ど晴れ間を見ることがなかったが、一昨日と昨日は、東京は猛暑に襲われた。この両日、講義もなく、会議も設定されていなかったので、一昨日、早朝の散歩を済ませた後、涼を求めて、天城高原に車を走らせた。

東京からずっと冷房を利かしての、暑い東京から離れるための逃避的な運転であったが、伊豆スカイラインの最終出口の天城高原に着いたとき、チケットを出すために開けた窓からさわやかな冷気が入ってきた。うっそうと茂る林の中を、一晩だけ泊まることになる別荘に向かって、爽やかな木々の香りがする道をゆっくりと車を進めた。近年、鹿が増えすぎて、道路に飛び出してくることも多いので、周囲に気を遣いながらの運転である。

夏休み前のこの時期、別荘地は静かで、自然を満喫することができる。夏は、とても近くある富士山が見えることはまれなのだが、この日は、青空の中に、影のように少し黒ずんでいる富士山が見えた。ただ、夏の富士山の姿はあまり好きではない。白い雪の冠で覆われている富士山は優美に見えるが、夏の富士山に躍動感を感じることはない。夏の多くの日に、雲や霧で素顔を覆っているのは、富士山の気遣いに思えてならない。

夏とは全く違った姿を見せてくれるのは、冬と春先の富士山だ。天城高原の別荘地は冬はとても寒いので、あまり訪れることはないが、春先の富士山は素晴らしい。特に、達磨山から見える富士山は、箱庭のような駿河湾を背景に、浮世絵に出てくるような歌舞いた姿を見せてくれる。

天城高原の多くの別荘はクーラーを設置していない。今日泊まる別荘ももちろんクーラーはない。家について、とても重い雨戸をあけると、リビングに高原の空気が充満し、自然と一体となる瞬間を楽しむことができる。あまり美しくはない富士山を木々の合間から見ながら、二日間、レゴロボの作成にいそしんだ。

出来上がった作品は以下の通り。
f:id:bitterharvest:20150716091101j:plain
左側は、Mindsotorms社の部品を使ってのロボットである。Raspberry Piの箱がのせてあるが、ここに、Raspberry PiとBrickPiを搭載する。このロボットは、音がある方向に進行し、ボールを転がす機能を有している。また、逆進中に障害物に衝突したときはそれを検出できるようになっている。また、LEDを光らせることもできる。

右側は、Tetrix社の部品を使って作成したロボットである。Launcherと呼ばれるロボットを少しだけ改良したロボットで、黒い線に沿って走行することができる。また、前方の障害物を超音波センサにより検出できることもできる。さらに、ボールを飛ばすこともできる。

次の写真は後ろ側から撮影したものである。
f:id:bitterharvest:20150716091235j:plain
次の写真は左側から撮影したものである。
f:id:bitterharvest:20150716091320j:plain
次の写真は右側から撮影したものである。
f:id:bitterharvest:20150716091456j:plain

この二つのロボットをHaskell特にNetwireを用いて動かすが、次の記事では、システム思考という立場からどのように設計したら良いか説明する。