课程中心
HOME
课程中心
正文内容
plc脉冲程序编程 PLC产生脉冲信号的两种方法
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC产生脉冲信号的两种方法

脉冲信号在PLC编程中会经常用到,比如:通信过程中的心跳脉冲、蜂鸣器/指示灯的报警脉冲等等。这些脉冲信号可以来自硬件(组态),也可以来自软件(编程)。今天这篇文章,给大家介绍下两种产生脉冲信号的方法,包括:

CPU的时钟脉冲;扩展函数LGF_Frequency;

1、CPU的时钟脉冲

CPU的时钟脉冲可以产生8个不同频率的脉冲信号(占空比1:1)。在CPU的硬件组态中找到【系统和时钟存储器】,勾选【启用时钟存储器字节】,在时钟存储器字节的地址中输入位存储器的地址(默认为MB0),那么CPU的硬件(严格来说是操作系统)会将相应频率的脉冲写入到该位存储器字节的相应位。比如下面这张图:M0.1是5Hz的时钟脉冲,M0.5是1Hz的时钟脉冲。

这种配置脉冲信号的方法很简单,不过其缺点在于会降低程序的通用性。比如:有的人使用MB0作为时钟存储器字节,有的人使用MB10或者其它的位存储区作为时钟存储器字节,这在不同的项目程序移植时会造成一些困难。为了提高程序的通用性,可以使用通用扩展函数库中的LGF_Frequency函数。

2、LGF_Frequency

扩展函数LGF_Frequency可以产生指定频率及占空比的脉冲信号,在全局库【信号发生器】中可以找到该函数,其初始添加状态如下图所示:

函数LGF_Frequency有两个输入参数和两个输出参数:

输入参数包括:

frequency:实数,发生器的输出频率,单位Hz;脉冲的周期为频率的倒数,假设频率设置为0.5,则该脉冲的周期为2s;PulsePauseRatio:实数,输出脉冲的占空比,即高电平持续时间与低电平持续时间的比值;假设占空比为3.0,则高电平持续时间/低电平持续时间=3/1;

输出参数包括:

clock:布尔型,脉冲输出地址;countdown:TIME型,当前状态的剩余时间;

使用LGF_Frequency函数可以产生与硬件无关的脉冲信号。比如,

下面的代码(FB2_ClockTest)分别产生一个1Hz、10Hz、0.5Hz且占空比为1:1的脉冲信号。

这些信号存放在全局数据块DB10_GlobalPulse的变量中:

执行该函数块的Trace数据如下图所示:

这种通过函数块和数据块实现的脉冲信号提高了程序的可读性,并且能产生任意需要的周期及占空比的脉冲信号,缺点是需要手动编程,相比CPU的脉冲信号复杂一点;

说明:其实之前介绍过LGF_Frequency及通用函数库,可以看看文章:博途扩展函数库LGF系列教程(1)-LGF_Frequency

好了,关于PLC产生脉冲信号的两种方法就先介绍到这里。

我的书《西门子S7-200 SMART PLC应用技术——编程、通信、装调、案例》已经出版,欢迎点击下面的链接查看:

#pgc-card .pgc-card-href { text-decoration: none; outline: none; display: block; width: 100%; height: 100%; } #pgc-card .pgc-card-href:hover { text-decoration: none; } /*pc 样式*/ .pgc-card { box-sizing: border-box; height: 164px; border: 1px solid #e8e8e8; position: relative; padding: 20px 94px 12px 180px; overflow: hidden; } .pgc-card::after { content: " "; display: block; border-left: 1px solid #e8e8e8; height: 120px; position: absolute; right: 76px; top: 20px; } .pgc-cover { position: absolute; width: 162px; height: 162px; top: 0; left: 0; background-size: cover; } .pgc-content { overflow: hidden; position: relative; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } .pgc-content-title { font-size: 18px; color: #222; line-height: 1; font-weight: bold; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .pgc-content-desc { font-size: 14px; color: #444; overflow: hidden; text-overflow: ellipsis; padding-top: 9px; overflow: hidden; line-height: 1.2em; display: -webkit-inline-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .pgc-content-price { font-size: 22px; color: #f85959; padding-top: 18px; line-height: 1em; } .pgc-card-buy { width: 75px; position: absolute; right: 0; top: 50px; color: #406599; font-size: 14px; text-align: center; } .pgc-buy-text { padding-top: 10px; } .pgc-icon-buy { height: 23px; width: 20px; display: inline-block; background: url(https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png); } S7-200 SMART PLC应用技术 ¥88 购买

131、用PLC编写一个高数脉冲输出程序

启动按钮接于I0.0,停止按钮接于I0.1,当按下启动按钮时,Q0.0输出PTO高速脉冲,脉冲的周期为30ms,个数为10000个,若输出脉冲过程中按下停止按钮,则脉冲输出立即停止。

控制程序如图所示:

相关问答

西门子PLC肿么编写脉冲程序-ZOL问答

Y=X-6400/25600*100,你的程序就按照这条公式编程就行了。一般直接加上或者减去一个数即可,如果是个常数,直接在plc里编程。如果是个变量或者可设置的数,一般需...

西门子PLC怎么编写脉冲程序?

编写西门子PLC脉冲程序需要考虑脉冲的输入方式和输出方式,首先定义输入端口为脉冲输入,然后编写一个计数器,设定计数器的计数值,当计数器达到设定值时,触发...

西门子PLC怎么编写脉冲程序?

编写西门子PLC的脉冲程序需要以下步骤:首先,确定所需的脉冲输入或输出模块,配置PLC的硬件连接。然后,使用编程软件(如Step7)创建新的程序。在程序中,...

plc的脉冲使用方法?

PLC是通过控制发送的脉冲来控制伺服电机的,用物理方式发送脉冲,也就是使用PLC的晶体管输出是最常用的方式,一般是低端PLC采用这种方式。而中高端PLC是通过通讯...

西门子plc脉冲输入怎么编程?

回答如下:编程步骤如下:1.在程序中声明需要使用的输入点,例如I0.0表示使用I0口的0号输入点。2.在程序中设置需要使用的输入点的工作模式为脉冲输入模式,...

请问怎么写三菱PLC发脉冲的程序?

编写三菱PLC发脉冲的程序需要分为几个步骤。首先,通过连接PLC并编写适当的输入输出(I/O)逻辑,确保PLC与外部设备正确通信。然后,使用PLC编程软件创建一个...

plc程序如何产生脉冲-185****3044的回答-懂得

{y1}------plsyk500k600y0y0脉冲发生口接步进电机驱动器K500是频率也就是速度根据你的需要修改数值K600是脉冲数也就是脉冲个数你可以设成99...

用西门子s7-300PLC控制步进电机,肿么发脉冲,肿么编写程序-Z...

300的脉冲发送需用到带T的CPU,如果没有带T的CPU需扩展FM功能模块。FM模块全是英文版。带T的就简单多了,程序没有百度可以找到。找到你可以在联系我。FM发脉...

欧姆龙plc1秒时钟脉冲编程器怎么写入-懂得

输入“C”后,然后在地址中输入一个"P"然后往下选择,找到一秒脉冲确认就行了。或者直接添加一个触点,输入地址“CF102”就好了。输入“C”后,然后在...

怎样用pLC设置脉冲?

pLC可以通过配置输出模块的通道来设置脉冲输出。首先需要确定脉冲输出的频率和占空比,然后在pLC的编程软件中创建一个脉冲输出的程序。在程序中,设置输出通道...

 the impossible dream  德安吉洛-拉塞尔 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部