沼津高専 電子制御工学科
MIRS9805 開発完了報告書
MIRS9805-2000
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2000.2.9 江本 江本 初版

目次
  1. はじめに
  2. 開発過程
    1. 3年次

    2. 4年次

  3. 試験結果
    1. 標準MIRS規定走行試験
    2. サブシステム試験
    3. 規定走行試験
    4. システム基本動作試験
  4. 作業工数分析
  5. 問題点の発生と分析
    1. メカニクス
    2. エレクトロニクス
    3. ソフトウェア
    4. システム
  6. 既知問題点
  7. まとめ
  1. はじめに これはMIRS9805の開発完了を示し、これまでの作業過程、作業工数を分析したものである。
  2. 開発過程 以下に開発計画と対比させた開発過程を示す。
    1. 3年次

      1. 開発項目開始終了開始(計画)終了(計画)
        システム計画書1998/10/281998/11/191998/10/281998/11/19
        調査(MIRSの各部について)1998/11/241998/12/171998/11/241998/12/17
        基本設計1999/01/191999/02/181999/01/191999/02/16
    2. 4年次

      1. 開発項目開始終了開始(計画)終了(計画)
        システム計画書改定1999/04/131999/04/301999/04/131999/04/30
        詳細設計書(メカ)1999/05/01 1999/06/11 1999/05/01 1999/05/18
        詳細設計書(エレキ)1999/05/011999/05/181999/05/01 1999/05/18
        詳細設計書(ソフト)1999/05/011999/05/281999/05/01 1999/05/18
        設計(メカ)1999/06/011999/07/161999/05/221999/07/12
        設計(エレキ)1999/06/011999/07/131999/05/221999/07/12
        設計(ソフト)1999/06/012000/02/041999/05/222000/02/04
        作成(メカ)1999/07/161999/10/121999/07/121999/09/03
        作成(エレキ)1999/07/131999/10/121999/07/121999/09/03
        ドキュメント整理(メカ)1999/10/121999/11/101999/09/081999/10/15
        ドキュメント整理(エレキ)1999/10/121999/11/101999/09/081999/10/15
        改善設計(メカ)1999/11/101999/12/101999/10/151999/11/15
        改善設計(エレキ)1999/11/101999/12/101999/10/151999/11/15
        改善(メカ)1999/12/102000/01/041999/11/151999/12/15
        改善(エレキ)1999/12/102000/01/041999/11/151999/12/15
        ドキュメント整理(メカ)2000/01/152000/02/182000/01/152000/02/18
        ドキュメント整理(エレキ)2000/01/152000/02/182000/01/152000/02/18
        ドキュメント整理(ソフト)2000/02/082000/02/182000/02/082000/02/18
  3. 試験結果 以下の試験結果は。
    1. 標準MIRS規定走行試験
      1. 9点(夏休み中に終了) 1回目:うまく四角をかけない 2回目:だいたい成功
    2. サブシステム試験

      1. 9点(2回目にて合格)
        1回目:PWM系のケーブル切断により動作不能
        2回目:合格
    3. 規定走行試験
      1. 10点(1回目で成功)
        1回目:合格
    4. システム基本動作試験
      1. 10点(1回目で成功)
        1回目:合格
  4. 作業工数分析
    1. 開発項目工数
      システム計画書108
      調査(MIRSの各部について)126
      基本設計144
      システム計画書改定135
      詳細設計書(メカ)108
      詳細設計書(エレキ)45
      詳細設計書(ソフト)72
      設計(メカ)117
      設計(エレキ)108
      設計(ソフト)576
      作成(メカ)126
      作成(エレキ)152
      ドキュメント整理(メカ)72
      ドキュメント整理(エレキ)72
      改善設計(メカ)72
      改善設計(エレキ)72
      改善(メカ)18
      改善(エレキ)18
      ドキュメント整理(メカ)72
      ドキュメント整理(エレキ)72
      ドキュメント整理(ソフト)27
  5. 4年次

    1. 問題点の発生と分析
      1. メカニクス
    2. 問題点原因解決策
      タッチセンサが入りっぱなしになるスリーブがマイクロスイッチに引っ掛かり戻ってこない。設計ミス。設計しなおした、又はスリーブを外した。
      タッチセンサが反応しない。マイクロスイッチにアーム機構が触れていない。設計しなおした、又はスリーブをつけた。
      ケーブルの取り外しが困難。ケーブルバイパスの配置ミス。穴の開け直し。
    3. エレクトロニクス
      問題点原因解決策
      最後まで超音波センサの調子が悪く、動かなくなることが度々あった。後半に差し掛かってから発生し、しばしば起こることがあったが、しばらくすると直ってしまうため、対策が立てにくかった。導通チェック、ケーブル交換など、調査してみたが、すべて正常。原因は結局わからず、未解決となった。(soft面でカバーした)
      ケーブルの調子が悪かった。コネクタの抜き差しにより、コネクタの接合部分が金属疲労により切れてしまう。コネクタを切り落とし、再利用出来るものは使い、出来ないものは、新しいものに交換する。
      PDボード設計を間違えた。電源系の動作がおかしいため調べてみたら間違っていた(削り出しのCADのところで)。設計しなおした。
      MPCが異常に発熱電源ケーブルのコネクタの取りつけ方向が間違っていた。正しく取りつけた。(MPCのダイオードを1つ取り替えた)
    4. ソフトウェア
        バグ記録:
        19日 獲得の時に、獲得タスクが前進しつづける。    task09new.c  30分
                ソースの書き間違い。(mode変更の代入部分)
            +    書きなおした。
            獲得の時に、回りつつける。           task09new.c  1分
                ソースの書き間違い。(mode変更の代入部分)
            +    書きなおした。
            獲得の時に、回りつつけるpart2。        task09new.c  20分
                ソースの書き間違い。(sys9(0,2) -> sys9(2,2))
            +    書きなおした。
            獲得の時に、1回転しかしない。          task09new.c  1分
                ソースの書き間違い。( <1 -> <2)
            +    書きなおした。
            スイッチを押すとき、押しつづける。       task09new.c  1分
                ソースの書き間違い。(mode変更の代入部分)
            +    書きなおした。
            超音波でポストを見つけると、変に動く。     (07 -> 09)  ???
                まだ。
            獲得に行くと、次のポイントを飛ばしてしまう。  task07new.c  5分
                処理の順番が悪い。
            +    処理(BBへ書きこみ)の順番を変えた。
        20日 回避がおかしい。                task07new.c  30分
                コンパイラのせいだと思う。
            +    命令を入れ替えたりした。
        21日 超音波でポストを見つけると、変に動く。     (07 -> 09)  4日
                task06 の、終了の条件が悪かったかも。
                タイマタスクのせいか?
                sinf が常に 0 を返していたと思う。
            +    終了条件の変更
            +    タイマタスクを軽くした。
        24日 モード遷移しなかった。             task08new.c  1分
                switch の書き間違い
            +    書き換えた
        28日 ポスト回避が異状                task07new.c  30分
                関数の戻り値を間違えてたため、ポイントを飛ばしてた。
            +    戻り値を直した。
            ポスト周回が駄目                task09new.c  30分
                バック量と、DUTY比が悪い
            +    再計算し、設定した。
            ポスト回避時、壁にあたる。           task07new.c  2時間
                壁よけ部分が抜けてた。
            +    回避ルートが壁に入るようなら再計算するようにした
            ポスト回避不可能                task07new.c  3分
                再計算ループの脱出部分が抜けてた。
            +    脱出するようにした。
        29日 どーしてもうまく動かない            task08new.c?  丸1日?
                超音波センサがいかれてた。
            +    センサの修理と再調整
        31日 ポストに早く反応しすぎる。           task07new.c  3時間
                ポスト発見部分(USS)のプログラムが悪かった。
            +    改良した。
            座標修正のミスパターンがある。         task10new.c  1時間
                ポストと壁の区別をしてない。
            +    ポストだと思ったら、そっちの方向の修正しない。
        1日 超音波センサが使用不能             task01new.c  2日
                1chの超音波センサで測定すると、時々割り込みが入らなくなる
                ようで、測定回数の以上が発生して再測定されない。
            +    割り込みがなくても強制的に送信するようにした。
        2日 その場回転でのポスト探査が何回も行われる。   task07new.c  3時間
                フラグのスイッチのタイミングが悪かった。
            +    スイッチの場所を変えた。
        3日 座標修正されない                task10new.c  2時間
                比較するときの変数名の書き間違い。
            +    変数名を直した。

        バグ曲線
    5. システム
      • ルートがひとつしかないため、ポスト配置によっては無駄な動作となる。。
        1. ルートの数を増やした。また、ルートがどんなものであっても正常に動くようなソフト作りをした。
  6. 既知問題点
  7. まとめ
      全体的に、開発のバランスがソフトに傾いていた。結局、この付けは、競技会でタッチセンサが入りっぱなしになることで払われる事となった。
      「ハードの問題点をもっと重視し、早めの改善をするべきである。」
      これが、今回の最大の反省点だろう。

関連文書