gym-electric-motor  by upb-lea

OpenAI Gym environment for electric motor simulation and control

created 5 years ago
363 stars

Top 78.5% on sourcepulse

GitHubView on GitHub
Project Summary

Gym-Electric-Motor (GEM) provides a Python toolbox for simulating and controlling various electric motors, targeting engineers and researchers in classical control and reinforcement learning. It enables the construction of drive trains with standard components and offers a rich interface for integrating control algorithms, from PI controllers to deep reinforcement learning agents, facilitating rapid prototyping and experimentation.

How It Works

GEM models electric drive trains using modular building blocks: voltage supply, converter, electric motor, and load models. It supports both continuous control set (duty cycle) and finite control set (switching commands) converters. The environment provides a Gymnasium (formerly OpenAI Gym) interface, allowing seamless integration with RL algorithms and classical control methods for closed-loop simulation and control strategy development.

Quick Start & Requirements

  • Install via pip: pip install gym-electric-motor
  • Official quickstart notebooks: Google Colaboratory
  • Example scripts and documentation are available.

Highlighted Details

  • Supports multiple AC motor types: PMSM, SynRM, EESM, SCIM, DFIM.
  • Includes an automated framework for PI controller design.
  • Offers interactive notebooks for easy experimentation and learning.
  • Provides a robust interface for integrating RL agents like DDPG and DQN.

Maintenance & Community

  • Active development with multiple academic contributors.
  • Citations available for general toolbox, RL utilization, and control approaches.
  • Unit tests are provided via pytest.

Licensing & Compatibility

  • Licensed under the MIT License, permitting commercial use and integration with closed-source projects.

Limitations & Caveats

  • The package is primarily focused on simulation; real-world hardware integration is not directly addressed.
  • While extensive, the range of supported motor models and converter topologies may not cover all specialized applications.
Health Check
Last commit

4 days ago

Responsiveness

1 week

Pull Requests (30d)
1
Issues (30d)
1
Star History
26 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.