首页 » 软件开发 » KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备)

KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备)

雨夜梧桐 2024-07-23 18:36:55 软件开发 0

扫一扫用手机浏览

文章目录 [+]

哈喽,你好啊,我是雷工!

在SCADA项目中,有些要求在界面上实时显示SCADA系统与设备的实时通讯状态,来及时了解PLC或其他设备与SCADA系统的通讯状态是否正常,以及简单的通讯异常分析,在KingSCADA中该如何实现通讯状态的文本显示呢?

接下来用简单的样例介绍KingSCADA如何实现文本显示设备的实时通讯状态,以下为案例记录。

KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备) KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备) 软件开发
(图片来自网络侵删)

(一)效果演示

当用ModbusSlave模拟的设备与KingSCADA通讯正常时,文本状态反馈显示:设备正常;故障代码反馈显示:0;

当手动停掉ModbusSlave模拟设备时,与KingSCADA系统的通讯异常,文本状态反馈显示:设备故障,通讯故障,初始化失败;故障代码显示:2;

KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备) KingSCADA|如何实现文本显示设备的实时通讯状态?(通讯状态变量文本设备) 软件开发
(图片来自网络侵删)

以下为演示效果:

(二)测试软件

1、KingSCADA3.7;

2、KingIOServer3.8;

3、ModbusSlave工具;

(三)实现思路

1、设备系统变量

在每个KingIOServer中每个设备对应有两个系统变量,“$DeviceStatusOfs”和“$DeviceControlOfs”。

$DeviceStatusOfs:代表设备状态的变量,为只读变量,代表该设备的通讯状态,其值包含“0,1,2”三个数值;其中0表示设备通讯正常;1表示通过$DeviceControlOfs变量停止设备,2表示设备故障,通讯异常,初始化失败。

$DeviceControlOfs:设备控制变量,支持异步写,可写入值为0和1,写入0时,控制设备停止;写入1时,控制设备运行。

2、KingSCADA连接KingIOServer的系统变量

设备具有设备状态变量,只要在KingSCADA中调用该变量,即可实现状态展示。

(四)实现步骤

1、KingIOServer与ModbusSlave建立通讯

通讯的建立可以参考《【SCADA】测试KingIOServer连接ModbusTCP设备》。

2、KingSCADA与KingIOServer建立连接

连接的建立可以参考《【KingSCADA】如何建立硬件系统及相关变量》。

3、创建变量

在KingSCADA的数据词典新建“设备通讯”变量,连接KingIOServer的设备状态变量。

4、添加页面变量

在创建的界面中添加界面变量“通讯文本”。

5、运行脚本

通过界面存在时脚本,为通讯文本变量赋值,当设备通讯为不同状态时为通讯文本赋值对应的文本显示。

6、界面组态

根据需要在界面布置文本显示,其中文本状态反馈和故障代码反馈分别连接对应的变量

7、运行测试

点击运行按钮,将测试样例运行起来,通过开关ModbusSlave调试工具,可以观察KingSCADA界面是否能正确显示当前通讯状态及对应的通讯文本信息。

(五)后记

以上为如何实现文本显示设备实时通讯状态的小样例,有需要的小伙伴可以参考。

其实各个组态软件大同小异,只要具备设备通讯的系统变量,都可以用同样的方式展示通讯异常提示信息。
像昆仑通态等触摸屏也类似。

大家有什么更好的实现方式或者在项目开发中遇到了什么问题,欢迎评论或私信一起集思广益。

标签:

相关文章