I'm trying to make a mobile robot with 4 mecanum wheels. The method that I've chosen is to fuse the sensors(encoder, imu) with EKF and use the SLAM algorithms(Gmapping, Cartographer, etc..). Right now I'm trying to get an Imu values using rosserial.
My IMU is EBIMU24GV4 9DOF with EBRCV24GV4 wireless receiver. This IMU can output Euler angles, Quaternion as pose data, GYRO, ACCELERO, MAGNETO, DISTANE, TEMPERATURE data. I'm a noob to IMU and I think I didn't fully understand about IMU. Also, I don't know what info I need to get Odometry of my mobile robot.(what info among Euler, Quaternion, GYRO, ACCELERO, MAGNETO, DISTANCE do I need? and Why?) Pls Somebody help me.
And For my understanding, I have to get the 4 quaternion values by every timestamp using rosserial(std_msgs/String). Next I have to crop the exact data I need(w, x, y, z) and put it to sensor_msgs/Imu.Quaternion.msg to use and visualize in ROS for my mobile robot. Is my understanding corrrect?
get the 4 quaternion values [...] using rosserial [...] crop the exact data I need (w, x, y, z) and put it to sensor_msgs/Imu.Quaternion.msg. You seem to understand the steps - have you tried them? Are you having issues? $\endgroup$