Difference between revisions of "Torque-feedback controller"
From DIDEAS Wiki
(→Torque feedback algorithm) |
|||
Line 1: | Line 1: | ||
== Torque feedback algorithm == | == Torque feedback algorithm == | ||
*The torque command from the ankle is a function of ankle state. Specifically: | *The torque command from the ankle is a function of ankle state. Specifically: | ||
− | T_out = | + | T_out = ES[Kes*Theta + Bes*Thetadot] + LS,LSP[Kls*Theta + Bls*Thetadot] + LSP[PFF/(T_meas/PCI)^Exp] |
+ | ** Starts transition using the T_meas ~ (T_meas-T_enter_LSP), then smoothly transitions to just using T_meas | ||
*ES[expression] means the expression is only executed during the specified STATE (ES=early stance, LS=late stance, LSP=late stance power) | *ES[expression] means the expression is only executed during the specified STATE (ES=early stance, LS=late stance, LSP=late stance power) | ||
*T_out = output torque command | *T_out = output torque command | ||
− | *T_meas = measured torque | + | *T_meas = measured torque (sensors.EstAnkleTorque_f) |
*Theta, Thetadot = Ankle angle, angular velocity (positive = dorsiflexion) | *Theta, Thetadot = Ankle angle, angular velocity (positive = dorsiflexion) | ||
*Kes, Bes = Virtual spring, damper constants for early stance | *Kes, Bes = Virtual spring, damper constants for early stance | ||
Line 11: | Line 12: | ||
*PCI = Power curve intercept (based on subject's weight (see tuning interface for details on setting weight) | *PCI = Power curve intercept (based on subject's weight (see tuning interface for details on setting weight) | ||
*Exp = Exponent | *Exp = Exponent | ||
− | |||
*T_meas is determined by taking the difference between the motor encoder position and the output ankle joint position, using the measured series spring constant to determine ankle torque. | *T_meas is determined by taking the difference between the motor encoder position and the output ankle joint position, using the measured series spring constant to determine ankle torque. | ||
Line 18: | Line 18: | ||
*In practice, it is likely that PFF mainly affects the net work done by the ankle, while Exp mainly affects the timing. This has yet to be verified. | *In practice, it is likely that PFF mainly affects the net work done by the ankle, while Exp mainly affects the timing. This has yet to be verified. | ||
+ | |||
+ | == Walking parameters == | ||
+ | In c code: walking_param | ||
+ | *mom_thresh_power_on = estimated ankle torque at entry to late stance power |
Latest revision as of 15:19, 8 June 2012
Torque feedback algorithm
- The torque command from the ankle is a function of ankle state. Specifically:
T_out = ES[Kes*Theta + Bes*Thetadot] + LS,LSP[Kls*Theta + Bls*Thetadot] + LSP[PFF/(T_meas/PCI)^Exp]
- Starts transition using the T_meas ~ (T_meas-T_enter_LSP), then smoothly transitions to just using T_meas
- ES[expression] means the expression is only executed during the specified STATE (ES=early stance, LS=late stance, LSP=late stance power)
- T_out = output torque command
- T_meas = measured torque (sensors.EstAnkleTorque_f)
- Theta, Thetadot = Ankle angle, angular velocity (positive = dorsiflexion)
- Kes, Bes = Virtual spring, damper constants for early stance
- Kls, Bls = Virtual spring, damper constants for late stance
- PFF = Positive force feedback gain
- PCI = Power curve intercept (based on subject's weight (see tuning interface for details on setting weight)
- Exp = Exponent
- T_meas is determined by taking the difference between the motor encoder position and the output ankle joint position, using the measured series spring constant to determine ankle torque.
- T_out is provided using current-control.
- In practice, it is likely that PFF mainly affects the net work done by the ankle, while Exp mainly affects the timing. This has yet to be verified.
Walking parameters
In c code: walking_param
- mom_thresh_power_on = estimated ankle torque at entry to late stance power