|
|
@ -177,8 +177,11 @@ class TorqueEstimator(ParameterEstimator): |
|
|
|
if len(self.raw_points['steer_torque']) == self.hist_len: |
|
|
|
if len(self.raw_points['steer_torque']) == self.hist_len: |
|
|
|
yaw_rate = msg.angularVelocityCalibrated.value[2] |
|
|
|
yaw_rate = msg.angularVelocityCalibrated.value[2] |
|
|
|
roll = msg.orientationNED.value[0] |
|
|
|
roll = msg.orientationNED.value[0] |
|
|
|
lat_active = np.interp(np.arange(t - MIN_ENGAGE_BUFFER, t, DT_MDL), self.raw_points['carControl_t'], self.raw_points['lat_active']).astype(bool) |
|
|
|
# check lat active up to now (without lag compensation) |
|
|
|
steer_override = np.interp(np.arange(t - MIN_ENGAGE_BUFFER, t, DT_MDL), self.raw_points['carState_t'], self.raw_points['steer_override']).astype(bool) |
|
|
|
lat_active = np.interp(np.arange(t - MIN_ENGAGE_BUFFER, t + self.lag, DT_MDL), |
|
|
|
|
|
|
|
self.raw_points['carControl_t'], self.raw_points['lat_active']).astype(bool) |
|
|
|
|
|
|
|
steer_override = np.interp(np.arange(t - MIN_ENGAGE_BUFFER, t + self.lag, DT_MDL), |
|
|
|
|
|
|
|
self.raw_points['carState_t'], self.raw_points['steer_override']).astype(bool) |
|
|
|
vego = np.interp(t, self.raw_points['carState_t'], self.raw_points['vego']) |
|
|
|
vego = np.interp(t, self.raw_points['carState_t'], self.raw_points['vego']) |
|
|
|
steer = np.interp(t, self.raw_points['carOutput_t'], self.raw_points['steer_torque']).item() |
|
|
|
steer = np.interp(t, self.raw_points['carOutput_t'], self.raw_points['steer_torque']).item() |
|
|
|
lateral_acc = (vego * yaw_rate) - (np.sin(roll) * ACCELERATION_DUE_TO_GRAVITY).item() |
|
|
|
lateral_acc = (vego * yaw_rate) - (np.sin(roll) * ACCELERATION_DUE_TO_GRAVITY).item() |
|
|
|