Mobile Robotic-Arm Development for a Small-Scale Inter-Room Logistic Delivery using 2D LIDAR-guided Navigation

This research aims to develop a low-cost mobile robotic arm for an indoor delivery system. The current pandemic and the possible future threat of communicable disease have become challenging scenarios in developing an unmanned logistic delivery system with minimum human involvement, especially for inter-room items delivery inside highly regulated buildings such as hospitals, clinics, pharmaceuticals, foods, and beverages industries. In this paper, a prototype of the mobile robotic arm is designed to achieve an autonomous level of navigation utilizing a 2D LIDAR with guided remote monitoring and control of object selections for the loading/unloading process. The mobile robotic arm is an integrated robotic system of a mobile robot with an attached robotic arm in its body. The base of the mobile robotic arm utilizes a differential-drive configuration equipped with a wheels odometry system. The robotic arm is configured with a 4-DoF SCARA-like structure. The 2-dimensional environment map is generated using the LIDAR sensor utilizing the Hector SLAM method prior to navigation. The autonomous navigation is performed using a 2D LIDAR-based technique by employing an A* algorithm for path planning and tracking mechanism. Experimental works were conducted in a small building environment consisting of some rooms and narrow corridors. The result of experiments shows that the prototype of the mobile robotic arm can safely and effectively navigate through the testing environment and, subsequently, load and unload objects from one room to another room without colliding with objects and obstacles.


. Introduction
In conjunction with the negative impacts of the recent pandemic, the demand for unmanned robotic systems has been significantly increasing, especially in the healthcare, medicine, and food industries (Shen et al., 2020). The main objective of the development is to provide services with minimum human involvement and biological contact in all aspects of the processes (Magid et al., 2021). In recent years, the focus of technology development in the medical field has also transformed from focusing on disease treatment to a preventionoriented effort (Kwon et al., 2022). Some of the leading technologies have been implemented to improve preventive actions against the spreading of coronavirus and other communicable diseases, one of which, the unmanned system such as in the form of mobile robots, are widely developed and deployed in many scenarios to mitigate the risks of virus transmission and to maintain a low-level of biological contamination (Tavakoli, Carriere, & Torabi, 2020).
Robotics, automation, and cyber-physical systems can be adapted to provide assistive technology for workers in risky tasks within the contagious environment or maintain a low level of human involvement in the processes (Haidegger et al., 2020;Evans, Medina, & Dwyer, 2018). There are some scenarios of robot utilization in those environments, such as (1) disinfection and cleaning, (2) logistic delivery and services, (3) tele-operation and tele-presence, and (4) detection and control (Sierra Marıń et al., 2021). The concept of the smart hospital (Kwon et al., 2022) and smart industry (Chitrakar, Zhang, & Bhandari, 2021) have also been introduced to develop an integrative, intelligent system that can support these applications Autonomous robots and tele-robotics applications are the potential to be utilized in delivering items in highly regulated environments to minimize the risks of communicable disease transmission (Niemeyer et al., 2016). Tele-robotics is a sub-field of robotics that aims to develop robots and autonomous systems that can be operated from a remote distance, either guided or unguided, with advanced sensors. Tele-robotics is an inseparable field of robotics that aims to provide services remotely. Thus it does not require direct physical contact and presence (Avgousti et al., 2016). Mobile robotics systems in the medical field can be widely applied in diagnostic procedures, treatments, and medical interventions carried out remotely. Meanwhile, mobile robotics are mainly used in the food industries for sorting and delivery with minimum human complicity and biological contamination (Chitrakar, Zhang, & Bhandari, 2021). Tavakoli et al. (2020) classify tele-robotics applications into 4 primary categories in order to tackle COVID-19 and potential harms of communicable diseases, such as (1) emergency or critical conditions, (2) primary prevention and healthcare support, (3) household and long-term home care, and (4) medical education and training. In some scenarios, mobile robotic technology can be used as a transport for delivering materials in the form of samples, containers, or foods to maintain a high level of cleanliness and hygiene from biological contaminations (Sierra Marıń et al., 2021;Chitrakar, Zhang, & Bhandari, 2021).
In response to those recent issues and studies, this research focuses on developing a mobile robotic arm to transport materials from one room to another utilizing a 2D 360-degree LIDAR sensor for mapping, path planning, and materials loading/unloading. The mobile robotic arm is the integration of a mobile robot with a robotic arm attached to its body (Pandey, Pandey, & Parhi, 2017). The base of our mobile robotic arm utilizes differential-drive wheels equipped with wheels odometry and the robotic arm is configured with a 4-DoF SCARAlike structure. Autonomous navigation is performed using a 2D LIDAR-based technique, and the path planning and tracking method is developed using an A* algorithm. The environment mapping is carried out using the Hector SLAM technique before navigation. All experiments are conducted in a small building consisting of some rooms and hallways with some obstacles placed in the environment.

Materials and Method
A mobile robotic arm system is designed for the implementation scenario of the inter-room delivery process, which includes mapping, navigation (path planning and tracking), and loading/unloading process, as illustrated in Figure 1. The macro-development stages can be partitioned into 2 parts. The first is the design of the whole system for mechanical and electronic systems, which is consecutively presented in Figure 2 and Figure  4. The second is the robot's control strategy which includes low-level (pose, movement, and position control) and high-level control strategy (mapping, path planning, tracking, load/unload mechanism) as presented  Figure 2. Design of mobile robotic arm system consisting of (1) RPLidar 360 laser scanner, (2) robotic arm joints, (3 and 4) detection cameras, (5) motors with built-in rotary encoders, (6) robot's controller, (7) battery.
in Figure 3. The body of the mobile robotic arm is primarily constructed to comply with navigation through narrow corridors and doors. The mechanical system is designed using SolidWorks and presented in Figure 2. The mechanics of the mobile robotic arm is built of aluminum metals and 3-D printed industrial plastics. The mobile robotic arm is equipped with sensors such as RPLidar 360 for building a 2-dimensional map and guiding navigation, rotary encoders (600 PPR) for wheels odometry, and 2 cameras (Logitech C920) for conducting object selection.

1. Design of Mobile Robotic Arm
The mobile robotic arm is built of 2 main parts: (1) mobile robot base and (2) robotic arm, as presented in the block diagram of electronic system design in Figure 4. The mobile robot is supported by a couple of differential drive wheels of DC motors with the built-in rotary encoders 600 PPR. To control the DC motor, a full Hbridge motor driver of BTS7960 is utilized. The robotic arm is designed as a 4-DoF SCARA-like configuration of 4 pieces NEMA stepper motors with mechanically linked rotary encoders 600 PPR. The stepper motors are controlled using the stepper motor controller TB6600. The dimension of the mobile robotic arm is 50 cm in length, 40 cm in width, and 45 cm in height. The advantage of utilizing the mobile robotic arm configuration is that the robot can navigate agilely from one place to another. The robot can also perform the task of grasping, making it possible to move objects from one room to another without being limited by constraints of the robotic arm's range (Yamamoto et al., 2018;Deng, Xiong, & Xia, 2017).
The main challenge in the development stage is that a mobile robot with an attached robotic arm is a type of robot which is relatively complex to control. Thus a control system is needed to control the robot optimally (Kolhatkar & Wagle, 2021). In accordance with that, this research attempts to reduce the complexity of robot control by proposing a scheme of control strategy, as  presented in Figure 3, to perform sequential processes of mapping, path planning and tracking, and loading/unloading mechanisms. This research will also discuss optimal navigation in the items' delivery process. To be added, although the control strategy is processed sequentially, the mobile robot can respond to moving obstacles using the information from LIDAR by pausing the movement for safety.

Robot Control Strategy
The robot's control strategy can be elaborated into low-level and high-level control strategies. The low-level control strategy deals with the self-maneuver control of the robot, such as controlling the mobile robot's pose, movement, and position relative to the world coordinate frame. Using the kinematics model, this low-level control strategy is implemented by controlling the speed of 2 DC motors as the differential drive wheels.
The kinematics model of the mobile robot is visualized in Figure 3. Mobile robot kinematics (̇,̇) can be obtained using linear velocity with simple trigonometric regards to the angle of mobile robot in 2dimensional (top view) Cartesian space (X-axis and Yaxis) using Equations (1) and (2). Angular velocity is the first derivative of angular position, thus by considering the radius of the right and left wheels of the mobile robot, the formulation of linear velocity and angular velocity of the mobile robot can be calculated using Equations (3) and (4), in which and are the angular velocity of right and left wheels, and and are the diameter and radius of the wheels. Then, the angular velocity of the right and left wheels of the robot can be computed using Equations (5) and (6).

̇= . cos
(1) As visualized in Figure 3, the high-level robot control strategy is designed to satisfy the most basic requirements for autonomous robot navigation, namely (1) mapping, (2) path planning and tracking, and (3) loading/unloading mechanism. In this research, the mapping process is performed utilizing the Hector SLAM technique, which combines the sparse data points gathered from the LIDAR sensor and the wheels' odometry. The path planning technique utilizes an A* algorithm to plan the shortest route of the robot's movement from an initial location to the goal location, while the path tracking algorithm is done using Follow the Point (FtP) algorithm to follow the generated path to the goal location. In the loading/unloading mechanism, 2 cameras are employed to detect objects and monitor the loading/unloading process; subsequently, a robotic arm with a gripper picks up the detected object (loading) and places it in the goal location (unloading).
The mapping process utilizes the Hector SLAM algorithm  to generate a 2dimensional map of the environment using RPLidar 360 prior to robot navigation. Regarding mapping accuracy, Hector SLAM is comparable to the GMapping method (Norzam, Hawari, & Kamarudin, 2019). While the GMapping technique utilizes a Rao-blackwellized particle filter, the Hector SLAM utilizes a scan-matching technique which is relatively simpler and faster in implementation (Olalekan et al., 2021). Hector SLAM relies on the high-frequency data from LIDAR to estimate the robot's position and orientation relative to the robot's body. By using the transformation method, the position and orientation of the robot with regard to the world frame can be estimated (Harik, Korsaeth, & others, 2018). The process of developing the Hector SLAM method is presented in Figure 3, in the section of the mapping block system.
A path planning algorithm is developed to find the best route to the targeted location. We utilize an A* algorithm that combines the reading of the LIDAR sensor in real time and the generated map from the mapping process. A* is a search algorithm commonly used for finding the shortest path in a graph (Gul, Rahiman, & Nazli Alhady, 2019). The A* algorithm utilizes a heuristic function to determine the shortest path from the starting point to the target point (Le et al., 2018). The A* algorithm is similar to the Best First Search (BFS) algorithm but modified using a heuristic function (Yu & Xiang, 2017;Cheng & Wang, 2018). Thus, an optimal shortest route can be achieved. Equations 7 and 8 are used to calculate the cost function of the A* algorithm.
( ) = ( ) + ℎ( ) Where ( ) is the function of evaluation, ( ) is the cost incurred from the initial state to node n, and ℎ( ) is the estimation of costs incurred from state n or node n until reaching the destination. To calculate the distance between two distinct points in the Cartesian coordinate system, we employ a Euclidean distance-based equation such as elaborated in Equation 9, ℎ( ) = √( 2 − 1 ) 2 + ( 2 − 1 ) 2 Where ( 1 , 1 ) is the initial coordinate and ( 2 , 2 ) is the final/target coordinate. The pseudo-code of the A* algorithm that we develop in our mobile robotic arm is elaborated in Table 1.
The robotic arm performs a loading/unloading mechanism with an attached gripper. End-effector positioning and movement are manipulated using the forward and inverse kinematics method with variability in height controller. In this research, the 4-DOF SCARAlike robotic arm is segmented into an RRR representation (joints 1, 3, and 4) with height control in joints 2 (prismatic), as presented in Figure 4. This model segmentation can benefit in reducing computation time than using a whole direct 4-DOF inverse kinematic computation (Zhen et al., 2020).
Inverse kinematic computation is required to map the known targeted point of the end-effector in Cartesian space to derive the angular position of motors in the joint space (Corke, 2017). In this research, the Jacobian Pseudo-Inverse method is used to find the solution to our inverse kinematic problem for the robotic arm, as it provides a better solution without using direct matrix inversion (Gupta et al., 2018). Jacobian pseudo-inverse is used to find each joint's angular position from the endeffector's cartesian position. The formulation and derivation of the solver are provided in Equations 10 to 13, with ̇ is the state of end effector in cartesian space, ̇ is the state in joint space, is the Jacobian matrix, is the transpose of Jacobian matrix, and + is the pseudoinverse Jacobian matrix.
̇= ( ) ̇ (10) ̇= ( ) ̇ (11) ( ) −1̇= ( ) −1 ( ) ̇ (12) ̇= +̇ (13) In order to generate a smooth trajectory for the end-effector's movement in Cartesian space, we utilize a sigmoid trajectory method in the joint space. Sigmoid trajectory function is applied in the angular velocity control for each joint space; hence it provides the smooth actuation of the end-effector. This trajectory planning is implemented to guarantee the production of a smooth path movement of the end-effector from the initial to the targeted position (Fang et al., 2019).

Results and Discussion
Experiments are conducted in a small indoor building consisting of 2 fully-open rooms and a hallway. Half-opened rooms are added in the experiment to observe the robot's ability to detect the most available rooms to navigate. The testing environment is chosen to mimic the setting of a small-size clinic or a controlled environment in the food industry, as presented in Figure  5. The ground truth data is built by using a direct measurement with a standard precise instrument, as depicted in Figure 6. a. The visualization of the preliminary mapping experiment of the testing environment is presented in Figure 6. b. Small-size items with a volume of fewer than 10x10x10 cm 3 , such as small boxes, test tubes, and scissors, are used as experiment Table 1. Pseudo-code of A* algorithm used in mobile robotic arm Algorithm A* (A-Star) OPEN consists of nodes that have been visited but not expanded. CLOSE consists of nodes that have been visited and expanded start: start node goal: goal node m: current node n: successor node n_cost: successor current cost 1: Put start in the OPEN list with f(start) = h(start) 2: while the OPEN list is not empty 3: Take from the open list the node m with the lowest 4: f(m) = g(m) + h(m) 5: if m is goal we have found the solution; break 6: Generate each state n that come after m 7: for each n of m 8: Set n_cost = g(m) + w(m, n) 9: if n is in the OPEN list 10: if g(n) ≤ n_cost continue 11: else if n is in the CLOSED list 12: if g(n) ≤ n_cost continue 13: Move n from CLOSED list to the OPEN list 14: else 15: Add n to the OPEN list 16: Set h(n) to be the heuristic distance to the goal 17: Set g(n) = n_cost 18: Set the parent of n to m 19: Add m to the CLOSED list 20: if (m != goal) exit with error objects to load and unload by a robotic arm. The mobile robotic arm is equipped with a rack with a dimension of 25x25 cm 2 to carry some items altogether from an initial position to the goal position. The experiments are conducted in 4 main stages: (1) mapping, (2) path planning and tracking, (3) load and unloading, and (4) item delivery.
In the first experiment -mapping, the mobile robotic arm demonstrates the process of building a 2D map utilizing RPlidar 360 degrees scanning. In this step, the movement of the mobile robotic arm along the path/trajectory is guided via a remote computer running on ROS (Robot Operating System). The speed of the mobile robotic arm is set to 8 cm/s to perform optimal mapping (low speed). The raw map file of the environment consists of sparse 2D point clouds representing the distance of the walls and objects relative to the LIDAR sensor attached to the body of the mobile robotic arm. In parallel, this input is regulated by the Hector SLAM technique to generate the 2-dimensional map, as seen in Figure 6.b.
The mapping experiments are conducted in 2 parts: (1) single track, and (2) double tracks mapping. Both parts are intended to analyze the result of one-way mapping compared to a round trip mapping. The results of the experiments are presented in Figures 7a and 7b. From the data presented in Figure 7, the double-track mapping has a higher density of point cloud maps by a factor of 160% compared to the single-track mapping experiment. However, since the same algorithm regulates both experiments with the same initial position, the accuracy of the generated map is almost the same (+10%) relative to the ground truth data.
The second experimentpath planning and tracking-is performed particularly to demonstrate and analyze a mobile robotic arm's path planning and tracking ability. This step is performed in 2 different scenarios. The first is navigation from position A to C -which is from a room to the hallway. The second is navigation from position A to C, then to B, which is started from a room to the hallway and then to another room, as visualized in Figure 7. As seen in Figure 7, the mobile robotic arm can successfully demonstrate autonomous navigation tasks without colliding with walls and obstacles detected in the environment.
In order to analyze the accuracy and precision of the path planning and tracking algorithm, 10 experiments are conducted for both scenarios (single-track and double tracks navigation). The data of path generation time, navigation time, and path length estimated from each   Table 2 and Table 3. The robot can maintain relatively high accuracy (less than 5% of position error) and high precision/repeatability (less than 2% of variations).
The shortest path generation time of both experiments is relatively fast (no more than 4.5 ms) and with a higher navigation speed (average of +23 cm/s for single track and +28 cm/s for double tracks experiment). In these experiments, the base speed is set to 23 cm/s. However, during the double-track navigation, the robot does not arrive precisely in the transit position. Hence it makes an early movement to leave the transit position to the goal position. Thus, it speeds up robot movement.
The third experimentloading and unloading, is conducted to test and analyze the performance of the robotic arm in picking and placing items to perform load and unload tasks. Before the experiments are conducted, we carefully analyze the effective working space of the robotic arm relative to its primary rotational axis, as visualized in Figure 9. The effective working space for picking and placing tasks is from 19 cm (inner-bound limit) to 37 cm (outer-bound limit). Subsequently, ten consecutive experiments of pick and place are conducted utilizing random items (small boxes, test tubes, and scissors), as presented in Figure 10. From all experiments, the robotic arm demonstrates 100% successful attempts in picking and placing items from the loading zone to the unloading zone. There is a relatively small position error in placing items (actuated point compared to the targeted point), with 3-dimensional position errors ranging from 0.6 to 2.6 mm. However, this positional error can be negligible as it is relatively insignificant compared to the size of the working space and unloading zone.
The fourth experimentitems deliverydemonstrates and analyzes the mobile robotic arm's capability to deliver items. This experiment utilizes the pre-generated map from the mapping process, which has been stored in the main processor. The initial position and the goal position is set manually by tele-operator, and the process of picking an item is performed using teleoperation with guidance from the camera. The mobile robotic arm begins to navigate autonomously with guidance from the LIDAR sensor and wheel odometry using a reference of a pre-generated map.
In this part of the experiment, the mobile robotic arm performs a 100% successful rate to deliver items to the unloading zone. However, during 10 conducted experiments, the arrival points of the robot relative to the targeted point slightly deviated, as presented in Figure 8 and Table 4. We analyze the accuracy of arrival points of the mobile robotic arm relative to the goal/targeted position by conducting 10 attempts of delivery experiment and then plotting the arrival points of the robot, as presented in Figure 8a. The robot's arrival  position data is needed to analyze the accuracy and precision of the mobile robotic arm arriving at the goal point. As specified in Table 4, the outermost arrival point from 10 experiments is at a distance of 15.2 cm (experiment number 5), and the closest arrival point is 4.1 cm to the goal point (experiment number 1). The average distance error of 10 consecutive experiments is 10.3 cm. By comparing to the effective working space of the robotic arm (as presented in Figure 9), which has a range of 18.08 cm, all the arrival points from those 10 experiments are still within the operating range of the robotic arm, and the process of pick and place can be performed successfully with 100% success rate.

Conclusions
The experimental result of the mobile robotic arm mapping technique demonstrated a relatively precise generated map. The generated points' map is projected with low noises, as some noises have been filtered out using the Hector SLAM method. However, this mapping process should be conducted at a low speed with a stable robot movement, with a maximum speed of 10 m/s. A faster mapping speed is aimed at the future upgrade.
Our mobile robotic arm's path planning and tracking capability are relatively accurate and precise. The robot is able to maintain relatively high accuracy with less than 5% of position error, and it has high   repeatability with less than 2% of variations. From several experiments, the robot can successfully navigate the environment without bumping into the wall and obstacles. The navigation time is also quite fast with a stable motion. However, we tested our navigation capability in a relatively simple environment. Hence in the future, we will demonstrate navigation performance in a more complex environment approaching the real healthcare facilities in Indonesia.
The experimental result of the robotic arm also demonstrated accurate and precise pick and place tasks, with a recorded error rate of lower than 2.6 mm. This shows that our robotic arm can satisfy the application in the natural environment. However, the actuation speed is relatively low; to pick some items, our mobile robotic arm needs about 20 -25 seconds to grab the object successfully. Therefore, we will upgrade the design of the joint motors with a higher speed specification.
In terms of the full capability of delivering items, we have demonstrated that our mobile robotic arm can perform successful mapping, path planning, tracking, load and unloading, and delivery tasks in a sequential process. The arrival position of the mobile robotic arm to the targeted area can be satisfied with a relatively minimum distance error. Thus, all tasks of delivery can be performed with a 100% successful rate. However, the pick and place tasks are still undergone in a guided mode using tele-operation while the navigation is done autonomously. In the near future, we aim to improve the level of autonomy in all aspects and processes, including the process of picking and placing objects.