user_confirm.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
monitor_user_confirm: lines 62
skill_cartesian_tracking: lines 58
skill_lin: lines 40, 47, 69, 79
skill_sequence: lines 32
skill_user_confirm: lines 45, 52, 75
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 <!-- bool flag to disable user confirm monitors (see 'ignore' member)-->
29 <clone id="release_mode" prototype="bool_parameter">True</clone>
30
31 <member id="applications">
32 <clone prototype="skill_sequence">
33
34 <member id="robot" reference_id="environment.robot_ur5"/>
35
36 <!-- Skills -->
37 <member id="skills">
38
39 <!-- First move to start position -->
40 <clone prototype="skill_lin">
41 <member id="tool_frame">tool</member>
42 <member id="target_frame">start_position</member>
43 </clone>
44
45 <clone prototype="skill_user_confirm" />
46
47 <clone prototype="skill_lin">
48 <member id="tool_frame">tool</member>
49 <member id="target_frame">target1</member>
50 </clone>
51
52 <clone prototype="skill_user_confirm">
53 <member id="title">Caution!</member>
54 <member id="text">Clicking no will trigger an exception! Continue?</member>
55 <member id="reject_event">event123</member> <!-- clicking no will trigger an exception, since event "event123" does not exist -->
56 </clone>
57
58 <clone prototype="skill_cartesian_tracking">
59 <member id="tool_frame">tool</member>
60 <member id="target_frame">target2</member>
61 <member id="monitors">
62 <clone prototype="monitor_user_confirm">
63 <member id="title">Cartesian Tracking</member>
64 <member id="text">Do you want to succeed with next skill?</member>
65 </clone>
66 </member>
67 </clone>
68
69 <clone prototype="skill_lin">
70 <member id="tool_frame">tool</member>
71 <member id="target_frame">target1</member>
72 </clone>
73
74 <!-- will be ignored, since 'release_mode' is set to true -->
75 <clone prototype="skill_user_confirm">
76 <member id="ignore" reference_id="release_mode" />
77 </clone>
78
79 <clone prototype="skill_lin">
80 <member id="tool_frame">tool</member>
81 <member id="target_frame">target1</member>
82 </clone>
83
84 </member>
85
86 </clone>
87 </member>
88
89 </clone>
90
91</pitasc>