工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial Internet of Things >> モノのインターネットテクノロジー

リソースに制約のあるマイクロコントローラー向けの効率的なWebサーバーテクノロジー

少し前に、「Webサーバーの埋め込みの新しい見方」というタイトルの記事を公開しました。ここでは、従来のGETコマンドとPOSTコマンドでHTTPの代わりにWebSocketを使用することを提案しました。あるコメント提供者は、この記事が小さなマイクロコントローラーベースの組み込みシステムの幅広いカテゴリーに適していないことを批判しました。

WebSocketプロトコルを正しく使用すると、従来のWebサーバーよりも少ないリソースを使用します。実際、組み込みWebサーバーを有効にするTLSを計画している場合は、WebSocketが唯一の実行可能なオプションであると考えています。デバイスに組み込みのWebサーバーを既に使用している場合でも、リソースに制約のあるデバイスの標準WebサーバーでTLSを有効にすると、通常は災害が発生します。 TLSが標準のWebサーバーテクノロジでこのような問題を引き起こす理由を理解するには、チュートリアル「Webサーバーをデバイスに埋め込まない場合」を参照してください。

マイクロコントローラー用の最新のWebアプリケーションリファレンスデザイン

最近、EmbeddedHTTPとWebSocketサーバーをGitHubにコミットしました。 Minnowサーバーと呼ばれる組み込みHTTPおよびWebSocketサーバーは、リソースが限られている小さなマイクロコントローラー向けに特別に設計されています。

さらに重要なことに、デバイス管理用の最新のリアルタイムWebユーザーインターフェイスを構築する方法を示す参照例も含まれています。 Webアプリケーションは、デバイス管理にWebSocketプロトコルのみを使用するいわゆるシングルページアプリケーション(SPA)です。 HTTPプロトコルは、SPAのロードにのみ使用されます。つまり、HTTPは、デバイスからオンデマンドでアプリケーションをロードするときに、ブラウザによって最初に使用されます。

参照例には、LEDとサーモスタットゲージのリアルタイム更新が含まれており、WebSocketを介してファームウェアをアップロードする方法を示しています。完全なSPAには、41Kバイトのフラッシュメモリストレージスペースしか必要ありません。また、WebSocketサーバーは通信に必要なRAMがほとんどありません。

次のスクリーンショットは、SPAファームウェアのアップロードページを示しています。このページは、新しいWebSocketプロトコルを活用する方法を示すいくつかのサンプルページの1つです。ファームウェアのアップロードページには、ドラッグアンドドロップのJavaScriptアップロードロジックを作成する方法と、アップロードされたファイルをWebSocket接続を介してサーバーに送信する方法が示されています。 WebSocket接続を介して送信されるすべてのメッセージは、バイナリデータとして送信されるアップロードを除いて、JSONテキストメッセージとして送信されます。最新のJavaScriptはバイナリデータを簡単に管理でき、WebSocketプロトコルはバイナリフレームとテキストフレームの両方をサポートします。

Minnowサーバーの使用を開始する

GitHubにアクセスし、Minnowサーバーをダウンロードして、独自のマイクロコントローラー設計用に独自のSPAの作成を開始します。参照例は、独自の組み込みデバイス管理アプリケーションで簡単に再利用できるように設計されています。このアプリケーションのCSSおよびHTML5ビルディングブロックは、再利用できるように設計されています。さらに、この例に含まれているWebSocket通信JavaScriptライブラリは、汎用的に設計されており、他のアプリケーションで簡単に再利用できます。

注:

Minnowサーバーは小型のマイクロコントローラー向けに設計されていますが、参照例は主に教育目的で設計されているため、すぐに使用できるビルド環境をWindowsとLinuxに限定しています。アプリケーションを組み込みシステムに移植することもできますが、参照例の設計アイデアを使用する方が理にかなっています。もちろん、一般的なパーツを「そのまま」使用することもできます。

Minnowサーバーは複数の接続を管理するように設定できますが、参照例は一度に1つの接続を管理するように設定されています。別のブラウザウィンドウが唯一のWebSocket接続を使用しているときに、新しいブラウザウィンドウに接続しようとすると、機能しません。

必要なHTML / CSS / JavaScriptの経験が不足している場合は、フロントエンドのWeb開発者とチームを組むことを検討してください。 SPAの作成方法を考える最良の方法は、開発プロセスを、TCPを使用してデバイスと通信するように設計されたデスクトップアプリケーションまたは電話アプリケーションの作成と比較することです。通常、さまざまな開発者がデスクトップアプリとデバイスのファームウェアを担当しており、これはSPAを設計するための最良の方法でもあります。ファームウェアとフロントエンドの開発者は、ブラウザとサーバー間の通信APIについて合意する必要があり、その逆も同様です。つまり、WebSocket接続を介して送信されるメッセージの種類を指定する必要があります。


ウィルフレッドニルセン 、Real Time Logicの創設者兼CTOは、組み込みソフトウェアの設計に28年の経験があります。彼は、接続された組み込みシステムのビジョンを活用して、Barracuda Application Serverを設計し、組み込みマイクロプロセッサの小さなフットプリントでリアルタイムのニーズに合わせて調整しました。


モノのインターネットテクノロジー

  1. RFウェアラブルアプリ用の通気性のあるE-テキスタイル
  2. 2021年の製造業の動向
  3. 自動車用マイクロコントローラ用のSTサンプリング組み込み相変化メモリ
  4. 健康保険会社がIoTを採用するための3つのステップ
  5. 職場はウェアラブルに最適です
  6. LoRaWANは、IoT用の5Gネットワ​​ークを一時的に置き換えます
  7. SQLテクノロジー;理由のベンチマーク
  8. 技術的破壊を目的とした5つの産業
  9. 資産管理にIoTテクノロジーを使用する3つの理由
  10. エネルギーセクター向けのIoTテクノロジー:重要な変革
  11. エネルギー消費モニタリングのためのIIoTテクノロジーの使用