作业帮 > 综合 > 作业

PID PIDout=Kp*En + Ki*En总 + Kd*(En-En-1),算出的PIDout怎么转换成占空比(0

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/14 04:11:11
PID PIDout=Kp*En + Ki*En总 + Kd*(En-En-1),算出的PIDout怎么转换成占空比(0-1)?
PID PIDout=Kp*En + Ki*En总 + Kd*(En-En-1),算出的PIDout怎么转换成占空比(0
要做feedback控制吗?首先你要对你的控制图进行测试,实验选定好你的PID系数.还有它的范围,比如你的PIDout范围是100到1000,转换成PWM的时候就等比转化就可以了.先弄清楚你的设计原理也许会比较好.希望对你有些许帮助.
再问: 关键你PIDout这个范围怎么确定啊?累加的值时时在变呀,用模拟?我是用来控制温度的哈
再答: PID是很灵活的公式,主要理解它的关系,过去,现在,未来。并不一定是PID全都需要,也可以是PI,PD。根据自己系统设计了,比如你说做温度,我就举个风扇的反馈控制,根据温度计的反馈来控制风扇的占空比进而达到自动控制保持温度。设占空比是PIDout,ΔP是目标温度和本次温度差值,I是n次差值的累积和,ΔD是本次温度和上一次温度的差值,这样Kp是ΔP的系数,Ki是I的系数,Kd是ΔD的系数,这样输出占空比的计算为Pout = Kp*ΔP + Ki*I + Kd*ΔD。然后编程时候考虑好你的I操作的抽样时间间隔还有抽样次数(刚才n次差值)。所以你所说的累加值时时在变的那是对的,当时它的过程用图形来看的话是一个趋向稳定的过程,不要这样就没有意义了。这是微分原理了。当然这个ΔP,I,ΔD的计算不一定是温度,如果你是AD转换的话可以是你的AD转换值什么的。一定要领悟PID的原理是对过去现在未来三者的自动控制的内涵,本人用这个做过风扇自动调温,微型水泵压力调控,空调自动制冷等……当然这要配合你的单片机系统开发才能发挥到极致。