2016年3月20日日曜日

AmisをARMボード(dd-wrtルーター)に移植中

連休だけど、なかなか時間がとれない…。

ついにAmisをクロスコンパイルしてARMボードに移植しようと思う。

準備
以前にできたと思っていたOpenWrtのツールチェインではうまく行かなかった。
原因究明する気力もなくなったので、debianのEmdebian-toolを使うことにした。

http://continue-to-challenge.blogspot.jp/2016/01/arm.html

動的リンクができない。なんでかなー。LD_LIBRARY_PATHにLIBを指定してもだめ。
仕方がないので、とりあえずは静的リンクでやってみることにした。

debianにeclipseを入れて開発環境ごと移動した。不本意だが仕方ない。

eclipseでクロスコンパイルかつ静的リンク で生成する方法
忘れそうなので、メモ
(1)プロジェクトの設定で、CrossGCCを選択する
(2)CrossSettingのPrefixに「arm-linux-gnueabi-」を入力する
(3)Cross G++ LinkerのAll optionsに「static」を入力する



いざコンパイル
びっくりするくらいに何も問題なく成功したが、
実行してみると問題発生Orz
 シリアル通信がおかしい。PICマイコン側からErr応答しかされない。

なんでかなー。もう少しだと思ったのに。

その他
 なぜか、水曜日のカンパネラが頭から離れない。洗脳ソングですな。



2016年3月12日土曜日

もう少しでソフトは完成(Amis)

すこし時間がとれたので、しばらくできなかったAmisを少し完成に近づけた。

成果
今日はPICマイコンに接続されたセンサー類の情報をサーバーに保存する部分を作った。
やっていることは単純で、定期的にPICに対してセンサー類の測定値を要求し、
それをサーバーに送付するもの。
サーバー側ではそれをmysqlにぶち込んでおく。

センサー -i2c-> PIC -USB-> linuxPC1 -> http -> linuxPC2 -> mysql

ぶち込んだ結果がこれ、 温度・湿度・照度の順
照度はcdsのad変換値なので、lxではない(^^)まぁ目安として。

このソフトをdd-wrtが入っているルーターに移植すればソフトはほぼ完成!
ハードはどうしようか、また作るものちょっと面倒になってきたしな。
 
 その他
1.foundation(NW.js?)をすこし触り始めた
    linuxでguiソフト作るのが大変そうだから不精したいという後ろ向きな理由Orz
   Javaでもいいんだけど、せっかくなので、ね。

2.久しぶりに椎名林檎を聞いた。いいな。
 

2016年2月28日日曜日

見通しが立った(Amis)

今年に入ってから少しずつ試作進めてきたものが見通しが立ってきた。
他の人が手垢がつくほどやり尽くされているけど、
自分でやってみたかった。

概要
扉センサーや人感センサー、明るさ、温度・湿度センサーを監視して、
異常な場合にはメールで通知するというもの。それだけ。
汎用出力があるので、光や音で知らることもできる。
赤外線出力もつけるので、家に帰る前にエアコンつけたり、
長期不在時に在宅を装うこともできるはず。
一体に何に怯えているんだろうか・・・。
名付けてAmis(エイミス)フランス語で「ともだち」 。ぜんぜん関係ないね。

構成
ArduinoとかRaspberryPiとか使えば簡単なのはわかっている。
だがしかし、あえて、この構成にしたかったのだ。なんとなく。

[センサー類]-I2cなど-[PICマイコン]  -USB(CDC)-[linux(1)]-[linux(2)]

・センサー類
  ディジタル入力×5
  ディジタル出力×3
  明るさセンサー これはCdsの値をPICのADで読む
  温度・湿度センサー(HDC1000というやつ)秋月電子で売っていた I2C接続
http://www.tij.co.jp/product/jp/HDC1000
  赤外線出力

・PICマイコン
  PIC18F2455 余っていたので
  microchipのcdcサンプルを参考にした

・Linux(1)
  最寄りのルーター dd-wrtが入っている。リビングにある。
  これにUSB経由でPICマイコンを接続するもの。
  
・Linux(2)
  メール通知用 mageiaが入っている。
  ONUの近くにある。

進捗
 ・センサー類
   赤外線出力がまだ
   その他は、だいたいOK

 ・PICマイコン 
   ファームはだいたいOK
   基板起こす? 悩み中。

 ・Linux(1)
   PICとの通信プログラムは、開発環境ではOK
   あとはARMに移植できるか・・・!?

 ・Linux(2)
   メール通知するだけなので、ほぼOK
   ssmtpを使用

その他
  花粉がすごい。体がだるい。でも頑張るぞ!