尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

继电器电路图转PLC梯形图全指南:从电气图到GX Works2实战

发布时间:2026/9/19 18:21:09

资讯中心
01
ARTICLE

继电器电路图转PLC梯形图全指南:从电气图到GX Works2实战

继电器电路图转PLC梯形图全指南:从电气图到GX Works2实战
上个月帮朋友改造一条老产线控制柜打开一看满眼都是中间继电器、时间继电器、接触器线号密密麻麻。甲方丢过来一句话改成PLC控制原来继电器能不动就不动。这种活儿接过几次的都懂最麻烦的不是接线而是怎么把手上的电气图变成能跑的PLC梯形图。那段时间刚好也在整理三菱GX Works2的案例这套转换方法在朋友圈里被转了不少次今天干脆把它完整写出来。适合谁看呢一是刚接触PLC编程、还在用“照抄继电器图”思路写程序的人二是厂里设备维护人员经常要面对老图纸做技改三是做项目方案的人想快速评估改造成本和控制逻辑。核心就一句话把电气图里的回路关系一个元件一个元件地映射成PLC的软元件再按扫描执行的方式重新组织成梯形图。1. 转换前的准备工作把电气图拆成PLC认识的“零件”很多新手拿到电气图第一反应就是找梯形图模板恨不得马上开始画。其实转换这件事七分在准备工作三分在画。你连图纸里的触点、线圈、联锁关系都没理清楚硬翻译出来的程序只能叫“长得像梯形图的继电器图”跑起来十有八九要改。1.1 电气图元件与PLC软元件的对应关系电气图里最常见的就是按钮、旋钮、行程开关、中间继电器、时间继电器、接触器线圈、指示灯。到了PLC里全部要映射成软元件按钮、旋钮、行程开关、热继电器触点、压力开关这类现场信号通常接PLC输入端对应输入继电器三菱是X西门子是I。接触器线圈、电磁阀、信号灯、电铃这类执行元件接PLC输出端对应输出继电器三菱是Y西门子是Q。中间继电器的作用是“逻辑中转”对应PLC内部的辅助继电器三菱是M西门子是M。时间继电器对应PLC的定时器三菱是T西门子是T。老图纸里如果有计数器对应PLC计数器三菱是C西门子是C。这张对应表不难但真正动手时容易犯一个错把电气图里的常开常闭直接按原样搬到梯形图。比如电气图里热继电器常闭触点串在控制回路中有人直接把X2的常开触点串进去结果一复位热继就误动作。为什么因为外部常闭触点接到PLC后正常状态下输入点是“有信号”的梯图里要用常开触点去读这个“有信号”的状态逻辑才成立。1.2 I/O分配表怎么列才不乱画梯形图之前先做一张完整的I/O分配表这是整个转换工作的地基。别嫌麻烦我见过太多人跳过这步程序写了一半才发现输入点不够或者把备用点插在中间最后接线图纸和程序对不上。列I/O表时我的习惯是分六列元件名称、电气符号、PLC地址、信号类型常开/常闭、柜内端子号、备注。顺序按控制柜端子排的物理位置走别按程序逻辑走这样现场查线方便。比如输入元件名称电气符号PLC地址信号类型柜内端子备注启动按钮SB1X0常开1绿色带灯停止按钮SB2X1常闭2红色热继电器FR1X2常闭3主机过载选择开关SA1X3常开4自动/手动输出侧也类似元件名称电气符号PLC地址负载类型柜内端子备注主接触器KM1Y0交流220V线圈11带阻容吸收星形接触器KM3Y1交流220V线圈12机械互锁角形接触器KM2Y2交流220V线圈13机械互锁运行指示灯HL1Y3LED 24V14面板指示分配地址的时候留出备用点别卡得太死。三菱FX系列一般输入从X0开始输出从Y0开始中间不要跳太多空地址但控制柜预留的备用端子要提前规划。1.3 从电气图里提炼控制逻辑块电气图的主回路简单大电流走接触器主触点、热继电器、电动机。真正复杂的是控制回路你需要把控制回路拆成若干个“逻辑块”。一个逻辑块通常对应一个线圈或一组联锁关系比如KM1线圈由哪些触点串联、并联KT1延时触点在哪个分支KM2和KM3怎么互锁。拆的时候先找线圈再沿着线圈左边的回路往回推。把“串联”理解成逻辑与AND“并联”理解成逻辑或OR辅助触点就是反馈信号。比如一个常见的电机启停回路KM1 (SB1 并联 KM1辅助触点) 串联 SB2常闭 串联 FR常闭。写成布尔式就是KM1 (SB1 OR KM1) AND NOT SB2 AND NOT FR这个式子本身就是梯形图的雏形。你把SB1换成X0KM1换成Y0SB2换成X1常闭触点FR换成X2常闭触点一个标准自锁回路就出来了。所以转换电气图说白了就是做一道“布尔代数翻译题”。不要试图一次翻译完整张图按逻辑块一个一个来最后再拼装。2. 核心转换技巧把最常见的继电器回路“翻译”成梯形图电气图里的经典回路翻来覆去就那几样自锁、互锁、延时、顺序启动、循环控制。这些回路在PLC里都有非常成熟的对应写法掌握以后大部分设备图纸都能快速转换。2.1 自锁回路启动按钮和接触器辅助触点的关系自锁是电机控制里出现频率最高的回路。电气图里启动按钮并联在接触器常开辅助触点两端停止按钮串联在回路中。按下启动按钮接触器线圈得电辅助触点闭合松开按钮后由辅助触点维持线圈供电这就是“自锁”。梯形图对应写法是三菱风格的X0 X1 X2 --| |------|/|------|/|------( Y0 ) | | -------| |-------- Y0自锁触点读法是X0按下或者Y0已经输出同时X1、X2都满足Y0就保持。这里有几个地方要特别注意。第一停止按钮X1在梯形图里大概率用常闭触点但前提是外部停止按钮确实接的是常闭触点如果你把停止按钮接成常开输入梯形图就得反过来。第二热继电器X2也是同理正常状态是常闭故障时断开梯形图用常开触点读它的闭合状态。2.2 互锁回路正反转、星三角里的“你死我活”电气图中正反转控制会在两个接触器的线圈回路里互相串入对方的常闭辅助触点。比如KM1线圈回路串KM2常闭KM2线圈回路串KM1常闭这叫电气互锁。这样万一两个接触器同时得电主电路就会相间短路炸开关都有可能。到了PLC里互锁要做两道。一道在梯形图里用Y0的常闭触点串到Y1回路用Y1的常闭触点串到Y0回路另一道在外部主回路接触器本身还要装机械互锁联锁杆。为什么PLC里有互锁还不够因为PLC输出继电器断开时接触器线圈断电但触点从闭合到断开有电弧和释放时间大概几十毫秒。如果程序里Y0刚断开立刻让Y1得电外部接触器可能还没来得及完全断开机械联锁才是最后一道保护。梯形图互锁的写法X0 X1 X2 Y1 --| |------|/|------|/|------|/|------( Y0 ) X3 X1 X2 Y0 --| |------|/|------|/|------|/|------( Y1 )2.3 时间继电器转换通电延时、断电延时怎么处理电气图里的时间继电器主要有两种通电延时和断电延时。通电延时好办PLC定时器本身就是通电延时的。三菱定时器T0K值是延时时间单位取决于定时器编号一般T0-T199是100msT200-T245是10ms。电气图里“KT延时闭合触点”就对应梯形图里T0常开触点“KT延时断开触点”对应T0常闭触点。断电延时比较麻烦PLC标准定时器没有“线圈断电后开始计时”的功能。遇到这种就要自己做逻辑。思路是这样的用一个中间继电器M0记录原回路是否有电当M0从ON变OFF时启动定时器定时时间到后置位一个标志用这个标志去控制后面的回路。比如原来断电延时5秒后断开某个阀门就需要一个“下降沿触发”的定时逻辑。X5 --| |-----------( M0 ) M0 T1 --|/|------| |------( T1 K50 ) M0 T1 --| |------|/|------( Y10 )上面这段表达的是M0有电时Y10直接输出M0断开后T1开始计时5秒内Y10还保持5秒后T1常闭断开Y10断电。这种“等价转换”思路比死记指令重要。2.4 老式顺序控制用中间继电器还是用状态机有些老图纸是纯继电器顺序控制比如多台电机按时间顺序启动或者小车自动往复。这种图纸里全是中间继电器互锁看起来像“电路迷宫”。直接翻译成梯形图不是不行但程序会又臭又长后期改一个顺序点得翻半天。我的建议是遇到这种顺序逻辑别急着翻译先用“步”的概念重新梳理一遍。每个步对应一组输出步与步之间通过转换条件连接。三菱有步进梯形图指令STL专门干这个西门子博途里可以用GRAPH语言或自己写状态机SCL。你把继电器迷宫改成顺序功能图再生成STL或梯形图逻辑清晰很多调试的时候也能直接看到当前在哪一步。3. 实操案例星三角降压启动从电路图到梯形图纸上谈兵没意思直接拿“星三角降压启动”这个全厂通用案例走一遍完整流程。这个案例在热词里反复出现因为太经典了主回路有三台接触器控制回路有时间继电器和互锁转换过程中几乎每个坑都会踩一遍。3.1 星三角降压启动的电气图动作流程星三角降压启动用于较大功率电机启动时定子绕组接成星形电压降低启动电流小延时几秒后切换成三角形电机全压运行。主回路涉及三个接触器主接触器KM1星形接触器KM3角形接触器KM2。启动时KM1和KM3吸合电机星形启动延时T后KM3断开KM2吸合电机转三角形运行。停止时KM1断开KM2、KM3都断开。保护由热继电器FR完成。KM2和KM3必须互锁否则星形和角形同时吸合就是相间短路。3.2 I/O分配与程序逻辑拆解沿用前面那张表输入输出如下地址元件说明X0SB1启动按钮X1SB2停止按钮X2FR热继电器常闭Y0KM1主接触器Y1KM3星形接触器Y2KM2角形接触器动作流程拆成四步点击X0Y0和Y1同时得电电机星形启动。同时启动定时器T0延时设定为5秒K50。5秒到T0动作先断开Y1再延时0.5秒左右闭合Y2防止切换瞬间短路。X1或X2断开时Y0、Y1、Y2全部复位。第三步加0.5秒延时是很多初学者忽略的。电气图里时间继电器只有一个“星三角转换时间”但直接让Y1断开、Y2闭合万一KM3释放慢马上会有弧光短路风险。所以在程序里加一个“换接延时”T1T0延时5秒后先断Y1T1延时0.5秒后再合Y2。3.3 在三菱GX Works2中写出程序并转换用三菱GX Works2新建一个FX系列工程语言选择“梯形图”然后直接画或者用指令表输入。我个人习惯先写指令表因为键盘录入速度快再一键转换梯形图。指令表内容是这样的0 LD X0 1 OR Y0 2 ANI X1 3 ANI X2 4 OUT Y0 5 LD Y0 6 ANI Y2 7 OUT Y1 8 OUT T0 K50 11 LD T0 12 ANI Y1 13 OUT T1 K5 16 LD T1 17 ANI Y1 18 OUT Y2 19 END在GX Works2的菜单里选择“编辑”→“指令列表输入”把上面内容粘进去点“变换”按钮梯形图视图就自动生成了。这就是热词里“GX Works2怎么把语句表快速转为梯形图”的操作指令表输入然后变换根本不用一个触点一个触点去拉线。再解释一下指令含义LD是取常开触点开始一段逻辑OR是并联触点ANI是串联常闭OUT是输出线圈END是程序结束。上面的程序里5到7行是Y0得电后Y1才能输出同时Y2常闭串进去保证Y2没输出时才可以星形启动第8行到第10行是启动定时器T0第11到13行是T0延时到后在Y1断开的条件下启动短延时T1第16到18行是T1延时到后输出Y2同样串了Y1常闭作为程序互锁。3.4 仿真调试要点写完程序别急着上柜子先在GX Works2里用内置仿真器跑一遍。进入“调试”→“开始/停止模拟”然后把X0置ON观察Y0、Y1、T0、T1、Y2的变化时序。重点看几个点按下X0后Y0和Y1是否同时为ON。T0延时到之后Y1是否先变为OFF。T1计时结束后Y2是否为ON而Y1没有重新ON。按下X1或X2所有输出是否立刻复位。仿真没问题再下载到PLC带小功率电机测试。带负载时再看接触器切换时有没有异常响声用钳形表测切换瞬间电流变化。我遇到过仿真全部正常但实际切换时星角接触器之间还是打火的情况后来发现是T1延时设太短0.5秒改到1秒才解决。这种问题仿真看不出来必须现场调。4. 复杂场景进阶当电气图多到继电器装不下不如换思路走通讯前面讲了怎么把继电器图纸翻译成梯形图但还有一种情况图纸里的控制对象太多比如热词里提到的“一个PLC控制32台变频器”你不可能画32个继电器启停回路真画出来柜子体积翻一倍接线工人看到都想辞职。这时候就要跳出“继电器翻译思维”改用通讯控制。4.1 为什么变频器控制不适合硬接线堆继电器变频器本身有控制端子可以接启停信号、多段速信号和故障输出但一般只有几个点正转、反转、复位、公共端、多段速1、2、3。32台变频器如果全靠I/O控制按每台4个输入点算就要128个点PLC本体点数根本不够加扩展模块也是一笔不小的成本更别说线槽里几百根控制线。通讯控制的优势就出来了每台变频器只要两根RS485通讯线A/B-手拉手串起来或者西门子PLC走Modbus总线一根双绞线搞定全部控制。PLC只需要发Modbus报文写频率、写启停命令、读运行状态、读故障代码。副作用是控制逻辑从“看触点”变成“看报文”但梯形图依然能干这活儿。4.2 用梯形图搭建Modbus轮询程序的框架以西门子S7-1200和变频器Modbus通讯为例博途里用MB_COMM_LOAD和MB_MASTER这两个指令或者用支持Modbus的库函数。核心就是一个轮询状态机PLC循环读取每台变频器的状态再根据HMI或现场按钮的启停命令逐台写入控制字和频率。梯形图写法适合做轮询的外层框架。用一个整数变量做“当前从站指针”比如VD100每次扫描周期加1循环0到31。每个循环段里根据VD100的值分别给每台变频器发送对应的MB_MASTER请求。这个逻辑如果用梯形图画32个跳转块会占很多屏幕但可读性还行而且不容易出错。再往里写用SCL封装数据解析更好。热词里有人问“西门子PLC与32台变频器Modbus通讯控制是否可以”答案是肯定的但要注意轮询周期。假设每台变频器请求需要20ms32台全部轮询一遍就是640ms这是最快情况。如果波特率只有9600报文再长一点轮询周期可能到2秒以上。这对泵类、风机类负载基本够用但如果32台设备需要严格的同步启动Modbus轮询就吃力了得多分几路通讯口或换Profinet、EtherCAT这类实时总线。4.3 梯形图、SCL/ST还是博途图形化怎么选很多从继电器转过来的老电工刚开始碰SCL就头大说不如梯形图直观。我的态度是启停、互锁、急停、故障汇总这些“硬逻辑”继续用梯形图维护的人看着舒服但数据批量处理、浮点运算、32台变频器的报文拼包解析、pid计算尽量用SCL或ST因为用梯形图算浮点简直是一场灾难。博途里允许一个程序块里混合使用LAD和SCL前提是同一个块内不能换语言但你可以把梯形图和SCL分到不同的FC/FB里互相调用。比如写一个FB100专门处理Modbus轮询内部用SCL循环再写一个FC10处理启停联锁用梯形图。最后在OB1里先调用FC10再调用FB100。这样既有梯形图的可读性又有高级语言的效率。顺便提一句“CODESYS梯形图导出XML”这类功能本质上是把图形化程序序列化成标准格式来做版本管理和跨工具转换。我的建议是核心代码尽量用文本语言ST保存梯形图能导出XML是好事但别指望不同品牌PLC之间无缝转移。PLC不是写一次到处跑的Java换平台基本要重写。5. 常见问题与排查技巧实录转换过程看着简单实际操作起来问题一堆。下面几个坑是我这几年改设备时踩过的几乎每个项目都会遇到其中一两个。5.1 按下启动没反应先查输入信号方向程序转好了满怀信心通电按下启动按钮接触器纹丝不动。这时候先别怀疑程序按顺序查先看PLC上的输入指示灯启动按钮对应的X灯亮了没有。如果按下按钮灯不亮说明接线或公共端有问题。灯亮了但程序不动作再看停止按钮对应的输入点是不是一直亮着。电气图里停止按钮是常闭串在控制回路里一旦按下就断开回路。但转到PLC时如果外部停止按钮接常闭点到输入端那么正常状态PLC输入点一直是ON梯形图里就必须用常开触点去读这个ON状态如果你把梯形图的停止触点画成常闭启动瞬间就被它断掉了程序永远没输出。这就是“输入逻辑取反”的坑。反过来说如果你外部把停止按钮接成常开输入按下去才给信号那梯形图里就要用常闭触点。总而言之先确认外部接线形式再决定梯形图用常开还是常闭别想当然。5.2 星三角切换时接触器“打架”程序互锁和机械互锁都不能省前面说过程序互锁解决的是PLC输出层面的逻辑互斥机械互锁解决的是接触器触点的物理互斥。实际调试时经常发现程序里已经串了Y1常闭到Y2回路但星三角切换瞬间还是会有接触器振动异响甚至偶尔跳闸。十有八九是接触器释放时间太长程序里Y1断开后马上给Y2输出两个触点瞬间都处于半闭合状态导致瞬间相间短路。解决办法是在梯形图里增加换接延时别让Y2在Y1断开后立即输出至少留出300ms以上。同时检查接触器机械联锁有没有装到位。另外主回路里如果接触器容量大还要考虑阻容吸收或压敏电阻减少电弧对PLC输出点的干扰。这些不是梯形图能解决的但调试时程序、主回路、机械结构要一起看。5.3 双线圈输出和扫描周期的“时间差”问题电气图里一个接触器线圈的回路可能只有一条但到了PLC里有些人图省事同一个Y地址在程序里写了两次输出比如前面某段逻辑里OUT Y0后面又OUT Y0。PLC扫描是从上到下执行同一个输出点后写的会覆盖先写的这就导致前一段逻辑看起来正常实际却因为后一段条件不满足被强制复位了。正确的做法是同一个物理输出点Y在程序中只出现一次输出线圈其它地方需要参与逻辑时用它的常开常闭触点读就行。如果逻辑太分散先用中间变量M0、M1分别表示各路条件最后统一做一次“汇总输出”M0 M1 M5 --| |------|/|------| |------( Y0 )扫描周期还会影响定时器的动作感觉。三菱FX系列扫描周期一般几毫秒到几十毫秒定时器精度足够但如果你在同一个扫描周期里既用T0常开触点去断开Y1又去启动T1要注意T0触点状态变化的顺序。靠后扫描的程序段读到的T0是新的状态靠前的可能还是旧状态。分析现场怪故障时带着“扫描周期”这个概念去想很多问题就通了。5.4 GX Works2等软件的调试技巧用GX Works2做模拟调试时推荐把“软元件监视”窗口分成X、Y、M、T四组同时打开时序图窗口一边强制输入一边观察时序变化。尤其是定时器超过既定时间没有动作先看它的“当前值”是不是在变。如果当前值一直不动多半是定时器线圈前面的条件不满足或者K值设成了0。在线监控时我习惯把每个关键输出线圈和定时器触点的“ON/OFF状态”截图保存下来作为调试记录。改程序之前保存一版改完之后对比这样能避免“越改越乱”。另外使用强制功能时小心一点调试完必须全部取消强制。曾经有人调试完忘了取消X3的强制ON第二天操作工按启动没反应查了一上午才发现是仿真遗留的强制信号。最后再分享一个我自己的小习惯转换电气图时永远先在纸上画一遍I/O分配表和逻辑块草图哪怕再简单的回路也要走一遍这个流程。吃透图纸再动手比在软件里反复拆了改、改了拆快得多。这个习惯帮我避开了无数隐藏雷区也希望能帮你少走几次弯路。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。