sync.xml

This example application shows the usage of user_confirm monitors. This monitor allows to wait for user input and to trigger events according to the input. Also see ‘skill_user_confirm’

Models used

File contents

 1<?xml version="1.0" encoding="UTF-8"?>
 2
 3<!-- This example application shows the usage of user_confirm monitors. This monitor allows to wait for user input and to trigger events according to the input. Also see 'skill_user_confirm'
 4-->
 5
 6<pitasc>
 7
 8    <models>
 9        <include package="pitasc_library" file="models/pitasc.xml"/>
10        <include package="pitasc_library" file="models/skills.xml"/>
11
12        <include package="pitasc_library" file="universal_robots/ur.xml"/>
13    </models>
14
15    <clone prototype="project">
16
17        <member id="configuration">
18            <clone id="configuration" prototype="default_configuration"/>
19        </member>
20
21        <member id="environment">
22            <clone prototype="robot_ur5">
23                <member id="robot_driver.max_velocity">2.0</member>
24                <member id="robot_driver.max_acceleration">3.0</member>
25            </clone>
26        </member>
27
28        <member id="applications">
29            <clone prototype="skill_sequence">
30
31                <member id="robot" reference_id="environment.robot_ur5"/>
32
33                <!-- Skills -->
34                <member id="skills">
35
36                    <!-- needed, because pitasc does not create the robot publisher otherwise -->
37                    <clone prototype="skill_relative_ptp">
38                        <member id="relative_joint_state">0, 0, 0, 0, 0, 0</member>
39                    </clone>
40
41                    <!-- monitor sync fires when all sub monitors fired the correct event-->
42                    <clone id="idler" prototype="skill_idle">
43                        <member id="monitors">
44                            <clone prototype="monitor_sync">
45                                <member id="events">succeeded, test, succeeded</member>
46                                <member id="monitors">
47                                    <clone prototype="monitor_duration">
48                                        <member id="duration">1</member>
49                                    </clone>
50                                    <clone prototype="monitor_duration">
51                                        <member id="duration">3</member>
52                                        <member id="event">test</member>
53                                    </clone>
54                                    <clone prototype="monitor_duration">
55                                        <member id="duration">6</member>
56                                    </clone>
57                                </member>
58                            </clone>
59                        </member>
60                    </clone>
61
62                    <clone prototype="skill_counter_condition">
63                        <member id="repeat_target">idler</member>
64                        <member id="condition_target">next_skill</member>
65                        <member id="count">2</member>
66                    </clone>
67
68                    <!-- monitor sync fires when all sub monitors fired the correct event-->
69                    <clone id="next_skill" prototype="skill_idle">
70                        <member id="monitors">
71                            <clone prototype="monitor_sync">
72                                <member id="monitors">
73                                    <clone prototype="monitor_duration">
74                                        <member id="duration">1</member>
75                                    </clone>
76                                    <clone prototype="monitor_duration">
77                                        <member id="duration">2</member>
78                                    </clone>
79                                    <clone prototype="monitor_duration">
80                                        <member id="duration">3</member>
81                                    </clone>
82                                </member>
83                            </clone>
84                        </member>
85
86                    </clone>
87
88
89                </member>
90
91            </clone>
92        </member>
93
94    </clone>
95
96</pitasc>