User Manual

Table Of Contents
Sensorless Trapezoidal Commutation
Advanced Digital Motor Controller User Manual 121
Field Weakening
Field weakening is a technique that is used to achieve faster motor rotation speed. This
is done by having some Flux (Id) current, even though this also introduces some waste.
Field Weakening is therefore possible on Roboteq controller by loading a non-zero set
point for the Flux current. This can be done from the console, the serial port, or from a Mi-
croBasic script with the command:
!GID ch Amps*10
The amount of Flux current should be different at low and high speed, typically starting
with zero, and increasing after a given RPM threshold is reached. Below is an example of
a MicroBasic script that changes the Flux set point according to such a rule
top:
Speed = abs(getvalue(_S, 1)) ‘ Read motor speed from Encoders
if (Speed > 5000) ‘ check if above 5000 RPM
FluxSetpoint = (Speed – 5000) / 100 ‘ 1A per 100 RPM above 5000
else
FluxSetpoint = 0 ‘ No Flux current below 5000 RPM
end if
if (FluxSetpoint > 100) then FluxSetpoint = 100 ‘ Cap to 10.0 Amps
setcommand(_GID, 1, FluxSetpoint) ‘ Apply Flux setpoint
wait(10)
goto top ‘ repeat every 10ms
Sensorless Trapezoidal Commutation
Some Roboteq controllers models support trapezoidal commutation without the need for
Hall or other sensors. These models use the code letters “SM” in their product reference
(e.g. KSM1660). Roboteq’s sensorless control of BLDC motors uses back-EMF integration
technique which provides good startup and precise commutation timing.
Important Notice
The Sensorless technique and settings described in this section only apply to firm-
ware revision 2.0 and newer. Earlier implementation of Sensorless commutation
has been retired and replaced.
Theory of Operation
At any given time during rotation, two windings are energized and the third is floating.
When a BLDC motor rotates, each winding generates BEMF. This BEMF, and therefore
the rotor position, can be sensed by monitoring the floating winding.