Next Article in Journal
The Effectiveness of an Authentic E-Learning Environment for Deaf Learners
Next Article in Special Issue
A Vision-Guided Deep Learning Framework for Dexterous Robotic Grasping Using Gaussian Processes and Transformers
Previous Article in Journal
Design of a Waste Classification System Using a Low Experimental Cost Capacitive Sensor and Machine Learning Algorithms
Previous Article in Special Issue
Image-Based Tactile Deformation Simulation and Pose Estimation for Robot Skill Learning
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Redesign of a Towing Mobile Robot Control Architecture and Implementation of Outdoor Experiments Using the Transverse Function Approach

1
Faculty of Control, Robotics and Electrical Engineering, Institute of Automatic Control and Robotics, Poznan University of Technology, 60-965 Poznan, Poland
2
B&R Automatyka Przemysłowa Sp. z o.o., ul. Małachowskiego 10, 61-129 Poznan, Poland
3
pmLogic Sp. z o.o., ul. Leśna 43, 62-070 Pokrzywnica, Poland
4
Faculty of Automatic Control, Robotics and Electrical Engineering, Institute of Electrical Engineering and Electronics, Poznan University of Technology, 60-965 Poznan, Poland
5
InterNow Paweł Nowak, Liszkowo 21, 88-180 Złotniki Kujawskie, Poland
*
Author to whom correspondence should be addressed.
Appl. Sci. 2025, 15(3), 1566; https://doi.org/10.3390/app15031566
Submission received: 5 December 2024 / Revised: 20 January 2025 / Accepted: 29 January 2025 / Published: 4 February 2025
(This article belongs to the Special Issue Recent Advances in Autonomous Systems and Robotics, 2nd Edition)

Abstract

:
This article discusses the redesign of a towing mobile robot to obtain a modern system for implementing mobile robot control research. Controller architecture issues are presented, and a selected control algorithm is considered in detail. The reconstruction of the robot is also intended to ensure that the current standards for the electronic architecture controlling the robot are met and that this architecture can be easily developed to include components related to the safety of the robot’s operation. The discussion of the control architecture is divided into a description of the high-level controller responsible for the position stabilization algorithm and a description of the low-level controller responsible for the drive motor control and robot safety. The high-level control algorithm is responsible for a trajectory tracking task realized with use of a transverse function approach algorithm. A time elastic band algorithm was also used to generate a reference trajectory, allowing the robot to be guided through waypoints. The low-level controller is comprehensively described with details on the industrial controller architecture used, the communication between the controller modules, and the interaction of these modules with the on-board computer. The redesign of the towing mobile robot was summarized by the implementation of outdoor experiments where the task of driving through reference points was completed.

1. Introduction

The research results presented in this article are part of an ongoing project related to the rebuilding of a Towing Mobile Robot (TMR). This robot is a prototype device designed for various transportation tasks and can also serve as a platform for service robots. It was fully designed and built by the Institute of Automation and Robotics (IAR) of Poznan University of Technology as part of the project entitled “Construction of a service mobile robot with modular structure” led by Krzysztof Kozłowski in collaboration with with Jarosław Majchrzak [1]. It is one of the projects carried out by the IAR in the field of designing specialized robots [2,3], especially mobile robots [4,5,6]. The project we mentioned above was then continued under another project entitled “Intelligent Mobile Robot Control System”, supervised by Bartłomiej Krysiak, involving the reconstruction of the TMR robot. The primary goal of this project was the robot’s redesign to achieve current standards in autonomous mobile robots in terms of control, operation safety in an environment with humans, and flexibility of software implementation. In addition, an important goal of rebuilding the architecture of the robot’s control system was to obtain such a controller architecture to ensure the possibility of convenient and efficient research and testing of new control/navigation methods in mobile robotics.
The design and development of mobile robots requires a broad knowledge of not only robotics but also mechanics, electronics, and IT tools. The way in which components are designed and selected depends on the type of locomotion and the intended use of the mobile robot vehicle. The design of the mechanical structure is usually the first stage, depending on the tasks set for the robot and the working environment. There are different requirements for indoor applications, for example, cleaning robots [7] or mobile construction robots [8]. The development of mobile robots for outdoor tasks is usually more demanding in terms of the design of the mobile platform and the equipping of it with a set of sensors [9,10] allowing robustness and mobility in different terrain conditions [11]. Sometimes, such platforms are designed to be versatile with a choice of configuration or adaptation of the type of drive from wheeled to crawler depending on the task and terrain [12,13].
In any robotic system, a key issue is the control architecture. On the one hand, the control system architecture can be thought of as a system that acquires and processes sensory information, determining actions and control signals to achieve set goals. In the classical view, the control architecture can be centralized or distributed, and the reasoning could be reactive or deliberative. In this context, one can consider how input signals should be processed, by sensor fusion or command arbitration [14]. More recent works propose combining different assumptions to create hybrid architectures [15] and behavior-based approaches [16,17]. A more complex issue is the control architectures for the formation of multiple mobile robots [6,18].
When considering the control architecture, a distinction can also be made between a low-level and a high-level control layer. The low-level layer is mainly related to the hardware part of the system, which is responsible for executing movement through the robot drives and collecting and processing measurements from internal sensors. This layer can also be tasked for the safety and proper behavior if the high-level controller fails. The high-level controller is the main computing unit responsible for sensor acquisitions for environment perception, localization, planning and navigation, general diagnostics, and communication with the low-level controller. Currently, a commonly used software tool for high-level software preparation is the Robot Operating System (ROS), which provides system modularity and easy data exchange between different devices and software modules [17,19,20].
As a result of the modifications employed, the mechanical structure of the TMR chassis was enlarged, and its electrical and electronic components were replaced, including wheel rotation sensors and the laser scanner. In preparation for testing the robot in an outdoor environment, the implementation of control algorithms was realized. A high-level controller responsible for generating a reference trajectory and stabilizing the robot’s position along this trajectory and a low-level controller responsible for executing set speeds through the drive motors were considered. The specific type of algorithm was selected for high-level controller taking into account a number of methods proposed in the literature. In this case, an advanced method derived from geometric non-linear control techniques was chosen, using the so-called transverse functions (TFs) [21]. It should be noted that it is a universal smooth stabilizer that enables practical stabilization along any bounded trajectory including a fixed point. Although there are applications of this approach to mobile robot control, i.e., [22,23], not many papers deal with the experimental validation of this approach. Works such as [24,25] show experiments with a mobile robot in an indoor environment. The motion control algorithm considered in this article was developed with a modified method of tuning the transverse function parameters; this method was introduced in [3], where a nonholonomic manipulator control was considered. The TF algorithm performs stabilization of the robot’s position on a trajectory that was generated using the time elastic band algorithm [26]. This provided a practical and fast way to prototype different trajectories of the robot’s traversal using the passage points, which significantly facilitates the implementation of field tests. The high-level control algorithm involving transverse functions and time elastic band methods was implemented on the robot’s on-board computer, and integration with the low-level controller responsible for stabilizing electric motors operation was carried out. The low-level controller was implemented using an industrial PLC, which is also responsible for the safety of the robot’s operation. Consequently, the paper also presents basic issues related to the implementation of a low-level controller. In addition, basic information on the robot’s design is presented.
This paper is focused both on theoretical and practical aspects of motion control in mobile robotics. In particular, the design of a novel control architecture that enables the operational deployment of the rebuilt towing mobile robot in outdoor tests is discussed. In this paper, the architecture is understood as the specific solution that integrates a non-standard motion controller with the TEB planner, using modern industrial automation components, rather than as a new paradigm for how different system blocks are interconnected. The publication presents the application of modern techniques for implementing robot control architecture using industrial PLCs. Few publications in the field of mobile robot control cover these issues in detail. In many cases, this is due to the use of mobile robots produced by the robotics industry for research, which do not provide such data. An important contribution of the publication is also the presentation of the details of the implementation of the control algorithm at the level of servo drives and at the level of the responsible high-level algorithm. To implement the high-level control algorithm, the transverse function algorithm is used together with the time elastic band method. This solution allows a unified approach for tracking trajectories generated through transit points to be achieved. To the best of the authors’ knowledge, this represents the first synthesis of the transverse function algorithm together with the time elastic band method. The results of the outdoor experimental research presented here confirm the effectiveness and stability of the proposed control architecture using a continuous smooth feedback controller along with a time-optimized controller generating the robot’s motion trajectory.
In summary, the key contributions can be described as follows:
  • Implementation of a nonlinear controller using transverse functions using a novel tuning scheme: Despite prior theoretical works available in the literature, this method has not been widely adopted or applied in practical robotics, particularly in user-level robots;
  • Integration of modern industrial automation components in mobile robotics: Industrial automation elements are incorporated into the control architecture of a nonholonomic robot, enhancing its functionality and bridging the gap between advanced control theory and practical applications in robotics;
  • Development of a universal robotic testing platform using the ROS environment: The robot is designed as a versatile platform within the ROS ecosystem, enabling experimentation and validation of advanced control strategies and automation technologies in real-world transport applications.

2. Theoretical Background

We consider the planar motion of a two-wheeled robot. Its position is described by the coordinates ( x c , y c ) of a point fixed at the center of the axis of the wheels in the inertial frame, and its orientation relative to this frame is given by θ . Assuming a non-skid condition for both wheels, the kinematics of the robot can be represented by the following unicycle model:
x ˙ = X 1 ( x ) u 1 + X 2 ( x ) u 2 ,
where x = x 1 x 2 x 3 T = x c y c θ c T X R 3 is the configuration (state) and u = u 1 u 2 T U R 2 is the control input, representing linear and angular velocity controls, and
X 1 ( x ) = cos x 3 sin x 3 0 T R 3 , X 2 ( x ) = 0 0 1 T R 3
are control vector fields. The kinematic structure (1) allows it to be defined on a Lie group isomorphic to the Special Euclidean Group S E ( 2 ) [27]. This property can be used efficiently for control design.
To facilitate the notation used in this paper, let us briefly recall the basic designations associated with representation on the Lie group.
  • G—a Lie group;
  • g—a group element;
  • g 1 g 2 —a group operation of the elements g 1 and g 2 , i.e., g 3 = g 1 g 2 creates a new group element g 3 ;
  • L g 1 —the left translation on G, where g 1 G , i.e., L g 1 g 2 = g 1 g 2 ;
  • X ( g ) —a vector field (vf) X X evaluated at the point g G , where X is a set of all smooth vfs;
  • X i _ j —a matrix consisting of j i + 1  vfs, i.e., X i _ j = X i X i + 1 X j 1 X j , where 0 < i < j ;
  • e—the neutral element, i.e., g e = e g = g , where e G ;
  • g 1 —the inverse element of g, i.e., g g 1 = g 1 g = e ;
  • Ad—the group adjoint representation, where Ad g : T e G T e G , i.e., Ad g = d c g ( e ) , d is a symbol of a differential, c g ( e ) = g e g 1 ; additionally Ad can be defined with use of the derivative of left translation as Ad g = d L g ( g 1 ) d L e ( g 1 ) , where g G ;
  • Ad g X —the adjoint representation projected on X ( e ) , i.e., Ad g X ( e ) = X ( e ) Ad g X ; by extension of this definition, we allow for the usage of Ad g X when considering the adjoint representation projected on a matrix X a _ b ( e ) , i.e., Ad g X a _ b ( e ) = Ad g X a ( e ) X b ( e ) = Ad g X a ( e ) Ad g X b ( e ) = X a Ad g X X b Ad g X
    = X a _ b ( e ) Ad g X .
For a broader introduction to representation on the Lie group, the reader is referred to [28]. Following the methodology used in this paper, we consider control vfs in (1) as generators of a Lie algebra g and assume that the following set of vfs  X 1 _ 3 = { X 1 , X 2 , X 3 } g , with X 3 = [ X 1 , X 2 ] being the Lie bracket, constitutes the algebra basis. This choice of algebra basis is rather standard, and a broader discussion of this topic can be found in [27]. Taking advantage of matrix vector notation, we define the matrix X 1 _ 3 ( x ) = X 1 ( x ) X 2 ( x ) X 3 ( x ) that uses vfs from X 1 _ 3 . Using this basis, it is possible to represent system (1) as
x ˙ = X 1 _ 3 ( x ) C u ^ ,
where C : = C 1 0 3 × 1 R 3 × 3 , C 1 : = I 2 × 2 0 1 × 2 T R 3 × 2 , I 2 × 2 R 2 × 2 is an identity matrix, and 0 3 × 1 R 3 × 1 and 0 1 × 2 R 1 × 2 are zero matrices. u ^ = u 1 u 2 u 3 T U ^ R 3 is an extended input, where u 1 and u 2 are from (1) and u 3 is a new element, which is currently not used and will be useful later when expanding the control vector with a new variable.
Since kinematics (1) is a system defined in the Lie group G, it implies that x G is an element of the group and vfs in the Lie algebra g are left invariant with respect to an operation of a Lie group. Lie group G is a smooth manifold with the group operation stated above. In general, it means that the mapping is associative, the group has e elements, there exists the inverse of g denoted as g 1 , and the mapping is smooth. In the case of the unicycle robot, the following group operation can be considered [21]:
g 1 , g 2 G , g 1 g 2 = g 3 G ,
g 31 = g 11 + cos ( g 13 ) g 21 sin ( g 13 ) g 22 , g 32 = g 12 + sin ( g 13 ) g 21 + cos ( g 13 ) g 22 , g 33 = g 13 + g 23 ,
where g i = [ g i 1 g i 2 g i 3 ] T and i { 1 , 2 , 3 } . In this case, the neutral element is e = [ 0 0 0 ] T , and using the group operation shown above, the inverse element is calculated, which is [21]:
g 1 1 = g 4 ,
g 41 = cos ( g 13 ) g 11 + sin ( g 13 ) g 12 , g 42 = sin ( g 13 ) g 11 cos ( g 13 ) g 12 , g 43 = g 13 ,
where g 4 = [ g 41 g 42 g 43 ] T . Later in this paper, the above operators are used to compose group elements and to calculate the inverse of group elements. A broader discussion on the calculation of the group operation and the neutral element with respect to systems evolving on S E ( 2 ) group can be found in [27].

3. Overview of the Controller Architecture

The fundamental component of the proposed control architecture for a nonholonomic robot is a universal motion controller based on the transverse function (TF) approach [21]. One of the most significant control challenges encountered in nonholonomic kinematics is that a smooth feedback cannot achieve asymptotic point stabilization or asymptotic tracking for any feasible reference trajectory. The TF approach is particularly well-suited for such systems due to its ability to achieve practical stabilization for any reference trajectory—whether feasible or not—persistently excited or reduced to a fixed point. By introducing an additional dynamic system to govern the evolution of the so-called transverse function and relaxing the requirement for asymptotic convergence of posture errors, it becomes possible to overcome the challenges in stabilizing nonholonomic systems, as highlighted by Brockett [29].
Essentially, the controller is designed at the kinematic level, meaning it generates the nominal control input u = u 1 u 2 T for kinematics (1) based on the current reference posture specified by the trajectory x r = x r 1 x r 2 x r 3 T X r R 3 , which is assumed to be sufficiently smooth. In this case, since the control strategy is smooth, the nominal signals are also smooth, which facilitates the extension of the control strategy to the dynamic level by incorporating an additional control loop. This can be implemented in a cascade manner such that the nominal kinematic inputs become the desired velocity trajectory, which is assumed to be tracked by the robot’s actual velocity. In practice, the velocity of the two-wheeled robot platform considered in this paper is measured and controlled based on the velocities of the left and right wheels. This approach is feasible, however, under operating conditions where wheel slip is negligible, specifically when the assumed velocity constraints are maintained. In such conditions, drive controllers stabilizing velocities of wheels can be employed. Assuming that these controllers ensure velocity tracking with sufficiently small errors, the perturbations affecting the kinematic control law specified for the robot platform become insignificant.
A motion controller based purely on feedback is usually insufficient to solve more complex tasks in mobile robotics. As a result, it is required to take advantage of planning-based strategies to efficiently shape the reference trajectory x r in order to ensure the proper operation of the robotic platform. This make it possible to include additional constraints, such as the presence of obstacles and limitations on acceleration and velocity. In the designed architecture, such a trajectory is generated with use of a time elastic band algorithm, which was first presented in [26] and later extended in [30]. The time elastic band algorithm was developed using the solution of a sparse scalar multi-objective optimization problem realized in an open loop. In Figure 1, the architecture responsible for realization of motion tasks is presented. The main blocks can be distinguished, such as the planner generating the reference trajectory based on a preliminary set of waypoints. This trajectory is followed by the feedback-based controller augmented by internal dynamics governing the transverse functions. Next, the drive controller is responsible for the realization of the kinematic control strategy by ensuring that velocity error is reduced significantly.

4. Motion Controller

The considered controller is defined on the Lie group G to take advantage of the symmetry of S E ( 2 ) configuration space. Consequently, the difference between any two configurations can be understood in terms of the Lie group. In particular, to quantify the tracking error on the Lie group G, we define:
x e = x r 1 x ,
where the group operation (4) and inverse (5) are used, and x e = x e 1 x e 2 x e 3 T X e R 3 . Analyzing the Formula (6), we find that it has a straightforward geometric interpretation; namely, it represents the robot coordinates x with respect to the reference trajectory coordinate system x r .

4.1. Transverse Function

With use of TF, we designed a bounded kinematic control law u for (1) which provides sup t 0 x e ( t ) < and lim t x e ( t ) V 0 , where V 0 it is a set of numbers representing the surroundings of a selected point, i.e., a hyperball with the center in the origin and an arbitrary small radius r V 0 > 0 . Thus, it is theoretically possible to arbitrarily choose the radius r V 0 to select the size of the neighborhood to which the error x e converges. Stating control problems in this way means that we expect to obtain stabilization of x e in a practical sense, as opposed to the often postulated asymptotic stabilization. Thus, the trajectory x e ( t ) converges to a small vicinity of e, which is a reasonable result in practical control problems involving a wide range of reference trajectories.
The transverse function can be proposed for a driftless system in form of (1) to satisfy the so-called transversality condition. One of the possibilities is to apply the exponential map of control vector fields [21]. Using this map for the kinematics (1) and employing the parameterization shown in [3], one can obtain the transverse function as:
f ( α , ε ) = exp ε β 1 sin ( α ) X 1 f 3 + ε β 2 cos ( α ) X 2 f 3 ,
where f ( α , ε ) = f 1 ( α , ε ) f 2 ( α , ε ) f 3 ( α , ε ) T R 3 , α S 1 is a new control variable, and where for the sake of simplicity, we adopt a designation f 3 f 3 ( α , ε ) , and β 1 , β 2 0 are constants. The meaning of ε will be discussed in the next section.
In this paper, we chose a simpler form of TF that approximates the solution of (1) in a vicinity of e without losing the transversality condition. Taking advantage of the parameterization used in (7), we consider the following formula
f ( α , ε ) = ε β 1 sin ( α ) ε β 2 cos ( α ) ε 2 β 1 β 2 4 sin ( 2 α ) T .

4.2. Tuning the Transverse Function

In [27], it is shown that f ( α , ε ) is maintained in the neighborhood of e, where the radius of this neighborhood can be arbitrarily reduced by choosing a sufficiently small value of ε . As a result, the value of ε is responsible adjusting the size of f. However, it is preferable that the value of ε is not too small initially, avoiding highly oscillatory state trajectories and controls. This phenomenon appears especially when implementing trajectory tracking violating the non-holonomic constraints imposed on the system (1). As proposed in [3], in the discussed robot controller, ε is not constant but gradually decreases according to the following formula:
ε : = ε min + γ 1 exp ( γ 2 t ) ,
where t is time, and the variables γ 1 , γ 2 , ε min R + are constant positive coefficients. Such a tuning scheme allows for narrowing the convergence tunnel of f to the neighborhood of e, with the radius of ε min as time progresses.

4.3. Auxiliary Tracking Error

The transverse function f provides an auxiliary trajectory that remains in the vicinity of e. This trajectory is then tracked by a feedback control law to ensure that the difference between this trajectory and the error x e converges to e, which simultaneously implies that x approaches a neighborhood of x r . To facilitate control design, the following auxiliary error in the Lie group G is considered
x ^ e : = x e f 1 ( α , ε ) ,
where x ^ e X ^ e R 3 . The inverse of f ( α , ε ) given as f 1 ( α , ε ) utilizes (5). The composition of x e and f 1 ( α , ε ) is achieved with use of the group operation (4).

4.4. Practical Stabilization Controller

The control aim is to design a feedback to ensure that lim t x ^ e ( t ) = e . For this purpose, we determine the dynamics of x ^ e :
x ^ ˙ e = X 1 _ 3 ( x ^ e ) Ad f X C ^ α , ε u ^ A ε α , ε ε ˙ Ad x e 1 X v r ,
where C ^ ( α , ε ) : = C A α ( α , ε ) , A α α , ε = X 1 _ 3 1 f f α , A ε α , ε = X 1 _ 3 1 f f ε , f f ( α , ε ) . As stated in the section on notation, X 1 _ 3 is a matrix composed of vf  X 1 , X 2 , and X 3 from (1). In addition, X 1 _ 3 1 is the inverse of the matrix X 1 _ 3 X 1 _ 3 ( x ^ e ) . The adjoin operator Ad f X is calculated as a combination of operations with the matrix X 1 _ 3 as in X 1 _ 3 Ad f X = Ad f X 1 _ 3 ; the adjoin operator Ad f acting on matrix X 1 _ 3 was introduced earlier. The second adjoin operator Ad x e 1 X is calculated similarly, that is, X 1 _ 3 Ad x e 1 X = Ad x e 1 X 1 _ 3 . The element x e 1 is the inverse of x e given by (6). In addition, here, we introduce the substitution of the input u 3 with a time derivative of the variable α , which defines the dynamics of changes in f ( α , ε ) . So, the input is u ^ = u 1 u 2 u 3 T = u 1 u 2 α ˙ T U ^ R 3 . Thus, it is obvious that u 1 and u 2 are the same as in (1). In (11), there is also an additional control input v r = v r 1 v r 2 v r 3 T V r R 3 , which is a reference input bounded with x r (6) by the reference dynamics
x ˙ r = X 1 _ 3 ( x r ) v r ,
which is equivalent to (3).
Taking into account that the operator X 1 _ 3 ( x ^ e ) Ad f X is globally invertible and that C ¯ ( α , ε ) is invertible for all α S 1 due to the properties of the transverse function, we can easily decouple the dynamics (11). As a result, we can propose the following control law:
u ^ : = C ^ 1 α , ε Ad f 1 X X 1 _ 3 1 ( x ^ e ) K x ^ e + A ε α , ε ε ˙ ,
where K R 3 × 3 is a stable Hurwitz matrix. Substitution of (13) to system (11) yields a linear system x ^ ˙ e = K x ^ e . This controller provides the exponential stability of x ^ e and practical stability at the same time of x e . This, in turn, leads to the state x converging to the vicinity of the reference state x r , ensuring that the robot approximately follows the reference trajectory in practice. The properties of the controller given by (13) are discussed in detail in [27].

5. Motion Planner

In the research under consideration, a planner based on the elastic band approach is used to generate the reference trajectory from waypoints. It is worth mentioning that this algorithm offers much broader capabilities, such as path planning in the presence of obstacles. In the following, we describe the method for optimizing the trajectory within the overall planning task. Certain dependencies will be rewritten in a form that corresponds to the representation of the system (1). As the time elastic band algorithm is presented in the discrete domain in paper [30], this section follows the same approach.
Let us define the reference state in discrete time x r ( k ) = x r 1 ( k ) x r 2 ( k ) x r 3 ( k ) T = x r c ( k ) y r c ( k ) θ r c ( k ) T X r R 3 , where the corresponding elements denote the desired position and orientation with respect to the inertial coordinate frame. Hence, x r ( k ) is a discrete trajectory that determines the pose of the reference robot for k = 1 , 2 , , j . Simultaneously, to represent the process in real time, we introduce the time interval for a given k sample in the form Δ T ( k ¯ ) R + where k ¯ = 1 , 2 , , j 1 . Each sample Δ T ( k ¯ ) specifies the time to move from x r ( k ) to x r ( k + 1 ) . Consequently, these values form pairs, which can be organized as a vector of transitions:
b : = [ x r ( 1 ) Δ T ( 1 ) x r ( 2 ) Δ T ( 2 ) x r ( j 1 ) Δ T ( j 1 ) x r ( j ) ] T .
Consider auxiliary reference state values in the form of reference initial state x r 0 and final state x r f . The goal is to determine reference controls that enable a transition from x r 0 to x r f in a minimum amount of time while ensuring that the constraints imposed by the robot’s kinematics are maintained. It is also necessary to define a function related to the kinematics constraints of the robot (1). Since it was previously assumed that the evolution of the reference trajectory x r must correspond to the solution of the dynamics (12), it must also correspond to these requirements. However, for simplicity, we will assume that the evolution of the reference trajectory will be restricted by vfs  X 1 and X 2 without using vf  X 3 . This is a narrowing of the requirement for x r evolution, which is due to the practicalities involved in determining a convenient trajectory for the movement of mobile robots. There are many well-known ways to achieve this goal. In the paper [30], it was proposed that the constraints associated with robot kinematics would be introduced by a function that relates the local angle of the robot’s orientation with respect to the vector connecting the two selected consecutive states of robot x r ( k ) and x r ( k + 1 ) . We define the vector connecting these points as the reduced increment of x r ( k ) in the form:
Δ x r ( k ) = x r 1 ( k + 1 ) x r 1 ( k ) x r 2 ( k + 1 ) x r 2 ( k ) 0 T .
The points x r ( k ) and x r ( k + 1 ) are assumed to be in a common arc. Following [30], we define the constraint equation associated with the robot’s kinematics as follows:
h ( x r ( k + 1 ) , x r ( k ) ) : = X 1 x r 3 ( k ) + X 1 x r 3 ( k ) × Δ x ˇ r ( k ) ,
where X 1 is defined by (2) and ’×’ denotes the cross product in R 3 .
According to [30], the optimization task can be specified by:
V * ( b ) : = min b k ¯ = 1 n 1 ( Δ T ( k ¯ ) ) 2 ,
subject to initial and final constraints
x r ( 1 ) = x r 0 , x r ( j ) = x r f ,
and subject to the following algebraic constraints
h ( x r ( k + 1 ) , x r ( k ) ) = 0 , r ( x r ( k + 1 ) , x r ( k ) ) 0 , v ( x r ( k + 1 ) , x r ( k ) , Δ T ( k ¯ ) ) 0 , a ( x r ( k + 2 ) , x r ( k + 1 ) , x r ( k ) , Δ T ( k ^ + 1 ) , Δ T ( k ^ ) ) 0 , a ( x r ( 2 ) , x r ( 1 ) , Δ T ( 1 ) ) 0 , a ( x r ( j ) , x r ( j 1 ) , Δ T ( j 1 ) ) 0 ,
where b is given by (14) and Δ T ( k ) > 0 , k ^ = 2 , 3 , , j 2 . The inequality r ( · ) 0 relates to the steering angle constraint, which is of a strong practical importance for real-world implementations of this algorithm. In addition, v ( · ) 0 and a ( · ) 0 describe the constraints imposed on the robot speed and acceleration, respectively, which are important in real-time operations. Detailed considerations of these constraint functions are not presented here, and the reader interested in the details is referred to the articles [26,30].

6. Mobile Robot TMR

6.1. Basic Information About the Mobile Robot

The design of the TMR is based on a classical differential traction structure, equipped with two opposing main wheels and two supporting wheels. The TMR robot without the outer casing is presented in Figure 2. The two main wheels are driven by built-in BLDC electric motors fitted in the wheels with unique running rims. In addition, the robot is equipped with two self-adjustable support wheels. On top of the robot is a system for automatically docking the robot to a towed trailer. Since the robot control research presented in this article is concerned with controlling the movement of the robot without a trailer, the details of the trailer are omitted here. The support frame of the robot was enlarged due to the expansion of the robot’s components, such as development of the power battery system and control electronic systems. Basic dimension and mass data are given in Table 1. The robot’s chassis structure is equipped with a suspension system that is adapted to the robot’s operation in outdoor spaces.

6.2. Robot Electronic Architecture

As a part of the robot’s design development, it was equipped with new electrical and electronic modules. The control system is based on the PLC made by B&R described in Section 6.3 and an Intel NUC Mini PC with the ROS environment implemented, which is discussed in Section 6.4. The position sensors for both wheels have been upgraded with TR1 TrueTrac encoders. A new modern safety controller was employed based on SICK’s Flexi Soft, SICK AG, Waldkirch, Germany. In addition, the robot was equipped with a new power supply system with charge control, an emergency power supply system, and the ability to flexibly connect electronic devices with different supply voltages. The motors are powered by 24 V high-power Pb batteries, while the electronics are powered by 24 V and 19 V low-power Li-Ion batteries. The block diagram of the connections between the individual modules is shown in Figure 3.
The implementation of new electrical and electronic modules forced the replacement of entire wiring, relays, switches, and transducers. New modules have been developed to enable flexible expansion of the robot’s electrical infrastructure, by adding, for example, new measurement devices.

6.3. Low-Level Drive Controller

The low-level control system consists of Programmable Logic Control (PLC) designed by B&R Industrial Automation GmbH, Eggelsberg, Austria with X20 series input and output cards and ACOPOSmicro servo drives (ACOPOS) which control 400-Series BLDC motors by Crystalyte; see Figure 4. The chosen PLC is equipped with 400 MHz and can work with a minimum cycle time of 1 ms. The ACOPOS server drive can work with nominal current of 8 A and voltage of 24 to 64 VDC. The used BLDC motor has a nominal voltage of 36 VDC and current of 2.42 A.
The PLC is a core part of the low-level controller. It receives a command from a high-level PC and processes an algorithm accordingly and controls physical inputs and outputs, such as analog signals and digital buttons from a joystick, enable signals from an emergency stop button, and battery status.
The communication architecture between the PLC and the servo drivers is shown in Figure 5. Motion control is the main part of the control process. According to the commands from a high-level PC, the PLC sends a command to servo drives (the ACOPOS in Figure 5), mostly in order to start the controller, to drive motors (marked as MOTOR in Figure 5) with proper parameters, i.e., set speed, acceleration, and jerk. Closed-loop control is covered by servo drives and is realized on the basis of the wheel rotation measurement, the actual value. The servo drives return status information to the PLC.
The algorithms implemented work in cycles depending on the demand for a fast reaction. The motion control module works with a 2 ms cycle, slower I/O with 100 ms, and TCP/IP communication with 200 ms. The motion control algorithm is shown in Figure 6.
The PLC sends parameters, such as speed and acceleration, to the ACOPOS servos and receives the status, e.g., an actual position, velocity, and the state, of each ACOPOS driver. The ACOPOS driver plans the setpoints and performs the control loop according to the control structure shown in Figure 7. The ACOPOS works in a loop—the cycle time of the position controller is 400 μ s, while that of the speed controller is 200 μ s and current controller is 200 μ s. The ACOPOS supplies motor with voltage and receives information about the actual motor current, shaft position, and velocity.
The ACOPOS controller uses PI-type regulators for both position and speed control of the motor in the cascade controller. Gain values for both regulators were determined using the built-in autotune procedure of the ACOPOS. This procedure was carried out on the basis of the guidelines from the ACOPOS documentation [31]. Subsequently, manual tuning of the controllers’ parameters was carried out. For this purpose, a positional override was set on the controller to achieve a trapezoidal profile of the set velocity. Then, the proportional gains of the controllers increased until the maximum dynamic responses were obtained and the speed overshoot was 5%. Subsequently, adjustment of the gain of the I component of the controller was made to increase the dynamics of the processes involved in leveling the steady-state deviation. Figure 8 shows the graphs recorded during the ACOPOS controller parameter tuning procedure, where the response was recorded using the final adjusted parameters. The overall goal of the tuning procedure was to find the smallest possible lag error for given velocity, acceleration, and deceleration values. The second graph in the series of charts shows the set constant speed value with a linear ramp up and down. The fourth graph shows the position value, and the first graph shows the position error. In the position error graph, it can be seen that in the period of 0–0.2 s, a deviation value of ± 0 . 3 was obtained, so the stabilization time 0.2 s was achieved. During constant velocity movement, in the period 0.2–1.0 s, the lag error is smaller and lies in the range of 0–0.1°.

6.4. High-Level Control

The high-level controller was implemented on an Intel NUC Mini PC running the Ubuntu with ROS operating system. The crucial role in the high-level software module is related to the main controller unit. This unit is responsible for calculations related to the velocity stabilization algorithm using transverse functions and the algorithm responsible for generating the reference trajectory of the robot’s movement. In addition, it aggregates measurement data from external sensors and collects diagnostic data from the low-level subsystem. Data exchange between the high-level control module and the low-level control module is carried out via the TCP/IP protocol. The communications software operates in two regimes, where the first concerns crucial data exchange, i.e., robot status management data of low-level control system and desired values for low-level controllers, where the exchanged is performed continuously in a loop of frequency up to 20 Hz. The second regime concerns communication on demand in a request–response manner to exchange less frequently updated data like configuration parameters.

7. Outdoor Experiments

The experiment illustrates the passage of a mobile robot in open space through a given point using an algorithm with transverse functions and a time elastic band algorithm to determine the reference trajectory. The time elastic band algorithm was implemented using the teb_local_planner plugin [32] for ROS.
The robot’s task is to pass through a set of waypoints x ¯ w = x c y c T X ¯ w R 2 , that is, points that define only the position without orientation: x ¯ w ( 1 ) = [ 1.5 1 ] T , x ¯ w ( 2 ) = [ 2.5 1 ] T , x ¯ w ( 3 ) = [ 3.5 1 ] T , x ¯ w ( 4 ) = [ 4.5 1 ] T and x ¯ w ( 5 ) = [ 0 5 ] T . The starting point and goal point are denoted as x w ( 0 ) = x c y c θ c T and x w ( f ) = x c y c θ c T belonging to X w R 3 and are defined as x w ( 0 ) = 0 0 0 T and x w ( f ) = 0 6 0 T . Most of the teb_local_planner plugin parameters were left at the default, with only a few changes. The parameters that were changed were maximum longitudinal speed max _ vel _ x = 0.5 m/s, maximum angular speed max _ vel _ theta = 0.5 m/s, forward movement preference parameter weight _ kinematics _ forward _ drive = 1000 , and minimization of the distance from the passage points weight _ viapoint = 300 . The parameters of the TF controller were as follows: the feedback gain matrix K was the identity matrix, the parameters responsible for the proportional gain of the individual members of the transverse function β 1 = 1.2 , β 2 = 1.7 and the parameters of dynamics of convergence of functions ε ware ε m i n = 0.25 , γ 1 = 2.5 , γ 2 = 0.1 .
Figure 9 shows the trajectory of the robot’s movement along with the passage points. Analyzing the position of the passage points and the trajectory, it can be seen that it was generated correctly. At the same time, it can be observed that the continuity of the trajectory at the passage points is preserved, which is due to the limiting function h ( x r ) implemented in (16). Figure 10 and Figure 11 show the TMR position and orientation of the TMR along with the reference position and orientation, while Figure 12 and Figure 13 show the errors of these values. From Figure 12, it can be seen that the position error does not exceed ± 0.1 m with x e 1 three times smaller than x e 2 . From Figure 13, it can be noticed that the misalignment of orientation does not exceed ± 0.2 rad. This is mainly due to the less aggressively adjusted gains of the proportional controller in the low-level controller. Figure 14 and Figure 15 show the input control u and the reference control v r , and Figure 16 and Figure 17 show the differences of these values. It can be observed that there are relatively large pulses in the control process, which most likely have the same cause as mentioned above.
The experiment confirms that the TMR stably performed the passage through the given points. The robot passed through the passage points with a precision of less than 0.08 m. Figure 18 shows the robot during the execution of the experiment.

8. Conclusions

This paper covers the redevelopment of the TMR robot, focusing on the implementation of both high-level and low-level controllers. The high-level controller includes an algorithm for trajectory tracking, with the trajectory determined based on waypoints points for practical reasons. We have provided details of the control algorithm design, along with the architecture and structure of the low-level controller. Our research and experiments show that the proposed control architecture works well for the task at hand. This work marks the first presentation of the TMR robot after a complete redesign of its control systems and the first field tests. In particular, it is demonstrated that a kinematic controller based on the transverse function approach, combined with an elastic-band-based planner, can effectively support motion tasks for a class of service robots, including the TMR robot.
The paper also includes the first outdoor implementation of the transverse function synthesis algorithm. In the future, the TMR robot will be used for more in-depth research on mobile robot control, particularly for tasks such as pulling a trailer in environments that require obstacle avoidance. The platform and its architecture are open and modular, making it a well-suited tool to test advanced motion control methods for nonholonomic robots, with applications in both academic research and real-world use.

Author Contributions

Conceptualization, B.K.; methodology, B.K. and M.K.; software, M.K., P.N., and M.M.; hardware preparation, B.K., J.M. and K.M.; validation, B.K, M.K., P.N., J.M. and K.M.; investigation, B.K., M.K., P.N., J.M. and K.M.; resources, B.K. and P.M.; data curation, B.K., P.M. and P.N.; writing—original draft preparation, B.K., M.K., J.M., P.N., M.M. and P.M.; writing—review and editing, D.P. and B.K.; visualization, B.K., M.K., J.M., P.N., M.M. and P.M.; supervision, B.K.; project administration, B.K. and P.M.; funding acquisition, D.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research was financially supported as a statutory work of Poznan University of Technology No. 0211/SBAD/0124.

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Acknowledgments

This work was realized within the framework of projects “Innovation Incubator 4.0” and “Support for the management of scientific research and commercialization of R&D results in scientific entities and enterprises”, no. POIR.04.04.00-00-0004/15.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kozłowski, K.; Dobroczyński, D.; Dutkiewicz, P.; Kiełczewski, M.; Knast, P.; Kowalczyk, W.; Michałek, M.; Majchrzak, J.; Pazderski, D.; Fellenberg, A.; et al. Budowa Usługowego Robota Mobilnego o Strukturze Modułowej; Internal Report; The Chair of Control and Systems Engineering, Poznan University of Technology: Poznan, Poland, 2012. (In Polish) [Google Scholar]
  2. Kowalski, M.; Dutkiewicz, P.; Ławniczak, M.; Michalski, M. SAFARI inspection robot- motion strategy. In Proceedings of the RoMoCo’2002: Proceedings of the Third International Workshop on Robot Motion and Control, Bukowy Dworek, Poland, 9–11 November 2002; Politechnika Poznańska: Poznań, Poland, 2002; pp. 93–100. [Google Scholar] [CrossRef]
  3. Krysiak, B.; Kozłowski, K. Smooth State Feedback Control of a New Nonholonomic Manipulator Coping with Singularities. IEEE Trans. Control. Syst. Technol. 2020, 28, 306–317. [Google Scholar] [CrossRef]
  4. Michałek, M.M.; Kiełczewski, M.; Jedwabny, T. Cascaded VFO Control for Non-Standard N-Trailer Robots. J. Intell. Robot. Syst. 2013, 77, 415–432. [Google Scholar] [CrossRef]
  5. Kowalczyk, W.; Przybyla, M.; Kozłowski, K. Set-point Control of Mobile Robot with Obstacle Detection and Avoidance Using Navigation Function—Experimental Verification. J. Intell. Robot. Syst. 2017, 85, 539–552. [Google Scholar] [CrossRef]
  6. Kiełczewski, M.; Kowalczyk, W.; Krysiak, B. Differentially-driven robots moving in formation—Leader–follower approach. Appl. Sci. 2022, 12, 7273. [Google Scholar] [CrossRef]
  7. Joon, A.; Kowalczyk, W. Design of autonomous mobile robot for cleaning in the environment with obstacles. Appl. Sci. 2021, 11, 8076. [Google Scholar] [CrossRef]
  8. Gawel, A.; Blum, H.; Pankert, J.; Krämer, K.; Bartolomei, L.; Ercan, S.; Farshidian, F.; Chli, M.; Gramazio, F.; Siegwart, R.; et al. A fully-integrated sensing and control system for high-accuracy mobile robotic building construction. In Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Macau, China, 3–8 November 2019; pp. 2300–2307. [Google Scholar]
  9. Hille, C.; Nasir, A.K.; Roth, H.; Abreu, A.A.; Piñeiro, D.L. Development of an outdoor mobile robot for teleoperation as an agent for a robot network. In Proceedings of the 19th World Congress, The International Federation of Automatic Control (IFAC), Cape Town, South Africa, 24–29 August 2014; pp. 9732–9737. [Google Scholar]
  10. Kao, I.-H.; Su, J.-A.; Perng, J.-W. Design of outdoor autonomous mobile robot. In Proceedings of the International Conference on Recent Innovations in Biotechnology, System Engineering, Applied Sciences, Space Environment & Aviation Technology, Qingdao, China, 25–26 March 2018. [Google Scholar]
  11. Raibert, M.; Blankespoor, K.; Nelson, G.; Playter, R. BigDog, the rough-terrain quadruped robot. In Proceedings of the 17th World Congress, The International Federation of Automatic Control (IFAC), Seoul, Republic of Korea, 6–11 July 2008; pp. 10822–10825. [Google Scholar]
  12. Bayar, G.; Koku, A.B.; Konukseven, E.I. Design of a configurable all terrain mobile robot platform. Int. J. Math. Models Methods Appl. Sci. 2009, 3, 366–373. [Google Scholar]
  13. Wang, J.; Liu, C.; Wei, W.; Yan, Q. Design and optimization of a reconfigurable wheel-tracked mobile robot, Mechatronics and Automation Technology. Adv. Transdiscipl. Eng. 2024, 46, 155–165. [Google Scholar]
  14. Rosenblatt, J.K.; Hendler, J.A. Architectures for mobile robot control. In Advances in Computers; Elsevier: Amsterdam, The Netherlands, 1999; Volume 48, pp. 315–353. [Google Scholar]
  15. Vázquez-Martín, R.; Martinez, J.; Del Toro, J.C.; Núnez, P.; Sandoval, F. A Software Control Architecture Based on Active Perception for Mobile Robotics. Available online: https://robolab.unex.es/wp-content/papercite-data/pdf/active-perception-mobile.pdf (accessed on 17 January 2025).
  16. Doroftei, D.; Colon, E.; De Cubber, G. A behaviour-based control and software architecture for the visually guided Robudem outdoor mobile robot. J. Autom. Mob. Robot. Intell. Syst. 2008, 2, 19–24. [Google Scholar]
  17. Bernardo, R.; Sousa, J.M.; Botto, M.A.; Gonçalves, P.J. A novel control architecture based on behavior trees for an omni-directional mobile robot. Robotics 2023, 12, 170. [Google Scholar] [CrossRef]
  18. Tsiu, L.; Markus, E.D. A survey of formation control for multiple mobile robotic systems. Int. J. Mech. Eng. Robot. Res. 2020, 9, 1515–1520. [Google Scholar] [CrossRef]
  19. Asadi, K.; Ramshankar, H.; Pullagurla, H.; Bhandare, A.; Shanbhag, S.; Mehta, P.; Kundu, S.; Han, K.; Lobaton, E.; Wu, T. Vision-based integrated mobile robotic system for real-time applications in construction. Autom. Constr. 2018, 96, 470–482. [Google Scholar] [CrossRef]
  20. Seredyński, D.; Winiarski, T.; Zieliński, C. FABRIC: Framework for Agent-based robot control systems. In Proceedings of the 12th International Workshop on Robot Motion and Control (RoMoCo), Poznań, Poland, 8–10 July 2019; pp. 215–222. [Google Scholar]
  21. Morin, P.; Samson, C. Practical stabilization of driftless systems on Lie groups: The transverse function approach. IEEE Trans. Autom. Control 2003, 48, 1496–1508. [Google Scholar] [CrossRef]
  22. Morin, P.; Samson, C. Practical stabilization of driftless homogeneous systems based on the use of transverse periodic functions. In Proceedings of the 40th IEEE Conference on Decision and Control, Orlando, FL, USA, 4–7 December 2001; Volume 2, pp. 1761–1766. [Google Scholar]
  23. Artus, G.; Morin, P.; Samson, C. Control of a Maneuvering Mobile Robot by Transverse Functions, In On Advances in Robot Kinematics; Springer: Dordrecht, The Netherlands, 2004; pp. 459–468. [Google Scholar] [CrossRef]
  24. Pazderski, D. Waypoint Following for Differentially Driven Wheeled Robots with Limited Velocity Perturbations. J. Intell. Robot. Syst. 2017, 85, 553–575. [Google Scholar] [CrossRef]
  25. Yan, L.; Ma, B.; Jia, Y. Trajectory tracking control of nonholonomic wheeled mobile robots using only measurements for position and velocity. Automatica 2024, 159, 111374. [Google Scholar] [CrossRef]
  26. Rösmann, C.; Feiten, W.; Wösch, T.; Hoffmann, F.; Bertram, T. Trajectory modification considering dynamic constraints of autonomous robots. In Proceedings of the 7th German Conference on Robotics, Germany, Munich, 21–22 May 2012; pp. 74–79. [Google Scholar]
  27. Morin, P.; Samson, C. Trajectory tracking for nonholonomic systems. In Theoretical Background and Applications; Research Report RR-6464; INRIA: Le Chesnay-Rocquencourt, France, 2008; Available online: http://hal.inria.fr/inria-00260694 (accessed on 17 January 2025).
  28. Struemper, H.K. Motion Control for Nonholonomic Systems on Matrix Lie Groups. Ph.D. Dissertation, University of Maryland, College Park, MD, USA, 1997. [Google Scholar]
  29. Brockett, R.W. Asymptotic stability and feedback stabilization. In Differential Geometric Control Theory; Brockett, R.W., Millman, R.S., Sussmann, H.J., Eds.; Birkhäuser: Boston, MA, USA, 1983; pp. 181–191. [Google Scholar]
  30. Rösmann, C.; Hoffmann, F.; Bertram, T. Integrated online trajectory planning and optimization in distinctive topologies. Robot. Auton. Syst. 2017, 88, 142–153. [Google Scholar] [CrossRef]
  31. B&R Training Materials: TM410 Working with Integrated Motion Control V4100, B&R Own Publication, TM410. 2013. Available online: https://www.scribd.com/document/736118035/TM410TRE-40-ENG-Working-with-Integrated-Motion-Control-V4100 (accessed on 17 January 2025).
  32. Rösmann, C. Teb Local Planner. Available online: http://wiki.ros.org/teb_local_planner (accessed on 17 January 2025).
Figure 1. Block diagram of the robot controller.
Figure 1. Block diagram of the robot controller.
Applsci 15 01566 g001
Figure 2. View of the robot without the outer casing.
Figure 2. View of the robot without the outer casing.
Applsci 15 01566 g002
Figure 3. Block diagram of electric architecture.
Figure 3. Block diagram of electric architecture.
Applsci 15 01566 g003
Figure 4. Control system architecture.
Figure 4. Control system architecture.
Applsci 15 01566 g004
Figure 5. Communication between the drive and the controller.
Figure 5. Communication between the drive and the controller.
Applsci 15 01566 g005
Figure 6. PLC motion control algorithm.
Figure 6. PLC motion control algorithm.
Applsci 15 01566 g006
Figure 7. Block diagram of the low-level controller.
Figure 7. Block diagram of the low-level controller.
Applsci 15 01566 g007
Figure 8. Plots of wheel movement during the tuning procedure, where charts represent the position error [°], set speed [°/s], current [A], and position [°].
Figure 8. Plots of wheel movement during the tuning procedure, where charts represent the position error [°], set speed [°/s], current [A], and position [°].
Applsci 15 01566 g008
Figure 9. Route trajectory with transit points.
Figure 9. Route trajectory with transit points.
Applsci 15 01566 g009
Figure 10. Position: x 1 , x 2 —solid, x r 1 , x r 2 —dashed, [ m ] .
Figure 10. Position: x 1 , x 2 —solid, x r 1 , x r 2 —dashed, [ m ] .
Applsci 15 01566 g010
Figure 11. Orientation: x 3 —solid, x r 3 —dashed, [ rad ] .
Figure 11. Orientation: x 3 —solid, x r 3 —dashed, [ rad ] .
Applsci 15 01566 g011
Figure 12. Position error: x e 1 —solid, x e 2 —dashed, [ m ] .
Figure 12. Position error: x e 1 —solid, x e 2 —dashed, [ m ] .
Applsci 15 01566 g012
Figure 13. Orientation error: x e 3 , [ rad ] .
Figure 13. Orientation error: x e 3 , [ rad ] .
Applsci 15 01566 g013
Figure 14. Velocity: u 1 —solid, v r 1 —dashed, [ m / s ] .
Figure 14. Velocity: u 1 —solid, v r 1 —dashed, [ m / s ] .
Applsci 15 01566 g014
Figure 15. Velocity: u 2 —solid, v r 2 —dashed, [ rad / s ] .
Figure 15. Velocity: u 2 —solid, v r 2 —dashed, [ rad / s ] .
Applsci 15 01566 g015
Figure 16. Velocity error: u 1 v r 1 , [ m / s ] .
Figure 16. Velocity error: u 1 v r 1 , [ m / s ] .
Applsci 15 01566 g016
Figure 17. Velocity error: u 2 v r 2 , [ rad / s ] .
Figure 17. Velocity error: u 2 v r 2 , [ rad / s ] .
Applsci 15 01566 g017
Figure 18. TMR robot during outdoor experiments.
Figure 18. TMR robot during outdoor experiments.
Applsci 15 01566 g018
Table 1. Basic design information of the mobile robot.
Table 1. Basic design information of the mobile robot.
Dimensions (Width, Length, Height)600, 850, 480 [mm]
Net weight50 kg
Payload20 kg
Permissible trailer weight50 kg
Drive wheel diameter280 mm
Track width482.5 mm
Max. speed2 m/s
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Krysiak, B.; Pazderski, D.; Majchrzak, J.; Kotlarek, M.; Mieszała, P.; Michalski, M.; Maciołek, K.; Nowak, P. Redesign of a Towing Mobile Robot Control Architecture and Implementation of Outdoor Experiments Using the Transverse Function Approach. Appl. Sci. 2025, 15, 1566. https://doi.org/10.3390/app15031566

AMA Style

Krysiak B, Pazderski D, Majchrzak J, Kotlarek M, Mieszała P, Michalski M, Maciołek K, Nowak P. Redesign of a Towing Mobile Robot Control Architecture and Implementation of Outdoor Experiments Using the Transverse Function Approach. Applied Sciences. 2025; 15(3):1566. https://doi.org/10.3390/app15031566

Chicago/Turabian Style

Krysiak, Bartłomiej, Dariusz Pazderski, Jarosław Majchrzak, Marcin Kotlarek, Piotr Mieszała, Mateusz Michalski, Krzysztof Maciołek, and Paweł Nowak. 2025. "Redesign of a Towing Mobile Robot Control Architecture and Implementation of Outdoor Experiments Using the Transverse Function Approach" Applied Sciences 15, no. 3: 1566. https://doi.org/10.3390/app15031566

APA Style

Krysiak, B., Pazderski, D., Majchrzak, J., Kotlarek, M., Mieszała, P., Michalski, M., Maciołek, K., & Nowak, P. (2025). Redesign of a Towing Mobile Robot Control Architecture and Implementation of Outdoor Experiments Using the Transverse Function Approach. Applied Sciences, 15(3), 1566. https://doi.org/10.3390/app15031566

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop