简单调速
This commit is contained in:
parent
3d482325fb
commit
8fc2f50677
36
MDK-ARM/.vscode/c_cpp_properties.json
vendored
36
MDK-ARM/.vscode/c_cpp_properties.json
vendored
@ -3,26 +3,26 @@
|
|||||||
{
|
{
|
||||||
"name": "R1-shooter",
|
"name": "R1-shooter",
|
||||||
"includePath": [
|
"includePath": [
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Core\\Inc",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Core\\Inc",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Inc",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Inc",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Inc\\Legacy",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Inc\\Legacy",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\include",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\include",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\CMSIS_RTOS_V2",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\CMSIS_RTOS_V2",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\RVDS\\ARM_CM4F",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\RVDS\\ARM_CM4F",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Drivers\\CMSIS\\Device\\ST\\STM32F4xx\\Include",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Drivers\\CMSIS\\Device\\ST\\STM32F4xx\\Include",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Drivers\\CMSIS\\Include",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Drivers\\CMSIS\\Include",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\User\\bsp",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\User\\bsp",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\User\\module",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\User\\module",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\User\\task",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\User\\task",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\User\\lib",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\User\\lib",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\User\\device",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\User\\device",
|
||||||
"D:\\keil\\ARM\\ARMCC\\include",
|
"D:\\keil\\ARM\\ARMCC\\include",
|
||||||
"D:\\keil\\ARM\\ARMCC\\include\\rw",
|
"D:\\keil\\ARM\\ARMCC\\include\\rw",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\MDK-ARM",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\MDK-ARM",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Core\\Src",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Core\\Src",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Src",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Drivers\\STM32F4xx_HAL_Driver\\Src",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source",
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source",
|
||||||
"d:\\Desktop\\r1\\r1_upper\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\MemMang"
|
"d:\\Desktop\\r1\\r1_upper - xiaomi\\r1upper-1\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\MemMang"
|
||||||
],
|
],
|
||||||
"defines": [
|
"defines": [
|
||||||
"USE_HAL_DRIVER",
|
"USE_HAL_DRIVER",
|
||||||
|
6
MDK-ARM/.vscode/keil-assistant.log
vendored
6
MDK-ARM/.vscode/keil-assistant.log
vendored
@ -90,3 +90,9 @@
|
|||||||
|
|
||||||
[info] Log at : 2025/5/20|19:15:21|GMT+0800
|
[info] Log at : 2025/5/20|19:15:21|GMT+0800
|
||||||
|
|
||||||
|
[info] Log at : 2025/5/21|17:11:48|GMT+0800
|
||||||
|
|
||||||
|
[info] Log at : 2025/5/21|19:21:48|GMT+0800
|
||||||
|
|
||||||
|
[info] Log at : 2025/5/22|16:11:31|GMT+0800
|
||||||
|
|
||||||
|
18
MDK-ARM/.vscode/settings.json
vendored
18
MDK-ARM/.vscode/settings.json
vendored
@ -13,6 +13,22 @@
|
|||||||
"functional": "cpp",
|
"functional": "cpp",
|
||||||
"vofa.h": "c",
|
"vofa.h": "c",
|
||||||
"user_math.h": "c",
|
"user_math.h": "c",
|
||||||
"queue": "cpp"
|
"queue": "cpp",
|
||||||
|
"cctype": "cpp",
|
||||||
|
"cerrno": "cpp",
|
||||||
|
"cfloat": "cpp",
|
||||||
|
"clocale": "cpp",
|
||||||
|
"cmath": "cpp",
|
||||||
|
"cstdarg": "cpp",
|
||||||
|
"cstddef": "cpp",
|
||||||
|
"cstdint": "cpp",
|
||||||
|
"cstdio": "cpp",
|
||||||
|
"cstdlib": "cpp",
|
||||||
|
"cwchar": "cpp",
|
||||||
|
"cwctype": "cpp",
|
||||||
|
"exception": "cpp",
|
||||||
|
"new": "cpp",
|
||||||
|
"typeinfo": "cpp",
|
||||||
|
"ostream": "cpp"
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -10,8 +10,7 @@ extern int key;
|
|||||||
// C键 sw[4]👆 200 中1000 👇1800
|
// C键 sw[4]👆 200 中1000 👇1800
|
||||||
// D键 sw[5]👆 1800 👇200
|
// D键 sw[5]👆 1800 👇200
|
||||||
|
|
||||||
#define START 0
|
#define M_SPEED 4000
|
||||||
#define OUT 100
|
|
||||||
|
|
||||||
#if HANDLING3 == 1
|
#if HANDLING3 == 1
|
||||||
//三摩擦轮运球!!!
|
//三摩擦轮运球!!!
|
||||||
@ -21,8 +20,9 @@ const fp32 Ball:: M3508_speed_PID[3] = {15, 0.03, 0};
|
|||||||
const fp32 Ball:: Extend_speed_PID[3] = { 25, 0, 0.};
|
const fp32 Ball:: Extend_speed_PID[3] = { 25, 0, 0.};
|
||||||
const fp32 Ball:: Extend_angle_PID[3]= { 60, 0, 0.1};
|
const fp32 Ball:: Extend_angle_PID[3]= { 60, 0, 0.1};
|
||||||
|
|
||||||
|
//摩擦轮转速
|
||||||
int speedm=0;
|
int speedm=0;
|
||||||
int speedm1=0;
|
|
||||||
//PE11 气缸
|
//PE11 气缸
|
||||||
|
|
||||||
Ball ::Ball()
|
Ball ::Ball()
|
||||||
@ -64,27 +64,6 @@ Ball ::Ball()
|
|||||||
currentState1= BALL_IDLE;
|
currentState1= BALL_IDLE;
|
||||||
|
|
||||||
|
|
||||||
// for(int i = 0;i < MOTOR_NUM;i ++)
|
|
||||||
// {
|
|
||||||
// //摩擦轮滤波器初始化
|
|
||||||
// LowPassFilter2p_Init(filter.in + i , 500,
|
|
||||||
// -1.0f);
|
|
||||||
// LowPassFilter2p_Init(filter.out + i, 500,
|
|
||||||
// -1.0f);
|
|
||||||
// }
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void Ball :: Filter_init(float target_freq)
|
|
||||||
{
|
|
||||||
for(int i = 0;i < MOTOR_NUM;i ++)
|
|
||||||
{
|
|
||||||
//摩擦轮滤波器初始化
|
|
||||||
LowPassFilter2p_Init(filter.in + i , target_freq,
|
|
||||||
-1.0f);
|
|
||||||
LowPassFilter2p_Init(filter.out + i, target_freq,
|
|
||||||
-1.0f);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Ball ::Extend_control(int angle)
|
void Ball ::Extend_control(int angle)
|
||||||
@ -168,11 +147,7 @@ void Ball::ballTake(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int flag =0;
|
|
||||||
int ball_state = 0;
|
|
||||||
|
|
||||||
void Ball::ballHadling(void)
|
void Ball::ballHadling(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -181,7 +156,6 @@ void Ball::ballHadling(void)
|
|||||||
{
|
{
|
||||||
case BALL_IDLE:
|
case BALL_IDLE:
|
||||||
HAL_GPIO_WritePin(CLOSE_GPIO_Port, CLOSE_Pin, GPIO_PIN_RESET);//确保闭合气缸
|
HAL_GPIO_WritePin(CLOSE_GPIO_Port, CLOSE_Pin, GPIO_PIN_RESET);//确保闭合气缸
|
||||||
// if (key > 0) // 检测按键是否被按下
|
|
||||||
if (rc_ctrl.sw[4] > 1000||key > 0) // 检测按键是否被按下,自动回弹的
|
if (rc_ctrl.sw[4] > 1000||key > 0) // 检测按键是否被按下,自动回弹的
|
||||||
{
|
{
|
||||||
speedm=-4000;
|
speedm=-4000;
|
||||||
@ -223,7 +197,7 @@ void Ball::ballHadling(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case BALL_CLOSE:
|
case BALL_CLOSE:
|
||||||
// osDelay(200); // 延时50ms
|
|
||||||
if(ball_state == 1)
|
if(ball_state == 1)
|
||||||
{
|
{
|
||||||
HAL_GPIO_WritePin(CLOSE_GPIO_Port, CLOSE_Pin, GPIO_PIN_RESET);
|
HAL_GPIO_WritePin(CLOSE_GPIO_Port, CLOSE_Pin, GPIO_PIN_RESET);
|
||||||
@ -235,7 +209,6 @@ void Ball::ballHadling(void)
|
|||||||
case BALL_FINISH:
|
case BALL_FINISH:
|
||||||
osDelay(200); // 延时50ms
|
osDelay(200); // 延时50ms
|
||||||
key=0; // 重置按键状态
|
key=0; // 重置按键状态
|
||||||
flag=0;
|
|
||||||
speedm=0;
|
speedm=0;
|
||||||
osThreadFlagsSet(task_struct.thread.shoot, BALL_OK);
|
osThreadFlagsSet(task_struct.thread.shoot, BALL_OK);
|
||||||
currentState1 = BALL_IDLE; // 回到空闲状态
|
currentState1 = BALL_IDLE; // 回到空闲状态
|
||||||
|
@ -48,7 +48,6 @@ class Ball
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Ball();
|
Ball();
|
||||||
void Filter_init(float target_freq);
|
|
||||||
void Spin(float speed);
|
void Spin(float speed);
|
||||||
void ballHadling(void);
|
void ballHadling(void);
|
||||||
void ballDown(void);
|
void ballDown(void);
|
||||||
@ -58,6 +57,8 @@ public:
|
|||||||
void Extend_control(int angle);
|
void Extend_control(int angle);
|
||||||
|
|
||||||
BallState_t currentState1; // 当前状态
|
BallState_t currentState1; // 当前状态
|
||||||
|
int flag;//暂时还没用到
|
||||||
|
int ball_state ;//光电检测
|
||||||
|
|
||||||
//伸缩6020
|
//伸缩6020
|
||||||
int16_t e_result[2];
|
int16_t e_result[2];
|
||||||
@ -70,7 +71,6 @@ public:
|
|||||||
volatile BallState_t ballStatus;//是否有球
|
volatile BallState_t ballStatus;//是否有球
|
||||||
volatile uint32_t flag_thread;//接收传回的线程通知
|
volatile uint32_t flag_thread;//接收传回的线程通知
|
||||||
|
|
||||||
Filter filter;
|
|
||||||
private:
|
private:
|
||||||
//滤波一下
|
//滤波一下
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user