This repository contains Manim animations for visualizing control systems concepts. The animations are created using the Manim Community Edition.
step_response_scene.py- Visualizes the step response of a second-order systemsysmat.py- System matrix visualization and step response analysissuperpos1.py&superpos2.py- Superposition principle demonstrationsscene1.py- Control system introduction scenehomo1.py&homo2.py- Homogeneous response animationspzmap.py- Pole-zero map visualizationstepres.py- Step response characteristicstwo_x_equation.py- Mathematical equation animationspi_demo.py- PI controller demonstrationcontent.py- Content organization and scene management
- Step response characteristics:
- Rise time (tr)
- Peak time (tp)
- Settling time (ts)
- Percent overshoot (PO)
- Settling bounds (±2%)
- System visualization:
- Transfer functions
- State-space representations
- Pole-zero maps
- Control concepts:
- Superposition principle
- Homogeneous response
- PI control
- Mathematical foundations
- Python 3.7+
- Manim Community Edition
- Control Systems Library
- NumPy
- Clone the repository:
git clone https://github.com/Hmustf/manim4control.git- Install dependencies:
pip install -r requirements.txtTo render an animation:
manim -pqh <script_name>.py <scene_name>Example:
manim -pqh step_response_scene.py StepResponseSceneOptions:
-p: Preview the animation after rendering-q: Medium quality-h: 1080p resolution
manim4control/
├── step_response_scene.py # Step response visualization
├── sysmat.py # System matrix analysis
├── superpos1.py # Superposition demo part 1
├── superpos2.py # Superposition demo part 2
├── scene1.py # Introduction scene
├── homo1.py # Homogeneous response part 1
├── homo2.py # Homogeneous response part 2
├── pzmap.py # Pole-zero mapping
├── stepres.py # Step response analysis
├── two_x_equation.py # Equation animations
├── pi_demo.py # PI controller demo
└── content.py # Content management
MIT License