Computational analysis of the Cauchy problem associated to the kinematic model of a mobile robot
 Daniela Coman^{1} and
 Adela Ionescu^{2}Email author
DOI: 10.1186/168727702013138
© Coman and Ionescu; licensee Springer. 2013
Received: 15 December 2012
Accepted: 26 April 2013
Published: 24 May 2013
Abstract
Recently, the specific problems arising to mobile robots are the following: determining the position and orientation of the robot on the field, planning an optimal path of motion and stationary or moving objects avoidance.
This paper realizes a computational analysis of the Cauchy problem associated to a mobile robot kinematics. The ‘phase portrait’ graphical tool of the mathematical soft MAPLE11 points out the influence of the initial conditions: the initial velocities of the driving (left and right) wheels of the robot on the robot trajectory. Considering a pair of two simulation cases for the initial conditions brings a good reliability of the analysis.
MSC:68T40, 70B15, 70B10, 37M05.
Keywords
mobile robot differential drive kinematic model phaseportrait1 Introduction
The basic goal of this work is to get a consistent computational analysis of the trajectory of a twowheeled differential robot. This implies a few levels: analytical, computational and experimental. For the moment, we shall focus on the computational level.
The mobile robot placing in a workspace represents the definition of the position and orientation possibilities that can be achieved in that space. Controllability of a mobile robot defines the possible trajectories from its workspace. In order to move in the workspace, the mobile robots need certain mechanical components to allow precise movement (or movement would be chaotic). Currently, there are several components, including wheel, track and legs. The most popular designs are the wheeled mobile robots. The wheeled mobile robots are also better controlled than other types of robots. Disadvantages of wheeled robots are that they cannot navigate well over obstacles such as rocky terrain, sharp slopes, or areas with low friction. Usually, robots of this type are used during competitions (e.g., a soccer game, a sumo fight etc.) and are most popular in the consumer market. Robots can have any number of wheels, but three wheels are sufficient for static and dynamic balance. Additional wheels can add to balance; however, additional mechanisms will be required to keep all the wheels on the ground when the terrain is not flat.

ensures smooth motion;

achieved by propelling and directing by the angular speed difference between the wheels.

the transverse displacements impossibility;

the risk of slipping.
A differential twowheeled robot is a mobile robot whose movement is based on two separately driven wheels placed on either side of the robot body. It can thus change its direction by varying the relative rate of rotation of its wheels and hence does not require an additional steering motion. One or more free wheels (or ‘castor’ wheels) assure the robot equilibrium. Each castor wheel is independently mounted on a vertical nondrive axis of the body and it is automatically and freely aligned on the route as a result of the forces developed by the two ‘drive wheels’. If both wheels are driven in the same direction and at the same speed, the robot will go in a straight line. Otherwise, depending on the speed of rotation and its direction, the centre of rotation may fall anywhere in the line that joins the two wheels. Since the direction of the robot is dependent on the rate and direction of rotation of the two driven wheels, these quantities should be sensed and controlled precisely. This usually creates some problem. If both wheels are turned with equal speed in opposite directions, the robot will rotate about the central point of the axis.
 (a)
A widespread mobile robot is the twowheeled mobile robot. Its kinematic scheme is presented in Figure 1.
An important component present in this structure type is ICRinstantaneous center of rotation, with Rradius from ICR.
The velocity of each wheel can be varied. The robot must rotate about a point that lies along the common axis of left and right wheels in order to perform rolling motion. This point that the robot rotates around is known as the ICR (Instantaneous Center of Rotation).
 1.
If ${V}_{L}={V}_{R}$, then $R\to \mathrm{\infty}$ and the robot moves in a straight line.
 2.
If ${V}_{L}={V}_{R}$, then $R=0$ and the robot rotates about the midpoint of the wheel axis.
 3.
If ${V}_{L}=0$, then the robot rotates about the left wheel and if ${V}_{R}=0$, then the robot rotates about the right wheel. In this case $R=\frac{L}{2}$.
2 The kinematicmathematical model of the twowheeled differential drive mobile
In what follows some considerations regarding the mathematical models for a class of mobile robots, namely twowheeled differential drive mobile robots, some of the most utilized mechanical structures in mobile robotics practice, are presented.
In this section the basic mathematical model of the nonslipping and purerolling twowheeled mobile robot is concisely exposed.
where ${\omega}_{l}$ is the angular velocity of the left wheel, ${\omega}_{r}$ is the angular velocity of the right wheel, ω is the angular velocity of the robot center, ${v}_{l}$ is the velocity of the left wheel, ${v}_{r}$ is the velocity of the right wheel, v is the velocity of the robot, r is the radius of the wheel, L is the distance between the two wheels.
The velocity vector U is defined as ${[v,\omega ]}^{T}$. The posture vector P is defined as ${[x,y,\theta ]}^{T}$, which consists of the coordinate of the robot and the angle between the orientation of the robot and the Xaxis.
Equations (5) and (6) describe the kinematical model of the twowheeled mobile robot.
3 Methods
In the computational analysis of the mobile robot trajectory, some specific and fast tools of MAPLE11 soft are used. These tools are generally based on a wide spread numeric method  the Fehlberg fourthfifth order RungeKutta method  the socalled ‘rkf45’ method  with degree four interpolant [3].
A widespread and fast graphical tool is the ‘phaseportrait’ tool. The ‘phaseportrait’ is a plot builder which realizes the phaseportrait for a system of differential equations. It is a fast procedure based on specific numeric methods for approximating the solution of the studied differential system. For the present computational aim, the classical method of Euler has been chosen, in fact, the ‘forward Euler’ method.
The parameters are the following:
deqns  a list or a set of firstorder ordinary differential equations, or a single differential equation of any order;
vars  dependent variable, or a list or a set of dependent variables;
trange  range of the independent variable;
inits  a set or a list of lists; initial conditions for solution curves;
options  (optional) equations of the form keyword = value.
The default method of integration is $\mathbf{method}\mathbf{=}\mathbf{\text{classical[rk4]}}$. Other methods can be specified in the optional equations. Note that because numerical methods are used to generate plots, the output is subject to the characteristics of the numerical method in use. In particular, unusual output may occur when dealing with asymptotes of solution curves. This also means that the initial conditions of the problem must be given in a standard form, that is, the function values and all derivatives up to the differential order of the differential equation at the same point minus one.
By default, plots are produced with boxed axes. In contrast with DEplot tool, this tool does not produce a direction field constituted by field arrows. This is not possible in 3D case, but its role is taken by the ‘scene’ parameter. Below some of the basic parameters of the procedure are detailed.
inits is a list (or a set) of lists, each sublist specifying one group of initial conditions (for one solution curve).
scene specifies the plot to be viewed. For example, $\mathbf{\text{scene}}\mathbf{=}\mathbf{[}\mathbf{x}\mathbf{,}\phantom{\rule{0.25em}{0ex}}\mathbf{y}\mathbf{,}\phantom{\rule{0.25em}{0ex}}\mathbf{z}\mathbf{]}$ indicates that the plot of x versus y versus z is to be plotted, with t implicit, while $\mathbf{\text{scene}}\mathbf{=}\mathbf{[}\mathbf{t}\mathbf{,}\phantom{\rule{0.25em}{0ex}}\mathbf{y}\mathbf{,}\phantom{\rule{0.25em}{0ex}}\mathbf{z}\mathbf{]}$ plots t versus y versus z (t explicit). This option can also be used to change the order in which to plot the variables. If vars is entered as a set, there is no default ordering; if entered as a list, the given ordering is used.
and specifies the distance between mesh points to be used in generating the graph. For $\mathbf{\text{trange}}\mathbf{=}\mathbf{a}\mathbf{\dots}\mathbf{b}$, the default stepsize value is $\mathbf{abs}\mathbf{(}\mathbf{(}\mathbf{b}\mathbf{}\mathbf{a}\mathbf{)}\mathbf{)}\mathbf{/}\mathbf{20}$. If the stepsize specified is too large, the default is used.
In this paper the ‘phaseportrait’ graphical tool is tested in order to get comparative graphical analysis with other MAPLE tools. This plot tool is appropriate for the proposed model as it produces an appropriate representation of the trajectory of the studied mobile.
4 Computational simulations of the kinematic model
4.1 The Cauchy problem associated to the model
From mathematical standpoint, equations (3) and (6) represent a system of firstorder differential equations together with its basic parameters.
where the associated initial condition is deduced from the initial velocity of the robot, that means, from the left and right velocity pairs $({v}_{l},{v}_{r})$ given by the relation (2) above.
4.2 Computational modeling in case studies
In this section the results of computational simulations of the mobile robot trajectory in some specific conditions are presented. These conditions are in agreement with the experimental simulations recently realized in the University of Craiova in order to analyze the trajectory of this robot type.
In our experiment, we use a YSRA mobile robot which is small in size ($7.5\phantom{\rule{0.1em}{0ex}}\text{cm}\times 7.5\phantom{\rule{0.1em}{0ex}}\text{cm}\times 7.5\phantom{\rule{0.1em}{0ex}}\text{cm}$) and a black wooden rectangular playground. A host computer controls the robot by commanding the robot velocities like a radiocontrolled car. There are three different programs included in the YSRA robot; a program receives commands of the host computer, the other program counts the numbers of Encoder, and another program controls the motor’s movement by speed commands from the host computer.
 1.
the communication part: receives communication commands from the host computer;
 2.
the power part: makes power to operate the motor and microcontroller;
 3.
the microcontroller part: translates the communication commands from the host computer and makes the control commands of the motor. The microcontroller is Intel 80C296SA;
 4.
motor part: impresses electricity to the motor as much as wanted by commands of the motor.
The experimental results obtained with the YSRA robot are presented in snapshots in Figures 1627. This experiment is filmed by a SAMSUNG Digital Color CCD camera (SDC410ND) and Figures 1627 are captured from a clip. Following the pictures in their successive order, it comes easy that the robot trajectory is indeed circular.
The mobile robot trajectory is simulated in an interval of $0\dots 18$ time units, divided into five parts, representing the stages of observation and simulation cases too.
 (a)
Case 1. ${v}_{r}=15\cdot cos(\frac{\pi}{17\cdot t})$, ${v}_{l}=15\cdot cos(\frac{3\cdot \pi}{19\cdot t})$;
 (b)
Case 2. ${v}_{r}=9.5\cdot cos(\frac{2\cdot \pi}{0.1\cdot t})$, ${v}_{l}=11.5\cdot cos(\frac{3.5\cdot \pi}{0.1\cdot t})$.
For each of the above cases, the ‘phaseportrait’ procedure was applied step by step for the Cauchy problem (9) on the intervals: $[0,4]$, $[4,8]$, $[8,10]$, $[10,14]$, $[14,18]$. At each step, the initial conditions, the values of the velocities pair $({v}_{l},{v}_{r})$, were calculated based on the solution of the differential system (9) at the preceding step. The ‘scene’ parameter was chosen $[x(t),y(t)]$ in order to give for the mobile trajectory a ‘seen from above’ image.
5 Discussions
At first sight, it must be observed that at the beginning of the analysis, when starting with the initial velocities $(8,4)$, the mobile robot trajectory seems to be circular, and at the further stages it changes, recording a periodic trend or a ‘loop’ trajectory. The trajectory modification records itself significant modifications. Thus an important influence of the initial conditions of the Cauchy problem on the mobile trajectory is noticed.
In the first simulation case, for $t=4\dots 8$, the trajectory becomes thick, recording a periodicity trend. This is very interesting since there is no other case with this situation in the analysis. After that, the mobile tends to have not a complete circle. Moreover, for $t=14\dots 18$, a trajectory formed by line segments is recorded.
In Case 2 of simulation, it is very important to notice the special trajectory form for $t=10\dots 14$: a half loop with positive values, and a complete different allure for $t=14\dots 18$ with negative values. Again the trajectory allure has a strong modification from a simulation stage to the next one. And all these in no special conditions for the time unit simulation parameter: in MAPLE, the time unit can have from the smallest values to bigger ones.
In fact, it is no rule for this important change of the trajectory, all these special events issue in a random way. Thus we can say that the Cauchy problem associated to the mobile kinematics is in fact a sensitivecase model.
6 Conclusion
The basic conclusion of the above analysis is that the Cauchy problem analyzed here brings a new approach of the studied mobile robot kinematics. The ‘phaseportrait’ graphical tool is extremely helpful because it is fast and has very flexible parameters. Note that here only a situation for the ‘scene’ parameter of the procedure, namely ‘$\text{scene}=[x(t),y(t)]$’, was used. Other possibilities for ‘scene’ would give another perspective for the mobile trajectory analysis. We must take into account that we can assimilate the mobile in his move with a material point lying in the middle of the axis that joins the centers of the left and right driving wheels, and rotating around its ICR.
Thus, from qualitative reasoning, some basic ideas for next target have to be outlined:

To increase the number of simulations, for more variation functions for the pair $({v}_{l},{v}_{r})$.

To use another analytical or numerical MAPLE tools for getting more analysis data on the Cauchy problem behavior. Testing step by step the Cauchy problem was possible due to the flexible structure of the MAPLE11 graphical/computational tools [5]. At the same time, this shows that these repetitive simulations are relatively easy to perform.
It is important to notice the issues of repetitive phenomena: in the above analysis, a specific allure of the trajectory is repeated. The further changes are due to the initial conditions variations. Repetitive phenomena can be collected in order to realize a global panel of random distributed events in the kinematics of a twowheeled differential drive mobile robot and to use the statistical observations in the further analysis. Finally, the feasibility and effectiveness of the proposed computational analysis for the mobile robot trajectory is demonstrated by the experimental results.
Declarations
Acknowledgements
Dedicated to Professor Hari M Srivastava.
Authors’ Affiliations
References
 Fahimi F: The Autonomous Robots: Modeling, Path Planning, and Control. Springer, Berlin; 2008.
 Kim JH, Kim DH, Seow KT: Soccer Robotic. Springer, Berlin; 2004.
 Abell ML, Braselton JP: Maple by Example. 3rd edition. Elsevier, San Diego; 2005.MATH
 Coman D, Ionescu A: Motion control of the soccer robot based on fuzzy logic. Lecture Notes in Advances Computational Science 1148. In Topics in Fuzzy Logic. Edited by: Simos T, Maroulis G. Melville, New York; 2009:57–60.
 Hindmarsh AC, Stepleman RS (Eds): Odepack, a Systemized Collection of ODE Solvers. NorthHolland, Amsterdam; 1983.
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.