Passive Obstacle Aware Control to Follow Desired Velocities

—Evaluating and updating the obstacle avoidance velocity for an autonomous robot in real-time ensures robustness against noise and disturbances. A passive damping controller can obtain the desired motion with a torque-controlled robot, which remains compliant and ensures a safe response to external perturbations. Here, we propose a novel approach for designing the passive control policy. Our algorithm complies with obstacle-free zones while transitioning to increased damping near obstacles to ensure collision avoidance. This approach ensures stability across diverse scenarios, effectively mitigating disturbances. Validation on a 7DoF robot arm demonstrates superior collision rejection capabilities compared to the baseline, underlining its practicality for real-world applications. Our obstacle-aware damping controller represents a substantial advancement in secure robot control within complex and uncertain environments.


I. INTRODUCTION
Robots operating in unstructured, dynamic environments must balance adapting the path to the surroundings and following a desired motion.In human-robot collaboration, they must efficiently complete their tasks while ensuring safe compliance in the presence of potential collisions.
Velocity adjustments based on real-time sensory information are essential in complex and dynamic environments.Achieving this necessitates algorithms that are easily configurable and capable of rapid evaluation.As such, closedform control laws eliminate the need for frequent replanning.Dynamical Systems (DS) is a valuable framework for representing such desired motion [1] where the behavior of the desired first-order DS is approximated through suitable controllers.
Most widely used robotic systems consist of rigid materials.Consequently, the interaction of these robotic systems with the surroundings leads to abrupt energy transfers, posing the risk of damage to the robot and its environment.However, modern robotic platforms are equipped with force and torque sensing capabilities that enable precise control over the forces exerted by the robot.However, integrating these sensors makes the feedback controller more complex.The robot must achieve its designated position by following a desired velocity profile while remaining compliant with interaction forces.The control problem of balancing position, velocity, and force constraints is addressed by impedance controllers [2], [3] .While tipping over the closed pasta box on this dinner table setup might be acceptable.Yet, the delicate wine glasses demand careful handling to prevent breakage.
Obstacle avoidance is fundamental to motion control, with reactive approaches capable of handling dynamic and intricate environments [1].The controller should remain compliant in free space while adhering to the desired motion when getting close to the obstacle.Furthermore, when encountering surfaces like fragile glass on a table, the controller must adopt stiffness to prevent a collision, yet it should be compliant when interacting with an operator (Fig. 1).
This work introduces a novel approach incorporating dynamic obstacle avoidance using DS and variable impedance control, enhancing adaptability, reactivity, and safety in robotic movements.It empowers robots to navigate complex environments, proactively avoiding collisions and rejecting disturbances.Our approach is evaluated through simulations and an implementation on a 7-degree-of-freedom (7DoF) robot arm, demonstrating robust and safe control in realworld scenarios.
A. Related Work 1) Force Control: Impedance control, a powerful feedback algorithm, effectively applies Cartesian impedance to nonlinear manipulators' end-points [2], [4] .The controller replaces the computationally intensive inverse kinematics with the more straightforward forward kinematics.Impedance control establishes a dynamic relationship between desired position, velocity, and force, offering a holistic control framework.Initially, impedance controllers employed constant stiffness, but researchers have explored various dynamic control parameter approaches to enhance adaptability in complex environments [5], [6].However, introducing dynamic parameters into the control framework requires taking special care of the system's stability.Furthermore, admittance control is designed to adapt to external forces while remaining stable contact [7].Admittance control can be interpreted as a special type of impedance control.
Passive velocity controllers use a state-dependent velocity, converted into a control force through a damping control law.Since the controllers have variable damping parameters, stability can be guaranteed using storage tanks [8].Furthermore, complex control parameters can be learned from human demonstrations.By continuously adapting the parameters, the controller can be observed to improve its tracking performance in direct human-robot collaboration tasks [9].However, high compliance often results in decreased motion following.Yet, carefully designing the damping matrix, which increases stiffness in the direction of motion but remains compliant otherwise, results in improved convergence [10].Combining impedance controllers with admittance controllers can be used to increase accuracy in cooperative control [11].However, these controllers' adaptations focus on improving movement accuracy rather than actively rejecting disturbances.
Impedance controllers play an important role in interaction tasks, as in these situations, the robot is subjected to forces that are hard to predict precisely.However, they must be actively managed to ensure stable contact without damage occurring.In these situations, passive controllers using storage tanks based on the system's energy allow to limit contact force [12].A general framework can be used to ensure that position-, torque-, and impedance controllers exhibit passivity during interaction tasks.This is achieved by interpreting the torque feedback as the shaping of the motor inertia.It allows flexible robot arms for complex interaction tasks, such as insertion or wiping [13].By sensing the interaction force and actively adapting the trajectory based on the physical interaction force and the virtual repulsive force from the obstacle.This can be used for obstacle-aware motion generation [14].
Teleoperated systems of robot arms come with control delays and require a closed-loop controller of the robot that can adapt autonomously, ensuring stable and reliable performance.Passive controllers present themselves perfectly for such a task [15].This method addresses the intricate dynamics of interactive systems, ensuring stable and reliable performance.A similar approach involves slowly updating the desired position while incorporating a spring-damper model through an impedance controller, enabling seamless interaction with the teleoperated robotic system [16].However, these models require human input for active collision avoidance.
Many impedance controllers with time-varying control rely on energy tanks to ensure stability.This is a virtual state, which is filled or emptied depending on the controller command.Limiting the energy tank to a maximum value ensures the system's stability [17].However, when this limit is reached, the controller is constrained and interferes with the controller's optimal functioning.This can result in the controller not achieving some functionalities, such as collision avoidance.Alternatively, the impedance controller can be constrained by adapting the damping and stiffness and the rate of change based on a Lyapunov function [18].
2) Obstacle Avoidance: In dynamic environments, obstacle avoidance needs to be evaluated to fast ensure safe navigation.Repulsive force fields, that pointing away from obstacles create a collision-free motion [19].However, these artificial potential fields are susceptible to local minima, which led to the introduction of navigation functions, i.e., a global function that creates repulsive fields while ensuring a single, global minimum [20].Such functions depend on the distribution of the obstacles and are hard to adapt to dynamic environments and high dimensional spaces [21].
Passive controllers can also track the desired motion of the artificial potential field while compensating for Coriolis and centrifugal forces [22].Nonetheless, these methods lack the guarantee of disturbance repulsion around obstacles, which is addressed by the integration of circular fields, which rotates the robot's path around the obstacles [23].This allows forcecontrolled navigation in cluttered environments, yielding convergence for simple obstacles [24].Conversely, repulsive fields can be combined with elastic, global planning [25] for improved convergence.This allowed adding a repulsive force from the obstacle, ensuring collision avoidance [26].However, methods based on artificial potential fields are prone to local minima in cluttered environments.
Traditional tracking controllers often require complex linearization or simplification methods.However, a class of geometric tracking controllers enables exact control of nonlinear mechanical systems with low computational cost [27].By reformulating control problems as a specific class of optimal controllers, this approach facilitates the derivation of standard control problems in robotics [28].As a result, many geometric controllers directly output a control force and hence do not rely on an additional (impedance) controller.Integrating local Riemannian Motion Policies (RMP) has led to globally stable force-controlled motion [29].Moreover, advancements in position-dependent Riemannian metrics allow for improved task design using RMP and reactive force control under constraints [30].Geometric fabrics have emerged as a valuable mathematical tool for shaping a robot's nominal behavior while capturing essential constraints like obstacle avoidance, joint limits, and redundancy resolution [31].Combining Finsler geometry and geometric fabrics has further enhanced path consistency [32].Integrating geometric fabric methods into classical mechanical systems has enabled various physical behaviors, notably exemplified in multi-obstacle avoidance for a 7DoF robot arm [33].Despite these significant achievements, the parametrization of geometric methods and their application to general systems remains challenging and hinders their wide acceptance.
Harmonic potential functions can ensure the absence of local minima in free space [34].In previous work, we combined harmonic potential functions with the dynamical system framework to obtain reactive, local minima-free mo-tion [1], [35].It allows for generating a desired velocity based on the robot's position in real time.For implementation on a torque-controlled robot arm, we utilized a passive controller that closely adheres to the desired velocity [10].However, one of the limitations of the passive controller is its inability to account for the physical surroundings.This makes the robot susceptible to disturbances close to obstacles, potentially leading to collisions.Although DS passivecontrolled robots work well in interactive scenarios, they cannot ensure they navigate through an obstacle environment collision-free.For example, they often give in when being pushed toward an obstacle.This work presents a method to address this problem by modifying the passive control law design, making the controller aware of its environment.

B. Contribution
We introduce a passive controller that incorporates into the feedback control loop as visualized in Figure 2. In this work, we make the following contributions: • A novel obstacle-aware passive controller (Sec.III) • A passivity guarantee (without storage tank) which applies to general damping controllers (Theorem 3.1) • A collision avoidance analysis which provides insight into the path consistency around obstacles (Sec.IV) • Discrete-time analysis to enable control parameter design which ensures stability (Section A) • Implementation and testing on 7DoF robot arm (Sec.V) Fig. 2: The desired velocity f b (ξ) can result from a learned velocity field or pointing towards a desired attractor ξ a .The desired velocity is used to evaluate the obstacle avoidance velocity f (ξ), fed into the force controller to obtain the control force τ c.In order to achieve collision avoidance, the distance function Γo(ξ), the normal direction no(ξ), and the reference direction ro(ξ) are evaluated for each obstacle o = 1, ..., N obs .

II. PRELIMINARIES
Let ξ ∈ R N describe the system's configuration in an N ≥ 2 dimensional space, e.g., the robot's joint or Cartesian space positions.The function f (ξ) : R N → R N represents a smoothly defined dynamical system (DS) describing the desired velocity at a given state ξ.The first and second-order time derivatives are denoted by one and two dots over the symbol respectively, i.e., ξ = d dt ξ is the systems velocity, and ξ = d 2 dt 2 ξ is the acceleration.In general, superscripts are used for variable names, whereas subscripts are used for enumerations.The development of the presented work is for starshaped obstacles, i.e., shapes for which a reference point exists, from which a line in any direction only crosses the surface once [1].

A. Obstacle Avoidance
This section is based on development proposed in [1], [36], these articles contain more deteailled elaborations.
1) Obstacle Definition: The distance function Γ(ξ) : R N \ X i → R ≥1 divides the space into three regions: Exterior points: Boundary points: Interior points: By construction Γ(•) increases monotonically with increasing distance from ξ r .In this work, we use: with b ∈ R >0 , such that ξ b ∈ X b , i.e., on the surfacee, and R 0 ∈ R >0 is the distance scaling.We use R 0 = 1.
2) Avoidance Algorithm: Let us assume the base velocity f b (ξ) : R N → R N , which describes the desired, configuration-dependent motion of the robot.The obstacle avoiding velocity f (ξ) : X e → X e can be achieved by a simple matrix multiplication (or modulation) as follows:c where the tangent directions e (•) ∈ R N are perpendicular to the surface normal n(ξ) = ∇Γ(ξ) ∈ R N , see Fig. 3.The reference vector r(ξ) = (ξ − ξ r ) /∥ξ − ξ r ∥ is pointing away from the reference point ξ r ∈ R N .The diagonal values λ (•) in (3) are often referred to as eigenvalues since they modify the length of the input velocity in specific directions.The eigenvalue in reference direction λ r (ξ) ≤ 1, is designed to reduce the velocity towards the obstacle.Conversely, the velocity increases along the tangent direction using λ e (ξ) ≥ 1.The eigenvalues in reference direction λ r and tangent direction λ e are defined as: with the continuous distance function Γ(ξ) given in (2).The velocity f (ξ) (gray) avoids collision with the obstacles and converges towards the attractor (star).
Modifying the base velocity f b (ξ) with these eigenvalues values and (3) leads to obstacle-avoiding dynamics f (ξ) which generate converging motion around starshaped obstacles.

B. Force Control 1) Rigid Body Dynamics:
A force-controlled system is subject to acceleration, inertia, and external disturbances.Its general rigid-body dynamics based on the state ξ: where we have the mass matrix of the robot M(ξ) ∈ R N ×N , the Coriolis matrix C(ξ, ξ) ∈ R N , the gravity vector g(ξ) ∈ R N ), the control torque τ c ∈ R N , and the external torque, also referred as disturbance, τ e ∈ R N .
2) Damping Controller: Damping control [10] offers a powerful method for computing control forces from a velocity field.This controller provides selective disturbance rejection based on the direction of the desired motion.Typically, the controller is configured with high damping along the direction of motion, ensuring rapid convergence of the robot's velocity to the desired value and achieving excellent tracking performance.In contrast, the controller exhibits high compliance in the direction perpendicular to the motion, enabling flexible behavior and greater resistance to external forces.The passive control force is defined as This control law embeds a gravity compensation term g(ξ) ∈ R N and a positive-definite damping term, which dampens the difference between the desired velocity f (ξ) and the actual velocity ξ.The positive definite damping matrix D(ξ) ∈ R N ×N is given as: where Q(ξ) = [q 1 q 2 ... q N ] is an orthonormal basis matrix, of which the first vector is pointing in the desired direction of motion The diagonal matrix S(ξ) ∈ R N ×N consists of damping factors s i ∈ R >0 in directions i = 1, ..., N .This design allows the separate design of the damping in the direction of motion and perpendicular to the motion.Increased consistency with the desired velocity is achieved through a high value for the first damping factor.Conversely, the damping in the remaining directions is lower for more compliance perpendicular to the motion, i.e., s i /s 1 ≪ 1, i = 2, ..., N .

C. Stability Analysis
Considering varying control parameters carefully is crucial, as such a design can inject energy into a system, potentially leading to unstable behavior and damaging the system [17].In human-robot interaction, the robot faces external disturbances of unknown nature.To achieve stable and bounded behavior in the face of such disturbances, passivity analysis is a valuable tool.By employing passivity analysis, the control system can be designed to maintain stable responses (bounded system) in the presence of any external force (bounded input).
Definition 2.1 (Passivity [37], [38]): A dynamical system with input u ∈ U and output y ∈ Y is passive with respect to the supply rate s : U × Y → R if, for any u : R >0 → U and any time t * ≥ 0 the following is satisfied where S(t) ∈ R ≥0 is the storage function.
The feedback loop combining two passive systems results in a passive system [38].Hence, if the controller is passive, its application to a (passive) environment-hardware system results in a passive system.

D. Problem Statement
Following assumptions are made about the desired velocity f (ξ): 1) f (ξ) is continuous for all reachable states.
2) f (ξ) is bounded, i.e., there exists a constant with the normal n o and distance Γ o of the o-th obstacle.Note that velocity obtained using the obstacle avoidance method described in (3), fulfills these conditions if base velocity f b (ξ) is continuous and bounded.

III. OBSTACLE-AWARE PASSIVITY
We propose a novel controller, which ensures passivity as defined in (6) but adapts the damping matrix given in (7) based on the desired velocity ξ and obstacles in the surrounding.Far away from obstacles, the system is designed to follow the initial velocity, but approaching the obstacle increases the damping, decreasing the chance of a collision.
Hence, the damping matrix D(ξ) ∈ R N ×N smoothly changes from being aligned with the direction of the velocity, as used in [10], to be aligned with the averaged normal of the obstacles.The desired damping matrix transitions between velocity preserving and collision avoidance using a smoothly defined linear combination: The damping matrix is made up of two components: the velocity damping.D f ∈ R N ×N which prioritizes following the desired velocity similar to [10], and the obstacle damping D o ∈ R N ×N which is designed to reject disturbances towards obstacles.The two damping matrices are positive definite and are smoothly summed using the danger weight w(ξ) ∈ [0, 1].Far away from obstacles the weight reaches w(ξ) = 0, whereas w(ξ) = 1 when approaching a boundary: Fig. 4: The damping matrix enforcing desired velocity following D f has the first basis vector q f 1 which points along the avoidance velocity f (ξ).The damping matrix to enforce collision avoidance D obs uses the normal n(ξ) to construct the first direction of the decomposition basis q obs 1 .
The critical distance Γ crit ∈ R >0 defines the distance where the system increases the damping towards the obstacle.D f (ξ) and D obs (ξ) follow design given in (7) and are positive definite matrices, thus D(ξ) is positive definite, too.

A. Damping for Collision Repulsion 1) Normal Direction:
The damping matrix D o (ξ) rejects velocities in the direction of the obstacles.To allow this, we introduce an averaged normal direction: where the unit normals n o (ξ) pointing away from the obstacle o = 1, .., N o and are perpendicular to the surface, see Figure 3.
The averaged normal n(ξ) is a weighted linear combination of the obstacles' normals, giving more importance to closer obstacles.Additionally, the averaged normal converges to an obstacle normal as we converge towards it, i.e., lim Γo(ξ)→1 n(ξ) = n o (ξ).Note that the averaged normal is a zero-vector when two obstacles oppose each other.
2) Decomposition Matrix: The decomposition matrix Q o (ξ) has its first vector aligned with the normal to the obstacle: In the case that ∥n(ξ)∥ = 0, the danger weight w(ξ) from (11) reaches 0. Hence, the obstacle-aware damping in (10) has no effect and is not evaluated.
The second vector is set to be aligned with the desired velocity as much as possible, allowing increased velocity following (Fig. 4) .However, it has to remain orthonormal to where velocity unit vector q f 1 is defined in (8), and the object weight is evaluated as p = q o 1 , q f 1 .For the case that |p| = 1, the second basis q o 2 is set to be any orthonormal vector.The remaining vectors q o d , d = 3, ..., N are constructed to form an orthonormal basis to the first two.
3) Damping Values: We define the values of the diagonal matrix S o (ξ) as where the damping along the nominal direction s f ∈ R >0 , obstacle-damping s o ∈ R >0 , and the compliant-damping s c ∈ R >0 are user-defined parameters which determine the behavior of the passive-controller.The first entry of S o dictates the damping towards the obstacle, and the second entry the desired velocity following.Note how the second value approaches the compliant damping, as normal and velocity become parallel.
To ensure continuity across time of the control force as defined in (6), the values of the diagonal damping matrix S o (ξ) in the tangent directions are equal when the normal aligns with the velocity: Hence, the choice of orthonormal vectors q o d , d > 2, ..., N does not influence the control force as long as the matrix Q d has full rank.
4) Damping Only Towards Obstacle: In the presence of an obstacle, the disturbances should be damped strongly when the agent is pushed against the obstacle.Conversely, the system can remain compliant if the motion is away from the obstacle.This is achieved by setting updating the first damping value S o 1 if the robot is moving away from the surface: Since q o 1 (ξ) given in ( 13) is pointing along the obstacle normal n(ξ), the first obstacle damping value S o 1 (ξ) does not have any effect on the control force τ c given in (6) when f (ξ) − ξ T n(ξ) = 0. Hence, the damping value can be discontinuous across time, but the resulting control force remains continuous.

B. Damping for Velocity Preservation
The decomposition matrix Q f is an orthonormal basis with the first vector being parallel to the desired velocity f (ξ), as proposed in Section II-C.Hence, the values of the diagonal matrix S f are high in the direction of the desired velocity (first component) but more compliant in the remaining directions.Moreover, the damping is set to ensure that when passing a narrow passage between two obstacles, where the normal vector cancels n(ξ) ≈ 0, with additionally a low distance value Γ(ξ) ≈ 1, the damping perpendicular to the velocity direction is high.We set:

C. Cluttered Environments
In a cluttered environment, the normal vectors of the individual obstacles can be opposing.And hence using ( 12) and ( 11), we get: Additionally using (10) and ( 18) we obtain: Hence, there is high damping in all directions to reject disturbances towards potential obstacles and ensure a collisionfree motion even in cluttered environments.

D. Damping Parameter Design
Higher values for the damping parameters s (•) generally result in improved velocity following and disturbance repulsion, whereas lower values allow more compliant behavior.The damping value in the direction of the obstacle is set high s o to ensure obstacle avoidance even in the presence of high disturbances.Conversely, the damping in the direction of the velocity s f is set medium to high, as the system should follow the desired velocity f (ξ).However, it should remain compliant if needed.Finally, to facilitate interaction, a low damping value s c should be chosen for all other directions.This can be summarized as:

E. Passivity Analysis
The stability analysis of the system gives information about the stability region of the proposed controller.We analyze passivity by observing the evolution of the kinetic energy of the system, given as: Lemma 3.1: Let us assume a robotic system as described in (5) is controlled using (6) using the damping matrix D(ξ, ξ) given in (10) with damping values s d = 1, d = 1, ..., N .The system is passive with respect to the inputoutput pair ξ e , ξ when exceeding the desired velocity f (ξ) , i.e., Ẇ ≤ ξT τ e , ∀ξ ∈ R N : ∥ ξ∥ ≥ ∥f (ξ)∥ and the storage function being the kinetic energy W ∈ R >0 given in (22) Proof: The time derivative of storage function W can be evaluated as: where the second order dynamics ξ are evaluated according to the rigid body dynamics defined in (5).Furthermore, Ṁ− 2C is skew-symmetric for any physical system [39]; hence, the corresponding summand is zero.
Let us investigate the region where the passivity holds.Since in the Lemma, we assumed all damping values to be equal to one, we have: where I ∈ R N ×N is the identity matrix.It follows that the system is passive with respect to the input, the external force τ e , and the output, the velocity ξ, if: On the border of this region, the two vectors ∆f and ξ are orthogonal.Hence, using Thale's theorem, this region can be interpreted as a circle in velocity-space with radius ∥f (ξ)∥/2 and center f (ξ)/2, see Figure 5.
Fig. 5: Analyzing the system in velocity-space yields that the system is passive if it has a velocity ξ larger than the desired velocity f (ξ), i.e., outside the dashed circle.However, the system can be non-passive for small velocities when ξ, ∆f < 0 (yellow circle).Moreover, the system is passive as long as the observed velocity ξ is outside the circular-red region, which is a subset of the region where the magnitude of the observed velocity is smaller than the desired velocity f (ξ), i.e.,

Ẇ (ξ, ξ) ≤
ξT τ e ∀ξ : ∥ ξ∥ ≥ ∥f (ξ)∥ As in the orange region, the system is not passive; the storage function W could increase, and hence, the velocity ξ increases non-passively.This behavior is not unexpected, as the controller is designed to approach the desired dynamics f (ξ).Hence, as long as the desired velocity is not reached, the kinetic energy increases even with no force input τ e .However, as soon as the system velocity ξ exceeds the desired velocity f (ξ), the system behaves passively.We can use this to ensure the stability of the system: Theorem 3.1: Let f (ξ) is the desired velocity with bounded magnitude, i.e., ∥f (ξ)∥ < v max , ∀ξ ∈ R N .The closed loop system (5) using the controller from ( 6) and the damping matrix D(ξ, ξ) given in ( 10) is bounded-input, bounded-output (BIBO) stable with respect to the input disturbance force τ e , and output the velocity ξ for all times T = 0, ..., ∞.
Proof: To ensure BIBO stability, let us analyze the integral of the impulse of the response for the external force τ e : where T n denotes the set of time instances where the system is not shown to be passive (Fig. 5), specifically ∥ ξ∥ ≤ ∥f (ξ)∥, and T n ∈ R ≥0 is the total duration which the system spends in this region.Additionally, as ar result from passivity in the inner region, there exists a finite valued constant K p ∈ R ≥0 which marks the upper bound of the system.Hence, the impulse response is bounded, and the system is BIBO stable.
However, from (10), we know that a general damping matrix S(ξ, ξ) can have non-uniform diagonal values.This is analyzed by introducing the coordinate transfers: where the square root of the diagonal matrix S(ξ) is taken element-wise.The transfer is then used to rewrite (25) as: Hence, the BIBO analysis of ( 27) applied to the transformed system results as: where Tn denotes the region where the transformed system v is not shown to be passive, i.e. ∥v∥ ≤ ∥ ∆f ∥, and Tn ∈ R ≥0 the corresponding time.Additionally, min (eig(D)) and max (eig(D)) are the smallest and largest eigenvalue of the damping matrix D respectively.Hence, since the transformed system with velocity v is BIBO stable, the original system with velocity ξ is BIBO stable, too, as long as it is a continuous, finite transform.For an orthogonal decomposition matrix Q(ξ, ξ), the region of non-passivity is an ellipse where the direction of the axes points along column vectors of Q, and the corresponding axes lengths are the diagonal elements of ∥f (ξ) T S(•)∥/2 S(•) . If the ratio of the first damping value to the other axis i ≥ 2 is large, i.e., s 1 /s i ≫ 1, it can lead to non-passivity even though the velocity ξ is already larger (but not pointing in the correct direction) than the desired velocity.However, the non-passive region is still bounded (Fig. 6b).This proof holds for any basis Q which is not singular.However, the controller must be carefully chosen to ensure that the speed up is limited when the basis is close to singular, for example, by limiting the relative difference of the stretching vectors.Furthermore, as stable behavior is ensured for a general shape of a damping matrix D(ξ), the global stability proof extends to any positive definite damping matrix matrices.
Since the damping matrix D(ξ) changes dynamically, a change in the environment can move the system outside of the passive region.However, a finite maximum velocity always exists, at which the system is ensured to be passive.
Fig. 6: The stability is ensured even if the controller can temporarily accelerate the system to reach a velocity ξ, which is faster than the desired velocity f (ξ) (white region).This happens when the eigenvalues of the damping matrix D(ξ) are not uniform (a) or the stretching vectors q 1 and q 2 are not orthogonal (b).In both cases, the region of non-passivity is elliptical (black circle).

IV. COLLISION AVOIDANCE
The principal goal of the controller introduced in the previous section is its ability to ensure collision avoidance in the presence of external disturbances.However, the control force τ c proposed in (6) does not explicitly consider external forces.Yet, it is designed to correct the agent's velocity ξ if it deviates from the desired velocity ξ. 1Since interaction with the environment results in a force on the system, often over a short period ∆t ≪ 1.Hence, we can define the velocity after impact v I as: using the controller from (5), and under absence of the control force τ c during this short timeframe.Additionally, {ξ} t I is the velocity before the impact.Furthermore, let us consider a desired velocity f (ξ), which is a constant, collision-free vector field parallel to the surface of a flat obstacle surface (see Fig. 7): where n(ξ) is the surface's normal vector, and the agent moves in a straight line, hence we can neglect the Coriolis effect.For disturbances in such environments, we show that our approach can ensure the impenetrability of the obstacle up to an upper bound on the magnitude of the disturbance: Lemma 4.1: Consider a point-mass agent with mass m ∈ R >0 , whose motion evolves according to the rigid body dynamics given in (5) controlled by (6), with constant damping matrix D from (10).The agent tracks a constant reference velocity f, whose vector field moves parallel to a flat obstacle as given in (32).Any motion path initiated in free space will remain collision-free for all times, i.e., Γ({ξ t }) ≥ 1 with t ≥ 0 if the impact velocity v I as given in (31) at time t = 0 is limited by ∥v I ∥ < s f ∥ξ − ξ b ∥/m, with respect to the closest surface point ξ b ∈ R N .
Proof: According to the Bony-Bezis theorem [40], the trajectories are collision-free if there is zero velocity towards the obstacle on the surface, i.e., We want to find the time when the agent stops moving towards the obstacle, enabling us to evaluate the distance traveled as a function of the velocity after disturbance v I .Let us assume without loss of generality that the disturbance occurs at time t = 0. Hence, the velocity at time T can be computed as: Furthermore, since the vector field, f (ξ) is constant and the obstacle's surface does not have any curvature, it follows from (10) that the damping matrices D o and D f are constant.Moreover, by design of the damping matrices, from (13) it follow that D o (ξ, ξ)n(ξ) = s o n(ξ), and from (8) that D f (ξ, ξ)n(ξ) = s f n(ξ).
From (33) follows that it is sufficient to observe the normal component of the vectors only.Thus, in the rest of this paragraph, the components along the normal are denoted by scalar values, e.g.ξ = ξ, n(ξ) n(ξ).Hence, we get: where m = max (eig(M)), with the maximum displacement as: vectorfield is likely to show small changes, and the surface has little deviation.Nevertheless, there is no guarantee against drifting into obstacles in the presence of highly curved surfaces and velocity fields.This is further discussed during the experiments in Section V-B.2, where the increased damping towards the obstacle significantly reduces collision in such scenarios.However, designing a repulsive field as proposed in [35] can ensure collision avoidance in such scenarios.
All robotic systems have a maximum force that they can exert on the environment based on the motors, geometry, and state, τ max c ∈ R >0 .Such a limiting force decreases the impact velocity a controller can handle while ensuring collision avoidance, as shown in Fig. 7. Nevertheless, a maximum control force can be interpreted as adapting damping; hence, the passivity from Theorem 3.1 holds.

V. EVALUATION
The proposed obstacle-aware controller2 is compared to a baseline, the velocity preserving, passive controller [10].

A. Qualitative Repulse Rejection
A qualitative analysis of the proposed controller's behavior in three scenarios, as depicted in Figure 8.In each scenario, the agent approaches multiple obstacles from distinct starting positions, and a disturbance (indicated by an arrow) is applied.The simulation time step is ∆t = 0.01s seconds, and the agent's mass matrix is M = Ikg.The controller is implemented using the following damping values: s obs = 200 s −1 , s f = 100 s −1 , and s c = 20 s −1 .
In the top trajectory, the robot encounters a stand-alone obstacle and experiences a disturbance that pushes it toward the obstacle.With the obstacle-aware controller, the robot avoids collision and continues moving towards the attractor.In contrast, the baseline controller, which prioritizes velocity conservation, fails to respond effectively and is

Undisturbed Dynamics preserving Obstacle aware Disturbances
Fig. 8: The desired velocity f (ξ) is represented in gray and serves as the input for the force controller.The mobile robot, initially positioned at three different locations, navigates safely towards the attractor (black star) even when confronted with external disturbances (purple arrows) while employing the obstacle-aware controller (blue trajectories).In contrast, the baseline controller (red) results in collisions when disturbances occur close to the robot.pushed into the obstacle, resulting in a colliding trajectory.During the middle trajectory, a disturbance occurs when the agent is positioned between two obstacles.The obstacleaware controller utilizes the normal vector n(ξ), as described in Section III-A.However, due to its construction, the magnitude of n(ξ) diminishes in narrow passages (as seen in ( 12)), leading to increased damping in all directions, as described in (17).As a result, the agent successfully avoids the disturbance using the obstacle-aware controller while the baseline controller follows a colliding trajectory.In the bottom trajectory, the repulsive force points away from the obstacle.The obstacle-aware and the velocity-preserving controllers produce nearly identical trajectories due to equal compliance when moving away from an obstacle as defined in (17).We observe the selective damping of disturbances towards the obstacle.The top and middle disturbances are highly damped, while the bottom disturbances are not.This feature imparts a natural behavior of moving away from obstacles.

B. Noise Analysis
In practical robotic applications, controllers are inevitably exposed to noise and unexpected disturbances arising from sensor inaccuracies, environmental factors, or other external perturbations.A high-quality controller can effectively reject such disturbances while simultaneously achieving the control objectives, such as collision avoidance and trajectory tracking.This section investigates the impact of noise disturbances on a simulated agent with an identity mass matrix M = Ikg.The discrete time step is set to ∆t = 0.2 s.Additionally, the damping values are configured as follows: s o = 50 s −1 , s f = 40 s −1] , and s c = 5 s −1 .The robot's objective is to follow a linear velocity field of the form f (ξ) = (ξ a − ξ) with a velocity cap of 1 m/s.To evaluate the controller's performance, a comparative analysis is conducted by assessing the minimal distance to the surface along the trajectory, denoted as min t ∥ξ t − ξ b ∥, with the closest boundary point ξ b described in (2).

1) Velocity Noise Resistance:
We first added a normally distributed noise with a zero mean to the agent's velocity ξ at each time step before computing the control force.The agent has to navigate between two obstacles from the starting position to the attractor with different noise levels, as visualized in Figure 9).
The obstacle-aware controller effectively rejects the noise impacting the velocity, even as the noise variance increases.However, the closest distance during the trajectory diminishes with higher noise variance.On the contrary, the velocity-following controller's mean distance falls below zero already at a velocity noise variance of 0.5 m/s, indicating that many trajectories collide with at least one obstacle.Furthermore, the obstacle-aware controller maintains a higher minimal distance along the trajectory without noise.This effect results from the higher damping applied towards the obstacle, enabling more precise tracking of the curvature guiding the velocity around the obstacle.
2) Position Noise Resistance: In the second experiment, normally distributed noise with a mean of zero is added to the position ξ (Fig. 10).The agent has to navigate around two star-shaped obstacles to reach the attractor with various noise levels being applied.
The obstacle-aware controller maintains a greater distance to the surface even when no noise is present, while the velocity-preserving controller already exhibits collisions.As a result, the obstacle-aware creates trajectories with the mean distance above zero for standard deviations of the position noise smaller than 0.023 m.Conversely, the velocitypreserving controller's mean distance to the surface is below zero for all experiment runs, indicating collisions.This difference is attributed to the buffer mechanism inherent in the obstacle-aware controller.Despite a similar decrease in distance for both controllers, the obstacle-aware controller effectively prevents collisions due to its higher damping of velocities toward the obstacles.Moreover, the velocitypreserving controller exhibits a higher distance variance, likely stemming from its lower damping, causing it to adapt more slowly to new velocities after being displaced by the noise.Consequently, this behavior leads to more random variations in velocity and trajectory.C. Obstacle-Aware Passivity Using a Robot Arm The obstacle-aware passivity controller was implemented to guide a 7-degree-of-freedom robot arm (Panda from Franka Emika) while moving around a cubic obstacle.
The joint torque is computed using inverse kinematics combined with the proposed passive controller for the position, but a proportional controller for the orientation: where J † represents the Moore-Penrose pseudo inverse of the Jacobian matrix, and α and α a denote the end effector's orientation and the desired orientation, respectively.The angular damping parameter is chosen as p α = 5.5.The desired orientation α a is pointing downward with a quaternion value of (w, x, y, z) = (0, 1, 0, 0).For the angle subtraction, we use quaternion representation to avoid singularities, but an angleaxis representation of the orientation is used to evaluate the torque from the angular offset.The angular damping is chosen as p α = 5.5.The damping values are set as s o = 160 s −1 , s f = 64 s −1] , and s c = 16 s −1 .
The robot start position is approximately at ξ 0 = [0.3m,0.4m, 0.3m, ] T and the attractor is at position ξ a = [0.26m,−0.53m, 0.33m] T .The controller operates at a frequency of 500 Hz.The robot encounters a single squared box with axes length 0.16 m and a margin of 0.12 m, placed in front of the robot base (Fig. 11).The precise location of the box is tracked in real-time using a marker-based vision system (Optitrack).When passing the box, the robot is pushed with t e towards the box.The experiment is repeated ten times for both controllers and compared to the undisturbed motion.
The experimental results in Figure 11 demonstrate that the obstacle-aware controller allows the robot to maintain an average distance of 0.15 m away from the obstacle surface.In contrast, the velocity-preserving controller results in a mean distance below 0.05 m, and numerous trajectories lead to collisions with the box.On average, the robot passes further away from the obstacle using the obstacle-aware controller and exhibits higher forces, Table I  The mean and standard deviation of the closest distance and maximum force are evaluated over ten epochs for the proposed obstacle aware controller, and the baseline velocity following controller [10].The undisturbed trajectory is provided as reference values.During the experiments, the obstacle-aware damping avoids collision with an increased minimal distance from the obstacle and, hence, a safer trajectory.This is achieved through momentarily higher forces.
This outcome is attributed to the obstacle-aware controller's stronger control force, with a high peak occurring around 1.45 s when the disturbance is encountered.In   contrast, the velocity-preserving controller only acts when the robot almost collides, leading to a delayed response.Additionally, the obstacle-aware controller exhibits higher forces, contributing to improved tracking of the avoidance trajectory, as observed in Section V-B.2.These findings affirm the superior collision avoidance capabilities and tracking performance of the obstacle-aware passivity controller in real-world robot arm scenarios.

VI. DISCUSSION
We introduced a novel passive obstacle-aware controller that takes as an input the desired, collision-free velocity and outputs a control torque.The stability proof enables the controller to be used with any bounded input velocity field, and this result extends to a general class of damping controllers.Furthermore, the controller is shown to reject disturbances, and the parameter-tuning for the discrete-time system has been analyzed.The controller was experimentally evaluated and compared to a baseline passive controller.The proposed approach shows increased resistance to noise, both in position and velocity and improved tracking.Applied to a real robot arm, the disturbance force was successfully rejected, ensuring collision avoidance while following a reference motion.

A. Discrete Control Convergence
The proposed controller is only stable but does not ensure convergence.However, convergence could be achieved by modifying the controller by introducing an additional proportional term, as is common in impedance controllers: However, this design interferes with the basis passive controller, and the convergence towards the attractor is facilitated by (stable) velocity f (ξ).Moreover, introducing a variable damping matrix will result in a potentially unstable system, as the passivity proof no longer holds.Future work should further analyze how to include dynamics properties in the design of the damping parameters for improved system performance.

B. Applicability and Theoretical Analysis
The theoretical analysis from Theorem 3.1 indicates BIBO stability for a system with bounded desired velocity.Consequently, controllers like the damping-based approach in [10] do not require an energy tank.Yet, introducing an adaptive proportional term K can lead to instabilities [17], [18].Careful consideration of the controller design and stability analysis is necessary to ensure robust and safe performance in practical applications.Nevertheless, the passivity proof enables a broad range of time-varying damping controllers to be safely applied to robotic systems.

C. Point Mass Agents
While the controller is limited to a point mass representation of the robot, its computational efficiency would allow multiple evaluations along the robot arm.This could be used to ensure full body control of the robot, hence improving the system's safety.

D. Caution in Obstacle's Proximity
In this work, we assume the obstacles' position to be precisely known.However, in many scenarios, the robot might have limited perception as it approaches an obstacle.Hence, the robot should be more compliant to enable safe workspace exploration rather than increasing the damping.Future work should explore how to combine these two opposing paradigms: safe control for avoidance yet cautious exploration.

A. Discrete Time Behavior
So far, we've considered that the system is continuous time.This is a reasonable assumption if we have a high sampling time ∆t, compared to the dynamics, i.e., ∥∆t ξ∥ ≪ 1.However, any digital controller sends a discrete control signal.To reject the disturbances in the presence of obstacles, a high control force is exerted (while remaining within the control robot's limits), hence ∥∆t τ c ∥ ≫ 1.In this case, it is crucial to analyze the discrete-time system to guarantee stability, as high damping can lead to unstable behavior, see Figure 12).
For the discrete-time system, the position and velocity of the agent evolve as follows: Lemma 1.1: Let us consider a discrete-time system with the state as given in Eq. (39), and is governed by the controller from Eq. ( 6) and damping matrix D defined in Eq. (10).The system is BIBO (bounded-input, boundedstable) with respect input the desired velocity f (ξ) the velocity, and as output the agent's velocity ξ such that lim t→∞ ∥ ξ∥ < ∞, if all damping values are limited as s d ≤ 2 min (eig (M)) /∆t with d = 1, ..., N .
Proof: The evolution of the discrete-time feedback system is given as: where f (ξ t ) = f (ξ t ) − D −1 C. The dependency on the state ξ of the matrices M, D, and C are omitted for brevity.I ∈ R N ×N denotes the identity matrix.As we look at global stability, we look at the updated velocity f (ξ t ) = f (ξ t ) − D −1 C. Since the Coriolis force is bounded, it follows that if the system is BIBO stable for f (ξ t ), then it is also BIBO stable for f (ξ t ) BIBO stability of a discrete-time system requires that all the eigenvalues of the feedback matrix are smaller or equal High damping leads to unstable behavior with increasingly high oscillations.Conversely, the lowest value leads to more deviation from the initial straight line resulting from the higher impedance.The critical value of si = 2.0m/∆t results in stable behavior with immediate correction to the desired velocity.
to one [41].The eigenvalues of the above feedback system are given as: where both λ 1 ∈ R N and λ 2 ∈ R N denote a vector containing N eigenvalues.All eigenvalues of λ 1,i = 1, i = 1, ..., N , and enable a stable system.The second set of eigenvalues λ 2 depends on the passive control term.However, since M and D are both positive definite, the eigenvalues are positive: Hence, we only have to consider the upper limit, and the system is stable if the maximum eigenvalue is limited to: max (λ 2 ) ≤ 1 ⇒ s i ≤ 2 min eig M /∆t (43) The stability guarantees provide BIBO stability, hence the boundedness of the output.Since the first eigenvalues equal one, there is no global asymptotic convergence.In fact, in the system from (40), it can be observed that when the input dynamics are zero, i.e., f (ξ) = 0, the system immediately stops.But there is no convergence to a specific position.However, in most cases, the desired system should only reach zero at the attractor position, and hence, we expect convergence to such a point.
In practice, it is useful to use a large value for s o as it rejects disturbances towards the obstacles, and lower values for the dynamics following s f and damping in general direction s c .Hence, we propose s o = 2.0m/∆t, s f = 1.0/∆t, and s c = 0.1/∆t.The controller with a critical stiffness of 2.0m/∆t leads to fast convergence and a stable system.With lower damping (top left), there is a large drift of the system, which converges to a limit cycle.The high damping of 2.3m/∆t leads to an unstable system.Interestingly, with damping of 2.1m/∆t in combination with the nonlinear dynamics, we obtain a visibly stable system.

Fig. 1 :
Fig.1: The proposed passive obstacle-aware controller lets the robot absorb external disturbances while ensuring collision avoidance.While tipping over the closed pasta box on this dinner table setup might be acceptable.Yet, the delicate wine glasses demand careful handling to prevent breakage.

5 Fig. 3 :
Fig.3: The Γ-field is defined individually for each of the obstacles.At each position ξ, we can evaluate the surface normal n(ξ).The velocity f (ξ) (gray) avoids collision with the obstacles and converges towards the attractor (star).

)Fig. 7 :
Fig.7: A disturbance occurs of a point-agent at position p 0 with velocity after the impact of { ξ}0 = v 0 + v I .A high damping in the direction of the obstacle in the presence of a constant velocity field (gray) ensures collision avoidance.Whereas different damping values s o and optionally a maximum repulsion force τ max lead to different trajectories.
Trajectories with a standard deviation of the velocity-noise of 1.0 m/s.The mean and variance (shaded) of the closest distances over 10 epochs.

Fig. 9 :
Fig.9: The agent navigates between two elongated obstacles (a) towards the attractor (black star).The agent's velocity is subjected to white noise, with a mean of zero, and noise variances between 0.0 m/s and 1.0 m/s.The robot initiates its trajectory from the starting position ξ 0 = [−2.5,1.0] T , with an initial velocity of zero.It aims to reach the attractor located at ξ a = [2.5, −1.0] T .
Trajectories with a standard deviation of the position-noise of 0.0 m. 0.000 0.005 0.010 0.015 0.020 0.025 0.030 Standard deviation of position noise [m] Closest distances concerning different noise levels over ten epochs.

Fig. 10 :
Fig. 10: The agent is navigating towards the attractor (black star) between two concave obstacles (a) while being subjected to white noise in its position.The position noise has a mean of zero and various noise variances ranging between 0.0 m and 0.03 m.The robot starts at position ξ 0 = [−2.5,−1.0] T , and the attractor is set to ξ a = [2.5, 1.0] T .
(a) Obstacle-aware controller rejects repulsion and avoids collision (b) Velocity preserving controller leads to collision with obstacle (c) The two control methods compared with the undisturbed trajectory.The wider line indicates a higher x-value.The darker arrow is the actual, and the desired velocity is the brighter arrow.

( d )
The specific trajectory is represented by a full line, while the average (dashed line) and variance (shaded area) are evaluated over ten epochs.The mean and variance of the control force are evaluated in the logarithmic space.

Fig. 11 :
Fig.11:The robot arm, guided by the obstacle-aware passive controller, effectively avoids the disturbance towards the obstacle while maintaining a margin of 0.16 m around the obstacle.The experiment was repeated ten times with a similar disturbance applied to the robot arm in each run.

Fig. 12 :
Fig.12: An agent has the desired velocity f (ξ) = [1, 0] T (gray arrow), and a control matrix D with damping values equal in all directions and the smallest eigenvalue of the inertia matrix m.The agent is disturbed (purple arrow) position ξ 0 = [0, 0] T and has a velocity of ξ 1 = [1, 1] T after the impact.High damping leads to unstable behavior with increasingly high oscillations.Conversely, the lowest value leads to more deviation from the initial straight line resulting from the higher impedance.The critical value of si = 2.0m/∆t results in stable behavior with immediate correction to the desired velocity.

Fig. 13 :
Fig.13: An agent with the desired dynamics of f (ξ) = R(π/6)(ξ − ξ a ) where R(•) ∈ R N ×N is the rotation matrix, and m is the mass of the agent.We assume equal damping values si.The controller with a critical stiffness of 2.0m/∆t leads to fast convergence and a stable system.With lower damping (top left), there is a large drift of the system, which converges to a limit cycle.The high damping of 2.3m/∆t leads to an unstable system.Interestingly, with damping of 2.1m/∆t in combination with the nonlinear dynamics, we obtain a visibly stable system. .