Browse Source

增加自动后退状态机函数

master
Lizongdi 1 month ago
parent
commit
a18dcd4928
  1. 4
      diaoerqiege/BHBF_Robot_Lifting_Lug/.settings/language.settings.xml
  2. 2
      diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Inc/FSM.h
  3. 2
      diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Inc/robot_state.h
  4. 4
      diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c
  5. 17
      diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/robot_state.c

4
diaoerqiege/BHBF_Robot_Lifting_Lug/.settings/language.settings.xml

@ -5,7 +5,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-63235014752314356" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1256539702914033922" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
@ -16,7 +16,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-63235014752314356" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1256539702914033922" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>

2
diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Inc/FSM.h

@ -16,7 +16,7 @@ typedef enum _MoveSTATE_t
Manual_State,
low_Speed_Manual_State,
AUTO_FORWARD,
AUTO_BACKWARD
} MoveSTATE_t;
typedef enum _Front_MoveSTATE_t

2
diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Inc/robot_state.h

@ -19,7 +19,7 @@ extern void Manual_State_Do(void);
extern void low_Speed_Manual_State_Do(void);
extern void HALT_State_Do(void);
extern void auto_forward_state_do(void);
extern void auto_backward_state_do(void);
// ********前端升降电机***********
extern void Manual_Up_State_Do(void);

4
diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c

@ -35,8 +35,8 @@ transition_t MoveTransitions[] =
{ Move_HALT, HALT_State_Do },
{ Manual_State, Manual_State_Do },
{ low_Speed_Manual_State, low_Speed_Manual_State_Do},
{ AUTO_FORWARD, auto_forward_state_do}
{ AUTO_FORWARD, auto_forward_state_do},
{ AUTO_BACKWARD, auto_backward_state_do}
};
transition_t FrontendMoveTransitions[] =

17
diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/robot_state.c

@ -397,6 +397,23 @@ void auto_forward_state_do(void)
GV.RightBackMotor.Target_Velcity = -Ref_Speed;
}
void auto_backward_state_do(void)
{
if((GV.MK32_Key.CH10_LD1 >= -1000) && (GV.MK32_Key.CH10_LD1 <= 1000))
{
speedAdj = -995.0f + (GV.MK32_Key.CH10_LD1 + 1000.0f) * 0.005f;
Speed_Ctrl = ((speedAdj + 1000) * 360 / 1000);
}
Ref_Speed = Speed_Ctrl;
Act_Speed =Speed_Ctrl;
if(Ref_Speed >= 5000) Ref_Speed = 5000;
GV.LeftFrontMotor.Target_Velcity = -Ref_Speed;
GV.RightFrontMotor.Target_Velcity = Ref_Speed;
GV.LeftBackMotor.Target_Velcity = -Ref_Speed;
GV.RightBackMotor.Target_Velcity = Ref_Speed;
}

Loading…
Cancel
Save