デジタル工房 ラボアール
ラジコンに関連した電子工作をしています
Robbe 社製の電流センサー(F1678) を取り付けました
Robbe 社製の電流センサー(F1678) を取り付けて、テレメトリーT18MZの画面で確認できるようにしてみました。IMG_1315.jpg
センサーはこのように
IMG_1313.jpg
搭載しました。

センサーを繋げる前に、プロポの裏にあるサーボコネクタにセンサーを繋げてセンサーの登録操作を行う必要があります。この操作をしないと画面にデータが出てくれません。

積算電流量が見えるのでいいですね。電池容量から引き算すると残りの電気の量が分かります。
最大電圧は65V 電流は150A まで測定可能です。

このセンサーはドイツのロベ社から輸入しました。 ドイツのネットショップでは90ユーロで販売しているのですが輸入コストが結構かかりました。 購入希望者の声が大きいようであれば株エンルートに再度輸入してもらうようにお願いします。


テーマ:ラジコン - ジャンル:趣味・実用

はがき作りました
Maker Faire Tokyo2012 (12/1-2 日本科学未来館) http://makezine.jp/ で配布するはがきのデザインが出来上がりました。

はがき図案

Arduino で ATtiny85 にプログラムを書き込む
Make:magazine のこの記事を参考にして、Arduinoの環境で作成したプログラムをATtiny85に書き込み動かすことができました。
Make:の紹介ビデオは古い環境での説明で、最新の1.0.1の環境では少し違うところがあるのでこれに気がつくまでなかなかうまくいきませんでした。
手順は以下の通りです。

1:http://code.google.com/p/arduino-tiny/ から Arduino Tiny for 1.0 のダウンローページに行き
arduino-tiny-0100-0015.zip をダウンロードします。

2:arduino-tiny-0100-0015.zipを解凍し、中にある tiny と tools という2つのフォルダーを arduino環境がインストールされているところにある hardware というフォルダーの下にコピーします。
私の場合は D:arduino-1.0.1>hardware でした。
これで、準備完了です。

3:Arduino UNO に ArduinoISP をアップロードします。
・ファイル>スケッチの例 から ArduinoISP を読み込みます。
・Arduino UNO を接続し、ツール>マイコンボードをArduino UNOをセレクトします。
・ツール>シリアルポートをUNOが接続されているポートをセレクトします。
・マイコンボードに書き込むボタンを押して書き込みます。

4:ブレッドボードを使って UNO と ATtiny85を接続します。
UNO D10 - tiny 1pin
UNO D11 - tiny 5pin
UNO D12 - tiny 6pin
UNO D13 - tiny 7pin
UNO GND - tiny 4pin
UNO 5V - tiny 8pin と6本接続します。
最後に UNO RESETpin と GNDの間に10μFの電解コンデンサーを接続します。コンデンサーのマイナスがGNDです。

5:ATtiny85にアップロードします。
・Tinyに書き込むプルグラムのスケッチをファイル>開く..で開きます。
・ツール>マイコンボードでATtiny85@1MHz をセレクトします。
・ツール>書込装置で Arduino as ISP をセレクトします。
・マイコンボードに書き込むボタンを押して書き込みます。
UNOのTX,RX LEDがちらちら点滅したら書き込みはうまく行っています。

6:アップロードが完了したら、ATtiny85 をUNOから切り離して単独で動作させt見てください。

ATtiny85を8MHzや16MHzで動かすばあいはFuseビットの書き換えが必要です。
次回はこの辺のテストをして報告します。

Tiny.jpg

テーマ:プログラミング - ジャンル:コンピュータ

Gameduino の落とし穴
引き続きGameduino ボードの記事です。
メーカーが提供しているスペックのページを確認して回路を決めて開発をしたのですが、2回落とし穴に落ちてしまいました。
最初の落とし穴は単純な見落としでした、

Gameduino is a standard Arduino shield. Its required connections are

GND Signal ground
3.3V VCC
5V Main supply: 3-6V
11 SPI MOSI
12 SPI MISO
13 SPI SCK
9 SPI SEL

In addition pin 2 may be used as an auxiliary control, see IOMODE below.

最後の行のフォントが小さかったので2pinが使われることを見落としていました。Gameduinoのオーディオ機能を使おうとすると2pinが使われてしまいます。

2pinを使わないように結線変更、それでもどうも変です、10pinが思うように機能しません。
Arduino を変えても同じです。 理由が分かりません。

犯人は"GD"のライブラリーでは無く、"SPI"のライブラリーでした。
SPIライブラリーは"pins_arduino.h"の記述にしたがってSPI通信をしていますが、セレクトピンが9pinではなく10pinにアサインされていました。
Gameduinoのボードの10pinはどこにもつながっていません。どう理由でこのような設計(10ピンでなく9ピンを別に使う設計)になっているのかは分かりませんが、とりあえず再び配線を変更し10pinを使わないようにピンの引越しを行ったら無事思うように動くようになりました。
(SPIライブラリーの10ピンを9ピンに変更したらどうなるかは試していません。)

というわけで、一応Gameduinoをつかって何とか目的のアプリが作れました。
完成したアプリの公開はもう少し待ってください。

テーマ:プログラミング - ジャンル:コンピュータ

Arduino Gameduino Library の対応
いまGameduinoというボードを使って開発をしています。 
Gameduino
メーカーのホームページにあるライブラリー"GD"とサンプルプログラムを参考にしているのですが、最新の環境 Arduino1.0.1 ではエラーが出て実行できませんでした。しかたがないので前のADE Arduino022 の環境で作業を行っていました。
目的のアプリもほぼ出来上がり、Arduinoを使ってVGAディスプレイに表示でき音も出るアプリが動くようになりました。
一段落したので、Arduino1.0.1 の環境に移行してみようと思い MAKEのページを確認してすぐに問題が解決しました。

GD.cpp ファイルの 最初に記述されている2箇所の #include "WProgram.h" を #include "Arduino.h" に変えただけで最新の環境で動くようになりました。

原因を追究していませんが結果オーライです。

テーマ:プログラミング - ジャンル:コンピュータ