Safie Engineers’ Blog! Advent Calendar 12月5日を担当します。yokと申します。
Safie の本社には、「テックステージ」と呼ぶショールームスペースがあります。 (一般公開しているものではなく、打ち合わせなどでご来社いただいた方へのサービス紹介が主です。)
ここでは、Safie が取り扱うカメラの数々、最新機種 Safie One やそのAI 機能(Store People Detection Pack)、顔認証による入退管理(Safie Entrance2)、POS レジ連携など、さまざまなサービスを体験できるようになっています。 タイミングによっては、検証を兼ねてリリース前の機能が展示されていることもあります。
Webサービスを展示しているため、多数のPCやディスプレイが稼働しています。 その他、市販のTVを8台繋いだ、手作り感のあるディスプレイウォールもあります。
これらのディスプレイをどう管理するか。以前のオフィスはモニターの台数が少なかったこともあり、つけっぱなしでもあまり気にならなかったのですが、これだけの台数になると、使わない時は消す必要があります。
オフィスのショールームに求められる要件としては
- できるだけ手間をかけず、自動的に起動・終了して欲しい
- 土日、祝日など営業していない日は使用しない(節電!)
これらを満たすような電源管理が求められます。 あの手この手を試しましたが、、、最終的に「スマートホーム化」することにしました。
スマートプラグ
コンセントをOn/Off することで、家電を無理矢理IoT 化するもの。自宅ではホットカーペットに愛用してます。
今回は SwitchBot 社の製品を使用しました。
https://www.switchbot.jp/products/switchbot-plug
公式のAPI で簡単にON/OFF 制御ができます。
https://github.com/OpenWonderLabs/SwitchBotAPI
スマートリモコン
インターネット経由で操作できるリモコン。こちらは M5Stack ATOM で自作しました。
TV のリモコン制御で困るのが、ON と OFF に同じリモコンコードが割り当てられているということです。つまり、現在ON なのか、OFF なのかわからないと、間違った制御をしてしまう可能性があります。
ネットの情報を調べて「何回か押す」というハックに辿り着きました。
参考: https://besma9.net/smart-remocon-tv-light/
メーカーや機種によって動作が異なるようで、今回制御したいTV は2回だとうまくいかず、「3回連続でON すると、ON状態でもOFF状態でも、必ず ONになる」ということがわかりました。
全部スマートプラグでもよかったのですが、PCとの相性で、「主電源を落とすとマルチディスプレイの設定が消える」箇所があり、一部リモコンでのON/OFF制御をおこなっています。
3画面のそれぞれに確実に届くよう、IR信号を分配してTV の裏から操作するようにしています。 遠隔操作は Slackbot として実装し、専用のチャンネルで ("IR_ON"、"IR_OFF") といったメッセージを送るとON, OFF できるようにしました。
これらの制御をスクリプト化し、定期実行することで、要件を満たす制御が完成しました。 平日か土日祝かの判定も、スクリプト内で行っています。
ショールームのオープン当初は、出社が早いCEO や、遅くまでいるCFO が、手動でオン・オフしていたということもあって、自動化は課題でした。また、スマートプラグは消費電力が見えることもあって、あらためて節電意識が高まりました。
大画面TV の省電力はやばい。