SIMATIC S7-200 PLC高速脉冲输出
PWM(Pulse Width Modulation脉冲调制)宽度可调脉冲输出
PWM功能提供带变量占空比的固定周期输出。可以微秒或毫秒为时间基准指定周期和脉宽。
S7-200有两台PWM发生器,建立高速脉冲串或脉宽调节信号信号波形。一台发生器指定给数字输出点Q0.0,另一台发生器指定给数字输出点Q0.1。一个指定的特殊内存(SM)位置为每台发生器存储以下数据:一个控制字节(8位值)、一个脉冲计数值(一个不带符号的32位值)和一个周期和脉宽值(一个不带符号的16位值)。
脉冲宽度为16为无符号数,脉冲宽度增量单位为us或ms。范围0~65535,占空比为0~100%。当脉冲宽度大于或等于周期时输出将连续接通。为0时,输出一直被关断。如表 1
表 1 周期和脉冲宽度
脉宽时间/周期 | 反应 |
脉宽时间 >= 周期值 | 占空比为100%:输出连续运行。 |
脉宽时间 = 0 | 占空比为0%:输出关闭。 |
周期 < 2个时间单位 | 周期的默认值为两个时间单位。 |
根据在改变脉冲宽度时是否需要改变时间基准,可分为同步更新和异步更新。如表 2
表 2 同步、异步更新
同步更新 | 脉宽的改变和PWM脉冲的新周期同步发生。适用于不需要改变时间基准的情况,常用中断实现。 |
异步更新 | 需要改变时间基准时使用。异步更新可能会导致PWM功能暂时失效,造成被控装置的振动。 |
注意: 由于此原因,建议使用同步PWM更新。选择可用于所有预计周期数值的。
Q0.0 | Q0.1 | 控制位 |
SM67.0 | SM77.0 | PWM更新周期值 0 = 无更新;1 = 更新周期 |
SM67.1 | SM77.1 | PWM更新脉宽时间值 0 = 无更新;1 = 更新周期 |
SM67.2 | SM77.2 | PTO更新脉冲计值 |
SM67.3 | SM77.3 | PWM选择基时 0 = 1us; 1 =1ms |
SM67.4 | SM77.4 | PWM更新方法: 0 = 异步更新; 1 = 同步更新 |
SM67.5 | SM77.5 | PTO操作 |
SM67.6 | SM77.6 | PTO/PWM模式选择 0 = 选择PTO; 1 = 选择PWM |
SM67.7 | SM77.7 | PWM启用 0 = 禁用PWM; 1 = 启用PWM |
Q0.0 | Q0.1 | 其他PWM寄存器 |
SMW68 | SMW78 | PWM周期值(范围:2至 65535) |
SMW70 | SMW80 | PWM脉宽值(范围:0至65535) |
1.确定高速PWM的输出端(Q0.0或Q0.1)
2. 初始化设置
设置控制字节---将控制字写入SMB67或SMB77
写入周期值SMW68(78)、
写入脉冲宽度值SMW70(80)
3.执行PLS指令
注:
1.在启用PWM操作之前,将用于Q0.0和Q0.1的过程映像寄存器设为0。
2.所有的控制位、周期、脉宽和脉冲计数值的默认值均为0。
3.PTO/PWM输出必须至少有10%的额定负载,才能完成从关闭至打开以及从打开至关闭的顺利转换。
4.PWM初始化建议使用"首次扫描"位(SM0.1)初始化脉冲输出。执行程序只执行一次,可以节省PLC的扫描程序执行的时间
5.通常,您用一个子程序为脉冲输出初始化PWM。您从主程序调用初始化子程序。使用首次扫描内存位(SM0.1)将脉冲输出初始化为0,并调用子程序,执行初始化操作。当您使用子程序调用时,随后的扫描不再调用该子程序,这样会降低扫描时间执行,并提供结构更严谨的程序。
编程实例:
设定Q0.0输出周期为10ms,50%占空比PWM脉冲,同步更新方式
首先根据PWM的控制寄存器表格得出下列数据如图 2.5?1
表 3 周期和脉宽设定控制字
SMW68 | PWM周期值(范围:2至 65535) | 10 |
SMW70 | PWM脉宽值(范围:0至65535) | 5 |
图 2.5?2
图 2.5?3
图 2.5?4
图 2.5?5
总结:
对于PWM的控制寄存器的操作控制字的赋值常用参考(十六进制)
表 4
控制寄存器 | 选择模式 | PWM更新方法 | 基时 | 脉宽 | 周期 |
16#D1 | PWM | 同步 | 1us |
| 载入 |
16#D2 | PWM | 同步 | 1us | 载入 |
|
16#D3 | PWM | 同步 | 1us | 载入 | 载入 |
16#D9 | PWM | 同步 | 1ms |
| 载入 |
16#DA | PWM | 同步 | 1ms | 载入 |
|
16#DB | PWM | 同步 | 1ms | 载入 | 载入 |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
此系列文章是由启程自动化团队,@工控老鬼@工控小三@工控小马哥@工控老杨@工控小鬼等成员共同完成。水平有限,仅供参考。
跟多文章QQ空间:920500908
启程PLC培训中心 http://www.gongkong8.com/
水平有限,仅供参考