名称 MIRS1803 ソフトウェア開発完了報告書
番号 MIRS1803-SOFT-0003

版数 最終更新日 作成者 承認者 改訂記事
A01 2019.02.15 礒合優汰 高橋凌 初版
A02 2019.02.18 礒合優汰 高橋凌 牛丸先生 第2版

ドキュメント内目次


1. はじめに

本ドキュメントは,MIRS1803のソフトウェア開発完了報告書である.
製作予定だったものについてはソフトウェア詳細設計を参照.

2. 使用プログラム

以下に使用したプログラムへのリンクを示す.
プログラム


3. 評価

3.1. 走行プログラム

main関数で巡回走行のための処理を行いつつ、センサースレッドを用意して障害物検知・転倒検知・バッテリー残量の確認をした.
巡回走行のための一連の動作を行うプログラムは設計通りの機能を実現できたので、完成度は高いと言える.
しかし、機体の全高が高いことや重量が大きいことが原因で安定した走行を実現することができなかった.
本来ならば磁気センサーを用いて機体の向きを修正する予定だったが、センサーの値をうまくとることができなかったため実装には至らなかった.


3.2. センサープログラム

人感センサーは標準プログラムに含まれるioをもとに制作し、超音波センサーに関してはussにセンサーの数を増やすための変更を行った.
超音波センサーと人感センサーのプログラムに関しては標準プログラムを拡張する形で製作したので、問題なく完成させることができた.
しかし当初搭載予定だった磁気センサーのプログラムは値の取得がうまくいかず、使用は断念した.


3.3. カメラプログラム

キャプチャは「fswebcam」、ストリーミングは「mjpg-streamer」を用いた.
キャプチャに関しては、送信時の負荷を軽減するために画像の解像度を下げる必要があったが、機能自体は問題なく実装できた.
ストリーミングは無線LANの環境に左右されるためやや動作は不安定だったが、機能は実装できた.


3.4. 通知プログラム

これにはpython用のライブラリである「Slacker」を用いた.
通知プログラムは画像・テキストメッセージ共に設計通り送信する機能を実装できた.
画像の送信に関してはかなり動作が重かったが、画像の解像度を下げることで改善した.


3.5. Arduinoプログラム

標準プログラムをもとに機能拡張を行った.テープLEDの制御には「Adafruit_NeoPixel」を使用した.
発射用モータの制御、加速度センサーの値取得、テープLED・ブザーの制御全てにおいて設計通り実装することができた.


4. 総括

基本的な警備動作をするシステムは完成した.
しかし、予定していた計画より遅くなってしまった.
これは想定していた時間より多くデバック作業に時間がかかってしまったものと考えられる.
その結果、巡回経路の大幅な短縮になってしまったのが心残りである.
また、リサーチ不足により磁気センサが使用できなかったのが残念である.
今回のシステム開発を通してチームでのプログラム開発はよい経験となった.
これからのプログラム開発に活かしていきたい.

5. 各パートへのリンク

各パートのドキュメントへのリンクを以下に示す.





MIRS DATABASE

TOP