「接続された製品の調理」

更新日: 9 年 2023 月 XNUMX 日

「接続された製品の調理」

「接続された製品の調理」

接続されたデバイスをポートフォリオに追加するのは難しい場合があります。 Jonathan Pallantは、「完璧な材料」の選び方を検討しています。

 

接続されたデバイスは、センサーデータを単独で収集するか、既存の機器とインターフェイスするかに関係なく、組み込みシステムスペクトルのより複雑な端に位置する傾向があります。

それらの複雑さは、XNUMXつの構成要素間の相互作用から生じます。ローカル部分。データを生成するか、何らかの制御が必要です。 データを記録および/または指示を提供するfarシステム。 そして、それらの間の接続は、通常、長距離で動作し、信頼できないサードパーティによって観察可能(および中断可能)であることがよくあります。

ただし、これらの複雑さは、顧客エンゲージメントの改善、詳細なビジネスインサイト、さらには実現可能なまったく新しい商用モデルによっても克服されることがよくあります。

複雑さと機能の微妙なバランスは、適切な種類の接続されたデバイスを構築することは、多くの場合、芸術、科学の一部であることを意味します。 実際、それは素晴らしい食事を作るのとよく似ています。重要な食材と料理を組み合わせる方法は事実上無数にあります。 組み立てが非常に速いものもあれば、完成までに時間と労力がかかるものもありますが、誰かの好みにより適している場合があります。

XNUMXつのアプローチは、IoT開発プロセスをいくつかの特定の、しかし基本的に接続された選択肢に分割することです。 ただし、どの決定を最初に行うかを決めるのは必ずしも簡単ではありません。また、早期の決定によって後の選択が制限され、システム全体が最適ではなくなるリスクが常にあります。

完璧なIoTの「ごちそう」を計画する際に考慮すべきXNUMXつの異なる領域に、これらの選択肢を文字通りグループ化しました。

接続性は、他の製品がぶら下がっている基本的なコンポーネントであるため、おそらく開始するのに最適な場所です。 あなたがそうするなら、メインコース。

コネクティビティコース

主要な接続性 テクノロジー 製品の要件は、コスト、消費電力、範囲、データレート、および遅延によって定義されます。 しかし、それらは最終的には物理学と経済学の法則によって結び付けられています。 そして、今日のテクノロジーはすべて、この多次元空間内の独自のスイートスポットに存在します。

ほとんどのシステムはおそらくインターネットにアクセスするために無線接続を必要としますが、残念ながら通常は有線接続を使用するよりも信頼性が低く、コストも高くなります。ほぼすべての無線規格には、少なくとも 2 つのクラスのデバイスが含まれます。1 つは小型で低電力のコンポーネント (携帯電話など)、もう 1 つは大型で高電力のゲートウェイ (携帯電話など) です。 Wi-Fi ルーター)。また、たとえば住宅所有者の Wi-Fi ルーターとモバイル ネットワークへのアクセスを比較して、これらのゲートウェイの所有権と信頼性を考慮する必要もあります。

どちらの方法でも、最初から何かを開発するよりも、市場で広く受け入れられている既存の接続標準に依存する方がほとんどの場合に適しています。

チップセットコース

最初に決定するのは、プロセッサ、メモリ、無線を統合するチップセットを選択するか、それともいくつかの要素を組み合わせてパフォーマンス、価格、消費電力を適切に組み合わせるかどうかです。

LTE-MまたはNB-IoTのいずれかを使用した低電力のセルラー接続が必要な場合、Nordic nRF9160のようなデバイスは、CPU、RAM、フラッシュ、GPS、およびモデムの魅力的なパッケージです。 しかし、あなたが余裕があれば PCB スペース、あなたは「標準」の柔軟性を好むかもしれません マイクロコントローラ および別のLTE モジュール。 同様の話が Wi-Fi や Bluetooth などの無線規格にも当てはまります。無線を内蔵したマイクロコントローラーやスタンドアロン モデム モジュールが利用可能です。

もちろん、IoTデバイスは基本的なマイクロコントローラーで実行されるだけではありません。 電力消費、スペース、およびソフトウェアサポートの負担にノックオン効果があったとしても、完全なLinuxカーネルベースのシステムのパワーと技術的能力が正しい選択であった例はたくさんあります。

コアコース

この段階では、次のような既存のソフトウェア(基本的に「サードパーティIP」)を導入します。オペレーティングシステム(またはリアルタイムオペレーティングシステム)カーネル。 チップセットドライバ。 また、特定のPCB設計に合わせてこれらのドライバーをカスタマイズするボードサポートパッケージ(BSP)。

チップセットベンダーは、多くの場合、これらすべてを含む無料のソフトウェア開発キット(SDK)を提供しています。 ただし、このSDKは他の人のシリコンでは機能しない可能性があり、将来的にサプライヤーを変更する能力が制限される可能性があることを覚えておく価値があります。 それが重要な場合は、AmazonFreeRTOSやMicrosoftのThreadXなどのベンダーに依存しない製品を検討してください。

Linuxベースのシステムにも同様のオプションがあります。多くの場合、無料の「配布」を使用して開始できます。 ただし、自分で作成するか、Ubuntu SmartStartやFedoraIoTなどのより一般的な既製のLinuxディストリビューションを使用することをお勧めします。 それはすべて、セキュリティ要件、開発のタイムスケール、および消費電力とストレージスペースに関するシステムの制限によって異なります。

コードコース

もちろん、組み込みLinuxをデバイスにインストールしたり、RTOSにフラッシュしたりして、XNUMX日で呼び出すことはできません。 あなたは「秘密のソース」を追加する必要があります

このシステムをニーズに合わせてカスタマイズするコードを記述します。 これは、センサーの読み取り値をアップロードするためのエンドポイントとキーを指定するのと同じくらい簡単な場合もあれば、複数の特注プロトコルスタックと高度なAI処理をエッジで実行するのと同じくらい複雑な場合もあります。 いずれにせよ、使用する言語とツールは、継続的なサポートとメンテナンスだけでなく、事前の開発プログラムにも大きな影響を与えます。

Cプログラミング言語は40年近くデフォルトになっていますが、RustやMicroPythonのようなメモリセーフなシステム言語を試すことには価値があるかもしれません。 ただし、チップセットまたはコアがここで希望する選択を処理できない場合は、戻って考え直す必要があるかもしれません。

クラウドコース

ほとんどの接続デバイスの開発には、後で分析するためのデータの収集と、「フィールド内」のデバイスを制御するためのコマンドの発行が含まれます。 オンプレミスシステムを使用するのではなく、このコンピューティング要件を、大規模な「クラウド」プロバイダーから利用可能な構築済みのIoT管理およびデータストレージ製品のXNUMXつにオフロードすることはほぼ普遍的に理にかなっています。

ただし、どちらのクラウドプラットフォームを選択する場合でも、統合の初期コストと継続的なサポートおよびメンテナンスのバランスをとる必要があります。 また、フィールドでの製品のライフタイム全体にわたって、クラウド、チップセット、および接続プロバイダーからのサポートが必要になることを忘れないでください。

そして最後に…コミュニケーションコース

コードがクラウドプロバイダーとの通信に使用するデフォルトの通信プロトコルは、通常、暗号化されたコネクション型HTTPリンク上で実行されるテキストベース(JSONやXMLなど)です。

この種のスタックはユビキタスですが(最新のWebサイトの構築方法です)、プレーンテキストの性質により、接続とチップセットリソースの両方の帯域幅要件が増加し、コネクション型の性質は、一部の高遅延ワイヤレスサービスとの相互作用が悪くなる可能性があります。 たとえば、NB-IoTを使用して超低電力監視システムを設計している場合は、CoAPのようなバイナリコネクションレスプロトコルを使用した方がよい場合があります。

また、よく使用され、実際にテストされたプロトコルスタック(Coreソフトウェアに付属しているものなど)に依存できることは、自分でスピンしようとするよりもほぼ確実に優れています。

覚えておく価値があります

絶対的なものはほとんどありません テクノロジー お客様の要件を満たすさまざまなソリューションが常に存在します。 何が最も効果的かは、予算、タイムスケール、社内、外部の開発パートナー、またはハードウェア、ソフトウェア、またはネットワーク プロバイダーとの既存の関係を通じて利用できるスキルによって異なります。 しかし、最高の技術ソリューションであっても、価格、仕様、入手可能性の適切な組み合わせが予定通りに市場に投入されなければ、決して勝者にはなりません。