GPS関連の話題を掲載していきます。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
さて、加速度センサーでカーブ走行時の軌跡を見る其の1で概念的なところはできたので、秋月電子でKXM52-1050の加速度センサーを購入して、押入れに入ってたH8 3069Fとブレッドボードを利用して以下の図のように接続してみた。
相変わらず、てきとうだが、まあとりあえずOKとしよう。
KXM52-1050はマイコンと簡単に接続できるようにあらかじめ、めんどくさい処理はやっていてくれるので、助かる。
とりあえず、カーネルはH8 3069F買った時についてたH8 OSを利用する。データの出力は元々、Dサブ9ピンがついている、TxD1ピンとする。出力したデータはNetPC上のVBでキャッチして、VBで軌跡を描く。
Net PCにはマイコンを、USB接続するので、折角なので、USB-シリアル変換モジュールのFT232RLを利用し、こいつから給電してやることにした。これならNetPCのバッテリーはすぐなくなるが・・、別途、バッテリーを用意しなくてもいいわけである。
しかしながら、加速度センサーの値はA/D変換によって、取得するが、USBからの電源供給だと、A/D変換用の給電と基準電圧が不安定になりかねないが、まあよしとしよう。
とりあえず、マイコンに加速度センサーからデータを取得するプログラムを組み込むわけだが、ちょっと注意点をあげれば、3069Fのポート9 データディレクションレジスタは0(入力モード)にしないと、ROMに書き込んで実行させた時にシリアルからデータが出力されません。理由はよくわからないのですが、TxD1ピンはポート9番のピンと共有していることも起因しているのかもしれません。あとはTDR1とSSR1レジスタつかってうまくやってください。
また、開発環境がcygwinつかっているなら、毎回コマンドうつのめんどくさいので、バッチやスクリプトを作っておいたほうが便利です。
というわけで、ハイパーターミナルにx,y,zという感じで実際にデータを出力させてみました。
実際の出力電圧に変換させるには、A/D変換用の給電が5Vととして、3069Fなら、出力値/ 1023 × 5をしてやれば求まります。
なんで1023なのかというと、3069FのA/D変換の分解能が10bitつまり、5Vの給電であれば、アナログ値で5Vを上限とする高低を1023段階表示できるわけです。(なんか文章おかしいですね。すみません。)
尚、KXM52の説明書には5V給電圧で、オフセットが2.5Vとなっており、この2.5Vを境として、Y軸なら、右方向に加速がかかっているのか、左方向に加速がかかっているのか分かるわけです。しかしながら、私の環境では、実際には5Vの給電だとしても、2.5Vから少しばかりオフセットがずれてました。このへんはうまく調節してください。
とりあえず機器のほうはできたので、次はソフトの方をVBで作ってみましょう。
相変わらず、てきとうだが、まあとりあえずOKとしよう。
KXM52-1050はマイコンと簡単に接続できるようにあらかじめ、めんどくさい処理はやっていてくれるので、助かる。
とりあえず、カーネルはH8 3069F買った時についてたH8 OSを利用する。データの出力は元々、Dサブ9ピンがついている、TxD1ピンとする。出力したデータはNetPC上のVBでキャッチして、VBで軌跡を描く。
Net PCにはマイコンを、USB接続するので、折角なので、USB-シリアル変換モジュールのFT232RLを利用し、こいつから給電してやることにした。これならNetPCのバッテリーはすぐなくなるが・・、別途、バッテリーを用意しなくてもいいわけである。
しかしながら、加速度センサーの値はA/D変換によって、取得するが、USBからの電源供給だと、A/D変換用の給電と基準電圧が不安定になりかねないが、まあよしとしよう。
とりあえず、マイコンに加速度センサーからデータを取得するプログラムを組み込むわけだが、ちょっと注意点をあげれば、3069Fのポート9 データディレクションレジスタは0(入力モード)にしないと、ROMに書き込んで実行させた時にシリアルからデータが出力されません。理由はよくわからないのですが、TxD1ピンはポート9番のピンと共有していることも起因しているのかもしれません。あとはTDR1とSSR1レジスタつかってうまくやってください。
また、開発環境がcygwinつかっているなら、毎回コマンドうつのめんどくさいので、バッチやスクリプトを作っておいたほうが便利です。
というわけで、ハイパーターミナルにx,y,zという感じで実際にデータを出力させてみました。
実際の出力電圧に変換させるには、A/D変換用の給電が5Vととして、3069Fなら、出力値/ 1023 × 5をしてやれば求まります。
なんで1023なのかというと、3069FのA/D変換の分解能が10bitつまり、5Vの給電であれば、アナログ値で5Vを上限とする高低を1023段階表示できるわけです。(なんか文章おかしいですね。すみません。)
尚、KXM52の説明書には5V給電圧で、オフセットが2.5Vとなっており、この2.5Vを境として、Y軸なら、右方向に加速がかかっているのか、左方向に加速がかかっているのか分かるわけです。しかしながら、私の環境では、実際には5Vの給電だとしても、2.5Vから少しばかりオフセットがずれてました。このへんはうまく調節してください。
とりあえず機器のほうはできたので、次はソフトの方をVBで作ってみましょう。
PR
この記事にコメントする
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
カテゴリー
フリーエリア
最新コメント
最新記事
(01/29)
(01/06)
(11/23)
(11/21)
(10/10)
(10/10)
(09/12)
(08/04)
(08/03)
(07/31)
最新トラックバック
プロフィール
HN:
Slit
性別:
非公開
ブログ内検索
最古記事
(05/12)
(05/13)
(05/14)
(05/14)
(05/14)
(05/16)
(05/16)
(05/18)
(05/18)
(05/19)
アクセス解析