如何让PLC输出一连串特定频率的脉冲呢?

如何让PLC输出一连串特定频率的脉冲呢?,第1张

在用PLC控制步进电机时,需要PLC输出脉冲控制步进电机驱动器,在很多其他场合也可能用到脉冲输出。西门子S7-200SMART系列PLC的脉冲输出指令为PLS,这条指令具体要如何用呢,如何让PLC输出一连串特定频率的脉冲呢?

想要输出我们期望的那脉冲串,就要能设定脉冲频率与脉冲数量,如何设定,就需要我们在特殊标志存储器(SM存储区)的对应存储单元中写入正确的数据并使用PLS指令。

以PLC控制步进电机为例,假定步进电机转一圈需要200个脉冲,现要求步进电机以每秒5转的速度运行30秒,应该如何编程呢。我们先计算下脉冲频率与数量,每秒5转,那么一秒内要发200乘以5=1000个脉冲,频率就是1000,运行30秒,就一共要30000个脉冲。(后面有梯形图)

如何让PLC输出一连串特定频率的脉冲呢?,37353bee-16c8-11ed-ba43-dac502259ad0.jpg,第2张

首先我们看下PLS指令的基本格式,这条指令只有一个参数N,用于指定输出通道。N=0使用输出点Q0.0作为脉冲输出通道,N=1或2时,通道分别为Q0.1或Q0.3。

我们要正确使用每个通道输出脉冲,先查手册上与PLS指令相关的内容:PLS 指令读取存储于指定 SM 存储单元的数据,并相应地编程 PTO/PWM生成器。SMB67 控制 PTO0 或 PWM0,SMB77 控制 PTO1 或 PWM1,PWM1,SMB567 控制PTO2 或 PWM2。通过修改 SM 包括控制字节)中的单元,然后执行 PLS 指令,来改变 PTO 或者PWM 波形的特性。下面的图给出了与PTO0相关的SM存储单元。

如何让PLC输出一连串特定频率的脉冲呢?,3744c4b0-16c8-11ed-ba43-dac502259ad0.jpg,第3张

如何让PLC输出一连串特定频率的脉冲呢?,3761a6e8-16c8-11ed-ba43-dac502259ad0.jpg,第4张

如何让PLC输出一连串特定频率的脉冲呢?,37704518-16c8-11ed-ba43-dac502259ad0.jpg,第5张

以Q0.0做为脉冲输出通道为例,我们必须使用PTO模式,Q0.0对应PTO0,先将脉冲的有频率与个数写入到对应SM存储单元:SMW68(PTO0的频率),SMD72(PTO0通过Q0.0输出脉冲的数量),控制字写入SMB67,然后执行一条PLS指令就可以了,梯形图如下:

如何让PLC输出一连串特定频率的脉冲呢?,378ba452-16c8-11ed-ba43-dac502259ad0.jpg,第6张

十六进制16#C5二进制数为1100 0101,所以查控制字SMB67可知16#C5是意义为:使能Q0.0的脉冲输出,使用PTO模式,更新频率与脉冲计数值。

如何让PLC输出一连串特定频率的脉冲呢?,37a7443c-16c8-11ed-ba43-dac502259ad0.jpg,第7张

这样,一个完整而简单的脉冲输出程序就编写完了。

审核编辑 :李倩

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/3000992.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-27
下一篇 2022-09-27

发表评论

登录后才能评论

评论列表(0条)

保存