|
使用的是stc15w408as單片機(jī),通過獲取的mpu6050原始數(shù)據(jù)來控制小車的平衡,使用PD直立環(huán)直接輸出PWM,但是小車一直平衡不,KP調(diào)大了,小車稍微傾斜電機(jī)快速響應(yīng)小車不受控制,KP調(diào)小了小車倒了電機(jī)還沒有反應(yīng)過來,小白求助! 該怎么解決???
int balance(float Angle,float Gyro)//roll(橫滾角)(回復(fù)力)、角速度(阻尼力)
{
int ZHONG=180;
float Bias;
float Balance_Kp=6,Balance_Kd=0.05;//600 kp(0 - 25) kd( 0 - 2 )
int pwm;
Bias=ZHONG-Angle; //===求出平衡的角度中值 和機(jī)械相關(guān)
balance=Balance_Kp*Bias+Gyro*Balance_Kd; //===計(jì)算平衡控制的電機(jī)PWM PD控制 kp是P系數(shù) kd是D系數(shù)
return pwm;
}
|
|