ST/C 不是要取代梯形图。这一课讲清楚什么时候该用文本语言、什么时候还是梯形图更顺手。
梯形图直观、好懂,是 PLC 编程的地基,新手第一个就该学它。但它不是万能的:一旦逻辑变复杂,纯梯形图会越堆越长,屏幕都铺不下。
PLC 每个扫描周期要把整张梯形图从头扫一遍。行数越多,扫一遍越久。工程一大,几千行扫下来,周期长到跟不上工艺节拍——这时候不是 PLC 不行,是你的写法把周期拖垮了。
比如一个滑动平均滤波:梯形图要拖几十个加法、移位、除法框,铺满好几屏;换成 C 功能块,几行算法加梯形图里一个调用框就搞定。行数从几十砍到几行,每周期只跑一次调用,扫描大瘦身。
面对一个功能,先别急着堆梯形图,脑子里先发散出几条路:联锁、顺序动作,梯形图一眼看懂;运算、查表、循环、协议,交给 ST 或 C 写成的功能块。判断口诀——梯形图开始堆不动的那段,就是该抽成功能块的信号。
功能块做好了,在梯形图里就是拖一个框、填几个管脚,和你用 TMR、CNT 没两样。具体怎么操作,下一节「功能块的调用」会用编辑器截图一步步讲,这里先有个印象。
工控大拿和一般师傅的差别,不在手上活,在脑子里。同一个活,新手只想到「堆梯形图」一条路;大拿会先发散出几条路——梯形图、ST、C 功能块——再挑最省行数、最稳的那条。实践练的是手,发散思维练的是脑,两手都硬,才算真入门。