#ifndef __DEVICE_ROTATE_BLDC_L6235D_H_ #define __DEVICE_ROTATE_BLDC_L6235D_H_ #include "ptz_type_select.h" #ifdef PTZ_LIGHT_GEAR_L6235D_AS5047D //电机控制方式为L6235D #define PTZ_MOTOR_CONTROL_L6235D 1 ///云台水平右转 #define PTZ_HORI_DIR_RIGHT 0 ///云台水平左转 #define PTZ_HORI_DIR_LEFT 1 ///云台处于停止状态 #define PTZ_HORI_DIR_STOP 2 ///云台垂直向上 #define PTZ_VERT_DIR_UP 0 ///云台垂直向下 #define PTZ_VERT_DIR_DOWN 1 ///云台处于停止状态 #define PTZ_VERT_DIR_STOP 2 ///距离最近刹车点以最小转速运行的距离 #define PTZ_HORI_MIN_SPEED_ANGLE 10.0 #define PTZ_VERT_MIN_SPEED_ANGLE 6.0 ///刹车最近距离 #define PTZ_HORI_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_HORI_STOP_FAR_DISTANCE 4.0 ///刹车最近距离 #define PTZ_VERT_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_VERT_STOP_FAR_DISTANCE 4.0 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_HORI_ANGLE_ACCURACY 0.1 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_VERT_ANGLE_ACCURACY 0.1 #endif #ifdef PTZ_MEDIUM_WORM_L6235D_AS5047D /***********************标准云台*********************/ //电机控制方式为L6235D #define PTZ_MOTOR_CONTROL_L6235D 1 ///云台水平右转 #define PTZ_HORI_DIR_RIGHT 0//1//0 ///云台水平左转 #define PTZ_HORI_DIR_LEFT 1//0//1 ///云台处于停止状态 #define PTZ_HORI_DIR_STOP 2 ///云台垂直向上 #define PTZ_VERT_DIR_UP 0//01 ///云台垂直向下 #define PTZ_VERT_DIR_DOWN 1//0 ///云台处于停止状态 #define PTZ_VERT_DIR_STOP 2 ///距离最近刹车点以最小转速运行的距离 #define PTZ_HORI_MIN_SPEED_ANGLE 3.0 #define PTZ_VERT_MIN_SPEED_ANGLE 3.0 ///刹车最近距离 #define PTZ_HORI_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_HORI_STOP_FAR_DISTANCE 4.0 ///刹车最近距离 #define PTZ_VERT_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_VERT_STOP_FAR_DISTANCE 4.0 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_HORI_ANGLE_ACCURACY 0.1 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_VERT_ANGLE_ACCURACY 0.1 /***********************激光云台定制*********************/ // //电机控制方式为L6235D // #define PTZ_MOTOR_CONTROL_L6235D 1 // ///云台水平右转 // #define PTZ_HORI_DIR_RIGHT 0 // ///云台水平左转 // #define PTZ_HORI_DIR_LEFT 1 // ///云台处于停止状态 // #define PTZ_HORI_DIR_STOP 2 // // ///云台垂直向上 // #define PTZ_VERT_DIR_UP 1 // ///云台垂直向下 // #define PTZ_VERT_DIR_DOWN 0 // ///云台处于停止状态 // #define PTZ_VERT_DIR_STOP 2 // // ///距离最近刹车点以最小转速运行的距离 // #define PTZ_HORI_MIN_SPEED_ANGLE 3.0 // #define PTZ_VERT_MIN_SPEED_ANGLE 3.0 // // ///刹车最近距离 // #define PTZ_HORI_STOP_NEAR_DISTANCE 0.01 // ///刹车最远距离 // #define PTZ_HORI_STOP_FAR_DISTANCE 10.0 // // ///刹车最近距离 // #define PTZ_VERT_STOP_NEAR_DISTANCE 0.01 // ///刹车最远距离 // #define PTZ_VERT_STOP_FAR_DISTANCE 10.0 // // ///云台定位精度,也可用于判断是不是同一个位置 // #define PTZ_HORI_ANGLE_ACCURACY 0.1 // ///云台定位精度,也可用于判断是不是同一个位置 // #define PTZ_VERT_ANGLE_ACCURACY 0.1 #endif #ifdef PTZ_HEAVY_WORM_L6235D_AS5047D ///电机控制方式为L6235D #define PTZ_MOTOR_CONTROL_L6235D 1 ///云台水平右转 #define PTZ_HORI_DIR_RIGHT 1 ///云台水平左转 #define PTZ_HORI_DIR_LEFT 0 ///云台处于停止状态 #define PTZ_HORI_DIR_STOP 2 ///云台垂直向上 #define PTZ_VERT_DIR_UP 0 ///云台垂直向下 #define PTZ_VERT_DIR_DOWN 1 ///云台处于停止状态 #define PTZ_VERT_DIR_STOP 2 ///距离最近刹车点以最小转速运行的距离 #define PTZ_HORI_MIN_SPEED_ANGLE 7.0//5.0 #define PTZ_VERT_MIN_SPEED_ANGLE 3.0//3.0 ///刹车最近距离 #define PTZ_HORI_STOP_NEAR_DISTANCE 0.005 ///刹车最远距离 #define PTZ_HORI_STOP_FAR_DISTANCE 4.0 ///刹车最近距离 #define PTZ_VERT_STOP_NEAR_DISTANCE 0.005 ///刹车最远距离 #define PTZ_VERT_STOP_FAR_DISTANCE 4.0 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_HORI_ANGLE_ACCURACY 0.01 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_VERT_ANGLE_ACCURACY 0.01 #endif #ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_12V //电机控制方式为L6235D #define PTZ_MOTOR_CONTROL_L6235D 1 ///云台水平右转 #define PTZ_HORI_DIR_RIGHT 1 ///云台水平左转 #define PTZ_HORI_DIR_LEFT 0 ///云台处于停止状态 #define PTZ_HORI_DIR_STOP 2 ///云台垂直向上 #define PTZ_VERT_DIR_UP 1 ///云台垂直向下 #define PTZ_VERT_DIR_DOWN 0 ///云台处于停止状态 #define PTZ_VERT_DIR_STOP 2 ///距离最近刹车点以最小转速运行的距离 #define PTZ_HORI_MIN_SPEED_ANGLE 5.0 #define PTZ_VERT_MIN_SPEED_ANGLE 5.0 ///刹车最近距离 #define PTZ_HORI_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_HORI_STOP_FAR_DISTANCE 4.0 ///刹车最近距离 #define PTZ_VERT_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_VERT_STOP_FAR_DISTANCE 4.0 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_HORI_ANGLE_ACCURACY 0.1 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_VERT_ANGLE_ACCURACY 0.1 #endif #ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_24V //电机控制方式为L6235D #define PTZ_MOTOR_CONTROL_L6235D 1 ///云台水平右转 #define PTZ_HORI_DIR_RIGHT 0//1 ///云台水平左转 #define PTZ_HORI_DIR_LEFT 1//0 ///云台处于停止状态 #define PTZ_HORI_DIR_STOP 2 ///云台垂直向上 #define PTZ_VERT_DIR_UP 0//1 ///云台垂直向下 #define PTZ_VERT_DIR_DOWN 1//0 ///云台处于停止状态 #define PTZ_VERT_DIR_STOP 2 ///距离最近刹车点以最小转速运行的距离 #define PTZ_HORI_MIN_SPEED_ANGLE 5.0 #define PTZ_VERT_MIN_SPEED_ANGLE 5.0 ///刹车最近距离 #define PTZ_HORI_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_HORI_STOP_FAR_DISTANCE 4.0 ///刹车最近距离 #define PTZ_VERT_STOP_NEAR_DISTANCE 0.01 ///刹车最远距离 #define PTZ_VERT_STOP_FAR_DISTANCE 4.0 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_HORI_ANGLE_ACCURACY 0.1 ///云台定位精度,也可用于判断是不是同一个位置 #define PTZ_VERT_ANGLE_ACCURACY 0.1 #endif #ifdef PTZ_BLDC_MOTOR void ptz_sem_post_stop_mutex(); void ptz_hori_start(char direction, float speed); void ptz_hori_stop(unsigned short int time); void ptz_vert_start(char direction, float speed); void ptz_vert_stop(unsigned short int time); void init_rotate_monitor_module(void); #endif #endif