沼津高専 電子制御工学科
MIRSATLM ソフトウェア設計書
MIRSATLM-DSGN-0004
改訂記録
版数
作成日
作成者
承認
改訂内容
A01
2000.7.19
ソフト全員
大庭
初版
目次
はじめに
システム概要
ソフトウェア構成
全体の構成概略
全体の構成概略図
各ドライバ・タスクの優先順位
各ドライバ・タスク構成/機能
超音波センサ(RT-task)
機能概略
構成図
赤外線センサ(driver)
機能概略
構成図
タッチセンサ(driver)
機能概略
構成図
ロータリーエンコーダ(RT-task)
機能概略
構成図
PWM(RT-task)
機能概略
構成図
LCD(driver)
機能概略
構成図
インターフェース
単体試験
単体試験概要
試験内容
1.はじめに
本仕様書はMIRSATLMの標準自律型小型知能ロボットのソフトウェアのタスク・ドライバ基本仕様を記述するものである。
2.システム概要
ソフトウェアは複数のドライバとリアルタイムタスクからなり、割り込みおよびドライバ・タスクの管理はOSとしてRT-linuxを用いて実現する。
3.ソフトウェア構成
全体の構成概略
全体の構成概略図
ソフトウェア全体の構成概略図を以下の図に示す。
図3-1-1.全体の構成概略図(
all.jpg
)
図中の記号説明
・RT-task1:超音波センサタスク
・RT-task2:ロータリーエンコーダタスク
・RT-task3:PWMタスク
・ドライバ1:赤外線センサドライバ
・ドライバ2:タッチセンサドライバ
・ドライバ3:LCDドライバ
各ドライバ・タスクの優先順位
各ドライバ・タスクの優先順位を以下の表に示す。優先順位は数が小さいほど高い(つまり0が最高)とする。
表2-1.ドライバ・タスク優先順位
優先順位
タスク
0
タッチセンサドライバ,赤外線センサドライバ
1
超音波センサタスク
2
ロータリーエンコーダタスク,PWMタスク
3
LCDドライバ
各ドライバ・タスク構成/機能
超音波センサ(RT-task)
機能概略
超音波センサは、RT-タスクにより制御する。超音波センサタスクの機能は、周期的CMOSタイマにカウント開始信号を送り、超音波センサからの割り込みによりカウントを停止し、そのデータを割り込み信号として受け取ることと、その後、カウントデータから距離に換算し、CPUにデータを転送することである。
構成図
超音波センサタスクのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-1-1.超音波センサタスクプログラム構成図(
USS.jpg
)
赤外線センサ(driver)
機能概略
赤外線センサタスクの機能は、割り込みが発生したとき、他の割り込みをマスクし、データの保存を行いその割り込み信号をリセットした後、通常動作に戻ることである。
構成図
赤外線センサドライバのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-2-1.赤外線センサドライバプログラム構成図(
IRS.jpg
)
タッチセンサ(driver)
機能概略
タッチセンサタスクの機能は、タッチセンサが反応する度にこのタスクが起動し、タッチセンサの状態を保存することである。
構成図
タッチセンサドライバのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-3-1.タッチセンサドライバプログラム構成図(
TS.jpg
)
ロータリーエンコーダ(RT-task)
機能概略
ロータリーエンコーダタスクの機能は、一定時間ごとにロータリーエンコーダの値を読み込んで、そこからx,y座標と姿勢角θを計算しCPUにデータを送ることである。
構成図
ロータリーエンコーダタスクのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-3-1.ロータリーエンコーダタスクプログラム構成図(
RE.jpg
)
PWM(RT-task)
機能概略
PWMタスクの機能は、CPUから受け取ったduty比のデータをPWM信号に変換してモーターへ送ることである。
構成図
PWMタスクのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-3-1.PWMタスクプログラム構成図(
PWM.jpg
)
LCD(driver)
機能概略
LCDドライバは、各センサ・ロータリーエンコーダ・PWMの情報やシステムの状態を表示することを目的とする。このドライバは、電源投入後スタートしてから常時起動され、上記のことを表示する。
構成図
LCDドライバのプログラム構成を、フローチャートを用いて以下の図に示す。
図3-2-6-1.LCDドライバプログラム構成図(
LCD.jpg
)
インターフェース
MIRSATLMで使用する関数・引数は、RT-linuxのexampleで使用されている関数・引数を主とする。現時点ではそれ以外に新たな関数・引数は使用しない。新たに関数を定義する場合は、システム内の関数・引数を統一するためここに登録するものとする。
4.単体試験
単体試験概要
単体試験は、このソフトウェア設計書の内容に適合しているかどうかを試験する。試験は以下の項目について行われる。
各タスク・ドライバ基本機能試験(off-line)
超音波センサタスク試験
赤外線センサドライバ試験
タッチセンサドライバ試験
ロータリーエンコーダタスク試験
PWMタスク試験
LCDドライバ試験
試験内容
現在検討中である。
関連文書
MIRSATML 設計仕様書一覧(
MIRSATML-DSGN-0001
)
MIRSATML ハードウエア実装基本設計書(
MIRSATML-DSGN-0002
)
MIRSATML 電子回路基板設計書(
MIRSATML-DSGN-0003
)