This program implements a self-stabilizing system using a BNO055 sensor and three servos. The program uses a PID control algorithm to adjust the servo angles and keep the sensor upright
+----------+
| *| RST PITCH ROLL HEADING
ADR |* *| SCL
INT |* *| SDA ^ /->
PS1 |* *| GND | |
PS0 |* *| 3VO Y Z--> \-X
| *| VIN
+----------+
The BNO055 sensor is an integrated 9-axis motion sensor.
Current servos used only have 180 degrees of motion
Basic explanation of algorithm:
- Read orientation data from BNO055
- Calculate difference between desired orientation angles and current angles
- Adjust the servos based on the difference
- Repeat
This project is licensed under the GNU Affero General Public License v3.0 - see the LICENSE file for details.