感染症対策のためのIoT技術について書いています。今回はWebRTC(Web Real-Time Communication)を利用したリモート関連システムについてです。リモート関連システムとは具体的にはリモート会議(オンラインミーティング)システムやリモート監視システム、リモート制御システム等です。
これらのリモート関連のシステム構築において、WebRTCの技術が有効であると考えたのでそのあたりについて書きます。
WebRTC(Web Real-Time Communication)とは
WebRTC(Web Real-Time Communication ここからはWebRTCと表記します。)とは、Webブラウザでリアルタイムの音声とビデオを使ったコミュニケーションができるようになる仕組みです。特定のソフトウェアを必要とすることなく、Webブラウザのみで利用出来ます。
Webブラウザといってもいろいろありますが、最近では比較的幅広いWebブラウザ(Chrome、FireFox、Edge等)がWebRTCに対応しています。
対応ブラウザ詳細については例えば以下を参照して下さい。
https://caniuse.com/?search=WebRTC
図中のキーワードについて簡単に書きます。
Peer –> WebRTCでの通信端末(通信単位)で、端末同士の対等な立場での通信(P2P通信または、Peer to Peer通信 ここからはP2Pと表記します。)が可能です。
シグナリングとシグナリングサーバー –> シグナリングとはP2Pのために必要な一連の事前処理のことで、シグナリングサーバーはそのシグナリングを担当するサーバーのことです。
(感染症対策のための)WebRTC利用のメリット
WebRTCを利用する場合のメリットは何といっても、上の図の赤い矢印の部分(つまりP2P)です。利用者はシグナリング等を意識することなく(実際は離れているけど)直接相手と対等にリアルにコミュニケーションが取れていると感じる点です。これが各種リモート関連の作業において有効でありかつ感染症対策にもなるということです。
それでも、バックグラウンドでシグナリングサーバーが必要なので、この構築が大変ではとなりますが、私自身も利用しているSkyWayなども利用出来ます。そうすれば比較的簡単にWebRTCのシステムが構築出来ます。
ということで、ここからが本題とも言えるWebRTCを利用したリモート関連システムについてです。
リモート会議(オンラインミーティング)システム
自宅等でのテレワークが始まり、会議はもっぱらリモートでという方も増えたと思います。もちろん私自身もその機会が増えました。
そこで利用されるシステムは、zoom、skype、slack等でしょうか。もちろん、これらも大変便利なのですが、ユーザ登録からの各種手続き、豊富な機能の中で必要なものを使いこなす、あるいはセキュリティーなどうまくいかない部分もあるかと思います。
もし、独自の簡単なリモート会議システムがあればこれらの問題も解決可能ではということで、WebRTCが利用出来ます。
私自身も以下でお知らせしましたが、独自の簡単なリモート会議システムを用意しました。ワンタイムのURL、パスワードで利用するようにしています。1対1だけではなくグループミーティングも可能です。
リモート打ち合わせ用のWebシステムを構築しました
リモート監視システム
ここではIoT技術としてリモートでの機器関連の監視をテーマにします。正常に何かの機器が稼働しているかどうかという意味での監視です。この場合もWebRTCでのリアルタイムコミュニケーションが利用出来ます。
その際にはパソコンより小型なRaspberry Pi等のシングルボードコンピュータの利用も有効な場合があります。PCで利用出来る多くのWebカメラがそのまま利用出来ますが、PCよりも比較的低価格で小型なので監視システム専用のコンピュータとして利用することも出来ます。
以下、情報としては古くなっている部分もありますが、Raspberry PiでWebRTC(SkyWay)が使えました。
SkyWayの利用(その4)Raspberry Piでの利用
リモート制御システム
次はリモートで監視するだけではなくて、必要な場合はリモートで(機器の)制御をするシステムについてです。この場合は、WebRTCだけではなく、WebSocketやMQTTといった別のネットワーク技術との組み合わせになります。
やはり以前の記事で情報としては古くなっている部分もありますが、以下では遠隔操作(リモート制御)について書きました。
SkyWayでRaspberry Piの遠隔操作(その1)MQTT over WebSocket
SkyWayでRaspberry Piの遠隔操作(その2)SkyWayからの操作
より幅広いIoTとしてのシステム構築(ソリューション)を考える
最後にWebRTCからよりより幅広いIoTとしてのシステム構築を考えます。IoTは幅広い分野の技術の連携で成り立っています。今回のリモート関連のシステムでWebRTCと連携すると考えられるテーマについてです。
以下、実際に開発を行ったり、このサイトで取り上げたりしたテーマについて簡単にですが整理してみます。
Web系システム
リモート会議を考えます。リモート会議システムの項で書いたようにWebRTCで比較的簡単にリモート会議は実現出来ますが、利用者や会議の時間等を管理するのであれば、バックグラウンドにそれらの管理システムが必要となります。
その場合、Webシステムのフレームワークやデータベースと連携して管理システムを構築します。そのシステムと連携してWebRTCの技術を利用します。
センサー連携技術
リモート監視をより自動化するためには異常を知らせるためのセンサーとインターネット(クラウド)の連携が有効です。今までいろいろと書いてきましたが、Raspberry PiやArduino等が利用出来ます。
画像処理
リモートで映像を実際に目で見て内容を理解している人が確認すれば異常があるかないかは分かることですが、画像処理で正常か異常か判断出来ればより自動化が進みます。もちろんAIも利用すればより高度な処理が可能になります。
今回はここまでです。また書きたいと思います。