PLC脉冲信号是干嘛的?与频率,占空比,正、负逻辑有什么关系?
在数字电子系统中,所有传送的信号均为开关量,即只有两种状态的电信号,这种电信号,我们称作做脉冲信号,这是所有数字电路中的基本电信号
一个标准的脉冲信号如下图所示。
我们把脉冲信号由低电压跳变至高电压的脉冲信号边沿称做上升沿,把由高电压跳边至低电压的边沿称下降沿,有的资料上又叫前沿,后沿。把电压低的称做低电平 ,电压高的称做高电平 。
假设脉冲信号的周期为T ,脉冲宽变为t1 则有下面一些基本概念。
频率f: 指一秒种内脉冲信号周期变化的次数,即f = 1 / T周期越小,频率越大。
有了频率这个概念,我们现在就来讨论一下从PLC输入端输入开关信号的最高频率问题。由上一章扫描及PLC的滞后知识可知,PLC的扫描周期主要由用户程序的长短所决定,假定其扫描周期为20ms,并考虑到输入滤波器的响应延迟为10ms,则PLC执行扫描周期为30ms。如果输入信号的变化小于30ms的话由扫描原理可知,PLC完全可能检测不到,也就是说输入信号的脉宽一定要大于30ms,这样,输入信号的频率就受到了限制。
我们假定输入信号是占空比为50%的脉冲信号,则其周期为T=2t1=60ms那么输入信号的频率不能大于1/60ms=16.6HZ。这对于按钮,普通开关等一般工业控制场合是完全可以的,但对于要求I/O响应速度高的实时控制场合就不能适应了。
对于要求高速响应的场合,不同厂家的PLC都在软件和硬件上采取了很多措施,提高I/O的响应速度。FX2N设计了高速计数模块,提供了X0~X7共8个高速输入端,,其RC滤波器的时间仅为0.5us在软件方面采用I/O即时信息刷新方式,中断传送方式和能用指令修改的数字式滤波器等。因此可以处理的输入信号频率有了很大提高,可以达到20KHZ。
占空比: 指脉冲宽度t1与周期T的比例百分比。为t1/T %。占空比的含义是脉冲所占据周期的空间,占空比越大,表示脉冲宽度越接近周期T,也表示脉冲信号的平均值越大。
正逻辑与负逻辑: 脉冲信号只有两种状态:高电平和低电平,与数字电路的二种逻辑状态“1”和“0”相对应,但到底是高电平表示“1”还是低电平表示为“1”都可因人而设。如果设定高电平为“1”低电平为“0”则叫正逻辑,如果反过来,设定低电平为“1”高电平为“0”的时候,则为负逻辑。一般情况下,没有加以特殊说明,我们均采用正逻辑关系。
在实际电路中,高电平是几伏,低电平是几伏。没有严格的规定,例如在TTL电路中,高电平为3V左右,低电平为0.5V左右,而在CMOS电路中,高电平为3~18V或者7~15V,低电平为0V。(技成原创,未经授权不得转载,违者必究!)
往期优秀文章回顾:
S7-200SMART PLC重点精讲:模拟量模块接线图、扩展模块、CPU结构
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 购买相关问答
PLC发多少脉冲给伺服电机转一圈,脉冲频率该怎么算?
要确定PLC发多少脉冲给伺服电机转一圈,需要知道伺服电机的编码器分辨率,也就是每转多少个脉冲。然后,计算出整个系统需要的脉冲数,即脉冲频率。假设伺服电机...
plc中分几种脉冲?
1.PLC中分为两种脉冲:输入脉冲和输出脉冲。2.输入脉冲是指PLC接收外部信号的脉冲,例如传感器的信号。输出脉冲是指PLC输出的脉冲信号,例如控制电机或气缸的...
三菱PLC控制伺服电机脉冲频率和脉冲数量如何计算-可可呀...
齿轮比=编码器分辨率/电机每转脉冲数比如台达伺服分辨率是160000,这个设定齿轮比分母16,然后分子设定10,就是16:10=10000脉冲一圈齿轮比=编码器分...
西门子PLC肿么编写脉冲程序-ZOL问答
Y=X-6400/25600*100,你的程序就按照这条公式编程就行了。有用(0)回复baidu_chuiguoyan一般直接加上或者减去一个数即可,如果是个常数,直接在plc里编程。如.....
三菱变频器怎样用脉冲控制频率?
大家好,我是电子及工控技术,我来回答这个问题。现在变频器在异步电动机调速控制中应用的是十分的广泛,我们用变频器控制三相异步电机的运转速度,其实就是通过...
plc程序如何产生脉冲-懂得
下面是产生1秒的脉冲信号的方法:方法1:采用硬件组态中CPU属性下的MemoryClock,这样你会得到一个系统提供的定时脉冲.如果你设置的为MB100那么在程...
plc怎么控制频率?
PLC控制变频器的频率,有多种方式,常用的控制当时有模拟量控制,通讯控制还有通过脉冲控制。模拟量控制,即用PLC模拟量,通过0-5V或者0-10V,也有用4-20mA或0-...
三菱PLC的脉冲指令?
这里用到了变址寄存器Z,具体地址需要看变址寄存器Z6的值是多少,之后用D1000加上Z6的值,之后就是脉冲频率的绝对地址,用D2000加上Z6的值,就是脉冲数量的绝对...
欧姆龙PLC的SPED指令脉冲频率怎么设置?
sped指令有三个参数第一个是端口第二控制字就是发脉冲方式第三个是频率这个值在内存中是16进制如数值为1F4即为十进制的500如你程序中这个鞋的是d110程序实...
plc怎么分配脉冲和方向?
PLC可以通过控制输出信号的频率和方向来分配脉冲和方向。在PLC程序中,可以编写相应的指令来控制脉冲和方向的输出,例如使用计数器指令或者PWM指令控制脉冲的频...