preamble
Edge computing devices play a crucial role in the Internet of Things (IoT) and industrial automation. Edge collection gateways act as a bridge between the physical and digital worlds and are responsible for collecting sensor data and transmitting it to the cloud or local data centers for processing.
This article will introduce a cross-platform high-performance edge acquisition gateway based on .NET 8 open source project. We hope that this project can help you build and deploy efficient edge acquisition solutions.
Projects
NET 8-based cross-platform, high-performance edge acquisition gateway, with up to one million data points collected on a single machine.
ThingsGateway It is an edge collection gateway developed in C#, and the core is divided into four main parts.
- (communications) channel
channel, which is actually equivalent to an actual communication link, such as a serial port, a TCP connection, etc., in theThingsGatewayin which the channel also acts as a task in the thread pool, and the acquisition/business methods are sequential for different devices in the same channel.
- plug-in (software component)
ThingsGateway in the collection method or upload method and so on are completed by the plug-in, the main program is only responsible for scheduling and execution. For different collection protocols or business requirements, customized business operations can be accomplished through the development of plug-ins.
- installations
To create a device, you must specify the channel as well as the plug-in, or you can say that the device is actually the configuration of the plug-in. At the same time for the collection device, business equipment, there will be a slight difference.
Acquisition device: collect data into gateway/write data to site
Business equipment: upload data to third party/third party RPC rewrite
- variant
Variables to configure the specific point details of the collection device and the configuration items in the corresponding business device
Project Characteristics
- visualization
Configure, debug, and validate the entire process through a web browser
- Scripting Support
Flexible data conversion scripts and data upload custom entity scripts, can be adapted to the major cloud platform of the object model
- Custom Plugin Support
Customized business operations are accomplished by developing plug-ins.
- performances
Test 100w variable points, 500ms-1000ms all acquisition is completed, stable continuous acquisition occupies low CPU resources and memory resources.
- Disconnected Cache
Supports disconnected caching and automatic uploading after recovery.
- Complete commercially available edge gateway
Perfect configuration permissions, operation log function, etc., and OPC, WebAPI, Mqtt, Kafka, timing libraries, variable alarms and other more features waiting for you to discover.
Project Plug-ins
- Acquisition plug-in
Plug-in Name | note |
---|---|
Modbus | Rtu/Tcp message format, support serial/Tcp/Udp links |
SiemensS7 | Siemens PLC S7 Series |
Dlt6452007 | Serial/Tcp/Udp link support |
OpcDaMaster | 64-bit compilation |
OpcUaMaster | Support certificate login, extended object, Json read and write |
- Business Plug-ins
Plug-in Name | note |
---|---|
ModbusSlave | Rtu/Tcp message format, support for serial/Tcp/Udp links, support for Rpc rewrite |
OpcUaServer | OpcUa server with Rpc backwriting support |
MqttClient | Mqtt client with Rpc rewrite support, scripts to customize upload content |
MqttServer | Mqtt server, support for WebSocket, support for Rpc rewriting, scripts to customize the upload content |
KafkaProducer | Scripts to customize upload content |
RabbitMQProducer | Scripts to customize upload content |
SqlDB | Relational database storage, supporting historical storage and real-time data updates |
SqlHisAlarm | Alarm history data stored in relational database |
TDengineDB | Time-Series Database Storage |
QuestDB | Time-Series Database Storage |
Project Showcase
1、ThingsGateway demo address
Account : SuperAdmin
Password : 111111
2、Login page
3. System home page
4. Gateway management
5. Gateway Status
6. Gateway log
Project Address
- Documentation:/
- Gitee:/
- Github:/kimdiego2098/ThingsGateway
- Nuget:/packages?q=Tags:%22ThingsGateway%22
ultimate
If you found this article helpful, why not support it with a like? Your support is what keeps me motivated to continue sharing my knowledge. If you have any questions or need further help, please feel free to leave a comment. You can also join the WeChat public number[DotNet Technician] community to share ideas and grow with other tech-loving peers!