4、PLC编程基础:梯形图(LAD)与指令表(STL)的基本概念、编程软件(如TIA Portal)的使用
说到PLC编程,梯形图和指令表是绕不开的两个老朋友。我刚开始接触PLC那会儿,看到梯形图就觉得亲切——它长得跟继电器电路太像了。而指令表呢,一开始觉得像天书,后来用顺手了才发现,有些活儿还真得靠它。
这一节,咱们就聊聊这两种编程语言,再讲讲TIA Portal这个主流软件怎么用。嗯,都是实打实的干货。
4.1 梯形图(LAD)——最直观的编程语言
梯形图,说白了就是把继电器控制电路“翻译”成PLC能懂的形式。左母线、右母线、常开触点、常闭触点、线圈……这些元件你看着眼熟就对了。
核心思想:梯形图模拟了电流从左侧母线流向右侧母线的过程。触点闭合,电流“流”过去,线圈就得电。
我在项目中遇到过一位电工出身的同事,他学梯形图只用了半天。为什么?因为他脑子里全是继电器电路图。梯形图就是为这类工程师量身定做的。
4.1.1 梯形图的基本元件
- 常开触点(-| |-):平时断开,条件满足时闭合。对应PLC输入点的“1”状态。
- 常闭触点(-|/|-):平时闭合,条件满足时断开。这个容易搞混,我刚开始也栽过跟头。
- 线圈(-( )-):输出或内部标志位。触点通了,线圈就得电。
- 功能块(如定时器TON、计数器CTU):封装好的复杂功能,拖进来就能用。
我的小习惯:画梯形图时,我总把最关键的逻辑放在最左边。这样排查问题的时候,一眼就能看到核心路径。
4.1.2 梯形图的优缺点
| 优点 | 缺点 |
|---|---|
| 图形化,直观易懂 | 复杂逻辑时图幅很大,看着累 |
| 适合简单逻辑和顺序控制 | 处理数学运算、数组时很别扭 |
| 电气工程师上手快 | 程序执行效率相对较低 |
你想想看,一个电机正反转控制,用梯形图画出来,清清楚楚。但要是让你用梯形图写一个PID运算……嗯,那画面太美我不敢看。
4.2 指令表(STL)——老手的利器
指令表,也叫语句表。它不像梯形图那么“好看”,但胜在简洁、高效。说白了,它就是PLC的“汇编语言”。
我记得刚学STL时,老师丢给我一段程序:
LD I0.0
AN I0.1
= Q0.0
我当时一脸懵。后来才明白,这其实就是“如果I0.0为ON且I0.1为OFF,则Q0.0输出ON”。
4.2.1 指令表的基本指令
- LD(Load):加载常开触点,相当于梯形图里开始一条新支路。
- LDN(Load Not):加载常闭触点。
- A(And):串联一个常开触点。
- AN(And Not):串联一个常闭触点。
- O(Or):并联一个常开触点。
- ON(Or Not):并联一个常闭触点。
- =(Out):输出到线圈。
避坑指南:我曾经在一条很长的STL程序里漏写了一个“AN”,结果设备动作完全乱套。排查了整整两个小时。从那以后,我写STL一定逐行注释,绝不偷懒。
4.2.2 什么时候用STL?
我个人习惯是:
- 简单逻辑、顺序控制 → 用梯形图
- 复杂算法、大量数据搬运 → 用STL
- 程序空间紧张 → 用STL(它编译后代码更小)
其实很多老工程师调试时,喜欢在梯形图和STL之间来回切换。梯形图看整体逻辑,STL查具体细节。两种语言,一个工具,相辅相成。
4.3 TIA Portal——博途软件的使用
TIA Portal,西门子的全家桶。说实话,刚接触时我觉得它太“重”了,启动慢、吃内存。但用久了你会发现,它确实强大。
4.3.1 创建项目与硬件组态
打开TIA Portal,第一步就是创建项目。选好PLC型号(比如S7-1200或S7-1500),然后组态硬件。
硬件组态说白了就是告诉软件:你用了哪些模块,怎么连接的。我见过有人跳过这步直接写程序,结果下载时报错一堆。嗯,千万别学他们。
4.3.2 编写梯形图程序
在“程序块”里双击“Main [OB1]”,就能开始写梯形图了。左侧工具栏拖拽元件,右侧属性面板设置参数。
举个例子,一个简单的起保停电路:
// 梯形图逻辑描述
// 网络1:启动按钮I0.0,停止按钮I0.1,输出Q0.0
// I0.0常开与Q0.0常开并联自锁,再与I0.1常闭串联
在TIA Portal里,你只需要拖一个常开触点、一个常闭触点、一个线圈,然后连线。就这么简单。
我的建议:刚开始用TIA Portal时,多按F1。它的帮助文档写得相当详细。我当年就是靠F1自学了大部分功能。
4.3.3 切换视图:LAD与STL互转
TIA Portal支持在梯形图和指令表之间一键切换。你写一段梯形图,点一下“视图”菜单,就能看到对应的STL代码。
这个功能我特别喜欢。有时候梯形图画得乱,切换到STL一看,逻辑反而更清晰。反过来,STL写得太抽象,切回梯形图看看,立马明白。
4.3.4 下载与监控
程序写好了,点击“下载到设备”。TIA Portal会自动编译、连接、下载。下载成功后,切换到“监控”模式,就能看到梯形图上触点的通断状态——绿色表示通,灰色表示断。
我记得第一次用监控功能排查故障时,看到某个触点一直灰色,顺着线路一查,发现是传感器信号没过来。省了我至少半小时的万用表测量时间。
4.4 知识体系总览
下面这张图,是我自己总结的本章知识结构。你一看就明白梯形图、指令表和TIA Portal之间的关系了。
这张图把梯形图、指令表和TIA Portal的关系讲得很清楚。你仔细看看,左边是LAD,中间是STL,右边是TIA Portal。它们不是孤立的,而是互相配合的。
4.5 写在最后
梯形图和指令表,没有谁比谁高级。它们只是工具,关键看你怎么用。我见过用梯形图写出几百行复杂算法的狠人,也见过用STL把逻辑写得像诗一样清晰的高手。
至于TIA Portal,别被它的启动速度吓到。多用几次,你会发现它真的很顺手。尤其是在线监控功能,调试时简直是救命稻草。
好了,这一节就聊到这儿。记住:多动手,多练习。编程这东西,光看是学不会的。
公众号:蓝海资料掘金营,微信deep3321