Add files for RobotStudio project
This commit is contained in:
parent
dbeb38085a
commit
ecc91651fa
|
@ -0,0 +1,65 @@
|
|||
EIO:CFG_1.0:6:1::
|
||||
#
|
||||
EIO_SIGNAL:
|
||||
|
||||
-Name "do_attA1" -SignalType "DO"
|
||||
|
||||
-Name "do_attA2" -SignalType "DO"
|
||||
|
||||
-Name "do_attA3" -SignalType "DO"
|
||||
|
||||
-Name "do_attB1" -SignalType "DO"
|
||||
|
||||
-Name "do_attB2" -SignalType "DO"
|
||||
|
||||
-Name "do_attB3" -SignalType "DO"
|
||||
|
||||
-Name "do_pos0" -SignalType "DO"
|
||||
|
||||
-Name "do_detA1" -SignalType "DO"
|
||||
|
||||
-Name "do_detA2" -SignalType "DO"
|
||||
|
||||
-Name "do_detA3" -SignalType "DO"
|
||||
|
||||
-Name "do_detB3" -SignalType "DO"
|
||||
|
||||
-Name "do_detB2" -SignalType "DO"
|
||||
|
||||
-Name "do_detB1" -SignalType "DO"
|
||||
|
||||
-Name "do_attPlate" -SignalType "DO"
|
||||
|
||||
-Name "do_detPlate" -SignalType "DO"
|
||||
|
||||
-Name "do_attPlate1" -SignalType "DO"
|
||||
|
||||
-Name "do_detPlate1" -SignalType "DO"
|
||||
|
||||
-Name "do_readyGrip0" -SignalType "DO"
|
||||
|
||||
-Name "do_homeGrip0" -SignalType "DO"
|
||||
|
||||
-Name "do_gripGrip0" -SignalType "DO"
|
||||
|
||||
-Name "do_readyGrip1" -SignalType "DO"
|
||||
|
||||
-Name "do_homeGrip1" -SignalType "DO"
|
||||
|
||||
-Name "do_gripGrip1" -SignalType "DO"
|
||||
|
||||
-Name "do_plateRdy" -SignalType "DO"
|
||||
|
||||
-Name "di_plateArr" -SignalType "DI"
|
||||
|
||||
-Name "di_productChosen" -SignalType "DI"
|
||||
|
||||
-Name "do_attBox" -SignalType "DO"
|
||||
|
||||
-Name "do_detBox" -SignalType "DO"
|
||||
|
||||
-Name "do_attLid" -SignalType "DO"
|
||||
|
||||
-Name "do_detLid" -SignalType "DO"
|
||||
|
||||
-Name "do_boxRdy" -SignalType "DO"
|
|
@ -0,0 +1,149 @@
|
|||
MMC:CFG_1.0:6:0::
|
||||
#
|
||||
MMC_REAL_ROUTINE:
|
||||
|
||||
-name "AxisCalibration" -hidden
|
||||
|
||||
-name "AxisProc" -hidden
|
||||
|
||||
-name "CalPendelum" -hidden
|
||||
|
||||
-name "CalPendelumProc" -hidden
|
||||
|
||||
-name "PendelumProc" -hidden
|
||||
|
||||
-name "CW_Options" -hidden
|
||||
|
||||
-name "CW_ReadLevel" -hidden
|
||||
|
||||
-name "AutoFineCalib" -hidden
|
||||
|
||||
-name "CW_Refcalib" -hidden
|
||||
|
||||
-name "ReadBarcode" -hidden
|
||||
#
|
||||
MMC_REAL_PARAM_SEQ_METHOD:
|
||||
|
||||
-name "method"
|
||||
#
|
||||
MMC_PALETTE_HEAD:
|
||||
|
||||
-name "M.C 1" -type "MMC_MC1"
|
||||
|
||||
-name "M.C 2" -type "MMC_MC2"
|
||||
|
||||
-name "M.C 3" -type "MMC_MC3"
|
||||
#
|
||||
MMC_SERV_ROUT_STRUCT:
|
||||
|
||||
-name "AxisCalibration"
|
||||
|
||||
-name "CalPendelum"
|
||||
#
|
||||
IOVIEW_BLOCK:
|
||||
|
||||
-name "IOViewBlockIfMotorsOff"
|
||||
#
|
||||
WARN_AT_START:
|
||||
|
||||
-name "WarningAtStart" -cursor_pp_diff_warning 0\
|
||||
-show_pp_to_cursor_button 0
|
||||
#
|
||||
AUTO_SWITCH_OF_JOG_UNIT:
|
||||
|
||||
-name "AutoSwitchOfJogUnit"
|
||||
#
|
||||
BACKUP_DEFAULT:
|
||||
|
||||
|
||||
-name "Backup"
|
||||
#
|
||||
MMC_MC1 = MMC_PALETTE:
|
||||
|
||||
-name "MoveJ" -only_mec_task
|
||||
|
||||
-name "MoveL" -only_mec_task
|
||||
|
||||
-name "MoveC" -only_mec_task
|
||||
|
||||
-name "ProcCall"
|
||||
|
||||
-name "Set"
|
||||
|
||||
-name "Reset"
|
||||
|
||||
-name "WaitTime"
|
||||
|
||||
-name "WaitDI"
|
||||
|
||||
-name "IF"
|
||||
|
||||
-name "Compact IF"
|
||||
|
||||
-name ":="
|
||||
|
||||
-name "Incr"
|
||||
|
||||
-name "Add"
|
||||
|
||||
-name "Decr"
|
||||
#
|
||||
MMC_MC2 = MMC_PALETTE:
|
||||
|
||||
-name "MoveJ" -only_mec_task
|
||||
|
||||
-name "MoveL" -only_mec_task
|
||||
|
||||
-name "MoveC" -only_mec_task
|
||||
|
||||
-name "ProcCall"
|
||||
|
||||
-name "Set"
|
||||
|
||||
-name "Reset"
|
||||
|
||||
-name "WaitTime"
|
||||
|
||||
-name "WaitDI"
|
||||
|
||||
-name "IF"
|
||||
|
||||
-name "Compact IF"
|
||||
|
||||
-name ":="
|
||||
|
||||
-name "Incr"
|
||||
|
||||
-name "Add"
|
||||
|
||||
-name "Decr"
|
||||
#
|
||||
MMC_MC3 = MMC_PALETTE:
|
||||
|
||||
-name "MoveJ" -only_mec_task
|
||||
|
||||
-name "MoveL" -only_mec_task
|
||||
|
||||
-name "MoveC" -only_mec_task
|
||||
|
||||
-name "ProcCall"
|
||||
|
||||
-name "Set"
|
||||
|
||||
-name "Reset"
|
||||
|
||||
-name "WaitTime"
|
||||
|
||||
-name "WaitDI"
|
||||
|
||||
-name "IF"
|
||||
|
||||
-name "Compact IF"
|
||||
|
||||
-name ":="
|
||||
|
||||
-name "Incr"
|
||||
|
||||
-name "Add"
|
||||
|
||||
-name "Decr"
|
|
@ -0,0 +1,455 @@
|
|||
MOC:CFG_1.0:6:0::
|
||||
#
|
||||
MOTION_SYSTEM:
|
||||
|
||||
-name "system_1" -min_temp_ambient_cabinet 5 -max_temp_ambient_cabinet 45\
|
||||
-min_temp_ambient_robot 5 -max_temp_ambient_robot 45
|
||||
#
|
||||
MOTION_PLANNER:
|
||||
|
||||
-name "motion_planner_1" -dynamic_resolution 0.5 -path_resolution 0.5\
|
||||
-std_servo_queue_time 0.193536 -linear_max_speed 8.4\
|
||||
-use_motion_sup "rob1" -use_jog_parameters "motion_planner_1"\
|
||||
-use_for_jogging -repos_installed \
|
||||
-use_spline_parameters "motion_planner_1" -restricted_circlepoint \
|
||||
-optimized_start_from_finepoint 1
|
||||
|
||||
-name "motion_planner_2" -dynamic_resolution 0.5 -path_resolution 0.5\
|
||||
-std_servo_queue_time 0.193536 -linear_max_speed 8.4\
|
||||
-use_motion_sup "rob2" -use_jog_parameters "motion_planner_2"\
|
||||
-repos_installed -use_spline_parameters "motion_planner_2"\
|
||||
-restricted_circlepoint -optimized_start_from_finepoint 1
|
||||
|
||||
-name "motion_planner_3"
|
||||
|
||||
-name "motion_planner_4"
|
||||
|
||||
-name "motion_planner_5"
|
||||
|
||||
-name "motion_planner_6"
|
||||
|
||||
-name "motion_planner_7"
|
||||
#
|
||||
JOG_PARAMETERS:
|
||||
|
||||
-name "motion_planner_1" -jog_mode 1
|
||||
|
||||
-name "motion_planner_2" -jog_mode 1
|
||||
#
|
||||
RELAY:
|
||||
|
||||
-name "rob1_brake" -out_signal "DRV1BRAKE" -in_signal "DRV1BRAKEFB"
|
||||
|
||||
-name "rob1_run" -out_signal "DRV1CHAIN1" -in_signal "DRV1K1" -run_relay
|
||||
|
||||
-name "rob1_run2" -out_signal "DRV1CHAIN2" -in_signal "DRV1K2" -run_relay
|
||||
|
||||
-name "rob2_brake" -out_signal "DRV2BRAKE" -in_signal "DRV2BRAKEFB"
|
||||
|
||||
-name "rob2_run" -out_signal "DRV2CHAIN1" -in_signal "DRV2K1" -run_relay
|
||||
|
||||
-name "rob2_run2" -out_signal "DRV2CHAIN2" -in_signal "DRV2K2" -run_relay
|
||||
#
|
||||
ROBOT:
|
||||
|
||||
-name "ROB_1" -use_robot_serial_number "rob_1"\
|
||||
-use_robot_type "ROB1_1200_0.9_5_TypeB" -use_robot_calib "r1_uncalib"\
|
||||
-use_joint_0 "rob1_1" -use_joint_1 "rob1_2" -use_joint_2 "rob1_3"\
|
||||
-use_joint_3 "rob1_4" -use_joint_4 "rob1_5" -use_joint_5 "rob1_6"\
|
||||
-base_frame_pos_x -0.001 -base_mass 16.2 -base_mass_centre_x -0.006\
|
||||
-base_mass_centre_y 0.001 -base_mass_centre_z 0.13 -use_lin_jog "ROB1"\
|
||||
-use_reorient_jog "ROB1" -use_joint_jog "ROB1"\
|
||||
-use_motion_process_mode "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "ROB_2" -use_robot_serial_number "rob_2"\
|
||||
-use_robot_type "ROB2_1200_0.9_5_TypeB" -use_robot_calib "r2_uncalib"\
|
||||
-use_joint_0 "rob2_1" -use_joint_1 "rob2_2" -use_joint_2 "rob2_3"\
|
||||
-use_joint_3 "rob2_4" -use_joint_4 "rob2_5" -use_joint_5 "rob2_6"\
|
||||
-base_frame_pos_x 0.0201903 -base_frame_pos_y -3.26784 -base_mass 16.2\
|
||||
-base_mass_centre_x -0.006 -base_mass_centre_y 0.001\
|
||||
-base_mass_centre_z 0.13 -use_lin_jog "ROB2" -use_reorient_jog "ROB2"\
|
||||
-use_joint_jog "ROB2"\
|
||||
-use_motion_process_mode "rob2_optimal_cycle_time_mode"
|
||||
#
|
||||
ROBOT_SERIAL_NUMBER:
|
||||
|
||||
-name "rob_1"
|
||||
|
||||
-name "rob_2"
|
||||
#
|
||||
FOOT_INTERFACE:
|
||||
|
||||
-name "r1_foot"
|
||||
|
||||
-name "r2_foot"
|
||||
#
|
||||
TOOL_INTERFACE:
|
||||
|
||||
-name "r1_tool"
|
||||
|
||||
-name "r2_tool"
|
||||
#
|
||||
CSS:
|
||||
|
||||
-name "rob1" -valid
|
||||
|
||||
-name "rob2" -valid
|
||||
#
|
||||
MOTION_PROCESS_MODE:
|
||||
|
||||
-name "rob1_optimal_cycle_time_mode" -mode_id 1\
|
||||
-use_motion_process_mode_type "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob1_low_speed_accuracy_mode" -mode_id 2\
|
||||
-use_motion_process_mode_type "rob1_low_speed_accuracy_mode"
|
||||
|
||||
-name "rob1_low_speed_stiff_mode" -mode_id 3\
|
||||
-use_motion_process_mode_type "rob1_low_speed_stiff_mode"
|
||||
|
||||
-name "rob1_accuracy_mode" -mode_id 4\
|
||||
-use_motion_process_mode_type "rob1_accuracy_mode" -world_acc_factor 1
|
||||
|
||||
-name "rob1_mpm_user_mode_1" -mode_id 5\
|
||||
-use_motion_process_mode_type "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob1_mpm_user_mode_2" -mode_id 6\
|
||||
-use_motion_process_mode_type "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob1_mpm_user_mode_3" -mode_id 7\
|
||||
-use_motion_process_mode_type "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob1_mpm_user_mode_4" -mode_id 8\
|
||||
-use_motion_process_mode_type "rob1_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob1_press_tending_mode" -mode_id 9\
|
||||
-use_motion_process_mode_type "rob1_press_tending_mode"
|
||||
|
||||
-name "rob2_optimal_cycle_time_mode" -mode_id 1\
|
||||
-use_motion_process_mode_type "rob2_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob2_low_speed_accuracy_mode" -mode_id 2\
|
||||
-use_motion_process_mode_type "rob2_low_speed_accuracy_mode"
|
||||
|
||||
-name "rob2_low_speed_stiff_mode" -mode_id 3\
|
||||
-use_motion_process_mode_type "rob2_low_speed_stiff_mode"
|
||||
|
||||
-name "rob2_accuracy_mode" -mode_id 4\
|
||||
-use_motion_process_mode_type "rob2_accuracy_mode" -world_acc_factor 1
|
||||
|
||||
-name "rob2_mpm_user_mode_1" -mode_id 5\
|
||||
-use_motion_process_mode_type "rob2_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob2_mpm_user_mode_2" -mode_id 6\
|
||||
-use_motion_process_mode_type "rob2_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob2_mpm_user_mode_3" -mode_id 7\
|
||||
-use_motion_process_mode_type "rob2_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob2_mpm_user_mode_4" -mode_id 8\
|
||||
-use_motion_process_mode_type "rob2_optimal_cycle_time_mode"
|
||||
|
||||
-name "rob2_press_tending_mode" -mode_id 9\
|
||||
-use_motion_process_mode_type "rob2_press_tending_mode"
|
||||
#
|
||||
MOTION_SUP:
|
||||
|
||||
-name "default"
|
||||
|
||||
-name "rob1" -path_col_detect_on -jog_col_detect_on \
|
||||
-gravity_tolerance 0.2 -friction_tolerance 1 -disturbance_tolerance 0.5
|
||||
|
||||
-name "rob2" -path_col_detect_on -jog_col_detect_on \
|
||||
-gravity_tolerance 0.2 -friction_tolerance 1 -disturbance_tolerance 0.5
|
||||
#
|
||||
ARM:
|
||||
|
||||
-name "rob1_1" -use_arm_type "ROB1_1" -use_acc_data "rob1_1"\
|
||||
-use_customer_arm_load "r1_load_1" -use_arm_calib "rob1_1"\
|
||||
-upper_joint_bound 2.96713 -lower_joint_bound -2.96713\
|
||||
-upper_joint_bound_max 2.96713 -lower_joint_bound_min -2.96713
|
||||
|
||||
-name "rob1_2" -use_arm_type "ROB1_2" -use_acc_data "rob1_2"\
|
||||
-use_customer_arm_load "r1_load_2" -use_arm_calib "rob1_2"\
|
||||
-upper_joint_bound 2.269 -lower_joint_bound -1.7454\
|
||||
-upper_joint_bound_max 2.269 -lower_joint_bound_min -1.7454
|
||||
|
||||
-name "rob1_3" -use_arm_type "ROB1_3" -use_acc_data "rob1_3"\
|
||||
-use_check_point "rob1_3" -use_customer_arm_load "r1_load_3"\
|
||||
-use_arm_calib "rob1_3" -upper_joint_bound 1.22181\
|
||||
-lower_joint_bound -3.49073 -upper_joint_bound_max 1.22181\
|
||||
-lower_joint_bound_min -3.49073
|
||||
|
||||
-name "rob1_4" -use_arm_type "ROB1_4" -use_acc_data "rob1_4"\
|
||||
-use_customer_arm_load "r1_load_4" -use_arm_calib "rob1_4"\
|
||||
-upper_joint_bound 4.71246 -lower_joint_bound -4.71246\
|
||||
-upper_joint_bound_max 4.71246 -lower_joint_bound_min -4.71246
|
||||
|
||||
-name "rob1_5" -use_arm_type "ROB1_5" -use_acc_data "rob1_5"\
|
||||
-use_arm_calib "rob1_5" -upper_joint_bound 2.269 -lower_joint_bound -2.269\
|
||||
-upper_joint_bound_max 2.269 -lower_joint_bound_min -2.269
|
||||
|
||||
-name "rob1_6" -use_arm_type "ROB1_6" -use_acc_data "rob1_6"\
|
||||
-use_arm_calib "rob1_6" -upper_joint_bound 6.98139\
|
||||
-lower_joint_bound -6.98139 -upper_joint_bound_max 1520\
|
||||
-lower_joint_bound_min -1520
|
||||
|
||||
-name "rob2_1" -use_arm_type "ROB2_1" -use_acc_data "rob2_1"\
|
||||
-use_customer_arm_load "r2_load_1" -use_arm_calib "rob2_1"\
|
||||
-upper_joint_bound 2.96713 -lower_joint_bound -2.96713\
|
||||
-upper_joint_bound_max 2.96713 -lower_joint_bound_min -2.96713
|
||||
|
||||
-name "rob2_2" -use_arm_type "ROB2_2" -use_acc_data "rob2_2"\
|
||||
-use_customer_arm_load "r2_load_2" -use_arm_calib "rob2_2"\
|
||||
-upper_joint_bound 2.269 -lower_joint_bound -1.7454\
|
||||
-upper_joint_bound_max 2.269 -lower_joint_bound_min -1.7454
|
||||
|
||||
-name "rob2_3" -use_arm_type "ROB2_3" -use_acc_data "rob2_3"\
|
||||
-use_check_point "rob2_3" -use_customer_arm_load "r2_load_3"\
|
||||
-use_arm_calib "rob2_3" -upper_joint_bound 1.22181\
|
||||
-lower_joint_bound -3.49073 -upper_joint_bound_max 1.22181\
|
||||
-lower_joint_bound_min -3.49073
|
||||
|
||||
-name "rob2_4" -use_arm_type "ROB2_4" -use_acc_data "rob2_4"\
|
||||
-use_customer_arm_load "r2_load_4" -use_arm_calib "rob2_4"\
|
||||
-upper_joint_bound 4.71246 -lower_joint_bound -4.71246\
|
||||
-upper_joint_bound_max 4.71246 -lower_joint_bound_min -4.71246
|
||||
|
||||
-name "rob2_5" -use_arm_type "ROB2_5" -use_acc_data "rob2_5"\
|
||||
-use_arm_calib "rob2_5" -upper_joint_bound 2.269 -lower_joint_bound -2.269\
|
||||
-upper_joint_bound_max 2.269 -lower_joint_bound_min -2.269
|
||||
|
||||
-name "rob2_6" -use_arm_type "ROB2_6" -use_acc_data "rob2_6"\
|
||||
-use_arm_calib "rob2_6" -upper_joint_bound 6.98139\
|
||||
-lower_joint_bound -6.98139 -upper_joint_bound_max 1520\
|
||||
-lower_joint_bound_min -1520
|
||||
#
|
||||
ARM_CHECK_POINT:
|
||||
|
||||
-name "rob1_3" -position_x -0.1 -position_y -0.05 -position_z 0.1
|
||||
|
||||
-name "rob2_3" -position_x -0.1 -position_y -0.05 -position_z 0.1
|
||||
#
|
||||
ARM_LOAD:
|
||||
|
||||
-name "r1_load_1"
|
||||
|
||||
-name "r1_load_2"
|
||||
|
||||
-name "r1_load_3"
|
||||
|
||||
-name "r1_load_4"
|
||||
|
||||
-name "r2_load_1"
|
||||
|
||||
-name "r2_load_2"
|
||||
|
||||
-name "r2_load_3"
|
||||
|
||||
-name "r2_load_4"
|
||||
#
|
||||
ARM_CALIB:
|
||||
|
||||
-name "rob1_1"
|
||||
|
||||
-name "rob1_2"
|
||||
|
||||
-name "rob1_3"
|
||||
|
||||
-name "rob1_4"
|
||||
|
||||
-name "rob1_5"
|
||||
|
||||
-name "rob1_6"
|
||||
|
||||
-name "rob2_1"
|
||||
|
||||
-name "rob2_2"
|
||||
|
||||
-name "rob2_3"
|
||||
|
||||
-name "rob2_4"
|
||||
|
||||
-name "rob2_5"
|
||||
|
||||
-name "rob2_6"
|
||||
#
|
||||
JOINT_CALIB:
|
||||
|
||||
-name "rob1_1"
|
||||
|
||||
-name "rob1_2"
|
||||
|
||||
-name "rob1_3"
|
||||
|
||||
-name "rob1_4"
|
||||
|
||||
-name "rob1_5"
|
||||
|
||||
-name "rob1_6"
|
||||
|
||||
-name "rob2_1"
|
||||
|
||||
-name "rob2_2"
|
||||
|
||||
-name "rob2_3"
|
||||
|
||||
-name "rob2_4"
|
||||
|
||||
-name "rob2_5"
|
||||
|
||||
-name "rob2_6"
|
||||
#
|
||||
MAINS:
|
||||
|
||||
-name "mains" -u_tolerance_min -0.15 -u_tolerance_max 0.1
|
||||
|
||||
-name "mains_no_rectifier" -u_tolerance_min 0 -u_tolerance_max 0
|
||||
#
|
||||
CURRENT_CONTROLLER:
|
||||
|
||||
-name "c_c_slow_1" -Kp_d_factor 0.2 -current_forced_factor 0.5\
|
||||
-delay_filter_time 0.000252
|
||||
#
|
||||
CABLE:
|
||||
|
||||
-name "cable_4.5_30" -use_cable_type "cable_4.5" -length 30
|
||||
|
||||
-name "cable_3.0_30" -use_cable_type "cable_3.0" -length 30
|
||||
|
||||
-name "cable_1.5_30" -use_cable_type "cable_1.5" -length 30
|
||||
|
||||
-name "cable_1.0_30" -use_cable_type "cable_1.0" -length 30
|
||||
|
||||
-name "cable_3.0_50" -use_cable_type "cable_3.0" -length 50
|
||||
|
||||
-name "cable_2.0_50" -use_cable_type "cable_2.0" -length 50
|
||||
|
||||
-name "cable_0.75_50" -use_cable_type "cable_0.75" -length 50
|
||||
|
||||
-name "cable_awg24_0.815" -use_cable_type "cable_awg24" -length 0.815
|
||||
|
||||
-name "cable_awg24_1.140" -use_cable_type "cable_awg24" -length 1.14
|
||||
|
||||
-name "cable_awg24_1.65" -use_cable_type "cable_awg24" -length 1.65
|
||||
|
||||
-name "cable_awg24_1.86" -use_cable_type "cable_awg24" -length 1.86
|
||||
|
||||
-name "cable_awg24_2.205" -use_cable_type "cable_awg24" -length 2.205
|
||||
|
||||
-name "cable_awg24_2.165" -use_cable_type "cable_awg24" -length 2.165
|
||||
|
||||
-name "cable_awg24_1.215" -use_cable_type "cable_awg24" -length 1.215
|
||||
#
|
||||
MOTOR_TYPE:
|
||||
|
||||
-name "default" -pole_pairs 3 -inertia 0 -torque_0 1 -ke 0.5\
|
||||
-ke_temp_coef_20 0 -ke_tolerance_min 0 -ke_tolerance_max 0 -ke_red_2i0 0\
|
||||
-i_max 3 -torque_losses_at_speed1 0 -torque_losses_at_speed2 0\
|
||||
-torque_losses_at_speed3 0 -speed1 100000 -speed2 100000 -speed3 100000\
|
||||
-r_stator_20 5 -r_stator_temp_coef_20 0 -l_stator 0.02
|
||||
#
|
||||
MOTOR_CALIB:
|
||||
|
||||
-name "LOCKED" -valid_com_offset -valid_cal_offset
|
||||
|
||||
-name "rob1_1" -valid_com_offset
|
||||
|
||||
-name "rob1_2" -valid_com_offset
|
||||
|
||||
-name "rob1_3" -valid_com_offset
|
||||
|
||||
-name "rob1_4" -valid_com_offset
|
||||
|
||||
-name "rob1_5" -valid_com_offset
|
||||
|
||||
-name "rob1_6" -valid_com_offset
|
||||
|
||||
-name "rob2_1" -valid_com_offset
|
||||
|
||||
-name "rob2_2" -valid_com_offset
|
||||
|
||||
-name "rob2_3" -valid_com_offset
|
||||
|
||||
-name "rob2_4" -valid_com_offset
|
||||
|
||||
-name "rob2_5" -valid_com_offset
|
||||
|
||||
-name "rob2_6" -valid_com_offset
|
||||
#
|
||||
DRIVE_MODULE_USER_DATA:
|
||||
|
||||
-name "drive_module_1"
|
||||
|
||||
-name "drive_module_2"
|
||||
#
|
||||
CFRIC_BLOCK:
|
||||
|
||||
-name "r1_CFric_1" -friction_ff_on -friction_ff_level 0.18\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r1_CFric_2" -friction_ff_on -friction_ff_level 0.14\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r1_CFric_3" -friction_ff_on -friction_ff_level 0.14\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r1_CFric_4" -friction_ff_on -friction_ff_level 0.07\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r1_CFric_5" -friction_ff_on -friction_ff_level 0.06\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r1_CFric_6" -friction_ff_on -friction_ff_level 0.02\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_1" -friction_ff_on -friction_ff_level 0.18\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_2" -friction_ff_on -friction_ff_level 0.14\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_3" -friction_ff_on -friction_ff_level 0.14\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_4" -friction_ff_on -friction_ff_level 0.07\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_5" -friction_ff_on -friction_ff_level 0.06\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
|
||||
-name "r2_CFric_6" -friction_ff_on -friction_ff_level 0.02\
|
||||
-servo_tune_id_level 5 -servo_tune_id_ramp 6
|
||||
#
|
||||
SIS_EXTERNAL:
|
||||
|
||||
-name "r1_sis_param" -prod_time_service_interval 20000\
|
||||
-calender_time_service_interval 1 -gear_box_warning_level 100
|
||||
|
||||
-name "r2_sis_param" -prod_time_service_interval 20000\
|
||||
-calender_time_service_interval 1 -gear_box_warning_level 100
|
||||
#
|
||||
AXIS_CALIBRATION_JOINT:
|
||||
|
||||
-name "rob1_1" -p1 47 -p4 47 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob1_2" -p1 -5 -p4 -5 -p6 2 -p7 30 -p8 15
|
||||
|
||||
-name "rob1_3" -p1 -41 -p4 -41 -p6 2 -p7 30 -p8 15
|
||||
|
||||
-name "rob1_4" -p1 8 -p4 8 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob1_5" -p1 -13 -p4 -13 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob1_6" -p1 8 -p4 8 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob2_1" -p1 47 -p4 47 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob2_2" -p1 -5 -p4 -5 -p6 2 -p7 30 -p8 15
|
||||
|
||||
-name "rob2_3" -p1 -41 -p4 -41 -p6 2 -p7 30 -p8 15
|
||||
|
||||
-name "rob2_4" -p1 8 -p4 8 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob2_5" -p1 -13 -p4 -13 -p6 2 -p7 30 -p8 10
|
||||
|
||||
-name "rob2_6" -p1 8 -p4 8 -p6 2 -p7 30 -p8 10
|
|
@ -0,0 +1 @@
|
|||
PROC:CFG_1.0:6:0::
|
|
@ -0,0 +1,34 @@
|
|||
SIO:CFG_1.0:6:1::
|
||||
#
|
||||
COM_PHY_CHANNEL:
|
||||
|
||||
-Name "COM1" -Connector "COM1"
|
||||
#
|
||||
COM_TRP:
|
||||
|
||||
-Name "TCPIP1" -Type "TCP/IP" -PhyChannel ""
|
||||
#
|
||||
ETHERNET_PORT:
|
||||
|
||||
-Name "X2"
|
||||
|
||||
-Name "X3"
|
||||
|
||||
-Name "X4"
|
||||
|
||||
-Name "X5"
|
||||
|
||||
-Name "X6"
|
||||
#
|
||||
STATIC_VLAN:
|
||||
|
||||
-Name "X5" -Interface "LAN3"
|
||||
#
|
||||
DNSC:
|
||||
|
||||
|
||||
-Name "DNSC"
|
||||
#
|
||||
RSE_CONFIG:
|
||||
|
||||
-Name "RSCON"
|
|
@ -0,0 +1,92 @@
|
|||
SYS:CFG_1.0:6:0::
|
||||
#
|
||||
LOCALIZATION:
|
||||
|
||||
-Name "Language" -Value "en"
|
||||
#
|
||||
CAB_REGAIN_DIST:
|
||||
|
||||
-Tcp_dist 0.05 -Tcp_rot 0.2 -Ext_dist 0.05 -Ext_rot 0.2
|
||||
|
||||
-Name "AUTO" -Tcp_dist 0.5 -Ext_dist 0.5
|
||||
|
||||
-Name "StartMove" -Tcp_dist 0.01 -Tcp_rot 0.35 -Ext_dist 0.01\
|
||||
-Ext_rot 0.35
|
||||
#
|
||||
MANFS_LIMIT:
|
||||
|
||||
-name "LIMITFLAG" -text_id 30,82 -mode "0"
|
||||
#
|
||||
HOTEDIT_MODPOS:
|
||||
|
||||
-name "modpos" -type -tuning_in_auto
|
||||
#
|
||||
RUNCHN_BOOL:
|
||||
|
||||
-Name "SoftAS" -Select
|
||||
|
||||
-Name "SoftGS" -Select
|
||||
|
||||
-Name "SoftSS" -Select
|
||||
|
||||
-Name "SoftES"
|
||||
#
|
||||
AUTO_COND_RESET:
|
||||
|
||||
-name "AllDebugSettings" -reset "NO"
|
||||
#
|
||||
CAB_TASK_MODULES:
|
||||
|
||||
-File "HOME:/user.sys" -ModName "user" -AllTask
|
||||
#
|
||||
RUN_MODE_SETTINGS:
|
||||
|
||||
-name "AutoToManual"
|
||||
|
||||
-name "ManualToAuto"
|
||||
#
|
||||
SYS_MISC:
|
||||
|
||||
-Name "NoOfRetry" -Value 4
|
||||
|
||||
-Name "SimulateMenu" -Value 1
|
||||
|
||||
-Name "ModalPayLoadMode" -Value 1
|
||||
|
||||
-Name "PayloadsInWristCoords"
|
||||
|
||||
-Name "StationaryPayLoadMode"
|
||||
|
||||
-Name "CollisionErrorHandling"
|
||||
|
||||
-Name "BrakeMaintenance" -Value 1
|
||||
|
||||
-Name "RapidLogging" -Value 1
|
||||
|
||||
-Name "StepOutNoStepin"
|
||||
|
||||
-Name "QueueBackup"
|
||||
#
|
||||
CAB_TASKS:
|
||||
|
||||
-Name "T_ROB1" -Type "NORMAL" -UseMechanicalUnitGroup "rob1" -MotionTask
|
||||
|
||||
-Name "T_ROB2" -Type "NORMAL" -UseMechanicalUnitGroup "rob2" -MotionTask
|
||||
#
|
||||
MECHANICAL_UNIT_GROUP:
|
||||
|
||||
-Name "rob1" -Robot "ROB_1" -UseMotionPlanner "motion_planner_1"
|
||||
|
||||
-Name "rob2" -Robot "ROB_2" -UseMotionPlanner "motion_planner_2"
|
||||
#
|
||||
SUPPRESS_ELOG:
|
||||
|
||||
-Name "SyncId"
|
||||
#
|
||||
CYCLIC_BOOL:
|
||||
|
||||
-Name "RemoveAtPpToMain"
|
||||
|
||||
-Name "ErrorMode"
|
||||
|
||||
-Name "RecoveryMode" -Value 1
|
|
@ -0,0 +1,5 @@
|
|||
# Project_1
|
||||
|
||||
An interactive simulation of two robotic arms. Intended to be run inside ABB Robot Studio.
|
||||
|
||||
Targets RobotWare 6.11.03.00
|
Binary file not shown.
|
@ -0,0 +1,4 @@
|
|||
MODULE CalibData
|
||||
PERS tooldata Servo:=[TRUE,[[0,0,114.2],[1,0,0,0]],[0.226,[8.9,12.3,48.7],[1,0,0,0],0.00021,0.00024,0.00009]];
|
||||
PERS tooldata VaccumOne:=[TRUE,[[63.5,18.5,37.5],[0.707106781,0,0.707106781,0]],[0.226,[8.9,12.3,48.7],[1,0,0,0],0.00021,0.00024,0.00009]];
|
||||
ENDMODULE
|
|
@ -0,0 +1,153 @@
|
|||
MODULE Module1
|
||||
CONST robtarget T_Vacuum_0:=[[569.499621149,18.499681552,825.6],[0,0,1,0],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Servo_0:=[[569.499583396,18.499694248,825.600008618],[-0.000000023,-0.000000025,1,0.00000004],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A1_approach:=[[318.326,-160.729,129.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A2_approach:=[[405.826,-159.341,279.35],[0,0,1,0],[-1,-1,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A3_approach:=[[493.326,-159.341,129.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B1_approach:=[[318.326,140.659,329.35],[0,0,1,0],[0,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B2_approach:=[[405.826,140.659,279.35],[0,0,1,0],[0,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B3_approach:=[[493.326,140.659,179.35],[0,0,1,0],[0,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A1:=[[318.326,-160.729,29.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A2:=[[405.826,-159.341,29.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_A3:=[[493.326,-159.341,29.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B1:=[[318.326,140.659,29.35],[0,0,1,0],[0,0,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B2:=[[405.826,140.659,29.35],[0,0,1,0],[0,0,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B3:=[[493.326,140.659,29.35],[0,0,1,0],[0,0,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
CONST robtarget T_A_drop_approach:=[[-49.164,-389.932,250],[0,0,1,0],[-2,-2,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_B_drop_approach:=[[126.126,-389.841,279.35],[0,0,1,0],[-1,-1,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_A_drop:=[[-49.164,-389.932,29.35],[0,0,1,0],[-2,-2,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_B_drop:=[[126.126,-389.841,29.35],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
CONST robtarget T_Plate_approach:=[[38.5400092,-389.885016,237.5],[-0.000000023,-0.000000025,1,0.00000004],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate:=[[38.540000368,-389.88500064,45.5],[-0.000000023,-0.000000025,1,0.00000004],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_drop_approach:=[[188.849,-769.784,375.84],[-0.000000023,-0.000000025,1,0.00000004],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_drop:=[[188.849,-769.784,175.84],[-0.000000023,-0.000000025,1,0.00000004],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
VAR num robot0_state:=0;
|
||||
VAR num product := 0;
|
||||
|
||||
PROC main()
|
||||
TEST robot0_state
|
||||
CASE 0:
|
||||
! Zero positions
|
||||
PulseDO do_pos0;
|
||||
MoveAbsJ [[0,0,0,0,0,0], [9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], v1000, fine, tool0;
|
||||
! Wait for input from station
|
||||
WaitDI di_productChosen, 1;
|
||||
robot0_state := 1;
|
||||
CASE 1:
|
||||
TEST product
|
||||
CASE 0:
|
||||
Path_10_act;
|
||||
CASE 1:
|
||||
Path_20_act;
|
||||
CASE 2:
|
||||
Path_30_act;
|
||||
ENDTEST
|
||||
Path_40_act;
|
||||
robot0_state := 2;
|
||||
CASE 2:
|
||||
MoveAbsJ [[0,0,0,0,0,0], [9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], v1000, fine, tool0;
|
||||
ENDTEST
|
||||
ENDPROC
|
||||
PROC Path_10_act()
|
||||
MoveJ T_A1_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_A1,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attA1;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A1_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_A_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detA1;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_B1_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_B1,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attB1;
|
||||
WaitTime 0.1;
|
||||
MoveL T_B1_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_B_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detB1;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
ENDPROC
|
||||
PROC Path_20_act()
|
||||
MoveJ T_A2_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_A2,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attA2;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A2_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_A_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detA2;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_B2_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_B2,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attB2;
|
||||
WaitTime 0.1;
|
||||
MoveL T_B2_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_B_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detB2;
|
||||
WaitTime 0.1;
|
||||
MoveL T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
ENDPROC
|
||||
PROC Path_30_act()
|
||||
MoveJ T_A3_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_A3,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attA3;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A3_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_A_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detA3;
|
||||
WaitTime 0.1;
|
||||
MoveL T_A_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_B3_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_B3,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attB3;
|
||||
WaitTime 0.1;
|
||||
MoveL T_B3_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Plate_B_drop,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detB3;
|
||||
WaitTime 0.1;
|
||||
MoveL T_B_drop_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
ENDPROC
|
||||
PROC Path_40_act()
|
||||
PulseDO do_readyGrip0;
|
||||
MoveJ T_Plate_approach,v1000,z100,Servo\WObj:=wobj0;
|
||||
MoveL T_Plate,v1000,fine,Servo\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_gripGrip0;
|
||||
PulseDO do_attPlate;
|
||||
WaitTime 0.1;
|
||||
MoveL T_Plate_approach,v1000,z100,Servo\WObj:=wobj0;
|
||||
MoveL T_Plate_drop_approach,v1000,z100,Servo\WObj:=wobj0;
|
||||
MoveL T_Plate_drop,v1000,fine,Servo\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_readyGrip0;
|
||||
PulseDO do_detPlate;
|
||||
WaitTime 0.1;
|
||||
MoveL T_Plate_drop_approach,v1000,z20,Servo\WObj:=wobj0;
|
||||
WaitTime 0.3;
|
||||
PulseDO do_plateRdy;
|
||||
PulseDO do_homeGrip0;
|
||||
MoveL T_Servo_0,v1000,z100,Servo\WObj:=wobj0;
|
||||
ENDPROC
|
||||
ENDMODULE
|
|
@ -0,0 +1,5 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||
<Program>
|
||||
<Module>CalibData.mod</Module>
|
||||
<Module>Module1.mod</Module>
|
||||
</Program>
|
|
@ -0,0 +1,4 @@
|
|||
MODULE CalibData
|
||||
PERS tooldata Servo:=[TRUE,[[0,0,114.2],[1,0,0,0]],[0.226,[8.9,12.3,48.7],[1,0,0,0],0.00021,0.00024,0.00009]];
|
||||
PERS tooldata VaccumOne:=[TRUE,[[63.5,18.5,37.5],[0.707106781,0,0.707106781,0]],[0.226,[8.9,12.3,48.7],[1,0,0,0],0.00021,0.00024,0.00009]];
|
||||
ENDMODULE
|
|
@ -0,0 +1,95 @@
|
|||
MODULE Module1
|
||||
CONST robtarget T_Vacuum1_0:=[[590.690255644,-3249.342571232,825.6],[0,0,1,0],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Servo1_0:=[[590.690255644,-3249.342571232,825.6],[0,0.707106781,0.707106781,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Lift_approach:=[[534.319,-3218.803,434.087],[0,0,1,0],[0,0,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Lift:=[[534.319,-3218.803,34.087],[0,0,1,0],[0,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Intermediate:=[[517.234522163,-3699.371524499,310.765429546],[0.000260405,-0.388811853,-0.921316982,0.000542116],[-1,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Conv_approach:=[[-92.911,-3931.314,423.19],[0,0.707106781,0.707106781,0],[-2,-1,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Conv_approach1:=[[-65.83563274,-3871.631380514,353.993535883],[0.006565919,-0.767745501,-0.640511913,0.016377505],[-2,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Box_Conv:=[[-92.879,-3829.582,173.19],[0,0.707106781,0.707106781,0],[-2,-1,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
CONST robtarget T_Plate_ConvEnd_ap:=[[188.881,-2718.465,334],[0,0,1,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_ConvEnd:=[[188.881,-2718.465,184.03],[0,0,1,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_Boxed_approach:=[[-93.122,-3792.117,412.433],[0,0.707106781,0.707106781,0],[-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Plate_Boxed:=[[-93.122,-3792.117,212.433],[0,0.707106781,0.707106781,0],[-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
CONST robtarget T_Lid_approach:=[[425.927,-3606.283,267.2],[0,0,1,0],[-1,-1,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_Lid:=[[424.931,-3606.285,17.2],[0,0,1,0],[-1,-1,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_LidOn_approach2:=[[-92.859,-3792.015,331.34],[0,0,1,0],[-2,-2,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
CONST robtarget T_LidOn:=[[-121.479,-3791.215,237.49],[0,0,1,0],[-2,-2,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
|
||||
|
||||
VAR num robot1_state := 0;
|
||||
|
||||
PROC main()
|
||||
TEST robot1_state
|
||||
CASE 0:
|
||||
MoveAbsJ [[0,0,0,0,0,0], [9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], v1000, fine, tool0;
|
||||
WaitTime 0.5;
|
||||
Path_10_act;
|
||||
MoveAbsJ [[1.86,22.04,-43.98,0,112,1.86], [9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], v1000, fine, tool0;
|
||||
robot1_state := 1;
|
||||
CASE 1:
|
||||
WaitDI di_plateArr, 1;
|
||||
Path_20_act;
|
||||
robot1_state := 2;
|
||||
CASE 2:
|
||||
Path_30_act;
|
||||
robot1_state := 3;
|
||||
CASE 3:
|
||||
MoveAbsJ [[0,0,0,0,0,0], [9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], v1000, fine, tool0;
|
||||
ENDTEST
|
||||
ENDPROC
|
||||
PROC Path_10_act()
|
||||
MoveJ T_Vacuum1_0,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_Box_Lift_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_Box_Lift,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attBox;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_Box_Lift_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Box_Intermediate,v1000,z200,VaccumOne\WObj:=wobj0;
|
||||
MoveL T_Box_Conv_approach1,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_Box_Conv,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detBox;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_Box_Conv_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_Servo1_0,v1000,z100,Servo\WObj:=wobj0;
|
||||
ENDPROC
|
||||
PROC Path_20_act()
|
||||
MoveJ T_Plate_ConvEnd_ap,v1000,z100,Servo\WObj:=wobj0;
|
||||
PulseDO do_readyGrip1;
|
||||
MoveJ T_Plate_ConvEnd,v1000,fine,Servo\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_gripGrip1;
|
||||
PulseDO do_attPlate1;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_Plate_ConvEnd_ap,v1000,z100,Servo\WObj:=wobj0;
|
||||
!MoveJ T_Plate_Intermediate,v1000,z100,Servo\WObj:=wobj0;
|
||||
MoveJ T_Plate_Boxed_approach,v1000,z100,Servo\WObj:=wobj0;
|
||||
MoveJ T_Plate_Boxed,v1000,fine,Servo\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_readyGrip1;
|
||||
PulseDO do_detPlate1;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_Plate_Boxed_approach,v1000,z20,Servo\WObj:=wobj0;
|
||||
WaitTime 0.3;
|
||||
PulseDO do_homeGrip1;
|
||||
ENDPROC
|
||||
PROC Path_30_act()
|
||||
MoveJ T_Lid_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_Lid,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_attLid;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_Lid_approach,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_LidOn_approach2,v1000,z100,VaccumOne\WObj:=wobj0;
|
||||
MoveJ T_LidOn,v1000,fine,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.1;
|
||||
PulseDO do_detLid;
|
||||
WaitTime 0.1;
|
||||
MoveJ T_LidOn_approach2,v1000,z50,VaccumOne\WObj:=wobj0;
|
||||
WaitTime 0.3;
|
||||
PulseDO do_boxRdy;
|
||||
ENDPROC
|
||||
ENDMODULE
|
|
@ -0,0 +1,5 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||
<Program>
|
||||
<Module>CalibData.mod</Module>
|
||||
<Module>Module1.mod</Module>
|
||||
</Program>
|
Loading…
Reference in New Issue