やることメモ(ソフト班)
スケジュール
全体のスケジュールに合わせて決める.
大雑把なスケジュールの例:
- 11月:H8の基本的な使い方と,モータの制御の方法を確認.2006年のロボットを実際に走らせてみて感覚をつかむ.思った結果が出ないなら戦略に反映させる必要あり.
- 12月:決まった戦略に必要なセンサーやアルゴリズムをテスト+シミュレータ作成
- 1月:シミュレータ作成,シミュレータ上でテスト
- 2月:本番用のプログラム.3月のビデオ審査までに動いている必要がある.
- 3月:ビデオ審査のための調整
2月までは勉強と並列に進める(?)
アルゴリズム
ビット演算
復習.やらなくても良いか.
今回のロボコンのとか
- 最適な座標系を考える(極座標系?)
基本アルゴリズム
- PID 実際にプログラムを書く.前に発表してもらったはずなので,その復習.
- 座標計算 線形代数の復習と,コンパクトに実装する.
- 経路探索 障害物を避けるために.
簡単な画像処理
カメラを使う可能性があるなら.
H8の使い方
H8に書き込んでみる(11/12~11/15)
とりあえずサンプルプログラムを書き込み.
ポート入出力(11/16)
1ビットごとの操作,8ビットごとの操作.
H8の基本機能を確認(11/16~11/19)
- printfデバッグ PCやLCDに文字を送る.俗に言う「printfデバッグ」のために.
- A/D変換(11/16~)
- タイマー(11/16~)
- PWM出力
- ピン変化割り込み
gdbを使ったデバッグ手法(11/16~)
ITU
高機能なタイマー
少しはデバッガの力も借りないと苦労する.
シミュレータの作成
12月中に,なんとなく動くものが出来ればOK.
SDL+OpenGLがよさそう.
シミュレータくらいならGLUTでも平気だろうけど,SDLの方が面白げ.2次元だけならSDLオンリーという選択肢もありそう.
前回のシミュレータ
必用なら参考にしてください.
- ピンの状態を変数で保持
- ディレイ関数をシミュレーション関数に置き換える
- シミュレータから割り込み関数を呼ぶ
問題:ディレイ中にしかロボットの状態が変化しない.
マルチスレッド化すれば解決するが,スレッド関係の処理がメインの方にまで入り込むようだと効率悪そう.
ロボットの制御
モータを回す(11/21~)
- 前進・後進・右回転・左回転
- 速度は遅く(危ないから)
ロータリーエンコーダを使う
- ロボットを手で押してLCDに移動量を表示
- 余裕があればモータも回してみる
ロボットを走らせて止める
- 一定距離走らせて停止
- 誤差は5cm以内
- PWMのデューティを一旦最大にすること
- ロボットの重量が変わっても大丈夫なように
ヒント:速度は徐々に変化.一瞬のブレーキならスリップしない.行き過ぎたら戻る.
PSDを使った位置あわせ
距離センサーを使ってブロックやゴールに位置を合わせる.
弧を辿る
指定した半径の円周を走る.
参考書
- Interface
CQ出版の雑誌.トラ技よりソフトウェア寄り.
- トランジスタ技術
CQ出版の雑誌.マイコン周辺の回路やセンサのことを勉強するならこれ.毎月読むべき.
この本の経路探索アルゴリズムの例が分かりやすかった.シミュレータ作りにもかなり役立ちそうな内容.
少々高いが,内容を考えればそれ以上の価値あり.
kstmに持っている人がいるので内容くらいは確認可かも.
読んでないが,カメラを使ってみる入門には良さそう.これだけだと,マイコンであまり高度なことは出来なさそう(?)
OpenGLのバイブル.英語版はネット上にPDFが公開されている.
この文書の履歴
- 2006-11-16 書く
- 2006-11-17 参考書追加
Copyright © binzume all rights reserved.