Planar Vehicle Motion

Robust and Efficient Vehicle Motion Simulation via Bresse Circles

Demetrius Lorenz1, Stefan Gössner1

1Dortmund University of Applied Sciences. Department of Mechanical Engineering
July 2021
Keywords: Vehicle Motion, Bresse Circles, Numerical Method

Abstract #

This paper investigates the dragging behavior of vehicles using planar rigid-body kinematics. In this context, a kinematic analysis of the single-track model of a vehicle results in a numerical method based on the motion study of a planar four-bar mechanism.
The driving behavior reproduces the slip-free (slow) motion with a steered front-wheel and a fixed rear-wheel. The generated trajectories are compared to the analytical tractrix in terms of an error analysis.
The results are used to develop an interactive web application, which allows to interactively guide vehicles or vehicle groups of different dimensions along an arbitrary track, for example to dimension the necessary driving paths.

1. Introduction #

In general, aspects of vehicle dynamics have to be considered in the trajectory planning of wheeled vehicles [1] [2]. However, in the design of public and internal transport routes these dynamic influences are of minor importance and are usually not taken into account. In such cases it is sufficient to discuss the motion from a purely kinematic point of view – like so in this paper.

Furthermore, it is common and suitable to restrict a kinematic study of motion in the plane using a two-wheel model and a slip-free rolling of the wheels [3] [4]. This makes a fixed point of the vehicle model explicit guided, either by an analytically given path or drawn by a towing vehicle ahead. Apart from the known position, the determination of the unknown orientation of the vehicle axis remains.

The mathematical literature classifies the present situation as chase or chasing problem. In this context, the towed point of the non-steered rear axis follows the guiding point of the steered front axis. Between both points exists a kinematic equation, which in general is non-holonomic and therefore not integrable.

Now it can be shown that the combination with a further holonomic relation – the constant distance between the two points – in total a holonomic binding exists, which is indeed integrable [5] [6].

The said integration leads to the trajectory curves or tractrix, namely a linear or circular one, depending on whether it is guided on a straight line or on a circular path. A method based directly on the tractrix is presented in [4].

With numerical time integrators for the present initial value problem we distinguish between explicit, implicit and semi-implicit methods. In enhancement of those velocity-centered methods, the angular acceleration will also be considered in this contribution. For this purpose, the Bresse circles of the vehicle motion will be determined geometrically on the one hand and kinematically on the other hand.

The vehicle can be seen as the coupler of a four-bar mechanism. In the following vectors are printed in bold. Apart from the scalar product ab\bold{ab} also the symplectic inner product a~b\bold{\tilde ab} together with the orthogonal operator (~) is used wisely [7] [8].

2. Geometry #

Consider a one-axis trailer moving in the plane, which is drawn by hand, by a car or a truck in point AA (figure 1). Its direction of motion relative to the vehicle's longitudinal axis is given by angle γ\gamma – think of its steer angle. Its speed, which is the amount of velocity v\bold v, is considered constant throughout this text.

Figure 1: Vehicle Motion

When the relative angle γ\gamma is kept constant, the vehicle will perform a pure rotation about its stationary velocity pole PP by constant angular velocity ω\omega. In addition to the movement direction unit vector u{\bold u} the vehicle's current position and orientation in the plane is known as well as length bb of the rigid link – known as drawbar – connecting guiding point AA and the back wheel axis point BB [4]. So given is:

  • u{\bold u}      steering unit vector
  • e{\bold e}      longitudinal axis unit vector
  • bb      drawbar length

The location of the instantaneous center of rotation, also called velocity pole PP seen from steering point AA reads

rPA=rArP.{\bold r}_{PA} = \bold r_A - \bold r_P\,.(1)

Since vector rPA{\bold r}_{PA} is always directed orthogonal to moving unit direction u\bold u of point AA, we are able to express that relationship as

rPA=ru~,{\bold r}_{PA} = - r\,\tilde{\bold u}\,,(2)

while rr is short for rPAr_{PA}. Formulating the loop closure equation of triangle ΔPAB\Delta PAB in figure 1 rPA+rAB+rBP=0{\bold r}_{PA} + {\bold r}_{AB} + {\bold r}_{BP} = \bold 0 yields

ru~be+he~=0.-r\,\tilde{\bold u} - b\,{\bold e} + h\,\tilde{\bold e} = \bold 0\,.(3)

Multiplying equation (3) by e\bold e, alternatively by u\bold u and finally squaring it gives

rsinγ=b,tanγ=bhandr2=b2+h2,r\sin\gamma = b\,,\quad \tan\gamma = \frac{b}{h} \quad and \quad r^2 = b^2 + h^2\,,(4)

while using sinγ=e~u\sin\gamma = \tilde{\bold e}{\bold u} and cosγ=eu\cos\gamma = {\bold e}{\bold u}. A closer look at Figure 1 makes the geometric relationships (4) immediately obvious.

Please note, as drawbar length bb is always positive and angle γ\gamma can get positive and negative, that means, that rr as well as hh might get a negative value together with γ\gamma also.

3. Velocities #

We find the velocities by differentiating equation (1) with respect to time.

vA=vP+ωr~PA{\bold v}_A = {\bold v}_P + \omega\,\tilde{\bold r}_{PA}(5)

Herein ω\omega is the vehicle's angular velocity. The velocity vA=vu{\bold v}_{A} = v\,\bold u of the guiding point AA is given. The velocity vP{\bold v}_{P} of the pole – assumed as a point rigidly connected to the vehicle – is known to be zero. Reusing equations (2) and (3) in (5) gives us

vA=vu=ω(be~+he).{\bold v}_A = v\,{\bold u} = \omega\, (b\,\tilde{\bold e} + h\,{\bold e})\,.(6)

In order to resolve for ω\omega we multiply this equation by e~\tilde{\bold e}, i.e.

ω=vbsinγ.\omega = \frac{v}{b} \sin\gamma\,.(7)

Angular velocity is zero with γ=0\gamma = 0, when the vehicle performs a pure translation.

4. Accelerations #

Deriving velocities (5) with respect to time leads us to the accelerations.

aA=aP+ω˙r~PAω2rPA{\bold a}_{A} = {\bold a}_P + \dot\omega\,\tilde{\bold r}_{PA} - \omega^2\,{\bold r}_{PA}(8)

Despite the fact, that the pole has zero velocity, this is not necessarily the case for the pole acceleration aP.{\bold a}_{P}\,. When we take the time derivative of equation (6)

aA=ωh˙e+ω˙r~PAω2rPA{\bold a}_{A} = \omega \dot h\,\bold e + \dot\omega\,\tilde{\bold r}_{PA} - \omega^2\,{\bold r}_{PA}(9)

and subtract equation (7) from (6), we find with

aP=ωh˙e{\bold a}_P = \omega \dot h\,\bold e(10)

a nice expression for the pole acceleration. Following a suggestion of Dizioglu [9], we introduce equation (1) into (4) while getting vA=ω(r~Ar~P){\bold v}_{A} = \omega\,(\tilde{\bold r}_A - \tilde{\bold r}_P), then differentiate it w.r.t. time and yield

aA=ω˙(r~Ar~P)+ωr~˙Aωr~˙P.{\bold a}_{A} = \dot\omega\,(\tilde{\bold r}_A - \tilde{\bold r}_P) + \omega\,{\dot{\tilde{\bold r}}}_A - \omega\,{\dot{\tilde{\bold r}}}_P\,.

Please note, that this time the pole is considered not fixed to the vehicle. Recombining rPA=rArP{\bold r}_{PA} = \bold r_A - \bold r_P and using vA=r~˙A{\bold v}_{A} = {\dot{\tilde{\bold r}}}_A yields

aA=ωr~˙P+ω˙r~PAω2rPA.{\bold a}_{A} = - \omega\,{\dot{\tilde{\bold r}}}_P + \dot\omega\,{\tilde{\bold r}}_{PA} - \omega^2\,{\bold r}_{PA}\,.(11)

Yet subtracting equation (11) from (9) we find an expression for the term r˙P,{\dot{\bold r}}_P\,, which we call pole transfer velocity

r˙P=h˙e~.{\dot{\bold r}}_P = \dot h\,\tilde{\bold e}\,.(12)

Please note that equations (10) and (12) conform to the well known fact, that pole transfer velocity and pole acceleration are always oriented orthogonal to each other.

The direction of the pole transfer velocity r˙P{\dot{\bold r}}_P coincides with the direction of the pole tangent, here directed orthogonal to the vehicle's longitudinal axis. The pole acceleration aP\bold a_P is directed along the direction of the pole normal, which is in parallel to the longitudinal axis.

5. Bresse Circles #

Points on the moving vehicle, which are running through inflection points of their path at current, are lying on the inflection circle. They only have normal acceleration, no tangential acceleration. On the other hand, points only having tangential acceleration and no normal acceleration are located on the tangential circle.

Inflection circle and tangential circle together are called "Bresse circles".

Before discussing point AA travelling along an arbitrary curve, we start by considering the special cases, where point AA is moving on a straight line or on a circle.

Figure 2: Vehicle Motion travelling along a circular arc.

In both cases we demand guiding point AA moving with constant speed vv. So point AA in the circular case only has normal acceleration and in the straight line case it is completely acceleration-free.

5.1 Geometric Approach #

According to Figure 2 we are able to interprete the vehicle being represented by the coupler of a virtual four-bar mechanism. The crank's fixed point A0A_0 is located in the arc's center of curvature with radius ρ\rho then. The rocker's fixed point B0B_0 always coincides with the vehicle's instantaneous center of rotation PP. That way we are allowed to apply a geometric approach while analyzing the vehicle motion.

The location of the inflection pole WW seen from the pole PP is determined in a pure geometric way ([10]) via

rPW=1r~PArPB(rPB2(rPB2r~BB0rPB+1)r~PArPA2(rPA2r~AA0rPA+1)r~PB).{\bold r}_{PW} = \frac{1}{\tilde{\bold r}_{PA}{\bold r}_{PB}} \Bigg(r_{PB}^2\bigg(\frac{r_{PB}^2}{\tilde{\bold r}_{BB_0}{\bold r}_{PB}} + 1\bigg)\tilde{\bold r}_{PA} - r_{PA}^2\bigg(\frac{r_{PA}^2}{\tilde{\bold r}_{AA_0}{\bold r}_{PA}} + 1\bigg)\tilde{\bold r}_{PB}\Bigg)\,.(13)

From Figure 2 we formulate the required vectors more concretely (Table 1),

Table 1: Geometric Relations
rAA0{\bold r}_{AA_0} rBB0{\bold r}_{BB_0} rPA{\bold r}_{PA} rPB{\bold r}_{PB}
ρu~\rho\tilde{\bold u} he~-h\tilde{\bold e} ru~-r\tilde{\bold u} he~h\tilde{\bold e}

with which equation (13) – by reusing trigonometric relation sinγ=e~u\sin\gamma = \tilde{\bold e}{\bold u} again – simplifies to

rPW=rsinγ(1rρ)e.{\bold r}_{PW} = \frac{r}{\sin\gamma} \bigg(1 - \frac{r}{\rho}\bigg){\bold e}\,.(14)

That useful expression (14) for the inflection pole position seen from the pole is conforming to the fact, that the inflection pole is located on the pole normal [11], i.e. lying always on a parallel line to the vehicle's drawbar through the pole. Figure 3 will clarify this.

Figure 3: Bresse Circles of the vehicle model.

rPW{\bold r}_{PW} is the diameter vector of the inflection circle. It becomes infinite, if γ=0\gamma = 0, thus vehicle motion is a pure translation.

Also note, that radius ρ\rho is a signed value, as is rr. If A0A_0 and PP are lying on the same side on the pole-ray with respect to AA they do have equal signs, otherwise they don't. In the special case ρ=r\rho = r the inflection circle collapses into a single point – the pole. The vehicle performs a stationary rotation about the pole then.

The condition for AA lying on the inflection circle is [10]

rPWrPA=rPA2.{\bold r}_{PW}{\bold r}_{PA} = \bold r_{PA}^2\,.

Taking rPA{\bold r}_{PA} from equation (2) and rPW{\bold r}_{PW} from (14) will – after inserting – result in rρ=0\dfrac{r}{\rho} = 0, which is true only, if point AA is moving on a straight line momentarily and ρ\rho goes to infinity then. So with AA moving along a straight line, equation (14) simplifies to

rPW=rsinγe.{\bold r}_{PW} = \frac{r}{\sin\gamma} {\bold e}\,.(15)

Given that point AA is moving with constant speed vv, it has to lie on the tangential circle – together with all other points having no tangential acceleration.

The location of the tangential pole TT seen from the pole PP can be written as a pure geometric expression then again [10]

rPT=rPA2r~PWrPAr~PW{\bold r}_{PT} = \frac{r_{PA}^2}{\tilde{\bold r}_{PW}{\bold r}_{PA}}\tilde{\bold r}_{PW}

Reusing rPA{\bold r}_{PA} and rPW{\bold r}_{PW} from equations (2) and(14) gives

rPT=rcosγe~.{\bold r}_{PT} = -\frac{r}{\cos\gamma}\tilde{\bold e}\,.(16)

In the case of γ=0\gamma = 0 tangential circle's radius goes to infinity together with the pole. When γ=±π2\gamma = \pm {\pi \over 2}\, the pole coincides with drag point BB and tangential circle's radius becomes infinite again, due to cosγ=0\cos\gamma = 0.

5.2 Kinematic Approach #

Any point EE on a moving plane currently running through an inflection point of its path has no normal acceleration at current. So velocity vE{\bold v}_E and acceleration aE{\bold a}_E are collinear, i.e.

aEv~E=0{\bold a}_E\tilde{\bold v}_E = \bold 0

Inserting equations (5) and (8) applied to point EE, seen from the pole PP and multiplying leads to the quadratics

rPE2aPω2rPE=0.{\bold r}_{PE}^2 - \frac{{\bold a}_P}{\omega^2}{\bold r}_{PE} = \bold 0\,.

Completing the square results in

(rPEaP2ω2)2=aP24ω4,({\bold r}_{PE} - \frac{{\bold a}_P}{2\omega^2})^2 = \frac{a_P^2}{4\omega^4}\,,

which has the shape (pp0)2=R2(\bold p - {\bold p}_0)^2 = R^2 of a circle equation in vector notation. The second term in the parentheses is the vector to the circle center. So the opposite circle point to the pole PP is the inflection pole WW. Its kinematic equation reads

rPW=aPω2{\bold r}_{PW} = \frac{{\bold a}_P}{\omega^2}(17)

having the direction of the pole acceleration.

Now considering another point DD on a moving body having no tangential acceleration at current – thus lying on the tangential circle. Its velocity vD{\bold v}_D and acceleration aD{\bold a}_D are orthogonal then.

aDvD=0{\bold a}_D{\bold v}_D = \bold 0

Treating this equation similar to the inflection point above finally results in the tangential pole equation

rPT=a~Pω˙.{\bold r}_{PT} = \frac{\tilde{\bold a}_P}{\dot\omega}\,.(18)

Now – in a last step – by eliminating pole acceleration aP{\bold a}_P from equations (17) and (18) we get a kinematic relationship between the inflection and tangential pole

ω˙rPT=ω2r~PW\dot\omega\,{\bold r}_{PT} = \omega^2\,\tilde{\bold r}_{PW}

containing the object of our desire ω˙\dot\omega. So finally reusing the geometrically derived pole compagnons from equations (15) and (16) as well as angular velocity ω\omega from expression (7) leads us to an expression for the vehicle's angular acceleration

ω˙=v2b2(rρ1)sinγcosγ\dot\omega = \frac{v^2}{b^2}\Big(\frac{r}{\rho}-1\Big)\sin\gamma\cos\gamma(19)

With steering angle γ=0\gamma = 0 and γ=±π2\gamma = \pm {\pi \over 2} the vehicle's angular acceleration is zero.

6. Time Integration #

Having given position rA{\bold r}_A, const speed vv and moving direction u\bold u of guiding point AA as well as the current curvature radius ρ\rho of its path together with the vehicle's longitudinal axis length bb and unit vector e,\bold e\,, we are able to tell angular velocity ω\omega and angular acceleration ω˙\dot\omega via formulas (7) and (19) derived so far.

Guiding point's position is determined either by an explicitly given curve or by a series of discrete points in the motion plane. Curvature radius ρ\rho is either directly extracted from the given path or interpolated by three consecutive positions of point AA. That last feature is important in order to allow users guiding the vehicle by hand via a pointing device as well as to connect trailers to a towing vehicle.

Now that motion of point AA is explicitly given, time integration for absolute vehicle orientation φ\varphi by a time step Δt\Delta t from state ii to state i+1i+1 is required. This is accomplished via

φi+1=φi+ωiΔt+12ω˙iΔt2.\varphi_{i+1} = \varphi_{i} + \omega_i \Delta t + \frac{1}{2}\dot\omega_i \Delta t^2\,.(20)

Back wheel axis point rB{\bold r}_{B} is calculated then by

rBi+1=rAi+1b(cosφi+1sinφi+1).{\bold r}_{B_{i+1}} = {\bold r}_{A_{i+1}} - b\begin{pmatrix}\cos\varphi_{i+1}\\\sin\varphi_{i+1}\end{pmatrix}\,.(21)

From here another time step can be done.

7. Error Analysis #

Just like any numerical method the approximation and its quality made in the previous chapter depends directly on the choose of vehicle's step size Δs\Delta s, i.e. distance passed within a time interval Δt\Delta t.

As reference we use the tractrix known from the curve theory, which was already found in the 17th century by Christian Huygens. In the xyxy-plane there is an analogy to the vehicle model (figure 1). A given point BB representing a heavy point on the yy-axis, connected by means of an inextensible string of length bb with point AA; its initial position lies in the origin. With movement of AA along the xx-axis – also called directrix – the dragged point BB describes the curve of the linear tractrix, whose analytic solution is given in its parametric representation

xB=b(ttanh(t))andyB=bcosh(t) .x_B = b\,\bigg(\,t-\tanh\,(t)\,\bigg)\qquad and\qquad y_B = \frac{b}{\cosh\,(t)}\ .

In order to get an approximate solution, we similarly let our vehicle model move along the xx-axis. Assuming constant velocity vv and a time step normalized to one Δt=1s\Delta t = 1s, we obtain a constant step size Δs=μb\Delta s = \mu\,b, which stands in relation to vehicle's towing length. Consequently, the distance traveled along xx-axis is calculated via si+1=si+μbs_{i+1} = s_i + \mu\,b. The time integration for absolute vehicle orientation φ\varphi according to (20) yields in new coordinates for point BB representing back axis

Bi+1=(si+10)b(cosφi+1sinφi+1) .\bold B_{i+1} = \begin{pmatrix}s_{i+1}\\0\end{pmatrix} -b\,\begin{pmatrix}\cos\varphi_{i+1}\\\sin\varphi_{i+1}\end{pmatrix}\ .

Figure 4 presents the simulated vehicle motion for different step sizes. Comparing both solutions, it can be seen that the deviation from tractrix (red)   especially in the first third   is large, but quickly converges towards the analytical value.

Figure 4: Approximation of different step sizes. From left to right: μ = [1, 0.5, 0.25].

8. Examples #

A live demonstration can be seen online at ... (repository).

Figure 5 shows a simplified, overlong and interactively guided vehicle formation made of a truck with semitrailer. Using the introduced approach allows efficient handling of dragged convoys, which basically consist of multiple vehicles - similar to the model in Figure 1. The longitudinal axis orientation e\bold e of the truck in front serves as direction vector u\bold u for the trailer behind it. Thus, all required variables according to Section 2 are known, which permits the use of relations (7), (19), (20), and (21).

Figure 5: Truck with semitrailer passes traffic circle. Background graphic [13]

9. Conclusion #

A numerical method is presented for analysis of vehicle kinematics and, in particular, dragging behavior, that can also be applied to vehicle assemblies. Assuming a constant guiding velocity on a known trajectory, it is possible by means of vectorial study of the vehicle's Bresse Circles to find expressions for the relevant angular velocity and acceleration.

Time integration based on this method was validated in comparison with the analytical tractrix. It demonstrates high quality, performance and robustness. Applications for simulating vehicle motions such as the purpose of determining space requirements can be easily implemented, especially in the web environment.

References #

[1] S. Breuer und A. Rohrbach-Kerl, Fahrzeugdynamik – Mechanik des bewegten Fahrzeugs. Springer Vieweg, 2015, isbn: 978-3-658-09474-4.
[2] H. Marzbani et al., „Transient and steady-state rotation center of vehicle dynamics“, International Conference on Knowledge Based and Intelligent Information and Engineering Systems, 2017.
[3] D. Wang, Trajectory planning for a four-wheel-steering vehicle, 2001. [Online]. Available at: https://www.researchgate.net/publication/3902741. [Last access: 01 July 2021].
[4] G. Figliolini, Ch. Lanni, Kinematic Analysis of the Planar Motion of Vehicles when Traveling Along Tractrix Curves, ASME 2015 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference.
[5] S. Gössner, Ein kinematisches Modell zur Analyse materialflußtechnischer Bewegungsabläufe. Dortmund: Verlag Praxiswissen, 1992, isbn: 3-929443-01-5.
[6] M. Braun, „Nichtholonome Bindungen und Systeme“, PAMM — Proceedings in Applied Mathematics and Mechanics, 2003 [Online]. Available at: 10.1002.
[7] R. Berndt, Einführung in die Symplektische Geometrie. Vieweg+Teubner, 1998, isbn: 978-3528031022.
[8] S. Gössner, Symplectic Geometry for Engineers — Fundamentals, 2019. [Online]. Available at: https://www.researchgate.net/publication/338124384. [Last access: 01 July 2021].
[9] B. Dizioglu, Getriebelehre - Grundlagen, Vieweg Verlag, 1965.
[10] S. Gössner, Mechanismentechnik — Vektorielle Analyse ebener Mechanismen. Berlin: Logos Verlag, 2017, isbn: 978-3-8325-4362-4.
[11] J.J. Uicker et al., Theory of Machines and Mechanisms. Oxford Press, 2011, isbn: 978-0190264482.
[12] M. Harrer und P. Pfeffer et al., Lenkungshandbuch: Lenksysteme, Lenkgefühl, Fahrdynamik von Kraftfahrzeugen. Springer Vieweg, 2013.
[13] A. Müseler, Photo: Straßwalchen Kreisverkehr, 2018, Lizenz: CC-BY-SA-3.0: https://creativecommons.org/licenses/by-sa/3.0/de/deed.de. [Online]. Available at: http://www.arne-mueseler.com.