Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR NAVIGATING AN AUTONOMOUS ENTITY THROUGH A NAVIGATION SPACE IN REAL TIME
Document Type and Number:
WIPO Patent Application WO/2022/097169
Kind Code:
A1
Abstract:
A method and system are provided for navigating an autonomous entity by using positioning sensors. Using the location information provided by positing sensing unit, the absolute position unit and absolute orientation unit provide an instantaneous absolute position and an absolute orientation. The navigation unit navigates between two points using a combination of line segments, each line segment using a multi-stage navigation processes that include ramping-up a speed of the entity, performing a course correction on the entity to orient the entity along a predetermined path, performing a stabilization of navigation of the entity for aligning entity within a deviation limit from the predetermined path and ramping-down the speed of the entity and stopping navigation upon entity reaching a predetermined limit from a target location. Drive wheel control unit translates the correction control signal from the navigation units to differential speeds applied on the drive wheels.

Inventors:
VENKATARAMAN RAMANATHAN (IN)
ANNAM JANAKIRAM (IN)
Application Number:
PCT/IN2021/051041
Publication Date:
May 12, 2022
Filing Date:
October 30, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HACHIDORI ROBOTICS PRIVATE LTD (IN)
International Classes:
G05D1/02; B25J9/16; G01C21/20
Foreign References:
CN109186597B2020-09-22
CN110216678A2019-09-10
Attorney, Agent or Firm:
URS, Anuvind Nagaraje (IN)
Download PDF:
Claims:
CLAIMS

I/We Claim:

1. A system (100) for navigating an entity (200) through a time varying indoor navigation space, comprising: a position sensing unit (102), having a plurality of positioning sensors placed in a preset manner; an absolute position unit (104) to provide an instantaneous absolute position of the entity (200) based on an output from the position sensing unit (102); an absolute orientation unit (106) to provide an absolute orientation of the entity (200) based on an output from the position sensing unit (102); a navigation guidance unit (108) to provide unique attributes based on a desired navigable layout identified in a navigation area for navigating the entity (200) towards a desired target position; a navigation control unit (110) to control/regulate navigation of the entity (200) between any two points in a time varying indoor navigation space autonomously based on the instantaneous absolute position of the entity (200) provided by the absolute position unit (104), the absolute orientation of the entity (200) provided by the absolute orientation unit (106) and a plurality of navigation attributes provided by the navigation guidance unit (108); a drive wheel control unit (112) communicatively coupled to the navigation control unit (110) and configured to control a plurality of drive wheels of the entity (200) by applying an instantaneous angular correction to the entity, and wherein the instantaneous angular correction to be applied to the entity (200) is obtained from the navigation control unit (110) and translated into instantaneous differential speeds to the drive the plurality of wheels based on drive wheel parameters and wherein the drive wheel control unit (112) is con-

32 figured for controlling the speed of the drive wheels during complete navigation including ramp-up and ramp-down. The system as claimed in 1, wherein the position sensing unit (102) comprises a plurality of positioning sensors installed on a plurality of pre-defined points in a multi-dimensional space on the entity (200) in preset manner thereby enabling a geometrical inference of the entity (200) based on a location information provided by each sensor in the position sensing unit (102). The system as claimed in 1, wherein the absolute position unit (104) is configured to provide a refined instantaneous absolute position of the entity (200) based on the inputs received from the position sensing unit (102) and a predefined geometrical relationship between the plurality of sensors in the position sensing unit (102), and wherein the location information of a plurality of pre-defined points in the entity (200) is obtained/determined from the position sensing unit (102) and wherein the obtained/determined each such location is transformed into a known point representing an ideal absolute point of the entity (200) using a translation vector representing the pre-defined position of each such sensor and an ideal absolute point of the entity (200), and wherein the absolute position representing the ideal absolute point of the entity is then obtained by averaging the translated positions after applying a statistical correction. The system as claimed in 1, wherein the absolute orientation unit (106) is configured to provide a refined representation of the absolute orientation of the entity (200), and wherein refined representation of the absolute orientation of the entity (200) is derived using the individual location of the pre-defined points provided by the position sensing unit (102), based on the absolute orientation of a set of unique vectors constructed using a combination of the predefined points and their know relationship with the absolute orientation of the entity (200), and wherein the unique set of vectors with known angular rela-

33 tionship with a given axis of the entity (200)are constructed using a time- averaged location information of the said pre-defined points in the entity (200), and wherein the time-averaged location information of the said predefined points in the entity (200) is obtained using the position sensing unit (102), and wherein the unique set of vectors with the known angular relationship with a given axis of the entity (200) represent a direction or the absolute orientation of the entity with a known angular offset, and wherein each such vector is constructed by connecting any two said pre-defined points or any two points representing a combination of such pre-defined points, and wherein each such vector’s absolute orientation along with a direction provides a measure of a desired absolute orientation of the entity (200) with a known angular offset, and wherein the respective known offset is applied to each such vector’s orientation to provide a unique representation of the absolute orientation of the entity (200), and wherein a weighted averaging of all such angles provides a refined representation of the absolute orientation of the entity (200). The system as claimed in 1, wherein the navigation guidance unit (108) is configured to provide unique attributes, and wherein the plurality of unique attributes is extracted from the desired navigable layout identified in the indoor navigation space to enable the navigation control unit (110) to relate with the context of the navigation layout, and wherein one or more of the attributes are updated dynamically as a learning/feedback obtained from the navigation history of the entity (200), and wherein an entire navigation layout is split/divided into a plurality of navigable line segments that are connected by nodes whose absolute coordinates are recorded in a map, and wherein the plurality of navigable line segments form part of a set of valid paths leading to a network of valid paths, and wherein the attributes of a network of valid paths are recorded in the map, and wherein the attributes are selected from the group consisting of cost, path width, speed limit, intermediate node transition angles, node angular offset, and node flags for special purposes, and wherein an optimal path for a given navigation between any two points, is arrived at in real-time based on a minimum total cost which includes a cost to traverse through a combination of nodes to reach the desired target, distance between the entity (200) and one such nearest node, and a penal cost for every intermediate node visited, and wherein any measurement error in the said absolute orientation of the entity (200) at a particular node is estimated by the navigation control unit (110) during the course of the navigation starting from the said node, and wherein the estimated error is recorded in the map as a known angle offset at each such node while orienting towards the respective target node, and wherein the recorded known angle offset is applied to the absolute orientation of the entity (200) during subsequent navigations from the same starting node to the same target node, and wherein this process is repeated during a navigation process of each line segment and the angle offset for a given pair of start and end nodes is continuously refined and dynamically updated in the map, and wherein the navigation guidance unit (108) is configured to record any other key parameter of interest related to the layout, and help in enhancing a navigation experience. The system as claimed in 1, wherein the navigation control unit (HO)is configured to perform a navigation of the entity (200) between any two points in the navigation space based on a strategy guided by the navigation guidance unit (108) so as to reach the desired target, and wherein the navigation process is split/divided in to a plurality of steps based on a number of line segments involved in reaching the desired target optimally, and wherein each such line segment is navigated using a multi-stage navigation mechanism in order to maintain the navigation of the entity (200) along the path defined by the line segment, and wherein the multi-stage navigation mechanism comprises ori- enting the entity initially towards the destination point in the line segment within an acceptable limit, based on the absolute orientation provided by the absolute orientation unit (106), followed by navigation of the entity through a plurality of stages/sub-processes, and wherein the plurality of stages/sub- processes comprises ramping- up a speed of the entity (200), performing a course correction on the entity (200) to orient the entity (200) along a predetermined path and compensating for a residual angle, upon reaching said maximum speed; performing stabilization of navigation of the entity (200) for aligning the entity (200) within a deviation limit form the predetermined path; and ramping-down said speed of the entity (200) and stopping navigation upon a distance of the entity (200)from a destination point in the line segment reaching a predetermined limit from said target location. The system as claimed in 1 , wherein the step of Ramp-up stage/process comprises estimating a better representation of the orientation of the entity (200) in addition to ramping-up the speed of the entity by averaging the slopes of the lines connecting the bot positions with the starting point iteratively at a predetermined periodic intervals to determine a residual angle introduced in the absolute orientation of the entity, due to multi-path reflections, and wherein the residual angle is determined by subtracting the averaged slope value from the absolute orientation of the entity (200) obtained from the absolute orientation unit (106) during initiation of navigation, and wherein the said residual angle is attributed to a given start node when oriented towards a specific target node, and wherein the residual angle is dynamically updated in the navigation guidance unit (108) as node angular offset to be accounted for sub- sequent/new navigation processes before ramp-up and wherein the estimated residual angle is used in angular correction of the said entity (200) in subsequent stages, and wherein the Ramping-up of speed of the entity is continued in a straight-line until the desired maximum speed is reached or when a devia-

36 tion from the ideal path exceeds an acceptable limit, whichever is earlier, and wherein the remaining ramp-up processes along with required angular corrections is continued to minimize deviation, when the desired maximum speed is not reached.

8. The system as claimed in 1, wherein the step of Course-correction stage/ process comprises applying an angular correction to change a course of the entity so as to bring the entity towards the pre-defined path representing the said line-segment, and wherein the angular correction is acted up on or implemented by the drive wheel control unit (112) which in turn translates the angular correction to differential drive wheels speeds.

9. The system as claimed in 1, wherein the step of Stabilization stage/process comprises applying reverse correction to force/move the entity to align with a trajectory of the pre-defined path and to avoid crossover of the entity (200) to other side of the pre-defined path with continuation of the course-correction process, thereby stabilizing the entity gradually to arrive at the destination point in the line segment, and wherein the trajectory trend of the entity (200) is tracked/monitored during the stabilization processes, and change the sign of the angle correction factor so as to maintain the entity within a deviation limit on either side of the predetermined path, and wherein the course-correction process is repeated to rectify a deviation and the stabilization process is continued, when a position of the entity is deviated from the predetermined path (311) beyond an acceptable threshold level during the stabilization processes due to any uncontrollable non-linear factors comprising floor imperfections, mechanical imperfections, measurement inaccuracies.

10. The system as claimed in 1, wherein the step of Ramping -down stage/process comprises ramping down the speed and maintaining the orientation of the entity until the entity reaches a point which is within a pre-determined limit from the destination point in the line segment, wherein the drive wheel speeds

37 are gradually ramped-down along with required corrections during the ramping down process until the entity arrives near the target within an acceptable error limit. The system as claimed in 1, wherein the navigation control unit (110) is configured to derive the instantaneous orientation of the entity (200) by tracking or monitoring the angle of a line segment connecting the drive wheels of the entity (200) that has a fixed angular offset with the orientation of the entity (200), and wherein the starting angle of the said line segment is derived from the absolute orientation of the entity at the start of the navigation provided by the absolute orientation unit (106), and wherein the instantaneous orientation of the line segment is derived/estimated during the course of the navigation using the absolute position of the drive wheels provided by the drive wheel control unit (112), and wherein the instantaneous orientation of the entity is obtained/estimated by applying the fixed angular offset to the instantaneous orientation of the said line segment. The system as claimed in 1, wherein the navigation control unit (110)computes and applies angular correction to the entity (200) iteratively at a predetermined periodic intervals during every stage of a multi-stage navigation to achieve a smooth and perfect alignment of the entity (200) along the pre-determined path, and wherein the angular correction is computed based on weighted combination of various parameters including (1) the angular position of the entity from the start point with respect to the pre-defined navigation path (2) the angular position of the entity from the end point with respect to the pre-defined navigation path (3) the instantaneous orientation of the entity (4) the instantaneous absolute position of the entity (5) the deviation of the entity represented by the perpendicular distance of the entity (200) from the pre-defined navigation path, and wherein the angular correction factor applied

38 at each stage of the multi-stage navigation limit is derived or estimated based on the weighted combination of the parameters. The system (100) as claimed in claim 1, wherein the navigation control unit (110) is configured to continuously monitor the instantaneous absolute position and trajectory of the said entity iteratively at a predetermined periodic intervals and dynamically decide the navigation strategy by either continuing with the ongoing course of navigation or performing an orientation correction followed by a new cycle of multi-stage navigation for the given line segment, and wherein any deviation of the entity (200) beyond acceptable limits, due to uneven floor surfaces leading to wheel slippages, multi-path reflections leading to signal degradation, triggers an orientation correction and initiation of new cycle of multi-stage navigation, and wherein the said orientation correction and initiation of new cycle of multi-stage navigation is triggered as a precautionary measure, by considering the future trajectory even when the actual deviation is within acceptable limits, while the entity (200) starts a navigation cycle with an orientation with large residual angle which is not reported appropriately by the absolute orientation unit (104) due to multipath reflections, thereby leading to stray away from the desired path and move towards obstacles including walls adjacent to the navigation path, and wherein the navigation control unit (110) judges that the given path is invalid and initiates navigation through the next best optimal path, when the entity (200) is obstruct- ed/stopped in the given path beyond a reasonable time and course correction does not provide/yield sufficient clearance to initiate a new navigation cycle. The system as claimed in 1, wherein the drive wheel control unit (112) is configured to translate or convert the instantaneous angular correction provided by the navigation control unit (110) to instantaneous differential drive wheel speeds using a plurality of parameters based on the physical properties of the entity (200) to achieve the angular correction of the entity (200) physically,

39 and wherein the drive wheel control unit (112) monitors the absolute positions of the drive wheels throughout the navigation process and feeds the monitored absolute positions of the drive wheels to the navigation control unit (110) which in turn provides the instantaneous angular correction for the drive wheel control unit (112) to derive the differential drive wheel speeds for the next iteration, and wherein the absolute positions of the drive wheels are derived at the start of the navigation from the instantaneous absolute position of the entity provided by the absolute position unit (104) and the absolute orientation of the entity provided by the absolute orientation unit (106), and wherein the absolute positions of the drive wheels during the course of navigation are estimated or determined based on current absolute drive wheel positions, current maximum speed of the entity, duration of an iteration, width of the entity (200) and the angular correction to achieve during the iteration, and wherein the differential wheel speeds are derived or estimated from the difference in estimated angular displacement between the two drive wheels when the entity moves from the current position to an estimated position, and wherein the outer wheel is applied with the current maximum speed while the inner wheel is applied a speed which is lesser than the current maximum speed by a factor of the difference in predicted angular displacement between the two drive wheels, depending up on the direction of rotation of the entity, and wherein the drive wheel control unit (112) controls the wheels by time slicing the differential speed to be applied and applying the difference in steps across the wheels to avoid any undesired shaky movement of the vehicle due to a sudden jump in speed difference between the two wheels, so as to achieve smooth transition and effectively apply the desired angular correction to the entity (200) before the arrival of the next iteration signal from the navigation control unit (110).

40 A method of navigating an entity (200) through a navigation space, said method comprises steps of: determining(402) at least one of an instantaneous absolute position and an absolute orientation of said entity (200); identifying (403) the line segments to navigate from start to end based on the strategy provided by the navigation guidance unit (108); performing (404) a multi-stage navigation of said entity for each such line segment based on said instantaneous absolute position and said absolute orientation of said entity (200), wherein said multi-stage navigation comprises: a) initiating (404a) a navigation of the entity and ramping up a speed of the entity; b) performing (404b) a course correction on the entity to orient the entity along a predetermined path and compensating for said residual angle, upon reaching said maximum speed; c) performing (404c) stabilization of navigation of the entity for aligning the entity within a deviation limit from the predetermined path; and d) ramping-down (404d) said speed of the entity and stopping navigation upon a distance of the entity reaching within a predetermined limit from a destination point in the line segment; e) repeating steps 404a to 404dfor each line segment identified in 403 until all line segments are navigated and the target is reached. The method as claimed in claim 15, wherein said step of initiating said navigation comprises: determining and fine-tuning to ensure that an orientation of the entity (200) is aligned to a target in a line segment within a predetermined error

41 margin based on said absolute orientation of the entity (200), upon initiating of navigation of the entity (200); and performing ramping up said speed of the entity (200) and applying a deviation correction to the entity (200) by a residual angle upon a deviation of the entity (200) from a predetermined path(311) not being within a predetermined deviation limit, or ramping up said speed of the entity (200) without applying said deviation correction upon a deviation of the entity (200) from a predetermined path (311) being within a predetermined deviation limit. The method as claimed in claim 15, wherein performing said coursecorrection comprises: determining if maximum ramp-up speed is reached; applying angular correction to change a course of the entity so as to bring the entity towards the pre-defined path representing the said linesegment; continuing to apply angular correction in the same direction as long as the first exit condition is not met; The method as claimed in claim 15, wherein performing said stabilization comprises: determining if a first exit condition is met, and wherein the first exit condition is defined as a specific point at which 02 <£ 01, where k is the predetermined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment. 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the pre-defined path representing the line segment;

42 performing a stabilization process upon said first exit condition being met, and wherein said stabilization comprises: reversing said course correction while aligning the entity(200) parallel to said predetermined path (311) and within a deviation limit; and determining if a deviation of the entity (200) from said predetermined path (311) is within a deviation limit; and aligning the entity (200) along said predetermined path (311) and within said deviation limit from said predetermined path (311); and repeating the course correction upon the first exit condition not being met. The method as claimed in claim 15, wherein ramping-down comprises: determining if a deviation of the entity (200) from the predetermined path is within a deviation limit; determining if a second exit condition is met, upon said deviation being within said deviation limit, or repeating the course correction upon said deviation exceeding said deviation limit, and wherein the second exit condition is defined as a point in which the remaining distance to the destination point in the line segment is within a predetermined limit; performing ramping down process of the speed of the entity (200) along with deviation correction to keep said entity (200) along said predetermined path (311) upon said second exit condition being met; or repeating said stabilization upon said second exit condition not being met;

43 determining if a distance of said entity (200) to said destination point in the line segment is within a predetermined limit based on said instantaneous absolute position of the entity (200); repeating ramping-down upon said distance of said entity (200) from said target location not being within a predetermined limit; and stopping navigation of said entity (200) upon said distance of said entity (200) from said destination point in the line segment reaching said predetermined limit.

44

Description:
SYSTEM AND METHOD FOR NAVIGATING AN AUTONOMOUS ENTITY THROUGH A NAVIGATION SPACE IN REAL TIME

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] The present application claims the priority of the Indian Provisional Patent Application (PPA) with serial number 202041048029 filed on 3 rd November 2020 with the title SYSTEM AND METHOD FOR NAVIGATING AN AUTONOMOUS ENTITY THROUGH A NAVIGATION SPACE IN REAL TIME". The contents of abovementioned PPA are included in entirety as reference herein.

BACKGROUND

Technical field

[0002] The embodiments of the present invention are generally related to autonomous navigation of an entity. The embodiments of the present invention are particularly related to a system and a method for navigating an autonomous entity such as robot (BOT) in a time varying indoor navigation space. The embodiments of the present invention are more particularly related to a system and a method for successfully navigating the autonomous entity such as robot (BOT) autonomously between any two points in a navigation space by providing stabilized control along a desired path of navigation in a cost-effective manner.

Description of the Related Art

[0003] Pursuant to an exemplary scenario, navigating an autonomous entity (a mobile object) in a time varying navigating space requires maintaining the entity as close to a pre-defined path (an ideal path) so as to avoid steering away from the navigation path and colliding with objects adjacent to the desired path. To maintain the entity along the pre-defined path, an accurate knowledge of the position of the entity with an error of a few centimeters and orientation of the entity, with an error of a few degrees are an absolute necessity. In order to keep the entity in the ideal path and direction, a current position and orientation of the entity needs to be accurately known within a desirable error limit.

[0004] Several factors play a critical role when the entity navigates through a narrow passage. For instance, a starting angle (angle or orientation with respect to a predetermined path) of the entity plays a major role in deciding an initial deviation of the entity from the predetermined (ideal) path. Larger the starting angle, faster the deviation. Hence it is critical to minimize the starting angle at the start of the navigation. A larger initial angle from a desired trajectory leads to a huge deviation. As the navigation is initiated, in spite of a starting angle correction, there might still be a residual angle that leads to a wild swing when we try to correct it with basic methods. Typically, navigation with the residual angle leads to a zig-zag movement.

[0005] An autonomous entity navigating through a narrow space with an initial angular deviation from the desired path might face static obstacles, like walls adjacent to the desired path, present on the way of navigation of the entity. This would require real-time decision making and dynamic change in navigation strategy so as to correct a course of the autonomous entity to get back on a track.

[0006] Operating in a constrained time varying navigation space with dynamically experienced impediments, like uneven surfaces, friction of floor surfaces, dynamic measurement errors etc., influence the navigation path and requires an understanding of the changes and thereby taking corrective measures.

[0007] Typically, variety of sensors with specific functions play an important role in providing a required intelligence to the autonomous entity to assess a situation and to make a decision. Usage of dedicated sensors for measuring position, orientation, speed, travelled distance, vision and mapping etc., add to a cost thereby making the autonomous entity a highly expensive one.

[0008] In case of a navigation to a specific target through multiple sections of the navigation space to reach a desired target, an identification of an optimal path for a given navigation layout is required.

[0009] Hence there is a need for a cost-effective system and method to reliably navigate an autonomous entity (hereafter called the BOT) in a time varying indoor navigation space so as to successfully reach a target accurately with an acceptable level of error (limited only by an accuracy of the mechanism). Further there is a need for an efficient method and system to dynamically change an avigation strategy of an entity (mobile object or robot or BOT) based on time varying impediments so as to reach a target successfully.

[0010] The abovementioned shortcomings, disadvantages and problems are addressed herein, which will be understood by reading and studying the following specification.

OBJECTIVES OF THE EMBODIMENTS

[0011] A prime object of the embodiment herein is to provide a system and a method to navigate autonomous mobile entity reliably between any two points in a time varying indoor navigation space in a cost-effective manner using a plurality of absolute position sensors, such as UWB (Ultra-Wideband), Bluetooth, Zigbee, Ultrasound etc., thereby eliminating a need for expensive dedicated sensors for identifying and measuring orientation, speed, travelled distance, vision and mapping etc.

[0012] Another object of the embodiment herein is to provide a system and a method to find an enhanced instantaneous absolute position and absolute orientation of astatic or mobile entity, using a set of absolute position sensors placed in multidimensional space on a course of the entity.

[0013] Yet another objective of the embodiment herein is to provide a system and a method to identify an optimal path to reach a target with a complete understanding of all the sections to navigate through and the associated ideal paths based on a pre-recorded guidance of a static characteristics of the navigation space. [0014] Yet another objective of the embodiment herein is to provide a system and a method to achieve a smooth and graceful alignment with a predetermined pathbased on the absolute orientation of the entity, that is derived using a set of absolute position sensors placed in multi-dimensional space on the said entity, thereby eliminating any uncontrollable wild swing that keeps the entity away from the predetermined path, to reduce a vulnerability of collision with objects adjacent to the navigation path.

[0015] Yet another object of the embodiment herein is to provide a system and a method to navigate an entity in a navigation space through a multi-stage navigation process to achieve at least one of reducing a deviation from ideal path, providing an earliest course correction and following through navigation along the predetermined path and reaching at the target within an acceptable error limit.

[0016] Yet another objective of the embodiment herein is to provide a system and a method to perform a self-correction of a navigation trajectory by identifying a correction angle and applying corresponding differential speed signal to the drive wheels throughout a multi-stage navigation process, by determining a course correction and initiation of new cycle of multi-stage navigation, based on an assessment of dynamically experienced conditions like uneven floor surfaces, floor friction condi- tions/levels, multi-path wireless signal degradation etc., that in turn influence in a measurement/estimation of an instantaneous absolute position and orientation condition.

[0017] Yet another objective of the embodiment herein is to provide a system and a method to dynamically change a navigation strategy, when the BOT has deviated from the desired path with an angle and interact with obstacles, like walls present adjacent to the desired path during a navigation of the entity, and a course correction or even initiation of new cycle of multi-stage navigation is required.

[0018] Yet another objective of the embodiment herein is to provide a system and a method to repeatedly perform a multi-stage navigation process for each section of a multi section navigation based on the pre-recorded guidance of the static characteristics of the navigation space

[0019] These and other objects and advantages of the embodiments herein will become readily apparent from the following detailed description taken in conjunction with the accompanying drawings.

SUMMARY

[0020] The following details present a simplified summary of the embodiments herein to provide a basic understanding of the several aspects of the embodiments herein. This summary is not an extensive overview of the embodiments herein. It is not intended to identify key/critical elements of the embodiments herein or to delineate the scope of the embodiments herein. Its sole purpose is to present the concepts of the embodiments herein in a simplified form as a prelude to the more detailed description that is presented later.

[0021] The other objects and advantages of the embodiments herein will become readily apparent from the following description taken in conjunction with the accompanying drawings. It should be understood, however, that the following descriptions, while indicating preferred embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.

[0022] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0023] According to one embodiment herein, a system for navigating an entity through a navigation space is disclosed. The system includes a position sensing unit comprising a plurality of positioning sensors provided at strategic or preset locations to enable a geometrical inference of the entity, an absolute position unit configured to determine a highly refined representation of an instantaneous absolute position of the entity, an absolute orientation unit configured to determine the absolute orientation of the entity, a navigation guidance unit configured to provide the unique attributes of the navigation layout, a navigation control unit to control navigation of the entity that guarantees stabilized control of the entity throughout the navigation, and a drive wheel control unit that translates the control signals provided by the navigation control unit to differential speeds applied on the drive wheels.

[0024] According to one embodiment herein, the position sensing unit comprises a plurality of positioning sensors disposed on a plurality of pre-defined points in a multi-dimensional space on the entity. These pre-defined points on the entity enables a geometrical inference of these positions on the said entity. Collection of these individual sensor locations along with their known geometric relationship enables to derive a highly refined representation of the absolute position and absolute orientation, which are the two critical parameters to achieve an autonomous navigation, of the entity

[0025] According to one embodiment herein, the absolute position unit uses the individual location information of the plurality of sensors provided by the position sensing unit to derive a refined representation of the instantaneous absolute position of the entity based on the known geometrical relationship of the individual locations and their multi-dimensional spatial diversity.

[0026] According to one embodiment herein, the absolute orientation unit uses the time-averaged individual location information of the plurality of sensors, provided by the position sensing unit and the specific pre-defined points in the entity, to construct a set of unique vectors and derives the orientation of the entity. The set of unique vectors are constructed using a combination of these pre-defined points, having a preset angular relationship with the absolute of the entity. [0027] According to one embodiment herein, the navigation guidance unit captures unique attributes extracted from the desired navigable layout identified in the indoor navigation space. In addition to guiding the navigation control unit to relate with the context of the navigation layout and strategize the navigation, the navigation guidance unit also updates the attributes dynamically as a learning based on the pastnavigation experience/history of the entity. The navigation guidance unit splits/divides a valid navigation path into multiple line segments and selects/decides an optimal combination of these line segments to navigate between any two points in the navigation space.

[0028] According to one embodiment herein, the navigation control unit performs navigation between any two points based on navigation path/strategy provided by the navigation guidance unit. When a specific navigation path between two points requires traversing through a multiple line segments, the navigation control unit splits navigation process in to multiple steps corresponding to the number of line segments. For each such line segment, the navigation control unit uses a multi-stage navigation mechanism to ensure stabilized control of the entity and maintain the trajectory of the entity along the ideal/predefined path defined the line segment.

[0029] According to one embodiment herein, the multi-stage navigation process in a line segment includes a) ramping-up stage for initiating a navigation of the entity, ramping- up a speed of the entity and deriving a residual angle, b) coursecorrection stage for performing a course correction on the entity to orient the entity along a predetermined path and compensating for a residual angle c) stabilization stage for performing stabilization of navigation of the entity for aligning the entity within a deviation limit from the predetermined path; and d) ramping-down stage for ramping-down the speed of the entity and stopping navigation upon reaching a distance of the entity from a destination point in the line segment within a predetermined limit. [0030] According to one embodiment herein, the system also includes a drive wheel control unit communicatively coupled to the navigation control unit and configured to control a drive wheel of the entity based on the multi-stage navigation. The drive wheel control unit is communicatively associated with at least one of a left motor and a right motor to control a speed of navigation of the entity.

[0031] According to one embodiment herein, the step of initiating the multistage navigation process in a line segment includes 1) determining whether an orientation of the entity is aligned within a predetermined target orientation range based on the absolute orientation of the entity 2) ramping-up the speed of the entity without applying any deviation correction as long as the deviation of the entity from the idealpath is within acceptable limits; 3) ramping up the speed of the entity along with applying a deviation correction by a residual angle if the deviation of the entity from the ideal-path is beyond the acceptable limits; 4) Performing either step 2 alone or a combination of step 2 and step 3 until the desired maximum speed is reached.

[0032] According to one embodiment herein, the step/process of performing the course-correction involves using the residual angle estimated during ramp-up stage and applying the required angular correction to change the course of the entity so as to bring it towards the pre-defined path representing the said line-segment.

[0033] According to one embodiment herein, the step/process of performing the stabilization includes 1 determining if a first exit condition is met and wherein the first exit condition is defined as a specific point at which 02 <k 01, where k is the pre-determined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment. 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the predefined path representing the line segment and performing a stabilization when the first exit condition is met, or repeating/continuing the course correction when the first exit condition is not met. The stabilization includes reversing the course correction while aligning the entity parallel to the predetermined path and within a deviation limit; and determining if a deviation of the entity from the predetermined path is within a deviation limit; and aligning the entity along the predetermined path when the entity is within the deviation limit from the predetermined path. During the course of stabilization process, the sign of the angle correction factor is determined so as to maintain the entity within a deviation limit on either side of the predetermined path. In case of the deviation of the entity exceeding beyond preset deviation limit, the course-correction process is repeated.

[0034] According to one embodiment herein, the step or the process of ramp- ing-down includes 1 determining if a deviation of the entity from the predetermined path is within a deviation limit, 2)determining if a second exit condition is met, when the deviation is within the preset deviation limit, and wherein the second exit condition is defined as a point in which the remaining distance to the destination point in the line segment is within a predetermined limit;3) performing the process of ramping down the speed of the entity along with deviation correction to keep the entity along the predetermined path when the second exit condition is met or repeating the stabilization process when the second exit condition is not met, 4)determining if a distance of the entity to the destination point in the line segment is within a predetermined limit/limit based on the instantaneous absolute position of the entity, 5)continuing or repeating the ramping-down process, when the distance of the entity from the target location is not within a predetermined limit, and stopping navigation of the entity when the distance of the entity from the destination point in the line segment is within the predetermined limit.

[0035] According to one embodiment herein, a method of navigating an entity through a navigation space is disclosed. The method includes initially determining at least one of an instantaneous absolute position and an absolute orientation of the entity, deciding navigation strategy provided by the navigation guidance unit, splitting the navigation in to multiple steps based on a combination of line segments identified as part of the navigation strategy and performing a multi-stage navigation of the entity for each of those line segments based on the instantaneous absolute position and the absolute orientation of the entity. The multistage navigation process for a line segment includes a) initiating a navigation of the entity and ramping up a speed of the entity, b)performing a course correction on the entity to orient the entity along a predetermined path and compensating for a residual angle, upon reaching a maximum speed, c)performing stabilization of navigation of the entity for aligning the entity within a deviation limit form the predetermined path, d)ramping-down the speed of the entity and stopping navigation upon a distance of the entity upon reaching a predetermined limit from a destination point in the line segment.

[0036] According to one embodiment herein, a step or process of initiating the multi-stage navigation in a line segment includes 1) determining if an orientation of the entity is aligned within a predetermined target orientation range based on the absolute orientation of the entity, upon initiating navigation of the entity and 2)performing ramp-up of speed of the entity without applying any deviation correction as long as the deviation of the entity from the ideal-path is within acceptable limits; 3) performing ramp up of speed of the entity along with applying a deviation correction by a residual angle if the deviation of the entity from the ideal-path exceeds acceptable limits; 4) Performing either step 2 alone or a combination of step 2 and step 3 until the desired maximum speed is reached; 5) Finding a better representation of the orientation of the entity by averaging the slopes of the lines connecting the bot positions with the starting point.

[0037] According to one embodiment herein, a step or process of coursecorrection includes changing the course of the entity so as to bring it towards the predefined path representing the said line-segment using the residual angle estimated during ramp-up stage and applying the required angular correction.

[0038] According to one embodiment herein, a step or process of stabilization includes determining if a first exit condition is met and performing a stabilization when the first exit condition is met, and wherein the first exit condition is defined as a specific point at which 02 <k 01, where k is the pre-determined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment. 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the pre-defined path representing the line segment, or repeating/continuing the course correction when the first exit condition is not met. The stabilization includes reversing the course-correction while aligning the entity parallel to the predetermined path and within a deviation limit; and determining if a deviation of the entity from the predetermined path is within a deviation limit; and aligning the entity along the predetermined path when the entity is within the deviation limit from the predetermined path. During the course of stabilization, the sign of the angle correction factor is determined so as to maintain the entity within a deviation limit on either side of the predetermined path. In case of the deviation of the entity exceeding beyond the preset deviation limit, course-correction stage/process is repeated.

[0039] According to one embodiment herein, the step of ramping-down includes 1 determining if a deviation of the entity from the predetermined path is within a deviation limit, 2) determining if a second exit condition is met, when the deviation is within the preset deviation limit, and wherein the second exit condition is defined as a point in which the remaining distance to the destination point in the line segment is within a predetermined limit;3) performing the process of ramping down the speed of the entity along with deviation correction to keep the entity along the predetermined path when the second exit condition is met or repeating the stabilization process, when the second exit condition is not met, 4) determining if a distance of the entity to the destination point in the line segment is within a predetermined limit based on the instantaneous absolute position of the entity, 5) continuing or repeating the ramping-down process, when the distance of the entity from the destination point in the line segment is not within a predetermined limit, and stopping navigation of the entity when the distance of the entity from the target location is within the predetermined limit.

[0040] According to one embodiment herein, a step or process of determining instantaneous position includes deriving a refined representation of the instantaneous absolute position of the entity using the individual location information of the plurality of sensors provided by the position sensing unit, based on the known geometrical relationship of the individual locations and exploiting their multi-dimensional spatial diversity.

[0041] According to one embodiment herein, a step or process of finding the absolute orientation involves, constructing a set of unique vectors to derive the orientation of the entity, using the time-averaged individual location information of the plurality of sensors provided by the position sensing unit, and a combination of specific pre-defined points in the entity, and wherein the combination of these predefined points, has a known/preset angular relationship with the absolute of the entity.

[0042] These and other aspects of the embodiments of the present inventionwill be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating preferred embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments of the present invention include all such modifications.

BRIEF DESCRIPTION OF THE DRAWINGS

[0043] The embodiments of the present invention will be better understood from the following detailed description with reference to the drawings, in which:

[0044] FIG.l illustrates a block diagram of a cost-effective system for navigating an entity autonomously between any two points in an indoor navigation space, according to one embodiment herein.

[0045] FIGS.2A illustrates a perspective view of an entity (robot) installed with a set of position sensors at a plurality of locations, according to one embodiment herein.

[0046] FIGS.2B illustrates a top view of an entity (robot) installed with a set of position sensors at the plurality of locations, according to one embodiment herein.

[0047] FIGS. 3A-3C illustrate a multi-stage navigation process performed by the system of navigation process, according to one embodiment herein.

[0048] FIGS. 3D-3E illustrate a flow chart explaining a process of multi-stage navigation process, according to one embodiment herein.

[0049] FIGS. 3F illustrates a simulated a multi-stage navigation process, according to one embodiment herein.

[0050] FIGS. 3G illustrates a chart indicating an actual trajectory of the entity autonomously driven between two points in a line segment based on multi-stage navigation process, according to one embodiment herein.

[0051] FIG. 4 illustrates a flow chart explaining a method of navigating an entity autonomously between any two points spanning multiple line segments in a navigation space, according to one embodiment herein.

[0052] FIG. 5 illustrates the method to translate angular correction to differential speed to be applied on the drive wheels, according to one embodiment herein.

[0053] FIG. 6 illustrates the significance of various parameters used to calculate angle correction factor as part of controlling the entity during navigation, according to one embodiment herein.

[0054] Although the specific features of the embodiments of the present invention are shown in some drawings and not in others. This is done for convenience only as each feature may be combined with any or all of the other features in accordance with the embodiments of the present invention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

[0055] In the following detailed description, a reference is made to the accompanying drawings that form a part hereof, and in which the specific embodiments that may be practiced is shown by way of illustration. These embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments and it is to be understood that other changes may be made without departing from the scope of the embodiments. The following detailed description is therefore not to be taken in a limiting sense.

[0056] The embodiments of the present invention and the various features and advantageous details thereof are explained more fully with reference to the nonlimiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments of the present invention may be practiced and to further enable those of skill in the art to practice the embodiments of the present invention. Accordingly, the examples should not be construed as limiting the scope of the embodiments of the present invention.

[0057] The various embodiments herein provide a method and a system(lOO) to realize a cost-effective autonomous navigation entity (200) to navigate through a time varying indoor navigation space autonomously just by using indoor positioning sensors. In various embodiments, the method and system disclosed herein uses the instantaneous absolute position and the absolute orientation of the entity obtained from the absolute position unit (104) and the absolute orientation unit (106) respectively to perform autonomous navigation of the entity (200) between any two points in the navigation space reliably. In various embodiments, the method and system disclosed herein divides the navigation path between two points in to multiple line segments based on the navigation strategy guided by the navigation guidance unit (108) and applies a multi-stage navigation mechanism for each such line segment to achieve a smooth and graceful alignment with a predetermined path so as to avoid any uncontrollable wild swing that can lead to a high probability of the entity straying away from the predetermined path thus increasing the vulnerability of collisions. In various embodiments, the method and system disclosed herein perform a multi-stage navigation based on an instantaneous absolute position of the entity obtained from the absolute position unit (104) and an instantaneous absolute orientation of the entity derived from the instantaneous absolute position of the drive wheels obtained from the drive wheel control unit (112). The multi-stage navigation process achieves at least one of a) minimizing deviation from ideal path, 2) earliest course correction and follow through navigation in a straight line, and 3) graceful arrival at the target in a straight line parallel to the predetermined (ideal) path.

[0058] According to one embodiment herein, a system for navigating an entity through a navigation space is disclosed. The system includes a position sensing unit (102) comprising of a plurality of positioning sensors disposed on a plurality of pre-defined points in a multi-dimensional space on the said entity (200) in a meaningful manner thus enabling geometrical inference of the said entity (200), an absolute position unit (104) configured to determine the instantaneous position of the entity, an absolute orientation unit (106) configured to determine the absolute orientation of the entity which is generally used during initial alignment of the entity towards the target in a line segment, a navigation guidance unit (108) that provides unique attributes of the navigable layout identified in the navigation area, a navigation control unit (110) that performs navigation of the said entity (200) between any two points in the navigation space based on a strategy guided by the navigation guidance unit (108) so as to reach the desired target successfully, and a drive wheel control unit (112) that controls the drive wheels of the entity (200) based on the instantaneous angular correction input received from the navigation control unit (110)

[0059] According to one embodiment herein, the position sensing unit (102) comprises a plurality of positioning sensors, placed in a meaningful manner and configured to provide an approximate representation of location of each individual sensor based on UWB (Ultra- Wideband), Bluetooth, Zigbee, Ultrasound technology, etc. with known inaccuracies and fluctuations including multi-path reflections and non- line-of-sight (NLOS) factors. The plurality of sensor locations along with their known geometric relationship enables us to derive a highly refined representation of the absolute position and absolute orientation, the two critical parameters required to realize autonomous navigation, of the entity (200).

[0060] According to one embodiment herein, the absolute position unit (104) provides instantaneous absolute position of the said entity (200) with an accuracy that enables extracting various derived parameters that play a crucial role in navigating the entity autonomously. The instantaneous absolute position of the said entity (200) is derived from the location of individual sensors provided by the position sensing unit (102) based on their known geometrical relationship and exploiting their multidimensional spatial diversity.

[0061] According to one embodiment herein, the absolute orientation unit (106) provides absolute orientation of the said entity (200) just using the position sensing unit (102) and helps in overcoming the drawbacks of traditional orientation sensors that are highly susceptible to magnetic field of the surroundings. Using the time-averaged individual location information of the pre-defined points on the entity represented by the plurality of sensors provided by the position sensing unit (102), a set of unique vectors are constructed either by connecting any two of these predefined points or any two points representing a combination of such pre -defined points. With each of these unique vectors having a known angular relationship with a given axis of the said entity (200) known as the heading or the absolute orientation of the entity, performing angular rotation of those vectors by applying respective offsets followed by weighted averaging provides a reliable absolute orientation of the entity. Fig. 2B illustrates the top view representation of one such embodiment wherein the bold arrow indicates the absolute orientation of the entity and the plurality of sensors (202A to 202H) indicate a representation of pre-defined point with a geometrical relationship.

[0062] According to one embodiment herein, the navigation guidance unit (108) provides unique attributes extracted from the desired navigable layout identified in the indoor navigation space that enables the navigation control unit (110). In addition to providing the context of the navigation layout, it also updates some of its own attributes dynamically based on the navigation experience of the entity (200) in the recent past. The entire navigation layout is split into navigable line segments connected by nodes whose absolute coordinates are recorded in a map. All such line segments form part of a set of valid paths leading to a network of valid paths whose attributes like cost, path width, speed limit, intermediate node transition angles, node angular offset, node flags for special purposes etc. are recorded in the map. During navigation, it helps the navigation control unit (110) decide the navigation strategy by deciding the optimal path in real-time based on the current instantaneous absolute position of the entity (200) and the desired target destination. Any measurement offset identified during navigation is captured and recorded in the map for future navigations. E.g. absolute orientation of the entity (200) initially obtained through the absolute orientation unit (106) gets a refined representation during the course navigation. The difference between the two representations provides the angular offset error of the absolute orientation unit (106). Such an error is recorded in the map as a known angle offset at each such node while orienting towards the respective target. During subsequent navigations from the same starting node to the same target, this recorded known offset is applied to the said absolute orientation of the entity (200). This step is iterated during every navigation of each line segment and the angle offset for a given pair of start and end nodes is continuously refined and dynamically updated in the map. The navigation guidance unit (108) can effectively record, share as well as update multiple such attributes that would help enhance the navigation experience. The list of such attributes is only limited by the imagination of the designer.

[0063] According to one embodiment herein, the navigation control unit (110) plays a critical in driving the entity (200) autonomously using the inputs from various other units. Based on the navigation strategy guided by the navigation control unit (108), the navigation control unit splits the said navigation in to multiple steps based on the line segments to travel. For each such line segment, the navigation control unit (110) applies a multi-stage navigation mechanism to achieve a smooth and graceful alignment with a predetermined path so as to avoid any uncontrollable wild swing that can lead to a high probability of the entity straying away from the predetermined path thus increasing the vulnerability of collisions. During such multi-stage navigation in a line segment, at each smallest step of navigation defined by the cycle time of the system, the navigation control unit determines the angular correction to apply based on weighted combination of various factors including 1) the angular position of the entity from the start point with respect to the pre-defined navigation path 2) the angular position of the entity from the end point with respect to the pre-defined navigation path 3) the instantaneous orientation of the entity 4) the instantaneous absolute position of the entity 5) the deviation of the entity represented by the perpendicular distance of the entity (200) from the pre-defined navigation path etc. An illustration of these factors is given in Fig. 6. This angular correction computed at each of these smallest steps of navigation are given to the drive wheel control wheel (112).

[0064] According to one embodiment herein, the system also includes a drive wheel control unit (112) communicatively coupled to the navigation control unit and configured to control a drive wheel of the entity based on the multi-stage navigation. The drive wheel control unit is communicatively associated with at least one of a left motor and a right motor to control a speed of navigation of the entity. The drive wheel control unit (112) translates the instantaneous angular correction provided by the navigation control unit (110) to instantaneous differential drive wheel speeds using various parameters based on the physical properties of the entity (200) in to order achieve the angular correction of the entity (200) physically. The drive wheel control unit (112) monitors the absolute positions of the drive wheels during the entire navigation process and feeds the monitored data to the navigation control unit (110) which in turn provides the instantaneous angular correction for the drive wheel control unit (112) to derive the differential drive wheel speeds for the next iteration. The absolute positions of the drive wheels during the course of navigation are predicted based on 1) current absolute drive wheel positions 2) current maximum speed of the entity 3) cycle time of the system (100)4) width of the entity (200) and 5) the angular correction to achieve during the iteration. The differential wheel speeds are derived from the difference in predicted angular displacement between the two drive wheels if the entity moves from the current position to a predicted position. Depending up on the direction of rotation of the entity in order to apply the required correction, the outer wheel is applied with the current maximum speed while the inner wheel is applied a speed which is lesser than the current maximum speed by a factor of the difference in predicted angular displacement between the two drive wheels. An illustration of the translation of angular correction to differential wheel speed is given in Fig. 5. Also, to avoid any undesired shaky movement of the vehicle due to sudden jump in speed difference between the two wheels, the drive wheel control unit (112) controls the wheels at a much higher granularity, e.g. at one-tenth of the cycle time of the system (100), by time slicing the differential speed to be applied across the wheel so as to achieve smooth transition and effectively apply the desired angular correction to the entity (200) before the arrival of the next iteration signal from the navigation control unit (110).

[0065] According to one embodiment herein, the step of multi-stage navigation in a line segment includes a) initiating a navigation of the entity and ramping- up a speed of the entity, b) performing a course-correction on the entity to orient the entity along a predetermined path and compensating for a residual angle, upon reaching the maximum speed, c) performing stabilization of navigation of the entity for aligning the entity within a deviation limit from the predetermined path; and d) rampingdown the speed of the entity and stopping navigation upon reaching a distance of the entity from a destination point in the line segment within a predetermined limit.

[0066] According to one embodiment herein, the step or process of initiating the navigation includes a) determining whether an orientation of the entity is aligned within a predetermined target orientation range based on the absolute orientation of the entity (200) obtained from the absolute orientation unit (106);b) ramping-up the speed of the entity without applying any deviation correction as long as the deviation of the entity from the ideal -path is within acceptable limits; c) deriving a residual angle and then continuing to ramp up the speed of the entity along with applying a deviation correction by the residual angle, when the deviation of the entity from the idealpath goes beyond (exceeds) acceptable (predetermined) limits; d) performing either step 2 alone or performing a combination of step b and step c until a desired maximum speed is reached.

[0067] According to one embodiment herein, the step/process of deriving the residual angle during ramp-up involves finding/determining the slope values of the lines connecting the bot positions with the starting point iteratively at a predetermined periodic intervals, averaging the slope values and subtracting the averaged slope value from the absolute orientation of the entity (200) obtained from the absolute orientation unit (106) while initiating a navigation process.

[0068] According to one embodiment herein, the step/process of performing the course-correction involves using the residual angle estimated during ramp-up stage and applying the required angular correction to change the course of the entity (200) so as to bring it towards the pre-defined path representing the said linesegment. [0069] According to one embodiment herein, the step/process of performing the stabilization includes determining if a first exit condition is met and performing a stabilization when the first exit condition is met, and wherein the first exit condition is defined as a specific point at which 02 <k 01, where k is the pre-determined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment. 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the pre-defined path representing the line segment, or repeating/continuing the course-correction when the first exit condition is not met. The stabilization includes reversing the course -correction while aligning the entity parallel to the predetermined path and within a deviation limit; and determining if a deviation of the entity from the predetermined path is within a deviation limit; and aligning the entity along the predetermined path when the entity is within the deviation limit from the predetermined path. During the course of stabilization, the sign of the angle correction factor is determined so as to maintain the entity within a deviation limit on either side of the predetermined path. In case of the deviation of the entity going beyond preset deviation limit, repeat course-correction stage.

[0070] According to one embodiment herein, the step or the process of ramp- ing-down includes 1 determining if a deviation of the entity from the predetermined path is within a deviation limit, 2) determining if a second exit condition is met, when the deviation is within the preset deviation limit, and wherein the second exit condition is defined as a point in which the remaining distance to the destination point in the line segment is within a predetermined limit; 3) performing the process of ramping down the speed of the entity along with deviation correction to keep the entity along the predetermined path when the second exit condition is met or repeating the stabilization process when the second exit condition is not met, 4) determining if a distance of the entity to the destination point in the line segment is within a predetermined limit based on the instantaneous absolute position of the entity, 5) continuing or repeating the ramping-down process when the distance of the entity from the target location is not within a predetermined limit, and stopping navigation of the entity when the distance of the entity from the target location is within the predetermined limit.

[0071] According to one embodiment herein, a method of navigating an entity between any two points through a navigation space is disclosed. The method includes determining at least one of an instantaneous absolute position and an absolute orientation of the entity (200), deciding the navigation strategy that provides the combination of line segments to traverse to reach the final target, for each such line segment, determining and performing a multi-stage navigation of the entity based on the instantaneous absolute position and the absolute orientation of the entity. The multistage navigation process in a line segment includes a) initiating a navigation of the entity and ramping up a speed of the entity, b)performing a course-correction on the entity to orient the entity along a predetermined path and compensating for a residual angle, upon reaching a maximum speed, c)performing stabilization of navigation of the entity for aligning the entity within a deviation limit form the predetermined path, d)ramping-down the speed of the entity and stopping navigation upon a distance of the entity reaching a predetermined limit from a destination point in the line segment.

[0072] FIG. 1 illustrates a block diagram of a system for navigating an entity in a navigation space, according to one embodiment herein. As shown in FIG. 1, the system 100 includes a position sensing unit 102, an absolute position unit 104, and absolute orientation unit 106, a navigation guidance unit 108, a navigation control unit 110, and a drive wheel control unit 112. The entity may include for example, a stationary object or a mobile object (such as for example, a mobile factory equipment or vehicle). The navigation space may include an enclosed space with predefined boundaries, such as for example, a space inside a factory unit. The position sensing unit 102 includes a plurality of sensors, disposed on a plurality of locations on the entity (as described in detail along with FIGS. 2A-2B, based on UWB (Ultra- Wideband), Bluetooth, Zigbee, Ultrasound etc., placed in a meaningful manner in the entity and provides an approximate representation of location of each such individual sensor. The absolute position unit 1 (Mis configured to determine the instantaneous absolute position and the absolute orientation unit 106 is configured to determine an absolute orientation of the entity. According to one embodiment of the present invention, the navigation guidance unit course 108 provides a set of attributes to enable a successful navigation in the given navigation space. According to one of the embodiments, the navigation control unit 110 uses the attributes given by the navigation guidance unit 108 to perform navigation between any two points in the given navigation space. To perform the navigation, the said navigation path is split in to multiple line segments and navigation on each such line segment is performed using a multistage navigation mechanism. Up on completing the navigation of all such line segments and reaching the desired target within acceptable limit, the said navigation is considered to be successfully completed. According to one embodiment of the present invention, the multi-stage navigation in a line segment includes a) initiating a navigation of the entity and ramping- up a speed of the entity, b) performing a coursecorrection on the entity to orient the entity along a predetermined path and compensating for the residual angle, upon reaching the maximum speed, c) performing stabilization of navigation of the entity for aligning the entity within a deviation limit form the predetermined path, and d)ramping-down the speed of the entity and stopping navigation upon the entity distance of the entity reaching a predetermined limit from a destination point in the line segment. According to one embodiment of the present invention, the drive wheel control unit 112 translates the angular correction provided by the navigation control unit 110 to differential speeds to be applied on the drive wheels physically.

[0073] FIGS.2A illustrates a perspective view of an entity (robot) installed with a set of sensors at the plurality of locations, according to one embodiment here- in. As shown in FIG. 2 A, the entity 200 includes a front end 201 and a rear end 205. The set of sensors 202A-H includes a front set of sensors 202A- D disposed on the front end 201 and a rear set of sensors 202 E-H disposed on the rear end 205, of the example entity 102.

[0074] FIGS.2B illustrates a top view of an entity (robot) installed with a set of sensors at the plurality of locations, according to one embodiment herein. FIG. 2B illustrates a top view representation of positioning of the set of sensors 202A-H on the example entity 200 in an X-Y plane 208. As depicted in FIG. 2B the points Fl to F4 and the points Bl to B4 represent the positioning of the sensors 202A-D and 202E-H respectively. The sensors 202A-H are positioned in a manner as shown in Fig. 2A to achieve a three-dimensional spatial diversity. The sensors 202A-H provide the location information for each pre-defined position where each of these sensors are physically placed. Using the time-averaged location information of the said pre-defined points in the said entity (200) obtained using the position sensing unit (102), we can construct a combination of unique vectors each of which has known angular relationship with a given axis of the said entity (200) representing the heading or the absolute orientation of the entity in the XY plane 208.

[0075] According to one embodiment herein, the absolute orientation unit (106) constructs a combination of vectors each of which has a known angular relationship with a given axis of the said entity (200) represented by a bold arrow as illustrated in FIG. 2B which is the heading or the absolute orientation of the entity. Each such vector is constructed by connecting any two said pre-defined points or any two points representing a combination of such pre-defined points. Example vector constructions and their associated angular offset with respect to the absolute orientation of the entity are given below: a) Vectors B1B4 and F1F4 have an angular offset of 90 degrees b) Vectors B1F1 and B4F4 have an angular offset of 90 degrees c) Vectors B1F4 and B4F1 have an angular offset same as the diagonal but aver- aging them nullifies the offset and gives a direct representation of the absolute orientation of the entity (200) d) Vector can also be formed by connecting two points, one being the average position representation of B1B2B3B4 and the other being the average position representation of F1F2F3F4. This vector would have zero angular offset Innumerous such combination of vectors with an angular relationship with the absolute orientation of the entity can be constructed. Each such vector’s absolute orientation along with its direction sense provide a measure of the desired absolute orientation of the entity (200) with a known angular offset. Applying the respective known offset to each such vector’s orientation provides a unique representation of the absolute orientation of the entity (200). Weighted averaging of all such angles provides a reliable absolute orientation of the entity (200).

[0076] FIGS.3A-3C course illustrate a multi-stage navigation process performed by the system of navigation process, according to one embodiment herein. More particularly, FIG. 3A depicts a curve 300 representing the multi-stage navigation performed by the system 100 of the present technology. According to one embodiment of the present invention, the multi-stage navigation includes a ramp-up stage 302, a course-correction stage 304, a stabilization stage 306, and a ramp-down 308. In the ramp-up stage 302, a navigation of the entity 200 is initiated. It is determined if an orientation of the entity 200 is aligned within a predetermined target orientation range. Ramping-up the speed of the entity is first initiated without applying any deviation correction as long as the deviation of the entity from the ideal-path is within acceptable limits; If the deviation of the entity from the ideal-path goes beyond acceptable limits, deviation correction is applied along with ramp-up based on a residual angle (0)310. During course-correction stage 304, with a better understanding of the orientation of the entity from the hand off point of the ramp-up stage, apply angular correction to change the course of the entity so as to bring it towards the pre-defined path 311. [0077] FIG. 3B illustrates a curve depicting the course-correction stage 304 with the residual angle changing from 0i 312 to 02 314 as a consequence of the course correction. Course correction is stopped at a first exit condition. The first exit condition is defined as a specific point at which 02 <k 01, where k is the predetermined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment, and 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the predefined path representing the line segment. During the stabilization stage 306, a stabilization is performed by: reversing the course correction while aligning the entity 200 parallel to the predetermined path 31 land within a deviation limit. It is determined if a deviation of the entity 200 from the predetermined path 31 lis within a deviation limit, and the entity 200is aligned along the predetermined path 31 land within the deviation limit from the predetermined path 311. During the course of the stabilization stage 306, track the trajectory trend of the entity (200) and change the sign of the angle correction factor so as to maintain the entity within a deviation limit on either side of the predetermined path.

[0078] FIG. 3C illustrates a curve depicting the stabilization stage 306. As depicted in FIG. 3C, the residual angle tends to zero from 02314the entity 200 moves closer to the predetermined path 311 as a consequence of stabilization. During the ramp-down stage 308, the speed of the entity 200is ramped down along with deviation correction to keep the entity 200 along the predetermined path 311. FIG. 3C illustrates a curve depicting the ramp-down stage 308. The multi-stage navigation process is described further along with FIGS. 3D and 3E.

[0079] FIGS. 3D-3E illustrates a flow chart explaining a process of multi-stage navigation process in a line segment, according to one embodiment herein. FIGS. 3D- 3E depicts a process flow diagram illustrating a process of multi-stage navigation performed by the system 100, in accordance with an embodiment. In an embodiment, at step 320, a navigation of the entity 200 is initiated. At step 322, an absolute orientation of the entity 200 is determined using the absolute orientation unit 106. At step 324, it is determined if an orientation of the entity 200 is aligned within a predetermined error limit. At step 326, upon the orientation not being within the predetermined error limit, the entity is rotated to correct its orientation towards the destination point in the line segment thus reducing the error. Steps 322 to 324 are repeated until the entity is oriented towards the target within the predetermined error limit. At step 328, the speed of the entity is ramped up without applying the deviation correction, when the deviation of the entity 200 from a predetermined path 311 is within a pre -determined deviation limit. At step 330, it is determined if a maximum speed is achieved. Upon the maximum speed not being achieved, at step 332 it is determined if the deviation is within limits. Upon the deviation being within limits steps 328 to 332 are repeated. Upon the deviation not being within limits, at step 334, the speed of the entity is ramped up with deviation correction. At step 336, it is determined if a maximum speed is achieved. Upon maximum speed not being achieved, steps 334 and 336 are repeated. Upon maximum speed being achieved, at step 338, a course correction is performed to orient the entity along the predetermined path 311 while compensating for the residual angle. At step 340 it is determined if a first exit condition is met, and wherein the first exit condition is defined as a specific point at which 02 <k 01, where k is the pre-determined factor that decides the exact transition point, and wherein 01 is the initial angle of the entity from the starting point with respect to the line segment. 02 is the angle of the entity from the starting point with respect to the line segment that keeps varying during course correction as the entity moves towards the pre-defined path representing the line segment. Upon the first exit condition not being met at step 340, step 338 is repeated. Upon the first exit condition being met, at step 340 a stabilization is performed on the entity. During stabilization, the course correction is reversed while aligning the entity parallel to the predetermined path 311 and within a deviation limit, it is determined if a deviation of the entity from the pre- determined path 311 is within a deviation limit, and the entity is aligned along the predetermined path 311 and within the deviation limit from the predetermined path 311.

[0080] At step 344, it is determined if the deviation is within the deviation limit. Upon the deviation being within the limit, at step 346 it is determined if a second exit condition is met, and wherein the second exit condition is defined as a point in which the remaining distance to the destination point in the line segment is within a predetermined limit. Upon the deviation not being within the limit, steps 338 to 344 are repeated. Upon the second exit condition being met at step 346, at step 348, the speed of the entity is ramped down with a deviation correction. Else, upon the second exit condition not being met at step 346, steps 342 to 346 are repeated. At step 350, it is determined if the destination is reached. Upon reaching the destination at step 350, the navigation stops at step 352. Else upon not achieving the maximum speed, steps 348 to 350 are repeated.

[0081] FIGS. 3F illustrates a chart indicating a multi-stage navigation process, according to one embodiment herein. As depicted in FIG. 3F, the simulated trajectory 352 is a graph obtained by plotting a distance of travel (in millimeters) of the entity along an X-axis 354 against a deviation (in millimeters) from the predetermined path 311 along a Y-axis 356. The simulated trajectory 352 includes a ramp-up stage 360, a course correction stage 362, a stabilization stage 364, and a ramp-down stage 366. As can be observed from the simulated trajectory 322, a maximum deviation in this case is contained to less than 20centimetersand the entity is not allowed to traverse to the other side.

[0082] FIGS. 3G illustrates a chart indicating an actual bot trajectory based on absolute position system 104 for multi-stage navigation process in a line segment, according to one embodiment herein. The trajectory 368 includes an ideal path 370 and an initial direction 372 with a residual angle 0. Also, the stabilized path after course correction towards the destination point in the line segment is represented by 374. [0083] FIG.4 illustrates a flow chart explaining a method of navigating an entity along a predetermined path in a navigation space, according to one embodiment herein. At step 402, at least one of an instantaneous absolute position and an absolute orientation of the entity is determined and navigation between any two points is initiated. At step 403 all the line segments to navigate so as to optimally reach from the start to the final target are identified. At step 404, a multi-stage navigation of the entity for a line segment is performed based on the instantaneous absolute position and the instantaneous absolute orientation of the entity. At sub-step 404a of the multistage navigation, a navigation of the entity is initiated and a speed of the entity is ramped-up. At sub-step 404b, a course correction is performed on the entity to orient the entity along a predetermined path and compensating for the residual angle, upon reaching the maximum speed. At sub-step 404c a stabilization of navigation of the entity is performed for aligning the entity within a deviation limit form the predetermined path. At sub-step 404d, the speed of the entity is ramped-down and the navigation of the entity is stopped upon a distance of the entity reaching a predetermined limit from a destination point in the line segment. The steps of 404a to 404d for each line segment identified in 403 are repeated until all line segments are navigated and the target is reached.

[0084] FIG. 5 illustrated the mechanism used by the drive wheel control unit to translate the instantaneous angular correction provided by the navigation control unit (110) to instantaneous differential drive wheel speeds using various parameters based on the physical properties of the entity (200) in to order achieve the angular correction of the entity (200) physically. The drive wheel control unit (112) monitors the absolute positions of the drive wheels throughout the navigation in order to derive the differential drive wheel speeds for the next iteration based on the instantaneous angular correction received from the navigation control unit (110). In FIG 5, from the initial position 501 of the entity (200), with an angular correction of 0, the entity would reach the updated position 502. This angular correction 0 leads to differential angular displacement between the outer wheel 503 and the inner wheel 504 which is a function of 0 and the width ‘w’ of the entity. As illustrated in FIG 5, the speed of the inner wheel is obtained by subtracting w* 0 from the speed of the outer wheel. Applying the current maximum speed of the entity to the outer wheel, the reduced speed of the inner wheel can be derived.

[0085] FIG. 6 illustrates the significance of various parameters used to calculate angle correction factor as part of controlling the entity during navigation, according to one embodiment herein. Typical usage of a combination of these parameters during different stages of the multi-stage navigation of the entity is illustrated as well.

[0086] The various embodiments of system and process to realize and navigate a cost-effective autonomous entity in a time varying indoor navigation space disclosed herein facilitates navigating between any two points in the said navigation space by splitting the navigation path in to multiple line segments, and for each such line segment to navigate, orienting the starting angle of the entity within a limit of, say 5 degrees accuracy, followed by initiating a multi-stage navigation mechanism in order to ensure stabilized control of the entity and maintaining the trajectory of the entity along the ideal path defined the line segment until the destination point in the line segment is reached, and repeated the same every such line segment to reach the final target. Moreover, the multi-stage navigation process of the present technology facilitates achieving at least one of a) minimizing deviation from an ideal path, 2) an earliest course correction and follow through navigation in a straight line, and 3) graceful arrival at the target in a straight line parallel to the ideal path. During the course of navigation, any external factor like uneven floor surfaces, floor friction, multi-path wireless signal degradation etc., leading to deviation of the entity beyond acceptable limits is closely monitored and the navigation strategy is dynamically changed so as to reach the target successfully including deciding on course correction and initiation of new cycle of multi-stage navigation, based on the assessment of the dynamically experienced conditions and in turn the instantaneous absolute position and the absolute orientation of the entity.

[0087] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying cur- rent knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of de- scription and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the appended claims.

[0088] Although the embodiments herein are described with various specif- ic embodiments, it will be obvious for a person skilled in the art to practice the embodiments herein with modifications.