ServerSuperIO 3.5版本的体系结构,以及未来规划的几点思考

时间:2022-06-26 07:21:24

一.特点

1.轻型高性能通信框架,适用于多种应用场,轮询模式、自控模式、并发模式和单例模式。
2.不仅是通讯框架,是设备驱动、IO通道、控制模式场景的协调机制。
3.支持协议驱动器,可以按规范写标准协议和自定义协议。
4.支持发送数据缓存器,支持命令缓存重发和按优先级别发送。
5.支持协议过滤器,按规则筛选数据,并且可以承继接口,自定义过滤方式。
6.支持接收数据缓存器,可以缓存不符合过滤器的数据,和下次接收数据进行拼接。
7.支持按设备命令优先级别进行调度设备,保证有高级别命令的驱动及时发送。
8.支持一个设备驱动,同时支持串口和网络两种通讯方式,可以监视IO通道数据。
9.支持一个设备驱动,在网络通讯时可以支持TCP Server和TCP Client两种工作模式。
10.支持多设备共享同一IO通道进行通讯。
11.支持定时清理超时的网络IO通道。
12.支持显示视图接口,满足不同显示需求。
13.支持服务组件接口,4-20mA输出、LED大屏显示、短信服务、以及多功能网关服务。
14.支持OPC Server服务和OPC  Client服务。
15.支持实时数据库。
16.支持创建多服务实例,完成不同业务的拆分。
17.支持跨平台部署,可以运行在Linux和Windows系统。
18.设备驱动与设备驱动,设备驱动与服务器(云端)可以实时双向交互,上传数据和指令下发。

二. 现在的体系结构

ServerSuperIO正在向体系化方面发展,在基础核心框架稳定的情况下,逐步的在丰富内容。现在3.5版本的体系结构如下图:

ServerSuperIO 3.5版本的体系结构,以及未来规划的几点思考

三.未来规划的几点思考

  1.  设备驱动

“设备”泛指各类终端数据源,例如:PLC、传感器、大型设备、仪表、PC机客户端等等。现在的问题是缺少各类“设备”驱动的集成,这部分工作量比较大,也比较耗时。可以先从某个行业作为切入点,把相关的设备驱动集成进来,例如:环保行业等等。同时,也需要更多的网友能够加到现在的建设团队中,如果网友愿意把行业的驱动贡献出来,ServerSuperIO完整源代码也将对网友或团体开放,本着贡献对等的原则。

      2. 实时数据库与业务的结合

实时数据库非常适合保存监测点的时序数据,但是也有其缺点,就是对业务数据的支持,也可以理解为适合保存设备产生的数据,不适合保存人产生的数据。弥补这个问题,就涉及到关系数据库与实时库数据库怎么结合的问题?我的想法是,现在设备驱动的监测数据和OPC Client读过来的数据都是以Tag的方式存在,把这部分进行统一配置,在关系数据库按业务划分逻辑组别把相关Tag包含进来,这样形成对业务数据的整体整合,当然这只是一部分想法,还可以把其他的策略加进来,逐步完善。

3. UI显示HMI

HMI也是ServerSuperIO比较欠缺的方面,我的想法是利用组态软件形成界面,按Tag与实时数据库进行结合,可能也有更好的方案,都可以随时交流。

以上就是这些内容,希望感兴趣的网友广泛讨论、交流。


1.[连载]《C#通讯(串口和网络)框架的设计与实现》

2.[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍

2.应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案

3.C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

5.ServerSuperIO开源地址:https://github.com/wxzz/ServerSuperIO

物联网&集成技术(.NET) QQ群

下载地址:官方网址