Robobot software description
Line 5: | Line 5: | ||
=== C++ main structure === | === C++ main structure === | ||
− | + | <!-- [[File:c++main.png | 220px]] --> | |
[[C++ main entry point]] | [[C++ main entry point]] | ||
Line 11: | Line 11: | ||
=== Compile and CMake === | === Compile and CMake === | ||
− | [[Robobot compile]] | + | <!-- [[Robobot compile]] --> |
== Functional description == | == Functional description == | ||
Line 17: | Line 17: | ||
=== Software class - and example === | === Software class - and example === | ||
− | [[File:class-def20.png | 200px]] | + | <!-- [[File:class-def20.png | 200px]] --> |
This page also has an explained behaviour plan example (bplan20). | This page also has an explained behaviour plan example (bplan20). | ||
Line 25: | Line 25: | ||
=== Low-level robot control === | === Low-level robot control === | ||
− | [[File:robobot_level_1.png | 300px]] | + | <!-- [[File:robobot_level_1.png | 300px]] --> |
Revision as of 08:52, 23 January 2024
Back to Robobot
Contents |
C++ development
C++ main structure
Compile and CMake
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
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.
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.