A robot positioning system and method within a building
By using the elevator's position coordinates in the geographic coordinate system as a reference, the robot's absolute position in the geographic coordinate system can be deduced, solving the problem of inconsistent robot coordinate systems and enabling unified scheduling and efficient positioning of robots within buildings.
Patent Information
- Application Number
- CN202310314435.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-28
- Publication Date
- 2026-08-25
- Estimated Expiration
- 2043-03-28
AI Technical Summary
When multiple autonomous mobile robots coexist in the same building, existing SLAM algorithms result in inconsistent coordinate systems among the robots, making unified scheduling impossible.
By introducing the elevator's position coordinates in the geographic coordinate system as a reference, and using the robot's relative position information in the robot coordinate system and the elevator's position coordinates, the robot's absolute position coordinates in the geographic coordinate system can be deduced, thus achieving unified scheduling of all robots.
It enables unified positioning of multiple robots in a geographic coordinate system, reduces computational load, improves positioning accuracy, and eliminates coordinate system drift caused by changes in scanning reference or electromagnetic interference.
Smart Images

Figure CN116558518B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of indoor robot positioning technology, and in particular to a robot positioning system and method for buildings. Background Technology
[0002] Currently, autonomous mobile robots are a hot topic and a key focus of development, especially in the field of service robots, where the scenarios involved are quite complex, requiring robots to possess autonomous localization and navigation technology. Existing autonomous localization and navigation typically uses SLAM (Simultaneous Localization and Mapping) algorithms to achieve robot localization, mapping, and path planning. Specifically, this involves the robot automatically establishing a robot coordinate system based on its initial scene state and using this coordinate system to locate itself. For example, a robotic vacuum cleaner might use the kitchen door as the origin, the vertical partition wall as the x-axis, and the horizontal partition wall as the y-axis to construct its robot coordinate system.
[0003] While SLAM (Simultaneous Localization and Mapping) algorithms can achieve autonomous robot localization, when multiple robots operate within the same building, their coordinate systems differ due to their different locations. Figure 1 As shown, the robot coordinates (X, Y, theta) reported by each robot are not unified due to the inconsistency of coordinate systems, and they operate independently and are fragmented. Even if the position information of each robot is obtained, unified scheduling is not possible. Summary of the Invention
[0004] To address the problems existing in the prior art, the present invention provides a robot positioning system for buildings, comprising:
[0005] The first storage module is used to store the location coordinates of each elevator installed in the building in the geographic coordinate system.
[0006] At least one robot walks inside the building and reports its relative position in the current robot coordinate system during the walk.
[0007] The first processing module is connected to the first storage module and each of the robots respectively. It is used to process the elevator position coordinates and the robot relative position information to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system when the received robot relative position information indicates that the robot is located in the elevator.
[0008] The second processing module is connected to each of the robots and the first processing module, and is used to obtain the absolute position coordinates of the robot in the geographic coordinate system when the robot adopts the current robot coordinate system, based on the absolute origin coordinates, the coordinate axis vectors and the robot's relative position information.
[0009] Preferably, it further includes an elevator identification module connected to the first storage module, the elevator identification module comprising:
[0010] The first identification unit is used to obtain the building floor plan of the building and identify the cross-shaped squares in the building floor plan;
[0011] The second identification unit, connected to the first identification unit, is used to calculate the corner coordinates of the four corner points of the smallest outer rectangle of the identified cross-shaped block in the geographic coordinate system, and to calculate the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
[0012] Preferably, the elevator recognition module further includes a vector recognition unit connected to the second recognition unit, used to traverse pixels along the length and width of the minimum outer rectangle, starting from the center point of the minimum outer rectangle, and to take the direction of the pixels that have not been traversed to represent the wall as the elevator door opening direction.
[0013] Preferably, the first storage module also stores a list of elevator names, which contains the elevator names of each elevator, and each elevator name is associated with the corresponding elevator location coordinates;
[0014] The robot's relative position information includes the current anchor name of the reference anchor point configured within the building and the robot's relative position coordinates in the current robot coordinate system;
[0015] The first processing module includes:
[0016] The coordinate calling unit is used to indicate that the robot is located inside the elevator when the current anchor point name is an elevator name, and then call the corresponding elevator position coordinates from the elevator name list according to the elevator name;
[0017] The coordinate processing unit, connected to the coordinate calling unit, is used to process the elevator position coordinates and the relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
[0018] Preferably, the formulas for calculating the absolute origin coordinates and the coordinate axis vectors are as follows:
[0019]
[0020] in,
[0021] Where (x0, y0) represents the absolute origin coordinates of the current robot coordinate system in the geographic coordinate system. This is used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. The coordinates (x, y, θ) represent the y-axis direction of the current robot coordinate system in the geographic coordinate system, (x, y, θ) represent the relative position coordinates of the robot, (Xgis, Ygis) represent the position coordinates of the elevator, α represents the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, and the vector corresponding to the elevator door opening direction is represented as (cosα, sinα).
[0022] Preferably, it further includes a second storage module connected to the first processing module, used to store the absolute position coordinates of each robot, wherein the absolute position coordinates are associated with the corresponding absolute origin coordinates, the coordinate axis vectors, the historical information reporting time contained in the robot relative position information, and the historical coordinate system number associated with the robot coordinate system;
[0023] The first processing module further includes a positioning invocation unit, which, when the received relative position information indicates that the robot is not in the elevator, invokes and outputs the absolute origin coordinates and the coordinate axis vector that simultaneously satisfy the conditions of having the historical information reporting time closest to the currently reported information reporting time and having the historical coordinate system number matching the currently reported current coordinate system number, and the absolute position coordinates associated with the robot.
[0024] This invention also provides a method for locating a robot inside a building, applied to the aforementioned robot positioning system within a building, wherein the system stores the position coordinates of each elevator installed within the building in a geographic coordinate system; then the method for locating a robot inside a building includes:
[0025] Step S1: The robot positioning system inside the building receives in real time the relative position information of each robot in the current robot coordinate system as it moves within the building.
[0026] Step S2: For each robot, when the received robot relative position information indicates that the robot is located inside the elevator, the building robot positioning system processes the elevator position coordinates and the robot relative position information to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
[0027] Step S3: The robot positioning system inside the building obtains the absolute position coordinates of the robot in the geographic coordinate system when the robot uses the current robot coordinate system, based on the absolute origin coordinates, the coordinate axis vectors, and the robot's relative position information.
[0028] Preferably, before performing step S1, an elevator position coordinate acquisition process is further included, including:
[0029] Step A1: The robot positioning system inside the building acquires the building floor plan and identifies the cross-shaped blocks in the building floor plan;
[0030] Step A2: The robot positioning system inside the building calculates the corner coordinates of the four corner points of the smallest outer rectangle of the forked block in the geographic coordinate system, and calculates the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
[0031] Preferably, the robot positioning system inside the building also stores a list of elevator names, which contains the elevator names of each elevator and each elevator name is associated with the corresponding elevator location coordinates.
[0032] The robot's relative position information includes the current anchor name of the reference anchor point configured within the building and the robot's relative position coordinates in the current robot coordinate system;
[0033] Then step S2 includes:
[0034] Step S21: When the current anchor point name is an elevator name, the robot positioning system in the building indicates that the robot is located in the elevator, and then retrieves the corresponding elevator position coordinates from the elevator name list according to the elevator name.
[0035] Step S22: The robot positioning system inside the building processes the elevator position coordinates and the relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system under the geographic coordinate system.
[0036] Preferably, the formulas for calculating the absolute origin coordinates and the coordinate axis vectors are as follows:
[0037]
[0038] in,
[0039] Where (x0, y0) represents the absolute origin coordinates of the current robot coordinate system in the geographic coordinate system. This is used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. The coordinates (x, y, θ) represent the y-axis direction of the current robot coordinate system in the geographic coordinate system, (x, y, θ) represent the relative position coordinates of the robot, (Xgis, Ygis) represent the position coordinates of the elevator, α represents the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, and the vector corresponding to the elevator door opening direction is represented as (cosα, sinα).
[0040] The above technical solution has the following advantages or beneficial effects:
[0041] 1) Taking an elevator with a clear location and opening direction as a reference, the robot's relative position information in the robot coordinate system and the elevator's position coordinates in the geographic coordinate system are used to inversely deduce the robot's absolute position coordinates in the geographic coordinate system. This enables the robot's relative position information reported by each robot to be converted into absolute position coordinates, unifying each robot in the geographic coordinate system, and thus enabling unified scheduling of multiple robots.
[0042] 2) The absolute origin coordinates and coordinate axis vectors are located and saved each time the robot enters the elevator. This allows for direct access to the absolute origin coordinates and coordinate axis vectors when transforming the absolute position coordinates of other positions in the same robot coordinate system, reducing the amount of computation.
[0043] 3) In the same robot coordinate system, by calling the absolute origin coordinates and coordinate axis vectors obtained from the most recent positioning, the origin drift of the robot coordinate system caused by factors such as changes in the scanning reference when the robot enters and exits the same elevator at different times, internal aging, or electromagnetic interference can be effectively eliminated, thereby improving the accuracy of positioning by calling the absolute origin coordinates and coordinate axis vectors. Attached Figure Description
[0044] Figure 1 A schematic diagram of the robot coordinate system corresponding to each robot;
[0045] Figure 2 A preferred embodiment of the present invention provides a schematic diagram of a robot positioning system within a building.
[0046] Figure 3 A schematic diagram of an elevator in a preferred embodiment of the present invention;
[0047] Figure 4 A schematic diagram of the robot coordinate system and the geographic coordinate system in a preferred embodiment of the present invention;
[0048] Figure 5 A flowchart illustrating a robot positioning method within a building is provided as a preferred embodiment of the present invention.
[0049] Figure 6 This is a flowchart illustrating the process of obtaining elevator position coordinates in a preferred embodiment of the present invention. Detailed Implementation
[0050] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments. The present invention is not limited to this embodiment; other embodiments that conform to the spirit of the present invention may also fall within the scope of the present invention.
[0051] In a preferred embodiment of the present invention, based on the above-mentioned problems existing in the prior art, a robot positioning system for buildings is provided, such as... Figure 2 As shown, it includes:
[0052] The first storage module 1 is used to store the elevator location coordinates of each elevator installed in the building in the geographic coordinate system.
[0053] At least one robot 2 walks inside the building and reports its relative position in the current robot coordinate system during the walking process;
[0054] The first processing module 3 is connected to the first storage module 1 and each robot 2 respectively. It is used to process the elevator position coordinates and robot relative position information of the corresponding elevator to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system when the received robot relative position information indicates that the robot is located in the elevator.
[0055] The second processing module 4 is connected to each robot 2 and the first processing module 3 respectively. It is used to obtain the absolute position coordinates of the robot in the geographic coordinate system when the robot adopts the current robot coordinate system, based on the absolute origin coordinates, coordinate axis vectors and robot relative position information.
[0056] Specifically, in this embodiment, in order to obtain the absolute origin coordinates and coordinate axis vectors of the robot coordinate system, an elevator in the building is introduced as a reference position. This is mainly because the elevator can simultaneously satisfy the requirements of position and angle without ambiguity. In other words, the elevator has a fixed, immovable position and the opening direction of the elevator door. Moreover, as is known from common knowledge, the robot has an absolute posture when entering the elevator, that is, the robot's central axis is parallel to the opening direction of the elevator door and it enters the elevator backward.
[0057] To facilitate subsequent retrieval of elevator location coordinates in the geographic coordinate system, it is necessary to first identify the elevators from the building floor plan and then locate their coordinates. Therefore, in a preferred embodiment of the present invention, an elevator identification module 5 is further included, connected to the first storage module 1. The elevator identification module 5 includes:
[0058] The first identification unit 51 is used to obtain the building floor plan inside the building and identify the cross-shaped squares in the building floor plan;
[0059] The second identification unit 52 is connected to the first identification unit 51. It is used to calculate the corner coordinates of the four corner points of the smallest outer rectangle of the identified cross-shaped square in the geographic coordinate system, and calculate the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
[0060] Specifically, in this embodiment, as Figure 3 As shown, the elevator is represented on a building floor plan as a checkered box surrounded by an open wall frame structure. Based on this, the building floor plan can first be rasterized. Then, existing image feature recognition algorithms can be used to identify the checkered box in the rasterized floor plan. Furthermore, the center point of the checkered box can be determined using the minimum bounding box (OBB) algorithm. Specifically, the OBB algorithm obtains the pixel region containing the identified checkered box, calculates the minimum bounding rectangle of that pixel region, and then obtains the coordinates of the four vertices of the minimum bounding rectangle. This allows the calculation of the center point coordinates of the minimum bounding rectangle, which are the elevator's position coordinates in the geographic coordinate system, specifically the latitude and longitude coordinates of the elevator's center point.
[0061] In a preferred embodiment of the present invention, the elevator recognition module 5 further includes a vector recognition unit 53 connected to the second recognition unit 52, which is used to traverse pixels along the length and width of the minimum outer rectangle starting from the center point of the minimum outer rectangle, and to take the direction of the pixels that have not been traversed to represent the wall as the elevator door opening direction.
[0062] Specifically, such as Figure 3As shown, the above-mentioned traversal of pixels along the length and width of the minimum bounding rectangle corresponds to the directions of the four dashed arrows in the figure. It can be seen that only the upward arrow will not traverse the pixel value corresponding to the wall because the elevator door opening will not traverse the pixel value. The other three directions can traverse the pixel value representing the wall, so the opening direction of the elevator door can be determined.
[0063] Furthermore, after obtaining the elevator position coordinates of each elevator, since the robot is considered to have the same position coordinates as the elevator after entering the elevator, when the received relative position information of the robot indicates that the robot is inside the elevator, the position consistency can be used to first deduce the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system; and then the absolute position coordinates of the robot can be determined based on the absolute origin coordinates and coordinate axis vectors.
[0064] Preferably, when receiving the robot's relative position information, it is necessary to first determine whether the robot is inside the elevator. If it is inside the elevator, the absolute origin coordinates and coordinate axis vectors are calculated in reverse. To achieve the above determination, in a preferred embodiment of the present invention, the first storage module 1 also stores a list of elevator names, which contains the elevator names of each elevator and each elevator name is associated with the corresponding elevator position coordinates.
[0065] The robot's relative position information includes the current anchor name of the reference anchor points configured within the building and the robot's relative position coordinates in the current robot coordinate system;
[0066] The first processing module 3 includes:
[0067] The coordinate calling unit 31 is used to indicate that the robot is inside the elevator when the current anchor point name is the elevator name, and then call the corresponding elevator position coordinates from the elevator name list according to the elevator name;
[0068] The coordinate processing unit 32 is connected to the coordinate calling unit 31 and is used to process the elevator position coordinates and relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
[0069] Specifically, in this embodiment, multiple reference anchor points can be defined within the building to assist the robot in positioning. These reference anchor points include, but are not limited to, elevators. If the current anchor point name is empty, the robot is considered to be walking on a road. If the current anchor point name is an elevator name (e.g., elevator number 1, elevator number 2, etc.), the robot is considered to be inside an elevator. Subsequently, the robot directly calls the pre-acquired elevator position coordinates based on the elevator name, and then processes the elevator position coordinates and relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system.
[0070] Furthermore, using a geographic coordinate system as Figure 4 The XOY coordinate system, one of which is the robot coordinate system. Figure 4 Using the xoy coordinate system in the example where the robot is inside an elevator, and the black dot represents the elevator's center point (its coordinates are the elevator's position coordinates, which are also relative position coordinates), we can illustrate the reverse calculation process of the absolute origin coordinates and coordinate axis vectors. Specifically, taking the black dot (whose coordinates in the robot coordinate system are (x, y, θ), and in the geographic coordinate system are (Xgis, Ygis)) as the starting point, if we need to return to the origin o(x0, y0) of the robot coordinate system, theoretically we need to travel a distance x in the opposite direction of the robot coordinate system's x-axis and a distance y in the opposite direction of the robot coordinate system's y-axis. Since the directions of the robot coordinate system's x and y axes are unknowns in the geographic coordinate system, we introduce an intermediate variable α to represent the angle between the robot coordinate system's x-axis and the geographic coordinate system's x-axis. Therefore, the angle between the robot coordinate system's y-axis and the geographic coordinate system's y-axis is also α. Then, as shown... Figure 4 As shown, the distance x traveled in the opposite direction of the robot's x-axis can be considered as first traveling x1 in the opposite direction of the geographic coordinate system's x-axis, where x1 = xcosα, and then traveling x2 in the opposite direction of the geographic coordinate system's y-axis, where x2 = xsinα. Similarly, the distance y traveled in the opposite direction of the robot's y-axis can be considered as first traveling y1 in the opposite direction of the geographic coordinate system's y-axis, where y1 = ysinα, and then traveling y2 in both directions of the geographic coordinate system's x-axis, where y2 = ycosα.
[0071] In summary, the formulas for calculating the absolute origin coordinates and coordinate axis vectors can be expressed as follows:
[0072]
[0073] Furthermore, since the coordinates of the black dot in the robot coordinate system are (x, y, θ) and the coordinates in the geographic coordinate system are (Xgis, Ygis), in other words, the two coordinates represent the same point, the expression for the coordinates of the black dot in the geographic coordinate system, using the origin of the robot coordinate system, is as follows:
[0074]
[0075] Where (x0, y0) represents the absolute origin coordinates of the current robot coordinate system in the geographic coordinate system. Used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. The coordinates (x, y, θ) represent the y-axis direction of the current robot coordinate system in the geographic coordinate system, (x, y, θ) represent the robot's relative position coordinates, (Xgis, Ygis) represent the elevator's position coordinates, α represents the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, and the vector corresponding to the elevator door opening direction is represented as (cosα, sinα).
[0076] In the two systems of equations above, (x, y, θ) and (Xgis, Ygis) are known quantities. Solving the systems of equations yields the value of the intermediate variable α, which in turn allows us to calculate the coordinates of the absolute origin (x0, y0) and the coordinate axis vectors.
[0077] Furthermore, since the aforementioned intermediate variable α can also represent the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, in this embodiment, based on the elevator door opening direction identified by the vector recognition unit 53, the rectangle with the opening surrounding the forked square can be further traversed to obtain the endpoint coordinates of the two endpoints of the opening, and the midpoint coordinates of the two endpoint coordinates can be calculated. Then, based on the midpoint coordinates and the center point coordinates of the smallest enclosing rectangle, the vector representation of the elevator door opening direction can be obtained. Preferably, the direction from the midpoint coordinates to the center point coordinates is taken as the elevator door opening direction. In other words, when solving the above two sets of equations, the intermediate variable α can also be directly substituted as a known quantity for solving, which is not limited here.
[0078] Furthermore, when the robot walks inside the building, the established robot coordinate system will constantly change at different positions due to different scanning references. Based on this, in a preferred embodiment of the present invention, a second storage module 6 is also included, connected to the first processing module 3, for storing the absolute position coordinates of each robot. The absolute position coordinates are associated with the corresponding absolute origin coordinates, coordinate axis vectors, and the historical information reporting time and the historical coordinate system number associated with the robot coordinate system contained in the robot's relative position information.
[0079] The first processing module 3 further includes a positioning and calling unit 33, which is used to call and output the absolute origin coordinates and coordinate axis vectors associated with the absolute position coordinates of the historical information that is closest to the current information reporting time and has a historical coordinate system number that matches the current coordinate system number of the current information when the received relative position information indicates that the robot is not in the elevator.
[0080] Specifically, considering that when a robot enters the same elevator at different times, the origin of the robot's coordinate system may drift due to changes in the scanning reference, internal aging, or electromagnetic interference, this embodiment uses the absolute origin coordinates and coordinate axis vectors derived from the most recent entry into the elevator under the same coordinate system number to locate the absolute position coordinates of the robot at other positions, effectively improving the accuracy of positioning by calling the absolute origin coordinates and coordinate axis vectors.
[0081] In a preferred embodiment, the first storage module 1, the first processing module 3, the second processing module 4, the elevator identification module 5, and the second storage module 6 are integrated into the same server. The server establishes a wireless communication connection with each robot 2 to receive the robot relative position information reported by each robot 2, and processes it to obtain the absolute position coordinates of each robot 2 for storage. This facilitates the subsequent tracking of the walking trajectory of each robot 2 and the unified scheduling of each robot 2, so as to realize the collaborative work of each robot 2.
[0082] This invention also provides a method for locating robots within a building, applied to the aforementioned robot positioning system within a building. The robot positioning system stores the position coordinates of each elevator within the building in a geographic coordinate system; for example... Figure 5 As shown, the robot localization method within a building includes:
[0083] Step S1: The robot positioning system inside the building receives in real time the relative position information of each robot in the current robot coordinate system as it moves through the building.
[0084] Step S2: For each robot, when the received robot relative position information indicates that the robot is located inside the elevator, the building robot positioning system processes the elevator position coordinates and robot relative position information to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
[0085] Step S3: The robot positioning system inside the building obtains the absolute position coordinates of the robot in the geographic coordinate system when using the current robot coordinate system, based on the absolute origin coordinates, coordinate axis vectors, and the robot's relative position information.
[0086] In a preferred embodiment of the present invention, before performing step S1, a process for obtaining elevator position coordinates is further included, such as... Figure 6 As shown, it includes:
[0087] Step A1: The robot positioning system inside the building acquires the building floor plan and identifies the cross-shaped blocks in the building floor plan;
[0088] Step A2: The robot positioning system inside the building calculates the corner coordinates of the four corner points of the smallest outer rectangle of the identified cross-shaped block in the geographic coordinate system, and calculates the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
[0089] In a preferred embodiment of the present invention, the robot positioning system inside the building also stores a list of elevator names, which contains the elevator names of each elevator and each elevator name is associated with corresponding elevator location coordinates.
[0090] The robot's relative position information includes the current anchor name of the reference anchor points configured within the building and the robot's relative position coordinates in the current robot coordinate system;
[0091] Then step S2 includes:
[0092] Step S21: When the current anchor point name is the elevator name, the robot positioning system in the building indicates that the robot is located in the elevator. Then, it retrieves the corresponding elevator position coordinates from the elevator name list according to the elevator name.
[0093] Step S22: The robot positioning system inside the building processes the elevator position coordinates and relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
[0094] In a preferred embodiment of the present invention, the formulas for calculating the absolute origin coordinates and coordinate axis vectors are as follows:
[0095]
[0096] in,
[0097] Where (x0, y0) represents the absolute origin coordinates of the current robot coordinate system in the geographic coordinate system. Used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. The coordinates (x, y, θ) represent the y-axis direction of the current robot coordinate system in the geographic coordinate system, (x, y, θ) represent the robot's relative position coordinates, (Xgis, Ygis) represent the elevator's position coordinates, α represents the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, and the vector corresponding to the elevator door opening direction is represented as (cosα, sinα).
[0098] The above description is merely a preferred embodiment of the present invention and does not limit the implementation and protection scope of the present invention. Those skilled in the art should realize that any equivalent substitutions and obvious changes made using the content of this specification and illustrations should be included within the protection scope of the present invention.
Claims
1. A robot positioning system for use within a building, characterized in that, include: The first storage module is used to store the location coordinates of each elevator installed in the building in the geographic coordinate system. Multiple robots that independently construct their own robot coordinate systems walk within the building and report their relative robot position information in the current robot coordinate system during the walking process; The first processing module, connected to the first storage module and each of the robots, is used to dynamically deduce the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system based on the elevator position coordinates of the corresponding elevator, the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system, and the robot relative position information when the received robot relative position information indicates that the robot is located in the elevator. The second processing module is connected to each of the robots and the first processing module, and is used to obtain the absolute position coordinates of the robot in the geographic coordinate system when the robot adopts the current robot coordinate system, based on the absolute origin coordinates, the coordinate axis vectors and the robot's relative position information.
2. The building robot positioning system according to claim 1, characterized in that, It also includes an elevator identification module connected to the first storage module, the elevator identification module comprising: The first identification unit is used to obtain the building floor plan of the building and identify the cross-shaped squares in the building floor plan; The second identification unit, connected to the first identification unit, is used to calculate the corner coordinates of the four corner points of the smallest outer rectangle of the identified cross-shaped block in the geographic coordinate system, and to calculate the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
3. The building robot positioning system according to claim 2, characterized in that, The elevator recognition module further includes a vector recognition unit connected to the second recognition unit, used to traverse pixels along the length and width of the minimum outer rectangle, starting from the center point of the minimum outer rectangle, and to take the direction of the pixels that have not been traversed to represent the wall as the elevator door opening direction.
4. The robot positioning system within a building according to claim 1, characterized in that, The first storage module also stores a list of elevator names, which contains the elevator names of each elevator and each elevator name is associated with the corresponding elevator location coordinates. The robot's relative position information includes the current anchor name of the reference anchor point configured within the building and the robot's relative position coordinates in the current robot coordinate system; The first processing module includes: The coordinate calling unit is used to indicate that the robot is located inside the elevator when the current anchor point name is an elevator name, and then call the corresponding elevator position coordinates from the elevator name list according to the elevator name; The coordinate processing unit, connected to the coordinate calling unit, is used to process the elevator position coordinates and the relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system.
5. The building robot positioning system according to claim 4, characterized in that, The formulas for calculating the absolute origin coordinates and the coordinate axis vectors are as follows: ; in, ; in, The coordinates used to represent the absolute origin of the current robot coordinate system in the geographic coordinate system. This is used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. This is used to represent the y-axis direction of the current robot coordinate system in the geographic coordinate system. The relative position coordinates used to represent the robot Used to represent the elevator's position coordinates. The angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system is used to represent the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system. The vector corresponding to the elevator door opening direction is represented as ( ).
6. The building robot positioning system according to claim 1, characterized in that, It also includes a second storage module connected to the first processing module, used to store the absolute position coordinates of each robot, wherein the absolute position coordinates are associated with the corresponding absolute origin coordinates, the coordinate axis vectors, the historical information reporting time contained in the robot's relative position information, and the historical coordinate system number associated with the robot's coordinate system; The first processing module further includes a positioning invocation unit, which, when the received relative position information indicates that the robot is not in the elevator, invokes and outputs the absolute origin coordinates and the coordinate axis vector that simultaneously satisfy the conditions of having the historical information reporting time closest to the currently reported information reporting time and having the historical coordinate system number matching the currently reported current coordinate system number, and the absolute position coordinates associated with the robot.
7. A method for robot localization within a building, characterized in that, The robot positioning method for a building, applied to any one of claims 1-6, wherein the building robot positioning system stores the elevator position coordinates of each elevator installed within the building in a geographic coordinate system, comprises: Step S1: The robot positioning system inside the building receives in real time the relative position information of each robot in the current robot coordinate system as it moves within the building. Step S2: For each robot, when the received robot relative position information indicates that the robot is located inside the elevator, the building robot positioning system processes the elevator position coordinates and the robot relative position information to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system in the geographic coordinate system. Step S3: The robot positioning system inside the building obtains the absolute position coordinates of the robot in the geographic coordinate system when the robot uses the current robot coordinate system, based on the absolute origin coordinates, the coordinate axis vectors, and the robot's relative position information.
8. The robot positioning method within a building according to claim 7, characterized in that, Before performing step S1, the process of obtaining elevator position coordinates is also included, including: Step A1: The robot positioning system inside the building acquires the building floor plan and identifies the cross-shaped blocks in the building floor plan; Step A2: The robot positioning system inside the building calculates the corner coordinates of the four corner points of the smallest outer rectangle of the forked block in the geographic coordinate system, and calculates the center point coordinates of the smallest outer rectangle based on the corner coordinates as the corresponding elevator position coordinates.
9. The robot positioning method within a building according to claim 7, characterized in that, The robot positioning system inside the building also stores a list of elevator names, which contains the names of each elevator and each elevator name is associated with the corresponding elevator location coordinates. The robot's relative position information includes the current anchor name of the reference anchor point configured within the building and the robot's relative position coordinates in the current robot coordinate system; Then step S2 includes: Step S21: When the current anchor point name is an elevator name, the robot positioning system in the building indicates that the robot is located in the elevator, and then retrieves the corresponding elevator position coordinates from the elevator name list according to the elevator name. Step S22: The robot positioning system inside the building processes the elevator position coordinates and the relative position coordinates to obtain the absolute origin coordinates and coordinate axis vectors of the current robot coordinate system under the geographic coordinate system.
10. The robot positioning method within a building according to claim 9, characterized in that, The formulas for calculating the absolute origin coordinates and the coordinate axis vectors are as follows: ; in, ; in, The coordinates used to represent the absolute origin of the current robot coordinate system in the geographic coordinate system. This is used to represent the x-axis direction of the current robot coordinate system in the geographic coordinate system. This is used to represent the y-axis direction of the current robot coordinate system in the geographic coordinate system. The relative position coordinates used to represent the robot Used to represent the elevator's position coordinates. The angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system is used to represent the angle between the elevator door opening direction and the coordinate axis of the geographic coordinate system. The vector corresponding to the elevator door opening direction is represented as ( ).
Citation Information
Patent Citations
Cross-floor navigation method and device of robot, and robot
CN109764877A
Indoor inspection robot positioning method and system based on electronic map
CN115560755A