Robobot software description

From Rsewiki

Back to Robobot

C++ development

C++ main structure

C++ main entry point

Compile and CMake

Robobot compile

Functional description

Software class - and example

This page also has an explained behaviour plan example (bplan20).

C++ building blocks overview.

Low-level robot control


Robobot level 1 with interface to hardware and pose generation.

Line sensor

Line sensor

Robot.ini configuration file

[pose]
gear = 19.0
wheeldiameter = 0.146
enctickperrev = 64
wheelbase = 0.243
log = true
print = false

See Raubase configuration file for explanation.

Make a new behaviour plan

The easy way to make a new behaviour plan module is to copy an existing plan and rename a number of elements.

See Robobot_new_behaviour_plan.

Sensor calibration

See Robobot sensor calibration.

For the line sensor Line sensor.

Camera calibration.

Video streamer

A video streamer is installed called 'motion'.

run motion

To run the streamer, SSH to the robot and start motion

$ motion
[0:motion] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motion/motion.conf
[0:motion] [NTC] [ALL] motion_startup: Logging to file (/home/local/.motion/motion.log)

NB! Remember to stop the streamer before trying to use the camera for other purposes.

Stop by ctrl-C

View the stream

To view the result, use a browser to open the address of the robot and port 8081, e.g. if the robot has IP '192.168.1.151':

192.168.2.151:8081

You should now see a stream of default 640x480 at 10 FPS as default; more options are available in /etc/motion/motion.conf.

The stream has a significant delay, and the framerate may be lower if the network is slow.