Getting Total Size of Robot

asked 2020-07-04 02:57:51 -0500

grejj gravatar image

So we currently have an avatar application that reads in the current URDF file (joint configuration, visual, collisions, dae's, etc...) and the current joint positions and then outputs an "avatar" of the robot in the GUI. The avatar in the GUI basically mimics the motion of the actual robot and allows the operator to view the robot and its current position of its joints when the actual robot is not in sight.

However, depending on the current robot position, sometimes the robot extends out of the viewing area of the avatar in the GUI (for example, when robot arm extends considerably out of screen). The operator can manually zoom in and out, but we would like to remove this manual process. We would ideally like to have the avatar viewing pane zoom in and out as the robot moves, to keep the entire robot in the viewing area of the avatar in the GUI.

Are there any ROS libraries/packages that could be useful for this? I am thinking right now only of TF to somehow get the current length, width, and height of the robot depending on its current joint positions and configuration. It is usually the end effector on the robot that moves off screen, so maybe using TF to get end effector position and sending those values to the GUI avatar application?

We are running ROS Melodic on Ubuntu 18.

edit retag flag offensive close merge delete


We would ideally like to have the avatar viewing pane zoom in and out as the robot moves

just an observation (ie: not an answer to your actual question): depending on how you implement this, I would find this extremely annoying.

Your description reminds me of the "smart" 3rd person cameras sometimes employed by game engines (typically on consoles), which try to keep the player + the part of the world ahead of the player in the viewport. In most cases this results in a constantly shifting perspective.

With games, this is an annoyance. With an actual application for an engineer I would get frustrated.

I'm aware this is subjective and dependent on how you actually implement this (fi: frequency of adjustments, types of adjustments, etc).

gvdhoorn gravatar image gvdhoorn  ( 2020-07-04 04:41:29 -0500 )edit