一、基础梯形图编程:从入门到实战,避开新手坑
S7-1200梯形图(LD)编程基于TIA Portal(博途)软件,核心是“逻辑清晰+规范操作”,新手无需死记指令,掌握以下要点即可快速上手:
1. 核心前提:软件与变量配置(必做步骤)
① 软件选型:优先使用TIA Portal V16/V17版本,兼容性稳定,支持全中文界面,新建项目时直接添加“S7-1200”设备(如CPU 1214C DC/DC/DC),无需提前配置网络;
② 变量命名:拒绝“M0.0、Q0.0”模糊命名,按“类型+功能”规范命名(如DI_Start_I0_0、DO_MotorRun_Q0_0、DB1_Temp_Float),DB块建议取消“优化的块访问”,方便后期调试与通讯;
③ 程序结构:主程序(OB1)循环执行,复杂逻辑拆分至功能块(FB)/功能(FC),比如电机控制、报警逻辑单独做FB,可重复调用,减少冗余代码。
2. 高频梯形图指令:落地即能用(S7-1200专属适配)
无需掌握所有指令,这6个核心指令覆盖80%基础场景,重点练熟逻辑应用:
① 基础触点与线圈:常开(I0.0)、常闭(I0.1)触点串联/并联,输出线圈(= Q0.0),核心应用:简单启停控制(如按下I0.0启动,I0.1急停,Q0.0输出);
② 定时器(TON/TOF):TON(通电延时)最常用,比如“按下启动按钮3秒后电机运行”,设置时需指定DB块存储定时值,PT端填写延时时间(如T#3S);
③ 计数器(CTU):加计数指令,用于数值统计(如产品计数、动作次数),CU端接触发信号,R端接复位信号,PV端填写计数目标值;
④ 比较指令(CMP):用于数值判断(如温度≥50℃触发报警),支持INT、FLOAT等类型,梯形图中直接拖拽调用,无需手动编写指令码;
⑤ 传送指令(MOV):数据赋值与转换,比如将AI通道采集的数值(INT)传送到DB块的FLOAT变量,适配后续通讯与显示需求;
⑥ 置位/复位(S/R):用于保持输出状态,比如报警触发后置位(S)报警灯,复位按钮按下后复位(R),避免误触发。
3. 经典案例:电机正反转控制(梯形图实操示例)
核心逻辑:正转按钮(I0.0)、反转按钮(I0.1)、急停按钮(I0.2常闭),正转输出(Q0.0)、反转输出(Q0.1),必须加互锁(避免正反转同时导通短路);
编程要点:I0.0常开串联Q0.1常闭(互锁),再串联I0.2常闭,连接Q0.0线圈;I0.1常开串联Q0.0常闭(互锁),串联I0.2常闭,连接Q0.1线圈,同时给Q0.0、Q0.1加自锁回路,确保松开按钮后持续运行。
二、S7-1200高频通讯:2大核心场景+避坑指南
工业现场中S7-1200很少单独工作,通讯是必学技能,重点掌握Modbus RTU和S7通讯(覆盖90%现场场景),核心原则:“参数对齐+细节校验”,80%通讯故障源于参数错配,而非硬件问题。
1. 场景1:Modbus RTU通讯(与仪表、变频器通讯首选)
适用场景:PLC与温度仪表、变频器、触摸屏等设备通讯,采用RS485接口,步骤与避坑要点:
① 硬件准备:CPU自带RS485接口(或扩展CM1241模块),A/B线按极性接线(设备A接PLC A,设备B接PLC B),屏蔽线单端接地,避免干扰;
② 参数配置:双方必须一致——波特率(默认9600)、校验位(N/E/O,默认无校验)、站号(PLC主站站号1,从站设备站号2~247)、寄存器地址(从站手册地址需注意偏移,如手册40001对应PLC中0x0000);
③ 程序编写:调用Modbus RTU主站指令(MB_MASTER),填写从站地址、寄存器地址、数据长度、发送/接收缓冲区(DB块变量),通过“Done”信号判断通讯是否成功;
④ 故障排查:通讯失败先查3点——站号是否匹配、A/B线是否接反、寄存器地址是否偏移,用串口调试助手抓包,查看报文是否正常收发。
2. 场景2:S7通讯(与其他西门子PLC通讯)
适用场景:S7-1200与S7-200 SMART、S7-1500等西门子PLC互联,无需额外协议,步骤简化:
① 网络配置:在TIA Portal“网络视图”中添加所有西门子设备,设置IP地址(同一网段,如192.168.0.1、192.168.0.2);
② 权限设置:CPU属性→“保护”选项卡,勾选“允许远程PUT/GET访问”,关闭防火墙(或放行102端口),否则无法建立连接;
③ 数据交互:调用PUT/GET指令,PUT(主站写数据到从站)、GET(主站读从站数据),填写对方IP、机架号(默认0)、槽号(默认2)、数据地址(如从站DB1.DBW0)。