In Segway
we implement a control system that stabilize the robot in its
vertical position, which corresponds to the unstable equilibrium state. The
hardware board used to develop the robot is a LEGO MINDSTORM EV3. We later
extend the model from in-place balancing to allow free movement in all
directions. We also developed EasyControl
an Android app with an intuitive
GUI to control the robot easily through a joystick-like controller.
For more information, read the report located in the repo root.
To get a local copy up and running follow these simple steps.
The robot need to have ev3dev
installed and to be set up as shown in the
report.
- Clone the repo
git clone https://gitlab.com/turboillegali/gutenberg
-
Cross-compile with
CMake
andDocker
the contents of thecpp
directory -
Copy and run the resulting binary on the robot
Here's a brief description of each directory in the repo root:
python
: contains both the Python implementations of the control modelcpp
: contains the C++ implementation of the extended control modelapp
: contains all the sources ofEasyControl
media
: contains app logo and video demos
Laboratory of Automatic Control © Course held by Professor Michele Basso - Computer Engineering Master Degree @University of Florence