通过S7 200 PID向导可以生成模拟量和数字量输出,但是不知道脉冲宽度调制是怎么回事。现将本人理解列举如下,请高手帮忙鉴定:
生成的PID模块如下:
1 过程变量输入范围0-4000,给定值输入范围0.0-400.0,PID输出范围0-1000。0-1000代表的是脉冲宽度,此脉冲宽度控制的是Q0.0的开度吗?
2 如何使用PLS指令?只知道将VW108数值传送给SMB70,将SMB67设置为16#DA(设置Q0.0的脉冲宽度调制方式),将1000写入SMB68.不知道何时使用PLS指令。
3 使用脉冲宽度调制是为了便于控制开关量的开度吗?如果是的话,开关量如何变化?
一知半解,请高手指点!
现将原程序整理一下:首先利用PID向导建立PID功能块,然后PWM初始化:
VW108的数值传送给SMB70(VW108代表脉冲宽度),使用PLS指令(Q0.0)修改脉宽
下面的程序不是很明白:1为什么加热开关关闭的情况下调用PLS指令?2 为什么使用SM0.5的上升沿触发?直接使用SM0.0行不行?
V0.1-加热开关,V120.0加热方式(自动),M11.1加热方式设定
回复内容:
对:welfare87关于你配置的这个输出类型为模拟量,PID输出范围0-1000代表输出的上下限如果输出为数字量,即调节的是单位时间内输出点接通断开的比值,也就是接通断开时间内容的回复:
使用的是脉冲宽度调制,VW108的数值传送给SMB70(VW108代表脉冲宽度),使用PLS指令(Q0.0)修改脉宽,控制的是加热棒的温度 。设定温度VD100=280。
问题一:温度的上升速度是由Q0.0决定的吗?是不是利用Q0.0直接控制加热棒?
问题二:过程变量输入范围不是取决于应用的模拟量输入模块吗?现在使用的是EM231,选择方式是0-20mA,模拟量输入范围不应该是0-32000吗,为什么可以是0-4000?是不是只要在0-32000范围内都可以?