« 2010年11月 | トップページ | 2011年1月 »

2010年12月

2010年12月30日 (木)

3DCADを使ってみた

3DCADを使ってみました。
使ってみたのは CoCreate Modeling Personal Edition 3.0 です。フリーソフトです。

最初は使い方がよく分かりませんでしたが、使い方のビデオがあり、ソフト自体が日本語なので、だんだんと慣れてきました。

慣れるまでは、手で描いたほうが速そうですが、慣れたら3DCADのほうが速く描ける気もします。
3Dから、2Dの寸法図にすることもできて、便利です。

 

もう今年が終わりますね。早かったです。

では、良いお年を~paper

2010年12月29日 (水)

Enableとはあくまで一時停止スイッチなのだ

PSoCマイコンのお話です。
今、超音波センサーを作ろうとしています。

測定結果が10mmくらいばらつくのです

それは、PWMを毎回リセットせずに、PWMのEnable信号のみを使って超音波送信をスタート・ストップしているからです。
すると、Enableとはあくまで一時停止スイッチですから、毎回始まり方が違います。

だから、ばらつくのです。

解決方法・・送信開始前にPWMブロック内のカウンタをリセットする。

しかし、カウンタのレジスタは書き込めません。

しかも、PSoCはあくまでスレーブで、送信のタイミングはArduinoから指示します。
なので送信開始前では間に合わないのです。→送信終了後にする (ヒマな時はなんでもできる!!というコト)

そこで、解決方法 誤 送信開始前にPWMブロック内のカウンタをリセットする。
           正 送信終了後に割り込みを入れ、CPUから一旦PWMをStopし、Periodを書き込み、すぐにPWMをStartさせる。

どういう意味かというと
CPUから一旦PWMをStopし、Periodを書き込み、すぐにPWMをStartさせる
と、カウンタをリセットしたことになるのです。
PWMのStop、Startは時間がかかるので送信終了後(ヒマなとき)にするのです。

こうすると、ばらつきは少し抑えられました(まだ正確なデーターはとっていませんが)
ただ、ばらつきが抑えられただけで、精度は悪く20mm以上実際と違います。
でも、ばらつきが抑えられれば、テーブルルックアップで直すというのもできなくはないですね。

 
 
 
あと、PSoCってPinからデジタルブロックに結線しておきながら、CPU割り込みを入れることができのですね。ちょっと感動。

またオープンコレクタ・割り込みなどなど全pinができるというのもいいトコであります。

2010年12月19日 (日)

GPIO割り込みはHi-Z

PSoCマイコンのGPIO割り込みにおきまして、
Hi-Z Analogにしたらダメだ!!
ということにだいぶ気付きませんでした・・・

はじめてのPSoCマイコンという本のP.79に”はっきり”書いてありました・・・
が~ん・・・

ま、原因が見つかってよかったということにしておきましょう!
しっかし、どうしてHi-Z Analogじゃ割り込みができないんでしょう・・・?

 
 

32.8kHzの超音波センサーですが、増幅器のゲインを時間と共に引き上げていくことが出来れば、うまくいきそうだということが分かりました。
ゲインを手動で(スイッチで)変更することができるようになって、いちいちプログラムを書き換えなくて済むようになり、楽になりました。

次はゲインを自動で引き上げれるようにしたいと思います。

10000アクセス突破!!

本校電子工学部はブログを2010年7月11日に開設してから、10000アクセスを突破しました。
ありがとうございます。

これからも活発に活動していきたいと思っているので今後ともよろしくお願いします。

 
 
さて、今後作りたい物のメモです。全てはロボカップジュニアサッカー用のサッカーロボットのためです。
・マブチモーターRS-380のギヤードモーター製作
・方位センサHMC6352とArduinoとの接続
・32.8kHzと25kHzの超音波センサー
・パルスボール用デジタルIRセンサー
・キッカー用昇圧回路
・10数A流せるモータドライバ
・加速度センサーのデータより速度・走行距離の算出
・PS/2マウスとPSoCマイコンとの接続
なお、マイコン間の通信(センサー含む)はI2Cで統一したいと思っています。

上のを簡単にすると、
・ギヤードモーター
・モータドライバ
・センサー類(方位・超音波・IR・加速度・マウス)
・昇圧回路
ということです。

2010年12月16日 (木)

久しぶりに更新!!

定期テストや他いろいろとありまして、すこし間が空いていました。
これから通常通りいろいろと活動していきます。

    

  

さてさて、この前思いついたのですが、ロボットにコンピュータ用のマウスを載せたらいいんじゃないかと思いました。
単なる思いつきです。

ロボットは速くなればなるほど将来の予測をして走行しなければなりません。将来の予測というのはセンサーによって自らの動き方を感知し、計算して予測します。
ロボットは超音波センサーによって距離が、加速度センサーによって加速度の情報が分かります。
しかしながら、速度は分かりません。もちろん、距離・加速度の両方から速度を計算することも可能ですが、かなり誤差が大きいと予想されます。
速度というものは目印との比較がないと分からないので、床を”目印”にすればいいということです。
で、マウスをつけたら、速度が分かるということです。

USBは高速過ぎて難しそうなので、
こんなコネクタのマウスを使えたらいいなと思います。
このインターフェースをPS/2といいます。

まぁ、想像の段階です。
実際に制御できたらいいなぁと思っています。

完全にアイデアを公開してしまっていますね・・ま、いいんじゃないでしょうか。