TOPページ / 徒然なるままに

2020/04/19(日)

双方向リアルタイム制御可能なクラウド連携スイッチ


日本でも人口の多い地域で新型コロナウイルスの感染が広がりつつある昨今。感染者減少はまだ見えない感じ。
テレワーク等が進む中、現状リモートでは制御できないものもリモートで制御できたらという需要は今後増えるだろうなと思うわけです。
というわけで、外出自粛ついでに手元にある機材で試作してみました。
物理スイッチの制御はSTM32を中心に構成。リモートが必要なければ単体で制御可能とし、インターネットを通したリモート制御つまりクラウドとの連携が必要な場合はRaspberry Piも利用する形にしてみました。
クラウドとの連携が有効な場合でも物理スイッチ側でリモート制御許可をOFFにしていればクラウド側からは制御できず、クラウド側でリモート制御許可をONからOFFにするとクラウド側ではONには戻せない仕様に。リモート制御許可がOFFな場合でも物理スイッチ側のONとOFFはクラウド側で確認できる仕様。
停電時等、電力が戻った際に設定を停電前の状態に自動で戻すにはSTM32にNVRAM等を接続して都度設定を記録しておく必要があるとは思いますがそこまでは実装せず。
STM32とRaspberry Pi間の通信はシリアル通信に、臨時でSTM32にPC等を繋いで制御できると便利かもと考えるとシリアル通信が使い勝手が良いような気がします。
ただ、1台のRaspberry Piで複数のSTM32を接続する場合はシリアル通信よりもSPI等の方が良いかもしれません。
Raspberry Piとクラウド間、およびクラウドとクライアントPC側ブラウザ間との通信はWebSocketを利用しJSONデータを相互にやり取りする形です。
開発言語がSTM32がC、Raspberry PiがPythonで、クラウドがPHPとJavaScriptという同時に進めていると頭がこんがらがりそうな何ともな感じ。とりあえずの目的は達成できたかと。何かと繋がなければ何の意味もありませんが。
今後、通常時はオフラインで、何かあった時にはオンラインに切り替えができる環境がどの程度のレベルで求められる世界が来るのだろうか。


Blog

CCNA(Cisco Certified Network Associate)取得を目指している取得した取得後有効期限満了したぎりぎり20代30代突入30代30代後半40代突入管理人のブログです。

Recent Entries

Google Maps API

googlemap.jpg
地図 ブログ

 

Twitter

Category

Monthly Archives