風兎2005 製作記

ロボット全体像

第17回知能ロボコンに向けて昨年の機体を改良。

2004年12月 吸引ファンの強化

写真:ファン周辺

前回大会では予選でいくつかのボールを得点して敗者復活戦まで進んだものの、敗者復活戦ではボールが持ち上がらなくなってしまい、得点できませんでした。原因ははっきりしていて、ボールを拾うための吸引ファンが力不足だったためです。

実際にどれだけの力が出せるのかを、ファンを回した状態でカップを料理用はかりに近づけて測定してみました。約25gfでした。 約15gのスポンジボールを持ち上げるのには十分なように思えますが、ボールを吸い付けた状態でアームを上げる際にカップとボールの間に隙間ができ、吸引力が低下して落としてしまうことがありました。 敗者復活戦ではこの現象が起きて予選では拾えたボールが拾えなくなってしまいました。

そこで、ファンのパワーアップを図りました。まず、モーターをプラズマダッシュモーターに替え、更にファン用2.4V電池を単4から単3に換えました。 その結果、吸引力が約50gfに向上し、一度吸い付けたボールは少々のことでは落とさないようになりました。更に、離れたところにあるスポンジボールも軽々と吸い付いてくるようになりました。

モーターとバッテリーを両方同時に変えてしまったのでどちらがボトルネックだったのかは今となっては不明です。後に知ったのですが、プラズマダッシュモーターに使われているようなカーボンブラシは耐久性の面では貴金属ブラシに比べて勝っていますが接触抵抗の面では劣っているので、本機の場合のような低電圧で使う用途には一般にはあまり使われていないそうです。

プラズマダッシュモーターは機械的な回転抵抗が大きく、電源を切った後慣性で回り続ける時間が短くなっています。これによる副次的な利点として、ボールを離す動作が速くなりました。電気的にブレーキの掛けられない回路構成だったのでありがたいことです。

2005年1月

駆動輪モータードライバの改良

駆動輪を回すためのモーター用に今まで使っていたドライバ回路はμPD16805というICを使っており、スペックは次のようなものでした。

旧回路絶対最大定格

電流に関しては問題ありませんでしたが、使用しているバッテリーが6セルのNiMHで 満充電のときには8.4V程度になるために定格を越えてしまうという問題がありました。

そこで不安要因を取り除くために新たなモータードライバ回路を作りました。

新回路絶対最大定格

電源電圧が定格内に収まるようになりました。ついでに、ドライブ電流にも余裕ができました。

写真:新モータードライバ表面 写真:新モータードライバ裏面

ちなみに、風兎のシャーシやモーターなどは2003年に作られた世紀末の火鼠のものをそのまま使用しています。そうして今年で3年目に入るわけですが、 モータードライバの回路は毎年作り直していて今回で3個目になります。 並べてみました。左から古い順です。 使われている部品は順にバイポーラトランジスタ構成のIC(TA7257)、FET構成のIC(uPD16805)、FETアレイ(MP4212)です。 時代の流れを感じさせる……かもしれません。

とはいっても実は今回の回路は2003年に作りかけて途中で放り出していたものだったりします。

写真:新モータードライバ裏面 写真:新モータードライバ裏面

FETアレイ使用DCモータードライバ回路図(PNGファイル)

この回路は京大機械研究会のメンバーが設計したものを使わせてもらっています。FETアレイは4AM12となっていますが、これに限らず何でも使えると思います。

2005年2月

タイヤの改良

車輪移動式ロボットにとって、タイヤのグリップは最も重要な要素です。タイヤの材質や形状などに様々な工夫がなされています。

前回は、とりあえず入手できたからということで滑り止め用のギザギザのゴムシートを細く切ったものを使用しました。確かにグリップ力は十分でしたが、表面のギザギザが駆動力を伝える機構部分で引っかかりを生じてしまうため、タイヤを低速で精度良く回転させることが難しいというという問題がありました。また、走行させているうちに目に見えて削れて減っていってしまうという欠点もありました。 そこで新しい材料を試してみました。

写真:ゴムシート

「オレフィン系エラストマーゴム板」。 触ってみた感じ摩擦係数が大きそうで、加工しやすかったので採用しました。

写真:新タイヤ

均一な幅に細長く切ってタイヤに貼り付けたところです。固めの素材なのでグリップ力はほどほどですが、狙い通り駆動系の引っかかりがなくなってスムーズに動くようになりました。

超信地旋回(stationary turn)の改良

今までのプログラムは、旋回動作で正確な超信地旋回をしていませんでした。極端な例では、右の車輪を押さえつけて固定した状態で旋回をさせようとすると、右の車輪を中心としてピボットターンをしてしまいました。単なるプログラムの手抜きが原因です。前回、自由ボールのゴールを失敗した原因はここにあると考えられています。

そこでようやく、超信地旋回のプログラムを書きました。車体が前後方向に動かないようにする制御を併用することで回転の中心を安定化させるだけです。先の極端な例のように右の車輪を押さえると左の車輪も止まって中心のぶれを抑えるように働きます。

アームの改良

軽量化と小型化および耐久性の向上のために、 アームを上下させるRC用サーボモーターをFutabaのS3003からGWSのMicroに換えました。 アーム台のアルミ板金部品をこれに合わせて作り直す必要があったので、ついでにPSD測距センサーを付けるスペースも確保しました。

このロボットでは特に問題となりませんが、脚ロボット製作者の間でよく言われているようにMicroには軸のがたつきがあり停止位置に数度誤差が生じるようです。

サーボを換えたもう一つの動機としてアームの動作速度を上げてボールを投げられるようにしたいという目論見もあったのですが、思ったほど速くなくあまり遠くへ飛びませんでした。そんな芸当を考える前に得点できるようにするべきなので、ひとまずこの件は保留とします。余裕があればPARK-HPX(0.08s/60deg.)あたりに交換して試してみる予定です。

RCサーボ性能比較(6V時)
名称 トルク[kgf*cm] スピード[s/60deg.] 重さ[g] 実売価格(独自調査)
S3003 4.1 0.19 37.2 1869
Micro 2BBMG 6.4 0.14 28 2217
PARK HPX 4.8 0.08 19 1785

2005年3月

ハンド内の保持ボール検出センサ

写真1:保持ボールセンサ表面 写真2:保持ボールセンサ裏面

風兎はボールを吸いつけられたかどうかをハンド内部の光センサーで見ています。うまく取れなかったり、途中で落としたりすることを考慮するとこのセンサーは非常に重要です。

光センサーは大きく分けると透過式と反射式があり、前者は物体によって光が遮られるのを、後者は物体にあてた光が反射してくるのを検出する方式です。ハンド内のボールを検出する方法としてはいずれの方式も考えられます。

前回は透過式を採用しました。ボールの誤検出が少ないと考えたためです。透過式の欠点としては、センサーの設置が難しいということがあります。発光側と受光側を向かい合わせ、光が受光側に届くように位置を正確に合わせなければなりません。また、両者の距離が長くなる場合は光の強度も上げなければなりません。 今回アームの改良により、カップのサイズがやや大きくなったので透過式センサーの光が端から端まで届かなくなってしまいました。そこで反射式に変更しました。センサーの設置は発光側と受光側の部品を並べて配置してボールの近くに置くだけなので設置が簡単で、また配線も簡素になってメンテナンス性が良くなりました。外乱光から影響を受ける可能性が高くなったので今後試走しながら検討します。

なお写真でカップの内側が黒く塗られているのは、白いままだとボールがないときにも反射光を検出してしまうためです。

もちろん赤外線LEDの出力を絞ることも考えられますが、工数節約(ものぐさ)のため簡単な方を選びました。後付けの理屈になってしまいますが、コントラストを大きくして信号レベルを高しておくのは信頼性の向上に貢献します。

前後のバランス改良

写真:車体を横から

今まではメインバッテリーが後ろに、ファン用バッテリーがアーム台の下に搭載されていました。両者を比べるとメインバッテリーの方が重く、回路基板が載っている後方が元々重いのと相まって重量バランスが後方に偏り、車輪のグリップを悪化させていました。アーム台が高くなり、アーム上下用モーターの下にメインバッテリーが入る空間ができたので両バッテリーの搭載位置を交換してみました。すると重心はほぼ中央になります。これで車輪のグリップ改善が期待されます。

実際の効果の程はというと、停止状態からモーターを回した場合今までは30%程度のパワーで既にスリップしていたのですが改良後は60%程度までスリップしなくなりました。

車体のバランスは重要です。

頭部の改良

写真:新しい頭

割れたり汚れたりしていた頭部を作り直しました。とはいうものの、今回はアームの稼動範囲に干渉するので載せられないかもしれません。

2005年4月

兎の名を名乗る資格があるか

風兎という名前はびっくりするくらいの速さで走って見せたいという意思を表して付けられたものです。前回は上記のように重量バランスが悪くモーターの性能を100%発揮できず、5割くらいの力で走っていました。それでも会場で試走中、通りがかったくまがい実行委員長に「小さいのに速い!」と驚きの言葉を頂いて大変嬉しかったことを覚えています。

思わず「こんなもんじゃないですよ」と言ってしまいましたが(^^;

しかし、知能ロボコンでも上位の方は結構な速度で動いており、中途半端に速いのではアピールできなくなってきています。 兎の名前を名乗るからにはアピールできるくらいのスピードが欲しいところです。 そういうわけ重量バランスやタイヤの改良を行ってきました。成果を見てみるためにひとまず、8割程度の力で周回コースを走らせてみました。

走行の様子(650KB、要QuickTime Player)

マーカー位置で止まるようになっているのですが、停止位置がずれています。これは急激なブレーキによりタイヤが滑っているためです。停止位置がずれるのはゴールの位置を間違えたりして都合が悪いので、タイヤを滑らせないようにしつつスピードを出させるのが今後の課題です。

2005年5月

アーム台の作り直し

写真1:新しいアーム台 写真2:新しいセンサーの配置

アームのRCサーボをPARK HPXに換え、またPSD距離センサーの配置を変えるためにアーム台の部品を作り直しました。

ボール初速アップ

スピードの速いRCサーボに換えたため速い球を投げられるようになりました。 動画でご覧ください。(要QuickTime Player)

RCサーボの特性の違いのため、投げるのに最も適した停止位置が異なっています。

新しいセンサー配置

今までは前方に2個でしたが、左右の真横に向けて2個と前方に1個の合計3個としました。 第16回大会の準優勝ロボット、 Elemoth Ver.2(Hiroshiさん) を参考にして横向きのセンサー配置を試してみたところ良好な結果が得られたので採用しました。

PSD距離センサー電源制御回路追加

バッテリーの持ちを良くするためにマイコンからの命令でPSD距離センサーの電源を切れるようにしました。

ビジョンセンサ(カメラ)による照準合わせ実験

風兎には携帯電話用のカメラTrevaが搭載されています。昨年はボールの色を見分ける色センサーとしてしか使いませんでしたが、今年はちゃんとビジョンセンサとして使います。

写真: ビジョンセンサによる照準合わせシュート1 写真: ビジョンセンサによる照準合わせシュート2

競技台中央の段差を越えてシュートする際に多くのロボットは車輪の回転数から求めた自分の位置と向きを用いてゴールの方向を計算しますが、風兎の場合は車体が軽いためにタイヤのスリップによる誤差が生じ易く、この方法では正確にシュートできません。そこで正確にシュートするためにロボットに搭載したカメラでゴールの方向を検知して照準を合わせることにします。

競技台の図。対象物エリア中央から段差越しにゴール前の床ラインを狙う。

図中、左にある黄色ゴールを丸で示した地点から狙います。その際に矢印で示したラインを的にします。(競技台の図は知能ロボコンのルールブックから引用させて頂きました。)

プログラムを試作して実験してみました。やや専門的になりますが処理内容を説明しますと、画像の下のほうから探索して縦エッジ点がある程度縦に連なっている場所のx座標を検出し、これをゴールの方向と見なします。ゴールの方向が所定の値A(以下、照準線)に近づくように車体を回転させます。 ゴールが照準線上に来たら、右90度ターンしてシュートします。(カメラは右向きについているので) カメラキャリブレーションに相当する作業は、照準線の位置であるAの値を適当に調整するのみです。3次元形状復元を行う場合のキャリブレーションのように物理的な測定をする必要はありません。 但し、カメラの取り付けはある程度水平を保たないと縦線が斜めになって検出できなくなります。

Treva画像サンプル(処理結果&基準位置重畳表示、黄色ゴール前マーカーが検出されている。左右方向の中央あたりをAとする。)

カメラからはこのような画像が得られます。上記の方法で検出された点を赤い点で重畳表示してあります。緑の線で示した位置Aに合うように車体の向きを微妙に調整します。

2005年6月

タイヤ変更

写真:シリコンゴムOリングタイヤ

タイヤをシリコンゴムのOリングに変更しました。

昔東急ハンズで買ったシリコンゴムのOリングを昨年やめたOリングタイヤのホイールに取り付けてみたところ、2月に作ったタイヤよりもグリップが良かったので採用となりました。トレッドが細くなったおかげでデドレコの精度も向上しました。

吸引ファンのカップ改良

写真:ハンドのカップ後ろ側

カップの裏側に紙を貼ることで機械強度が増しました。この部分、実はぶつける度に変形してファンが引っかかって回らなくなるという、まさにアキレス腱でした。 裏側が塞がると空気が抜けなくなって吸引しないように思えるかもしれませんが、実際のところ吸引力は落ちていません。その昔NHKロボコンに似たような機構を持つロボットを作った金沢工大の方に会場で聞いた話によると、中で空気が回っているために吸い付くのだそうで、ベルヌーイの法則で説明できるのではないかとのことです。元々ボールがカップの口にぴったり吸い付いた後は空気が吸い込まれることはないので、そういうことでしょう。

吹き出す風の量が増えたので、ボールを動かす力はかえって強力になったかもしれません。

一連の動作

ボールを取ってきて捨てる一連の動きができるようになりました。

例によって、3GPP2の映像ファイルはQuickTime Playerなどでご覧下さい。

スタート、自由ボールシュート(3GPP2、884KB)
停止位置で大きくぶれてしまっていますが、センサーで自由ボールを検出しているおかげでなんとかシュートできています。
ゴールまで持ってきてシュート(3GPP2、933KB)
ゴールまで直接持って行くのは堅実、遠くから投げるのは確実性を犠牲にして時間を短縮するためだと思われるかもしれませんが、実は下の段差越えシュートより速いです。足の速いマシンならではです。
側方センサでのボール探し、ビジョンセンサによる段差越えシュート(3GPP2、1,394KB)
壁際のボールもなんとか取れます。タイヤのスリップでずれてもラインを見て確実にシュートします。

5分間の競技時間(予選)では、大体8個程度のボールを得点できるくらいのペースです。

途中、止まっているのは色を見分けているところです。 こうして見ると結構な時間なので、プログラムの走らせ方を工夫して短縮したいと思います。

日本ロボット学会会長賞・チャレンジコース優勝

なんと、優勝してしまいました。ここまで来られたのも皆様の応援のおかげです。ありがとうございました。ロボットの詳細参戦記もそのうち公開したいと思います。

中野先生直々に表彰して頂いた日本ロボット学会会長賞は、ボール探索の巧みさを認められたものだと記憶しています。大変光栄です。

会場で頂いた質問

色はどうやって見分けているのですか。
ボールがカメラに映るようにアームを上げて、カメラに映った色を見ます。光源は持っていないので、暗いところでは色がわからなくなります。
黄色ボールを投げたり投げなかったりするのはなぜですか。
黄色ゴールの向かい側から投げるので、そのあたりのエリアにボールがなくなって進入できるようになったら投げます。ボール配置によって、まったく投げないこともあれば5個全部投げることもあり得ます。
モーターはステッピングモーターですか。
DCモーターです。ラインの無いところはロータリーエンコーダーの情報を頼りに走行しています。
コーナーはラインを見て曲がっているのですか。
はい、ラインにのみ頼ってコースを走っています。安全のため、コーナー前から減速するようにしています。
バッテリーは何ですか。
NiMH電池です。メインが単4を6セル直列、ファン用のが単3を2セル直列です。
タイヤは何ですか。
シリコンゴムのOリングです。数年前に東急ハンズで入手したものです。ほぼ同等品が理化学用品のお店等で買えます。

謝辞

H.R.LのHiroshiさんの6月16日の日記に「クッションボール」と書いてあったのを見て、緑色ボールを壁に跳ね返してシュートすることを思いつきました。アイディアを提供してくださったHiroshiさんにこの場を借りて御礼申し上げます。おかげさまで観客の皆様にも喜んでいただけました。

実現しなかったアイディア

H.R.LのHiroshiさんのアイディアを頂いたから、というわけではありませんが誰かが実現してくれることを望んで実現されなかったアイディアを書いておきます。

親機から充電
スタートゾーンに親機を置き、子機が競技時間の半分くらいのところで帰ってきて充電してもらます。競技台上でエネルギー移動を行うのは、多分史上初です。少なくとも過去4年間には見たことがありません。単四電池で稼働時間がやや短いので思いつきましたが、製作する時間がなくて断念しました。
スタート用カタパルト
スタートゾーンに親機を置き、ばねの力で子機を射出します。スピードをアピールするために考え付きましたが、タイヤのスリップが起こって制御が難しそうなので手を付けませんでした。
拾ったものを一旦置いておく
黄色ボールがまだ投げられない状態で黄色ボールを拾ってしまったとき、競技台縁の方に一旦置いておいて後から取りに来ます。純粋にプログラムだけで実現できそうですが、時間がなかったので断念しました。壁際に置くとボールでも転がりにくくてうまくできそうです。いかにも賢そうなところを観客にアピールできます。テクニカルでは「ごえちゃん弐式」がタワーを捨てるときに行ったなどの前例があります。

2005年12月

Robot-Fan.net1周年企画「ロボカーナ2005」にエントリー

エントリーしました。最初はマイクロマウス部門の福男賞を狙っていたのですが肝心のプログラムが全然できていなかったのでひとまず風兎をライントレーサーとしてその他のロボット集合部門にエントリーしました。暫定一位です。

最高速で目一杯内側寄りを回っています。この競技にはアームは無意味ですがそのままです。

結果

優勝させて頂きました。年末年始には競技ができない状態だったのでRRSTさんからのエントリーが続々来るのをはらはらしながら見ていて、何とか僅差で逃げ切れたという形でした。

Robot-Fan.net ロボカーナ2005レポートを読んでやはりと思ったのが、エントリー用HTMLアウトラインはウェブサイト製作経験のない人のためというよりスポンサー広告を入れる意図があったのですね。気づかず申し訳ありませんでした。>主催者・三月兎

というわけで、前項にスポンサーへのリンクを追加しました。

山口 辰久

Valid HTML 4.01! Valid CSS!