MIRS1801-REPT-0001 標準機製作報告書
名称 MIRS1801 標準機製作報告書
番号 MIRS1801-REPT-0001
版数 最終更新日 作成者 承認者 改訂記事
A01 2018. 小本和輝 初版

目次

1. 本ドキュメントについて

本ドキュメントは,MIRS1801標準機の製作報告書である。

2. 製作担当者一覧

製作物、製作担当者を示す。

製作物 製作担当者
電源ボード 小本和輝,庄司悠汰
Rasberry pi 岡元優太,杉山康恭
Arduino 佐藤佑介,野村柚衣子
シャーシ 熊谷拓大,高橋怜史

3. 標準機製作手順


標準機製作における作業手順を示す。

3.1. 電源ボード

3.1.1. 電源ボード基板の製作

作成時に参考にした電源部の回路図をfig.1に示す(実際の回路にはSWは利用しない)。 fig.1は(駆動系電源ボード)から引用。 Fig.1の回路図の通りに回路を作成した。


Fig.1 電源ボード配線参考回路図


Fig.2 電源ボード回路図(表)

Fig.3 電源ボード回路図(裏)

3.1.2. 電源ボード基板の導通チェック

電源ボード基板の回路の導通チェックをテスターで行った。 スイッチのon/offにより、Fig.3の①と②に電流が流れる/②と③に電流が流れるが切り替わるようになっていた。

Fig4.電源ボード基板

この時起こった不具合を以下に示す

  • 電源ボードの不具合報告書
  • スイッチの不具合報告書
  • 3.2. Arduinoのセットアップ

    3.2.1. ユニバーサル基板の作成

    Arduino のセットアップとデバイス接続 を参考にデバイスとの接続に使うユニバーサル基板の作成を以下のことに注意して行った。実装図をFig.5,Fig.6に示す。

    基板の表側に見えるジャンパ線を少なくした。

    基盤の配線が複雑にならないようにした。

    ケーブルのGNDなどの位置を間違えないようにした。

    実装後は全ての配線について導通・非導通の導通チェックをテスターで行い、問題はなかった。


    Fig.5 ユニバーサル基板実装図(表面)


    Fig.6 ユニバーサル基板実装図(裏面)

    3.3. Raspberry Piのセットアップとデバイス接続

    3.3.1. ユニバーサル基板への接続ポートの実装

    1. ユニバーサル基板に付属の20ピンx2列のピンソケットを半田付けした。
    2. 信号線、ハウジング、ICソケット(8ピン、I2Cレベル変換チップ用)をハンダ付けし実装した。実装図をFig.5,Fig.6に示す。
    3. テスターを用いて、ハンダ付けを行った全ての回路系に対して、導通・非導通のチェックを行い、導通すべき箇所、すべきでない箇所共に問題なしであった。
    4. ユニバーサル基板のRaspberryPiへのマウントをした。
      RaspberryPiの HDMI端子の金属部と ユニバーサル基板面が接触してショートすることを防ぐため、ピンソケットのない2ヶ所の通しネジの間に5mmのスペーサを入れた。

    Fig.7 ユニバーサル基板(表面)


    Fig.8 ユニバーサル基板(裏面)

    3.3.2. 超音波センサの接続

    超音波センサをジャンパワイヤでRaspberryPiユニバーサル基板に接続した。

    3.3.3. Raspbianのセットアップ

    1. RaspberryPi にmicroSDを挿し、ディスプレイ、キーボード、マウス、有線LANケーブルを接続して電源を入れた。
    2. Menu→Preferences→Rasbperry Pi Configurationを起動した。
      Interfacesタブを開き、Camera、SSH、I2C、SerialをEnabledに変更した。
      Localisationタブを開いて、Set Timezoneをクリックし Area→Japanを選択、Set WiFi Country を開いて Japan を選択した。
    3. 日本語IMEのインストールを行う。terminalを開き、次のコマンドを入力して日本語化した。
    4. 次のコマンドを入力し、OpenCVをインストールした。

    3.3.4. 超音波センサのI2Cアドレスの変更

    複数の超音波センサを使用する場合は、センサのそれぞれのアドレスを他と異なる I2C アドレスに付け替える必要がある。 超音波センサ Devantech SRF02 の初期の I2Cアドレスは 0xE0 (7bit仕様では 0x70 )となっているが、以下にその変更手順を示す。

    1. i2cdetect コマンドでアドレスを確認した。

    2. i2cset コマンドでアドレスを変更した。以下のコマンドを入力した。

    ※今回作成した標準機では左を70,右を71とした。

    この時起こった不具合を以下に示す

  • 超音波センサの不具合報告書
  • 3.4. シャーシの製作

    3.4.1. 部品数の確認

    機体製作に必要なねじの本数を確認し補填した。確認した部品を以下に示す。
    またこの時にボールキャスターの不具合を発見した。その不具合報告も以下に示す。

    確認した部品一覧
    部品名 長さ[mm] 必要個数[個] 不足個数[個]
    スペーサー 5 12 12
    10 6 6
    26mmねじ 10 6 3
    30 4 4
    3mmねじ 12 28 28
    15 12 12
    5mmキャップボルト 10 6 6
    スプリングワッシャ 2.6 6 6
    3 8 8
    5 24 16
    ナット 2.6 10 10
    3 36 32

    この時起こった不具合を以下に示す。

    ボールキャスターの不具合報告書報告書

    3.4.2. 3Dプリンタでの部品製作

    制御用バッテリーホルダー,駆動用バッテリーホルダー,超音波センサマウントを設計した。
    製作した部品と図面を以下に示す。
    また、制御用バッテリーホルダーと超音波センサマウントについては寸法違いにより各々1個ずつ製作しなおした。その報告書も以下に示す。


    Fig.9 制御用バッテリーホルダー,駆動用バッテリーホルダーの使用


    駆動用バッテリーホルダーの三面図
    制御用バッテリーホルダーの三面図
    超音波センサマウントの三面図

    この時起こった不具合を以下に示す。

    制御用バッテリーホルダーの不具合報告書
    超音波センサマウントの不具合報告書

    3.4.3. 下段シャーシの穴あけ

    下段シャーシに本来空いてあるはずの穴が2ヶ所開いていなかったので新たに穴をあけた。
    下記の画像で赤く囲んである箇所が開けた穴である。


    Fig.10 下段シャーシの穴あけ箇所

    3.4.4. タップ加工

     ・モータマウントサポート
      モータマウントサポートのシャーシ固定面にΦ5,モータとの固定面にΦ3の穴をあけた
     ・タイヤのホイール
      タイヤのホイールにΦ3の穴をあけた

    3.4.5. 機体の組み上げ

    1. 制御用バッテリーホルダ(4個)をM3ねじとナットで固定した。
    2. 駆動用バッテリーホルダ(4個)をM3ねじとナットで固定した。
    3. 超音波センサマウント(2個)をM3ねじとナットで固定した。
    4. ボールキャスター(2個)をM2.6ねじとナットで固定した。
    5. モータマウントサポートをモータに通し、モータマウントとモータをM3のネジで固定した。
    6. モータマウント、モータマウントサポートと下段シャーシをM5のキャップボルトで固定した。
    7. 短支柱と下段シャーシをM5キャップボルトで固定した。
    8. 長支柱と下段シャーシをM5キャップボルトで固定した。
    9. 中段シャーシと短支柱をM5キャップボルトで固定した。

    4. 標準機単体機能試験 評価結果

    4.1. Arduino単体での動作試験

    Arduino単体での動作試験 を参考に、Arduino単体での動作試験を行った。

    4.1.1. モータと4pinコネクタとの接続

    Fig.11のようにモータのケーブルをを4pinコネクタに接続した。
    モータとコネクタの両方のケーブルの被覆を剥がし、導線を露出させ、露出した部分をねじってはんだ付けした。このとき、ケーブルをねじって接続する前に熱収縮チューブをケーブルの中に通しておき、はんだ付けの後、被覆されていない部分を熱収縮チューブで覆い、はんだごてで炙り被覆した。


    Fig.11 モータのケーブルと4pinコネクタの接続する収縮チューブ

    4.1.2 Arduinoの単体試験

    モータにつないで、モータが回るか確認した。

    PWM値を変更して、モーターの回転速度が変わること、方向を変更して、回転方向が変わることを確認した。

  • PWM値を変更して、モータの回転速度が変わることを確認した。
  • Arduinoのシリアルモニタから、エンコーダの値を確認した。

    4.2. Raspberry Pi単体での動作試験

    Raspberry Piでの動作試験 に従って、Raspberry Piの動作試験を行った。
    以下のテストプログラムを実行して、動作を確認した。

    4.3. ArduinoとRaspberry Piの通信

    ArduinoとRaspberry Piの通信を行った。 Raspberry Pi での動作試験 からダウンロードしたコンパイル済みのテストプログラムtest_requestを実行し、実動作を確認した。
    test_requestの標準プログラムでは RaspberryPiからArduino側には走行指令、ArduinoからRaspberryPi側にはバッテリー電圧や走行状態を送ることができる。
    実行の結果、プログラムの通りに直進走行、旋回し、ArduinoからraspberryPiに状態が送られることをを確認できた。

    5. 標準機統合機能試験 評価結果

    以下に示す手順で標準機の統合試験を行った。

  • 5.1. 標準機統合

    ケーブルの接続 を参考にして、標準機の組み立てを行った。

    6. 標準機完成

    以上のとおり製作し、標準機が完成した。完成図をFig.12とFig.13に示す。

    Fig.12 完成後の機体

    Fig.13 完成後の機体

    7.標準機走行試験

    Arduinoソースコードにある直進制御のPゲインKsを変更して直進できるように調整した。
    ゲインの値 速度(cm/s) 距離(cm)
    10 40 150
    40 40 150
    20 40 150
    15 40 150
    5 40 150
    1 40 150
    0 40 150
    8 40 150
    12 40 150
    10 40 150
    13.5 40 150
    走行試験の結果、ゲイン13.5~40の場合は、直進したものの機体の振れが大きかった。一方、ゲインが10未満の場合は機体の振れは起こらなかったものの、進行方向に対して右に曲がってしまった。 以上から、ゲインKsは10から13の範囲内に定めるのが適切であると考えられ、この中に初期値10が含まれていたため、Ks=10とした。