西门子P.LC.编.程小白手册:功能块使用方法详.解
今.天咱.们聊.一个超实用的技能:西门子PLC功能块(FB/FC)编.程.。用.熟了它,.你的编程效率.直.接翻倍.!
简单说,功能块就是个.可以反.复使用.的.“程.序模块”。就像乐.高积木.,搭.好一个.标准零件.(比如电.机控制模块),.以后哪.个项目需要电机控制.,直接.把.这个“零件”.插进去用.就行,不用重新搭.。
FB(功.能块)和FC(函数)区别: - F.B:有自己的“.记忆”(背景.数据块).,.适合需要.记住.状.态的场合,比如电机启停(要记住上次是开.是关)。. - FC:纯“计算器”,.给输入.就.出输出,用完不.留痕,适合数学运算、单位.转换。.
咱.们以电机.星三角.启动控制.为例(这可是经典考.题!.):
步.骤1.:.新建F.B. 在TIA Porta.l中右键.“程序.块”→“添加新.块”→选“功.能块(FB)”,取名“Motor_StarDelta”。
步骤2:定义接口 这是.关键!分四部.分: - Input(.输入):如启动按钮、停.止.按钮、过载信号 - Output(.输出):如主接触器、星型接触器.、三.角接触器 - InOut(输.入输出):可双向传递.的数据(这里用.不上) - Static(静态变量,仅FB有):.如内.部计时器、状态标记
pascal
// 在FB接口区定义:
Input: Start (Bool), Stop (Bool), Overload (Bool)
Output: KM_Main (Bool), KM_Star (Bool), KM_Delta (Bool)
Static: T_StarDelay (Timer), State (Int)
步骤3:编.写梯形图逻辑. 核心逻辑: 1. 按下St.art,主接触器K.M_Main和星.型KM_Star吸合 2. 计.时器.开始(比如.5秒) 3. 时间到.,KM_Star.断开.,KM_Delta吸合.(.切.换到三角运.行)
注意事项:星型接触器和三角接触器.必须互锁!防.止它们同时吸合导致短.路,.这.是血.的教训!在程序里.用常闭.触点串联实现互锁。.
在O.B1(主程序)里,像拖放.积.木一样.: 1. 从指令列表找到你的.FB“Motor._St.arDel.ta” 2. 拖到程序段中,会自动弹出关联的背景数据块(DB)设置,给DB起个名,比如“DB_M.otor1” 3. 给.引脚连线:Star.t连.实.际的.启动按钮地址,输出.点连实.际.的PLC输出端子
调试技巧:在线监控.时.,一定要打开背景数据.块(.DB)窗口.,能看到所有静态.变量.和计时器的当.前值,这是找.b.ug的关.键!
- 忘记给背景数据块(DB)分配.实际.地址,结.果PLC里FB没反应。调用FB必须配一个DB!
- 静态变量没初始.化,第一次.运行正.常,第二次就乱套。在F.B开.始时给状.态.变量清个.零.。
- 多个地方调用同一个FB但用同一个.DB,几个电机“联动”了。.每个.设备实例要用独立的DB!
- FB里用了全局地址(如.M0.0),这是大忌!会让FB失去可.重用性。.所有数据都通过.接口传递。
- 把常用的报警.处理、.流量.累计做成FC,.随用随调
- 用FB封装第三方设备.的.通讯协议(如变.频器.Modbus控制),一套程序.走天下.
- 建立自己的“标准功.能块.库”,新.项.目开发速度提.升50%
现.在打开TIA Por.ta.l,.创建一个FB.,实.现一个简单的“三.地.控.制一.盏灯”逻辑(.三个启动按钮.并联,.三个停止按钮串联)。重点练习接口定义.和FB调用。成功后.,.试.着把这.个FB复制一遍,改成控.制两台.灯,体会“一.劳永逸.”的快感。
下次咱们聊聊FB.的高级玩法:多.重背景和FB参数的类型.化。.先把这个基础打牢,你.已经是入.门级PLC.工程师了!