/* Automatically generated nanopb header */ /* Generated by nanopb-0.4.8 */ #ifndef PB_BSP_CV_PB_H_INCLUDED #define PB_BSP_CV_PB_H_INCLUDED #include "pb.h" #include "bsp_PV.pb.h" #include "bsp_PID.pb.h" #if PB_PROTO_HEADER_VERSION != 40 #error Regenerate this file with the current version of nanopb generator. #endif /* Struct definitions */ typedef struct _CV_struct_define { int32_t Speed_m_per_min; /* MPMin = 1m/min 1米每分钟 m/min */ int32_t LeftTurnSpeed; int32_t RightTurnSpeed; int32_t RobotLeftAngleValue; /* 水平左方向 单位0.01° */ int32_t RobotRightAngleValue; /* 水平右方向角度值 单位0.01° */ int32_t RobotUpAngleValue; /* 竖直方向角度值 单位0.01° */ int32_t RobotDownAngleValue; /* 竖直向下角度值 单位0.01° */ int32_t Robot_Permitted_Angler_Error_Value_E_2D; /* 作业时需用的最大角度偏差值 0.01°,超出将停止作业 */ int32_t Robot_Angle_Start_BaseE_2D; /* 角度值 0.01° */ int32_t Lane_Change_Speed_m_per_min; int32_t Is_Automation_Authorized; int32_t Is_Function_Authorized; int32_t Joy_Sticker_Angle_Allowance; /* 例如在90度的±30° */ int32_t Joy_Sticker_Value_Allowance; /* 例如 joysticker的值超过600 */ int32_t Allowable_Error_For_Angle_Tracking; /* 纠偏角度跟踪的允许误差1 度 */ int32_t Paint_Gun_Shutdown_Distance; /* 喷枪关闭距离,喷枪关闭后多上厘米停止运行 */ int32_t Horizontal_ChangeLane_Compensation; /* 水平换道补偿距离 */ int32_t Vertical_ChangeLane_Compensation; /* 竖直换道补偿距离 */ int32_t pulse_Per_Circle; /* 每转多少脉冲 */ int32_t wheel_Reduction_Ratio; /* 减速比 */ double wheel_Diameter_m; /* 车轮直径 m */ bool has_PID_high; PID_Parameters PID_high; bool has_PID_mid; PID_Parameters PID_mid; bool has_PID_low; PID_Parameters PID_low; } CV_struct_define; #ifdef __cplusplus extern "C" { #endif /* Initializer values for message structs */ #define CV_struct_define_init_default {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false, PID_Parameters_init_default, false, PID_Parameters_init_default, false, PID_Parameters_init_default} #define CV_struct_define_init_zero {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false, PID_Parameters_init_zero, false, PID_Parameters_init_zero, false, PID_Parameters_init_zero} /* Field tags (for use in manual encoding/decoding) */ #define CV_struct_define_Speed_m_per_min_tag 1 #define CV_struct_define_LeftTurnSpeed_tag 2 #define CV_struct_define_RightTurnSpeed_tag 3 #define CV_struct_define_RobotLeftAngleValue_tag 4 #define CV_struct_define_RobotRightAngleValue_tag 5 #define CV_struct_define_RobotUpAngleValue_tag 6 #define CV_struct_define_RobotDownAngleValue_tag 7 #define CV_struct_define_Robot_Permitted_Angler_Error_Value_E_2D_tag 8 #define CV_struct_define_Robot_Angle_Start_BaseE_2D_tag 9 #define CV_struct_define_Lane_Change_Speed_m_per_min_tag 10 #define CV_struct_define_Is_Automation_Authorized_tag 11 #define CV_struct_define_Is_Function_Authorized_tag 12 #define CV_struct_define_Joy_Sticker_Angle_Allowance_tag 13 #define CV_struct_define_Joy_Sticker_Value_Allowance_tag 14 #define CV_struct_define_Allowable_Error_For_Angle_Tracking_tag 15 #define CV_struct_define_Paint_Gun_Shutdown_Distance_tag 16 #define CV_struct_define_Horizontal_ChangeLane_Compensation_tag 17 #define CV_struct_define_Vertical_ChangeLane_Compensation_tag 18 #define CV_struct_define_pulse_Per_Circle_tag 19 #define CV_struct_define_wheel_Reduction_Ratio_tag 20 #define CV_struct_define_wheel_Diameter_m_tag 21 #define CV_struct_define_PID_high_tag 22 #define CV_struct_define_PID_mid_tag 23 #define CV_struct_define_PID_low_tag 24 /* Struct field encoding specification for nanopb */ #define CV_struct_define_FIELDLIST(X, a) \ X(a, STATIC, SINGULAR, INT32, Speed_m_per_min, 1) \ X(a, STATIC, SINGULAR, INT32, LeftTurnSpeed, 2) \ X(a, STATIC, SINGULAR, INT32, RightTurnSpeed, 3) \ X(a, STATIC, SINGULAR, INT32, RobotLeftAngleValue, 4) \ X(a, STATIC, SINGULAR, INT32, RobotRightAngleValue, 5) \ X(a, STATIC, SINGULAR, INT32, RobotUpAngleValue, 6) \ X(a, STATIC, SINGULAR, INT32, RobotDownAngleValue, 7) \ X(a, STATIC, SINGULAR, INT32, Robot_Permitted_Angler_Error_Value_E_2D, 8) \ X(a, STATIC, SINGULAR, INT32, Robot_Angle_Start_BaseE_2D, 9) \ X(a, STATIC, SINGULAR, INT32, Lane_Change_Speed_m_per_min, 10) \ X(a, STATIC, SINGULAR, INT32, Is_Automation_Authorized, 11) \ X(a, STATIC, SINGULAR, INT32, Is_Function_Authorized, 12) \ X(a, STATIC, SINGULAR, INT32, Joy_Sticker_Angle_Allowance, 13) \ X(a, STATIC, SINGULAR, INT32, Joy_Sticker_Value_Allowance, 14) \ X(a, STATIC, SINGULAR, INT32, Allowable_Error_For_Angle_Tracking, 15) \ X(a, STATIC, SINGULAR, INT32, Paint_Gun_Shutdown_Distance, 16) \ X(a, STATIC, SINGULAR, INT32, Horizontal_ChangeLane_Compensation, 17) \ X(a, STATIC, SINGULAR, INT32, Vertical_ChangeLane_Compensation, 18) \ X(a, STATIC, SINGULAR, INT32, pulse_Per_Circle, 19) \ X(a, STATIC, SINGULAR, INT32, wheel_Reduction_Ratio, 20) \ X(a, STATIC, SINGULAR, DOUBLE, wheel_Diameter_m, 21) \ X(a, STATIC, OPTIONAL, MESSAGE, PID_high, 22) \ X(a, STATIC, OPTIONAL, MESSAGE, PID_mid, 23) \ X(a, STATIC, OPTIONAL, MESSAGE, PID_low, 24) #define CV_struct_define_CALLBACK NULL #define CV_struct_define_DEFAULT NULL #define CV_struct_define_PID_high_MSGTYPE PID_Parameters #define CV_struct_define_PID_mid_MSGTYPE PID_Parameters #define CV_struct_define_PID_low_MSGTYPE PID_Parameters extern const pb_msgdesc_t CV_struct_define_msg; /* Defines for backwards compatibility with code written before nanopb-0.4.0 */ #define CV_struct_define_fields &CV_struct_define_msg /* Maximum encoded size of messages (where known) */ #define BSP_CV_PB_H_MAX_SIZE CV_struct_define_size #define CV_struct_define_size 358 #ifdef __cplusplus } /* extern "C" */ #endif #endif