Let's consider the following ordinary differential equation (ODE): $$ \begin{align*} \frac{\partial x}{\partial t} &= f(x,u)\\ 0 &= g(x,u)\\ y &= h(x,u) \end{align*}. $$ We denote $x\in \mathbb{R}^{n_x}$ as the states, $u \in \mathbb{R}^{n_u}$ as the inputs.

For the sake of simplicity, let's have a look at the ODE of a simple model of a planar robot:

$$ \begin{align*} \frac{\partial x}{\partial t} &= v_{veh} \cdot \cos(\theta)\\ \frac{\partial y}{\partial t} &= v_{veh} \cdot \sin(\theta)\\ \frac{\partial \theta}{\partial t} &= \omega \end{align*}. $$

We introduce the states $$x = [x,y,\theta]^{T}$$

and the inputs $$ \begin{align*} u = [v_{veh},\omega]^{T} \end{align*}. $$

From an engineering point of view, $ x $ and $ y $ are the coordinates of the robot in a x-y-Plane, $ \theta $ is its rotation. The input $ v_{veh} $ is the velocty in the driving direction and $ \omega $ is the heading rate.

Further, here is the relation of the robot velocity $ v_{veh} $ and the set point velocity $ v_{set} $, in terms of a 1st-order differential equation (Notation from Wikipedia): $$ \begin{align*} T \cdot \dot{v}_{veh}(t) + v_{veh}(t) = K\cdot v_{set}(t) \end{align*}. $$

My doubt now is how to incorporate this equation, which describes the system dynamics, into my original ODE. Technically speaking, my goal would be to incorporate the time delay of the speed (that is, that the vehicle does not accelerate infinitely fast) into the ODE. This would allow me to build my control strategy accordingly.


1 Answer 1


If you have an equation like:

$$ T \cdot \dot{v}_{veh}(t) + v_{veh}(t) = K\cdot v_{set}(t) $$

then solve for the highest-order derivative:

$$ T \cdot \dot{v}_{veh}(t) = - v_{veh}(t) + K\cdot v_{set}(t) \\ \dot{v}_{veh}(t) = - T^{-1} \cdot v_{veh}(t) + T^{-1}K\cdot v_{set}(t) \\ $$

This would be the basis for the state-space form. You wind up with $\dot{v}_{veh}(t)$ as your $\dot{x}$, $- T^{-1}$as your $A$, $v_{veh}(t)$ is your $x$, $T^{-1}K$ is your $B$, and $v_{set}(t)$ is your $u$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.