Indoor and outdoor navigation system for autonomous mobile robots and method employed thereof

The indoor and outdoor navigation system for autonomous mobile robots addresses the challenge of seamless navigation across environments by integrating IMU sensors, GPS, and an extra clearance base with cameras, achieving accurate and cost-effective positioning and obstacle avoidance.

WO2025022281A1PCT designated stage expired Publication Date: 2025-01-30TENSRAI TECH PTE LTD

Patent Information

Application Number
PCT/IB2024/057033
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-21
Filing Date
2024-07-19
Publication Date
2025-01-30

AI Technical Summary

Technical Problem

Current autonomous mobile robots (AMRs) face challenges in seamlessly navigating both indoor and outdoor environments due to lack of necessary clearance and ruggedness, requiring separate systems and external setups which are costly and complex.

Method used

The system integrates multiple IMU sensors, wheel encoders, and a GPS module for odometry computation, utilizing map-based SLAM technology and an extended Kalman filter for accurate positioning. An extra clearance base with cameras can be attached using a gear chain for outdoor mode, enabling navigation through uneven terrains and obstacles.

Benefits of technology

This solution allows for seamless indoor and outdoor navigation within a single robotic system, reducing costs and complexity by eliminating the need for separate setups, while ensuring accurate and reliable positioning and obstacle avoidance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2024057033_30012025_PF_FP_ABST
    Figure IB2024057033_30012025_PF_FP_ABST
Patent Text Reader

Abstract

Exemplary embodiments of the present disclosure are directed towards an indoor and outdoor navigation system for autonomous mobile robots and the methods employed therein. The system comprises a mobile robot equipped with sensors, including IMU, encoders, GPS, and a 3D camera, all managed by a processing device. During indoor navigation, the device utilizes an extended Kalman filter for precise odometry estimation, adapting to outdoor mode with an additional clearance base. User-defined waypoints guide the robot, supported by safety lanes generated through a lane generation algorithm to prevent off-roading in mapless environments. Visual markers facilitate odometry correction for enhanced accuracy, while map-based navigation employs 2D LIDAR sensors for environment mapping. Safety is ensured through obstacle detection and ground removal algorithms, with alerts transmitted via IoT protocols upon detecting obstacles beyond designated safety lanes, thereby enhancing navigation reliability and safety.
Need to check novelty before this filing date? Find Prior Art

Description

“INDOOR AND OUTDOOR NAVIGATION SYSTEM FOR AUTONOMOUS MOBIUE ROBOTS AND METHOD EMPEOYED THEREOF”CROSS REFERENCEThis patent application claims priority benefit of Indian Provisional Patent Application No: 202341049324 entitled INDOOR AND OUTDOOR NAVIGATION SYSTEM FOR AUTONOMOUS MOBILE ROBOTS AND METHOD EMPLOYED THEREOF , filed on 21stJuly 2023. The entire contents of the patent application is hereby incorporated by reference herein in its entirety.TECHNICAL FIELD

[0001] The disclosed subject matter relates generally to the field of autonomous mobile robotics. More particularly, the present disclosure relates to indoor and outdoor navigation system for autonomous mobile robots and method employed thereof. Additionally, the present disclosure provides an extra base for clearance, which is integrated into the autonomous mobile robot (AMR) using a gear chain when an outdoor mode is selected in the autonomous mobile robot (AMR).BACKGROUND

[0002] In recent years, the presence of autonomous mobile robots (AMRs) in various human- related activities has significantly increased. These autonomous mobile robots (AMRs) play a crucial role in safely transporting large and critical payloads. Generally, the field of autonomous mobile robots (AMRs) encompasses two broad categories: indoor robots and outdoor robots. Indoor robots are specifically designed to navigate and operate within controlled indoor environments, such as factories, warehouses, and office spaces. These robots are equipped with sensors and navigation algorithms that enable them to safely maneuver through confined spaces, avoid obstacles, and interact with their surroundings.

[0003] On the other hand, outdoor robots are designed to operate in more challenging and dynamic outdoor environments. These robots are typically deployed in various applications, including agriculture, logistics, surveillance, and exploration. Outdoor robots face unique challenges such as uneven terrains, changing weather conditions, and a wider range of potential obstacles. However, a significant issue arises when attempting to develop a single system that seamlessly combines the capabilities of both indoor and outdoor navigation. Traditionally,AMRs have been designed solely for indoor purposes, lacking the necessary clearance and ruggedness to navigate outdoor environments effectively. In contrast, outdoor navigation often requires the use of expensive 3D LIDARs and specialized sensors, driving up the cost of the robot and limiting its accessibility to smaller-scale entities. To address this problem, previous approaches involved purchasing separate outdoor AGVs to handle outdoor logistics and material handling tasks. However, AGVs required external setup and modifications to navigate effectively in outdoor environments. This added complexity and cost hindered manufacturers and warehouse owners, posing a significant challenge in achieving a unified solution for seamless indoor and outdoor navigation within a single robotic system.

[0004] In the light of the aforementioned discussion, there exists a need for an innovative indoor and outdoor navigation system for autonomous mobile robots that overcomes the limitations of traditional indoor robots, eliminates the need for expensive external setups, and provides an economical solution accessible to various entities regardless of scale.SUMMARY

[0005] The following presents a simplified summary of the disclosure in order to provide a basic understanding of the reader. This summary is not an extensive overview of the disclosure and it does not identify key / critical elements of the invention or delineate the scope of the invention. Its sole purpose is to present some concepts disclosed herein in a simplified form as a prelude to the more detailed description that is presented later.

[0006] An objective of the present disclosure is directed towards an indoor and outdoor navigation system for autonomous mobile robots and method employed thereof.

[0007] Another objective of the present disclosure is directed towards a system that includes multiple IMU sensors, wheel encoders, and a GPS module for odometry computation in both indoor and outdoor environments.

[0008] Another objective of the present disclosure is directed towards providing an autonomous mobile robot (AMR) that navigates both indoors and outdoors.

[0009] Another objective of the present disclosure is directed towards providing an autonomous mobile robot (AMR) that utilizes map-based simultaneous localization andmapping (SLAM) technology for indoor navigation.

[0010] Another objective of the present disclosure is directed towards a system that integrates data from multiple IMU sensors and wheel encoders using an extended Kalman fdter this approach ensures precise and accurate positioning of the AMR during indoor navigation environments.

[0011] Another objective of the present disclosure is directed towards providing an autonomous mobile robot (AMR) that utilizes map-based SLAM technology and fuses data from multiple IMU sensors and wheel odometry using an extended Kalman fdter for accurate positioning.

[0012] Another objective of the present disclosure is directed towards an autonomous mobile robot (AMR) that incorporates GPS data and data from multiple IMU sensors, which are fused using an extended Kalman fdter for accurate state estimation in outdoor navigation.

[0013] Another objective of the present disclosure is directed towards providing an extra base for clearance, which can be attached or integrated into the autonomous mobile robot (AMR) using a gear chain when the outdoor mode is selected in the robot UI.

[0014] Another objective of the present disclosure is directed towards providing cameras on the extra clearance base that are used for monitoring purposes, and an automatic position calibration algorithm determines their positions.

[0015] Another objective of the present disclosure is directed towards providing an extra base to address the challenge of navigating outdoor environments where uneven terrains and obstacles may require additional ground clearance.

[0016] Another objective of the present disclosure is directed towards providing a system that offers two options in outdoor mode automatic generation of a pseudo map with predefined boundaries for navigation, or mapping the environment using 3D cameras or 2D LIDAR sensors controlled remotely.

[0017] Another objective of the present disclosure is directed towards providing a system thatincorporates a fusion of odometry data from IMUs, GPS, and QR codes or ArUco markers, enhancing accuracy and reliability in outdoor navigation.

[0018] Another objective of the present disclosure is directed towards providing calibration mechanisms for adjusting the velocity data sent to the motors, ensuring accurate control considering the gear configuration between the AMR's driven wheels and the wheels of the extra clearance base.

[0019] Another objective of the present disclosure is directed towards providing a system that uses a lane generation algorithm to create safety lanes based on waypoints to prevent off- roading and ensure efficient navigation.

[0020] Another objective of the present disclosure is directed towards providing a system that uses ArUco markers or QR codes to facilitate odometry correction.

[0021] Another objective of the present disclosure is directed towards providing a system that uses a ground removal algorithm to remove the ground point cloud from the complete 3D point cloud obtained by the robot's cameras.

[0022] According to an exemplary aspect, a system for indoor and outdoor navigation of autonomous mobile robots includes a mobile robot communicatively connected with a computing device over a network, wherein the computing device comprises an automatic mobile robot navigation monitoring and controlling module configured to enable the user to select at least one of: an indoor mode and an outdoor mode.

[0023] According to another exemplary aspect, the mobile robot includes one or more IMU sensors configured to capture motion data, encoders for measuring wheel movements; a GPS unit configured to measure the location of the mobile robot; a 3D camera configured to capture 3D point cloud data.

[0024] According to another exemplary aspect, a processing device electrically coupled to the IMU sensors, encoders, GPS unit, and 3D camera, wherein the processing device is configured to fuse data from one or more IMU sensors and encoders using an extended Kalman filter for accurate odometry estimation for indoor navigation when the user selects the indoor mode onthe automatic mobile robot navigation monitoring and controlling module.

[0025] According to another exemplary aspect, the automatic mobile robot navigation monitoring and controlling module configured to enable the user to select the outdoor mode and attach an extra clearance base to the autonomous mobile robot when the outdoor mode is selected.

[0026] According to another exemplary aspect, the processing device configured to receive user-specified waypoints for the autonomous mobile robot and utilize a lane generation algorithm to compute lanes for the autonomous mobile robot to navigate and create safety lanes that prevent off-roading in a map less mode.

[0027] According to another exemplary aspect, the processing device use the one or more cameras to find the one or more ArUco markers or QR codes to perform odometry correction.

[0028] According to another exemplary aspect, the processing device configured to map the environment when the map-based navigation mode is selected, enabling the user to teleoperate the autonomous mobile robot for mapping the outdoor environment and generate a 2D map using one or more 2D LIDAR sensors and superimpose the generated 2D map on a plain white map.

[0029] According to another exemplary aspect, the processing device configured to generate safety lanes based on waypoints and user-defined safety width, detect one or more obstacles using the cameras of the extra clearance base.

[0030] According to another exemplary aspect, the processing device configured to remove the ground point cloud from the 3D point cloud using a ground removal algorithm.

[0031] According to another exemplary aspect, the processing device configured to send alerts to the computing device via loT protocols when the robot detects obstacles outside the designated safety lanes.BRIEF DESCRIPTION OF THE DRAWINGS

[0032] In the following, numerous specific details are set forth to provide a thorough description of various embodiments. Certain embodiments may be practiced without these specific details or with some variations in detail. In some instances, certain features are described in less detail so as not to obscure other aspects. The level of detail associated with each of the elements or features should not be construed to qualify the novelty or importance of one feature over the others.

[0033] FIG. 1 is an example diagram depicting a system for indoor and outdoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0034] FIG. 2 is a block diagram depicting an embodiment of the indoor and outdoor navigation system for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0035] FIG. 3 is a flowchart depicting an exemplary method for extra base calibration for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0036] FIG. 4 is a flowchart depicting an exemplary method for indoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0037] FIG. 5 is a flowchart depicting an exemplary method for outdoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0038] FIG. 6 is a flowchart depicting an exemplary method for providing a safety map, in accordance with one or more exemplary embodiments.

[0039] FIG. 7 is a flowchart depicting an exemplary method for calibrating the positions (front, back, left, right) of the cameras on the extra clearance base using the calibration algorithm.

[0040] FIG. 8 is a block diagram illustrating the details of a digital processing system in which various aspects of the present disclosure are operative by the execution of appropriate software instructions.DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

[0041] It is to be understood that the present disclosure is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the drawings. The present disclosure is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting.

[0042] The use of “including”, “comprising” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. The terms “a” and “an” herein do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced item. Further, the use of terms “first”, “second”, and “third”, and the like, herein do not denote any order, quantity, or importance, but rather are used to distinguish one element from another.

[0043] Referring to FIG. 1 is an example diagram 100 depicting a system for indoor and outdoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments. The system 100 includes an autonomous mobile robot 102, a network 104, a computing device 106, a gear chain 108, an extra clearance base 110, an IMU sensors 112, a 3D camera 114, a processing device 116, a GPS unit 118, encoders 120, Motors 122, robotic wheels 124, a camera 126, wheels 128, an autonomous mobile robot navigation monitoring and controlling module 130, a 2D lidar 132, and motor drivers 134.

[0044] The autonomous mobile robot 102 may be configured to automatically navigate both indoors and outdoors. The autonomous mobile robot 102 may include one or more IMU sensors 112, encoders 120, and GPS unit 118. One or more IMU sensors 112, encoders 120, and GPS unit 118 may be electrically coupled to the processing device 116. In indoor navigation, the processing device 116 may compute odometry by fusing the data from the one or more IMU sensors 112, and encoders 120 using the Kalman filter. In outdoor navigation, the processing device 116 may compute odometry by fusing the data from the GPS unit 118 and one or more IMU sensors 112 using the Kalman filter.

[0045] The extra clearance base 110 may include one or more cameras 126. The extra clearance base 110 may be configured to integrate with the autonomous mobile robot 102 using the gear chain 108. The gear chain 108 may be connected to the robotic wheels 124 and the gear chain108 may also be connected to the wheels 128 of the extra clearance base 110 when the outdoor mode is selected by the user on the computing device 106. The one or more cameras 126 may be connected to the processing device 116 using the USB cables. The one or more cameras 126 may be configured to monitor the outdoor environments.

[0046] The processing device 116 may be configured to send the velocity data to motors 122 through the motor drivers 134. The processing device 116 may calibrate the velocity data according to the wheels 128 of the extra clearance base 110. The processing device 116 may multiply the velocity by pre -fixed multiplier in the software. The processing device 116 may be configured to send the speed to the motors 122 in the form of velocity multiplied by the prefixed multiplier which is the ratio of the number of gear teeth connected to the wheels 124 of the autonomous mobile robot 102 and the number of gear teeth connected to the wheels 128 of the extra clearance base 110.

[0047] The processing device 116 may use the automatic position calibration algorithm to classify which camera is positioned towards the front, towards the back, towards the left, and the right on the extra clearance base 110. The automatic position calibration algorithm may use feature-matching techniques to determine the position of each camera based on the motion estimates from feature -matching and velocity data. This gives us the position of all the cameras once the autonomous mobile robot 102 starts moving, enabling the autonomous calibration of cameras.

[0048] The processing device 116 may offer the mapless mode and map-based mode to navigate the autonomous mobile robot 102 in outdoor environments. In the mapless mode, the processing device 116 may consider the autonomous mobile robot 102 origins (0,0, yaw). The processing device 116 may receive the user specifies waypoints for the autonomous mobile robot 102 to reach in the format of (distance travelled in x (meters), distance travelled in y (meters), yaw). The processing device 116 may use the lane generation algorithm to compute lanes to navigate the autonomous mobile robot 102 and make the autonomous mobile robot 102 avoid off-roading and deviating too much from the safe path in outdoor navigation. The lane generation algorithm takes waypoints and safety width (width of the lane) as inputs. The algorithm first connects all the waypoints using lines, so that every waypoint is connected to the previous and next waypoint using lines, then draws parallel outlines towards the left and right sides of the waypoint connecting lines that are generated. From the generated outlines,few would intersect and few would not. The algorithm then saves all the start points, end points, and intersecting points of the outlines in a data structure (array). All the intersecting points in the array are checked to find the start and end points of the intersecting lines that are close to the intersection. The found start and end points are deleted from the array. The algorithm then gives the points in the data structure (array) to a least squares problem solver, which in our case is smoothing splines. The output from the smoothing splines is the lane map, this lane map can be used as a safety map by giving it to the static obstacle layer for the robot to navigate when mapless navigation mode is selected. The ArUco markers or QR codes may be placed at the start and end points of the navigation plan (waypoints-based plan) and can be easily detected by the autonomous mobile robot 102 using 3D cameras 114. These ArUco markers or QR codes facilitate the odometry correction of the autonomous mobile robot. The user may place the ArUco markers or QR codes at specific locations along the autonomous mobile robot 102 paths for further odometry correction. The ArUco markers or QR codes share the same pattern but are placed at distinct positions. When the autonomous mobile robot 102 reaches these positions, the autonomous mobile robot 102 rotates slowly in its position until the system finds the ArUco marker or QR code in the autonomous mobile robot 102 camera images to perform odometry correction.

[0049] In the map-based mode, the processing device 116 may use the 2D UIDAR sensor 132 to generate the 2D map. The user may monitor the autonomous mobile robot 102 and control the autonomous mobile robot 102 to map the environment from the control station itself by using loT protocols for communication and the cameras 126 that are available on the extra clearance base 110 for monitoring while mapping. The processing device 116 may overlay the generated 2D map on a plain white map, with the same dimensions as the generated map, to fill gaps / gray areas (unknown regions) that may arise when mapping an outdoor environment using 2D UIDAR. The user can edit this map through the UI as necessary. The user may provide waypoints for the autonomous mobile robot 102 to navigate safely without going too close to the comers. The lane generation algorithm is used even in this mode to create safety lanes based on the waypoints to make the robot avoid off-roading. The system then gives the generated array containing the (x,y) points of the safety lane to the static layer which is used by the global cost map of the navigation stack to make the robot travel in a safe path. Even this mode allows the users to set up ArUco markers or QR codes at the start position and the end position of the waypoints-based plan. The autonomous mobile robot 102 when is not able to find a path inside the safety lane due to the presence of any obstacle / obstruction. The autonomous mobile robot102 may send a message or an alert to the computing device 102 using loT protocols. Then the user can check the surroundings of the robot and either allow the robot to go off the safety lane to reach the next waypoint or can control / operate the robot to avoid the obstacle and can then resume the autonomous navigation of the robot when it is free to go. The 3D point cloud obtained from the 3D cameras typically includes ground point cloud data and the autonomous mobile robot 102 perceives as obstacles. The processing device 116 may use the ground removal algorithm that removes the ground surface / ground point cloud from the 3D point cloud generated by the 3D cameras. The algorithm takes into account the roll, pitch, and yaw data from the IMUs and dynamically removes the ground point cloud from the complete 3D point cloud.

[0050] The one or more IMU sensors 112 may be configured to capture the motion data. The processing device 116 may be configured to fuse data from the IMU sensors 112 and wheel encoders 120 using an extended Kalman filter, resulting in accurate odometry estimation for indoor navigation. In outdoor scenarios the autonomous mobile robot 102 may use the GPS data and the GPS data may be integrated with one or more IMU sensors 112 data using an extended Kalman filter to estimate odometry. The autonomous mobile robot 102 may use the state of the art map based (SUAM) navigation technology for indoor navigation and odometry is computed by fusing data from one or more IMU sensors 112. The autonomous mobile robot 102 may use an extended Kalman filter. The autonomous mobile robot 102 may use GPS data and data from one or more IMU sensors 112 and the data is fused using an extended Kalman filter for state estimation.

[0051] The computing device 106 may include a user device. The user may include but not limited to shopkeepers, technicians, trained operators, and the like. The computing device 106 may include but not limited to, a personal digital assistant, smartphones, personal computers, a mobile station, computing tablets, a handheld device, a telephone, a mobile phone, a digital processing system, and so forth. The computing device 106 may include the autonomous mobile robot navigation monitoring and controlling module 130 may be configured to enable the user to select indoor mode or outdoor mode to operate the autonomous mobile robot 102. The autonomous mobile robot navigation monitoring and controlling module 130 may be configured to transfer the user selected mode to the processing device 116 of the autonomous mobile robot 102. The network 104 may include but not limited to, an Internet of Things (loT network devices), an Ethernet, a wireless local area network (WEAN), or a wide area network(WAN), a Bluetooth low energy network, a ZigBee network, a WIFI communication network e.g., the wireless high speed internet, or a combination of networks, a cellular service such as a 4G (e.g., LTE, mobile WiMAX) or 5G cellular data service, a RFID module, a NFC module, wired cables, such as the world-wide-web based Internet, or other types of networks may include Transport Control Protocol / Intemet Protocol (TCP / IP) or device addresses (e.g. network-based MAC addresses, or those provided in a proprietary networking protocol, such as Modbus TCP, or by using appropriate data feeds to obtain data from various web services, including retrieving XML data from an HTTP address, then traversing the XML for a particular node) and so forth without limiting the scope of the present disclosure.

[0052] The autonomous mobile robot navigation monitoring and controlling module 130 may be any suitable application downloaded from GOOGLE PLAY® (for Google Android devices), Apple Inc.'s APP STORE® (for Apple devices), or any other suitable database. The remotely autonomous mobile robot navigation monitoring and controlling module 130 may be a desktop application that runs on Windows or Linux or any other operating system and may be downloaded from a webpage or a CD / USB stick etc. In some embodiments, the autonomous mobile robot navigation monitoring and controlling module 130 may be software, firmware, or hardware that is integrated into the computing device 106, and may present a web page to the user by way of a browser, wherein the webpage comprises a hyperlink may direct the user to uniform resource locator (URL).

[0053] Although the computing device 106 is shown in FIG. 1, an embodiment of the system 100 may support any number of computing devices. The computing device 106 may be operated by the user. The computing device 106 supported by system 100 is realized as a computer-implemented or computer-based device having the hardware or firmware, software, and / or processing logic needed to carry out the computer-implemented methodologies described in more detail herein.

[0054] The autonomous mobile robot 102 in indoor mode may use the (SLAM) navigation technology for navigation and odometry is computed by fusing data from multiple one or more IMU sensors 112 and the wheel odometry data using the extended Kalman filter. The one or more IMU sensors 112 may be placed at one or more areas in the autonomous mobile robot 102. The autonomous mobile robot 102 in outdoor mode may use the GPS data and data from one or more IMU sensors 112. The one or more IMU sensors 112 may be placed in one or moreareas in the autonomous mobile robot 102. The data is fused using an extended Kalman filter for state estimation. The autonomous mobile robot 102 may use the extra base for clearance 110 through a gear chain 108. The processing device 116 may be configured to control the speed limits of the extra base for clearance 110 through the velocity converter and the one or more motors 122.

[0055] The processing device 116 may include but not limited to, a microcontroller (for example ARM 7 or ARM 11), a raspberry pi, a microprocessor, a digital signal processor, a microcomputer, a field programmable gate array, a mini-PC, a programmable logic device, a state machine or logic circuitry, Arduino board. The processing device 116 may be configured to generate a pseudo map with predefined boundaries based on the robot's origin (0,0, yaw) and the specified waypoints. The map defines the navigable area and serves as a reference for subsequent navigation steps. The processing device 116 may use the QR code or ArUco marker recognition algorithms to detect QR codes or ArUco markers placed at the start and end points of the navigation plan. When the autonomous mobile robot 102 reaches these points, it searches for the QR codes or ArUco markers using the one or more 3D cameras 114 to perform odometry correction. The processing device 116 may use lane generation algorithms to create safe paths for the robot to follow. The algorithms connect the waypoints using lines, draw parallel outlines to the left and right sides of the connecting lines, and generate a set of start points, endpoints, and intersecting points. These points are then processed by a least squares problem solver, such as smoothing splines, to generate a lane map that ensures the robot navigates within safe boundaries. The autonomous mobile robot 102 may use the 3D cameras 114 and 2D UIDARs 132(or UIDAR sensors). The generated point cloud data undergoes an adaptive ground removal algorithm that analyses the roll, pitch, and yaw data from the IMUs. This algorithm dynamically removes the ground surface / ground point cloud from the complete 3D point cloud, resulting in accurate obstacle perception. The navigation stack, utilizing the odometry data, lane map, and obstacle perception, guides the AMR through the outdoor environment, ensuring safe and efficient navigation. The system allows for map editing and customization through the UI, enabling users to refine the outdoor maps as necessary.

[0056] In an exemplary embodiment, the autonomous mobile robot (AMR) 102 may be configured to use state of the art map based (SUAM) navigation technology for navigation, and odometry is computed by fusing data from multiple the IMU sensors 112. The IMU sensors 112 may be placed at different places in the autonomous mobile robot (AMR) 102 and wheelodometry data using an extended Kalman filter. In the outdoors the autonomous mobile robot (AMR) 102 may use the GPS data and data from one or more IMU sensors 112. The one or more IMU sensors 112 may be placed in different areas of the autonomous mobile robot (AMR) 102. The data is fused using an extended Kalman fdter for state estimation. The system 100 may include the extra clearance base 110 for clearance, which may be attached to the autonomous mobile robot (AMR) 102 using the gear chain 108 when an outdoor mode is selected in the robot UI in the computing device 106. The computing device 106 may communicatively communicate with the autonomous mobile robot (AMR) 102 using loT / Network 104. The speed limits for the navigation stack are adjusted in the processing device 116 via the computing device 106. The extra clearance base 110 may be attached to the robotic wheels 124 of the autonomous mobile robot (AMR) 102. The velocity sent to the motors should correspond to the wheels 128 of the extra clearance base 110. The speed sent to the motors 122 as velocity is multiplied by the ratio of the number of gear teeth at the driven wheels of the autonomous mobile robot (AMR) 102 to the number of gear teeth at the wheels of the extra clearance base 110. There may be two options in outdoor mode. In the first option, a pseudo map with predefined boundaries is generated automatically for outdoor navigation. The robot's origin is taken as (0,0, yaw), and the user gives the robot waypoints as (distance travelled in x (meters), distance travelled in y (meters), yaw). The QR codes or ArUco markers can be easily recognized by the robot’s cameras, QR codes or ArUco markers can be placed at the start and end points of the navigation plan for odometry correction of the robot, and the user may set up QR codes or ArUco marker at a few / certain places in the path of the robot for odometry correction. The QR codes or ArUco markers may be placed are all same with the same QR pattern or ArUco pattern but are placed at specific positions and when the robot reaches those positions the system searches for the QR code or ArUco marker in the robot’s camera images for odometry correction. In outdoor mode, the autonomous mobile robot (AMR) 102 computes odometry by fusing one or more IMU sensors 112 data and GPS data using an extended Kalman filter. The second option is used If the environment where the robot is operating has enough features / objects on both sides of the moveable / travelable path. In the second option, the environment is mapped by the autonomous mobile robot (AMR) 102 using 3D cameras 114 and 2D UIDAR sensors 132 by remote controlling or tele-operating the robot. The generated 2D map is superimposed on a plain white map (white spaces in the map are free spaces) with the same dimensions as the generated map to fill gaps / gray spaces (unknown regions) which may be generated while mapping an outdoor environment using 2D UIDARs 132 and can be edited in the UI as necessary. This map and the fused odometry data can beused by the navigation stack for navigation without QR codes for odometry correction but QR codes or ArUco markers can be placed at certain places for odometry correction if necessary. The 3D point cloud from the 3D cameras 114 may consist of the ground point cloud as well and the robot perceives this ground point cloud as an obstacle. In the present autonomous mobile robot (AMR) 102 the 3D cameras 114 may be placed in such a way that the ground is not visible to the 3D cameras and the ground is not detected as an obstacle for the robot but this method only works indoors where the ground is flat and the robot is not suffered from jolting. The processing device 116 may use the algorithm that removes the ground surface / ground point cloud from the 3D point cloud generated by the 3D cameras 114 depending upon roll, pitch, and yaw data from the IMUs. This adaptive ground removal algorithm the AMR navigates without any noises in outdoor environments.

[0057] The autonomous mobile robot (AMR) 102 may include the extra clearance base 110 with increased clearance. The extra clearance base 110 may include one or more cameras 126. The extra clearance base 110 may be attached to the autonomous mobile robot (AMR) 102, connecting the USB cables from the cameras 126 to the processing device of the autonomous mobile robot (AMR) 102 and connecting the driven wheels of the autonomous mobile robot (AMR) 102 to the gear system which is connected to the wheels of the extra clearance base 110 via a gear chain 108 when the outdoor mode is selected through the robot's user interface (UI) on the computing device 106, which communicates with the onboard PC of the robot via loT. The cameras 126 of the extra clearance base may be used for monitoring purposes. The cameras 126 on the extra clearance base 110 may be all similar (same model) and are connected to the processing device using USBs, it becomes difficult to classify manually which camera is positioned towards front, which towards back, which towards left, and which towards right every time. To solve this, an automatic position calibration algorithm is used which takes in the camera images of all the cameras, linear velocity data of the previous 5 time steps. Then the algorithm uses feature matching techniques to determine the position of each camera based on the motion estimates from feature matching and velocity data. This gives us the position of all the cameras once the robot is moved or starts moving, enabling autonomous calibration of cameras.

[0058] Referring to FIG. 2 is a block diagram 200 depicting an embodiment of the indoor and outdoor navigation system for autonomous mobile robots, in accordance with one or more exemplary embodiments.

[0059] The autonomous mobile robot (AMR) 102 may be configured to use state of the art map based (SLAM) navigation technology for navigation, and odometry is computed by fusing data from multiple the IMU sensors 112. The IMU sensors 112 may be placed at different places in the autonomous mobile robot (AMR) 102 and wheel odometry data using an extended Kalman filter. Outdoors the autonomous mobile robot (AMR) 102 may use the GPS data and data from one or more IMU sensors 112. The one or more IMU sensors 112 may be placed in different areas of the robot. The data is fused using an extended Kalman filter for state estimation. The system 100 may include the extra clearance base 110 for clearance, which may be attached to the autonomous mobile robot (AMR) 102 using the gear chain 108 when an outdoor mode is selected in the robot UI in the computing device 106. The computing device 106 may communicatively communicate with the autonomous mobile robot (AMR) 102 using loT / Network 104. The speed limits for the navigation stack are adjusted in the processing device 116 via the computing device 106. The extra clearance base 110 may be attached to the robotic wheels 124 of the autonomous mobile robot (AMR) 102. In exemplary embodiment of the present disclosure, the processing device may be configured to enable the user to attach an extra clearance base to the autonomous mobile robot when the outdoor mode is selected. In another exemplary embodiment of the present disclosure the extra clearance base integrated with autonomous mobile robot. The velocity may be sent to the motors should be corresponding to the wheels 128 of the extra clearance base 110. The speed sent to the motors 122 as velocity is multiplied by the ratio of the number of gear teeth at the driven wheels of the autonomous mobile robot (AMR) 102 to the number of gear teeth at the wheels of the extra clearance base 110. There may be two options in outdoor mode. In the first option, a pseudo map with predefined boundaries is generated automatically for outdoor navigation. The robot's origin is taken as (0,0, yaw), and the user gives the robot waypoints as (distance travelled in x (meters), distance travelled in y (meters), yaw). The QR codes or ArUco markers can be easily recognized by the robot’s cameras, QR codes or ArUco markers can be placed at the start and end points of the navigation plan for odometry correction of the robot, and the user may set up QR codes or ArUco markers at a few / certain places in the path of the robot for odometry correction. The QR codes or ArUco markers may be placed are all same with the same QR pattern or ArUco pattern but are placed at specific positions and when the robot reaches those positions the system searches for the QR code or ArUco marker in the robot’s camera images for odometry correction. In outdoor mode, the autonomous mobile robot (AMR) 102 computes odometry by fusing one or more IMU sensors 112 data and GPS data using an extended Kalman filter. The second option is used If the environment where the robot is operating has enoughfeatures / objects on both sides of the moveable / travelable path. In the second option, the environment is mapped by the autonomous mobile robot (AMR) 102 using 3D cameras 114 and 2D LIDAR sensors 132 by remote controlling or tele-operating the robot. The generated 2D map is superimposed on a plain white map (white spaces in the map are free spaces) with the same dimensions as the generated map to fdl gaps / gray spaces (unknown regions) which may be generated while mapping an outdoor environment using 2D LIDARs 132 and can be edited in the UI as necessary. This map and the fused odometry data can be used by the navigation stack for navigation without QR codes or ArUco markers for odometry correction but QR codes or ArUco markers can be placed at certain places for odometry correction if necessary. The 3D point cloud from the 3D cameras 114 may consist of the ground point cloud as well and the robot perceives this ground point cloud as an obstacle. In the present autonomous mobile robot (AMR) 102 the 3D cameras 114 may be placed in such a way that the ground is not visible to the 3D cameras and the ground is not detected as an obstacle for the robot but this method only works indoors where the ground is flat and the robot is not suffered from jolting. The processing device 116 may use the algorithm which removes the ground surface / ground point cloud from the 3D point cloud generated by the 3D cameras 114 depending upon roll, pitch, and yaw data from the IMUs. This adaptive ground removal algorithm the AMR navigates without any noises in outdoor environments.

[0060] In an exemplary embodiment, the autonomous mobile robot (AMR) 102 may include the extra clearance base 110 with increased clearance. The extra clearance base 110 may include one or more cameras 126. The extra clearance base 110 may be attached to the autonomous mobile robot (AMR) 102, connecting the USB cables from the cameras 126 to the processing device of the autonomous mobile robot (AMR) 102 and connecting the driven wheels of the autonomous mobile robot (AMR) 102 to the gear system which is connected to the wheels of the extra clearance base 110 via a gear chain 108 when the outdoor mode is selected through the robot's user interface (UI) on the computing device 106, which communicates with the onboard PC of the robot via loT. The cameras 126 of the extra clearance base may be used for monitoring purposes. The cameras 126 on the extra clearance base 110 may be all similar (same model) and are connected to the processing device using USBs, it becomes difficult to classify manually which camera is positioned towards front, which towards back, which towards left, and which towards right every time. To solve this, an automatic position calibration algorithm is used which takes in the camera images of all the cameras and linear velocity data of the previous 5-time steps. Then the algorithm uses featurematching techniques to determine the position of each camera based on the motion estimates from feature matching and velocity data. This gives us the position of all the cameras once the robot is moved or starts moving, enabling autonomous calibration of cameras.

[0061] Referring to FIG. 3 is a flowchart 300 depicting an exemplary method for extra base calibration for autonomous mobile robots, in accordance with one or more exemplary embodiments. As an option, the method 300 is carried out in the context of the details of FIG.1, FIG.2. However, the method 300 is carried out in any desired environment. Further, the aforementioned definitions are equally applied to the description below.

[0062] The method commences at step 302, attaching an extra clearance base to an autonomous mobile robot when the outdoor navigation mode is selected by the user on the computing device. Thereafter, at step 304, multiplying velocity values by the constant which is found from the radius of the driven wheels and extra clearance base wheels and the number of gear tooth of gears attached to the driven wheels and extra clearance base wheels to calibrate the motor RPM according to the extra clearance base by the processing device. Thereafter, at step 306, moving the autonomous mobile robot by teleoperating to calibrate the camera positions on the extra clearance base. Thereafter, at step 308, calibrating the positions (front, back, left, right) of the cameras on the extra clearance base by the processing device using the calibration algorithm.

[0063] Referring to FIG. 4 is a flowchart 400 depicting an exemplary method for indoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments. As an option, the method 400 is carried out in the context of the details of FIG.1, FIG.2, FIG.3. However, the method 400 is carried out in any desired environment. Further, the aforementioned definitions are equally applied to the description below.

[0064] The method commences at step 402, capturing motion data and measuring the rotation of the wheels of an autonomous mobile robot by one or more IMU sensors and wheel encoders. Thereafter, at step 404, initializing a map-based simultaneous localization and mapping (SLAM) algorithm by a processing device. Thereafter, at step 406, fusing data from multiple IMU sensors and wheel encoders using an extended Kalman filter to estimate odometry accurately. Thereafter, at step 408, matching the acquired sensor data with the generated map to determine its position and orientation. Thereafter, at step 410, planning the optimal path tothe specified destination based on the map and the robot's position by the processing device. Thereafter, at step 412, controlling one or more motors of the autonomous mobile robot to follow the planned path, while continuously updating its position using sensor data fusion by the processing device.

[0065] Referring to FIG. 5 is a flowchart 500 depicting an exemplary method for outdoor navigation for autonomous mobile robots, in accordance with one or more exemplary embodiments. As an option, the method 500 is carried out in the context of the details of FIG.1, FIG.2, FIG.3, and FIG.4. However, the method 500 is carried out in any desired environment. Further, the aforementioned definitions are equally applied to the description below.

[0066] The method commences at step 502, attaching the extra clearance base to the autonomous mobile robot when the outdoor navigation mode is selected by the user on the computing device. Thereafter, at step 504, fusing the odometry data from the GPS module with data from the IMU sensors using an extended Kalman filter for filtering outdoor odometry and Initializing Lidar sensors and 3D cameras for navigation and obstacle avoidance by the processing device. Thereafter, at step 506, receiving one or more waypoints with a certain distance between each waypoint from the user by the processing device. Thereafter, at step 508, generating a safety map lane for the autonomous mobile robot along the waypoints the user gives to prevent the robot from off-roading by the processing device using the safety lanes algorithm. Thereafter, at step 510, placing one or more ArUco markers or QR codes at the starting waypoint and the ending waypoint for odometry correction. Thereafter, at step 512, finding the one or more ArUco markers or QR codes by the autonomous mobile robot using the one or more cameras using image processing algorithms in the processing device to perform odometry correction. Thereafter, at step 514, mapping the environment when map-based navigation mode is selected and the user teleoperates the autonomous mobile robot for mapping the outdoor environment. Thereafter, at step 516, generating a 2D map using one or more 3D cameras and 2D LIDAR and superimposing the generated 2D map on a plain white map (white spaces in the map are free spaces) by the processing device. Thereafter, at step 518, generating safety lanes based on waypoints and user-defined safety width by the processing device. Thereafter, at step 520, detecting one or more obstacles by the processing device using one or more cameras of an extra clearance base. Thereafter, at step 522, removing the ground point cloud from the 3D point cloud by the processing device using a ground removal algorithm. Theground removal algorithm involves using the RANSAC algorithm to process the complete point cloud obtained from the 3D camera. The RANSAC algorithm identifies inliers, which constitute the ground point cloud, and outliers, which form the obstacle point cloud. This method effectively separates the ground from obstacles, utilizing the RANSAC algorithm to distinguish between the two. Thereafter, at step 524, sending a message to the computing device by the processing device when there are too many obstacles at a certain waypoint inside the safety lanes and the user guides the autonomous mobile robot.

[0067] Referring to FIG. 6 is a flowchart depicting an exemplary method for providing a safety map, in accordance with one or more exemplary embodiments. The method commences at step 602, receiving one or more waypoints and safety width (width of the lane) as inputs by a processing device using a lane generation algorithm. Thereafter, at step 604, connecting one or more waypoints by processing device using lines, and every waypoint is connected to the previous and next waypoint using lines then draws parallel outlines towards the left and right sides of the waypoint connecting lines that are generated. Thereafter, at step 606, intersecting one or more generated outlines by the processing device and intersecting points in the array are checked to find the start and end points of the intersecting lines that are close to the intersection. Thereafter, at step 608, generating one or more points in the data structure (array) to a least squares problem solver by the processing device.

[0068] Referring to FIG. 7 is a flowchart 700 depicting an exemplary method for calibrating the positions (front, back, left, right) of the cameras on the extra clearance base using the calibration algorithm, in accordance with one or more exemplary embodiments. As an option, the method 700 is carried out in the context of the details of FIG.1, FIG.2, FIG.3, FIG.4, FIG.5, and FIG.6. However, the method 700 is carried out in any desired environment. Further, the aforementioned definitions are equally applied to the description below.

[0069] The method commences at step 702, capturing two consecutive frames from each camera while the robot is moved in a linear motion. Thereafter, at step 704, applying the Scale- Invariant Feature Transform (SIFT) algorithm to extract key points and descriptors from both frames recorded by each camera. Thereafter, at step 706, utilizing a feature matching algorithm (e.g., brute force) to match key points between the two back-to-back frames recorded by each camera and find correspondences between key points across the frames to establish potentialmatches. Thereafter, at step 708, applying a threshold value to filter out good matches based on the distance measure (e.g., Euclidean distance) between matched features. Thereafter, at step 710, selecting matches that fall within the threshold distance as good matches, discarding outliers that may not correspond well across frames. Thereafter, at step 712 using the good matches to compute the essential matrix, the essential matrix encapsulates the geometric relationship between the two camera views, considering their intrinsic parameters and relative pose. Thereafter, at step 714, decomposing the essential matrix to extract the rotational and translational components, this step providing information about how the camera has moved relative to the scene between the two frames. Thereafter, at step 716, analyzing the translational matrix to determine the movement direction: in the case of the robot's linear velocity being positive, if the movement derived from the translational matrix indicates straight ahead, identifying it as the front camera, movements to the left, right, or backward associating respectively with the right-side, left-side, or back camera, conversely, if the robot's linear velocity is negative, indicating backward movement, straight ahead corresponding to the back camera, while movements to the left, right, or backward associating respectively with the leftside, right-side, or front camera.

[0070] Referring to FIG. 8, FIG. 8 is a block diagram illustrating the details of digital processing system 800 in which various aspects of the present disclosure are operative by execution of appropriate software instructions. Digital processing system 800 may correspond to computing device 106 (or any other system in which the various features disclosed above can be implemented).

[0071] Digital processing system 800 may contain one or more processors such as a central processing unit (CPU) 810, random access memory (RAM) 820, secondary memory 827, graphics controller 860, display unit 870, network interface 880, an input interface 890. All the components except display unit 870 may communicate with each other over communication path 850, which may contain several buses as is well known in the relevant arts. The components of Figure 8 are described below in further detail.

[0072] CPU 810 may execute instructions stored in RAM 820 to provide several features of the present disclosure. CPU 810 may contain multiple processing units, with each processing unit potentially being designed for a specific task. Alternatively, CPU 810 may contain only asingle general-purpose processing unit.

[0073] RAM 820 may receive instructions from secondary memory 830 using communication path 850. RAM 820 is shown currently containing software instructions, such as those used in threads and stacks, constituting shared environment 825 and / or user programs 826. Shared environment 825 includes operating systems, device drivers, virtual machines, etc., which provide a (common) run time environment for execution of user programs 826.

[0074] Graphics controller 860 generates display signals (e.g., in RGB format) to display unit 870 based on data / instructions received from CPU 810. Display unit 870 contains a display screen to display the images defined by the display signals. Input interface 890 may correspond to a keyboard and a pointing device (e.g., touch-pad, mouse) and may be used to provide inputs. Network interface 880 provides connectivity to a network (e.g., using Internet Protocol), and may be used to communicate with other systems (such as those shown in Figure 1, network 104) connected to the network.

[0075] Secondary memory 830 may contain hard drive 835, flash memory 836, and removable storage drive 837. Secondary memory 830 may store the data software instructions (e.g., for performing the actions noted above with respect to the Figures), which enable digital processing system 800 to provide several features in accordance with the present disclosure.

[0076] Some or all of the data and instructions may be provided on the removable storage unit 840, and the data and instructions may be read and provided by removable storage drive 837 to CPU 810. Floppy drive, magnetic tape drive, CD-ROM drive, DVD Drive, Flash memory, a removable memory chip (PCMCIA Card, EEPROM) are examples of such removable storage drive 837.

[0077] The removable storage unit 840 may be implemented using medium and storage format compatible with removable storage drive 837 such that removable storage drive 837 can read the data and instructions. Thus, removable storage unit 840 includes a computer readable (storage) medium having stored therein computer software and / or data. However, the computer (or machine, in general) readable medium can be in other forms (e.g., non-removable, random access, etc.).

[0078] In this document, the term "computer program product" is used to generally refer to the removable storage unit 840 or hard disk installed in hard drive 835. These computer program products are means for providing software to digital processing system 800. CPU 810 may retrieve the software instructions, and execute the instructions to provide various features of the present disclosure described above.

[0079] The term “storage media / medium” as used herein refers to any non-transitory media that store data and / or instructions that cause a machine to operate in a specific fashion. Such storage media may comprise non-volatile media and / or volatile media. Non-volatile media includes, for example, optical disks, magnetic disks, or solid-state drives, such as storage memory 830. Volatile media includes dynamic memory, such as RAM 820. Common forms of storage media include, for example, a floppy disk, a flexible disk, hard disk, solid-state drive, magnetic tape, or any other magnetic data storage medium, a CD-ROM, any other optical data storage medium, any physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, NVRAM, any other memory chip or cartridge.

[0080] Storage media is distinct from but may be used in conjunction with transmission media. Transmission media participates in transferring information between storage media. For example, transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 850. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.

[0081] In accordance with one or more exemplary embodimentsof the present disclosure, the processing device is configured to use map-based SLAM (Simultaneous Localization and Mapping) technology for indoor navigation, with odometry computed by fusing data from multiple IMU sensors and wheel odometry data using an extended Kalman filter.

[0082] In accordance with one or more exemplary embodimentsof the present disclosure, the IMU sensors are placed at different locations on the autonomous mobile robot to provide comprehensive motion data for accurate odometry estimation.

[0083] In accordance with one or more exemplary embodimentsof the present disclosure, theprocessing device is configured to fuse data from the IMU sensors and the GPS unit using an extended Kalman filter for state estimation during outdoor navigation.

[0084] In accordance with one or more exemplary embodimentsof the present disclosure, the extra clearance base is configured to be attached to the autonomous mobile robot using a gear chain when the outdoor mode is selected.

[0085] In accordance with one or more exemplary embodimentsof the present disclosure, the gear chain connecting the wheels of the autonomous mobile robot to the wheels of the extra clearance base.

[0086] In accordance with one or more exemplary embodimentsof the present disclosure, the processing device is configured to control the speed limits of the extra clearance base through a velocity converter and the one or more motors.

[0087] In accordance with one or more exemplary embodimentsof the present disclosure, the processing device is configured to send velocity commands to the motors through motor drivers, calibrated for the extra clearance base using a pre-fixed multiplier based on the gear teeth ratio.

[0088] In accordance with one or more exemplary embodimentsof the present disclosure, the processing device uses an automatic position calibration algorithm to classify which camera is positioned towards the front, towards the back, towards the left, and towards the right on the extra clearance base.

[0089] In accordance with one or more exemplary embodimentsof the present disclosure. a method for indoor and outdoor navigation of autonomous mobile robots, comprising: communicating a mobile robot with a computing device over a network, wherein the computing device comprises an automatic mobile robot navigation monitoring and controlling module.

[0090] In accordance with one or more exemplary embodimentsof the present disclosure, allowing a user to select at least one of: an indoor mode and an outdoor on the automatic mobile robot navigation monitoring and controlling module.

[0091] In accordance with one or more exemplary embodimentsof the present disclosure,capturing motion data with one or more IMU sensors, measuring wheel movements with encoders, measuring the location of the mobile robot with a GPS unit, and capturing 3D point cloud data with a 3D camera.

[0092] In accordance with one or more exemplary embodiments of the present disclosure, fusing data from one or more IMU sensors and encoders with a processing using an extended Kalman filter for accurate odometry estimation for indoor navigation when the indoor mode is selected.

[0093] In accordance with one or more exemplary embodiments of the present disclosure, attaching an extra clearance base to the autonomous mobile robot when the outdoor mode is selected.

[0094] In accordance with one or more exemplary embodiments of the present disclosure, receiving user-specified waypoints for the autonomous mobile robot and utilizing a lane generation algorithm to compute lanes for the autonomous mobile robot to navigate and create safety lanes that prevent off-roading in a mapless mode.

[0095] In accordance with one or more exemplary embodiments of the present disclosure, finding one or more ArUco markers or QR codes with the one or more cameras to perform odometry correction.

[0096] In accordance with one or more exemplary embodiments of the present disclosure, mapping the environment when the map-based navigation mode is selected, enabling the user to teleoperate the autonomous mobile robot for mapping the outdoor environment.

[0097] In accordance with one or more exemplary embodiments of the present disclosure, generating a 2D map using one or more 2D LIDAR sensors and superimposing the generated 2D map on a plain white map.

[0098] In accordance with one or more exemplary embodiments of the present disclosure, generating safety lanes based on waypoints and user-defined safety width.

[0099] In accordance with one or more exemplary embodiments of the present disclosure, detecting one or more obstacles using the cameras of the extra clearance base.

[0100] In accordance with one or more exemplary embodiments of the present disclosure, removing the ground point cloud from the 3D point cloud using a ground removal algorithm.

[0101] In accordance with one or more exemplary embodiments of the present disclosure, sending alerts to the computing device via loT protocols when the robot detects obstacles outside the designated safety lanes.

[0102] Reference throughout this specification to “one embodiment”, “an embodiment”, or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, appearances of the phrases “in one embodiment”, “in an embodiment” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.

[0103] Although the present disclosure has been described in terms of certain preferred embodiments and illustrations thereof, other embodiments and modifications to preferred embodiments may be possible that are within the principles of the invention. The above descriptions and figures are therefore to be regarded as illustrative and not restrictive.

[0104] Thus the scope of the present disclosure is defined by the appended claims and includes both combinations and sub-combinations of the various features described hereinabove as well as variations and modifications thereof, which would occur to persons skilled in the art upon reading the foregoing description.

Claims

CLAIMSWe Claim:

1. A system for indoor and outdoor navigation of autonomous mobile robots, comprising: a mobile robot communicatively connected with a computing device over a network, wherein the computing device comprises an automatic mobile robot navigation monitoring and controlling module configured to enable the user to select at least one of: an indoor mode and an outdoor mode; the mobile robot comprising: one or more IMU sensors configured to capture motion data, encoders for measuring wheel movements; a GPS unit configured to measure the location of the mobile robot; a 3D camera configured to capture 3D point cloud data; a processing device electrically coupled to the IMU sensors, encoders, GPS unit, and 3D camera, wherein the processing device is configured to fuse data from one or more IMU sensors and encoders using an extended Kalman filter for accurate odometry estimation for indoor navigation when the user selects the indoor mode on the automatic mobile robot navigation monitoring and controlling module; the automatic mobile robot navigation monitoring and controlling module configured to enable the user to select the outdoor mode; and attach an extra clearance base to the autonomous mobile robot when the outdoor mode is selected; the processing device configured to receive user-specified waypoints for the autonomous mobile robot and utilize a lane generation algorithm to compute lanes for the autonomous mobile robot to navigate and create safety lanes that prevent off- roading in a mapless mode; the processing device use the one or more cameras to find the one or more ArUco markers or QR codes to perform odometry correction;the processing device configured to map the environment when the map-based navigation mode is selected, enabling the user to teleoperate the autonomous mobile robot for mapping the outdoor environment and generate a 2D map using one or more 2D LIDAR sensors and superimpose the generated 2D map on a plain white map; the processing device configured to generate safety lanes based on waypoints and user- defined safety width, detect one or more obstacles using the cameras of the extra clearance base; the processing device configured to remove the ground point cloud from the 3D point cloud using a ground removal algorithm; and the processing device configured to send alerts to the computing device via loT protocols when the robot detects obstacles outside the designated safety lanes.

2. The system as claimed in claim 1, wherein the processing device is configured to use mapbased SLAM (Simultaneous Localization and Mapping) technology for indoor navigation, with odometry computed by fusing data from multiple IMU sensors and wheel odometry data using an extended Kalman filter.

3. The system as claimed in claim 1 , wherein the IMU sensors are placed at different locations on the autonomous mobile robot to provide comprehensive motion data for accurate odometry estimation.

4. The system as claimed in claim 1, wherein the processing device is configured to fuse data from the IMU sensors and the GPS unit using an extended Kalman filter for state estimation during outdoor navigation.

5. The system as claimed in claim 1, wherein the extra clearance base is configured to be attached to the autonomous mobile robot using a gear chain when the outdoor mode is selected.

6. The system as claimed in claim 5, wherein the gear chain connecting the wheels of the autonomous mobile robot to the wheels of the extra clearance base.

7. The system as claimed in claim 1, wherein the processing device is configured to control the speed limits of the extra clearance base through a velocity converter and the one or more motors.

8. The system as claimed in claim 1, wherein the processing device is configured to send velocity commands to the motors through motor drivers, calibrated for the extra clearance base using a pre-fixed multiplier based on the gear teeth ratio.

9. The system as claimed in claim 1, wherein the processing device uses an automatic position calibration algorithm to classify which camera is positioned towards the front, towards the back, towards the left, and towards the right on the extra clearance base.

10. The system as claimed in claim 9, wherein the automatic position calibration algorithm is configured to autonomously determine the position of each camera on the extra clearance base based on feature matching techniques and velocity data, enabling the autonomous calibration of the cameras.

11. The system as claimed in claim 1, wherein the processing device is configured to use an adaptive ground removal algorithm to remove the ground surface or ground point cloud from the 3D point cloud generated by the 3D cameras, based on roll, pitch, and yaw data from the IMU sensors, thereby improving navigation in outdoor environments in the mapbased mode.

12. The system as claimed in claim 1, wherein the processing device is configured to use a ground removal algorithm that dynamically adapts to changes in the environment to remove ground point cloud data and enhance obstacle detection accuracy.

13. The system as claimed in claim 1, wherein the processing device is configured to enable the user to attach an extra clearance base to the autonomous mobile robot when the outdoor mode is selected.

14. The system as claimed in claim 1, wherein the extra clearance base integrated with autonomous mobile robot.

5. A method for indoor and outdoor navigation of autonomous mobile robots, comprising: communicating a mobile robot with a computing device over a network, wherein the computing device comprises an automatic mobile robot navigation monitoring and controlling module; allowing a user to select at least one of: an indoor mode and an outdoor on the automatic mobile robot navigation monitoring and controlling module; capturing motion data with one or more IMU sensors, measuring wheel movements with encoders, measuring the location of the mobile robot with a GPS unit, and capturing 3D point cloud data with a 3D camera; fusing data from one or more IMU sensors and encoders with a processing using an extended Kalman fdter for accurate odometry estimation for indoor navigation when the indoor mode is selected; attaching an extra clearance base to the autonomous mobile robot when the outdoor mode is selected; receiving user-specified waypoints for the autonomous mobile robot and utilizing a lane generation algorithm to compute lanes for the autonomous mobile robot to navigate and create safety lanes that prevent off-roading in a mapless mode; finding one or more ArUco markers or QR codes with the one or more cameras to perform odometry correction; mapping the environment when the map-based navigation mode is selected, enabling the user to teleoperate the autonomous mobile robot for mapping the outdoor environment; generating a 2D map using one or more 2D LIDAR sensors and superimposing the generated 2D map on a plain white map;generating safety lanes based on waypoints and user-defined safety width; detecting one or more obstacles using the cameras of the extra clearance base; removing the ground point cloud from the 3D point cloud using a ground removal algorithm; and sending alerts to the computing device via loT protocols when the robot detects obstacles outside the designated safety lanes.

Citation Information

Patent Citations

  • Indoor and outdoor autonomous navigation system for inspection robot

    CN103064416A

  • Robot localization and navigation method based on vision and lidar information fusion

    CN112650255B

  • Outdoor high-precision autonomous navigation system of mobile robot

    CN113733091A

  • Multi-sensor fusion robot positioning method

    CN114413894A

Cited By

  • Robot manual guiding device fusing multiple IMU and ArUco mark codes

    CN120170715A

  • Transformer oil extraction robot positioning method and system based on multi-source data fusion

    CN121089715A

  • Mobile robot positioning system

    US20250251729A1