沼津高専 電子制御工学科
MIRS0204 開発完了報告書
MIRS0204-DSGN-0006
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2004.2.13 武藤 村田 初版

目次
  1. はじめに
  2. 開発過程
    1. 3年次
    2. 4年次
  3. 試験結果
    1. サブシステム試験
    2. システム統合試験
    3. プレ競技会
    4. 競技会
  4. 作業工数分析
    1. 作業別
    2. 月別
  5. 問題点の発生と分析
    1. Mechanics
    2. Electronics
    3. Software
  6. まとめ

  1. はじめに
    これはMIRS0204の開発完了を示し、これまでの作業過程、作業工数を分析したものである。

  2. 開発過程
    以下に開発計画と対比させた開発過程を示す。

    1. 3年次
        開発項目 開始(計画) 終了(計画) 開始(作業) 終了(作業)
        行動計画書 2002/11/06 2002/11/19 2002/11/06 2002/11/19
        技術調査 2002/11/27 2002/12/11 2002/11/27 2002/12/11
        基本設計書 2003/01/07 2003/01/21 2003/01/07 2003/02/12

    2. 4年次
        開発項目 開始(計画) 終了(計画) 開始(作業) 終了(作業)
        開発計画書U 2003/04/08 2003/04/18 2003/04/08 2003/04/18
        詳細設計書(Mechanics) 2003/04/22 2003/05/27 2003/04/22 2003/05/27
        詳細設計書(Electronis) 2003/04/22 2003/05/27 2003/04/22 2003/05/27
        詳細設計書(Software) 2003/04/22 2003/05/27 2003/04/22 2003/06/20
        製造(Mechanics) 2003/06/27 2003/07/17 2003/06/27 2004/02/05
        製造(Electronis) 2003/06/20 2003/12/18 2003/06/20 2003/02/05
        製造(Software) 2003/06/27 2004/02/05 2003/06/27 2004/02/05
        ドキュメント整理(Mechanics) 2004/02/09 2004/02/13 2004/02/09 2004/02/27
        ドキュメント整理(Electronis) 2004/02/09 2004/02/13 2004/02/09 2004/02/27
        ドキュメント整理(Software) 2004/02/09 2004/02/13 2004/02/09 2004/02/27

  3. 試験結果

    1. サブシステム試験

    2. システム統合試験
      システム統合試験に合格したのは競技会の2日前の2月4日である。11月の統合試験ではエレキ・ソフトの作りこみが十分でなかったので合格にはいたらなかった。

    3. プレ競技会
      タイヤと補助輪の高さがあっていなかったため、タイヤが何度も空回りをしてしまい真っ直ぐ進むことができなかった。真っ直ぐ進むことができないので当然、ポストを1つも獲得できなかった。

    4. 競技会
      競技会では前方のタッチセンサのうちの1つが反応しないという事態に陥った。この問題点はすぐに解決することはできなっかたがポストを1つ獲得することができたのでプレ競技会と比べたら格段に進歩しているといってもいいと思った。

  4. 作業工数分析

    1. 作業別
      開発項目 工数 [h]
      行動計画書 125.0
      技術調査 65.5
      開発計画書 17.0
      基本設計 101.5
      詳細設計書(Mechanics) 131.0
      詳細設計書(Electronics) 140.0
      詳細設計書(Software) 48.5
      製造(Mechanics) 368.0
      製造(Electronics) 563.5
      製造(Software) 186.5
      改善設計,改善(Mechanics) 179.5
      改善設計,改善(Electronics) 183.0
      改善設計,改善(Software) 100.0
      競技会準備 36.0
      合計工数 [h] 2245.0

    2. 月別
      Mechanics工数 [h] Electronics工数 [h] Software工数 [h] 合計工数 [h]
      4 18.5 24.5 13.0 56.0
      5 55.5 79.0 36.5 171.0
      6 34.5 34.5 13.5 82.5
      7 119.0 109.5 34.0 262.5
      8 0.0 32.5 0.0 32.5
      9 22.5 37.5 10.5 70.5
      10 49.0 83.0 33.5 165.5
      11 99.5 150.5 84.0 334.0
      12 62.5 159.5 60.0 282.0
      1 77.5 174.0 115.5 367.0
      2 55.5 62.0 59.5 177.0
      合計工数 [h] 594.0 946.5 460.0 2000.5

  5. 問題点の発生と分析

    1. Mechanics
      問題点 原因 解決策
      1 タッチセンサが反応しない。 バンパーが引っかかってセンサが反応していなかった。 バンパのレールにグリスを塗った。ばねの長さ、バンパの板を調整した。センサ接地部分を大きくした。
      2 ロータリーエンコーダが反応しなかった。 ロータリーエンコーダの導線がMIRSの動きにより、よく切れてしまう。 使用するロータリーエンコーダの種類を変更した。
      3 MIRSがまっすぐ進まない。 補助輪に対して、タイヤが浮いた状態になっていた。 補助輪の高さを低くした。

    2. Electronics
      問題点 原因 解決策
      1 超音波センサが動作しない。(1) ICが破損していた。 ICを交換した。
      2 超音波センサが動作しない。(2) コネクタ部分が接触不良であった。 半田でしっかりと接触させた。
      3 超音波センサが動作しない。(3) ソフトの設定が違っていた。 ソフトを修正した。
      4 赤外線センサが反応しない。(1) コネクタ部分が接触不良であった。 半田でしっかりと接触させた。
      5 赤外線センサが反応しない。(2) FPGA回路が間違っていた。 FPGA回路を修正した。
      6 赤外線のコード判別ができない。 FPGA回路が間違っていた。 FPGA回路を修正した。
      7 タッチセンサが反応しない。(1) FPGA回路のピン割り当てが間違っていた。 FPGA回路のピン割り当てを修正した。
      8 タッチセンサが反応しない。(2) ドーターボードの配線が間違っていた。 ドーターボードを修正した。
      9 タッチセンサが反応しない。(3) 配線が切れていた。 配線を付け直した。
      10 FPGAの回路データをダウンロードすると モーターが回転する。 原因不明である。 いつのまにか直っていた。
      11 モーターが回転しない。 ドーターボード内のVccの配線が切れていた。 ジャンパ線を用いて配線した。
      12 外付けロータリーエンコーダのパルスが得られない。(1) ロータリーエンコーダの導線が老朽化して切れていた。 ロータリーエンコーダを交換した。
      13 外付けロータリーエンコーダのパルスが得られない。(1) 交換したロータリーエンコーダが破損していた。 外付けロータリーエンコーダを使うことを断念し、 モーターに付いているロータリーエンコーダを使用した。
      14 LCDが動作しない。 FPGA回路に問題があると思われる。 結局、使用できなかった。

    3. Software
      問題点 原因 解決策
      1 C++のコンパイルができない コンパイルオプションが不足していた。 コンパイル時に"-lstdc++"を追加
      2 LANケーブル接続しないとプログラムが起動しない。 libstdc++-libc6.2-2.so.3を使っていた 必要なライブラリをマウントしないでも使えるようにした。
      3 直進しない。 モーターの個性、本体の重心のズレなど。 ロータリーエンコーダの値をフィードバックして調節した。
      4 ポスト周回が正確にできない。 不適切なDuty比よるもの。 Duty比を調節した。
  6. まとめ
      Mechanics:
      MIRSを作るときに、新しく思いついた案が多く現場で設計したものが多かったと思う。そのために発生した問題も多く、解決するためにかなりの時間を費やしてしまった。 実際の競技会では、バンパがひっかかり失敗と終わってしまった。やはり、何回も動かしてみていろいろな場合について対処を考えておくべきだと思った。

      Electronis:
      MIRS0204のElectronisは、他の班と比較すると常に遅れを取っていました。考えられる原因としては、行うべきものが漠然とし過ぎていて、なかなか手をつけることができなかったことが挙げられます。しかし、その辺のところは、他の班の人に訊いたり、教えてもらったりして、必要最低限のところはクリアしました。なかなかElectronicsがうまくできなくて、Softのほうにも遅れが出てしまいました。今回、早め早めに行動することが足りなかったことが反省するところでした。競技会の前には、重大なトラブルもなく、その点としてはよかったと思います。

      Software:
      MIRS0204ではデバイスドライバ以外のプログラムをオブジェクト指向で開発しました。具体的にはOOPL(Object Oriented Programming Language)であるC++を用い、各センサ、モーター、動作そのものなどをオブジェクトと考え、クラスを作成しました。クラスの設計そのものは初期の段階で出来ていましたが、実際のデバイスとの連携の点が時間がかかってしまい、行動プログラムを煮詰める時間はほとんど無くなってしまいました。MIRSとしては行動のプログラムに最も重点をおくべきだったので、この点は残念です。しかし、C++を使ったことによるトラブルや弊害はなく、オブジェクト指向に対する理解が深められたのはよかったと思います。

      Manager:
      1年半という長い期間、長かったようであっという間に過ぎたと思います。Managerとして、メンバーを引っ張っていくことが足りなかったような気がします。今思うと、あの時もっとこうしとけばよかったなどと思います。思い起こせば、システム統合試験では統合されていなく、プレ競技会ではタイヤくらいしか動かなくて、本競技ではポストを獲得できないのではないかと心配しました。しかし、本競技では1つのポストを獲得することができました。今までいろいろと苦労したことや大変だったことがあったけど、メンバーの人達は、最後まで自分の仕事はきちんとやってくれて本当に感謝しています。1年半、お疲れ様でした!!


関連文書