OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4616|回复: 2

匿名四轴程序有一块不懂!

[复制链接]

1

主题

2

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2016-3-26
在线时间
2 小时
发表于 2016-4-26 12:52:13 | 显示全部楼层 |阅读模式
1金钱
void height_speed_ctrl(float T,float thr,float exp_z_speed,float h_speed)
{
        static float thr_lpf;
        float height_thr;
        static float hc_acc_i,wz_speed_0,wz_speed_1;
       
        height_thr = LIMIT( 2 * thr , 0, 600 );
       
        thr_lpf += ( 1 / ( 1 + 1 / ( 0.5f *3.14f *T ) ) ) *( height_thr - thr_lpf );
       
        wz_acc_mms2 = (wz_acc/4096.0f) *10000 + hc_acc_i;//9800 *T;
       
       
       
        wz_speed_0 += my_deathzoom( (wz_acc_mms2 ) ,100) *T;
       
        hc_acc_i += 0.4f *T *( (wz_speed - wz_speed_old)/T - wz_acc_mms2 );
        hc_acc_i = LIMIT( hc_acc_i, -500, 500 );       
       
        wz_speed_0 += ( 1 / ( 1 + 1 / ( 0.1f *3.14f *T ) ) ) *( h_speed - wz_speed_0  ) ;
       
        wz_speed_1 = wz_speed_0;
       
        if( ABS( wz_speed_1 ) < 50 )
        {
                wz_speed_1 = 0;
        }
       
        wz_speed_old = wz_speed;
       
        wz_speed = wz_speed_1;
       
        wz_speed_pid_v.err = wz_speed_pid.kp *( exp_z_speed - wz_speed );                    //wz_speed_pid_v.err比例调节结果
        wz_speed_pid_v.err_d = 0.002f/T *10*wz_speed_pid.kd * (-wz_acc_mms2) *T;//(wz_speed_pid_v.err - wz_speed_pid_v.err_old);
       
        //wz_speed_pid_v.err_i += wz_speed_pid.ki *wz_speed_pid_v.err *T;
        wz_speed_pid_v.err_i += wz_speed_pid.ki *wz_speed_pid.kp *( exp_z_speed - h_speed ) *T;
        wz_speed_pid_v.err_i = LIMIT(wz_speed_pid_v.err_i,-Thr_Weight *300,Thr_Weight *300);
       
        wz_speed_pid_v.pid_out = thr_lpf + Thr_Weight *LIMIT((wz_speed_pid.kp *exp_z_speed + wz_speed_pid_v.err + wz_speed_pid_v.err_d + wz_speed_pid_v.err_i),-300,300);

        wz_speed_pid_v.err_old = wz_speed_pid_v.err;
}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2016-5-1 12:52:06 | 显示全部楼层
回复

使用道具 举报

1

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2016-1-6
在线时间
33 小时
发表于 2016-5-5 18:32:09 | 显示全部楼层
帮顶、。。。。。

回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 22:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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