プログラミング

データシート管理ソフトでも書こうか

表題の通り。 C#の勉強と実用を兼ねて、やってみようかな。 センサ系の実験を何個かやったけれど、うまく行かない。 思いつきじゃなくて、ちゃんとした検証の下でやらないとダメだ。

走行パラメータ管理

ターン軌跡の計算は、何らかの関数で近似しようと思っていたけれど、元の形のまま計算するのが一番速くて、実装も楽そう。 sqrtはどれくらい時間を食うだろう? 既にsin,cosが回っているけれど・・・ そんな訳で走行パラメータを管理する部分を書き始めまし…

C#でfloatをbit単位でアクセスする?

通信する時にfloatを一旦1byte単位で読みたかったのですが、簡単にはできないみたい。 以下のようなメソッドを作って対応しました。 private UInt32 FloatToByte(float f) { byte[] buf = new byte[4]; UInt32 returnval; MemoryStream mem = new MemoryStre…

C#便利

C#でPC側のプログラムを書いています。 今後ずっと使えるようなものにするために、中々しんどいです。 一つすごく便利だと思ったのは、Serialize。 オブジェクトを適当な形式に変換して保存してくれる。 つまり、アプリケーションで使うデータを適当に何個か…

ダブルバッファ

基板もモータも暫く届く予定がなく、暇なので、 VC++で、マウスのシミュレータを作っています。 壁情報の配列から描画するところまで行き着き、 カーソルの動きに合わせて壁をセットできるようにしようとしたところ、 フリッカがとんでもないことになりまし…

足立法の解説とか

googleで足立法と検索すると上位に出るようになってしまっているのに情報が無いのは申し訳ないので、簡易的な解説を。 足立法は、ゴールからの歩数を計算しながら走行するアルゴリズムです。 流れとしては次のようになると思います。 壁の情報を更新 ゴール…

木構造で探索済み迷路を表現してみる?

マイクロマウスの最短経路導出を目標に、 木構造を使って迷路のゴールとスタートを結ぶ経路を導き出す事を考えてみます。 まず、木構造を作るにはノードを定義する必要があります。 マイクロマウスで最短経路を導出する時、 「カーブで減速する事や直線で加…

昨日の探索アルゴリズムに対して

未探索区間は優先 袋小路の入り口に仮想壁を作成 の2点はなくても探索ができます。 というか 未探索区間優先 は無い方が賢い選択をする率が高いように思います。 長い直線を発見している率が高いので、 入り込まなくても良い区間へ侵入してしまう可能性が高…

探索アルゴリズム完成

探索アルゴリズムが完成したようです。(まだハマるパターンがあるかも?) 直線優先型足立法みたいな感じになりました。 基本は とりあえず壁(or仮想壁)に行き当たるまで直進 曲がり角の候補を列挙する この中で一番ゴールまでの歩数が少ない物を選択 一番上…

Xbeeでの通信ソフトウェアの概形

こんな感じのを作りました。 とりあえず家の迷路(3*4)で走らせて見た感じ 壁の反射率がサークルの物と全然違うらしく、 適当にパラメータを調整して走らせたので一箇所壁を見落としている・・。 行く行くはセンサの情報等も表示させる予定(右上のスペース) …

プログラミングって難しい。

迷路探索のプログラミングに入りました。 初めての迷路探索だというのにオリジナルな感じのアルゴリズムで行きます。 直線をとにかくまっすぐ走るようなアルゴリズムなので、 見ていて気持ちの良い探索ができる・・・といいな。 と、思っています。 迷路探索…

RoboShellのmake。

Eclipseの最新verで(でないとZylinCDTが動かない?) RoboShellをmakeできました。 Eclipse IDE for C/C++ Developers (v.3.3.2) をインストール後、 Help→SoftWare Updates→Find and install→ Search for new features to install→New remote Site →Name:Zyli…

RoboShellの開発環境

Eclipseで構築できることは良い事なのですが 現在のEclipseは様々な所がTeamKNOxさんのページにある物と 大分様相が変わっていて、なかなかてこずっています。 組み立ててみれば(エラーが)わかる諸々の部品とは違って、 環境構築というのは[何を忘れたのか、…

ひさびさにWindowsプログラミング?

ちょっとHSPでプログラムを書こうと思っています。 3Dグラフィックを扱う物にしようとしているのですが、 標準(?)の物は昔使おうとして、パラメータが大量にありすぎて挫折した記憶があるので却下。 (構造体(クラス)が使える言語ならわかり易く記述できる…