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

Modbus産業用センサーとオープンソースIIoTゲートウェイとのインターフェース

産業用モノのインターネット(IIoT)アプリケーションは通常、Modbus周辺機器やその他のデバイスを統合するためにエッジゲートウェイを必要としますが、ゲートウェイの実装にはコストと時間がかかる可能性があります。この記事では、導入を大幅に簡素化できるオープンソースのエッジコンピューティングフレームワークと産業用センサーをインターフェースするケーススタディを提供します。

産業用モノのインターネット(IIoT)テクノロジーは急速に成長しています。リモートモニタリングと高度な分析の分野におけるIIoTアプリケーションは、ビジネスに革命をもたらし、模範的なメリットを提供しています。エッジコンピューティングは通常、センサーが接続されているデバイス、またはセンサーに物理的に近いゲートウェイデバイスで直接実行されます。

多数のセンサーをエッジゲートウェイとインターフェースする必要がある産業ユースケースでは、ソリューションアーキテクトと開発者は、エッジゲートウェイのソフトウェア設計と開発、および設計と開発中にさまざまなセンサーからのデータを処理してデータ分析を実行する方法を決定する必要があります。段階。このような状況で、オープンソースフレームワーク、新しいソフトウェア開発、バグ修正がない場合、多くの労力とコストがかかる可能性があります。

この2部構成のシリーズの最初の記事では、ユースケースを備えた産業用センサーについて説明し、エッジゲートウェイ要件の概要と、エッジとして機能するオープンソースのエッジコンピューティングフレームワークであるEdgeXFoundryでエッジゲートウェイ要件を満たす方法について説明します。物理的な感知と作動の「モノ」と情報技術(IT)システムの間のミドルウェア(図1)。


図1.EdgeX Foundry(出典:www.edgexfoundry.org)

この記事では、エッジコンピューティング機能を実現するために産業用センサーをEdgeXとインターフェースするケーススタディを提供します。

このケーススタディの目的は、Raspberry Piゲートウェイ上で実行されているEdgeXFoundryと呼ばれるエッジコンピューティングフレームワークの1つを、産業用の温度および湿度センサーとインターフェースすることによって評価することです。これが高レベルのブロックとデータフロー図です ケーススタディの説明:

クリックしてフルサイズの画像を表示

図2.高レベルのブロック図(出典:www.edgexfoundry.org)

Modbus

Modbusはオープンプロトコルであり、トランスポートは標準です。多くの独自プロトコルとは異なり、特定の物理層を必要としないため、ModbusネットワークはRS-485リンクなどの安価で一般的なインフラストラクチャ上に構築されています。

Modbusは非常にシンプルなデータ表現を実装しており、理解しやすいです。その主な目的は、Modbusマスターデバイスとスレーブデバイス間でデータを移動することです。移動するデータは、レジスタとコイルの2種類のみです。レジスタは、温度、湿度、圧力値などのアナログ値を格納するために使用される16ビットの符号なし整数です。コイルは、Modbusメモリマップにデジタル値を格納するために使用されるシングルビットです。通常、スイッチステータス(ONまたはOFF)、モーター動作ステータス(UPまたはDOWN)、バルブステータス(OPENまたはCLOSE)などのステータス値です。

必要なコードスペースは少なく、多くの場合1K程度でした。 RAMは、データスペースのサイズによって異なります。少量のデータを含む単純な自動化デバイスは、RAMスペースをほとんど使用せずに実装できます。

Modbusは、プログラマー以外の人にも簡単に理解できます。接着剤機械、メーター、測定装置などを構築したエンジニアは、コイル/レジスターの概念とそれらを読み書きするための簡単なコマンドを簡単に理解できました。

多くの場合、複数の機器が同じModbusネットワークに接続されています。すべての計測ネットワークプロトコルをサポートする計測器はありませんが、ほとんどすべてがModbusをサポートしています。 Modbusを選択することで、互換性の問題や将来のアップグレードの問題を回避できる可能性が高くなります。

温度監視

IoT温度監視システムにより、業界は安全なWeb /モバイルベースのプラットフォームで環境パラメーターを追跡し、リアルタイムで即時通知を提供できます。これらの温度センサーデータには、リモートエンドからアクセスできます。

温度センサーから収集されたデータは、統計的洞察を作成するために使用できます。これは、業界が倉庫と冷蔵の信頼性を向上させるのに役立ちます。

多くの産業ユースケースでこのアプリケーションが使用されています:

この種のユースケースでは、温度と湿度の監視アプリケーションが非常に重要です。このアプリケーションには、温度と湿度を監視するためのゲートウェイが必要です。ゲートウェイには、エッジコンピューティングフレームワークが必要です。ここで使用されているModbusセンサー、ゲートウェイ、エッジコンピューティングのフレームワークは、それぞれSHT20産業用温度および湿度センサー、Raspberry Pi4およびEdgeXFoundryです。

Edgexの使用方法

Modbus Slave Simulator(ModbusPal)を使用したModbusデバイスサービスの検証

ModbusPalは、GPLライセンスの下でリリースされた、無料のオープンソースのModbusスレーブシミュレーターです。その目的は、複雑で現実的なModbus環境を再現する機能を備えた使いやすいインターフェースを提供することです。 TCP / IPをネイティブにサポートし、RxTxライブラリがコンピューターにインストールされている場合はシリアル通信をサポートします。

ModbusPalは、最大247のModbusスレーブをシミュレートできます。各スレーブは、保持レジスタとコイルを持つことができます。各レジスタまたはコイルは、「自動化」と呼ばれる動的な値ジェネレータに関連付けることでアニメーション化できます。

パワーメータとしてスレーブデバイスを備えたModbusPalシミュレータを使用したmodbusデバイスサービスの検証は、以下の手順に従って行われます。同様に、温度、湿度、圧力センサーなどのスレーブデバイスを使用して、Modbusでサポートされているあらゆる種類の環境をシミュレートできます。

  1. ModbusPal環境の設定
  2. スレーブデバイスを追加し、それらのアドレス可能、値、および自動化を構成します。
  3. EdgeXでのModbusデバイスプロファイルの投稿
  4. EdgeXでのModbusデバイスの投稿
  5. スレーブデバイス(PUT)へのデータの送信または作動
  6. スレーブデバイスからデータを受信する(GET)。
  7. dockerおよびdocker-composeをインストールできるオペレーティングシステムをインストールします。この例では、Ubuntu 20.04.2 LTSを使用して、Dockerを使用してEdgeXをデプロイします。


図3.ModbusPalシミュレーターの環境のセットアップ

  1. スレーブデバイスを追加し、保持レジスタを構成し、値と名前を入力して、適切な自動化にバインドします。


図4.ModbusPalシミュレーターでのスレーブデバイスの追加と構成(出典:www.edgexfoundry.org)

  1. POSTコマンドを使用してデバイスプロファイルを投稿します。
 curl –X POST http:// 
:48081 / api / v1 / deviceprofile / uploadfile -F file =@   
 


図5.EdgeXでのデバイスプロファイルの投稿

  1. POSTコマンドを使用してデバイスを投稿します。以下のコマンドを使用してファイルとしてアップロードするか、スクリーンショットのコマンドを使用してコンテンツとしてアップロードします。
 curl –X POST http:// 
:48081 / api / v1 / device / uploadfile -F“ file =@  
 


図6.EdgeXでのデバイスの投稿

  1. PUTコマンドを実行してデータを送信します。
 curl –X PUT http:// 
:48082 / api / v1 / device /  / command /  -H“ Content-Type:application / json” –d '{“ ”:“ ”、“ ”:“ ”}'       
 


図7.EdgeXでのPUTコマンドの実行

  1. GETコマンドを実行してデータを受信します。
 curl –X GET http:// 
:48082 / api / v1 / device / name /  / command / Configuration | json_pp  
 

クリックしてフルサイズの画像を表示

図8.EdgeXでのGETコマンドの実行

デバイスプロファイル

デバイスプロファイルは、EdgeXシステム内のデバイスのタイプを表します。デバイスサービスによって管理される各デバイスには、デバイスプロファイルとの関連付けがあり、デバイスプロファイルは、サポートする操作の観点からそのデバイスタイプを定義します。デバイスプロファイルは、デバイスの値と操作方法を定義します。操作方法は、読み取りまたは書き込みが可能です。デバイスプロファイルは、次のタグで構成されています:

  1. 識別: プロファイルには、さまざまな識別フィールドが含まれています。 [名前]フィールドは必須であり、EdgeX展開では一意である必要があります。その他のフィールドはオプションです。デバイスサービスでは使用されませんが、情報提供の目的で入力される場合があります。
  2. DeviceResources: deviceResourceは、個別に、またはdeviceCommandの一部として、デバイスからの読み取りまたは書き込みが可能なデバイス内のセンサー値を指定します。識別用の名前と情報提供用の説明があります
  3. DeviceCommands: DeviceCommandsは、複数の同時デバイスリソースの読み取りと書き込みへのアクセスを定義します。名前付きの各deviceCommandには、読み取りまたは書き込みをそれぞれ説明する、いくつかのgetおよび/またはsetresourceOperationsが含まれている必要があります。
  4. CoreCommands: CoreCommandsは、デバイスの読み取りと書き込みのために、コアコマンドマイクロサービスを介して使用できるコマンドを指定します。 deviceResourcesとdeviceCommandsはどちらもcoreCommandsで表すことができます(coreCommandの名前はdeviceCommandまたはdeviceResourceの名前を指します)。

Modbus温度および湿度センサーのデバイスプロファイル (スクロールして完全なリストを表示)

 名前 : "TemperatureHumiditySensor" メーカ​​ー :「ROBOKITS」モデル : "RKI-4879" ラベル :-"SHT20" 説明 :「工業用グレードの温度および湿度送信機SHT20センサー高精度監視ModbusRS485」 deviceResources  :-名前 : "TemperatureDegC" 説明 :「摂氏での室温。」属性 {primaryTable  : "INPUT_REGISTERS"、startingAddress: "2"、rawType: "INT16"} プロパティ {タイプ : "Float32"、readWrite: "R"、scale: "0.1"、floatEncoding: "eNotation"} 単位 {タイプ : "String"、readWrite: "R"、defaultValue: "摂氏"}-名前 : "HumidityPercentRH" 説明 : "部屋の湿度(%RH)。" 属性 {primaryTable  : "INPUT_REGISTERS"、startingAddress: "3"、rawType: "INT16"} プロパティ {タイプ : "Float32"、readWrite: "R"、scale: "0.1"、floatEncoding: "eNotation"} 単位 {タイプ : "String"、readWrite: "R"、defaultValue: "%RH"}  deviceCommands  :-名前 : "TemperatureDegC" 取得-{インデックス : "1"、操作: "get"、deviceResource: "TemperatureDegC"}-名前 : "HumidityPercentRH" 取得-{インデックス : "2"、操作: "get"、deviceResource: "HumidityPercentRH"}  coreCommands  :-名前 : "TemperatureDegC" 取得パス : "/ api / v1 / device / {deviceId} / TemperatureDegC" 応答 :-コード :「200」説明 :「温度を摂氏で取得」 expectedValues  :["TemperatureDegC"]-コード : "503" 説明 :「サービスを利用できません」 expectedValues  :[]-名前 : "HumidityPercentRH" 取得パス : "/ api / v1 / device / {deviceId} / HumidityPercentRH" 応答 :-コード :「200」説明 :「湿度を%RHで取得」 expectedValues  :["HumidityPercentRH"]-コード : "503" 説明 :「サービスを利用できません」 expectedValues  :[] 

1.1.1.1 GPIOデバイスのデバイスプロファイル– 1(赤色LED) (スクロールして完全なリストを表示)

 名前 : "device-gpio12" メーカ​​ー :「JiangxingIntelligence」モデル :「SP-01」ラベル :-"gpio12" 説明 :「コマンドによってgpio12を自動的にエクスポートする」 deviceResources  :-名前 :「値」説明 :「システムgpio値を設定または取得する」プロパティ {タイプ : "Int8"、readWrite: "RW"、最小: "0"、最大: "1"、defaultValue: "0"} 単位 {タイプ : "String"、readWrite: "R"、defaultValue: "high:1; low:0"}  deviceCommands  :-名前 : "value"  get -{操作 : "get"、deviceResource: "value"} 設定-{操作 : "set"、deviceResource: "value"、parameter: "0"}  coreCommands  :-名前 : "value" 置くパス : "/ api / v1 / device / {deviceId} / value"  parameterNames  :["値"] 応答 :-コード :「200」説明 : ""-コード :「500」説明 :「サービスを利用できません」 expectedValues  :[] 取得パス : "/ api / v1 / device / {deviceId} / value" 応答 :-コード :「200」説明 : ""  expectedValues  :["値"]-コード :「500」説明 :「サービスを利用できません」 expectedValues  :[] 

GPIOデバイスのデバイスプロファイル– 2(青色LED) (スクロールして完全なリストを表示)

 名前 : "device-gpio14" メーカ​​ー :「JiangxingIntelligence」モデル :「SP-01」ラベル :-"gpio14" 説明 :「コマンドによってgpio14を自動的にエクスポートする」 deviceResources  :-名前 :「値」説明 :「システムgpio値を設定または取得する」プロパティ {タイプ : "Int8"、readWrite: "RW"、最小: "0"、最大: "1"、defaultValue: "0"} 単位 {タイプ : "String"、readWrite: "R"、defaultValue: "high:1; low:0"}  deviceCommands  :-名前 : "value"  get -{操作 : "get"、deviceResource: "value"} 設定-{操作 : "set"、deviceResource: "value"、parameter: "0"}  coreCommands  :-名前 : "value" 置くパス : "/ api / v1 / device / {deviceId} / value"  parameterNames  :["値"] 応答 :-コード :「200」説明 : ""-コード :「500」説明 :「サービスを利用できません」 expectedValues  :[] 取得パス : "/ api / v1 / device / {deviceId} / value" 応答 :-コード :「200」説明 : ""  expectedValues  :["値"]-コード :「500」説明 :「サービスを利用できません」 expectedValues  :[] 

構成

デバイスを定義し、ジョブをスケジュールするための構成ファイル。マイクロサービス(つまり、device-modbus)は、起動時に相対インスタンスを生成します。プロトコルの種類、ゲートウェイ名、プロトコル、アドレス、ポート、パス(ユニットID)などの詳細が含まれています。

温度および湿度センサーの構成ファイル (スクロールして完全なリストを表示)

 [Writable] LogLevel ='DEBUG' [Service] BootTimeout =30000CheckInterval ='10s'Host =' localhost 'ServerBindAddr =' '#空白の値はデフォルトでServiceになります.Host valuePort =49991Protocol ='http' StartupMsg ='device modbus Started' Timeout =5000ConnectRetries =10Labels =[] EnableAsyncReadings =trueAsyncBufferSize =16 [Registry] Host ='localhost' Port =8500Type ='consul' [Logging] EnableRemote =falseFile ='。/ GPIO.LOG' [Clients] [Clients.Data] Protocol ='http' Host ='localhost' Port =48080 [Clients.Metadata] Protocol ='http' Host ='localhost' Port =48081 [Clients。ロギング]プロトコル='http'ホスト='ローカルホスト'ポート=48061 [デバイス] DataTransform =true InitCmd ='' InitCmdArgs ='' MaxCmdOps =128 MaxCmdValueLen =256 RemoveCmd ='' RemoveCmdArgs ='' ProfilesDir ='。/ res' UpdateLastConnected =false#デバイスの事前定義[[DeviceList]] Name ='TemperatureHumiditySensor'#デバイスプロファイルファイル名Profile ='TemperatureH umiditySensor '説明='工業用グレードの温度および湿度トランスミッターSHT20センサー高精度監視ModbusRS485 'ラベル=[' TemperatureHumiditySensor '、' modbusRTU '] [DeviceList.Protocols] [DeviceList.Protocols.modbus-rtu]アドレス=' / dev / ttyUSB0'BaudRate ='9600' DataBits ='8' StopBits ='1' Parity ='N' UnitID ='1' [[DeviceList.AutoEvents]] Frequency ='5s' OnChange =false Resource ='TemperatureDegC' [[DeviceList .AutoEvents]] Frequency ='5s' OnChange =false Resource ='HumidityPercentRH' 

GPIOデバイス(赤色LEDと青色LED)の構成ファイル (スクロールして完全なリストを表示)

 [Writable] LogLevel ='DEBUG' [Service] BootTimeout =30000CheckInterval ='10s'Host =' localhost 'ServerBindAddr =' '#空白の値はデフォルトでServiceになります.Host valuePort =49950Protocol ='http' StartupMsg ='device gpio Started' Timeout =5000ConnectRetries =10Labels =[] EnableAsyncReadings =falseAsyncBufferSize =16 [Registry] Host ='localhost' Port =8500Type ='consul' [Logging] EnableRemote =falseFile ='。/ GPIO.LOG' [Clients] [Clients.Data] Protocol ='http' Host ='localhost' Port =48080 [Clients.Metadata] Protocol ='http' Host ='localhost' Port =48081 [Clients。ロギング]プロトコル='http'ホスト='ローカルホスト'ポート=48061 [デバイス] DataTransform =true InitCmd ='' InitCmdArgs ='' MaxCmdOps =128 MaxCmdValueLen =256 RemoveCmd ='' RemoveCmdArgs ='' ProfilesDir ='。/ res' UpdateLastConnected =false#デバイスの事前定義[[DeviceList]] Name ="gpio12" Profile ="device-gpio12" Description ="use gpio12" Labels =['gpio1 2 '] [DeviceList.Protocols] [DeviceList.Protocols.other] Address ="device-gpio12" [[DeviceList]] Name ="gpio14" Profile ="device-gpio14" Description ="use gpio14" Labels =[' gpio14 '] [DeviceList.Protocols] [DeviceList.Protocols.other] Address ="device-gpio14" 

セットアップと実行と結果

  1. 下の図に示すように、ジャンパーとレジスターを使用して、RS485インターフェースを介してUSBコンバーターとLEDにSHT20工業用グレードの温度および湿度トランスミッターをRaspberry Pi(EdgeX Foundryがインストールされている)に接続します。

クリックしてフルサイズの画像を表示

図9.ハードウェア接続の詳細

    1. 上記のデバイスプロファイルをhttp:// localhost:48081 / api / v1 / deviceprofile / uploadfileへのPOSTを使用してメタデータにアップロードし、ファイルをキー「ファイル」としてフォームデータ形式で本文に追加し、作成しますIDが返されます。次のコマンド例では、curlを使用してリクエストを送信します。
       curl–X POST http:// 
      :48081 / api / v1 / deviceprofile / uploadfile -F file =@   
       
    2. すべての必須デバイスサービスが稼働していることを確認します。


図10.アクティブなデバイスサービスの確認

c。 POSTを使用してデバイスをhttp:// localhost:48081 / api / v1 / deviceに追加すると、本文は次のようになります。(スクロールして完全なリストを表示)

  curl -X POST  http:// localhost:48081 / api / v1 / device   -H "Content-Type:application / json" -d '{ "name"  : "TemperatureHumiditySensor"、 "description"  : "工業用グレードの温度および湿度送信機SHT20センサー高精度監視ModbusRS485"、 "adminState"  : "UNLOCKED"、 "operatingState"  : "ENABLED"、 "protocols"  :{ "modbus-rtu"  :{「住所」 : "/ dev / ttyUSB0"、 "BaudRate"  : "9600"、 "DataBits"  : "8"、 "StopBits"  : "1"、 "パリティ"  : "N"、 "UnitID"  : "1"}}、 "ラベル"  :["TemperatureHumiditySensor"、 "modbusRTU"]、 "サービス"  :{"name": "edgex-device-modbus"}、 "profile"  :{"name": "TemperatureHumiditySensor"}、 "autoEvents"  :[{「頻度」 : "5s"、 "onChange"  :false、「リソース」 : "TemperatureDegC"}、{ "頻度"  : "5s"、 "onChange"  :false、「リソース」 : "HumidityPercentRH"}]} '

デバイスは、POSTコマンドを使用して、またはconfiguration.tomlファイルの一部として追加できます。

  1. デバイスサービスは、5秒ごとにセンサーから温度と湿度のデータを取得します。受信したデータはコアサービスに送信され、Redisサーバーに保存されます。
 2021/03/02 05:03:33 modbus:送信01 04 00 01 00 01 60 0a2021 / 03/02 05:03:33 modbus:受信01 04 02 01 4d 78 95 

表1.Modbusの要求と応答のデコード

送信済み デコード 受信済み デコード 01スレーブID01スレーブID04機能コード04機能コード0001レジスタアドレス02バイトカウント0001レジスタ数014dData(0x014d =333)60 0aCRC 78 95CRC
  1. コアサービスはデータをアプリケーションサービスに送信します。次の図は、コアサービスのデータを示しています。


図11.コアサービスに保存されている温度と湿度のデータ

  1. アプリケーションサービスはデータをクラウドに送信します。ここでは、IBMクラウドを使用します。次の図は、IBMクラウドのデータを示しています。

クリックしてフルサイズの画像を表示

図12.ApplicationServiceから送信されたIBMCloudの温度と湿度のデータ

  1. 北行きから南行きの反対側では、アプリケーションサービスがデータをルールエンジン(ここではKuiperルールエンジンを使用)に送信します。次のルールが設定されています。

表2.ルール

ルール番号 ルール LED ステータス ルール#1TemperatureDegC> 30°CRed1(ON)ルール#2TemperatureDegC <30°CRed0(OFF)ルール#3TemperatureDegC> 28°CBlue0(OFF)ルール#4TemperatureDegC <28°CBlue1(ON)


図13.ルール#1


図14.ルールを適用するためのスクリプト

  1. しきい値温度に達すると、ルールエンジンはコマンドをコアコマンドに送信します。
  2. coreコマンドは、GPIOデバイスサービスを作動させて、LEDベースのしきい値温度をオンまたはオフにします。ルールを実行すると、ルールが適用されます。ここで、gpio12は赤色LEDを意味し、gpio14は青色LEDを意味します。

a。温度が30°Cを超えると、赤いLEDが点灯します。

ルールエンジンログ:

 level =info msg ="ルールのシンク結果red_led_on:[{\" TemperatureDegC \ ":32.3}]ファイル="sinks / log_sink.go:16" rule =red_led_onlevel =info msg ="ルールblue_led_offのシンク結果:[{\" TemperatureDegC \ ":32.3}] file =" sinks / log_sink.go:16 "rule =blue_led_off 

GPIO:

 root @ ubuntu:〜#cat / sys / class / gpio / gpio12 / value1root @ ubuntu:〜#cat / sys / class / gpio / gpio14 / value0 

b。温度が28°C未満になると、青色のLEDが点灯します。

ルールエンジン:

 level =info msg ="ルールのシンク結果red_led_off:[{\" TemperatureDegC \ ":27.2}]ファイル="sinks / log_sink.go:16" rule =red_led_offlevel =info msg ="ルールblue_led_onのシンク結果:[{\" TemperatureDegC \ ":27.2}] file =" sinks / log_sink.go:16 "rule =blue_led_on 

GPIO:

 root @ ubuntu:〜#cat / sys / class / gpio / gpio12 / value0root @ ubuntu:〜#cat / sys / class / gpio / gpio14 / value1 
  1. 最後に、GPIOサービスはLEDをオンまたはオフにします。

結論

業界では、センサーとアクチュエーターのインターフェースを取り、環境パラメーターを長期間監視および制御する必要があります。 The EdgeX framework enables the temperature and humidity monitoring application versatile, has enabled the controlled environment in industries, datacenters and laboratories. Interfacing any other industrial sensors with EdgeX Foundry will also work similar to industrial grade temperature and humidity sensor. This will save a huge amount of developer effort, development cost and latency as the EdgeX framework handles data storage, analytics, device management and cloud connectivity and gateway is very near to the sensors.

Acronyms

Acronym Expansion AOFAppend Only FileAPIApplication Program Interface AWSAmazon Web ServicesBACnetBuilding Automation and Control NetworkBLEBluetooth Low EnergyCURLClient Uniform Resource LocatorGPIOGeneral Purpose Input OutputHTTPHypertext Transfer ProtocolIBMInternational Business MachinesIIoTIndustrial Internet of ThingsIoTInternet of ThingsITInformation TechnologyLEDLight Emitting DiodeLTSLong Term SupportM2MMan to MachineMQTTMessage Queuing Telemetry TransportRDBRedis DatabaseRedisREmote DIctionary ServerRESTRepresentational State TransferRS-485Recommended Standard – 485SCADASupervisory Control and Data AcquisitionSQLStructured Query LanguageTCP/IPTransmission Control Protocol/Internet Protocol

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

  1. オープンソース用語の紹介
  2. シスコは、エンタープライズとインダストリアルのエッジを新しいルーターと結び付けています
  3. AT&T、TechMahindraが新しいオープンソースAIプラットフォームでコラボレーション
  4. 4.0インダストリーレボリューションで品質基準を引き上げる
  5. ソフトウェアのリスク:IoTでのオープンソースの保護
  6. エッジ分析によるインダストリー4.0のアップグレード
  7. エッジコンピューティングの進歩、IICがOpenFogに参加
  8. オープンソースのIoT開発ツールとベンダーがサポートするツール
  9. エッジでのオープンソースの必要性(eBook)
  10. オープンソースがIoTとエッジコンピューティングの採用を促進
  11. エッジでAI推論を開始する方法