Motor limiters
The following variables are located in the /driver/limiter
folder.
- Current direction from the battery to the motor is considered as positive (motoring, battery is being discharged).
- Current direction from the motor to the battery is considered as negative (generating, battery is being charged).
- In some of the applications, some of the hereby parameters may be set as "volatile", rendering them as not being user-settable and not saved to the FLASH memory. This is because, they are set from the user application. Example:
ppos
in the LYNX is set individually per each power_map. - To disable a limiter, set the limiter setting to zero.
Parameters
Speed limitation
Transfer function of speed limiter:
rpos
[rpm]
The speed limitation threshold in positive direction. (=motor direction in motoring state when CMD is positive). At this speed, power will be limited to 50%.
rneg
[rpm]
Same as rpos
but in the negative speed direction (=motor direction in motoring state when CMD is negative).
rdec
[rpm]
This parameter set speed limitation decrement rate. Lowering the value will lead to narrower operational range, but also may decrease the stability.
rgain
[-]
This parameter sets the dynamic response. The higher value, the quicker response (negative or positive), but this may also lead to oscillation in this limiter. Lower values will lead to smoother response.
- This limiter is an lead-lag type limiter and its dynamic performance depends on the
rgain
andrdec
parameters. - The limiter operation depends heavily on the overall dynamics of the load. Therefore, tune the parameters with the nominal load attached to your motor.
- Do not forget to set motor pole pair count -
/driver/motor/pp
to get the correct shaft speed reading first.
Speed when there is no power to the motor is equal rpos
+ rdec
/2
Motor temperature limitation
This limiter works with an external sensor connected to the controller. The thermistor (NTC or PTC) is typically connected in between the MTEMP and GND pins of your controller.
Thermistor value and limiter setting are specified in [ohm] instead of in temperature units (to maximize the compatibility with various sensors). Thermistor resistance reading can be found in /driver/motor/RThermistor
.
RThermistor value | RThermistor reading in YOS | State |
---|---|---|
under 80 [ohm] | 0 | Shorted |
over 50k [ohm] | NaN (Not a Number) | Disconnected |
If sensor is disconnected or shorted, full limitation disable the motor. This only works, if mtemplo
and mtemphi
are set non-zero.
mtemplo
[ohm]
The thermistor resistance at which the limitation starts.
mtemphi
[ohm]
The thermistor resistance at which the power is 100% limited.
mtempgain
[-]
This parameter sets the dynamic response. The higher value, the quicker response (negative or positive), but this may also lead to oscillation in this limiter. Lower values will lead to smoother response.
Motor temperature limitation - estimated
This limiter works with an internally estimated winding resistance /driver/motor/mres
.
- This reading is not accurate and the limiter may work only with certain types of motors/sensors.
- In most cases, this limiter is not present in the firmware.
- Please contact siliXcon for further details.
mreslo
[ohm]
Motor winding resistance at which the limitation starts.
mreshi
[ohm]
Motor winding resistance at which the power is 100% limited.
mresgain
[-]
This parameter sets the dynamic response. The higher value, the quicker response (negative or positive), but this may also lead to oscillation in this limiter. Lower values will lead to smoother response.