Project
# | Title | Team Members | TA | Documents | Sponsor |
---|---|---|---|---|---|
25 | WobbleBot - Dynamic balancing robot on sphere |
Marc Backas Mingrui Zhou Phillip Lovetere |
David Null | design_document1.pdf design_document2.pdf design_document3.pdf final_paper1.pdf other1.ipynb presentation1.pptx proposal1.pdf |
|
# BALLBOT ## PROBLEM A problem in control systems is getting a robot to balance on top of a ball, and to do this quickly and robustly. ![](https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/BallIP_2008.jpg/220px-BallIP_2008.jpg) The robot will look something like the one above ## SOLUTION The robot will need three omnidirectional wheels attached to three motors, to move over the surface of the ball with three degrees of freedom. To remain stable, a digital, closed loop control system will be implemented on a microcontroller to control the torques output by its motors. To compute these torques, the robot will need to predict its dynamic behavior using data gathered about itself and its environment. An IMU will be used to measure the robot's linear and angular accelerations, and orientation. Motor encoders will be used to measure the robot's speed and position with respect to the ball. Fusing these data with a digital controller, the robot will be able to accurately predict its dynamics, and apply the necessary control signals to its motors to maintain stability. If for some reason we are unable to make this robot in the time allotted, we will instead make a similar robot capable of balancing on a cylinder. We already have a simulation for the 2d robot, and have implemented a stable controller for it. ## SOLUTION COMPONENTS ### CHASIS SUBSYSTEM - Main body - Motor mounts - Ball ### SENSOR SUBSYSTEM - IMU: Bosch BNO055 absolute orientation sensor - Motor encoders to sense motor shaft position, velocity. Either optical or magnetic quadrature ### PROCESSOR SUBSYSTEM - Microcontroller: consider RTOS capability, memory requirements, built-in peripherals, i/o latency, library compatibility. ### MOTOR SYSTEM - Need torque control (velocity if stepper) - Motor: Brushed DC, stepper motor, BLDC motor - Motor driver: current controller (DRV from TI), ODRIVE (for BLDC) - Omnidirectional Wheels ### POWER SUBSYSTEM - Power supply: Bench power supply or battery - Linear Regulator - Battery management system - DC-DC converter ## CRITERION FOR SUCCESS - Our robot can stay on top of the ball stably - Our robot will be able to compensate for a disturbance (i.e. a push) - The robot will be able to recover from an initial state within a certain angle from the setpoint - The robot will be able to balance on a variety of surfaces |