def __init__(self):
rospy.init_node("CrazyflieAPI", anonymous=False)
rospy.wait_for_service("/emergency")
self.emergencyService = rospy.ServiceProxy("/emergency", Empty)
rospy.wait_for_service("/takeoff")
self.takeoffService = rospy.ServiceProxy("/takeoff", Takeoff)
rospy.wait_for_service("/land")
self.landService = rospy.ServiceProxy("/land", Land)
rospy.wait_for_service("/start_trajectory");
self.startTrajectoryService = rospy.ServiceProxy("/start_trajectory", StartTrajectory)
rospy.wait_for_service("/start_trajectory_reversed");
self.startTrajectoryReversedService = rospy.ServiceProxy("/start_trajectory_reversed", StartTrajectoryReversed)
rospy.wait_for_service("/start_ellipse")
self.ellipseService = rospy.ServiceProxy("/start_ellipse", StartEllipse)
rospy.wait_for_service("/start_canned_trajectory")
self.startCannedTrajectoryService = rospy.ServiceProxy("/start_canned_trajectory", StartCannedTrajectory)
rospy.wait_for_service("/go_home");
self.goHomeService = rospy.ServiceProxy("/go_home", GoHome)
rospy.wait_for_service("/update_params")
self.updateParamsService = rospy.ServiceProxy("/update_params", UpdateParams)
with open("../launch/crazyflies.yaml", 'r') as ymlfile:
cfg = yaml.load(ymlfile)
self.tf = TransformListener()
self.crazyflies = []
self.crazyfliesById = dict()
for crazyflie in cfg["crazyflies"]:
id = int(crazyflie["id"])
initialPosition = crazyflie["initialPosition"]
cf = Crazyflie(id, initialPosition, self.tf)
self.crazyflies.append(cf)
self.crazyfliesById[id] = cf
评论列表
文章目录