2011年01月30日

今週の成果

と言っても さほどの進展はない。
少しづつの移植作業で迷路関係がほぼ そのまま移植完了。 今年は力任せからもう少し賢いマウスにしたい。 具体的には探索の歩数を少なくすること。 おしり当て補正も卒業したい。 なので引き続き迷路関連は改良作業がつづく。
posted by momoco at 23:28| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月29日

買い物 到着

通販で注文していた物が一部到着
ジャイロ、マイコン、FRAM、ゲートドライバ
DigiKeyで無い物があったので今回はMouserへ発注したが 特に問題もなく。
ゲートドライバは リニアテクノロジーから直接購入。
あとで気が付いたが今回注文をした部品はすべてチップワンでも購入可能だったみたいだ。
でも価格は少し高め。 ある程度まとめれば海外でも送料無料なのでかえって安い買い物になるみたい。

機能の粗方が使えそうな目途がたったのでちょっとだけハードの準備も始めた。
最初は一応回路図、と言っても今回はとても簡単だけど を準備中。
基板は例によってP板に出すつもりなので P版の無料基板CADを使う予定。 数年頼んでいないうちにさらに低価格化が進んでいる。 基板の仕様は少し悩ましいが 2層で1.2mmか1.0mm。レジストはやっぱり赤かなぁ。 外形もあまり変えるつもりが無いので パッと見た目が同じになってしまうけど。

ソフトは momocoの中身を移植中だが もともとこんがらがっているうえに 一部改良(?)などやりながらなので 進みは少しづつ。

実験の方は ちょっと寄り道で ブラシレスモーターが回したくなって その準備中。
STM32のタイマを使って勉強を。 

手を広げすぎて収拾がつかない気もするけど、まぁよかろう、、。
posted by momoco at 17:59| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月25日

不具合の理由

SPIを試してる時に発生をした変な挙動は フラッシュの書き込み時にGloval Eraseを選んだことで発生しなくなった。
書き込みに使用しているのはFlash Loader Demo
Erase nesessary pageとすれば 文字通り必要なページを消してくれるのだと思っていたのだが そうでもないらしい。
PCのターミナル上で変な表示が出ていた不具合はなくなったが 肝心のEEPROMの扱いはまだうまくいかない。
posted by momoco at 22:58| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月23日

モータ駆動

今日も部品の注文を少し。
モーター用のドライバ FDS8958B: これは実績のあるもの 6輪時代のNさんと基本的に同じ物
ジャイロ LY3200ALH: 最近はアナデバばかり使っていたのだが 小さい、実装がまBGAよりはまし、そのままで必要なレンジの物がある、3.3VでOK など使いやすいので変更をしてみる。評価基板のデータでは十分に実用になりそう。
それにSTM32F103RETを追加注文

-----------------------------------------------------------------------------
モータの駆動は TIM1、TIM8 どちらもOK、 マイコンから直接駆動させると1個のモータでタイマを1本占有してしまう。STM32F103RETなら 高機能タイマが2本あるので問題なし。
今まではCPLDを使っていたので設定などもちろん書き換えは可能だけどちょっと面倒だったが今回は
普通にソフトで設定を変えられるので弄ってみるには便利。 一度決めたら そんなに変えることは無いのだけど。 今日は またmmoko05のドライバ、駆動部を使って実験。 momoco09と同じPWM周期100kHz,デッドタイム50nsまで確認。 負荷はかけていないけど問題なく回っているようだ。
とりあえずは実験成功。
反転のデッドタイムは機能にはないのでソフトで作らないといけないが 今ままでどのくらいにしていたか忘れてしまった。

SPI接続のEEPROMもトライを始めたが苦戦中。 EEPROM自体はフラッシュに直接迷路を置けるので必要がなくなったけど 外付けのメモリとしてログを取りたい。 FRAMかMRAMか この手の物ならログを取るのに使えそうなのだが。 そのためにとりあえず手元にあったEEPROMでちょと勉強と思ったのだが 簡単には行かない。

機能の横道の続きも、等高線マップ作成をほとんどif文を使わずに書いてみた。けどすでに全面探査の終わった状態の迷路ではほとんど変わらなかった。 探索中は未探索で壁がずっと少ない状態になるので効果があるのではと思うが。 そこらへんはおいおい確認をしてみよう。


ボードを改造して USART1〜USART3が選べるようにしてみた。 USART1はフラッシュへの書き込みで使用する。 ただし、TIM1とピンがかぶるのでマウスの作業用としては使えない、でも書き込み時には使えるようにしておかないと。 USART2かUSART3を使うのだが USART2はADポートとかぶるので出来れば使いたくない でUSART3を使いたいと言う事に、、 何が干渉をしていたのか ライブラリを整理する前にはうまく動かなかったのだが、 今回はすっきり動いた。

EEPROMで苦戦しているが 今週末はまぁ成果のあった方か。
posted by momoco at 19:52| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月22日

作業中

例によって週末は半田付け作業から再開。
マウスに必要な機能を粗方配線し終わった。 基本はブレッドボードで作動確認済なのでトラブルがあれば配線作業のはず。 一部機能や 同一機能が複数ある場合には すべては確認していないのでそれはこれからの作業。 回路の検証とチェック用のソフトが先に用意できれば本番のデバックはずいぶん楽になるはずだ。

今日の買い物は LTのゲートドライバ。在庫が少なくなったけどDigiKeyやMouserでは手に入らないみたいなのでLTのHomeページから直接購入依頼。 今回駆動系は実績のあるものを使う予定。 駆動信号はCPLD→CPUダイレクトに変更を試みる予定。 実装面積は必要だけど今以上の簡単なものが見つからないので、どうせ吸引マウスの場合フレームマウスにはならないので大丈夫だろうと言う見通し。 
posted by momoco at 16:38| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月21日

買い物続き

今年用のモーターを発注した。
例によってミニモーター1717。
世間は円高だけど 頼む度に単価が高くなっている。
届くのは2〜2.5月先。 他の準備を考えるとちょうど良いタイミングだろう。

週中は地味に 使用していないライブラリーの整理など。makefileなどもちらちらと勉強をしながら。 なんとなくは意味が分かる所もあるようになってきた。
ただし、わけの判らない事象も発生したりして まだまだ安定しない。

--------------------------------------------------------------------------
変な挙動の理由は判らないが どこを弄ると、は判ってきたので とりあえずそこに触らずに別の事を。 momocoのソフトをちびちび移植し始めた。
重み付無し等高線MAPを作る部分は昔から弄っていなかった。ロボコンマガジンに載っていたM永さんのプログラムが基本でちょっとだけ変えたもの。基本原理はまったくそのまま。
と言う事は8年前のまま。
端からしらみつぶしでちょっと無駄が多い。ふと思い立って必要部分だけを順番に処理するように変更。ちょっと勘違いをして回り道をしたけど無事動作確認できた。 おおむね計算の処理時間は1/5に短縮。
posted by momoco at 22:44| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月16日

試作基板2

変換基板を使った自作CPUボードが意外と簡単に動いたのでそちらをメインに追加作業。
エンコーダとジャイロを追加 機能確認。
センサーは全数をつけるのはもったいないので LEDとセンサーのセットを作り コネクタで付け替えて使うつもり。
ファンモーターとモータのドライブ部はこれから。
ブレッドボードよりは取り扱いが楽になったので 色々な作業がやりやすくなった。

posted by momoco at 23:54| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月15日

試作基板作成中

試作基板の配線中。 久しぶりに半日たっぷり半田付け作業。

STBeeを使った物と STM32F103RETを変換基板でユニバーサル基板に取り付けたもの。
両方ともSW類とシリアルでPCとつなぐところまでは確認。
多少苦戦したけど何とかここまで。 やはりSTMは外付け部品が圧倒的に少ないのでこんな事をする気にもなる。
試作基板1.JPG

----------------------------------------------------------------------
ソフトの方は苦戦中。
徹底入門のなんでもありプロジェクトから マウス用にしたシンプルなプロジェクトにしたいのだが
うまくいかない。 コンパイルが通っても動作がおかしくなったりする。
全体の構造を把握できていないし、環境に関する知識が無いせいなので勉強をするチャンスと思ってもう少し粘ってみるつもり。
posted by momoco at 23:57| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月12日

買い物3

スタンドが届いた。
山田照明のZ35LB。 Amazonで購入。
ちょっとレンズが小さめだけど実用上は問題ないだろう。
蛍光灯は30Wと非常に明るい。 普通にスタンドにするには明るすぎるくらい。 
もう一つの特徴は可動範囲が広い事。 
今週末はこれで ブレッドボードであてのついた機能からちゃんとつないでしまおう。

Z35LB.jpg
http://www.zlight.net/fluorescent/z_35l.html

----------------------------------------------------------------------------

何度目かのピンの使い方変更を検討中。
USART3を使いたいと思ったがなぜかうまく行かない。1と2は問題なくOKだった。
開発環境のSTBeeをベースに弄っているので 何かと干渉をしているのかもしれない。

どうもライブラリーの量に圧倒されて どこから弄ればよいのか、
posted by momoco at 21:03| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

BS

家はBS見れません。
地上波でやってくれないと。
posted by momoco at 00:39| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月10日

フラッシュ書き換え時間

やはりフラッシュの書き換え時間はログには全く使えないことが判った。
たった4Byteでも割り込み時間内では全然足らない。
と言う事で やはり高速の外部のRAMを考えないといけない。 せめてフラッシュが使えれば容量的には足りそうだったのに。 内部のRAMの空き分だけでは ちょっときついな。

迷路の保存は簡単に出来た。と言っても最少書き込み単位の4Byteに1区画分のcharデータをキャストして書き込んだだけで中身はスカスカですが。 本当に素人くさいけれどポインタの扱いは今一不安。 こんな事ではいかんのですが。
それは良いとして、迷路の保管がフラッシュで簡単に出来るのは楽だ。

----------------------------------------------------------------------------

最近の買い物 その2
ハズキルーペ.JPG
TVでCMも流れている ハズキルーペ メガネ型なので使い勝手が簡単。 普通のメガネの上からでも問題なし。 ただ 細かい作業にはルーペだけでは十分でない 明かりが十分でないと。スタンドライトが故障してしまったので 購入を検討中。
posted by momoco at 23:12| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月09日

DCモーター駆動成功

まずは簡単な FAN用のテスト。
こちらはPWM信号1つが扱えればOK。駆動成功。
走行用のモーターはHブリッジなので気を使う。
momoko05Zの基盤を使う。 これはドライバーだけが自作でJSDのボードから信号を送って駆動していた。駆動パターンだけはCPLDを書き換えてあったけど。
このドライバー基板にSTM32の タイマーで作った デッドタイム付のPWMを送る。
ちゃんと回転した。 怖くてデッドタイムなど詰めてはいないけどまずはOK。
逆転もOK。
高機能タイマーを1つ占有して一つのモータしかコントロールできないけれども自由に設定できるし今までのドライバーそのままでも余分な回路は必要が無い。
103RETなら高機能タイマーは2本あるので大丈夫なはず。
後は 外付けメモリーをつけるならSPIのテストが残るだけ。 もしくはログの増設を考えなければ迷路はCPUのフラッシュに書き込む手もあるみたいだ。 これなら外付けのメモリもいらない。
50KB程度のログで開発が出来るか?と言う事だけ。今までの1/10だからなぁ。

----------------------------------------------------------------------------
フラッシュへの書き込みについて 「徹底入門」のサンプルを移植してみた。 CPUの内部のみの処理の為ピンの扱いなどで影響は受けない。 なので簡単に動作した(みたい)。
探索中の迷路の保存には使えるんじゃなかな。 割り込み等との干渉はあるのか? やっぱり書き込み中は割り込みなどは一旦停止した方が良いのだろうか。
フラッシュの書き込みは遅い、、と言われているのでログに使うのは無理だろうな。
ログに使うとする 大体だけど 50BYTE/50μsec 程度で書けないと困る。 これってどんな程度の速度なのだろうか、 そこらへんは感覚を持っていないの 何か参考になる情報があると良いのだが。
posted by momoco at 17:53| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月08日

シリアル書き込み成功

今日は本業の稼働日、早めに上がって作業再開。
週中に情報を集めていたせいか比較的スムースに成功した。DFUを使わないプログラムもちゃんと動いているようだ。
参考にさせて貰った情報源は

KATOさんの  http://wiki.livedoor.jp/robolabo/d/STM32%a5%e1%a5%e2
kojimaさんの http://wiki.livedoor.jp/robolabo/d/STM32%a5%e1%a5%e2

それにいつもの
マイコン徹底入門 http://miqn.net/
マイコン工作入門 http://jsdkk.net/mycom/?page_id=2

良い情報があり非常に助かる。STMについては SHやH8ほどには関連図書はなく上の情報源は貴重な存在。

書き込んだのは追加で購入したSTBee。1枚だけだとさすがにトライをするのに躊躇する時もあり2枚追加購入。 それが届いたのでテストしてみた。 うまく行くようなので次は ブレッドボードに貼り付けになっているSTBeeを書き換えてみる。 シリアルでフラッシュの書き込みが出来るようになれば JATGもUSBも使わなくてすむのでポートが空く。 マウスにとっては シリアル化するメリットは大きい。
STBee.JPG

posted by momoco at 21:17| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月05日

連休終了

本日で連休も終了。 今週は土曜も稼働日。

機能の段階のボード
ブレッドボード11JAN04.JPG

今日はこれに 壁センサー回路を追加。
最近のトレンドを試してみる。
LEDは単純にトランジスタでON/OFF、抵抗は取り換えられるようにソケットピンを使って接続。
受け側もTPS601+抵抗だけ。今までに比べてウソのように部品が少ない。
LEDの発光テスト完了。 センサーに感度があるのも確認。 動作はするのが確認できたので パルス発光時のセンサー値、ベースのセンサー値を取る様にする。
発光時間は適当でforループで数えるだけ。 
これで一応 壁までの距離が近い、遠いで大小の値が返ってくるようになった。
本当にいい加減な設定でちょうど今までと同じような値が返ってきた。分解能12bitなので実際にはフルレンジに対する比較だと1/4の出力と言う事か。 OPアンプも入っていないのでフルレンジなんて返ってくるわけないか。 調整できるところは抵抗2本と発光時間のみ。 回路がシンプルだから調整できる所も少ない。
posted by momoco at 21:05| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月04日

わずかな進捗

今日も少し作業を続行中
なるべくマウスにした時にそのままの設定で使えるようにポートの使い方を考えると結構難しい。
DFUの復旧にはJTAGを使い、フラッシュの書き込みにUSBを使っているのでそれを残しながらだと64ピンもぎりぎりの感じ。表示用のLEDやDIP SWなどはあっちにしてみたり、こっちにしてみたり。
で何とかなりそうなのでブレッドボード上で組み直し。 
基本問題にならないはずだが TIM3を使ったエンコーダのカウントはOKだったのに TIM4はうまく動かない。エンコーダをつなぎかえても変わらないのでエンコーダのハードのせいではない。
TIM4で使うピン(PB6,PB7)は他とかぶっているわけでもないし。 どうせ判ったら凡ミスなのだろうが なかなか思いつかないんだよなぁ。

-----------------------------------------------------------------------------
信号が出ているか、受け取っているか、カウントできているか、 と順番に調べたら何のことは無いカウントは出来ていたのにその後の計算で間違えていただけだった。 これでエンコーダ2つはOK。
ADはジャイロ、バッテリ電圧モニター、壁センサーx5
ジャイロは評価基板を間違えてしまったおかげで簡単に接続。1secのデータをログに取りチェック。まぁ問題ないレベル。±10弱あるが12ビットだし 単純生データだし 十分に扱えるだろう。
電源電圧のモニターももちろん問題なし。 センサー5個はまず抵抗で作った電圧をADで変換。こちらも問題なし。 後はセンサーの回路を用意してチェックをする予定。
そして残るは一番手ごわいと思われるモーターコントロール。 先日デッドタイム付でPWMが出来たので喜んでドライバーにつないだら 定番のドライバー焼損。 ちょろちょろと火がついた。 やはりちゃんと考えながらやらないとダメだ。
posted by momoco at 20:06| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月03日

シリアル接続

まさに3歩進んで2歩下がる(ゴールまで何歩あるのかは考えない)の通り、同じような事を少し違った状況でやっている。
STBeeを使い シリアル接続でデータの表示、取り込みが出来るようになった。(プログラムの書き込みはUSB経由でDFUを使う)
それで何が変わるかと言うと、
・VCPを使わないので電源ONですぐ表示が出来る。
・通常のシリアル通信なので 今まで通りJSDのJTW32のターミナルがそのまま使える。
 ターミナルの使い勝手はなれている事もあるけどこちらの方が使いやすいし、
 問題だったキャラクタ表示の迷路が文字化けしない。 ログからグラフで可視化する手順も出来ているので
 その環境もそのまま使えるはず。
フラッシュへの書き込みもシリアルで出来るらしいのだがとりあえずはSTBeeのボードを使う限りは問題にならないのでそのままで良いか。 マウスにする場合には フラッシュへの書き込みとDFU自体をどうするか考えなくてはいけない。
各種デバイスとの接続はSTBeeでも基本変わらないので問題はないはずだが 参考書のサンプルなどは汎用性を持たせるためにマクロが色々組んであってパッと見かえって煩わしく感じる。単一目的なのでずいぶんと整理できるはず。


-----------------------------------------------------------------------------
STBeeを使ってブレッドボードを組み直し
ほとんどのポートがコネクタに出ているので本番のマウスに移植を想定しながら簡単なものから機能を加えていく。 もともとSTBeeはSTM32F103VET(ZETではなかった)なので100ピン、使いたいと思っているのは64ピンなので 余るだけでほぼ同じように引き出せるはず。
今までは市販ボードのコピー回路からだったのでこう言う手順は初めて。ブレッドボードのありがたみがわかる。 ただ持っているものはよく使う2.54mmピッチのヘッダピンは太すぎて入らない。ちょっと不便だ。
現状、表示用LEDx6、PUSH SWx1、ロータリーDIP SWx1、エンコーダーx1 まで搭載&機能確認。
posted by momoco at 17:56| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2011年01月01日

2011年

あけましておめでとうございます。

去年もまた不完全燃焼で今年は完全燃焼目指して日々精進。
posted by momoco at 00:28| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。