free_drive.xml

This example application shows the usage of some force skills. Move to a target, establishes a contact, pushes for some seconds, keeps on pushing while moving in another direction (slide), returns to the initial target

Models used

File contents

  1<?xml version="1.0" encoding="UTF-8"?>
  2
  3<!-- This example application shows the usage of some force skills.
  4Move to a target, establishes a contact, pushes for some seconds,
  5keeps on pushing while moving in another direction (slide), returns to the initial target
  6-->
  7
  8<pitasc>
  9
 10    <models>
 11        <include package="pitasc_library" file="models/pitasc.xml"/>
 12        <include package="pitasc_library" file="models/skills.xml"/>
 13
 14        <include package="pitasc_library" file="universal_robots/ur.xml"/>
 15    </models>
 16
 17    <clone prototype="project">
 18
 19        <member id="configuration">
 20            <clone id="configuration" prototype="default_configuration"/>
 21        </member>
 22
 23        <member id="environment">
 24            <clone prototype="robot_ur5">
 25                <member id="robot_driver.max_velocity">2.0</member>
 26                <member id="robot_driver.max_acceleration">3.0</member>
 27                <member id="components">
 28                    <clone prototype="force_sensor">
 29                        <member id="wrench_topic">wrench</member>
 30                    </clone>
 31                </member>
 32            </clone>
 33        </member>
 34
 35        <member id="applications">
 36            <clone prototype="skill_sequence">
 37
 38                <member id="robot" reference_id="environment.robot_ur5"/>
 39
 40                <!-- Skills -->
 41                <member id="skills">
 42
 43                    <!-- First move to start position -->
 44                    <clone prototype="skill_lin">
 45                        <member id="tool_frame">tool</member>
 46                        <member id="target_frame">start_position</member>
 47                    </clone>
 48
 49                    <clone prototype="skill_push_duration">
 50                        <member id="skill_name">position_free_drive</member>
 51                        <member id="tool_frame">tool</member>
 52                        <member id="force_frame">tool</member>
 53                        <member id="axes">x</member>
 54                        <member id="target_forces">0</member>
 55                        <member id="compliance">0.05</member>
 56                        <member id="corner_frequency">7</member>
 57                        <member id="duration">15.0</member>
 58                    </clone>
 59
 60                    <clone prototype="skill_lin">
 61                        <member id="tool_frame">tool</member>
 62                        <member id="target_frame">start_position</member>
 63                    </clone>
 64
 65                    <clone prototype="skill_push_duration">
 66                        <member id="skill_name">position_free_drive</member>
 67                        <member id="tool_frame">tool</member>
 68                        <member id="force_frame">tool</member>
 69                        <member id="axes">y</member>
 70                        <member id="target_forces">0</member>
 71                        <member id="compliance">0.05</member>
 72                        <member id="corner_frequency">7</member>
 73                        <member id="duration">15.0</member>
 74                    </clone>
 75
 76                    <clone prototype="skill_lin">
 77                        <member id="tool_frame">tool</member>
 78                        <member id="target_frame">start_position</member>
 79                    </clone>
 80
 81                    <clone prototype="skill_push_duration">
 82                        <member id="skill_name">position_free_drive</member>
 83                        <member id="tool_frame">tool</member>
 84                        <member id="force_frame">tool</member>
 85                        <member id="axes">z</member>
 86                        <member id="target_forces">0</member>
 87                        <member id="compliance">0.05</member>
 88                        <member id="corner_frequency">7</member>
 89                        <member id="duration">15.0</member>
 90                    </clone>
 91
 92                    <clone prototype="skill_lin">
 93                        <member id="tool_frame">tool</member>
 94                        <member id="target_frame">start_position</member>
 95                    </clone>
 96
 97                    <clone prototype="skill_push_duration">
 98                        <member id="tool_frame">tool</member>
 99                        <member id="force_frame">tool</member>
100                        <member id="axes">a</member>
101                        <member id="target_forces">0</member>
102                        <member id="compliance">0.05</member>
103                        <member id="corner_frequency">7</member>
104                        <member id="duration">15.0</member>
105                    </clone>
106
107                    <clone prototype="skill_lin">
108                        <member id="tool_frame">tool</member>
109                        <member id="target_frame">start_position</member>
110                    </clone>
111
112                    <clone prototype="skill_push_duration">
113                        <member id="tool_frame">tool</member>
114                        <member id="force_frame">tool</member>
115                        <member id="axes">b</member>
116                        <member id="target_forces">0</member>
117                        <member id="compliance">0.05</member>
118                        <member id="corner_frequency">7</member>
119                        <member id="duration">15.0</member>
120                    </clone>
121
122                    <clone prototype="skill_lin">
123                        <member id="tool_frame">tool</member>
124                        <member id="target_frame">start_position</member>
125                    </clone>
126
127                    <clone prototype="skill_push_duration">
128                        <member id="tool_frame">tool</member>
129                        <member id="force_frame">tool</member>
130                        <member id="axes">c</member>
131                        <member id="target_forces">0</member>
132                        <member id="compliance">0.05</member>
133                        <member id="corner_frequency">7</member>
134                        <member id="duration">15.0</member>
135                    </clone>
136
137                    <clone prototype="skill_lin">
138                        <member id="tool_frame">tool</member>
139                        <member id="target_frame">start_position</member>
140                    </clone>
141                </member>
142
143            </clone>
144        </member>
145
146    </clone>
147
148</pitasc>