Close
0%
0%

Custom 3-Phase FOC ESC

DiY, configurable, (relatively) low cost FOC ESC for PMSM and BLDC motors.

Similar projects worth following
I actually started this project a few weeks ago, but saw the digikey contest and decided to publish it here.

OVERVIEW:
The purpose of this project is to develop a configurable, low-cost Field Oriented Control motor controller for PMSM and BLDC motors in the voltage range of 60V (12S lithium ion) and 100V (20S lithium ion).

FEATURES:
Field Oriented Control of a 3-Phase Synchronous Motor
Configuration over PC or mobile application
On-the-fly Parameter Detection
Settings saved in non-volatile memory
Configurable input mode (PPM, twist throttle, etc.)
Configurable control mode (Torque, Speed, with and without reverse and brakes)
Configurable Current, Voltage, and Duty Cycle limits
Overmodulation
CAN bus for communication between multiple units
Telemetry data over USB or other serial interfaces such as UART or I2C
Up to 100V
Continuous 100A Phase current capability
Signal Injection (no sensors)
34 kHz PWM

OVERVIEW:

The purpose of this project is to develop a configurable, low-cost Field Oriented Control motor controller for PMSM and BLDC motors in the voltage range of 60V (12S lithium ion) and 100V (20S lithium ion), with the potential to scale the voltage up to 600V with minor hardware changes.

FEATURES:

  • Field Oriented Control of a 3-Phase Synchronous Motor.
  • Configuration over PC or mobile application
  • On-the-fly Parameter Detection
  • Settings saved in non-volatile memory
  • Configurable input mode (PPM, twist throttle, etc.)
  • Configurable control mode (Torque, Speed, with and without reverse and brakes)
  • Configurable Current, Voltage, and Duty Cycle limits
  • Overmodulation
  • CAN bus for communication between multiple units.
  • Telemetry data over USB or other serial interfaces such as UART or I2C.
  • 60V and 100V versions
  • Continuous 100A Phase current capability.
  • 34 kHz PWM.
  • Signal Injection for position resolution at zero speed to obviate the need for sensors.

HARDWARE SPECIFICATIONS:

  • STM32G473 MCU. Final version will use the STM32G473VE. Cortex M4 running at 170MHz.
  • L6498 gate driver, up to 2A source and sink, tolerant to negative switch transients.
  • LM5164 buck converter for gate drive rail at 15V or 12V. 1A output capability.
  • AP63205 buck converter for logic supply at 5V. 2A output capability
  • Capacitance multiplier and ADM7160 LDO for precision 3.3V rail for analog and MCU
  • INA240A1 current sense amplifier and four terminal shunts configured for lowside sensing.
  • TPW1R306PL(60V) and TPW3R70APL(100V) MOSFETs for power stage.
  • FM24CL16B FRAM chip for non-volatile memory storage.
  • Hall sensor and encoder interface
  • USB interface
  • Filtered phase voltage dividers for high frequency voltage sampling schemes.

  • Summary of Work so far

    Kai Yin05/18/2020 at 03:04 0 comments

    So, I've already completed quite a bit of this project before putting this on hackaday, so far I have accomplished the following:

    • Parameter Detection: Resistance, Inductance, and Flux Linkage.
    • Open Loop FOC
    • Sensorless Closed Loop FOC with torque control.
    • Basic PPM Input
    • Simple State Machine
    • Latched faults on overvoltage and overcurrent.
    • Storage of configuration data in FRAM that persists between power cycles
    • Smooth Windmill Restart
    • Basic telemetry data logging over USB.
    • Basic task scheduling

    Todo List:

    • Robust fault detection and recovery with certain latched faults
    • PC application
    • Uniform and easy to use USB and UART packet scheme.
    • Configuration settings
    • Sensors, Temperature, Hall and Encoder
    • Look at HFI because customers
    • Code comments and cleanup
    • Dyno and field testing
    • Figure out what to do when the zero vector insertion at timer underflow is too narrow for amplifier outputs to settle.

    I will attach log posts detailing each major milestone/accomplishment.

View project log

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates