Remote Connection to a Virtual Lab PC

This approach can help you in case you do not have a device capable of running the ARO workspace (Singularity). We have prepared a virtual machine you can connect to using remote desktop. And it can run the whole ARO codebase.

This guide is obsolete. A new guide is in preparation and we want to offer experimental remote access for summer semester 2024. If you want to try it out, contact peckama2@fel.cvut.cz .

Start the remote desktop server

First of all, connect the faculty VPN.

Connect to the virtual computer using a jump host (flag -J) and your <username> :
ssh -YC -J <username>@turtle.felk.cvut.cz <username>@192.168.65.65

Next, you need to figure out a unique set of ports. The following algorithm is expected to find one based on your CTU ID:

<pre> i=$(echo -n 2; id -u | tail -c 5); vnc_port=$(echo $i + 5900 | bc); ros_port=$(echo $i + 11311 | bc); export ROS_MASTER_URI=http://localhost:${ros_port}; echo “Connect to VNC server 192.168.65.65:${vnc_port} or 192.168.65.65:${i}” </pre>

Then, start the remote desktop server:

<pre> /opt/TurboVNC/bin/vncserver -log /dev/stdout -geometry 1920×1080 -fg -xstartup xfce4-session :${i} </pre>

When you launch it for the first time, it will want you to set a password. Call /opt/TurboVNC/bin/vncpasswd to do that.

Remote Desktop

Once you have the server running, you can use any VNC remote desktop client (TurboVNC, Remmina, TightVNC, TigerVNC) to connect to it.

Set the destination IP address to 192.168.65.65 and one of the two ports printed by the previous script. You also have to set up a jump host over turtle.felk.cvut.cz with your SSH login details.

Robot Operating System (ROS)

At labs (e.g., E130, E132), Robot Operating System (ROS) is available through Singularity containers.

Open terminal and run singularity image with Ubuntu 20.04 + ROS Noetic:
singularity shell --nv /opt/singularity/robolab/noetic
(--nv is needed for graphical output, e.g. RViz)
Then source common ARO catkin workspace:
source /opt/ros/aro/setup.bash

If you encounter strange behaviour in ros/rviz/gazebo it might be caused by somebody else is publishing on same topics.
You have to change roscore port and gazebo server port in such case.

export GAZEBO_MASTER_URI="http://localhost:54321"
export ROS_MASTER_URI="http://localhost:12345"
roslaunch -p 12345 aro_sim onlysim.launch
You can list all occupied ports by
netstat -ntl or a specific port by netstat -ntl|grep 12345

More Information

In case of technical difficulties with connecting you can drop an email to himmebed@fel.cvut.cz but describe in detail what are you trying to do and what is the result. Messages It doesn't work, help! will be ignored. Any constructive feedback is welcome.

For more details, see

courses/aro/tutorials/remote_access.txt · Last modified: 2024/04/12 19:18 by peckama2