ProDiag FB是用ProDiag编程语言创建的,例如使用“添加新块”对话框。
要执行此操作,请按以下步骤进行:
1.在“程序块”文件夹中,双击“添加新块”命令。
将打开“添加新块”对话框。
2.点击“功能块”按钮。
3.为新的ProDiag FB输入名称“LiftProDiagFB”。
4.在“语言”中,选择“PRODIAG(包括IDB)”。
5.要添加新ProDiag功能块的更多属性,请单击“附加信息”。
将显示一个包含更多输入字段的区域。
6.输入所需的属性。
7.如果要立即打开ProDiag功能块,请选中“添加新的并打开”复选框。
8.单击“确定”以确认您的输入。
或者,您可以按如下方式创建ProDiag FBs:
•创建全局监督会自动创建ProDiag FB。用户不需要执行操作。
•在当地监督下呼叫FB时。
•在FB的实例数据块处。
•在ProDiag概述表中。
在ProDiag FB中定义监督设置
全局启用标准
全局启用标准允许您控制ProDiag OB中ProDiag FB的调用。全局启用条件必须是全局布尔标记。只有当该标签的信号状态为“TRUE”时,才会调用ProDiag FB。这允许您特别禁用,例如,ProDiag FB的所有监督。
要定义全局启用标准,请按以下步骤进行:
1.右键单击“LiftProDiagFB”ProDiag FB,然后从上下文菜单中选择“属性…”。
此时将打开ProDiag FB的属性对话框。
2.在“常规”选项卡中,单击“监督设置”。
3.选择全局布尔标记“SeqData”.globalEnabler作为全局启用条件。
创建全局监督
在应用程序示例中,全局监督是在全局数据块“SeqData”中的布尔标记处创建的。
操作人员监督
当输送机系统打开时,必须准备好压缩空气供应。
否则,将输出“错误”类别的监督警报。在应用程序示例中,使用“SeqData”.compressedAir标签监测压缩空气。
要创建操作数监督,请按以下步骤进行:
1.打开全局数据库“SeqData”。
2.右键单击“SeqData”.compressedAir标记并运行“添加新监督”。
3.在“监督类型”中,选择“操作数”。
4.如果发生错误,则受监督标签的状态为“False”。
5.设置“延迟时间”,例如0ms。
6.在“条件1”中,选择“SeqData”.plantOn标记。选中条件触发器的“True”复选框。
如有必要,您最多可以再添加三个条件。
7.在“类别”中,选择“错误”。
8.选择您已经创建的ProDiag FB:“LiftProDiagFB”。
您也可以创建一个新的ProDiag FB。
对于监督,在ProDiag FB的实例数据块中自动创建“错误标志”。错误标志指示是否发生了故障。
例如,您可以在程序中查询此错误标志,以便在出现某些故障时关闭机器。
9.在“特定文本字段”中,输入文本“压缩空气不正常”。
职位监督
当输送系统处于静止状态时,监督人员会监控箱子是否从第一个位置移走。如果缺少案例,将输出“警告”类别的监督警报。在应用程序示例中,“SeqData”.newCase标记(case exists sensor)是为此目的进行监督的。
要创建职位监督,请按以下步骤进行:
1.右键单击“SeqData”.newCase标记并运行“添加新监督”。
2.在“监督类型”中,选择“职位”。
3.如果发生错误,则受监督标签的状态为“False”。
4.设置“延迟时间”,例如0ms。
5.输送系统必须处于停止状态。在“条件”中,选择“SeqData”.autoStarted标记(自动启动)和“SeqData“.autoStopped
标签(自动停止)。对于这两个标记,请选中条件触发器的“False”复选框。
此外,必须设置“SeqData”.stateCase[0]标记(case exists state)。选中条件触发器的“True”复选框。
6.在“类别”中,选择“警告”。
7.选择您已经创建的ProDiag FB:“LiftProDiagFB”。
您也可以创建一个新的ProDiag FB。
对于监督,在ProDiag FB的实例数据块中自动创建“错误标志”。错误标志指示是否发生了故障。
例如,您可以在程序中查询此错误标志,以便在出现某些故障时关闭机器。
8.在“特定文本字段”中,输入文本“入口缺少案例”。
创建本地监督
本地监督是在“LiftCmd”功能块的布尔输入参数处创建的。FB控制提升的输出,并在程序中被调用两次。因此,您必须只配置一次监控,并且可以将其用于两次提升。
联锁监督
只有当电梯门关闭时,才能设置电梯输出。联锁监控监控是否存在“提升”运动所需的启用功能或门是否关闭。当调用“LiftCmd”FB时,启用被转移到#interLockAuto FB参数(自动联锁)。
如果未提供启用,将输出“错误”类别的监督警报。在应用程序示例中,为此目的对#interLockAuto FB参数进行监督。
要创建联锁监督,请按以下步骤进行:
1.打开“LiftCmd”FB。
2.右键单击#interLockAuto参数并运行“添加新监督”。
3.在“监督类型”中,选择“联锁”。
4.如果发生错误,则受监督参数的状态为“False”。
5.设置“延迟时间”,例如0ms。
6.必须设置#startLiftUp“执行器”和#autoStarted“条件”(自动启动)。对于这两种情况,请选中条件触发器的“True”复选框。
7.在“类别”中,选择“错误”。
8.在“特定文本字段”中,输入文本“电梯门未关闭”。
行动监督
动作监控监控“提升”运动是否在指定时间内离开了起始位置。如果电梯停止,将输出“错误”类别的监督警报。在应用示例中,为此目的,对#sensorLiftDown FB参数进行监督。
要创建操作监督,请按以下步骤进行:
1.右键单击#sensorLiftDown参数并运行“添加新监督”。
2.在“监督类型”中,选择“行动”。
3.如果发生错误,则受监督参数的状态为“True”。
4.设置“延迟时间”,例如200ms。
5.必须设置#outLiftUp“动作”(提升输出)。选中条件触发器的“True”复选框。
6.在“类别”中,选择“错误”。
7.在“特定文本字段”中,输入文本“Lift has not left lower startposition”。
反应监督
反作用监督监控“提升”运动是否在指定时间内到达终点位置。如果升降机在到达该位置之前停止,将输出“错误”类别的监督警报。在应用示例中,为此目的,对#sensorLiftUp FB参数进行监督。
要创建反应监督,请按以下步骤进行:
1.右键单击#sensorLiftUp参数并运行“添加新监督”。
2.在“监督类型”中,选择“反应”。
3.如果发生错误,则受监督参数的状态为“False”。
4.设置“延迟时间”,例如5000ms。
5.必须设置#outLiftUp“动作”(提升输出)。选中条件触发器的“True”复选框。
6.在“类别”中,选择“错误”。
7.在“特定文本字段”中,输入文本“提升未达到上端位置”。
将ProDiag FB分配给FB的实例数据块
在块的接口中要监督的参数必须通过FB的实例分配给ProDiag FB。要执行此操作,请按以下步骤进行:
1.在项目树中,双击“PLC监控和报警”文件夹。此时将打开监控和报警编辑器。
2.点击“监管>FB监管实例”选项卡,显示所有本地监管的实例数据块。
3.在“ProDiag FB”列中,单击选择字段。
4.在选择对话框中,选择您已经创建的ProDiag FB:“LiftProDiagFB”。您也可以创建一个新的ProDiag FB。
也可以在实例数据块特性中指定ProDiag FB。
要执行此操作,请按以下步骤进行:
1.右键单击“InstMainFB”实例数据块。
2.在上下文菜单中,单击“属性”。
3.在“属性”对话框中,单击“属性”。
4.在“指定ProDiag FB”中,选择“LiftProDiagFB”ProDiag FB。您也可以在这里创建一个新的ProDiag FB。
查询程序中的错误位:
查询ProDiag FB的组错误位
对于每个ProDiag FB,可以在用户程序中查询不同类型的组错误位,例如,在发生某些故障时停止机器。组错误位也可以通过ProDiag FB的“InstLiftProDiagFB”实例数据块访问。
有两种不同类型的组错误位:
•监督类型的组错误位(All、O、I、R、A、P、Merr和Mtxt)
•类别(C1、C2、C3、C4、C5、C6、C7和C8)的组错误位
下图显示了ProDiag IDB中状态标签数据结构中的“All”组错误位及其在用户程序中的使用。
查询监管的错误位
对于每次监督,可以在用户程序中查询错误位,例如,在发生某些故障时停止机器。也可以通过ProDiag FB的“InstLiftProDiagFB”实例数据块访问错误位。
下图显示了操作数监督数据结构中的“Err”错误位及其在用户程序中的使用。
定义监管的多选
您可以通过单个操作员操作在PLC标记表、功能块的接口和全局数据块中创建大量监督。
只考虑布尔标记。
选择全局数据块中的标记,然后从上下文菜单中选择“添加新监督”。
为每个选定的标记创建一个监督。在“属性”检查器窗口中,打开第一个标记的“监督”选项卡。在此选项卡中,您可以分别定义每个监督的设置。
在GRAPH序列器中创建监督
对于GRAPH编程语言,监督已经集成到每一个步骤中。警报是自动生成的。
通过互锁,您可以监控是否可以执行操作。本例监测电梯入口处的门是否关闭,电梯是否堵塞。如果不满足联锁条件,将输出警报。
要输入特定的报警文本,请按以下步骤进行:
1.在单步视图中打开步骤。
2.选择“联锁-(C)-”。
3.打开“检查器”窗口,然后选择“属性”选项卡。
4.在“报警文本”文本字段中,输入所需的报警文本。该文本通过“<步骤特定文本字段>”报警文本字段插入联锁报警。
监督
通过监督,您可以监控整个步骤。此示例监视步骤持续时间。如果超过指定的步骤持续时间,将输出警报,定序器将不会转换到下一步。
要输入特定的报警文本,请按以下步骤进行:
1.在单步视图中打开步骤。
2.选择“监督-(v)-”。
3.打开“检查器”窗口,然后选择“属性”选项卡。
4.在“报警文本”文本字段中,输入所需的报警文本。该文本通过“<步骤特定文本字段>”报警文本字段插入监督报警。
在S7-GRAPH中配置多语言名称
您可以用多种语言配置步骤和转换名称,从而以多种语言在报警、PLC代码视图和GRAPH概述中输出名称。
1.在“LiftSeq”S7-GRAPH FB[FB12]中,选择要编辑的步骤,并在“检查器”窗口中打开“属性”。
2.“文本”选项卡允许您以多种语言分配名称(在项目中启用)。
激活GRAPH定序器的初始值采集
要激活初始值采集,请按以下步骤进行:
1.打开“LiftSeq”GRAPH定序器的属性。
2.在“常规>阻止”中,更新版本。
3.转到“属性”选项卡。
4.检查“初始值获取”。
重置GRAPH FB上的初始值
通过初始值采集,您可以分析触发监督警报的原因。为此,将记录这些操作数的初始值,这些初始值在程序中的受监督操作数之前进行编程。GRAPH FB V5.0允许您在“RESET_CRIT”输入参数的帮助下,在标准分析后将两个静态参数“H_IL_ERR”(联锁)和“H_SV_FLT”(转换)的信号状态重置为FALSE。因此,HMI PLC代码查看器不再显示旧值。当您更改联锁和转换的编程,并且不再需要当时过时的初始值时,这很有用。重新编程不会自动将信号状态重置为FALSE。
要重置两个系统内部静态参数的信号状态,从而重置初始值,请按以下步骤进行:
1.确保GRAPH功能块的版本为5.0。
2.打开“LiftSeq”GRAPH FB,点击块界面,在菜单栏中选择“编辑>接口参数>最大接口参数”。
3.打开“MainFB”FB,右键单击GRAPH FB。
4.从上下文菜单中,选择“更新块调用”。更新后,显示“LiftSeq”GRAPH FB及其最大参数。
5.调用GRAPH函数块时,将用户程序中的“RESET_CRIT”输入参数与布尔标记互连,例如“SeqData.resetCrit”。
设置GRAPH定序器的参数
要在“GRAPH overview”HMI对象上显示GRAPH定序器的程序状态,GRAPH定程器的参数必须在HMI中可见,并可从HMI访问。
要设置此项,请按以下步骤进行:
1.打开“LiftSeq”GRAPH定序器。
2.打开“编辑”菜单。
3.检查“从HMI可见/可访问的内部参数”。
只有当GRAPH定序器在编辑器中打开并且焦点在它上时,才能进行此选择。
定义ProDiag监控设置
在ProDiag监督设置中,您可以定义应用于整个TIA Portal项目中所有监督的设置。您可以在“公共数据”中的项目树中找到ProDiag监督设置。
定义类别
“类别”允许您将发生的故障划分为不同的优先级。类别可以
•作为监控警报的一部分输出,或在HMI设备上的“ProDiag概述”对象中显示为组错误位。
•您可以根据自己的要求进行定制。例如,您可以为每个类别指定一个单独的报警类别。
要转到对话框,请选择“通用数据>监督设置>常规>类别”。默认情况下,有三个类别:“错误”、“警告”和“信息”。您可以创建和启用/禁用另外五个类别。
无法禁用“错误”类别。
定义子类别
子类别允许您更详细地指定监督警报中的信息。
定义监督类型的默认设置
在“监管类型”部分,您可以更改不同监管类型的默认设置。这是定义延迟时间的地方,也是应该对哪个信号状态执行操作数或条件监督的地方。
定义ProDiag报警文本
在“报警文本”部分,您可以定义监控报警的结构。
要创建报警文本,请按以下步骤进行:
1.在“报警文本”选项卡中,选择要为其创建报警文本的所需区域,例如基本监督>标记。
2.使用拖放将所需报警文本字段从“支持的报警文本字段”字段移动到“报警文本”文本框。
您可以随时更改各个文本字段的顺序。
3.如果要删除文本字段,右键单击相应的文本字段,然后从上下文菜单中选择“删除”。
4.为文本字段选择所需的分隔符。
错误消息监督类型示例
对于报告错误并输出状态的块,如果发生错误,您可以在监督警报中输出错误文本。
在以下示例中,“频率”FB检查输入频率并输出错误和以下状态(错误编号):
•16#8001(小数点后32769):输入频率小于5。
•16#8002(十进制32770):输入频率大于10。
在文本列表中,文本被分配给标签的值。对于在发生错误时根据监控警报中的状态输出的错误文本,请按以下步骤进行:
1.在“SeqData”DB中,定义“freqError”标记(数据类型:Bool)和“freqStatus”标记(数字类型:UInt)。
2.将“频率”FB的“错误”和“状态”参数与定义的DB标签互连。
3.对于“freqError”DB标记,配置具有以下属性的监督:
–监督类型:错误消息
–监督标签:“SeqData”.frequeError
–延迟时间:T#0ms
–类别:1:错误
–ProDiag FB:例如LiftProDiagFB
4.在“特定文本字段”中,输入以下相关值:
5.错误消息@4%5X@:@4%t#TextListStatus@
如果发生错误,则从“TextListStatus”错误文本列表中获取错误消息。
6.在“标记1(SD_4)”输入字段中,输入“SeqData”.frequStatus DB标记。
7.在项目树中,选择“PLC1”文件夹,双击“PLC报警文本列表”打开文本列表编辑器。
8.添加一个新的文本列表并命名,例如“TextListStatus”。此名称必须与特定文本字段中的名称相匹配。
9.在“选择”列中,为文本列表选择“小数”设置。
10.在“文本列表条目”、“范围从/范围到”列中,输入“频率”FB中使用的状态(错误号)。在“输入”中,定义报警文本。
审核编辑:汤梓红
-
编程语言
+关注
关注
10文章
1937浏览量
34587 -
机器
+关注
关注
0文章
779浏览量
40682 -
功能块
+关注
关注
0文章
18浏览量
6076
原文标题:博途: 使用ProDiag进行机器和工厂诊断
文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论