pitasc_library - scripts/geometry.xml

Model definitions

File contents

  1<?xml version="1.0" encoding="UTF-8"?>
  2
  3<pitasc>
  4
  5    <models>
  6
  7        <!-- Kinematic Graph -->
  8
  9        <type id="script_kinematic_graph" prototype="script">
 10            <meta>
 11                <member id="description">Prototype for kinematic graph scripts</member>
 12                <member id="categories">internal</member>
 13            </meta>
 14            <data>
 15                <type id="on_start" prototype="bool_parameter">
 16                    <meta>
 17                        <member id="description">Execute the script before or after the skill.</member>
 18                        <member id="visibility">basic</member>
 19                    </meta>
 20                    <data>True</data>
 21                </type>
 22
 23                <type id="tf_broadcast" prototype="bool_parameter">
 24                    <meta>
 25                        <member id="description">Broadcast the frame to TF?</member>
 26                        <member id="visibility">basic</member>
 27                    </meta>
 28                    <data>False</data>
 29                </type>
 30
 31                <reference prototype="kinematic_graph" reference_id="configuration.kinematic_graph" />
 32                <member id="kinematic_graph.meta.visibility">hidden</member>
 33            </data>
 34        </type>
 35
 36        <type id="script_copy_frame" prototype="script_kinematic_graph">
 37            <meta>
 38                <member id="description">Copies a frame.</member>
 39                <member id="categories">frames</member>
 40                <member id="implementation">
 41                </member>
 42            </meta>
 43            <data>
 44                <type id="frame" prototype="string_parameter">
 45                    <meta>
 46                        <member id="description">Name of the frame to be created</member>
 47                        <member id="visibility">required</member>
 48                    </meta>
 49                </type>
 50
 51                <type id="source" prototype="string_parameter">
 52                    <meta>
 53                        <member id="description">Name of the frame to be copied</member>
 54                        <member id="visibility">required</member>
 55                    </meta>
 56                </type>
 57
 58                <type id="parent" prototype="string_parameter">
 59                    <meta>
 60                        <member id="description">Name of the parent frame to of 'frame'</member>
 61                        <member id="visibility">required</member>
 62                    </meta>
 63                </type>
 64            </data>
 65        </type>
 66
 67        <type id="script_temp_frame" prototype="script_kinematic_graph">
 68            <meta>
 69                <member id="description">Creates a temporary frame that lives as long as the parent
 70                    skill is active.</member>
 71                <member id="categories">frames</member>
 72                <member id="implementation">
 73                    <clone prototype="orocos">
 74                        <member id="package">cppitasc_kinematics</member>
 75                        <member id="component">ScriptTempFrame</member>
 76                    </clone>
 77                </member>
 78            </meta>
 79            <data>
 80                <type id="frame" prototype="string_parameter">
 81                    <meta>
 82                        <member id="description">Name of the frame to be created</member>
 83                        <member id="visibility">required</member>
 84                    </meta>
 85                </type>
 86
 87                <type id="source" prototype="string_parameter">
 88                    <meta>
 89                        <member id="description">Name of the frame to be copied</member>
 90                        <member id="visibility">required</member>
 91                    </meta>
 92                </type>
 93
 94                <type id="parent" prototype="string_parameter">
 95                    <meta>
 96                        <member id="description">Name of the parent frame to of 'frame'</member>
 97                        <member id="visibility">required</member>
 98                    </meta>
 99                </type>
100            </data>
101        </type>
102
103        <type id="script_remove_frame" prototype="script_kinematic_graph">
104            <meta>
105                <member id="description">Removes a frame.</member>
106                <member id="categories">frames</member>
107                <member id="implementation">
108                </member>
109            </meta>
110            <data>
111                <type id="frame" prototype="string_parameter">
112                    <meta>
113                        <member id="description">Name of the frame to be removed.</member>
114                        <member id="visibility">required</member>
115                    </meta>
116                </type>
117            </data>
118        </type>
119
120        <type id="script_set_frame" prototype="script_kinematic_graph">
121            <meta>
122                <member id="description">Sets a new frame.</member>
123                <member id="categories">frames</member>
124                <member id="implementation">
125                    <clone prototype="orocos">
126                        <member id="package">cppitasc_kinematics</member>
127                        <member id="component">ScriptSetFrame</member>
128                    </clone>
129                </member>
130            </meta>
131            <data>
132                <type id="frame" prototype="string_parameter">
133                    <meta>
134                        <member id="description">Name of the frame to be set or created</member>
135                        <member id="visibility">required</member>
136                    </meta>
137                </type>
138
139                <type id="parent" prototype="string_parameter">
140                    <meta>
141                        <member id="description">Name of the parent frame to of 'frame'</member>
142                        <member id="visibility">required</member>
143                    </meta>
144                </type>
145
146                <type id="pose" prototype="float_csv">
147                    <meta>
148                        <member id="description">Pose of the new frame relative to 'parent'</member>
149                        <member id="visibility">required</member>
150                    </meta>
151                </type>
152                <type id="pose_type" prototype="string_parameter">
153                    <meta>
154                        <member id="description">Specifies how the rotation part of pose is given.</member>
155                        <clone prototype="restrictions">
156                            <clone prototype="enum">rpy, rot_vec</clone>
157                        </clone>
158                    </meta>
159                    <data>rpy</data>
160                </type>
161            </data>
162        </type>
163
164
165        <type id="script_set_frames_from_yaml" prototype="script_kinematic_graph">
166            <meta>
167                <member id="description">Sets a new frame.</member>
168                <member id="categories">frames</member>
169                <member id="implementation">
170                    <clone prototype="orocos">
171                        <member id="package">cppitasc_kinematics</member>
172                        <member id="component">ScriptSetFrameFromYaml</member>
173                    </clone>
174                </member>
175            </meta>
176            <data>
177                <type id="path_to_yaml" prototype="string_parameter">
178                    <meta>
179                        <member id="description">Path to yaml file which holds frame information</member>
180                        <member id="visibility">required</member>
181                    </meta>
182                </type>
183                <type id="package" prototype="string_parameter">
184                    <meta>
185                        <member id="description">package name to yaml file</member>
186                        <member id="visibility">required</member>
187                    </meta>
188                    <data> </data>
189                </type>
190
191            </data>
192        </type>
193
194        <type id="script_set_frame_rotvec" prototype="script_set_frame">
195            <meta>
196                <member id="description">Sets a new frame (pose with rotation vector).</member>
197            </meta>
198            <data>
199                <member id="pose_type">rot_vec</member>
200            </data>
201        </type>
202
203
204        <type id="script_temp_frame_from_force" prototype="script_temp_frame">
205            <meta>
206                <member id="description">Creates a temporary frame from the current force
207                    measurements.
208
209                    The z axis points in the opposite direction of the measured force vector (the
210                    usual definition for force control with pitasc).
211                    The frame's position and direction will be updated as long as the script is
212                    active.
213
214                    Includes possibility to filter the input with a first order low pass.
215                </member>
216                <member id="categories">frames</member>
217                <member id="implementation">
218                    <clone prototype="orocos">
219                        <member id="package">cppitasc_kinematics</member>
220                        <member id="component">ScriptTempFrameFromForce</member>
221                    </clone>
222                </member>
223            </meta>
224            <data>
225                <reference id="wrench_driver" prototype="data_source"
226                    reference_id="robot.components.force_sensor.wrench_driver" />
227                <member id="wrench_driver.meta.visibility">expert</member>
228
229                <member id="parent" reference_id="robot.base_link" />
230                <member id="parent.meta.visibility">expert</member>
231
232                <type id="low_pass_filter_gain" prototype="float_parameter">
233                    <meta>
234                        <member id="description">First order low pass filter gain (exponential
235                            filter). Must be in interval [0:1]. 0 means taking only the previous
236                            value, 1 means taking only the new value.</member>
237                        <member id="visibility">basic</member>
238                    </meta>
239                    <data>1</data>
240                </type>
241
242            </data>
243        </type>
244
245        <type id="script_sinus_frame" prototype="script_temp_frame">
246            <meta>
247                <member id="description">Creates a temporary frame that lives as long as the parent
248                    skill is active. The frame moves in the given coordinate with a sinus</member>
249                <member id="categories">frames</member>
250                <member id="implementation">
251                    <clone prototype="orocos">
252                        <member id="package">cppitasc_kinematics</member>
253                        <member id="component">ScriptSinusFrame</member>
254                    </clone>
255                </member>
256            </meta>
257            <data>
258                <type id="coordinate" prototype="string_parameter">
259                    <meta>
260                        <member id="description">Coordinate that will be updated by a sine.</member>
261                        <member id="visibility">required</member>
262                    </meta>
263                </type>
264                <type id="amplitude" prototype="float_parameter">
265                    <meta>
266                        <member id="description">Amplitude of the sine.</member>
267                        <member id="visibility">required</member>
268                    </meta>
269                </type>
270                <type id="period" prototype="float_parameter">
271                    <meta>
272                        <member id="description">Period of the sine in [s].</member>
273                        <member id="visibility">required</member>
274                    </meta>
275                </type>
276            </data>
277        </type>
278
279    </models>
280</pitasc>