# Pointillism Wall Painting Drone Using Bouncing Frequency Control

Pierre Susbielle, Jonathan Dumon, Ahmad Hably

► To cite this version:

Pierre Susbielle, Jonathan Dumon, Ahmad Hably. Pointillism Wall Painting Drone Using Bouncing Frequency Control. IEEE Robotics and Automation Letters, 2025, 10 (5), pp.4802-4809. 10.1109/LRA.2025.3554378. hal-05096557

HAL Id: hal-05096557

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

Submitted on 4 Jun 2025

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.

<figure><img src="image_1.png" /></figure>
# Pointillism Wall Painting Drone Using Bouncing Frequency Control

Pierre Susbielle<fnref n="1" />, Jonathan Dumon<fnref n="1" /> and Ahmad Hably<fnref n="1" />

**Abstract**—This study presents an new robotic airborne solution for autonomous wall painting using a pointillism technique. The proposed dot-painting drone is a quadcopter equipped with an additional forward propulsion unit and a spring-mounted painting pad. It is designed to bounce on a vertical wall in order to print dots at a controlled frequency along a predefined trajectory. A dynamic model of the system is derived and used to control accurately the bouncing frequency as well as the position of the robot. The performance of the system is validated experimentally, demonstrating successful indoor painting capability of pointillism drawing on vertical walls. This work represents a first step toward fully autonomous, large-scale mural reproduction using aerial robotics.

**Index Terms**—Aerial Systems: Mechanics and Control, Art and Entertainment Robotics, Autonomous Agents

**Video:** https://youtu.be/e9uUS2yAsjY

## I. INTRODUCTION AND RELATED WORK

SINCE the first rural tags found in Philadelphia in 1965, street art has captured cultural attention through its provocative defiance and the use of unconventional tools. Over time, both practices and tools have evolved, particularly with the integration of digital technologies. This evolution has led to the development of software and hardware capable of autonomously producing artwork. Robots are now widely used for artistic endeavors, executing complex tasks that are often considered beyond human capacity.

Various robotic systems have been explored for artistic purposes, particularly with ground-based robots. In [1], a humanoid robot uses Krink markers to create graffiti on a wall using a pointillism technique. In [2], a Cartesian robot executes automated pen-and-ink drawings based on visual feedback with a hatching process. In [3], a ground-based mobile robotic arm is used for autonomous wall painting, utilizing a preliminary scan of the area with a time-of-flight camera and collaborating with an operator who controls the displacements of the mobile platform. Despite their capabilities, ground robots face limitations such as restricted mobility and reliance on scaffolding for large-scale artwork.

Aerial robots open up new possibilities for accessing unreachable places for humans or ground robots, avoiding expensive scaffolding, ladders, or heavy lifting equipment. Quadcopter drones have been used for urban projection mapping [4], long-exposure light painting [5], and spray painting on large 3D surfaces [6]. In particular, Tsuru Robotics [7]

developed a graffiti drone for urban advertising, based on a quadcopter platform equipped with an actuated spray can. Similarly, [8] demonstrated the feasibility of drone-based painting for large-scale mural artwork involving an autonomous drone and spray paint.

However, these methods rely on noncontact techniques such as spray painting, which struggle to achieve fine details and is sensitive to wind disturbances and aerodynamical wall effects caused by the drone's propellers. Additionally, it presents health risks to the system due to potential paint projections on the robot itself. Contact-based methods, on the other hand, typically require even surfaces, which limits their adaptability to diverse wall conditions.

Aerial robots in direct contact with the environment are generally force-controlled Aerial Manipulators (AM). Modeling the interaction forces exerted on the robot requires precise knowledge of friction, energy dissipation, storage, and restitution behaviors between the AM and its environment. Common approaches focus on in-flight estimations of contact forces without interaction models, as in [9]. Impedance control, as in [10], models the AM as a damped mass-spring system with adjustable properties and provides an adjustable and robust response to contact force uncertainties, eliminating the need for an exhaustive model. In [11], indirect force control is performed through 1D impedance control, where various forces are applied on an emergency wall press-button with a fixed arm extending from the AV frame. The results presented in [12] based on continuous contact for industrial inspection have also been applied by their authors to perform indoor-continuous line painting on a white board in an indoor environment. Pointillism – or painting using numerous small dots

<figure><img src="image_2.png" /><figcaption>Fig. 1: The "painter drone", https://youtu.be/e9uUS2yAsjY.</figcaption></figure>

of paint – is a technique well-suited to airborne applications. Since only a fraction of the whole surface is painted, this technique saves paint, limiting the size and the weight of the onboard paint tank. It also does not require continuous contact between the AV and the painted surface, allowing for only short, punctual interactions with the environment. Since wall surfaces may vary significantly (plaster, paint, wood, etc.),

Manuscript received: September, 17, 2025; Revised February, 16, 2025; Accepted March, 16, 2025.

This paper was recommended for publication by Editor Hyungpil Moon upon evaluation of the Associate Editor and Reviewers' comments.

Digital Object Identifier (DOI): see top of this page.

<footnote n="1">¹P. Susbielle, A. Hably and J.Dumon are with Grenoble Image Parole et Signal (GIPSA-lab - UMR Grenoble INP CNRS 5216) 38400 Saint-Martin-d'Hères, France name.surname@grenoble-inp.fr</footnote>
autonomous painting with continuous contact would require
a detailed interaction model, or online identification of this
model like in [13]. [14] proposes hybrid control approaches to
handle continuous contact with homogeneous contact surfaces.

STRAD (STreetArtDrone)<fnref n="1" /> is a project supported by the French National Research Agency which aims to perfectly reproduce a work signed by a renowned street artist in a high-rise building using a suspended aerial manipulator as presented in [15]. To this end, this work presents a first proof of concept for a "painter drone" capable of automatically reproducing an image on a wall using the pointillism technique.

This study focuses on the design and control of a painter
aerial vehicle, aiming to reproduce 2-dimensional drawings on
walls using the pointillism technique. The proposed technical
solution involves repetitive controlled bounces of an aerial
vehicle equipped with a spring-mounted front paint pad. Each
bounce prints a dot on the wall by depositing a small amount
of paint and contributes to the final pointillist drawing. Lateral
and vertical positioning of the aerial vehicle combined with
the control of the bounce frequency enable a precise paint
deposition on the surface. The bounce control strategy relies
on aerial manipulator impedance control tools but does not aim
to apply a controlled force against the wall. Instead, it focuses
on maintaining controlled bounces of the aerial vehicle (AV).

The painter aerial vehicle architecture is presented in Sec. II,
and its model is given in Sec. III. The control strategy is
detailed in Sec. IV and validated experimentally in Sec. V.
The paper ends with some conclusions.

## II. SYSTEM DESCRIPTION

### A. Conventions

Let $\mathcal{E} = \{\vec{e}_1, \vec{e}_2, \vec{e}_3\} \in \mathbb{R}^3$ be the Cartesian world frame centered in $o$ in the middle of the painted wall, $\mathcal{B} = \{\vec{b}_1, \vec{b}_2, \vec{b}_3\} \in \mathbb{R}^3$ the Cartesian body-fixed frame associated to the center of mass of the AV, and $\mathcal{S} = \{\vec{s}_1, \vec{s}_2, \vec{s}_3\} \in \mathbb{R}^3$ a Cartesian frame associated to the painting pad. Frames are depicted in Fig. 2 The intrinsic ZYX Tait-Bryan angles, also referred to as Yaw $\psi$, Pitch $\theta$ and Roll $\phi$, are used here to describe rotations. Let $R$ be the corresponding rotation matrix. $R_{\mathcal{E},\mathcal{B}} = R_{\phi,\theta,\psi}$ is the rotation from $\mathcal{E}$ to $\mathcal{B}$, i.e the AV's attitude. The rotation from $\mathcal{B}$ to $\mathcal{S}$ is described a single rotation $\alpha$ around $\vec{b}_2$. Let $R_{\mathcal{B},\mathcal{S}} = R_{0,\alpha,0}$ be the corresponding rotation.

The gimbal lock issue, which happens at a pitch angle
of $\theta = \pi/2$ using this convention, is not a concern in our
application as the drone will be mainly operating horizontally,
i.e. around small pitch angle values.

The AV will bounce on a vertical wall represented as a
straight plan $P_{wall}$. To simplify future experimental assess-
ments, the origin of the world frame $\mathcal{E}$ is located at the center
of the wall plane (see Sec. V-A).

### B. Painter drone

The painter drone depicted in Fig. 1 studied in this paper is
made of three main subsystems: a classical quadrirotor drone,

a rear thruster that generates a forward force, and a spring-
mounted painting pad to deposit paint on the wall. The spring-
mounted painting pad is connected to the drone frame through
a slider joint and a compression spring. At each impact, the
compression of the spring converts the kinetic energy of the
aerial vehicle (AV) into elastic potential energy. This energy
is returned to the AV after impact yielding to a bounce of the
AV. In other terms, a part of the kinematic energy necessary
to the task is provided by the spring and will reduce the
overall energy consumption of the system in comparison with
a system with no spring mecanism. The bouncing control
algorithm, described in Sec. IV makes use of this principle
of storage and restitution of the impact energy to maintain
a desired bouncing frequency. The painting pad is fed with
paint at each cycle: each impact creates a wave in the paint
tank yielding a transient over-pressure at the interface between
the tank and the pad. The force transmitted to the drone from
the painting pad through the spring referred to as $S\vec{F}_s$ in $\mathcal{S}$.

The additional rear thruster, visible in Fig. 1, is mounted at
the tail of the AV. To compensate for propeller drag and iner-
tial torque disturbances, two identical counter-rotating motor-
propeller units are used. The two tail motors are controlled
by the same control signal, and subsequently referred to as
a single Forward Propulsion System (FPS), generating a pure
force $S\vec{F}_p$ in $\mathcal{S}$.

The painting pad is maintained in the horizontal plane,
perpendicular to the wall, so the pitch angle of the AV should
stay constant. Since the FPS can only push the drone against
the wall and not pull, the quadcopter is used to generate an
antagonistic force by tilting its pitch angle backwards by a
fixed positive angle $\alpha$ as shown in Fig. 2. Then, flight is carried
out with the AV in a slightly tilted backward position. The AV
is built so that with a pitch angle $\theta = -\alpha$, the painting-pad
is orthogonal to the vertical wall. The AV in Fig. 2 features
$\alpha = 10^{\circ}$. Such a configuration yields a constant force offset on
the FPS to maintain the aerial vehicle quasi-static, depending
on $\alpha$ and on the weight of the AV. Modulating the thrust of
the FPS around this offset allows to generate a bidirectional
horizontal resulting force perpendicular to the wall. The two
phases of the painting process are illustrated in Fig. 2:

* Phase (1): No contact with the wall,

* Phase (2): Interaction with the wall, Paint is deposited by the painting pad, the spring compresses accumulating potential energy, and then expands, returning this energy to the drone.

To summarize, the forces that apply to the AV are:

* The FPS force $S\vec{F}_p$ in phases (1) and (2);

* The spring force $S\vec{F}_s$ in phase (2);

* The weight $m\vec{g}$ in phases (1) and (2), with $m$ the total mass of the vehicle.

* The quadrirotor thrust $B\vec{T}$ in $\mathcal{B}$ in phases (1) and (2).

## III. SYSTEM MODELING

This section focuses on deriving the dynamic model of the
system, including the over-actuated drone with its FPS and the
spring-mounted painting pad.

<footnote n="1">¹https://strad.dextair.com/home</footnote>
<figure><img src="image_3.png" /><figcaption>Fig. 2: Painting phases and frames: no interaction with the wall (1) - contact with the wall and spring compression (2).</figcaption></figure>

### A. Aerial Vehicle Modeling

A typical quadcopter control law has a cascaded architecture [16], with an inner high-bandwidth attitude control loop and an outer slower position control loop. The controller of the position loop computes a reference thrust and attitude that is fed to the inner loop (see Sec. IV).

In the remaining of this section, only the AV's position and speed control laws will be addressed. It is therefore assumed from here on that the attitude is regulated with a state-of-the-art high-bandwidth inner control loop. In practice, attitude control is achieved by an autopilot onboard the drone (see Sec. V-A), enabling to reach a higher loop frequency than what is feasible with a position loop using wireless transmissions. For accurate simulation, a detailed model like the one presented in [17] is used, taking into account motor dynamics and all the on-board control law dynamics.

1) **Dynamic Model:** Fig. 2 sums up main forces acting on the AV. Let $\zeta = [x \ y \ z]^T$ be the coordinates of the AV center of mass (COM) expressed in the world frame, and $\nu = [\dot{x} \ \dot{y} \ \dot{z}]^T$ be the speed of the AV COM.

The vehicle mass $m$ is supposed to be constant, as the actual volume of paint deposited on the wall can be neglected with respect to the weight of the drone. From Newton's second law, it comes in Earth frame $\mathcal{E}$:

$$ \begin{bmatrix} \ddot{x} \\ \ddot{y} \\ \ddot{z} \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \\ -g \end{bmatrix} + \frac{1}{m} R_{\psi, \theta, \phi} (\vec{B}T + R_{B,S}S\vec{F}_p + R_{B,S}S\vec{F}_s) \quad (1) $$

### B. FPS model

The FPS is made of two similar counter-rotating motor-propeller units (see Fig 6). The following considerations apply to a single motor-propeller unit. Classical 1D model of a single propeller assumes a squared relationship between the propeller rotation speed $w_p$ and the generated force $F_p$ [17], where the thrust coefficient $c_T$ is estimated on experimental force and rotation speed measurements, yielding $c_T = 4.2636e^{-7}[Ns^2rad^{-2}]$ with a Gemfan D76 5 blades propeller: $S\vec{F}_p = c_T w_p^2 \vec{s}_1$.

### C. Spring-Mounted Painting Pad Model

This section focuses on modeling the spring-mounted painting pad system and its interactions with the wall. The parameters of the proposed model will be identified using experimental flight data. Based on the work in [11] about 3-dimensional interactions between AV and external perturbations, interaction forces are modeled as a torque and a force applied at the AV COM. Even though a simplified model without interaction torque and friction is used in Sec. IV to build the bounce frequency controller, a 3-dimensional model will be used in Sec. VI to construct a realistic simulation environment.

1) **Modeling:** The target wall is supposed to be a perfect plane $P_{wall}$. The painting pad is in sliding connection with the rigid AM body, with one degree of freedom along the direction $\vec{s}_1$. Let $P_{wall}^I$ be the intersection point of wall plan $P_{wall}$ and a line passing through the AV's COM and parallel to $\vec{s}_1$. The distance $d$ of the AV's COM to the wall in the direction of the painting pad is $d = ||P_{wall}^I - \zeta||$. The spring's reaction force is assumed to be proportional to its compression. The spring's no-load length $l_0$ corresponds to its maximum extended position (relaxation). The static spring retraction force is null if the painting pad is not in contact with the wall, i.e if $d \ge l_0$. When the slider joint between the quadcopter carrier and the painting pad moves, additional static and kinetic friction forces are taken into account so that:

$$ \begin{cases} \|F_s\| = K_s(l_0 - d) - K_s^f \dot{d} - K_s^{df} \operatorname{sgn}(\dot{d}), & \text{If } d < l_0 \\ \|F_s\| = 0, & \text{Otherwise} \end{cases} \quad (2) $$

where $K_s$ is the spring stiffness, $K_s^f$ is the kinetic friction coefficient and $K_s^{df}$ is the stiction coefficient. The coordinates $\vec{B}\vec{S}\vec{F}_s$ of $\vec{F}_s$ in the body fixed frame $\mathcal{B}$ are: $\vec{B}\vec{S}\vec{F}_s = -\|F_s\|\vec{s}_1$

As in [9], it is assumed hereafter that there is no sliding between the painting pad and the wall during contact. This assumption is justified by a sufficient normal force during impact to ensure a significant friction cone. In addition, the direction of the impact is theoretically orthogonal to the wall, limiting in-plane forces. During motion, lateral forces are supposed to be small enough to be kept in the friction cone. Thus, during contact with a non-zero lateral velocity, the AV rotates around the contact point. The disturbance wrench on the rigid AV body due to the impact under lateral speed are assumed to be well rejected by inner loop control.

2) **Identification:** Model parameters described above are identified on an experimental data set. The spring stiffness coefficient $K_s$ is determined on a test bench with force and distance measurements. To identify the friction parameters $K_s^f$ and $K_s^{df}$, an experiment must be carried out where the painting pad is moving with respect to the rigid body. To this end, we propose a protocol where the painting pad hits the wall under a constant force imposed by the FPS yielding an equilibrium position. The experimental data set contains various iterations of this sequence with different FPS forces, and thus different retraction speeds $\dot{d}$, while the AV is tilted in painting position ($\theta = -\alpha$). The selected range of forward impact forces is chosen to reproduce conditions similar to the ones encountered later during painting.
However, in these experimental conditions, aerodynamic drag acts on the AV during motion along with the spring-related forces. Aerodynamic drag along $\vec{s}_1$ is modeled as $s\vec{F}_a = -K_a\dot{d}|d|\vec{s}_1$, so that the overall force $s\vec{F}^{exp}$ in $\mathcal{B}$ acting on the AV during experiment is :

$$s\vec{F}^{exp} = s\vec{F}_p + s\vec{F}_s + s\vec{F}_a \quad (3)$$

The model parameters are identified as the solutions of a non-linear optimization minimizing the squared error between the dynamic model (3) and the flight data.

<table><caption>TABLE I: Identified model parameters.</caption><thead><tr><th>Model parameter</th><th>K<sub>s</sub></th><th>K<sub>s</sub><sup>f</sup></th><th>K<sub>a</sub></th><th>K<sub>s</sub><sup>df</sup></th></tr></thead><tbody><tr><th>Estimated value</th><td>244</td><td>3</td><td>2</td><td>0.5</td></tr><tr><th>USI Unit</th><td>[N.m<sup>-1</sup>]</td><td>[N.s.m<sup>-1</sup>]</td><td>[N.s<sup>2</sup>.m<sup>-2</sup>]</td><td>[N]</td></tr></tbody></table>

## IV. CONTROL STRATEGY : DECOUPLED CONTROL

Controlling the AV bouncing frequency on the wall is crucial to control the final rendering of the fresco. At constant drone lateral speed, a higher frequency of impact on the wall results in higher impact speed and thus a higher color density of the painting. Conversely, a lower frequency produces a lower color density. This section describes the painter-drone decoupled control strategy. The strategy for converting a drawing into a drone trajectory and a bouncing frequency are discussed more precisely later in Sec. VI. The final rendering is the result of vertical and lateral drone movement in a plane parallel to the wall, and impact frequency. This task can be modeled as a continuous trajectory traveled according to a specified velocity profile, and a additional punching motion normal to that trajectory, at a specified frequency. A decoupled approach is proposed, to control the impact frequency separately from the drone positioning. The control architecture is illustrated in Fig.3 and detailed hereafter.

<figure><img src="image_4.png" /><figcaption>Fig. 3: Control strategy</figcaption></figure>

### A. Vertical and lateral AV control

Here, the full dynamic model of the system defined in eq. (1) is simplified following the assumption that lateral and vertical motion is decoupled from forward motion, and in painting condition : $\theta = -\alpha$. Lateral and vertical dynamics are only defined by $\ddot{y}$ and $\ddot{z}$. The AV is also assumed to be well controlled at a Yaw angle $\psi = 0$.

$$\begin{bmatrix} \ddot{y} \\ \ddot{z} \end{bmatrix} = \begin{bmatrix} 0 \\ -g \end{bmatrix} + \frac{1}{m} R_{\phi} \begin{bmatrix} 0 \\ c_{\alpha} T \end{bmatrix} \quad (4)$$

where $R_{\phi}$ is the reduction of $R_{\psi,\theta,\phi}$ for 2-dimensional rotations in the vertical $\vec{e}_2, \vec{e}_3$ plane. The simplified system given in eq. (4) can be written in a state space form featuring position and speed as state elements, thrust $T$ and Roll angle $\phi$ as control variables. Variables $T, \psi, \theta$ and $\phi$ are assumed to be well controlled by the onboard autopilot and motor controller (ESCs, see Sec. V-A), and their dynamics are neglected in this section.

As explained in Sec. II, the painting Phases (1) and (2) are carried out with the AV in a slightly tilted position. Pitch angle $\theta$ is imposed to be $\theta = -\alpha$, with $\alpha$ the angle ensuring the painting pad to be orthogonal to the wall while yielding a backward force from the projection of $T$ on the horizontal plane. A linear control of the system given in (4) is proposed around the tilted hovering position with the equilibrium control input $u_0 = [\phi_0 \ T_0]^T$, the equilibrium position $\zeta_0 = [0 \ 0 \ 0]^T$, and the equilibrium speed $v_0 = [0 \ 0 \ 0]^T$ so that :

$$\begin{cases} \phi_0 = 0 \\ \theta_0 = -\alpha \end{cases} \quad \begin{cases} T_0 = mg/c_\alpha \end{cases}$$

A linear model is obtained from the Taylor first order approximation of (4). This system is controllable, and stabilized by using a state feedback integral control which gain $K$ is calculated by LQR techniques :

$$\begin{bmatrix} \phi \\ T \end{bmatrix} = \begin{bmatrix} \phi_0 \\ T_0 \end{bmatrix} - K \begin{bmatrix} \zeta - \zeta^r \\ \nu - \nu^r \\ \int (\zeta - \zeta^r) \end{bmatrix} \quad (5)$$

where $\zeta^r$ and $\nu^r$ are position and speed references. During this painting phases, $\zeta^r$ will contain the 2D trajectory.

### B. Bounce Frequency Control: Double Half-Springs Model

This section outlines a strategy for controlling the bouncing frequency. Let $f_d$ represent the desired impact frequency in Hz. As stated in Sec. II, the goal is to maintain the painting pad in a horizontal plane. Lateral and vertical position control of the drone is discussed in Sec. IV-A. Thus, it is reasonable to use a one-dimensional approximation of the spring-mounted painting pad and the forward propulsion system in the control law synthesis presented here. This 1D approximation is aligned with the $\vec{e}_1 = \vec{s}_1$ axis in a zero yaw situation, and pitch angle $\theta = -\alpha$.

The proposed control strategy is to make the forward propulsion unit act like a virtual spring, so that the entire system behaves like the system of two half-springs working only in compression phase, as shown in Fig. 4.

* **Phase (1)**: $d > l_0$, no contact with the wall, FPS acts as a virtual spring.

* **Phase (2)**: $d \le l_0$, upon contact with the wall, FPS is in rest mode, only generating $F_p^0$ to counter-act thrust due to the backward tilt angle.

Let $K_c$ denote the stiffness of the virtual spring. $K_c$ will act as a control gain. Gain $K_s$ is the physical spring stiffness coefficient from Sec. III-C. In a friction-less ideal framework, let us find the controller gain $K_c$ in term of the desired frequency $f_d$. In both phases (1) and (2), the overall system
<figure><img src="image_5.png" /><figcaption>Fig. 4: Control strategy using two half-springs.</figcaption></figure>

acts as a single spring of stiffness $K \in \{K_c, K_s\}$. Newton's second law of motion gives the linear acceleration as:

$$md\ddot{d}(t) = -K(d(t) - l_0) \quad (6)$$

Solving for $t > 0$ and $d(0) = d_0$ yields $d(t) = d_0 \cos(wt)$, with $w = \sqrt{\frac{K}{m}}$ the natural pulsation of the spring stiffness $K$.

The time response of the double half-spring system, combining both phases (1) and (2) is illustrated in Fig. 5. By associating the stiffness $K_c$ and $K_s$ with phases (1) and (2) respectively, we can establish the natural pulsations of each phase, $w_c$ and $w_s$.

<figure><img src="image_6.png" /><figcaption>Fig. 5: Time response illustration of two half-spring model.</figcaption></figure>

Time intervals $t_1$ and $t_2$ in Fig. 5 are therefore the half-periods associated with the natural pulsations $w_c$ and $w_s$ where $w_c = \sqrt{\frac{K_c}{m}}$ is the virtual spring pulsation and $w_s = \sqrt{\frac{K_s}{m}}$ is the physical spring pulsation. The control objective is to control the frequency of the combined phases (1) and (2), thus $f_d = \frac{1}{\Delta t_0}$. Thus, one might write :

$$\frac{1}{2\Delta t_1} = \frac{w_c}{2\pi}, \qquad \frac{1}{2\Delta t_2} = \frac{w_s}{2\pi} \quad (7)$$

$$f_d = \frac{1}{\Delta t_1 + \Delta t_2} \iff K_c(f_d) = m \left( \frac{1}{\pi f_d} - \sqrt{\frac{m}{K_s}} \right)^{-2} \quad (8)$$

The simplifying assumption of the frictionless double half-spring model gives $K_c$ as a function of $f_d$. Hence, the overall bounce frequency does not depend on the impact speed. Impact speed, as well as initial position and velocity will only modify the bounces magnitude. Due to Mechanical Energy

conservation between initial conditions (i.e impact conditions) $d_0$, $\dot{d}_0$ and an operating point $d$, $\dot{d}$:

$$\left\{ \begin{array}{l} \frac{1}{2} m \dot{d}_0^2 + \frac{1}{2} K (d_0 - l_0)^2 = \frac{1}{2} m \dot{d}^2 + \frac{1}{2} K (d - l_0)^2 \\ \dot{d} = \pm \sqrt{\dot{d}_0^2 + \frac{K}{m} [(d_0 - l_0)^2 - (d - l_0)^2]} \end{array} \right. \quad (9)$$

From eq. 9, speed at impact, i.e $d_0 = l_0$, is therefore the initial speed $\dot{d} = \pm|d_0|$ according to the frictionless model.

However, as explained in Sec. III-C, dissipation effects (mechanic and aerodynamic friction) play a significant role in the actual behavior of the system. A corrective term is therefore added, aiming at re-injecting energy into the system during phase (1). Thus the desired force from the forward propulsion unit $F_p$ is expressed as the sum of $F_p^0 = s_\alpha T$ that compensates the projection of the AV thrust $T$ among $\vec{s}_1$ and the control forces:

$$\left\{ \begin{array}{ll} F_p = F_p^0 - K_c(f_d)(d - l_0) + F_c^i, & \text{If } d > l_0 \\ F_p = F_p^0, & \text{If } d \le l_0 \end{array} \right. \quad (10)$$

where $-K_c(f_d)(d - l_0)$ is the force from the half-spring model to ensure oscillation frequency $f_d$ under frictionless assumption, and $F_c^i$ is the friction compensation term. This term is dedicated to maintaining impact speed from one bounce to another. According to eq. (9), desired impact speed $\dot{d}^r$ can be freely chosen. In practice, $\dot{d}^r$ has to be chosen so that the resulting forces are feasible by the system, i.e. no saturation of the FPS nor reaching the maximum retraction of the spring mounted paint pad.

$$\left\{ \begin{array}{ll} F_c^i = -K_c^i(\dot{d} - \dot{d}^r), & \text{If } v_d > 0 \\ F_c^i = 0, & \text{Otherwise} \end{array} \right. \quad (11)$$

with $K_c^i$ speed control gain. $K_c^i$ can be obtained through optimal control approaches (LQR) or pole placement for example.

### C. Discussion on stability

Impact frequency control is open-loop, in the sense that no real-time estimation of the actual impact frequency is used. The frequency control strategy relies on the system's ability to return to the ideal double half-spring model behavior.

To ensure non-divergence of the system, its initial energy from one bounce to the next must remain constant. According to eq. (9), as $d_0 = l_0$, initial energy of the system is the kinetic energy $\frac{1}{2} m \dot{d}_0^2$. Thus, maintaining constant impact speed leads to energy conservation. The speed control term $F_c^i$ in eq. (11) is designed to ensure that the impact velocity remains constant from one bounce to the next, leading to no reduction (energy dissipation) nor amplification (loss of stability) of the total system energy.

## V. EXPERIMENTAL VALIDATION

### A. Flight Experimental Setup

The experimental setup used in this work is based on a custom-built AV with a classic on-board architecture: the flight controller (PX4 Autopilot) controls angular velocities, angular
positions, and performs data fusion for estimation and management of the device's protocols and securities. The impact frequency and position control law of the AV is computed on a ground station running Matlab/Simulink. The experiment is performed indoor. Position measurement is acquired in real-time through motion capture system. Communication between the AV and the ground station is a WiFi-based Mavlink transmission. Refer to Fig. 6 for the list of material and the experimental setup. The ESCs (Electronic Speed Controller) used to control the 6 brushless motors ensure accurate closed-loop speed control and therefore precise force control running a custom version of AM32 firmware available at the website <fnref n="2" />.

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

<table><caption>Fig. 6: GIPSA-lab Setup</caption><thead><tr><td>Item</td><td>Description</td></tr></thead><tbody><tr><td>Flight controller</td><td>Holybro Kakute H7 PX4 v1.14 firmware</td></tr><tr><td>Battery</td><td>Tatu R-Line 4S 1500mAh</td></tr><tr><td>Telemetry</td><td>Drotek radio telemetry 433Mhz</td></tr><tr><td>Radiocontroller and reciever</td><td>FrSky Taranis X9D and FrSky R-XSR</td></tr><tr><td>ESC and Motor</td><td>HGLRC 4in1 Zeus 45A ans T-Motor F60proV 1750 Kv</td></tr><tr><td>Propellers</td><td>T-Motor 5147 5" and Gemfan D76 3"</td></tr><tr><td>Wifi Communication</td><td>ESP32 dev kit with serial/wifi bridge firmware</td></tr><tr><td>Motion capture</td><td>Vicon cameras</td></tr></tbody></table>

The drawing is painted on a white board setup in a secure indoor flying arena. The painting pad is based on a Dripstick refillable street art marker by Molotow and 3D printed parts for mounting the spring mechanism. The painting pad diameter is 10mm. For these experiments, erasable whiteboard ink is used. Three sets of motion capture markers are installed on the board for real-time measurement of three points, building the wall plane. A fourth set of markers is mounted on the drone.

## B. Frequency Control Validation

Experiment video is available at: https://youtu.be/e9uUS2yAsjY. We remind here that the origin of the world frame $\mathcal{E}$ is still fixed at the center of the wall, so that the $x = 0$ position is on the center of the white board (a.k.a wall) and positive $x$ heading to through the wall. The aim of this section is to experimentally demonstrate the bounce frequency controller performance, and to empirically justify the assumption that bounce control can be decoupled from the AV's lateral and vertical control, as stated in Sec. IV.

To this end, the following test scenario is proposed: the painter-drone is ordered to take-off and move in front of the wall, then without any lateral or vertical movement, the system is given a constant desired impact frequency $f_d^1 = 1.2$ Hz over

a first time interval $t \in \{15s, 28s\}$, then a second desired frequency $f_d^2 = 0.8$ Hz is given over a second time interval $t \in \{32s, 52s\}$. Finally, at a third desired frequency $f_d^3 = 1$ Hz to be achieved over a third time interval $t \in \{60s, 120s\}$ is given, while two circles of constant radius are followed by the aerial vehicle as a combined vertical and lateral movement. The actual frequency of the bounces is evaluated afterwards, through Fourier transform of the drone's forward displacement measurement. The desired frequencies are expected to be respected for each interval. During the third interval, the drone's motion should not have a significant impact on the effective bounce frequency to validate the decoupling assumption. Experimental results are displayed in Fig. 7.

<figure><img src="image_8.png" /><figcaption>Fig. 7: Experimental bounce control validation</figcaption></figure>

a) Vertical and Lateral Control: Experimental data in Fig. 8 and Fig. 7 support the hypothesis of decoupling lateral and vertical dynamic and bounce behavior for control. Indeed, position tracking error of painted dots remains under $\pm 0.02$ m, even during the drawing of the circles.

<figure><img src="image_9.png" /><figcaption>Fig. 8: Point and circle drawing.</figcaption></figure>

b) Bounce Frequency Control: The norms of the Fourier transforms of the forward displacement (bounce axis) calculated over the three test intervals at constant frequency are displayed in Fig. 9 and Table II. Results show a good frequency control, with an error from 0.03 Hz to 0.15 Hz.

The total impact frequency error results from the accumulated error over phases (1) and (2). Lower impact frequencies allow more time for these errors to integrate, leading to greater deviations. The simplified model used to obtain the virtual spring stiffness $K_c(f_d)$ for a desired frequency $f_d$, does not

<footnote n="2">²https://github.com/gipsa-lab-uav/AM32-MultiRotor-ESC-firmware</footnote>
account for friction forces nor the energy re-injection forces. This simplification affects the time of impact, influencing the overall oscillation frequency. At lower frequencies, extended time spend in phase (2) amplifies the final error.

<figure><img src="image_10.png" /><figcaption>Fig. 9: Fourier transform of each test interval</figcaption></figure>

<table><caption>TABLE II: Impact frequency controller performances</caption><thead><tr><th>Drawing</th><th>First point</th><th>Second point</th><th>Two circles</th></tr><tr><th>Time interval</th><th>t ∈ {15s, 28s}</th><th>t ∈ {32s, 52s}</th><th>t ∈ {60s, 120s}</th></tr></thead><tbody><tr><th>Desired frequency [Hz]</th><td>1.2</td><td>0.8</td><td>1</td></tr><tr><th>FFT peak frequency [Hz]</th><td>1.16</td><td>0.65</td><td>0.97</td></tr><tr><th>Frequency error [Hz]</th><td>0.04</td><td>0.15</td><td>0.03</td></tr></tbody></table>

Injecting energy by impact velocity control is verified in Fig. 8, scope 4, which also accounts for the good tracking of desired frequencies. The forward propulsion control shown on the bottom figure of Fig. 8 is not saturated in rotation speed, and is the image of the virtual half-spring used in the control hypothesis in Sec. IV-B. This signal oscillates around the velocity value generating the equilibrium force $F_p^0$ described in Sec. III. Nevertheless, the physical spring does not reach its maximal position (saturation) neither. Note that the stiffness of the physical spring is much higher than the one chosen for the virtual one under AV physical limits. This leads to a half-period very short in comparison to the second one where the AV has to behave as another spring. This highlights the pertinence of the use of a physical spring for this type of task, reducing the energy consumption as well as increasing the dynamic of the whole system. The results analyzed below validate the bouncing frequency control as well as the control of a continuous line trajectory tracking and they make the basis of the next section, dedicated to a short exploration of drawing techniques from 2D images to a pointillist airborne made replica.

## VI. FROM IMAGE TO AIRBORNE MADE WALL PAINTINGS

This section aims to propose a simple strategy to convert gray-scale images into a trajectory and impact frequency profile based on the work described above.

The proposed approach is based on edge detection, applied in the image Fig. 10, slide (1). First, contours of interest are extracted and converted into 2D positions in the wall plane, Fig. 10, slides (2) and (3). The trajectory is then interpolated over a flight duration ensuring feasibility within the AV's vertical and lateral control limits (Fig. 10, slide (4)). Trajectory feasibility topic is beyond this paper's scope, thus the feasibility criteria is arbitrarily chosen to limit lateral and vertical speed and acceleration to the AV's capabilities. Finally,

impact frequency is mapped from path velocity, maintaining a constant spatial dot distribution. Velocities are clamped between $f_d = 0.8$ Hz and $\bar{f}_d = 1.2$ Hz. This ensures a uniform distance between consecutive impact points along the trajectory.

<figure><img src="image_11.png" /><figcaption>Fig. 10: Trajectory generation for drawing</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>Fig. 11: Simulation and flight positions</figcaption></figure>

<table><caption>TABLE III: Simulated and real flight performances</caption><thead><tr><th></th><th>Simulation</th><th>Flight</th></tr></thead><tbody><tr><th>Position tracking RMSE y [m]</th><td>0.0171</td><td>0.0190</td></tr><tr><th>Position tracking RMSE z [m]</th><td>0.0195</td><td>0.0198</td></tr><tr><th>Number of printed dots [-]</th><td>128</td><td>122</td></tr></tbody></table>

This 2-minutes long trajectory is tested indoor with the painter-drone and compared with the model-based simulator described in Sec. III. The root mean square errors (RMSE) between effective and desired positions as well as the number of painted points, both in simulation and in flight, are given in Table III. These results highlight the good fitting of the simulator to the real system. Experimental flight and simulation data are shown in Fig. 11 and Fig. 12.
## VII. CONCLUSION, FUTURE WORK AND PERSPECTIVES

This study introduces an innovative airborne robotic approach for autonomous pointillist wall painting: a dot-painter aerial vehicle, featuring a quadrirotor architecture augmented by a forward propulsion system and a spring-mounted painting pad to perform precise paint dot-deposition on a wall along specified trajectories. A dynamic model of the system is developed and experimentally validated. An autonomous piloting algorithm is designed to control the bounce frequency and the vertical and lateral positions. Its effectiveness is demonstrated through indoor mural painting tests.

<figure><img src="image_13.png" /><figcaption>Fig. 12: Experimental Drawing Scenario</figcaption></figure>

The proposed solution converts a drawing into a cloud of points deposited on the target wall. The final rendering depends on the statistical distribution of the points along the trajectory, as the exact position of each point is neither known nor controlled. These approaches will therefore not enable the exact point-to-point replication of a pointillist work. This approach then introduces a layer of artistic abstraction between the original image and the final creation. The last chapter of the associated video (https://youtu.be/e9uUS2yAsjY) offers a more concrete simulated example of rendering with a larger number of points (≈ 2200): the color density of the desired figure is remapped into impact frequency profile while the robot is moving at a constant vertical and lateral speed (1h 20min flight time, i.e 15 battery swap). Furthermore, the kinetic energy dissipated during impact allows more or less paint to be deposited on the wall due to the inertia of the paint tank and the deformation of the pad under impact, resulting in a variable diameter of the dot. By adjusting the desired impact speed, the size and density of each dot can be tuned to bring even more detail to the final painting. An MPC-type optimal control approach for multi-saturated systems might appear appropriate to address this particular problem. Finally, the use of a spring has proven its utility, allowing fast paint deposition cycles with reasonable energy consumption. In particular, the stiffness of this spring can be chosen higher than the stiffness of the virtual one to shorten the overall cycle duration.

Future work will focus on extending the system to outdoor environments, addressing the challenge of precise positioning, environmental disturbances, and surface variability. The use of outdoor positioning systems via visual odometry methods, as in [8], will be investigated to ensure precise location and trajectory tracking without relying on motion capture systems,

proving the scalability and adaptability of the system for real-world applications as a solution to create an autonomous aerial robotic work of art.

## ACKNOWLEDGMENT

Research and equipment has been partially supported by ROBOTEX 2.0 (Grants ROBOTEX ANR-10-EQPX-44-01 and TIRREX ANR-21-ESRE-0015) and STreetArt-Drone (ANR-21-CE33-0021). The authors wish to thank Jacques Gangloff for his advice and his useful comments.

## REFERENCES

[1] Youngbum Jun, Giho Jang, Baek-Kyu Cho, Joel Trubatch, Inhyeok Kim, Sang-Duck Seo, and Paul Y Oh. A humanoid doing an artistic work-graffiti on the wall. In *2016 IEEE/RSJ IROS*, pages 1538–1543. IEEE, 2016.

[2] Yan Lu, Josh HM Lam, and Yeung Yam. Preliminary study on vision-based pen-and-ink drawing by a robotic manipulator. In *2009 IEEE/ASME International Conference on Advanced Intelligent Mecha-tronics*, pages 578–583. IEEE, 2009.

[3] Ehsan Asadi, Bingbing Li, and I-Ming Chen. Pictobot: A cooperative painting robot for interior finishing of industrial developments. *IEEE Robotics & Automation Magazine*, 25(2):82–94, 2018.

[4] Jürgen Scheible, Markus Funk, Klen Copic Pucihar, Matjaz Kljun, Mark Lochrie, Paul Egglestone, and Peter Skrlj. Using drones for art and exergaming. *IEEE Pervasive Computing*, 16(1):48–56, 2017.

[5] Roman Ibrahimov, Nikolay Zherdev, and Dzmitry Tsetserukou. Drone-light: Drone draws in the air using long exposure light painting and ml. In *2020 29th IEEE International Conference RO-MAN*, pages 446–450. IEEE, 2020.

[6] Anurag Sai Vempati, Mina Kamel, Nikola Stilinovic, Qixuan Zhang, Dorothea Reusser, Inkyu Sa, Juan Nieto, Roland Siegwart, and Paul Beardsley. Paintcopter: An autonomous uav for spray painting on three-dimensional surfaces. *IEEE RA-L*, 3(4):2862–2869, 2018.

[7] Anastasia Uryasheva, Mikhail Kulbeda, Nikita Rodichenko, and Dzmitry Tsetserukou. Dronegraffiti: autonomous multi-uav spray painting. In *ACM SIGGRAPH 2019 Studio*, pages 1–2, 07 2019.

[8] Andrei A. Korigodskii, Oleg D. Kalachev, Artem E. Vasiunik, Matvei V. Urvantsev, and Georgii E. Bondar. Flying robotics art: Ros-based drone draws the record-breaking mural. In *2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)*, pages 5964–5969, 2024.

[9] Xiangdong Meng, Yuqing He, Qi Li, Feng Gu, Liying Yang, Tengfei Yan, and Jianda Han. Contact force control of an aerial manipulator in pressing an emergency switch process. In *2018 IEEE/RSJ IROS*, pages 2107–2113, 2018.

[10] Sangyul Park, Jeongseob Lee, Joonmo Ahn, Myungsin Kim, Jongbeam Her, Gi-Hun Yang, and Dongjun Lee. Odar: Aerial manipulation platform enabling omnidirectional wrench generation. *IEEE/ASME Transactions on Mechatronics*, 23(4):1907–1918, 2018.

[11] Grzegorz Malczyk, Maximilian Brunner, Eugenio Cuniato, Marco Tognon, and Roland Siegwart. Multi-directional interaction force control with an aerial manipulator under external disturbances. *Auton. Robots*, September 2023.

[12] Marco Tognon, Hermes A. Tello Chávez, Enrico Gasparin, Quentin Sablé, Davide Bicego, Anthony Mallet, Marc Lany, Gilles Santi, Bernard Revaz, Juan Cortés, and Antonio Franchi. A truly-redundant aerial manipulator system with application to push-and-slide inspection in industrial plants. *IEEE RA-L*, 4(2):1846–1851, 2019.

[13] Weixuan Zhang, Lionel Ott, Marco Tognon, and Roland Siegwart. Learning variable impedance control for aerial sliding on uneven heterogeneous surfaces by proprioceptive and tactile sensing. *IEEE RA-L*, 7(4):11275–11282, Oct 2022.

[14] Georgios Darivianakis, Kostas Alexis, Michael Burri, and Roland Siegwart. Hybrid predictive control for aerial robotic physical interaction towards inspection operations. In *2014 IEEE ICRA*, pages 53–58, 2014.

[15] Ethan Niddam, Jonathan Dumon, Loic Cuvillon, Sylvain Durand, Stephane Querry, Ahmad Hably, and Jacques Gangloff. Design of a suspended manipulator with aerial elliptic winding. *IEEE RA-L*, 9(9):7939–7946, 2024.

[16] Dario Brescianini and Raffaello D'Andrea. Tilt-Prioritized Quadrocopter Attitude Control. *IEEE Transactions on Control Systems Technology*, 28(2):376–387, March 2020.

[17] Estéban Carvalho, Pierre Susbielle, Nicolas Marchand, Ahmad Hably, and Jilles S Dibangoye. Event-based neural learning for quadrotor control. *Autonomous Robots*, 47(8):1213–1228, 2023.