Compare commits

..

No commits in common. "test" and "master" have entirely different histories.
test ... master

14 changed files with 387 additions and 660 deletions

View File

@ -1,5 +0,0 @@
{
"files.associations": {
"speed_to_hall.h": "c"
}
}

View File

@ -50,9 +50,6 @@
#include "systick.h"
#include "service_error_count.h"
#include "speed_to_hall.h"
void task_printf_init();
//
@ -114,7 +111,7 @@ static void task_start (void *p_arg)
// ck_f=rcu_clock_freq_get(CK_APB1);
OSTimeDlyHMSM(0u, 0u, 0u, 100u);
//蜂鸣器开,初始化开始
// beep_enable();
beep_enable();
//flash引脚初始化
Flash_GPIO_Init();
@ -129,7 +126,6 @@ static void task_start (void *p_arg)
// term_printf("\n udp init \r\n\r\n");
OSTimeDlyHMSM(0u, 0u, 0u, 100u);
init_hall_speed_module();
//光电开关初始化
init_photoelectric_switch_module();
@ -209,7 +205,7 @@ static void task_start (void *p_arg)
//蜂鸣器关,初始化结束
beep_disable();
while (DEF_TRUE) {
while (DEF_TRUE) {
OSTimeDlyHMSM(0u, 0u, 1u, 0u);
OSTaskDel(OS_PRIO_SELF);
}

View File

@ -3,333 +3,333 @@
#include "ptz_type_select.h"
#ifdef PTZ_LIGHT_GEAR_L6235D_AS5047D
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 100.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 4.05
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 405.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///水平电机调速模拟电压最大值
#define PTZ_HORI_VR_MAX 1999
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///水平电机调速模拟电压最小值
#define PTZ_HORI_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 3000.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 400.0//600.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 7.5
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 1.0//1.5//0.65
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 5.0//4.0
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 200.0
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 7.00
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 1400.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///垂直电机调速模拟电压最大值
#define PTZ_VERT_VR_MAX 1999
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///垂直电机调速模拟电压最小值
#define PTZ_VERT_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 3000.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 300.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 2.20
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.22//0.43
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 1.7//1.8
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_HORI_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_HORI_ONE_CYCLE_HALL_NUM 15.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_VERT_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_VERT_ONE_CYCLE_HALL_NUM 15.0
#endif
#ifdef PTZ_MEDIUM_WORM_L6235D_AS5047D
///*******************************<EFBFBD><EFBFBD>׼<EFBFBD><EFBFBD>̨******************************/
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
///*******************************标准云台******************************/
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 25.0//(25.0 * 1.5)//20
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 80.0//62.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 2000.0//2325//1240.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///水平电机调速模拟电压最大值
#define PTZ_HORI_VR_MAX 1999
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///水平电机调速模拟电压最小值
#define PTZ_HORI_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 3000.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 400.0//600.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 1.5//1.29//2.4
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.2//0.3//0.26//0.4
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 1.2//2.0
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 75.0//(50.0 * (52.0 / 35.0))//20.0
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 80.0//54.00
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 6000.0//4011.429//1080.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///垂直电机调速模拟电压最大值
#define PTZ_VERT_VR_MAX 1999
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///垂直电机调速模拟电压最小值
#define PTZ_VERT_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 3000.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 400.0//600.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 0.5//0.74//2.7
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.07//0.1//0.15//0.5
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 0.5//0.7//2.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_HORI_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_HORI_ONE_CYCLE_HALL_NUM 15.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_VERT_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_VERT_ONE_CYCLE_HALL_NUM 15.0
/*******************************<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>******************************/
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
/*******************************激光云台定制******************************/
// ///水平电机减速比
// #define PTZ_HORI_MOTOR_RATIO (100.0 * 1.5)
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
// ///水平大齿轮减速比
// #define PTZ_HORI_BIG_GEAR_RATIO 62.0
// ///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
// ///水平总减速比
// #define PTZ_HORI_RATIO 9300
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
// ///水平电机调速模拟电压最大值
// #define PTZ_HORI_VR_MAX 4095
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
// ///水平电机调速模拟电压最小值
// #define PTZ_HORI_VR_MIN 0
//
// ///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
// ///转速单位 转/每分
// ///水平电机最大转速
// #define PTZ_HORI_MOTOR_MAX_SPEED 3000.0
// ///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
// ///水平电机最小转速
// #define PTZ_HORI_MOTOR_MIN_SPEED 600.0
// ///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
// ///水平云台最大转速
// #define PTZ_HORI_MAX_SPEED 0.32
// ///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
// ///水平云台最小转速
// #define PTZ_HORI_MIN_SPEED 0.06
// ///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
// ///水平云台默认最佳速度
// #define PTZ_HORI_BEST_SPEED 0.32
//
// /**********************************************************/
//
// ///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
// ///磁编码器和电机之间的减速比
// #define PTZ_VERT_MOTOR_RATIO (50.0 * (52.0 / 35.0))
// ///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
// ///磁编码器与云台轴之间的减速比
// #define PTZ_VERT_BIG_GEAR_RATIO 54.00
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
// ///垂直总减速比
// #define PTZ_VERT_RATIO 4011.429
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
// ///垂直电机调速模拟电压最大值
// #define PTZ_VERT_VR_MAX 4095
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
// ///垂直电机调速模拟电压最小值
// #define PTZ_VERT_VR_MIN 0
//
// ///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
// ///转速单位 转/每分
// ///垂直电机最大转速
// #define PTZ_VERT_MOTOR_MAX_SPEED 3000.0
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
// ///垂直电机最小转速
// #define PTZ_VERT_MOTOR_MIN_SPEED 600.0
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
// ///垂直云台最大转速
// #define PTZ_VERT_MAX_SPEED 0.74
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
// ///垂直云台最小转速
// #define PTZ_VERT_MIN_SPEED 0.15
// ///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
// ///垂直云台默认最佳速度
// #define PTZ_VERT_BEST_SPEED 0.7
//
//
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机磁极对数
// #define PTZ_HORI_MOTOR_POLE_PAIRS 5.0
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机霍尔传感器对数
// #define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机旋转一圈FG返回的霍尔脉冲数
// #define PTZ_HORI_ONE_CYCLE_HALL_NUM 15.0
//
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机磁极对数
// #define PTZ_VERT_MOTOR_POLE_PAIRS 5.0
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机霍尔传感器对数
// #define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
// //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// //电机旋转一圈FG返回的霍尔脉冲数
// #define PTZ_VERT_ONE_CYCLE_HALL_NUM 15.0
#endif
#ifdef PTZ_HEAVY_WORM_L6235D_AS5047D
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>************************************<2A><>׼
///水平电机减速比************************************标准
#define PTZ_HORI_MOTOR_RATIO 25.0//(25.0 * 1.0)
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 52.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 1300.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///水平电机调速模拟电压最大值
#define PTZ_HORI_VR_MAX 1999
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///水平电机调速模拟电压最小值
#define PTZ_HORI_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 3000.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 300.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 2.3
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.2
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 2.1
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>************************************<2A><>׼
///磁编码器和电机之间的减速比************************************标准
#define PTZ_VERT_MOTOR_RATIO 125.8065//(50.0 * (78.0 / 31.0))
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 60.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 7548.3871
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///垂直电机调速模拟电压最大值
#define PTZ_VERT_VR_MAX 1999
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///垂直电机调速模拟电压最小值
#define PTZ_VERT_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 3000.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 600.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 0.4
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.08
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 0.30
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_HORI_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_HORI_ONE_CYCLE_HALL_NUM 15.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_VERT_MOTOR_POLE_PAIRS 5.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_VERT_ONE_CYCLE_HALL_NUM 15.0
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_12V
/*****************************<EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**********************************/
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
/*****************************第二个版本**********************************/
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 27.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 50.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 1350.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///水平电机调速模拟电压最大值
#define PTZ_HORI_VR_MAX 1999
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///水平电机调速模拟电压最小值
#define PTZ_HORI_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 2000//2000.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 405.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 1.48//1.48
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.3
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 1.2
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 27.0//19.2//27.0
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 50.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 1350.0//960.0//1350.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///垂直电机调速模拟电压最大值
#define PTZ_VERT_VR_MAX 1999
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///垂直电机调速模拟电压最小值
#define PTZ_VERT_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 2000.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 405.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 1.48//2.08//1.48
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.3//0.42//0.3
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 1.2//1.8//1.2
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_HORI_MOTOR_POLE_PAIRS 4.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_HORI_ONE_CYCLE_HALL_NUM 12.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_VERT_MOTOR_POLE_PAIRS 4.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_VERT_ONE_CYCLE_HALL_NUM 12.0
#endif
@ -337,173 +337,173 @@
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_24V
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
#define PTZ_HORI_MOTOR_RATIO 3.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 27.0
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 50.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
#define PTZ_HORI_RATIO 150.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///水平总减速比
#define PTZ_HORI_RATIO 1350.0
///水平电机调速模拟电压最大值
#define PTZ_HORI_VR_MAX 1999
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
#define PTZ_HORI_VR_MIN 220
///水平电机调速模拟电压最小值
#define PTZ_HORI_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 3000
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 405.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
#define PTZ_HORI_MAX_SPEED 20.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
#define PTZ_HORI_MIN_SPEED 2.7
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
#define PTZ_HORI_BEST_SPEED 12.0
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 2.2
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.3
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 1.6
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 27.0
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 50.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 1350.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֵ
///垂直电机调速模拟电压最大值
#define PTZ_VERT_VR_MAX 1999
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>Сֵ
///垂直电机调速模拟电压最小值
#define PTZ_VERT_VR_MIN 0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 3000.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 405.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 2.2
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.3
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 1.6
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_HORI_MOTOR_POLE_PAIRS 4.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_HORI_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_HORI_ONE_CYCLE_HALL_NUM 12.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机磁极对数
#define PTZ_VERT_MOTOR_POLE_PAIRS 4.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机霍尔传感器对数
#define PTZ_VERT_MOTOR_HALL_PAIRS 3.0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תһȦFG<EFBFBD><EFBFBD><EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//电机旋转一圈FG返回的霍尔脉冲数
#define PTZ_VERT_ONE_CYCLE_HALL_NUM 12.0
#endif
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//步进电机
#ifdef PTZ_SUPER_LIGHT_WORM_STEP_TMC2160_AS5047D_24V
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 1.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 50.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 50.0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 750.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 1.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 15.0
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.02
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
#define PTZ_HORI_BEST_SPEED 2.0//10.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD><EFBFBD>ٶȲ<EFBFBD><EFBFBD>ܹ<EFBFBD><EFBFBD><EFBFBD>ӦΪ<EFBFBD><EFBFBD>ӦŤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
///<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ɲ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 2.0//10.0 //步进电机默认速度不能过大,应为对应扭矩最大值
///快要到达指定位置时的刹车转速
#define PTZ_HORI_BREAK_SPEED 0.3
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 1.0
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 50.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 50.0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 500//300.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 1.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 10.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.02
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 2.0//6.0
///<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ɲ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///快要到达指定位置时的刹车转速
#define PTZ_VERT_BREAK_SPEED 0.3
///////////////////**//////////////////////////////
///<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
///步进电机默认步距角
#define PTZ_HORI_MOTOR_STEP 1.8
///<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
///步进电机默认步距角
#define PTZ_VERT_MOTOR_STEP 1.8
#endif
#ifdef PTZ_MEDIUM_WORM_STEP_TMC2160_AS5047D_24V
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平电机减速比
#define PTZ_HORI_MOTOR_RATIO 1.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平大齿轮减速比
#define PTZ_HORI_BIG_GEAR_RATIO 80.0
///ˮƽ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///水平总减速比
#define PTZ_HORI_RATIO 80.0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///水平电机最大转速
#define PTZ_HORI_MOTOR_MAX_SPEED 500.0
///ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平电机最小转速
#define PTZ_HORI_MOTOR_MIN_SPEED 1.6
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///水平云台最大转速
#define PTZ_HORI_MAX_SPEED 6.25
///ˮƽ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///水平云台最小转速
#define PTZ_HORI_MIN_SPEED 0.02
///ˮƽ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///水平云台默认最佳速度
#define PTZ_HORI_BEST_SPEED 1.5
///<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ɲ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///快要到达指定位置时的刹车转速
#define PTZ_HORI_BREAK_SPEED 0.3
/**********************************************************/
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器和电机之间的减速比
#define PTZ_VERT_MOTOR_RATIO 1.5
///<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///磁编码器与云台轴之间的减速比
#define PTZ_VERT_BIG_GEAR_RATIO 80.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD>ܼ<EFBFBD><EFBFBD>ٱ<EFBFBD>
///垂直总减速比
#define PTZ_VERT_RATIO 120.0
///ת<EFBFBD>ٵ<EFBFBD>λ ת/ÿ<><C3BF>
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///转速单位 转/每分
///垂直电机最大转速
#define PTZ_VERT_MOTOR_MAX_SPEED 300.0
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直电机最小转速
#define PTZ_VERT_MOTOR_MIN_SPEED 2.4
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///垂直云台最大转速
#define PTZ_VERT_MAX_SPEED 2.5
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Сת<EFBFBD><EFBFBD>
///垂直云台最小转速
#define PTZ_VERT_MIN_SPEED 0.02
///<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>̨Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
///垂直云台默认最佳速度
#define PTZ_VERT_BEST_SPEED 0.8
///<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ɲ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
///快要到达指定位置时的刹车转速
#define PTZ_VERT_BREAK_SPEED 0.3
///////////////////**//////////////////////////////
///<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
///步进电机默认步距角
#define PTZ_HORI_MOTOR_STEP 1.8
///<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
///步进电机默认步距角
#define PTZ_VERT_MOTOR_STEP 1.8
#endif

View File

@ -3747,9 +3747,9 @@ static void ptz_get_angle_task()
{
while(1)
{
// ptz_hori_get_angle_a();
ptz_hori_get_angle_a();
OSTimeDlyHMSM(0u, 0u, 0u, 1u);
// ptz_vert_get_angle_a();
ptz_vert_get_angle_a();
OSTimeDlyHMSM(0u, 0u, 0u, 1u);
}
}

View File

@ -7,12 +7,8 @@
#include "full_bridge.h"
#include "as5047d.h"
#include "speed_to_hall.h"
#ifdef PTZ_BLDC_MOTOR
static volatile uint32_t hori_speed_task_time = 0;
//发送云台实际转速
void ptz_send_speed(char dev, char speed)
{
@ -98,7 +94,7 @@ void ptz_hori_pid_clear_zero()
// hori_dac0_data_out(0);
}
static float ptz_hori_pid_calculate(float H_SampSpeed, uint32_t H_SampTime)
static float ptz_hori_pid_calculate(float H_SampSpeed)
{
float H_IError,H_IIncPid;
H_IError = g_ptz.hori_speed_set - H_SampSpeed;//当前误差PID_INPUT_LIMIT
@ -112,10 +108,7 @@ static float ptz_hori_pid_calculate(float H_SampSpeed, uint32_t H_SampTime)
// H_IError = PTZ_HORI_PID_INPUT_LIMIT * -1;
// }
//增量计算
// H_IIncPid = g_ptz.hori_pid.A * H_IError + g_ptz.hori_pid.B * g_ptz.hori_pid.LastError + g_ptz.hori_pid.C * g_ptz.hori_pid.PrevError;
H_IIncPid = PTZ_HORI_PID_HORI_KP * (H_IError - g_ptz.hori_pid.LastError) + PTZ_HORI_PID_HORI_TI * H_SampTime * H_IError;
H_IIncPid = g_ptz.hori_pid.A * H_IError + g_ptz.hori_pid.B * g_ptz.hori_pid.LastError + g_ptz.hori_pid.C * g_ptz.hori_pid.PrevError;
//存储误差,用于下次计算
g_ptz.hori_pid.PrevError = g_ptz.hori_pid.LastError;
g_ptz.hori_pid.LastError = H_IError;
@ -305,9 +298,7 @@ static void ptz_hori_pid_task()
#endif
// #ifdef PTZ_PID_HALL_SPEED //霍尔反馈测速
// OSTimeDlyHMSM(0u, 0u, 0u, PTZ_HORI_PID_T);
#if 0
#ifdef PTZ_PID_HALL_SPEED //»ô¶û·´À¡²âËÙ
g_ptz.hori_pid.hall_h1_count = 0;
g_ptz.hori_pid.hall_h2_count = 0;
g_ptz.hori_pid.hall_h3_count = 0;
@ -567,14 +558,6 @@ static void ptz_hori_pid_task()
}
static volatile uint32_t lastTime = 0;
static volatile uint32_t Time = 0;
Time = OSTimeGet();
hori_speed_task_time = Time - lastTime;
lastTime = Time;
g_ptz.hori_motor_speed_hall_actual = g_ptz.hori_pid.hall_h123_motor_speed;
/* ********************************** */
@ -627,51 +610,6 @@ static void ptz_hori_pid_task()
// }
// else
/* 霍尔计算速度 */
#if 1
g_speed_to_hall.hori_speed_t.flag = calculation_enable;
if (g_ptz.hori_speed_actual == 0) {
h_pwm_duty_change(220);
}
while (!(g_speed_to_hall.hori_speed_t.flag == calculation_start
|| g_ptz.hori_start_stop_set == PTZ_HORI_STOP)) {
OSTimeDlyHMSM(0u, 0u, 0u, 1u);
}
if (g_ptz.hori_start_stop_set == PTZ_HORI_STOP) {
continue;
}
OSTimeDlyHMSM(0u, 0u, 0u, 50u);
g_speed_to_hall.hori_speed_t.flag = calculation_ok;
while (!(g_speed_to_hall.hori_speed_t.flag == calculation_end
|| g_ptz.hori_start_stop_set == PTZ_HORI_STOP)) {
OSTimeDlyHMSM(0u, 0u, 0u, 1u);
}
if (g_ptz.hori_start_stop_set == PTZ_HORI_STOP) {
continue;
}
uint32_t time;
if (g_speed_to_hall.hori_speed_t.endTime_60ms > g_speed_to_hall.hori_speed_t.startTime_60ms) {
time = (g_speed_to_hall.hori_speed_t.endTime_60ms - g_speed_to_hall.hori_speed_t.startTime_60ms - 1) * SPEED_TIMER_PERIOD
+ g_speed_to_hall.hori_speed_t.endTime_us + (SPEED_TIMER_PERIOD - g_speed_to_hall.hori_speed_t.startTime_us);
}
else if (g_speed_to_hall.hori_speed_t.endTime_60ms = g_speed_to_hall.hori_speed_t.startTime_60ms) {
time = g_speed_to_hall.hori_speed_t.endTime_us - g_speed_to_hall.hori_speed_t.startTime_us;
}
else {
time = (g_speed_to_hall.hori_speed_t.endTime_60ms + (TIME_60MS_MAX - g_speed_to_hall.hori_speed_t.startTime_60ms) - 1) * SPEED_TIMER_PERIOD
+ g_speed_to_hall.hori_speed_t.endTime_us + (SPEED_TIMER_PERIOD - g_speed_to_hall.hori_speed_t.startTime_us);
}
g_ptz.hori_speed_actual = (float)g_speed_to_hall.hori_speed_t.hallNum * 5000000 / time / PTZ_HORI_RATIO;
#endif
if(g_ptz.hori_speed_actual > g_ptz.hori_speed_set * 2)
{//速度大于设定速度的3倍
g_ptz.hori_pid.PidUT_float = g_ptz.hori_pid.PidUT_float * 0.7;////新增直线减速
@ -682,7 +620,7 @@ static void ptz_hori_pid_task()
else
{
//计算PID控制器输出值
g_ptz.hori_pid.PidUT_float = ptz_hori_pid_calculate(g_ptz.hori_speed_actual, time) + g_ptz.hori_pid.LastUT_float;
g_ptz.hori_pid.PidUT_float = ptz_hori_pid_calculate(g_ptz.hori_speed_actual) + g_ptz.hori_pid.LastUT_float;
//控制PID的输出值增量当前输出值与上一次输出值的差值必须在某个范围内
//即防止PID增量过大
@ -724,7 +662,6 @@ static void ptz_hori_pid_task()
// hori_dac0_data_out(g_ptz.hori_pid.PidUT_uint);
h_pwm_duty_change(g_ptz.hori_pid.PidUT_uint);
// h_pwm_duty_change(500);
//将当前PID输出值保存
g_ptz.hori_pid.LastUT_float = g_ptz.hori_pid.PidUT_float;
@ -1588,57 +1525,7 @@ void init_speed_module(void)
}
#endif
static volatile float angleDifference = 0;
void as5047d_hori_get_speed(void)
{
#if 0
static float lastAngle = 0;
// static uint32_t lastTime = 0;
static float angle = 0;
// static uint32_t time = 0;
static int num = 0;
if (num++ > 100) {
if (g_ptz.hori_start_stop_set == PTZ_HORI_START) {
// time = OSTimeGet();
// angle = as5047d_hori_get_angle();
for(int m = 0; m < 5; m++) {
angle = as5047d_hori_get_angle_a();
if(angle < 0 || //防止读出的角度为负值
angle > 360.0 ||//防止读出的数值超过360
isnan(angle) == 1 ||//防止读出的不是一个数
((fabs(angle - lastAngle) > PTZ_HORI_ANGLE_DIFF_A) && (fabs(angle - lastAngle) < PTZ_HORI_ANGLE_DIFF_B)))
{//以上错误的数据都该舍弃,从新读取
asm("nop");asm("nop");asm("nop");asm("nop");asm("nop");
}
else
{
break;
}
}
if (angle < 0 || angle > 360.0 || isnan(angle)) {
return;
}
angleDifference = fabs(angle - lastAngle);
if (angleDifference > 180) {
angleDifference = 360 - angleDifference;
}
// g_ptz.hori_speed_actual = angleDifference / (time - lastTime) * 1000.0;
g_ptz.hori_speed_actual = angleDifference * 0.03082;
lastAngle = angle;
}
}
#endif
}

View File

@ -8,114 +8,114 @@
#ifdef PTZ_LIGHT_GEAR_L6235D_AS5047D
#define PID_B 1
//ˮƽ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.6 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//ˮƽ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
// #define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
// #define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//水平速度小于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.6 //水平比例调速增加的倍数
//水平速度大于设定速度时
// #define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //水平比例调速的范围
// #define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //水平比例调速增加的倍数
//垂直速度小于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //垂直比例调速增加的倍数
#define PTZ_PID_HALL_SPEED 1
#define PTZ_HORI_PID_T 30u
#define PTZ_HORI_PID_HORI_KP 3.5//4//1.4 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_KP 3.5//4//1.4 //0.014//0.005 //比例系数
#define PTZ_HORI_PID_HORI_TI 100.0 //积分系数
#define PTZ_HORI_PID_HORI_TD 0.0 //微分系数
#define PTZ_HORI_PID_INPUT_LIMIT 100//6.91//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_INPUT_LIMIT 100//6.91//PID调速输入值限定
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_VERT_PID_T 20u
#define PTZ_VERT_PID_VERT_KP 3//2//1.4 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_KP 3//2//1.4 //0.014//0.005 //比例系数
#define PTZ_VERT_PID_VERT_TI 100.0 //积分系数
#define PTZ_VERT_PID_VERT_TD 0.0 //微分系数
#define PTZ_VERT_PID_INPUT_LIMIT 100//4.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_INPUT_LIMIT 100//4.0//PID调速输入值限定
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_HORI_PID_T_MAX 75//50u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_T_MAX 75//50u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_T_MAX 75//50u//PID调速最大周期
#define PTZ_VERT_PID_T_MAX 75//50u//PID调速最大周期
#define PTZ_HORI_PID_ADD 30//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD 30//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD 30//PID调速快速增量
#define PTZ_VERT_PID_ADD 30//PID调速快速增量
#define PTZ_HORI_PID_ADD_A 10//10//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD_A 10//15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD_A 10//10//PID调速快速增量
#define PTZ_VERT_PID_ADD_A 10//15//PID调速快速增量
#endif
#ifdef PTZ_MEDIUM_WORM_L6235D_AS5047D
#define PID_B 1
//ˮƽ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.2 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//ˮƽ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
// #define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
// #define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
// #define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
// #define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//水平速度小于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.2 //水平比例调速增加的倍数
//水平速度大于设定速度时
// #define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //水平比例调速的范围
// #define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //水平比例调速增加的倍数
//垂直速度小于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //垂直比例调速增加的倍数
//垂直速度大于设定速度时
// #define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //垂直比例调速的范围
// #define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //垂直比例调速增加的倍数
//#define PID_A 1
// #define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
// #define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
//ͨ<EFBFBD><EFBFBD>оƬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
// #define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
//通过芯片反馈测速
//#define PTZ_HORI_PID_JY02A_SPEED
//#define PTZ_VERT_PID_JY02A_SPEED
#define PTZ_PID_HALL_SPEED 1
#define PTZ_HORI_PID_T 20u
#define PTZ_HORI_PID_HORI_KP 0.6//1.0//6.0//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TI 70.0//80.0//100.0//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TD 0.001//΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_KP 0.6//1.0//6.0//比例系数
#define PTZ_HORI_PID_HORI_TI 70.0//80.0//100.0//积分系数
#define PTZ_HORI_PID_HORI_TD 0.001//微分系数
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//PID调速输入值限定
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_VERT_PID_T 20u
#define PTZ_VERT_PID_VERT_KP 6//6.0//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TI 80.0//100.0//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TD 0.001//΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_KP 6//6.0//比例系数
#define PTZ_VERT_PID_VERT_TI 80.0//100.0//积分系数
#define PTZ_VERT_PID_VERT_TD 0.001//微分系数
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//PID调速输入值限定
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_HORI_PID_T_MAX 80//75u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_T_MAX 80//75u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_T_MAX 80//75u//PID调速最大周期
#define PTZ_VERT_PID_T_MAX 80//75u//PID调速最大周期
#define PTZ_HORI_PID_ADD 20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD 20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD 20//PID调速快速增量
#define PTZ_VERT_PID_ADD 20//PID调速快速增量
#define PTZ_HORI_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD_A 15//PID调速快速增量
#define PTZ_VERT_PID_ADD_A 15//PID调速快速增量
#endif
#ifdef PTZ_HEAVY_WORM_L6235D_AS5047D
#define PID_B 1
//ˮƽ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.4 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//ˮƽ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.4 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//水平速度小于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.4 //水平比例调速增加的倍数
//水平速度大于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //水平比例调速增加的倍数
//垂直速度小于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.4 //垂直比例调速增加的倍数
//垂直速度大于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //垂直比例调速增加的倍数
@ -127,148 +127,147 @@
#define PTZ_HORI_PID_T 50u
#define PTZ_HORI_PID_HORI_KP 10.0//3.0 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_KP 10.0//3.0 //0.014//0.005 //比例系数
#define PTZ_HORI_PID_HORI_TI 100.0 //积分系数
#define PTZ_HORI_PID_HORI_TD 0.0 //微分系数
#define PTZ_HORI_PID_INPUT_LIMIT 6.91//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_INPUT_LIMIT 6.91//PID调速输入值限定
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_VERT_PID_T 50u
#define PTZ_VERT_PID_VERT_KP 20.0//3.0 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_KP 20.0//3.0 //0.014//0.005 //比例系数
#define PTZ_VERT_PID_VERT_TI 100.0 //积分系数
#define PTZ_VERT_PID_VERT_TD 0.0 //微分系数
#define PTZ_VERT_PID_INPUT_LIMIT 4.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_INPUT_LIMIT 4.0//PID调速输入值限定
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_HORI_PID_T_MAX 75//50u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_T_MAX 75//50u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_T_MAX 75//50u//PID调速最大周期
#define PTZ_VERT_PID_T_MAX 75//50u//PID调速最大周期
#define PTZ_HORI_PID_ADD 30//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD 30//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD 30//PID调速快速增量
#define PTZ_VERT_PID_ADD 30//PID调速快速增量
#define PTZ_HORI_PID_ADD_A 20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD_A 20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD_A 20//PID调速快速增量
#define PTZ_VERT_PID_ADD_A 20//PID调速快速增量
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_12V
#define PID_B 1
//ˮƽ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.6 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.3 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//ˮƽ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.6 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.3 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//水平速度小于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.6 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.3 //水平比例调速增加的倍数
//水平速度大于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //水平比例调速增加的倍数
//垂直速度小于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.6 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.3 //垂直比例调速增加的倍数
//垂直速度大于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //垂直比例调速增加的倍数
//#define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
//#define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
//ͨ<EFBFBD><EFBFBD>оƬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
//#define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
//通过芯片反馈测速
//#define PTZ_HORI_PID_JY02A_SPEED
//#define PTZ_VERT_PID_JY02A_SPEED
#define PTZ_PID_HALL_SPEED 1
#define PTZ_HORI_PID_T 30u
#define PTZ_HORI_PID_HORI_KP 2.0//6.0 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_KP 2.0//6.0 //0.014//0.005 //比例系数
#define PTZ_HORI_PID_HORI_TI 100.0 //积分系数
#define PTZ_HORI_PID_HORI_TD 0.0 //微分系数
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//6.91//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//6.91//PID调速输入值限定
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_VERT_PID_T 30u
#define PTZ_VERT_PID_VERT_KP 2.0//6.0 //0.014//0.005 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_KP 2.0//6.0 //0.014//0.005 //比例系数
#define PTZ_VERT_PID_VERT_TI 100.0 //积分系数
#define PTZ_VERT_PID_VERT_TD 0.0 //微分系数
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//4.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//4.0//PID调速输入值限定
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_HORI_PID_T_MAX 100u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_T_MAX 100u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_T_MAX 100u//PID调速最大周期
#define PTZ_VERT_PID_T_MAX 100u//PID调速最大周期
#define PTZ_HORI_PID_ADD 20//40//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD 20//40//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD 20//40//PID调速快速增量
#define PTZ_VERT_PID_ADD 20//40//PID调速快速增量
#define PTZ_HORI_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD_A 15//PID调速快速增量
#define PTZ_VERT_PID_ADD_A 15//PID调速快速增量
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_24V
#define PID_B 1
//ˮƽ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.2 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//ˮƽ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //ˮƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD>ֱ<EFBFBD>ٶȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ʱ
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٵķ<EFBFBD>Χ
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵı<EFBFBD><EFBFBD><EFBFBD>
//水平速度小于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_LESS 0.4 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_LESS 1.2 //水平比例调速增加的倍数
//水平速度大于设定速度时
#define PTZ_HORI_PRO_ADD_RANGE_MORE 0.5 //水平比例调速的范围
#define PTZ_HORI_PRO_ADD_MUL_MORE 0.8 //水平比例调速增加的倍数
//垂直速度小于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_LESS 0.4 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_LESS 1.2 //垂直比例调速增加的倍数
//垂直速度大于设定速度时
#define PTZ_VERT_PRO_ADD_RANGE_MORE 0.5 //垂直比例调速的范围
#define PTZ_VERT_PRO_ADD_MUL_MORE 0.8 //垂直比例调速增加的倍数
//#define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
//#define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//<EFBFBD>Ƕȱ仯<EFBFBD>
//ͨ<EFBFBD><EFBFBD>оƬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define PTZ_HORI_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
//#define PTZ_VERT_PID_AS5048A_ANGLE_ASY_SPEED 2//角度变化异步
//通过芯片反馈测速
//#define PTZ_HORI_PID_JY02A_SPEED
//#define PTZ_VERT_PID_JY02A_SPEED
#define PTZ_PID_HALL_SPEED 1
#define PTZ_HALL_SPEED_SL 1
#define PTZ_PID_HALL_SPEED 1
#define PTZ_HORI_PID_T 30u
#define PTZ_HORI_PID_HORI_KP 35.0//<2F><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
#define PTZ_HORI_PID_HORI_TI 0.0003 //<2F><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
#define PTZ_HORI_PID_HORI_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_HORI_PID_HORI_KP 20.0//比例系数
#define PTZ_HORI_PID_HORI_TI 100.0 //积分系数
#define PTZ_HORI_PID_HORI_TD 0.0 //微分系数
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_INPUT_LIMIT 100.0//PID调速输入值限定
#define PTZ_HORI_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_VERT_PID_T 30u
#define PTZ_VERT_PID_VERT_KP 20.0//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TI 100.0 //<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_TD 0.0 //΢<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
#define PTZ_VERT_PID_VERT_KP 20.0//比例系数
#define PTZ_VERT_PID_VERT_TI 100.0 //积分系数
#define PTZ_VERT_PID_VERT_TD 0.0 //微分系数
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD>
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>޶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ֮<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_INPUT_LIMIT 100.0//PID调速输入值限定
#define PTZ_VERT_PID_OUTPUT_LIMIT 200.0//PID调速输出值限定,当前输出值和上一次输出值之间的差异
#define PTZ_HORI_PID_T_MAX 100u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_T_MAX 100u//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_T_MAX 100u//PID调速最大周期
#define PTZ_VERT_PID_T_MAX 100u//PID调速最大周期
#define PTZ_HORI_PID_ADD 20//20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_VERT_PID_ADD 20//20//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_PID_ADD 20//20//PID调速快速增量
#define PTZ_VERT_PID_ADD 20//20//PID调速快速增量
//#define PTZ_HORI_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define PTZ_VERT_PID_ADD_A 15//PID<EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define PTZ_HORI_PID_ADD_A 15//PID调速快速增量
//#define PTZ_VERT_PID_ADD_A 15//PID调速快速增量
#endif
//PID<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//PID调速
#define PID_ADJUST_SPEED 0
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//方向调速
#define DIRECTOR_ADJUST_SPEED 1
#ifdef PTZ_LIGHT_GEAR_L6235D_AS5047D
//ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PWM<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//通过方向PWM波提供反向力矩调速
//是否启用方向调速
#define PTZ_CONTROL_SPEED_L6235D 2
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//方向调速总周期
#define PTZ_DIRECTOR_SPEED_T 10//20
#endif
@ -280,7 +279,4 @@ void ptz_vert_pid_clear_zero();
void init_speed_module(void);
#endif
void as5047d_hori_get_speed(void);
#endif

View File

@ -8,9 +8,6 @@
#include "gd32f4xx_it.h"
#include "ptz_type_select.h"
#include "get_angle.h"
#include "speed_to_hall.h"
/// @brief 外部中断初始化
/// @param[in] usart_periph:EXTI_IRQ_init
/// @return none
@ -607,25 +604,6 @@ void ptz_H_HALL_IRQHandler(exti_line_enum hall_linex)
#ifdef PTZ_BLDC_MOTOR
#ifdef PTZ_HALL_FEEDBACK
if (g_speed_to_hall.hori_speed_t.flag == calculation_enable) {
g_speed_to_hall.hori_speed_t.startTime_us = TIMER_CNT(TIMER6);
g_speed_to_hall.hori_speed_t.startTime_60ms = g_speed_to_hall.time_60ms;
g_speed_to_hall.hori_speed_t.hallNum = 0;
g_speed_to_hall.hori_speed_t.flag = calculation_start;
}
if (g_speed_to_hall.hori_speed_t.flag == calculation_start) {
g_speed_to_hall.hori_speed_t.hallNum++;
}
if (g_speed_to_hall.hori_speed_t.flag == calculation_ok) {
// g_speed_to_hall.hori_speed_t.hallNum++;
g_speed_to_hall.hori_speed_t.endTime_us = TIMER_CNT(TIMER6);
g_speed_to_hall.hori_speed_t.endTime_60ms = g_speed_to_hall.time_60ms;
g_speed_to_hall.hori_speed_t.flag = calculation_end;
}
switch(hall_linex)
{
case EXTI_10://水平HALL-1

View File

@ -288,7 +288,7 @@ static char ptz_motor_rotate_fault_detect_task()
time_ms = 0;
}
return 1;
//垂直
switch(vert_rotate_fault_step)
@ -851,7 +851,7 @@ static char ptz_fault_detect_task()
//故障回传
ptz_fault_return_task();
//光电开关故障,,光电开关不能故障回传,因为断电时会检测到故障,,,需要通过状态查询回传
// ptz_vert_sw12_fault_detect_task();
ptz_vert_sw12_fault_detect_task();
if(g_ptz.fault_detect.hori_rotate_fault == FAULT ||

View File

@ -1,62 +0,0 @@
#include "speed_to_hall.h"
speed_hall g_speed_to_hall = {0};
/**
* @brief +
* @param
* @retval
*
*/
void init_hall_speed_module(void)
{
timer_parameter_struct timer_initpara;
rcu_periph_clock_enable(RCU_TIMER6);
timer_struct_para_init(&timer_initpara);
timer_deinit(TIMER6);
// TIMER1 configuration
timer_initpara.prescaler = 99;
timer_initpara.alignedmode = TIMER_COUNTER_EDGE;//计数模式,边缘对齐
timer_initpara.counterdirection = TIMER_COUNTER_UP;//计数方向
timer_initpara.period = SPEED_TIMER_PERIOD;//计数重装载值确定周期该值可在任意时刻进行修改以改变周期TIMER_CAR(timer_periph) = (uint32_t)initpara->period;
timer_initpara.clockdivision = TIMER_CKDIV_DIV1;//时钟分频
timer_initpara.repetitioncounter = 0;//计数重复值
timer_init(TIMER6, &timer_initpara);
timer_auto_reload_shadow_enable(TIMER6);
timer_enable(TIMER6);
timer_interrupt_enable(TIMER6, TIMER_INT_UP);//定时器更新中断使能
nvic_irq_enable(TIMER6_IRQn, 2U, 2U);
g_speed_to_hall.hori_speed_t.flag = calculation_disable;
g_speed_to_hall.vert_speed_t.flag = calculation_disable;
}
/**
* @brief 1
* @param
* @retval
*
*/
void TIMER6_IRQHandler(void)
{
if(RESET != timer_interrupt_flag_get(TIMER6, TIMER_INT_FLAG_UP)) {
g_speed_to_hall.time_60ms++;
if (g_speed_to_hall.time_60ms >= TIME_60MS_MAX) {
g_speed_to_hall.time_60ms = 0;
}
timer_interrupt_flag_clear(TIMER6, TIMER_INT_FLAG_UP);
}
}

View File

@ -1,40 +0,0 @@
#ifndef __BSP_DRIVER_SPEED_HALL_H_
#define __BSP_DRIVER_SPEED_HALL_H_
//#include "ptz_type_select.h"
#include "gd32f4xx.h"
typedef struct _speed_t {
uint32_t hallNum; //霍尔编码器次数(运行方向的)
uint32_t startTime_60ms; //开始时间
uint32_t startTime_us;
uint32_t endTime_60ms; //结束时间
uint32_t endTime_us;
uint8_t flag; //标志位
}speed_t;
typedef struct _speed_to_hall {
speed_t hori_speed_t;
speed_t vert_speed_t;
uint32_t time_60ms;
}speed_hall;
typedef enum _calculation_speed_type {
calculation_disable = 0, //未开始计算速度
calculation_enable = 1, //使能计算速度
calculation_ok = 2, //达到计算速度时间
calculation_start = 3, //开始计算速度
calculation_end = 4, //结束计算速度
}calculation_speed_type;
extern speed_hall g_speed_to_hall;
#define TIME_60MS_MAX 4000000000
#define SPEED_TIMER_PERIOD 60000
void init_hall_speed_module(void);
#endif

View File

@ -392,7 +392,6 @@ void TIMER4_IRQHandler(void)
v_bldc_six_step();
h_bldc_six_step();
timer_interrupt_flag_clear(TIMER4,TIMER_INT_FLAG_UP);
as5047d_hori_get_speed();
}
}

View File

@ -68,6 +68,4 @@ void EXTI1_IRQHandler(void);
void EXTI2_IRQHandler(void);
void TIMER4_IRQHandler(void);
void TIMER6_IRQHandler(void);
#endif /* GD32F4XX_IT_H */

View File

@ -409,7 +409,6 @@
<state>$PROJ_DIR$\..\BSP\Driver\timer</state>
<state>$PROJ_DIR$\..\BSP\Driver\full_bridge</state>
<state>$PROJ_DIR$\..\APP\Service</state>
<state>$PROJ_DIR$\..\BSP\Driver\speed</state>
</option>
<option>
<name>CCStdIncCheck</name>
@ -826,7 +825,7 @@
</option>
<option>
<name>IlinkIcfFile</name>
<state>D:\psx\Pan-Tilt\1.software\HY\4.0 LW21-01B\BSP\IAR\GD32F450xE.icf</state>
<state>D:\psx\Pan-Tilt\1.software\HY\4.0 LW21-01B\BSP\IAR\GD32F450xE_APP.icf</state>
</option>
<option>
<name>IlinkIcfFileSlave</name>
@ -2623,7 +2622,6 @@
<state>$PROJ_DIR$\..\BSP\Driver\timer</state>
<state>$PROJ_DIR$\..\BSP\Driver\full_bridge</state>
<state>$PROJ_DIR$\..\BSP\Driver\timer</state>
<state>$PROJ_DIR$\..\BSP\Driver\speed</state>
</option>
<option>
<name>CCStdIncCheck</name>
@ -2914,15 +2912,6 @@
<name>$PROJ_DIR$\..\BSP\Driver\ringqueue\ring_queue.h</name>
</file>
</group>
<group>
<name>speed</name>
<file>
<name>$PROJ_DIR$\..\BSP\Driver\speed\speed_to_hall.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\BSP\Driver\speed\speed_to_hall.h</name>
</file>
</group>
<group>
<name>timer</name>
<file>

View File

@ -3182,15 +3182,6 @@
<name>$PROJ_DIR$\..\BSP\Driver\ringqueue\ring_queue.h</name>
</file>
</group>
<group>
<name>speed</name>
<file>
<name>$PROJ_DIR$\..\BSP\Driver\speed\speed_to_hall.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\BSP\Driver\speed\speed_to_hall.h</name>
</file>
</group>
<group>
<name>timer</name>
<file>