diff --git a/cobot1.xml b/cobot1.xml index bbbf7c59872bdcacc12dcecfcc06a61d55bce8db..abd6c944767ea3c6848101290fa67538d3460c47 100644 --- a/cobot1.xml +++ b/cobot1.xml @@ -249,8 +249,8 @@ bool glass_in_target_pos = false; <name x="535" y="-110">moving_to_glass</name> <label kind="invariant" x="484" y="-93">bottle_in_start_pos == false</label> </location> - <location id="id16" x="773" y="-8"> - <name x="680" y="-17">start_pour</name> + <location id="id16" x="773" y="-59"> + <name x="680" y="-68">start_pour</name> </location> <location id="id17" x="833" y="-263"> <name x="790" y="-297">shut_down</name> @@ -333,7 +333,16 @@ bool glass_in_target_pos = false; <location id="id42" x="977" y="493"> <committed/> </location> + <location id="id43" x="773" y="8"> + <name x="705" y="0">pouring</name> + </location> <init ref="id33"/> + <transition> + <source ref="id43"/> + <target ref="id18"/> + <label kind="guard" x="782" y="25">bottle_diff_to_start_ang > 110</label> + <label kind="synchronisation" x="782" y="42">asap!</label> + </transition> <transition> <source ref="id42"/> <target ref="id26"/> @@ -421,8 +430,8 @@ bool glass_in_target_pos = false; <transition> <source ref="id28"/> <target ref="id16"/> - <label kind="synchronisation" x="773" y="-93">goal?</label> - <label kind="assignment" x="773" y="-76">orient_constraint_set = false</label> + <label kind="synchronisation" x="782" y="-102">goal?</label> + <label kind="assignment" x="782" y="-85">orient_constraint_set = false</label> </transition> <transition> <source ref="id27"/> @@ -624,8 +633,8 @@ bool glass_in_target_pos = false; </transition> <transition> <source ref="id16"/> - <target ref="id18"/> - <label kind="synchronisation" x="782" y="25">move_success?</label> + <target ref="id43"/> + <label kind="synchronisation" x="782" y="-34">move_success?</label> </transition> <transition> <source ref="id15"/> @@ -663,12 +672,12 @@ bool glass_in_target_pos = false; </template> <template> <name>testdonecatcher</name> - <location id="id43" x="0" y="0"> + <location id="id44" x="0" y="0"> </location> - <init ref="id43"/> + <init ref="id44"/> <transition> - <source ref="id43"/> - <target ref="id43"/> + <source ref="id44"/> + <target ref="id44"/> <label kind="synchronisation" x="8" y="-42">test_done?</label> <nail x="59" y="-17"/> <nail x="59" y="17"/> @@ -676,12 +685,12 @@ bool glass_in_target_pos = false; </template> <template> <name>positionupdatecatcher</name> - <location id="id44" x="-731" y="-544"> + <location id="id45" x="-731" y="-544"> </location> - <init ref="id44"/> + <init ref="id45"/> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-1181" y="-816">i : int[0,max_ang_diff]</label> <label kind="synchronisation" x="-1181" y="-833">glass_diff_to_start_ang_update?</label> <label kind="assignment" x="-1181" y="-799">glass_diff_to_start_ang = i</label> @@ -689,8 +698,8 @@ bool glass_in_target_pos = false; <nail x="-935" y="-799"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-450" y="-790">i : int[0,max_ang_diff]</label> <label kind="synchronisation" x="-476" y="-807">glass_diff_to_target_ang_update?</label> <label kind="assignment" x="-442" y="-773">glass_diff_to_target_ang = i</label> @@ -698,8 +707,8 @@ bool glass_in_target_pos = false; <nail x="-484" y="-790"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-493" y="-382">i : int[0,max_ang_diff]</label> <label kind="synchronisation" x="-493" y="-399">bottle_diff_to_start_ang_update?</label> <label kind="assignment" x="-493" y="-365">bottle_diff_to_start_ang = i</label> @@ -707,8 +716,8 @@ bool glass_in_target_pos = false; <nail x="-510" y="-382"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-1198" y="-416">i : int[0,max_ang_diff]</label> <label kind="synchronisation" x="-1232" y="-433">bottle_diff_to_target_ang_update?</label> <label kind="assignment" x="-1207" y="-399">bottle_diff_to_target_ang = i</label> @@ -716,8 +725,8 @@ bool glass_in_target_pos = false; <nail x="-952" y="-391"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-858" y="-306">i : int[0,max_pos_diff]</label> <label kind="synchronisation" x="-858" y="-323">bottle_diff_to_target_pos_update?</label> <label kind="assignment" x="-858" y="-289">bottle_diff_to_target_pos = i</label> @@ -725,8 +734,8 @@ bool glass_in_target_pos = false; <nail x="-697" y="-331"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-1232" y="-561">i : int[0,max_pos_diff]</label> <label kind="synchronisation" x="-1232" y="-578">glass_diff_to_start_pos_update?</label> <label kind="assignment" x="-1232" y="-544">glass_diff_to_start_pos = i</label> @@ -734,8 +743,8 @@ bool glass_in_target_pos = false; <nail x="-1003" y="-527"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-773" y="-884">i : int[0,max_pos_diff]</label> <label kind="synchronisation" x="-824" y="-901">glass_diff_to_target_pos_update?</label> <label kind="assignment" x="-824" y="-867">glass_diff_to_target_pos = i</label> @@ -743,8 +752,8 @@ bool glass_in_target_pos = false; <nail x="-765" y="-850"/> </transition> <transition> - <source ref="id44"/> - <target ref="id44"/> + <source ref="id45"/> + <target ref="id45"/> <label kind="select" x="-323" y="-569">i : int[0,max_pos_diff]</label> <label kind="synchronisation" x="-323" y="-586">bottle_diff_to_start_pos_update?</label> <label kind="assignment" x="-323" y="-552">bottle_diff_to_start_pos = i</label> @@ -754,61 +763,61 @@ bool glass_in_target_pos = false; </template> <template> <name>positionupdate</name> - <location id="id45" x="0" y="0"> + <location id="id46" x="0" y="0"> </location> - <init ref="id45"/> + <init ref="id46"/> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="-331" y="59">bottle_diff_to_target_ang_update!</label> <nail x="-119" y="42"/> <nail x="-85" y="68"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="-323" y="-110">glass_diff_to_start_ang_update!</label> <nail x="-85" y="-110"/> <nail x="-119" y="-85"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="119" y="-76">glass_diff_to_target_ang_update!</label> <nail x="110" y="-42"/> <nail x="93" y="-68"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="102" y="59">bottle_diff_to_start_ang_update!</label> <nail x="85" y="85"/> <nail x="102" y="68"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="-340" y="-17">glass_diff_to_start_pos_update!</label> <nail x="-119" y="-25"/> <nail x="-119" y="8"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="-136" y="93">bottle_diff_to_target_pos_update!</label> <nail x="-34" y="85"/> <nail x="17" y="85"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="-34" y="-119">glass_diff_to_target_pos_update!</label> <nail x="25" y="-102"/> <nail x="-25" y="-102"/> </transition> <transition> - <source ref="id45"/> - <target ref="id45"/> + <source ref="id46"/> + <target ref="id46"/> <label kind="synchronisation" x="127" y="-8">bottle_diff_to_start_pos_update!</label> <nail x="119" y="-17"/> <nail x="119" y="17"/> @@ -816,12 +825,12 @@ bool glass_in_target_pos = false; </template> <template> <name>goalcatcher</name> - <location id="id46" x="-578" y="-263"> + <location id="id47" x="-578" y="-263"> </location> - <init ref="id46"/> + <init ref="id47"/> <transition> - <source ref="id46"/> - <target ref="id46"/> + <source ref="id47"/> + <target ref="id47"/> <label kind="synchronisation" x="-535" y="-272">goal?</label> <nail x="-535" y="-280"/> <nail x="-535" y="-246"/> diff --git a/scripts/tron_testing_auto.sh b/scripts/tron_testing_auto.sh index 0bd6aff7f6ddf2ccec5a694e5c5313211c5f1433..84ca1d1a02c5bfdfaf71b9690d3ec1a86c06d15c 100755 --- a/scripts/tron_testing_auto.sh +++ b/scripts/tron_testing_auto.sh @@ -21,8 +21,6 @@ tron_args=( # do not set -o here "-- 8080" ) - - # tron_args to one string tron_args_str=${tron_args[0]} for single_arg in ${tron_args[@]:1}; do @@ -37,7 +35,7 @@ for ((i=29;i<=test_count;i++)); do tron_args_str_output="-o $start_dir/test_output$i $tron_args_str" $tron_location $tron_args_str_output & tron_pid=$! roslaunch $package_name $roslaunch_filename & roslaunch_pid=$! - trap "kill $tron_pid; kill $roslaunch_pid; wait $tron_pid; wait $roslaunch_pid; return 1" SIGINT # kill both on interrupt + trap "kill $tron_pid; kill $roslaunch_pid; wait $tron_pid; wait $roslaunch_pid; cd $start_dir; return 1" SIGINT # kill both on interrupt wait $tron_pid kill $roslaunch_pid wait $roslaunch_pid # wait till actually killed, takes few seconds