スクリプトプログラマブルコントローラのローカル機能がほぼ完成し、リモート関連機能の実装を開始します。
リモート システムの全体的なアーキテクチャは次のとおりです:
ESP8266のSDKを使用してTCPサーバーとTCPクライアントを実装します。
TCP サーバーに基づいて http プロトコル解析コードを作成し、シンプルな http サーバーを設計し、組み込み Web ページのダウンロードを含むブラウザーとのデータ対話を処理し、ajax テクノロジを使用して状態を取得してデータを保存します。
HTML、JS、CSSを使用してWebページをデザインし、ESP8266モジュールのフラッシュにダウンロードして保存します。バックエンドのC言語のデータ処理と組み合わせて、Webベースのスクリプトプログラミング、ステータスチェックを実現します。 、パラメータ設定およびその他の機能。
クラウド サーバー側では、Linux クラウド サーバー ホストを購入し、TCP/IP 通信ゲートウェイとして swoole を選択しました。
Swoole は実稼働環境用の PHP 非同期ネットワーク通信エンジンで、PHP 開発者が高性能の非同期同時 TCP、UDP、Unix Socket、HTTP、WebSocket サービスを作成できるようにします。
Swoole フレームワークで tcp サーバーと websocket サーバーを実装します。このフレームワークでは、tcp サーバーを使用してコントローラーとクラウドを接続します。コントローラーの tcp クライアントは、クラウド サーバーの tcp サーバーとの長い TCP 接続を確立します。これにより、インターネットからのデータがTCP 接続を介してリモートからコントローラーに送信して、コントローラーのリモート制御を実現できます。
リモートWebページはWebSocketクライアントを使用してSwooleのWebSocketサーバーとの長い接続を確立し、クラウドサーバーとWebページ間のリモート侵入を実現し、コントローラーのステータスを実際のWebページにプッシュできます表示時間。
WebSocket サーバーと TCP サーバー間のデータはメモリを介して共有され、PC ツール、Web ページ、およびコントローラーはすべて一意の番号を持ち、PC ホスト、コントローラー、Web ページ間のデータ メッセージはこの番号をソースとして使用し、宛先アドレスを指定し、tcp サーバーと websocket サーバーはデータ メッセージを受信後、宛先アドレスに従って転送し、PC 上でのデータ送信を実現します。データ メッセージを受信した後、TCP サーバーと WebSocket サーバーは宛先アドレスに従ってデータ メッセージを転送し、PC ツール、Web ページ、コントローラー間のデータの相互接続を実現します。
メモリ データベースとして redis を使用すると、コントローラのステータス データをデータベースに一時的に保存して、異常な電話アラームなどの機能を実現できます。一方、mysql は一部の構成データを保存する永続的なデータベースとして使用されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3