pid算法求助

[复制链接]
997|0
 楼主| wangrunpeng 发表于 2016-4-11 20:48 | 显示全部楼层 |阅读模式
本帖最后由 wangrunpeng 于 2016-4-11 20:50 编辑

void pid_init()
{
        pid.ActualSpeed=0.0;
        pid.err=0.0;
        pid.err_last=0.0;
        pid.err_next=0.0;
        pid.SetSpeed=0.0;
        pid.Kp=0.2;
        pid.Ki=0.0;
        pid.Kd=0.0;
        pid.integral=0.0;
        pid.voltage=0.0;
}
double PID_realize(double Speed)
{
        pid.SetSpeed=Speed;
        pid.err=pid.SetSpeed-pid.ActualSpeed;
              
        pid.voltage=pid.Kp*pid.err;
        pid.ActualSpeed+=pid.voltage;
        
        return pid.ActualSpeed;
}
int main()
{
        pid_init();
        while(count<1500)
        {
                        Speed=PID_realize(200.0);
                        printf("%lf\t",Speed);
                        count++;
        }
        return 0;
}

哪位大神帮我运行一下这个pid程序,我不理解他的第一个输出值是怎么来的,以后一起交流pid算法,电机控制

本帖子中包含更多资源

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

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

本版积分规则

11

主题

40

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部