使用 SM特殊寄存器组态控制 PWM 操作

如果已通过运动控制向导将所选输出点组态为运动控制用途,则无法通过 PLS 指令激活 PTO/PWM。 PTO/PWM 输出的最低负载必须至少为额定负载的 10%,才能实现启用与禁用之间的顺利转换。

PLS 指令读取存储在指定 SM 存储单元的数据,并相应地对 PWM 发生器进行编程。SMB67 控制 PWM 0 ,SMB77 控制 PWM 1 ,而 SMB567 控制 PWM 2 。
可以更改 PWM 波形的特性,方法是修改 SM 存储区中的位置(包括控制字节),然后执行 PLS 指令。 可以随时禁止生成 PWM 波形,方法是将 0 写入控制字节的 PWM 使能位(SM67.7、SM77.7 或 SM567.7 ),然后执行 PLS 指令。

加载新的脉冲计数(SMD72 或 SMD82 )、脉冲宽度(SMW70 或 SMW80 )或周期时间(SMW68 或 SMW78 )时,也会在执行 PLS 指令之前置位控制寄存器中的相应更新位。

中止 PWM 操作后,应经过一个周期时间,然后再重新启用 PWM 通道进行操作。 如果未经过此时间就重新启用 PWM 通道,则可能因完成原始 PWM 命令而导致初始脉冲出现 脉冲失真。

如果在 PWM 正在执行时尝试更改 PWM 的时基,则该请求将被忽略,并会出现非致命错误 (0x001B - ILLEGAL PWM TIMEBASE CHG) 。


PWM控制寄存器的设置详见《S7-200 SMART系统手册》

通过PLS指令实现 PWM功能

所需条件:

1、软件版本:STEP 7-Micro/WIN SMART V2.3

2、SMART CPU固件版本:V2.3(其他版本亦可)

3、通讯硬件:TP电缆(以太网电缆)

所实现的功能:

M0.0为1时,Q0.0输出周期为100ms脉宽为50ms的脉冲串

PWM_PLS例程

免责声明

本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。