代替わり

今月初めに行われた成果発表で代替わりをして、ゼミ長になりました鎌倉です。
現在1年生全員がある程度プログラムの知識をつけるべく講習会を開いています。代替わりに際して新たにその講習会を企画、運営する会長という役職を設けました。来年のInRoFではそこで学んだことを活かして新しく入ってくる1年生を可能な限りサポートし、満足のいく結果を残して、ロボットを製作、制御する楽しさを知ってもらえればと思います。

今後も主に新しくWEB係になった者がブログを更新することになっています。
InRoFや成果発表会などいろいろありましたが、そのとき製作したロボットを紹介していきたいと思います。
それでは1年間よろしくお願いします。

学祭

ゼミ長の武内です。

私たちt-semiの所属する東北大学では毎年11月のはじめに学祭が開催されます。
t-semiは毎年参加し、ロボットや趣味で作った様々なものを展示したり遊んでもらったりしています。
去年はボールを飛ばすロボットがメインだったためか、まるで託児所といわんばかりの子供率でした。

ところが今年は残念なことに参加団体の抽選の結果参加できなくなりました。
楽しみにされていた方、本当に申し訳ありません。

代わりにこのブログを通じてロボットや趣味で作ったものを公開しようかなと考えています。
まだ予定の段階なのでどうなるかは分かりませんが…。
続報をお待ちください。

NHKロボコン2014放送

本日の10時05分からNHKテレビでNHKロボコン2014の放送がありました。
みなさんご覧になられたでしょうか?
あ、寝過ごしたという方はきっと誰かが録画しています。
まずは優勝した名古屋工業大学をはじめ、参加した学校の方々の
健闘をたたえたいと思います。どれも素晴らしいロボットでした。
大会当日の午後いっぱいを使って行われた競技を1時間でダイジェストしていましたが、
大会の熱は伝わったのではないでしょうか?
T-semiとしても参加したわけですが、残念ながら2次予選で落ちてしまいました。
参加メンバーは本戦を見ていろいろ思うところがあったと思いますが、
次からのロボット作りに生かしていきましょう。
来年、NHKロボコン2015からの参加を表明している方々は、これがNHKロボコンというものです。
夏以降に向けて英気を養いましょう。

InRoF 2014 C37 おろぽん by チーム@2か月

少々報告が遅れましたが,InRoF(仙台知能ロボコン)に出場した「チーム@2か月」です.
ちなみにチーム名の由来は2か月前から製作を開始したのではなく,
いろいろあって2か月前にチームが結成されたからです.製作はもっと前から行っています.

ちなみに,ロボットは多足と射出の2台で出ました!
結果は敗者復活戦で敗退...と思いきや疲れ果てていた時に審査員枠で2日目に出場決定
実行委員会から「もう1日徹夜してね」といわれて,頑張りました.

多足ロボットの説明としては,
足回りはテオ・ヤンセンのリンク機構を用いて歩行しました.
構成は足回り用にDCギヤヘッドモータ918Dシリーズ 24VDC 100:1を2つ,
ハンド用に標準サーボモータ Type2を1つ使用しました.

上下振動しても,ラインセンサーを読めるようにし,ハンドも対応できるようにしました.

フルパワーでモータを回すと足が速く動きすぎて,滑ってしまうので
普段はデューティ比30%で回しました......が,敗者復活戦で歯車が空回りしてしまい
制御ができなくなったのでリトライ後,100%で回しました.
観客は盛り上がったが,滑り止めが削れてゴミが出たり,
フィールドが汚れたりと運営側に迷惑をかけてしまう結果となってしまいました.

ちなみに1日目は4足,2日目は6足で出ました.下の写真は2日目大会前の写真です.

次に射出ロボットについて説明します.
とにかく速く走ってほしかったので,足回りにはオーバースペックぎみのタミヤ3633Kを使用しました.ギヤ比は36:1です.タイヤも大きめのものを使用したので大体秒速1.2mぐらい出ます.大会では最初の直線部分だけですが,秒速1mぐらい出していました.
ボール集めに関してはPSDでボールを発見してアームで拾うというシンプルなものでした.
ボールを拾った後の発射がこのロボットの見どころだったんですが,これが思った以上に難しかったです.方向さえ合っていればに発射したボールはゴールに入ると思っていたんですがそうはいきませんでした.
発射されたボールをネットが跳ね返してしまって得点にならないということが大会一日目の試走台で発覚.発射の威力が強すぎるとボールをネットがはねかえしてしまうし,弱すぎるとボールがフィールド中央の台をこえることができませんでした.
急いで発射の威力調整に入ったのですが,発射のためのタイヤの回転数をはかることは想定していなかったのでモータへのデューティと時間だけでの調整に...当然それでは安定してボールをいれることはできませんでした.
そこで一日目の夜発射のためのタイヤに白黒のビニールテープを貼付け,それをラインセンサで読む事で回転数をはかれるように改良しました.ただ二日目朝は忙しく,試走台でどの回転数が適切か試すことができずに本番へ.
結果ボールは1つしか入れられませんでした.
結果は残念でしたが,射出ロボットは,先輩方やチームメイトの協力のもとようやく作る事ができました.特に先輩方にはお忙しい時間を割いてガワを見直していただき,またアドバイスもたくさんいただきました.本当にありがとうございました.

InRoF 2014 C07 Justin&Lucy

知能ロボコン、チャレンジコースに出場しました、Justin&Lucyの製作者、katoです。
圧縮空気を使用した分離&投げ込みロボットの2代目のマイナーチェンジ版で挑んだ今回の知能ロボコンでは、 自身初の決勝進出を成し遂げ5位という成績を収め、圧縮空気が新しい技術であるとしてチャレンジ技術賞を頂くことができました。

動き等はビデオ審査用に提出した動画をあげておいたので興味があればぜひ見てください。

Qtで使うOpenSSL のビルドについて

参號です。

最近T-semi部内でQtを使い始めようかなという人が増えてきました。
私もその一人で趣味として某艦隊シミュレーションゲーム、艦隊こ○くしょんの専用ブラウザを作ったりして楽しんでいます。

LinuxユーザやMacユーザならサンプル(あったかな?)どおりに進めていけばWebブラウザは簡単に作れて機能制限こそあるものの簡易的なブラウザとして利用することが出来ます。
が、Windowsユーザはそうはいきません。
というのも、自分でOpenSSLをビルドするか、配布しているバイナリ入手し、アプリケーションが参照できるところに 配置しないとhttps://hogehuga.piyo/のようにhttpsのリンクにアクセスした場合
QSslSocket: cannot call unresolved function SSLv23_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_get_error
この様に怒られて接続が出来なくなります。

それじゃあどうすればいいんだ!という感じですが、先にも述べたように
①自分でソースからビルド
②バイナリを入手する
この2つの選択肢があります。

ここでは①のソースからビルドを例にとって行っていきたいと思います。
これはこれからQtを触り始める同輩や後輩に向けて再度説明が必要ないようにという感じの覚書のようなものなので、過度な期待はしないでください。

今回使った環境は
Qt 5.2.* for Windows 32-bit MinGW OpenGL
MinGW

VS版をこのサークルで使っている人が自分の知っている中ではいなかったのでMinGW版を対象に進めていきます。

最初にはっきり言ってしまえば、
https://qt-project.org/wiki/Compiling-OpenSSL-with-MinGW
このページを参考にすれば特に問題なくビルドが終わってしまいます。
以上。

というわけにもいきませんね、ちょっと噛み砕いて説明いたしましょう。

ユーザーが別途インストールを要求されているのは、
MSYSを入れたMinGW
ActivePerl等のPerlの環境
です。
私はActivePerlにしました(他の物を知らなかったため)。

次にOpenSSLのソースを落として展開しましょう。
HeartBleedの問題があったので、なるべく新しいものを推奨。

Qtのページに書かれている通りにConfigureしましょう。
./Configure –prefix=$PWD/dist no-idea no-mdc2 no-rc5 shared mingw
$PWD/distの部分は好きに書き換えてください。
私はC:/OpenSSL/MinGWの様にしました。

Configureが完了するとMakefileが生成されます。
それでは早速make…というわけにもいきません、ちょっとMakefileを書き換えます。
まず1つ目としてPerlをインストールしたディレクトリを指定します。
PERL= c:/Perl64/bin/perl.exe
みたいにとりあえず絶対参照しておけば問題ないんじゃないでしょうか。念のため私はPATHも通しました。
2つ目として、testをさせないようにします。
というのも、このままmakeするとtestでエラーをはいて止まってしまうのです。
http://cat-in-136.blogspot.jp/2010/03/mingw32undefined-reference-to-winmain16.html
ここに原因らしきことが書いてありました、たぶんこれじゃないでしょうか?
ですのでMakefileの
build_all: build_libs build_apps build_tests build_tools

build_all: build_libs build_apps build_tools
の様にtestsを消し去りましょう、たぶん問題ないです。
最後に、
install: all install_docs install_sw

install: all install_sw
と書き換えちゃいましょう。
みなさん、どうせman読まないでしょ?

以上の準備が済んだら
make depends
make
make install
これでOpenSSLのビルドは完了。
prefixで指定したフォルダにいろいろと入っていると思います。
Webブラウザで使うのは
ssleay32.dll,libeay32.dll
だけだと思うので、それをアプリケーションが参照できる位置に配置すれば動作すると思います。
私は動作しました。

最初OpenSSL内にある何とか.W32の様なファイルを見てビルドしていたのですが、どうもできずにつまづいていました。
Qtで使うことを限定した場合結構例が載っていて非常に助かりました。
同じようなことで無駄な時間を費やす人が減れば私も嬉しいです。

次は要望のあったQtとOpenCVの連携及び簡単なサンプルコードも載せましょうかね…レポートの地獄から解放されたらの話ですが()

InRoF 2014 C40 アルサイクロクリーナー

知能ロボコンに出場しました, アルサイクロクリーナーの製作者, こばとんです.
得点はあまりできなかったのですが, 掃除機が競技台を疾走し, ボールを回収するというインパクトが評価され (?), アイデア倒れ賞と最優秀ビデオ賞を頂くことができました.

知能ロボットコンテスト2014 http://www.inrof.org/2014/irc/
C40 アルサイクロクリーナー http://www.inrof.org/2014/irc/score/rinfo/robot061.html

この記事は機体解説とかです.

【コンセプト】
このロボットは見ての通り, 掃除機の外観をもつロボットで, 構想自体は知ロボ初参加の2年前から温めていたものです.
掃除機の車輪と吸引機構を制御できるようにしてそのままロボットにしたら面白いんじゃないか. そう思ったのが始まりです.

因みにモノ枠のネタとしては, 昔はこんなのもありました.
扇風機 http://robot.watch.impress.co.jp/cda/news/2007/07/02/543.html
アタッシュケース http://robot.watch.impress.co.jp/cda/news/2008/06/30/1148.html
箒&ちりとり http://robot.watch.impress.co.jp/cda/news/2008/06/30/1148.html
スーファミ http://www.inrof.org/2013/irc/score/rinfo/robot031.html

【改造】
結局掃除機はこんなになりました.

掃除機の各機構の本来の機能を最大限活用できるようにこだわっています.
車輪や電源スイッチはそのまま使用しています.
小ネタですが, 電源ケーブルの巻き取りスイッチがあったところは, 巻き取りできるUSBケーブルが繋がっていて, ここから内部のマイコンにプログラムの書き込みが行えるようになっています.

当の電源ケーブルが生えていた機体後の開口部は, 外部電源から給電する際に利用しています. 1日目はここから給電して動かしました.

ごみをためる部分は外部からアクセスしやすいのでバッテリボックスにしました.

外観を損なわないように, ボール探索用の距離センサ (いわゆるPSD) は前面の吸引開口部に1つと, 床下に左右1つずつ搭載されており, 低い所から見ないと見えないようになっています.

【一応ロボット】
さて, 内部のロボットらしい部分の解説をすると, アルサイクロクリーナーは, 3つのアクチュエータ, 3つの距離センサ, 2つの壁体当たりスイッチ, 1つのI2Cカラーセンサから構成されています.

アクチュエータは, 足回りのステッピングモータとボール回収ファンの3つだけで, 知ロボでは最も少ない部類でしょう. 吸引は問題ないのですが, ボール排出もこの3つのアクチュエータでなんとかしないといけません. ボール排出は足回り, 吸引, 機体後からの排気をフルに使った割と面白い動きをします.

たまたま中古ショップでドライバを入手できたので, 知ロボでもよく目にする5相ステッパを使ってみることにしました. ホールディングトルクだけ見ると優秀な2相ステッパと大差ないのですが, 高速の伸びがとてもいいので, 取り出せる出力は5相ステッパの方が大きくなります.

吸引ファンにはEDFを使用しています. これは空モノ電動ラジコンの推進用ファンで, 今回使用したのは全長1mのラジコン飛行機に使われているものです. モータは定格400W程度のモータを半分くらいの出力で使用しています. 400Wで, 誤記ではないです.
因みにアルサイクロクリーナーの重量は約5kgなのですが, ステッパの電源を切ればファンの推進力だけで前進することができます.

ボール検知は3つのPSDで, 前方と左右方向を読めるようになっていて, 競技の進行に応じて使い分ける予定でした. 前日の午前中は回収できていたのですが, 午後から挙動が怪しくなり, 本番上手くいかず.
1次予選後に判明したのですが, 前面と右のPSDが正確に読めなくなっていたらしく, 何もないところに突っ込んだり検出距離が正確でなかったりしました.
2日目は左のPSDだけで競技を行ったのですが, ボールは取れたものの, 直前に実装した色読みが上手くいかず, 途中でフリーズしてしまったようです.

皆さんも, 初めて使うデバイスを本番当日の朝に取り付けるのは止めましょう.

【謝辞】
決勝に行くという個人的な目標は達成されませんでしたが, アイデア倒れ賞と最優秀ビデオ賞を頂くことができました. また, 素敵な副賞ありがとうございました.

ビデオ賞副賞の「絵でわかるロボットのしくみ」はツボを押さえた解説で, それでいて幅広く扱っています. ちょっと気になっていたあの機構この機構が紹介されていて, InRoFのネタ本としてもうってつけだと思います. 部室にも1冊置くことにしました.

アイデア倒れ賞の副賞は・・・・・・
これはステレオカメラと飛行ロボットで来年またアイデア倒れ賞を取ってね.   ということでしょうか?
チャレンジ技術賞の方にも似たようなものが行っていたような・・・・・・

それから科学館の皆様, 水曜日の試走の時は相当音が響いていたようで, すみませんでした.

【展望とか】
今回はプログラムがあまり詰められなかったので, 来年はもう少し完成度を高めて, インテリジェントなロボットを出せればと考えています.
当の掃除機の方は中途半端な出来に終わってしまいましたが, 学祭でラジコンにでもしようかなと思っています.

おしまい

※ 画像は2枚目を除き, ロボットコンテスト実行委員会様提供の競技中の写真を編集したものです.
※ 今年の学祭は抽選漏れて出展できないようです.

( こばとん )

NHKロボコン

5月31日、6月1日の2日間、東京の渋谷区で行われたNHK大学ロボコンの
見学に行ってきました。今年の課題は「A SALUTE TO PARENTHOOD」。
詳しい説明は避けますが、去年の課題などと比べても難しく感じられる課題でした。
T-Semiとしても挑戦しましたが、残念ながら本戦に出場することはできませんでした。
本戦の出場校は18校でしたがどこのロボットも完成度が高く、
予選から白熱した試合の連続でした。ここで大会の動画をお見せできないのが残念です。
そんな激戦を勝ち抜いたのは名古屋工大さん、おめでとうございます。
他の出場校も素晴らしい健闘ぶりでした。見ていると自分たちももっと頑張らなきゃな、
これに負けないものを作ってみたいなという気持ちになりました。
そんな大会の様子が放送されるのはNHK総合で7月21日(月)、午前10時05分から!!(ステマ)

金属消火器

近年、優秀な二次電池として一般にも普及しているLiPo電池ですが、
T-Semiにおいてもロボットの動力源として利用されています。
内部電源のロボットを作るときに非常に便利な電池ですが、メリットがあれば
当然デメリットもあります。それは使い方を誤ると発火の危険性があることです。
そのため、T-Semiでは金属消火器を購入し、火事の危険性に備えていましたが、
その消火器がこの度、期限切れとなってしまいました。
そのため、新しい金属消火器を購入したのですが、それがこちら

↑前任消火器との比較

↑金属消火器とN氏 ”私が作りました”風

大きい!
普通の消火器と同じサイズです。前の消火器と比べると
大きさが際立ちます。前の消火器が生産中止になった結果
こうなりました。しかし、いくらいかにも消火器な消火器が
あっても使わないのが一番です。なのでみなさん
LiPoの取り扱いは慎重に。

InRoF登録

さて、InRoFの登録が締め切られました。
参加する方々は無事登録できたでしょうか。
届いたメールによると今年は90チーム程、登録しているようです。
非常に数が多いので(毎年の事ですが)、14日の時点で提出画像を
審査して、ふるいにかけるつもりのようです。
実際の所どの程度厳しく審査するのかわかりませんが、
果たしてT-Semiの出場者はみんな無事14日までに
満足いく写真を提出する事ができるのか。
そして所属団体表記はt-semiでもT-semiでもなくT-Semiです。
いまいち表記が定まっていない印象がありますがお間違えなきよう。