Skip to content

Commit d373914

Browse files
committed
Only send transfrom of newer times to avoid tf repeated data
1 parent 6858de7 commit d373914

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

drone_wrapper/src/drone_wrapper/drone_wrapper_class.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -567,12 +567,15 @@ def land(self):
567567
self.land_client(req)
568568

569569
def br_base2map(self, event):
570-
my_pose = self.get_position(frame="map")
571-
my_orientation = self.get_orientation(frame="map")
572-
my_orientation[2] += radians(-90)
573-
q = tf.transformations.quaternion_from_euler(*my_orientation)
574-
self.br.sendTransform(my_pose,
575-
q, rospy.Time.now(), "base_link", "map")
570+
now = rospy.Time.now()
571+
if self.last_pub_tf < now:
572+
my_pose = self.get_position(frame="map")
573+
my_orientation = self.get_orientation(frame="map")
574+
my_orientation[2] += radians(-90)
575+
q = tf.transformations.quaternion_from_euler(*my_orientation)
576+
self.br.sendTransform(my_pose,
577+
q, now, "base_link", "map")
578+
self.last_pub_tf = now
576579

577580
def shutdown(self):
578581
self.br_timer.shutdown()
@@ -615,6 +618,7 @@ def __init__(self, name='drone', ns='', verbose=False):
615618
self.frames_tf = FRAMES()
616619
self.br = tf.TransformBroadcaster()
617620
self.br_timer = rospy.Timer(rospy.Duration(nsecs=10000000), self.br_base2map)
621+
self.last_pub_tf = rospy.Time(0)
618622

619623
self.setpoint_raw_timer = rospy.Timer(rospy.Duration(nsecs=50000000), self.repeat_setpoint_raw)
620624
self.setpoint_raw_timer.shutdown()

0 commit comments

Comments
 (0)