野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 19989|回复: 3

增量式PID温控中PID计算后的增量如何处理

[复制链接]
发表于 2020-11-26 18:09:54 | 显示全部楼层 |阅读模式
本帖最后由 皮皮涛 于 2020-12-19 21:59 编辑

      我这里通过改变PWM的占空比来控制加热设备的加热功率,那增量式PID计算(通过温度传感器返回的温度值)后的输出值即一个增量,现在搞不明白如何将这个增量和PWM的占空比联系起来,希望大佬指点一下

//增量式PID
typedef struct{
        int SetPoint;                //目标值
        long SumError;                //误差累计
        
        float P;                        //比例常数
        float I;                        //积分常数
        float D;                        //微分常数
        
        int LastError;                //上次偏差值
        int PrevError;                //上上次偏差值
}PID;


/*************************************************
*函数名称:int PID_Contrl(PID* sptr,int NextPoint)                             
*功    能:  PID控制                                   
*参    数:  PID* sptr:上次参数  int NextPoint:当前实际值                                   
*返 回 值:  iIncPid :增量
*************************************************/
int PID_Contrl(PID* sptr,int NextPoint)
{
        register int iError,iIncPid;
        
        iError = sptr-> SetPoint - NextPoint;         //当前误差  设定的目标值和实际值的偏差
        
        iIncPid = sptr->  P * iError  -  sptr-> LastError                               //增量计算
                          +sptr-> I * iError
                          + sptr-> D *(iError  -  sptr-> LastError + sptr-> PrevError);
        
        /*存储误差  用于下次计算*/
        sptr-> PrevError = sptr->LastError;
        sptr-> LastError = iError;
        
        return iIncPid;                                                        //返回增量值
}



回复

使用道具 举报

 楼主| 发表于 2020-11-26 18:11:33 | 显示全部楼层
本帖最后由 皮皮涛 于 2020-11-26 18:18 编辑

我看别人的例程中增量就直接加到需要控制的量上面去了,可是我要控制的温度是加热后通过加热箱中的温度传感器测得的
回复 支持 反对

使用道具 举报

发表于 2020-12-2 17:30:36 | 显示全部楼层
https://ke.qq.com/course/409760,你可以看看这个视频,里面的老师讲的很赞,看看能不能解决你的问题(我记得开源平衡车那个模块有这个视频的下载链接,哔哩哔哩也有)
回复 支持 1 反对 0

使用道具 举报

发表于 2020-12-2 18:58:24 | 显示全部楼层
美羊羊是公羊 发表于 2020-12-2 17:30
https://ke.qq.com/course/409760,你可以看看这个视频,里面的老师讲的很赞,看看能不能解决你的问题(我 ...

这个可以
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-4 13:15 , Processed in 0.026699 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表