diff --git a/云台/云台/CarBody/Gimbal.c b/云台/云台/CarBody/Gimbal.c index ff03815..75953ca 100644 --- a/云台/云台/CarBody/Gimbal.c +++ b/云台/云台/CarBody/Gimbal.c @@ -67,7 +67,7 @@ void Gimbal_Init(void) PID_PositionStructureInit(&Gimbal_YawAngleSpeedPID,200); PID_PositionSetParameter(&Gimbal_YawAngleSpeedPID,150,0,20); PID_PositionSetEkRange(&Gimbal_YawAngleSpeedPID,-1,1); - PID_PositionSetOUTRange(&Gimbal_YawAngleSpeedPID,-50000,50000); + PID_PositionSetOUTRange(&Gimbal_YawAngleSpeedPID,-30000,30000); PID_PositionStructureInit(&Gimbal_PitchAnglePositionPID,0);//Pitch轴陀螺仪闭环 PID_PositionSetParameter(&Gimbal_PitchAnglePositionPID,40,0,700); @@ -76,7 +76,7 @@ void Gimbal_Init(void) PID_PositionStructureInit(&Gimbal_PitchAngleSpeedPID,150); PID_PositionSetParameter(&Gimbal_PitchAngleSpeedPID,150,0.001,7); PID_PositionSetEkRange(&Gimbal_PitchAngleSpeedPID,-0.1,0.1); - PID_PositionSetOUTRange(&Gimbal_PitchAngleSpeedPID,-50000,50000); + PID_PositionSetOUTRange(&Gimbal_PitchAngleSpeedPID,-30000,30000); PID_PositionStructureInit(&Gimbal_L1_FrictionWheelPID,0);//左摩擦轮 PID_PositionSetParameter(&Gimbal_L1_FrictionWheelPID,15,0,0); @@ -140,9 +140,9 @@ void Gimbal_CleanPID(void) void Gimbal_PitchControl(void) { if(Remote_StartFlag==2)Gimbal_PitchAnglePositionPID.Need_Value=0;//遥控器刚建立连接时,复位Pitch轴角度 - if(((Remote_RxData.Remote_L_UD>1050 && RefereeSystem_Status==0) || (1024+Remote_RxData.Remote_Mouse_DU*3)<1020) && AttitudeAlgorithms_DegRoll>Pitch_GM6020AngleUpperLinit) + if(((Remote_RxData.Remote_L_UD>1050 && RefereeSystem_Status==0) || (1024+Remote_RxData.Remote_Mouse_DU*3)>1030) && AttitudeAlgorithms_DegRoll>Pitch_GM6020AngleUpperLinit) Gimbal_PitchAnglePositionPID.Need_Value-=Gimbal_LeverSpeedMapRate/8192.0f*360.0f;//通过遥控器或者鼠标获取俯仰情况 - else if(((Remote_RxData.Remote_L_UD<1000 && RefereeSystem_Status==0) || (1024+Remote_RxData.Remote_Mouse_DU*3)>1030) && AttitudeAlgorithms_DegRoll1050 && RefereeSystem_Status==0) || 1024+PC_Spin*PC_Mouse_RLSensitivity>1030)//根据摇杆改变偏航 + if((Remote_RxData.Remote_L_RL>1050 && RefereeSystem_Status==0) || 1024+PC_Spin*PC_Mouse_RLSensitivity>1028)//根据摇杆改变偏航 { if(PC_Spin==0) Gimbal_YawAnglePositionPID.Need_Value-=Gimbal_LeverSpeedMapRate*Gimbal_YawPitchSpeedRate*Gimbal_YawPitchSpeedRate*0.0439453125f*((Remote_RxData.Remote_L_RL-1024)/660.0f); else Gimbal_YawAnglePositionPID.Need_Value-=Gimbal_LeverSpeedMapRate*Gimbal_YawPitchSpeedRate*Gimbal_YawPitchSpeedRate*0.0439453125f*(PC_Spin*PC_Mouse_RLSensitivity/660.0f*2); } - else if((Remote_RxData.Remote_L_RL<1000 && RefereeSystem_Status==0) || 1024+PC_Spin*PC_Mouse_RLSensitivity<1020) + else if((Remote_RxData.Remote_L_RL<1000 && RefereeSystem_Status==0) || 1024+PC_Spin*PC_Mouse_RLSensitivity<1022) { if(PC_Spin==0) Gimbal_YawAnglePositionPID.Need_Value+=Gimbal_LeverSpeedMapRate*Gimbal_YawPitchSpeedRate*Gimbal_YawPitchSpeedRate*0.0439453125f*((1024-Remote_RxData.Remote_L_RL)/660.0f); @@ -261,7 +261,7 @@ void Gimbal_Rammer(void) PID_PositionCalc(&Gimbal_RammerSpinPositionPID,M3508_MotorStatus[Gimbal_RammerSpinMotor-0x201].RotorSpeed); M3508_CANSetHIDCurrent(0,Gimbal_PitchAngleSpeedPID.OUT,Gimbal_RammerSpinPositionPID.OUT,0); - Delay_ms(1); + Delay_us(1500); //M3508_CANSetHIDCurrent(0,0,Gimbal_RammerSpinPositionPID.OUT,0); } diff --git a/云台/云台/Objects/Project.axf b/云台/云台/Objects/Project.axf index c2824b5..0247f14 100644 Binary files a/云台/云台/Objects/Project.axf and b/云台/云台/Objects/Project.axf differ diff --git a/云台/云台/Objects/Project.build_log.htm b/云台/云台/Objects/Project.build_log.htm index 44e1c32..fed9c0d 100644 --- a/云台/云台/Objects/Project.build_log.htm +++ b/云台/云台/Objects/Project.build_log.htm @@ -28,54 +28,56 @@ Project File Date: 03/24/2026 *** Using Compiler 'V5.06 update 7 (build 960)', folder: 'C:\Users\LSMushui\AppData\Local\Keil_v5\ARM\ARMCC\Bin' Rebuild target 'Target 1' assembling startup_stm32f40_41xxx.s... -compiling misc.c... -compiling stm32f4xx_cec.c... compiling system_stm32f4xx.c... +compiling misc.c... compiling stm32f4xx_crc.c... -compiling stm32f4xx_cryp.c... -compiling stm32f4xx_cryp_tdes.c... -compiling stm32f4xx_flash.c... -compiling stm32f4xx_dma2d.c... -compiling stm32f4xx_can.c... -compiling stm32f4xx_dac.c... -compiling stm32f4xx_fsmc.c... -compiling stm32f4xx_dsi.c... -compiling stm32f4xx_adc.c... -compiling stm32f4xx_exti.c... -compiling stm32f4xx_gpio.c... -compiling stm32f4xx_fmpi2c.c... -compiling stm32f4xx_flash_ramfunc.c... -compiling stm32f4xx_dbgmcu.c... -compiling stm32f4xx_dcmi.c... compiling stm32f4xx_dfsdm.c... +compiling stm32f4xx_cryp.c... compiling stm32f4xx_cryp_des.c... +compiling stm32f4xx_cec.c... +compiling stm32f4xx_cryp_tdes.c... +compiling stm32f4xx_can.c... +compiling stm32f4xx_adc.c... +compiling stm32f4xx_dac.c... +compiling stm32f4xx_dsi.c... +compiling stm32f4xx_dbgmcu.c... compiling stm32f4xx_dma.c... +compiling stm32f4xx_flash_ramfunc.c... +compiling stm32f4xx_fmpi2c.c... +compiling stm32f4xx_exti.c... +compiling stm32f4xx_dcmi.c... +compiling stm32f4xx_flash.c... +compiling stm32f4xx_gpio.c... +compiling stm32f4xx_dma2d.c... +compiling stm32f4xx_fsmc.c... compiling stm32f4xx_cryp_aes.c... -compiling stm32f4xx_hash_md5.c... compiling stm32f4xx_hash.c... -compiling stm32f4xx_lptim.c... +compiling stm32f4xx_hash_md5.c... compiling stm32f4xx_hash_sha1.c... -compiling stm32f4xx_iwdg.c... compiling stm32f4xx_i2c.c... -compiling stm32f4xx_qspi.c... +compiling stm32f4xx_iwdg.c... +compiling stm32f4xx_lptim.c... compiling stm32f4xx_pwr.c... -compiling stm32f4xx_rng.c... -compiling stm32f4xx_ltdc.c... -compiling stm32f4xx_rcc.c... -compiling stm32f4xx_sai.c... +compiling stm32f4xx_qspi.c... compiling stm32f4xx_spdifrx.c... -compiling stm32f4xx_rtc.c... -compiling stm32f4xx_sdio.c... -compiling stm32f4xx_syscfg.c... -compiling Delay.c... -compiling stm32f4xx_spi.c... -compiling stm32f4xx_wwdg.c... +compiling stm32f4xx_rng.c... compiling TIM.c... +compiling stm32f4xx_wwdg.c... +compiling stm32f4xx_ltdc.c... +compiling stm32f4xx_syscfg.c... +compiling stm32f4xx_sai.c... +compiling Delay.c... +compiling stm32f4xx_rcc.c... +compiling stm32f4xx_spi.c... compiling AHRS_middleware.c... +compiling stm32f4xx_sdio.c... compiling stm32f4xx_usart.c... compiling UART.c... -compiling user_lib.c... +compiling stm32f4xx_rtc.c... compiling stm32f4xx_tim.c... +compiling user_lib.c... +compiling MyI2C.c... +compiling CAN.c... compiling WaveFiltering_Kalman_Filtering.c... Control\WaveFiltering_Kalman_Filtering.c(13): warning: #177-D: variable "pDst" was declared but never referenced float pDst,pDst1=1.0f; @@ -84,35 +86,33 @@ Control\WaveFiltering_Kalman_Filtering.c(13): warning: #177-D: variable "pDst1" Control\WaveFiltering_Kalman_Filtering.c(32): warning: #1-D: last line of file ends without a newline Control\WaveFiltering_Kalman_Filtering.c: 3 warnings, 0 errors -compiling CAN.c... -compiling MyI2C.c... compiling LED.c... compiling Buzzer.c... compiling Remote.c... +compiling BMI088.c... compiling IST8310.c... compiling Laser.c... -compiling BMI088.c... compiling M3508.c... -compiling GM6020.c... compiling LinkCheck.c... compiling M2006.c... -compiling Warming.c... +compiling GM6020.c... compiling CToC.c... +compiling Warming.c... compiling CloseLoopControl.c... -compiling IMUTemperatureControl.c... compiling AttitudeAlgorithms.c... compiling PID.c... +compiling IMUTemperatureControl.c... compiling Visual.c... CarBody\Visual.c(68): warning: #9-D: nested comment is not allowed UART2_Printf("%f %f %f %f \n",Visual_Yaw,Visual_Pitch,Visual_GetRoll,Visual_GetDelay);//*0.0030518509475997f*/ CarBody\Visual.c(165): warning: #1-D: last line of file ends without a newline } CarBody\Visual.c: 2 warnings, 0 errors -compiling Gimbal.c... compiling RefereeSystem.c... +compiling Gimbal.c... compiling Keyboard.c... -compiling main.c... compiling stm32f4xx_it.c... +compiling main.c... linking... Program Size: Code=31688 RO-data=1236 RW-data=552 ZI-data=3544 ".\Objects\Project.axf" - 0 Error(s), 5 Warning(s). @@ -127,7 +127,7 @@ Package Vendor: Keil

Collection of Component include folders:

Collection of Component Files used:

-Build Time Elapsed: 00:00:05 +Build Time Elapsed: 00:00:04 diff --git a/云台/云台/Objects/Project.htm b/云台/云台/Objects/Project.htm index c7d7071..f58b7e1 100644 --- a/云台/云台/Objects/Project.htm +++ b/云台/云台/Objects/Project.htm @@ -3,7 +3,7 @@ Static Call Graph - [.\Objects\Project.axf]

Static Call Graph for image .\Objects\Project.axf


-

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Fri Mar 27 09:17:46 2026 +

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Sat Mar 28 08:56:26 2026

Maximum Stack Usage = 280 bytes + Unknown(Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

@@ -1066,7 +1066,6 @@ Global Symbols
[Called By]

Delay_s (Thumb, 24 bytes, Stack size 8 bytes, delay.o(i.Delay_s)) @@ -1079,6 +1078,7 @@ Global Symbols

Delay_us (Thumb, 74 bytes, Stack size 0 bytes, delay.o(i.Delay_us))

[Called By]

@@ -1259,10 +1259,10 @@ Global Symbols
[Called By] -

Gimbal_Rammer (Thumb, 182 bytes, Stack size 8 bytes, gimbal.o(i.Gimbal_Rammer)) +

Gimbal_Rammer (Thumb, 184 bytes, Stack size 8 bytes, gimbal.o(i.Gimbal_Rammer))

[Stack]

-
[Calls]