PID-based with Odometry for Trajectory Tracking Control on Four-wheel Omnidirectional Covid-19 Aromatherapy Robot

Inhalation therapy is one of the most popular treatments for many pulmonary conditions. The proposed Covid-19 aromatherapy robot is a type of Unmanned Ground Vehicle (UGV) mobile robot that delivers therapeutic vaporized essential oils or drugs needed to prevent or treat Covid19 infections. It uses four omnidirectional wheels with a controlled speed to possibly move in all directions according to its trajectory. All motors for straight, left, or right directions need to be controlled, or the robot will be off-target. The paper presents omnidirectional four-wheeled robot trajectory tracking control based on PID and odometry. The odometry was used to obtain the robot's position and orientation, creating the global map. PID-based controls are used for three purposes: motor speed control, heading control, and position control. The omnidirectional robot had successfully controlled the movement of its four wheels at low speed on the trajectory tracking with a performance criterion value of 0.1 for the IAEH, 4.0 for MAEH, 0.01 for RMSEH, 0.00 for RMSEXY, and 0.06 for REBS. According to the experiment results, the robot's linear velocity error rate is 2%, with an average test value of 1.3 percent. The robot heading effective error value on all trajectories is 0.6%. The robot's direction can be monitored and be maintained at the planned trajectory.

. Nutritional therapy for Covid-19 patients was found to reduce malnutrition risk and improves patient clinical outcomes [5]. Plasma therapy for seriously ill and critically ill patients diagnosed with Covid-19 was also researched [6]. Ghasemiyah researched pharmacokinetic and pharmacodynamic aspects of drug therapy in patients with moderate to severe infection [7]. Tocilizumab therapy for COVID-19 was also studied by Kaminski [8].
Among many therapy treatments, one of the most popular is inhalation therapy. Gowrishankar conducted an in silico study on potential phytochemicals in traditional Indian herbal steam inhalation therapy to combat Covid-19 [9]. On the other hand, the safety and efficacy of ozone therapy in mild to moderate Covid-19 patients were studied by Shah [10]. It is also known that inhalation is the most preferred route of administration for the treatment of many pulmonary conditions [11]. Hence, aromatherapy robot is a promising technology to be developed, which can be utilized to carry out inhalation delivery. A Covid aromatherapy robot is a mobile robot that is proposed to bring therapeutic essential oils or drugs needed to carry out therapy to prevent or treat Covid-19 infections.
A mobile robot can typically move, not limited to a single location [12]. The mobile robot's distinguishing feature is its actuator in the form of a wheel that pushes the entire robot body, allowing it to shift positions. However, one of the issues with mobile robots is the robot's mobility. Most wheeled mobile robots have ordinary wheels, making their travel very limited [13]. Ackerman steering and differential steering are two types of robot navigation that frequently encounter low mobility problems. Both can move forward and veer but cannot move in all directions, putting them in the category of non-holonomic robots. The limited directional movement will obstruct the robot's ability to travel in different directions. This is not ideal to be used on the Covid aromatherapy robot, since it is hoped to be used in many different environments such as hospitals, houses of self-isolated patients, emergency shelters, or just public places in general.
Hence, an Omni-wheeled robot is used since it can travel more freely and safely to avoid hitting obstacles or walls [14], which are found in hospitals or public places. Ideally, the robot should be able to reach all directions without having to switch or change directions [15]. The robot should be able to move forward and backward; it should also move in all directions in the Cartesian x-y plane without rotating its body. The Omnidirectional robot is suitable for this function since it is a holonomic robot that can move in any direction without having to change its orientation [16].
The Omnidirectional robot has several advantages over other wheeled robots, including the ability to move in all directions with minimum turning radius and great traction movement than other drivers such as Mecanums or other differential wheels. This wheel is designed to look like a regular wheel but has sub-wheels that are 90 degrees apart from the outer wheels. As a result, the mechanical device helps it to maneuver without shifting its body position.
The wheel has a complex mathematical model to drive the robot to the desired location. In general, this mathematical model involves robot modeling control, specifically inverse and advanced kinematics. The configuration of three wheels and four wheels are common designs of Omni-wheeled robots [17]. Four-wheeled robots are more common due to their easiness to be maneuvered than three-wheeled robots.
Besides the configuration of the wheels, external and internal sensors also need to be appropriately configurated and chosen. External and internal sensors are used to drive the robot. External sensors, such as line and wall sensors, are used to direct the robot's movement. The robot can travel along lines and walls using these sensors. Internal sensors, such as a location sensor in the form of rotary encoder sensors, are used to move the robot towards the target [18]. Data obtained from these sensors are used in the odometrical measurement to assess the robot's position and orientation [19].
Three variables that were derived from odometrical measurements affect the robot's location and orientation on the coordinate axis framework. The first variable is the X and Y position, which signifies the rear axle's center point. The second variable is the angle between the mobile robot's body to the X-axis. Meanwhile, the third variable is the angle of the mobile robot's steering wheel.
The odometrical control method has been widely used to solve the robot trajectory tracking problem [20]. Trajectory tracking control is an autonomous mobile robot control method that allows the robot to follow a predetermined pattern. The methods of controlling trajectory tracking are categorized into two: offline and online. The offline trajectory tracking control determines the robot's location, speed [21], and orientation using an odometrical sensor. Meanwhile, the online trajectory tracking control determines the location and orientation of the robot using proximity sensors, including camera sensors, lidar sensors, and ultrasonic sensors. Odometrical control has more advantages than kinematic control and other control algorithms, especially for trajectory tracking. Besides PID control, odometrical control has the simplest mathematical calculation, which leads to a fast computation process.
Some researchers have applied trajectory tracking control in various applications. For example, trajectory tracking control has been applied to multi-robot [22,23]. Many applications also have been found in UAV [24][25][26][27]. Still, in robotic fields, some researchers also have applied trajectory tracking control for Robot Manipulator [28], Magnetic Microrobot [29], Soft Robots Interacting [30], and Laparoscopic 4-DoF robot [31]. Similar to the proposed robot design, some researchers also have been applied the trajectory tracking control for wheeled robots [32]- [34]. Moreover, some complex control algorithms also had been used for trajectory tracking control, such as predictive control model [13], Fuzzy [26,35], Curve Algorithm [36]. Even some researchers have applied the advanced Sliding Mode Controller [37][38][39]. PID control also has been applied for trajectory tracking control [40], and its combination with another control algorithm such as in Neural Adaptive PID [41]. This paper presents the Covid Aromatherapy robot, which is an omnidirectional wheel robot with a four-wheel configuration with rotary encoders and diffusers. Regarding its specific function, this research specifically proposes trajectory tracking control on the robot based on PID with odometry and evaluates its performance based on the performance evaluation criterion. PID control, which is used in omnidirectional robots for trajectory tracking control, is explored to support the control system design. In the trajectory tracking control, PID-based controls are used for three purposes: motor speed control, heading control, and position control.
The structure of the paper is designed as follows. The first section is the introduction. Next, the second section is the methodology, which consists of several sub-sections such as kinematic modeling, inverse kinematics, forward kinematics, odometry system, and PID control technique. The next section explains the control system architecture, which consists of explanations about the robot's trajectory planning, PID implementation for trajectory planning, PID implementation for robot movement, PID implementation for robot heading, the overall system architecture design, and the parameters of performance evaluation. The fourth section is the experiment and results, which consists of detailed analysis and discussions of the experiment. Then, the fifth section is the conclusions and future works. The sixth section is the acknowledgments. The last section is the references, which lists all references used in the research. The wheel speed value will be positive when the wheel rotates clockwise (CW) and will be negative when counterclockwise (CCW). The global reference coordinates of the robot are denoted by the letters XOY. The linear velocity and angular velocity of the robot to the XOY global coordinates are notified using ( ) = [ ( ) ( ) ]. R denotes the distance between the wheel and the robot's center, and r denotes the radius of the Omni wheel.   By referring to Figure 2, several equations are formulated.

2-1-Kinematic Modeling
where is the notation of the direction of the robot's orientation to global coordinates, ( ) is the resultant linear velocity of the robot ( ) and ( ) .
There are two types of kinematic models in the robot modeling system: inverse kinematics (IK) and forward kinematics (FK). The robot platform uses IK to determine the wheel's linear velocity ( ) = [ 1 2 3 4 ] and FK to determine the robot's linear velocity in global coordinates ( ) = [ ( ) ( ) ] .

2-2-Inverse Kinematics Omnidirectional Robot
The linear velocity value of each wheel ( ) can be determined based on the changes in the linear movement of the robot to global coordinates denoted by the symbol ( ) . By referring to Figures 1 and 2, the inverse kinematic equation is obtained as follows: where ( ) is the rotation matrix equation for each wheel in Figures 1 and 2; it can be written as Equation 6.

2-3-Forward Kinematics Omnidirectional Robot
The linear movement of the robot ( ) is determined based on the linear velocity value of each wheel . Referring to the inverse kinematic Equation 3, the value of ( ) is obtained by ( ) = . ( ) −1 . However, because ( ) in Equation 6 is a 4×3 matrix, so ( ) −1 is a pseudo-inverse. A calculation error will occur if this formula is used. Hence, referring to Figures 1 and 2 where R is the distance of the wheel to the center point of the robot.

2-4-Odometry System
Odometry is a method used to obtain data from various motion sensors to estimate position changes over a specific time interval. In this analysis, an odometrical sensor was applied using an optical rotary encoder that counts the pulses of motor rotation in time units. Further, these pulses can be translated into variables, such as wheel speed, robot orientation, robot movement, and other navigation variables. It is necessary to read the linear velocity of the wheel ( ) to obtain odometry data for changes of the robot position using Equation 10: where ( ) is the wheel's linear velocity, and ̇( ) is the number of changes in the encoder pulse with time calculated using Equation 11, stands for the number of pulses per revolution as determined by the optical rotary encoder specifications, for the circumference of the wheel, and n for the notation of the wheel number.
The linear velocity of the wheel is used to calculate the linear velocity value of the robot ( ( ) ) using Equation 5. The results of FK equation, as in Equation 8, are used to calculate the current coordinates and orientation of the robot ( ( ) , ( ) , ) to global coordinates, using new equations as follows;

2-5-PID Control
In this study, PID controls are used for three purposes. The first purpose is for controlling the motor speed value, the second is for changing the robot's destination coordinates, and the third is for controlling the robot's targeted position. Hence, the speed of wheel and the coordinates of robot's destination can be corrected and controlled according to the trajectory tracking.
PID control uses continuous feedback to determine the precision of a system [4]. The feedback is then compared with the set-point to obtain the error. Three main parameters in the controller are Proportional, Integral, and Derivative [42]. Equation 15 is the general control equation used in PID Control [43].
where ( ) is the notation of the PID control output, is the notation of the proportional constant, is the integral constant notation, , is the derivative constant, ( ) is the difference between the set-point value, , and the current sensor reading value. Each combination of constant values , , will give a different output response. Table 1 presents the response of each combination of constant values , , and .

3-1-Robot Control System and Trajectory Planning
The overall block diagram of the control system for the omnidirectional robot is represented in Figure 8. The system is initialized with trajectory planning, including a series of coordinates as the trajectory planning value, the target heading as the set-point heading value, and the robot's resultant velocity value ( ). Some of the data will then be converted into the robot's direction and angular velocity. The referenced speed value will be used to calculate the set-point of speed operated by the PID control using Equation 22. Meanwhile, odometrical devices can detect the change in the robot movement value over time once it starts moving. The robot's coordinates and orientation are calculated using the forward kinematic equation, as in Equation 8. The coordinate and orientation data will be used to correct the robot's direction, speed, and orientation. The robot movement will then be sent wirelessly to a computer by using the NRF module. A Graphical User Interface (GUI) is created to simplify the trajectory planning and movement tracking of the omnidirectional robot, as shown in Figure 4. All status of the robot movement will be displayed in the GUI.

3-2-PID Implementation for Trajectory Planning
Where ( ) , ( ) is the distance of the robot to the target position; ( ) , ( ) is the path point to the global coordinates where denotes the sequence notation of the path point; ( ) , ( ) shows the current position of the ROB coordinates; is the direction of the robot movement, and is the notation of the resultant distance of the robot to the path point. The radius target shown in Figure 3 is the tolerance value of the robot where the robot is considered to have reached the specified path point value. Due to the limited accuracy of the odometry sensor used, it will be very difficult for the robot to actually reach the predefined path point. The rate of change in path points is determined by comparing the initial path point position with the target and can be calculated using the equation below.
By identifying the direction of the robot φ as described in Equation 19, the linear velocity of the robot ( ) can be calculated using the following equation: where ( ) and ( ) are the linear velocity of the robot to the global coordinates, and is the linear velocity of the robot. By entering the results of Equations 23 and 24 into the inverse kinematic Equation 5, the set-point of the linear velocity for each wheel can be calculated. The speed of each wheel was calculated using PID control, as in Equations 15 and 16.
PID control has some benefits, such as high sensitivity to respond to errors in an existing plant. However, in the case of motor speed control, this could be a disadvantage. When there is a significant change of speed, the fast control response will cause the system to be unstable with an overshoot. The steady-state also will result in an odometrical reading error due to wheel slip. For this reason, acceleration and deceleration methods are applied to the linear velocity of the robot ( ), causing the set-point of each wheel to increase regularly and allowing the motor speed control to be monitored consistently. As shown in Equation 25, there is an alteration in the acceleration of the . where b is the acceleration time duration, ( ) is the time-function of acceleration. The smaller the value of , the motor speed change is smoother, but it also takes longer to change. The set-point value of the resultant linear velocity of the robot is represented by ( ) . This value is the input variable in every experiment.
When the robot reaches the target point, the motor speed will decelerate, as shown in Equation 26, where is the deceleration time, and ( ) is the time-function of deceleration. The ( ) value affects the deceleration time: the greater the value of ( ), the faster the deceleration. In Figure 3 and Equation 20, is the resultant distance of the robot to the path point. The value of represents the distance notation, the point at which the robot starts to decelerate.

3-3-PID Implementation for Robot Movement
PID control is implemented to control robot movement to stay on the predetermined trajectory planning.  It is necessary to detect an error in the direction of the current robot movement in the specified trajectory planning ( ) , as displayed in Figure 6. Figure 6 illustrates a detection error of the robot's movement direction.  By referring to Figure 6, several equations below are obtained: The value of is then entered into the PID equations, which are Equations 15 and 16, generating the PID controller's output. This value is then used to improve the value of the robot's direction of movement ( ) which results in the robot moving closer to the trajectory planning value, as shown in the below equation.
_ ( ) is the output of the PID for robot movement.

3-4-PID Implementation for Robot Heading
In addition to the speed and direction of robot movement, heading control is an important aspect to consider in omnidirectional robot motion control. This is because changing the robot heading will cause it to travel in the wrong direction. Figure 7 provides an example of a movement error robot triggered by a change in the robot heading direction.
This value is then entered into the Equation 15 so that the PID output can correct the direction of the robot heading ( ). Figure 9 illustrates a schematic diagram for the omnidirectional robot. The robot uses an ARM Cortex-M7 microcontroller for control purposes. The microcontroller then reads the encoder sensor. The microcontroller's output is fed into the motor driver to recognize the speed of the DC motor. This omnidirectional robot is equipped with communication support using the NRF module. The data from the robot is transmitted to the computer for tracking purposes. Figure 10 shows the four-wheel omnidirectional robot. The Covid Aromatherapy Robot consists of four sets of a mini diffuser; each consists of a liquid container, four micro nozzles, a DC cooling fan, and a fogmaker. The diffuser system is automatically on when the omnidirectional robot system is on. The liquid container will carry out distilled water that has been added with therapeutic essential oils, and the fogmaker will atomize the mixture. The vapor will be sprayed outside through the nozzles to deliver the inhalation therapy. The cooling fan will control the temperature inside the container and spread out the vaporized water outside.

3-6-Parameters of Performance Evaluation
The following data collection approaches were used in the study to evaluate the performance of the robot movement tracking: 1-Integral of Absolute Errors. and show the accumulated error of several set-point inputs during the robot movement time.
= max ( ) 3-Root Mean Square Errors. and show the effective value of the error of several set-points during the robot movement time,

4-Experiment and Result
The experimental testing was divided into two sections to assess the efficacy and feasibility of PID control on each device in controlling the robot movement according to the predetermined trajectory. Section (A) explained the PID tuning in response to any input changes described in Chapter III. The overall PID control was evaluated in section (B) for regulating the robot's speed, the direction of movement, and heading according to the trajectory planning. The final results regarding the performance criteria were analyzed according to the method described in Chapter III to get study conclusions. Figure 8 shows the robot control system; Figure 9 shows the robot architecture system design. Meanwhile, Figure 10 and Table 2 present the robot's parameter and dimension details.

4-1-PID Tuning Testing
The trial-and-error method was used to tune each value of , , and for each sub-system on an omnidirectional robot, considering the system response to parameter changes by involving the data in Table 3. The best results were observed and taken in response to plant changes as a result of this process.

4-2-Motor Speed Test
The motor speed was measured at three different speeds in the PID control test: 0.44, 0.6, 0.74 ( ⁄ ). Then, how the PID control reacts to changes in motor speed was observed. The PID tuning method examines the response to every change in the , , and parameter values. The most satisfactory tuning results were obtained after many tuning processes had been completed, as presented in Table 3.  Figure 11 shows the system response to the changes of motor speed reference without implementing acceleration control. The diagram shows the speed of each motor: the red-colored line shows the speed of motor 1, the green-colored line shows the speed of motor 2, the blue-colored line shows the speed of motor 3, and the purple-colored line shows the speed of motor 4. Three tests were carried out for each motor, using the set speed points of 0.44, 0.6, and 0.74. Similar results were shown on the speed test results for Motor 2, as shown in Figure 11 (b). The biggest overshoot was reached at the set-point speed of 0.44, which is 7.05. The smallest overshoot, which is 2.17, was gotten at the setpoint speed of 0.74. At the set-point speed of 0.6, the overshoot value is 3.21. A similar average of the overshoot was also shown; the average value is 4.14. Based on the general speed test results of the four motors, the system performances based on the time response analysis are as follows: rise time is 0.2s, the settling time is 0.5s, and the average maximum overshoot is 5%. These findings showed that the PID control system reacted quickly to changes of input. However, since the system produced an utterly high overshoot value, a significant and sudden change in the motor speed value made the system unsteady, causing the wheels to slip, resulting in an inaccurate odometrical reading. Figure 12 illustrates the response of motor speed control with acceleration control. The line color representation and the referenced speeds used in this test were the same as the previous one.
The first test was conducted in Motor 1, and the results are shown in Figure 12 (a). Meanwhile, Figure 12 (b), Figure  12 (c), and Figure 12 (d) show the test results for Motor 2, Motor 3, and Motor 4, respectively. Based on the figures, it can be seen that the acceleration control made the wheel system have a blunt shape of linear velocity if compared to the previous test results. The blunt shape of the curve shows the effect of the acceleration control; the wheel tends to move smoother than without the acceleration control. This finding is in line with the overshoot made by the system. The average overshoot for the speed test results with acceleration control is much lower than without the acceleration. The average overshoot value for Motor 1 is 0.89, for Motor 2 is 0.67, for Motor 3 is 0.83, and for Motor 4 is 0.53.
Other proof of smoother response is also found based on the time-response performance parameters in general. The findings show that the system responded without overshoot at the start of the system. The system also responded slower than in the previous test with 0.8s rise time and 1s settling time, which typically happens with the smooth movement of the wheel.
More detailed test results of overshoot for each motor at every set-point speed will be mentioned as follows.

4-3-Robot Motion Test
The determination of , , and for PID Motion Control was carried out using the trial-and-error method, and the parameters of the best result are presented in Table 4. The test results are presented in system responses of environmental changes were observed. Three tests were carried out in this test. All of the tests were begun with initialization, which included three positions: robot starting position, an initial position of trajectory planning, and final position of trajectory planning. The initial and final positions of trajectory planning were fixed in (0.0, 0.0) and (0.0, 4.5) in meter units, respectively.
Meanwhile, robot starting positions were different for each test. Test results were observed and presented in graphs as in Figures 13 to 15. The red color in the graph represents the robot start position to the trajectory planning; the blue color represents the initial position of trajectory planning; the yellow color represents the end of the trajectory.  The first test was performed with the robot placed at (0.5, -1.5) in the meter unit. The robot moves from this position to the end position of the trajectory planning, as shown with the green-colored line in Figure 13. In the first test, the robot began to follow the trajectory at (0.0, 2.5).

Figure 13. System Response of PID Motion Control in Coordinates of the Experimental Robot: Movement 1.
In the second test, the robot was placed at (-2.5, -4.5) meters. The test result is presented in Figure 14; the robot began to follow the trajectory planning at (0.0, 2.5) meters. The third test was performed with the robot placed at (4.5m, -4.5m). Based on the test result in Figure 15, the robot began to follow the trajectory at (0.0, 2.0) meters.

Figure 15. System Response of PID Motion Control in Coordinates of the Experimental Robot: Movement 3.
All motion test results show that the robot could reach the finish position. However, the robot motion test results also show that the robot did not track the trajectory planning from the initial position of trajectory planning; it took some time after the robot reached the initial position to track the trajectory. Nevertheless, the system responded fastly during this time. The robot motion test results are also similar to an exponential response; it should be noted that the robot did not surpass the trajectory line. It can be seen that the system response has exponential-like response characteristics, no overshoot, and fast rise and settling time.

4-4-Robot Heading
The PID control for robot heading was evaluated by changing the PID input, which is the robot heading angle position, and then observing the system response. The PID tuning process was performed using the same tuning method as the Robot Motion Control Test. The best result of the tuning is presented in Table 5.  Figure 16 displays the system response with PID-based heading control for changes of heading angle. According to the graph in Figure 16, the robot heading angles can track the given set-points without any issue. The red-colored line, which is the actual robot heading, was coincided with the black-colored line, which is the referenced heading angle.
More detailed observational data will be explained as follows. It shows that the overshoot is 1. Based on those results, overall, the system responded with performance specifications: ± 0.4s rise time, 0.8s settling time, and the 2% maximum overshoot. It shows that PID-based heading control can control the robot heading with fast response and small steady-state error and oscillations. Thus, the heading control system is said to be a fairly stable control.

4-5-Trajectory Tracking Test
In previous tests, each of the three proposed PID-based controls for trajectory tracking control of the Covid-19 aromatherapy robot is tested and evaluated individually. However, evaluation for the combination of the three proposed PID-based control has not been done. This test was conducted to evaluate the effectiveness and efficiency of the three proposed PID-based controls for trajectory tracking control of the robot; to re-check if using three of them together is necessary or not.
The first test was performed by testing the PID-based controls for three control scenarios: PID 1, which consists of the motor speed, heading, and motion control; PID 2, which consists of the motor speed and motion control; and PID 3, which is only the motor speed control. These control scenarios were tested for trajectory tracking with a triangularshaped model.
In this test, the graph of the linear base robot velocity ( ( ) ) of 0.41 ⁄ was measured using the three scenarios on a triangle tracking in an unknown environment, as shown in Figure 17. The robot was placed at (0.0; 0.0) and moved to the right to follow the triangular-shaped trajectory planning. The red-colored line showed the first scenario; the yellow-colored line showed the second; the blue-colored line showed the third. The green-colored line represented the planned trajectory. Based on the figure, it can be seen that there are slight tracking errors from the blue-colored line, which was out of the trajectory. Meanwhile, PID 1 and PID 2 had no problem tracking the planned trajectory. Then, the robot movement direction of the three control scenarios while tracking the triangular-shaped trajectory model was also evaluated. Figure 18 shows the test results. The color representation used in this test is different from the previous one. PID 1 is represented with the yellow color; PID 2 with the green color; PID 3 with the red color; the set-point with the blue color. According to the figure, the green-colored and yellow-colored lines coincide with the bluecolored line. This means that robots with PID 1 and PID 2 control scenarios tracked the desired direction without any issue. However, the red-colored line could not follow the blue-colored line; PID 3 could not track the referenced direction.

Figure 18. Robot Movement Direction of Three PID Scenarios.
The robot movement orientation of the three control scenarios while tracking the triangular-shaped trajectory model was also evaluated. The test results are represented in Figure 19. The green-colored line has the same value as the bluecolored line, which is zero. The color representation used in this test is different from the previous one. PID 1 is represented with the green color; PID 2 with the blue color; PID 3 with the red color; the set-point with the black color. It can be seen that PID 1 coincided with the set-point while the others did not coincide with the set-point.

Figure 19. Robot Movement Orientation of Three PID Scenarios.
The second test was performed to test the performance of PID-based controls on trajectory tracking, which used different trajectory models. The scenarios to determine the PID response to trajectory planning were carried out three times with different variations in the linear base robot speed values: low, medium, and high speeds (0.41; 0.83; 1.25 m⁄s). The result will also be analyzed using several performance criteria formulas with , , , The speed, movement, and PID heading controls on a star-shaped trajectory tracking performance in an unknown environment were measured, as shown in Figure 20. Three-speed tests were performed on the trajectory tracking star: 0.41 m⁄s shown with the blue-colored line, 0.83 m/s shown with a yellow-colored line, and 1.25m⁄s shown with a redcolored line. The robot is placed at the initial position of (0.0, 0.0) and moved to follow the trajectory tracking. It stops at the position of (2.4, 5.8) meters. The findings showed that using the three PID controls can make the robot remain on the trajectory tracking with referenced speeds of 0.41, 0.83, and 1.25 m/s.

Figure 20. Trajectory tracking with star model.
Then, the error heading robot was observed. The error lines between the system response with three referenced speeds (low, medium, high) are shown in Figure 21. The error between low-speed references with the system response is represented in the green-colored line. Meanwhile, the red-colored line represents the error of medium-speed, and the blue-colored line represents the error of high-speed reference. Based on the figure, it can be seen that the blue-colored line contains heading errors, but not with the red-colored and green-colored lines. The robot's linear velocity was also observed. The trajectory tracking performance was measured with a low speed of 0.4187 ⁄ . The blue-colored line in Figure 22 shows the set-point velocity. The red color represents the robot velocity, and the green color represents the error between robot velocity and its set-point. The findings show that the maximum value of the robot speed on the red line curve is 0.4239 ⁄ . The largest error value shown is 0.4125 ⁄ . Then, the trajectory tracking performance of medium speed of 0.8373 ⁄ is represented in Figure 23. According to the results, the maximum value of the robot speed is 0.8426 ⁄ . The largest error value is 0.1465 ⁄ .  Based on the test results regarding the robot's linear velocity, the robot can consistently track the trajectory with minor errors and oscillations. A stable linear velocity means the robot can move stably and consistently without jolts or sudden movements. This also means that the Covid-19 aromatherapy robot can perform well in low-speed, mediumspeed, and even high-speed, making it have fast travel time with stable speed movement.
Meanwhile, the robot's position control performance in low-speed, medium-speed, and high-speed configurations can be seen in Figure 25, Figure 26, and Figure 27, respectively. The robot position and the referenced position while the robot was tracking a star-model trajectory were recorded. The difference between the actual and the referenced position was calculated as an error.
The error on the X-axis position is shown in the pink-colored line, and the error on the Y-axis position is shown in the light-blue-colored line. Meanwhile, the red-colored line represents the set-point position on the X-axis, and the bluecolored line represents the Y-axis. The green color represents the robot's actual position on X-axis, yellow represents the robot position on Y-axis.
Position control performance for low-speed configuration is shown in Figure 25, which can be seen that the robot position almost coincides with the set-point. The error found is less than 1 cm. Meanwhile, position control performance for medium-speed configuration is shown in Figure 26. The results were found similar to low-speed configuration results, which have minimal errors of positions. Alike in test results for low and medium speed configurations, the test results for high-speed configuration, as in Figure 27, have minimal errors. However, the position errors for high-speed configuration were a bit larger than previous test results, although it still had the result close to zero. Finally, the proposed PID-based trajectory tracking control for Covid-19 aromatherapy robot were evaluated based on the evaluation parameters. Figure 28 shows seven parameters: IAEH shown in the blue graph, IAEXY in the orange, MAEH shown in the yellow, MAEXY in the purple, RMSEH in the green, RMSEXY in the red, and REBS in the cyan. Based on the performance criteria of the graphic image, the IAEH performance value at low speed is 0.1, at medium speed is 0.1, and at high speed is 1. The IAEXY performance value at low speed is 4.0, at medium is 5, and at high is 8.50. The MAEH shows the low-performance value of 0.1 at low speed and medium speed and demonstrates the highest performance value of 1 at high speed. The highest performance value of the RMSEH is 0.13 at high speed and the lowest value 0.01 at low and medium speeds. RMSEXY performance shows the highest value at high and medium speeds, while at low speed, it shows a low-performance value of 0.00. The REBS performance value for low speed is 0.06, for medium speed is 1.30, and for high speed, it is 1.81.

5-Conclusion
In this study, a four-wheel omnidirectional robot's trajectory tracking control method was successfully developed specifically for the Covid-19 aromatherapy robot. Errors in setting the speed, robot movement direction, and changes in the robot orientation can all cause robot movement errors in a trajectory. The PID control is used to control three key parameters in this study: motor speed, robot movement direction, and robot orientation direction. The PID and acceleration systems are combined using the odometry system as feedback from the trajectory tracking, allowing the robot to operate precisely and steadily. According to the study results, the error rate of the robot's linear velocity is 2%, with an average test value of 1.3%. The average robot's movement error at coordinates X and Y is 0.0059 m. The robot heading error on all trajectories is 0.6%. The robot can be controlled and maintained to stay on the trajectory tracking. It is expected that further research will be carried out by adding an IMU sensor to the robot design. This improvement aims to detect robot movement. It can be combined with an odometrical sensor to detect movement disturbances such as wheel slip, modeling kinematics errors due to improper robot construction errors. It is also expected to improve the robot's inhalation delivery mechanism so that it can also be improved to be a nebulizer robot.

6-2-Data Availability Statement
The data presented in this study are available in article.

6-3-Funding
The authors received financial support for the research of this article from Universitas Muhammadiyah Yogyakarta.