You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
104 lines
1.9 KiB
104 lines
1.9 KiB
1 week ago
|
/*
|
||
|
* robot_state.h
|
||
|
*
|
||
|
* Created on: Aug 2, 2024
|
||
|
* Author: akeguo
|
||
|
*/
|
||
|
|
||
|
#ifndef INC_ROBOT_STATE_H_
|
||
|
#define INC_ROBOT_STATE_H_
|
||
|
|
||
|
#include "BHBF_ROBOT.h"
|
||
|
#include "bsp_include.h"
|
||
|
|
||
|
|
||
|
|
||
|
typedef struct ChgRoad_Parameters
|
||
|
{
|
||
|
double KP11;
|
||
|
double KP22;
|
||
|
double KP33;
|
||
|
double KP44;
|
||
|
double KPCR1;
|
||
|
double KDCR1;
|
||
|
int32_t change_road_straight_count;
|
||
|
int32_t change_road_distance; //换道时的距离(执行换道前进程序的次数,可以理解为执行次数越多,机器人走的越远)
|
||
|
int32_t change_road_status_flag; //换道标志位
|
||
|
int32_t change_road_finish_flag;
|
||
|
|
||
|
double speed;
|
||
|
/**转弯*/
|
||
|
bool isTurn;
|
||
|
|
||
|
int Ini_Postition_L;
|
||
|
int Final_Postition_L;
|
||
|
int Ini_Postition_R;
|
||
|
int Final_Postition_R;
|
||
|
double ChgWidth;
|
||
|
}ChgRoad_Parameters;
|
||
|
|
||
|
|
||
|
typedef struct
|
||
|
{
|
||
|
double KP1;
|
||
|
double KP2;
|
||
|
double KP3;
|
||
|
double KP4;
|
||
|
double KPFB1;
|
||
|
double KDFB1;
|
||
|
int32_t deltaAngle1;
|
||
|
int32_t deltaAngle2;
|
||
|
int32_t deltaAngle3;
|
||
|
double ExpectationAngle;
|
||
|
int32_t change_road_finish_flag;
|
||
|
|
||
|
}AutoMove_Parameters;
|
||
|
|
||
|
|
||
|
extern ChgRoad_Parameters Chg_Pa;
|
||
|
extern int* AuTo_Flag;
|
||
|
|
||
|
|
||
|
void Manual_State_Entry(void);
|
||
|
void Manual_State_Do(void);
|
||
|
void LaneChangeDistance_Setting_State_Do(void);
|
||
|
void BackWardsDistance_Setting_State_Do(void);
|
||
|
void Auto_State_Do(void);
|
||
|
void Abnormal_State_Do(void);
|
||
|
//前进、后退、左转、右转
|
||
|
void Forwards_State_Do(void);
|
||
|
void Backwards_State_Do(void);
|
||
|
void TurnLeft_State_Do(void);
|
||
|
void TurnRight_State_Do(void);
|
||
|
|
||
|
void HALT_State_Do(void);//停止
|
||
|
|
||
|
|
||
|
void SwingHALT_State_Do(void);
|
||
|
void SwingLeft_State_Do(void);
|
||
|
void SwingRight_State_Do(void);
|
||
|
|
||
|
|
||
|
void SetLaneChangeDistance_State_Do(void);
|
||
|
void SetBackwardsDistance_State_Do(void);
|
||
|
void OtherMode_State_Do(void);
|
||
|
|
||
|
|
||
|
|
||
|
void TiltUp_Do();
|
||
|
void TiltDown_Do();
|
||
|
void TiltHalt_Do();
|
||
|
|
||
|
void TiltHome_Do();
|
||
|
void TiltCurrentModeDown_Do();
|
||
|
|
||
|
void SwingHome_Do();
|
||
|
|
||
|
void Auto();
|
||
|
void ChgLeft();
|
||
|
void ChgRight();
|
||
|
void ChgUp();
|
||
|
void ChgDown();
|
||
|
void ChgFinish();
|
||
|
#endif /* INC_ROBOT_STATE_H_ */
|