ページ内リンク
'10 3/26 翻訳(仮)
'10 3/25 石川研訪問(2回目)
'10 3/22 仕事割り振り
'10 3/18 設計案&サーボ選定
'10 3/11 研究室訪問
'10 3/10 ソフト微微改造
'10 3/9 2年生試験明けミーティング
'10 3/7 ソルバの前段階
'10 3/1 教務との会談
'10 3/26 翻訳(仮)
'10 3/25 石川研訪問(2回目)
'10 3/22 仕事割り振り
'10 3/18 設計案&サーボ選定
'10 3/11 研究室訪問
'10 3/10 ソフト微微改造
'10 3/9 2年生試験明けミーティング
'10 3/7 ソルバの前段階
'10 3/1 教務との会談
'10 3.26 翻訳(仮)
翻訳プログラムの今できているところまでをアップローダにあげました。まだ完成していませんが、今の時点でも一応うごきます。というわけで、使い方などを書いておきます。
(つかいかた)
[1] (JavaをPCにインストールしてない人は)インストールする。
[2] ロダからダウンロードしたファイルTranslation0326.zipをお好きなディレクトリに解凍。
[3] コマンドプロンプト(, Cygwin, Terminal, or ...) とかで先程の中にあるディレクトリ「t1_0325」または「t2_0325」に移動する。
[4] 「java Translate 31 5 67 22」のようにTranslateに数列を付けて入力すると、サーボの動作に対応した数列が出力される。
ここで、入力数列は0-80の整数の列であり、回転との対応ははmemoという名前のテキストファイル参照。
また、出力数列とサーボモータの対応関係もmemo参照。
[5] 「java TranslateS Uwp r2 Bp Lwp」というようにTranslateSの後に回転名を付けて入力すると、アームの動作で実現できる回転の組み合わせに変換されて出力される。
アームの動作で実現できる回転の一覧もmemo参照。
[1] (JavaをPCにインストールしてない人は)インストールする。
[2] ロダからダウンロードしたファイルTranslation0326.zipをお好きなディレクトリに解凍。
[3] コマンドプロンプト(, Cygwin, Terminal, or ...) とかで先程の中にあるディレクトリ「t1_0325」または「t2_0325」に移動する。
[4] 「java Translate 31 5 67 22」のようにTranslateに数列を付けて入力すると、サーボの動作に対応した数列が出力される。
ここで、入力数列は0-80の整数の列であり、回転との対応ははmemoという名前のテキストファイル参照。
また、出力数列とサーボモータの対応関係もmemo参照。
[5] 「java TranslateS Uwp r2 Bp Lwp」というようにTranslateSの後に回転名を付けて入力すると、アームの動作で実現できる回転の組み合わせに変換されて出力される。
アームの動作で実現できる回転の一覧もmemo参照。
(注意事項)
使い方の例はmemoという名前のテキストファイル内にあります。
出力が多すぎてすべて見えないときは、
「java Translate 31 5 67 22 >出力ファイル名.txt」
「java TranslateS Uwp r2 Bp Lwp >出力ファイル名.txt」
のようにすれば、出力を「出力ファイル名.txt」というテキストファイルに書き込むことができます。
t1とt2の2種類翻訳方法を考えました。Translateに同じ入力をしてみると違った結果が出てくるはずです。ただし、TranslateSのほうは、同じ結果が返ってきます。どちらを使うかはまだ未定。それぞれ特徴をあげておきます。
使い方の例はmemoという名前のテキストファイル内にあります。
出力が多すぎてすべて見えないときは、
「java Translate 31 5 67 22 >出力ファイル名.txt」
「java TranslateS Uwp r2 Bp Lwp >出力ファイル名.txt」
のようにすれば、出力を「出力ファイル名.txt」というテキストファイルに書き込むことができます。
t1とt2の2種類翻訳方法を考えました。Translateに同じ入力をしてみると違った結果が出てくるはずです。ただし、TranslateSのほうは、同じ結果が返ってきます。どちらを使うかはまだ未定。それぞれ特徴をあげておきます。
- t1はひとつひとつの回転のあと、アームが基本状態(回転角0度でキューブをつかんだ状態)に戻る。270度回転は発生しない。
- t2はひとつひとつの回転のあと、2×2=4つの状態のどこかに遷移する。270度回転が発生する。
翻訳試作二号.xlsxはプログラムを作るために使った覚書です。
(ソースまで眺める方へ)
プログラムがまだ完成してないので、変数nexを用いる意味がなかったり、proc(int numf)が0しか返さなかったりするのは、現時点では仕様です。
directionの定義は翻訳試作二号のSheet2を参照。
プログラムがまだ完成してないので、変数nexを用いる意味がなかったり、proc(int numf)が0しか返さなかったりするのは、現時点では仕様です。
directionの定義は翻訳試作二号のSheet2を参照。
(まとめ)
翻訳の方法としては、ひとつひとつの回転を順番にアームでできる回転に変換するというもの。なので「ある面を右に回したあと同じところを左に回してもとに戻す」のような操作でも正直に両方実行します。ただし、入力列に含まれるキューブ全体の回転(向きの変更)においてはアームはうごかさず、キューブの向きの情報の変更のみ行われます。
翻訳部分で実際に動かす操作数が結構多くなっている気もするので、改良点や抜本的な新方法等ありましたら、教えてください。
翻訳の方法としては、ひとつひとつの回転を順番にアームでできる回転に変換するというもの。なので「ある面を右に回したあと同じところを左に回してもとに戻す」のような操作でも正直に両方実行します。ただし、入力列に含まれるキューブ全体の回転(向きの変更)においてはアームはうごかさず、キューブの向きの情報の変更のみ行われます。
翻訳部分で実際に動かす操作数が結構多くなっている気もするので、改良点や抜本的な新方法等ありましたら、教えてください。
以上、加藤が書き込みました。
追記(3/30)
プログラムを書き換えました。
変更点は次の通りです。
プログラムを書き換えました。
変更点は次の通りです。
- 「t1_0325」、「t2_0325」の二つのフォルダにはいっていたプログラムを一つに統合
- 各フォルダ内の「Translate」プログラムをそれぞれ「Translate1」、「Translate2」に変更
- 「TranslateS」はどちらも同じことをしていたので、名称はかわらずそのまま
ほかにもプログラム全体の構造が変わっていますが、実行して得られる結果はヴァージョン0325と同じのはずです。つまり、まだnexやint proc(int numfa)は利用されていません。これらを使うプログラムができたら、また差し替えます。
'10 3/25 石川研訪問(2回目)
更新が遅れてしまいましたが、この間2回目の研究室訪問に行ったのでその議事録をば。
順番が逆になってしまいましたが、加藤の翻訳プログラムもお見事です。
現状で翻訳を任せられる人が1人居るというのは心強い。
順番が逆になってしまいましたが、加藤の翻訳プログラムもお見事です。
現状で翻訳を任せられる人が1人居るというのは心強い。
<新メンバー>
塚本がルービックキューブ班にログインしました。…ってことでいいんだよね塚本?w
サーボ周りを中心とした設計の要員として頼りにしております。
一同、改めて頑張っていきましょう。
塚本がルービックキューブ班にログインしました。…ってことでいいんだよね塚本?w
サーボ周りを中心とした設計の要員として頼りにしております。
一同、改めて頑張っていきましょう。
<設計案>
現状の4つ腕の設計案でひとまず問題なさそう。
この案がうまくいかなかったときの避難先(2つ腕+下回転台)なども用意できているという意味で。
逃げ道は沢山作っておきましょう。
現状の4つ腕の設計案でひとまず問題なさそう。
この案がうまくいかなかったときの避難先(2つ腕+下回転台)なども用意できているという意味で。
逃げ道は沢山作っておきましょう。
<サーボに関して>
いろいろ計算(笑)した結果、この間橋本と竹内がアキバで見つけたミニサーボでも大丈夫そうだと分かる。
いろいろ計算(笑)した結果、この間橋本と竹内がアキバで見つけたミニサーボでも大丈夫そうだと分かる。
- ちなみに、石川先生はサーボのスペックを見る際にはワット数を最重要視されるそうです(考えてみれば確かに大事)。石川研志望な方々は心に留めておいてもよいかもしれません。
- というか計算結果って結局どうなったんだっけ? 計算できた人書いてくだしあ。(←無責任)
というわけで、予算解禁の4月1日以降に秋葉で買ってサーボの試運転をしましょう。
<サーボコントローラーの選定>
相性の問題もあるので、迂闊には選べない。
というわけで、上記ミニサーボを売っている店で店員さんに訊くべし。
best なものとまではいかなくても、 better なものなら必ず店員さんは知っているそうです。
また、先日ご提案のあった東工大のサーボコントローラー(現在は販売停止?)に関してはあくまで一例で、それに類したものを探してみると良いのでは、とのことです。
相性の問題もあるので、迂闊には選べない。
というわけで、上記ミニサーボを売っている店で店員さんに訊くべし。
best なものとまではいかなくても、 better なものなら必ず店員さんは知っているそうです。
また、先日ご提案のあった東工大のサーボコントローラー(現在は販売停止?)に関してはあくまで一例で、それに類したものを探してみると良いのでは、とのことです。
<OSの問題>
一般的なロボットのお話として、ハードとソフトを繋げた際に、指令を出すソフト部のリアルタイム制御が問題になってくるわけです。
一般的なロボットのお話として、ハードとソフトを繋げた際に、指令を出すソフト部のリアルタイム制御が問題になってくるわけです。
- 簡単な話として、PCが信号を出している間にそのPC内で何かしらの割り込み操作が入ってしまうと、信号出力が中断→ロボットが突然停止、な事態になってしまうわけです。
つまり、物理時間とコンピュータ時間の一致が必要となってきます。
対策としては、
対策としては、
- PC の Priority を下げる
- 割り込みをさせないようにする
などなど。実際に動かす際にはPC内もしっかり管理する必要があるわけですな。
ただし、今回のルービックキューブソルバの場合は、要は信号の順番が乱れなければよい(アームの動かす順番さえ崩れなければ動作自体は何ら問題ない)ので、わりと適当でも大丈夫かもしれません。
- 対象が時系列的に動く物の場合はリアルタイム制御が大問題になります(ex. 降ってくる卵を掴むロボットハンド)
<固定化>
ロボットは見た目が9割。お化粧はきちんとしましょう。
ロボットは見た目が9割。お化粧はきちんとしましょう。
- 見た目を綺麗に。見せたくないものは隠す。これ基本。
- 配線はまとめる(黒or透明のガムテープとかできれいに固定化する)
ちなみにこの固定化という作業はロボットのデバッグにおいては必要不可欠なものらしいです。
一度うまくいった箇所は固定化して二度と動かさないように。
さもないとその後の工程でバグが生じた際にどこの配線が温床なのかさっぱりわからない、という事態に…。
一度うまくいった箇所は固定化して二度と動かさないように。
さもないとその後の工程でバグが生じた際にどこの配線が温床なのかさっぱりわからない、という事態に…。
<宣伝>
我々の最終目標の1つとして、作成した5x5x5ソルバをYouTubeに上げる、という使命があるわけです。
我々の最終目標の1つとして、作成した5x5x5ソルバをYouTubeに上げる、という使命があるわけです。
- 本来は「世界初」になるはずだったのですが…。今では昔の夢でした。
- 「世界一になる理由は何があるのでしょうか。二位じゃダメでしょうか。」
おとなしく世界二位を目指してYouTubeに上げる際の注意事項として
- 英語で録音(帰国子女に吹き込みを頼みましょう)
- 帰国子女といえば、竹内にとっておきの秘密兵器の心当たりがある…かもしれない。
- メインを見せる
などなど、研究の宣伝にも戦略があるんだなあと改めて痛感する。
<まとめると>
ロボット研究者としての心として
ロボット研究者としての心として
- 失敗すること自体は悪いステータスではない。失敗したときの代案を用意できることがロボット研究者としての能力。
- でも、できる限り失敗の要因は取り除くべし。
な具合に尽きるそうです。
'10 3.22 仕事割り振り
ざっくばらんな4月の予定体制を。
…なんかこんなことを言ってて進んだ試しがないのですが、流石に期限が迫っているので頑張りましょうw
…なんかこんなことを言ってて進んだ試しがないのですが、流石に期限が迫っているので頑張りましょうw
<前提>
- 予算は4月1日まで使えない(逆に4月1日からは使い放題)
- 五月祭は5月29日(土)、30日(日)
- 設計案の変更の可能性を考えると4月30日までにマシン仮動作を終えたい
- 五月祭一日目は班長の誕生日
<ハード・ソフトTasks>
※人員は割と適当に割り振っています
[3月中]
ハード
ハード
- 石川研に相談
- アルミ部、ギア部のCAD設計図(橋本)
ソフト
- 万能Algo.実装(竹内、相浦)
- 短答Algo.実装(松田)
[4月5日まで]
ハード
ハード
- サーボ購入(4月1日以降)(みんな)
- サーボコントローラーの選定(橋本、竹内)
ソフト
- 通信方法の選定(橋本、竹内)
- 翻訳仕様策定(加藤)
[4月12日まで]
ハード
ハード
- サーボコントローラープログラム作成(竹内)
- サーボコントローラー動作確認(橋本、竹内)
- 位置合わせ、アルミ加工 -> アームを1つ作成(橋本、中川)
ソフト
- サーボコントローラーの通信テスト(橋本、竹内)
[4月19日まで]
ハード
ハード
- アーム仮動作、デバッグ(橋本、中川)
ソフト
- 翻訳プログラム実装(竹内)
[4月30日まで]
- アーム4つでマシン仮動作(みんな)
<画像認識Tasks>
- プログラム作成(殷)
- 小室先生に打診(みんな)
- ウェブカメラ購入(or 借りる)(みんな)
- 通信テスト(殷、竹内)
<現行設計案にミスがあった場合>
- 現行案(アクチュエータ)を使う
- 代用案(グリップアーム2個+はめ込みアーム1個)を使う
- いずれにせよハード関連の Dead Line は伸びる予定
まあこんなところですな。…結局デスマーチか。
'10 3/18 設計案&サーボ選定
3/15, 18のミーティングの内容をば。
<3/15>
石川先生の提案を基に、設計に関しては次の2つのいずれかで行くことがほぼ確定?
(案1)グリップアーム2個+下にはめ込み回転アーム1個
(案2)グリップアーム4個
案1のメリットは位置誤差吸収の保証がある。
案2のメリットは回転動作の手間の短縮、制作の簡約、(+人間っぽい?)
ひとまず案2の方針で。位置誤差がどうにもならなければ案1を。
どちらにせよグリップアームが要る。
石川先生の提案を基に、設計に関しては次の2つのいずれかで行くことがほぼ確定?
(案1)グリップアーム2個+下にはめ込み回転アーム1個
(案2)グリップアーム4個
案1のメリットは位置誤差吸収の保証がある。
案2のメリットは回転動作の手間の短縮、制作の簡約、(+人間っぽい?)
ひとまず案2の方針で。位置誤差がどうにもならなければ案1を。
どちらにせよグリップアームが要る。
が、ラック&ピニオンがそうそう売っていない罠。さてどうする。
<3/18>
時間通り来てくれたKT氏には申し訳ないが、KT氏が帰った後しばらくしてミーティングが始まりましたw
遅刻魔の多い(1人しかいないよby遅刻魔)RC班だからそこら辺は許してくだしあ。いやほんとすまない。
時間通り来てくれたKT氏には申し訳ないが、KT氏が帰った後しばらくしてミーティングが始まりましたw
遅刻魔の多い(1人しかいないよby遅刻魔)RC班だからそこら辺は許してくだしあ。いやほんとすまない。
いろいろ調べた感じ、ラック&ピニオンを使うよりもグリップ部分にサーボ2個使った方が簡単じゃね?っていうノリになる。合計でサーボ12個ですが、まあなんとかなる…のか?
まずは物品調査。秋葉原へGO
まずは物品調査。秋葉原へGO
- ピニオンは大量に売ってる。ラックがなかなか無い。なぜだ。
- ロボット店に行くとグリップ部分の機構はラックを使っていたり使っていなかったり。いずれにせよ組むのがめんどくさそう。
- それなりに性能の良い小型サーボを見つける。トルク不足が心配だが、まあなんとかなる?
そんなわけで割と良さげなサーボがあったので、まずは石川先生に相談をしなくては。
(研究室訪問の際の指示により)
あと、現時点での設計案でイケるかどうか一応確認する必要がある。
(研究室訪問の際の指示により)
あと、現時点での設計案でイケるかどうか一応確認する必要がある。
だいたいこんな感じの現状。
'10 3/11 研究室訪問
システム6研の教授,石川先生に本企画についてお話を伺いに行きました.
石川・小室研について -> http://www.youtube.com/user/IshikawaLab#p/u
石川・小室研について -> http://www.youtube.com/user/IshikawaLab#p/u
■MultiCuber(http://www.youtube.com/watch?v=t6DMaimg03E)について
確かに出来はいいが,人間味のない無機質な所が面白くないとのこと.
特に回転機構がはめ込み式なのが面白くない -> グリップ式にすれば人間らしくなって面白い.
特に回転機構がはめ込み式なのが面白くない -> グリップ式にすれば人間らしくなって面白い.
■メカニクスについて
企画全体としては
- 認識 -> 解法導出 -> サーボの動きに変換 -> サーボコントロール -> 機構を動かす
というような流れで動くわけですが,奥に行くにつれて製作は難しくなる,そうです.
特に,機械部分にサーボを上手く組み込むのは難しい.
特に,機械部分にサーボを上手く組み込むのは難しい.
石川先生から叩き台となる案を頂きました.
計数工学科の理念である(らしい)「人間らしさ」を出したいとのこと.
計数工学科の理念である(らしい)「人間らしさ」を出したいとのこと.
突っ込み所もあるにはありますが.
――――――
――――――
回転部にはグリップ式を採用する.
機構的には,サーボ+ラックアンドピニオン or ソレノイド が選択肢としてある.
機構的には,サーボ+ラックアンドピニオン or ソレノイド が選択肢としてある.
- サーボ+ラックアンドピニオン
直線状のギア2つと回転ギア1つで組める.中心の回転軸を回せば挟み込む動きが実現できる.
誤差の吸収(大事!)のために接触部にバネかシリコンゴムを仕込むべき.
誤差の吸収(大事!)のために接触部にバネかシリコンゴムを仕込むべき.
- ソレノイド
電流をかけるとコイルの中の鉄芯のせり出し具合が変わるもの.
――――――
MultiCuberと同じく,5段階の位置調節で何段回すかを決定する.
この機構には,サーボ+ラックアンドピニオン or リニアサーボ or リニアステッピングモーターがある.
この機構には,サーボ+ラックアンドピニオン or リニアサーボ or リニアステッピングモーターがある.
- サーボ+ラックアンドピニオン
この場合,移動させる対象が重いのでパワーのあるサーボを使いたい.
- リニアサーボ
直線動作するサーボ.
- (リニア)ステッピングモーター
サーボモーターのように位置センサーはついていないが,入力パルスの個数によって何コマ分進める=回転させるかを決められる.
よって,決められた場所を移動させるだけなら非常に楽.でも高い.
ステップモーター,パルスモーターとも言う.
よって,決められた場所を移動させるだけなら非常に楽.でも高い.
ステップモーター,パルスモーターとも言う.
――――――
これらの組み合わせでメカニクスを実現する.
文章で言っても分かりづらいと思うので,画像を参照.
(画像は...まだない)
文章で言っても分かりづらいと思うので,画像を参照.
(画像は...まだない)
■サーボ関連
更新遅れました.
サーボコントローラーには相性があるらしく,(上手く)使えるサーボが決まっているそうです.
なので,サーボコントローラーを先に選んだ方が良い...かもとのこと.
特に実績が既にある組み合わせだと外れがない.
電流でフィードバックがかかる奴がおいしいそうです.(安いので13k円くらい)
なので,サーボコントローラーを先に選んだ方が良い...かもとのこと.
特に実績が既にある組み合わせだと外れがない.
電流でフィードバックがかかる奴がおいしいそうです.(安いので13k円くらい)
とはいえ今回は大して難しい制御(コンプライアンス制御とか)は要求されていないので,コントロールは恐らく楽です.
位置制御くらいしか要らないし.
まぁ現実的には各部位に用いるサーボで必要なステータス(パワー,スピード,精密性)が変わってくるので,サーボの性能を吟味してからになるでしょう.
位置制御くらいしか要らないし.
まぁ現実的には各部位に用いるサーボで必要なステータス(パワー,スピード,精密性)が変わってくるので,サーボの性能を吟味してからになるでしょう.
流れとして,
簡易設計,各サーボに必要なパワー,スピード,位置誤差 等を概算 サーボはいくつ要る?精度,大きさは?スピードが要るなら減速比はいくつ? ↓ 石川研に該当するサーボを貸してもらう,もしくは買う ↓ サーボコントローラーの選定. 必要な制御は?(多分位置制御だけ) サーボの相性は?同時駆動数は? ↓ 合わせる
てな感じになるでしょう.
現在班で所有しているサーボ(S03T)でも動かせはするけど速度が出せないそうです.
現在班で所有しているサーボ(S03T)でも動かせはするけど速度が出せないそうです.
東工大の広瀬先生(ヘビロボットで有名な人)の研究室から優秀なサーボコントローラーが売っているらしいのですが,見つかりませんでした.
■認識部について
Webカメラによる認識の相性については,正直よくわからないとのこと.
まぁ不具合が起こったら小室先生に聞きましょう.
まぁ不具合が起こったら小室先生に聞きましょう.
ただ,照明の位置やシール表面の反射はよく考える必要があります.
つや消しするなり,影を作るなり,照明との角度を考えるなりしましょう.
つや消しするなり,影を作るなり,照明との角度を考えるなりしましょう.
■その他注意
- 頭の中の3次元形状把握はアテにならないので,必ず3D-CADなり段ボールのモックアップを組みなりして干渉をチェックすること.
- モーターの過負荷には常に注意すること.モーターの電源を入れるときは特に挙動に注意.
- 石川・小室研は100万アクセスのYoutube動画を多数所持しているにも関わらず,公式チャンネルのアクセスが2000も行ってません.と言うわけで宣伝 http://www.youtube.com/user/IshikawaLab .
■予算について
ここだけ班長が埋めておきます.
現時点でうちの班に約束された予算は以下の通り(優先順位は上から順)
(1) 石川研究室からの現物支給(サーボetc.) <- new!
(2) ARIEL(去年あった計数工学科の五月祭企画らしい?)から引き継がれるはずの五月祭予算(応物全体で20万円程度?)
(3) 丁友会からの資金援助(応物全体で20万円程度)
(4) 石川研究室からの資金援助(上限不定) <- new!
(5) 万が一のときは物工教務から支援(~20万円)
現時点でうちの班に約束された予算は以下の通り(優先順位は上から順)
(1) 石川研究室からの現物支給(サーボetc.) <- new!
(2) ARIEL(去年あった計数工学科の五月祭企画らしい?)から引き継がれるはずの五月祭予算(応物全体で20万円程度?)
(3) 丁友会からの資金援助(応物全体で20万円程度)
(4) 石川研究室からの資金援助(上限不定) <- new!
(5) 万が一のときは物工教務から支援(~20万円)
基本的に(1)がメインで,不足しているパーツを(2)(3)で補う.
(4)(5)は緊急手段,といった感じで.
(4)(5)は緊急手段,といった感じで.
ただし,各予算ごとに領収証などの扱いが変わってくるのが厄介なところです.
早めに確定報を出せるように努力します.
早めに確定報を出せるように努力します.
なお,物工企画(量子・相転移・音の共振分野)に関しては物工教務からの予算で事足りると思われるので,(2)(3)に関しては実質的には残りの計数企画4班での配分になるものと思われます.
'10 3/10 ソフト微微改造
どもー、ソフトをちょっとだけ改造しました。ですがソルバ機能はまだ完成していない。
ttp://u7.getuploader.com/ap2009/download/141/ProCubeSolver0310.zip
パスは3/7のときと同じです。
ttp://u7.getuploader.com/ap2009/download/141/ProCubeSolver0310.zip
パスは3/7のときと同じです。
(つかいかた)
使うだけなら上記ファイルを解凍してProSolver.htmlをクリックすればいいです(Java処理系一式はインストールしないと動かないかも)。
動かなかったらjavaをインストールしてください。
使うだけなら上記ファイルを解凍してProSolver.htmlをクリックすればいいです(Java処理系一式はインストールしないと動かないかも)。
動かなかったらjavaをインストールしてください。
コードを編集した際は、コマンドプロンプトでコードの置いてあるディレクトリに行って
「javac ProSolver.java Solver1.java」
「appletviewer ProSolver.html」
って入力してください。
「javac ProSolver.java Solver1.java」
「appletviewer ProSolver.html」
って入力してください。
今回変えたこと:実はあんまりない。
一部メゾッド(ついでにボタンも)の追加。
ソルバのコードを分離させてみた、くらい。
一部メゾッド(ついでにボタンも)の追加。
ソルバのコードを分離させてみた、くらい。
ちなみにソルバのコードを分割した理由ですが、javaのコードの長さの制限にそろそろ引っ掛かりそうな予感がしてきたので。
(一応1つのメゾッドにつき64KB以下というのがJDKでコンパイルできる条件みたいなので多分大丈夫だとは思いますが…。まああまり長くても編集しにくいし)
(一応1つのメゾッドにつき64KB以下というのがJDKでコンパイルできる条件みたいなので多分大丈夫だとは思いますが…。まああまり長くても編集しにくいし)
改造するときはSolver1.javaのsolveの部分にいろいろ入れていけばよいと思います。
'10 3/9 2年生試験明けミーティング
[1] ルービックキューブ班の定例会
とりあえず毎週月・木曜の12時に計数控室(入れない人は誰かに空けてもらうor端末室、教室あたり)で集まりましょう。
基本的にしばらく個人プレーが続きそうな予感なので、情報共有はしっかりやっておきましょう。
とりあえず毎週月・木曜の12時に計数控室(入れない人は誰かに空けてもらうor端末室、教室あたり)で集まりましょう。
基本的にしばらく個人プレーが続きそうな予感なので、情報共有はしっかりやっておきましょう。
[2] 研究室訪問
11日(木)の14時から偉大なる某先生のもとへ色々なお願いをしに行ってきます。
時間はだいたい1時間程度。事前にある程度質問内容を考えておきましょう。
11日(木)の14時から偉大なる某先生のもとへ色々なお願いをしに行ってきます。
時間はだいたい1時間程度。事前にある程度質問内容を考えておきましょう。
- 後述の Multi cuber の紹介
- Multi Cuber の各部分のギアの組み方
- ウェブカメラの相性とか
[2] 嬉しいような残念なようなお知らせ
既に5*5*5のソルバロボットは作られていたッ…!
4*4*4: http://www.youtube.com/watch?v=052JJGBxFH0&feature=related
5*5*5: http://www.youtube.com/watch?v=t6DMaimg03E
この5*5*5の Multi Cuber の機構が素晴らしすぎるので、これをまるまるパクってこの機構を色々改良したものを最終的な設計案としようかと。
というかこの機構頭良すぎだろ…。
ひとまず明後日の研究室訪問ではこの機構に関して、細部の構成について色々質問してみる予定です。
既に5*5*5のソルバロボットは作られていたッ…!
4*4*4: http://www.youtube.com/watch?v=052JJGBxFH0&feature=related
5*5*5: http://www.youtube.com/watch?v=t6DMaimg03E
この5*5*5の Multi Cuber の機構が素晴らしすぎるので、
というかこの機構頭良すぎだろ…。
ひとまず明後日の研究室訪問ではこの機構に関して、細部の構成について色々質問してみる予定です。
上の動画で注目すべきは動画アップロード日。
機構は素晴らしいし見習う点が多いんだけども…。あと半年位待ってくれればねぇ。
機構は素晴らしいし見習う点が多いんだけども…。あと半年位待ってくれればねぇ。
[3] ソフトに関して
ひとまずこの前ロダに挙げておいたjavaプログラムのsolver機能をつけることが目標。
たぶんsolverは2~3段階に分けることになる(それぞれのsolver開発を相浦と竹内で分担する)。
ひとまず手解法の万能アルゴリズムは頑張って実装する(たぶん今週中にでも)。
ひとまずこの前ロダに挙げておいたjavaプログラムのsolver機能をつけることが目標。
たぶんsolverは2~3段階に分けることになる(それぞれのsolver開発を相浦と竹内で分担する)。
ひとまず手解法の万能アルゴリズムは頑張って実装する(たぶん今週中にでも)。
ただし、ランダムなパターンは攻略できても、初期状態から数手回しただけのパターンに対する対応が問題。
もちろん簡単なパターンも万能アルゴリズムで解けるんだけど、ランダム並みに手数がかかるとカッコ悪い。
もちろん簡単なパターンも万能アルゴリズムで解けるんだけど、ランダム並みに手数がかかるとカッコ悪い。
対応の仕方一覧
- 簡単なパターンとその解法を予め覚えさせておき、「揃っている」状態ならばそれらを利用する(欠点:パターン列挙がめんどくさい)。
- 「揃っている」状態なら Random Algorithm を適用し、ダメなら万能アルゴリズムを使う(欠点:実装がめんどくさい)
- 展示の際にそんなことが起こらないようにお客さんを誘導する、上2つがイマイチうまくいかなかったときの緊急手段(欠点:根本的な解決になっていない)
[4] 個人タスク
いろいろ投げてみた。そのうち増える予定。
お祭りごとなんて所詮個人プレーの連携で成り立つものなのですよ。
いろいろ投げてみた。そのうち増える予定。
お祭りごとなんて所詮個人プレーの連携で成り立つものなのですよ。
【殷(帰国中)】
- 画像認識のプログラム作成
- USB接続回りのプログラムの勉強
他にもプログラム回りで仕事振られたらやってくれるらしい。
画像認識についてだけど、色の認識に関してはv-cubeの色の振り分けでお願いします。
(注:いまロダに上がっているプログラムはmegahouse製キューブの色であり、全然違う)
具体的には
(注:いまロダに上がっているプログラムはmegahouse製キューブの色であり、全然違う)
具体的には
展開図(色が全て揃っているとき)
2 | |||
4 | 0 | 1 | 3 |
5 |
0:white, 1:orange, 2:green, 3:yellow, 4:red, 5:blue
って感じでお願いします。
(分かりにくくてごめん)
って感じでお願いします。
(分かりにくくてごめん)
【松田】
- 「揃っている状態から数手だけ動かした状態が与えられたとき、短いステップで揃った状態に戻す」アルゴリズムの構成を考える。
たぶん遺伝アルゴリズムがいいのかね。
まずは大まかに方針を決めたり、軽く色々試して走らせてみたいですかね。
まずは大まかに方針を決めたり、軽く色々試して走らせてみたいですかね。
- 翻訳機構を考える(Multi Cuber の機構に合わせて、どのサーボを回すか、とか)。//←今は放置
サーボに関しては回転機構と思ってくれればおk。
ただ、今は機構の仕様も決まってない状態なので、現段階でそんなに深く詰めて考える必要はないです。
ただ、今は機構の仕様も決まってない状態なので、現段階でそんなに深く詰めて考える必要はないです。
【相浦、竹内】
- 解法プログラムの作成(ロダのプログラムのSolver部分を追加)
たぶん今週中になんとかするはず。たぶん。
【加藤】
- 機構回りの勉強
おおざっぱだけどいつタスクが来ても対応できるように色々下準備をば。
【橋本】
- 叙々苑の肉を食べる
【今のところ誰も担当してないタスク(思いつく限り)】
- ランダムアルゴリズム実装
- ほかにも思いつけばどうぞ
↑自分に枷を課したいドMなそこの君はさあ書くがいいさ!
'10 3/7 ソルバの前段階
そろそろ観念してソルバの制作に取り掛かってみているわけですが、とりあえず基盤になりそうな部分を抽出してアップしておきました。
興味ある人はここからダウンロードしてください。
ttp://u7.getuploader.com/ap2009/download/137/ProSolver_20100307.zip
パスは班メーリスで流したものです(班員以外で興味ある人は竹内にまで連絡してくれれば教えます)。
興味ある人はここからダウンロードしてください。
ttp://u7.getuploader.com/ap2009/download/137/ProSolver_20100307.zip
パスは班メーリスで流したものです(班員以外で興味ある人は竹内にまで連絡してくれれば教えます)。
(つかいかた)
[1] (JavaをPCにインストールしてない人は)インストールする。http://oku.edu.mie-u.ac.jp/~okumura/java2/install.htmlとか、まあ適当にググればできるはず。
[2] ロダからダウンロードしたファイルProSolver_20100307.zipをお好きなディレクトリに解凍。
[3] コマンドプロンプト(, Cygwin, Terminal, or ...) とかで先程ファイルを置いたディレクトリに移動する。
[4] 「javac ProSolver.java」って入力。
[5] 続けて「appletviewer ProSolver.html」って入力。
これできっと使える。
いちおう軽く遊べる程度のものではあるはず(すごく使いにくいけど)。
[1] (JavaをPCにインストールしてない人は)インストールする。http://oku.edu.mie-u.ac.jp/~okumura/java2/install.htmlとか、まあ適当にググればできるはず。
[2] ロダからダウンロードしたファイルProSolver_20100307.zipをお好きなディレクトリに解凍。
[3] コマンドプロンプト(, Cygwin, Terminal, or ...) とかで先程ファイルを置いたディレクトリに移動する。
[4] 「javac ProSolver.java」って入力。
[5] 続けて「appletviewer ProSolver.html」って入力。
これできっと使える。
いちおう軽く遊べる程度のものではあるはず(すごく使いにくいけど)。
(注意事項)
- このコードにはまだ解法は書かれておりません。したがって「Solve」とか書いてあるボタンを押しても何も起こらないのは仕様です。
- 改良の際は以下のメゾッドの中身にいろいろ入れていきましょう。
synchronized void Solve(){
// updated soon! }
- けっこー適当に作ったんでバグがあるかもです。見つけたら報告よろしく。
- 数理3年以外の大半の人は細かいコードの意味はわからないと思うけど、まあ細かいところはあんまり気にしないでください。実際そんなに難しくはないコードなので。
- いまは全部ボタン式だから非常に遊びづらいけど、そのうちマウスドラッグやコマンドに対応できるようにしたいものです。
- 一通り遊べるものになったら数理3研にでも寄贈しようかと。
んではんでは。解法部分がぼちぼち出来てきたら報告する…けど、けっこー時間かかるかもです。
'10 3/1 教務との会談
鳩貝さん(物工教務の主)と、予算等に関して話し合ってきました。
で、言われたことが以下。
で、言われたことが以下。
1. 予算関係
まずは計数の研究室からお金を借りるお願いをすべきではないか、との提案。
(ちなみに物工の予算は教務が握っており、計数の予算は各研究室管理、らしい。計数は教務には金がないけど研究室には金があるみたい)
というわけで、システム6研、数理3研あたりにお願いに行きませう。
(ちなみに物工の予算は教務が握っており、計数の予算は各研究室管理、らしい。計数は教務には金がないけど研究室には金があるみたい)
というわけで、システム6研、数理3研あたりにお願いに行きませう。
ただし、計数研究室がお金を出してくれなかった場合は、物工教務がお金を出してくれることが約束されました。
幸いなことに企画自体は結構好評みたいだったので。教務のお心計らいに感謝します。
予算凍結の心配はなくなりました。お金があるって素晴らしい。
幸いなことに企画自体は結構好評みたいだったので。教務のお心計らいに感謝します。
予算凍結の心配はなくなりました。お金があるって素晴らしい。
2. 展示関係
教務サイドは企画内容そのものよりも展示方法にかなりの興味を示されたようで。
確かに俺らの企画も展示方法についてはあまり考えていなかったので、まあ突かれるところだろうとは思ってましたが。
今の段階で考えることではないのですが、一応心には留めておきましょう。
以下、教務からのアイデア
確かに俺らの企画も展示方法についてはあまり考えていなかったので、まあ突かれるところだろうとは思ってましたが。
今の段階で考えることではないのですが、一応心には留めておきましょう。
以下、教務からのアイデア
- (PCの計算時間が大量にかかるようであれば)時間をゲージ表示すべき?
- 長時間で6面揃えるソフト以外にも、短時間で1面揃えるソフト等を並行して準備すべき。たぶん暇そうな子供のお客さんには前者を見せて、大学生とかには後者を見せる。また、6面揃える早送りデモムービーも事前に作っておく。(6面揃えるソフトはいずれにせよ必要であるが)
- キャッチフレーズっぽいのがあった方がいいかも?
3. 工作室利用
五月祭関係での工作室の利用が認められました。
平日の朝~夕方に、工作室の川端さん(漢字間違ってるかも)って人に五月祭準備で使用する旨を言えば色々手伝ってくれるらしいです。
定められた時間以外の、深夜等の利用が厳禁だそうです。
平日の朝~夕方に、工作室の川端さん(漢字間違ってるかも)って人に五月祭準備で使用する旨を言えば色々手伝ってくれるらしいです。
定められた時間以外の、深夜等の利用が厳禁だそうです。