The DC Motor Training Station is a separate repository from Neuro-Fuzzy Control. Its Python application connects a Tkinter interface to a central controller, hardware access, an Adaptive Neuro-Fuzzy Inference System (ANFIS) controller and a data logger.
One station, several views.
The interface provides manual and ANFIS mode controls, a target-speed slider and start, stop and emergency-stop actions. Matplotlib plots sit alongside the controls to show speed, current and the requested setpoint.
This arrangement brings the operator's input and the resulting measurements into the same workspace. The interface source is in gui_app.py.
Follow the control path.
MainController initializes the hardware controller, ANFIS controller and logger. It runs the control loop on a background thread and selects the control behavior from the active mode.
| Module | Responsibility |
|---|---|
gui_app.py | Operator interface and plotted measurements |
main_controller.py | Control loop and subsystem coordination |
hardware_controller.py | GPIO access and simulation mode |
anfis_controller.py | Neuro-fuzzy controller implementation |
data_logger.py | Session logging and data handling |
Where simulation begins.
The GUI constructs MainController(simulation_mode=True). The hardware controller also forces simulation when the Raspberry Pi GPIO library is unavailable. Opening the desktop app therefore does not, by itself, demonstrate a physical motor run.
The project includes a hardware path, but this walkthrough describes the checked source. It does not report newly measured motor performance or treat stored session files as verified hardware experiments.
Keep the session record.
The repository includes CSV session files under data/training_data, alongside configuration files for the controller and hardware. These files provide a concrete place to inspect the recorded data structure and continue investigating the training workflow.
Source snapshot: 49fe45b5d62b. This station and the separate Neuro-Fuzzy Control platform have their own project entries.