goo blog サービス終了のお知らせ 

つれづれなるまゝに

単なる作業メモ。主に、Linux, arduino, raspberry piとか?

Arduinoでラジコン作成

2014-04-13 20:16:20 | arduino
息子がラジコンに興味を持ち始めたので、いっちょラジコンを作ってみようと思う。
ささっとつくるのは無理なので、息子には自分のお年玉で既製品を買わせて、時間稼ぎ。実売4000円くらいのものだがこれはこれで遊べる。

で、最初は、こちらのタミヤの バギー工作基本セット+Bluetoothで作る予定だったが、デジットにモータードライバを買いにいった際、以下のものが売っていた。

車両型ロボットベース「2WD ROBOT CAR」 1,600円
・PS2型無線コントローラセット 2,400円

ので、予定変更して上記のものをつかって作ることにする。

とりあえず、仮組立した。



使用するモータドライバは東芝のTA-7291P。
Arduinoのスケッチは以下のサイトを参考にさせてもらった。

Kinect SDK 応用編 KinectTANK(キネクたん) その1

うちにも昔遊んだKinectがあるので、将来的にはKinectも繋いでみたいな。


つぎに、PS2型無線コントローラ。こちらは、以下のサイトを参考にさせてもらった。

PS2コントローラ型の2.4GHz無線コントローラ(VS-C1)をArduinoに繋いでみた

このサイトでは、ヴィストンのVS-C1を使用しているが、デジットで買ったものも同じ配線&スケッチで動作した。
#ただし、アナログスティックがまだ試せてない。


あと、タミヤの以下のものとスペーサで、arduinoや電池を載せるための台作成。
ユニバーサルプレート(2枚セット)
ユニバーサル金具 4本セット

それ以外は、ピンや線以外には、モータ動作用の単3x4本ボックスと、arduino動作用の9V電池ボックスくらいなので複雑な回路なしにできてしまうな。

ちょうど、今月のトラ技で1000円で手作りarduinoの記事があったので、モータドライバとPS2コントローラ受信器をつけて1基盤で実装すれば、小型化できていいな。

で、今日はモータ制御とPS2リモコンのスケッチを別々に検証して一旦終了。

来週は2つのスケッチを結合して、実際に連動させて動かしてみようとおもう。
その後は、センサーつけて自走させたり、rasberry piに乗せ換えてカメラ映像送信させたり、画像認識させたりしてみようかなとおもったりしてます。
アイデアは子供に出させてみて、一緒につくっていきたいな。

arduino + XBee S2 その1

2013-10-16 22:45:10 | arduino
今日は、先日購入したXBeeの動作確認をしてみようと思う。

といっても、手順はスイッチサイエンスさんで簡単に説明されてるので安心。

S1とS2ではちょっと手順が違うので注意。

- XBeeをはじめてみよう(シリーズ1編)
- XBeeをはじめてみよう(ZB編) ←こっちがS2

もってるArduinoのXBeeのシールドはSD付の純正品だったので、説明そのまま。
USBエクスプローラはストロベリーリナックス製ですが、FT232RLを使った同等品なので、特に違いなし。

問題なく動作しました。


ただ、XBeeをアダプタから外す際に、一番端のピンを変な方向に曲げてしまって焦りました。取扱い注意です><
基本取り外しはあまりしたくないなぁ。。。

将来的にはFM3のUSBで接続させてみたいところです。
こちらにMB9AF312Kを積んだSK-FM3-48PMC-USBSTICK向けのVirtual Com Portサンプルプログラムがあるのだが、CQ版MB9BF618に流用できないかな。

SpansionのFM3ラインナップ図を見ると積んでるコアは同じで、動作クロックとメモリ、あとMB9BF618はEthernetを積んでるという違いだけそうだからいけそうな気も。。。甘いかな。。。

ロジックレベルコンバータ BOB-08745

2013-10-12 20:20:12 | arduino
以前から、3.3v駆動のセンサーを5vのarduinoに繋ぐ場合は、ロジックレベルコンバータが必要という記事があり気になっていた。

とりあえず、ストロベリーリナックスに注文する際についでにBOB-08745を購入してみた。
ただ、5vから3.3vへの降圧で問題があるらしい。後継のBOB-11978では治ってるらしい。もう少し気が付くのがはやければよかったのにorz
今使いたいのは3.3vから5vの昇圧だし、200円くらいのものですのでいいけどね。。。購入の際はご注意ください。

ただ、BOB-08745を調べていて、以下のサイトを発見したことは収穫。

3.3V XBee 5V Arduino 信号電圧相互変換方法

3.3V出力を5.0V入力に直結した回路は問題なく動作するようです。実験や趣味のレベルでは問題なく直結可能らしいです。お悩み解決。

とはいえ買ってみたので繋いでみる。

繋ぎ方はここを参考にしました。




あんど、TMP102もつないでみた。



小さなブレッドボードにぎっちり詰まってしまいました。

まぁ、お勉強用なので。最終的に測定する場合は、小さくしたいのでこの温湿度計にしようかな^^;

スイッチサイエンスからワークショップのお知らせが届く

2013-10-12 00:40:37 | arduino
スイッチサイエンスさんから、ワークショップのお知らせが届きました。

WIZ820ioという超小型のEthenet、、、なんていうんだろ、モジュール?をArduinoとつないでごにょごにょするワークショップのようです。
SPIで制御するようですね。ちょっと興味がわいてきた。

が、場所が東京(はんだづけカフェ)じゃ、ちょっと無理。残念。

はんだづけカフェって秋葉から歩いて8分か。機会があったら行ってみよう。

arduino HH10D その2

2013-10-09 21:26:56 | arduino
抵抗を買ってきたので、HH10Dを動作させてみる。


こちらのサイトに大変お世話になりました。
TMP102の時のようにI2Cで値を取得、計算してポン!という代物ではなかった。

他の湿度計よりお安い分、手間がかかる感じですかね。
参考にさせていただいたサイトでも7回に分けて説明されてました。

ここデータシートの3ページ目にある以下の式を使います。

RH(%) = (offset - Soh) * sens / 2^12

I2Cから、offsetとsensの値を取得、FOUTの周波数を測定してSohを算出という形です。
FOUTからの値は、周波数カウンターライブラリを使用して取得。このライブラリは5番ピンを使うので、FOUTをそこに繋ぐ。



スケッチですが、最初こちらを参考にして動作させてみたところ、値が4000%RHとかになってしまいました。再度、じっくり内容を読んでみる。参考元で使用しているArudinoがProで、システムクロックが8MHzとUNOの半分なためFreqCounter::start()の値が500になってました。

この値を1000にしたところ、それっぽい値になりました。(例のごとくエアコンで湿度を確認)
こちらのスケッチはFreqCounter::start()の値が1000でしたので、正解のようです。

1点だけまだはっきりわかってないことがあって、FreqCounter::f_compの値。これUNOだといくつがいいのだろうか。

最後にメモ。今回使用している周波数カウンターライブラリですが、他に使用できるPMWが11と3だけになるそうです。(10, 9, 6は使えなくなる)
詳しくはここを参照。