Development of an automated guided vehicle with omnidirectional mobility for transportation of lightweight loads

The aim of the paper is to design and to develop a control system as well as a navigation system for an omnidirectional automated guided vehicle (AGV) that can be used to transport materials to the pre-determined target location automatically. Omnidirectional drive is employed in this work since it can move in an arbitrary direction continuously without changing orientation of the AGV. This capability is desirable for applications in congested environments. Two experiments were conducted. First, the navigation system based on line following was implemented to transport materials in the factory. Second, model predictive control was used to solve the path following problem of the omnidirectional AGV.


Introduction
An automated guided vehicle (AGV) with omnidirectional mobility recently attracts much attention from researchers since omnidirectional AGVs use omnidirectional wheels that allow a vehicle to convert from a nonholonomic to a holonomic vehicle [1].A nonholonomic vehicle is not able to move sideways making a vehicle slower and less efficient in reaching its target location.The omnidirectional AGV is able to overcome this problem, as it can move in an arbitrary direction continuously without changing orientation of the vehicle.For example, Borenstein [1] introduced an omnidirectional OmniMate vehicle consisting of two trucks connected by a compliant linkage.Tlale and Villiers [2] addressed optimum vehicle motion in different situations for collision avoidance and task achievement using a combination of different driven wheels.Kim et al. [3] proposed localization of an omnidirectional AGV with Mecanum wheels using encoders, gyro and accelerometer.Kirsch and Rohrig [4] presented a technique for global localization and position tracking of an omnidirectional AGV equipped with Mecanum wheels.Diegel et al. [5] proposed two methods to improve the efficiency of Mecanum wheels.The first method was to lock peripheral rollers of the Mecanum wheels.This increases the efficiency when traveling in a forward direction.The second method was to dynamically adjust the angle of the peripheral rollers to best suit the direction the platform is traveling in.Recently, Heß et al. [6] developed a Linux-based control framework for Mecanum based omnidirectional AGVs.In this paper, we built a low-cost AGV with omnidirectional mobility for transporting materials in small and medium-sized industries.The contribution of this paper is two-fold.First, a low-cost alternative to the traditional AGV system was achieved by using reliable, off-the-shelf and locally available components.Second, navigation and path following of an omnidirectional AGV was attained.

Design and implementation
Our AGV system consisted of various hardware and software components as shown in Figure 1a.The architecture was modular and was broadly classified into two layers, i.e., the layer of AGV base and drive, and the layer of electronic systems.
For AGV base and drive, four omni-wheel/DC gear motor assemblies were mounted directly to the AGV chassis.They were arranged 90q to each other.The rated speed of DC gear motor was 250 rpm at 24 V DC and it was controlled by a RoboClaw 15A Motor Controller.The selected shape was a square platform.Its dimensions were 500u500 mm (L u W) as shown in Figure 1b.
The second layer contained the electronic systems which were divided into five modules: the wireless communication and remote control unit, the safety unit, the motor drive unit, the navigation unit and the user interface unit.An Arduino Mega-2560 board was used to process signals coming in from sensors and sending control inputs to the motor controller through serial interface to drive the AGV in any direction.Four SRF10 sonar range sensors were used to evaluate relative distances between the AGV's frame and environmental objects.For navigation, four QTR-8RC light reflectance sensor arrays were installed under the platform in four different directions (left side, right side, front and rear) of the AGV chassis.These reflectance sensor arrays were intended as line sensors.Thus, our navigation system relied on a line following strategy.Black lines were fixed on the floor and they were detected as a route to the destination point.This idea was called a fixed-path method since the path was pre-determined.

Kinematic modelling
Point C on the AGV chassis in the world reference frame (X w , Y w ) is considered as its position reference point, which is the origin of the moving reference frames (X m ,Y m ).It can be specified by coordinates x and y, and the angular difference between the world and moving reference frames is given by T, see Figure 2a.Then, we can compute the AGV's motion in the world reference frame from motion in its moving reference frame as follows: where u, v are local linear velocity components in the moving frame, while Z represents the angular velocity of the moving reference frame with respect to the world reference frame.Although the minimum number of wheels required for static stability is three, they may have stability problem due to the triangular contact area with the ground, particularly when moving on a ramp with the high center of gravity.It is desirable, therefore, that four-wheeled vehicles be used when stability is of great concern.Let us group the individual linear speeds of the motors in the vector (v 1 , v 2 , v 3 , v 4 ) T .All the angles of the motor axis represented by D i , i = 1,…,4 are measured relative to the X m -axis direction in the moving coordinate frame of the AGV.For example, when the AGV translates with the speed (u, v) T , the 1st wheel rotates with speed , this is easy to see from the diagram in Figure 2b.Besides the linear velocities (u, v) T , when the AGV rotates with angular speed, Z, the i-th wheel also rotates with speed, Z i L , where L i (i = 1, 2, 3, 4) represents the distance between each wheel's center and the center of mass of the AGV (point C in Figure 2a).Then for four wheels, we obtain the following expression for the correspondences between the wheel's translational speed and vehicle speed:

Experimental results
First, the functional tests of each unit were conducted, including remote control, control via an RF transmitter/receiver, and obstacle detection using sonar sensors.Then, the following experiments were conducted to show the effectiveness of our omnidirectional AGV.

Navigation in the factory
The AGV was required to transport materials from one place to another.However, in our case, the navigation was based on a line following strategy.Black lines were marked on the ground as a route that the AGV followed as shown in Figure 3.To follow the path effectively, the kinematic models as given in ( 1) and ( 2) were used to control the speed and the moving direction of the AGV.Furthermore, the AGV stopped and the warning system alerted the operator when the obstacle was detected.

Path following control based on model predictive control
In this subsection, a model predictive control (MPC) scheme for solving the path following problem of an omnidirectional AGV is proposed.The concept of the virtual vehicle with its body frame moving along the reference path was employed.For more details of MPC and path following problems, the reader is referred to [7].However, our AGV is over-actuated since there are four variables to control three DOFs.Thus, we solved this problem through the MPC scheme.The control input is obtained by solving the following finite horizon openloop optimal control problem: where e x ˆ is the error state vector between the state vector of the robot and that of the virtual vehicle moving along the reference path and e u ˆ is the error vector of the control inputs.T P and T C represent the length of the prediction horizon and that of the control horizon, respectively.The deviations from the desired values are weighted by the positive definite matrices Q, and R. A contractive constraint defined in the constraint (4d) with a constant E and a positive definite matrix P is used for stability guarantee [8].The wheel velocity constraints and other robot constraints are also satisfied in the constrained minimization problem of the MPC scheme that is online solved at each sampling time.
Since time spending on material transport is one of the main concerns in this work, the four-wheeled AGV and the three-wheeled AGV were compared as shown in Figure 4.The desired forward speed was 0.6 m/s and the travelling distance was 10 m.The setting parameters were taken from [7] but the cost function excluded the orientation of the AGV.Apparently, the four-wheeled AGV was able to reach the target faster than the threewheeled one when the orientation of the AGV was not determined.

Conclusions and future work
The AGV is one of material handling systems that has been widely used in many manufacturing industry today.However, to implement such a complicated AGV system is very costly and a conventional AGV cannot perform tasks effectively in congressed environments due to its nonholonomic constraints.This leads to our objective of this paper, i.e., to design, to build and to control an omnidirectional AGV.As seen in the experimental results, we can conclude that our omnidirectional AGV can perform tasks related to material transportation successfully.
In the future, there is some work to be done.For example, a gripper arm with a camera can be installed on the robot in order to manipulate or handle materials.Obstacle avoidance is also an important requirement when the free-path method is implemented.
DOI: 10.1051/ C Owned by the authors, published by EDP Sciences, 2015

Figure 1 .
Figure 1.(a) A block diagram of the AGV system (b) a photograph of our completed AGV structure.

Figure 2 .
Figure 2. (a) Geometric parameters and the kinematic model of the four-wheeled omnidirectional AGV (b) rotation of large and small wheels, when the vehicle moves sideways.

Figure 3 .
Figure 3. Experimental results when the AGV was used to transport materials in the factory.

Figure 4 .
Figure 4.The simulation results when the MPC framework was employed: (a) superimposed snapshots of the four-wheeled vehicle, (b) robot velocities corresponding to (a), (c) superimposed snapshots of the three-wheeled vehicle, (d) robot velocities corresponding to (c). W