マイコン一覧

Arduino 1.0対応 ・・・ 未遂

 とりあえず安定稼働をし始めたところの水槽Camから手をつけてみた。

 Ethernet周りとNewSoftSerial→SoftwareSerial周りを手直しして、コンパイルは通る。しかしpachubeにはpostできるがカメラ画像がpost出来ない。カメラで画像はとれている様な感じだ。コマンドも送れている。post先のURLを変えると「そのページは無いよ」のレスポンスは帰ってくる。すったもんだコードを見比べて・・・。

 あ、これかも!という部分を直したらまずはOK。Ethernetのclientのprintしてる部分をwriteに変えただけ。そういえばbyteを送るにはprintだと文字に変換して送っちゃうからwriteにするようにとSerialライブラリの変更点で読んだ記憶が・・・。Ethernetも同じだったか。画像をpostする部分は「Content-Transfer-Encoding: binary」なのでモロに引っかかったです。
 でも、まだまだ不安定な動きをしているので他も手に入れないとなぁ。しばらくCamはArduino alpha22に戻しておこう。


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の水槽カメラは退役させます。


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

Ethernet Proと Arduino Ethernet

 本日はArduinoでのシリアルJPEGカメラのテスト。ってか、昨晩PCのProcessingでカメラデータの受信をやっていたのだけど、バケバケで受信出来ない。別のシリアルコンソールだと問題ないのにね。WindowsのProcessingは以前からこのシリアル周りが微妙だなと思っている。
 で、本日はarms22さんとこの記事を参考にして順次テスト。素材は画像奥のEthernet Pro。手前のArduino Ethernetは今日届きました。違いはmicroSDリーダーの有無だけ。
 まずはファイルアップロードのテスト。arms22さんとこにtwitpicにアップする例があるので、コピーして手直しして自分のサーバに合わせる。うちのさくらのサーバは共用サーバなのでhttp headerにHOST: kumachan.comを入れる必要がありました。
 続いてカメラ単体テスト・・・は昨晩通信は出来てそうだったので、ファイルアップロードのソフトに昨晩のソフトを組み込む。特に問題もなく完成。動作はやっぱContent-Lengthが肝だな。ちびっとでも実際のアップしたファイルデータとサイズが違うと、サーバ側が無かったことにする。ま、OK。
 明日は、内部時計を持っていないArduinoで定期的に画像をアップロードする様にしていきます。NTPで時間とるのとtimeライブラリでなんとかなるかな?サーバ側のアルバム形式画像表示などはさらに先です。まずは定期アップロードを安定させて、vaio Uを退役させてからです。
 なぜmbedでなくArduinoなの?って安定したらmbedに移植しますよ。いや、単にArduinoでもLANしたかったのと、Arduino EthernetはPoEも使えるからかな。自分だとXBeeモジュールがたくさんあるので、どこかで集中してLANとのゲートウェイすればいいので(今もそうしてる)、特にLAN付きにはこだわらないのだけども。


JPEGシリアルカメラテスト

 仕事を終えて家に帰ってきたら、ツレが腰痛で寝込んでいた。ベランダのバラの鉢を移動していたらグキッと。冷たい風の中をご所望の湿布薬とコーラを買い出しに行って、晩御飯は出前にした。そんな、寒い夜。

まぁ、つなげただけ。

 LinkSpriteのJPEGシリアルカメラを試しました。mbedにて。転送はやはり時間がかかります。640×480だと38400bpsで30秒くらいか。
ケーブルはseeedstudioで買っておいたGroveの4線コネクタケーブルがピタっと色までバッチグーでハマったので利用しました。5ピン目はビデオ出力なので4線コネクタケーブルでOK。※追記。Groveのケーブルじゃない気がしてきた。あの1セット以外に手持ちが見当たらない。

お試し撮影画像 640x480

 撮影サイズは320x240でもいいかなと思ってます。それくらいならメモリに載るかもしれんし、転送も速い。メモリと言えば1Mbit(=128Kbyteくらいか)のi2c接続のEEPROMを秋月で買っておくべきだったか。mbed内蔵の2Mbyteのflashを使ってもいいですけど、書き換え回数がw。実稼動では☆ボードオレンジに付いているmicroSD使うのが御の字ですね。
 次の実験ははtcpのソケット通信。なんとなくわかってきたので、Content-Lengthの計算さえ間違えなきゃ行けるような気がしている。