https://github.com/azimonti/inverted-pendulum
Control feedback with linearization and neural network for an inverted pendulum (single and on a cart)
https://github.com/azimonti/inverted-pendulum
feedback-controller feedback-loop inverted-pendulum neural-networks pendulum pendulum-simulation
Last synced: 19 days ago
JSON representation
Control feedback with linearization and neural network for an inverted pendulum (single and on a cart)
- Host: GitHub
- URL: https://github.com/azimonti/inverted-pendulum
- Owner: azimonti
- License: mit
- Created: 2024-09-18T00:42:04.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2025-03-22T03:09:05.000Z (about 2 months ago)
- Last Synced: 2025-03-30T19:23:02.521Z (about 2 months ago)
- Topics: feedback-controller, feedback-loop, inverted-pendulum, neural-networks, pendulum, pendulum-simulation
- Language: C++
- Homepage:
- Size: 165 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Inverted pendulum
Control feedback with linearization and neural network for an inverted pendulum (single and on a cart)
## Required Tools
- Git
- CMake
- clang
- curl
- Fortran
- HDF5
- OpenGL
- GLEW
- GLFW
- Dear ImGui
- implot## Getting Started
To get started with the control feedback:
1. Clone the repository:
```
git clone https://github.com/azimonti/inverted-pendulum
```
2. Navigate to the repository directory:
```
cd inverted-pendulum
```
3. Initialize and update the submodules:
```
git submodule update --init --recursive
```Further update of the submodule can be done with the command:
```
git submodule update --remote
```4. Compile the libraries in `ma-libs`
```
cd externals/ma-libs
# optional steps if dependencies are not installed globally
# ./manage_dependency_libraries.sh -d
# ./manage_dependency_libraries.sh -b
./cbuild.sh --build-type Debug --cmake-params "-DCPP_LIBNN=ON -DCPP_LIBGRAPHIC_ENGINE=ON"
./cbuild.sh --build-type Release --cmake-params "-DCPP_LIBNN=ON -DCPP_LIBGRAPHIC_ENGINE=ON"
cd ../..
```If any error or missing dependencies please look at the instructions [here](https://github.com/azimonti/ma-libs)
5. Compile the binaries
```
./cbuild.sh -t Release (or -t Debug)
```6. Run the programs
```
./build/Release/pendulum_cart
./build/Release/pendulum
```## Screenshot 2 dimensional


## Screenshot 3 dimensional


## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contact
If you have any questions or want to get in touch regarding the project, please open an issue or contact the repository maintainers directly through GitHub.