はじめに
お久しぶりです。倉澤ズズくんです。先月の10/7~10/8、当ブログで目標にしていたマイクロマウス東北地区大会に参加したので報告します。前回の終わりに「次回は距離センサについてまとめる」と宣言しておりましたが、先にこのテーマで執筆させてもらいます。
今回の記事では東北地区大会について軽くリポートをした後に、一旦ここまでのマイクロマウス製作についての振り返りと今後について記します。
今回の内容は以下の通りです。
- 東北地区大会
- これまでの製作の振り返り
- 今後について
東北地区大会
大会結果
結論を先に申し上げます。私のタイムは21.095
秒で9位となりました!!(18人中)
そう・・・
Pi:Co Classic3 で!!
出走 | タイム |
---|---|
1 | 1:25.239 |
2 | 0:21.102 |
3 | 0:21.095 |
4 | R |
5 | – |
Pi:Co Classic3 で確かに完走はしましたが、当機体はアールティが販売しているキットによるものです。当ブログで目標としていた自作マウスでの完走には至らずブログタイトルの挑戦は失敗となってしまいました。これについては後ほど触れます。
とは言え、Pi:Co3 での走り自体は満足していて鋭いスラロームで走行出来たと思います。実際の走行は公式youtubeのライブ配信(動画の開始地点に設定されています)で見ることができます。
満足行く走りが出来、全日本大会出場のためのポイントも獲得できたのでとりあえず一安心です。実を言うと不安になり会場でも少しばかり調整をしました。(大会では会場の迷路路面・照明環境に対してチューニングできるように1日を会場での迷路開放日、2日目を大会本番にあてれらています。大会が2日開催日程なのはそのためです。)
私のタイムは21秒程度の一方、上位は3秒程度で雲泥の差です。私もこの域に到達したいです。そして、マイクロマウス(旧ハーフ)の上位にも行けるように精進します。
交流の場としての大会
しばらくマイクロマウスと離れていたこともあり、4年ぶりの大会参加です。
今回の会場は山形県長井市のタスパークホテルです。大会の会場に来ると独特の雰囲気と緊張感があってとても良いですね。
マイクロマウスには車載や組み込み、IT業界で働く人々や大学や高専の先生方といった幅広い層が参加しています。幅広い参加者の方々と交流ができる懇親会も魅力の1つです。特に東北地区では力を入れて開催をしてくれていることもあり、大々的な懇親会が開かれ、大会参加者のレベルもとても高いです。山形県名物である芋煮も振る舞われました。
私も色々な人と交流し、面白い話をたくさん聞くことが出来ました。
仕事では自動運転について研究開発している方からの自動車業界のお話や、教員をされている方からのマイクロマウスの歴史及び教材としての活用の意見などについてのお話を聞くことが出来ました。
前者の方はマイクロマウスといっても特にソフトウェアについてしっかり作り込みたいため、ハードウェアは細部まで作り込むというわけではなく、長期間同じ機体を使いまわし、定期的な若干のマイナーアップデートでの改良に留めて旧ハーフサイズ競技に参加されていました。マイコンにはモダンなマイコンであるESP32を搭載していました。私の所感ですが、近頃はESP32の搭載やハードウェアをマイナーアップデートに抑える方が多いように思えました。
マイクロマウスには競う以外にも交流の場があり、教育だけでなく趣味といった面でも大変おすすめできます。
是非、来年も参加したいです。
これまでの製作の振り返り
さて、本題の自作マウスについてですが、100日時点で達成状況は以下の通りです。作業の予定日程順にソートしています(ブログではリアルタイム性を重視して投稿時点の日数を記述していましたが、実際の作業の進捗自体とは若干異なります)。
- 部品選定
- 車体設計
- 足周り設計
- 距離センサ設計
- ジャイロセンサ設計
- モータ+エンコーダテスト
- 回路・基板設計
- 基板発注
- 車体実装
- ソフトウェアの環境整備
- ソフトウェア設計(要件定義)
- ソフトウェア実装
100日のチャレンジは失敗し、未だ機体すらもできていない状態です。工数のズレについて、他にも今回学んだことについて考察します。
工数のズレ
緊急の用事や体調不良による作業の停止といった要因もありますが、主に以下の要因で失敗したと考えています。
- 作業項目の切り分け単位の不適切さ
- 想定外の事態を考慮していないスケジュール
- 失念・想定していない工数の発生
作業項目の切り分け単位の不適切さ
私の作業スケジュールはGitHubのkanban機能を利用して進捗の管理をしています(自作マウスのロードマップ)。
当スケジュールでは車体設計
という項目がありましたが、この項目は机上・3DCAD上・実機の組み立て全てを含んでしまっています(他の例では、モータ+エンコーダテスト
の項目もモータ
とエンコーダ
の両方を含んでしまっている)。
項目の詳細欄のチェックボックスでは、机上・3DCAD上・実機の組み立てが分けられているため確認できますが、ひと目で進捗の確認することはできません。
そもそも、1つでも完了していない場合は項目単位で未達成の扱いとなってしまうため、現在の進捗の確認という点で不適切です。仮に達成した項目であっても詳細欄を見に行かなければならず煩わしいですし、他の人が進捗を確認する際にも細かいルールを把握してないと分かりません。
項目の切り分けは、大まかに以下の2点が当てはまる場合は分けると良いと感じました。
- 作業の前半と後半で大きく日程が空いてしまう
- 単体での動作が確認できるものを複数含んでいる
ただし、上記に従って3DCADをパーツ単位で項目を作ってしまうのは煩わしいです。ですが、部品点数が少なかったり、まだ3DCADの操作に全然なれていない場合だったら項目で分けても良いとは思います。ですので、一概に体系的な場合分けは出来ないと感じました。人によってどの程度の細分化が必要かは経験則的に掴む必要があると思いますし、進捗をチェックしてくれる人にとっても分かりやすい項目の単位はどの程度になるかは事前に確認しておくと良いでしょう。私の場合は100日間の製作によって、自分に最適な項目切り分けの感覚を得られたと感じています。
想定外の事態を考慮していないスケジュール
まず、当スケジュールでは全てが失敗することなく上手くことが運んだ状況が想定されています。ですが、実際には様々な要因で予定は崩れます。
- 失念・想定していない工数の発生
- 見積もりと実際にかかる単純な工数感覚のズレ
失念・想定していない工数の発生
失念・想定していない工数の発生の例の1つはブログの執筆です。100日間に完成させることを念頭に置き、最悪の場合には全てが終わった後にブログの大部分の記事を執筆しようと考えていました。ですが、タイトルに対してリアルタイム性を持っていたほうが当然面白いものとなると判断した結果、後からブログの工数が入り込みました。
それでも当初は、ブログなら然程時間を使わずに書けるだろうという程度の認識でした。ですが、実際に経験していみると非常に時間がかかります。構成を考えることは勿論、ブログに使用する画像を選定・加工の時間は時間を要します。ブログという媒体で情報発信をしたこともなかったため、文章作成にも苦労しています。マウス研修を行う上では必要でしょう。
また、これは余談ですが大変嬉しいことに、ブログを始めたことで私の友人もマイクロマウスを始めて記事を参考に製作を始めました。最近では実際に色々質問してくれています。
見積もりと実際にかかる単純な工数感覚のズレ
事前の作業見積もりに対して想定以上の時間がかかることは往々にして起こりえます。今の所、想定以上にかかっていることの方が多いです。特に自分の実力から工数を見積もる上で、経験の無い作業に対しての見積もりがボトルネックとなっています。例えば、足周り設計に関して今回の機体の方式での製作は初なので手間取りました。他にも、部品のRoHS指令対応
とブログや回路図のレビュー
があります。個人レベルの製作では、いずれも考慮したことないものでしたが実際に経験すると想定以上の時間がかかってしまいました。
-
部品のRoHS指令対応
アールティでの自作マウス研修では製品としてのモノづくりの一環でもあるため、有害物質使用制限指令であるRoHS指令
に則ったマウス製作を行います。機体の設計をし、要求する寸法の部品を探す必要がありますが、探してみると見つからないということもありました。部品が無い以上、一部設計を変更せざるを得ないため更に時間を要します。 -
ブログや回路図のレビュー
ブログは執筆してから投稿するまで、レビューを通して原稿の修正を行います。ブログの執筆自体も時間を要する作業ですが、それに加えて更に時間を要します。ですので、当初見積もった作業よりも多くの時間を要することが多かったりします。
回路図についてはレビューをしてもらうことで事前に設計不良や配線ミスを見つけることができるため、基板を発注してからミスが発覚するより結果的に工数の短縮には繋がっていますが。ですが、どの程度のミスをするかは未知数ですし、レビューという工程の性質上、レビュー担当の方の業務の忙しさにも左右される工程であるため事前に精確な見積もりを行うことは難しいでしょう。
工数の見積もり
以上のことをまとめてみます。工数の見積もりをする上で大切なのは以下の2点であると考えます。
- 工数に多少の余裕を持たせての見積もり
- 作業の工数単位の細分化
工数に多少の余裕を持たせての見積もり
工数を見積もりには多少の余裕を持たせる必要があると感じました。最初に予め詳細な工数を見積もった上で、それに対して余裕を持たせるということです。実際に作業に取り掛かると予想よりも早かったり遅かったりすることがあるため、これを基にこれからの作業の工数見積もりへフィードバックすべきでしょう
今の所、ブログ執筆の工数は考慮せずとも殆どの作業において1.5倍以上の工数がかかってしまっています。例の1つは、足周り機構設計です。本来であれば1週間の期間で完成予定でしたが、実際には2週間程度費やしました。一部の設計に修正が入ると部品選定もやり直しとなる性質上、モデルを作り直す以上の手間がかかりました。
回路図に至っては更にかかり、本来であれば回路図作成から基板を発注するまでに1週間と見積もっていましたが、回路図の配線だけで1ヶ月以上要しました。単純な配線ミスや設計上の不適合からくる部品の再選定をしました。加えて、コンデンサや抵抗を含む素子の特性の理解が足りない部分が多く存在し、レビューをお願いしては指摘箇所を学習するといった流れを何度も繰り返しました。部品選定の際にはデータシートを読み取る必要があり、足りない知識を補う学習にも時間を多くの時間を費やすといった様々な要素が合わさり、大幅に期間が伸びるに至りました。
ですが、これらの製作経験から未だに工数の感覚を得られているとは言い難いのが現状です。
作業の工数単位の細分化
前述した工数に多少の余裕を持たせての見積もりで工数の感覚を得られなかったのは、作業の工数単位が大まかすぎたことにあると考えています。例えば、車体設計という単位を設定していましたが、この項目中にも多くの作業があります。この項目の中には最初の見積もりよりも完了が早まったものと遅れたものが混在しています。これらの作業の合計が全体的に遅れたという結果になってしまっているので、詳細にどの作業に重点的に時間をかけるべきかフィードバックできません。今回はお大雑把な項目で2,3週間などといった広い範囲で、工数というよりも工期という表現が近い見積もりになってしまったことが今回の反省点です。
詳細な工数感覚を身につけるため、ズレを詳細に確認するために今よりも項目を細分化し、全日本大会が終わった後に更に分析してまとめようと考えています。そして、これによって未知の作業の工数に対して適切な余裕を持たせた見積もりができるように精進していきます。
今後について
東北地区大会での完走という目的は未達成でしたので、次のロードマップとして来年の2月に開催予定の全日本大会を目標に再度ロードマップを組み、随時ロードマップへの工数やスケジュールを更新して開発を続けます。
今回学んだことを考慮して組むことで実際の製作との差異を少しでも減らしていく所存です。今後もブログは続けていきますので、是非読んでいただけると幸いです。
まとめ
今回は東北地区大会についてのリポートや自作マウス製作の振り返り、今後について書きました。見積もり工数と実際の製作とのズレについての所感を未だ得ることは出来ませんでしたが、これを細かく分析する方法を考察しました。これらを踏まえて全日本大会までの新たな工数見積もりを行い、大会の後に再度分析をしたいと思います。
また、今回の記事ではマイクロマウス大会のリポートといっても軽く触れた程度に留まっていますが、全日本大会ではもっと大会の魅力をアピールできるように努めますのでお楽しみに!
次回は今度こそ、距離センサについて触れます。
全日本大会まで、残り133日!