microDRIVE LP/LPi Docs

Application Guide

Details on application-specific behaviours of the motor controller. This guide addresses general areas of motor controller operation, highlighting details and best practices.

Motor Control

Motor controller-related guides. These areas' relevance depends on the application, specifically focusing on the motor control subsystem.

Regenerative Power

Regenerative power (Active Freewheeling "AFW" or Synchronous Rectification) within a motor controller allows for increased transient response and higher efficiencies when enabled and utilised in a system. It works by diverting energy back to the power source during motor speed reduction events (reducing the target duty cycle, for example). This allows a faster braking force of the motor and load, increasing the transient response speeds of the system. It also allows the full system to operate more efficiently because the energy is diverted back to the power source, rather than the ESC and motor dissipating this braking energy.

AFW should be disabled when the power source cannot handle regenerative power (e.g. tethers, benchtop power supplies). If enabled in these scenarios, there may be unexpected operation or damage caused to the motor controller and system.

Ramp-Up and Down Rates

Each time the motor controller receives a change in input command (either above the current setpoint or below), a slew rate is applied to the response. This prevents the motor controller from creating transient conditions where it can no longer track and control the motor. In most applications, particularly with multiple units as part of the system, this setting should be left default at the motor controller and modified at the central control point (such as a flight controller).

Propeller Parking

The motor controller can be configured to achieve a specific 'park' position when commanded by leveraging an external hall effect sensor and a magnet embedded within the motor's rotor. The position is actively held once located. This functionality serves as a valuable asset within VTOL systems, optimising the positioning of vertical lift rotors for aerodynamic efficiency during flight phases where they are inactive.

The unit can be configured to park at any angle after detection of the sensor, and the unit will begin parking at any zero-throttle command. To setup prop parking, connect a hall sensor to the motor sensor pin, then enable prop parking through the settings.

Motor pole pair count must be set for propeller parking to work correctly.

Further settings can be found below:

RPM Mode

RPM Mode (Speed Control or Governor Mode) allows the motor controller to maintain a speed within a specified range. This is useful for applications where a constant speed is desired from the motor regardless of the load applied.

When in this mode, input throttle signals are linearly mapped between the minimum and maximum RPM settings. 1% throttle will be close to the minimum RPM, 50% throttle will be half way between minimum and maximum RPM, and 100% throttle will be the maximum RPM.

To target a specific RPM, the minimum and maximum RPMs can be set to the same value, thereby making the entire throttle range be one target RPM.

Document image


To avoid damaging the drive train, soft start is enabled by default. The motor controller will ramp to the target RPM over the specified amount of time configured in settings.

Motor pole pair count must be set correctly for RPM Mode to be accurate.

Basic RPM Mode Setup:

  1. Set Drive Mode to RPM
  2. Set Motor Pole Pairs to the connected motor's number of pole pairs
  3. Set RPM Mode Minimum to the minimum target RPM
  4. Set RPM Mode Maximum to the maximum target RPM (can be equal to minimum)
  5. (Optional) Modify Soft Start Ramp Time to desired spin up speed

Futher settings can be found below:



Protection Systems

Key protection features of the microDRIVE units and the configurable behaviours.

Temperature

The motor controllers measure temperature from multiple sources to gain full system insight and avoid reliance on single sensor readings. Temperature measurement occurs at the following locations:

  • Bridge temperature: The reading occurs at the power electronics (MOSFETs), the primary heat source within a motor controller.
  • MCU temperature: A reading is taken at the central processor, which is located away from the bridge, to offer insight into heat transfer through the controller and as a secondary measurement.
  • Motor temperature: Optionally attached depending on the system, a PTC or NTC reading can be configured to read and affect the system operation. This allows for motor-based temperature protection.

The motor controllers include protective behaviours triggered by the internal temperatures or from the motor temperature independently, depending on the system requirements. The behaviour response can be configured to the following options, triggering when the relevant temperature limit is reached. Once the temperature returns below the temperature limit, normal operation will resume.

Power Step Response

The Power Step setting enables a step response of the maximum output duty cycle when the temperature limit is reached. The rate at which the duty cycle is reduced is governed by the ramp-down response rate. The amount of reduction the output duty cycle will undergo is dictated by the "Duty Ramp Limit" configuration parameter.

Power Ramp Response

The Power Ramp setting enables dynamic control of the maximum throttle in response to the bridge temperature. This involves the establishment of two distinct temperature setpoints. The initiation of the ramp limitation occurs at the "Temperature Limit" temperature setpoint. As the temperature rises, there is a proportional reduction in the maximum output duty cycle until the "Ramp End Temperature" setpoint is reached. To ensure a controlled reduction, the decrease in output duty cycle is constrained by the "Over Temperature Ramp Floor" configuration parameter.

The Ramp End Temperature must be higher than the Temperature Limit setting for the Power Ramp Response to operate correctly.

Ramp temperature limit settings.
Ramp temperature limit settings.


Limit Response (Motor Temperature Specific)

The limit response to over temperature is only utilised within the motor temperature protection, specifically by the "Motor Temperature Response" parameter. If enabled, the unit will lower the maximum output duty cycle to the motor such that the motor temperature remains under the limit set by the "Motor Temperature Limit" configuration parameter.

None

None response disables the standard temperature protection mechanisms on the unit. The absolute limits are maintained.

The motor controller will shut down if the bridge reaches 135 degrees C, regardless of configuration.



Voltage

The units have a bus over and under voltage protection feature. The over-voltage function protects the unit against voltage spikes above the set limit that can cause component failures. The undervoltage protection function ensures that the unit doesn't run at low voltage ranges, wherein motor control cannot be guaranteed and may result in unexpected motor halts. The limits for the two endpoints are adjustable independently. Upon breaching the configured limit, a response is triggered according to the configuration.

Hard Shutdown Response

The hard shutdown response configures the unit to turn off the drive when the limit is reached. A zero-throttle signal is required on the input to continue driving after the event clears. This behaviour can be overridden with the "Require Zero Throttle Check" setting.

Limit Duty Cycle Output Response

The limit duty cycle output response will slowly reduce the duty cycle output to the motor while the limit is breached. This may result in a zero-duty cycle being applied, should the over or under-voltage event last long enough. The normal duty cycle will be returned once the event clears.

Disabled

Disabling the limit removes the configurable protection. The units will still shut down when their absolute limits are reached, which can be found on the datasheet.

Current

The units have two current limiting points, occurring on the bus (input) and the phase (output). Both are monitored and controlled separately to ensure the system operates as expected. As the ESCs are inverters, the two currents are typically different, and the phase current is greater than the bus current in all cases.

The current limiting works by reducing the output duty cycle (therefore, the power applied to the motor) such that the measurement remains within limits. The drive will act on the first limit reached, whether bus or phase current.

The units support a regenerative braking function to support high-speed deceleration of the motor and load. It works by diverting energy back to the power source during motor speed reduction events (reducing the target duty cycle, for example). This allows a faster braking force of the motor and load, increasing the transient response speeds of the system. Depending on the load's size and the deceleration speed, a current limit is enforced to protect the unit during these events. A lower regenerative current limit results in slower deceleration.

Further settings can be found below:

Communications

Communication features of the microDRIVE units and the key points of configuration.

CAN Bus

The microDRIVE units support CAN Bus, specifically the DroneCAN protocol. Connection over DroneCAN allows for motor drive, telemetry, configuration and firmware updates.

More information about the DroneCAN protocol can be found at DroneCAN Docs.



Termination

Each microDRIVE unit supports a software configurable termination which, when enabled, connects an onboard 120 Ohm resistor to the bus. Terminating the CAN properly ensures signal integrity during operation. It is recommended that each end of the CAN network be terminated.

Forcing Node ID

The units support Dynamic Node Allocation (DNA) within the DroneCAN ecosystem, allowing quick connection to an existing network. The downside is that on any given power-up event, the unit may change the Node ID it is assigned while on the network. This makes it difficult to review data and may even result in units not connecting if DNA is not operating. If all devices are known on the network, a preferred Node ID is recommended to be set, and that Node ID is forced. This ensures a given unit will connect using only the given ID. However, duplication of IDs should be avoided.

Serial Protocols

Alongside CAN Bus, the units support standard signalling protocols seen on UAV systems. When CAN Bus is disabled, the unit automatically detects the serial protocol on the relevant lines.

DShot

DShot is a digital control signal comprised of a frame containing the throttle signal, telemetry request and a checksum for data validity. It is recommended for applications not requiring CAN Bus. More information can be found here.



Example of DShot 600 data frame.
Example of DShot 600 data frame.


PWM

The PWM control signal is a servo pulse that transmits the throttle command over an analogue signal. It is very simple and is therefore supported on a wide variety of hardware. However, it is susceptible to noise due to a lack of error-checking features and has no native telemetry function.



Example of PWM pulse.
Example of PWM pulse.


Further settings can be found below: