<figure><img src="image_1.png" /></figure>

HAL
open science

# Trajectory tracking of unicycles under sampling and discrete-time Passivity-Based Control

Mattia Mattioni, Salvatore Monaco, D Normand-Cyrot

► To cite this version:

Mattia Mattioni, Salvatore Monaco, D Normand-Cyrot. Trajectory tracking of unicycles under sampling and discrete-time Passivity-Based Control. 63rd IEEE Conference on Decision and Control (CDC 2024), IEEE, Dec 2024, Milan, Italy. 10.1109/cdc56724.2024.10886310. hal-04792601

HAL Id: hal-04792601

https://hal.science/hal-04792601v1

Submitted on 20 Nov 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

Public Domain
# Trajectory tracking of unicycles under sampling and discrete-time Passivity-Based Control

M. Mattioni†, S. Monaco† and D. Normand-Cyrot*

**Abstract**— The paper provides a new sampled-data and single-rate control law for trajectory tracking of unicycles under sampling. Assuming the reference generated by a continuous-time input sequence that is persistently exciting the design consists of two phases: first a new discrete-time generator is proposed; then, asymptotic tracking is achieved via a discrete-time IDA-PBC strategy. Simulations illustrate the result of enhancing the efficiency of the proposed control law.

***Index Terms***— Sampled-data control; Lyapunov methods; Nonholonomic systems.

## I. INTRODUCTION

Tracking a desired Cartesian trajectory with an arbitrary orientation profile represents one of the most common yet challenging control problems [1]. Two major classes of approaches have been proposed so far: the one relying on time-varying control (e.g., [2], [3]), dynamic feedback (e.g., [4]) and time-discontinuous feedback (e.g., [5]).

Among the former, the works in [2], [3] invoke cascaded arguments to design the control law from a leader-follower perspective. It is assumed that the reference is generated by a virtual leader whose dynamics is generated by an exosystem fed by a suitable input sequence. Uniform asymptotic convergence to the desired profile is ensured via simple proportional feedback on the tracking error if the reference inputs of the leader are persistently exciting (PE).

Despite the simplicity and efficiency of this approach, it is only intended for continuous-time control, with natural limitations arising in sampled-data implementation. Roughly speaking, as control laws are typically implemented via digital (sampling and hold) devices, the nominal performance certificates deduced by the continuous design are generally lost, even when the sampling period is small [6]. Despite this, most control laws typically used in practice are emulation-based with the design uniquely addressed in continuous time while neglecting the effect of the actuation devices, usually employed for the implementation [7], [8]. Thus, redesigning the feedback law while taking into account and possibly compensating the effects of sampling is essential.

This paper aims to address this issue and provide a new sampled-data and single-rate control law ensuring trajectory tracking of mobile robots from a leader-follower perspective. Specifically, given a continuous-time reference generated by the corresponding leader, the aim is to define a piecewise

constant control law ensuring tracking of the desired profile at all sampling instants. In this context, two questions naturally arise: (i) are samples of the input-to-state leader dynamics enough to asymptotically reproduce the desired tracking profile at the sampling instants? (ii) how to compute the actual sampled-data control law forcing the desired behavior while compensating the effect of sampling? This paper provides a solution to the problem stemming from those questions. Preliminary work in this direction was done in [9] when dealing with steering only at a desired constant configuration. Hence, the solution proposed there does not encounter the main challenges above.

As far as the answer to (i) is concerned, the major issues associated with the sampled-data leader dynamics are linked to the corresponding reference inputs. As well known, feeding a sampled-data system with samples of a continuous-time input sequence does not generate, in general, the same trajectory as the original continuous-time one. This prevents using the same leader dynamics as in continuous time. In addition, even if in general the continuous-time input reference is PE, the discrete-time reference deduced from samples of its loses such a property in general, for all sampling instants. This makes the re-design of suitable sampled-data leader dynamics unavoidable. To overcome such a problem, the first contribution of this work stands in the definition of a new discrete-time generator that guarantees, under a suitable input sequence to be defined, exact matching of the continuous-time reference profile. This is done by solving a multi-rate input-to-state matching problem, at specific sampling instants; a suitable discrete sequence of inputs is computed to guarantee the exact matching of the state evolutions over a fixed time horizon of length $2\delta$, with $\delta$ the sampling period. Despite similar to the one in [10], the definition of the exosystem we propose requires no preliminary continuous-time feedback (not implementable in practice) and is fully designed in the discrete-time context. This is done based on multi-rate of order two over the linear reference velocity and one over the angular component. As a byproduct, by matching, the new multi-rate discrete reference is shown to be PE, provided that the continuous-time counterpart associated with the desired profile is such.

Once the new reference is well defined in discrete time, as far as (ii) is concerned, we settle the design, for the first time, in a discrete-time Interconnection and Damping Assignment (IDA) Passivity-Based-Control (PBC) framework over the sampled-data equivalent model associated to the unicycle [11]. Roughly speaking, we define the digital control law to assign a dissipative discrete-time port-Hamiltonian (pH)

<footnote>†Dipartimento di Ingegneria Informatica, Automatica e Gestionale A. Ruberti (Università degli Studi di Roma La Sapienza); Via Ariosto 25, 00185 Rome, Italy {mattioni, monaco}@diag.uniromal.it.</footnote>

<footnote>*Laboratoire des Signaux et Systèmes (L2S), CNRS, CentraleSupélec, Université Paris-Saclay; 3 Rue Joliot Curie, 91190 Gif-sur-Yvette, France dorothee.normand-cyrot@centralesupelec.fr</footnote>
structure to the sampled-data error dynamics [12]. In this
respect, the energy shaping component is responsible for
injecting the internal model of the exosystem into the plant,
whereas damping is introduced to guarantee convergence.
As typical under sampling, the control law is defined as
the solution to a nonlinear equality with exact forms not
computable in practice. Accordingly, computational facilities
for deducing approximations of those solutions are presented.

The paper is organized as follows. The problem is formu-
lated in Section II. The design of the discrete-time gener-
ator is addressed and motivated in Section III whereas the
definition of the actual control law is given in Section IV.
A simulation illustrates the results in Section V whereas
conclusions and perspectives are drawn in Section VI.

Notations. $\mathbb{R}$ and $\mathbb{N}$ denote the set of real and natural numbers including 0 respectively. The symbol $\succ$ ($\succeq$) denotes positive (semi) definite matrices. $I_n$ denotes the identity matrix of dimension $n \ge 1$ whereas 0 is the zero-matrix of suitable dimensions. Given $B \in \mathbb{R}^{n \times m}$, $B_{\perp}$ and $B^{\dagger}$ denote the orthogonal complement and pseudoinverse respectively. Given $m$ column vectors $g_j \in \mathbb{R}^n$ with $j = 1, \dots, m$ we denote by $\text{diag}\{g_1, \dots, g_m\} \in \mathbb{R}^{mn \times m}$ the block-diagonal matrix with $g_j$ in the main diagonal whereas $\text{col}\{g_1, \dots, g_m\} = (g_1^{\top} \dots g_m^{\top})^{\top} \in \mathbb{R}^{nm}$. Given a discrete-time signal $z_k : \mathbb{N} \to \mathbb{R}^n$, we denote $z_{k+i} = z^{+i}$ with, for simplicity, $z^+ = z^{+1}$. Given a real-valued function $V(\cdot) : \mathbb{R}^n \to \mathbb{R}$ assumed differentiable, $\nabla V(\cdot)$ represents the gradient. For $v, w \in \mathbb{R}^n$, the discrete gradient is $\overline{\nabla}V(v)|_w^w = \int_0^1 \nabla V(v + s(w - v))ds$ and satisfies $V(w) - V(v) = (w - v)^{\top} \overline{\nabla}V(v)|_w^w$ with $\overline{\nabla}V(v)|_w^w = \nabla V(v)$. When $V(v) = \frac{1}{2}v^{\top}Pv$ with $P = P^{\top}$, one gets $\overline{\nabla}V(v)|_w^w = \frac{1}{2}P(v + w)$. In the following, we'll extensively use the following notations $b_1 = \text{col}\{1, 0\}$, $b_2 = \text{col}\{0, 1\}$ and, for $\vartheta \in \mathbb{R}$

$$
R(\vartheta) = \begin{pmatrix} \cos \vartheta & \sin \vartheta \\ -\sin \vartheta & \cos \vartheta \end{pmatrix}, \quad S = \begin{pmatrix} 0 & 1 \\ -1 & 0 \end{pmatrix}. \quad (1)
$$

Time dependencies are omitted when clear from the context.

II. PRELIMINARIES AND PROBLEM STATEMENT

A. Problem statement

Consider the unicycle kinematics

$$
\dot{z} = vr, \quad \dot{v} = \omega \tag{2}
$$

with $z := (x \ y)^{\top} \in \mathbb{R}^2$ the planar coordinates, $\vartheta \in \mathbb{R}$ the
angle described by the chassis with respect to the horizontal
axis, $v, \omega$ the linear and angular velocities and $r = r(\vartheta) =$
$\text{col}\{\cos \vartheta, \sin \vartheta\}$. The problem we solve is stated below.

**Problem 1 (Tracking under sampling).** Consider the kinematics of the unicycle (2) and let $z_r(t) : \mathbb{R}_{\ge 0} \to \mathbb{R}^2$, $\vartheta_r(t) : \mathbb{R}_{\ge 0} \to \mathbb{R}$ be a trajectory generated by a continuous-time exosystem of the form

$$
\dot{z}_r = v_r r_r, \quad \dot{v}_r = \omega_r \quad (3)
$$

under some suitable reference inputs $v_r, \omega_r : \mathbb{R}_{\ge 0} \to \mathbb{R}$ assumed jointly PE [3]; namely, there exist $T \in \mathbb{R}_{\ge 0}$ and

$\mu > 0$ such that for all $t \ge 0$ the following inequality holds

$$
\int_t^{t+T} (v_r^2(\ell) + \omega_r^2(\ell)) \mathrm{d}\ell > \mu. \quad (4)
$$

Let the input signals of (2) be piecewise constant over the sampling period of length $\delta$, i.e., $\omega(t) = \omega_k$, $v(t) = v_k$ for $t \in [k\delta, (k+1)\delta]$ for $k \in \mathbb{N}$. Assume samples of the reference (3) available at all sampling instants, i.e., $z_{rk} = z_r(k\delta)$, $\vartheta_{rk} = \vartheta_r(k\delta)$, $v_{rk} = v_r(k\delta)$ and $\omega_{rk} = \omega_r(k\delta)$. Compute, if any, a piecewise constant state-feedback $v_k = v^\delta(z_k, z_{rk}, \vartheta_k, \vartheta_{rk}, v_{rk}, \omega_{rk})$, $\omega_k = \omega^\delta(z_k, z_{rk}, \vartheta_k, \vartheta_{rk}, v_{rk}, \omega_{rk})$ guaranteeing asymptotic tracking to the trajectory $(z_r, \vartheta_r)$ generated by (3) at all sampling instants, i.e., $z_k \to z_{rk}$ and $\vartheta_k \to \vartheta_{rk}$ as $k \to \infty$. $\square$

B. Sampled-data modeling

The dynamics of the unicycle at the sampling instants $t = k\delta$, $k \in \mathbb{N}$, is described by the sampled equivalent model [9]

$$
z^+ = z - \delta v \Delta s, \quad \vartheta^+ = \vartheta + \delta \omega \quad (5)
$$

with $z = z(k\delta)$, $\vartheta = \vartheta(k\delta)$, $v = v_k$, $\omega = \omega_k$ and

$$
\begin{align*}
s &= s(\vartheta) = r_{\perp}(\vartheta) = \text{col}\{-\sin \vartheta, \cos \vartheta\} \\
\Delta s &:= \frac{s(\vartheta^{+}) - s(\vartheta)}{\vartheta^{+} - \vartheta} = \frac{s(\vartheta + \delta\omega) - s(\vartheta)}{\delta\omega}.
\end{align*}
$$

The solution we propose to **Problem 1** is based on a suitable regulation-based discrete-time IDA-PBC problem and relies on internal model matching of the sampled-data equivalent model of (3). Accordingly, along with samples of the reference trajectories generated by (2), new discrete-time reference inputs $v_r, \omega_r : \mathbb{N} \to \mathbb{R}$ must be computed so to guarantee that: (i) when initialized at the same value the corresponding discrete generator reproduces the same reference as (3), at all sampling instants; (ii) such inputs are jointly PE discrete-time signals, i.e., there exist $\bar{k} \in \mathbb{N}$ and $\mu_\delta > 0$ such that for all $k \ge 0$ the following holds

$$
\sum_{j=k}^{k+\bar{k}-1} (v_{rj}^2 + \omega_{rj}^2) > \mu_{\delta}. \quad (6)
$$

Thus, the sampled-data controller we propose works on the
basis of a new discrete-time exosystem of the form

$$
z_r^+ = z_r - \delta v_r \Delta s_r, \quad \vartheta_r^+ = \vartheta_r + \delta \omega_r \quad (7)
$$

with $s_r := s(\vartheta_r)$ and $\Delta s_r = \frac{1}{\delta\omega_r}(s(\vartheta_r^+) - s(\vartheta_r))$ fed by the
aforementioned designed inputs.

III. A NEW DISCRETE-TIME REFERENCE

The necessity of defining a new sequence of reference
inputs for (7) is because samples of the continuous-time $v_r$,
$\omega_r$ do not guarantee, for all $\delta > 0$, that (7) reproduces the
same reference as (3) at all sampling instants. To see this and
for simplicity, let us focus on the orientation component of
the kinematics (for the cartesian position things go along the
same lines) and let us fix, for $t_k = k\delta$, $\vartheta_r = \vartheta_{rk}$. Then, for
$t \in [k\delta, (k+1)\delta)$ and the reference angular velocity $\omega_r(t)$, the continuous-time reference (3) provides the new sample

$$ \vartheta_r^+ = \vartheta_r + \int_{k\delta}^{(k+1)\delta} \omega_r(\ell) d\ell. \quad (8) $$

The value above does not correspond, in general, to the one generated by the discrete reference (7) under the sample of the continuous-time input $\omega_r = \omega_r(k\delta)$ when $\vartheta_r = \vartheta_r(k\delta)$; the latter is indeed given by

$$ \vartheta_r^+ = \vartheta_r + \delta\omega_r(k\delta). \quad (9) $$

As one might expect, (8) and (9) differ by the term

$$ \vartheta_r^+ - \vartheta_r^+ = \int_{k\delta}^{(k+1)\delta} \omega_r(\ell) d\ell - \delta\omega_r(k\delta). $$

With this in mind, the design of the discrete reference inputs sequence (and thus of the reference) is based on the solution, at specific time instants $t_{2k} = 2k\delta$, of a suitably defined discrete-time model matching problem throughout a period of length $2\delta$ in the input sequences generated by

$$ v_{r,1} = v_{r_{2k}}, \quad v_{r,2} = v_{r_{2k+1}}, \quad \omega_{r_k} = \omega_{r_{2k+1}}. \quad (10) $$

The signals above are computed at the time instants $t_{2k} = 2k\delta$ and $t_{2k+1} = (2k+1)\delta$ and based on the samples generated by the continuous-time reference (3) at all $t = 2k\delta$ and $t = 2(k+1)\delta$ respectively.

**Proposition 3.1:** Consider the continuous and discrete-time exosystems (3) and (7) with $\text{col}\{z_{r_0}, \vartheta_{r_0}\} = \text{col}\{z_r(0), \vartheta_r(0)\}$ and fed by input signals $v_r(t), \omega_r(t): \mathbb{R}_{\ge 0} \to \mathbb{R}$ and $v_{r_k}, \omega_{r_k}: \mathbb{N} \to \mathbb{R}$, respectively. Then, the following holds true:

(a) the discrete signals (10) computed as

$$ \underline{\omega}_r = \frac{1}{2\delta} (\vartheta_r(t_{2(k+1)}) - \vartheta_r) \quad (11a) $$

$$ \underline{v}_r = -\frac{1}{\delta} \left( \Delta s(\vartheta_r) \Delta s(\vartheta_r^+) \right)^{-1} \left( z_r^{+2} - z_r \right) \quad (11b) $$

with $\underline{v}_r = \text{col}\{v_{r,1}, v_{r,2}\}$, $\underline{\omega}_r = \omega_{r_k} = \omega_{r_{k+1}}$ guarantee exact matching of the trajectories of (3) and (7) at all $t_{2k} = 2k\delta$, i.e., $\text{col}\{z_{r_{2k}}, \vartheta_{r_{2k}}\} = \text{col}\{z_r(2k\delta), \vartheta_r(2k\delta)\}$;

(b) if $v_r$ and $\omega_r$ satisfy the PE condition (4) with $T = 2k\delta$ for some $k \in \mathbb{N}$ then, the discrete signals $v_{r_k}, \omega_{r_k}: \mathbb{N} \to \mathbb{R}$ satisfy the discrete PE condition in (6)

**Proof:** The proof of (a) follows showing that $\text{col}\{z_{r_{2k}}, \vartheta_{r_{2k}}\} = \text{col}\{z_r(2k\delta), \vartheta_r(2k\delta)\}$ implies $\text{col}\{z_{r_{2(k+1)}}, \vartheta_{r_{2(k+1)}}\} = \text{col}\{z_r(2(k+1)\delta), \vartheta_r(2(k+1)\delta)\}$. To this end, we notice that the discrete reference dynamics for $t \in [2k\delta, 2(k+1)\delta]$ is governed by

$$ \vartheta_r^{+2} = \vartheta_r + 2\delta \underline{\omega}_r, \quad z_r^{+2} = z_r - \delta (\Delta s(\vartheta_r) \Delta s(\vartheta_r^+)) \underline{v}_r. $$

At this point, substituting (11) into the expression above and exploiting $\text{col}\{z_r, \vartheta_r\} = \text{col}\{z_r, \vartheta_r\}$ yield $\theta_r^{+2} = \theta_r^{+2}$,

$z_r^{+2} = z_r^{+2}$ and thus the result. The proof of (b) follows by considering that, $v_r$ and $\underline{\omega}_r$ verify

$$ \underline{\omega}_r = \frac{1}{\delta} \int_{2k\delta}^{2(k+1)\delta} \omega_r(\ell) d\ell \\ (\Delta s(\vartheta_r) \Delta s(\vartheta_r^+)) \underline{v}_r = -\frac{1}{\delta} \int_{2k\delta}^{2(k+1)\delta} r(\vartheta_r(\ell)) v_r(\ell) d\ell. $$

Accordingly, one gets

$$ \begin{aligned} \|\underline{v}_r\|^2 + 2\underline{\omega}_r^2 &= \frac{1}{\delta^2} \int_{2k\delta}^{2(k+1)\delta} \left(2\omega_r^2(\ell) + \| (\Delta s(\vartheta_r) \Delta s(\vartheta_r^+))^{-1} r(\vartheta_r(\ell)) \|^2 v_r^2(\ell) \right) d\ell \\ &\geq \nu\delta \int_{2k\delta}^{2(k+1)\delta} \left(v_r^2(\ell) + \omega_r^2(\ell)\right) d\ell \end{aligned} $$

with the term

$$ \nu\delta = 2\min \left\{ \frac{1}{\delta^2}, \int_{2k\delta}^{2(k+1)\delta} \| (\Delta s(\vartheta_r) \Delta s(\vartheta_r^+))^{-1} r(\vartheta_r(\ell)) \|^2 d\ell \right\} $$

being well-defined and bounded by definition of $\Delta s(\cdot)$ and $s(\cdot)$. Accordingly, the fact that $v_r$ and $\omega_r$ are PE in continuous time with $T = 2k\delta$ yields

$$ \begin{aligned} \sum_{j=k}^{k+\bar{k}-1} (\|\underline{v}_r\|^2 + 2\underline{\omega}_r^2) &\geq \sum_{j=k}^{k+\bar{k}-1} \int_{2k\delta}^{2(k+1)\delta} (v_r^2(\ell) + \omega_r^2(\ell)) d\ell \\ &\geq \nu\delta \int_{2k\delta}^{2k+T\delta} (v_r^2(\ell) + \omega_r^2(\ell)) d\ell \\ &> \nu\delta\mu = \mu\delta \end{aligned} $$

and thus (6) so proving the result.

## IV. TRACKING VIA DISCRETE IDA-PBC

For solving **Problem 1**, we define the tracking error

$$ e = \begin{pmatrix} e_z \\ e_\vartheta \end{pmatrix} := \begin{pmatrix} R(\vartheta)(z - z_r) \\ \vartheta - \vartheta_r \end{pmatrix}, \quad e_z = \begin{pmatrix} e_x \\ e_y \end{pmatrix} \quad (12) $$

with $R(\vartheta)$ in (1). The corresponding sampled-data error dynamics is described by the discrete-time model

$$ e_z^+ = R(\delta\omega)e_z + \delta vB(\delta\omega) - \delta v_r D(e_\vartheta, \delta\omega, \delta\omega_r) \quad (13a) $$

$$ e_\vartheta^+ = e_\vartheta + \delta(\omega - \omega_r) \quad (13b) $$

with

$$ \begin{aligned} B(\delta\omega) &= \frac{1}{\delta\omega} (R(\delta\omega) - I) \mathbf{b}_2 \\ D(e_\vartheta, \delta\omega, \delta\omega_r) &= \frac{1}{\delta\omega_r} (R(e_\vartheta + \delta\omega) - R(e_\vartheta^+)) \mathbf{b}_2. \end{aligned} $$

**Remark 4.1:** In this setting, solving **Problem 1** is equivalent to making the error dynamics (13) uniformly asymptotically stable at the origin. From now on, all properties are meant to hold uniformly even if not explicitly specified.

The goal now is to design a piecewise constant control law assigning a discrete-time dissipative pH structure to the error-dynamics (13) with a suitable Hamiltonian $H: \mathbb{R}^3 \to \mathbb{R}_{\ge 0}$ such that $\nabla H(0) = 0$ and $H(0) = 0$. The instrumental result below proves that (13) admits discrete-time pH representation [12].
**Lemma 4.1:** The sampled-data error dynamics (13) admits the implicit port-Hamiltonian structure below

$$e_z^+ = e_z + \frac{\delta}{2} J(\delta\omega)(e_z^+ + e_z) + \delta v \tilde{B}(\delta\omega) \quad (14a) \\ - \delta v_r \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r)$$

$$e_{\vartheta}^{+} = e_{\vartheta} + \delta(\omega - \omega_{\mathrm{r}}) \quad (14b)$$

with

$$H(e_z, e_\vartheta) = \frac{1}{2}(e_z^\top e_z + \frac{1}{\kappa_y} e_\vartheta^2), \quad \kappa_y > 0$$

$$\frac{\delta}{2} J(\delta\omega) = \frac{\sin \delta\omega}{1 + \cos \delta\omega} S, \quad \tilde{B}(\delta\omega) = \frac{2 \sin \delta\omega}{\delta\omega(1 + \cos \delta\omega)} b_1$$

$$\tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) = 2(R(\delta\omega) + I)^{-1} D(e_\vartheta, \delta\omega, \delta\omega_r).$$

**Proof:** To prove the result one must show that (13) solves the implicit pH representation (14) in the variable $e^+ = \text{col}\{e_z^+, e_\vartheta^+\}$. This can be readily verified by substituting (13) in both sides of the pH representation (14). ■

In the following, it is useful to compactly rewrite (14) as

$$e^+ = e + \frac{\delta}{2} \mathbf{J}(\delta\omega)Pe + \delta v \tilde{B}(\delta\omega) \quad (15) \\ - \delta v_r \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) + \delta(\omega - \omega_r)b_2$$

with $\tilde{B}(\delta\omega) = \text{col}\{\tilde{B}(\delta\omega), 0\}$, $\tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) = \text{col}\{\tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r), 0\}$, $P = \text{diag}\{I, \kappa_y^{-1}\}$, $\mathbf{J}(\delta\omega) = \text{diag}\{J(\delta\omega), 0\}$, and the one-step-ahead increment

$$\Delta H = \frac{\delta}{2} \left( \frac{v}{\omega} \tilde{B}(\delta\omega) - \frac{v_r}{\omega_r} \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) \right)^\top (e_z^+ + e_z) \\ + \frac{\delta}{2\kappa_y} (\omega - \omega_r)(e_\vartheta^+ + e_\vartheta). \quad (16)$$

Accordingly, a suitable PBC can be designed as composed of two parts: the first one aimed at removing the effect of the exogenous inputs $v_r, \omega_r$ from (16) (so making the corresponding dynamics conservative); the second one assigning a suitable dissipation guaranteeing asymptotic stability of the origin. This corresponds to assigning to (14) a new dissipative pH structure based on IDA-PBC.

**Proposition 4.1:** The feedback law solution to

$$v=v_{\mathrm{r}} \tilde{B}^{\dagger}(\delta \omega) \tilde{D}(e_{\vartheta}, \delta \omega, \delta \omega_{\mathrm{r}})-\frac{\kappa_{x}}{2} \tilde{B}^{\top}(\delta \omega)(e_{z}^{+}+e_{z}) \quad (17a)$$

$$\omega = \omega_r - \frac{\kappa_{\vartheta}}{2}(e_{\vartheta}^{+} + e_{\vartheta}) \quad (17b)$$

$$+ \kappa_y v_r \frac{(\tilde{B}_{\perp}^{\dagger}(\delta\omega) \tilde{B}_{\perp}(\delta\omega) \tilde{D}(e_{\vartheta}, \delta\omega, \delta\omega_r))^{\top}}{e_{\vartheta}^{+} + e_{\vartheta}} (e_z^{+} + e_z)$$

with $\kappa_x, \kappa_\vartheta > 0$, $\tilde{B}_\perp(\delta\omega) = \frac{\delta\omega(1+\cos\delta\omega)}{2\sin\delta\omega}b_2^\top$ assigns to the sampled-data error dynamics (13) (equivalently, (14)) the discrete pH structure

$$e^+ = e + \frac{\delta}{2} \left( \mathbf{J}_d(e_\vartheta, \delta\omega, \delta\omega_r, \delta v_r) - \mathbf{R}_d(\delta\omega) \right) P(e^+ + e) \quad (18)$$

with interconnection and damping matrices given by

$$\mathbf{J}_d(e_\vartheta, \delta\omega, \delta\omega_r, \delta v_r) = \mathbf{J}(\delta\omega) + \mathbf{J}_a(e_\vartheta, \delta\omega, \omega_r, \delta v_r)$$

$$\frac{\delta}{2} \mathbf{J}_a(e_\vartheta, \delta\omega, \delta\omega_r, \delta v_r) =$$

$$\mathbf{J}_e \frac{\kappa_y v_r (\tilde{B}_\perp^\dagger(\delta\omega) \tilde{B}_\perp(\delta\omega) \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r))^\top}{e_\vartheta^+ + e_\vartheta}$$

$$\frac{\delta}{2} \mathbf{R}_d(\delta\omega) = \begin{pmatrix} \kappa_x \tilde{B}(\delta\omega) \tilde{B}^\top(\delta\omega) & 0 \\ 0 & \kappa_\vartheta \end{pmatrix} \ge 0$$

$$\tilde{B}(\delta\omega) \tilde{B}^{\top}(\delta\omega) = \frac{4(1 - \cos\delta\omega)}{\delta^2\omega^2(1 + \cos\delta\omega)} \text{diag}\{1, 0\}$$

$$\mathbf{J}_e = \text{diag}\{0, -S\}.$$

**Proof:** The proof follows substituting (17) into (14). ■

The expressions (17) explicitly reveal the energy-shaping and damping components of the IDA-PBC feedback, i.e.,

$$v = v_{es}^{\delta}(e_{\vartheta}, \omega, \omega_{\mathrm{r}}, v_{\mathrm{r}}) + v_{in}^{\delta}(e_z, \omega) \quad (19a)$$

$$\omega = \omega_{es}^{\delta}(e_z, e_{\vartheta}, \omega, \omega_{\mathrm{r}}, v_{\mathrm{r}}) + \omega_{in}^{\delta}(e_z) \quad (19b)$$

with

$$v_{es}^{\delta}(e_{\vartheta}, \omega, \omega_{\mathrm{r}}, v_{\mathrm{r}}) = v_{\mathrm{r}} \tilde{B}^{\dagger}(\delta\omega) \tilde{D}(e_{\vartheta}, \delta\omega, \delta\omega_{\mathrm{r}})$$

$$v_{in}^{\delta}(e_z, \omega) = -\frac{\kappa_x}{2} \tilde{B}^{\top}(\delta\omega)(e_z^+ + e_z)$$

$$\omega_{es}^{\delta}(e_z, e_{\vartheta}, \omega, \omega_{\mathrm{r}}, v_{\mathrm{r}}) = \omega_{\mathrm{r}}$$

$$+ \kappa_y v_r \frac{(\tilde{B}_\perp^\dagger(\delta\omega) \tilde{B}_\perp(\delta\omega) \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r))^\top}{e_\vartheta^+ + e_\vartheta} (e_z^+ + e_z)$$

$$\omega_{in}^{\delta}(e_z) = -\frac{\kappa_{\vartheta}}{2}(e_{\vartheta}^{+} + e_{\vartheta}).$$

Accordingly, the IDA-PBC design yields a controller with an energy-shaping component responsible for making the energy variation along the error dynamics (14) independent from the external references $v_r$ and $\omega_r$. This corresponds to limiting their effects onto the interconnection matrix $\mathbf{J}_d$, defining the energy-conservative part of the structure with hence, no influence over $\Delta H$. In particular, when the damping components are zero, one gets a conservative system independent on the external inputs, that is $v_{di}^\delta = \omega_{di}^\delta = 0$ implies $\Delta H = 0$, for all $\omega_r, v_r \in \mathbb{R}$.

### A. Main result

**Theorem 4.1:** Consider the unicycle kinematics (2) and the corresponding sampled model (5) with the exosystem (7) under the reference inputs in (11). The IDA-PBC feedback defined as the solution to (17) solves **Problem 1**.

**Proof:** One has to show that the origin is asymptotically stable for the error dynamics (13) in closed loop. To this end, by construction, the proposed feedback law guarantees

$$\Delta H = - \frac{\delta \kappa_x \omega^2}{(\delta + \kappa_x(1 - \cos \delta\omega))^2} \| (\sin \delta\omega \quad 1 - \cos \delta\omega) e_z \|^2 \\ - \frac{\delta}{\kappa_y} \frac{\kappa_{\vartheta}}{(1 + \frac{\delta}{2}\kappa_{\vartheta})^2} e_{\vartheta}^2 \le 0.$$
and thus attractiveness of the largest invariant set contained in $\{(e_z, e_\vartheta) \in \mathbb{R}^2 \times \mathbb{R} \text{ s.t. } \Delta H = 0\}$. This yields

$$ \begin{aligned} \Delta H \equiv 0 &\iff e_\vartheta \equiv 0 \text{ and } (\sin \delta\omega \ 1 - \cos \delta\omega) e_z \equiv 0 \\ &\implies e_\vartheta^+ \equiv 0 \implies \omega \equiv \omega_r. \end{aligned} $$

As by Proposition 3.1 $\omega_r$ is PE, then $e_z \equiv 0$ and the result. ■

**Remark 4.2:** The PE condition (6) ensures that $e_\vartheta \equiv 0$ only if $e_z \equiv 0$ for all $\kappa_y > 0$. When such an assumption fails and $v_r \equiv 0$, one would get

$$ e_\vartheta \equiv 0 \implies \omega = \omega_r \implies e_z = a \left( \cos \delta\omega_r - 1 \sin \delta\omega_r \right)^\top $$

for some constant $a \in \mathbb{R}$. If $v_r \in \mathbb{R}$ is not PE the error would converge to a periodic trajectory depending on $\omega_r$.

## B. Computational aspects

One can easily check that equality (17a) admits a solution that can be explicitly and exactly computed as proved below.

**Corollary 4.1:** The solution to (17a) is given by

$$ \begin{aligned} v = & -\frac{\kappa_x}{2} \left(1 + \frac{\delta\kappa_x}{2} \tilde{B}^\top(\delta\omega) B(\delta\omega)\right)^{-1} \tilde{B}^\top(\delta\omega) \left(I + R(\delta\omega)\right) e_z + v_r \left(1 + \frac{\delta\kappa_x}{2} \tilde{B}^\top(\delta\omega) B(\delta\omega)\right)^{-1} \\ & \times \left(\tilde{B}^\dagger(\delta\omega) \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) + \frac{\delta\kappa_x}{2} \tilde{B}^\top(\delta\omega) D(e_\vartheta, \delta\omega, \delta\omega_r)\right). \end{aligned} \quad (21) $$

*Proof:* The proof follows by substituting (14a) into (17a) yielding a linear equality in $v$. The result follows noticing that because $\kappa_x > 0 + \frac{\delta\kappa_x}{2} \tilde{B}^\top(\delta\omega) B(\delta\omega) \neq 0$. ■

It is a matter of computations to rewrite (21) as

$$ \begin{aligned} & \left(1 + \frac{k_x(1 - \cos \delta\omega)}{\delta\omega^2}\right) v = -\frac{\kappa_x}{\delta\omega} \left(\sin \delta\omega \ 1 - \cos \delta\omega\right) e_z \\ & + \frac{\delta v_r \omega}{4\omega_r \sin(\delta\omega)} \left(\sin e_\vartheta - \sin(e_\vartheta - \delta\omega_r)\right) \\ & + \frac{\delta v_r \omega}{4\omega_r \sin \delta\omega} \left(1 + \frac{4\kappa_x(1 - \cos \delta\omega)}{\delta^2 \omega^2}\right) \left(\sin(e_\vartheta + \delta\omega) - \sin(e_\vartheta^+)\right) \end{aligned} $$

so getting, as $\delta \to 0$, that $v \to -\kappa_x e_x$.

Contrarily to the linear velocity component, analytic (and exact) forms for the solution to (17b) are hard to find. However, it can be easily proved that (17b) (equivalently (22)) admits a unique solution in the form of a formal series expansion in powers of $\delta$ as proved here below. To this end, it is instrumental to rewrite (17b) as

$$ \begin{aligned} & \left(1 + \frac{\delta}{2} \kappa_\vartheta\right) (\omega - \omega_r) = -\kappa_\vartheta e_\vartheta \\ & + \kappa_y v_r \frac{\left(\tilde{B}_\perp^\top(\delta\omega) \tilde{B}_\perp(\delta\omega) \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r)\right)^\top}{e_\vartheta^+ + e_\vartheta} (e_z^+ + e_z) \end{aligned} \quad (22) $$

with, setting for simplicity $\tilde{B}_\perp(\delta\omega) = \frac{\delta\omega(1+\cos\delta\omega)}{2\sin\delta\omega} b_2^\top$

$$ \tilde{B}_\perp^\top(\delta\omega) \tilde{B}_\perp(\delta\omega) \tilde{D}(e_\vartheta, \delta\omega, \delta\omega_r) = \frac{\cos e_\vartheta - \cos e_\vartheta^+ + \cos(e_\vartheta + \delta\omega) - \cos(e_\vartheta - \delta\omega_r)}{\delta\omega_r(1 + \cos\delta\omega)} b_2. $$

This is stated in the result below whose proof is omitted as similar to [9, Corollary 3.1].

<figure><img src="image_2.png" /><figcaption>Fig. 1: The continuous-time input reference signals.</figcaption></figure>

**Corollary 4.2:** There exists $\delta^* > 0$ such that for all $\delta \in [0, \delta^*[$, quality (17b) admits a unique solution $\omega = \omega^\delta(e, v_r, \omega_r)$ of the form

$$ \omega(e, v_r, \omega_r) = \omega_0(e, v_r, \omega_r) + \sum_{i>0} \frac{\delta^i}{(i+1)!} \omega_i(e, v_r, \omega_r). \quad (23) $$

Although exact solutions to (17b) cannot be easily computed, approximations are naturally defined. All terms of the series expansion (23) are exactly computable via a constructive and iterative algorithm solving, at each step, a suitably defined linear equality. For the first terms, one gets

$$ \begin{aligned} \omega_0 &= \omega_r - \kappa_y v_r e_y \frac{\sin e_\vartheta}{e_\vartheta} - \kappa_\vartheta e_\vartheta \\ \omega_1 &= -\kappa_\vartheta(\omega_0 - \omega_r) - \kappa_y v_r \left( \frac{\sin e_\vartheta}{e_\vartheta} \left( v_r \sin e_\vartheta - e_x \omega_0 - e_y \frac{\omega_0 - \omega_r}{e_\vartheta} \right) + e_y(\omega_0 - \omega_r) \cos e_\vartheta \right). \end{aligned} $$

One can define approximate solutions to (17b) as the truncation of (23) at all finite order $p \in \mathbb{N}$, that is

$$ \omega_p^\delta(e, v_r, \omega_r) = \omega_0(e, v_r, \omega_r) + \sum_{i=1}^{p} \frac{\delta^i \omega_i(e, v_r, \omega_r)}{(i+1)!}. \quad (24) $$

Such approximations guarantee, in general, practical asymptotic stability at the origin for the closed loop error dynamics (13), as proved in [13]; namely, the sampled-data controller is ensured to steer the unicycle to a neighborhood of the desired configuration of radius in $O(\delta^{p+1})$.

## V. AN EXAMPLE

We provide one simulation of the proposed strategy to illustrate the control law in Theorem 4.1, based on the new discrete generator in (7) (Proposition 3.1) and when approximating the angular velocity component as in (24) with $p = 2$ (referred to as DT IDA-PBC + DT Reference). Comparisons are then performed concerning: (i) the discrete-time IDA-PBC control law implemented considering samples of the continuous-time reference (2), i.e., when setting $v_r = v_r$, $\omega_r = \omega_r$, $z_r = z_r$ and $\vartheta_r = \vartheta_r$ in (17) (referred to as DT IDA-PBC + CT Reference); (ii) the digital implementation of the control law [3, Eqn (8)] via sample-and-hold devices (referred to as emulation). In all scenarios, the control gains are all unitary, the initial condition is fixed to $z_0 = \text{col}\{1, 1\}$, $\vartheta_0 = -\pi$ while, for a fair comparison, the input references
<figure><img src="image_3.png" /><figcaption>Fig. 2: Simulation with $\delta = 0.8$ seconds, $\kappa_x = \kappa_y = \kappa_\vartheta = 1$.</figcaption></figure>

are set as in [3] and reported in Fig. 1. The corresponding target continuous-time reference (defining the desired trajectory $z_r(t)$, $\vartheta_r(t)$) is reported in dashed light blue in Fig. 2. The sampling period is fixed as $\delta = 0.8$ and corresponds to the maximum allowed value emulation tolerates before failure and instability. First of all, Fig. 2 highlights that the proposed controller (embedded with the new generator and reported in red line) is the only one capable of guaranteeing tracking of the desired profile, at the sampling instants with very good performances in general. The results achieved by (i) (red line in Fig. 2) enforce the importance of the discrete-time reference for fully achieving tracking at the sampling instants. The discrete-time controller directly embedded with samples of the continuous-time trajectory ensures tracking with a generally non zero offset $\varepsilon_1$. Still, the discrete-time IDA-PBC component guarantees improved performances with respect to mere emulation. In the latter, the corresponding performances are not satisfactory as it fails in tracking the desired profile in general (yellow lines in Fig. 2) with a non-zero offset $\varepsilon_2 > \varepsilon_1$. The latter aspect shows a performance improvement enhanced by the discrete design with respect to the continuous-time control.

## VI. CONCLUSIONS AND PERSPECTIVES

A new sampled-data control law for ensuring asymptotic tracking of unicycles has been proposed. Assuming samples of the desired profile available at all sampling instants, the solution we propose relies on a revisited multi-rate planning strategy to re-design the discrete reference generator and IDA-PBC for guaranteeing asymptotic tracking. Further work is currently addressing the use of this approach to cope with cooperative tracking in a multi-agent perspective.

## REFERENCES

[1] B. Siciliano, L. Sciavicco, L. Villani, and G. Oriolo, "Mobile robots," Robotics: Modelling, Planning and Control, pp. 469–521, 2009.

[2] A. Loría, E. Panteley, and A. Teel, "A new notion of persistency-of-excitation for ugas of nltv systems: Application to stabilisation of nonholonomic systems," in European Control Conference, 1999.

[3] M. Maghenem, A. Loria, and E. Panteley, "Lyapunov-based formation-tracking control of nonholonomic systems under persistency of excitation," IFAC-PapersOnLine, vol. 49, no. 18, pp. 404–409, 2016.

[4] G. Oriolo, A. De Luca, and M. Vendittelli, "Wnr control via dynamic feedback linearization: design, implementation, and experimental validation," IEEE Transactions on Control Systems Technology, vol. 10, no. 6, 2002.

[5] A. Astolfi, "Discontinuous control of nonholonomic systems," Systems & Control Letters, vol. 27, no. 1, pp. 37–45, 1996.

[6] M. Di Ferdinando, D. Bianchi, S. Di Gennaro, and P. Pepe, "On the robust quantized sampled-data leaderless consensus tracking of nonlinear multi-agent systems," in 2021 60th IEEE Conference on Decision and Control (CDC). IEEE, 2021, pp. 3263–3268.

[7] F. Mazenc, M. Malisoff, and T. N. Dinh, "Robustness of nonlinear systems with respect to delay and sampling of the controls," Automatica, vol. 49, no. 6, pp. 1925–1931, 2013.

[8] D. Nesic and A. R. Teel, "A framework for stabilization of nonlinear sampled-data systems based on their approximate discrete-time models," IEEE Transactions on Automatic Control, vol. 49, no. 7, pp. 1103–1122, 2004.

[9] M. Mattioni, A. Moreschini, S. Monaco, and D. Normand-Cyrot, "Steering and formation control of unicycles under single-rate sampling," IEEE Transactions on Control of Network Systems, 2024.

[10] S. Monaco and D. Normand-Cyrot, "An introduction to motion planning under multirate digital control," in 31st IEEE Conference on Decision and Control, 1992, pp. 1780–1785.

[11] A. Moreschini, M. Mattioni, S. Monaco, and D. Normand-Cyrot, "Stabilization of discrete port-hamiltonian dynamics via interconnection and damping assignment," IEEE Control Systems Letters, vol. 5, no. 1, pp. 103–108, 2020.

[12] ——, "Discrete port-controlled hamiltonian dynamics and average passivation," in 2019 IEEE 58th Conference on Decision and Control (CDC). IEEE, 2019, pp. 1430–1435.

[13] M. Mattioni, S. Monaco, and D. Normand-Cyrot, "Immersion and invariance stabilization of strict-feedback dynamics under sampling," Automatica, vol. 76, pp. 78–86, 2017.