Mobile body, control device, control method, and control program

The control device enhances mobile object safety and drivability by using first and second safety controls to adjust speed and monitoring area, addressing the balance between frequent obstacle detection and unexpected object encounters.

WO2026034142A1PCT designated stage Publication Date: 2026-02-12KAWASAKI JUKOGYO KK
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/025388
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-08
Filing Date
2025-07-15
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

Existing mobile object control systems face challenges in balancing drivability and safety, as large monitoring areas lead to poor drivability due to frequent obstacle detection, while small areas may result in safety issues when unexpected objects appear.

Method used

Implementing a control device with first and second safety controls, where the first control reduces speed as objects approach, and the second control sets a shrinking monitoring area ahead of the mobile object to anticipate and avoid obstacles.

Benefits of technology

Achieves both improved drivability and safety by dynamically adjusting speed and monitoring area based on proximity to obstacles, preventing collisions and ensuring smooth operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025025388_12022026_PF_FP_ABST
    Figure JP2025025388_12022026_PF_FP_ABST
Patent Text Reader

Abstract

A mobile body 100 comprises a mobile body main body 1 and a control device 6 that causes the mobile body main body 1 to perform autonomous movement. The control device 6 executes a first safety control and a second safety control. In the first safety control, the control device 6 reduces the travel speed of the mobile body main body 1 as the distance between an object present on the periphery of the mobile body main body 1 and the mobile body main body 1 decreases. In the second safety control, the control device 6 sets a monitoring region M which is arranged in front of the mobile body main body 1 in the travel direction and which decreases in area as the travel speed of the mobile body main body 1 decreases, and temporarily reduces the travel speed of the mobile body main body 1 to a first speed or less when the object is present in the monitoring region M.
Need to check novelty before this filing date? Find Prior Art

Description

Mobile body, control device, control method, and control program

[0001] The technology disclosed herein relates to a moving body, a control device, a control method, and a control program.

[0002] Patent Literature 1 discloses a mobile object control device that moves a mobile object at a speed that corresponds to the surrounding environment. The mobile object control device slows down or stops the mobile object when an obstacle is present in a first area of ​​a monitoring area set around the mobile object.

[0003] JP 2016-151897 A

[0004] However, when a mobile object travels, for example, through a narrow passageway, if the size of the monitoring area is large, the walls of the passageway may be frequently detected as obstacles within the monitoring area, which may result in poor drivability. On the other hand, if the size of the monitoring area is reduced to improve drivability, for example, if a person suddenly appears in front of the mobile object in the direction of travel, the mobile object may slow down or stop when it approaches the person, which may result in a poorer safety. For this reason, it is desirable to achieve both the drivability and safety of the mobile object.

[0005] The technology disclosed herein has been developed in light of these points, and its purpose is to achieve both driving performance and safety.

[0006] The mobile body disclosed herein comprises a mobile body main body and a control device that causes the mobile body main body to move autonomously, and the control device executes a first safety control and a second safety control, and in the first safety control, the control device reduces the traveling speed of the mobile body main body as the distance between the mobile body and an object present around the mobile body becomes shorter, and in the second safety control, the control device sets a monitoring area that is positioned ahead of the mobile body in the direction of travel and whose area becomes smaller as the traveling speed of the mobile body decreases, and if an object is present within the monitoring area, temporarily reduces the traveling speed of the mobile body main body to below a first speed.

[0007] The control device disclosed herein is a control device that causes a mobile body to move autonomously, and is equipped with a first safety controller that executes first safety control and a second safety controller that executes second safety control, wherein the first safety controller reduces the traveling speed of the mobile body as the distance between the mobile body and an object present around the mobile body becomes shorter, and the second safety controller sets a monitoring area that is positioned ahead of the mobile body in the direction of travel and whose area becomes smaller as the traveling speed of the mobile body decreases, and temporarily reduces the traveling speed of the mobile body to below a first speed if an object is present within the monitoring area.

[0008] The control method disclosed herein is a control method for causing a mobile body to move autonomously, and includes executing a first safety control and executing a second safety control. In executing the first safety control, the traveling speed of the mobile body is reduced as the distance between the mobile body and an object present around the mobile body becomes shorter. In executing the second safety control, a monitoring area is set that is positioned ahead of the mobile body in the direction of travel and whose area decreases as the traveling speed of the mobile body decreases, and if an object is present within the monitoring area, the traveling speed of the mobile body is temporarily reduced to below a first speed.

[0009] The control program disclosed herein is a control program for causing a mobile body to move autonomously, and causes a computer to realize a function for executing a first safety control and a function for executing a second safety control. The function for executing the first safety control reduces the traveling speed of the mobile body as the distance between the mobile body and an object present around the mobile body becomes shorter, and the function for executing the second safety control sets a monitoring area that is positioned ahead of the mobile body in the direction of travel and whose area decreases as the traveling speed of the mobile body decreases, and temporarily reduces the traveling speed of the mobile body to below a first speed if an object is present within the monitoring area.

[0010] The moving body can achieve both travelling performance and safety.

[0011] According to the control device, it is possible to achieve both driving performance and safety.

[0012] According to the control method, it is possible to achieve both driving performance and safety.

[0013] According to the control program, it is possible to achieve both driving performance and safety.

[0014] FIG. 1 is a perspective view of a mobile body. FIG. 2 is a schematic diagram showing the detection range of a sensor. FIG. 3 is a diagram showing the hardware configuration of a control device. FIG. 4 is a functional block diagram showing the configuration of a control system of a processor. FIG. 5 is a flowchart of the basic operation of a mobile body. FIG. 6 is a plan view conceptually showing a mobile body main body and an area surrounding the mobile body main body. FIG. 7 is a functional block diagram of a mobile controller. FIG. 8 is a graph showing an example of the relationship between the distance to a peripheral object and the traveling speed in first safety control. FIG. 9 is an explanatory diagram for explaining the size of the monitoring area when the traveling speed of the mobile body main body is the maximum speed. FIG. 10 is an explanatory diagram for explaining the size of the monitoring area when the traveling speed of the mobile body main body exceeds the minimum speed and is below the maximum speed. FIG. 11 is an explanatory diagram for explaining the size of the monitoring area when the traveling speed of the mobile body main body is the minimum speed or zero. FIG. 12 is a graph showing an example of the relationship between the current speed of the mobile body main body and the area of ​​the monitoring area. FIG. 13 is a flowchart of safety control. FIG. 14 is a flowchart of a subroutine of first safety control. Fig. 15 is a flowchart of a subroutine of second safety control. Fig. 16 is a functional block diagram showing the configuration of a control system of a processor according to a modified example. Fig. 17 is a side view of the mobile body when the robot arm is in a traveling shape. Fig. 18 is a plan view of the mobile body when the robot arm is in a traveling shape.

[0015] An exemplary embodiment will be described in detail below with reference to the drawings. FIG. 1 is a perspective view of a mobile object 100. The mobile object 100 moves autonomously. The mobile object 100 includes a mobile object main body 1 and a control device 6 that causes the mobile object main body 1 to move autonomously. For example, the mobile object 100 moves within a facility such as a store, hospital, or nursing home. In addition to moving, the mobile object 100 may also perform tasks such as handing over an item or opening and closing a door.

[0016] For example, the mobile body 1 is a mobile robot including a robot arm 12. In detail, the mobile body 1 may have a carriage 10, a base 11 mounted on the carriage 10, and a robot arm 12 connected to the base 11.

[0017] The bogie 10 has a defined front-rear direction. In this example, the bogie 10 has a generally rectangular planar shape. For example, the longitudinal direction of the rectangle is the front-rear direction. The lateral direction of the rectangle is the left-right direction.

[0018] The bogie 10 includes a plurality of wheels 13 and is capable of traveling. In this example, the bogie 10 includes four wheels 13. The bogie 10 may be capable of moving straight and turning. In this example, the bogie 10 is capable of moving forward, backward, left, right, and diagonally while maintaining its posture, i.e., moving in all directions. In other words, the bogie 10 may be capable of translational movement in directions other than the forward and backward direction. Furthermore, the bogie 10 may also be capable of rotating on the spot. For example, the four wheels 13 include a set of wheels 13 aligned in the left-right direction at the front of the bottom of the bogie 10 and another set of wheels 13 aligned in the left-right direction at the rear of the bottom of the bogie 10. The wheels 13 may be arranged to form a rectangle on the bottom of the bogie 10. More specifically, the four wheels 13 are arranged at the four corners of the bottom of the bogie 10.

[0019] More specifically, the wheel 13 may be an omnidirectional wheel. In this example, the wheel 13 is a Mecanum wheel. The wheel 13 has a plurality of barrel-shaped rollers arranged on the outer periphery of the wheel. For example, the rotation axis of each roller is inclined at 45 degrees with respect to the axle of the wheel 13.

[0020] The mobile body 1 may have motors 13a that drive the wheels 13 and encoders 13b that detect the amount of rotation of the motors 13a (see FIG. 3). In this example, the mobile body 1 has four sets of motors 13a and encoders 13b corresponding to the four wheels 13. The four wheels 13 may be independently driven by the corresponding motors 13a.

[0021] The cart 10 may be able to move in any direction in two dimensions using these four wheels 13. For example, the cart 10 may translate or rotate in any direction, including forward / backward, left / right, and diagonal. The cart 10 may also rotate on the spot.

[0022] The base 11 may be mounted on the cart 10. In this example, the base 11 has a shape resembling the upper body of a person. The base 11 may be fixed to the cart 10 so as not to be movable.

[0023] The mobile body 1 has two robot arms 12. A hand 14 may be attached to the tip of one of the robot arms 12. The hand 14 may not be attached to the tip of the other robot arm 12.

[0024] The two robot arms 12 are connected to different portions of the base 11. For example, the two robot arms 12 are connected to different portions of the base 11 in the width direction, which is one direction in a plan view. In other words, the width direction is the direction in which the connection portion of one robot arm 12 to the base 11 and the connection portion of the other robot arm 12 to the base 11 are aligned in a plan view. The base 11 may have a front and a back that face opposite each other in a plan view. For example, the front side of the base 11 is the front, and the back side is the rear, defining the front-to-back direction. The width direction may be a horizontal direction that is perpendicular to the front-to-back direction. In other words, the width direction is the left-to-right direction relative to the front-to-back direction. For example, one robot arm 12 is connected to the left side of the base 11, and the other robot arm 12 is connected to the right side of the base 11.

[0025] In addition, when the planar shape of the carriage 10 is a substantially rectangular shape having a longitudinal direction and a lateral direction, the width direction substantially coincides with the lateral direction of the planar shape of the carriage 10 .

[0026] For example, as shown in FIG. 1 , the robot arm 12 has a plurality of links L and a plurality of joints J connecting the links L. The robot arm 12 is configured to operate in three dimensions. In this example, the robot arm 12 is a multi-joint robot arm. That is, the shape of the robot arm 12 may be freely changed by rotating the joints. The robot arm 12 is supported by a base 11.

[0027] For example, the multiple links L include a first link L1, a second link L2, a third link L3, a fourth link L4, a fifth link L5, a sixth link L6, and a seventh link L7, which are arranged in series from the base 11 side. The seventh link L7 is located at the tip of the robot arm 12. The multiple joints J include a first joint J1, a second joint J2, a third joint J3, a fourth joint J4, a fifth joint J5, a sixth joint J6, and a seventh joint J7, which are arranged in series from the base 11 side. The position and orientation of the seventh link L7 have six degrees of freedom, including translational and rotational directions about each of three orthogonal axes. The robot arm 12 may be a so-called seven-axis robot having seven joints J. In other words, the robot arm 12 has redundancy. Redundancy is a characteristic in which the rotation angles of multiple joints J corresponding to the position and orientation of the tip of the robot arm 12 are not uniquely determined.

[0028] The base 11 and the first link L1 are rotatably connected by a first joint J1. The first link L1 and the second link L2 are rotatably connected by a second joint J2. The second link L2 and the third link L3 are rotatably connected by a third joint J3. The third link L3 and the fourth link L4 are rotatably connected by a fourth joint J4. The fourth link L4 and the fifth link L5 are rotatably connected by a fifth joint J5. The fifth link L5 and the sixth link L6 are rotatably connected by a sixth joint J6. The sixth link L6 and the seventh link L7 are rotatably connected by a seventh joint J7.

[0029] The hand 14 may be connected to a seventh link L7 at the tip of the robot arm 12. In other words, the hand 14 is connected to the robot arm 12 so as to be rotatable around the rotation axis of the seventh joint J7. The hand 14 is an end effector attached to the robot arm 12.

[0030] In more detail, the multiple joints J may include a joint that functions as a shoulder joint. For example, the multiple joints J include a joint that has the functions of horizontal extension and horizontal flexion at the shoulder joint. The rotation axis of the joint that has the functions of horizontal extension and horizontal flexion at the shoulder joint extends in a substantially vertical direction. The multiple joints J may include a joint that has the functions of extension and flexion at the shoulder joint. The rotation axis of the joint that has the functions of extension and flexion at the shoulder joint extends in a substantially horizontal direction.

[0031] For example, the first joint J1 functions as a shoulder joint of the robot arm 12. The first joint J1 may have the functions of horizontal extension and horizontal flexion at the shoulder joint. The rotation axis of the first joint J1 extends in a substantially vertical direction.

[0032] For example, the second joint J2 functions as a shoulder joint of the robot arm 12. The second joint J2 may have the functions of extension and flexion at the shoulder joint. The rotation axis of the second joint J2 extends in a substantially horizontal direction.

[0033] For example, the third joint J3 functions as a shoulder joint of the robot arm 12. The third joint J3 may have the function of internal rotation and external rotation in a shoulder joint.

[0034] The multiple joints J may include a joint that functions as a wrist joint. For example, the multiple joints J include a joint that has the functions of internal rotation and external rotation or the functions of pronation and supination at the wrist joint. For example, the seventh joint J7 may have the functions of internal rotation and external rotation at the wrist joint. The sixth joint J6 may have the functions of pronation and supination at the wrist joint.

[0035] The multiple joints J may include an intermediate joint between a shoulder joint and a wrist joint. The intermediate joint may also be referred to as an elbow joint. The intermediate joint may have functions of extension and flexion at the intermediate joint, or functions of internal rotation and external rotation at the intermediate joint. The fourth joint J4 may have functions of extension and flexion at the intermediate joint. The fifth joint J5 may have functions of internal rotation and external rotation at the intermediate joint.

[0036] The robot arm 12 has a motor 12a (see FIG. 3) that rotates and drives each joint J. For example, the motor 12a is a servo motor. Each motor 12a has an encoder 12b (see FIG. 3).

[0037] The mobile body 100 may include a sensor 3 that detects objects (hereinafter simply referred to as "peripheral objects") around the mobile body 1. In this disclosure, "objects" includes both inanimate and animate objects. The sensor 3 is disposed on the mobile body 1. For example, the sensor 3 is disposed on the dolly 10. In this example, the sensor 3 is a ranging sensor that measures the distance from the sensor 3 to the peripheral objects. For example, the sensor 3 is a LiDAR (Light Detection and Ranging) sensor. The sensor 3 includes, for example, a light-emitting unit that emits laser light toward the periphery of the mobile body 1 and a light-receiving unit that receives the laser light reflected off the surface of the peripheral object. The sensor 3 measures the flight time of the laser light emitted from the light-emitting unit, which hits the surface of the peripheral object and returns to the light-receiving unit. The sensor 3 measures the distance from the sensor 3 to the surface of the peripheral object based on the measured flight time. The sensor 3 may generate point cloud data based on the measured distance. The point cloud data is three-dimensional position information of the surface of the peripheral object. For example, the sensor 3 outputs the calculated point cloud data to the control device 6. The sensor 3 may repeatedly detect surrounding objects at a predetermined detection period while the mobile body 1 is moving. The sensor 3 may output the detection result of the sensor 3, i.e., the point cloud data, to the control device 6 every time the sensor 3 detects a surrounding object.

[0038] In this example, the mobile body 100 is equipped with multiple sensors 3. FIG. 2 is a schematic diagram showing the detection range of the sensor 3. FIG. 2 is a plan view of the mobile body 100, omitting the robot arm 12 and the like. The mobile body 100 may be equipped with a first sensor 3A, a second sensor 3B, and a third sensor 3C. The first sensor 3A, the second sensor 3B, and the third sensor 3C are arranged on the carriage 10. The first sensor 3A is arranged in the front of the carriage 10. For example, the first sensor 3A is arranged on the carriage 10 forward of the base 11 and approximately in the center in the left-right direction. The first sensor 3A detects objects in the three-dimensional space around the mobile body main body 1. The first sensor 3A may be a 3D LiDAR. The first sensor 3A scans the measurement light in the horizontal and vertical directions. In this example, the first sensor 3A scans the measurement light 360 degrees horizontally, as indicated by the two-dot chain line in FIG. 2. In the vertical direction, the first sensor 3A scans the measurement light in a predetermined range including elevation and depression angles.

[0039] The second sensor 3B and the third sensor 3C may be disposed at the rear of the carriage 10. More specifically, the second sensor 3B and the third sensor 3C are disposed on the carriage 10 rearward of the base 11. The second sensor 3B is disposed at the left rear corner of the carriage 10, and the third sensor 3C is disposed at the right rear corner of the carriage 10. The second sensor 3B and the third sensor 3C may detect objects in a two-dimensional space in the horizontal direction around the mobile body 1. For example, the second sensor 3B and the third sensor 3C are 2D LiDAR. The second sensor 3B and the third sensor 3C scan the measurement light in the horizontal direction. The second sensor 3B and the third sensor 3C detect objects in a range in the horizontal direction that cannot be detected by at least the first sensor 3A. The second sensor 3B scans the measurement light at least to the left rear of the carriage 10. The third sensor 3C scans the measurement light at least to the right rear of the carriage 10. The scanning range of the measurement light by the second sensor 3B and the scanning range of the measurement light by the third sensor 3C partially overlap behind the carriage 10. In this example, the second sensor 3B scans the measurement light horizontally by approximately 270 degrees from the front to the right, including the left area of ​​the mobile body 1, as shown by the dashed line in FIG. 2 . The third sensor 3C scans the measurement light horizontally by approximately 270 degrees from the front to the left, including the right area of ​​the mobile body 1, as shown by the dashed line in FIG. 2 . The second sensor 3B and the third sensor 3C detect objects at approximately the same height. That is, the scanning plane of the measurement light by the second sensor 3B and the scanning plane of the measurement light by the third sensor 3C are at approximately the same height.

[0040] 2, since the base 11 is disposed behind the first sensor 3A, the first sensor 3A cannot properly scan the measurement light in the range F overlapping with the base 11. On the other hand, since the second sensor 3B and the third sensor 3C are disposed behind the base 11, the second sensor 3B and the third sensor 3C can also scan the measurement light into the range F.

[0041] Hereinafter, when there is no need to distinguish between the first sensor 3A, the second sensor 3B, and the third sensor 3C, they will be simply referred to as "sensors 3."

[0042] 3 is a diagram showing the hardware configuration of the control device 6. The control device 6 controls the entire mobile body 1. The control device 6 causes the mobile body 1 to move autonomously while estimating the self-position of the mobile body 1. The control device 6 operates the motors 13a of the wheels 13 to move the mobile body 1. Furthermore, the control device 6 controls the motors 12a of the robot arm 12 to cause the robot arm 12 to perform a predetermined task. The control device 6 has a processor 61, a storage device 62, and a memory 63.

[0043] The processor 61 performs various types of arithmetic processing. For example, the processor 61 is formed of a processor such as a CPU (Central Processing Unit). The processor 61 may be formed of an MCU (Micro Controller Unit), an MPU (Micro Processor Unit), an FPGA (Field Programmable Gate Array), a PLC (Programmable Logic Controller), a system LSI, or the like. The processor 61 operates the motor 13a, causing the mobile body 1 to drive autonomously.

[0044] The memory 62 stores programs executed by the processor 61 and various data. For example, the memory 62 stores a control program. The memory 62 stores map information related to a map of the environment in which the mobile body 1 moves. For example, the map information includes a three-dimensional map and a two-dimensional map. The three-dimensional map is formed from three-dimensional point cloud data. For example, the three-dimensional map is a three-dimensional point cloud map. In the three-dimensional map, the three-dimensional shapes of obstacles in the environment, such as walls, ceilings, handrails, shelves, tables, or chairs, are represented by point cloud data. The two-dimensional map is a planar map. For example, the two-dimensional map is a two-dimensional occupancy grid map. In the two-dimensional map, the planar shapes of obstacles in the environment, such as walls, ceilings, handrails, shelves, tables, or chairs, are represented. For example, the two-dimensional map is formed by projecting the three-dimensional map onto a plane. The memory 62 is formed from a non-volatile memory, a hard disk drive (HDD), a solid state drive (SSD), or the like. The memory 63 temporarily stores data, etc. For example, the memory 63 is formed of a volatile memory.

[0045] 4 is a functional block diagram showing the configuration of the control system of the processor 61. The processor 61 realizes various functions by reading a control program from the storage device 62 into the memory 63 and expanding the program. Specifically, the processor 61 functions as a state estimator 64 that estimates the state of the mobile body 1, a map generator 65 that generates a map of the environment in which the mobile body 1 moves, a path generator 66 that plans a path for the mobile body 1, a trajectory generator 67 that generates a target trajectory according to the path, and a movement controller 68 that moves the mobile body 1 according to the target trajectory. The processor 61 also functions as an operation amount calculator 69 that calculates the operation amount of the motor 13a.

[0046] The state estimator 64 performs self-position estimation. The state estimator 64 receives the detection results of the sensor 3, the detection results of the encoder 13b, and the map information in the memory 62. The map information is, for example, a three-dimensional map. The state estimator 64 compares the detection results of the sensor 3 with the map information to estimate the current position of the mobile body 1, i.e., its self-position. Here, the position of the mobile body 1 also includes the orientation of the mobile body 1, i.e., its attitude.

[0047] In this example, the state estimator 64 performs self-position estimation using the three-dimensional point cloud data of the first sensor 3 A. The state estimator 64 compares environmental information around the mobile body 1 obtained from the three-dimensional point cloud data of the first sensor 3 A with a three-dimensional map, and estimates the position of the mobile body 1 within the environment represented by the three-dimensional map, i.e., the self-position.

[0048] The map generator 65 generates a map based on the detection results of the sensor 3. Specifically, the map generator 65 generates or modifies a three-dimensional map based on the detection results of the sensor 3. In this example, before autonomous movement is performed, the three-dimensional map is generated using SLAM (Simultaneous Localization and Mapping) technology. Specifically, while the mobile body 1 is moving within the environment, the state estimator 64 and the map generator 65 acquire the detection results of the sensor 3 and perform self-location estimation and map generation in parallel. The generated map information, i.e., the three-dimensional map, is stored in the memory 62. When generating the map before autonomous movement is performed, the mobile body 1 is moved by manual operation by the user.

[0049] Furthermore, the map generator 65 updates the two-dimensional map. The two-dimensional map can also be updated during autonomous movement. The map generator 65 detects obstacles in the environment based on the detection results of the sensors 3 acquired while the mobile body 1 is moving, and updates the two-dimensional map.

[0050] The route generator 66 reads the destination and map information from the memory 62. The destination is set in advance in the memory 62. The map information at this time is, for example, a two-dimensional map. At this time, the route generator 66 may read intermediate points in addition to the destination. The state quantities (including the estimated position) of the mobile body 1 are input to the route generator 66 from the state estimator 64.

[0051] The path generator 66 generates a path from the current position of the mobile body 1 to the destination based on map information. The path generator 66 references the map information to generate a path that avoids interference with obstacles, etc. If a passage is set in the environment, the path generator 66 generates a path along the passage. For example, the path generator 66 generates a path using an A-star search algorithm, an RRT algorithm, a Dijkstra algorithm, or a geometric approach. The path generator 66 outputs an array of positions through which the mobile body 1 passes as a path to the trajectory generator 67. Each position includes the attitude of the mobile body 1 in addition to position information.

[0052] The trajectory generator 67 generates a target trajectory from the current position of the mobile body 1 according to the generated path. The trajectory generator 67 generates the target trajectory of the mobile body 1 using a predetermined method (for example, a line-of-sight guidance law). The state quantities of the mobile body 1 are input to the trajectory generator 67 from the state estimator 64. The trajectory generator 67 calculates a command speed for the mobile body 1.

[0053] Alternatively, the trajectory generator 67 may calculate the command speed by model predictive control (MPC), which determines a control input, i.e., a speed command, by sequentially solving an optimization problem based on a model of the mobile body 1. The trajectory generator 67 predicts future state quantities from the current state quantities of the mobile body 1 and obstacles, calculates an optimal path for the mobile body 1, and calculates a moving speed from the current position to the target position to follow that path as a command speed.

[0054] The command speed calculated by the trajectory generator 67 is input to the movement controller 68. In the following description, the command speed input from the trajectory generator 67 is referred to as the "input command speed." The movement controller 68 outputs a command value corresponding to the command speed to the manipulated variable calculator 69.

[0055] The movement controller 68 executes control to avoid interference between the mobile body 1 and an obstacle. In the present disclosure, the movement controller 68 executes first safety control and second safety control as control to avoid interference between the mobile body 1 and an obstacle. The movement controller 68 monitors the approach of the mobile body 1 and an obstacle based on the detection results of the sensors 3. In this example, the movement controller 68 monitors the approach of the mobile body 1 and an obstacle using all of the detection results of the first sensor 3A, the second sensor 3B, and the third sensor 3C. For example, the movement controller 68 slows down or stops the mobile body 1 depending on the distance between the mobile body 1 and the obstacle.

[0056] The operation amount calculator 69 distributes the command value to the plurality of motors 13a and calculates the command operation amount for each of the plurality of motors 13a. For example, the operation amount is the rotation speed or torque of the motor.

[0057] Each motor 13a operates in accordance with a command operation amount. The motor 13a may be provided with its own controller for operating the motor 13a. For example, if the motor 13a is a servo motor, the motor 13a further includes a servo amplifier. In this case, the servo amplifier operates the motor 13a in accordance with the command operation amount. As a result, the mobile body 1 moves.

[0058] Next, a description will be given of the basic operation of the moving body 100. Fig. 5 is a flowchart of the basic operation of the moving body 100. The moving body 100 repeatedly executes the following processing at a predetermined control cycle.

[0059] First, in step S1, the state estimator 64 acquires information about the surrounding environment. Specifically, the state estimator 64 acquires the detection signal of the sensor 3 and the detection signal of the encoder 13b.

[0060] Next, in step S2, the state estimator 64 performs self-location estimation.

[0061] Subsequently, in step S3, the route generator 66 executes route planning, generating a route for the mobile body 1 based on the map information, the estimated position of the mobile body 1, and the destination.

[0062] In step S4, the trajectory generator 67 calculates a command velocity from the estimated position of the mobile body 1 so as to follow the generated path.

[0063] In step S5, the movement controller 68 causes the mobile body 1 to move in accordance with the command speed.

[0064] By repeating the above process, the mobile body 100 autonomously moves to the destination while estimating the self-position of the mobile body main body 1.

[0065] Next, a more detailed description will be given of the autonomous movement of the moving body 100. As described above, the first safety control and the second safety control are executed in the moving body 100. Hereinafter, when there is no need to distinguish between the first safety control and the second safety control, they will simply be referred to as safety control.

[0066] In the first safety control, the movement controller 68 reduces the traveling speed of the mobile body 1 as the distance between the peripheral object and the mobile body 1 (hereinafter referred to as the "distance to the peripheral object") becomes shorter. When the mobile body 1 travels near a peripheral object, there is a high possibility that the mobile body 1 will interfere with the object, for example, if a person jumps out from behind the peripheral object or if the mobile body 1 deviates from the path. Because the first safety control reduces the traveling speed of the mobile body 1 when traveling near a peripheral object, the mobile body 1 can be stopped without interference between the mobile body 1 and the object even in the above-mentioned cases.

[0067] In the second safety control, the movement controller 68 sets a monitoring area M and temporarily reduces the traveling speed of the mobile body 1 to a first speed or lower if an object is present within the monitoring area M. As shown in FIG. 6 , the monitoring area M is located ahead of the mobile body 1 in the traveling direction D (hereinafter referred to as "forward in the traveling direction"). FIG. 6 is a plan view conceptually illustrating the mobile body 1 and the area surrounding the mobile body 1. For ease of explanation, the monitoring area M is hatched in FIG. 6 . If an object is present ahead in the traveling direction, there is a high possibility that the mobile body 1 will interfere with the object. By using the second safety control, the monitoring area M for monitoring the presence of an object is located ahead of the mobile body 1 in the traveling direction, so that the mobile body 1 can be decelerated or stopped early before it interferes with the object ahead in the traveling direction. This effectively reduces the possibility of the mobile body 1 interfering with an object present ahead in the traveling direction. If the object is a person, decelerating or stopping the mobile body 1 early can prevent the person from feeling a sense of urgency.

[0068] 7 is a functional block diagram of the movement controller 68. The movement controller 68 includes a first safety controller 681, a second safety controller 682, and a determiner 683.

[0069] The first safety controller 681 executes first safety control. The first safety controller 681 calculates the distance between the mobile body 1 and a peripheral object detected by the sensor 3, i.e., the distance to the peripheral object. The first safety controller 681 limits the traveling speed of the mobile body 1 according to the calculated distance. As described above, the first safety controller 681 reduces the traveling speed of the mobile body 1 as the distance to the peripheral object becomes shorter. At this time, the first safety controller 681 may reduce the traveling speed of the mobile body 1 in a stepwise manner or continuously. The first safety controller 681 outputs the limited command speed (hereinafter referred to as the "first safe speed V1") to the determiner 683.

[0070] Here, as shown in FIG. 6 , in this example, an emergency area E is further set around the mobile body 1. In FIG. 6 , the emergency area E is hatched for ease of explanation. The emergency area E is set within a predetermined range around the mobile body 1. Specifically, the emergency area E is set within a predetermined range from the footprint of the mobile body 1. The footprint is the area occupied by the mobile body 1 in a planar view. In this example, the footprint is the area occupied by the bogie 10 in a planar view. The outer shape of the emergency area E is approximately rectangular in a planar view. Specifically, the outer shape of the emergency area E is approximately rectangular including two sides extending in the front-to-rear direction and two sides extending in the left-to-right direction in a planar view. The emergency area E is set in advance. The shape of the emergency area E remains constant while the mobile body 1 is traveling.

[0071] When an object is present in the emergency region E, the first safety controller 681 determines that the mobile body 1 is approaching a nearby object and stops the mobile body 1. That is, the first safety controller 681 sets the traveling speed of the mobile body 1 to zero. More specifically, the first safety controller 681 continues to stop the mobile body 1 until the object is no longer present in the emergency region E. For example, the first safety controller 681 stops the mobile body 1 when an obstacle such as a moving table enters the emergency region E. After the obstacle moves out of the emergency region E, the first safety controller 681 causes the mobile body 1 to travel again.

[0072] 8 is a graph showing an example of the relationship between the distance to a peripheral object and the traveling speed in the first safety control. For example, as shown in FIG. 8, the first safety controller 681 limits the traveling speed of the mobile body 1 in accordance with the distance to the peripheral object. That is, for example, when the distance to the peripheral object exceeds a predetermined first distance d1, the first safety controller 681 limits the traveling speed of the mobile body 1 in accordance with the distance to the peripheral object. max The maximum speed V max is set in advance in consideration of safety. The first distance d1 is the distance between the moving body 1 and the maximum speed V maxWhen the distance to the peripheral object exceeds a predetermined second distance d2 and is equal to or less than the first distance d1, the first safety controller 681 controls the traveling speed to decrease as the distance to the peripheral object decreases. When the distance to the peripheral object exceeds a predetermined third distance d3 and is equal to or less than the second distance d2, the first safety controller 681 controls the traveling speed to decrease as the distance to the peripheral object decreases. min The minimum speed V min is the minimum speed in the range of speeds that change depending on the distance to the surrounding object. min The third distance d3 is the upper limit of the distance to the surrounding object at which the vehicle speed reaches the minimum speed V . When the distance to the surrounding object is equal to or less than the third distance d3, the first safety controller 681 controls the vehicle speed to be zero, i.e., the vehicle body 1 to stop. The third distance d3 is the distance between the outer periphery of the emergency area E and the vehicle body 1. In other words, when the distance to the surrounding object is equal to or less than the third distance d3, this means that a surrounding object exists within the emergency area E. In the example shown in FIG. 8 , in the first safety control, the vehicle body 1 maintains the vehicle speed at the minimum speed V , unless an object exists within the emergency area E. min Maximum speed V max It is controlled by:

[0073] When the mobile body 1 travels through a narrow passage or the like, the sidewall of the passage or the like is detected by the sensor 3. When the mobile body 1 travels through a narrow passage or the like, the travel speed is controlled in accordance with the distance between the sidewall of the passage or the like and the mobile body 1. The minimum speed V min is preset to a low speed so that the mobile body 1 will not collide with the person even if, for example, a person rushes out in front of the mobile body 1 in the traveling direction in a narrow passage or the like and enters the emergency area E, causing the mobile body 1 to suddenly stop.

[0074] The second safety controller 682 executes the second safety control. Specifically, the second safety controller 682 sets a monitoring area M ahead of the moving body 1 in the traveling direction.

[0075] In this example, as shown in FIG. 6 , the monitoring area M has a substantially rectangular shape in a plan view. Specifically, the monitoring area M has a substantially rectangular shape extending in the traveling direction D and in a direction perpendicular to the traveling direction D in a plan view. The monitoring area M is adjacent to the emergency area E in the traveling direction D. The monitoring area M may be separated from the emergency area E, or the edge of the monitoring area M behind the traveling direction D (hereinafter referred to as "behind the traveling direction") may overlap with the edge of the emergency area E ahead of the traveling direction. In this example, the edge of the monitoring area M behind the traveling direction and the edge of the emergency area E ahead of the traveling direction overlap. As described above, the monitoring area M is positioned ahead of the traveling direction of the mobile body 1. Therefore, the relative positional relationship of the monitoring area M with respect to the traveling direction D of the mobile body 1 may change depending on the traveling direction D of the mobile body 1.

[0076] Furthermore, the second safety controller 682 changes the area of ​​the monitoring region M in accordance with the current speed of the mobile body 1. The current speed is, for example, the actual speed of the mobile body 1. More specifically, the current speed is the speed of the bogie 10 detected by the encoder 13b of the motor 13a.

[0077] FIG. 9 shows the maximum running speed of the main body 1 of the mobile unit. max 10 is an explanatory diagram for explaining the size of the monitoring area M when the traveling speed of the mobile body 1 is the minimum speed V min Exceeding the maximum speed V max 11 is an explanatory diagram for explaining the size of the monitoring area M when the traveling speed of the mobile body 1 is below the minimum speed V min 10 is an explanatory diagram for explaining the size of the monitoring area M when the value is zero.

[0078] The second safety controller 682 reduces the area of ​​the monitoring region M as the traveling speed of the mobile body 1 decreases. Preferably, the second safety controller 682 sets the area of ​​the monitoring region M to zero when the traveling speed of the mobile body 1 is equal to or lower than a second speed. The second speed is set in advance. The second speed is set to a low speed that ensures safety even when the monitoring region M is not set. In this example, the second speed is set to a minimum speed V minThe second safety controller 682 may reduce the area of ​​the monitoring region M in a stepwise manner or continuously as the traveling speed of the mobile body 1 decreases. In this example, the second safety controller 682 continuously reduces the area of ​​the monitoring region M as the traveling speed of the mobile body 1 decreases.

[0079] FIG. 12 is a graph showing an example of the relationship between the current speed of the mobile body 1 and the area of ​​the monitoring region M. For example, the area A of the monitoring region M is expressed by the following formula (1): A=((V p -V min ) / (V max -V min )) x A max ... (1) However, V p : Current speed, V min :Minimum speed, V max : Maximum speed, A max : Maximum area of ​​monitoring region M.

[0080] In this example, the area of ​​the monitoring region M is determined based on the maximum running speed V max The area of ​​the monitoring region M is maximum when the traveling speed of the mobile body 1 is the minimum speed V min Exceeding the maximum speed V max When the traveling speed of the mobile body 1 is below the minimum speed V, the area of ​​the monitoring region M is continuously reduced as the traveling speed decreases. min In other words, in this example, the travel speed of the mobile body 1 is the minimum speed V min The monitoring area M is not set in the following cases: The mobile body 1 moves at a minimum speed V in a narrow passage or the like. min or minimum speed V min That is, when the mobile body 1 is traveling through a narrow passage or the like, the area of ​​the monitoring region M becomes zero or almost zero.

[0081] Furthermore, the second safety controller 682 temporarily reduces the traveling speed of the mobile body 1 to a first speed or less when an object is present within the monitoring area M. That is, the second safety controller 682 temporarily decelerates or stops the mobile body 1 when an object is present within the monitoring area M. Hereinafter, the time during which the traveling speed of the mobile body 1 is temporarily reduced to a first speed or less is referred to as a "time limit." The first speed is set in advance. The first speed is set to a low speed at which the mobile body 1 will not reach an object within the monitoring area M even if the mobile body 1 travels for the time limit. For example, the second safety controller 682 temporarily reduces the traveling speed of the mobile body 1 to a minimum speed V when an object is present within the monitoring area M. min That is, the minimum speed V min is an example of the first speed. Preferably, the first speed is zero. For example, if a person jumps out ahead in the traveling direction of the mobile body 1 and enters the monitoring area M, the second safety controller 682 temporarily decelerates or stops the mobile body 1. The second safety controller 682 returns the mobile body 1 to normal traveling again after a predetermined time has elapsed. At this time, the mobile body 1 travels so as to avoid the person who has entered the monitoring area M. More specifically, the aforementioned path generator 66 executes a path plan to avoid an object in the monitoring area M. Therefore, in this example, the time limit is longer than the time required for the path generator 66 to execute a path plan to avoid the object in the monitoring area M. The second safety controller 682 outputs the limited command speed (hereinafter referred to as the "second safe speed V2") to the determiner 683.

[0082] The determiner 683 determines the final command speed. Specifically, the determiner 683 determines the smaller of the first safe speed V1 input from the first safety controller 681 and the second safe speed V2 input from the second safety controller 682 as the final command speed.

[0083] 13 is a flowchart of the safety control, which is executed, for example, in the process of step S5 of the basic operation shown in FIG.

[0084] First, in step S101, the first safety controller 681 executes the first safety control.

[0085] Subsequently, in step S102, the second safety controller 682 executes the second safety control.

[0086] Subsequently, in step S103, the determiner 683 determines the final command speed.

[0087] Next, the first safety control will be described in detail with reference to Fig. 14, which is a flowchart of a subroutine of the first safety control.

[0088] First, in step S201, the first safety controller 681 acquires environmental information. Specifically, the first safety controller 681 acquires information detected by the sensor 3, i.e., point cloud data.

[0089] Subsequently, in step S202, the first safety controller 681 calculates the distance to the surrounding object based on the point cloud data.

[0090] Next, in step S203, the first safety controller 681 derives a first safe speed V1. For example, the first safety controller 681 derives the first safe speed V1 based on first relationship information, which is a correspondence relationship between the distance to a peripheral object and the first safe speed V1, and the calculated distance to the peripheral object. The first relationship information is stored in, for example, the memory 62. The first safety controller 681 outputs the derived first safe speed V1 to the determiner 683. Then, the process returns to the safety control process shown in FIG. 13 .

[0091] Next, the second safety control will be described in detail with reference to Fig. 15, which is a flowchart of a subroutine of the second safety control.

[0092] First, in step S301, the second safety controller 682 sets a monitoring area M ahead in the traveling direction according to the current speed of the mobile body 1. For example, the second safety controller 682 determines the area of ​​the monitoring area M according to the current speed of the mobile body 1 based on second relationship information which is the correspondence between the area of ​​the monitoring area M and the current speed. The second relationship information is stored, for example, in the memory 62. The second safety controller 682 sets a monitoring area M ahead in the traveling direction of the mobile body 1, having an area corresponding to the current speed.

[0093] Next, in step S302, the second safety controller 682 determines whether or not the speed is being limited. Specifically, the second safety controller 682 determines that the speed is being limited if the time measured by the timer is within the time limit, and determines that the speed is not being limited if the time measured by the timer exceeds the time limit. The timer measures the elapsed time since an object was detected in the monitoring area M and the traveling speed of the mobile body 1 was reduced to or below the first speed. The timer is reset when the time limit has elapsed. If the speed is being limited, the process proceeds to step S305, and if the speed is not being limited, the process proceeds to step S303.

[0094] If it is determined in step S302 that the speed limit is not being imposed, the second safety acquirer 682 acquires environmental information in step S303. More specifically, the second safety controller 682 acquires information detected by the sensor 3, i.e., point cloud data.

[0095] Subsequently, in step S304, the second safety controller 682 determines, based on the point cloud data, whether or not an object exists within the monitoring area M. If an object exists within the monitoring area M, the process proceeds to step S305, and if an object does not exist within the monitoring area M, the process proceeds to step S306.

[0096] After processing of step S302, or if it is determined in step S304 that an object is present within the monitoring area M, in step S305, the second safety controller 682 adopts the first speed as the second safe speed V2.

[0097] If it is determined in step S304 that no object is present within the monitoring region M, the second safety controller 682 adopts the input command speed as the second safe speed V2 in step S306.

[0098] After the processing of step S305 or step S306, the process returns to the safety control processing shown in FIG.

[0099] According to this mobile body 100, a monitoring area M is set ahead of the mobile body 1 in the traveling direction. If an object is present within the monitoring area M, the second safety control temporarily reduces the traveling speed of the mobile body 1 to a first speed or lower. This allows the mobile body 1 to decelerate or stop early before interfering with the object ahead of the traveling direction. As a result, the possibility of the mobile body 1 interfering with the object is effectively reduced, improving safety. If the object is a person, early deceleration or stopping of the mobile body 1 can prevent the person from feeling tense. Here, when the mobile body 1 travels through a narrow passage, the side wall of the passage or the like may easily intrude into the monitoring area M, and the mobile body 1 may be frequently subjected to speed restrictions. In this case, travelability may deteriorate. In the mobile body 100, a first safety control is executed. In the first safety control, the traveling speed of the mobile body 1 decreases as the distance to the surrounding object decreases. Here, when the mobile body 1 travels through a narrow passage, the distance to the surrounding object becomes relatively short. Therefore, the first safety control reduces the traveling speed of the mobile body 1 in narrow passages, etc. The area of ​​the monitoring region M decreases as the traveling speed of the mobile body 1 decreases, so the area of ​​the monitoring region M decreases when the mobile body 1 travels through narrow passages, etc. This prevents the mobile body 1 from being frequently limited in speed, thereby preventing deterioration of traveling performance. In other words, it is possible to achieve both traveling performance and safety.

[0100] Furthermore, when the traveling speed of the mobile body is equal to or lower than the second speed, the area of ​​the monitoring area M is zero, i.e., the monitoring area M is not set. As a result, when the mobile body 1 travels through a narrow passage, etc., it is even more difficult for the side walls of the passage to intrude into the monitoring area M, ensuring safety without impairing travel performance. In this case, if the monitoring area M is not set when the mobile body 1 travels through a narrow passage, etc., and a person suddenly appears ahead in the direction of travel, the person will be detected within the emergency area E and the mobile body will come to an abrupt halt. However, since the traveling speed of the mobile body is limited to a low speed equal to or lower than the second speed, safety for the person is also ensured. Furthermore, since the traveling speed is low, the sense of urgency felt by the person is suppressed.

[0101] Furthermore, the time limit is longer than the time required for the control device 6 to execute the route plan. As a result, a route plan is generated that avoids objects present in the monitoring area M, so that even if the mobile body 1 starts normal traveling after the time limit has elapsed, the possibility of interference between the mobile body 1 and objects present in the monitoring area M can be reduced.

[0102] The control device 6 may control the robot arm 12 when performing autonomous movement. Fig. 16 is a functional block diagram showing the configuration of a control system of the processor 61 according to a modified example. The processor 61 may function as an arm controller 611 that controls the robot arm 12.

[0103] The arm controller 611 operates the robot arm 12. For example, the arm controller 611 transforms the robot arm 12 into a target shape. The arm controller 611 may maintain the robot arm 12 in the target shape. The arm controller 611 may operate the robot arm 12 by continuously changing the shape of the robot arm 12.

[0104] The arm controller 611 generates command values ​​according to a target shape of the robot arm 12. Based on the command values, the arm controller 611 calculates command operation amounts for each of the multiple motors 12a. For example, the operation amounts are the rotational speed or torque of the motors.

[0105] The arm controller 611 may maintain the robot arm 12 in a fixed shape when the moving body 100 is moving, and may operate the robot arm 12 when the robot arm 12 is performing work.

[0106] For example, when the moving body 100 is traveling, the arm controller 611 maintains the robot arm 12 in a traveling shape. In other words, when the moving body 100 is traveling, the arm controller 611 fixes the shape of the robot arm 12 and prohibits the robot arm 12 from moving.

[0107] Fig. 17 is a side view of the mobile body 1 when the robot arm 12 is in the running shape. Fig. 18 is a plan view of the mobile body 1 when the robot arm 12 is in the running shape.

[0108] For example, the robot arm 12 in the running configuration is positioned at a relatively high position. For example, the robot arm 12 in the running configuration is bent at an intermediate joint between the shoulder joint and the wrist joint, for example, the fourth joint J4, with the portion between the base 11 and the intermediate joint extending diagonally downward and rearward from the base 11, and the portion between the intermediate joint and the wrist joint extending forward from the intermediate joint. That is, the robot arm 12 in the running configuration has the intermediate joint pulled rearward and bent at the intermediate joint. As a result, the portion of the robot arm 12 closer to the hand than the intermediate joint is positioned at a relatively high position. Furthermore, the hand of the robot arm 12 is positioned relatively rearward.

[0109] The robot arm 12 in the traveling configuration is positioned higher than the first sensor 3A of the mobile body 1. The detection range of the first sensor 3A extends three-dimensionally from the first sensor 3A. The space above the first sensor 3A is included in the detection range of the first sensor 3A. Because the robot arm 12 is positioned above the first sensor 3A, it may block part of the detection range of the first sensor 3A. The detection results of the portion of the first sensor 3A that corresponds to the robot arm 12 are treated as invalid. The higher the position of the robot arm 12, the farther the robot arm 12 is from the first sensor 3A. The farther the robot arm 12 is from the first sensor 3A, the smaller the area of ​​the detection range of the first sensor 3A that is blocked by the robot arm 12 tends to be. Therefore, in the traveling configuration, the detection range of the first sensor 3A is relatively large.

[0110] Furthermore, the robot arm 12 in the traveling configuration has a relatively small forward projection amount from the base 11. By reducing the forward projection amount of the robot arm 12, the detection range of the first sensor 3A is expanded diagonally upward and forward from the first sensor 3A.

[0111] The widthwise size of the overall shape of the running-shaped robot arm 12 in a plan view is relatively small. For example, in the running shape, the second link L2 is located at the outermost position in the widthwise direction. Of the multiple links L, the links other than the second link L2 are located more inward in the widthwise direction than the second link L2. By making the widthwise size of the overall shape of the running-shaped robot arm 12 in a plan view relatively small, the possibility of interference between the robot arm 12 and other objects located in the widthwise direction during running can be reduced. Note that the running-shaped robot arm 12 may be configured such that the first link L1 and the second link L2 are positioned forward of the rotation axis of the first joint J1 by rotating the first link L1 forward about the rotation axis of the first joint J1. This further reduces the widthwise size of the second links L2 of the two robot arms, i.e., the widthwise size of the overall shape of the robot arm 12 in a plan view.

[0112] The overall shape of the robot arm 12 in the traveling configuration in a plan view is contained within the inside of the carriage 10 in the front-to-rear direction, which reduces the possibility of interference between the robot arm 12 and other objects located in the front-to-rear direction when traveling.

[0113] In addition, the shapes of the two robot arms 12 in terms of their running configurations do not have to be completely identical. That is, the shapes of the two robot arms 12 may be slightly different. For example, the height of the tip of one robot arm 12 may be different from the height of the tip of the other robot arm 12. The rotation angle of the seventh joint J7 of one robot arm 12 may be different from the rotation angle of the seventh joint J7 of the other robot arm 12.

[0114] For example, when the robot arm 12 is performing work, the arm controller 611 operates the robot arm 12. In other words, when the robot arm 12 is performing work, the arm controller 611 permits the operation of the robot arm 12 and freely operates the robot arm 12. For example, after the mobile body 1 has reached its destination, the arm controller 611 operates the robot arm 12 to perform work by the robot arm 12.

[0115] Other Embodiments As described above, the above-described embodiments have been described as examples of the technology disclosed in the present application. However, the technology of the present disclosure is not limited to these embodiments and can be applied to embodiments in which modifications, substitutions, additions, omissions, etc. are made as appropriate. Furthermore, the components described in the above-described embodiments can be combined to create new embodiments. Furthermore, the components described in the accompanying drawings and detailed description may include not only components essential for solving the problem, but also components that are not essential for solving the problem in order to exemplify the technology. Therefore, the fact that these non-essential components are described in the accompanying drawings or detailed description should not be interpreted as immediately determining that these non-essential components are essential.

[0116] The mobile body 1 may be a robot that does not include the robot arm 12. The mobile body 1 is not limited to a robot, but may be a mobile device such as a drone, a ship, or a vehicle. The movement path of the mobile body 1 is not limited to a passage, but may be a road or a seaway.

[0117] The shapes of the emergency region E and the monitoring region M are not limited. The outer shapes of the emergency region E and the monitoring region M may be, for example, a square, a polygon other than a rectangle, an ellipse, or a circle. The emergency region E does not have to be set. The change in the area of ​​the monitoring region M according to the current speed is not limited to the example shown in FIG. 12. For example, the area of ​​the monitoring region M may be set to zero when the mobile body 1 is stopped, and the area of ​​the monitoring region M may be increased as the traveling speed of the mobile body 1 increases when the mobile body 1 is traveling.

[0118] In the first safety control, the manner in which the speed changes depending on the distance to the surrounding object is not limited to the example shown in FIG.

[0119] The flowchart is merely an example. Steps in the flowchart may be changed, replaced, added, omitted, etc. as appropriate. The order of steps in the flowchart may be changed, and serial processing may be performed in parallel. For example, in the safety control flowchart shown in FIG. 13, step S101 and step S102 may be performed in parallel.

[0120] The functionality of the elements disclosed herein may be implemented using one or more circuits or processing circuits, including general-purpose processors, special-purpose processors, integrated circuits, ASICs (Application Specific Integrated Circuits), FPGAs (Field Programmable Gate Arrays), and / or conventional circuitry. The functionality of the elements disclosed herein may be implemented using one or more circuits or processing circuits, including combinations of general-purpose processors, special-purpose processors, integrated circuits, ASICs, FPGAs, and conventional circuitry. The one or more circuits or processing circuits may be programmed using one or more programs stored together or separately in one or more memories or otherwise configured to perform the disclosed functions. A processor is considered a processing circuit or circuitry because it includes transistors and other circuitry. A processor may also be a programmed processor that executes a program stored in a memory. In this disclosure, a circuit, unit, or means is hardware that performs the recited functions alone or in combination with each other, or hardware that is programmed to perform the recited functions alone or in combination with each other. The hardware may be any hardware disclosed herein that is programmed or configured to perform the recited functions.

[0121] A computer program containing computer instructions is stored in memory. The computer instructions provide logic and routines that enable hardware to perform the methods disclosed herein. The hardware includes, for example, processing circuits or circuitry. The computer program may be implemented in a known format in a computer-readable storage medium, a computer program product, a memory device, a recording medium such as a CD-ROM or DVD, and / or the memory of FPGAs or ASICs.

[0122] [Aspects] The above-described embodiments are specific examples of the following aspects.

[0123] (Mode 1) A mobile body 100 includes a mobile body main body 1 and a control device 6 that causes the mobile body main body 1 to move autonomously, and the control device 6 executes a first safety control and a second safety control. In the first safety control, the control device 6 reduces the traveling speed of the mobile body main body 1 as the distance between the mobile body main body 1 and an object present around the mobile body 1 becomes shorter. In the second safety control, the control device 6 sets a monitoring area M that is disposed ahead of the mobile body main body 1 in the traveling direction and whose area becomes smaller as the traveling speed of the mobile body main body 1 decreases, and temporarily reduces the traveling speed of the mobile body main body 1 to a first speed or less if an object is present within the monitoring area M.

[0124] According to this configuration, a monitoring area M is set ahead of the mobile body 1 in the traveling direction. If an object is present within the monitoring area M, the second safety control temporarily reduces the traveling speed of the mobile body 1 to a first speed or lower. This allows the mobile body 1 to decelerate or stop early before interfering with the object ahead of the traveling direction. As a result, the possibility of the mobile body 1 interfering with the object is effectively reduced, improving safety. If the object is a person, early deceleration or stopping of the mobile body 1 can prevent the person from feeling tense. Here, when the mobile body 1 travels through a narrow passage, the side wall of the passage or the like may easily intrude into the monitoring area M, and the mobile body 1 may be frequently subjected to speed restrictions. In this case, travelability may deteriorate. In the mobile body 100, a first safety control is executed. In the first safety control, the traveling speed of the mobile body 1 decreases as the distance to the surrounding object decreases. Here, when the mobile body 1 travels through a narrow passage, the distance to the surrounding object becomes relatively short. Therefore, the first safety control reduces the traveling speed of the mobile body 1 in narrow passages, etc. The area of ​​the monitoring region M decreases as the traveling speed of the mobile body 1 decreases, so the area of ​​the monitoring region M decreases when the mobile body 1 travels through narrow passages, etc. This prevents the mobile body 1 from being frequently limited in speed, thereby preventing deterioration of traveling performance. In other words, it is possible to achieve both traveling performance and safety.

[0125] (Aspect 2) In the moving body 100 according to aspect 1, the control device 6 sets the area of ​​the monitoring region M to zero when the traveling speed of the moving body 1 is equal to or lower than a second speed.

[0126] With this configuration, when the mobile body 1 travels through a narrow passage or the like, it becomes even more difficult for the side walls of the passage or the like to intrude into the monitoring area M, ensuring safety without impairing travelling performance.

[0127] (Aspect 3) In the moving body 100 according to aspect 1 or aspect 2, the first velocity is zero.

[0128] With this configuration, the mobile body 1 temporarily stops when an object is present within the monitoring area M, further reducing the possibility of the mobile body 1 interfering with the object and improving safety.

[0129] (Aspect 4) In the mobile body 100 described in any one of aspects 1 to 3, the control device 6 executes a route plan for the mobile body 1, and the time for temporarily reducing the traveling speed of the mobile body 1 to a first speed or less is longer than the time required for the control device 6 to execute the route plan.

[0130] According to this configuration, a route plan is generated that avoids objects present within the monitoring area M, thereby reducing the possibility of interference between the mobile body 1 and objects present within the monitoring area M, even if the mobile body 1 begins normal driving after a period of time during which the traveling speed of the mobile body 1 is temporarily reduced.

[0131] (Aspect 5) In the moving body 100 according to any one of Aspects 1 to 4, the moving body main body 1 includes a robot arm and is a mobile robot.

[0132] This configuration makes it possible to realize a robot that is both easy to maneuver and safe.

[0133] (Mode 6) The control device 6 is a control device 6 that causes the mobile body 1 to perform autonomous movement, and is equipped with a first safety controller 681 that executes first safety control and a second safety controller 682 that executes second safety control, the first safety controller 681 reduces the traveling speed of the mobile body 1 as the distance between the mobile body 1 and an object present around the mobile body 1 becomes shorter, and the second safety controller 682 sets a monitoring area M that is positioned ahead of the mobile body 1 in the traveling direction and whose area becomes smaller as the traveling speed of the mobile body 1 decreases, and when an object is present in the monitoring area M, temporarily reduces the traveling speed of the mobile body 1 to a first speed or less.

[0134] This configuration allows the traveling performance and safety of the mobile body 1 to be compatible.

[0135] (Aspect 7) A control method is a control method for causing a mobile body 1 to perform autonomous movement, and includes executing a first safety control and executing a second safety control, wherein in executing the first safety control, the traveling speed of the mobile body 1 is reduced as the distance between the mobile body 1 and an object present around the mobile body 1 becomes shorter, and in executing the second safety control, a monitoring area is set that is positioned ahead of the mobile body 1 in the traveling direction and whose area decreases as the traveling speed of the mobile body 1 decreases, and when an object is present in the monitoring area, the traveling speed of the mobile body 1 is temporarily reduced to below a first speed.

[0136] This configuration allows the traveling performance and safety of the mobile body 1 to be compatible.

[0137] (Mode 8) The control program is a control program for causing the mobile body 1 to perform autonomous movement, and causes a computer to realize a function for executing a first safety control and a function for executing a second safety control, wherein the function for executing the first safety control reduces the traveling speed of the mobile body 1 as the distance between the mobile body 1 and an object present around the mobile body 1 becomes shorter, and the function for executing the second safety control sets a monitoring area that is positioned ahead of the mobile body 1 in the traveling direction and whose area becomes smaller as the traveling speed of the mobile body 1 decreases, and temporarily reduces the traveling speed of the mobile body 1 to below a first speed if an object is present in the monitoring area.

[0138] This configuration allows the traveling performance and safety of the mobile body 1 to be compatible.

[0139] 100 Mobile body 1 Mobile body main body 12 Robot arm 6 Control device 681 First safety controller 682 Second safety controller M Monitoring area

Claims

1. A mobile body comprising: a mobile body; and a control device that causes the mobile body to move autonomously, wherein the control device executes a first safety control and a second safety control, wherein in the first safety control, the control device reduces the traveling speed of the mobile body as the distance between the mobile body and an object present around the mobile body becomes shorter, and in the second safety control, the control device sets a monitoring area that is positioned ahead of the mobile body in the direction of travel and whose area decreases as the traveling speed of the mobile body decreases, and temporarily reduces the traveling speed of the mobile body to a first speed or less if an object is present within the monitoring area.

2. A mobile body according to claim 1, wherein the control device reduces the area of ​​the monitoring region to zero when the traveling speed of the mobile body is equal to or lower than a second speed.

3. A moving body according to claim 1, wherein the first velocity is zero.

4. A mobile body as described in claim 1, wherein the control device executes a route plan for the mobile body, and the time for temporarily reducing the traveling speed of the mobile body to a first speed or less is longer than the time required for the control device to execute the route plan.

5. A mobile body according to any one of claims 1 to 4, wherein the mobile body main body includes a robot arm and is a mobile robot.

6. A control device that causes a mobile body to move autonomously, comprising: a first safety controller that executes first safety control; and a second safety controller that executes second safety control, wherein the first safety controller reduces the traveling speed of the mobile body as the distance between the mobile body and an object present around the mobile body becomes shorter; and the second safety controller sets a monitoring area that is positioned ahead of the mobile body in the traveling direction and whose area becomes smaller as the traveling speed of the mobile body decreases, and temporarily reduces the traveling speed of the mobile body to a first speed or less if an object is present within the monitoring area.

7. A control method for causing a mobile body to move autonomously, comprising: executing a first safety control; and executing a second safety control; wherein, in executing the first safety control, the traveling speed of the mobile body is reduced as the distance between the mobile body and an object present around the mobile body becomes shorter; and, in executing the second safety control, a monitoring area is set that is positioned ahead of the mobile body in the traveling direction and that decreases in area as the traveling speed of the mobile body decreases, and, if an object is present in the monitoring area, the traveling speed of the mobile body is temporarily reduced to below a first speed.

8. A control program for causing a mobile body to move autonomously, the control program realizing in a computer a function for executing a first safety control and a function for executing a second safety control, wherein the function for executing the first safety control reduces the traveling speed of the mobile body as the distance between the mobile body and an object present around the mobile body becomes shorter, and the function for executing the second safety control sets a monitoring area that is positioned ahead of the mobile body in the traveling direction and whose area decreases as the traveling speed of the mobile body decreases, and temporarily reduces the traveling speed of the mobile body to below a first speed if an object is present in the monitoring area.

Citation Information

Patent Citations

  • Laser sensor and automatic conveyance device

    JP2015230527A

  • Mobile body control device and mobile body control method

    JP2016151897A

  • Industrial vehicle

    JP2022012369A

  • Moving body, control apparatus, monitoring apparatus, control method and program

    JP2022047381A

  • Traveling vehicle

    JP2022185638A