|
|
@@ -270,13 +270,24 @@
|
|
|
|
|
|
/* 编码器参数 */
|
|
|
#define ENC_MAX_RES 1024
|
|
|
-#define ENC_PWM_Min_P (1.0f/131.0f)
|
|
|
-
|
|
|
#define ENC_Duty_2_Pluse_Nr(duty) (duty * ENC_MAX_RES) //通过占空比计算有几个脉冲
|
|
|
#define ENC_Pluse_Nr_2_angle(Nr) (360.0f/(float)ENC_MAX_RES * (Nr))
|
|
|
|
|
|
+#if ENCODER_TYPE==ENCODER_MPS
|
|
|
+#define ENC_PWM_Min_P (1.0f/131.0f)
|
|
|
#define ENC_Duty(d, t) ((1.0f/128.0f) * (130.0f * (d)/(t) - 1.0f))
|
|
|
+#elif ENCODER_TYPE==ENCODER_MT
|
|
|
+/*min. 994 hz*/
|
|
|
+#define ENC_PWM_MAX_RES 4119.0F
|
|
|
+#define ENC_PWM_INIT_WIDTH 16.0F //PWM 起始宽度
|
|
|
+#define ENC_PWM_END_WIDTH 4.0F
|
|
|
+#define ENC_PWM_Min_P (ENC_PWM_INIT_WIDTH/ENC_PWM_MAX_RES)
|
|
|
+#define PWM_Duty(d, t) ((d)/(t))
|
|
|
+#define ENC_Duty(d, t) ((PWM_Duty(d, t)*ENC_PWM_MAX_RES - ENC_PWM_INIT_WIDTH)/(ENC_PWM_MAX_RES - ENC_PWM_END_WIDTH - ENC_PWM_INIT_WIDTH)
|
|
|
+#else
|
|
|
+#error "Postion sensor ERROR"
|
|
|
|
|
|
+#endif
|
|
|
#define DEBUG_PORT_UART2
|
|
|
|
|
|
//#define MOTOR_BLUESHARK_NEW1 //蓝鲨大功率电机,双E形
|