「西门子S7-300PLC」 FB应用案例:红绿灯
关注“
回复:
1、具体控制要求如下:
按下启动,
东西方向:绿灯亮20S,绿灯闪烁5S,黄灯亮5S,红灯亮30S,然后循环。
南北方向:红灯亮30S,绿灯亮20S,绿灯闪烁5S,黄灯亮5S,然后循环。
2、控制流程图
3、分析:不管是东西,还是南北,都是4个状态,因此只需要编写一个FB,重复调用即可。 每个状态里都有个定时器,和其设定的时间,一个中继M表示一个输出。
4、程序如下:
第一步:在程序建立FB1,并定义FB1的接口变量
第二步:在FB1中编程如下
第三步:在OB1中调用两次FB1
小伙伴们这个经典案例你学会了吗?
来源:技成培训网、叨叨教育,未经授权不得转载!
回复:西门子全套 ,免费领取西门子全系列电子资料!
FX5U PLC的通用FB功能块指令,相关编程案例
在上一篇文章中讲了一部分的通用FB功能块指令,包括双稳态功能块、边缘检测功能块和计数器功能块,定时器功能块没有讲到,那么这一篇文章就给大家介绍一下定时器功能块的内容,此外,再讲两个定时器和计数器功能块的编程案例。
定时器功能块包括通电延时定时器TON、断电延时定时器TOF、脉冲定时器TP、定时器功能块TIMER_FB-M。其中有_1、_10、_100、_CONT、_CONTHS等之分。
通电延时定时器TON
当输入IN变为1时,延时PT设定值指定的时间,当延时时间到时Q输出端输出为1,ET是延迟经过时间。其中,PT设置范围为0ms~32767ms,ET经过时间的计数使用定时器软元件。功能块为TON时,为100ms单位定时器,TON_10时,为10ms单位定时器。
断电延时定时器TOF
当输入IN变为1时,将输出Q置为1,延时PT设定值指定的时间,当延时时间到时,Q输出端输出为0,ET是延迟经过时间。
其中,PT设置范围为0ms~32767ms,ET经过时间的计数使用定时器软元件。功能块为TOF时,为100ms单位定时器,TOF_10时,为10ms单位定时器。
脉冲定时器TP
在输入端IN变为1时,在PT设置的时间内将输出Q设置为1,ET是Q变为1后的经过时间,如果经过时间达到了PT设定时间,则将输出Q置为0。
当输出Q变为0后,输入IN从1变成0,可以复位经过时间。
如果输出Q为1时,输入IN变为0,输出Q也不会被置为0。
定时器功能块TIMER_FB-M
TIMER_FB-M功能块有_1、_10、_100、_CONT、_CONTHS之分,_1是1ms定时器,_10是10ms定时器,_100是100ms定时器,_CONT是低速累计定时器、_CONTHS是高速累计定时器。
TIMER_FB-M定时器功能块管脚定义:
Coil是执行条件;Preset是定时器设定值;ValueIn是定时器初始值,ValueOut是定时器当前值;Status是输出;
其中Coil和Status是BOOL类型,Preset和ValueIN是INT类型,ValueOut是ANY16类型。
当Coil执行条件变为ON时,开始定时。
从ValueIn×1ms开始计时,直到Preset×1ms为止,到达设定时间时变Status为ON。当前计数值被输出到ValueOut中。
如果Coil变为OFF,则当前值变为ValueIn的值,Status也变为OFF。
以上就把通用FB功能块的指令都介绍完了,下面就讲两个定时器和计数器功能块的编程案例吧。
【案例一】用CTUD功能块做停车场车辆的计数和计时控制。控制要求如下:
[源文件下载,请看文末]
1、某停车场最多可停放100辆汽车,现通过数码显示管显示剩余空车位数,停车位满后亮“已满”LED灯,有空位时亮“有车位”LED灯。
2、入库车辆进入时,经过入库车位检测传感器后,如果车位尚未满的话,栅栏打开,计进入一辆,出库时车辆经过出库车位检测传感器后,栅栏打开,计驶出一辆。
3、从PLC输出口Y接入7段数码显示管,显示的位数与输出组合位元件的组数有关,K1Y0表示仅接入1位数码管仅能显示0~9,K3Y0表示接入3位数码管可以显示0~999。
梯形图程序:[源文件下载,请看文末]
[源文件下载,请看文末]
【案例二】做电机的星三角降压启动控制。按下启动按钮,首先主接触器和星型接触器接通,延时一定时间,星型接触器断开,再延时2秒,转换成三角形接触器接通。
[源文件下载,请看文末]
以上两个案例都是利用定时器和计数器功能块编写的程序案例,你觉得有比普通的定时器和计数器指令好用吗?来评论区说一说呗~
(技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究)
相关问答
西门子主从站编程实例?
西门子主从站编程是指在西门子PLC控制系统中,编写主站和从站之间的通信程序,实现数据的传输和共享。下面是一个简单的主从站编程实例:主站PLC编程:```DATA...
S7PLC中FB什么意思?
在西门子S7PLC中,FB(FunctionBlock)是一种预定义的功能性编程模块,它包含了一组相互连接的指令,可以执行特定的功能或计算。FB具有输入、输出和内部变...
三菱PLC浮点数能用FB块吗?
是的,三菱PLC(可编程逻辑控制器)通常支持使用功能块(FunctionBlock,简称FB)来处理浮点数数据。FB是PLC编程中的一个概念,它可以将相关的功能和逻辑封装在...
FB块的程序是如何被PLC执行扫描的?
答:PLC的扫描机制是从上而下,自左向右顺序扫描。有中断就去执行中断程序的内容。中断又按优先级扫苗。PLC接着顺序扫描,在下面又调用同一个FB,那么这个时候...
西门子plc编程的fb和fc块区别?
在西门子PLC编程中,FB和FC是两种不同的块类型,它们的区别如下:FB(FunctionBlock)块:是一种用于封装和重复使用程序代码的块类型。它可以将多个功能模块组...
西门子PLC编程中FB和FC的区别?
明确结论:FB与FC都是西门子PLC编程中的函数块,但是它们的使用场景和功能略有不同。FB适用于搭建复杂的控制逻辑,FC适用于实现简单的计算、数据处理和输出等功...
三菱PLC的FB的变量?
IN和OUT是你在调用FB的时候输入进去的,你设置了IN和OUT之后,在调用FB的时候就会出来相应的针脚,由于FB可以在程序里面多次调用,所以你可以有使用相同的FB,然...
三菱fx3uplcfb块中怎么传送?
您好,在三菱FX3UPLC-FB块中,可以使用以下指令进行数据传输:1.LD命令:将指定的位或字数据加载到指令中,然后传输到目标地址。2.MOV命令:将源地址的数据...
如何读出三菱plc中的fb块?
要读出三菱PLC中的FB块,首先需要在PLC编程软件中打开对应的程序文件。在程序文件中选择要读取的FB块,并在PLC与编程软件之间建立通讯连接。然后,在编程软件中...
plcfb41模块详解?
PLCFB41模块是西门子PLC(可编程逻辑控制器)中的一种功能模块。它是一个高性能通信模块,可用于实现PLC与其他外部设备的通信。FB41模块具有多种通信接口,如以...
扫一扫微信交流