-
Notifications
You must be signed in to change notification settings - Fork 92
Adapters
An adapter is an optional piece of hardware or software that transforms information provided by a device into a form that can be received by an MTConnect Agent. The MTConnect standard does not specify or restrict the behavior or implementation of the adapter.
For many systems, the adapter that translates device data into MTConnect is a software-only solution:
- For example, installing an adapter for a Windows-based CNC controller might follow the same steps as installing drivers for desktop PC peripherals like printers or digital cameras.
If a device does not have a controller, or if the controller is unable to run the adapter software, an additional hardware board is installed. The adapter software then runs on the external board, e.g. on a Raspberry Pi.
- In some cases a separate board is utilized for performance optimization and system resource management.
In most cases, there is a unique adapter for every unique device model. This is because most devices have their own proprietary data format that needs to be mapped or translated to the MTConnect data format.
The ingress to the C++ MTConnect Reference Agent requires adapters to communicate with it using a simple TCP sockets protocol. The semantics were chosen as the simplest possible format to get data from a device to another process with minimal overhead, but still easily verifiable. See Adapter Connectivity.
There are Adapter examples on MTConnect GitHub that one may follow and could use as a template to create their own adapters.
- C++ Agent Adapter simulator: Example in ruby.
- Adapter Examples: Examples in several software languages.
- PocketNC Adapter: Example in python2.7.
- ISO Digital Twin Project: Example in python3.
-
TrueAnalyticsSolutions/Mtconnect.Adapter: First model-aware Adapter SDK to use the MTConnect Transpiler.
- TrueAnalyticsSolutions/Mtconnect.PcAdapter: Example Adapter to showcase communication between an Adapter and an Agent.
- TrueAnalyticsSolutions/Mtconnect.MakerBotAdapter: Compatible with 5th gen MakerBots (ie. Replicator+, Mini, etc.)