ロボット実践教材
19/132

次世代ロボットエンジニア育成の ミドルウェアを活用した実践的教育プログラム開発 - 17 - クラス図にある各クラスがRTコンポーネントとして振り分けられる。 RTミドルウェアの場合、各クラスは、データの受け渡しによって関連し合っている。そのため、データ(属性)については、他のクラスでも参照可能になっているが、メソッド(動作)はクラス内でのみ使用でき、他のクラスからメソッドが呼び出されることはない。 RTミドルウェアでは、データが受け渡される方向も決まっている。前述のクラス図にデータの流れを追記する。 -しきい値判定(in ライン情報 : long)-移動方向算出()+ライン情報 : long+移動方向 : long#光量しきい値 : long = 300#方向回転率 : short = 20-前回移動方向 : long = -1-回転角回数 : short = 0-現在移動状態 : short = 0ライントレース制御-射撃判定()-射撃待ち()+ターゲット距離 : long+射撃可否 : long#ターゲット限界距離 : long-待ちフラグ-射撃開始終了フラグ射撃判定制御-タッチ情報判定()-移動方向命令()-射撃命令()+ログ情報 : String+タッチ情報 : long+移動方向 : long+射撃可否 : long+モータ出力 : long-移動状態移動制御-センサー値取得() : bool-センサー取得設定() : bool-LS読込() : bool-LS書込() : bool+センサー取得値 : long[]センサー入力-通信チェック() : bool-モータ初期化(in ポート : char) : bool-モータ出力判定() : bool-射撃() : bool-移動(in 移動速度 : char, in 回転角度 : char) : bool+モータ出力 : long#回転 : short = 10#回転角度 : short = 100#移動速度 : short = 100-駆動状態 : short = 0サーボ制御出力-ライン情報通知()-ターゲット距離通知()-タッチ情報通知()+ライン情報 : long = -1+ターゲット距離 : long = -1+タッチ情報 : long = -1+センサー取得値 : long[]本体状態認識-ファイル出力(in ログ情報, out ファイルポインタ)-コンソール出力(in ログ情報)+ログ情報 : Stringログ出力+コマンド送信(in NXTコマンド : any(idl), out NXT応答 : any(idl)) : long-COMオープン() : Object-COMクローズ()#COMポート : String = "COM3"-通信状態 : short遠隔操作制御11111111111111111111 各RTコンポーネント(クラス図でのクラス)の詳説は、3章にて解説する。 図2-6 ロボットプログラム:クラス図(情報の流れ) センサー取得値(タッチ情報、ライン情報、ターゲット距離) 移動方向 ライン情報 モータ出力 タッチ情報 ターゲット距離 射撃可否 ログ情報 モータ出力センサー取得値

元のページ 

10秒後に元のページに移動します

※このページを正しく表示するにはFlashPlayer9以上が必要です