ロボット実践教材
100/132

次世代ロボットエンジニア育成の ミドルウェアを活用した実践的教育プログラム開発 - 98 - 6.2.3. プログラミング ソースコードについては、ここには表記しない。過去に行った実習から、必要な情報を吸い上げ、ソースコードを完成させること。以下に、作成におけるヒントを記載する。 1. 入力コマンド受付 利用者からの走行・射撃コマンドを受け付けるために、リモコン操作コンポーネントのコンソール画面から、入力ができるようにする必要がある。入力を受け付けるのに必要な処理としては、以下の通り。 #include "conio.h" /* _kbhit()に必要 */ #include "iostream" /* _getch()に必要 */ (省略) RTC::ReturnCode_t RemoteCtrl::onExecute(RTC::UniqueId ec_id) { if(_kbhit()){ /* キーボードが押されたか */ int c = _getch(); /* 押下されたキーボードの1文字を取得 */ (省略) 上記関数のコード記述、使用方法については、すでに基礎講座の「8.3.3. RTコンポーネントのプログラミング」で行っているので、そちらを参照のこと。 2. コマンド解析 入力されたコマンドに従って、処理を振り分ける。コマンドについては、1文字のみ受け付けとした方が、処理が簡潔になる。コマンドによる処理の振り分けは、if文または、switch文を使用する。 こちらも、基礎講座の「8.3.3. RTコンポーネントのプログラミング」にて、switch文を使用して入力文字による処理の振り分けを行っているので、そちらを参照のこと。 3. データ書き込み コマンド解析によって、振り分けられた処理に従い、移動制御コンポーネントに通知するデータを書き込む。 移動制御に通知するデータの値は、3、4章に記載されているのでそちらを参照のこと。 また、移動にかかわるコマンドについては、m_out_runctlに、射撃にかかわるコマンドについては、m_out_shotctlに、移動制御コンポーネントが受け付けることのできるデータを設定し、write()すること。

元のページ 

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

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