一种人机交互界面监控系统全局脚本程序处理分析方法转让专利

申请号 : CN201110196675.4

文献号 : CN102243585B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐思敏张鹏张磊常宗虎吕冬宝肖代云王强何志军

申请人 : 中国核电工程有限公司

摘要 :

本发明涉及一种人机交互界面监控系统全局脚本程序处理分析方法。该方法为需要全局监控的程序函数进行优先级分配,用变量作为不同编程语言编写的全局函数的标识位,方便不同语言间脚本的交互执行。本发明解决了初始化阶段和其他特定情况不该执行的程序不受限制执行的问题,当多个脚本条件同时满足时,将按顺序执行,不会忽略掉任何脚本。

权利要求 :

1.一种人机交互界面监控系统全局脚本程序处理分析方法,其特征在于:包括如下内容:(a).根据子功能编写项目函数,全局脚本程序采用直接调用项目函数的方法完成子功能;

(b).为每个需要变量触发的项目函数设定优先级,同级内的项目函数执行顺序不固定,并设定优先级标识变量;

(c).为每个优先级设定标识变量用以表示是否有该级别项目函数需要执行;

(d).为每个项目函数设定动作标识位用以表示该项目函数是否需要执行;

(e).设定与PLC通信断开标识位用以表示通信的建立和断开状态;

(f).编写全局脚本,并设定各脚本的触发条件,全局脚本包括:初始化脚本,包含系统初始化参数及功能;

优先级脚本,按优先级的高低逐级判断是否有项目函数需要执行且未执行,若有某级脚本需要执行且未执行,跳出优先级判断程序,触发该级别脚本,置该级别脚本标识变量为需要执行的状态;

各级脚本,扫描该级别项目函数动作标识位,执行所有标识位为需要执行且未执行状态的函数,全部执行完后,置该级别优先级标识变量为已执行完状态,并返回优先级脚本继续执行;

与PLC通信断开脚本,建立或断开与PLC的通信,触发时将所有函数动作标识位、优先级标识变量、全局脚本标识位初始化;

各脚本的触发条件如下:

初始化脚本,触发条件为第一次启动;

优先级脚本,触发条件为存在需要执行且未执行的项目函数;

各级脚本,触发条件为该级别标识变量表示为有该级别函数需要执行的状态;

与PLC通信断开脚本,触发条件为与PLC通信断开标识位表示为断开状态;

(g).为每个全局脚本设定标识位用以表示是否初始化,初始值为0,等于0表示未初始化,等于1表示初始化结束;

(h).编写周期触发和时间触发的全局变量;

(i).为每个全局脚本程序增加如下逻辑:首先判断全局脚本中用以表示初始化的标识位是否为1,若为0,置该变量为1后跳出该程序,若为1,执行原先编写的内容。

2.如权利要求1所述的人机交互界面监控系统全局脚本程序处理分析方法,其特征在于:在(b)项中,设定优先级标识变量时,1为最高级,2为次高级,以此类推,标识变量值越大优先级越低。

3.如权利要求1所述的人机交互界面监控系统全局脚本程序处理分析方法,其特征在于:在(c)项中,为每个优先级设定标识变量的初始值为0,等于1时表示有该级别函数需要执行,等于2时表示该级别函数执行完。

4.如权利要求1所述的人机交互界面监控系统全局脚本程序处理分析方法,其特征在于:在(d)项中,为每个项目函数设定动作标识位的初始值为0,等于0时表示该函数不需要执行,等于1时表示该函数需要执行且未执行。

5.如权利要求1所述的人机交互界面监控系统全局脚本程序处理分析方法,其特征在于:在(e)项中,与PLC通信断开标识位为1时通信建立,为0时与PLC通信断开。

说明书 :

一种人机交互界面监控系统全局脚本程序处理分析方法

技术领域

[0001] 本发明涉及人机交互界面系统程序的设计方法,具体为一种人机交互界面监控系统全局脚本程序处理分析方法。

背景技术

[0002] 目前,人机操作界面在工业中应用广泛,遍布各个领域,其可靠性和安全性成为软件开发人员及最终用户最为关心的问题。在常用的开发平台下,一般除采用可视化程序编写,还结合平台提供的全局脚本进行程序开发,完成人机操作界面的开发。全局脚本由设定的触发条件触发,当条件满足时,系统不受画面状态或操作员控制可自动执行脚本程序,增强了人际操作界面的功能性。
[0003] 这些开发平台软件对全局脚本应仅当每个脚本的触发条件满足时才执行相应脚本,但是,通常开发平台软件具有以下缺陷:首先,程序运行初始化阶段不受任何触发条件限制执行全部全局脚本,不区分先后顺序,不能选择性执行;其次,在特定情况下,如与PLC通信断开后重新成功建立通信,不受触发条件限制执行全部全局脚本,不区分先后顺序,不能选择性执行;第三,当两个脚本条件同时满足,并处理同一对象时,可能会忽略的其中一个脚本不执行。
[0004] 上述缺陷,将降低人机操作界面的可靠性和安全性,对程序员的程序设计造成了困难,对操作员的使用增加了风险。

发明内容

[0005] 本发明的目的在于提供一种实现全局脚本程序分析处理的方法,可以在各种情况下按照设定顺序执行并选择性执行全局脚本,解决程序不受触发条件限制、全部且无固定顺序执行的这种开发平台固有的缺陷。
[0006] 为实现上述目的,本发明的技术方案如下:一种人机交互界面监控系统全局脚本程序处理分析方法,包括如下内容:
[0007] (a).根据子功能编写项目函数,全局脚本程序采用直接调用项目函数的方法完成子功能;
[0008] (b).为每个需要变量触发的项目函数设定优先级,同级内的项目函数执行顺序不固定,并设定优先级标识变量;
[0009] (c).为每个优先级设定标识变量用以表示是否有该级别项目函数需要执行;
[0010] (d).为每个项目函数设定动作标识位用以表示该项目函数是否需要执行;
[0011] (e).设定与PLC通信断开标识位用以表示通信的建立和断开状态;
[0012] (f).编写全局脚本,并设定各脚本的触发条件,全局脚本包括:
[0013] 初始化脚本,包含系统初始化参数及功能;
[0014] 优先级脚本,按优先级的高低逐级判断是否有项目函数需要执行且未执行,若有某级脚本需要执行且未执行,跳出优先级判断程序,触发该级别脚本,置该级别脚本标识变量为需要执行的状态;
[0015] 各级脚本,扫描该级别项目函数动作标识位,执行所有标识位为需要执行且未执行状态的函数,全部执行完后,置该级别优先级标识变量为已执行完状态,并返回优先级脚本继续执行;
[0016] 与PLC通信断开脚本,建立或断开与PLC的通信,触发时将所有函数动作标识位、优先级标识变量、全局脚本标识位初始化;
[0017] (g).为每个全局脚本设定标识位用以表示是否初始化,初始值为0,等于0表示未初始化,等于1表示初始化结束;
[0018] (h).编写周期触发和时间触发的全局变量;
[0019] (i).为每个全局脚本程序增加如下逻辑:首先判断全局脚本中用以表示初始化的标识位是否为1,若为0,置该变量为1后跳出该程序,若为1,执行原先编写的内容。
[0020] 进一步,如上所述的人机交互界面监控系统全局脚本程序处理分析方法,在(b)项中,设定优先级标识变量时,1为最高级,2为次高级,以此类推,标识变量值越大优先级越低。
[0021] 进一步,如上所述的人机交互界面监控系统全局脚本程序处理分析方法,在(c)项中,为每个优先级设定标识变量的初始值为0,等于1时表示有该级别函数需要执行,等于2时表示该级别函数执行完。
[0022] 进一步,如上所述的人机交互界面监控系统全局脚本程序处理分析方法,在(d)项中,为每个项目函数设定动作标识位的初始值为0,等于0时表示该函数不需要执行,等于1时表示该函数需要执行且未执行。
[0023] 进一步,如上所述的人机交互界面监控系统全局脚本程序处理分析方法,在(e)项中,与PLC通信断开标识位为1时通信建立,为0时与PLC通信断开。
[0024] 进一步,如上所述的人机交互界面监控系统全局脚本程序处理分析方法,在(f)项中,各脚本的触发条件如下:
[0025] 初始化脚本,触发条件为第一次启动;
[0026] 优先级脚本,触发条件为存在需要执行且未执行的项目函数;
[0027] 各级脚本,触发条件为该级别标识变量表示为有该级别函数需要执行的状态;
[0028] 与PLC通信断开脚本,触发条件为与PLC通信断开标识位表示为断开状态。
[0029] 本发明的有益效果如下:
[0030] 1.为需要全局监控的程序函数进行优先级分配;
[0031] 2.用变量作为不同编程语言编写的全局函数的标识位,方便不同语言间脚本的交互执行;
[0032] 3.解决了初始化阶段和其他特定情况不该执行的程序不受限制执行的问题;
[0033] 4.当多个脚本条件同时满足时,将按顺序执行,不会忽略掉任何脚本。

附图说明

[0034] 图1为本发明的优先级全局脚本的程序流程图;
[0035] 图2为本发明的各级全局脚本的程序流程图;
[0036] 图3为本发明的全局脚本的标识位设定的程序流程图;
[0037] 图4为本发明的与PLC通信断开后执行的程序流程图;
[0038] 图5为依据本发明的方法所设计的装卸料机人机交互界面软件设计系统原理图;
[0039] 图6为装卸料机人机交互界面软件的功能树图。

具体实施方式

[0040] 下面结合附图和实施例对本发明进行详细的说明。
[0041] 本发明所提供的实现全局脚本程序分析处理的方法,该处理方法包括以下内容:
[0042] (a)根据子功能编写项目函数,全局脚本程序采用直接调用项目函数的方法完成子功能,一般为C语言、VBS语言等;
[0043] (b)为每个需要变量触发的项目函数设定优先级,同级内的项目函数执行顺序不固定,设定优先级标识变量,1为最高级,2为次高级,以此类推,标识变量值越大优先级越低;
[0044] (c)为每个优先级设定标识变量,初始值为0,等于1时表示有该级别函数需要执行,等于2时表示该级别函数执行完;
[0045] (d)为每个函数设定动作标识位,初始值为0,等于0时表示该函数不需要执行,等于1时表示该函数需要执行且未执行;
[0046] (e)设定与PLC通信断开标识位,为1时通信建立,为0时与PLC通信断开;
[0047] (f)编写全局脚本:初始化脚本,触发条件为第一次启动;优先级脚本,触发条件为所有函数的动作标识位不都为0;各级脚本,触发条件为该级别标识变量为1;与PLC通信断开脚本,触发条件为与PLC通信断开标识位为0;
[0048] 初始化脚本:包含系统初始化参数等功能;
[0049] 优先级脚本:判断是否有1级函数需要执行且未执行,若没有,判断是否有2级函数需要执行且未执行,若没有,判断是否有3级函数需要执行且未执行,以此类推,直到最低级,若有某级脚本需要执行且未执行,跳出优先级判断程序,触发该级别脚本,置该级别脚本标识变量为1;优先级全局脚本的程序流程图如图1所示;
[0050] 各级脚本:扫描该级别函数动作标识位,执行所有标识位等于1的函数,全部执行完后置,该级别优先级标识变量为2,并返回优先级脚本继续执行;各级全局脚本的程序流程图如图2所示;
[0051] 与PLC通信断开脚本:建立或断开与PLC的通信,触发时将所有函数动作标识位、优先级标识变量、全局脚本标识位初始化;与PLC通信断开后执行的程序流程图如图4所示;
[0052] (g)为每个全局脚本设定标识位,初始值为0,等于0表示未初始化,等于1表示初始化结束;
[0053] (h)编写周期触发和时间触发的全局变量;
[0054] (i)为每个全局脚本程序增加如下逻辑:首先判断全局脚本中用以表示初始化的标识位是否为1,若为0,置该变量为1后跳出该程序,若为1,执行原先编写的内容;全局脚本的标识位设定的程序流程图如图3所示。
[0055] 实施例
[0056] 本发明方法应用于压水堆核电站装卸料机系统人机操作界面的程序开发。在工控机上实现,与操作控制台、可编程控制器PLC及辅助电路等组合,共同建立装卸料机电控系统。所述的工控机采用触摸屏电脑,内置MS Window XP嵌入式操作系统,采用SIMATIC WinCC做为人机操作界面的软件开发平台,通过安装内置的通讯驱动程序实现与现场总线PROFIBUS上的S7PLC的通讯。本实施例的人机操作界面设计通过画面编程结合全局脚本编程实现,软件设计系统原理如图5所示,目标实现人机交互界面对装卸料机运行的实时监测、操纵控制、报警处理、数据记录等功能。人机交互界面软件开发采用多种编程语言(ANSI-C、VBS、VBA、Transact-SQL)和图形编辑器进行软件设计。
[0057] 人机交互界面作为操作员的监测、控制装卸料机的主要命令窗口,对通信接口采集的数据进行处理和计算,指导自动运行模式的操作,辅助操作员正确无误地发出指令完成换料过程,并及时对故障情况报警和记录,为使操作员对设备状态更为形象的监控、对操作更为准确的判断、提高操作的精确度,人机交互界面多处设计含有动画效果的界面,实时、高效且直观地反映装卸料机的运行状态,动画界面的开发采用与实际成一定比例的二维动画模型,巧妙地将复杂结构转化为易识别、功能全的动画效果。
[0058] 本实施例的具体功能树结构如图6所示,其中C1到C5可以根据装卸料机运行的状态自动切换、显示和隐藏,使操作员不会忽略任何可以显示的动作、提示和报警,并能提示操作员下一步正确的操作内容。画面自动转换的程序可以减少操作员的手动操作,从而减少了人在运行中的因素。人机交互界面软件程序实现如下画面及功能:
[0059] --B1:登录。开启电源后,人机交互界面启动,进入登录画面,该画面实现登录功能,将对操作员权限分级,不同级别的操作员可进入的画面和能实现的功能不同。
[0060] --P1:运行。在操作员登录后,可以通过人机交互界面监视和操作装卸料机运行,运行状态下设置两个画面,主提升画面和大、小车画面,将垂直方向和水平方向上的运动分别显示。
[0061] --P2:系统设置。在操作员登录后,可以通过人机交互界面对装卸料机的部分参数进行设置这部分功能。
[0062] --P3:基础测试。在操作员登录前,可以对装卸料机进行基础测试,例如灯测试。登录后将进入运行状态,不得进行基础测试。
[0063] --P4:各项系统旁路的状态及设置。不同权限的操作员登录后可进入不同的系统旁路设置画面,可激活和取消系统旁路。
[0064] --P5:堆芯地图的修改。根据实际堆芯区栅格位置绘制堆芯地图,有相应权限的操作员可以根据运行需要修改每个栅格的状态(置位/空位)。
[0065] --P6:各个编码器的状态及设置。大车、小车和主提升编码器分别包括主、从编码器两个,对主从编码器的输出值差值进行比较,作为监控编码器状态的有效途径之一。另根据需要可以更改主、从编码器的优先级。
[0066] --P7:啜吸试验。确认啜吸试验的初始设置。
[0067] --P8:系统基本功能的使能设置。有相应权限的操作员,可以更改偏移法换料、啜吸试验、编码器的使能设置。
[0068] --P9:大、小车画面操作。可以切换手动、全自动、半自动操作;可以停止大、小车的自动运行;可以查看启动的联锁/旁路信息;当出现系统故障时,可以查看系统故障和复位系统故障;在条件允许时,可以通过大、小车画面进入主提升画面、系统设置、使操作员重新登录、关闭系统。
[0069] --P10:自动停止。手动模式下,当主提升下降到4500mm时,将自动停止,提示操作员下一步操作。
[0070] --P11:主提升自动停止。当操作员选择以偏移法换料,若装卸料机已进入偏移法转运区域,主提升停止,提示操作员进行下一步偏移操作,移动到对中位置后,主提升继续下降。
[0071] --P12:主提升画面操作。可以切换手动、全自动、半自动操作;可以停止主提升的自动运行;可以查看启动的联锁/旁路信息;当出现系统故障时,可以查看系统故障和复位系统故障;在条件允许时,可以通过主提升画面进入大、小车画面、系统设置、使操作员重新登录、关闭系统。
[0072] --P13:主提升下降联锁。提示操作员主提升下降联锁的状态及联锁启动的原因。
[0073] --P14:系统故障报警及复位。监控P20到P32共13类43个系统故障报警。当故障报警发起时报警音响。数据库记录报警开始和结束的详细内容。故障解除后可以通过人机交互界面复位系统回到正常工作状态。
[0074] --P15:半自动操作模式设置。在允许采用半自动操作模式的条件下,启动半自动操作模式,系统可以根据操作员输入的位置命令,将装卸料机自动移动到目标位置,再根据操作员对主提升的自动上升、下降命令自动运行主提升。
[0075] --P16:全自动操作模式设置。在允许采用全自动操作模式的条件下,启动全自动操作模式,系统可以根据数据库中载入的自动换料顺序等参数,进行全自动换料操作,操作员根据触摸屏上的提示信息完成简单的确认工作。
[0076] --P17:抓具故障联锁。提示操作员抓具故障联锁的状态及联锁启动的原因。
[0077] --P18:抓具释放联锁。提示操作员抓具释放联锁的状态及联锁启动的原因。
[0078] --P19:大、小车联锁。提示操作员大、小车联锁的状态及联锁启动的原因。
[0079] --P20:运动故障报警。判断运动故障报警的原因,并提示运动故障的详细内容。
[0080] --P21:编码器故障报警。判断编码器故障报警的原因,并提示编码器故障的详细内容。
[0081] --P22:电机驱动故障报警。判断电机驱动故障报警的原因,并提示电机驱动故障的详细内容。
[0082] --P23:超速故障报警。判断超速故障报警的原因,并提示超速故障的详细内容。
[0083] --P24:编码器比较故障报警。判断编码器比较故障报警的原因,并提示编码器报警故障的详细内容。
[0084] --P25:燃料选择开关故障报警。提示燃料选择开关故障的详细内容。
[0085] --P26:手轮故障报警。判断手轮故障报警的原因,并提示手轮故障的详细内容。
[0086] --P27:载荷传感器比较故障报警。提示载荷传感器比较故障的详细内容。
[0087] --P28:控制电源失电报警。提示控制电源失电故障的详细内容。
[0088] --P29:PLC I/O故障报警。提示PLC I/O故障的详细内容。
[0089] --P30:空气压力低故障报警。提示空气压力低故障的详细内容。
[0090] --P31:主提升制动器磨损故障报警。提示主提升制动器磨损故障的详细内容。
[0091] --P32:平衡重失重故障报警。提示平衡重失重故障的详细内容。
[0092] --C1:大车及小车的运行。通过全局脚本和内部程序模块、大车及小车的动画,实现对大车和小车的监控。
[0093] --C2:主提升及电视杆的运行。通过全局脚本和内部程序模块、主提升及电视杆的动画,实现对主提升和电视杆的操作控制,切换到自动运行模式时,可以通过人机交互界面操作主提升自动上升和下降。
[0094] --C3:偏移法换料的选择。通过全局脚本和内部程序模块计算,当系统允许以偏移法换料时,询问操作员是否以偏移法换料。
[0095] --C4:偏移法换料的运行。通过偏移法换料动画和监控信息反映偏移法换料的运行状态,并能终止偏移法换料。
[0096] --C5:紧急停止。当按下急停按钮,紧急停止报警窗口弹出。提示操作员装卸料机的急停状态。
[0097] --W1:系统状态监视。对各个编码器的输出值及比较计算结果、运行环境状态(空气压力值、装卸料机状态、倾翻架状态等)、当前系统设定状态进行监视。
[0098] --W2:大车及小车的状态监视。对大车及小车运行速度及速度状态、当前位置、相关限位开关、相关联锁旁路状态、所在区域、自动操作状态等进行监视。
[0099] --W3:主提升及电视杆的状态监视。对主提升及电视杆的运行速度及速度状态、当前位置、相关限位开关、相关联锁旁路状态、自动操作状态、主提升载荷、抓具状态、负载状态等进行监视。
[0100] --M1:大车及小车的运行动画。为使人机交互界面画面可以直观反映出装卸料机大车、小车的运行位置和状态,绘制与装卸料机实际的可运行区域成1:800的水平方向平面仿真地图(包括倾翻区、运行区、堆芯区),以圆点表示装卸料机抓具所在位置,以250ms的刷新速率,以动画形式实时反映抓具相对运行区域的位置。当进入堆芯区时,启动堆芯地图动画(堆芯地图与P5中的设计保持一致,P5中对堆芯地图的设置及更改在此处同时体现),放大到与实际堆芯大小成1:16的比例,以250ms的刷新速率,以动画形式实时反映抓具相对堆芯区的位置。
[0101] --M2:主提升及电视杆的运行动画。为使人机交互界面画面可以直观反映出装卸料机主提升的运行位置和状态,绘制了与装卸料机成1:400的垂直方向平面仿真图(从编码器上部0位到堆芯全下位),根据实际运行情况,显示倾翻架、组件、套筒、抓具的啮合/释放、电视杆等,以250ms的刷新速率,以动画形式实时反映主提升和电视杆的位置和状态。
[0102] --M3:偏移法换料的运行动画。为使人机交互界面画面可以直观反映出装卸料机偏移法换料时组件的运行位置和状态,绘制了与装卸料机成1:4的水平方向平面仿真图(包括目标位置及其相邻位置,共9个栅格),根据实际运行情况,显示堆芯栅格状态(是否有组件填充)、偏移位置、抓具位置等,以250ms的刷新速率,以动画形式实时反映偏移法换料的运行状态,使操作员可以根据人机交互界面动画直接操作手柄准确无误地完成偏移法换料。
[0103] --D1:数据库管理。数据库保存装卸料机运行过程中对组件操作的工艺参数,堆芯区、运行区、转运区的位置参数,全自动操作的换料顺序参数。当运行中需要调用这些数据时,通过数据库软件与人机交互界面软件的接口查询相关数据后,调入人机交互界面运算或直接处理,这部分数据直接关系到装卸料机运行的准确性、高效性和安全性。数据库还实时记录装卸料机开启人机交互界面后的一切故障报警、旁路激活/取消动作、组件操作等动作时的重要运行数据。操作员还可以开启数据库软件修改数据库、登录windows浏览器导出运行数据记录。考虑到数据库的重要性,对不同操作级别的操作员严格分配了查询和管理数据的权限。
[0104] 本发明的人机交互界面程序通过全局脚本和画面组件内嵌脚本来实现上述功能,设计共包括14个程序模块,各个模块的具体功能如下:
[0105] --通信数据结构的定义模块,该模块完成Profibus总线传输的数据定义及预处理。
[0106] --内部数据结构的定义模块,该模块完成内部数据定义及预处理。
[0107] --系统初始化模块,该模块完成变量及程序初始化工作,包含3个子程序(1个全局程序)。变量初始化包括主程序变量初始化、子程序变量初始化、缺省状态变量初始化。程序初始化包括通信程序初始化、数据库程序初始化、装卸料机设备配置参数读取程序初始化等。
[0108] --操作员登录及权级分配模块,该模块完成对操作员登录口令的判断和权限的划分,根据权级定义操作员可操作的画面和动作。
[0109] --画面自动切换模块,该模块包含13个子程序(1个全局程序需要变量触发),实现根据装卸料机运行状态,自动切换运行画面(大、小车画面、主提升画面、报警提示画面、偏移法换料画面等)。
[0110] --偏移法换料模块,该模块包含17个子程序(5个全局程序需要变量触发),以250ms每次为刷新速率实现偏移法换料数据的实时跟踪及处理,完成对偏移位置的判断和操作路径的监控。
[0111] --大、小车运行模块,该模块包含31个子程序(13个全局程序需要变量触发),以250ms每次为刷新速率实现对大、小车运行数据的实时跟踪及处理,完成对大、小车运行速度、位置、状态、故障的判断和运行路径的监控。
[0112] --主提升运行模块,该模块包含35个子程序(11个全局程序需要变量触发),以250ms每次为刷新速率实现对主提升运行数据的实时跟踪及处理,完成对主提升运行速度、位置、状态、故障的判断和运行路径的监控。
[0113] --电视杆运行模块,该模块包含7个子程序(3个全局程序需要变量触发),以250ms每次为刷新速率实现对电视杆运行数据的实时跟踪及处理,完成对电视杆运行速度、位置、状态、故障的判断和监控。
[0114] --数据库模块,该模块包含128个子程序(120个全局程序需要变量触发),触发式写程序共涉及43个故障报警的开始及结束、10个旁路事件的激活及取消、所有组件动作的记录,7个实时数据库查询子程序。
[0115] --半自动操作模块,该模块包含12个子程序(5个全局程序需要变量触发),完成判断运行状态、目标位置有效性、自动操作条件是否满足、提示操作员正确操作等功能。
[0116] --全自动操作模块,该模块包含10个子程序(7个全局程序需要变量触发),完成判断运行状态、调取输入步数对应的运行参数、自动操作条件是否满足、提示操作员正确操作等功能。
[0117] --画面内嵌函数模块,该模块包含54个子程序(0个全局程序需要变量触发),供画面内空间自由调用。
[0118] --API外部程序接口模块,该模块包含5个子程序(0个全局程序需要变量触发),有相应权限的操作员可进入windows浏览器执行数据库导出操作、换料顺序文件导入操作;进入MS SQL Server管理数据库;进行开关机等。
[0119] 对上述模块子程序中需要变量触发的全局程序(共166个)不区分编程语言,仅对优先级进行划分,共分为5个级别,运用VBS、ANSI-C套用VBA及Transact-SQL对上述功能进行函数编程,共编写函数166个,并设定每个函数的动作标识位。通过全局脚本编辑器编写各个优先级的全局脚本程序,同一级别的项目函数写在相同的全局脚本中调用,为各个级别的优先级设定初始化变量。具体如下:
[0120]
[0121] 程序正常运行情况下,一个或多个项目函数的动作标识位变为1时(为1时表示该函数需要执行),首先触发优先级判断程序,将要执行的动作按级别排序,首先调用高级别的全局脚本,待高级别的脚本执行完后置该级别标识变量为2,触发返回优先级判断程序,调用下一级别的全局脚本,调用的全局脚本可以跨VBS、ANSI-C脚本编辑器执行,实现了对不同语言编辑的程序的按顺序调用。
[0122] 当项目激活(及初始化阶段)和通信断开后重新建立情况下,WinCC将不受任何限制对全部全局脚本进行无序执行,这将打乱程序设定顺序并触发不该此时执行的项目函数,但本发明的实例对所有全局脚本设定了初始化变量(初始值为0,如Init_1),当项目激活时,不论首先执行那个全局脚本,都先对该脚本的初始化变量置1,其他逻辑只有当初始化变量为1时才能执行,及该脚本第一次被执行时不执行其他逻辑,而需要执行的程序将由动作标识位再次触发按顺序执行需要执行的项目函数。当项目取消激活或与PLC通信断开时,将复位所有标识变量或标识位。
[0123] 本实施例所提供的压水堆核电站装卸料机人机交互界面软件实现方法在试验和运行调试阶段的经验表明,在正常操作情况下,该方法有助于提高换料效率,降低操作员失误率,弥补了WinCC软件固有的缺陷,提高了设备的可靠性和安全性,可以很好地完成预期的装卸料操作。
[0124] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。