|
自平衡方塊,拿去自學- /*
- 知乎:天下行走
- CSDN:技術創造無限可能
- 閑魚:抉擇之刃銀
- */
- /*
- 針對角度環的期望角度為速度環輸出+機械中值的提問:
- 【一】
- 問:
- 當我在小車(平衡小車)前側綁一塊小鐵塊,這會使得機械中值后傾,=-27度,然后我將車子扶在機械中值的角度位置然后開機,但車子一開機就往前跑。為什么?
- 答:
- 問題分析:
- 起始速度偏差=0(因為沒有動輪子呀)——>外環輸出=0(即內環期望角度=0)
- But:開局實際角度= -27度——>開局內環輸出就等于(-27-0)*(-1) = +27 //Kp為負數,這里設為-1
- 即根本是因為開局時 外環輸出!=機械中值(這里機械中值可以等效說成實際角度,但不是任何時候都可以等效說成的。譬如我開機時小車不擺在機械中值位置時就不能等效說成。)
- =====>>>>所以開局時車子肯定往前跑!!!
- 解決思想:
- 起始Target=Real就可以了。
- 解決方法:
- 測機械中值譬如 = -27度,則使得內環期望角度=外環輸出 + 機械中值。
-
- 【二】
- 若:外環輸出==機械中值,即開局速度偏差=0時,機械中值=0則外環輸出=0,即內環輸入=0。
- 又有內環反饋=0,所以這時候開局內環輸出就等于(0-0)*(-1) = 0===>車子必然直立靜止在原地。
- 【三】
- 若:外環輸出!=機械中值,即開局速度偏差=0時,機械中值!=0,但我開局不把車子擺在機械中值位置。譬如舉例當機械中值=-27度,我開機將車子實際角度擺在0度位置。則此時
- 速度偏差=0則外環輸出=0,即內環輸入=0。
- 又有內環反饋=0===>理論上小車直立靜止,BUT!車子根本不在機械中值位置,又談何直立靜止,車子會根據重心向前倒下,直立環立刻發揮作用-->
- -->若小鐵快非常非常輕,還有可能救回來;若鐵塊不輕,則必然車子一直不斷向前跑不會停下;若小鐵塊過重,系統來不及響應,車子會直接向前倒下;
- 這,就是結果。
- */
- /*
- 【硬件占用的GPIO的框架】
- 編碼器 ||AB相—PA0/PA1
- 電機 ||PWM——PA8/PA11、PA6/PA7
- MPU6050 ||INT——PB5
- MPU6050 ||IIC——SCL--PB4/SDA--PB3
- OLED ||IIC——SCL--PB8/SDA--PB9
- */
- #include "stm32f10x.h"
- #include "sys.h"
- float Pitch,Roll,Yaw; //角度
- short gyrox,gyroy,gyroz; //陀螺儀--角速度
- short aacx,aacy,aacz; //加速度
- int Encoder_Momentum; //編碼器數據(速度)
- int PWM_MAX=7000,PWM_MIN=-7000; //PWM限幅變量
- int MOTO1,MOTO2; //電機裝載變量
-
- extern int Velocity_Momentum_out; //輸出變量
- int main(void)
- {
- delay_init();
- NVIC_Config();
- uart1_init(115200);
-
- OLED_Init();
- OLED_Clear();
-
- MPU_Init();
- mpu_dmp_init();
- MPU6050_EXTI_Init();
-
- Encoder_TIM2_Init();
- Encoder_TIM4_Init();
- PWM_Init_TIM1(0,7199); //CH1——PA8、CH4——PA11
- PWM_Init_TIM3(0,7199); //CH1——PA6、CH2——PA7
- OLED_Clear();
- OLED_ShowString(5,0,"P",12);
- OLED_ShowChar(5,2,'M',12);
- OLED_ShowString(64,2,"Stop:",12);
- while(1)
- {
- OLED_Float(0,15,Pitch,1); //角度
- OLED_Float(0,70,Velocity_Momentum_out,1); //外環輸出
- OLED_Float(2,5+15,Encoder_Momentum,1); //速度讀取
- OLED_Float(3,5,MOTO1,1 ); //電機PWM
-
- OLED_ShowNumber(64+40,2,stop,1,12); //停止位
- }
- }
復制代碼
|
-
-
自平衡方塊GFP.7z
2020-4-20 01:20 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
258.13 KB, 下載次數: 38, 下載積分: 黑幣 -5
評分
-
查看全部評分
|