Position detection and monitoring
An apparatus includes a controller that controls a motor including multiple motor windings. During operation, the motor controller receives an error value indicating a difference between a current angular position of a rotor in the motor with respect to a reference angular position of the rotor. Based on the error value, the controller selects a first angle-to-torque converter function amongst multiple angle-to-torque converter functions in a piecewise angle-to-torque converter function. Via the first angle-to-torque converter function, the controller derives a torque value indicating a magnitude of torque to apply to the rotor. The controller applies the torque as indicated by the torque value to the rotor.
1 . An apparatus comprising:
a motor controller operative to:
produce an error value indicating a difference between a current angular position of a rotor in a motor with respect to a reference angular position of the rotor;
based on the error value, select a first angle-to-torque converter function amongst multiple angle-to-torque converter functions;
via the first angle-to-torque converter function, derive a torque value indicating a magnitude of torque to apply to the rotor; and
via control of current through multiple windings of the motor, apply the magnitude of torque to the rotor as indicated by the torque value.
2 . The apparatus as in claim 1 , wherein the motor controller is operative to select the first angle-to-torque converter function from amongst the multiple angle-to-torque converter functions based on a magnitude of the error value.
3 . The apparatus as in claim 1 , wherein the torque is applied in an angular direction to reduce a magnitude of the difference between the current angular position of the rotor and the reference angular position.
4 . The apparatus as in claim 1 , wherein the reference angular position is a zero reference angular position of the rotor at a time of the motor controller executing a command to transition from rotation of the rotor to non-rotation of the rotor.
5 . The apparatus as in claim 1 , wherein each of the multiple angle-to-torque converter functions is a linear function of angle versus torque providing a conversion of angle-to-torque.
6 . The apparatus as in claim 1 , wherein the multiple angle-to-torque converter functions is a piecewise angle-to-torque converter function, the piecewise angle-to-torque converter function including the first angle-to-torque converter function and a second angle-to-torque converter function.
7 . The apparatus as in claim 6 , wherein the first angle-to-torque converter function is assigned a first angular range;
wherein the second angle-to-torque converter function is assigned a second angular range; and
wherein the first angular range overlaps with respect to the second angular range to provide hysteresis.
8 . The apparatus as in claim 1 , wherein the error value is a first error value obtained at a first instant of time;
wherein the torque value is a first torque value;
wherein the reference angular position is a first reference angular position; and
wherein the motor controller is further operative to: select the first angle-to-torque converter function amongst the multiple angle-to-torque converter functions in response to detecting that a magnitude of the first error value at the first instant of time falls within a first range assigned to the first angle-to-torque converter function.
9 . The apparatus as in claim 8 , wherein the motor controller is further operative to:
receive a second error value indicating a difference between the current angular position of the rotor with respect to a second reference angular position of the rotor at a second instant of time;
based on a magnitude of the second error value, select a second angle-to-torque converter function amongst the multiple angle-to-torque converter functions; and
via the second angle-to-torque converter function, derive a second torque value indicating a second magnitude of torque to apply to the rotor.
10 . The apparatus as in claim 9 , wherein the motor controller is further operative to:
select the second angle-to-torque converter function amongst the multiple angle-to-torque converter functions in response to detecting that a magnitude of the second error value at the second instant of time falls within a second range assigned to the second angle-to-torque converter function.
11 . The apparatus as in claim 10 , wherein the motor controller is further operative to:
apply a magnitude of torque to the rotor as indicated by the second torque value, the torque as indicated by the second torque value applied in an angular direction to reduce a magnitude of the difference between the current angular position of the rotor at the second instant of time and the second reference angular position.
12 . A method comprising:
receiving a current angular position of a rotor in a motor with respect to a reference angular position of the rotor;
based on the current angular position, selecting a first angle-to-torque converter function amongst multiple angle-to-torque converter functions;
via the first angle-to-torque converter function, deriving a torque value indicating a magnitude of torque to apply to the rotor; and
controlling current through multiple windings of the motor to apply the magnitude of torque to the rotor as indicated by the torque value.
13 . The method as in claim 12 , wherein
the torque is applied in an angular direction to reduce a magnitude of a difference between the current angular position of the rotor and a reference angular position of the rotor.
14 . The method as in claim 13 , wherein the reference angular position is a zero reference angular position of the rotor at a time of the motor controller executing a command to transition from rotation of the motor to non-rotation of the rotor.
15 . The method as in claim 12 , wherein each of the multiple angle-to-torque converter functions is a linear function of angle versus torque providing a conversion of angle-to-torque.
16 . The method as in claim 12 , wherein a piecewise combination of the multiple angle-to-torque converter functions represents a nonlinear angle-to-torque converter function.
17 . A method comprising:
producing multiple angle-to-torque converter functions;
selecting portions of the multiple angle-to-torque converter functions;
deriving a piecewise angle-to-torque converter function based on the selected portions of the multiple angle-to-torque converter functions; and
implementing the piecewise angle-to-torque converter function to control rotation of a rotor of a motor.
18 . The method as in claim 17 , wherein the piecewise angle-to-torque converter function approximates a nonlinear angle-to-torque converter function.
19 . The method as in claim 18 , wherein each of the multiple angle-to-torque converter functions is a linear function.
20 . The method as in claim 17 , wherein the selected portions of the multiple angle-to-torque converter functions include:
a first portion, the first portion selected from a first angle-to-torque function of the multiple angle-to-torque functions; and
a second portion, the second portion selected from a second angle-to-torque function of the multiple angle-to-torque functions.
21 . The apparatus as in claim 1 further comprising:
multiple switches operative to control a magnitude of the current through the multiple windings of the motor; and
wherein the motor controller is operative to: i) derive control settings from the torque value, and ii) apply the control settings to the multiple switches.
22 . The apparatus as in claim 21 , wherein the control of the current through the multiple windings of the motor via the application of the control settings to the multiple switches is operative to control the magnitude of the torque to the rotor as indicated by the torque value.
23 . The apparatus as in claim 1 further comprising:
switch circuitry operative to receive control input from the motor controller, the control input derived by the motor controller from the torque value, the switch circuitry operative to control the current through the multiple windings of the motor based on the control input.
24 . The method as in claim 12 , wherein controlling the current through the multiple windings of the motor includes:
deriving current control settings from the torque value; and
applying the current control settings to switches to control a magnitude of the current through the multiple windings of the motor, the application of the current control settings to the switches resulting in the application of the magnitude of the torque to the rotor as indicated by the torque value.
25 . The method as in claim 12 , wherein controlling the current through the multiple windings includes:
deriving current control settings from the torque value; and
controlling a magnitude of the current through the multiple windings via the derived current control settings.