skill_sequence.xml
This example application shows the usage of a skill sequence. ptp -> lin -> idle -> approach
Models used
skill_approach: lines 73
skill_hold_duration: lines 67
skill_idle_duration: lines 62
skill_lin: lines 52
skill_partial_lin: lines 80
skill_partial_velocity_duration: lines 89
skill_ptp: lines 44
skill_relative_lin: lines 56
skill_relative_ptp: lines 47
skill_sequence: lines 30
File contents
1<?xml version="1.0" encoding="UTF-8"?>
2
3<!-- This example application shows the usage of a skill sequence.
4ptp -> lin -> idle -> approach
5-->
6
7<pitasc>
8
9 <models>
10 <include package="pitasc_library" file="models/pitasc.xml"/>
11 <include package="pitasc_library" file="models/skills.xml"/>
12
13 <include package="pitasc_library" file="universal_robots/ur.xml"/>
14 </models>
15
16 <clone prototype="project">
17
18 <member id="configuration">
19 <clone id="configuration" prototype="default_configuration"/>
20 </member>
21
22 <member id="environment">
23 <clone prototype="robot_ur5">
24 <member id="robot_driver.max_velocity">2.0</member>
25 <member id="robot_driver.max_acceleration">3.0</member>
26 </clone>
27 </member>
28
29 <member id="applications">
30 <clone prototype="skill_sequence">
31
32 <!-- Use this robot for this skill and all its subskills -->
33 <member id="robot" reference_id="environment.robot_ur5"/>
34
35 <!-- Add skills -->
36 <member id="skills">
37
38 <!-- <clone prototype="skill_user_confirm">
39 <member id="title">Go figure this out</member>
40 <member id="text">Do not quit stopping the termination of this skill?</member>
41 </clone> -->
42
43 <!-- Move ptp -->
44 <clone prototype="skill_ptp">
45 <member id="target_joint_state">0, -1.57, 1.57, 0, -1.57, -1.57</member>
46 </clone>
47 <clone prototype="skill_relative_ptp">
48 <member id="relative_joint_state">0, 0, 0, -0.75, 0, 0</member>
49 </clone>
50
51 <!-- Move to target1 (lin) -->
52 <clone prototype="skill_lin">
53 <member id="tool_frame">tool</member>
54 <member id="target_frame">target1</member>
55 </clone>
56 <clone prototype="skill_relative_lin">
57 <member id="tool_frame">tool</member>
58 <member id="target_offsets">0, 0, 0.05, 0, 0, 0</member>
59 </clone>
60
61 <!-- Idle for 1 second -->
62 <clone prototype="skill_idle_duration">
63 <member id="duration">1.0</member>
64 </clone>
65
66 <!-- Hold pose for 1 second (active control)-->
67 <clone prototype="skill_hold_duration">
68 <member id="tool_frame">tool</member>
69 <member id="duration">1.0</member>
70 </clone>
71
72 <!-- Approach -->
73 <clone prototype="skill_approach">
74 <member id="tool_frame">tool</member>
75 <member id="target_frame">target1</member>
76 <member id="approach_offsets">0, 0, -0.1, 0, 0, 0</member>
77 </clone>
78
79 <!-- Partial LIN motion (only x, y)-->
80 <clone prototype="skill_partial_lin">
81 <member id="tool_frame">tool</member>
82 <member id="target_frame">target1</member>
83 <member id="axes">x, y</member>
84 <member id="thresholds">0.001, 0.001</member>
85 <member id="target_offsets">0.05, 0</member>
86 </clone>
87
88 <!-- Partial velocity motion (only z) -->
89 <clone prototype="skill_partial_velocity_duration">
90 <member id="tool_frame">tool</member>
91 <member id="velocity_frame">target1</member>
92 <member id="axes">z</member>
93 <member id="velocities">0.01</member>
94 <member id="duration">2</member>
95 </clone>
96
97 </member>
98
99 </clone>
100 </member>
101
102 </clone>
103
104</pitasc>