diff --git a/launch/xsens_driver.launch b/launch/xsens_driver.launch index c0478f5..427fe98 100644 --- a/launch/xsens_driver.launch +++ b/launch/xsens_driver.launch @@ -4,6 +4,7 @@ + @@ -12,16 +13,17 @@ - - - - - - - - - $(arg angular_velocity_covariance_diagonal) - $(arg linear_acceleration_covariance_diagonal) - $(arg orientation_covariance_diagonal) - - + + + + + + + + + + $(arg angular_velocity_covariance_diagonal) + $(arg linear_acceleration_covariance_diagonal) + $(arg orientation_covariance_diagonal) + + \ No newline at end of file diff --git a/nodes/mtnode.py b/nodes/mtnode.py index 2d21c99..708a024 100755 --- a/nodes/mtnode.py +++ b/nodes/mtnode.py @@ -57,6 +57,7 @@ def __init__(self): baudrate = get_param('~baudrate', 0) timeout = get_param('~timeout', 0.002) initial_wait = get_param('~initial_wait', 0.1) + set_geo_coordinates = get_param('~set_geo_coordinates', '51.5,-0.09,0.0') if device == 'auto': devs = mtdevice.find_devices(timeout=timeout, initial_wait=initial_wait) @@ -80,6 +81,15 @@ def __init__(self): self.mt = mtdevice.MTDevice(device, baudrate, timeout, initial_wait=initial_wait) + if set_geo_coordinates: + coords = set_geo_coordinates.split(",") + if len(coords) != 3: + raise RuntimeError("set_geo_coordinates wrongly formatted: " \ + "can only take 3 values comma separated") + lat, lng, alt = float(coords[0]), float(coords[1]), float(coords[2]) + rospy.loginfo("Setting Lat, Lng, Alt: %f, %f, %f" % (lat, lng, alt)) + self.mt.SetLatLonAlt(lat, lng, alt) + # optional no rotation procedure for internal calibration of biases # (only mark iv devices) no_rotation_duration = get_param('~no_rotation_duration', 0)