Implement ROS on a custom Robot: what steps?
Hi everybody. The robotics lab at my university has designed a custom platform some years ago, and has been using it for many experiments ever since. Now the time has come to make it more accessible and easily interface-able, so the idea was to try ROS.
Now given the fact that it's completely custom, I have to develop (almost) all the drivers and nodes.
My question arises from the fact that it's totally obscure to me what is necessary and what is not necessary in the ROS environment. Theoretically I could make a custom node with custom messages, but that would make the node almost unusable.
So I have been reading about the robot_state_publisher and urdf and tf. And the robot we are talking about is just a simple diff-drive 1 link bot (roomba style) so I guess both URDF and RSP are overkill, I think just publishing the TF should suffice but I'm not sure.
Also the real tf is not generated by the robot, rather by an external algorithm tracking the robot in the environment from video feeds; so I guess that in my case the TF should not even be published by the robot itself (which then becomes an "actuator" node) and rather by the algorithm that really knows the robot pose, right?
I know I'm confused, you don't have to tell me that :P I keep reading lots and lots of wiki pages and tutorials, but it is still quite unclear what are the "core" features any robot should have in ROS.