高専ロボコン開発レポート2022@鈴鹿A 

#### これはなに❔
この記事は鈴鹿高専 Advent Calendar 2022の12/7日の記事です。

https://qiita.com/advent-calendar/2022/snct

高専ロボコン2022「ミラクル☆フライ」における鈴鹿高専Aチームの開発記録および、筆者の半年の記録です。
と言ってもそんなに立派なものではなく部内wikiに投稿する今年あったこと的な記事と兼用するつもりなので興味ある人はどうぞ。




#### お前は誰だ
SNCT機械工学科3年、SNCTロボコンプロジェクト所属で機械班。設計を主に担当している。高専ロボコン2021ではAチームの発射機の設計を担当、高専ロボコン2022ではAチームリーダーを担当。

#### そもそも高専ロボコンとは？
NHK主催で毎年秋ごろに開催される全国の高専生がロボットを作って競技に挑む大会。

https://official-robocon.com/kosen/



鈴鹿高専も毎年出場しており、機械工学科3年の筆者は高専ロボコンも3年目である。
が、2020,2021に開催された高専ロボコンは高専ロボコンではなく、オンライン前提のプレゼン~~おままごとしょうもな~~ロボコンだったので現地開催、ロボットで競技に挑む高専ロボコンは実質1年目だった。

地区大会には1高専からA,Bチームの2チームが出場する。


## 結果から言うと
* 地区大会優勝、全国大会1回戦敗退
* 満足できるロボットの出来ではなかった
* 時間がなかった
* もっとうまくやれたと後悔＆反省している

何故そうなってしまったのか、下に1年の経緯を書きながら考えてみます。



## 今年の経緯
### 4月末～ルール発表＆初動～
4月の最後にルール発表があった。今年のルールは「ミラクル☆フライ」紙飛行機を飛ばしてテーブルに乗せて点数を競う競技である。
![スクリーンショット 2022-12-02 125907.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/4109ecc1-2c1b-1f24-f9d9-0e7797b32394.png)

毎年この時期になるとロボコニストたち毎日高専ロボコンの公式サイトに行って変化がないか確認したり、ロボコン公式のtwitterが出す情報を見て一喜一憂したりする。今年は公式twitterでルールの発表日時が告知されており、その時間になると全国のロボコニストがF5を連打し始めロボコン公式サイトが一時アクセス不能になった。いくらルールが早く見たくても手動DoS攻撃は、しないようにしようね！





ロボコンは初動が肝心。初動のアイデア出しがロボットの姿形や性能に大きな影響を与えるためである。そんなヤバすぎるアイデア出しと平行してチーム決めも行われる。チーム決めはロボコンに所属してる人の中で誰をA,Bチームのメンバーにするのか、チームリーダーはだれにするのかなどを決める。チームメンバーによってロボットの完成度が大きく変わってくるのでこちらも超重要な会議である。

###### 今年のチーム決めは？？？
例年通り、Aチームは強い人を集めて地区大会突破を目指すチーム、Bチームは低学年の教育を優先するチームにするということで同意して決めた。

その結果こうなった。
Aチーム:2年2人 3年3人 4年2人 5年1人
Bチーム:?????
↑~~詳しく知らない。Bチームへの関心のなさが伺える。~~

Aチームの役割分担的に書くと、
機械班(設計、加工、組み立て調整)×3
電気班(回路設計、回路製作、プログラム)×4
マネージャー枠×1
で __始まった。__

去年、プロジェクトリーダー(部長的なの)とチームリーダーを同じ人にしてタスクが集まりすぎてパンクすることを経験していた。そこで今年はチームリーダー兼プロジェクトリーダーをマネージャー枠とし、ロボット製作には関わらないようにすることで1人へのタスクの集中を防いだ。

#### 問題のアイデア出し
ロボットが扱うのが柔らかい紙飛行機。しかもその紙飛行機の形も自由に試行錯誤していいというルールだったので大いに悩んだ。Vゴール(すべての的に紙飛行機を載せたら無条件で勝ち)を目指すこと以外、なかなか決まらなかった。
ここでグダグダするとよくない結果を生む。
__実現可能であり求めるスペックが出せるアイデアを複数出して試作を始めるのが理想である。__
しかし一部の~~ヤバすぎる~~アイデアに振り回されていらない開発へリソースを回してしまった。ここが反省点の一つである。
結局、爆速足回りでセンターを取って満載した精度のいい直動機構で全ての的に乗せてVゴールするというふわふわしたアイデアでプロジェクトが進み始めてしまった。この適当過ぎるアイデア出しは今年の __反省点__ の一つだと思う。
![スクリーンショット_20221206_174948.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/441418da-bd7e-cf5b-dea5-3215f48a7990.png)
↑最初期の直動満載のアイデア。重量的にもこんなものがうまくいくはずがない。


###### やばすぎるアイデアとは？
足回りを差動二輪＋3輪オムニにして爆速、というアイデア。自分は反対だったが激推しされたので4輪ステアと同時並行で開発されることになった。結局完成せず夏休みあたりにお蔵入りになるのだが当時は若かった。前半の設計リソースがこれに吸われていたため発射機構の試作が不十分なってしまった。これが大きな __反省点__。



### 5月～適当すぎる機構の試作～
アイデア出しで出たロボットの方針をもとに機構を設計、試作機を製作していた。
この段階で地区大会だけに搭載されていた直動機構の製作が決定される。
大会で他高専のロボットの多くが搭載していたローラー式の連射機構や単発の定荷重ばねの機構はあまりアイデア出しの会議では重視されず、作ってみてもいいけど微妙......ぐらいの立ち位置だった。初動の~~ヤバすぎる~~差動二輪のアイデアに設計リソースが吸われていて機構上部の設計者が自分一人だったのもあり、この二つの機構の試作、評価が不十分過ぎた。もう少しまともな機構を設計して、連射機構の有用性をしっかりと評価できていれば今年の状況も変わっていたかもしれない。


### 6月～壊れる直動、3年飛び入り参加、リーダーリストラ～
最後まで使っていた爆速足回りができてくる。はやい。もう一つの差動二輪のほうは出てこない。
直動機構を製作→数回の実験で破壊して作り直しを繰り返していた。ベルトを使った発射機構の製作が初めてだったこともありイマイチいい結果が得られなかった。激ヤバ出力のモーターを大量使用しているのに3Dプリンタにパーツの製作を任せていたのもあり機構が非常に軟弱だった。モーターのパワーが高すぎて、ブレーキをかけるときにギヤやらダンパーやらが死ぬのである。
加工がめんどくさいことを理由にせずにさっさと金属を加工したらよかった。この時期は本当に効率の悪い開発をしていた。
この辺からアイデアが錯綜し始める。初め固定砲台の直動をたくさん載せたらいいみたいなアイデアだったがさすがに重量がキツそうなので連射機構を搭載したり、発射機構を回転させたりしようという話が出てきた。
そこでベルトを使った連射機構を製作する人員として3年の機械班の一人が急にAチームに湧いて出てきて、2年生の電気班の一人とチームメンバーを交代することになった。
ここでな・ぜ・か、Aチームを追われることになった2年生の子をBチームに入れる、という話になりBチームと相当揉めた。BチームからすればAチームの都合で自チームを一人切らなければいけなくなったのである。急に湧いて出てきた3年生を憎むあまり部活をやめる子すら出てきた。今考えると相当かわいそうなことしてた。
このタイミングで同時にチームリーダーをマネージャー枠の子→自分に移した。チームリーダーは自動的に選手(実際にフィールドでロボットを披露する3人)になるためロボットをいじれる人でないといけないのである。こうしてチームリーダーは名前だけ、実際に書類を処理する人は別の人、という体制ができた。
![スクリーンショット_20221206_174543.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/64f6fa75-f473-e857-3d56-037f6a8e6b73.png)
↑4輪ステアの足回り:本当にすぐ完成形に近いものができた。

### 7月～低すぎる回転機構、うまくいかない直動＆連射～
上部機構をすべて回せるような大きな旋回機構をつけようという話になってきた。そこで自分が回転機構「くるくる」を設計することになった。しかしそんな大きな(直径700mm)ターンテーブルはないので必然的に自作することになったのだが材料をどうするかの問題が出てきた。金属で作ったのでは重すぎるし第一そんな大きな加工は無理である。カーボンの板を使うのはコストがかかりすぎる。そこでアルミ角パイプを曲げつつ、その上でMDFを組み合わせたリングをベアリングで挟んで回す方式に落ち着いた。1回作り直して実際に地区大会で搭載したものができた。この機構を設計するとき、できる限り上部機構に場所の余裕を与えるために足回りぎりぎりに配置したのだが、これがいけなかった。発射機構はできるだけ上に配置したかったら下のほうのスペースは不要だったうえに回路を乗せるスペースがとても狭くなってしまった。回路は乗らないことはないが手を突っ込んでのぞき込んで作業しなくてはいけない状況になってしまい、電気班の方々に迷惑を掛けました。本当に申し訳ない。
![スクリーンショット_20221206_175821.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/d87611ee-606c-ea97-67b5-f706669b6868.png)


__直動発射機構__ のほうは相変わらず試作完成→数回実験→壊れるを繰り返していた。~~そもそもアイデアがナンセンス~~ 金属ギヤを発注してそれを待つ間にその意味のないことを繰り返す必要があったのかは謎である。この段階では直動のリロード機構についてあまり真剣に考えておらず、「何とかなるやろ」ぐらいで考えて設計していた。これが原因でリロード機構について頭を悩ませることになり、最終的にも効率的なリロード機構は作ることができなかったので始めからリロード込みで全体の設計を考えるべきであったと __反省__ している。

__連射機構__ のほうはローラーよりベルトで送ったほうが精度がよくなるという謎の固定観念によってベルトで挟んで発射する機構を考え始めた。設計してたのは自分ではないがこちらも苦戦していた。紙飛行機1枚1枚を分けて送り出す機構がうまくいっていなかった。紙飛行機を重ねて装填数を稼ごうとすると紙を分けるのが難しく、1枚ごとに何か挟んで分けて装填すると装填数が稼げずに連射の意味が薄れる、といった状況だった。何度も試作してはうまくいかずに再設計、ということを繰り返していた。


### 8月～直動搭載、効率の悪い実験、ジャムる連射～
__夏休み前半__
幾度も破壊と再生を繰り返していた __直動機構__ が、パーツの金属化や設計の見直しによってようやく安定して発射を繰り返せるようになってきた。そこで機構をロボットに搭載してみた。もちろん回転機構の上にである。
ここでも効率の悪い開発をやっていた。ロボットの上に機構を搭載したことによって発射機構の実験時はロボット全体が使えなくなるのである。逆に言うと足回りや回路の調整、デバックをしているときには発射実験ができなかった。
もっと小さい機構ならばロボットからおろして機構単体で開発できたかもしれない。
さらにこの辺から直動発射機構の発射精度に暗雲が立ち込める。いくら発射機構の精度が良くても紙飛行機の状態によって飛び方が大きく変わってくることが実験によってわかってきたのである。それまでの実験は1つの紙飛行機を繰り返し発射することでしていたのでそれなりに同じ地点に着弾していた。しかし装填機構を実装し、多数の紙飛行機を連続で発射してみると折り方は同じはずなのに紙飛行機によって着弾位置がかなり変わってくることが分かった。ここで明確な解決手段を考えず、紙飛行機の折り方を工夫するなど消極的な手段しか取れなかったことも反省点の一つ。
![スクリーンショット_20221206_215115.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/29fe5429-7a83-9c67-b81e-b3e979d65387.png)
↑直動機構の完成形


__連射機構__ のほうはこの時期に基本の形が大体決まってきた。後ろからローラーで送り、さらに偏心ローラーで加速部分まで送り、ベルトで加速させて発射する方式である。しかしやはり後ろのローラーで送る過程で1枚だけ送るのに苦労していた。2枚一緒に送られて、ジャムる(機構が詰まって動かなくなる)このとが多発していたので送るローラーに張る滑り止めの素材を変えてみたり、ローラー自体の数を増やしたりしていた。
さらにはこの機構もプリンタとMDFに頼って作っていたために非常に脆弱だった。ローラーに張る素材を摩擦が多いものにすると負荷が大きくなってギヤが空回りしたり、発射時に紙飛行機が接している板が左右で高さが違っていたりした。


### 9月～重量制限、爆速連射、精度の出ない直動～
__連射機構__ がようやくまともに動くようになってくる。かなりばらけるが、一度に連射する数が100機を超えるため狙った目標に1つぐらいは乗って得点できるぐらいにはなってくる。紙飛行機の先端を抑えるパーツとローラーに張る素材の工夫によってだんだんとジャムりづらくすることができた。

__直動機構__ のほうはというと、相変わらず紙飛行機ごとの精度を合わせることができずに、目標の筒を狙えるパラメータを作っても発射する紙飛行機を変えると飛び方が変わる、ということを繰り返していた。さらには、連射機構の実験をするために直動機構の実験ができないケースが増えてきた。ここは来年以降どうにかして解消したい課題である。

ここにきて重量制限の問題が出てくる。直動発射機構1つと連射機構1つをのせるだけで制限の30kgに近くなってしまったのである。もともと連射機構は2つのせるつもりだったので連射機構を1つ減らすことになった。しかしここで得点できていない直動にこだわらず連射機構を2つのせたほうが良かった。チーム内での情報共有不足が原因の判断ミスである。
![IMG_7241.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/ea84df3d-9120-92b6-c4d3-109d888dae17.png)
↑9月の段階での進捗。重量制限によって連射機構が1つしか乗らない。


### 10月～紙飛行機職人、操作練習、地区大会～
__直動機構__ に関して、紙飛行機のばらつきを無くすために丁寧に沢山折って飛び方が似ているものを集めるという方法を取り始めた。紙飛行機の管理にもこだわり、折り目を強くつけるためにアイロンを導入したり、防湿のケースに入れて保存したりした。これでそれなりに精度が出るようにはなってきた。それでも1装填8発の間で狙った目標に確実に入れて得点することは厳しく、ロボット全体を使った実験が多くなってきたので直動機構のみでの実験はあまりできなかった。

地区大会が近いが、ようやく試合を想定した練習ができるようになってきた。この段階で選手3人のロボット起動時や装填時の動きを決めることができた。体育館にフィールドを引いて、連日実践練習だった。
フィールドを引くのを手伝ってくれた1年生の方々、感謝します。
操作はリーダーである自分がすることになっていたのでずっと練習していた。
実験の際、声掛けをすることは非常に重要と学んだ。動画を撮ってくれるように指示を出したり、ロボットの操作を宣言することで危険を減らすことができる。
地区大会直前には連射機構で5~10点程度取れる程度まで練習した。
![IMG_7242.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/75038a7a-45b1-23c5-3786-13d31aae6eb4.png)
↑地区大会前の練習風景

#### 地区大会
結果は予選2位通過、準決勝で10点、決勝で7点取って優勝。

* テストランの時に足回りがロンリウム(床材)を削っていて、このままだとルール違反になると告げられる。その場でなんとか修正を試みる。壁に当てるスイッチを正常に動作させることでなんとかこれを解消する。足回りのスピードだけで言ったら全国でもトップクラスだったが初手でセンターを取ってくるチームがほとんどいなかったのでそもそも爆速足回りを作る必要があったのかは疑問である。
* 東海北陸地区にはそもそも得点できるロボットが少なかった。得点できたのに予選通過できなかったチームはわずか1チームだけだった。同日に開催されていた近畿地区大会では100点超えが出ており震える。地区同士でのレベルの違いを感じる。
* 大会が進むにつれて乱数の引きが良くなり、得点が上がっていった。決勝で当たった石川高専はそれまでの試合ずっと7点を取ってきており、決勝だけ点数が低かった。そのためうちのチームが勝てたのはほとんど運である。


### 11月～部活停止、無理な改良、全国大会～
地区大会が終わってロボットの改良案を模索している矢先、部活停止を言い渡される。原因は活動場所の安全管理の不手際、無断の活動時間延長などである。~~半分ぐらい指導教員のいちゃもん~~
ロボコンの活動を妨害したいとしか思えない教員からの圧力によりメンバーは意気消沈。時間外に活用させていただいていた研究室も使えない状況に陥り、ロボットの大きな改良などなかなかできないような活動環境にされてしまう。
この部停は1週間強続き、地区大会～全国大会の間の4週間の貴重な1/4を消し飛ばしてくれた。

それでもロボットの改良はすることに決定した。地区大会で得点できなかった直動機構を外し、連射機構を1つ追加する。足回りのプログラムも床を傷つけないようにフィードバックをやめる。また、足回りの自己位置を計測してる「オドメーター」を作り変える。この3つを実施することにした。
オドメーターを作り変えて連射機構をメカ的に2つに増やせたのが大会2週間ほど前だった。ここから回路とプログラムをいじって全体通した実験ができるようになったのが大会1週間前ぐらいだった。足回りのプログラムは時間が足りず修正ができなかった。
しかしやはりデバックをするということは一筋縄ではいかないことだった。新しく作ったオドメーターではなぜか自己位置がうまく取れず、走行距離が延びるとロボットが回転していく現象が地区大会前よりもひどくなってしまい、走行すらままならない状況に。必死にオドメーターの調整やらなんやらをやってやっと得点できたのはロボット発送前日。数回の実験で17点、23点が出せた。
![スクリーンショット_20221206_231605.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2261082/36cf9400-dc8c-7064-e875-c24cd739d505.png)
↑17点出たときの様子


##### 全国大会
結果は15対31で1回戦敗退。

* 組み合わせ抽選で優勝候補と思われていた香川と当たり、絶望する。
* 前日のテストランでここでも、足回りがロンリウムを傷つけていると指摘される。地区大会では明確に削っていたのを指摘されたが全国ではブレーキ時のタイヤ痕が指摘された。安全管理のおじさんめちゃめちゃ怒ってた。指導教員会議でも鈴鹿だけ残らされて怒られたらしい。爆速足回りがあだとなって大ピンチだったが足回りプログラム担当の子のひらめきにより全てのモーターの出力を相当落とすことで対処した。この時書き換えたプログラムを試さずに本番を迎えることになったため暴走しないかとても心配だった。
* 本番、暴走はしなかったが香川にしっかりと点数を取られて負ける。一応全ての機能を出し切れたのでまったく動かないとかよりはよかったと思う。


## 反省点・教訓まとめ
* アイデア出しは慎重かつ大胆に。明らかに無理そうなアイデアにはしっかりとNOを。究極的には全てのアイデアは試作して実験してみないとわからないが、開発リソースにも限りがあるため取捨選択を見誤らない。
* ルールブックは穴が開くほど読む。解釈の違いによってアイデアが制限される。「その紙飛行機はルール的にだめだと思ってた」的なことが起こる。
* 試作は多少時間をかけても丁寧に。ちゃんと機能する試作機を製作しないとアイデアの正しい評価ができない。
* すぐに壊れる機構を作るな。実験できなきゃ意味がない。
* プリンタパーツとMDFに頼りすぎるな。逆に遠回りになることがある。
* メンバーを入れ替えるなら責任をもってチーム内で完結しろ。悲しみが生まれる。
* マネージャー枠を作るならチーム外で設けたほうが良い。枠の無駄使いになる。
* 回路のことも考えて設計をするべき。回路の構成やサイズが分からなかったら素直に電気班に聞くんだ。
* 時間延長は仕方ないにしても、片付けや掃除、整理整頓をしっかりすることによってリスクを減らし部活停止になることを極力抑える。