工控上位机软件开发
- 全流程自研之上位机软件开发-工业级控制系统
-
- 一、上位机软件开发底层设计
- 二、上下位机通信的安全性
- 三、上位机软件接收与存储研发
- 四、数据清洗与图形展示研发
- 五、上位机软件发送指令与回调
- 六、上位机软件开发-应用行业
全流程自研之上位机软件开发-工业级控制系统
一、上位机软件开发底层设计
任何一个工业级的实现,都不是凭空想象出来的,所以上位机软件开发也离不开底层设计。底层设计包括开发语言选取、开发框架设计、底层业务模块切割、存储数据模块建模,其核心是业务模块切割,依据是下上位机通讯协议。不论下位机是自研开发(画图、焊板子、烧程序),还是现成的组态软件、工控软件,都有其通信协议,即数据上传接口规范。自研的下位机,协议可以自定。上位机软件开发,其接收数据的标准,必须建立在这些数据接口规范之上(自研亦叫协议)。
二、上下位机通信的安全性
不论在任何行业,只要设计到生产活动,必然会涉及到安全,工控软件安全主要有两方面内容:
1、数据安全
2、控制安全
上传的数据错误,直接影响上位机管理人员的操控决策。下发的指令被人篡改,直接影响生产设备控制,甚至导致生产事故发生,可想安全是多么重要的一件事。
下上位机通信安全保障措施:服务器安全、公 专线、局域 加密、登录身份认证、双向传输数据加解密、双向传输数据校验、设备校准、现场屏蔽等。
属于上位机软件需要实现的有:服务器安全、公 专线、局域 加密、登录身份认证、双向传输数据加解密、双向传输数据校验。
三、上位机软件接收与存储研发
上位机软件其实质是一个数据处理服务器,所以上位机需要拥有独立的IP,并给下位机开放数据传输接口,以便下位机随时定位上位机且能上传数据。如果只是采集数据(即没有控制),上下位机采用动态链接比较省 络资源,只要拥有独立地址,下位机即可随时定位上位机。
下位机串口信息上传数据(字节流,一般采用16进制编码),上位机按照通信协议(一、中讲到的),利用动态适配算法,解析成自己语言所能处理的编码(如JAVA转换成utf8),解析码后,透传给上位机软件核心处理节点,进行数据存储、分析、清洗、展示。
由于下位机终端节点非常多,实时数据非常庞大(我处理的两年达到T级别),在存储和数据关联上,需要根据自己的业务要求,设计适合自己的数据库。我当时采用分库、分表、主键关联,以提高存储和查询的速度。现在的NoSql数据库,或者文件系统都挺适合存储工业数据的,存储、抽取、分析及后续大数据,在此基础上去做,都非常合适。
四、数据清洗与图形展示研发
待续……
五、上位机软件发送指令与回调
六、上位机软件开发-应用行业
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!