SRRC Wiki

Service Robotics Research Center
at Ulm University of Applied Sciences

User Tools

Site Tools


tutorials:accessdesktoptorobot:start

Access a real robot from your desktop computer

Prerequisite

Install SmartSoft World on the Desktop Computer.

NOTE: replace 'robotino' by your robots username, and '10.36.32.135' by your robots ip-address or hostname

Login without password

Install permanently a login key from the desktop computer to the robot. When asked for filename or password, just press enter key, so default file and empty password is used.

ssh-keygen
ssh-copy-id robotino@10.36.32.135

Login by Terminal

Simple ssh terminal which forwards graphical output from the robot to the desktop computer (X11-forwarding)

ssh -X robotino@10.36.32.135

Now you can enter commands from your computer to a terminal on the robot.

Remote access by VNC

Install a VNC viewer:

sudo apt update
sudo apt install xtightvncviewer

Make a ssh tunnel from Port 59135 of desktop computer to port 5901 of robot (once per reboot) and start VNC:

ssh -L 59135:localhost:5901 -C -N -f -l robotino 10.36.32.135
xtightvncviewer :59135

Now you can access the robot in the graphical window 'TightVNC'.

For a second robot with a different ip-adress, replace 59135 by another free port number, e.g.:

ssh -L 59226:localhost:5901 -C -N -f -l robotino 10.36.32.226
xtightvncviewer :59226

Deploy and Start a System on the Robot

Eclipse Smartsoft > Project Explorer > your System > model > *.target :

Edit and save the robots values after 'HostAdress' (e.g. “10.36.32.135”) and 'LoginAccount' (e.g. robotino).

Do the same for … > model > *.deployment and 'LoginAccount'.

Right click on the system name in the project explorer, select 'Run Code-Generation' to update the changes.

Now you can Start and Stop a System by Menu.

(Note: the SICK LMS100 needs 30 seconds to warm up, that is why the Robotino is not moving directly after start)

Manually Deploy and Debug a System

If a component is crashing, a debugger can give more information why it crashed.

After deploying the system, 'quit' the menu (instead of selecting 'Start' as usual). Connect to the robot by SSH or VNC. On the robot do:

cd /tmp/System*
mousepad start-*

Note: instead of 'ComponentABC', type the name of the crashing component

Search for

PATH; $SCRIPT_DIR/ComponentABC

and change it to

PATH; gdb --args $SCRIPT_DIR/ComponentABC

Manually start the system

bash start-* start

Now select the terminal with the crashing component, enter here in the debugger the command:

run

After it crashed, enter:

backtrace

Lets say the crashing function is from a library, then check if the same version is installed/linked on both desktop computer and robot.

Manually stop the system

bash start-* stop

Acknowledgments

Thomas Feldmeier.

tutorials/accessdesktoptorobot/start.txt · Last modified: 2022/08/02 14:56 by Christian Schlegel