Mobile body, server device, movement control system, movement control method, and program

The system addresses inaccuracies in moving body control by analyzing marker errors and adjusting speed, ensuring accurate guidance and reduced errors in movement control.

JP7704411B2Active Publication Date: 2025-07-08NEC COMM SYST LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2021164002
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-05
Publication Date
2025-07-08
Estimated Expiration
2041-10-05

AI Technical Summary

Technical Problem

Existing systems for controlling the movement of moving bodies using markers are prone to errors due to camera performance, shooting environment, and moving situation, leading to inaccurate guidance or prolonged time to reach the correct position.

Method used

A system that includes an imaging unit, position calculation unit, error calculation unit, and movement control unit to analyze markers, calculate estimated maximum error values, and adjust movement speed based on these errors to ensure accurate control.

Benefits of technology

Reduces the influence of shooting environment and moving situation errors, enabling precise control of moving bodies by adjusting speed based on calculated error thresholds.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007704411000007
    Figure 0007704411000007
  • Figure 0007704411000008
    Figure 0007704411000008
  • Figure 0007704411000009
    Figure 0007704411000009
Patent Text Reader

Abstract

To provide a moving body etc., capable of reducing influence of a photographic environment error and an operation state error caused when a marker is photographed from the moving body so as to contribute to accurate control over the moving body.SOLUTION: A moving body comprises: a photography part which photographs a marker; a position calculation part which analyzes a marker in an image photographed by the photography part based upon photographic setting information including a resolution and an angle of field set at the photography part, a kind set in advance for the marker, identification information, and presetting information including a size so as to calculate a position of the moving body itself; an error calculation part which calculates an estimated maximum error value associated with a position of the marker based upon the position of the moving body itself, the presetting information, and the photographic setting information; and a moving body control part which controls the moving body to move along a travel path on a map where the position of the moving body itself is previously set, and also controls the moving speed of the moving body itself to be smaller than a reference moving speed when the estimated maximum error value is larger than an error threshold.SELECTED DRAWING: Figure 19
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a moving body, a server device, a movement control system, a movement control method, and a program.

Background Art

[0002] By photographing a reference point marker attached to a reference point such as a wall or a pillar with a camera mounted on a moving body, position information (coordinate information, attitude information) of the moving body with respect to the reference point can be obtained. By sharing in advance the absolute position, absolute direction, and size of the reference point marker attached to the reference point and using the reference point marker as a landmark, the position (coordinates, attitude) of the moving body with respect to the reference point can be acquired / grasped.

[0003] Also, by photographing a marker attached to a moving body with a camera provided at a reference point such as a building, position information (coordinate information, attitude information) of the moving body with respect to the reference point can be obtained. By sharing in advance the absolute position and absolute direction of the reference point and the size of the marker attached to the moving body, the position (coordinates, attitude) of the moving body with respect to the reference point can be acquired / grasped.

[0004] As described above, by acquiring / grasping the position of a moving body using a marker, controlling the movement of the moving body is generally performed. For example, in Patent Document 1, by photographing a reference point marker attached to a reference point such as a wall or a pillar with a camera mounted on a moving body, position information of the moving body is recognized, and by photographing an article marker attached to an article, the position of the article relative to the position of the moving body is recognized, and a system for managing the respective positions of the moving body and the article is disclosed. Also, in Patent Document 2, a system for recognizing the position of a moving body by photographing a marker attached to the moving body with a camera provided in a building is disclosed.

[0005] In these systems, an error may occur between the actual position of the moving object and its calculated position as the moving object moves. As a technique for reducing such an error (position error), there is one that controls the movement of the moving object according to the estimated error. For example, Patent Document 3 discloses a system that creates a calculation accuracy map using the distance between an autonomous mobile vehicle and a landmark and controls the movement of the autonomous mobile vehicle according to the calculation accuracy of the calculation accuracy map. Further, Patent Document 4 discloses a system that creates an error registration map using the distance between an autonomous mobile device and a landmark and makes a movement plan for the autonomous mobile device based on the error registration map. Furthermore, Patent Document 5 discloses a system in which reliability is defined for feature points obtained from individual markers so that they can be used.

Prior Art Documents

Patent Documents

[0006]

Patent Document 1

Patent Document 2

Patent Document 3

Patent Document 4

Patent Document 5

Summary of the Invention

Problems to be Solved by the Invention

[0007] The following analysis is provided by the inventor of the present application.

[0008] However, in the control of a moving body using markers, the error of the moving body is not only the error (position error) between the actual position of the moving body and the calculated position of the moving body during movement, but also the error (vertex detection error) in detecting the vertices at the four corners of the marker due to the performance of the camera such as the resolution and the viewing angle of the camera. In addition, the shooting environment such as the brightness at the time of shooting, and the vibration due to the speed and shaking of the moving body affect the appearance of the captured marker, so errors due to the shooting environment and the moving situation of the moving body (shooting environment error, moving situation error) also occur. Such errors cause problems such as the moving body not being able to be guided to the correct position or taking a long time to be guided to the correct position. In this regard, in the systems of Patent Documents 3 to 5, since the shooting environment error and the moving situation error are not considered, there is a possibility that the moving body cannot be accurately controlled.

[0009] A main object of the present invention is to provide a moving body, a server device, a moving body control system, a moving body control method, and a program that can contribute to reducing the influence of shooting environment errors and moving situation errors when a marker is photographed from a moving body and accurately controlling the moving body.

Means for Solving the Problems

[0010] The mobile object according to the first viewpoint includes an imaging unit configured to image a marker, imaging setting information including the resolution and the angle of view set in the imaging unit, and preset information including the type, identification information, and size of the marker. Based on this, a position calculation unit configured to analyze the marker in the image captured by the imaging unit and calculate the position of the mobile object itself, an error calculation unit configured to calculate an estimated maximum error value regarding the position of the marker based on the position of the mobile object itself, the preset information, and the imaging setting information, and the position of the mobile object itself is controlled to move along a travel route on a preset map, and when the estimated maximum error value is greater than a preset error threshold, the movement speed of the mobile object itself is controlled to be lower than a preset reference movement speed, and when the estimated maximum error value is less than or equal to the error threshold, the movement speed of the mobile object itself is controlled to be greater than or equal to the reference movement speed. It is configured to include a movement control unit.

[0011] The server device according to the second viewpoint includes a receiving unit configured to receive, from the mobile object, image data including a marker captured by the imaging unit of the mobile object, imaging setting information including the resolution and the angle of view set in the imaging unit, and preset information including the type, identification information, and size of the marker. Based on this, a position calculation unit configured to analyze the marker in the image data and calculate the position of the mobile object, an error calculation unit configured to calculate an estimated maximum error value regarding the position of the marker based on the position of the mobile object, the preset information, and the imaging setting information, and control information is generated so that the position of the mobile object moves along a travel route on a preset map, and when the estimated maximum error value is greater than a preset error threshold, the control information is generated so that the movement speed of the mobile object is lower than a preset reference movement speed, and when the estimated maximum error value is less than or equal to the error threshold, the control information is generated so that the movement speed of the mobile object is greater than or equal to the reference movement speed. It is configured to include a control information generation unit and a transmission unit configured to transmit the control information to the mobile object.

[0012] The movement control system according to the third perspective includes a marker and a moving body according to the first perspective.

[0013] The movement control system according to the fourth perspective includes a moving body including a marker, an imaging unit configured to image the marker, and a transmission unit configured to transmit image data including the marker imaged by the imaging unit to the outside, and a server device according to the second perspective.

[0014] The movement control method according to the fifth perspective is a movement control method in which a moving body autonomously controls its own movement, and includes a step of imaging a marker with an imaging unit of the moving body, and based on imaging setting information including the resolution and the angle of view set in the imaging unit, and pre-set information including the type, identification information, and size pre-set for the marker, analyzing the marker in the image captured by the imaging unit to calculate the position of the moving body itself, calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body itself, the pre-set information, and the imaging setting information, controlling the moving body to move along a travel route on a pre-set map, and when the estimated maximum error value is greater than a pre-set error threshold, controlling the moving speed of the moving body itself to be lower than a pre-set reference moving speed, and when the estimated maximum error value is less than or equal to the error threshold, controlling the moving speed of the moving body itself to be greater than or equal to the reference moving speed.

[0015] The movement control method according to the sixth aspect is a movement control method for controlling the movement of a moving body by the control of a server device, the method including the steps of: receiving, from the moving body, image data including a marker photographed by a photographing unit of the moving body; analyzing the marker in the image data to calculate the position of the moving body based on photographing setting information including the resolution and the field of view angle set in the photographing unit, and preliminary setting information including the type, identification information, and size preliminarily set for the marker; calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body, the preliminary setting information, and the photographing setting information; generating control information so that the moving body moves along a travel route on a preset map, and generating the control information so that the moving speed of the moving body is lower than a preset reference moving speed when the estimated maximum error value is greater than a preset error threshold value, and generating the control information so that the moving speed of the moving body is equal to or higher than the reference moving speed when the estimated maximum error value is equal to or lower than the error threshold value; and transmitting the control information to the moving body.

[0016] The program according to the seventh perspective is a program for causing the mobile object to execute a process of autonomously controlling its own movement, the process of photographing a marker with a photographing unit of the mobile object, photographing setting information including the resolution and the viewing angle set in the photographing unit, and, based on the pre-set information including the type, identification information, and size of the marker, the process of analyzing the marker in the image photographed by the photographing unit to calculate the position of the mobile object itself, the process of calculating an estimated maximum error value regarding the position of the marker based on the position of the mobile object itself, the pre-set information, and the photographing setting information, and controlling the mobile object to move along a travel route on a pre-set map of its own position, and controlling the movement speed of the mobile object itself to be lower than a pre-set reference movement speed when the estimated maximum error value is greater than a pre-set error threshold, and controlling the movement speed of the mobile object itself to be equal to or higher than the reference movement speed when the estimated maximum error value is less than or equal to the error threshold, and causing the mobile object to execute the processes.

[0017] The program according to the eighth perspective is a program that causes the server device to execute a process of controlling the movement of the moving body by controlling the server device, the process of receiving, from the moving body, image data including a marker photographed by the photographing unit of the moving body, and the photographing setting information including the resolution and the viewing angle set in the photographing unit, and based on the preset information including the type, identification information, and size of the marker, analyzing the marker in the image data to calculate the position of the moving body, calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body, the preset information, and the photographing setting information, generating control information so that the moving body moves along a traveling route on a preset map, and generating the control information so that the moving speed of the moving body is lower than a preset reference moving speed when the estimated maximum error value is greater than a preset error threshold, and generating the control information so that the moving speed of the moving body is equal to or higher than the reference moving speed when the estimated maximum error value is less than or equal to the error threshold, and causing the server device to execute the process of transmitting the control information to the moving body.

[0018] Note that the program can be recorded on a computer-readable storage medium. The storage medium can be a non-transient one such as a semiconductor memory, a hard disk, a magnetic recording medium, or an optical recording medium. Also, in the present disclosure, it is also possible to embody it as a computer program product. The program is input into a computer device through an input device or externally via a communication interface, stored in a storage device, drives a processor according to a predetermined step or process, and can display the processing result including an intermediate state step by step via a display device as necessary, or communicate with the outside via a communication interface. A computer device for this purpose typically includes, as an example, a processor, a storage device, an input device, a communication interface, and a display device that can be connected to each other by a bus as necessary.

Advantages of the Invention

[0019] According to the first to eighth viewpoints, it is possible to reduce the influence of shooting environment errors and movement situation errors when shooting markers from a moving body, and contribute to accurately controlling the moving body.

Brief Description of Drawings

[0020]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Mode for Carrying Out the Invention

[0021] Hereinafter, embodiments will be described with reference to the drawings. In the present application, when reference numerals are attached to the drawings, they are solely for the purpose of assisting understanding and are not intended to limit the illustrated embodiments. Further, the following embodiments are merely examples and do not limit the present invention. Also, the connection lines between blocks such as the drawings referred to in the following description include both bidirectional and unidirectional ones. The one-way arrow schematically shows the flow of the main signal (data) and does not exclude bidirectionality. Furthermore, in the circuit diagrams, block diagrams, internal configuration diagrams, connection diagrams, etc. shown in the present application disclosure, although not explicitly shown, input ports and output ports exist at the input end and output end of each connection line, respectively. The same applies to the input / output interface. The program is executed via a computer device, and the computer device includes, for example, a processor, a storage device, an input device, a communication interface, and a display device as necessary. The computer device is configured to be able to communicate with devices inside or outside the device (including computers) via the communication interface, whether wired or wireless.

[0022] [Embodiment 1] The movement control system according to Embodiment 1 will be described with reference to the drawings. FIG. 1 is a block diagram schematically showing the configuration of the movement control system according to Embodiment 1. FIG. 2 is an image diagram schematically showing an example of the usage mode of the movement control system according to Embodiment 1. FIG. 3 is a table schematically showing an example of the article position information used in the movement control system according to Embodiment 1. FIG. 4 is a table schematically showing an example of the article position error information used in the movement control system according to Embodiment 1.

[0023] The movement control system 1 is a system that controls the moving body 30 by using reference point markers 12 attached in advance to reference points (predetermined positions of the wall 10 and the pillar 11 in FIG. 2) (see FIG. 1). The movement control system 1 is configured to perform autonomous movement control along a travel route on a preset map of the moving body 30 by using information (identification information, absolute position, absolute direction, size) related to the reference point marker 12. The movement control system 1 in FIG. 1 is applied to manage (inventory management) the positions (absolute positions) of a plurality (a plurality of pieces or a plurality of types) of articles 20 in the warehouse 5 automatically by using the moving body 30 as shown in FIG. 2, but is not limited thereto. The movement control system 1 can be applied not only to inventory management in the logistics industry and the warehouse industry, but also to automatic inspection (cases of automatically traveling for inspection) in factories in the manufacturing industry, public infrastructures such as tunnels and roads, and automatic driving of the moving body 30. The movement control system 1 includes one or more reference point markers 12, one or more article markers 21, one or more moving bodies 30, and a server device 50.

[0024] Here, reference point markers 12a and 12b (corresponding to the reference point marker 12 in FIG. 1) for identifying the reference points are attached to the reference points such as the wall 10 and the pillar 11 in the warehouse 5 in FIG. 2. The reference point markers 12a and 12b serve as landmarks. The reference point markers 12a and 12b can be detected by the moving body 30 and serve as a basis for calculating the positions of the moving body 30 and the article 20. At least one reference point marker 12a or 12b is sufficient, and when there are a plurality of them, they are managed so as not to overlap. The reference points (wall 10, pillar 11) and the reference point markers 12a and 12b correspond one-to-one. The reference point markers 12a and 12b are managed in association with uniquely identifiable identification information, absolute position (coordinates), absolute direction (orientation: the direction in which the marker surface faces), size (marker side length, size, area, etc.), respectively. If the reference point markers 12a and 12b are identified, the absolute positions of the reference points (wall 10, pillar 11) can be specified.

[0025] Also, in the warehouse 5 of FIG. 2, a plurality of articles 20 are arranged at arbitrary positions. The articles 20 are, for example, containers stacked on pallets, cardboard boxes, machines, devices, etc. Each of the plurality of articles 20 is attached with an article marker 21. The article marker 21 can be detected by the moving body 30 and is used when calculating the relative position between the moving body 30 and the article 20. The plurality of article markers 21 are managed so as not to overlap. The article 20 and the article marker 21 correspond one-to-one. Each article marker 21 is managed in association with uniquely identifiable identification information and size (marker side length, size, area, etc.). If the article marker 21 is uniquely identified and the position of the article marker 21 is specified, it means that the position of the article 20 has been specified.

[0026] As the reference point markers 12a, 12b and the article marker 21, markers of any shape and size can be used as long as they can be detected by the moving body 30 and the relative position between the moving body 30 and the markers 12a, 12b, 21 can be calculated. For example, ArUco markers, QR (Quick Response) codes, AR (Augmented Reality) markers, etc. can be used. Printed matter of the markers can be used for the reference point markers 12a, 12b and the article marker 21. The printed markers are attached to predetermined positions of the article 20 and the warehouse 5.

[0027] The moving body 30 is an object that moves independently (see FIGS. 1 and 2). The moving body 30 travels inside the warehouse 5. The number of moving bodies 30 is not limited to one, and a plurality of them may be used. The moving body 30 is communicably connected (wirelessly communicable, wire communicable) to the server device 50. The moving body 30 may be communicably connected to the server device 50 via a network (not shown). In FIG. 1, a mobile robot capable of moving on the ground 13 is used as the moving body 30, but any object that can change its position inside the warehouse 5 may be used. For example, a work robot such as a forklift, a drone capable of moving in the space of the warehouse 5, a moving body that moves on a rail laid on the ceiling, a walking robot that patrols inside the warehouse 5, etc. may be used.

[0028] While moving, the moving body 30 has a function of photographing the reference point marker 12a or 12b, or the article marker 21. The moving body 30 analyzes the reference point marker 12a or 12b in the photographed image to calculate the relative position between the moving body 30 and the reference point marker 12a or 12b, and has a function of calculating the absolute position of the moving body 30 based on the preset absolute position of the reference point marker 12a or 12b. The moving body 30 analyzes the article marker 21 in the photographed image to calculate the relative position between the moving body 30 and the article marker 21, and has a function of calculating the absolute position of the article marker 21 based on the calculated absolute position of the moving body 30. The moving body 30 has a function of transmitting article position information including the absolute position of the article marker 21 (corresponding to the absolute position of the article 20) to the server device 50. The moving body 30 calculates the estimated maximum error value of the position of the reference point marker 12a or 12b or the article marker 21 that occurs when photographing the reference point marker 12a or 12b or the article marker 21, and has a function of controlling the moving speed of the moving body 30 based on the calculated estimated maximum error value.

[0029] When the moving body 30 is a mobile robot, it can be configured to include a frame, movable means (such as wheels, endless tracks, etc.), a power source (such as a motor, etc.), a power transmission mechanism (such as a transmission, etc.), a power supply (such as a battery, etc.), a steering means (such as a rudder, etc.), a safety function for preventing contact and collision, a communication function, a camera, etc. The moving body 30 includes a computer including a memory, a processor, etc. The moving body 30 can be configured to virtually include a photographing unit 31, a position calculation unit 32, an error calculation unit 33, a movement control unit 34, a position information transmission unit 35, a storage unit 36, and a drive unit 37 by executing a program in the processor while using the memory.

[0030] The imaging unit 31 is a functional unit that images the reference point markers 12 (12a, 12b) and the article marker 21 (see FIGS. 1 and 2). The imaging unit 31 generates data (image data) related to the captured image (for example, a two-dimensional image, a three-dimensional image). The imaging unit 31 outputs the generated image data to the position calculation unit 32 and the error calculation unit 33.

[0031] The position calculation unit 32 is a functional unit that calculates the absolute positions of the moving body 30 and the article 20 by analyzing the image data (see FIG. 1). The position calculation unit 32 acquires the image data from the imaging unit 31. The position calculation unit 32 acquires imaging setting information (for example, resolution, field angle, shutter speed, aperture value, zoom, etc.) from the storage unit 36. The position calculation unit 32 uses the acquired imaging setting information to analyze the acquired image data and detect each identification information related to the reference point marker 12 and the article marker 21.

[0032] Based on the recognition information related to the detected reference point marker 12, the position calculation unit 32 acquires information (absolute position, absolute direction, size) related to the corresponding reference point marker 12 from the storage unit 36. The position calculation unit 32 calculates the relative position between the reference point marker 12 and the moving body 30 based on the acquired information (absolute direction, size) related to the reference point marker 12 and the acquired image data (image of the reference point marker 12). The position calculation unit 32 calculates the absolute position (coordinates, attitude) of the moving body 30 based on the acquired information (absolute position) related to the reference point marker 12 and the calculated relative position between the reference point marker 12 and the moving body 30. The position calculation unit 32 outputs moving body position information including the calculated absolute position (relative position is also possible) of the moving body 30 to the movement control unit 34 and the error calculation unit 33.

[0033] The position calculation unit 32 acquires, from the storage unit 36, preset information (size) regarding the corresponding article marker 21 based on the recognition information related to the detected article marker 21. The position calculation unit 32 calculates the relative position between the article marker 21 and the moving body 30 based on the acquired preset information (size) regarding the article marker 21 and the acquired image data (image of the article marker 21). The position calculation unit 32 calculates the absolute position (coordinates, orientation) of the article marker 21 based on the calculated absolute position of the moving body 30 and the calculated relative position between the article marker 21 and the moving body 30. The position calculation unit 32 outputs article position information (see, for example, FIG. 3) including the calculated absolute position (or relative position) of the article marker 21 to the error calculation unit 33 and the position information transmission unit 35.

[0034] Note that, as a relative position calculation method for calculating the relative position between the reference point marker 12 and the moving body 30 and the relative position between the article marker 21 and the moving body 30, for example, a known calculation method such as the PNP (Perspective-n-Point) method can be used.

[0035] Here, the article position information related to the article marker 21 is information in which the identification information (ID) of the article marker 21, coordinate information (X-axis coordinate (X), Y-axis coordinate (Y), Z-axis coordinate (Z)), and orientation information (angle of the Z-axis (Yaw), angle of the Y-axis (Pitch), and angle of the X-axis (Roll)) are associated, as shown in FIG. 3.

[0036] The error calculation unit 33 is a functional unit that calculates the estimated maximum error value of the position of a marker (reference point marker 12 or article marker 21) (see, for example, the estimated maximum error value in FIG. 4) (see FIG. 1). The error calculation unit 33 acquires imaging setting information from the storage unit 36. The error calculation unit 33 acquires preset information (identification information, size, etc.) regarding the marker from the storage unit 36. The error calculation unit 33 acquires, from the position calculation unit 32, information necessary to calculate the distance between the marker and the moving body 30. When acquiring information necessary to calculate the distance between the reference point marker 12 and the moving body 30, the error calculation unit 33 may acquire, from the position calculation unit 32, information regarding the relative position between the reference point marker 12 and the moving body 30, or may acquire, from the storage unit 36, preset information regarding the article marker 21 and acquire, from the position calculation unit 32, moving body position information. When acquiring information necessary to calculate the distance between the article marker 21 and the moving body 30, the error calculation unit 33 may acquire, from the position calculation unit 32, information regarding the relative position between the article marker 21 and the moving body 30, or may acquire, from the position calculation unit 32, article position information and moving body position information. The error calculation unit 33 calculates the estimated maximum error value of the position of the reference point marker 12 or the article marker 21 (see, for example, the estimated maximum error value (coordinate error (see, for example, Equation 4), attitude error (see, for example, Equations 5 and 6)) in FIG. 4) based on the acquired information. The error calculation unit 33 outputs the calculated estimated maximum error value to the movement control unit 34. When the calculated estimated maximum error value is the estimated maximum error value of the position of the article marker 21, the error calculation unit 33 may output article position error information (see, for example, FIG. 4) including the acquired article position information and the calculated estimated maximum error value of the position of the article marker 21 to the movement control unit 34. Note that the details of the method for calculating the estimated maximum error value will be described later (see FIGS. 5 to 10).

[0037] The movement control unit 34 is a functional unit that controls the movement of the moving body 30 by controlling the drive unit 37 (see Fig. 1). The movement control unit 34 acquires moving body position information from the position calculation unit 32. While confirming the acquired moving body position information, the movement control unit 34 controls the movement of the moving body 30 so as to move along the path information on a preset map (while correcting so as not to deviate from the path information).

[0038] The movement control unit 34 acquires article position information from the position calculation unit 32. Based on the acquired moving body position information and article position information, the movement control unit 34 controls the movement of the moving body 30 so that the moving body 30 does not collide with the article 20.

[0039] The movement control unit 34 acquires an error threshold value (a preset threshold value) from the storage unit 36. The movement control unit 34 acquires the estimated maximum error value of the position of the reference point marker 12 or the article marker 21 from the error calculation unit 33. The movement control unit 34 determines whether the estimated maximum error value (coordinate error, attitude error) is greater than the error threshold value (coordinate error threshold value, attitude error threshold value). When the estimated maximum error value is greater than the error threshold value, the movement control unit 34 controls the movement of the moving body 30 so that the movement speed of the moving body 30 becomes smaller than the reference movement speed (a preset reference movement speed). When the estimated maximum error value is less than or equal to the error threshold value, the movement control unit 34 controls the movement of the moving body 30 so that the movement speed of the moving body 30 becomes equal to or higher than the reference movement speed. When controlling the movement of the moving body 30 so that it becomes equal to or higher than the reference movement speed, the movement control unit 34 may control the movement of the moving body 30 so that it becomes equal to or lower than the maximum movement speed (a preset maximum movement speed). In the determination of whether the estimated maximum error value is greater than the error threshold value, it may be determined whether all of the coordinate error and the attitude error are greater than the coordinate error threshold value and the attitude error threshold value, or it may be determined whether either the coordinate error or the attitude error is greater than the coordinate error threshold value and the attitude error threshold value.

[0040] Note that the result of the determination by the movement control unit 34 as to whether the estimated maximum error value is greater than the error threshold can also be used to detect a situation where the imaging condition of the marker is poor and an accurate position cannot be obtained. Thereby, the computational load on the moving body 30 can be reduced, and the moving body 30 can be controlled quickly. It can also be used to detect deterioration in the imaging condition of the marker.

[0041] The position information transmission unit 35 is a functional unit that transmits the article position information (see, for example, FIG. 3) acquired from the position calculation unit 32 toward the server device 50 (see FIG. 1).

[0042] The storage unit 36 is a functional unit that stores various data (see FIG. 1). The storage unit 36 stores, for example, imaging setting information (resolution, angle of view, shutter speed, aperture value, zoom, etc.) regarding the imaging unit 31, preset information (identification information, absolute position, absolute direction, size, etc.) regarding the reference point marker 12, preset information (identification information, size, etc.) regarding the article marker 21, a map (route information, etc.) on which the moving body 30 travels, an error threshold, and the like.

[0043] The drive unit 37 is a functional unit that drives the moving body 30 (see FIG. 1). The drive unit 37 drives the moving body 30 so that the moving body 30 moves forward, backward, turns left, or turns right under the control of the movement control unit 34. The drive unit 37 controls the moving speed of the moving body 30 under the control of the movement control unit 34.

[0044] The server device 50 is a device that manages (takes an inventory) the positions of each article 20 in the warehouse 5 based on the article position information from the mobile body 30 (see FIGS. 1 and 2). The server device 50 may be installed, for example, in an office other than the warehouse 5. The server device 50 is communicably connected to the mobile body 30 (wirelessly communicable, wire communicable). The server device 50 may be communicably connected to the mobile body 30 via a network (not shown). The server device 50 includes a computer including a memory, a processor, etc. The server device 50 virtually includes a position information receiving unit 51 and an article position management unit 52 by executing a program in the processor while using the memory.

[0045] The position information receiving unit 51 is a functional unit that receives the article position information transmitted from the mobile body 30 (see, for example, FIG. 3) (see FIG. 1). The position information receiving unit 51 outputs the received article position information to the article position management unit 52.

[0046] The article position management unit 52 is a functional unit that manages (takes an inventory) the positions of each article 20 based on the article position information from the position information receiving unit 51 (see FIG. 1). The article position management unit 52 also has a function of counting the number of articles.

[0047] Next, the causes of the position error and the attitude error of the marker in the mobile body control system according to Embodiment 1 will be described with reference to the drawings. Here, the article marker 21 will be described as an example of the marker, but the reference point marker 12 may also be used. FIG. 5 is an image diagram schematically showing the cause of the position error of the marker. FIG. 6 is an image diagram schematically showing the position error of the marker in the horizontal or vertical direction. FIG. 7 is an image diagram schematically showing the position error of the marker in the front-rear direction. FIG. 8 is an image diagram schematically showing the attitude error of the marker. FIG. 9 is an image diagram schematically showing the angular error of the X axis of the marker. FIG. 10 is an image diagram schematically showing the angular error of the Y axis or the Z axis of the marker.

[0048] FIG. 5 illustrates the factors causing the positional error of the article marker 21. In the PNP method used as a method for calculating the relative position between the article marker 21 and the imaging unit 31 (= moving body 30), when calculating the positions (coordinates, postures) of the article marker 21 and the imaging unit 31, the vertices at the four corners of the article marker 21 are detected and the positions are calculated. This detection deviation of the vertices becomes a factor of the error. When the article marker 21 is imaged by the imaging unit 31, there is a detection width of 1 Pixel for the four corners of the article marker 21 in the image according to the performance (angle of view, resolution) of the imaging unit 31. This detection width of 1 Pixel can be calculated as a positional error (coordinate error, posture error). Note that this detection width of 1 Pixel holds when the focus is in focus, and an error exceeding 1 Pixel may occur when the focus is out of focus. Here, the explanation is made on the premise of a situation where the focus is in focus (the detection width is within 1 Pixel). The case where the focus is out of focus will be described later.

[0049] When the imaging unit 31 is facing the positive direction of the X-axis, assuming that the article marker 21 is facing the imaging unit 31 directly, the coordinates related to the position of the article marker 21 can be expressed by the X-axis in the front-rear direction, the Y-axis in the horizontal direction, and the Z-axis in the vertical direction (see FIG. 5(A)). The difference between the physically measured (x, y, z) and the logically estimated (x', y', z') becomes the coordinate error of the marker.

[0050] Based on the coordinates of the vertices at the four corners of the article marker 21, the coordinates of the article marker 21 can be estimated (see FIG. 5(B)). A deviation occurs at the vertices at the four corners due to the size of the Pixel to be imaged. This becomes a factor of the coordinate error.

[0051] When calculating the four corners (vertices) of the article marker 21 and estimating the coordinates of the article marker 21, the upper right corner portion of the article marker 21 at the time of light reception by the imaging unit 31 is as shown in FIG. 5(C). The upper right corner portion of the article marker 21 as a result of light reception is blurred as shown in FIG. 5(D), and this blurring becomes a factor of the error.

[0052] Figures 6 and 7 illustrate the principle of the coordinate error of the article marker 21. The horizontal error in the coordinate error occurs when the article marker 21 is displaced horizontally (see Fig. 6). Since the horizontal error generates a maximum error of 1 Pixel, it has a maximum width of 1 Pixel. The size of 1 Pixel depends on the distance between the imaging unit 31 and the article marker 21. The horizontal (Y-axis direction) error "Y" can be expressed as in Equation 1. In Equation 1, "H" represents the horizontal angle of view of the imaging unit 31, "L" represents the distance between the imaging unit 31 and the article marker 21, and "Rh" represents the number of horizontal pixels of the imaging unit 31.

[0053] [Equation 1] TIFF0007704411000001.tif763

[0054] The vertical error in the coordinate error occurs when the article marker 21 is displaced vertically (see Fig. 6). Similar to the horizontal error, the vertical error also generates a maximum error of 1 Pixel, so it has a maximum width of 1 Pixel. The size of 1 Pixel depends on the distance between the imaging unit 31 and the article marker 21. The vertical (Z-axis direction) error "Z" can be expressed as in Equation 2. In Equation 2, "V" represents the vertical angle of view of the imaging unit 31, "L" represents the distance between the imaging unit 31 and the article marker 21, and "Rv" represents the number of vertical pixels of the imaging unit 31.

[0055] [Equation 2] TIFF0007704411000002.tif764

[0056] The error in the front-rear direction in the coordinate error is the case where the article marker 21 is displaced in the depth direction (see Fig. 7). The error in the front-rear direction includes the case where the shape of the article marker 21 becomes smaller and it appears to be in the forward direction, and the case where the shape of the article marker 21 becomes larger and it appears to be in the rear direction. Triangles T1 and T2 in Fig. 7 are both of the same size, and the error in the front-rear direction of the article marker 21 is the same error "X" in both the forward direction and the rear direction. Since the maximum displacement of 1 Pixel occurs in the front-rear direction, the maximum width is 1 Pixel. The size of 1 Pixel depends on the distance between the imaging unit 31 and the article marker 21. The error "X" in the front-rear direction (X-axis direction) can be expressed as in Equation 3. In Equation 3, "M" represents the side length of the article marker 21, "C" represents the error in the horizontal or vertical direction (the difference between the marker side length M and the line length A or line length B: corresponding to the horizontal error "Y" or the vertical error "Z"), and "L" represents the distance between the imaging unit 31 and the article marker 21.

[0057] [Equation 3] TIFF0007704411000003.tif777

[0058] The result of synthesizing these errors in the horizontal / vertical / front-rear directions (Y-axis / Z-axis / X-axis directions) is the coordinate error G in the estimated maximum error value of the marker, and the coordinate error G can be expressed as in Equation 4. [Equation 4] TIFF0007704411000004.tif945

[0059] Fig. 8 illustrates the principle of the posture error (angle error) of the article marker 21. The angle error indicates the deviation in the orientation of the article marker 21, and Fig. 8 shows the case where the detection of the vertex is displaced in the vertical direction. As in the enlarged views of vertices P1 and P2 in Fig. 8, when the upper left vertex P1 is misrecognized as being in the upward direction and the upper right vertex P2 is misrecognized as being in the downward direction, the angle error is maximized. When such a deviation occurs in the recognition of the vertex, the posture error (angle error) of the article marker 21 occurs.

[0060] Figures 9 and 10 illustrate the principle of the posture error (angle error) of the marker by dividing it into the X-axis and the Y-axis / Z-axis. The angle error (posture error) of the X-axis is the rotation error that the article marker 21 appears to rotate around the X-axis as the central axis, corresponding to Roll in FIG. 5 (see FIG. 9). As shown in FIG. 8, the angle error of the X-axis generates an error of up to 2 Pixcel. The angle "D1" of the triangle T3 obtained by the marker side length M and the error of 2 Pixcel (twice the horizontal error Y in Equation 1) becomes the angle error of the X-axis. The angle error "D1" of the X-axis can be expressed as in Equation 5.

[0061] [Equation 5] TIFF0007704411000005.tif875

[0062] The respective angle errors (posture errors) of the Y-axis and the Z-axis are the rotation errors that occur when the vertices of the article marker 21 are misdetected in the front-rear direction, corresponding to Yaw and Pitch in FIG. 5 (see FIG. 10). The respective angle errors of the Y-axis and the Z-axis occur because when the article marker 21 rotates, it is photographed smaller by the error C (corresponding to the error Y in Equation 1 or the error Z in Equation 2: an error of 1 Pixel). The angle "D2" of the triangle T4 obtained by the marker side length M / 2 and the error C (error Y, error Z) becomes the angle error of the Y-axis or the Z-axis. The respective angle errors "D2" of the Y-axis or the Z-axis can be expressed as in Equation 6. [Equation 6] TIFF0007704411000006.tif884

[0063] Note that the posture error (angle error) at the estimated maximum error value of the article marker 21 is the Roll of the X-axis, the Pitch of the Y-axis, and the Yaw of the Z-axis, respectively, as the angle errors, without synthesis.

[0064] The above is based on the premise that the shooting can be done in a focused state. Depending on the shooting environment (such as brightness and blur of the shooting unit 31), detection errors exceeding 1 Pixel may occur. The shooting environment can be estimated from the shooting setting information of the shooting unit 31 and the control information of the moving body 30. The in-focus range can be calculated from the focal length and the aperture value. Therefore, it is possible to determine whether the focus is in focus based on whether the distance between the shooting unit 31 obtained from the pre-set information of the marker and the marker is within a predetermined range. Also, the shorter the shutter speed, the more possible it is to determine whether the marker is clearly photographed. Furthermore, since the blur of the shooting unit 31 can be obtained by acquiring the moving speed and vibration of the moving body 30, it is possible to determine whether the marker is clearly photographed. As described above, by defining in advance how many Pixels of detection can occur at the four corners of the marker from the shooting setting information of the shooting unit 31 and the control information of the moving body 30, in a situation where the focus is not in focus, error calculation can be performed assuming that an error of 2 Pixels may occur. That is, error calculation is possible even in a situation where the focus is not in focus.

[0065] Next, the article position management operation of the movement control system according to Embodiment 1 will be described with reference to the drawings. FIG. 11 is a flowchart schematically showing the article position management operation of the movement control system according to Embodiment 1.

[0066] First, the moving body 30 shoots a marker (reference point marker 12, article marker 21) by the shooting unit 31 (step A1).

[0067] Next, the moving body 30 calculates the respective positions of itself and the article 20 based on the captured image by the position calculation unit 32 (step A2).

[0068] Next, the moving body 30 is controlled by the movement control unit 34 to travel along the travel route stored in the storage unit 36 based on the calculated position of itself (step A3).

[0069] Next, the moving body 30 transmits information related to the calculated position of the article 20 (article position information) to the server device 50 by the position information transmission unit 35 (step A4). Then, it returns to the start.

[0070] Next, the server device 50 receives the article position information from the moving body 30 by the position information receiving unit 51 (step A5).

[0071] Next, the server device 50 accumulates the position of the article 20 as an inventory result based on the received article position information by the article position management unit 52 (step A6). Then, it returns to the start. Note that the accumulated inventory result can be output when receiving an inventory operation by the user. Also, when receiving a position confirmation operation by the user, a table of the position of the article 20 or a diagram with the article 20 arranged on a map can be output.

[0072] Next, the movement control operation of the moving body in the movement control system according to Embodiment 1 (details of step A3 in FIG. 11) will be described with reference to the drawings. FIG. 12 is a flowchart schematically showing the movement control operation of the moving body in the movement control system according to Embodiment 1.

[0073] After step A2, the moving body 30 calculates an estimated maximum error value based on the calculated positions of itself and the article 20 by the error calculation unit 33, the shooting setting information stored in the storage unit 36, and the preset information (identification information, size, etc.) regarding the article marker 21 (step B1).

[0074] Next, the moving body 30 determines whether the calculated estimated maximum error value is greater than the error threshold stored in the storage unit 36 by the movement control unit 34 (step B2).

[0075] When the estimated maximum error value is greater than the error threshold (YES in step B2), the mobile body 30 is controlled by the movement control unit 34 to travel along the travel route stored in the storage unit 36 based on its calculated position, while controlling its travel so that its moving speed becomes smaller than the reference moving speed (predetermined reference moving speed) (step B3), and then proceeds to step A4.

[0076] When the estimated maximum error value is less than or equal to the error threshold (NO in step B2), the mobile body 30 is controlled by the movement control unit 34 to travel along the travel route stored in the storage unit 36 based on its calculated position, while controlling its travel so that its moving speed becomes equal to or higher than the reference moving speed (step B4), and then proceeds to step A4.

[0077] According to the first embodiment, since the moving speed of the mobile body 30 is controlled using the estimated maximum error value calculated in consideration of the shooting environment and the moving situation when the marker (12 or 21) is photographed from the mobile body 30, the influence of the shooting environment error and the moving situation error at the time of shooting can be reduced, and it is possible to contribute to accurately controlling the movement of the mobile body 30.

[0078] Also, according to the first embodiment, since the moving speed of the mobile body 30 is controlled to increase when the estimated maximum error value is small and the influence of the shooting environment error and the moving situation error is small, the mobile body 30 can be moved quickly, and the position of the article 20 can be managed quickly.

[0079] Also, according to the first embodiment, since the moving speed of the mobile body 30 is controlled to decrease when the estimated maximum error value is large and the influence of the shooting environment error and the moving situation error is large, the mobile body 30 can be moved accurately, and the position accuracy of the mobile body 30 can be improved. Therefore, the position accuracy of the article marker 21 collected by the mobile body 30 can also be improved, and the position of the article 20 can be accurately managed.

[0080] Further, according to Embodiment 1, not only the distance between the mobile body 30 and the marker obtained as a result of photographing the marker from the mobile body 30, but also the maximum estimated error value of the position of the marker is calculated in consideration of the photographing environment and the moving state at the time of photographing. Therefore, it is possible to obtain a more accurate estimation of the position of the marker.

[0081] [Embodiment 2] The mobile body control system according to Embodiment 2 will be described with reference to the drawings. FIG. 13 is a block diagram schematically showing the configuration of the mobile body control system according to Embodiment 2.

[0082] Embodiment 2 is a modification of Embodiment 1, and the position calculation and error calculation performed by the mobile body 30 in Embodiment 1 are performed by the server device 50.

[0083] The mobile body control system 2 is a system that controls the mobile body 40 using a reference point marker 12 attached to a reference point in advance (see FIG. 13). The mobile body control system 2 is configured to move the mobile body 40 along a preset travel route on a map under the control of the server device 60 using information (identification information, absolute position, absolute direction, size) related to the reference point marker 12. The mobile body control system 2 includes one or more reference point markers 12, one or more article markers 21, one or more mobile bodies 40, and a server device 60. The reference point marker 12 and the article marker 21 are the same as the reference point marker 12 and the article marker 21 in Embodiment 1.

[0084] The mobile body 40 is an object that moves under the control of the server device 60 (see FIG. 13). The mobile body 40 is the same as the mobile body 30 in Embodiment 1 (see FIG. 1), but by executing a program, it can be configured to virtually include a photographing unit 41, a transmitting unit 42, a receiving unit 43, a mobile body control unit 44, and a driving unit 45. The photographing unit 41 and the driving unit 45 are the same as the photographing unit 31 and the driving unit 37 in Embodiment 1 (see FIG. 1).

[0085] The transmission unit 42 is a functional unit that transmits predetermined data to the server device 60 (see FIG. 13). The transmission unit 42 is communicably connected to the server device 60 (wireless communication possible, wired communication possible). The transmission unit 42 may be communicably connected to the server device 60 via a network (not shown). The transmission unit 42 transmits the image data generated by the imaging unit 41 to the server device 60.

[0086] The reception unit 43 is a functional unit that receives predetermined data from the server device 60 (see FIG. 13). The reception unit 43 is communicably connected to the server device 60 (wireless communication possible, wired communication possible). The reception unit 43 may be communicably connected to the server device 60 via a network (not shown). The reception unit 43 receives control information from the server device 60. The reception unit 43 outputs the received control information toward the movement control unit 44.

[0087] The movement control unit 44 is a functional unit that controls the movement of the moving body 40 by controlling the drive unit 45 (see FIG. 13). The movement control unit 44 acquires control information from the reception unit 43. Based on the acquired control information, the movement control unit 44 controls the movement of the moving body 40 so that the moving body 40 does not collide with the article 20 while following (while correcting so as not to deviate from) the route information on a preset map. The movement control unit 44 controls the movement speed of the moving body 40 based on the acquired control information.

[0088] The server device 60 is a device that controls the movement of the moving body 40 based on the image data from the moving body 40 and manages (takes an inventory) the positions of the respective articles in the warehouse (see FIG. 13). The server device 60 is the same as the server device 50 of Embodiment 1, but by executing a program, it can be configured to virtually include a reception unit 61, a position calculation unit 62, an article position management unit 63, an error calculation unit 64, a control information generation unit 65, a transmission unit 66, and a storage unit 67. Note that the article position management unit 63, the error calculation unit 64, and the storage unit 67 are the same as the article position management unit 52, the error calculation unit 33, and the storage unit 36 of Embodiment 1 (see FIG. 1).

[0089] The receiving unit 61 is a functional unit that receives predetermined data from the mobile body 40 (see FIG. 13). The receiving unit 61 is communicably connected to the mobile body 40 (wireless communication possible, wired communication possible). The receiving unit 61 may be communicably connected to the mobile body 40 via a network (not shown). The receiving unit 61 receives image data from the mobile body 40. The receiving unit 61 outputs the received image data toward the position calculation unit 62.

[0090] The position calculation unit 62 is a functional unit that calculates the absolute positions of the mobile body 40 and the article (article marker 21) by analyzing the image data (see FIG. 13). The position calculation unit 62 acquires image data from the receiving unit 61. The position calculation unit 62 acquires shooting setting information (for example, resolution, angle of view, shutter speed, aperture value, zoom, etc.) from the storage unit 67. The position calculation unit 62 analyzes the acquired image data using the acquired shooting setting information to detect each identification information related to the reference point marker 12 and the article marker 21.

[0091] Based on the recognition information related to the detected reference point marker 12, the position calculation unit 62 acquires information (absolute position, absolute direction, size) related to the corresponding reference point marker 12 from the storage unit 67. The position calculation unit 62 calculates the relative position between the reference point marker 12 and the mobile body 40 based on the information (absolute direction, size) related to the acquired reference point marker 12 and the acquired image data (image of the reference point marker 12). The position calculation unit 62 calculates the absolute position (coordinates, posture) of the mobile body 40 based on the information (absolute position) related to the acquired reference point marker 12 and the calculated relative position between the reference point marker 12 and the mobile body 40. The position calculation unit 62 outputs mobile body position information including the calculated absolute position (or relative position) of the mobile body 40 toward the error calculation unit 64 and the control information generation unit 65.

[0092] The position calculation unit 62 acquires, from the storage unit 67, the preset information (size) regarding the corresponding article marker 21 based on the recognition information related to the detected article marker 21. The position calculation unit 62 calculates the relative position between the article marker 21 and the moving body 40 based on the acquired preset information (size) regarding the article marker 21 and the acquired image data (image of the article marker 21). The position calculation unit 62 calculates the absolute position (coordinates, posture) of the article marker 21 based on the calculated absolute position of the moving body 40 and the calculated relative position between the article marker 21 and the moving body 40. The position calculation unit 62 outputs article position information including the calculated absolute position (or relative position) of the article marker 21 to the article position management unit 63 and the error calculation unit 64.

[0093] The control information generation unit 65 is a functional unit that generates control information for controlling the movement of the moving body 40 (see FIG. 13). The control information generation unit 65 acquires the moving body position information from the position calculation unit 62. While checking the acquired moving body position information, the control information generation unit 65 generates control information for moving the moving body 40 according to the path information on the preset map (while correcting so as not to deviate from the path information).

[0094] The control information generation unit 65 acquires the article position information from the position calculation unit 62. Based on the acquired moving body position information and article position information, the control information generation unit 65 generates control information for controlling the movement of the moving body 40 so that the moving body 40 does not collide with the article 20.

[0095] The control information generation unit 65 acquires an error threshold value (a preset threshold value) from the storage unit 67. The control information generation unit 65 acquires an estimated maximum error value from the error calculation unit 64. The control information generation unit 65 determines whether the estimated maximum error value (coordinate error, attitude error) is greater than the error threshold value (coordinate error threshold value, attitude error threshold value). When the estimated maximum error value is greater than the error threshold value, the control information generation unit 65 generates control information for controlling the movement of the moving body 40 so as to be smaller than the reference movement speed (a preset reference movement speed). When the estimated maximum error value is less than or equal to the error threshold value, the control information generation unit 65 generates control information for controlling the movement of the moving body 40 so as to be equal to or higher than the reference movement speed. When controlling the movement of the moving body 40 so as to be equal to or higher than the reference movement speed, the control information generation unit 65 may generate control information for controlling the movement of the moving body 40 so as to be equal to or lower than the maximum movement speed (a preset maximum movement speed). In the determination of whether the estimated maximum error value is greater than the error threshold value, it may be determined whether all of the coordinate error and the attitude error are greater than the coordinate error threshold value and the attitude error threshold value, or it may be determined whether either the coordinate error or the attitude error is greater than the coordinate error threshold value and the attitude error threshold value.

[0096] The transmission unit 66 is a functional unit that transmits predetermined data to the moving body 40 (see FIG. 13). The transmission unit 66 is connected to the moving body 40 so as to be communicable (wirelessly communicable, wire communicable). The transmission unit 66 may be connected to the moving body 40 so as to be communicable via a network (not shown). The transmission unit 66 transmits the control information generated by the control information generation unit 65 to the moving body 40.

[0097] Next, the article position management operation of the movement control system according to Embodiment 2 will be described with reference to the drawings. FIG. 14 is a flowchart schematically showing the article position management operation of the movement control system according to Embodiment 2.

[0098] First, the moving body 40 captures markers (reference point marker 12, article marker 21) by the imaging unit 41 (step C1).

[0099] Next, the moving body 40 transmits, by the transmitter 42, the image data including the photographed markers (the reference point marker 12 and the article marker 21) to the server device 60 (step C2).

[0100] Next, the server device 60 receives, by the receiver 61, the image data from the moving body 40 (step C3).

[0101] Next, the server device 60 calculates, by the position calculation unit 62, the positions of the moving body 40 and the article 20 based on the received image data (step C4).

[0102] Next, the server device 60 generates, by the control information generation unit 65, control information for controlling the moving body 40 to travel along the travel route stored in the storage unit 67 based on the calculated position of the moving body 40 (step C5).

[0103] Next, the server device 60 transmits, by the transmitter 66, the generated control information to the moving body 40 (step C6).

[0104] Next, the server device 60 accumulates, by the article position management unit 63, the calculated position of the article 20 as an inventory result (step C7). Then, it returns to the start. Note that the accumulated inventory result can be output when a user receives an inventory operation. Also, when receiving a position confirmation operation by the user, a table of the position of the article 20 or a diagram with the article 20 arranged on a map can be output.

[0105] Next, the moving body 40 receives, by the receiver 43, the control information from the server device 60 (step C8).

[0106] Next, the moving body 40 controls, by the movement control unit 44, its own movement based on the received control information (step C9). Then, it returns to the start.

[0107] Next, the control information generation operation of the management server in the movement control system according to Embodiment 2 (details of step C5 in FIG. 14) will be described with reference to the drawings. FIG. 15 is a flowchart schematically showing the control information generation operation of the management server in the movement control system according to Embodiment 2.

[0108] After step C4, the server device 60 calculates an estimated maximum error value by the error calculation unit 64 based on the calculated positions of the moving body 40 and the article 20, the shooting setting information stored in the storage unit 67, and the preset information (identification information, size, etc.) regarding the article marker 21 (step D1).

[0109] Next, the server device 60 determines by the control information generation unit 65 whether the calculated estimated maximum error value is greater than the error threshold value stored in the storage unit 67 (step D2).

[0110] When the estimated maximum error value is greater than the error threshold value (YES in step D2), the server device 60 controls the moving body 40 to travel along the travel route stored in the storage unit 67 based on the calculated position of the moving body 40 by the control information generation unit 65, and generates control information for controlling the travel of the moving body 40 to be less than the reference travel speed (predetermined reference travel speed) (step D3), and then proceeds to step C6.

[0111] When the estimated maximum error value is less than or equal to the error threshold value (NO in step D2), the server device 60 controls the moving body 40 to travel along the travel route stored in the storage unit 67 based on the calculated position of the moving body 40 by the control information generation unit 65, and generates control information for controlling the travel of the moving body 40 to be equal to or higher than the reference travel speed (step D4), and then proceeds to step C6.

[0112] According to Embodiment 2, similar to Embodiment 1, the moving speed of the moving body 40 is controlled using the estimated maximum error value calculated in consideration of the shooting environment and the moving situation when the marker (12 or 21) is photographed from the moving body 40. Therefore, it is possible to reduce the influence of the shooting environment error and the moving situation error at the time of shooting, and contribute to accurately controlling the movement of the moving body 40. Further, according to Embodiment 2, since the calculation of the positions of the moving body 40 and the article 20 and the calculation of the estimated maximum error value are performed by the server device 60, the processing on the moving body 40 can be reduced.

[0113] [Embodiment 3] The movement control system according to Embodiment 3 will be described with reference to the drawings. FIG. 16 is a block diagram schematically showing the configuration of the movement control system according to Embodiment 3. FIG. 17 is an image diagram schematically showing an example of map information used in the movement control system according to Embodiment 3.

[0114] Embodiment 3 is a modification of Embodiment 2. The server device 60 initially operates in the same manner as in Embodiment 2 and sets the estimated maximum error value or the maximum movement speed for each section 71 (section where the estimated maximum error value or the maximum movement speed is not set) of the map information 70. After the next time, the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is greater than the error threshold are omitted, and control information for controlling the movement speed of the moving body 40 is generated according to the estimated maximum error value or the maximum movement speed of the section 71 (section where the estimated maximum error value or the maximum movement speed is set) of the map information 70 corresponding to the calculated position of the moving body 40 (see FIGS. 16 and 17). As a configuration for this purpose, a map information setting unit 68 is added to the server device 60.

[0115] Here, the map information 70 is information regarding a map used for movement control of the moving body 40 (see FIG. 17). For the map information 70, for example, data regarding the layout of a warehouse can be used. A reference point marker 12 is attached to the position that serves as the reference point of the map information 70. The map information 70 has a plurality of sections 71 partitioned in a grid pattern. For each section 71, the estimated maximum error value calculated by the error calculation unit 64 or the maximum movement speed included in the control information generated by the control information generation unit 65 can be set. Since the estimated maximum error value is calculated using the distance between the moving body 40 and the reference point marker 12, the calculation of the estimated maximum error value is possible if the position of the reference point marker 12 in the map information 70 can be grasped. In FIG. 17, the magnitude of the maximum movement speed is indicated by the shade from black to white. The darker the shade, the lower the maximum movement speed, and the lighter the shade, the higher the maximum movement speed.

[0116] The map information setting unit 68 is a functional unit that sets, for each section 71 in the map information 70 stored in the storage unit 67, for which the estimated maximum error value or the maximum movement speed is not set, the estimated maximum error value calculated by the error calculation unit 64 or the maximum movement speed included in the control information generated by the control information generation unit 65 (see FIG. 16). When the position calculation unit 62 calculates the position of the moving body 40, the map information setting unit 68 determines whether the estimated maximum error value or the maximum movement speed is not set for the section 71 corresponding to the position of the moving body 40 calculated by the position calculation unit 62 in the map information 70 stored in the storage unit 67. When the estimated maximum error value or the maximum movement speed is not set, the map information setting unit 68 sets, in the section 71 corresponding to the position of the moving body 40 calculated by the position calculation unit 62, the estimated maximum error value calculated by the error calculation unit 64 or the maximum movement speed included in the control information generated by the control information generation unit 65. When the estimated maximum error value or the maximum movement speed has already been set, the map information setting unit 68 does not set, in the section 71 corresponding to the position of the moving body 40 calculated by the position calculation unit 62, the estimated maximum error value calculated by the error calculation unit 64 or the maximum movement speed included in the control information generated by the control information generation unit 65.

[0117] When the estimated maximum error value or the maximum moving speed is not set for the section 71 corresponding to the position of the moving body 40 calculated by the position calculation unit 62, the control information generation unit 65 performs the same operation as the control information generation unit 65 in the second embodiment. However, when the estimated maximum error value or the maximum moving speed is already set, the control information generation unit 65 omits the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is greater than the error threshold, and generates control information. That is, when the estimated maximum error value or the maximum moving speed is already set, the control information generation unit 65 acquires the moving body position information and the article position information from the position calculation unit 62, and acquires the estimated maximum error value or the maximum moving speed set in the section 71 of the map information 70 corresponding to the position of the moving body 40 calculated by the position calculation unit 62 from the storage unit 67. The control information generation unit 65 generates control information in the same manner as the control information generation unit 65 in the second embodiment based on the acquired moving body position information, article position information, estimated maximum error value, or maximum moving speed. Note that when the control information generation unit 65 acquires the estimated maximum error value, it determines whether the estimated maximum error value is greater than the error threshold. However, when the maximum moving speed is acquired, the determination of whether the estimated maximum error value is greater than the error threshold can be omitted.

[0118] Other configurations and operations are the same as those in the second embodiment.

[0119] According to Embodiment 3, similar to Embodiment 2, the moving speed of the moving body 40 is controlled using the estimated maximum error value calculated in consideration of the shooting environment and the moving situation when the marker (12 or 21) is photographed from the moving body 40. Therefore, it is possible to reduce the influence of the shooting environment error and the moving situation error at the time of shooting, and contribute to accurately controlling the movement of the moving body 40. Further, according to Embodiment 3, using the map information 70 in which the estimated maximum error value or the maximum moving speed is set for each section 71, the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is larger than the error threshold value are omitted, and the moving speed of the moving body 40 can be controlled, and the processing load on the server device 60 can be reduced. Furthermore, by finely dividing the section 71 in the map information 70 and setting the estimated maximum error value or the maximum moving speed, the moving speed of the moving body 40 can be controlled more finely, and the position error of the moving body 40 can be reduced.

[0120] [Embodiment 4] The movement control system according to Embodiment 4 will be described with reference to the drawings. FIG. 18 is a block diagram schematically showing the configuration of the movement control system according to Embodiment 4.

[0121] Embodiment 4 is a modification of Embodiment 1. In the moving body 30, it operates in the same manner as Embodiment 1 for the first time, and the estimated maximum error value or the maximum moving speed is set for each section 71 (section where the estimated maximum error value or the maximum moving speed is not set) of the map information 70. After the next time, the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is larger than the error threshold value are omitted, and the moving speed of the moving body 30 is controlled according to the estimated maximum error value or the maximum moving speed of the section 71 (section where the estimated maximum error value or the maximum moving speed is set) of the map information 70 corresponding to the calculated position of the moving body 30 (see FIGS. 17 and 18). As a configuration for this purpose, a map information setting unit 38 is added to the moving body 30. Note that the map information 70 and the section 71 are the same as the map information 70 and the section 71 of Embodiment 3 (see FIG. 17).

[0122] The map information setting unit 38 is a functional unit that sets the estimated maximum error value or the maximum movement speed calculated by the error calculation unit 33, or the maximum movement speed when controlling the movement of the moving body 30 by the movement control unit 34, for each section 71 in the map information 70 stored in the storage unit 36 where the estimated maximum error value or the maximum movement speed is not set (see Fig. 18). When the position calculation unit 32 calculates the position of the moving body 30, the map information setting unit 38 determines whether the estimated maximum error value or the maximum movement speed is not set for the section 71 corresponding to the position of the moving body 30 calculated by the position calculation unit 32 in the map information 70 stored in the storage unit 36. When the estimated maximum error value or the maximum movement speed is not set, the map information setting unit 38 sets the estimated maximum error value calculated by the error calculation unit 33, or the maximum movement speed when controlling the movement of the moving body 30 by the movement control unit 34, for the section 71 corresponding to the position of the moving body 30 calculated by the position calculation unit 32. When the estimated maximum error value or the maximum movement speed has been set, the map information setting unit 38 does not set the estimated maximum error value calculated by the error calculation unit 33, or the maximum movement speed when controlling the movement of the moving body 30 by the movement control unit 34, for the section 71 corresponding to the position of the moving body 30 calculated by the position calculation unit 32.

[0123] When the estimated maximum error value or the maximum moving speed is not set for the section 71 corresponding to the position of the moving body 30 calculated by the position calculation unit 32, the movement control unit 34 performs the same operations as the movement control unit 34 in the first embodiment. However, when the estimated maximum error value or the maximum moving speed is already set, the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is greater than the error threshold are omitted, and the movement of the moving body 30 is controlled based on the estimated maximum error value or the maximum moving speed. That is, when the estimated maximum error value or the maximum moving speed is already set, the movement control unit 34 acquires the moving body position information and the article position information from the position calculation unit 32, and acquires the estimated maximum error value or the maximum moving speed set in the section 71 of the map information 70 corresponding to the position of the moving body 30 calculated by the position calculation unit 32 from the storage unit 36. The movement control unit 34 controls the movement of the moving body 30 in the same manner as the movement control unit 34 in the first embodiment based on the acquired moving body position information, article position information, estimated maximum error value, or maximum moving speed. Note that when the movement control unit 34 acquires the estimated maximum error value, it determines whether the estimated maximum error value is greater than the error threshold. However, when it acquires the maximum moving speed, the determination of whether the estimated maximum error value is greater than the error threshold can be omitted.

[0124] Other configurations and operations are the same as those in the first embodiment.

[0125] According to Embodiment 4, similar to Embodiment 1, the moving speed of the mobile body 30 is controlled using the estimated maximum error value calculated in consideration of the shooting environment and the moving situation when the marker (12 or 21) is photographed from the mobile body 30. Therefore, it is possible to reduce the influence of the shooting environment error and the moving situation error at the time of shooting, and contribute to accurately controlling the movement of the mobile body 30. Further, according to Embodiment 4, using the map information 70 in which the estimated maximum error value or the maximum moving speed is set for each section 71, the calculation of the estimated maximum error value and the determination of whether the estimated maximum error value is larger than the error threshold value are omitted, and the moving speed of the mobile body 30 can be controlled, and the processing load on the server device 60 can be reduced. Furthermore, by finely dividing the section 71 in the map information 70 and setting the estimated maximum error value or the maximum moving speed, the moving speed of the mobile body 30 can be controlled more finely, and the position error of the mobile body 30 can be reduced.

[0126] [Embodiment 5] The movement control system according to Embodiment 5 will be described with reference to the drawings. FIG. 19 is a block diagram schematically showing the configuration of the movement control system according to Embodiment 5.

[0127] The mobile body 30 is configured to analyze an image including the photographed marker 12 to calculate its own position and control its own movement. The mobile body 30 includes a photographing unit 31, a position calculation unit 32, an error calculation unit 33, and a movement control unit 34. The photographing unit 31 is configured to photograph the marker 12. The position calculation unit 32 is configured to analyze the marker 12 in the image photographed by the photographing unit 31 and calculate the position of the mobile body 30 itself based on the photographing setting information including the resolution and the field angle set in the photographing unit 31, and the preset information including the type, identification information, and size preset for the marker 12. The error calculation unit 33 is configured to calculate an estimated maximum error value regarding the position of the marker 12 based on the position of the mobile body 30 itself, the preset information, and the photographing setting information. The movement control unit 34 controls the mobile body 30 to move along a traveling route on a map where the position of the mobile body 30 itself is preset. When the estimated maximum error value is larger than a preset error threshold, the movement control unit 34 controls the movement speed of the mobile body 30 itself to be lower than a preset reference movement speed. When the estimated maximum error value is equal to or less than the error threshold, the movement control unit 34 controls the movement speed of the mobile body 30 itself to be equal to or higher than the reference movement speed.

[0128] According to Embodiment 5, since the movement speed of the mobile body 30 is controlled using the estimated maximum error value calculated in consideration of the photographing environment and the movement situation when the marker 12 is photographed from the mobile body 30, it is possible to reduce the influence of the photographing environment error and the movement situation error at the time of photographing, and contribute to accurately controlling the movement of the mobile body 30.

[0129] Note that a part of the mobile body and the server device according to Embodiments 1 to 5 can be configured by so-called hardware resources (information processing devices, computers), and those having the configuration illustrated in FIG. 20 can be used. For example, the hardware resource 100 includes a processor 101, a memory 102, a network interface 103, etc., which are interconnected by an internal bus 104.

[0130] Note that the configuration shown in FIG. 20 is not intended to limit the hardware configuration of the hardware resource 100. The hardware resource 100 may include hardware not shown (for example, an input / output interface). Alternatively, the number of units such as the processor 101 included in the apparatus is not intended to be limited to the example shown in FIG. 20. For example, a plurality of processors 101 may be included in the hardware resource 100. As the processor 101, for example, a CPU (Central Processing Unit), an MPU (Micro Processor Unit), a GPU (Graphics Processing Unit), or the like can be used.

[0131] As the memory 102, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like can be used.

[0132] As the network interface 103, for example, a LAN (Local Area Network) card, a network adapter, a network interface card, or the like can be used.

[0133] The functions of the hardware resource 100 are realized by the above-described processing modules. The processing modules are realized, for example, by the processor 101 executing a program stored in the memory 102. Further, the program can be downloaded via a network or updated using a storage medium storing the program. Furthermore, the above-described processing modules may be realized by semiconductor chips. That is, the functions performed by the above-described processing modules may be realized as long as software is executed in some hardware.

[0134] Some or all of the above embodiments may be described as follows in the appended claims, but are not limited thereto.

[0135] [Appended Claim 1] An imaging unit configured to image a marker, A position calculation unit configured to analyze the marker in the image captured by the imaging unit and calculate the position of the moving body itself based on the imaging setting information including the resolution and the field of view set in the imaging unit, and the preset information including the type, identification information, and size preset for the marker, An error calculation unit configured to calculate an estimated maximum error value regarding the position of the marker based on the position of the moving body itself, the preset information, and the imaging setting information, A movement control unit configured to control the movement of the moving body itself along a travel route on a preset map, and to control the movement speed of the moving body itself to be lower than a preset reference movement speed when the estimated maximum error value is greater than a preset error threshold, and to control the movement speed of the moving body itself to be equal to or higher than the reference movement speed when the estimated maximum error value is equal to or lower than the error threshold, A moving body comprising the above. [Appendix 2] Further comprising a map information setting unit configured to set, for each section in the preset map information where the estimated maximum error value or the maximum movement speed is not set, the estimated maximum error value calculated by the error calculation unit or the maximum movement speed when the movement control unit controls the movement of the moving body itself, The movement control unit controls the movement of the moving body itself using the estimated maximum error value or the maximum movement speed set in the section of the map information corresponding to the position of the moving body calculated by the position calculation unit, The moving body according to Appendix 1. [Appendix 3] The movement control unit is configured to control the movement speed of the moving body itself to be equal to or higher than the reference movement speed and equal to or lower than a preset maximum movement speed when the estimated maximum error value is equal to or lower than the error threshold, The moving body according to Appendix 1. [Appendix 4] A receiving unit configured to receive, from a moving body, image data including a marker captured by a photographing unit of the moving body; A position calculation unit configured to analyze the marker in the image data and calculate the position of the moving body based on photographing setting information including the resolution and the field angle set in the photographing unit, and preset information including the type, identification information, and size preset for the marker; An error calculation unit configured to calculate an estimated maximum error value regarding the position of the marker based on the position of the moving body, the preset information, and the photographing setting information; A control information generation unit configured to generate control information so that the moving body moves along a traveling route on a preset map, and to generate the control information so that when the estimated maximum error value is greater than a preset error threshold, the moving speed of the moving body is lower than a preset reference moving speed, and when the estimated maximum error value is equal to or less than the error threshold, the moving speed of the moving body is equal to or greater than the reference moving speed; A transmission unit configured to transmit the control information to the moving body; A server device comprising the above. [Appendix 5] Further comprising a map information setting unit configured to set, for each section in the preset map information where the estimated maximum error value or the maximum moving speed is not set, the estimated maximum error value calculated by the error calculation unit or the maximum moving speed when controlling the movement of the moving body; The control information generation unit generates the control information to control the movement of the moving body using the estimated maximum error value or the maximum moving speed set in the section of the map information corresponding to the position of the moving body calculated by the position calculation unit. The server device according to Appendix 4. [Appendix 6] The control information generation unit is configured to generate the control information so that when the estimated maximum error value is equal to or less than the error threshold, the moving speed of the moving body is equal to or greater than the reference moving speed and equal to or less than a preset maximum moving speed. The server device described in Supplementary Note 4. [Supplementary Note 7] A marker, a mobile object described in any one of Supplementary Notes 1 to 3, and a mobile control system including the same. [Supplementary Note 8] A marker, a mobile object including an imaging unit configured to image the marker, and a transmission unit configured to transmit image data including the marker imaged by the imaging unit to the outside, a server device described in any one of Supplementary Notes 4 to 6, and a mobile control system including the same. [Supplementary Note 9] A mobile control method for a mobile object to independently control its own movement, the step of imaging a marker with an imaging unit of the mobile object, analyzing the marker in the image captured by the imaging unit based on imaging setting information including the resolution and field angle set in the imaging unit, and pre-set information including the type, identification information, and size pre-set for the marker, and calculating the position of the mobile object itself, calculating an estimated maximum error value regarding the position of the marker based on the position of the mobile object itself, the pre-set information, and the imaging setting information, controlling the mobile object to move along a travel route on a pre-set map of its own position, and when the estimated maximum error value is greater than a pre-set error threshold, controlling the moving speed of the mobile object itself to be lower than a pre-set reference moving speed, and when the estimated maximum error value is less than or equal to the error threshold, controlling the moving speed of the mobile object itself to be greater than or equal to the reference moving speed, and a mobile control method including the same. [Supplementary Note 10] A mobile control method for controlling the movement of a mobile object by controlling a server device, the step of receiving, from the mobile object, image data including a marker imaged by an imaging unit of the mobile object, Analyzing the marker in the image data to calculate the position of the moving object based on the shooting setting information including the resolution and the viewing angle set in the shooting unit, and the preset information including the type, identification information, and size of the marker; Calculating an estimated maximum error value related to the position of the marker based on the position of the moving object, the preset information, and the shooting setting information; Generating control information such that the moving object moves along a travel route on a preset map, and generating the control information such that the moving speed of the moving object is lower than a preset reference moving speed when the estimated maximum error value is greater than a preset error threshold, and generating the control information such that the moving speed of the moving object is equal to or higher than the reference moving speed when the estimated maximum error value is less than or equal to the error threshold; Transmitting the control information to the moving object; A moving object control method including the above steps. [Appendix 11] A program for causing a moving object to execute a process of autonomously controlling its own movement, A process of shooting a marker with a shooting unit of the moving object; Analyzing the marker in the image shot by the shooting unit to calculate the position of the moving object itself based on the shooting setting information including the resolution and the viewing angle set in the shooting unit, and the preset information including the type, identification information, and size of the marker; Calculating an estimated maximum error value related to the position of the marker based on the position of the moving object itself, the preset information, and the shooting setting information; Controlling the moving object itself to move along a travel route on a preset map, and controlling the moving speed of the moving object itself to be lower than a preset reference moving speed when the estimated maximum error value is greater than a preset error threshold, and controlling the moving speed of the moving object itself to be equal to or higher than the reference moving speed when the estimated maximum error value is less than or equal to the error threshold; A program for causing the mobile object to execute. [Appendix 12] A program for causing the server device to execute a process of controlling the movement of a mobile object under the control of the server device, a process of receiving, from the mobile object, image data including a marker photographed by a photographing unit of the mobile object; analyzing the marker in the image data to calculate the position of the mobile object based on photographing setting information including the resolution and the angle of view set in the photographing unit, and preliminary setting information including the type, identification information, and size preliminarily set for the marker; a process of calculating an estimated maximum error value regarding the position of the marker based on the position of the mobile object, the preliminary setting information, and the photographing setting information; generating control information so that the position of the mobile object moves along a travel route on a preset map, and generating the control information so that the moving speed of the mobile object is lower than a preset reference moving speed when the estimated maximum error value is greater than a preset error threshold, and generating the control information so that the moving speed of the mobile object is equal to or higher than the reference moving speed when the estimated maximum error value is equal to or less than the error threshold; a process of transmitting the control information to the mobile object; A program for causing the server device to execute.

[0136] Note that each disclosure of the above patent documents is incorporated herein by reference and can be used as the basis or part of the present invention as necessary. Within the scope of the entire disclosure of the present invention (including the claims and drawings), modifications and adjustments of the embodiments or examples can be made based on its basic technical concept. Also, within the scope of the entire disclosure of the present invention, various combinations or selections (and non-selections if necessary) of various disclosure elements (including each element of each claim, each element of each embodiment or example, each element of each drawing, etc.) are possible. That is, the present invention naturally includes all the disclosures including the claims and drawings, and various deformations and corrections that could be made by those skilled in the art according to the technical concept. Further, regarding the numerical values and numerical ranges described in this application, even if not explicitly stated, any intermediate value, lower-order value, and small range are considered to be described. Additionally, each disclosure item of the above-cited documents is, as necessary, in accordance with the spirit of the present invention of this application, and is considered to be included in (belong to) the disclosure of the present invention of this application, and can be used in combination with the description items of this book, either in part or in whole, as part of the disclosure of the present invention of this application.

Explanation of Reference Signs

[0137] 1, 2 Movement control system 5 Warehouse 10 Wall (reference point) 11 Column (reference point) 12, 12a, 12b Reference point marker (marker) 13 Ground 20 Article 21 Article marker 30, 40 Mobile body 31, 41 Photographing unit 32 Position calculation unit 33 Error calculation unit 34, 44 Movement control unit 35 Position information transmission unit 36 Storage unit 37, 45 Driving unit 38 Map information setting unit 42 Transmission unit 43 Reception unit 50, 60 Server device 51 Location information receiving unit 52, 63 Item location management unit 61 Receiving unit 62 Location calculation unit 64 Error calculation unit 65 Control information generation unit 66 Transmitting unit 67 Memory unit 68 Map information setting unit 70 Map information 71 Section 100 Hardware resource 101 Processor 102 Memory 103 Network interface 104 Internal bus

Claims

1. An imaging unit configured to image a marker; Based on imaging setting information including the resolution and field of view set in the imaging unit, and pre-set information including the type, identification information, and size of the marker, a position calculation unit configured to analyze the marker in the image captured by the imaging unit and calculate the position of the moving body itself; An error calculation unit configured to calculate an estimated maximum error value regarding the position of the marker based on the position of the moving body itself, the pre-set information, and the imaging setting information; A movement control unit configured to control the movement of the moving body itself along a travel route on a pre-set map, and to control the movement speed of the moving body itself to be lower than a pre-set reference movement speed when the estimated maximum error value is greater than a pre-set error threshold, and to control the movement speed of the moving body itself to be equal to or higher than the reference movement speed when the estimated maximum error value is equal to or less than the error threshold; A moving body comprising the above.

2. Further comprising a map information setting unit configured to set, for each section in the pre-set map information where the estimated maximum error value or the maximum movement speed is not set, the estimated maximum error value calculated by the error calculation unit, or the maximum movement speed when the movement control unit controls the movement of the moving body itself; The movement control unit controls the movement of the moving body itself using the estimated maximum error value or the maximum movement speed set in the section of the map information corresponding to the position of the moving body calculated by the position calculation unit. The moving body according to Claim 1.

3. The movement control unit is configured to control the movement speed of the moving body itself to be equal to or higher than the reference movement speed and equal to or lower than a pre-set maximum movement speed when the estimated maximum error value is equal to or less than the error threshold. The moving body according to Claim 1.

4. A receiving unit configured to receive, from the moving body, image data including a marker captured by the imaging unit of the moving body; Based on imaging setting information including the resolution and field of view set in the imaging unit, and pre-set information including the type, identification information, and size of the marker, a position calculation unit configured to analyze the marker in the image data and calculate the position of the moving body. An error calculation unit configured to calculate an estimated maximum error value related to the position of the marker based on the position of the moving body, the preset information, and the shooting setting information; A control information generation unit configured to generate control information so that the moving body moves along a travel route on a preset map, and to make the moving speed of the moving body smaller than a preset reference moving speed when the estimated maximum error value is larger than a preset error threshold, and to generate the control information so that the moving speed of the moving body is equal to or higher than the reference moving speed when the estimated maximum error value is equal to or less than the error threshold; A transmission unit configured to transmit the control information to the moving body; A server device comprising the above.

5. Further comprising a map information setting unit configured to set, for each section in the preset map information where the estimated maximum error value or the maximum moving speed is not set, the estimated maximum error value calculated by the error calculation unit or the maximum moving speed when controlling the movement of the moving body; The control information generation unit generates the control information to control the movement of the moving body using the estimated maximum error value or the maximum moving speed set in the section of the map information corresponding to the position of the moving body calculated by the position calculation unit. The server device according to claim 4.

6. The control information generation unit is configured to generate the control information so that when the estimated maximum error value is equal to or less than the error threshold, the moving speed of the moving body is equal to or higher than the reference moving speed and equal to or less than a preset maximum moving speed. The server device according to claim 4.

7. A movement control method in which a moving body independently controls its own movement, comprising: A step of photographing a marker with a photographing unit of the moving body; A step of analyzing the marker in the image photographed by the photographing unit based on the photographing setting information including the resolution and the viewing angle set in the photographing unit, and the preset information including the type, identification information, and size preset for the marker, and calculating the position of the moving body itself; A step of calculating an estimated maximum error value related to the position of the marker based on the position of the moving body itself, the preset information, and the photographing setting information; Controlling such that the position of the moving body itself moves along a travel route on a preset map, and controlling such that when the estimated maximum error value is greater than a preset error threshold value, the moving speed of the moving body itself is less than a preset reference moving speed, and controlling such that when the estimated maximum error value is less than or equal to the error threshold value, the moving speed of the moving body itself is greater than or equal to the reference moving speed; A moving body control method including the above.

8. A moving body control method for controlling the movement of a moving body under the control of a server device, Receiving, from the moving body, image data including a marker photographed by a photographing unit of the moving body; Analyzing the marker in the image data based on photographing setting information including the resolution and the angle of view set in the photographing unit, and preset information including the type, identification information, and size preset for the marker, and calculating the position of the moving body; Calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body, the preset information, and the photographing setting information; Generating control information such that the position of the moving body moves along a travel route on a preset map, and generating the control information such that when the estimated maximum error value is greater than a preset error threshold value, the moving speed of the moving body is less than a preset reference moving speed, and generating the control information such that when the estimated maximum error value is less than or equal to the error threshold value, the moving speed of the moving body is greater than or equal to the reference moving speed; Transmitting the control information to the moving body; A moving body control method including the above.

9. A program for causing a moving body to execute a process of independently controlling its own movement, A process of photographing a marker by a photographing unit of the moving body; Based on photographing setting information including the resolution and the angle of view set in the photographing unit, and preset information including the type, identification information, and size preset for the marker, analyzing the marker in the image photographed by the photographing unit and calculating the position of the moving body itself; Calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body itself, the preset information, and the photographing setting information; A process of controlling the movement of the moving body itself to move along a travel route on a preset map, and when the estimated maximum error value is greater than a preset error threshold, controlling the moving speed of the moving body itself to be lower than a preset reference moving speed, and when the estimated maximum error value is less than or equal to the error threshold, controlling the moving speed of the moving body itself to be greater than or equal to the reference moving speed. A program for causing the moving body to execute the above.

10. A program for causing the server device to execute a process of controlling the movement of the moving body under the control of the server device, a process of receiving image data including a marker photographed by the photographing unit of the moving body from the moving body, a process of analyzing the marker in the image data based on the photographing setting information including the resolution and the viewing angle set in the photographing unit, and the preset information including the type, identification information, and size preset for the marker, and calculating the position of the moving body, a process of calculating an estimated maximum error value regarding the position of the marker based on the position of the moving body, the preset information, and the photographing setting information, a process of generating control information so that the position of the moving body moves along a travel route on a preset map, and when the estimated maximum error value is greater than a preset error threshold, generating the control information so that the moving speed of the moving body is lower than a preset reference moving speed, and when the estimated maximum error value is less than or equal to the error threshold, generating the control information so that the moving speed of the moving body is greater than or equal to the reference moving speed, a process of transmitting the control information to the moving body, a program for causing the server device to execute the above.

Citation Information

Patent Citations

  • Alignment system and method for automatic charging of robots based on vision

    CN108508897A

  • Unit for preventing deviation of autonomously traveling working vehicle from working area

    JP1995147804A

  • Map creation device for automatic traveling and automatic traveling device

    JP2007183432A

  • Autonomous moving system and autonomous mobile device

    JP2011065308A

  • Road traffic control server, on-vehicle terminal apparatus, and road traffic control system

    JP2016153987A