Driving map creation device, driving map creation method, and program
The driving map creation device addresses inaccuracies in autonomous robot positioning by using a position sensor and marker identification to create precise maps, enhancing navigation accuracy and safety.
Patent Information
- Application Number
- JP2023531345
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-30
- Filing Date
- 2021-11-19
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2041-11-19
AI Technical Summary
Existing map creation devices for autonomous robots inaccurately calculate their position when stationary, leading to inaccurate driving maps.
A driving map creation device that includes a position sensor, imaging unit, control unit, and mode switching mechanism to accurately create a floor map and identify markers, setting no-entry areas for autonomous navigation.
Enables the creation of high-accuracy driving maps for autonomous robots by accurately calculating position and identifying markers, ensuring safe and efficient navigation.
Smart Images

Figure 0007752364000001 
Figure 0007752364000002 
Figure 0007752364000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a driving map creation device, a driving map creation method, and a program. [Background technology]
[0002] For example, Patent Document 1 discloses an apparatus and method for generating no-entry information, such as the location of areas where entry by an autonomously moving robot is prohibited, in which a person carries reflective material to a predetermined location and uses a position sensor to measure the relative position of the reflective material to create a driving map. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 6742479 Summary of the Invention [Problem to be solved by the invention]
[0004] However, with the technology described in Patent Document 1, when a person carries a reflective material, the position sensor may measure the relative position of the reflective material, causing a phenomenon in which the map creation device calculates its own position as if it were moving, even though the map creation device is stationary. As a result, it may not be possible to create a driving map with high accuracy.
[0005] Therefore, the present disclosure provides a driving map creation device and the like that can create a driving map for an autonomous driving robot with high accuracy. [Means for solving the problem]
[0006] In order to achieve the above-mentioned object, a traveling map creation device according to one aspect of the present disclosure is a traveling map creation device that creates a map for navigation of an autonomously traveling robot that travels autonomously within a specified floor, and includes: a position sensor that detects objects around the device and acquires the positional relationship of the objects relative to the device; a floor map creation unit that creates a floor map showing the specified floor based on the positional relationship acquired by the position sensor; a self-position calculation unit that calculates the position of the device on the floor map created by the floor map creation unit; a marker identification unit that identifies markers present around the device; a marker position calculation unit that calculates the relative position of the marker relative to the device; a mode switching unit that switches between a floor map creation mode that creates the floor map and a marker identification mode that identifies the marker; a no-entry information generation unit that sets boundaries of no-entry areas that prohibit entry of the autonomously traveling robot based on the floor map, the device's position, and the relative position of the marker, and generates no-entry information including boundary information that indicates the set boundaries; and a traveling map creation unit that creates a traveling map in which no-entry areas are set based on the no-entry information generated by the no-entry information generation unit.
[0007] Furthermore, a travel map creation method according to one aspect of the present disclosure is a travel map creation method for creating a travel map for an autonomously traveling robot that travels autonomously within a predetermined floor, the method including a positional relationship acquisition step of detecting an object around the robot and acquiring a positional relationship of the object relative to the robot, a floor map creation step of creating a floor map showing the predetermined floor based on the positional relationship acquired in the positional relationship acquisition step, a self-position calculation step of calculating the position of the robot on the floor map created in the floor map creation step, a marker identification step of identifying markers present around the robot, and a marker identification step of identifying the markers relative to the robot. The method includes a marker position calculation step of calculating the relative position of the marker, a mode switching step of switching between a floor map creation mode of creating the floor map and a marker identification mode of identifying the marker, a no-entry information generation step of setting boundaries of a no-entry area that prohibits entry of the autonomously traveling robot based on the floor map, the self-position, and the relative positions of the markers, and generating no-entry information including boundary information that indicates the set boundaries, and a driving map creation step of creating a driving map in which no-entry areas are set based on the no-entry information generated in the no-entry information generation step.
[0008] The present disclosure may be realized as a program for causing a computer to execute the driving map creation method. It may also be realized as a non-transitory recording medium, such as a CD-ROM, on which the program is recorded and which can be read by a computer. The present disclosure may also be realized as information, data, or signals representing the program. These programs, information, data, and signals may be distributed via a communication network, such as the Internet. [Effects of the Invention]
[0009] According to the travel map creation device and the like of the present disclosure, a travel map for an autonomous travel robot can be created with high accuracy. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a block diagram showing an example of the configuration of an autonomous traveling robot system to which a traveling map creation device according to an embodiment is applied. [Figure 2] FIG. 2 is a perspective view of the navigation map creation device according to the embodiment, seen from diagonally above. [Figure 3] FIG. 3 is a front view of the navigation map creation device according to the embodiment, as seen from the front side. [Figure 4] FIG. 4 is a perspective view showing the external appearance of the autonomous mobile robot according to the embodiment as seen from the side. [Figure 5] FIG. 5 is a perspective view showing the external appearance of the autonomous mobile robot according to the embodiment as viewed from the front. [Figure 6] FIG. 6 is a bottom view showing the appearance of the autonomous mobile robot according to the embodiment as seen from the rear side. [Figure 7] FIG. 7 is a flowchart illustrating a first example of the operation of the driving map creation device according to the embodiment. [Figure 8] FIG. 8 is a flowchart showing a second example of the operation of the navigation map creation device according to the embodiment. [Figure 9] FIG. 9 is a flowchart illustrating a third example of the operation of the driving map creation device according to the embodiment. [Figure 10] FIG. 10 is a flowchart illustrating a fourth example of the operation of the navigation map creation device according to the embodiment. [Figure 11] FIG. 11 is a flowchart illustrating a fifth example of the operation of the navigation map creation device according to the embodiment. [Figure 12] FIG. 12 is a diagram for schematically explaining an example of boundary setting processing based on a first marker. [Figure 13] FIG. 13 is a diagram for schematically explaining an example of boundary setting processing. [Figure 14] FIG. 14 is a diagram illustrating an example of display information. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, embodiments of a driving map creation device and the like according to the present disclosure will be described in detail with reference to the drawings. Note that each of the embodiments described below represents a preferred specific example of the present disclosure. Therefore, the numerical values, shapes, materials, components, component arrangements and connection forms, steps, step order, and the like shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components in the following embodiments, components not recited in independent claims will be described as optional components.
[0012] The accompanying drawings and the following description are provided to enable those skilled in the art to fully understand the present disclosure, and are not intended to limit the subject matter described in the claims.
[0013] Furthermore, each drawing is a schematic diagram and is not necessarily an exact illustration. In each drawing, substantially the same components are denoted by the same reference numerals, and duplicated explanations may be omitted or simplified.
[0014] In addition, in the following embodiments, an autonomous mobile robot traveling on the floor surface of a specified floor may be described as a top view when viewed from vertically above, and as a bottom view when viewed from vertically below.
[0015] (Embodiment) [Autonomous Driving Robot System] [1. Overview] First, an overview of an autonomous mobile robot system to which a mobile map creation device according to an embodiment is applied will be described. The autonomous mobile robot system is a system that creates a mobile map for the autonomous mobile robot to autonomously navigate a predetermined floor and provides the mobile robot with the mobile map. The mobile map includes no-entry areas for the autonomous mobile robot. The autonomous mobile robot uses the mobile map to create a travel plan based on its own position and obstacle information on the mobile map. This allows the autonomous mobile robot to navigate a predetermined floor safely and appropriately.
[0016] The predetermined floor is, for example, a floor surrounded by walls within a building. The building may be, for example, a facility such as a hotel, a commercial facility, an office building, a hospital, a nursing home, an art museum, or a library, or may be an apartment building or other collective housing. Note that the predetermined floor is not limited to a floor within a building, and may be, for example, a space between buildings.
[0017] [2. Configuration] Next, the configuration of the autonomous traveling robot system will be described. Fig. 1 is a block diagram showing an example of the configuration of an autonomous traveling robot system to which a traveling map creation device according to an embodiment is applied.
[0018] As shown in Fig. 1, the autonomous mobile robot system 400 includes, for example, a mobile map creation device 100, an information terminal 200, and an autonomous mobile robot 300. The mobile map creation device 100, the information terminal 200, and the autonomous mobile robot 300 are communicatively connected via a network 10. Fig. 1 shows an example in which the autonomous mobile robot 300 is a cleaning robot, but is not limited to this. Each component will be described below.
[0019] [2-1. Driving map creation device] First, the navigation map creation device 100 will be described. Fig. 2 is a perspective view of the navigation map creation device 100 according to the embodiment, seen from diagonally above. Fig. 3 is a front view of the navigation map creation device 100 according to the embodiment, seen from the front.
[0020] The traveling map creation device 100 is a device that creates a map for traveling of the autonomous traveling robot 300 that travels autonomously on a predetermined floor. More specifically, while traveling on a predetermined floor in response to a user's operation, the traveling map creation device 100 sets no-entry areas where the autonomous traveling robot 300 is prohibited from entering based on the floor map and the relative positions of its own position and markers, and creates a traveling map that includes the set no-entry areas.
[0021] For example, as shown in Fig. 2, the traveling map creation device 100 may be placed on a dolly 190 and moved on a predetermined floor by a user's operation. In this example, the user pushes the dolly 190 to move the traveling map creation device 100. For example, a stand 192 for placing the information terminal 200 may be attached to a handle 191 of the dolly 190, or a presentation unit (not shown) of the traveling map creation device 100 may be installed. The presentation unit may be a so-called display panel.
[0022] 2, the driving map creation device 100 may be provided with a driving unit including wheels and a motor for rotating the wheels on the main body 101 of the driving map creation device 100, and may be driven within a floor by operation of a remote control, etc. Also, for example, the driving map creation device 100 may further be provided with a steering wheel on the main body 101, in which case the user may drive the driving map creation device 100 by operating the steering wheel.
[0023] Next, we will explain the configuration of the navigation map creation device 100. As shown in Fig. 1, the navigation map creation device 100 includes, for example, a position sensor 110, an imaging unit 112, a control unit 120, a storage unit 130, a reception unit 140, a notification unit 150, and a communication unit 160. Each component will be explained below.
[0024] [Position sensor] The position sensor 110 detects objects around the traveling map creation device 100 and acquires the positional relationship of the objects relative to the traveling map creation device 100. For example, the position sensor 110 is disposed in the center of the top surface of the main body 101 and acquires the positional relationship, including the distance and direction, between the traveling map creation device 100 and objects, including walls, present around the traveling map creation device 100. The position sensor 110 may be, for example, a LIDAR (Laser Imaging Detection And Ranging) device that emits light and detects the positional relationship based on the light reflected by an obstacle, or a laser range finder. The position sensor 110 may have one or two optical scanning axes to perform two-dimensional or three-dimensional measurement of a predetermined area around the traveling map creation device 100.
[0025] The traveling map creation device 100 may include other types of sensors in addition to the position sensor 110. For example, the traveling map creation device 100 may further include a floor sensor, an encoder, an acceleration sensor, an angular velocity sensor, a contact sensor, an ultrasonic sensor, a distance measurement sensor, etc.
[0026] [Image capture unit] The imaging unit 112 is an imaging device that captures images of the surroundings of the navigation map creation device 100. For example, the imaging unit 112 captures an image including markers around the navigation map creation device 100. The image may be a single image or a moving image. The imaging unit 112 may be disposed on the front surface of the main body 101 or may be rotatably disposed on the top surface. The imaging unit 112 may also be composed of multiple cameras. The imaging unit 112 may be, for example, a stereo camera or an RGB-D camera. The RGB-D camera acquires depth image data (Depth) in addition to color image data (RGB). For example, as shown in FIG. 3, when the imaging unit 112 is an RGB-D camera, the imaging unit 112 may include an RGB camera 112a, an infrared sensor 112b, and a projector 112c.
[0027] [Control Unit] The control unit 120 performs various information processes to control the operation of the driving map creation device 100. Specifically, the control unit 120 is realized by a processor, a microcomputer, or a dedicated circuit. The control unit 120 may also be realized by a combination of two or more of the processor, the microcomputer, or the dedicated circuit. For example, the control unit 120 includes an acquisition unit 121, a mode switching unit 122, a self-position calculation unit 123, a floor map creation unit 124, a marker identification unit 125, a marker position calculation unit 126, a no-entry information generation unit 127, and a driving map creation unit 128.
[0028] The acquisition unit 121 acquires, for example, the positional relationship of surrounding objects with respect to the main body 101 of the navigational map creation device 100 acquired by the position sensor 110. The acquisition unit 121 also acquires image data captured by the imaging unit 112. Furthermore, if the navigational map creation device 100 includes other types of sensors in addition to the position sensor 110, the acquisition unit 121 may acquire sensor information acquired by the other types of sensors.
[0029] The mode switching unit 122 switches the operation mode of the traveling map creation device 100. Specifically, the mode switching unit 122 switches between a floor map creation mode for creating a floor map and a marker identification mode for identifying markers. For example, the mode switching unit 122 may switch between the floor map creation mode and the marker identification mode in accordance with a mode switching instruction received by the receiving unit 140. The receiving unit 140 will be described in detail later. Furthermore, for example, the mode switching unit 122 may switch to the floor map creation mode when the traveling map creation device 100 is traveling, and to the marker identification mode when the traveling map creation device 100 is stationary. In this way, the mode switching unit 122 may switch the mode in accordance with an instruction, or may automatically switch the mode depending on the movement (e.g., whether the traveling map creation device 100 is traveling or stationary) of the traveling map creation device 100.
[0030] The self-position calculation unit 123 calculates the self-position, which is the position of the traveling map creation device 100 on the floor map, using the positional relationship acquired by the position sensor 110 and the floor map created by the floor map creation unit 124. For example, the self-position calculation unit 123 calculates the self-position using SLAM (Simultaneous Localization and Mapping) technology. Note that when the traveling map creation device 100 uses SLAM technology, the self-position calculation unit 123 and the floor map creation unit 124 create a floor map while calculating the self-position, and successively update the self-position and floor map.
[0031] The floor map creation unit 124 creates a floor map showing a specific floor. The floor map creation unit 124 creates the floor map based on information (i.e., positional relationship) obtained by measuring the positions and distances of surrounding objects by the position sensor 110. The floor map creation unit 124 may create a floor map of the surrounding environment (objects such as walls and furniture) of the traveling map creation device 100 using, for example, SLAM technology, based on the information (i.e., positional relationship) obtained by the position sensor 110. Note that the floor map creation unit 124 may create the floor map by adding information from other sensors such as wheel odometry and gyro sensors in addition to sensing information from the position sensor 110 (e.g., LIDAR). Note that the floor map creation unit 124 may acquire the floor map from, for example, the information terminal 200 or a server (not shown), or may read out a floor map stored in the storage unit 130.
[0032] The marker identification unit 125 identifies markers around the main body 101 of the driving map creation device 100. For example, the marker identification unit 125 detects markers included in sensing data (e.g., sensing data for measuring positional relationships, image data, etc.) acquired by the position sensor 110 or the imaging unit 112. For example, the marker identification unit 125 may detect markers by analyzing images captured by the imaging unit 112 and identifying marker features such as the outline, pattern, and color of the marker. Alternatively, for example, the marker identification unit 125 may detect markers by analyzing time-series data of the reflection intensity of the marker acquired by the position sensor 110 and identifying marker features such as the outline and pattern of the marker. Alternatively, for example, the marker identification unit 125 may refer to marker information stored in the storage unit 130 and identify the marker or the marker and the type of marker based on the marker information corresponding to the identified marker features. The types of markers will be described later.
[0033] The marker position calculation unit 126 calculates the relative position of the marker with respect to the main body 101 of the traveling map creation device 100. For example, the marker position calculation unit 126 calculates spatial information by performing projective transformation based on the vertices of the marker's contour identified by the marker identification unit 125. For example, the marker position calculation unit 126 projectively transforms the marker into a predetermined rectangle based on the position of the marker in the image and the distortion of the contour, which are determined depending on the angle and distance from the camera, and calculates a transformation matrix (view matrix) and angle of view from a marker coordinate system, which has the marker as its origin and the plane on which the marker is located as the horizontal plane (XY plane), to the camera coordinate system. Note that the origin of the marker coordinate system is set to, for example, a predetermined vertex or center of gravity of the rectangular marker. The calculation of such a transformation matrix can be performed using an existing method or library. Regarding the angle of view, for example, information about the lens included in the imaging unit 112 to be used may be stored in advance, and the information about the angle of view may be acquired based on that information. Furthermore, instead of a transformation matrix from the marker coordinate system to the camera coordinate system, a transformation matrix to the marker coordinate system based on the camera coordinate system may be calculated.
[0034] The no-entry information generation unit 127 generates no-entry information indicating no-entry areas into which the autonomous mobile robot 300 is prohibited from entering, based on a floor map, its own position, and the relative positions of the markers. For example, a timestamp is attached to each of the own position of the traveling map creation device 100 on the floor map and the relative positions of the markers with respect to the traveling map creation device 100. In this case, the no-entry information generation unit 127 may refer to these timestamps and calculate the position of the marker on the floor map (i.e., coordinate information) based on the own position and the relative positions of the markers at the same time. Based on the positions (coordinate information) of multiple markers calculated in this manner, the no-entry information generation unit 127 may generate no-entry information including boundary information indicating the boundary between the no-entry area and the traveling area (travelable area) of the autonomous mobile robot. Note that the no-entry information generation unit 127 may determine the boundary not only based on the positions of the markers, but also, for example, to define an area surrounded by a wall and the positions of multiple markers as the no-entry area.
[0035] Furthermore, when the marker type is identified by the marker identification unit 125, the no-entry information generation unit 127 may generate no-entry information corresponding to the marker type. The marker type is at least one of a reflective marker, an identification marker, projected light, body movement (so-called gesture), and the number of fingers. Details of the marker types will be described in the fourth and fifth examples of movements. The markers may include, for example, a first marker for setting a boundary and a second marker that is different from the first marker and does not set the boundary. More specifically, the markers include, for example, a first marker that sets one boundary with two markers and a second marker that sets a boundary that surrounds an area of a predetermined size and shape as a no-entry area with one marker (for example, a U-shaped boundary 41a1 in (b) of FIG. 13). The first marker is, for example, a marker for setting the boundary between a drivable area and a no-entry area. The first marker is used to set a line connecting two paired first markers as a boundary. More specifically, when there is only one pair of a first marker and another first marker adjacent to the first marker in a first direction parallel to the wall surrounding the first marker in a top view of the floor map or in a second direction perpendicular to the first direction, the first marker is used to set a line connecting the pair of first markers as a boundary. The second marker is, for example, a marker for setting a boundary surrounding a no-entry area. The second marker is, for example, a marker for setting a boundary surrounding an area of a predetermined size and shape as a no-entry area around an obstacle (e.g., a flowerpot, a fire extinguisher, or other object that is difficult to detect by the position sensor 110) installed on a predetermined floor. For example, the second marker may set a polygonal boundary such as a triangle, a rectangle, or a pentagon, or may set a circular or elliptical boundary. Furthermore, if the second marker is attached to a wall, for example, the no-entry area may be an area of a predetermined size and shape that is surrounded by the wall and the boundary set by the second marker. For example, a rectangular area surrounded by the wall to which the second marker is attached and a U-shaped boundary is a so-called no-entry area. Note that the first marker and the second marker are merely examples and are not limited to these.For example, the first marker is entirely made of a highly reflective material, and the second marker is made of a material with high and low reflectivity. These markers may be stickers, plates, or poles.
[0036] For example, the no-entry information generator 127 may refer to a database in which the types of markers or combinations of marker types are associated with the no-entry information and generate no-entry information corresponding to the types of markers. The no-entry information associated with the types of markers is, for example, information that cannot be acquired by the position sensor 110, such as boundary attributes or the approachable distance to the boundary. The boundary attributes are, for example, information indicating whether the location is a place where the autonomous mobile robot 300 is not desired to enter, or a place where the autonomous mobile robot 300 cannot enter. Furthermore, for places where the autonomous mobile robot 300 cannot enter, information may be added, such as whether the location is a glass surface that is difficult for the position sensor 110 to detect, or whether the location is a step such as a staircase.
[0037] The no-entry information generating unit 127 may correct the positional deviation of multiple markers so that the marker boundaries become straight lines, or may supplement boundaries between the start point and the end point and the wall, or may draw boundaries at a certain distance from the marker positions.
[0038] The driving map creation unit 128 creates a driving map in which no-entry areas are set that prohibit the autonomous mobile robot 300 from entering, based on the no-entry information generated by the no-entry information generation unit 127. Furthermore, the driving map creation unit 128 may modify the driving map based on the no-entry information modified by the no-entry information generation unit 127.
[0039] [Storage] The storage unit 130 is a storage device that stores a control program for controlling the operation of the control unit 120, etc. For example, the storage unit 130 may store a floor map created by the floor map creation unit 124, a positional relationship acquired by the position sensor 110, a relative position of a marker calculated by the marker position calculation unit 126, a database, entry no-entry information generated by the entry no-entry information generation unit 127, and a driving map created by the driving map creation unit 128, etc. The storage unit 130 is realized by, for example, an HDD (Hard Disk Drive), a flash memory, etc.
[0040] [Reception] The reception unit 140 is a user interface that receives instructions from a user. Here, the user is a user of the driving map creation device, and may be a person or a robot. The reception unit 140 may be realized by, for example, a touch panel, a display panel, hardware buttons, a camera, or a microphone. The display panel has a function of displaying images and a function of receiving manual input from the user, and receives input operations to a numeric keypad image displayed on a display panel such as a liquid crystal panel or an organic EL (Electro Luminescence) panel. The microphone receives voice input from the user.
[0041] For example, when the reception unit 140 receives an input operation for an instruction to switch modes, the instruction may be input to the touch panel by tapping a mode switching tab displayed on the display panel. Also, for example, the mode switching instruction may be input by capturing a voice saying "floor map creation mode" with a microphone, or the instruction to switch to "marker identification mode" may be input by capturing an image with both arms crossed in front of the chest with a camera.
[0042] Note that, although an example is shown here in which the reception unit 140 is a component of the traveling map creation device 100, the reception unit 140 may be integrated with at least one of the other components of the autonomous traveling robot system 400. For example, the reception unit 140 may be incorporated into the information terminal 200, a remote controller (not shown), or the autonomous traveling robot 300.
[0043] [Notification Department] The notification unit 150 notifies the user that the marker identification unit 125 has identified a marker using at least one of sound, light, and an image. The notification unit 150 is realized, for example, by at least one of a speaker, a lamp, and a display panel. The speaker outputs sound or audio. The lamp lights up or blinks. The display panel is a liquid crystal panel, an organic EL panel, or the like, and displays an image.
[0044] [Communications Department] The communication unit 160 is a communication circuit that enables the traveling map creation device 100 to communicate with the information terminal 200 and the autonomous traveling robot 300 via the network 10. For example, the communication unit 160 may transmit to the information terminal 200 an instruction to notify that the marker identification unit 125 has identified a marker. Furthermore, for example, the communication unit 160 may transmit a traveling map to the autonomous traveling robot 300. The communication unit 160 may include a communication circuit (communication module) for communicating via a wide area communication network and a communication circuit (communication module) for communicating via a local communication network. The communication unit 160 is, for example, a wireless communication circuit that performs wireless communication. There are no particular limitations on the communication standard used for communication by the communication unit 160.
[0045] [2-2. Information terminal] Next, the information terminal 200 will be described. The information terminal 200 is, for example, a portable information terminal such as a smartphone or tablet terminal owned by a user, but may also be a stationary information terminal such as a personal computer. The information terminal 200 may also be a dedicated terminal for the autonomous mobile robot system 400. The information terminal 200 includes a communication unit 210, a control unit 220, a notification unit 230, a reception unit 240, and a storage unit 250. Each component will be described below.
[0046] [Communications Department] The communication unit 210 is a communication circuit that enables the information terminal 200 to communicate with the traveling map creation device 100 and the autonomous traveling robot 300 via the network 10. The communication unit 210 may include a communication circuit (communication module) for communicating via a wide area communication network and a communication circuit (communication module) for communicating via a local communication network. The communication unit 210 is, for example, a wireless communication circuit that performs wireless communication. There are no particular limitations on the communication standard for communication performed by the communication unit 210.
[0047] [Control Unit] The control unit 220 controls the display of images on the reception unit 240, and performs processing to identify instructions input by the user (for example, voice recognition processing in the case of voice input), etc. The control unit 220 may be realized by, for example, a microcomputer or a processor.
[0048] [Notification Department] The notification unit 230 presents the notification (in other words, notification information) output by the driving map creation device 100 and the driving map to the user. The notification unit 230 is realized, for example, by at least one of a speaker, a lamp, and a display panel. The speaker outputs sound or audio. The lamp lights up or flashes. The display panel is a liquid crystal panel or an organic EL panel, etc., and displays images.
[0049] [Reception] The reception unit 240 receives instructions from the user. More specifically, the reception unit 240 receives an input operation performed to transmit the user's instructions to the driving map creation device 100. The reception unit 240 may be realized by, for example, a touch panel, a display panel, hardware buttons, or a microphone. The touch panel may be, for example, a capacitive touch panel or a resistive touch panel. The display panel has a function of displaying images and a function of receiving manual input from the user, and receives input operations to a numeric keypad image or the like displayed on a display panel such as a liquid crystal panel or an organic EL (Electro Luminescence) panel. The microphone receives voice input from the user.
[0050] [Storage] The storage unit 250 is a storage device that stores dedicated application programs and the like to be executed by the control unit 220. The storage unit 250 is realized by, for example, a semiconductor memory.
[0051] [2-3. Autonomous Robots] Next, the autonomous mobile robot 300 will be described. The autonomous mobile robot 300 acquires a map for navigation created by the navigation map creation device 100, for example, and autonomously navigates a predetermined floor corresponding to the map for navigation. The autonomous mobile robot 300 is not particularly limited as long as it is a robot that navigates autonomously, but may be, for example, a transport robot that transports luggage or a cleaning robot. Below, an example will be described in which the autonomous mobile robot 300 is a cleaning robot.
[0052] Fig. 4 is a perspective view showing the appearance of the autonomous mobile robot according to the embodiment as seen from the side, Fig. 5 is a perspective view showing the appearance of the autonomous mobile robot according to the embodiment as seen from the front, and Fig. 6 is a bottom view showing the appearance of the autonomous mobile robot according to the embodiment as seen from the back.
[0053] As shown in FIGS. 1 and 4 to 6 , the autonomous mobile robot 300 includes, for example, a main body 301 on which various components are mounted, a communication unit 310, a position sensor 320, an obstacle sensor 330, a control unit 340, a memory unit 350, a traveling unit 360, and a cleaning unit 370. The traveling unit 360 includes, for example, wheels 361 for moving the main body 301. The cleaning unit 370 includes, for example, side brushes 371 and a main brush for cleaning up dirt present on a predetermined floor. The control unit 340 processes various information related to the operation of the autonomous mobile robot 300. The control unit 340 includes a traveling control unit 345 for controlling the traveling unit 360 and a cleaning control unit 346 for controlling the cleaning unit 370. The main body 301 is a housing that houses the traveling unit 360, the cleaning unit 370, the control unit 340, and the like.
[0054] [Running part] The running unit 360 causes the autonomous mobile robot 300 to run based on instructions from the running control unit 345. The running unit 360 has wheels 361 that run on the floor, a running motor (not shown) that applies torque to the wheels 361, and a housing (not shown) that houses the running motor. The autonomous mobile robot 300 may also be a two-wheeled robot with opposing wheels that are equipped with casters (not shown) as auxiliary wheels. In this case, the running unit 360 independently controls the rotation of each wheel 361 of the pair of running units, thereby allowing the autonomous mobile robot 300 to run freely in directions such as forward, backward, left, and right turns.
[0055] [Cleaning Department] Based on instructions from cleaning control unit 346, cleaning unit 370 sucks dust on the floor through suction port 373 (see FIG. 6) and collects the sucked dust inside main body 301. Cleaning unit 370 includes a brush rotation motor (not shown) that rotates side brushes 371 and main brush 372, a suction motor (not shown) that sucks dust through suction port 373, a power transmission unit (not shown) that transmits power to these motors, and a storage unit (not shown) that collects the sucked dust.
[0056] [Position sensor] The position sensor 320 is a sensor that detects objects around the main body 301 of the autonomous mobile robot 300 and acquires the positional relationship of the objects with respect to the main body 301. The position sensor 320 may be, for example, a LIDAR that emits light and detects the positional relationship (e.g., the distance and direction from itself to an object) based on the light reflected by an obstacle, or a laser range finder.
[0057] For example, position sensor 320 is disposed in the center of the top surface of main body 301, and acquires the positional relationship, including the distance and direction, between autonomous mobile robot 300 and objects, such as walls, that exist around autonomous mobile robot 300. Position sensor 320 may be, for example, a LIDAR or laser range finder that emits light and detects the positional relationship based on the light reflected by an obstacle. Position sensor 320 may have one or two optical scanning axes, thereby performing two-dimensional or three-dimensional measurement of a predetermined area around autonomous mobile robot 300.
[0058] [Obstacle sensor] Obstacle sensor 330 is a sensor that detects obstacles that may hinder travel, such as surrounding walls and furniture that exist in front of main body 301 (specifically, in the direction of travel). In this embodiment, an ultrasonic sensor is used for obstacle sensor 330. Obstacle sensor 330 has a transmitter 331 that is placed in the center of the front side of main body 301, and receivers 332 that are placed on both sides of transmitter 331. The receivers 332 receive ultrasonic waves that are transmitted from transmitter 331 and reflected by obstacles, thereby enabling detection of the distance to the obstacle, the position of the obstacle, etc.
[0059] The autonomous mobile robot 300 may also be equipped with sensors other than those described above. For example, it may be equipped with floor sensors arranged at multiple locations on the bottom surface of the main body 301 to detect whether or not a floor surface is present. It may also be equipped with an encoder provided on the traveling unit 360 to detect the rotation angle of each of a pair of wheels 361 rotated by a traveling motor. It may also be equipped with an acceleration sensor that detects the acceleration when the autonomous mobile robot 300 travels, and an angular velocity sensor that detects the angular velocity when the autonomous mobile robot 300 turns. It may also be equipped with a dust amount sensor that measures the amount of dust accumulated on the floor surface. It may also be equipped with a contact sensor that detects the displacement of a bumper (not shown) to detect a collision with an obstacle.
[0060] Next, the functional configuration of the autonomous mobile robot 300 will be described with reference to Fig. 1. The position sensor 320, obstacle sensor 330, traveling unit 360, and cleaning unit 370 have been described above, so their description will be omitted here. Below, the communication unit 310, control unit 340, and storage unit 350 will be described.
[0061] [Communications Department] The communication unit 310 is a communication circuit that enables the autonomous mobile robot 300 to communicate with the mobile map creation device 100 and the information terminal 200 via the network 10. The communication unit 310 may include a communication circuit (communication module) for communicating via a wide area communication network and a communication circuit (communication module) for communicating via a local communication network. The communication unit 310 is, for example, a wireless communication circuit that performs wireless communication. There are no particular limitations on the communication standard used for communication by the communication unit 310.
[0062] [Control Unit] The control unit 340 performs various calculations based on sensor information obtained by sensing the environment around the autonomous mobile robot 300 using the position sensor 320 and the obstacle sensor 330, and on a driving map. Specifically, the control unit 340 is realized by a processor, a microcomputer, or a dedicated circuit. The control unit 340 may also be realized by a combination of two or more of a processor, a microcomputer, or a dedicated circuit. For example, the control unit 340 includes a driving map acquisition unit 341, a self-position calculation unit 342, a driving plan creation unit 343, an obstacle position calculation unit 344, a driving control unit 345, and a cleaning control unit 346.
[0063] The driving map acquisition unit 341 acquires a driving map created by the driving map creation device 100. For example, the driving map acquisition unit 341 may acquire the driving map by reading it out from the storage unit 350, or may acquire the driving map output by the driving map creation device 100 via communication.
[0064] The self-position calculation unit 342 calculates the self-position, which is the position of the main body 301 of the autonomous mobile robot 300 on the map for driving, based on, for example, the map for driving acquired by the map acquisition unit 341 for driving and the positional relationship of surrounding objects relative to the main body 301 of the autonomous mobile robot 300 acquired by the position sensor 320.
[0065] The travel plan creation unit 343 creates a travel plan based on the travel map and the robot's own location. For example, if the autonomous mobile robot 300 is a cleaning robot, the travel plan creation unit 343 may further create a cleaning plan. The cleaning plan includes the cleaning order for cleaning multiple cleaning areas on a specified floor, the travel route and cleaning mode for each area, etc. The cleaning mode is, for example, a combination of the travel speed of the autonomous mobile robot 300, the suction strength for sucking up dirt on the floor surface, and the rotation speed of the brush.
[0066] When the autonomous mobile robot 300 is traveling according to the travel plan and an obstacle is detected by the obstacle sensor 330, the travel plan creation unit 343 may change the travel plan based on the position of the obstacle calculated by the obstacle position calculation unit 344. At this time, the travel plan creation unit 343 may also change the cleaning plan.
[0067] The obstacle position calculation unit 344 acquires information about the obstacle detected by the obstacle sensor 330 (e.g., the distance and position of the obstacle, etc.), and calculates the position of the obstacle on the floor map based on the acquired information and the self-position calculated by the self-position calculation unit 342.
[0068] The driving control unit 345 controls the driving unit 360 so that the autonomous mobile robot 300 drives according to a driving plan. More specifically, the driving control unit 345 performs information processing to control the operation of the driving unit 360 based on the driving plan. For example, the driving control unit 345 derives control conditions for the driving unit 360 based on information such as a driving map and the robot's own position in addition to the driving plan, and generates a control signal for controlling the operation of the driving unit 360 based on the control conditions. The driving control unit 345 outputs the generated control signal to the driving unit 360. Note that the details of deriving the control conditions for the driving unit 360, etc., are the same as those of conventional autonomous mobile robots, and therefore will not be described here.
[0069] The cleaning control unit 346 controls the cleaning unit 370 so that the autonomously traveling robot 300 cleans according to a cleaning plan. More specifically, the cleaning control unit 346 performs information processing to control the operation of the cleaning unit 370 based on the cleaning plan. For example, the cleaning control unit 346 derives control conditions for the cleaning unit 370 based on information such as a navigation map and the robot's own position in addition to the cleaning plan, and generates a control signal for controlling the operation of the cleaning unit 370 based on the control conditions. The cleaning control unit 346 outputs the generated control signal to the cleaning unit 370. Note that the details of deriving the control conditions for the cleaning unit 370, etc., are the same as those of conventional autonomously traveling cleaning robots, and therefore will not be described here.
[0070] [Storage] The storage unit 350 is a storage device that stores a driving map, sensor information sensed by the position sensor 320 and the obstacle sensor 330, and a computer program executed by the control unit 340. The storage unit 350 is realized by, for example, a semiconductor memory.
[0071] [3. Operation] Next, the operation of the navigation map creation device 100 according to the embodiment will be described with reference to the drawings.
[0072] [First example: Switching modes by mode switching command] First, a first example of the operation of the navigation map creation device 100 according to the embodiment will be described. Fig. 7 is a flowchart showing the first example of the operation of the navigation map creation device 100 according to the embodiment. In the first example, the navigation map creation device 100 switches between a floor map creation mode and a marker recognition mode in accordance with a mode switching instruction.
[0073] First, when the receiving unit 140 receives an instruction to start creating a driving map (step S01), the driving map creation device 100 causes each of the multiple sensors included in the driving map creation device 100, including the position sensor 110, to start acquiring sensing data (step S02). More specifically, the control unit 120 of the driving map creation device 100 outputs an instruction to start acquiring sensing data to each of the multiple sensors including the position sensor 110.
[0074] When the position sensor 110 receives the command to start acquiring sensing data, it detects objects around itself and acquires the positional relationship of the surrounding objects with respect to itself (step S03).
[0075] The control unit 120 of the traveling map creation device 100 determines whether or not the instruction to start the floor map creation mode has been accepted by the acceptance unit 140 (step S04). If the control unit 120 determines that the instruction to start the floor map creation mode has been accepted (Yes in step S04), the floor map creation unit 124 creates a floor map showing a predetermined floor based on the positional relationship of surrounding objects relative to the device itself acquired by the position sensor 110 in step S03 (step S05).
[0076] Next, the self-position calculation unit 123 calculates the self-position, which is the position of the main body 101 of the traveling map creation device 100 on the floor map created by the floor map creation unit 124 in step S05 (step S06). Although not shown, the self-position calculation unit 123 attaches a timestamp to the calculated self-position and stores it in the storage unit 130.
[0077] On the other hand, if the control unit 120 determines that the instruction to start the floor map creation mode has not been accepted by the acceptance unit 140, for example, if it determines that the instruction to switch from the floor map creation mode to the marker identification mode has been accepted (Yes in step S04), the marker identification unit 125 identifies markers around itself (step S08).
[0078] Next, the marker position calculation unit 126 calculates the relative position of the marker identified by the marker identification unit 125 in step S08 relative to itself (here, the main body of the driving map creation device 100) (step S09). Although not shown, the marker position calculation unit 126 adds a timestamp to the calculated relative position of the marker and stores it in the storage unit 130.
[0079] Following step S06 or step S09, the control unit 120 determines whether acquisition of the sensing data has been completed (step S07). If it is determined that acquisition of the sensing data has not been completed (No in step S07), the process returns to step S03. On the other hand, if the control unit 120 determines that acquisition of the sensing data has been completed (Yes in step S07), the entry no-entry information generation unit 127 generates entry no-entry information indicating a no-entry area into which the autonomous mobile robot 300 is prohibited from entering, based on the floor map created in step S05, the self-position calculated in step S06, and the relative position of the marker calculated in step S09 (step S10). For example, the entry no-entry information generation unit 127 may refer to the time stamp attached to the self-position and the time stamp attached to the relative position of the marker, and calculate the position of the marker on the floor map (i.e., coordinate information) based on the self-position and the relative position of the marker at the same time. Based on the positions (coordinate information) of the multiple markers calculated in this manner, the no-entry information generation unit 127 may generate no-entry information including boundary information indicating the boundary between the no-entry area and the traveling area (travelable area) of the autonomous mobile robot. Note that the no-entry information generation unit 127 may determine the boundary not only based on the positions of the markers, but also, for example, so that the area surrounded by a wall and the positions of the multiple markers is the no-entry area.
[0080] Next, the driving map creation unit 128 creates a driving map in which no-entry areas are set based on the no-entry information generated by the no-entry information generation unit 127 in step S10 (step S11).
[0081] When the creation of the driving map is completed, the driving map creation device 100 stops its operation. Note that the driving map creation device 100 may notify the user through the notification unit 150 that the process of step S11 (i.e., the process of creating the driving map) is completed, and may stop its operation when the reception unit 140 receives an instruction to stop its operation.
[0082] As described above, the traveling map creation device 100 can switch between floor map creation mode and marker identification mode, and therefore markers are not identified while the floor map creation mode is running. This makes it difficult for the traveling map creation device 100 to detect a change in its own position that occurs when a marker (e.g., a marker being transported to an installation location) is identified even when the traveling map creation device 100 is not moving. Therefore, the traveling map creation device 100 can suppress map distortion caused by changes in its own position, and can create a traveling map with high accuracy.
[0083] [Second example: Switch whether or not to reflect the marker position on the map depending on whether or not the device is moving] Next, a second example of the operation of the navigation map creation device 100 according to the embodiment will be described. Fig. 8 is a flowchart showing the second example of the operation of the navigation map creation device 100 according to the embodiment. In Fig. 8, the same processes as those in Fig. 7 are assigned the same step numbers. The following description will focus on differences from the first example, and overlapping content will be simplified or omitted.
[0084] In the first example, the traveling map creation device 100 switches between floor map creation mode and marker recognition mode in accordance with a mode switching instruction, stopping the marker identification process in floor map creation mode and stopping the floor map creation process in marker identification mode. In the second example, unlike the first example, the marker identification process is not stopped even in floor map creation mode, and switching is performed to determine whether or not the position of the identified marker is reflected on the floor map depending on whether the main body of the traveling map creation device 100 is moving (i.e., whether it is moving or stationary).
[0085] In the second example, similar to the first example, when an instruction to start the floor map creation mode is accepted (Yes in step S04), a floor map is created (step S05), and the vehicle's own position is calculated (step S06). Next, the marker identification unit 125 identifies markers around the vehicle (here, the main body 101 of the traveling map creation device 100) (step S21), and the marker position calculation unit 126 calculates the relative positions of the identified markers with respect to the vehicle (step S22).
[0086] Next, the control unit 120 determines whether the traveling map creation device 100 is traveling (step S23). If the control unit 120 determines that the traveling map creation device 100 is traveling (Yes in step S23), the control unit 120 causes the marker position calculation unit 126 to attach a flag indicating that the relative positions of the markers should not be reflected on the floor map and store the flag in the storage unit 130 (step S24). Next, the process of step S07 is performed.
[0087] On the other hand, if the control unit 120 determines that the navigational map creation device 100 is not moving, in other words, is stationary (No in step S23), it causes the marker position calculation unit 126 to attach a flag indicating that the relative position of the marker should be reflected in the floor map and store the flag in the storage unit 130 (step S25). Next, the processing of step S07 is performed. In step S23, for example, if the control unit 120 detects a phenomenon in which the self-position is moving even though the wheel odometry is not moving, it may determine that the main body 101 of the navigational map creation device 100 is not moving (i.e., is stationary).
[0088] As described above, when the traveling map creation device 100 identifies a marker in floor map creation mode, it can determine whether to reflect the relative position of the identified marker on the floor map, depending on whether the traveling map creation device 100 is moving (driving). As a result, even if a marker is identified while the traveling map creation mode is being executed, if it is determined that the traveling map creation device 100 has not moved at the time the marker is identified, the identified marker can be reflected on the floor map. Therefore, markers can be efficiently identified while creating a floor map. This allows the traveling map creation device 100 to create a traveling map more easily.
[0089] [Third example: Automatic mode switching] Next, a third example of the operation of the navigation map creation device 100 according to the embodiment will be described. Fig. 9 is a flowchart showing the third example of the operation of the navigation map creation device 100 according to the embodiment. In Fig. 9, the same processes as those in Fig. 7 are assigned the same step numbers. The following description will focus on differences from the first example, and overlapping content will be simplified or omitted.
[0090] In the first example, the traveling map creation device 100 switches between the floor map creation mode and the marker recognition mode in accordance with the mode switching instruction. In the third example, unlike the first example, the traveling map creation device 100 automatically switches between the floor map creation mode and the marker recognition mode depending on whether the main body of the traveling map creation device 100 is moving (i.e., whether it is moving or stationary).
[0091] In the third example, after the position sensor 110 acquires the positional relationship of surrounding objects relative to the traveling map creation device 100 in step S03, the control unit 120 of the traveling map creation device 100 determines whether the traveling map creation device 100 is traveling (step S31). For example, if the wheel odometry is moving and a movement of the traveling map creation device's own position is detected, the control unit 120 determines that the traveling map creation device 100 is traveling (Yes in step S31), switches to floor map creation mode (not shown), and performs the same processing as in the first example shown in Fig. 7 (specifically, the processing in steps S05 and S06). On the other hand, for example, if the wheel odometry is not moving but a movement of the traveling map creation device's own position is detected, the control unit 120 determines that the traveling map creation device 100 is not traveling (in other words, is stationary) (No in step S31), switches to marker identification mode (not shown), and performs the same processing as in the first example shown in Fig. 7 (specifically, the processing in steps S08 and S09).
[0092] As described above, the traveling map creation device 100 can automatically switch between the floor map creation mode and the marker identification mode, thereby reducing the user's effort. Therefore, the traveling map creation device 100 can create a traveling map more easily.
[0093] [Fourth example: Identifying the type of marker] Next, a fourth example of the operation of the navigation map creation device 100 according to the embodiment will be described. Fig. 10 is a flowchart showing the fourth example of the operation of the navigation map creation device 100 according to the embodiment. In Fig. 10, the same processes as those in Fig. 9 are assigned the same step numbers. The following description will focus on differences from the third example, and overlapping content will be simplified or omitted.
[0094] In the third example, the traveling map creation device 100 switches between a floor map creation mode and a marker identification mode depending on whether the traveling map creation device 100 is traveling or stationary, and in the marker identification mode, it generates no-entry information based on the floor map, its own position, and the relative positions of the identified markers. In the fourth example, unlike the third example, in the marker identification mode, it further identifies the type of marker and generates no-entry information corresponding to the identified type of marker (for example, no-entry information including boundary attributes, etc.).
[0095] After the position sensor 110 acquires the positional relationship of surrounding objects relative to the traveling map creation device 100 in step S03, the control unit 120 of the traveling map creation device 100 determines whether the traveling map creation device 100 is traveling (step S31). If the control unit 120 determines that the traveling map creation device 100 is not traveling (No in step S31), the marker identification unit 125 identifies markers around the traveling map creation device 100 (step S08). Furthermore, the marker identification unit 125 identifies the type of marker (step S41). The marker identification unit 125 may be an identification unit with an appropriate identification method depending on the type of marker.
[0096] The type of marker is, for example, at least one of a reflective marker, an identification marker, projected light, body movement (so-called gesture), and the number of fingers. The reflective marker is, for example, a reflective material, and may be a retroreflective material that strongly reflects incident light in a direction along the direction of the light. For example, the reflective marker may be a reflective film. The reflective marker may not only be a reflective material itself, but also an object containing a reflective material. In the latter case, the reflective marker may be, for example, a glove with a reflective material such as a reflective film attached to the palm side of the glove, or clothing with a reflective material attached to a part of the clothing (for example, the front of the thigh). The reflective marker may also be a reflective pole or a reflective plate. The identification marker is, for example, a two-dimensional barcode, an IC tag, a Bluetooth (registered trademark) tag, an RFID tag, an AR marker, or a QR code (registered trademark). The projected light is, for example, light emitted by a laser pointer, or light or an image projected by a light projection device such as a projector. The body movements are not limited to those of humans but may also be those of robots, etc., such as making a fist (clenching), opening a hand (opening), waving, turning a palm, or shaking an index finger from side to side. Any of these movements may indicate the start and end points of the boundary of the no-entry area, indicate instructions to fill in the gap between the markers indicating the start and end points and the adjacent wall, or indicate which side of the marker to set as the no-entry area. The number of fingers may also indicate the order in which the boundary of the no-entry area is drawn, such as 1, 2, 3, 4, or 5. Combinations of these types of markers may indicate, for example, a wall surface (glass surface) made of a material that is difficult to detect with a position sensor, the presence of a step, a place with high foot traffic such as an elevator, or the presence of an obstacle that is difficult to detect with an obstacle sensor, such as a fire extinguisher or a flower pot.
[0097] Next, the marker position calculation unit 126 calculates the relative position of the marker with respect to itself (here, the main body 101 of the traveling map creation device 100) (step S09). The marker position calculation unit 126 reads out the type of no-entry restriction (for example, boundary attributes) corresponding to the type of marker identified by the marker identification unit 125 from a database in the storage unit 130 (step S42). Then, the marker position calculation unit 126 associates the calculated relative position of the marker with the type of no-entry restriction read out from the database, and stores them in the storage unit 130. As a result, for each of the relative positions of the multiple markers, the boundary can be interpolated into a straight line, boundaries can be interpolated between each of the start point and end point and a nearby wall, whether the area in front of or beyond the boundary is set as a no-entry area, or information such as glass can be associated.
[0098] Next, the control unit 120 determines whether the acquisition of the sensing data has been completed (step S07), and if it is determined that the acquisition has not been completed (No in step S07), the process returns to step S03. On the other hand, if the control unit 120 determines that the acquisition of the sensing data has been completed (Yes in step S07), the entry no-entry information generation unit 127 generates entry no-entry information indicating the entry no-entry area corresponding to the type of marker based on the floor map created in step S05, the self-position calculated in step S06, and the relative position of the marker linked to the type of entry no-entry in step S42 (step S43).
[0099] Next, the driving map creation unit 128 creates a driving map in which no-entry areas are set based on the no-entry information corresponding to the type of marker generated by the no-entry information generation unit 127 in step S43 (step S44). The end of the operation has been described above, so a description thereof will be omitted here.
[0100] As described above, the driving map creation device 100 can include information about no-entry areas (for example, glass surfaces, areas with a lot of people coming and going, and obstacles) in the driving map by having the marker identification unit 125 identify the type of marker. Therefore, the driving map creation device 100 can reduce the effort required for the user to add such information to the driving map, making it easier to create a driving map.
[0101] In the first to fourth examples, the self-position and the relative position of the marker may be calculated from sensing data of the position sensor 110 and the imaging unit 112 (for example, an RGB-D camera). The marker identification unit 125 may identify the marker based on sensing data of the position sensor 110 (the positional relationship of an object with respect to the self), or may identify the marker using a method corresponding to a predetermined type of marker.
[0102] [Example 5: Setting Boundaries] Next, a fifth example of the operation of the navigation map creation device 100 according to the embodiment will be described. FIG. 11 is a flowchart showing the fifth example of the operation of the navigation map creation device 100 according to the embodiment. In the fourth example, information about no-entry areas (e.g., glass surfaces, areas with a lot of pedestrian traffic, presence of obstacles, etc.) was included in the navigation map based on no-entry information corresponding to the type of marker. In the fifth example, an example of setting the boundary between the drivable area and the no-entry area based on the type of marker and its installation position will be described. Note that the identification of the marker type in the fifth example may be performed in the marker identification process (e.g., step S08 in FIGS. 7, 8, and 9) or in the marker type identification process (step S41 in FIG. 10), but an example of the identification performed in step S08 will be described.
[0103] The boundary setting process example shown in FIG. 11 may be applied to the boundary setting process in step S10 in FIGS. 7, 8 and 9 and step S43 in FIG.
[0104] In the following description, the term "marker" refers to a vehicle that includes, for example, a first marker and a second marker that is different from the first marker, but may also refer to only the first marker. The first marker is, for example, a marker for setting the boundary between a driveable area and a no-entry area. The second marker is, for example, a marker for setting the boundary surrounding the no-entry area.
[0105] As shown in FIG. 11 , the no-entry information generation unit 127 calculates the position of the marker on the floor map based on the floor map, the robot's own position, and the relative position of the marker (step S51). The unit sets a boundary between the area where the autonomous mobile robot 300 can travel and the no-entry area, and generates no-entry information including boundary information indicating the set boundary. For example, the no-entry information generation unit 127 may refer to the time stamp attached to the robot's own position and the time stamp attached to the relative position of the marker, and calculate the position of the marker on the floor map (i.e., coordinate information) based on the robot's own position and the relative position of the marker at the same time. Based on the positions (coordinate information) of multiple markers calculated in this way, the no-entry information generation unit 127 may generate no-entry information including boundary information indicating the boundary between the area where the autonomous mobile robot 300 can travel and the no-entry area.
[0106] Next, the no-entry information generation unit 127 associates the position of the marker on the floor map calculated in step S51 with information indicating the type of marker identified in step S08 (specifically, information indicating whether the identified marker is a first marker or a second marker), and stores them in a database (not shown) of the memory unit 130 (step S52).
[0107] After completing the process of step S52 for all identified markers, the no-entry information generating unit 127 extracts a first marker from among the multiple markers on the floor map stored in a database (not shown) (step S53).
[0108] Next, the no-entry information generator 127 starts a loop process for each first marker (step S54). The no-entry information generator 127 determines whether there is only one pair of a first marker and another first marker that is adjacent to the first marker in a first direction parallel to the wall surrounding the first marker or in a second direction perpendicular to the first direction in a top view of the floor map (step S55). If it is determined that there is only one pair (Yes in step S55), the no-entry information generator 127 sets a line connecting the pair of first markers and the other first marker as a boundary (step S56).
[0109] On the other hand, if the no-entry information generating unit 127 determines that there are two pairs of a first marker and another first marker that is adjacent to the first direction or the second direction in a top view of the floor map (No in step S55), it determines whether the other first marker is being used to set another boundary (step S57).
[0110] For example, the no-entry information generator 127 determines that there are two pairs of a first marker and another first marker adjacent to the first marker in the first direction or the second direction in the top view of the floor map when (i) there are two pairs of a first marker and another first marker adjacent to the first marker in the first direction or the second direction in the top view of the floor map among the first markers extracted from the database, or (ii) there is one or more pairs of a first marker and another first marker adjacent to the first marker in each of the first direction and the second direction in the top view of the floor map. Note that "a first marker and another first marker are adjacent to each other" means that, of multiple other first markers existing on a straight line including the first marker, the other first marker exists next to the first marker in the first direction or the second direction. In other words, this means that there are no other first markers between two adjacent first markers (that is, a first marker and another first marker).
[0111] In step S57, if the no-entry information generator 127 determines that the other first marker is being used to set another boundary (Yes in step S57), it excludes the other first marker from combination candidates for setting a boundary with the first marker (step S59).On the other hand, if the no-entry information generator 127 determines that the other first marker is not being used to set another boundary (No in step S57), it determines whether the first marker and the other first marker are installed parallel to one another on a wall (step S58).
[0112] The process of step S58 will now be described in detail with reference to Figures 11 and 12. Figure 12 is a diagram for schematically explaining an example of boundary setting process based on the first marker.
[0113] "A first marker and another first marker are installed parallel to one wall surface on a specific floor" means that the first marker and another first marker are attached to one wall surface, or that they are installed along one wall surface directly in front of the wall surface. In the former case, the first marker is a marker that is attached to a wall surface, such as a sticker or plate. In the latter case, the first marker is a marker that is installed on a floor surface, such as a pole. As described above, the other first marker is a candidate combination with the first marker, and is a first marker that is adjacent to the first marker in a first direction parallel to the wall surrounding the first marker in a top view of the floor map, or in a second direction perpendicular to the first direction.
[0114] Note that one wall surface refers to one surface. Referring to (a) of Fig. 12, the wall surface to which first marker 1a and first marker 1c are attached is one wall surface. On the other hand, the wall surfaces to which first marker 1b and first marker 1d are attached are different wall surfaces.
[0115] 11, if the no-entry information generator 127 determines that the first marker and another first marker are installed parallel to one another on a wall surface (Yes in step S58), it excludes the other first marker from combination candidates for setting a boundary with the first marker (step S59). On the other hand, if the no-entry information generator 127 determines in step S58 that the first marker and another first marker are not installed parallel to one another on a wall surface (No in step S58), it performs the process of step S56.
[0116] Here, the processing of steps S58 and S59 will be specifically described with reference to (a) of FIG. 12. First, the no-entry information generator 127 identifies two pairs of first markers (i.e., combination candidates) that can be paired with the first marker 1a: first marker 1b, which is adjacent to the first marker 1a in a first direction parallel to the wall surrounding the first marker 1a in a top view of the floor map (here, the first direction is parallel to the wall closest to the installation position of the first marker 1a and is an axial direction including the installation position of the first marker 1a); and first marker 1c, which is adjacent to the first marker 1a in a second direction perpendicular to the first direction in a top view of the floor map (here, the second direction is perpendicular to the first direction and is an axial direction including the installation position of the first marker 1a). As shown in (a) of FIG. 12, of the two identified pairs, the pair of first marker 1a and first marker 1c is installed along one wall (in other words, parallel to one wall surface). In this way, based on the positional relationship between the first markers 1a and 1c and the wall on the floor map, the no-entry information generator 127 determines that the first markers 1a and 1c are installed side by side on the same wall surface.
[0117] 11, when another first marker 1c installed parallel to one wall surface is excluded from the combination candidates in step S58 (step S59), the no-entry information generator 127 returns to the process of step S55. Referring to (a) of FIG. 12, in the process of step S55, for example, the no-entry information generator 127 determines that there is only one pair of the first marker 1a and the combination candidate, that is, the first marker 1a and the other first marker 1b (Yes in step S55), and sets the line 2a connecting the first marker 1a and the other first marker 1b as the boundary (step S56).
[0118] When the processing for the first marker 1a is completed, the no-entry information generator 127 performs the processing of step S55 for the first marker 1c. Because the only pair of the first marker 1c and the first marker 1d exists (Yes in step S55), the no-entry information generator 127 determines that only one pair exists between the first marker 1c and another first marker 1d that is adjacent to the first marker 1c in the second direction in the top view of the floor map (Yes in step S55), and sets the line 2d connecting the first marker 1c and the first marker 1d as the boundary (step S56).
[0119] Next, when the loop process for each first marker is completed (step S60), the no-entry information generator 127 extracts a second marker from among the multiple markers on the floor map stored in a database (not shown) (step S61).
[0120] Next, the entry no-entry information generating unit 127 sets a boundary that surrounds an area of a predetermined size and shape from the position of the second marker on the floor map as an entry no-entry area (step S62). The boundary setting process will be described later with a specific example.
[0121] As described above, the traveling map creation device 100 performs processing using the first marker and processing using the second marker when setting boundaries, and therefore can set boundaries on the traveling map simply and accurately. Therefore, the traveling map creation device 100 can easily set no-entry areas on the traveling map where the autonomous traveling robot 300 is prohibited from entering.
[0122] Other processing examples performed by the no-entry information generating unit 127 will be specifically described below with reference again to Fig. 12. In addition to the processing examples described above, the no-entry information generating unit 127 may also perform the following processing.
[0123] 12(b), the no-entry information generator 127 first identifies candidate combinations to be paired with the first marker 1e1 in the loop processing for each first marker. There are two candidate combinations: the first marker 1g1 and the first marker 1f1. The no-entry information generator 127 determines whether the first marker 1e1 and the first marker 1g1 are installed side by side on a single wall surface (step S58), determines that the first marker 1e1 and the first marker 1g1 are installed side by side on a single wall surface (Yes in step S58), and excludes the first marker 1g1 from the candidate combinations (step S59). Here, the only candidate combination that can be paired with the first marker 1e1 is the first marker 1f1 (Yes in step S55), so the no-entry information generation unit 127 sets the boundary for the first marker 1e1 as a line 2c connecting the first marker 1e1 with another first marker 1f1 (step S56). Next, the no-entry information generation unit 127 identifies a candidate combination that can be paired with the first marker 1g1 for the first marker 1g1. The candidate combination is the first marker 1e1 and the first marker 1h1, but because the first marker 1e1 is used to set the boundary (Yes in step S57), the no-entry information generation unit 127 excludes the first marker 1e1 from the candidate combinations (step S59).
[0124] 12(c), when two opposing first markers are installed in a location where one of the locations is a wall and the other is a glass surface (or an open void where detection by the position sensor 110 is difficult), the process of step S58 is performed. For example, when the first markers 1e2 and 1g2 are installed parallel to one another on a wall (Yes in step S58) and the first markers 1f2 and 1h2 are installed parallel to one another on a glass surface, the first marker 1g2 is excluded from the combination candidates for pairing with the first marker 1e2 (step S59). As a result, only the pair of the first marker 1e2 and the other first marker 1f2 exists (Yes in step S55), and a line connecting the first marker 1e2 and the other first marker 1f2 is set as the boundary (step S56).
[0125] Next, the process of setting boundaries by the no-entry information generating unit 127 will be described in more detail with reference to Fig. 13. Fig. 13 is a diagram for schematically explaining an example of the boundary setting process. Fig. 13(a) is a diagram showing the types of markers identified by the marker identifying unit 125 and their positions on a predetermined floor. Fig. 13(b) is a diagram showing an example of a floor map 50 in which boundaries have been set by the no-entry information generating unit 127.
[0126] In the operation example of Fig. 11, the no-entry information generating unit 127 extracts a first marker from among a plurality of markers on a floor map stored in a database in the storage unit 130, and extracts a second marker after completing the boundary setting process for all of the first markers, but this is not limited to this. For example, the no-entry information generating unit 127 may extract all markers on a floor map stored in a database (see, for example, Fig. 13(a)). Also, for example, the no-entry information generating unit 127 may perform boundary setting process for a first marker after completing the boundary setting process for all of the second markers.
[0127] For example, as shown in (a) of FIG. 13, the no-entry information generator 127 extracts all markers on the floor map 50 of a specific floor from the database in the storage unit 130. Here, the X-axis is the horizontal axis in a top view of the floor map 50, and the Y-axis is the vertical axis in a top view of the floor map 50. The following description will be made with reference to (b) of FIG. 13. In this example, the walls in the floor map 50 are arranged along the X-axis or the Y-axis, and therefore the first direction and the second direction are either the X-axis or the Y-axis of the floor map 50, but this is merely an example and is not limited to this example. For example, if the walls in the floor map are arranged in an angular direction different from the X-axis or the Y-axis, the positional relationship between the first markers is determined in the first direction and the second direction.
[0128] Next, the no-entry information generator 127 performs a boundary setting process for the first marker among the extracted markers. The no-entry information generator 127 checks whether there are any other first markers adjacent to the first marker 11a1 in the X-axis direction and the Y-axis direction among the multiple first markers on the floor map, and detects the first marker 11a2 adjacent to the first marker 11a1 in the Y-axis direction as a combination candidate. The no-entry information generator 127 determines that only one pair of the first marker 11a1 and the first marker 11a2 exists for the first marker 11a1, and sets the line 21a1 connecting these first markers as the boundary.
[0129] Similar to first marker 11a1, no-entry information generator 127 performs boundary setting processing for each of first markers 11a5, 11a10, and 11a11. Similar to first marker 11a1, these three first markers also have only one pair with another first marker. Therefore, no-entry information generator 127 sets line 21a3 connecting first marker 11a5 and first marker 11a6 as a boundary, sets line 21a5 connecting first marker 11a10 and first marker 11a9 as a boundary, and sets line 21a6 connecting first marker 11a11 and first marker 11a12 as a boundary.
[0130] As described above, the no-entry information generator 127 may detect a first marker where only one pair of the first marker and another first marker exists, and set a boundary.
[0131] Also, for example, suppose that first marker 11a3 and first marker 11a4 are installed in front of a glass surface. In this case, no-entry information generation unit 127 checks whether there are other first markers adjacent to first marker 11a3 in the X-axis direction and Y-axis direction, and detects first marker 11a4 adjacent to first marker 11a3 in the X-axis direction. No-entry information generation unit 127 determines that only one pair of first marker 11a3 and first marker 11a4 exists for first marker 11a3, and sets line 21a2 connecting these first markers as the boundary.
[0132] Next, the no-entry information generator 127 performs a boundary setting process for the first marker 11a8. The no-entry information generator 127 checks whether there are any other first markers adjacent to the first marker 11a8 in the X-axis direction and the Y-axis direction, and detects the first markers 11a7 and 11a9, which are adjacent to the first marker 11a8 in the X-axis direction, as combination candidates. The no-entry information generator 127 determines that the first marker 11a9 has been used to set the boundary and excludes it from the combination candidates. The no-entry information generator 127 then determines that only one pair, the first marker 11a8 and the first marker 11a7, exists for the first marker 11a8, and sets the line 21a4 connecting these first markers as the boundary.
[0133] Next, the no-entry information generator 127 performs a boundary setting process for the second marker among the extracted markers. Here, the second marker sets a boundary that surrounds a rectangular area of a predetermined size (e.g., 60 cm x 60 cm) as a no-entry area, for example, but is not limited to this. As described above, the second marker may set a boundary that surrounds a polygonal area, a circular area, or an elliptical area of a predetermined size as a no-entry area.
[0134] The no-entry information generator 127 sets a boundary surrounding a rectangular area of a predetermined size from the position of the second marker 31a1 among the multiple second markers on the floor map, as a no-entry area. For example, the no-entry information generator 127 sets a U-shaped boundary 41a1 so that the position of the second marker 31a1 is the center of one side of the rectangular area on the wall surface side, thereby setting a no-entry area surrounded by the wall surface and the U-shaped boundary 41a1.
[0135] The no-entry information generator 127 performs boundary setting processing for each of the second markers 31a2 and 31a3, similar to the second marker 31a1. The no-entry information generator 127 sets a boundary 41a2 that surrounds a rectangular area of a predetermined size as a no-entry area from the position of the second marker 31a2, and sets a boundary 41a3 that surrounds a rectangular area of a predetermined size as a no-entry area from the position of the second marker 31a3.
[0136] When the driving map creation device 100 finishes creating the driving map, the notification unit 150 notifies the user that the process of creating the driving map has finished, and at this time, the driving map creation device 100 may present the user with the driving map. When an instruction to modify a boundary is received by the receiving unit 240 of the information terminal 200, the driving map creation device 100 may modify the boundary set on the floor map 50 in accordance with the instruction. Figure 14 is a diagram showing an example of display information.
[0137] As shown in FIG. 14, the control unit 220 of the information terminal 200 causes the notification unit 230 to display the no-entry information generated by the no-entry information generation unit 127 of the driving map creation device 100.
[0138] For example, when the receiving unit 240 of the information terminal 200 receives a correction instruction, the control unit 220 outputs the correction instruction received by the receiving unit 240 to the driving map creation device 100. For example, to eliminate the gap between two no-entry areas surrounded by the boundary 41a1 and the boundary 41a2 displayed on the notification unit 230, the user taps the correction button, then touches the right side of the boundary 41a1 with his / her finger and drags it to the right, touches the left side of the boundary 41a2 with his / her finger and drags it to the left, and taps the done button.
[0139] When the navigation map creation device 100 acquires a user instruction (here, a correction instruction), the no-entry information generation unit 127 corrects the no-entry information based on the acquired correction instruction. On the other hand, if the navigation map creation device 100 does not acquire a correction instruction, that is, if no correction instruction is given by the user, the navigation map creation unit 128 of the navigation map creation device 100 creates a navigation map that includes the boundaries as presented to the user.
[0140] As described above, the autonomous mobile robot system 400 can receive instructions from the user to modify the no-entry information, thereby appropriately setting no-entry areas. Therefore, the autonomous mobile robot system 400 creates a driving plan based on a driving map in which no-entry areas are appropriately set, making it possible to more appropriately control the driving of the autonomous mobile robot 300.
[0141] The no-entry information may be corrected while the driving map is being created, or after the driving map has been created.
[0142] [4. Effects, etc.] As described above, the traveling map creation device 100 is a traveling map creation device that creates a map for traveling of the autonomous traveling robot 300 that travels autonomously within a predetermined floor, and includes a position sensor 110 that detects objects around the device and acquires the positional relationship of the objects relative to the device, a floor map creation unit 124 that creates a floor map showing the predetermined floor based on the positional relationship acquired by the position sensor 110, a self-position calculation unit 123 that calculates the position of the device on the floor map created by the floor map creation unit 124, a marker identification unit 125 that identifies markers present around the device, and a marker identification unit 126 that identifies the markers present around the device. the mode switching unit 122 switching between a floor map creation mode for creating a floor map and a marker identification mode for identifying the marker; an entry prohibition information generation unit 127 setting boundaries of a no-entry area where entry of the autonomous mobile robot 300 is prohibited based on the floor map, its own position, and the relative positions of the markers, and generating entry prohibition information including boundary information indicating the set boundaries; and a driving map creation unit 128 creating a driving map in which no-entry areas are set based on the entry prohibition information generated by the entry prohibition information generation unit 127.
[0143] This allows the traveling map creation device 100 to switch between floor map creation mode and marker identification mode, preventing marker identification while the floor map creation mode is running. Therefore, the traveling map creation device 100 is less likely to detect a change in its own position that occurs when a marker (e.g., a marker being transported to an installation location) is identified even though the traveling map creation device 100 is not moving. This allows the traveling map creation device 100 to suppress map distortion caused by changes in its own position, thereby enabling the creation of a traveling map with high accuracy.
[0144] For example, in the traveling map creation device 100, the mode switching unit 122 may switch to the floor map creation mode when the traveling map creation device 100 is traveling, and may switch to the marker identification mode when the traveling map creation device 100 is stationary.
[0145] This allows the navigation map creation device 100 to automatically switch between the two modes based on its own movement, such as whether it is traveling or standing still, thereby reducing the user's effort. Therefore, the navigation map creation device 100 can create a navigation map more easily.
[0146] For example, the driving map creation device 100 may further include a reception unit 140 that receives an instruction to switch modes, and when the instruction is received by the reception unit 140, the mode switching unit 122 may switch between the floor map creation mode and the marker identification mode in accordance with the instruction.
[0147] This allows the driving map production device 100 to appropriately switch between the above two modes in accordance with the received instruction.
[0148] For example, in the traveling map creation device 100, when the traveling map creation device 100 is traveling, the floor map creation unit 124 may not reflect the relative positions of the markers identified by the marker identification unit 125 on the floor map, and when the traveling map creation device 100 is stationary, may reflect the relative positions of the markers identified by the marker identification unit 125 on the floor map.
[0149] This allows the traveling map creation device 100 to switch whether or not to reflect the relative positions of markers identified by the marker identification unit 125 on the floor map based on its own movement, such as traveling or standing still, thereby reducing the effort required to switch modes. Therefore, the traveling map creation device 100 can create a traveling map more easily.
[0150] For example, in the driving map creation device 100, the marker identification unit 125 identifies a marker based on data sensed by at least one of the position sensor 110 and a sensor different from the position sensor 110 (e.g., the imaging unit 112), and the position sensor 110 may be a LIDAR, and the sensor different from the position sensor 110 may be a range image sensor.
[0151] This allows the driving map production device 100 to select data to be used for identifying a marker depending on the type of marker, thereby enabling more accurate identification of the marker.
[0152] For example, in the driving map creation device 100, the marker identification unit 125 may further identify the type of marker, which may be at least one of a reflective marker, an identification marker, projected light, body movement, and the number of fingers, and the no-entry information generation unit 127 may generate no-entry information corresponding to the type of marker identified by the marker identification unit 125.
[0153] This allows the driving map creation device 100 to generate no-entry information corresponding to the type of marker, making it possible to easily set no-entry areas on a driving map.
[0154] For example, the driving map creation device 100 may further include a notification unit 150, which may notify the user that the marker identification unit 125 has identified a marker using at least one of sound, light, and image.
[0155] This allows the driving map production device 100 to notify the user that it has identified a marker by using at least one of sound, light, and image.
[0156] For example, the driving map creation device 100 may further include a communication unit 160 that can communicate with an information terminal 200 used by a user, and the communication unit 160 may notify the information terminal 200 that the marker identification unit 125 has identified a marker.
[0157] This allows the driving map creation device 100 to notify the user via the user's information terminal 200 that the marker has been identified.
[0158] For example, in the driving map creation device 100, the markers include a first marker for setting a boundary and a second marker that is different from the first marker and does not set the boundary, and the marker identification unit 125 identifies whether the marker is the first marker or the second marker when identifying the marker, and the no-entry information generation unit 127 calculates the position of the marker on the floor map based on the floor map, the vehicle's own position, and the relative position of the marker, and the calculated position of the marker on the floor map and information indicating whether the identified marker is the first marker or the second marker may be linked and stored in a database (not shown in FIG. 1) in the storage unit 130.
[0159] This allows the driving map creation device 100 to generate no-entry information corresponding to the type of marker, making it possible to easily set no-entry areas on a driving map.
[0160] For example, in the traveling map creation device 100, the no-entry information generation unit 127 may extract first markers 11a1 to 11a12 from among a plurality of markers on a floor map 50 (see (a) of FIG. 13) stored in a database, and when there is only one pair of the extracted first marker 11a1 and another first marker 11a2 adjacent to the first marker 11a1 in a first direction parallel to the wall surrounding the first marker 11a1 in a plan view of the floor map 50 or in a second direction perpendicular to the first direction (in (a) of FIG. 13, the vertical direction (Y-axis direction) or horizontal direction (X-axis direction) of the floor map 50), the no-entry information generation unit 127 may set a line 21a1 (see (b) of FIG. 13) connecting the pair of first markers 11a1 and the other first marker 11a2 as the boundary.
[0161] As a result, the driving map creation device 100 sets a boundary at a location where there is only one pair of the first marker 11a1 and another first marker 11a2 that is adjacent to the first marker 11a1 in a first direction parallel to the wall surrounding the first marker 11a1 when viewed from above on the floor map 50, or in a second direction perpendicular to the first direction, thereby ensuring that the boundary can be set reliably.
[0162] For example, in the driving map creation device 100, the no-entry information generation unit 127 detects whether or not there are two pairs of first markers 11a8 among the extracted first markers 11a1 to 11a12 (see FIG. 13(b)), one of which is adjacent to the other first markers 11a7, 11a9 in the first direction or the second direction (in FIG. 13(b)), in the top view of the floor map 50, or (ii) whether or not there are two pairs of first markers 11a8 and 11a9 in the first direction or the second direction (in FIG. 13(b)), in the vertical direction (Y-axis direction) or the horizontal direction (X-axis direction) of the floor map 50) in the top view of the floor map 50, or If there are one or more pairs of marker 11a7 and other first markers 11a6, 11a8 adjacent to each other in the first direction and the second direction (in (b) of Figure 13, the vertical direction (Y-axis direction)) and the horizontal direction (X-axis direction) of floor map 50) when viewed from above on floor map 50, and if other first markers 11a6, 11a9 are used to set the boundary, then other first markers 11a6, 11a9 may be excluded from the marker candidates for setting the boundary with first marker 11a8.
[0163] As a result, when there are multiple marker candidates for the first markers 11a7 and 11a8, the driving map creation device 100 excludes the first marker that has already been used to set the boundary from the marker candidates, thereby enabling accurate boundary setting.
[0164] For example, in the traveling map creation device 100, in the case of (i) or (ii) above, when the first marker 1a (see (a) of Figure 12) and another first marker 1b are installed parallel to each other on a single wall on a specified floor, the no-entry information generation unit 127 may further exclude the other first marker 1b from the marker candidates.
[0165] This allows the driving map creation device 100 to set the boundary as a line connecting the first marker 1a with another first marker 1b arranged in a direction perpendicular to the direction along one wall surface, thereby ensuring reliable boundary setting.
[0166] For example, in the driving map creation device 100, the second markers 31a1, 31a2, and 31a3 (see (b) of Figure 13) are markers for setting a boundary surrounding a no-entry area, and the no-entry information generation unit 127 may set a boundary 41a1 that surrounds an area of a predetermined size and shape as a no-entry area from the position of the second marker 31a1 on the floor map.
[0167] This allows the driving map creation device 100 to generate no-entry information corresponding to the type of marker, making it possible to easily set no-entry areas on a driving map.
[0168] The travel map creation method is a travel map creation method for creating a travel map for the autonomous mobile robot 300 that travels autonomously within a predetermined floor, and includes a positional relationship acquisition step (step S03 in FIG. 7) of detecting objects around the robot and acquiring a positional relationship of the object relative to the robot itself, a floor map creation step (step S05) of creating a floor map showing the predetermined floor based on the positional relationship acquired in the positional relationship acquisition step, a self-position calculation step (step S06) of calculating the robot's own position on the floor map created in the floor map creation step, a marker identification step (step S08) of identifying markers present around the robot itself, and a marker identification step (step S09) of identifying markers present around the robot itself. The method includes a marker position calculation step (step S09) for calculating the relative position of the marker, a mode switching step (step S07) for switching between a floor map creation mode for creating a floor map and a marker identification mode for identifying the marker, a no-entry information generation step (step S10) for setting boundaries of a no-entry area where entry of the autonomous mobile robot 300 is prohibited based on the floor map, its own position, and the relative position of the marker, and generating no-entry information including boundary information indicating the set boundaries, and a driving map creation step (step S11) for creating a driving map in which no-entry areas are set based on the no-entry information generated in the no-entry information generation step.
[0169] This allows the device that executes the driving map creation method to create a driving map with high accuracy.
[0170] (Other embodiments) Although the embodiments have been described above, the present disclosure is not limited to the above-described embodiments.
[0171] For example, in the embodiment, the driving map creation device 100 includes the position sensor 110 and the imaging unit 112, but it does not have to include the position sensor 110 and the imaging unit 112. For example, the driving map creation device 100 may be an information processing device that includes components other than the position sensor 110 and the imaging unit 112. In this case, a sensor including the position sensor 110 and the imaging unit 112 may be placed on a cart 190 and moved across a predetermined floor, and data acquired by the sensor may be output to the information processing device.
[0172] For example, in the embodiment, an example has been described in which the navigation map generated by the navigation map creation device 100 is transmitted to the autonomous navigation robot 300 via the network 10, but this is not limiting. For example, the navigation map creation device 100 may transmit the navigation map to the information terminal 200 via the network 10, and the information terminal 200 may transmit the acquired navigation map to the autonomous navigation robot 300 via the network 10. Note that the network 10 is a wide-area communication network such as the Internet, but may also be a local communication network such as Wi-Fi (registered trademark).
[0173] Furthermore, for example, the autonomous mobile robot 300 may acquire the map for travel via a USB (Universal Serial Bus) memory or the like in which the map for travel created by the map creation device for travel 100 is stored.
[0174] For example, in the embodiment, an example has been described in which the traveling map creation device 100 and the autonomous traveling robot 300 are separate entities, but the traveling map creation device 100 may also be realized as a single device incorporated into the autonomous traveling robot 300.
[0175] For example, although autonomous mobile robot system 400 is implemented by multiple devices in the embodiment, it may be implemented as a single device. Furthermore, when the system is implemented by multiple devices, the components of autonomous mobile robot system 400 may be distributed among the multiple devices in any manner. Furthermore, for example, a server device capable of communicating with autonomous mobile robot system 400 may include multiple components included in control units 120 and 340.
[0176] For example, the communication method between the devices in the above-described embodiment is not particularly limited. Furthermore, a relay device (not shown) may be involved in the communication between the devices.
[0177] In the above-described embodiment, the processing performed by a specific processing unit may be performed by another processing unit. The order of multiple processing operations may be changed, or multiple processing operations may be performed in parallel.
[0178] In the above-described embodiments, each component may be realized by executing a software program suitable for that component, or by a program execution unit such as a CPU or processor reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory.
[0179] Furthermore, each component may be realized by hardware. For example, each component may be a circuit (or integrated circuit). These circuits may form a single circuit as a whole, or each may be a separate circuit. Furthermore, each of these circuits may be a general-purpose circuit or a dedicated circuit.
[0180] Furthermore, the general or specific aspects of the present disclosure may be realized as a system, an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, or may be realized as any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium.
[0181] For example, the present disclosure may be realized as a navigation control method executed by a computer such as the navigation map creation device 100, or as a program for causing a computer to execute such a navigation control method. Furthermore, the present disclosure may be realized as a program for causing a general-purpose computer to operate as the navigation map creation device 100 of the above-described embodiment. The present disclosure may also be realized as a computer-readable non-transitory recording medium on which such a program is recorded.
[0182] In addition, this disclosure also includes forms obtained by applying various modifications to each embodiment that a person skilled in the art would think of, or forms realized by arbitrarily combining the components and functions of each embodiment within the scope that does not deviate from the intent of this disclosure. [Industrial Applicability]
[0183] The present disclosure is widely applicable to creating maps for the navigation of autonomously traveling robots. [Explanation of symbols]
[0184] 1a, 1b, 1c, 1d, 1e1, 1e2, 1g1, 1g2, 1f1, 1f2, 1h1, 1h2, 11a1, 11a2, 11a3, 11a4, 11a5, 11a6, 11a7, 11a8, 11a9, 11a10, 11a11, 11a12 First marker 2a, 2b, 2c, 2d, 21a1, 21a2, 21a3, 21a4, 21a5, 21a6 lines 10 Network 31a1, 31a2, 31a3 Second marker 41a1, 41a2, 41a3 boundaries 100 Traveling map creation device 101 Main Unit 110 Position Sensor 112 Imaging unit 112a RGB camera 112b Infrared sensor 112c projector 120 control section 121 Acquisition Department 122 Mode switching section 123 Self-position calculation unit 124 Floor Map Creation Department 125 Marker Identification Unit 126 Marker position calculation unit 127 Entry prohibited information generation unit 128 Driving Map Creation Unit 130 Storage section 140 Reception 150 Notification Department 160 Communications Department 190 carts 191 Handle 192 Stand 200 Information terminal 210 Communications Department 220 Control Unit 230 Notification Department 240 Reception 250 Storage section 300 Autonomous Robot 301 Main Unit 310 Communications Department 320 Position Sensor 330 Obstacle Sensor 340 Control Unit 341 Driving map acquisition unit 342 Self-position calculation unit 343 Driving Plan Creation Department 344 Obstacle position calculation unit 345 Travel control unit 346 Cleaning control unit 350 Storage section 360 Running part 370 Cleaning Department 361 wheels 371 Side Brush 372 Main Brush 373 Suction port 400 Autonomous Driving Robot System
Claims
1. A travel map creation device that creates a travel map for an autonomous travel robot that travels autonomously within a predetermined floor, a position sensor that detects an object around the vehicle and acquires a positional relationship of the object with respect to the vehicle; a floor map creation unit that creates a floor map showing the predetermined floor based on the positional relationship acquired by the position sensor; a self-position calculation unit that calculates a self-position, which is a position of the user on the floor map created by the floor map creation unit; a marker identification unit that identifies markers present around the user; a marker position calculation unit that calculates a relative position of the marker with respect to itself; a mode switching unit that switches between a floor map creation mode that creates the floor map and a marker identification mode that identifies the marker; an entry prohibition information generation unit that sets a boundary of a no-entry area into which the autonomous mobile robot is prohibited from entering based on the floor map, the self-location, and the relative position of the marker, and generates entry prohibition information including boundary information that indicates the set boundary; a driving map creation unit that creates a driving map in which no-entry areas are set based on the no-entry information generated by the no-entry information generation unit; Equipped with Traveling map creation device.
2. The mode switching unit switches to the floor map creation mode when the traveling map creation device is traveling, and switches to the marker identification mode when the traveling map creation device is stationary. The driving map generation device according to claim 1.
3. The driving map creation device further includes a reception unit that receives an instruction to switch modes, When the instruction is received by the receiving unit, the mode switching unit switches between the floor map creation mode and the marker identification mode in accordance with the instruction. The driving map generation device according to claim 1.
4. The floor map creation unit does not reflect the relative positions of the markers identified by the marker identification unit on the floor map when the traveling map creation device is traveling, and reflects the relative positions of the markers identified by the marker identification unit on the floor map when the traveling map creation device is stationary. The driving map creation device according to any one of claims 1 to 3.
5. the marker identification unit identifies the marker based on data sensed by at least one of the position sensor and a sensor different from the position sensor; the position sensor is a LIDAR; The sensor different from the position sensor is a distance image sensor. The driving map creation device according to any one of claims 1 to 4.
6. the marker identification unit further identifies the type of the marker; the type of the marker is at least one of a reflective marker, an identification marker, a projected light, a body movement, and a number of fingers; The no-entry information generating unit generates no-entry information corresponding to the type of the marker identified by the marker identifying unit. The driving map creation device according to any one of claims 1 to 5.
7. The driving map creation device further includes a notification unit, The notification unit notifies the user that the marker identification unit has identified the marker by using at least one of sound, light, and image. The driving map creation device according to any one of claims 1 to 6.
8. The driving map creation device further includes a communication unit that can be connected to an information terminal used by a user, The communication unit notifies the information terminal that the marker identification unit has identified the marker. The driving map creation device according to any one of claims 1 to 7.
9. the markers include a first marker for setting the boundary and a second marker that is different from the first marker and does not set the boundary; the marker identification unit identifies whether the marker is the first marker or the second marker in identifying the marker; The no-entry information generating unit calculating a position of the marker on the floor map based on the floor map, the self-location, and a relative position of the marker; The calculated position of the marker on the floor map is associated with information indicating whether the identified marker is the first marker or the second marker, and the associated information is stored in a database. The driving map creation device according to any one of claims 1 to 8.
10. The no-entry information generating unit extracting the first marker from the plurality of markers on the floor map stored in the database; When there is only one pair of the extracted first marker and another first marker adjacent to the extracted first marker in a first direction parallel to a wall surrounding the extracted first marker in a top view of the floor map or in a second direction perpendicular to the first direction, a line connecting the pair of the first markers and the other first markers is set as the boundary. The driving map generation device according to claim 9.
11. The no-entry information generating unit (i) when there are two pairs of the extracted first marker and another first marker adjacent to the extracted first marker in the first direction or the second direction in the top view of the floor map, or (ii) when there are one or more pairs of the extracted first marker and another first marker adjacent to the extracted first marker in each of the first direction and the second direction in the top view of the floor map, and when the other first marker is used to set the boundary, the other first marker is excluded from the combination candidates for setting the boundary with the extracted first marker. The driving map generation device according to claim 10.
12. The no-entry information generating unit further In the case of (i) or (ii), if the first marker and the other first marker are installed parallel to one another on a wall surface on the predetermined floor, the other first marker is excluded from the combination candidates. The driving map generation device according to claim 11.
13. the second marker is a marker for setting a boundary surrounding the no-entry area, The no-entry information generating unit The boundary is set to surround an area of a predetermined size and shape as the no-entry area from the position of the second marker on the floor map. The driving map creation device according to any one of claims 10 to 12.
14. A method for creating a map for travel of an autonomously traveling robot that travels autonomously within a predetermined floor, comprising: a positional relationship acquisition step of detecting an object around the user and acquiring a positional relationship of the object with respect to the user; a floor map creation step of creating a floor map showing the predetermined floor based on the positional relationship acquired in the positional relationship acquisition step; a self-position calculation step of calculating a self-position that is a position of the user on the floor map created in the floor map creation step; a marker identification step of identifying markers present around the user; a marker position calculation step of calculating a relative position of the marker with respect to the self; a mode switching step of switching between a floor map creation mode for creating the floor map and a marker identification mode for identifying the marker; a no-entry information generation step of setting a boundary of a no-entry area into which the autonomous mobile robot is prohibited from entering, based on the floor map, the self-location, and the relative position of the marker, and generating no-entry information including boundary information indicating the set boundary; a driving map creation step of creating a driving map in which no-entry areas are set based on the no-entry information generated in the no-entry information generation step; Contains How to create a driving map.
15. A method for causing a computer to execute the driving map creation method according to claim 14. program.
Citation Information
Patent Citations
Automatic-mobile robot walking scope restriction system and restriction method thereof
CN103631262A
robot vacuum cleaner
JP2017501473A
Autonomous vacuum cleaner
JP2019185500A
Map generation device, map generation method, and program
JP6742479B1
Methods and Systems for Map Generation and Alignment
US20180306587A1