ブログ移行
| 固定リンク | コメント (0) | トラックバック (0)
| 固定リンク | コメント (0) | トラックバック (0)
9月14日に韓国KINTEXで行われたソウル科学技術大学校主催のHumanoid Robot Sportsに参加しました。
自律ロボット・High-tech amateur部門の陸上競技に参加、タイムで2位となり、昨年の雪辱を果たした形となりました。また、昨年同様にダンス部門のROBOT JAPANチームを手伝う形で出場、3位となりました。
大会は3日間かけて行われ、自律部門とラジコン部門、そして国際対抗試合がありました。
自律部門はさらに市販キット(kit league)と自作機(High-tech amateur league)に分かれていて、私の参加したのは後者の方です。昨年はこれが更にHigh-tech amateurとHigh-tech professionalリーグに分かれていたのですが、今回これらが統合された形でした。参加者は主に韓国国内の大学生チームです。私は海外招待選手枠として参加しているチームROBOT JAPANの一員として参加しました。
種目は陸上の障害物走、バスケットボール、サッカーという3つがあったのですが、今回は開発時間の都合上障害物走のみの参加としました。
トラックは約17メートル(中央線の長さ)のオーバルコースで中央に白線が引かれています。コース縁は黒線が引かれており、これを越えると失格となります。また、スタートとゴールはそれぞれ青と赤の線が引かれています。注意すべき点として、スタートとゴールは共にメインストレートにあるのですが、スタートラインはゴールラインより1m程後ろにあます。スタート直後にゴールラインを一回通過して、1周してまたゴールラインまでを走り切って初めてゴールとなります。17メートル+1メートルで18メートルを走ることになるわけです。
意図的に前に歩かない場合は失格となります。
High-tech amateur leagueでのみ障害物が設置されます。障害物に接触すると30秒のペナルティタイムが加算されます。
2014年は障害物なし、2015年はハードルの跨ぎ越え、昨年2016はカラーコーンの回避、と変遷してきました。今年は昨年と同じくコーンの障害物でした。というのも昨年はゴールしたロボットがいなかったように記憶していますのでそのためではないかと思います。
私のロボットは無事完走し、タイムでこの競技2位となりました。参加5チーム中、ゴールしたのは2チームでした。
ロボットは昨年と同じSpiritですが、腕を規定に合わせて短くし、かつボウリングやハンドボール用に着けていたグリッパをなくしました。これによりモーターが4個減り、軽量化しました。もともと脚部の剛性が不足していて歩行が不安定になる傾向があったのですが、これが軽減されたように思います。
この課題の難しさは、単純な記憶のない反射行動ではこの「コーンを避けつつもコースを走る」という動きが生成できないことにあります。
トラックを走るのに最も単純な方法は、単に白線がロボット正面に見え続けるように左右に旋回しながら歩くというものでしょう。これは車両型ライントレーサーロボットと同じく、ごく単純なルールで行うことができます。この場合、カメラと物理的な物体の座標の対応付けすらなくても一応成立します。ロボコンとしては一応これもありではないかと思いますが。
ところが今年の競技ではコーンを避けようとして向きを変えると、白線が視界から消えてしまうことがあります。ロボットのカメラを正面向きに固定している場合は尚更です。すると、単純なルールでは進行方法が決められません。 見失う前にコースがあった方へ旋回するような仕組みを作ったとしても、スムーズかつ確実にコースに戻れるように工夫する必要があります。
正攻法としては、ロボットの知能をより高度にすることが考えられます。コースと障害物の地図を作りながら、ロボットが一歩ずつ歩くたびに歩いたであろう距離と方向から自分の現在位置を計算し、そのうえでこの先の経路を自分で考えて作るというものです。障害物はルール上ランダムな場所に複数置けるので、迷路のような形を作られることまで想定するとこれが必要になってきます。
ただ今のところはコーンはコースの何か所かに1個ずつ置かれるだけでしたので、ここまで必要になったことはありません。
今回私が採った方法は、コースの線を検出したうえで、もしそれが、コーンから一定の距離以内であればその分だけ平行移動してずらした線を目標としてそれに追従するというものでした。更に直線コースにおいてはロボットの向きは線の方向に固定、足をわずかに斜めに踏み出すことで微妙に横に移動することでコーンを回避する、というものでした。直線であればカメラの視野により70cm程度の距離からコーンが見えはじめますので、この少しずつ軌道修正をするという作戦はうまくかみ合ったように思います。
コーナーおよびその付近では今まで通り、ラインからの距離とコースの向きを両方フィードバック制御器に入れて旋回するという方法をとりました。そのためもあってコーナーにコーンがある場合など、苦手なパターンもありました。大会ではそのような難しい配置ではなかったため、結果的にうまくいきました。
一見まっすぐ歩いているのになぜかコーンの脇をぎりぎり掠めるようにラインを取り、かつコーナーもスムーズにややイン寄りを曲がっていくということで審判員や実行委員の人からどうなっているの、と聞かれました。また、見に来ていた香港チームのメンバーからも非常にスムーズだったというコメントを貰いました。単純な知能でも環境との相互作用で意味ある動きが現れるということで、面白いのではないかと思います。
| 固定リンク | コメント (0) | トラックバック (0)
7月16日に行われた第5回ROBO-剣に出場しました。
昨年と同じロボット、同じ制御ソフトウェアを再使用しました。
前年からの変更点としては、アームとセンサーとの間の対応付け(キャリブレーション)の改善を試みました。これは事前にロボットに様々な姿勢をとらせたうえでその各関節の角度(5自由度)とカメラから見たアーム先端の位置のサンプルを収集しておき、誤差を最小とするようパラメータを推定しておくものです。
カメラの座標系とアームの機械座標系との間での回転と並進、スケーリングだけではなく、アームの各リンクの長さや関節角度の原点のずれも自由度に加えて推定するよう試みました。ちゃんとした検証はしていませんが、何回か試した範囲では標的によく当たるようになったので恐らく意味はあったのではないかと思います。試合でも有効打を決めることができました。
| 固定リンク | コメント (0) | トラックバック (0)
| 固定リンク | コメント (3) | トラックバック (0)
3月11日に行われたチロルチョコロボット大会12に参加しました。年1回行われている大会で、今年で12年目になります。私は今回初めて参加しました。
大会レギュレーションとして、チロルチョコの箱(個包装のチロルチョコを拡大した形)を模した外装を施すこと、となっています。また、脚部に使用するモーターは4個以下に制限されています。今はもうなくなってしまいましたが、ロボットフォースのRoppoや浅草ギ研のATWALKER等を用い、手軽に製作できると想定していたものと思います。今でも、市販二足歩行ロボットキットの部品を流用したり組み替えたりすることで類似の機構を作ることができます。
どちらかというと競技を楽しむことを重視した小規模な大会です。複数の異なる競技の総合得点で競うことが特徴の一つで、今年は徒競走と射的競技が行われました。例年は他に途中で別のロボットからチョコレートを受け取って運ぶ競技等も行われているそうです。
参加ロボットには完全自作機の他に、KHR-3HV、JO-ZERO、Robovie-i等の市販ロボットキットを改造したものが見られました。特にRobovie-iは既に市場から姿を消した教育用の3軸ロボットで、個人的には非常に懐かしい感じがしました。
射的競技のため、ロボットに物体を発射する装置を設けることになります。とはいっても、技術的敷居を低くするため、装填および発射は何度でも人の手で行っても良いことになっています。典型的な例としては、ロボットの上部に玉を転がすレールを設けた例があります。ロボットを操縦して標的にレールを向けたのち、そこに人が球を置くことで球が遠くまで転がって標的を倒すという仕組みです。
私のロボットでは、弓のような仕組みでチロルチョコを発射する機構を使用しました。この装置には最大8個までチロルチョコを搭載し、1個ずつ次々と発射することができます。これは元々人とのインタラクションのためにチロルチョコを投げるロボットを作ろうとして昨年春ごろから作っていた部品でした。大会のルールで投擲物はチロルチョコである必要はなかったのですが、面白いので採用しました。
なお、大会で使用される標的は紙コップの上にチロルチョコを載せたものであり、混同を避ける必要があります。そのために色で区別できる緑色のチロルチョコ(抹茶もち)を持参して使用しました。
もう一つの特徴として、無線カメラの映像を見ながら照準を行えるような操縦システムを作りました。
黄色い三角形の部品が少しだけカメラの視野に入るようにし、ちょうどこの印のあたりに投擲物が飛んでいくようにカメラの位置を調整しました。上の映像では説明のため8インチモニターに映していますが、競技中は装着型ディスプレイのVUFINE+を使用しました。Occulusのように視界全体を覆うものではなく、片目の視野の一部を使って見るものです。これによりロボットと競技場および標的を目視しつつ最終的な調整のために画面を見る、という双方をスムーズに行えるようにしました。実際うまく行ったのではないかと思います。
総合順位は5位で入賞はなりませんでしたが、エレガンス賞を受賞しました。大会趣旨から「チロルチョコロボットらしい」という基準をクリアした点の他、実況で「模範的」と評された射撃機構が評価されたのではないかと思います。
| 固定リンク | コメント (0) | トラックバック (0)
ROBOT JAPAN の一発芸部門に参加したロボットです。参加時は仮の名前でDirect Eyeとして登録していました。
解説用の映像を作成しました。
PCとロボットの間の通信は無線LANです。外出先で運用しやすいよう、ロボットのRaspberry Piを無線LANのアクセスポイントとしてラップトップPCをそこに接続するようにしました。
このロボットは2つの機能からなっています。カメラの映像をリアルタイムで配信する受信系の機能と、視線入力をもとにモーターを動かす送信系の機能です。
受信系にはオープンソースプロジェクトのcamp をそのまま使用しました。これはRaspberry Pi上にでHTTPサーバーとして働き、クライアント側Webブラウザに表示するものです。このようなリアルタイム制御を考慮したものではないためか、フレームレートと遅延についてはベストな状態ではありませんでしたが大会直前ということで採用しました。
操縦に使う視線検出センサーとしてTheEyeTribeのEye Tribe Trackerを使用しました。これが今回のプロジェクトの要です。ハードウェアを用いての視線検出部分は専用ソフトウェアが提供されています。EyeTribe Serverがセンサーからの情報を元に視線を検出、ローカルでTCPサーバーとして働き、JSON形式でデータを連続して取得することができるようになっています。その後は次のようにつながっています。
PC --[Wi-Fi/TCPIP]-- Raspbery Pi --[シリアル]-- VS-WRC003LV
Raspberry Pi自体にはDCモータードライバは備わっていないため、何らかの電子回路を拡張する必要がありました。今回はVS-WRC003LVのモータードライバ回路を利用しました。VS-WRC003LVはシリアルモードにするとUSB-シリアルポートデバイスとして稼働します。これをRaspberry PiのUSBポートに接続し、シリアル通信によって連携させました。
視線からロボットのモーターへの指令への変換はすべてPC側プログラムで処理しています。残りの2箇所のプログラムは開発効率の関係上極力単純にしました。VS-WRC003LV側のファームウェアは、シリアル通信から2つのモーターの回転方向とDuty比を受け取ってモーターに反映するだけというものです。ただし、通信切れ時の暴走を防ぐため、一定時間データが来なければ停止するようにしました。Raspbbery Pi上のプログラムはTCP(ここはUDPの方がより適していましたが)で受け取ったデータをそのままシリアルポートに送信するだけのものです。
このロボットを作ろうと思った理由は、ロボットからのライブ映像と視線入力によって人間とロボットの機械系をひとつのフィードバックループにしたらどのような感覚が得られるだろうかという興味からです。
機械と環境で完結しているシステム、例えばライントレースロボットであれば
ただ、今のところはまだ人間以外の要因(特に映像配信)の遅延が大きいため、人間という要素はあまり影響していません。というよりは、ロボットを遅くして遅延による影響で不安定にならないように調整してあるというのが実際のところです。そのためか、まずまず自然な感じで操縦できたのではないかと思います。
ロボットの移動は視線の移動幅に対して比例するように作ってあります。これにより操縦者が映像内の物体を目で追うと、PID制御のP成分と同様の働きをします。右にあるものを見るとロボットが右を向き、映像では物体は左に移動していきます。そのため右に曲げる勢いも小さくなり、最終的にはその物体がロボット真正面付近に来た時平衡します。前後方向についても同様のことがいえます。この原理によって、「行き先を見る」だけで大体その近辺までロボットを誘導することができるのです。
次作りなおす機会があれば、まずは映像の伝送を改善して、ロボットをより高速に移動できるようにしてみたいと思います。
| 固定リンク | コメント (0) | トラックバック (0)
8月21日に行われたROBOT JAPAN 12th 大会に出場しました。メインとなる人型ロボットによる格闘競技の他、ダンス、一発芸、サバイバルマラソンといった別の競技があるのが特徴の大会です。
| 固定リンク | コメント (0) | トラックバック (0)
8月6日、7日に行われたMaker Faire Tokyo 2016に出展しました。出展物は「ロボットアーム書道」としました。「逡巡」を改造したロボットで教示再生により毛筆で字を書くパフォーマンスを行うものです。今回の展示イベントがMaker Faireであることから、「作」「創」「造」の3字を含む動作を作りました。
NT金沢に出展した時のように、今回もまた展示用ポスターを兼ねた説明資料を作成しました。Googleドライブで公開しました。 PDFファイルとしてダウンロードも可能です。
技術的には直接教示であらかじめ作っておいたモーションを再生するだけというもので、特に新しいことはしませんでした。展示名を「書道ロボット」ではなく「ロボットアーム書道」としたのも、ロボットが書道家になるのではなく、電子工作・機械工作の基礎的な技術と人間の書道技術を組み合わせてパフォーマンスを行います、という意味合いが込められています。実際、ロボット自体は特に書道に特化したものというわけでもなく、しかも使うのに若干コツが必要なシステムになっています。
ハードウェアの改良として、筆を部材で挟み込んでネジで押さえて固定できるようにしました。筆がアームの中心軸上になくオフセットして付いているのは、長い筆を切断加工せずにそのまま使用できるようにしたかったためです。しかしながらこのために紙の左の方での左払いが非常に書きづらいという機構上の欠陥が動作作成中に判明しています。なんとか誤魔化して、単純な字ではこのぐらいまで書けるようになりました。
電子回路基板の展示などと比べると大きなロボットで動きも特徴的なため、それなりに目立っていたかもしれません。ロボットが動作中通りかかった来訪者のうち半分以上の方々が足を止めて見てくれたような印象でした。まずまずの成功だったのではないかと思います。
技術者として専門の仕事をしていると思われるような人から技術的なことはあまり知らないという人、小中学生まで幅広い多数の来訪者に見てもらうことができ、色々な話をすることができました。
次は今年の12月Ogaki Mini Maker Faireがあるとのことで、再度改良しての出展を検討しておきたいと思います。
最後に、展示の様子は自分では撮影しなかったため映像はあまり残っていなかったのですが、来訪者視点側からの動画をTwitterで公開してくださった方々がおられましたのでここに引用して紹介します。
ロボットアーム書道。なんという達筆! #MakerFaireTokyo2016 pic.twitter.com/Qd2dR6Xjry
— かっしー @Andriders (@kassy_kz) 2016年8月7日
ロボットアーム書道
ものすごい滑らかな動作に感動#MakerFaireTokyo2016 pic.twitter.com/W9MXbBFVoK— 多脚思考戦車@富山は素通り (@iamtossup) 2016年8月6日
| 固定リンク | コメント (0) | トラックバック (0)
Twitterの方にも何回かに分けて投稿しましたが、ここにもまとめておきます。
試作の旋回軸部分には、スラスト軸受けを簡易的に作りました。転がり軸受ではありませんが、滑らかに摺動して動きつつ軸への曲げ荷重を軽減します。この試作ロボットの負荷であればサーボ本体とサーボホーンだけでも支えられるのではないかと思いますが、検討用・見本用にということで作ってみました。
上の板金下面(サーボホーン上面と一致)とサーボ表面の間には2mmの隙間があります。この隙間を埋めるスペーサーとしてこのような形状の部品を切削により作りました。材質はPOM(ポリアセタール樹脂)、自己潤滑性があることと耐摩耗性から軸受に使われているもののためここにも採用しました。| 固定リンク | コメント (0) | トラックバック (0)
先週6月25日に行われた第四回ROBO-剣に参加しました。
| 固定リンク | コメント (0) | トラックバック (0)
最近のコメント