robot

By designing units such as lifting area map information loading units in the robot control system, we work together to determine the stop location of the split map information switching, and solve the waiting time problem caused by map information switching during the elevator movement process, improving movement efficiency and reducing storage requirements.

CN115494835BActive Publication Date: 2025-04-01HITACHI BUILDING SYST CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210478699.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-06-02
Filing Date
2022-05-05
Publication Date
2025-04-01
Estimated Expiration
2042-05-05

AI Technical Summary

Technical Problem

When a robot uses an elevator to move across multiple floors, switching of split map information causes the moving robot to stop, resulting in useless waiting time, and the storage capacity of the main memory is relatively large.

Method used

A robot control system is designed, including a lifting area map information loading unit, a navigation unit, a moving time estimation unit, a map switching time estimation unit and a map information switching unit. Through the coordinated work of these units, it is judged and decided to switch from the divided map information near the elevator station on the elevator station on the boarding floor to the stopping position of the divided map information near the elevator station on the destination floor to avoid the driving robot stopping.

Benefits of technology

It effectively suppresses the useless waiting time generated when switching segmented map information, reduces the demand for main memory capacity, and improves the robot's movement efficiency in multi-story environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115494835B_ABST
    Figure CN115494835B_ABST
Patent Text Reader

Abstract

The present invention provides a robot that can suppress useless waiting time caused by intentionally stopping the robot to estimate the current position when switching split map information in a robot moving toward a destination. The robot comprises: a split map information loading unit that loads two split map information into a memory; a navigation unit that uses the split map information stored in the memory to find a driving route to the destination; a time estimation unit that finds the travel time to a predetermined number of stop locations on the driving route from the current position to the destination where the robot is in a stopped state, and the map switching time until the next split map information is read to estimate the current position; and a map information switching unit that determines the relationship between the travel time to the predetermined number of stop locations and the map switching time, and determines the stop location to switch from the current split map information to the next split map information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a robot capable of autonomous movement, and in particular to a robot capable of autonomous movement according to map information. Background Art

[0002] The robot capable of autonomous movement is configured to collect surrounding environmental information using sensors (such as a camera) mounted on the robot, and to estimate the current position and travel path of the robot to move.

[0003] In order to estimate the current position of a robot, GPS signals are generally used in many cases. However, for robots used in buildings, the detection accuracy based on GPS signals is sometimes insufficient, and there is a problem that the accurate position cannot be estimated. Therefore, it is proposed to compare (match) objects captured in images captured by sensors such as cameras mounted on the robot with objects stored in a map (map), and estimate the current position based on their recognition results.

[0004] The estimation accuracy of the current position depends on, for example, the accuracy and amount of the collected surrounding image information. When the amount of collected image information is large, the current position can be estimated with high accuracy, but more map information is required to be compared accordingly. In particular, in a guidance robot used in a building, it moves across multiple floors using an elevator, so a lot of map information is required.

[0005] Therefore, in order to forward the map information for estimating the current position from an external storage device such as a hard disk device and temporarily store it, the robot control device needs a large-capacity memory (RAM). In addition, processing time is required to process a large amount of map information. Therefore, it is not preferred in terms of operating and managing the robot because it hinders the driving control of the robot.

[0006] For such a problem, for example, Japanese Patent Publication No. 2017-21570 (Patent Document 1) shows the following. An external storage device stores a plurality of segmented map information, and a plurality of floor map information formed by aggregating the segmented map information of two or more floors into one is read from the external storage device and written into a main memory (e.g., RAM). Then, a driving path generation unit refers to the plurality of floor map information stored in the main memory to generate a driving path of the robot to a preset destination.

[0007] Thus, even if the robot moves to another floor, a lot of map information is not read from the external storage device, and the divided map information can be used to suppress the waiting time associated with writing (loading) to the main memory. Thus, the robot can move smoothly to another floor.

[0008] In such a robot, in order to find a travel path, a computing unit (CPU) reads out segmented map information from a main memory, and performs an estimation operation of a current position with reference to the segmented map information read out. Furthermore, as the robot travels, the current segmented map information is switched to new segmented map information, and the switched segmented map information is read out again, and the estimation operation of the current position is successively performed with reference to the read map information.

[0009] However, a predetermined time (hereinafter sometimes referred to as map switching time) is required before the segmented map information is read from the main memory to estimate the current position. Therefore, during the time when the segmented map information is switched according to the movement of the robot and the map switching time is executed to read the segmented map information again to estimate the current position, the robot needs to be stopped and the current position needs to be estimated by referring to the segmented map information in order to ensure safety and not to move the robot. In addition, the more map information there is, the longer this stop time tends to be.

[0010] In this way, when switching the reference segmented map information in order to estimate the current position according to the movement of the robot, the robot is intentionally stopped during movement, thereby generating useless waiting time. In addition, the robot does not necessarily have a memory with a capacity that can store a large amount of map information, and there is also a demand to reduce the memory capacity of the main memory as much as possible.

[0011] Patent Document 1: Japanese Patent Application Publication No. 2017-21570 Summary of the invention

[0012] A main object of the present invention is to provide a robot that can suppress unnecessary waiting time caused by intentionally stopping the robot while it is moving to estimate a current position when switching divided map information.

[0013] In the present invention, when an elevator is used to move to a destination across multiple floors determined by a control unit, the control unit has:

[0014] A lifting area map information loading unit, which loads at least the segmented map information near the boarding layer elevator landing station and the segmented map information near the destination layer elevator landing station into a memory before the robot moves to the boarding layer elevator landing station;

[0015] A navigation unit that uses the segmented map information of the vicinity of the elevator landing station on the boarding floor and the segmented map information of the vicinity of the elevator landing station on the destination floor stored in the memory to find a travel route from the current position to the destination;

[0016] a moving time estimating unit for estimating a moving time from a boarding floor elevator landing to a destination floor elevator landing to a predetermined stopping position where the robot is in an intentionally stopped state;

[0017] a map switching time estimation unit for calculating the map switching time from the divided map information of the vicinity of the boarding floor elevator station to the divided map information of the vicinity of the destination floor elevator station until the divided map information of the vicinity of the destination floor elevator station is read to estimate the current position; and

[0018] The map information switching unit determines the relationship between the travel time and the map switching time and determines a stop position for switching from the divided map information near the boarding floor elevator hall to the divided map information near the destination floor elevator hall.

[0019] According to the present invention, in a robot moving toward a destination, the robot is not intentionally stopped when switching divided map information, thereby suppressing generation of useless waiting time for estimating the current position by referring to the divided map information. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 It is a structural diagram showing the structure of a robot to which the present invention is applied.

[0021] Figure 2A This is a flowchart for explaining the first half of the switching process of the divided map information according to the embodiment of the present invention.

[0022] Figure 2B This is a flowchart for explaining the second half of the switching process of the divided map information according to the embodiment of the present invention.

[0023] Figure 3A Yes Figure 2B A flowchart illustrating the switching process of switching process A.

[0024] Figure 3B Yes Figure 2B A flowchart illustrating the switching process of switching process B.

[0025] Figure 3C Yes Figure 2B A flowchart illustrating the switching process of switching process C.

[0026] Figure 4 This is an explanatory diagram that explains the relationship between map size and map switching time.

[0027] Figure 5 This is an explanatory diagram for explaining the operation from the elevator reaching the boarding floor to getting off the elevator at the destination floor.

[0028] Figure 6 This is an explanatory diagram for explaining the detection process of the opening of the elevator landing.

[0029] Figure 7 This is an explanatory diagram for explaining the detection result of the opening.

[0030] Figure 8 This is an explanatory diagram for explaining the operation of the embodiment of the present invention.

[0031] Explanation of symbols

[0032] 10...robot, 11...driving wheel, 12...steering wheel, 13...signal receiving unit, 14...camera, 15...control processing unit, 16...external storage device, 17...volatile memory (RAM), 18...display control unit, 19...bus, 20...car. DETAILED DESCRIPTION

[0033] Although the embodiments of the present invention are described in detail with reference to the drawings, the present invention is not limited to the following embodiments, and various modifications and application examples are included in the technical concept of the present invention.

[0034] Figure 1 The structure of a robot 10 capable of autonomous movement to which the present invention is applied is shown. The robot 10 has a structure in which at least two driving wheels 11 of four wheels are driven, and the direction of travel is determined by the remaining two steering wheels 12 .

[0035] The signal receiving unit 13 provided in the robot 10 receives various signals (sensor signals, etc.) from the outside. For example, a GPS signal for estimating the current position in world absolute coordinates is input to the signal receiving unit 2. In addition, the signal receiving unit 13 may also have a function of receiving map information from an external server.

[0036] Furthermore, the signal receiving unit 2 may also be input with an RTK-GPS signal that estimates the current position with higher accuracy than the GPS signal. In addition, signals from quasi-zenith satellites, signals from wireless beacons fixed at known positions, signals from sensors that estimate positions with relative coordinates, such as wheel encoders, IMUs, and gyroscopes, and signals of shape information such as the shape, size, and height of objects in the driving environment may also be input. In short, the input of the signal receiving unit 2 is not particularly limited as long as it can ultimately be used for estimating, controlling, and recognizing the current position of the robot 10.

[0037] The sensor 14 is, for example, a still camera or a video camera. In addition, the camera 14 may be a single-lens camera or a compound-lens camera. In addition, the camera 14 may be a laser sensor such as a laser radar. In short, as long as the information of the shape of the object (column, wall, furniture, etc.) on the driving path can be finally extracted, there is no particular limitation. In the following, the sensor 14 is described as a camera.

[0038] The camera 14a is, for example, installed in front of the robot 10, and the camera 14a has an image pickup direction in front of the robot 10. Therefore, the camera 14a can obtain, for example, a photographic image of a distant view in front of the robot 10. Other cameras 14b ... 14n are installed at positions different from the camera 14a, and take images in a photographic direction or a photographic area in a direction different from that of the camera 14a. The sensor 14b can also be installed, for example, at the rear of the robot 10 facing downward, and the camera 14b can also obtain a photographic image of a close view in the rear of the robot 10. Here, the photographic image has a function as image information.

[0039] Furthermore, when the camera 14 is a single-lens camera, if the ground is flat, the relationship (x, y) between the pixel position on the image and the actual ground position is constant, so the distance from the camera 14 to the feature point can be geometrically calculated. In addition, when the ground is uneven, the distance to the feature point can be estimated based on the time series movement of the feature point on the image and the movement of the robot 10.

[0040] In addition, when the camera 14 is a stereo camera, the distance to the feature point on the image can be accurately measured geometrically. In addition, in the case of a laser sensor, the shape information of the distant can be obtained more accurately. In the following description, the example using a camera and a laser is described, but as long as the distance to the surrounding objects can be calculated, other cameras (a camera with a wide-angle lens, a TOF camera, etc.) can also be used.

[0041] In addition, the objects captured by the cameras 14a ... 14n at a certain time may be different from each other. For example, the camera 14a captures the image information of the distant view in front of the robot 10. In this case, the image captured in the distant view may also extract features such as three-dimensional objects or landmarks for position estimation. In addition, the camera 14b may also capture the near view information such as the ground around the robot 10.

[0042] In addition, the cameras 14a ... 14n may be installed on the robot 10 without being affected by environmental interference such as rain or sunlight. For example, the camera 14a may be installed in front of the robot 10 facing forward, whereas the camera 14b may be installed behind the robot 10 facing backward or downward.

[0043] Thus, for example, even if raindrops adhere to the lens of the camera 14a during rainfall, it is difficult for raindrops to adhere to the lens of the camera 14b that is in the opposite direction of the traveling direction or facing downward. Therefore, even if the image captured by the camera 14a is not clear due to the influence of raindrops, the image information captured by the camera 14b is not easily affected by the raindrops. Alternatively, even if the image captured by the camera 14a is not clear due to the influence of sunlight, the image captured by the camera 14b is clear.

[0044] In addition, the images captured by the cameras 14a, 14b, ..., 14n may be acquired under different acquisition conditions (aperture value, white balance, cycle, etc.). For example, by installing a camera whose parameters are adjusted for bright places and a camera whose parameters are adjusted for dark places, good captured images can be obtained regardless of the brightness of the imaging space.

[0045] The control unit CU includes a control processing unit 15, a volatile memory (RAM) 17, a display control unit 18, etc. In addition, map information is transmitted to the control unit CU from an external storage device 16, and a hard disk device or a flash memory is used as the external storage device 16.

[0046] The cameras 14a, 14b, ..., 14n acquire captured images when receiving an instruction to start acquiring captured images from the control processing unit 15 constituting the control unit CU or at a certain time interval. The acquired captured image data and the acquisition time are stored in the volatile memory (RAM) 17. In addition, map information for drawing a map or estimating the current position is written from the external storage device 16 to the volatile memory (RAM) 17.

[0047] In addition, different control tasks may be performed using the images captured by the cameras 14a, 14b, ..., 14n. For example, the position of the robot 10 can be estimated based on the information of the images captured by the cameras 14a and 14b, and obstacles can be detected by the cameras 14c and 14d, and finally the robot 10 can be controlled by the control processing unit 15 based on the information of the images captured by the cameras 14a, 14b, ..., 14n.

[0048] In addition, when the CPU of the control processing unit 15 can only process in a single thread, the information obtained from each camera 14a, camera 14b ... camera 14n is processed in the order of camera 14a, camera 14b ... camera 14n. On the other hand, when the CPU of the control processing unit 15 can process in multiple threads, the information obtained from the cameras 14a, camera 14b ... camera 14n can be processed simultaneously.

[0049] In addition, the control processing unit 15 processes the information obtained by the signal receiving unit 2 and the camera 14 to calculate the position and movement amount of the robot 10. For example, the control processing unit 15 calculates the movement amount of the robot 10 based on the captured images obtained by the camera 14 in time series, and adds the movement amount to the past position of the robot 10 to estimate the current position of the robot 10. The control processing unit 15 may also extract a feature portion from each piece of information obtained in time series.

[0050] The control processing unit 15 further extracts the same feature portion in the next subsequent captured images. Furthermore, the movement amount of the robot 10 can be calculated by tracking the feature portion. In addition, the control processing unit 15 can calculate the shape of objects on the driving path of the robot 10 using the SLAM (Simultaneous Localization and Mapping) method and the SFM (Structure from Motion) method.

[0051] In addition, the control processing unit 15 uses the ICP (Iterative Closest Point) method to perform map matching that compares the captured image obtained by the camera 14 with the shape information of the objects on the travel path prepared in advance, and can estimate the current position of the robot 10. In addition, the control processing unit 15 processes the information obtained from the external storage device 16. In addition, the control processing unit 15 can also display corresponding to the calculated position and movement amount, or can also output a signal related to the control of the robot 10.

[0052] Furthermore, the control processing unit 15 can process images captured by the camera 14 to detect obstacles while the robot 10 is traveling, or can process images captured by the camera 14 to recognize predetermined landmarks while the robot 10 is traveling, for example.

[0053] In addition, the control processing unit 14 receives the map information stored in the external storage device 16 via the signal receiving unit 13, and loads the received map information into the volatile memory (RAM) 17 for storage. The loaded map information is divided map information pre-divided on the external storage device 16 side, but depending on the situation, it is also possible to generate divided map information by dividing it into predetermined volumes on the robot 10 side.

[0054] In addition, the control processing unit 15 outputs a command related to the moving speed to the robot 10 based on the result of the information processing. For example, the control processing unit 15 can output a command to increase the moving speed of the robot 10, a command to decrease the moving speed of the robot 10, or a command to maintain the moving speed of the robot 10 based on the resolution of the object in the captured image, the number of offset values ​​in the features in the captured image, or the type (method) of information processing.

[0055] The volatile memory (RAM) 17 is a main storage device (main memory) of the robot 10, and may include auxiliary storage devices such as other storage devices. In addition, the control processing unit 15 performs various information processing based on various information stored in the volatile memory (RAM) 17 and the acquisition time. In this information processing, for example, intermediate information is created and stored in the volatile memory (RAM) 17. In addition to the processing of the control processing unit 15, the intermediate information can also be used for judgment and processing of other processing.

[0056] The display control unit 18 performs control to display the status information of the robot 10 and the control action to be performed next. The display control unit 18 displays, for example, information obtained by the camera 14. In addition, it can display the processing results of the control processing unit 15 and the instructions of the control processing unit 15, for example, it can display the destination and the target floor to which the robot 10 will move next. In addition, it can display the surrounding obstacles recognized by the camera 14. In addition, the display control unit 18 can display a loaded map.

[0057] The bus 19 is composed of IEBUS (Inter Equipment Bus), LIN (Local Interconnect Network), CAN (Controller Area Network), and the like.

[0058] The external storage device 16 stores map information including spatial information such as objects on the travel path of the robot 10. The map information of the external storage device 16 is, for example, the shape and position of objects (walls, pillars, signs, lighting, tables, chairs, etc.) on the travel path of the robot 10 that is driven by the navigation unit of the control processing unit 15. The external storage device 16 may also be provided in an external server. In this case, the map information can be transmitted by wireless communication.

[0059] In addition, each map information of the external storage device 16 can also be expressed by a mathematical formula. For example, it is also possible to express line information only by the slope and intercept of the line instead of forming a plurality of points. In addition, the map information of the external storage device 16 can be expressed by a point group without distinguishing the map information. The point group can also be expressed by 3D (x, y, z), 4D (x, y, z, color), etc. Ultimately, as long as the spatial information on the driving path can be detected from the current position of the robot 10 by a camera, etc., and the map is matched with the loaded map information, the expression method of the map information of the external storage device 16 is not limited.

[0060] When receiving a command to start acquiring map information from the control processing unit 15 , the external storage device 16 transfers (loads) necessary divided map information from the map information stored in the external storage device 16 to the volatile memory (RAM) 17 of the robot 10 .

[0061] Here, in the case where the external storage device 16 is an external server not mounted on the robot 10, the robot 10 is connected to the storage device of the external server through the signal receiving unit 2. The connection between the robot 10 and the storage device of the external server is performed by wireless communication, for example, through a LAN (Local Area Network) or a WAN (Wide Area Network). In addition, when the external storage device 16 is mounted on the robot 10, map information is sent and received via the bus 19. In addition, the map information of the external storage device 16 is composed of divided map information divided in advance.

[0062] When receiving a load command from the control processing unit 15, the external storage device 16 transmits the segmented map information on the travel path of the robot 10 stored in the external storage device 16 to the volatile memory (RAM) 17. In addition, the external storage device 16 can also transmit the segmented map information that has been segmented in advance or a part of the segmented map information as the map information.

[0063] Furthermore, the control processing unit 15 has a function of switching the current segmented map information loaded in the volatile memory (RAM) 17 to the next segmented map information at an appropriate predetermined stop position on the travel path. For example, when the robot 10 is traveling on the travel path, if a stop position where the robot does not move and intentionally stops is found, and the segmented map information is switched using the stop time when the robot does not move, the segmented map information can be switched without affecting the travel of the robot. The stop position is not specifically specified, but when the car moves between floors, the landing station of the boarding floor, the inside of the car, and the landing station of the destination floor are applicable.

[0064] Next, a process flow related to switching of the divided map information by the control processing unit 15 will be described with reference to Fig. 2. The robot 10 is configured to move on a travel path by a navigation unit included in the control processing unit 15.

[0065] Here, the switching of the map when the robot 10 moves to a different floor is particularly important, and therefore, this point will be described emphatically in this embodiment. In addition, the processing flow described below can be understood as a function or means executed by a program.

[0066] <<Step S10>> (Destination Setting Unit)

[0067] In step S10, a destination is set when the robot 10 moves to a different floor. The control processing unit 15 can set the destination based on the signal received from the signal receiving unit 13. For example, when a user calls the robot 10 using a portable terminal or wants to move the robot 10 to a specific destination, the destination can be set by sending the destination to the robot 10.

[0068] When the signal receiving unit 13 receives the destination sent by the user, the control processing unit 15 temporarily stores the destination in the volatile memory (RAM) 17, and then accesses the volatile memory (RAM) 17 to set the stored destination. When the destination is set, the process moves to step S11.

[0069] Furthermore, in this embodiment, the control processing unit 15 manages the travel of the robot 10 based on the spatial information (map information) on the travel path obtained by the camera 14. For example, when an obstacle such as an object appears on the travel path of the robot 10, the control processing unit 15 recognizes the obstacle based on the captured image from the camera 14 and avoids the obstacle.

[0070] <Step S11> (Position Estimation Unit)

[0071] In step S11, the current position of the robot 10 is estimated based on the image captured by the camera. The robot 10 is located at the floor of the boarding layer at the current time point. And, as described above, the position estimation can be performed by performing map matching between the captured image and the segmented map information where the robot exists. When the estimation of the current position is completed, the process proceeds to step S12.

[0072] Map matching is to determine the degree of consistency between the photographed object and the object stored as map information, and when a predetermined degree of consistency is reached, the position of the object is estimated as the current position.

[0073] <Step S12> (lifting area map information loading unit)

[0074] In step S12, segmented map information of the vicinity of the elevator landing of the boarding layer is loaded from the external storage device 16. Here, near the elevator landing of the boarding layer, the robot 10 frequently stops temporarily to avoid passengers and obstacles near the landing, so the vicinity of the elevator landing of the boarding layer is pre-set as a predetermined stop location. In addition, the robot 10 also waits for the arrival of the car in front of the entrance and exit, so the front of the entrance and exit is pre-set as a predetermined stop location.

[0075] The loading of the split map information in the vicinity of the elevator landing station of the boarding layer is performed by sending the split map information in the vicinity of the elevator landing station of the boarding layer from the external storage device 16 according to the instruction of the control processing unit 15, and temporarily storing it in the volatile memory (RAM) 17. When the loading of the split map information in the vicinity of the elevator landing station of the boarding layer is completed, the process moves to step S13.

[0076] <Step S13> (lifting area map information loading unit)

[0077] In step S13, segmented map information of the elevator landing near the destination layer is loaded from the external storage device 16. Here, near the elevator landing of the destination layer, the robot 10 frequently stops temporarily to avoid passengers and obstacles near the landing, and therefore, the elevator landing near the destination layer is pre-set as a predetermined stop location.

[0078] The loading of the segmented map information near the elevator landing of the destination floor is performed by sending the segmented map information near the elevator landing of the destination floor from the external storage device 16 according to the instruction of the control processing unit 15, and temporarily storing it in the volatile memory (RAM) 17. When the loading of the segmented map information near the elevator landing of the destination floor is completed, the process moves to step S14.

[0079] Furthermore, in order to move from the boarding floor to the destination floor, the vehicle moves on the elevator car, but the state of being on the car is also set to a predetermined stop position.

[0080] <<Step S14>> (Navigation Unit)

[0081] In step S14, a travel plan (path search) for the robot 10 is prepared. The travel plan finds a travel path for the robot 10 based on the destination set in step S10 and the current position estimated in step S11. A typical path search is the Dijkstra method, but it is not limited thereto, and other path search algorithms can also be used. When the travel plan is completed, the process proceeds to step S15.

[0082] <Step S15> (Travel Time (Waiting Time) Estimation Unit)

[0083] In step S15, the waiting time (TW) of the elevator car of the robot 10 at the landing of the boarding layer is estimated. In this case, the waiting time (TW) of the robot 10 waiting at the landing of the boarding layer can be calculated based on the operation status of the car obtained from the management control device of the elevator. The operation status of the car from the management control device of the elevator is transmitted wirelessly. Alternatively, the waiting time (TW) of the elevator car can be estimated using a statistical method based on the past waiting time.

[0084] When the waiting time (TW) of the elevator car at the boarding floor hall is estimated, the process proceeds to step S16.

[0085] <Step S16> (Travel Time (Travel Time) Estimation Unit)

[0086] In step S16, the travel time (TM) of the car when it moves from the boarding layer to the destination layer is estimated. This travel time can be predetermined, and is basically determined by the difference in the number of floors from the boarding layer to the destination layer. Therefore, the greater the difference in the number of floors, the longer the travel time. However, there is also a situation where the car stops at an intermediate layer, so it is preferably set to a travel time that takes this situation into consideration. In this case, the travel time can also be obtained by a statistical method.

[0087] When the travel time (TM) of the car when moving from the boarding floor to the destination floor is estimated, the process proceeds to step S17.

[0088] <Step S17> (Map Switching Time Estimation Unit)

[0089] In step S17 , a map switching time (Tn) of the divided map information is estimated. The map switching time is the time until the control processing unit 15 refers to the divided map information loaded in the volatile memory (RAM) 17 and estimates the current position.

[0090] That is, it indicates the time from when the current segmented map information (in this embodiment, the segmented map information near the elevator floor station of the boarding floor) is switched to the next segmented map information (in this embodiment, the segmented map information near the elevator floor station of the destination floor) to when the next segmented map information is read out and the current position is estimated.

[0091] Figure 4 The relationship between segmented map information and map switching time is shown. Figure 4 In FIG. 1 , the horizontal axis shows the size of the map as the amount of information of the segmented map, and the vertical axis shows the map switching time. Furthermore, the size / time characteristic line (F) shows the relationship between the size of the segmented map and the map switching time. To help understanding, the size / time characteristic line (F) is shown linearly, but the size / time characteristic line (F) may also be expressed by a characteristic line of a curve or a characteristic line represented by a polynomial.

[0092] The size / time characteristic line (F) can be obtained experimentally based on the size of the segmented map and the time until the control processing unit 15 estimates the current position by referring to the information of the segmented map. Alternatively, it can be obtained theoretically based on the calculation speed of the control processing unit 15 and the transmission speed of the bus 19.

[0093] In short, it is sufficient to be able to predict the time until the current position is estimated based on the switched segmented map. Figure 4 In the above, the size of the divided map (Sn) is the size of a specific divided map, and the map switching time (Tn) is the output when the size of the divided map (Sn) is substituted into the size / time characteristic line (F). Therefore, if the size of the divided map referenced from the volatile memory (RAM) 17 is known, the map switching time (Tn) can be estimated.

[0094] In addition, it is also possible to read out the map switching time and the size of the divided map from a table storing the map switching time and the size of the divided map, regardless of the calculation. When the map switching time (Tn) of the divided map information is estimated, the process proceeds to step S18.

[0095] <<Step S18>> (Map Information Switching Unit)

[0096] In step S18, the temporal relationship between the map switching time (Tn) estimated in step S17 and the waiting time (TW) estimated in step S15 is determined. In other words, it is determined whether the map switching time (Tn) is longer than the waiting time (TW).

[0097] When it is determined that the map switching time (Tn) is long, it is considered that the current position cannot be estimated by referring to the divided map information near the landing station of the destination floor while departing from the current location and waiting at the boarding floor, and the process proceeds to step S1.

[0098] On the other hand, when it is determined that the map switching time (Tn) is short, it is considered that the current position can be estimated by referring to the divided map information near the landing station on the destination floor while departing from the current location and waiting on the boarding floor, and the process proceeds to step S22.

[0099] <<Step S19>> (Map Information Switching Unit)

[0100] In step S19, the temporal relationship between the map switching time (Tn) estimated in step S18 and the car travel time (TM) estimated in step S16 is determined. In other words, it is determined whether the map switching time (Tn) is longer than the car travel time (TM).

[0101] When it is determined that the map switching time (Tn) is long, it is considered that the current position cannot be estimated by referring to the divided map information near the landing of the destination floor during the period when the car cannot be boarded, and the process proceeds to step S20.

[0102] On the other hand, when it is determined that the map switching time (Tn) is short, it is considered that the current position can be estimated by referring to the divided map information near the hall of the destination floor while riding the car, and the process proceeds to step S20.

[0103] <<Step S20>> (Map Information Switching Unit)

[0104] In step S20, "Process A" described later is executed. "Process A" is a process of arriving at the destination floor and referring to the divided map information near the landing of the destination floor to estimate the current position. When "Process A" is executed, the process goes to the end.

[0105] <<Step S21>> (Map Information Switching Unit)

[0106] In step S21, "Processing B" described later is executed. "Processing B" is a process of estimating the current position by referring to the divided map information near the landing of the destination floor while riding in the car. When "Processing B" is executed, the process goes to end.

[0107] <<Step S22>> (Map Information Switching Unit)

[0108] In step S22, the temporal relationship between the map switching time (Tn) estimated in step S17 and the car travel time (TM) estimated in step S16 is determined. In other words, it is determined whether the map switching time (Tn) is longer than the car travel time (TM).

[0109] When it is determined that the map switching time (Tn) is long, it is considered that the current position is estimated by referring to the divided map information near the landing of the destination floor while the car cannot be boarded, and the process proceeds to step S23.

[0110] On the other hand, when it is determined that the map switching time (Tn) is short, it is considered that the current position can be estimated by referring to the divided map information near the landing of the destination floor while riding in the car or at the landing of the riding floor, and the process moves to step S24.

[0111] <<Step S23>> (Map Information Switching Unit)

[0112] In step S23, "Process C" described later is executed. "Process C" is a process of estimating the current position by referring to the divided map information near the landing of the destination floor at the landing of the boarding floor. When "Process C" is executed, the process goes to the end.

[0113] <<Step S24>> (Map Information Switching Unit)

[0114] In step S24, "Process B" or "Process C" described later is executed. "Process B" and "Process C" are as described above. When "Process B" or "Process C" is executed, the process goes to End.

[0115] The control steps before executing the above "Processing A" to "Processing C" are pre-processing before the robot 10 starts to travel. Next, the specific processing of "Processing A" to "Processing C" will be described. Figure 3A As shown in Figure 3B As shown in the figure, "Process C" Figure 3C Shown in.

[0116] Regarding [Process A] (switching the split map information at the landing of the destination floor);

[0117] <Step S30>

[0118] In step S30, the robot 10 starts to move toward the landing of the boarding floor according to the floor segmentation map information of the boarding floor. The movement of the robot 10 follows the travel plan set in step S14. The robot 10 moves while estimating its current position. In this state, the process moves to step S31.

[0119] <Step S31>

[0120] In step S31, the robot 10 moves along the travel path while estimating the current position, and determines whether it has reached the vicinity of the landing station of the boarding layer. If it is determined that it has reached the vicinity of the landing station of the boarding layer, the vicinity of the elevator landing station of the boarding layer is set as a predetermined stop location, so the robot 10 temporarily stops. When the robot stops, the process transfers to step S32.

[0121] <Step S32>

[0122] In step S32, a process of switching from the floor division map information of the boarding floor to the division map information near the landing of the boarding floor is executed. This process is a process of switching from the floor division map information of the current boarding floor to the division map information near the elevator landing of the next boarding floor.

[0123] When the switch is performed, the robot 10 is not traveling but stops temporarily when it reaches the boarding floor. Therefore, even if the map switch time described above occurs, it does not become a waiting time. When the map switch is completed, the process moves to step S33.

[0124] <Step S33>

[0125] In step S33, the robot 10 starts moving toward the entrance in front of the elevator while estimating the current position based on the divided map information in the vicinity of the landing of the switched boarding floor. When the robot 10 starts moving, the process proceeds to step S34.

[0126] <Step S34>

[0127] In step S34, the current position is estimated based on the segmented map information near the landing station of the switched boarding floor, and a determination is made as to whether the current position has arrived in front of the entrance of the elevator. If it is determined that the current position has arrived in front of the entrance, the process moves to step S35.

[0128] <Step S35>

[0129] In step S35, the robot 10 takes the arrived car and sets out to the destination floor. In addition, at this time, the opening of the entrance is narrow, and when the position error obtained in the position estimation in step 34 is large, the robot 10 does not enter the elevator car.

[0130] In this case, the camera 14 can be used to detect the opening of the door of the elevator entrance, and the relative position can be calculated while entering the elevator car. The details of the opening detection process of the door of the elevator entrance will be described later. When arriving at the destination floor, transfer to step S36.

[0131] <Step S36>

[0132] In step S36, the robot 10 goes down from the entrance of the destination floor to the landing of the destination floor. Here, the vicinity of the landing of the destination floor is set as a predetermined stop location, so the robot 10 temporarily stops. When the robot stops, the process moves to step S37.

[0133] <Step S37>

[0134] In step S37, the map information between floors is switched. This process switches the segmented map information near the landing station of the current boarding floor to the segmented map information near the landing station of the next destination floor. When the switch is performed, the robot 10 is not traveling, but intentionally stops temporarily by getting off the stairs at the landing station of the destination floor. Therefore, even if the above-mentioned map switching time occurs, it does not become a waiting time. And when the switching of the segmented map information is completed, it transfers to step S38.

[0135] When switching the map information, a safe stopping place is found based on the information from the camera 14 immediately after getting off the elevator car, and the switching of the segmented map information is performed. The safe stopping place is, for example, near the wall of the elevator hall that does not hinder the walking of passengers, etc. Alternatively, the safe stopping place may be a specific place determined in advance in each elevator hall.

[0136] <Step S38>

[0137] In step S38, the robot 10 starts moving toward the destination while estimating the current position based on the divided map information of the vicinity of the landing of the switched destination floor. When the robot 10 starts moving, the process goes to the end.

[0138] Regarding [Processing B] (Switching split map information in the car);

[0139] This "processing B" is a process of switching the map between floors in step S37 during the movement of the car between step S35 and step S36. In the state of riding in the car, the robot intentionally stops without moving, so it is set to a predetermined stop position. In addition, the specific processing content is the same as that of "processing A", so the description is omitted.

[0140] Regarding [Process C] (Switching the split map information before the entrance and exit of the boarding floor);

[0141] This "processing C" is a process of switching the inter-floor map of step S37 before the entrance and exit of the boarding floor between steps S34 and S35. Before the entrance and exit, the robot 10 intentionally stops and waits for the arrival of the car, so it is set to a predetermined stop position. In addition, the specific processing content is the same as that of "processing A", so the description is omitted.

[0142] Next, the behavior of the robot 10 when moving from the boarding floor to the destination floor in the above-mentioned processing flow will be supplementally described.

[0143] exist Figure 5In the figure, the vicinity of the elevator landing station (EH1) of the boarding layer is the area of ​​the elevator car where the robot 10 takes the elevator. For convenience, the vicinity of the elevator landing station (EH1) of the boarding layer is set as the 1st floor of the building. The elevator car 20 is a car for the robot 10 to move from the boarding layer to the destination layer. The vicinity of the elevator landing station (EHn) of the destination layer is the vicinity of the elevator landing station of the destination layer set as the destination by the robot 10. The vicinity of the elevator landing station (EHn) of the destination layer is set as the nth floor of the building. Here, in this embodiment, the vicinity of the elevator landing station refers to the elevator hall.

[0144] The robot 10 is present near the elevator landing of the boarding floor (EH1), and the passenger 21 is present near the elevator landing of the destination floor (EHn). The divided map information (M1), (M2) ... (Mn) is divided map information for each floor of the building.

[0145] Here, consider the case where the robot 10 moves from the 1st floor to the nth floor according to the command of the control processing unit 15. In step S12, the robot 10 loads the segmented map information (M1) near the elevator landing station (EH1) of the boarding floor, and in step S13, loads the segmented map information (Mn) near the elevator landing station (EHn) of the destination floor.

[0146] Then, the robot 10 moves to the front of the elevator car 20 while referring to the divided map information (M1) in the vicinity of the elevator landing of the boarding floor. Next, the divided map information (Mn) of the nth floor set as the target floor is switched.

[0147] The switching timing of the segmented map information is determined by the time (TG+TW) that the robot 10 waits for the arrival of the car near the elevator landing (EH1) on the first floor from the current position, the travel time (TM) that the robot 10 takes to move from the first floor to the nth floor in the elevator car, and Figure 4 The map switching time (Tn) shown is determined.

[0148] This is like Figure 2B As shown, the robot 10 switches from the segmented map information (M1) near the elevator floor station of the boarding floor (EH1) to the segmented map information (Mn) near the elevator floor station of the destination floor (EHn) when it is stopped at the elevator floor station of the boarding floor waiting for the car, when it is stopped after boarding the car, and when it is stopped at the elevator floor station of the destination floor after getting off the car.

[0149] Next, the opening detection process performed in step S35 is described. The robot 10 always performs position estimation at a predetermined time interval (step S11), but due to the influence of the driving environment and obstacles, there is a case where the error of the position estimation becomes larger. In particular, when the opening of the elevator entrance and exit is narrow and the position of the entrance and exit cannot be estimated with high accuracy, the robot 10 may not be able to pass through the elevator entrance and exit. Therefore, the opening detection process is required.

[0150] exist Figure 6 and Figure 7 , the car 20 arrives at the elevator hall and the door 22 of the entrance is opened. The robot 10 uses the camera 14 to capture an image of the entrance at a viewing angle (θ).

[0151] If the position error of the robot 10 estimated in step S11 is large, the robot 10 cannot pass through the narrow opening of the door 22. Therefore, the robot 10 is rotated left and right using the camera 14 while measuring the distance to the surrounding objects including the door 22.

[0152] Figure 7 The distance to the surrounding objects obtained by the camera 14 after the robot 10 rotates left and right is shown. The corner Cn is the corner on the left and right sides of the door 22. The corner Cn is the edge portion obtained by calculating the change in the distance to the object (here, the door 22 and the car 20 are extracted and shown).

[0153] In addition, the data is set as an image, and the corner Cn is calculated using the HCD (Harris Corner Detection) method. In short, it is sufficient to finally find the corner Cn. And, the robot 10 takes the elevator car 20 while using the relative position of the detected corner Cn as a reference, and then gets off the elevator at the destination floor.

[0154] If the position error of the robot 10 estimated in step S11 is large, Figure 7 However, when the position error is small, it is possible to board the elevator car 20 and get off the elevator only at the position estimated in step S11.

[0155] The judgment of the error of the position estimation can be made, for example, based on the error ellipse in the SLAM method performed by the camera 14. In addition, when the error ellipse when the robot 10 is riding in the elevator car 20 or getting off the elevator exceeds a predetermined threshold, the opening detection process can be performed. In addition, the judgment can also be made by realizing the matching score of the ICP method performed by the camera 14, the score (distance to the nearest point).

[0156] The rotation angle of the robot 10 required for the opening detection process can be calculated based on, for example, the position error of the robot 10 estimated in step S11 and the viewing angle (θ).

[0157] Next, the behavior of the robot 10 when moving from the boarding floor to the destination floor and the flow of dividing the map information will be described. Figure 8 , showing the situation of moving from the current location on the 1st floor to the destination on the 6th floor.

[0158] exist Figure 8 In the figure, the robot 10 is traveling on the first floor (FL1). In this case, the robot 10 travels with reference to the floor segmentation map information (M1F). When the robot 10 reaches the elevator hall (EH1) on the first floor, the robot 10 moves to the entrance and exit of the elevator with reference to the segmentation map information (M1H) of the elevator hall (EH1) on the first floor.

[0159] When the vehicle arrives at the elevator hall (EH6) on the 6th floor by taking the car, the vehicle travels with reference to the divided map information (M6H) of the elevator hall (EH6) on the 6th floor, and moves to the destination with reference to the divided floor map information (M6F) on the 6th floor.

[0160] According to the robot's behavior, Figure 2B , Figure 3A to Figure 3C The processing steps shown are to move toward the destination while switching and referring to the divided map information used for the calculation of position estimation.

[0161] In addition, when there is a passenger 21 in the elevator hall (EH6) on the 6th floor, the robot 190 can also temporarily stop, and after confirming that there is no passenger 21 using the image captured by the camera 14, move to a safe place and switch to the segmented map information (M6H) of the elevator hall (EH6).

[0162] As described above, in the present invention, when the elevator car is used to move to a destination across multiple floors determined by the control unit, the present invention has: a lifting area map information loading unit, which loads at least the segmented map information near the boarding floor elevator floor station and the segmented map information near the destination floor elevator floor station into a memory before the robot moves toward the boarding floor elevator floor station; a navigation unit, which uses the segmented map information near the boarding floor elevator floor station and the segmented map information near the destination floor elevator floor station stored in the memory to determine the travel path from the current position to the destination; and a moving time estimating unit, which estimates the travel time from the boarding floor elevator floor station to the destination floor station. The invention relates to a map switching time estimating unit, which calculates the map switching time from the divided map information near the boarding layer elevator station to the divided map information near the destination layer elevator station to estimate the current position; and a map information switching unit, which determines the relationship between the moving time and the map switching time and determines the stopping position when switching from the divided map information near the boarding layer elevator station to the divided map information near the destination layer elevator station.

[0163] According to the present invention, in a robot moving toward a destination, the robot is not intentionally stopped when switching divided map information, and thus it is possible to suppress generation of useless waiting time for estimating the current position.

[0164] In addition, the present invention is not limited to the above-mentioned several embodiments, and includes various modified examples. The above-mentioned embodiments are described in detail in order to easily understand the present invention, and are not limited to having all the structures described. In addition, a part of the structure of a certain embodiment can be replaced with the structure of other embodiments, and the structure of other embodiments can be added to the structure of a certain embodiment. For the structure of each embodiment, other structures can also be added, deleted, or replaced.

Claims

1. A robot that uses an elevator car to move to a target position across multiple floors determined by a control unit, characterized in that: The control unit has: a lifting area map information loading unit, which loads at least segmented map information near the boarding layer elevator landing station and segmented map information near the destination layer elevator landing station into a memory before the robot moves to the boarding layer elevator landing station; a navigation unit that uses the segmented map information of the vicinity of the elevator landing station on the boarding floor and the segmented map information of the vicinity of the elevator landing station on the destination floor stored in the memory to find a travel route from a current position to a destination position; a moving time estimating unit for estimating each moving time in a travel path from the boarding floor elevator landing to the destination floor elevator landing to a predetermined stop position where the robot is in an intentionally stopped state; a map switching time estimating unit for calculating the map switching time from the split map information near the boarding floor elevator station to the split map information near the destination floor elevator station until the split map information near the destination floor elevator station is read to estimate the current position; as well as a map information switching unit for determining the relationship between each of the moving times and the map switching time, and determining the predetermined stopping position for switching from the segmented map information near the boarding floor elevator landing station to the segmented map information near the destination floor elevator landing station, The predetermined stopping location is at least the boarding floor elevator landing, the car in which the robot is riding, and the destination floor elevator landing. Each of the moving times is at least the waiting time at the boarding floor elevator landing and the boarding time of the car that the robot is boarding. When the map switching time is longer than the waiting time and longer than the riding time, the map information switching unit switches the map information at the destination elevator landing. When the map switching time is longer than the waiting time and shorter than the boarding time, the map information switching unit switches the map information of the car in which the robot is boarding. When the map switching time is shorter than the waiting time and longer than the boarding time, the map information switching unit switches the map information at the boarding floor elevator landing. When the map switching time is shorter than the waiting time and shorter than the boarding time, the map information switching unit switches the map information in the car in which the robot is boarding or the boarding floor elevator hall.

Citation Information

Patent Citations

  • Mobile robot

    JP2017021570A

  • IMU-based floor measurement method and robot cross-floor navigation method

    CN107655471A

  • Robot and cross-floor navigation method and device thereof

    CN112212866A