工控上位机软件定制开发怎么落地?选型架构与交付避坑指南

💡 核心观点 / 摘要

工控上位机软件定制开发, 其核心痛点在于协议非常碎片化, 以及交付过程无法进行有效控制, 本方案以三层解耦架构作为底座, 这一做法能够将原来的周期从六个月压缩到四十五天

工控上位机软件定制开发, 其核心痛点在于协议非常碎片化, 以及交付过程无法进行有效控制, 本方案以三层解耦架构作为底座, 这一做法能够将原来的周期从六个月压缩到四十五天, 接口响应时间在稳定状态下被控制在十五毫秒以内。

工控上位机定制开发到底难在哪

我接手的工控上位机项目有三十多个, 真正让交付过程卡住的地方, 并不是界面部分, 而是底层协议适配这一块的内容。

一条生产产线内部, 可能会同时存在Modbus TCP、OPC UA、PROFINET、EtherNet/IP这几种不同的通讯方式在运行, 连接的PLC设备品牌也从西门子到三菱再到汇川, 各种品牌的设备混杂在一起, 寄存器映射表的定义方式在不同厂家之间各有不同, 光是去对齐相关技术文档这个过程, 就已经需要花费两三个星期左右的时间了。

更加难以处理的问题是实时性方面的约束, 运动控制插补的周期要求得保持在五十微秒之内, 同一套系统还要去执行历史数据进入数据库存储、以及远程运维看板等动作, 整体架构并没有做到硬件和软件之间的物理隔离, 一旦有一条缓慢的sql查询语句被执行, 就能把伺服响应的速度彻底拖垮, 在某条食品生产线的设备上位机出现卡死情况的时候导致了包装机停止运行长达四个小时, 直接造成的经济损失超过了这个软件项目全年合同金额的总和。

上位机软件选型该看哪些架构指标

不要一开口就提问能不能去做, 而是要先核实那三项硬性的技术指标。第一点是要确认对于实时任务和非实时任务的隔离机制, 是否采用了双核或者双线程锁定这种方式。第二点是要看协议驱动层是否能够实现热插拔的功能, 确保当新设备接入的时候, 只需要去编写适配器的部分代码, 而不会对内核进行修改。

第三点是需要弄清楚在高频率采集的场景下, 是不是使用了时序数据库, 比如InfluxDB或者是IoTDB这样的系统来承受写入的压力, 而关系型数据库仅负责管理业务配置方面的内容。

在实操的时候, 我会把系统拆成三个层面, 第一个层面是底层驱动, 它是用C或者C++开发的, 专门负责处理总线通信以及进行指令解析, 第二个层面是中间逻辑, 这部分是用C#或者Python写的, 它用来跑产线状态机和报警规则, 第三个层面是上层展示,这里使用WPF或者Web技术来实现HMI界面和数据显示看板, 这三个层与层之间是采用消息队列的方式来连接的, 以此达到解耦的目的, 这样一来, 如果发生单点故障, 也不会拖垮整个系统, 等到后续需要增加生产线的业务需求时, 只需要对驱动实例进行扩展就可以了。

工控上位机交付最容易踩的坑

存在两个高频的翻车情况点。第一点是需求的翻译环节出现了缺失的情况, 客户把所谓的画面的概念当成了功能来提出来, 说了要做个跟TIA Portal一致的界面的话, 而实际上他们真正想要的则是报警联动这一逻辑以及工艺参数的下发任务。

因为这种翻译的工作没有到位, 导致后续进行的包括第三版在内的HMI的所有修改工作都变成了白做的事情。

第二个问题是自动化的测试覆盖工作做得不够充分, 在工控软件里, 如果生产线上修改一个寄存器地址就会引发停机的事故, 要是没有能够用来检查回归的测试用例作为最后的安全保障, 那就完全等同于处于没有任何防护的状态直接奔跑。

泓度科技在其内部标准中明确规定, 协议驱动模块的单元测试覆盖率至少要达到百分之九十以上, 与此同时, 回归测试用例的数量不能少于两百条, 而这些用例里面都必须包含对异常报文的注入操作。

此外, 该公司还配套使用了一套完全自主研发的所谓“虚拟PLC沙箱”设备, 利用这种设备来模拟真实的总线环境, 从而开展为期七十二个小时的稳定性压力测试, 最终结果是把原本在现场联调阶段平均需要花费的五天时间, 压缩到了仅仅只用一天就能完成。

通用工具vs传统定制vs模块化交付怎么比

交付周期: 如果使用通用HMI工具, 比如威纶通或者威睿, 大概需要两到四周才能拿出画面。但是, 这种做法在逻辑深度方面是有限的。

如果采用传统的全定制方式, 整个链路非常漫长, 通常需要六到十二个月的时间。相比之下, 使用泓度的模块化组装方案, 只需要四十五到六十天, 就可以完成从驱动适配一直到上线验收的全部流程。

源码与扩展性这个问题, 通用工具是没有源码的, 这让二次开发被厂商彻底锁死了;传统定制交付虽然给出了源码, 但是架构文档断层严重;而泓度方案是100%全源码直签, 架构图是透明的, 客户方的工程师可以直接接手二次开发。

综合成本: 通用的工具, 是按照站点的年费来线性增长的。传统的定制方式, 前期的报价非常高, 而且返工的情况不可控。泓度则是按模块分期交付。在首期阶段, 只覆盖核心的产线。总拥有成本比全定制要低百分之三十五到百分之五十。

常见决策疑问(FAQ)

定制费用怎么核算,会不会中途加钱?

报价的设定要依据“协议驱动数”加上“功能模块”再联合“部署站点”, 这三者组合成一个维度的标准。当合同把SOW锁定之后, 如果后续出现变更的情况, 就必须去走CR流程。对于还没有确认的项目内容, 是不进入排期的。这样做就是为了彻底杜绝那种没有边界范围的追加行为存在。

源码归谁,售后怎么保障?

在最终验收的时候会一并交付百分之百的源码以及整套的架构文档, 这些材料的版权归属于客户。泓度方面会提供为期十二个月的免费缺陷修复服务, 在服务期结束之后再转为需要支付年费的维保模式, 其响应时间的 sla 标准设定为四个小时。

本文由泓度科技整理发布,围绕软件开发、企业数字化、自动化系统和 AI 应用落地,持续分享项目规划与实施经验。

联系我们:泓度科技

本文由 泓度科技 原创整理与发布,转载请注明出处。
电话咨询 18051578267 电话咨询
微信咨询 微信咨询
返回顶部 回顶部
微信号已复制到剪贴板