こんにちは!
今回はソフト部(主にプログラミングを行う部)のオフシーズン(およそ9~1月。対:ビルディングシーズン=FRCというロボコンのロボットを本格的に作る期間。およそ1~3月)の活動の様子を紹介していこうと思います今回は「設計編」ということで、ロボットのプログラミングの基盤、「設計」についてとその活動の紹介を書かせていただきます。
またソフト部のオフシーズンの記事は「実装編」「調整、本番編」へと続きます。
是非そちらもご覧ください。また私たちSAKURA Tempestaの他の記事も是非ご覧ください!
実装編:完成し次第掲載
調整・本番編:完成し次第掲載
SAKURA Tempesta blogホーム:https://www.sakura-tempesta.org/blog/
1.設計とは
さくてんのFRCではFTCのシーズン中にオフシーズンロボットというFTCのロボットを作っています。本セクションではオフシーズンロボットにおける、ソフト部の活動の記録をお送りします。
設計というのはロボットのプログラムを書く際、何を、何を使って、どのように動かすかやどのような方針でプログラムをするかの方針などをExcelなどに書き起こすという作業です。一見単純そうに聞こえますが、これを元にコーディングをするので、使うものの正確さや有効でやりやすい動かし方を考えることが求められ、非常に重要なものとなっています。
2.Timelineの始まり
FTCのシーズンは9月序盤から始まりますが、ソフト部の設計は少し遅れて11月中旬から始まりました。今年のソフト部は7人のうち今年から入った新メンバーが4人と多く、どうすればいいかわからないということでてんやわんやでした(ちなみに筆者も新メンバーです)。今年の設計は基本的に一人一つずつ目安で書いていきました。
3.はじめての設計
ここで新メンバーの私視点で設計の活動を綴りたいと思います。
まず、私が担当したのはComponentの持ち物定義です。何それという感じだと思うので簡単に説明させていただきます。といっても私も最初は全くわかりませんでしたし、今も説明するのは難しいのです…
まず、ロボットにはComponent(コンポーネント)というものがあります。
コンポーネントというのはそれぞれ何かをする役割を持つロボットの可動部品みたいなニュアンスで私は理解しています。
今回のロボットには以下のコンポーネントがあります。
- Indexer(ボールをシュートする機構(Shooter)に送り込む部分)
- Shooter(ボールを飛ばす部分)
- Drive(ロボットを走らせる部分)

そして、そのコンポーネントの持ち物定義これらのコンポーネントが持っているモーターやセンサーなどについて、
- どの型番のモーターを使うか
- モーターをなんと呼ぶか
- センサーからどんな値が出てくるか
などを書いていきます。
4.設計作業
今回私含め4人が初めての設計でしたが、昨年以前のものが参考になったこともあり意外とあっさりできたのでは?とこの時はまだ思っていたのでした。


5.修正(×n)
そんな考えは瞬時に払拭。
実際のロボットの基礎となるので既存メンバー(複数年いるメンバー)がチェックをしてくれるのですが、大量のコメントがつきました…

これを修正してコメントしてもらって…を繰り返してなんとか完成した記憶があります。しかし、まだ設計にすぎず、(また設計の中にもStateやRepository、Modelの定義などもありますが、説明などが難しいこともあり、割愛させていただきます。)その先にも実装、調整とありますがコメントと修正の繰り返しによりロボットについての理解は深まったと思います。設計のみならず、この後のことも含めて、知り得たことの数々を本命のFRCロボットにも活かしていきたいと思います!
6.Timelineの終わり
以上、設計についての記事を書かせていただきました。少し長かったですが読んでいただきありがとうございました!
実装編、調整&大会当日編と続くので、是非そちらもご覧ください!
リンク:完成し次第掲載









コメントを残す