pitasc_library - skills/skill_cartesian_bound.xml

Model definitions

File contents

 1<?xml version="1.0" encoding="UTF-8"?>
 2
 3<pitasc>
 4
 5    <models>
 6        <include package="pitasc_library" file="skills/skill_cartesian.xml"/>
 7
 8        <type id="skill_cartesian_bound" prototype="skill_cartesian">
 9            <meta>
10                <member id="description">Bound for a cartesian value</member>
11                <member id="visibility">basic</member>
12            </meta>
13
14            <data>
15                <!-- Task description -->
16                <type id="axes" prototype="string_csv">
17                    <meta>
18                        <member id="description">List of axes to be aligned.</member>
19                        <clone prototype="restrictions">
20                            <clone prototype="enum">x, y, z, a, b, c</clone>
21                        </clone>
22                        <member id="visibility">basic</member>
23                    </meta>
24                    <data>x, y, z, a, b, c</data>
25                </type>
26
27                <type id="upper_bound" prototype="float_csv">
28                    <meta>
29                        <member id="description">List of upper bound values respective to axes.</member>
30                        <member id="visibility">basic</member>
31                    </meta>
32                    <data>10.0, 10.0, 10.0, 3.14, 3.14, 3.14</data>
33                </type>
34
35                <type id="lower_bound" prototype="float_csv">
36                    <meta>
37                        <member id="description">List of lower bound values respective to axes.</member>
38                        <member id="visibility">basic</member>
39                    </meta>
40                    <data>-10.0, -10.0, -10.0, -3.14, -3.14, -3.14</data>
41                </type>
42
43                <type id="scaler" prototype="float_parameter">
44                    <meta>
45                        <member id="description">Time constant restricting the movement, i.e.,  v_allowed &lt;  (p_bound - p_current) / scalar </member>
46                        <member id="visibility">expert</member>
47                    </meta>
48                    <data>1.0</data>
49                </type>
50
51
52                <!-- Implementation details below: -->
53                <member id="bounds">
54                    <clone id="tracking_bound" prototype="bound"> <!-- how to specify visibility here? leave on hidden? -->
55                        <member id="coordinates" reference_id="axes"/>
56                        <member id="upper_bounds" reference_id="upper_bound"/>
57                        <member id="lower_bounds" reference_id="lower_bound"/>
58                        <member id="scaler" reference_id="scaler"/>
59                        <member id="prefix" reference_id="collections.target_to_tool.prefix"/>
60                        <member id="data_source">
61                            <reference reference_id="collections.target_to_tool.chains[0]"/>
62                        </member>
63                    </clone>
64                </member>
65                <member id="bounds.tracking_bound.meta.visibility">hidden</member>
66
67        
68            </data>
69        </type>
70
71    </models>
72
73</pitasc>