|
|
@ -7,22 +7,22 @@ using namespace std; |
|
|
|
#define REG_INDEX(type, offset, subconfigindex) (type * 100 + offset + subconfigindex)
|
|
|
|
typedef enum { |
|
|
|
/*******************************************************************************
|
|
|
|
* 模块通用配置和状态 * |
|
|
|
* 妯″潡閫氱敤閰嶇疆鍜岀姸鎬� * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_module_version = REG_INDEX(0, 0, 0), // 模块版本
|
|
|
|
kreg_module_type = REG_INDEX(0, 0, 1), // 模块类型
|
|
|
|
kreg_module_version = REG_INDEX(0, 0, 0), // 妯″潡鐗堟湰
|
|
|
|
kreg_module_type = REG_INDEX(0, 0, 1), // 妯″潡绫诲瀷
|
|
|
|
kreg_module_status = REG_INDEX(0, 0, 2), // 0idle,1busy,2error
|
|
|
|
kreg_module_errorcode = REG_INDEX(0, 0, 3), // inited_flag
|
|
|
|
/*******************************************************************************
|
|
|
|
* SENSOR * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_sensor_temperature0 = REG_INDEX(2, 0, 0), // 温度1
|
|
|
|
kreg_sensor_temperature1 = REG_INDEX(2, 0, 1), // 温度2
|
|
|
|
kreg_sensor_temperature2 = REG_INDEX(2, 0, 2), // 温度3
|
|
|
|
kreg_sensor_temperature3 = REG_INDEX(2, 0, 3), // 温度4
|
|
|
|
kreg_sensor_temperature0 = REG_INDEX(2, 0, 0), // 娓╁害1
|
|
|
|
kreg_sensor_temperature1 = REG_INDEX(2, 0, 1), // 娓╁害2
|
|
|
|
kreg_sensor_temperature2 = REG_INDEX(2, 0, 2), // 娓╁害3
|
|
|
|
kreg_sensor_temperature3 = REG_INDEX(2, 0, 3), // 娓╁害4
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* 机械人通用配置 * |
|
|
|
* 鏈烘�浜洪€氱敤閰嶇疆 * |
|
|
|
*******************************************************************************/ |
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
@ -30,66 +30,66 @@ typedef enum { |
|
|
|
*******************************************************************************/ |
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* PID控制器(3000->4000) * |
|
|
|
* PID鎺у埗鍣�(3000->4000) * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_pid_target = REG_INDEX(30, 0, 0), // 目标数值
|
|
|
|
kreg_pid_nowoutput = REG_INDEX(30, 0, 1), // 当前输出
|
|
|
|
kreg_pid_feedbackval = REG_INDEX(30, 0, 2), // 当前输出
|
|
|
|
kreg_pid_target = REG_INDEX(30, 0, 0), // 鐩�爣鏁板€�
|
|
|
|
kreg_pid_nowoutput = REG_INDEX(30, 0, 1), // 褰撳墠杈撳嚭
|
|
|
|
kreg_pid_feedbackval = REG_INDEX(30, 0, 2), // 褰撳墠杈撳嚭
|
|
|
|
kreg_pid_kp = REG_INDEX(30, 50, 0), // kp
|
|
|
|
kreg_pid_ki = REG_INDEX(30, 50, 1), // ki
|
|
|
|
kreg_pid_kd = REG_INDEX(30, 50, 2), // kd
|
|
|
|
kreg_pid_max_output = REG_INDEX(30, 50, 3), // 最大输出
|
|
|
|
kreg_pid_min_output = REG_INDEX(30, 50, 4), // 最小输出
|
|
|
|
kreg_pid_max_integral = REG_INDEX(30, 50, 5), // 最大积分
|
|
|
|
kreg_pid_min_integral = REG_INDEX(30, 50, 6), // 最小积分
|
|
|
|
kreg_error_limit = REG_INDEX(30, 50, 7), // 误差限制
|
|
|
|
kreg_compute_interval = REG_INDEX(30, 50, 8), // 计算间隔
|
|
|
|
kreg_pid_max_output = REG_INDEX(30, 50, 3), // 鏈€澶ц緭鍑�
|
|
|
|
kreg_pid_min_output = REG_INDEX(30, 50, 4), // 鏈€灏忚緭鍑�
|
|
|
|
kreg_pid_max_integral = REG_INDEX(30, 50, 5), // 鏈€澶хН鍒�
|
|
|
|
kreg_pid_min_integral = REG_INDEX(30, 50, 6), // 鏈€灏忕Н鍒�
|
|
|
|
kreg_error_limit = REG_INDEX(30, 50, 7), // 璇�樊闄愬埗
|
|
|
|
kreg_compute_interval = REG_INDEX(30, 50, 8), // 璁$畻闂撮殧
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* 风扇控制 * |
|
|
|
* 椋庢墖鎺у埗 * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_fan0_ctrl_speed_level = REG_INDEX(31, 0, 0), // 风扇转速0,1,2,3
|
|
|
|
kreg_fan1_ctrl_speed_level = REG_INDEX(31, 0, 1), // 风扇转速0,1,2,3
|
|
|
|
kreg_fan2_ctrl_speed_level = REG_INDEX(31, 0, 2), // 风扇转速0,1,2,3
|
|
|
|
kreg_fan3_ctrl_speed_level = REG_INDEX(31, 0, 3), // 风扇转速0,1,2,3
|
|
|
|
kreg_fan4_ctrl_speed_level = REG_INDEX(31, 0, 4), // 风扇转速0,1,2,3
|
|
|
|
|
|
|
|
kreg_fan0_speed_level = REG_INDEX(31, 10, 0), // 风扇实时转速0,1,2,3
|
|
|
|
kreg_fan1_speed_level = REG_INDEX(31, 10, 1), // 风扇实时转速0,1,2,3
|
|
|
|
kreg_fan2_speed_level = REG_INDEX(31, 10, 2), // 风扇实时转速0,1,2,3
|
|
|
|
kreg_fan3_speed_level = REG_INDEX(31, 10, 3), // 风扇实时转速0,1,2,3
|
|
|
|
kreg_fan4_speed_level = REG_INDEX(31, 10, 4), // 风扇实时转速0,1,2,3
|
|
|
|
|
|
|
|
kreg_pwm_pump0_ctrl_speed_level = REG_INDEX(32, 0, 0), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump1_ctrl_speed_level = REG_INDEX(32, 0, 1), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump2_ctrl_speed_level = REG_INDEX(32, 0, 2), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump3_ctrl_speed_level = REG_INDEX(32, 0, 3), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump4_ctrl_speed_level = REG_INDEX(32, 0, 4), // PWM水泵0,1,2,3
|
|
|
|
|
|
|
|
kreg_pwm_pump0_speed_level = REG_INDEX(32, 10, 0), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump1_speed_level = REG_INDEX(32, 10, 1), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump2_speed_level = REG_INDEX(32, 10, 2), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump3_speed_level = REG_INDEX(32, 10, 3), // PWM水泵0,1,2,3
|
|
|
|
kreg_pwm_pump4_speed_level = REG_INDEX(32, 10, 4), // PWM水泵0,1,2,3
|
|
|
|
kreg_fan0_ctrl_speed_level = REG_INDEX(31, 0, 0), // 椋庢墖杞�€�0,1,2,3
|
|
|
|
kreg_fan1_ctrl_speed_level = REG_INDEX(31, 0, 1), // 椋庢墖杞�€�0,1,2,3
|
|
|
|
kreg_fan2_ctrl_speed_level = REG_INDEX(31, 0, 2), // 椋庢墖杞�€�0,1,2,3
|
|
|
|
kreg_fan3_ctrl_speed_level = REG_INDEX(31, 0, 3), // 椋庢墖杞�€�0,1,2,3
|
|
|
|
kreg_fan4_ctrl_speed_level = REG_INDEX(31, 0, 4), // 椋庢墖杞�€�0,1,2,3
|
|
|
|
|
|
|
|
kreg_fan0_speed_level = REG_INDEX(31, 10, 0), // 椋庢墖瀹炴椂杞�€�0,1,2,3
|
|
|
|
kreg_fan1_speed_level = REG_INDEX(31, 10, 1), // 椋庢墖瀹炴椂杞�€�0,1,2,3
|
|
|
|
kreg_fan2_speed_level = REG_INDEX(31, 10, 2), // 椋庢墖瀹炴椂杞�€�0,1,2,3
|
|
|
|
kreg_fan3_speed_level = REG_INDEX(31, 10, 3), // 椋庢墖瀹炴椂杞�€�0,1,2,3
|
|
|
|
kreg_fan4_speed_level = REG_INDEX(31, 10, 4), // 椋庢墖瀹炴椂杞�€�0,1,2,3
|
|
|
|
|
|
|
|
kreg_pwm_pump0_ctrl_speed_level = REG_INDEX(32, 0, 0), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump1_ctrl_speed_level = REG_INDEX(32, 0, 1), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump2_ctrl_speed_level = REG_INDEX(32, 0, 2), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump3_ctrl_speed_level = REG_INDEX(32, 0, 3), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump4_ctrl_speed_level = REG_INDEX(32, 0, 4), // PWM姘存车0,1,2,3
|
|
|
|
|
|
|
|
kreg_pwm_pump0_speed_level = REG_INDEX(32, 10, 0), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump1_speed_level = REG_INDEX(32, 10, 1), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump2_speed_level = REG_INDEX(32, 10, 2), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump3_speed_level = REG_INDEX(32, 10, 3), // PWM姘存车0,1,2,3
|
|
|
|
kreg_pwm_pump4_speed_level = REG_INDEX(32, 10, 4), // PWM姘存车0,1,2,3
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* 移液枪状态 * |
|
|
|
* 绉绘恫鏋�姸鎬� * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_pipette_pos_ul = REG_INDEX(40, 0, 0), // 移液枪位置
|
|
|
|
kreg_pipette_capactitance_val = REG_INDEX(40, 0, 1), // 移液枪电容值
|
|
|
|
kreg_pipette_tip_state = REG_INDEX(40, 0, 2), // 移动液枪tip状态
|
|
|
|
kreg_pipette_limit_ul = REG_INDEX(40, 50, 0), // 移液枪ul限制
|
|
|
|
kreg_pipette_pos_ul = REG_INDEX(40, 0, 0), // 绉绘恫鏋�綅缃�
|
|
|
|
kreg_pipette_capactitance_val = REG_INDEX(40, 0, 1), // 绉绘恫鏋�數瀹瑰€�
|
|
|
|
kreg_pipette_tip_state = REG_INDEX(40, 0, 2), // 绉诲姩娑叉灙tip鐘舵€�
|
|
|
|
kreg_pipette_limit_ul = REG_INDEX(40, 50, 0), // 绉绘恫鏋猽l闄愬埗
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* smartADC * |
|
|
|
*******************************************************************************/ |
|
|
|
kreg_self_reflecting_laser_sensor_transmitting_power = REG_INDEX(41, 0, 0), // 发射功率
|
|
|
|
kreg_self_reflecting_laser_sensor_receiving_tube_gain = REG_INDEX(41, 0, 1), // 接收管放大倍数
|
|
|
|
kreg_self_reflecting_laser_sensor_sample_interval_ms = REG_INDEX(41, 0, 2), // 采样率
|
|
|
|
kreg_self_reflecting_laser_sensor_num_samples = REG_INDEX(41, 0, 3), // 采样点数
|
|
|
|
kreg_self_reflecting_laser_sensor_transmitting_power = REG_INDEX(41, 0, 0), // 鍙戝皠鍔熺巼
|
|
|
|
kreg_self_reflecting_laser_sensor_receiving_tube_gain = REG_INDEX(41, 0, 1), // 鎺ユ敹绠℃斁澶у€嶆暟
|
|
|
|
kreg_self_reflecting_laser_sensor_sample_interval_ms = REG_INDEX(41, 0, 2), // 閲囨牱鐜�
|
|
|
|
kreg_self_reflecting_laser_sensor_num_samples = REG_INDEX(41, 0, 3), // 閲囨牱鐐规暟
|
|
|
|
|
|
|
|
// scan action
|
|
|
|
kreg_boditech_optical_scan_type = REG_INDEX(42, 0, 0), // 0 t光学,1 f光学
|
|
|
|
kreg_boditech_optical_scan_type = REG_INDEX(42, 0, 0), // 0 t鍏夊�锛�1 f鍏夊�
|
|
|
|
kreg_boditech_optical_scan_start_pos = REG_INDEX(42, 0, 1), |
|
|
|
kreg_boditech_optical_scan_direction = REG_INDEX(42, 0, 2), |
|
|
|
kreg_boditech_optical_scan_step_interval = REG_INDEX(42, 0, 3), |
|
|
@ -106,7 +106,7 @@ typedef enum { |
|
|
|
kreg_boditech_optical_laster_intensity = REG_INDEX(42, 0, 14), |
|
|
|
|
|
|
|
//
|
|
|
|
kreg_laster_scaner_scan_type = REG_INDEX(43, 0, 0), // 0 t光学,1 f光学
|
|
|
|
kreg_laster_scaner_scan_type = REG_INDEX(43, 0, 0), // 0 t鍏夊�锛�1 f鍏夊�
|
|
|
|
|
|
|
|
kreg_laster_scaner_scan_start_pos = REG_INDEX(43, 0, 1), |
|
|
|
kreg_laster_scaner_scan_direction = REG_INDEX(43, 0, 2), |
|
|
@ -135,55 +135,55 @@ typedef enum { |
|
|
|
kreg_xyrobot_irun = REG_INDEX(100, 0, 9), |
|
|
|
kreg_xyrobot_iholddelay = REG_INDEX(100, 0, 10), |
|
|
|
|
|
|
|
kreg_xyrobot_robot_type = REG_INDEX(100, 50, 0), // 机器人类型 0:hbot 1:corexy
|
|
|
|
kreg_xyrobot_x_shift = REG_INDEX(100, 50, 1), // x偏移
|
|
|
|
kreg_xyrobot_y_shift = REG_INDEX(100, 50, 2), // y偏移
|
|
|
|
kreg_xyrobot_x_shaft = REG_INDEX(100, 50, 3), // x轴是否反转
|
|
|
|
kreg_xyrobot_y_shaft = REG_INDEX(100, 50, 4), // y轴是否反转
|
|
|
|
kreg_xyrobot_x_one_circle_pulse = REG_INDEX(100, 50, 5), // x轴一圈脉冲数
|
|
|
|
kreg_xyrobot_y_one_circle_pulse = REG_INDEX(100, 50, 6), // y轴一圈脉冲数
|
|
|
|
kreg_xyrobot_run_to_zero_max_x_d = REG_INDEX(100, 50, 7), // x轴回零最大距离
|
|
|
|
kreg_xyrobot_run_to_zero_max_y_d = REG_INDEX(100, 50, 8), // y轴回零最大距离
|
|
|
|
kreg_xyrobot_look_zero_edge_max_x_d = REG_INDEX(100, 50, 9), // x轴找零边缘最大距离
|
|
|
|
kreg_xyrobot_look_zero_edge_max_y_d = REG_INDEX(100, 50, 10), // y轴找零边缘最大距离
|
|
|
|
kreg_xyrobot_io_state0 = REG_INDEX(100, 50, 11), // IO状态
|
|
|
|
kreg_xyrobot_io_state1 = REG_INDEX(100, 50, 12), // IO状态
|
|
|
|
kreg_xyrobot_robot_type = REG_INDEX(100, 50, 0), // 鏈哄櫒浜虹被鍨� 0:hbot 1:corexy
|
|
|
|
kreg_xyrobot_x_shift = REG_INDEX(100, 50, 1), // x鍋忕Щ
|
|
|
|
kreg_xyrobot_y_shift = REG_INDEX(100, 50, 2), // y鍋忕Щ
|
|
|
|
kreg_xyrobot_x_shaft = REG_INDEX(100, 50, 3), // x杞存槸鍚﹀弽杞�
|
|
|
|
kreg_xyrobot_y_shaft = REG_INDEX(100, 50, 4), // y杞存槸鍚﹀弽杞�
|
|
|
|
kreg_xyrobot_x_one_circle_pulse = REG_INDEX(100, 50, 5), // x杞翠竴鍦堣剦鍐叉暟
|
|
|
|
kreg_xyrobot_y_one_circle_pulse = REG_INDEX(100, 50, 6), // y杞翠竴鍦堣剦鍐叉暟
|
|
|
|
kreg_xyrobot_run_to_zero_max_x_d = REG_INDEX(100, 50, 7), // x杞村洖闆舵渶澶ц窛绂�
|
|
|
|
kreg_xyrobot_run_to_zero_max_y_d = REG_INDEX(100, 50, 8), // y杞村洖闆舵渶澶ц窛绂�
|
|
|
|
kreg_xyrobot_look_zero_edge_max_x_d = REG_INDEX(100, 50, 9), // x杞存壘闆惰竟缂樻渶澶ц窛绂�
|
|
|
|
kreg_xyrobot_look_zero_edge_max_y_d = REG_INDEX(100, 50, 10), // y杞存壘闆惰竟缂樻渶澶ц窛绂�
|
|
|
|
kreg_xyrobot_io_state0 = REG_INDEX(100, 50, 11), // IO鐘舵€�
|
|
|
|
kreg_xyrobot_io_state1 = REG_INDEX(100, 50, 12), // IO鐘舵€�
|
|
|
|
|
|
|
|
/***********************************************************************************************************************
|
|
|
|
* step_motor * |
|
|
|
***********************************************************************************************************************/ |
|
|
|
kreg_step_motor_pos = REG_INDEX(101, 0, 1), // 机器人x坐标
|
|
|
|
kreg_step_motor_dpos = REG_INDEX(101, 0, 3), // 执行完上一条指令后的相对位移
|
|
|
|
|
|
|
|
kreg_step_motor_shift = REG_INDEX(101, 50, 0), // x偏移
|
|
|
|
kreg_step_motor_shaft = REG_INDEX(101, 50, 1), // x轴是否反转
|
|
|
|
kreg_step_motor_one_circle_pulse = REG_INDEX(101, 50, 2), // x轴一圈脉冲数
|
|
|
|
kreg_step_motor_one_circle_pulse_denominator = REG_INDEX(101, 50, 3), // 设置一圈脉冲数的分母
|
|
|
|
kreg_step_motor_default_velocity = REG_INDEX(101, 50, 4), // 默认速度
|
|
|
|
kreg_step_motor_default_acc = REG_INDEX(101, 50, 5), // 默认加速度
|
|
|
|
kreg_step_motor_default_dec = REG_INDEX(101, 50, 6), // 默认减速度
|
|
|
|
kreg_step_motor_default_break_dec = REG_INDEX(101, 50, 7), // 默认减速度
|
|
|
|
kreg_step_motor_ihold = REG_INDEX(101, 50, 8), // 步进电机电流配置
|
|
|
|
kreg_step_motor_irun = REG_INDEX(101, 50, 9), // 步进电机电流配置
|
|
|
|
kreg_step_motor_iholddelay = REG_INDEX(101, 50, 10), // 步进电机电流配置
|
|
|
|
kreg_step_motor_iglobalscaler = REG_INDEX(101, 50, 11), // 步进电机电流配置
|
|
|
|
kreg_step_motor_run_to_zero_max_d = REG_INDEX(101, 50, 21), // x轴回零最大距离
|
|
|
|
kreg_step_motor_look_zero_edge_max_d = REG_INDEX(101, 50, 22), // x轴找零边缘最大距离
|
|
|
|
kreg_step_motor_run_to_zero_speed = REG_INDEX(101, 50, 23), // 回零速度
|
|
|
|
kreg_step_motor_run_to_zero_dec = REG_INDEX(101, 50, 24), // 回零减速度
|
|
|
|
kreg_step_motor_look_zero_edge_speed = REG_INDEX(101, 50, 25), // 找零边缘速度
|
|
|
|
kreg_step_motor_look_zero_edge_dec = REG_INDEX(101, 50, 26), // 找零边缘减速度
|
|
|
|
kreg_step_motor_max_d = REG_INDEX(101, 50, 28), // 最大限制距离
|
|
|
|
kreg_step_motor_min_d = REG_INDEX(101, 50, 29), // 最小限制距离
|
|
|
|
kreg_step_motor_pos = REG_INDEX(101, 0, 1), // 鏈哄櫒浜簒鍧愭爣
|
|
|
|
kreg_step_motor_dpos = REG_INDEX(101, 0, 3), // 鎵ц�瀹屼笂涓€鏉℃寚浠ゅ悗鐨勭浉瀵逛綅绉�
|
|
|
|
|
|
|
|
kreg_step_motor_shift = REG_INDEX(101, 50, 0), // x鍋忕Щ
|
|
|
|
kreg_step_motor_shaft = REG_INDEX(101, 50, 1), // x杞存槸鍚﹀弽杞�
|
|
|
|
kreg_step_motor_one_circle_pulse = REG_INDEX(101, 50, 2), // x杞翠竴鍦堣剦鍐叉暟
|
|
|
|
kreg_step_motor_one_circle_pulse_denominator = REG_INDEX(101, 50, 3), // 璁剧疆涓€鍦堣剦鍐叉暟鐨勫垎姣�
|
|
|
|
kreg_step_motor_default_velocity = REG_INDEX(101, 50, 4), // 榛樿�閫熷害
|
|
|
|
kreg_step_motor_default_acc = REG_INDEX(101, 50, 5), // 榛樿�鍔犻€熷害
|
|
|
|
kreg_step_motor_default_dec = REG_INDEX(101, 50, 6), // 榛樿�鍑忛€熷害
|
|
|
|
kreg_step_motor_default_break_dec = REG_INDEX(101, 50, 7), // 榛樿�鍑忛€熷害
|
|
|
|
kreg_step_motor_ihold = REG_INDEX(101, 50, 8), // 姝ヨ繘鐢垫満鐢垫祦閰嶇疆
|
|
|
|
kreg_step_motor_irun = REG_INDEX(101, 50, 9), // 姝ヨ繘鐢垫満鐢垫祦閰嶇疆
|
|
|
|
kreg_step_motor_iholddelay = REG_INDEX(101, 50, 10), // 姝ヨ繘鐢垫満鐢垫祦閰嶇疆
|
|
|
|
kreg_step_motor_iglobalscaler = REG_INDEX(101, 50, 11), // 姝ヨ繘鐢垫満鐢垫祦閰嶇疆
|
|
|
|
kreg_step_motor_run_to_zero_max_d = REG_INDEX(101, 50, 21), // x杞村洖闆舵渶澶ц窛绂�
|
|
|
|
kreg_step_motor_look_zero_edge_max_d = REG_INDEX(101, 50, 22), // x杞存壘闆惰竟缂樻渶澶ц窛绂�
|
|
|
|
kreg_step_motor_run_to_zero_speed = REG_INDEX(101, 50, 23), // 鍥為浂閫熷害
|
|
|
|
kreg_step_motor_run_to_zero_dec = REG_INDEX(101, 50, 24), // 鍥為浂鍑忛€熷害
|
|
|
|
kreg_step_motor_look_zero_edge_speed = REG_INDEX(101, 50, 25), // 鎵鹃浂杈圭紭閫熷害
|
|
|
|
kreg_step_motor_look_zero_edge_dec = REG_INDEX(101, 50, 26), // 鎵鹃浂杈圭紭鍑忛€熷害
|
|
|
|
kreg_step_motor_max_d = REG_INDEX(101, 50, 28), // 鏈€澶ч檺鍒惰窛绂�
|
|
|
|
kreg_step_motor_min_d = REG_INDEX(101, 50, 29), // 鏈€灏忛檺鍒惰窛绂�
|
|
|
|
|
|
|
|
/***********************************************************************************************************************
|
|
|
|
* MINI_STEP_MOTOR * |
|
|
|
***********************************************************************************************************************/ |
|
|
|
|
|
|
|
kreg_mini_servo_pos = REG_INDEX(102, 0, 1), // 位置
|
|
|
|
kreg_mini_servo_limit_velocity = REG_INDEX(102, 50, 1), // 限制速度
|
|
|
|
kreg_mini_servo_limit_torque = REG_INDEX(102, 50, 2), // 限制扭矩
|
|
|
|
kreg_mini_servo_protective_torque = REG_INDEX(102, 50, 3), // 保护扭矩
|
|
|
|
kreg_mini_servo_pos = REG_INDEX(102, 0, 1), // 浣嶇疆
|
|
|
|
kreg_mini_servo_limit_velocity = REG_INDEX(102, 50, 1), // 闄愬埗閫熷害
|
|
|
|
kreg_mini_servo_limit_torque = REG_INDEX(102, 50, 2), // 闄愬埗鎵�煩
|
|
|
|
kreg_mini_servo_protective_torque = REG_INDEX(102, 50, 3), // 淇濇姢鎵�煩
|
|
|
|
|
|
|
|
/***********************************************************************************************************************
|
|
|
|
* BOARD * |
|
|
|