センサー

豆カメラもう少し


ブレッドボードに起こした豆カメラ

 Arduino+Xbeeによるベランダエンドウカメラを回路固定すべく、ブレッドボードにて等価回路を作成。サクっと動作しました。

ユニバーサル基板に写した豆カメラ

 無事にブレッドボードの試作回路が動作したので、それを更にいわゆる秋月のB基板にて再現し回路固定。ATmega328Pは3.3V 16MHz動作です。XBeeとか23K256が3.3V動作なのでレベルコンバートを避けるべく。電源はminiUSBから入れて3.3V系へはLDOな三端子レギュレータで変換。シリアルカメラは電源5V信号線3.3Vなのでそのように。miniUSBからは念のため500mAのポリフューズを挟んでます。最初、スイッチサイエンスで売ってるC基板サイズのXBeeユニバーサル基板で作ることも考えたけど、老眼には辛いのでやめました。
 AVR側のプログラムは今のままで動きますし、一応、USB-シリアルアダプタ用の6ピンヘッダもつけてるし、ICソケットも使ってるし。お弁当ケースにケーブルの穴を開けて、基板ネジ止めして、パテで防水したらベランダに置けます。ベランダに置くっていうか、稼働中の気象センサーの様に、また壁に面ファスナーで貼り付けるかな?と。

 あと、カメラ稼働までにはmbed側のソフトの微調整が必要。Web公開にはWebサーバのソフト作成(今日の金魚をパクるか?)が必要です。

 で、その次は、C基板サイズのXBeeユニバーサル基板で、土壌水分と地温と湿度センサーの付いたマイコン制御基板を作成するですかね。土壌水分のセンシングデータが何日分かとれたら、コントロールプログラムを書いてSSRでON/OFFすべく水やりポンプの工作をする予定です。 暑くなってくるゴールデンウイークの頃には稼動してると良いね。


JPEGシリアルカメラからXBeeを通して保存


JPEGシリアルカメラ <--> Arduino <--XBee--> mbed での撮影テストしました。
mbedからは写真撮れ、ファイルのサイズ教えろ、データ送れの3つのインターフェイスを実装して。エラー時の再送とかはコードに盛り込むべきか、運用的にその回の撮影は無かったことにするかは今後の気分しだいだな(笑)。

本日の結線

 配線がくねくねですけど、プロトタイピングなので許せ。実稼動時は整理するさ。

デバッグはこんなprintfデバッグ

 (waitがwaiteになってるのはtypoとして)
 シリアル出力を送り側のArduinoと受け取り側のmbedでひっぱらかって(mbedは仮想なのでUSB1本ですが)、デバッグメッセージを見る。Arduinoは前に書いたようにソフトシリアルを2系統使ってます。Arduino1.0さまさまです。

机から天井方面の画像

 こんな天井方向の画像が得られました。LCDの上にまたがってるのはクマのぬいぐるみ。も少しエラー時の対策を入れれば使えそうだな。

 次はmbedでのhttp uploadです。Arduinoのコードがあるのと仕組みを理解したのでmbedなら結構いけるかなと。そして土日はカメラの設置工作を予定。ホームセンターで金物探しだ。


カメラの画像を無線で飛ばす検証


 昨日、シリアルJPEGカメラのコントロールを有線ではなく、無線でやるテストをしていた。XBeeのシリーズ2(うちにあるのは全部シリーズ2だし、使用中も含めて全部で10個あるw。)で、透過モードにて。
どうも、フロー制御無しでは厳しそう。XBeeの無線区間は半二重になるのでだろうか。なので、

運用想定図

 こんな感じでの運用の為に実験検証中です。カメラと直結のArduino or SeeeduinoStalkerはベランダ置き。多分Stalkerを使うと思う。こいつ、microSDやXBeeのコネクタどころかRTCやらI2Cドライバまで付いているし、電源も太陽電池とバッテリーで運用出来るように充放電制御チップが載っている。クロックは8MHzだけど。コレには、土壌温度・土壌水分チェックと水やりもやってもらう予定。
 カメラの画像は一旦microSDに保存しておいて、XBeeでたらたらとフロー制御しながら送信しようかと。XBeeは垂れ流し透過モードにするか、APIモードにするかは要検討。受信側をmbedにまとめるのならAPIモードかな。10Kbyteの画像だと何回やり取りが必要だろうか?XBee自体、大きいデータをやり取りするのには向いてないからなぁ。
まぁ、2月中を目処に実験していきたいと思っています。


雨の土曜日の戯言


 秋月で買った急加熱ボタン付きの半田ごてgoot TQ-95。標準のこて先より細いこて先を探す。TQ-77RT-SBをマルツで売ってたので、他のパーツ(XBeeの電圧合わせ用のツェナーダイオードとか各種基板コネクタとか。)と併せて発注。送料はかかるけども、以前から書いているように秋葉にでる電車代やそこでショップを回る労力を考えたらなんとも無い。確かに数百円のパーツだったりすると気持ち的には気になるでしょうが、現代日本では代替手段が無いのだから。高いからって待っていたら機会喪失の損失のほうが大きくなるってもんだ。長生きしても身体が動かなければ好きな事も出来なく無駄に生かされて税金を使うだけだもの。

 話題かわって、豆カメラに使う予定の2台目のJPEGシリアルカメラ。昨晩のテスト中にうすうす気がついてはいたが、撮影解像度変更が保存されない。販売元でも、

 と、注意書きが入ってた。1台目を買う時はこんな注意書きも無く、解像度変更保存もOKで動いているのだが。豆カメラ自体は320×240で撮ろうと思っていたので購入した。だから、販売元にクレームする気はさらさら無い。実用上なにも問題は無い訳だし。
 試しに、mbedにつないで撮影してみた。やはり解像度の変更は保存できないようだ。ただ、製造元のページにFAQがあってそこに、(以下転記)

Question:
We received 4 more cameras that are having the same issue in that we cannot set them to 640×480 with the LS-Y201 program. They only capture in 320×240. Please advise.
Answer:
There are two solutions.
One is we exchange these 4 cameras for you.
The second one, perhaps a better one, is you issue an command to the RAM to set it to 640×480. The only drawback is you have to run this command every time the camera is powered up, which I think is trival. Here is how:
command                 return
1.56 00 54 01 00 640*480       76 00 54 00 00
2.56 00 54 01 11 320*240       76 00 54 00 00
3.56 00 54 01 22 160*120       76 00 54 00 00
This is to change RAM, not EPROM, so a reset is not needed. However, the data cannot be saved after powering down. The same command needs to be run after everytime the camera is powered up.

なんてやり取りがあって、実際このAnswerの通りのコマンドを送ってみたら解像度変更はできた。ただ、電源を切ってしまうとデフォルトの320×240に戻ってしまうけども。でも、電源切って再起動する時にマイコンから解像度変更コマンドを送れば良いだけなのだから何も問題は無いのだ。まぁ、こういうハブニング的な事はアジアンデバイスでは良くある事だ。(頻繁なのでハプニングではないかも?)

 明日は月次作業で出勤して、終わったら床屋に寄って、立川で書籍を購入予定なので、工作は進まないと思います。


VAIO UX退役&今日の金魚


 Arduino Camが結構大丈夫そうなので、VAIO UX(あ、今まで「U3」と書いてたのは「UX」だった。まぁ実はcrusoeのU3も持っていたが。) and Listcamのでの運用を停止しました。お疲れさんです。特にVAIO UXは2006年初夏に買った限定SSDモデルなのに、ソニータイマーも発動すること無く働いてくれました。バッテリー以外はまだ大丈夫なのでLinuxいれてこき使ったり、遠出の端末としては使用は出来るでしょうけど。使い手が老眼来てる為、あの超高精細画面はもう厳しい。AndroidタブレットやWindows 8タブレットが変わりの役目をしてくれるでしょう。

 で、Arduino Camの方ですが、当サイトに「今日の金魚」を作成しました。こうなると当然予想される事ですが、カレンダー形式のページも作成中です。1日のベストショットはrand関数に任せてしまうので、金魚たちの「こっちのスナップショットにしてくれ」の主張は認めてあげる事ができません。

 Camの問題点は撮影性能と、替りのCamがあまりない事ですかね。一応、予備的にベランダ豆カメラで使うえるように同じ物を追加で購入しておきましたicon_biggrin.gif


水槽カメラ、シールド変更


サンハヤトの基板をぶった切って載せた

 ブレッドボードで仮組みしてた、水槽カメラ&水温アップローダのEther Pro。LinkSpriteのJPEGシリアルカメラ「LS-Y201」と、自作水温センサーのLM61との接続をコネクタにした。CDSは基板上に半田付け。Ether Pro自体はseeed studioで買ってあった、エンクロージャーに貼付け。下敷きにしてるのは今まで水槽カメラ担当だったVAIO U3です。
 なんか小奇麗なケースに入れると良いんだけど。それは今年の課題だな。


シリアルJPEGカメラ Arduino版 テスト運用中


無理やり2.5階建て

 このブログの右ペインの「ぷー水槽」の下の画像がArduinoで送ってる画像。時刻はサーバ側でGDで書き込みしてる。
 ちと配線周りの整理にベランダの気象センサーに使ってたシールドを出してきて、Ethernet Proに載せてみた。LANのコネクタの高さがありすぎて普通じゃ駄目。仕方ないのでコネクタを使って下駄を履かせてみた。
 最初はNTPを使って、9:00~19:00まで水槽画像を10分毎にアップロードなんて考えていた。しかし、NTPで持ってきた時間を、年月日に分解するのが面倒でやめた。代わりにCDSを積んで、明るい時にアップロードするようにしてみた。これはこれでアリだなと。水槽の水温センサーもこっちに移し替えた。電気伝導度は結局水温のと反比例した部分しか取れないので一旦中止。
 しばらく、これで運用して、問題がなければシールドを蛇の目のに置き換えて、接続端子を固定します。ヘッダーピン1本でブレッドボードに指してるとどうもグラグラして不安です。それまでできたらvaio U3の水槽カメラは退役させます。


新電力測定基板 なんとか完成


とりあえず表示はされるものの・・・

やっと完成して取り付け

 昨日も午後、ハード工作をしていたのですが、本日も午後から。ある程度完成したのでソフトウエアを焼いて、いざXBeeで通信ってトコでハマった。どうにも呼び出しに応答してくれない。XBeeからATmega328に届いていない感じ。単純シリアル通信してLCDに表示するソフトを焼き直して、PCから文字を送っても化ける。そのATmegaを秋月duinoにさしても同じ。なんとなく内部クロック8MHzが問題かなと思いつつ、いろいろやってみても駄目。やっぱ外部に16MHzのセラロックを付けようと、無理やり半田付けして、ブートローダも書き換えて、ソフトも焼き直して、XBeeでテスト。無事に応答が帰って来ました。

 上手く行ったので、ついでにLM35DZなんぞも基板のすみに取り付けて、LCDに温度表示。温度をXBeeのデータに載せるのは、また後日。

 で、分電盤に貼りつけるようにプラケースの蓋にインシュロックで羽交い絞めにして、面ファスナーを貼って。分電盤に取り付けて完了です。

 次は、シリアルJPEGカメラと大容量データのhttp postですな。mbedでやるかArduinoでやるか。


新電力測定基板 設計変更


電力計測基板 実体配線図

 手持ちの部品をチェックしていた所、キャラクタLCDが5V系のSD1602HU系しか無かった。他のストック部品歯ストロベリーリナックスで売ってるi2c接続の液晶が3.3VでOKだったけど、バックライト無しの古いやつだった。うちの分電盤のトコは暗いのでバックライトは要るので却下。バックライト有り版をわざわざ買う程でも無いなと。ま、i2c接続だと配線が4本になるので楽ではありますが。

 なので、発注中のXBeeが載っかるC基板ではなく、普通の秋月のC基板で作成する事にした。XBeeの5V→3.3Vの電圧変換は、MTM07で買ってきたエキサードラボのXBee変換基板を使用。マイコンのATmega328は5V駆動の8MHz内蔵クロックとした。電源はサンハヤトのminiUSB基板を使って5Vをゲットする。なんか安定化回路入れといたほうが良いのだろうか?今月中に完成できると良いな。

 実はシリアルJPEGカメラ基板を買い付けたので、それをmbedに接続する予定もあるのです。水槽カメラを置き換えます。今はVAIO U3にWebカメラをつけてサーバに上げてるけど、VAIO U3もいつまで持つかわからんし、毎月Windows Updateするのも面倒になってきたのでね。画像にタイムスタンプを入れる部分は、mbedで出来ればやるし、重荷ならアップロード時にWebサーバ側でCGIでやれば良いかなと。パソコンでやらせてることをマイコンにやらせるのはなんか面白いもんですし。携帯電話のモジュールをマイコンから安く使える時代がきたら、さらに色々出来るようになるでしょうけど。

まぁ、そんな感じです。


新春お買い物で電力計測ステーション作り替え予定


 スイッチサイエンスとマルツに部材を幾つか発注してある。マルツは明日、スイッチサイエンスは明後日届くだろう。
で、まずやることは、分電盤の電力センサーを1枚基板に置き換えます。今はArduino UNO+XBeeSheild+LCDSheildの3段重ねです。昨年スイッチサイエンスで「XBeeの載るC基板」ってのを売りだしたので、三段重ねをこの基板1枚にまとめようと思っております。電源を今のまま5Vで行くか3.3Vにするかは要検討。どのみち商用電源からUSBアダプタで5V取るからXBeeとのやり取りをレギュレータと分圧抵抗で凌ぐ感じですかね。ただ、全体を3.3V駆動にすれば、AVRの10ビットADCの1ビットの単位が小さくなるから、細かい値が出せますけど。どっちにしようかなぁ。

電力計測基板想定図

 Fritzing(eagleと並ぶ神アプリ)でいじっていましたが、おおざっぱに構想するとこんな感じですかね(LCDまわりや電源まわりは配線省いてますが)。サンハヤトのminiUSBコネクタ基板が結構でかくて困る。電気工事士の免許がとれたら、分電盤から電気が取れるのでもう少し違ったやり方も出来るのだが。電気工事士は春夏試験を目指してみます。
 んで、ソフトウエア的にはあまりいじる気はないのですが、ロングスパンの移動平均値もLCDに表示させようかな。また、MTM07で買ってきた音声合成LSIもつないで「電気の使いすぎです」と警告を喋らせるとか。基板に余地が無いので、そういうのは別途各センサーと通信する集中コントロール基板でやらせよう。
さらに今年のクリスマスリースはXbee載せて面白いことをさせようかな。とか夢が広がるな。


  • ぷー水槽

  • スナック753

  • 本日の電力使用量@おうち

    Now loading Hnybear's power consumption graph
  • Twitter: hnybear

  • 月間アーカイブ

  • Copyright © 1996-2010 kumachan.com. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress