Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sparshg/pid-balancer
Proportional-Integral-Derivative controller simulation to balance a ball on cart
https://github.com/sparshg/pid-balancer
Last synced: 3 months ago
JSON representation
Proportional-Integral-Derivative controller simulation to balance a ball on cart
- Host: GitHub
- URL: https://github.com/sparshg/pid-balancer
- Owner: sparshg
- License: mit
- Created: 2023-04-16T19:42:22.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-30T18:58:46.000Z (3 months ago)
- Last Synced: 2024-07-30T23:14:30.820Z (3 months ago)
- Language: Rust
- Homepage:
- Size: 2.19 MB
- Stars: 146
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-quads - PID Controller Simualation - a Proportional-Integral-Derivative controller simulation to balance a ball on cart. (Apps or visualizations / Apps or visualizations: On top of macroquad)
README
# PID Controller Simualation
A Proportional-Integral-Derivative controller to self balance a ball on a rolling cart. Use arrow keys to control the cart, and disturb the ball.## Try on Web
https://sparshg.github.io/pid-balancer/## Downloads for Desktop
Windows, Mac: https://github.com/sparshg/pid-balancer/releases
(Should work on Linux too, didn't compile)
## Implementation Details
Physics for the simulation is implemented according to [this paper](https://www.academia.edu/76867878/Swing_up_and_positioning_control_of_an_inverted_wheeled_cart_pendulum_system_with_chaotic_balancing_motions) (excluding the counter-balances and connecting rod)
I used Runge-Kutta method (4th order) to solve the system. System's energy will remain almost constant when controller is off and there is no drag.
Camera dynamics are implemented with the help of [this](https://www.youtube.com/watch?v=KPoeNZZ6H4s) video