競技用ロボットにおける制御回路とプログラムの開発 Development of Control Circuit and Program for Robot Contest 電気工学科 5 年 14 番 熊谷貴明 1 はじめに 市販 コントローラ ロボットの動作を競うコンテストに出場する競技用 ロボットの開発は, 少人数による製作や資金が乏しいな ど障害が多い. 特に部活動のようにチーム編成が毎年 変わっていく場合, 技術継承を含めたチーム自体の開発 能力の維持と向上は重要な課題となる. そこで本研究では, 開発上の制限が多い競技用ロボッ トに関して, 競技用に適したシステム構成と開発環境の 構築を行い, 競技用ロボットの開発手法を考察する. 2 制御回路構成 制御回路は競技ルール等に合わせて構築すべきであ り, 製作済み回路の再利用が期待できる. 制御回路は Fig. 1 に示すように機能別にモジュール化を行い, モジュー ル同士の接続に予め定めた規約を用いる. モジュール 化により, 回路のメンテナンス性, 再利用性を向上する. Fig. 1 で示した回路構成は, 複数の異なるモータを制 御することを考慮してある (文献 [1] を参照). また, コ ントローラ及び受信機においても, 電波無線や赤外線を 利用した遠隔操作システムを構成でき,競技用ロボッ トの構成に柔軟性を確保する. 3 制御プログラム構成 制御基盤に搭載するマイコンは, 受信機の入力, 各セ ンサ類の入力, ドライバへの出力を処理しなければなら ない. 制御プログラムは, 非同期で動作しメッセージで データを送るタスクを, 制御信号受信, 出力遮断, ドラ イバ出力, 受信状態の表示の 4 つを用意し, 各タスクの 実行条件を記述するタスクマネージャを配置する (文献 [2] を参照). 次に, 制御回路の入出力を処理するプログラムが必要 だが, それらは制御基盤に接続される受信機やドライバ に合わせてそれぞれ用意する. 各タスクで入出力デー タ表現と内部データ表現の変換と実際の入出力処理を, 制御基盤に接続する各モジュールごとに製作する. ま た, 他のセンサを制御回路に加える場合はセンサ処理専 用のタスクを用意し入力処理を行う. 4 プログラミング言語と開発環境の選定 マイコンのプログラム開発では, アセンブラ言語また は C 言語が使用されることが多い。アセンブラ言語に よる開発では,プログラムの肥大化と難読化が大きな 問題となった. これにより開発負荷の一極集中と複雑 なプログラム記述によるバグ発見の遅れなどが生じ, 開 発期間が長くなる原因や技術継承の障害となっている. 今回提案する開発手法では, プログラムの再利用性及 び可読性の向上のため, プログラミングを学習する上で の標準的な位置づけである C 言語で開発を行う. 使用 するマイコンは入手が簡単で価格の安い PIC18F1320 とし, 開発環境は MPLAB IDE, C 言語コンパイラには PIC C18 Compiler を使用する (文献 [3] を参照). 指導教員 河合康典 電波 無線 無線 受信機 DCモータ ドライバ 制御 基盤 自作 コントローラ 赤外線 無線 自作 赤外線 受信機 DCサーボ モータ ドライバ Fig. 1: 回路構成図 5 製作実現と考察 前述した設計に基づいた制御マイコンの開発を行っ た. 開発には 4 日程度を費やし, アセンブラ言語による 開発時に 1ヶ月必要としたに比べ, 開発期間を大きく削 減できた. また, プログラムの可読性が向上され記述ミ ス等によるバグの発見等も早くなった. しかし, 逆アセンブル結果を検証する限り, PIC C18 Compiler が生成するプログラムは最適化が不十分であ り, プログラム規模の大きさによっては低価格のマイコ ンには使用できない懸念がある. コンパイル時のオプ ションを様々試したが改善の兆しはなく, コンパイラの 限界と考えられる. 6 検討課題 C 言語で開発を行いに際し, 生成されるプログラム の速度, サイズにおけるパフォーマンスの改善が必要で ある. 今回使用した C 言語コンパイラである PIC C18 Compiler の他に, C 言語コンパイラは幾つか存在する. 今 後の課題として,今回とは異なる C 言語コンパイラを 用いた開発環境の構築によるパフォーマンスの改善が 必要である. 7 おわりに 本研究では, 競技用ロボットにおける模範となる開発 手法を提案し, 実践を行った. 結果, 少ない資金で開発 期間の大幅な削減と,プログラム記述の簡易化を実現 し, 競技用ロボット開発において十分に運用可能である という結論を得た. しかし, 実際に運用するにあたっては, コンパイラの 性能に懸念があるという不安があり, 今後これを解消す ること目的とする. 参考文献 [1] 谷腰欣次, DC モータの制御回路設計 (第 3 版), CQ 出版社, 1986. [2] 西村輝一 ほか, 二足歩行ロボットのモデルベース開 発, オーム社, 2005. [3] 後閑哲也, C 言語による PIC プログラミング入門, 技術評論社, 2002.
© Copyright 2024 ExpyDoc