[西门子] 西门子S7-200系列PLC脉冲输出功能,PTO和PWM指令用法

[复制链接]
查看45263 | 回复0 | 2024-10-20 10:02:25 | 显示全部楼层 |阅读模式
PTO为脉冲控制模式,而PWM为模拟量控制模式。
当设备对位置有精确要求时选用PTO,而当设备对转速和力矩有精确要求时选用PWM。
根据设备的需要选择伺服驱动的类型,再选择用哪种控制方式。
PWM是通过高速计数器将输入信号模拟为恒定的电压输出,通过控制电压的变化来控制电机转速的变化。
目前市场中用的比较多的是带PTO功能的伺服,我们叫它脉冲型。
另外一种是两种功能都具备的,我们叫它全功能型。比脉冲型贵不少。
既然是全功能型,你又想要伺服精确位移的话,用PTO控制就好了。

下面我从网上找了两个实例,先存着,以后新身证实一下。

西门子S7-200系列PLC的PMW方波控制程序举

在西门子S7-200系列PLC中,CPU-214的输出端Q0.0和Q0.1能够输出方波信号,而且方波信号的周期和脉宽均能独立调节,其中脉宽指的是在一个周期内,输出信号处于高电平的时间长度。

下面这个例子说明了脉宽调制(PWM)是如何工作的。输出端Q0.0输出方波信号,其脉宽每周期递增0.5秒,周期固定为5秒,并且脉宽的初始值为0.5秒。当脉宽达到设定的最大值4.5秒,脉宽改为每周期递减0.5秒,自到脉宽为零为止。以上过程周而复始。

在这个例子中必须把输出端Q0.0与输入端10.0连接,这样程序才能控制PWM。









子程序:

特殊存储字节SMB67用来初始化输出端00.0的PWM。这个控制字内含PWM允许位,修改周期和脉宽的允许位,以及时问基数选择位等。子程序0来调整这个控制字节。通过EN}指令,使所有的中断成为全局允许,然后通过PLSO指令,使系统接受各设定值,并初始化“PT O/PWM发生器”,从而在输出端00.0输出脉宽调制(PWM)信号。

另外,周期5秒是通过将数值500置入特殊存储字SMW68来实现的,初始脉宽0.5秒则通过将500写入特殊存储字SMW70来实现的。

主程序:

这个初始化过程是在程序的第一个扫描周期通过执行子程序0来实现,第一个扫描周期标志是SM0.1=1。当一个PWM循环结束,即当前脉宽为0秒时,将再一次初始化PWM。

辅助内存标记M 0.0用来表明脉宽是增加,还是减少,初始化时将这个标记设为增加(置1为加,置0为减)。输出端00.0与输入端I0.0相连,这样输出信号就可送到输入端I0.0。当第一个方波脉冲输出时,利用ATC H指令,把中断程序1(INT1)赋给中断事件0 (I0.0的上升沿)。

每个周期中断程序1将当前脉宽增加0.5秒,然后利用D丁C日指令分离中断INT1,使这个中断再次被屏蔽。如果在下次增加时,脉宽大于或等于周期,则将辅助内存标记位M 0.0再次置0。这样就把中断程序2赋子事件0,并且脉宽也将每次递减0.5秒。当脉宽值减为零时,将再次执行,初始化程序(子程序0)。

西门子S7-200系列PLC的PTO方波控制程序举例

1、使用位控向导编程的步骤如下:

A、 为S7--200 PLC选择选项组态 置PTO/PWM操作。 在STEP7V4.0软件命令菜单中选择工具→位置控制向导并选择配置S7-200PLC内 置PTO/PWM操作,如图所示。



B、单击“下一步”选择“Q0.0”,再单击“下一步”选择“线性脉冲输出(PTO)”。



C、单击“下一步”后,在对应的编辑框中输入MAX_SPEED 和SS_SPEED 速度值。输入最高电机速度“90000”,把电机启动/停止速度设定为“600”。这时,如果单击MIN_SPEED值对应的灰色框,可以发现,MIN_SPEED值改为600,注意:MIN_SPEED值由计算得出。用户不能在此域中输入其他数值。



D、单击“下一步”填写电机加速时间“1500”和电机减速时间 “200”。



E、接下来一步是配置运动包络界面。



该界面要求设定操作模式、1个步的目标速度、结束位置等步的指标,以及定义这一包络的符号名。(从第0个包络第0步开始)。在操作模式选项中选择相对位置控制,填写包络“0”中数据目标速度“60000”,结束位置“85600”,点击“绘制包络”,如图9所示,注意,这个包络只有1步。包络的符号名按默认定义。这样,第0个包络的设置,即从供料站→加工站的运动包络设置就完成了。现在可以设置下一个包络。



F、运动包络编写完成单击“确认”,向导会要求为运动包络指定V存储区地址(建议地址为VB75~VB300),默认这一建议,单击“下一步”出现下图,单击 “完成”。



2、项目组件

运动包络组态完成后,向导会为所选的配置生成三个项目组件(子程序),分别是:PTOx_RUN子程序(运行包络),PTOx_CTRL子程序(控制)和PTOx_MAN子程序(手动模式)子程序。一个由向导产生的子程序就可以在程序中调用了,如图所示。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则