More Related Content
Similar to NHKロボコンにおける機械開発 (11)
NHKロボコンにおける機械開発
- 2. 2
Molina
• 東京工業大学 機械系 4年 (twitter:@Msymng)
• ロボット技術研究会
• 人間ならプログラミングか電子工作か機械工作のどれかは出来るよね ←は?
• RCJ(2010~2015)
• NHKロボコン(Maquinista)
• 関東春ロボコン運営委員(18~)
自己紹介
2017
• チームメンバー
• 機械メンテナンス
• 戦略決定 など
2018
• 機械班リーダー
• チームメンバー
• TRメイン設計
• MD改良 など
2019
• 機械班リーダー
• チームリーダー
• MR2メイン設計
• MD改良 など
- 5. 5
• スケジューリングの方法
• 安易に他大の真似してない?
• 理想的なものを追い求めていない?
• 各チームには各チームにあったスケジューリングがある
• チームの人数, 設備, 金, 環境はチーム固有
• これらによって最適なものは異なる
• 各チームで適切なスケジューリングの仕方を見つける必要がある
• いきなりチームの状態を適切に把握するのは不可能
• 大学受験ならモシとかあるよね←自分のレベルを探る機会
• 春ロボや夏ロボ等を通じて自分をふくめてチーム全体の能力や可能性を探る
スケジューリングの重要性
- 6. 6
理想的なスケジューリングをする
→締め切りに間に合わない
日程 機械班 回路班 制御班
3ヶ月前 実験
回路設計
実験の補佐
2.5ヶ月
前
機体設計
プログラム2ヶ月前 加工 はんだ付け
1.5ヶ月
前
組み立て 電装
1ヶ月前 機体完成
3週間前 改良・デバッグ
2週間前 練習
本番 優勝する
よくある失敗事例
・人を投入
・金(物, 環境)を投入
・時間を投入
どれを選ぶ?
解決策
理想的なスケジューリングの例
- 7. 7
• 時間を投入
• 締め切りを伸ばす ではない!!!
• 特に機械班,
制御の時間を犠牲にして締め切りを伸ばしがち
• 制御班を何だと思ってるの?
• 正解 NHKに電話して大会を延期してもらう
• まぁ普通できないよね
• 金を投入
• できるところもあるかもだけどまぁ所詮学生
• 額も限られる
• 人を投入
• 難しそうだが実際にはこれしか解決策がない
何を投入?
日程 機械班 回路班 制御班
3ヶ月前 実験
回路設
計
実験の補
佐
2.5ヶ月
前
機体設計
プログラ
ム
2ヶ月前 期限伸びたw
はんだ
付け
1.5ヶ月
前
加工
機体
どこ
1ヶ月前 間に合わないw
虚無2週間前 組み立て
3日前 機体完成 デスマーチ
本番 負ける
全てのしわ寄せが制御班に向かった例
- 8. 8
• そもそも全ての人的リソースを投入するのが間違え
• 2割くらいは余裕を持たせておく
• 人は風邪をひく レポートもある 単位も取得しなければならない
• 馬鹿は風邪をひかないらしいけどね
• これだけ人は不安定なのになぜ全てを頼ろうと思ってしまうのか
• 不安定なものにはバックアップを用意しておく
• 人の管理をうまくコントロールするのがリーダーの仕事
• 人は信頼しろ, しかし人のすることは信用するな
人はどこから湧いてくるのか
※人の特性を理解して
うまくチームを回す
- 9. 9
• スケジュールには余裕をもたせて多少の遅れなら吸収できるようにする
• できるだけタスクを細分化
• 遅れが発生したときの被害を最小化できる
• タスクに優先順位を設ける
• 各タスクの期間の半分とか過ぎた時点でその処理具合を評価
• 順調ならそのまま
• 遅れているなら人を投入
• それでもだめなら 諦める
• 優先順位の低いタスクを切る
余裕を持ったスケジューリング
参考:パレート式仕事術
「2割の時間で8割を終わらせる」
https://www.itmedia.co.jp/bizid/articles/1009/06/news036.html
- 10. 10
• 日本人, 諦めるの苦手?(まぁ当然人によるが)
• 組織が凝り固まりがち
• 結果よりも見た目や上の人の体裁などを重視しがち
• 追い詰められたとき冷静に判断できない傾向がある(あくまで組織単位の話)
• 某リンピック
• あんま言うと国家反逆罪で捕まりそう
• 自分たちの力量にあってないならさっさと撤退すべき
• 余計な犠牲が増えるだけ
• 学ロボは9ヶ月で成果を出さないといけない→計画通りにできなかったらそこは捨てる
• 参考:標準C++規格が3年おきに制定される理由
https://cpplover.blogspot.com/2019/07/c3.html
撤退の重要性
- 12. 12
• 「強い」機体全部設計できる人がいたら強い
• それはそう
• しかしそのような人材はすぐには育たない
• 育てるノウハウがあるチームはそれで良い
• でもそれ本当に育ててる?たまたまそういう人が加入してくるだけじゃない?
• いかにここをカバーしていくか
• 分業して1人あたりの負荷量を下げる
• 1人が特定の部分に特化する
• 各人の連携によって1台のロボットを作り上げる
「強い」機体をつくるには
※当然ながら複数人での
共同作業なので各人の
意思疎通が重要になる
- 14. 14
• 「投擲機構」の場合
• 悪い例
• シャガイを投げて50点取る(馬の面を出す)
• 良い例
• 700gの質量剛体を3m先のエリアに向かって投擲
• 投擲する物体は2つの平面と1つの曲面から形成される
• 95%以上の確率で特定の面が上になった状態で着地, 安定させる
• フィールド上から「把持機構」「装填機構」を介して初期状態にセットされる
• 「投擲機構」は初期状態から加速して射出後停止するところまでを担当
レイヤ抽象化の例
- 16. 16
• 各機構の必要条件を提示できる
• 達成できてる部分と課題を明確化
• ノウハウを継承していきやすくなる
• 「シャガイを投げる機構」だと継承しにくい
• 多分もうシャガイ投げないよ
• 抽象化によって新たな課題の共通している点, 異なる点を明確化できる
• 抽象化すればどこが同じでどこが異なるか把握しやすくなる
• 共通している点を引き継げば良い
• 異なる点を重点的に開発→開発の省力化
• 欠点も蓄積しやすい
• 「なんかうまく行かなかった」より「飛距離は十分だったが安定性が不足, その原因は…」など
レイヤ抽象化のメリット
- 17. 17
• レイヤ同士の統合が難しい
• コミュニケーションが重要
• 密接するレイヤ同士で細かくすり合わせを行う
• 「機体全体での最適化」がかけにくい
• レイヤ単体で独立してしまう→レイヤでの最適化と全体での最適化を分けて考える
• とりあえず全体を作って実験量及び練習量で解決していくしかない
• とはいえNHKではこれでも十分に戦えると思う
• ルールが1年毎に変わるので「完璧に最適化された機体」の登場率も低い
• ある程度までいけば制御などで勝負するほうが勝率は高いと思う
レイヤ抽象化のデメリット