Rosanswers logo

Im using UUV_simulator combined with your robot_localization package. I have been successfully been able to implement ekf with DVL, IMU and Pressure Sensor. The odometry estimate all start at (x,y,z,r,p,y) = (0,0,0,0,0,0), but I would like to start the node at my launch position in Gazebo simulator. How can I do this? I want my robot to launch at position (15,-20,0, 0,0,0) so that the ekf estimate proper pose interms of gazebo world frame.

Can I state the initial coordinates of my vehicle to the EKF somehow? mabye in the launch file?

Originally posted by solkristoffer on ROS Answers with karma: 3 on 2019-02-20

Post score: 0

Original comments

Comment by CJROV on 2022-08-30:
Hi, realizing this is a shot in the dark but I am trying run robot_localization also with a DVL, IMU and pressure sensor. Can I ask how your bringing the DVL data into robot_localization (i.e. as a 3D velocity vector or as a 1D velocity scalar)?

Would you be able to share your launch file / config file for robot localization?



1 Answer 1


Rosanswers logo

According to the docs, this is what the initial_state parameter is for.

Note that this will start the respective filter, i.e. ekf_localization_node or ukf_localization_node (*) there, and not your odometry. This will still start at all zeros, as is expected for an odometric sensor.

Also note that the the estimate will deviate more and more from the actual position, as it is just incorporating odometric information and can thus not correct for errors there.

(*) I'm assuming you're using one of those two nodes, due to your title, description and the tags you used. If this is not the case, please state clearly which node you are using.

Originally posted by mgruhler with karma: 12390 on 2019-02-20

This answer was ACCEPTED on the original site

Post score: 3


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.