#motor-control #motor

no-std foc

An implementation of various Field Oriented Control algorithms

3 releases (breaking)

0.3.0 Jun 2, 2024
0.2.0 Jan 9, 2024
0.1.0 Jan 6, 2024

#95 in Robotics

21 downloads per month

MIT/Apache

49KB
301 lines

FOC

An implementation of Field Oriented Control algorithms in Rust, designed for use in embedded systems.

Goals

  • Modular and extendable implementation of FOC algorithms.
  • Exclusively use fixed-point math for all FOC calculations, using the fixed crate.
  • Support for microcontrollers across the entire embedded Rust ecosystem.
  • Support for microcontroller-specific accelerators (e.g. STM32G4/STM32H7 CORDIC peripheral for trig functions, STM32 FMAC peripheral for filters).
  • Generic over angle sensors, current sensors, and PWM drivers.
  • Straightforward to add custom algorithms.
  • No heap allocations anywhere.

Dependencies

~2.5MB
~45K SLoC