The IMcoders project is meant to offer to the robotic community an easy to mount, cheap and reliable device capable of substitute the wheel encoders in an already existing system, or to produce accurate odometry data for a wheeled device/robot without previous odometry support.
Link to official site:
http://wiki.ros.org/kinetic/Installation/Ubuntu
NOTE: The recomended version is Desktop-Full Install
sudo apt install ros-kinetic-imu-tools
Install this package if you want to use the imcoders_reader
for using the hardware
git clone -b NoQt https://github.com/Pablo-Leyva/RTIMULib2 ~/imcoders_ws/third-party/RTIMULib2
mkdir -p ~/imcoders_ws/third-party/RTIMULib2/RTHost/build && cd "$_"
cmake ..
sudo make install
sudo ldconfig
-
Create a new ROS workspace or use your an existing one
mkdir -p ~/imcoders_ws/src
-
Clone this repo
git clone --recursive -b devel https://github.com/solosito/IMcoders.git ~/imcoders_ws/src/.
If you installed RTIMULib2, remove the
CATKIN_IGNORE
file fromimcoders_reader
in order to also compile that package
rm ~/imcoders_ws/src/imcoders_reader/CATKIN_IGNORE
-
Build the code
Go to the workspace folder
cd ~/imcoders_ws
then
catkin_make
or (in case you have the catkin_tools)
catkin build
-
Source the workspace
source ~/imcoders_ws/devel/setup.bash
(Optional) Source the workspace in your .bashrc so you don't have to source the workspace every time you open a new terminal
echo "source ~/imcoders_ws/devel/setup.bash" >> ~/.bashrc
-
Launch simulator
roslaunch imcoders_gazebo box_robot_gazebo.launch
-
Launch teleop from a new terminal (node you need to source the workspace as before if you did not modified your .bashrc)
roslaunch imcoders_control keyboard_teleop.launch
-
Launch Rviz for visualization
roslaunch imcoders_rviz_launchers view_box.launch
-
Launch simulator
roslaunch imcoders_gazebo diff_wheeled_gazebo_IMcoders.launch
-
Launch teleop from a new terminal (node you need to source the workspace as before if you did not modified your .bashrc)
roslaunch imcoders_control keyboard_teleop.launch
-
Launch Rviz for visualization
roslaunch imcoders_rviz_launchers view_diff.launch
-
Source the third party packages
source ~/imcoders_ws/third-party/RTIMULib2/RTHost/build/devel/setup.bash
-
Launch node for sensors
roslaunch imcoders_reader imcoders_all_timed.launch
-
Launch visualization
roslaunch imcoders_rviz_launchers view_imcoders_boxes.launch
Example video:
If you are missing dependencies for any package in this repo, source the workspace and install the missing dependencies for the packages not building:
source ~/imcoders_ws/devel/setup.bash
rosdep install <package_name>
Example:
rosdep install imcoders_control