MTConnect.NET-MQTT
5.4.4
dotnet add package MTConnect.NET-MQTT --version 5.4.4
NuGet\Install-Package MTConnect.NET-MQTT -Version 5.4.4
<PackageReference Include="MTConnect.NET-MQTT" Version="5.4.4" />
paket add MTConnect.NET-MQTT --version 5.4.4
#r "nuget: MTConnect.NET-MQTT, 5.4.4"
// Install MTConnect.NET-MQTT as a Cake Addin
#addin nuget:?package=MTConnect.NET-MQTT&version=5.4.4
// Install MTConnect.NET-MQTT as a Cake Tool
#tool nuget:?package=MTConnect.NET-MQTT&version=5.4.4
MTConnect.NET-MQTT
MTConnect.NET-MQTT is an extension library to MTConnect.NET that provides an MQTT Broker & Client interface to an IMTConnectAgent interface.
Devices
The MTConnect/Devices topics are used to send data that is in an MTConnectDevicesResponse document.
MTConnect/Devices/[DEVICE_UUID]/Device
Device Observations
MTConnect/Devices/[DEVICE_UUID]/Observations/[COMPONENT_TYPE]/[COMPONENT_ID]/[DATA_ITEM_CATEGORY]/[DATA_ITEM_TYPE]/[DATA_ITEM_ID]
MTConnect/Devices/[DEVICE_UUID]/Observations/[COMPONENT_TYPE]/[COMPONENT_ID]/[DATA_ITEM_CATEGORY]/[DATA_ITEM_TYPE]/SubTypes/[DATA_ITEM_SUBTYPE]/[DATA_ITEM_ID]
Device Condition Observations
Condition messages are sent as an array of Observations since a Condition may have multiple Fault States. This is similar to how the Current request functions in an HTTP Agent.
Device Assets
MTConnect/Devices/[DEVICE_UUID]/Assets/[ASSET_TYPE]/[ASSET_ID]
Topic Structure
[Node] = (Payload)
- MTConnect
─ Devices
─ [DEVICE_UUID]
- Device = (JSON)
- Observations
- [COMPONENT_TYPE]
- [COMPONENT_ID]
- Events
- [DATA_ITEM_TYPE]
- [DATA_ITEM_ID] = (JSON)
- SubTypes
- [DATA_ITEM_SUBTYPE]
- [DATA_ITEM_ID] = (JSON)
- Samples
- [DATA_ITEM_TYPE]
- [DATA_ITEM_ID] = (JSON)
- Conditions
- [DATA_ITEM_TYPE]
- [DATA_ITEM_ID] = (JSON Array)
- Assets
- [ASSET_TYPE]
- [ASSET_ID] = (JSON)
Example
- MTConnect
─ Devices
─ OKUMA.Lathe.123456
- Device
- Observations
- Device
- OKUMA.Lathe
- Events
- AVAILABILITY
- L2avail = {"dataItemId":"L2avail","name":"avail","type":"AVAILABILITY","timestamp":"2023-02-07T20:02:26.8978653Z","result":"AVAILABLE"}
- ASSET_CHANGED
- OKUMA.Lathe_assetCount = {"dataItemId":"OKUMA.Lathe_assetCount","name":"assetCount","type":"ASSET_COUNT","timestamp":"2023-02-07T20:02:26.7671421Z","result":"UNAVAILABLE","count":0}
- Controller
- L2ct1
- Events
- EMERGENCY_STOP
- L2estop = {"dataItemId":"L2estop","name":"estop","type":"EMERGENCY_STOP","timestamp":"2023-02-07T20:02:26.8978653Z","result":"ARMED"}
- Path
- L2p1
- Events
- EXECUTION
- L2p1execution = {"dataItemId":"L2p1execution","name":"p1execution","type":"EXECUTION","timestamp":"2023-02-07T20:02:26.7671421Z","result":"UNAVAILABLE"}
- Conditions
- SYSTEM
- L2p1system = [{"level":"WARNING","dataItemId":"L2p1system","name":"p1system","type":"SYSTEM","timestamp":"2023-02-07T20:30:16.8639659Z","result":"Not Found","nativeCode":"404"},{"level":"FAULT","dataItemId":"L2p1system","name":"p1system","type":"SYSTEM","timestamp":"2023-02-07T20:30:38.9662297Z","result":"Interval Error","nativeCode":"500"}]
- Samples
- PATH_FEEDRATE
- SubTypes
- ACTUAL
- L2p1Fact = {"dataItemId":"L2p1Fact","name":"p1Fact","type":"PATH_FEEDRATE","subType":"ACTUAL","timestamp":"2023-02-07T20:02:26.7671421Z","result":"UNAVAILABLE"}
- Assets
- CuttingTool
- 5.12 = {"assetId":"5.12","type":"CuttingTool","timestamp":"2023-02-07T13:36:04.7288143Z","deviceUuid":"OKUMA.Lathe.123456","serialNumber":"12345678946","toolId":"12","cuttingToolLifeCycle":{"cutterStatus":["AVAILABLE","NEW","MEASURED"],"location":{"type":"SPINDLE"},"programToolGroup":"5","programToolNumber":"12","measurements":[{"type":"FunctionalLength","value":7.6543,"units":"MILLIMETER","code":"LF"},{"type":"CuttingDiameterMax","value":0.375,"units":"MILLIMETER","code":"DC"}]}}
Assets
MTConnect/Assets/[ASSET_TYPE]/[ASSET_ID]
Note: Assets are sent to two topics. One for the "Global" assets and one for the Device that the Asset was added to
Topic Structure
[Node] = (Payload)
- MTConnect
─ Assets
─ [ASSET_TYPE]
- [ASSET_ID] = (JSON)
Example
- MTConnect
- Assets
- CuttingTool
- 5.12 = {"assetId":"5.12","type":"CuttingTool","timestamp":"2023-02-07T13:36:04.7288143Z","deviceUuid":"OKUMA.Lathe.123456","serialNumber":"12345678946","toolId":"12","cuttingToolLifeCycle":{"cutterStatus":["AVAILABLE","NEW","MEASURED"],"location":{"type":"SPINDLE"},"programToolGroup":"5","programToolNumber":"12","measurements":[{"type":"FunctionalLength","value":7.6543,"units":"MILLIMETER","code":"LF"},{"type":"CuttingDiameterMax","value":0.375,"units":"MILLIMETER","code":"DC"}]}}
Agents
The MTConnect/Agents topics are used to send data about the Agent. This is the data that is typically in the HTTP Response Document Header
MTConnect/Agents/[AGENT_UUID]
Topic Structure
[Node] = (Payload)
- MTConnect
─ Agents
─ [AGENT_UUID]
- UUID
- InstanceId
- Version
- Sender
- DeviceModelChangeTime
Example
- MTConnect
─ Agents
─ d7e169c5-14bb-48a3-bf9f-521152df2c84
- UUID = d7e169c5-14bb-48a3-bf9f-521152df2c84
- InstanceId = 1669400832
- Version = 5.0.0.0
- Sender = DESKTOP-HV74M4N
- DeviceModelChangeTime = 2023-02-07T20:02:26.7682252Z
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 is compatible. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 is compatible. net462 is compatible. net463 was computed. net47 is compatible. net471 is compatible. net472 is compatible. net48 is compatible. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETCoreApp 3.1
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.6.1
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.6.2
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.7
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.7.1
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.7.2
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETFramework 4.8
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
.NETStandard 2.0
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
net5.0
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
net6.0
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
-
net7.0
- Microsoft.Extensions.Hosting (>= 7.0.0)
- MQTTnet (>= 4.1.4.563)
- MQTTnet.Extensions.ManagedClient (>= 4.1.4.563)
- MTConnect.NET-JSON (>= 5.4.4)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on MTConnect.NET-MQTT:
Package | Downloads |
---|---|
MTConnect.NET-Applications-Agents-MQTT
MTConnect.NET-Applications-Agents-MQTT contains classes to implement the MQTT Protocol in an MTConnect Agent application. Supports MTConnect Versions up to 2.1. Supports .NET Framework 4.6.1 up to .NET 7 |
GitHub repositories
This package is not used by any popular GitHub repositories.