センサー一覧

AIスピーカーと家電の連携ネタ

 Google Home MiniやAmazon Echo Dotでのホームオートメーション。既製品は結構高価な上、値下がりしてたものも高騰してる感じ。じゃあ自分で作るかと。
 うちの寝室はエアコンとシーリングライトが赤外線リモコン対応。シーリングライトのリモコンは点灯ボタンと消灯ボタンが独立してるタイプ。以前ラズベリーパイのi2sDAC音楽プレイヤーを作った時に、ミニコンポを操作出来るように赤外線リモコンを作っていたからこれの応用で行けるだろうと。部品点数も少ないから、ブレッドボード、できればハンダゴテ握りたいかな。あ、照明リモコンはオンオフが共通ボタンタイプだったとしても、照度センサー付けとけば、今点いてるか消えてるかは判断できるなぁ。このあたりが自作だと出来合いの赤外線リモコンより柔軟性はある。ソフト的にはRESTでオンオフできるインターフェイスを宅内LANに公開しときゃ良いのかな?
 ちっとぐぐったらRaspbery Piなんざ使うまでもなくESP-WROOM-32でやってる例があった。ESP32は2つくらい持ってるからこっちのほうが良さそう。単独でADC使えるし。


雨センサー復帰

 入院中にあったマンションの外壁塗装の所為で取り外して部屋の中に回収してあったXBee雨センサー。電池電圧(単2が二本)も2V切るか切らないかくらいまで落ちてきてたのでメンテナンス。ケースを外して、電池交換。雨が当たるプリント基板部分も取れてたのでビニールテープ等で付け直す。親機との通信が確認できたところでベランダの雨があたる位置へ付け直した。週末の雨で動作確認。


hems基板とりあえず完成

(以下は 2016/10/10の月曜のことですが・・・)

PCA9956BのRGBバーグラフを入れてまずはブレッドボードでテスト。

20161012_01

普通に動作したので、Adafruitのブレッドボードタイプ基板Perma-Protに載せ替えた。

20161012_02

通常のブレッドボードと違ってPerma-Protはセンターの部分が1ピン分短いのだった。左右も63ピンではなく60ピンだけども。

ブレッドボードからブレッドボードタイプの基板への移植なので作業は超楽ちんでした。

次はこいつのケースを3Dプリントするか、プラバンで作るかだな。あと、PCA9956BのRGBバーは少し光り方を変更する予定。今は8個使って250w単位だけど、100w単位にして色で表現したい。0-800は緑系で、801-1600は黄色系で、1601-2400はオレンジ系で、それより上は赤で。うーんやはりBlueのLEDの出番がない(笑)。


HEMS関連ネットへのアップロードもなんとか

 mbedのネット関連のクラスが昔とだいぶ変わってしまっていてコードの修正に時間がかかってしまった。HTTPClientのメンバー関数は減ってるし、TinyHTTP_bはコンパイルできない。
 とりあえずNTPでRTCの時刻をあわせて、ネットにRESTで投稿までできたので先が見えてきた。
 次はブレッドボードから固定基板に移します。温度センサーもつけようかね。
 楽できるように昨夜Adafruitにロングのブレッドボードパターンの基板とか、英字も表示できるLEDとかいくつか発注しておいた。時差があるので、向こうは金曜の朝だったから、即発送されてます。


7セグLEDを導入

20160819_01

 スマートメータのBルート受信機に7セグのLEDを付けました。
 HK16K33をドライバにしたI2C接続のAdafruitのやつ。AdafruitはArduinoとRaspberry piのライブラリしか公開していないので、
mbedのサイトから「HK16K33」で引っかかったコードを導入。LEDのパターンが手持ちのやつとは違ってたり、手持ちのは「:」が3桁目になってる5桁表示だったりで、元のコードを書き換えつつ無事に表示できるようになった。

 次はネットに接続ですね。

 そうそう、今まで使ってた(まだ外してないけど)クランプ式のSanguinoベースの自作の電力計。スマートメータの値とそれほどズレがないのはびっくりした。


BP35A1奮闘続々編

 Arduino Dueのハードシリアルで試してみました。化けました。
デバッグ用の出力が9600bpsで遅すぎて他の処理の足引っ張ってる?
115200bpsに変えたら動作するようになった。でも、たまにBP35A1から化け文字もらって死亡。

 今、BP35A1を9600bpsかつ文字間ウエイトをいれてますが、いっそ取っ払って文字間ウエイト無しの115200bpsで再度mbedでやってみようと思いやってみた。

 すこぶる健康に動いている。返信文が化けて帰ってきて止まってしまうことはあるが行けそうな感じ。なので、やっぱmbed1768でもう少し頑張ります。

 その後、然るべきところにTimerクラスでタイムアウトのロジックを入れたら、近場のイングレスの焼かれたポータルを小1時間修復して帰って来ても無事な模様。このまま明朝の出勤時まで無事だったら、LCD表示やらサーバへのRESTでのデータ送信やらの周辺のコードを追加していきます。