Skip to main content

motulator: Motor Drive and Grid Converter Simulator in Python

DOI Build Status License PyPI version shields.io All Contributors

Introduction

This open-source software includes simulation models and controllers for electric machine drives and grid converter systems. The machine models include an induction machine, a synchronous reluctance machine, and a permanent-magnet synchronous machine. Various subsystem models are provided for modeling grid converter systems, such as an LCL filter connected to an inductive-resistive grid.

The system models are simulated in the continuous-time domain while the control algorithms run in discrete time. The default solver is the explicit Runge-Kutta method of order 5(4) from scipy.integrate.solve_ivp. Various control algorithms are provided as examples. The documentation is available here:

https://aalto-electric-drives.github.io/motulator/

Installation

This software can be installed using pip:

pip install motulator

Alternatively, the repository can be cloned:

https://aalto-electric-drives.github.io/motulator/installation.html

Usage

The system models, controllers, reference sequences etc. are easy to configure. As a starting point, example scripts and Jupyter notebooks can be downloaded here:

https://aalto-electric-drives.github.io/motulator/drive_examples/index.html

https://aalto-electric-drives.github.io/motulator/grid_examples/index.html

New system models and controllers can be developed using the existing ones as templates.

Contributing

If you would like to help us develop motulator, see these guidelines first.

Contributors

Thanks go to these wonderful people:

Lauri Tiitinen
Lauri Tiitinen

💻 🤔 💡 🧑‍🏫
HannuHar
HannuHar

💻 🐛
Marko Hinkkanen
Marko Hinkkanen

💻 🤔 💡 🧑‍🏫
silundbe
silundbe

💻 💡
JoonaKukkonen
JoonaKukkonen

💻 🚇
jarno-k
jarno-k

🤔 👀 🧑‍🏫
angelicaiaderosa
angelicaiaderosa

💻 💡
Luca Peretti
Luca Peretti

🤔 📣
GianmarioPellegrinoPolito
GianmarioPellegrinoPolito

🔣
Simone Ferrari
Simone Ferrari

🔣
Jialed0303
Jialed0303

🤔
murgui
murgui

🐛
Nithin Valiyaveettil Sadanandan
Nithin Valiyaveettil Sadanandan

🐛
saarela
saarela

🐛
Ushnish
Ushnish

🐛
Francesco-Lelli
Francesco-Lelli

💻 💡 🤔
Mikko Sarén
Mikko Sarén

💻 💡 🤔
Juho Määttä
Juho Määttä

💻 💡 🤔
rayanmour
rayanmour

💻 💡 🤔 👀 🧑‍🏫
Cosimo Bassi
Cosimo Bassi

🚇
Junyi Li
Junyi Li

💻 💡 🤔

This project follows the all-contributors specification. Contributions of any kind welcome!

Acknowledgement

This project has been sponsored by ABB Oy and by the Research Council of Finland Centre of Excellence in High-Speed Electromechanical Energy Conversion Systems. The example control methods included in this repository are based on published algorithms (available in textbooks and scientific articles). They do not present any proprietary control software.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

motulator-0.7.5.tar.gz (58.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

motulator-0.7.5-py3-none-any.whl (124.5 kB view details)

Uploaded Python 3

File details

Details for the file motulator-0.7.5.tar.gz.

File metadata

  • Download URL: motulator-0.7.5.tar.gz
  • Upload date:
  • Size: 58.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for motulator-0.7.5.tar.gz
Algorithm Hash digest
SHA256 f476dafa6b22385d8e0462b5854f76f1a9b3f92a447909c97f22fb60b33007e3
MD5 ef4da54b7d14f39fef6a7f0b2f5fa7a0
BLAKE2b-256 d0920c6233aa83cc93ba11aec29819ab8a7e880344d592483c4cdec9b0a72177

See more details on using hashes here.

File details

Details for the file motulator-0.7.5-py3-none-any.whl.

File metadata

  • Download URL: motulator-0.7.5-py3-none-any.whl
  • Upload date:
  • Size: 124.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for motulator-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d69ff0531bd6175cca55c126288a507a4be9510d6e70837f5054decadf533933
MD5 f7b177c3054a285ceb3165e4f6eceea1
BLAKE2b-256 7a4af4e835f311fb95343e79c1933eba994d3effa26a4b223ea87c80aa572339

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page