user_setup.h 10.8 KB
#ifndef __USER_SETUP_H
#define __USER_SETUP_H
#include "bsp.h"

#define DRIVER_HINS_BLD2L 0X0001//兴颂BLD2L
#define DRIVER_HINS_BLD30 0X0002//兴颂BLD30或者STD2L
#define DRIVER_SDO	 			0X0004//CANOPEN-SDO通讯 步科 风得控 AMC ELIFE DIS
#define DRIVER_CURTIS			0X0008//柯蒂斯

#define P_SETUP_SINGLE_PLAYER							0//单机版本:0.关闭单机测试,1:开启单机测试。
#define P_SETUP_NAV_TYPE 									1//导航方式:0.磁条, 1.二维码, 2.SLAM, 3.Vslam,4.PPC
#define P_SETUP_MUSIC_TYPE								1//音乐播报器类型  1新版DADONG  2旧版

#define P_SETUP_PLATFORM_TYPE							5//平台类型:1悬臂轴,2双层SMT,3单层标准SMT,4叉车
#define P_SETUP_CHASSIS_MODE							0//底盘类型:0.单差速,1.双转向架差速,2.单舵轮,3.双舵轮,4三舵轮,5.四舵轮,6.改造转向轮

#define P_SETUP_LIDAR2BASE_X							0//424//雷达到运动中心X距离(mm)
#define P_SETUP_LIDAR2BASE_Y							0//534//雷达到运动中心Y距离(mm)
#define P_SETUP_LIDAR2BASE_THETA					0//-450//雷达和车体前进方向夹角(0.1度)(-45.0°写成3150对应315.0°)

#define P_SETUP_WHEEL_X_DIS								0//双驱动轮前进方向距离
#define P_SETUP_WHEEL_Y_DIS								900//双驱动轮横移方向距离

#define P_SETUP_ANGLE_ENCODER_NUM					0//角度编码器数量
#define P_SETUP_ANGLE_ENCODER_DIR					0//角度编码器方向调整 
#define P_SETUP_MAGNAV_DIR								0//导引传感器方向调整
#define P_SETUP_DIS_ENCODER_DIR						0//拉线编码器方向调整

#define P_SETUP_BATTERYTYPE								0//电池类型:1冠宇电池

#define P_SETUP_MOTOR_DRIVER_BRAND				DRIVER_HINS_BLD30//行走驱动品牌
#define P_SETUP_MOTOR_NUM									0//行走电机数量
#define P_SETUP_MOTOR_SPEED_RATIO_NUM			6//行走速比分子
#define P_SETUP_MOTOR_SPEED_RATIO_DEN			1//行走速比分母
#define P_SETUP_MOTOR_DIS_RATIO_NUM				1//行走位置比分子
#define P_SETUP_MOTOR_DIS_RATIO_DEN				1//行走位置比分母
#define P_SETUP_MOTOR_CAN_CONNECTION			0//行走can线接法	
#define P_SETUP_MOTOR_DIR									1000//行走轮方向调整

#define P_SETUP_STEERING_DRIVER_BRAND			DRIVER_HINS_BLD2L//转向驱动品牌
#define P_SETUP_STEERING_NUM							0//转向电机数量
#define P_SETUP_STEERING_SPEED_RATIO_NUM	1//转向转速比分子
#define P_SETUP_STEERING_SPEED_RATIO_DEN	1//转向转速比分母
#define P_SETUP_STEERING_DIS_RATIO_NUM		1//转向位置比分子
#define P_SETUP_STEERING_DIS_RATIO_DEN		1//转向位置比分母
#define P_SETUP_STEERING_CAN_CONNECTION		0//转向can线接法
#define P_SETUP_STEERING_DIR							0//转向轮方向调整	

#define P_SETUP_LIFTER_DRIVER_BRAND				DRIVER_HINS_BLD2L//举升驱动品牌
#define P_SETUP_LIFTER_NUM								0//举升电机数量
#define P_SETUP_LIFTER_SPEED_RATIO_NUM		1//举升转速比分子
#define P_SETUP_LIFTER_SPEED_RATIO_DEN		1//举升转速比分母  
#define P_SETUP_LIFTER_DIS_RATIO_NUM			1//举升位置比分子
#define P_SETUP_LIFTER_DIS_RATIO_DEN			1//举升位置比分母    	
#define P_SETUP_LIFTER_CAN_CONNECTION			1000//举升can线接法
#define P_SETUP_LIFTER_DIR								1000//举升轮方向调整

#define P_SETUP_SHIFTER_DRIVER_BRAND			DRIVER_HINS_BLD2L//移轴驱动品牌
#define P_SETUP_SHIFTER_NUM								0//移轴电机数量
#define P_SETUP_SHIFTER_SPEED_RATIO_NUM		1//移轴转速比分子
#define P_SETUP_SHIFTER_SPEED_RATIO_DEN		1//移轴转速比分母  
#define P_SETUP_SHIFTER_DIS_RATIO_NUM			1//移轴位置比分子
#define P_SETUP_SHIFTER_DIS_RATIO_DEN			1//移轴位置比分母    	
#define P_SETUP_SHIFTER_CAN_CONNECTION		1000//移轴can线接法
#define P_SETUP_SHIFTER_DIR								1000//移轴轮方向调整

#define P_SETUP_PUSHER_DRIVER_BRAND				DRIVER_HINS_BLD2L//推杆驱动品牌
#define P_SETUP_PUSHER_NUM								0//推杆电机数量
#define P_SETUP_PUSHER_SPEED_RATIO_NUM		1//推杆转速比分子
#define P_SETUP_PUSHER_SPEED_RATIO_DEN		1//推杆转速比分母  
#define P_SETUP_PUSHER_DIS_RATIO_NUM			1//推杆位置比分子
#define P_SETUP_PUSHER_DIS_RATIO_DEN			1//推杆位置比分母
#define P_SETUP_PUSHER_CAN_CONNECTION			0//推杆can线接法
#define P_SETUP_PUSHER_DIR								0//推杆轮方向调整			

#define P_SETUP_CONTROLLER1_IP1						192//服务器IP192
#define P_SETUP_CONTROLLER1_IP2						168//服务器IP168						
#define P_SETUP_CONTROLLER1_IP3						0  //服务器IP0
#define P_SETUP_CONTROLLER1_IP4						30 //服务器IP30

#define P_SETUP_CONTROLLER2_IP1				  	192//服务器IP192
#define P_SETUP_CONTROLLER2_IP2						168//服务器IP168
#define P_SETUP_CONTROLLER2_IP3						0  //服务器IP0							
#define P_SETUP_CONTROLLER2_IP4						31 //服务器IP30			

#define P_SETUP_CONTROLLER3_IP1						192//服务器IP192
#define P_SETUP_CONTROLLER3_IP2						168//服务器IP168
#define P_SETUP_CONTROLLER3_IP3						0  //服务器IP0
#define P_SETUP_CONTROLLER3_IP4						32 //服务器IP30	

#define P_SETUP_CONTROLLER4_IP1						192//服务器IP192
#define P_SETUP_CONTROLLER4_IP2						168//服务器IP168
#define P_SETUP_CONTROLLER4_IP3						0  //服务器IP0							
#define P_SETUP_CONTROLLER4_IP4						33 //服务器IP30

/*四个行走轮设置ID编号*/
#define MOTOR1_ID								0x01
#define MOTOR2_ID      					0x01
#define MOTOR3_ID       				0x0603
#define MOTOR4_ID      					0x0604
/*四个行走轮返回ID编号*/
#define MOTOR1_BACK_ID  				0x01
#define MOTOR2_BACK_ID 					0x01
#define MOTOR3_BACK_ID  				0x0583
#define MOTOR4_BACK_ID 					0x0584
/*四个舵轮设置ID编号*/
#define STEERING1_ID    				0x0605
#define STEERING2_ID   					0x0606
#define STEERING3_ID    				0x0607
#define STEERING4_ID   					0x0608
/*四个舵轮返回ID编号*/
#define STEERING1_BACK_ID  			0x0585
#define STEERING2_BACK_ID 			0x0586
#define STEERING3_BACK_ID  			0x0587
#define STEERING4_BACK_ID 			0x0588
/*举升电机ID*/
#define  LIFTER1_ID							0x9
#define  LIFTER2_ID	    				0x9
#define  LIFTER3_ID							0x060B
#define  LIFTER4_ID	    				0x060C
/*举升电机返回ID*/
#define  LIFTER1_BACK_ID   			0x9
#define  LIFTER2_BACK_ID				0x9
#define  LIFTER3_BACK_ID   			0x058B
#define  LIFTER4_BACK_ID				0x058C
/*移轴电机ID*/
#define  SHIFTER1_ID       			0x09
#define  SHIFTER2_ID	    			0x05
#define  SHIFTER3_ID       			0x060F
/*移轴电机返回ID*/
#define  SHIFTER1_BACK_ID  			0x09
#define  SHIFTER2_BACK_ID				0x05
#define  SHIFTER3_BACK_ID  			0x058F
/*推杆电机ID*/
#define  PUSHER1_ID       			0x0605
#define  PUSHER2_ID	    				0x0000
#define  PUSHER3_ID       			0x0000
/*推杆电机返回ID*/
#define  PUSHER1_BACK_ID				0x0585
#define  PUSHER2_BACK_ID				0x0000
#define  PUSHER3_BACK_ID				0x0000

#define LIGHT_STOP_SIGNAL_DIS  300  //开启光电停车范围
#define REFLECTIVE_RANGE				50	//寻找反光贴范围
#define TURNINGOFF_ANGLE				0.025f//出弯角度判断
#define	POSARRIVE_RANGE					10 //位置到达判断范围
#define PRINT_TYPE_SELECT				1//打印类型1
#define PRINT_FREQUENCY					10//多少周期打印一次
#define START_SPEEDUP_RANGE			300//起步平稳加速范围
#define START_SPEEDDIFF_LIMIT		10 //起步速度差限制
#define ADVANCE_STOPSLOPE_ANGLE		0.6//弧线或者原地转弯 减速角度
#define TURNSPEED_MIN						30//最小转弯速度
#define TURNSPEED_MAX						50//最大转弯速度
#define ARC_TURNSPEED_MIN				100//最小圆弧转弯速度

#define  DONTSETVALUE		2147483647	  //不需要设置值
typedef enum
{
	SETUP_NAV_TYPE,										//导航方式
	
	SETUP_TURN_MODE,                  //转向方式
	SETUP_ANGLE_ENCODER_NUM,		  		//角度编码器数量
	SETUP_ANGLE_ENCODER_DIR,		 	 		//角度编码器方向调整*********111*555**********   
	SETUP_MAGNAV_DIR,				  				//导引传感器方向调整
	SETUP_DIS_ENCODER_NUM,			  		//拉线编码器个数

	SETUP_MOTOR_NUM,                  //行走电机数量
	SETUP_MOTOR_SPEED_RATIO_NUM,			//行走速比分子 	 
	SETUP_MOTOR_SPEED_RATIO_DEN,			//行走速比分母*********222*555********** 				
	SETUP_MOTOR_DIS_RATIO_NUM,        //行走位置比分子
	SETUP_MOTOR_DIS_RATIO_DEN,        //行走位置比分母
	
	SETUP_MOTOR_CAN_CONNECTION,		 	  //行走can线接法		
	SETUP_MOTOR_DIR,							  	//行走轮方向调整
	SETUP_STEERING_NUM,               //转向电机数量*********333*555**********
	SETUP_STEERING_SPEED_RATIO_NUM,		//转向转速比分子
	SETUP_STEERING_SPEED_RATIO_DEN,		//转向转速比分母
	
	SETUP_STEERING_DIS_RATIO_NUM,     //转向位置比分子
	SETUP_STEERING_DIS_RATIO_DEN,     //转向位置比分母
	SETUP_STEERING_CAN_CONNECTION,	  //转向can线接法*********444*555**********
	SETUP_STEERING_DIR,								//转向轮方向调整				
	SETUP_LIFTER_NUM,                 //举升电机数量
	
	SETUP_LIFTER_SPEED_RATIO_NUM,     //举升转速比分子
	SETUP_LIFTER_SPEED_RATIO_DEN,     //举升转速比分母  
	SETUP_LIFTER_DIS_RATIO_NUM,     	//举升位置比分子*********555*555**********
	SETUP_LIFTER_DIS_RATIO_DEN,     	//举升位置比分母    	
	SETUP_LIFTER_CAN_CONNECTION,	  	//举升can线接法
	
	SETUP_LIFTER_DIR,				  				//举升轮方向调整
	SETUP_SHIFTER_NUM,                //移轴电机数量
	SETUP_SHIFTER_SPEED_RATIO_NUM,    //移轴转速比分子*********666*555**********
	SETUP_SHIFTER_SPEED_RATIO_DEN,    //移轴转速比分母  
	SETUP_SHIFTER_DIS_RATIO_NUM,     	//移轴位置比分子
	
	SETUP_SHIFTER_DIS_RATIO_DEN,     	//移轴位置比分母    	
	SETUP_SHIFTER_CAN_CONNECTION,	  	//移轴can线接法
	SETUP_SHIFTER_DIR,				  			//移轴轮方向调整*********777*555**********
	SETUP_PUSHER_NUM,                 //推杆电机数量
	SETUP_PUSHER_SPEED_RATIO_NUM,     //推杆转速比分子
	
	SETUP_PUSHER_SPEED_RATIO_DEN,     //推杆转速比分母  
	SETUP_PUSHER_DIS_RATIO_NUM,     	//推杆位置比分子
	SETUP_PUSHER_DIS_RATIO_DEN,     	//推杆位置比分母*********888*555**********   
	SETUP_PUSHER_CAN_CONNECTION,	    //推杆can线接法
	SETUP_PUSHER_DIR,									//推杆轮方向调整			
	
	SETUP_MOTOR_DRIVER_BRAND,		  		//行走驱动器品牌 0.兴颂 ,1.步科 ,2.风得控 ,255.非can通讯
	SETUP_STEERING_DRIVER_BRAND,	  	//转向驱动器品牌 0.兴颂 ,1.步科 ,2.风得控 ,255.非can通讯
	SETUP_LIFTER_DRIVER_BRAND,		  	//举升驱动器品牌 0.兴颂 ,1.步科 ,2.风得控 ,255.非can通讯*********999*555**********
	SETUP_SHIFTER_DRIVER_BRAND,		  	//移轴驱动器品牌 0.兴颂 ,1.步科 ,2.风得控 ,255.非can通讯
	SETUP_PUSHER_DRIVER_BRAND,		  	//推杆驱动器品牌 0.兴颂 ,1.步科 ,2.风得控 ,255.非can通讯	
	
	SETUP_CONTROLLER1_IP1,			  		//服务器IP192
	SETUP_CONTROLLER1_IP2,			  		//服务器IP168						
	SETUP_CONTROLLER1_IP3,			  		//服务器IP0*********10*555**********
	SETUP_CONTROLLER1_IP4,	 		  		//服务器IP30
	SETUP_CONTROLLER2_IP1,			  		//服务器IP192
	
	SETUP_CONTROLLER2_IP2,			  		//服务器IP168
	SETUP_CONTROLLER2_IP3,			  		//服务器IP0							
	SETUP_CONTROLLER2_IP4,	 		  		//服务器IP30*********11*555**********											  									  
	SETUP_CONTROLLER3_IP1,			  		//服务器IP192
	SETUP_CONTROLLER3_IP2,			  		//服务器IP168
	
	SETUP_CONTROLLER3_IP3,			  		//服务器IP0
	SETUP_CONTROLLER3_IP4,	 		  		//服务器IP30							  										  
	SETUP_CONTROLLER4_IP1,			  		//服务器IP192
	SETUP_CONTROLLER4_IP2,			  		//服务器IP168
	SETUP_CONTROLLER4_IP3,			  		//服务器IP0							
	
	SETUP_CONTROLLER4_IP4,	 		  		//服务器IP30
	SETUP_LIDAR2BASE_X,								//雷达到运动中心X距离(mm)
	SETUP_LIDAR2BASE_Y,								//雷达到运动中心Y距离(mm)
	SETUP_LIDAR2BASE_THETA,						//雷达和车体前进方向夹角(0.1度)(-45.0°写成3150对应315.0°)
	SETUP_WHEEL_X_DIS,								//双驱动轮前进方向距离
	SETUP_WHEEL_Y_DIS,								//双驱动轮横移方向距离
	
	SETUP_BATTERYTYPE = 98,						//电池类型1冠宇电池
	SETUP_PLATFORM_TYPE = 99,					//agv平台类型:1悬臂轴,2双层SMT

}ENUM_SETUP_DATA;//控制器保存的固定参数数据

extern unsigned long *pSetup;
extern void initSetup(unsigned long *pStart,unsigned long len);
extern void Setup_Process(void);
extern void Setup_Process_Map(void);
unsigned char PowerOn_ReadFlash_ConstData(void);
void PowerOn_WriteFlash_ConstData(void);
void PowerOff_ClearConstFlash(void);
#endif