goo blog サービス終了のお知らせ 

プロジェクト 秘密戦隊ハカタ 事件簿

「秘密戦隊ハカタ」が遭遇したさりげない日常の事件の記録

プロジェクト 秘密戦隊ハカタ 今日も何処かで事件発生

プロジェクト 秘密戦隊ハカタとは。 ハカタの平和を守ると称し、勝手にに結成された謎の軍団である。 彼らは今日も何処かで発生するしょーもない事件を求めて、ハカタの町を彷徨っている。 これはそんな秘密戦隊ハカタの、どうでもいいような日々の事件を追ったドキュメントである。

Android開発講座4日目(App Inventor 2)

2011-06-07 08:48:20 | Android
AppInventorも2.5日目になってきたので、少し細かい操作の説明をやったよ。

今日やったこと
・文字列操作(Trim、segment、split)
  例題 「2011/06/07」の文字列を「20110607」に変換して表示する。
・リスト操作
  例題splitで分割した文字リストの内容を表示する
・グラフィック描画(Canvas)
  例題 タッチした位置に○、ライン、テキストを描画する

さすがに、この内容でもついてこれない人が数人発生してしまった。
教え方に問題があると言われればそれまでだけど...
文字列操作、リストの扱いはJavaによるAndroidアプリ開発でも良く出てくる処理なので、処理の考え方を掴むために
やってみたんだけど、それでも苦戦する人が出てきた。やはり慣れないとロジカルな考え方自体難しいようだ。
また、ライブでApp Inventorを使って説明していると、どうしてもBlocks Editorの表示サイズが難しくなってくる。
後ろの人も見えるように大きく拡大すると、今度は全体が見えなくなるので何処を触っているのかわかりにくなってしまったり。

また、今回はプログラムが初めての人も多いのでできるだけ難しい用語は使わないように気を使っていたつもりだけど、
それでも無意識に色々使ってたらしく、あとからクレームがついてしまった。
うーん。プログラム未経験者向けのAndroid教育は予想以上に難しそうだぞ。
このままではAndroidアプリの開発にはいるまで、時間がかかりそうな予感。
Java入門で終わってしまったりして。

Android開発講座3日目(App Inventor 1)

2011-06-06 01:05:57 | Android
App Inventorのライブコーディング(コーディングって言っていいのかな)をやったよ。
内容は、変数、ボタン、エディットボックス、制御(if、ifelse、For、While ループ)、タイマーといったところ。
作成したのは、カウンターと簡易タイマー。

まずはカウンター

・ボタンを押した時のイベント(Click)ブロックの説明の後、ボタンを押したらテキストの内容が変わる
・変数を一個作り、ボタンを押したらカウントアップする
・10個カウントしたらカウントしない。
・10個カウントしたら、文字を赤にして、メッセージを表示する
・クリアボタンを追加する。

といった手順で作成しました。


次に作成したのが簡易タイマー

・Clockブロックを使って1秒タイマーをつくる
・1秒のイベントでカウントアップする。
・スタートボタンを押すとカウントを開始する
・10秒後にタイマーを停止する
・ストップボタンでカウント停止

といった手順です。
あとFor、Whileブロックを説明するために、ループで加算して結果を表示するプログラムも作って見ました。

このあたりのブロックは、あとからJavaの講義の時に説明する内容と対比させて、動作とプログラミングを
理解してもらうという狙いがあります。


ところで、講義の中でBlocksEditorでのブロック操作でブロックのコピー、ペーストがCtl+C、Ctl+Vのショートカットキーで
出来ることを生徒さんが発見してくれた。
実はマウスの右クリックでメニューが出てこなかったので、てっきり使えないと思い込んでいたんだけど、ちゃんとコピーできたみたい。
いやー、これは便利だ。サクサクとブロックの編集ができるね。
あと、画面エディタでShift+マウスのホイールを行うと拡大縮小ができることも気付いた...
この辺、前からできたのかな。それとも最近サポートされたのかな。今までは知らずに同じような処理をぺたぺた張っていたよ。


Android開発講座2日目(Android開発環境の構築)

2011-06-02 23:56:45 | Android
ふー 2日目終わりました。 今日の予定はAndroid開発環境の構築とHallowWorld表示までを予定してました。 しーかーし、予想どうりというか、全然うまく構築できない! 一番のネックはネットワーク。 なんと、教室の28台のPCが一つの無線LANで接続されている状態だから、みんなが 一気にダウンロードを始めるとネットワークの負荷が大変なことに... そこまでは想定してて、JDK、Android SDK、Eclipseのファイルはあらかじめインストール しておいたものを使ったんだけど、最後のプラグインのインストールだけは、どうしてもネットワークに接続する必要があったので
そのままやってみました。

インストールの終了予定時間が5時間後と表示されて、プログレスバーは固まったまま


ちなみに、手順は
1.JDKのインストール
2.AndroidSDKのインストール
3.Eclipseのインストール
4.Androidプラグイン(ADT)のインストール

と言う事で、インストールが終わらないので、急遽次の日にやる予定だった App Inventorのインストールと簡単なアプリを作ってみました。

こちらの方はすんなりインストール出来た。

作成したもの
 ボタンを押したら、交互にテキストの色が変わるサンプルプログラム。

使用したコンポーネントブロック
・ラベル
・ボタン
・ifelse

やはり、実際に物を作りだすと、みんなの食いつき方も良くなってきた。

余談 変数の意味を質問されたのは、さすがに言葉に詰まった...
    やっぱり色々なレベルの人が受講しているみたい

Android開発講座1日目

2011-06-02 00:01:33 | Android
Android開発講座1日目が終了しました!

受講生は28名。

CとかPHPを触ったことがある人から、開発言語に全く触れていない人まで様々な人が
集まった。(女性は2名のみ...何故???)
前職も様々。もともと営業の人が開発をやりたいと参加した人が何人かいたのが目立ったかな。

これから6か月、最終的には全員Android Marketにアプリを登録することが目標なので
ハードな内容になりそう。

当然ながら、いきなりAndroidの開発は無理なので、まずはJavaの基礎あたりから始める予定。でも、本格的なJava実習に入る前に、AppInventorでまずは、ざくっとスマートフォン
アプリの開発について体験してもらうことも考えている。小学生にでもできるAppInventorだから(??)、全員なんとかアプリを作るまでこぎつけられるかな。


で、1日目の内容はまずAndroidの概要から説明した。
出来るだけ難しい説明は避けようとしたつもりだったけど、無意識に色々難しい?言葉を使っていたみたい。後からの質問で「Linuxって何ですか」って聞かれた時には、正直
説明の方法間違えたかもと思ってしまった。
そうか、そのあたりもちゃんと説明しないとね。

とりあえず、最初は苦労するのは間違いないけどね。
でも6か月後にはどんなアプリが出来上がってくるのか、今から楽しみ。

Androidの開発入門講座始めるよ

2011-05-23 21:54:29 | Android
やっとというか、なんというか
念願のAndroid開発入門講座(基金訓練コース)を開始できるところまでこぎつけました!

開始は5月30日(月)からなので、なんとあと1週間後。
講座自体は6か月の長丁場。
どんな感じになるか、蓋を開けてみないとわからないけど、
とりあえず最終目標は、受講者全員がAndroidマーケットに自分のアプリを登録する
(当然品質的にも耐えれるもの出す!)
と言う事なので、今からどんなものができるか楽しみ。
最後は各自作ったアプリをプレゼン(売り込み)するイベントも用意してるので
きっと盛り上がると思う。

今のところ受講者は28名、Java以外の言語を使ったことがある人から、
プログラム開発が全く初めて(とりあえずWardとかは使えるらしい)の人まで様々。
スタートラインのレベルの差がかなりあるので、うまくまとめていこくとはたいへんそうだけど
もう後戻りはできないからね。やるしかない

今のところの計画では、このブログで日記代わりに毎日その日にやったことを
記録していく予定。講座の内容はJavaの基礎からAndroid端末、クラウド(GAE)、
TitaniumとかAppInventerとかてんこ盛りなので、それを記録しておくだけでも
かなり参考資料としてはいい感じになるハズ。

まあ、例によって最後まで続けることが出来るかどうかはね...
モチベーションが残ってればの話かな






九州大会結果速報

2010-09-04 22:29:07 | ETロボコン
結果速報と言っても、関係チーム以外の結果は実はメモって無かったので、正確な順位は明日以降と言うことで...
Ust中継されていたので、もし録画されているようだったら後日確認します。

で、秘密戦隊サーガはモデル部門は最終選考には入ってましたが、賞はもらえず。
走行のほうは、インコースでミステリーサークルまでは入ったもののその後コースアウトでリタイア。
アウトコースはシーソーまでもたどり着けずコースアウトと去年に引き続いて散々な結果でした。
去年はマーカー検知に泣かされましたが、今回は基本のPDI制御のライントレースがうまくいかなかったみたいです。
狭いところでばっかり調整してたので、どうも広いところはなんか走りがおかしくてずっと悩んでましたが...
なんだか、年々成績が下がっていますね。早めに引退すべきでした。

秘密戦隊サーガインコース...失敗



しかしながら、一緒に練習してたSAGA組込ソフト研究会チームは、見事インコース、アウトコースとも難所をクリアしましたよ。
タイムも速かったです(多分1位)。
去年も走りは速かったんですが、モデルがイマイチで残念ながらチャンピオンシップ大会出場を逃しました。
けれども今回はなんとモデルでもGoldenModel賞(2位)をいただき、見事リベンジを果たせました。

モデルのチェックとアドバイスをした身としては、なんとか責任は果たせたかな。

っていうか、先生よりも生徒が成績が良いなんて

SAGA組込ソフト研究会OUTコース



SAGA組込ソフト研究会INコース



3年間ETロボコンに係わってきましたが、これで自分が参加するのは一区切り付いた感じです。
ホントは今年もSAGA組込ソフト研究会の学生チームを結成し、監督として出場するつもりでしたが、諸事情があって結局自分でやる羽目になってしまいました。
が、さすがに一人でやるには無理がありました。(ホント疲れた。もういいや)

まだ正式発表は明日ですが、SAGA組込ソフト研究会の総合優勝は確実だと思われます。
したがって、チャンピオンシップ大会の出場も確実ですので、今後はSAGA組込研究会の情報をレポートしていきます。
自分はモデルの監修を行うことになると思いますので。

ハッキリ言って全国制覇を狙いますぜ。
走りに関してはもう既に全国トップレベルなので、モデルに関しては更なるレベルアップを図ります。
まってろよ、東海、東京の常連チーム。

明日は九州大会

2010-09-03 22:45:35 | ETロボコン
いよいよ九州大会が明日に迫りました
今回のNXT走行体は去年と比べて装飾も少なく少し寂しい感じですが、あちこちのキズが激しかった練習を物語っています。

でも、今回は超音波センサの周りを覆っているので、車検でNGの可能性大だなぁ。
去年はしっぽと鈴付き首輪でOKだったんだけどね。
まあ、ダメだったら取るだけの話。
今回はそれほどこだわって無いって言うか...

なんと今回はUstreamで九州大会の模様が中継されるそうです。
http://www.ustream.tv/channel/ETroboconQshu
今回は、SAGA組込ソフト研究会と1,2フィニッシュを狙ってるので、宜しく。
SAGA組込ソフト研究会は練習ではすっごい速さでかっとんでたよ。
当然難所はシーソーストップ以外はトライしてます!!。

最後に
今回の大会に向けて準備していただいたボランティアの委員の皆さん。
お疲れ様でした。

アウトコース攻略

2010-09-02 16:16:27 | ETロボコン

インコースに続いてアウトコース難所攻略パターン公開!
例によって試走会の映像が無いので、狭い我が家の廊下を使って、部分攻略映像です。

まず、シーソーですが3秒停止は最初から諦めました。
停止できるポイントまで高精度で移動させることが難しい。
ホントに出来るのか、これ?
一緒に練習している某チームは、ジャイロセンサの値でフィードバック制御を使って1、2秒なら出来るらしいけど、3秒は長いよ。

まあ、時間も無いことだし、あっさりと挑戦は諦めてます。

シーソーに乗る瞬間は、バランス制御のジャイロセンサオフセット値を若干触っていて(前傾状態)、シーソーに乗った瞬間ふらつくのが落ち着くのをタイマーで待たせていることがポイントです。
もう少しうまく制御すれば、全然ふらつかずに上れるはずなんだけど、今回はここまでしかできてない。
シーソーはライントレースをしながら中速で上らせてます。
この速度加減が難しくて、勢い良く上る下りで転倒するし、遅すぎると上れないことになります。
あくもでも中速ということで...

下りはほっといても下っていくので、そのまま惰性に任せて下らせています。
ただ、降りきったところでそのままだと勢い余って転倒するので、ここでもちょこっとジャイロセンサオフセット値をいじくってて、前につんのめりそうになるタイミングで後傾させているのがポイント。

階段はシーソーの段差昇降の応用でいいんだけど、一段ごとにふらつきが落ち着くまでタイマーで待たせています。
ここも、もうすこしうまく制御すればピタッと段を上ったところで止めることができるはずなんだけど、今回はそこまで気力がありませんでした...。

ビデオでは2段目がうまく登れてないようですが、これは電池が8.0Vだったせいで、新品電池では一気に登れます(のはず...)

ガレージインは坂道下りのマーカーを検出して、そのまま途中からオフライントレースで直進させてます。
ガレージの位置が少し横にズレていて、そのままだと壁に接触しそうなので、一回方向を切り替えてバックでイン!
このほうがガレージインっぽくていいでしょう?

でも、意外と時間かかっているんだよね。10秒以内の制限ルールに引っかかりそう。
切り替えしなんかせずに、そのままインした方が早いのでいいはずだけどね。

まあこんな感じでいざ本番(9月4日)へ。
正直、自分でやるのはもうこれが最後にしたいです。

疲れたよ...(髪の毛が真っ白になり、いすに座っている構図)。



インコース難所

2010-08-31 23:09:54 | ETロボコン
いやん。ブログ再開とか言っておきながら全然更新してないやん。
気が付けば大会は1週間を切る状況に...

きゃー大変だ

まあ、その間試走会とか色々イベントがあったけど、ドタバタしてて今回は写真もビデオもないんだよね。
予定では、攻略ビデオとかも出していくつもりだったけど、ホント何も無し。

それじゃあんまり寂しいんで、自宅での調整風景をビデオに撮ってみたよ。
今回はインコースのペットボトル検出とミステリーサークルの所。
さすがに連続して繋げたコースは家の広さから作れないので、別々ね。

実はペットボトルは、モデルではパリティ(3個目)まで見て、パリティエラーなら1回戻って、それでもエラーならミステリーサークルを通らないという戦略にしてたんだけど...。
実際動かしてみると、コースから離れて戻っての繰り返しで、どちらかと言うとその間にコースアウトする危険性が高くなったので、とりあえず止めることにした。この軟弱物。

仕方ないので、少しずつ角度を変えて3回読み込むことで、できるだけ読込みエラーを起さないように工夫したよ。
これでエラーが起きたら、もう諦めるしかないね。

ミステリーサークルは、トレース無しのオフライントレース走行のみで攻略することに。直線と曲線の組み合わせね。
試走会で見てると、トレースを組み合わせて攻略するチームは少なかったな。
ほとんどオフライントレースで走行してたみたい。
全国的にもこんなもんかなぁ。
でも、入り口の位置合わせの部分は、各チームで色々考えて特色があったので面白かった。
今回実装したパターンも中々おもしろいでしょ。
去年失敗したマーカー検知はトラウマで使えなかったんだよね...

ということで、アウトコースのビデオは次回ということで。

個別の難所はうまくできても、大会の走行ではそううまくは行かないんだよなぁ。
どうなることやら。



試走会1回目に行って来た

2010-07-25 09:16:32 | ETロボコン

さて、ついにやってきました。1回目の試走会。
試走会と言えば、本番前までに2回しか無い貴重な時間。
本番と同じサイズのコースを準備できない、貧乏チームはホントに貴重な時間なんですよ。
そういえば、ブログの更新をサボっている間に、ちょっとした事件がありました。
そうです。なんと本番コースと同じやつを販売すると言うではないですか。
しかも十数万円!!!
そんなん個人チームでは買えませんって。
またお金持ちの企業チームとかは、何枚も買って会社の会議室つぶして常設コース作っているんだろうなぁ。
そんなチームと戦わなければならないのかよ。これは一方的に不公平でーす。
なんですか?貧乏チームは諦めろって言うんですかい。

まあ、不満をぶつけても状況が変わるわけでもなく、現状の厳しい環境でも何とかするのが秘密戦隊ハカタの真骨頂。
湯水のようにお金を使った金持ち企業チームを尻目に、ぶっちぎりで優勝を決めちゃるけんね。
これは本当にカーレースで言えばワークスチームと個人チームとの戦いみたいなもんだよ。
どうする?ぼろぼろのマシンでメカニックもいないようなチームが、ワークスをぶっちぎるわけだよ。
人は不可能って言うかも知れないけれど、ETロボコンに限って言えばお金かけた方が有利だけどそれだけでは勝てないんだな。
とりあえず、奇跡を起して見せるぜ。

で試走会なんだけど、今回の予定では、まずコースの寸法取りが第一目標。
なんせ、今回はこれまでコースのプリントアウトさえやってないので、実際のコースサイズがわからない。
正確には今回が3回目なので、過去のコースはわかっているんだけど、今回追加の難所関係がね。
特にゴールの車庫の位置とか大きさとか全然わからん。
次に、ゆっくりPD制御をかけてIN、OUTコースを走らせてログを取っておく。
ログさえあれば後で何とでも解析できるからね。
今回のログ解析ツールは昨年のものをそのまま使うことに。
一箇所、超音波センサーのログとグラフ表示を追加しています。
そして、時間があれば難所のを少しトライして終わりという予定。
うまくいけば実りのある試走会になるはずだったんだけど...毎回おんなじ残念な結果になってるなぁ。

試走会は15:30分から18:00間での2時間半。今回は一人だから色々やることがあるよ。
手際よく作業しなきゃね
まずは予定通り、コースの寸法取り。メジャースケール片手にあちこち計ってやった。
ほぼ、予想どおりではあったけど、予想外だったのはミステリーサークルのマーカーであるペットボトルとコースとの距離。
20cmぐらいあると思って、検出動作のシナリオを考えてたけど、13cmと予想よりもだいぶ狭かった。
これだと、考えてたシナリオではペットボトルにぶつかりそうかな。
コース測定(他のチームはアッサリ測定終わって、最後まで計測していたのは自分だけでした^_^;

さて、測定も終わり、次は周回走行のログ取り。スピードは関係なく安全性重視で確実に走行させる戦略。
まずアウトコースでシーソーの前まで走らせます。
うーん、今回NXTのは前回から車輪の幅が広くなったので、そのままのPD制御パラメータは使えないんだけど、結局サンプルコースでのチューニングさえもできてないので、
あまり変更無しのまま。やっぱり安定感に欠けていてかなりふらついてます。
チューニングは時間がかかりそうなので、とりあえずそのまま、IN、OUTのコース走行ログを取り終えました。

次は、ちょっと難所攻略用のライントレース無しの直線、曲線走行の確認をしようっと。
で、プログラムをロードして走らせると...ん?なんか変。
PD制御が全く利いてなくカクカクしてます。しかも直線のスタートで一瞬だけぐいっと曲がるため、思ったような直線になりません。
案の定アウトコースの車庫入れでは、最初のズレが影響してうまく車庫に納まりませんでした。
なんか、家で走らせていた時と動きが全然違う。(いつものことですね。全然学習してない...)
ちょっとこのまま走らせても正しいデータが取れなさそうだったので、一旦パソコンのあるテーブルに戻って直線走行の確認を行いました。
軽くパラメータを変更しても一向にふらつきが収束する気配がありません。ごちゃごちゃ試していたらあっという間に30分が経過してしまいました。
このままやっても直りそうも無かったので、一旦諦めてPD制御なしのモードに切り替えて再トライすることにしました。
このモード、PD制御無しなのでカクカク動きますが、意外と距離計測の精度はいいんですよね。
わかる人が見ればわかる、けっこう恥ずかしい動きなんですが...

で、これで車庫入れはIN、OUTもすんなりできました。ちょっと車庫に入った後停止中に動いて、壁に接触するのが気になりました。
停止制御を見直さなくては。もしかして停止もPD制御?
でペットボトルの計測は、案の定コースからの距離が近すぎでペットボトルにぶち当たります。
90度カーブで行って戻って計測する戦略なんだけどね。カーブの回転半径を変えるか、別の戦略にする必要がありそうかな。
他のチームは、灰色のマーカーのところでくるっと一回転させて超音波センサを読み込む動きが多かったかな。

ライントレース無しの動作が思いのほか、いい感じだったので(カクカクですが...)調子に乗ってミステリーサークルに朝鮮。
今回はライントレースを全く行わずに、直線と曲線の組み合わせでポールの間を抜ける戦略です。
これだと、4つの走行パターンは直線距離のパラメータテーブルを入れ替えるだけで同じでいいから、調整が楽だしね。
今回は絶対工数が少ないから効率よくやらなければ...
今回の試走会ではバタバタと忙しくて写真とかビデオを撮る暇が全然無かったんですが、実はミステリーサークルの失敗映像だけ撮ってました。
この失敗は右回転の距離制御がうまくいかず回りすぎてますが、なんかバグがあるようです。
ETロボコン2010試走会ミステリーサークル失敗

家では直線からカーブの組み合わせのみテストしていたので、初めての連続パターンの動作でここまで動けば十分でしょう。
早速、家で一部プリントアウトのコースを作らなければね。あっと、でも広げるところがないなぁ。そちらを先に考えなきゃ。
結局、そのあたりをごにょごにょやっていたら、あっという間に時間切れ。
ふう。一人だとやることが一杯で忙しい。
でも、なんとか目的のデータは取れたかな。


ちなみに今回のNXTは偽DROID君仕様でこんな感じ。「なんちゃってDROID君」とでもしておきましょうか。

ちょっとオリジナリティが無いって?確かにね。まあ本番前までにはもうちょっとデザインを変えるつもり。
今回考えているコンセプトシートのストーリーではDROID君は関係ないので、どうしようかなー。
とりあえず、課題はまだまだ山済みなのが認識できました。
そろそろ提出モデルの作成にも取り掛かる必要があるし、時間をどれだけ取れるかが勝負になりそうだな。