Motor Inverter

  • Controller
    Controller
  • back view
    back view
  • front view
    front view
  • closed view
    closed view

The inverters task is to generate sine waves in a meaningful way, sample the users input (throttle etc.) and control some external components (main contactor, precharge etc.).

 

I have designed it based on an Olimex STM32-H103 processor board. The controller features:

  • 8 digital 12V inputs (on, start, brake, motor protection, forward, reverse, emergency stop, BMS HVC/LVC)
  • 3 analog 3.3V inputs (motor temp, throttle, throttle redundance)
  • 1 pulse encoder input and diode output for motor speed measurement
  • 4 digital open collector outputs (main contactor, error, under/over voltage, precharge)
  • 1 PWM output for temperature display
  • Integrated buck converter with an input voltage range of 7-26V
  • 3 complementary PWM signals 3.3V, 8mA for driving the inverter bridge
  • resistive bus voltage measurement
  • inductive phase current measurement for 2 phases
  • Heat sink temperature measurement
  • Serial TTL level communication for configuration and monitoring, best used with a ZigBee module
  • Hardware shutdown on: motor protection switch, emergency stop, over current (programmable trip limit)

 

Software

 

The software features:

  • Control of motor slip and flux according to throttle input
  • Regenerative Braking with multiple levels and modes
  • Cruise Control
  • Boost Mode Charger (using motor as boost inductor)
  • Text based protocol for configuration and monitoring
  • Various test modes for installation phase
  • Control of precharge and main contactor
  • Bootloader for updating the firmware without special cables