一、SuperIO 的特点:
1) 能够很快的构建自己的通讯平台软件,包括主程序。
2) 设备模块化开发,通过配制文件挂载,即可在平台软件下运行。
3) 设备模块同时支持COM和TCP两种通讯方式,可以自由切换。
4) 设备协议无关性,可以把第三方协议转换成自定义的协议方式。
5) 设备命令缓冲器,可以设置命令发送的优先级别。
6) 接口自定义输出数据格式,供自己或其他厂家进行数据集成。
7) 接口自定义UI展示,以表格、动态图形化显示数据。
8) 软件信息、安装信息、通讯参数等可配制。
9) 设备挂载、UI菜单展示、数据输出、服务加载等信息可配制。
10) 提供OPC服务、2-40mA输出、LED大屏显示和短信操作类库。
二、升级内容
1.把安装目录下的所有目录整合到SuperIO目录下。
2.并发模式,增加发送数据的间隔时间配制功能。
3.增加心跳检测,以及检测的间隔时间配制功能。
4.增加对象改变事件(DeviceObjectChangedHandler)。
5.增加设备自主控制模式(Self),二次开发过程中,可以自主控制发送数据,只限于网络通讯模式。
6.增加动态加载程序集引用,免费二次开发过程中由于缺少程序集而引发异常。
7.整合界面显示、导出数据等接口,在此基础增加服务接口(IAppService),事务性的服务可以加载到平台。
8.完善配制工具。
三、主程序界面增加了【服务】菜单项
四、配制工具
(1)通用属性配置
(2)挂载设备模块
(3)界面视图模块挂载
(4)外部程序挂载,可以随意挂载可运行的程序以及工具
(5)服务挂载,可以开发自己的事务性服务组件,挂载到平台下运行,并提供了对接的接口。服务类型分为:显示模式和隐藏模式,对于显示模式:可以加载到菜单中。对于隐藏模式:不显示在菜单中。启动类型分为:自动启动和手动启动,可以配合显示模式使用。
(6)挂载导出数据模块。
五,服务接口(IAppService)
/// <summary>
/// 服务Key,要求唯一
/// </summary>
string ThisKey { get; }
/// <summary>
/// 服务名称
/// </summary>
string ThisName { get; }
/// <summary>
/// 更新设备
/// </summary>
/// <param name="devid">设备ID</param>
/// <param name="obj">设备对象</param>
void UpdateDevice(int devid, object obj);
/// <summary>
/// 移除设备
/// </summary>
/// <param name="devid">设备ID</param>
void RemoveDevice(int devid);
/// <summary>
/// 单击事件,关联菜单
/// </summary>
void OnClick();
/// <summary>
/// 启动服务
/// </summary>
void StartService();
/// <summary>
/// 释放服务
/// </summary>
void ReleaseService();
/// <summary>
/// 写日志事件
/// </summary>
event WriteLogHandler WriteLogHandler;
/// <summary>
/// 服务类型
/// </summary>
ServiceType ServiceType { set; get; }
/// <summary>
/// 是否自动启动
/// </summary>
bool IsAutoStart { set; get; }