BLDC and PMSM Motor Simulation
  • C++ 88.9%
  • Starlark 9.4%
  • C 1.7%
Find a file
2020-09-23 12:43:46 -04:00
board Adding PWM quantization 2020-08-15 14:07:38 -04:00
config More refactoring 2020-08-14 14:29:07 -04:00
controls Refactoring, fixing build errors 2020-09-23 12:42:53 -04:00
examples Checkpointing 2020-07-29 20:24:39 -07:00
experiments Fixing feed-forward 2020-08-11 18:34:55 -04:00
global_debug Fixing global_debug library 2020-08-07 22:48:36 -04:00
simulator Refactoring, fixing build errors 2020-09-23 12:42:53 -04:00
third_party Upgrading ImGUI and adding ImPlot 2020-07-29 20:45:18 -07:00
util Refactoring, fixing build errors 2020-09-23 12:42:53 -04:00
wrappers Checkpointing 2020-07-29 20:24:39 -07:00
.clang-format Checkpointing 2020-07-29 20:24:39 -07:00
.gitignore Checkpointing 2020-07-29 20:24:39 -07:00
LICENSE Create LICENSE 2020-08-14 17:48:38 -04:00
README.md Update README.md 2020-08-15 17:33:36 -04:00
screenshot.PNG More realistic motor resistance (?) and screenshot 2020-08-14 17:38:26 -04:00
WORKSPACE Checkpointing 2020-07-29 20:24:39 -07:00

BLDC and PMSM simulator

This interactive simulator is designed to visualize the inner workings of BLDC and PMSM control algorithms and provide a test bed for prototyping of more advanced control algorithms. Parameters like rotor inertia, bus voltage, PWM timer frequency, and many more can be adjusted in real time to see their effects on the control policy.

image

Starting Up

Precompiled binaries: On 64 bit Windows, download the precompiled binaries zip. After extracting, run simulator.exe.

Compiling from source: Install the bazel build system and clone this project. Run bazel run -c opt simulator:simulator

Quick Start to FOC Simulation

Step 1. In the Commutation Control Mode tab, enable FOC. step1

Step 2. Then set a desired torque. step2

Step 3. Adjust the step multiplier to change the speed of simulation. step3

Now the rotor should start spinning up. rotor_viz