入社半年目で現在perl勉強中です。
ブログに書くネタが無く先輩方に相談してみると、
冷蔵庫の中の卵の数が外出先からわかるものでも作ったら?。。。
とのことだった。
どうやらこの装置が主婦に大人気らしい。。wwww
ということで
入社後すぐに買って以来一度もパソコンに繋げずに置いていた
Arduinoを使って作ってみることにしました。
今回は簡易バージョンということで
Arduinoでボタンを押す=>ネットワーク越しに見れる
というところまでを目標に作ってみました。
流れは次の通り。
まずアルディーノではボタンを認識して
パソコンと通信できるようにしてみました。
ソース
実行結果
processingに最初からシリアル通信できるSerial.printという関数が用意されていたので0or1を送るようにしてみました。
後で処理しやすいようにステートが変わるときのみ
メッセージを送るようにしました。
次に先ほどのメッセージを受け取る必要があったので、
Windowsアプリケーションの作成しました。
簡単にファイル形式でPHPにデータを渡すようにしました。
ソース
CreateFileでComポートを開いてそのまま
PHP側に渡すファイルを出力するようにしてみました。
APACHEではphpを走らせて出力したファイルを読み込むようにしてみました。
ソース
これでいろいろと突っ込みどころはあるけど、
一応アルディーノとWEBの接続が出来たました。
ボタンを押すとWEBからON or OFF が確認できます。
以下検証してみた画像
動画
これで卵の数を遠隔地から確認できるベースが出来ました。
次回はちゃんと冷蔵庫に設置できるようにいろいろ工夫して
使えるものを作ってみたいと思います。
・おまけ
(変なエラーがでました)
作業途中に
stk500_getsync( ): not in sync: resp=0x00
というエラーが出て、スケッチをアップロードできなくなりました。
どうやら不正なプログラムをアップロードすると出るらしいです。
調べてみるとリセットを押しながらUSBを抜いてさらに押しながら
挿入するといいと書いてあったのでやってみるが治りませんでした。
すべてのピンを抜いもう一度上の動作を繰り返してみると治りました。