def _control(self, time, trajectory_values=None, feedforward_values=None,
input_values=None, **kwargs):
# input abbreviations
x = input_values
yd = trajectory_values
eq = kwargs.get("eq", None)
if eq is None:
eq = calc_closest_eq_state(self._settings, input_values)
x = x - np.atleast_2d(eq).T
# this is a second version
# x = calc_small_signal_state(self._settings, is_values)
# u corresponds to a force [kg*m/s**2] = [N]
u = - np.dot(self.K, x) + np.dot(self.V, yd[0, 0])
return u
评论列表
文章目录