ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

触摸屏急停报警假报警排查:从PLC逻辑到屏端配置全解析

触摸屏急停报警假报警排查:从PLC逻辑到屏端配置全解析 车间夜班打来电话触摸屏上一直闪“急停开关被按下”的红色报警但是设备明明在正常运转急停按钮也弹起来了电柜里量了急停回路的电压也正常。操作工不敢干活维修工换了一个又一个急停按钮问题依旧。最后折腾到天亮发现不是硬件坏而是程序里一个取反逻辑写反了。这类问题在电气自动化现场非常典型。“急停开关被按下”的报警表面上是触摸屏弹出来一个提示实际背后是一整条信号链路急停按钮的硬件触点、PLC输入端子、PLC程序逻辑、报警变量、触摸屏报警配置任何一环出了问题都会让这个报警变成“假报警”。本文就把这条链路完整拆开讲清楚报警是怎么产生的、为什么没有按下也报警、现场怎么一步步排查以及工程上如何从一开始就避免这类问题。文章适合正在做设备维护的电气工程师、刚入门PLC编程想搞懂报警机制的初学者以及被触摸屏假报警折磨过的现场调试人员。读完你会对“触摸屏报警”这件事有一个完整的框架性认识不再被表面现象带着跑。1. 触摸屏报警“急停开关被按下”是怎么来的先说一个容易被新手误解的地方触摸屏上的报警并不是触摸屏自己检测到急停被按下而是PLC通过程序判断出急停状态之后把结果写到一个报警变量里触摸屏通过通讯读取这个变量的值当值为1的时候才显示报警。也就是说触摸屏只是“翻译官”PLC才是“判断者”。链路可以用下面这张图表示急停按钮触点 → PLC输入点I → PLC程序逻辑 → 内部报警位M → 触摸屏变量 → 屏上报警显示任何一个环节出错都会导致显示结果和实际状态不一致。这是理解所有急停报警问题的总纲。从触摸屏报警的配置方式来看一般有两种位报警PLC内部的一个位比如M0.0作为报警触发源当这个位为1时报警触发为0时报警消失。急停报警绝大多数用这种方式。字报警PLC的一个字比如MW100作为报警字字里的每一位对应一个报警信息。比如MW100的bit0对应急停报警bit1对应门开关报警bit2对应油泵过载报警。这种方式适合报警数量多的设备。不管是哪一种关键点都在于PLC侧的报警位必须准确反映急停的实际状态。那PLC怎么判断急停是否被按下这就涉及到急停接线的“反逻辑”设计。2. PLC程序侧的标准处理方式与“反逻辑”现场急停按钮常见的是自复位型但它的内部触点通常有两种常闭触点NC和常开触点NO。从安全角度考虑急停按钮的PLC检测输入点应该接常闭触点而不是常开触点。原因很简单常闭触点正常情况下是导通的PLC输入点有信号一旦急停被按下触点断开PLC输入点掉信号。如果发生断线、接线松脱、保险丝烧断等故障PLC同样会检测到“无信号”从而判定为急停状态这样故障也能被暴露出来。如果接的是常开触点断线时PLC会以为急停正常安全隐患就大了。因此程序里判断急停是否按下需要对输入点做“取反”// 假设急停接的是常闭触点输入点I0.0 // 正常状态I0.0 1触点闭合 // 急停按下I0.0 0触点断开 IF #急停输入I0_0 FALSE THEN #急停报警位M0_0 : TRUE; // 输入断开判定急停按下报警 ELSE #急停报警位M0_0 : FALSE; // 输入闭合急停正常 END_IF;ST结构化文本语法在不同品牌PLC上略有差异但逻辑思想完全一致。如果习惯用梯形图逻辑也很简单用急停输入常闭点串联一个中间继电器线圈线圈得电就表示急停被按下。这里真正容易踩坑的地方在于很多初学者看到“接常闭点、程序里要取反”之后以为自己理解了实际接线时却可能把常开常闭搞混。尤其当急停按钮是双触点一常开一常闭时哪一个触点给了PLC、哪一个给了安全回路必须对照图纸确认。接反之后正常情况下PLC读到的是“急停被按下”触摸屏自然一上电就报警。还有一种情况容易被忽略急停回路里不止一个急停按钮可能有多个急停按钮串联还串有安全门开关、安全继电器触点、过载保护触点等。PLC程序里如果把“输入断开”全部归因为“急停被按下”那么任何一个串联点位断开报警都会显示急停被按下此时屏幕上的信息就对现场维修造成了误导。3. 触摸屏报警配置位报警、字报警与触发条件搞清楚PLC侧的逻辑后再看触摸屏侧。以昆仑通态、威纶通、西门子精智面板等常用触摸屏为例报警配置的思路是一致的。新建报警时需要配置以下关键信息配置项含义示例触发变量报警数据来源对应PLC地址M0.0 或 MW100变量类型位变量还是字变量位/字触发条件什么状态下报警等于1、等于0、上升沿报警文本屏上显示的内容“急停开关被按下”报警级别优先级影响弹窗和记录紧急/高级/低级保持方式是否需要手动确认保持型/非保持型其中最容易出错的是“触发条件”和“保持方式”。触发条件设置反了是最常见的假报警原因之一。假设PLC侧已经把急停报警位定义为“1报警”触摸屏报警配置里就应该设置“触发条件等于1”。如果不小心把条件设成了“等于0”那么当PLC侧急停正常、报警位为0时触摸屏反而会报警。反过来如果PLC侧逻辑本身就是反的比如输入点接了常开触点还没取反报警位的真实含义就变成“1正常”这时触摸屏无论怎么配置都会对不上。报警保持方式是另一个经常被误解的点。很多触摸屏报警默认是“保持型”的意思是报警触发过一次之后就算触发变量已经恢复为0报警记录仍然会保留在报警列表里需要操作员在触摸屏上手动“确认”或“清除”才会消失。如果你的设备因为误动作报警过一次之后即使问题排除了屏上仍然显示报警这不是程序没处理好而是触摸屏的报警保持机制在起作用。处理办法有两种一是把报警类型配置为非保持型/瞬发型报警变量为0时报警自动消失。适合不需要追溯、只看当前状态的场合。二是在程序中增加“报警复位”逻辑操作员按复位按钮时将报警位复位。适合需要保留报警历史、又允许操作员确认后清除的场合。工程上更推荐第二种同时把报警记录存档到触摸屏的数据缓冲区便于事后追溯。// 复位逻辑示例按下触摸屏HMIM_Reset按钮同时急停已复位 // 急停正常状态#急停输入I0_0 TRUE // 此时如果操作员要求复位报警则清除报警位 IF #HMI_ResetButton TRUE AND #急停输入I0_0 TRUE THEN #急停报警位M0_0 : FALSE; END_IF;这里有一个细节如果急停还在按下状态复位按钮不能把报警清掉否则报警会被“偷偷”屏蔽这是安全隐患。所以复位条件必须包含“急停已经恢复正常输入”。4. 为什么设备没按急停报警却一直显示综合前面几节的分析“假报警”的原因基本可以归为五类。现场排查时按照这个分类去套比乱碰运气要快得多。4.1 接线错误常开当常闭或者双触点接反这是物理层最可能的原因。急停按钮上如果有一个常开和一个常闭触点必须确认给PLC的到底是哪一个。正常情况下PLC输入点应该接常闭触点一旦接成了常开触点正常情况下输入点无信号程序判断为“急停按下”报警常显。排查方法把急停按钮后方的PLC输入线断开用万用表测急停按钮的通断状态。按下急停时测量接线端子通断可以确认是哪一组触点。4.2 PLC程序逻辑取反错误如果接线正确但PLC程序里没有做取反或者取反写反了同样会导致报警位状态相反。特别是修改过程序、复制过别人程序、或者把输入点做了“软件取反”之后很容易出问题。排查方法编程软件在线监控急停输入点和报警位的实时值。在急停未按下的情况下如果输入点I0.0显示为1报警位M0.0也应该为0如果M0.0为1说明程序逻辑反转了。4.3 触摸屏报警触发条件设置错误PLC报警位是对的但触摸屏报警配置把触发条件设反了比如PLC设计1报警触摸屏里却写了“等于0时报警”。排查方法在触摸屏“报警变量测试”功能里手动给变量赋予测试值看报警是否按预期触发。多数触摸屏软件支持变量模拟/强制功能。4.4 报警保持型配置导致报警未消失如果PLC侧报警位已经恢复正常但报警记录还挂在屏上大概率是报警保持方式设置成“保持型”需要手动确认。很多设备初次调试时操作员不知道报警列表里的“确认”按钮怎么用就会一直觉得报警“消不掉”。4.5 多个急停/安全触点串联报警定位不准确急停回路串了多个急停按钮、安全门开关、安全继电器触点任何一个断开都会让PLC输入点掉信号。如果程序只判断输入点是否断开却把所有断开都归因为“急停被按下”就会造成误报警信息。比如安全门被打开屏上报的却是急停被按下现场人员到处找急停其实问题在安全门。这种场景下更合理的做法是把每个急停按钮分别接到独立的PLC输入点程序里针对每一个输入点分别生成独立的报警位。如果硬件成本不允许至少要在报警文本里写清楚“急停/安全回路断开”而不是笼统地写“急停开关被按下”。5. 现场排查路径从上到下还是从下到上排查“急停开关被按下”报警推荐用“先软后硬、先变量后端子”的顺序。理由很简单软件侧的判断不需要动电柜检查速度快可以做进一步判断硬件侧的检查需要断电、拆线能晚做就晚做。具体步骤如下5.1 观察报警状态判断报警是否保持先看报警列表里这条报警是“当前报警”还是“历史报警”。如果是历史报警且在报警列表里一直保留很可能只是保持型报警没有确认PLC侧可能已经正常了。5.2 在线监控PLC程序变量用编程软件连接PLC在线监控急停输入点比如I0.0和报警位比如M0.0的实时状态。这里会出现四种情况对应的判断方向完全不同输入点I0.0状态报警位M0.0状态判断1触点闭合0无报警正常问题应该在触摸屏侧1触点闭合1有报警PLC程序逻辑错误取反写反0触点断开1有报警输入回路确实断了查急停回路硬件0触点断开0无报警程序反转但报警由其他变量触发大部分情况下通过这一步就能把问题缩小到“PLC程序”和“外部接线”二选一。5.3 用强制功能隔离软硬件问题如果I0.0显示为0怀疑是外部硬件问题可以用编程软件的强制功能把I0.0强制为1。此时观察报警位是否恢复为0。强制后报警位变成0说明PLC程序和触摸屏都正常问题在外部急停回路。强制后报警位还是1说明程序逻辑本身就有问题跟外部接线无关。需要特别提醒强制功能只能在停机或确认安全的条件下使用强制前必须确保设备安全。尤其急停涉及安全功能不要在生产运行中去强制急停输入点否则可能造成安全事故。5.4 检查急停回路硬件确认是外部回路问题后断电测量急停按钮触点通断、检查端子是否松动、保险丝是否烧断、安全继电器是否动作、急停回路是否被其他触点串联断开。这一步用万用表通断档就可以。5.5 检查触摸屏报警配置如果PLC侧变量完全正常报警位状态正确但触摸屏仍然报警或报警不消失直接打开触摸屏工程文件检查报警配置里的触发条件、变量地址、保持方式三项。值得留意的是触摸屏报警变量地址和PLC地址的映射必须严格一致。比如PLC里报警位是M0.0触摸屏里如果误填成M0.1或者把M0.0填成了MW0就会读到完全不同的数据。之前有网友反馈过“博途字符串里面的值已经为0但触摸屏还是显示原来的字符串”的案例背后的原因就是PLC侧数据已经改变但触摸屏通讯迟缓或地址映射错误导致屏上没有同步更新急停报警的假报警也存在同样的可能性。6. 完整工程示例博途PLC 通用触摸屏实现急停报警下面用一个最小工程示例把整体流程串起来。PLC以西门子S7-1200/1500的博途环境为例触摸屏以通用位报警配置说明品牌可以是昆仑通态、威纶通或西门子面板原理都一样。6.1 硬件接线急停按钮使用常闭触点一端接PLC输入模块的公共端另一端接到输入点I0.0。这个接法的特点是只要急停回路正常闭合I0.0就为1急停被按下、急停回路断线、急停端子松脱、安全继电器断开时I0.0都为0。6.2 PLC程序在OB1中新建两个变量一个对应物理输入I0.0一个作为报警位变量。用ST实现// 变量声明可在PLC变量表中建立 #EMO_Input : Bool; // 对应I0.0急停常闭输入 #EMO_Alarm : Bool; // 报警位TRUE急停被按下 #HMI_Reset : Bool; // 触摸屏上的复位按钮变量 // 逻辑1急停检测 IF #EMO_Input FALSE THEN #EMO_Alarm : TRUE; ELSE #EMO_Alarm : FALSE; END_IF; // 逻辑2报警复位急停恢复正常后才允许复位 IF #HMI_Reset TRUE AND #EMO_Input TRUE THEN #EMO_Alarm : FALSE; END_IF;注意这里“逻辑2”和“逻辑1”在同一个扫描周期内可能会有变量竞争问题。更严谨的写法是把复位条件放在急停检测之前或者用置位/复位指令配合临时变量。实际工程中多用下面的写法// 先处理复位急停正常且收到复位指令时清除报警记忆 IF #HMI_Reset TRUE AND #EMO_Input TRUE THEN #EMO_Alarm : FALSE; END_IF; // 再处理急停检测如果输入断开无条件报警 IF #EMO_Input FALSE THEN #EMO_Alarm : TRUE; END_IF;这样即使复位指令和急停信号同时成立也能避免复位逻辑把真实的报警误清除。6.3 触摸屏报警配置打开触摸屏组态软件新建报警组配置如下配置项值说明报警类型位报警按位触发触发变量地址%M0.0 或 M0.0必须与PLC报警位地址一致触发条件等于1ONPLC侧定义1报警报警文本急停开关被按下可换行建议加车间编号报警级别紧急保证弹窗优先级最高保持方式保持型手动确认后消失这里的地址格式“%M0.0”是一种常见写法不同触摸屏品牌地址格式不同昆仑通态用“M0.0”或者“设备地址0.0”的写法威纶通用“M0.0”西门子面板用“M0.0”或“DB地址”方式。关键是PLC侧变量地址和触摸屏侧地址指向同一个数据。6.4 触摸屏画面设计画面上放两个元素报警条/报警窗口、复位按钮。复位按钮的“操作”属性设置为“置位PLC变量”。这里存在一个容易搞错的细节触摸屏按钮按下时PLC只读到一次脉冲如果按钮按下时间长可能多次触发复位。通常用上升沿或者脉冲输出模式或者用触摸屏的“交替”模式配合程序判断避免一个按钮按下去反复复位。7. 如何做报警验证确认报警链路真正可靠写完了硬件和程序不能直接交付现场必须做完整的报警链路验证。下面是一套比较实用的验证步骤。第一步PLC编程软件在线监控EMO_Input和EMO_Alarm两个变量。急停不按确认EMO_InputTRUEEMO_AlarmFALSE。第二步按下急停观察EMO_Input变为FALSEEMO_Alarm变为TRUE。此时触摸屏上应立即弹出“急停开关被按下”报警。第三步保持急停按下按触摸屏复位按钮。正确结果是报警不消失因为复位条件中EMO_Input必须为TRUE此时不满足。这能验证复位逻辑不会屏蔽真实急停。第四步弹起急停EMO_Input恢复为TRUEEMO_Alarm恢复为FALSE。对保持型报警报警条可能仍然显示但报警状态会从“当前/触发”变成“历史/确认”。在触摸屏报警列表里做一次“确认”操作报警即可清除。第五步断开急停按钮到PLC的接线模拟断线故障。如果接线是正确的常闭逻辑PLC会检测到输入断开并报警这就是常闭触点应有的“断线保护”效果。如果第五步没有报警说明急停回路接的是常开触点或者程序逻辑反转必须整改。8. 常见问题与排查对照表问题现象可能原因排查方式解决方案设备一上电就报急停报警急停输入接成常开点或程序取反逻辑错误在线查看I点状态未按下急停时I点应为1改正接线或修改取反逻辑急停按下报警弹起后报警自动消失但历史里有记录触摸屏报警配置为保持型在报警列表手动确认测试保持型报警需手动确认可增加复位按钮急停弹起后报警一直不消失PLC报警位已经为0触摸屏保持型报警未确认或变量地址不对监控触摸屏变量地址是否与PLC一致手动确认或修改报警保持方式按复位按钮报警反复出现复位条件未包含“急停已恢复”检查程序复位逻辑复位时同时判断EMO_InputTRUE安全门打开屏上报急停报警多个安全触点串联程序无法区分具体点位检查急停回路线路每个急停/门开关独立接PLC输入点分别报警PLC中变量值正确触摸屏显示不更新通讯延迟、地址映射错误、触摸屏缓存检查通讯诊断、刷新变量表重启触摸屏通讯修正地址检查通讯参数强制I点后报警位不变程序逻辑本身有故障在线列表查看报警位被哪个指令赋值修正为位逻辑避免多个线圈重复赋值这里单独提一下“多个线圈重复赋值”的问题。很多PLC程序出现“报警位被强制赋值后还是不变”的现象是因为程序里有多段逻辑都对同一个M点做了赋值比如一段逻辑写M0.0TRUE另一段逻辑写M0.0FALSE后执行的逻辑把前面的结果覆盖了。这种编程习惯是报警假触发和报警无法正常复位的隐藏地雷应该坚决避免。9. 工程最佳实践从一开始就设计好急停报警现场被假报警折腾过几次之后你会发现很多问题不是技术难度高而是在设计阶段没有把规范定好。下面几条经验建议收藏备用。第一硬件上坚持“常闭点进PLC”。急停按钮的PLC输入必须接常闭触点安全继电器、安全门开关、过载触点如果必须串入回路要明确它们在断电状态下的逻辑并确保断线能够被PLC检测到。第二程序上坚持“每一位报警只在一处赋值”。急停报警位只在急停检测逻辑中赋值一次其他逻辑不要重复写。如果需要多个条件参与报警判断用中间变量串联判断最后统一输出。第三报警文本要具体不要笼统。写“急停开关被按下”就意味着只有急停按钮能触发这个报警。如果回路里还有其他安全触点要么把它们独立成不同的报警点要么把文本改成“急停/安全回路断开”。报警文本的价值在于帮助现场人员快速定位问题如果信息本身是错的再好的排查能力也白搭。第四报警变量命名要有规范。建议统一命名为“EMO_Stop_Alarm”“ESD_Alarm”“Door_Open_Alarm”这类能直接反映含义的变量名同时把报警变量集中放到PLC变量表或DB块里方便触摸屏统一引用。不要用M0.0、M0.1这种裸地址在生产项目里到处传否则维护半年后的程序没人知道M0.0到底代表什么。第五报警要多级分层。急停报警属于安全级报警它的弹窗优先级和颜色、声音都要和普通故障报警明显区分。同时报警必须记录触发时间和恢复时间方便日后追溯这个可以通过触摸屏的报警记录功能和PLC的实时时钟配合实现。第六如果要体现更严谨的安全设计应当考虑硬件安全回路。急停按钮常闭触点优先接入安全继电器或安全PLC而不是直接进普通PLC输入点。普通PLC程序对安全功能的保护能力有限因为一旦程序跑飞、通讯中断、CPU故障单纯依赖PLC的软件逻辑并不完全可靠。工程上更稳妥的方案是急停按钮的常闭触点接安全继电器安全继电器的输出同时控制主接触器电源和普通PLC的输入点。这样即使PLC程序异常硬件回路也能切断设备动力这才是“安全”二字的真正含义。10. 总结与后续学习方向“触摸屏报警急停开关被按下”这个话题看起来很小实际上把电气自动化里的PLC编程、触摸屏组态、硬件接线、现场排错几个核心模块全串起来了。把这一条报警链路搞透再去处理其他报警如油泵过载、气压不足、门未关好时就是同一个套路先理清物理信号到PLC变量的路径再理清PLC变量到触摸屏显示的逻辑最后按“变量状态对不对、屏上配置对不对、硬件接线对不对”三层去排查。建议你下一步可以做两件事一是打开手边任意一个正在维护的设备程序找到急停报警对应的输入点和报警变量结合图纸完整梳理一遍链路看看是否存在本文提到的隐患二是把触摸屏报警的“保持型/非保持型”配置和“复位按钮”逻辑用工程示例跑通一次这部分掌握了设备交付后操作工就不会因为一条消不掉的报警频繁喊你下班回来处理。现场看似玄学的报警问题最后几乎都能在“接线、程序、屏上变量”里找到答案。每次排查完把现象和原因记下来你的设备故障库会越来越值钱。
返回列表