コード例 #1
0
 def execute(self, userdata):
     try:
         task_spec = task_specification_navigation()
         target = navigation_target(userdata.marker_in, userdata.orientation_in, 0.0)
         task_spec.add_target(target)
         userdata.task_spec_out = task_spec
     except:
         return "failed"
     return "generated"
コード例 #2
0
 def parse_task(self, task_str):
     rospy.loginfo("BNT Taskspec: %s", task_str)
     test, spec = task_str.split("<")
     assert test == "BNT"
     spec = spec.strip()[:-1] #remove trailing '>'
     places = spec.split(")")[:-1] #remove last (empty) element
     
     taskspec = task_specification_navigation()
     for place in places:
         taskspec.add_target(self.parse_place(place))
     return taskspec
コード例 #3
0
def main():
    rospy.init_node("youbot_navigation_ai_re")
    nav_ai = YoubotNavigationAI()
    nav_ai.setup_introspection()
    #Example Task Spec
    spec = task_specification_navigation()
    spec.add_target(navigation_target("D1", "S", 2.0))
    spec.add_target(navigation_target("T4", "W", 2.0))
    spec.add_target(navigation_target("S1", "N", 2.0))
    spec.add_target(navigation_target("S5", "N", 2.0))
    nav_ai.get_statemachine().userdata.task_specification_nav_in = spec
    nav_ai.run()