[Solved] ROSbot frames connection (no docker)

Hello,

To understand basic connections of ROSbot2R, I am now trying to learn ros connection of ROSbot locally.
The low level firmware is connected to Pi4 by rosserial and rosbot_ekf is used for full topic connection of ROSbot2R.
For getting full frames transformation, do i need to write transformation for robot state publisher myself or where can i get the data connection of range sensors?

Best regards
gcold

Hi @goldcold,
The transformations are published via robot_state_publisher which gets the robot description in the
rosbot_ros repository.

If you don’t want to use docker you can just follow the instructions in the README.md rosbot_ros repository. Remember to choose the branch according your installed version of Husarion OS.

Regards to the distance sensors when you run rosserial you should see the topics. Look here.

/range/fl
/range/fr
/range/rl
/range/rr

Please inform me if it works for you and feel free to reach out if you need any further assistance.
Best regards,
JD

`

Following up on this, are there instructions for bringing up the sensors (lidar, astra) without a docker?
A script for doing this could be created based upon the Dockerfile files for husarion/astra and husarion/rplidar, but is there something already available?

Thanks!
Jonathan

hello @Jonathan_Naor

I think you can get ROS API for lidar and astra from this in external documentation.

best regards
gcold

Hello @JakubDelicat

Thank you for your response.
Yes, i can get the topic data for distance sensors by rosserial.
But could not view these data in rviz because of not having frame transformation of range.
Although I published state transformation for rangefl/fr/rl/rr with base_frame, could not get connection.
Is rosbot_ros repository necessary for ROSbot2R, not simulation?

Best Regards
goldcold

@goldcold
Sorry for long delay.
Of course the rosbot_ros is necessary. There is the ROSbot’s description which publishes the transformations. Please look at this. This launches the rosserial and the descritpion.

Please inform me if it works for you and feel free to reach out if you need any further assistance.
Best regards,
JD

@JakubDelicat Thanks for your support.
Now, I get full transformations of ROSbot.


As a confusion which I want to confirm, what is different between rosserial from rosbot_ekf and rosbot_description. Really sorry for continous questions.

Best Regards
gcold

The rosserial is the tool for communication between embedded systems and SBCs via USB with ROS 1 topics. This tool is launched with serial_bridge.py in rosbot_description package which also contains the ROSbot description (urdfs used with robot_state_publisher). The rosbot_ekf package launches the robot_localization which calculates the estimation of position and velocity by a sensor fusion between ROSbot odometry calculated from wheels and the IMU’s orientation.

You can read more here.

Feel free to reach out if you need any further assistance.
Best regards,
JD

Thank you so much for your explanation.