This page contains a set of tutorials and guides for using the Additive Robotics Professional Robotics Learning System.
Quick Start Guide
To use the PRLS, you need access to:
- A computer (Ubuntu 16.04 recommended)
- A 3D printer (or our supplemental mechanical parts kit)
The easiest way to configure the necessary software on is to download and run this installation script. This can be done from the command line with
wget http://additiverobotics.com/ar_installer.sh && source ar_installer.sh
You can also manually set up a computer with a different OS by following the steps below.
- install system packages: build-essential git gcc-arm-none-eabi qemu-system-arm symlinks expect ycmd atom clang uncrustify
- install openocd from source
- download our embedded software repository
- add 99-openocd.rules from our repository to the system udev rules
- add self to group plugdev if necessary
- (optional) install atom packages: autocomplete-clang, atom-beautify, atom-linter
Building your first robot
The easiest way to get started with hardware is to 3D print our open-source hardware examples. The example hardware can be assembled to create a simple autonomous driving robot that uses all the parts in the kit. Pre-printed parts can also be purchased if a 3D printer is not available.
Along with the example hardware, we also provide templates for various hardware interfaces. These designs can be used as a starting point for custom robots, and are particularly useful for the hardware design component of a robotics course.
A guide to the PRLS hardware can be found here.
Writing your first program
Our software repository contains both a library tailored to the PRLS and example projects. To create a new project based on the template, go to the projects directory of the embedded repository and run
The script will generate a new directory “new_project_name,” with source / header files for the class “NewProjectName.” The project should compile as is (see instructions below), and should cause the status LEDs to flash at 1hz (on for half a second, off for half a second) when executed.
Building, loading, and running the program from the command line
To use your program, the code must first be compiled, then loaded on to the Module Core, and then started. Programs can be compiled, loaded, and debugged from the command line. To just compile the code, run
in the project directory. To compile and then load or debug the code, run
Note that both of these options will not automatically start the program. If the load command is used, the program can be started by pressing the reset button on the module core. If the debug command is used, a command-line debugger (GDB) will be launched, from which the program can be started. Common GDB commands can be found in this cheat sheet.
Building, loading, and running the program from Eclipse
Program loading / execution can also be done using Eclipse CDT along with the GNU ARM Eclipse plugin. Instructions for setting up the GNU ARM Eclipse plugin can be found here. Once configured, you should be able to import the program into eclipse as an existing C++ makefile program. You can then debug the program by adding a new OpenOCD debugging configuration, using “-f ../../common/scripts/board.cfg” for the config options.
You’re now ready to gain professional experience in a wide range of robotics topics. You may want to start by following the tutorials below, or by free-form experimentation.
Mechanical Design Tutorials