Processing circuit, control method, control program, and processing system for controlling an autonomous mobile device.
The processing circuit addresses the issue of delayed response by initiating recognizable motions or notifications when motion information is not received promptly, ensuring clear communication and reducing user anxiety.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- KAWASAKI JUKOGYO KK
- Filing Date
- 2024-10-30
- Publication Date
- 2026-05-15
AI Technical Summary
When the volume of a robot's voice is low relative to surrounding noise or when a human is far from the robot, the human may not hear the voice clearly and feel anxious about the robot's operation due to delayed responses.
A processing circuit that, if it does not receive motion information within a predetermined time after transmitting acquired information, outputs a motion command for the autonomous mobile body to perform a recognizable motion, such as reciprocating movements or notifications, to ensure information transmission to nearby humans.
Enables effective communication with humans in the vicinity of the autonomous mobile body even when calculations for determining operations take longer, preventing anxiety and ensuring awareness of the robot's status.
Smart Images

Figure 2026079226000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a processing circuit for controlling an autonomous mobile body, a control method, a control program, and a processing system.
Background Art
[0002] Patent Document 1 discloses a system that outputs a backchannel voice to a user at a timing corresponding to a response delay time during a waiting time from when a user inputs voice to a robot until the robot outputs a response message.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] When the volume is low with respect to the noise around the robot, when the human is away from the robot, etc., the human around the robot may not be able to sufficiently hear the voice of the robot and may feel anxious that the robot does not perform an operation.
[0005] One aspect of the present disclosure aims to appropriately transmit information from an autonomous mobile body to a surrounding human when the calculation for determining the operation of the autonomous mobile body becomes long.
Means for Solving the Problems
[0006] A processing circuit according to one aspect of the present disclosure is a processing circuit for controlling an autonomous mobile body, which, if it does not receive motion information relating to the operation of the autonomous mobile body calculated based on the acquired information within a predetermined time after transmitting acquired information acquired by the autonomous mobile body, or if it is predicted that it will not receive the motion information within the predetermined time after transmitting the acquired information, outputs a motion command to cause the autonomous mobile body to perform a predetermined motion that can be recognized by people around the autonomous mobile body.
[0007] A control method according to one aspect of the present disclosure is a method for controlling an autonomous mobile body, wherein if, after transmitting acquired information obtained by the autonomous mobile body, motion information relating to the operation of the autonomous mobile body is not received within a predetermined time from the destination to which the acquired information was transmitted, or if it is predicted that motion information will not be received within the predetermined time after transmitting the acquired information, a motion command is output to cause the autonomous mobile body to perform a predetermined motion that can be recognized by people around the autonomous mobile body.
[0008] A control program according to one aspect of the present disclosure causes a processor to execute the control method. The program may be stored in a computer-readable, non-temporary, and tangible storage medium.
[0009] A processing system for an autonomous mobile body according to one aspect of the present disclosure comprises a processing circuit, a first processing circuit mounted on the autonomous mobile body, and a second processing circuit that communicates with the first processing circuit via a communication network and transmits the operation information to the first processing circuit. [Effects of the Invention]
[0010] According to one aspect of this disclosure, when the calculations required to determine the actions of the autonomous mobile body are lengthy, the autonomous mobile body can appropriately transmit information to people in its vicinity. [Brief explanation of the drawing]
[0011] [Figure 1]Figure 1 is a schematic diagram of the processing system for an autonomous mobile body according to the embodiment. [Figure 2] Figure 2 is a block diagram of the autonomous mobile unit shown in Figure 1. [Figure 3] Figure 3 is a block diagram of the server shown in Figure 1. [Figure 4] Figure 4 is a flowchart of the processing system shown in Figure 1. [Figure 5] Figure 5 is a flowchart of the process for the first modified example. [Figure 6] Figure 6 is a flowchart of the process for the second modified example. [Figure 7] Figure 7 is a flowchart of the process for the third modified example. [Modes for carrying out the invention]
[0012] Embodiments will be described below with reference to the drawings.
[0013] (First Embodiment) Figure 1 is a schematic diagram of the processing system 1 for an autonomous mobile body according to the first embodiment. As shown in Figure 1, the processing system 1 comprises an autonomous mobile body 10 that moves autonomously and a server 2 that can communicate with the autonomous mobile body 10 via a communication network N. The communication network N may include, for example, the internet or an intranet. The autonomous mobile body 10 moves autonomously within its activity area. Humans 3 may be present in the activity area of the autonomous mobile body 10. For example, the activity area of the autonomous mobile body 10 is a floor within a facility.
[0014] The task assigned to the autonomous mobile unit 10 is a task that includes movement to a destination. That is, the autonomous mobile unit 10 is an autonomous mobile robot that autonomously moves toward a destination while detecting its own position on a map. If the autonomous mobile unit 10 moves via waypoints before reaching its final destination, the autonomous mobile unit 10 should move toward the nearest waypoint from its current location. The task may include work at the starting point, waypoints, or destination. The types of tasks include, for example, movement, delivery, or patrol security. The autonomous mobile unit 10 is designed to travel on the ground, but it may also fly in the air.
[0015] The autonomous mobile unit 10 comprises a plurality of wheels 11, a base frame 12 supported by the wheels 11, and a connecting structure 13 that connects the wheels 11 to the base frame 12. The autonomous mobile unit 10 is equipped with, for example, the same number of propulsion motors 22 as the number of wheels 11. The propulsion motors 22 are electric motors. The propulsion motors 22 are examples of propulsion actuators that generate the thrust force for the autonomous mobile unit 10 to move. Each wheel 11 is coupled to a propulsion motor 22 that can operate independently of each other. The propulsion motors 22 directly drive the corresponding wheel 11. The autonomous mobile unit 10 can change its direction of travel by, for example, using Mecanum wheels for each wheel 11. Alternatively, one propulsion motor 22 may drive two or more wheels 11. The wheel type of the autonomous mobile unit 10 is not particularly limited, and omni wheels or general-purpose wheels may be used instead of Mecanum wheels. The wheel 11 includes one or more drive wheels and one or more driven wheels, and an electric motor 22 may be coupled to one or more of the drive wheels. If a general-purpose wheel is used as the wheel 11, the autonomous mobile body 1 is equipped with a steering mechanism for steering at least one of the wheels 11.
[0016] The connection structure 13 includes links. The connection structure 13 may further include a suspension. An external force applied to the wheel 11 is transmitted to the base frame 12 via the connection structure 13. The autonomous mobile body 10 includes a body 14 supported by the base frame 12. The autonomous mobile body 10 includes a bumper 15 disposed so as to cover the outer surface of the lower part of the body 14. For example, the body 14 is connected to the base frame 12 via a lower joint so as to be rotatable about a vertical axis with respect to the base frame 12. Note that the body 14 may not be rotatable about the vertical axis. The bumper 15 may be omitted.
[0017] The autonomous mobile body 10 includes an arm 16 connected to the body 14. The arm 16 is connected to the body 14 via a shoulder joint. The arm 16 has an elbow joint. A hand 17 is connected to the tip of the arm 16 via a wrist joint. The hand 17 may include fingers having finger joints. Note that the autonomous mobile body 10 may not include the arm 16 and the hand 17.
[0018] The autonomous mobile body 10 includes a head 18 supported by the body 14. The head 18 is connected to the body 14 via a neck joint so as to be rotatable about a vertical axis with respect to the body 14. For example, a touch panel display 25 is provided on the head 18. Note that the head 18 may not be rotatable about the vertical axis. Also, the above-described wheel 11, body 14, arm 16, hand 17, and head 18 are examples of movable parts of the autonomous mobile body 10.
[0019] Figure 2 is a block diagram of the autonomous mobile body 10 in FIG. 1. As shown in FIG. 2, the autonomous mobile body 10 includes a controller 21. The controller 21 includes a processor 41, a system memory 42, and a storage memory 43. The processor 41 may include a CPU (Central Processing Unit). The system memory 42 may include a volatile memory. The storage memory 43 may include a non-volatile memory. The storage memory 43 includes a hard disk, a flash memory, or a combination thereof. The storage memory 43 downloads map data of the activity area of the autonomous mobile body 10 from the server 2 and stores the map data. The storage memory 43 stores a control program P1. A configuration in which the processor 41 executes the control program P1 read from the storage memory 43 into the system memory 42 is an example of the processing circuit 40.
[0020] The autonomous mobile body 10 includes a propulsion motor 22, a member motor 23, and a battery 24. The processing circuit 40 controls the propulsion motor 22 and the member motor 23. The propulsion motor 22 is an electric motor and is a traction motor for driving the wheels 11. That is, the propulsion motor 22 is an example of a propulsion actuator that moves the autonomous mobile body 10. The number of propulsion motors 22 is the same as the number of wheels 11, and each propulsion motor 22 independently controls the corresponding wheel 11. However, the number of propulsion motors 22 may be less than the number of wheels 11, and one propulsion motor 22 may drive a plurality of wheels 11. The propulsion motor 22 is electrically connected to the battery 24. The propulsion motor 22 incorporates, for example, an inverter, but may be electrically connected to the battery 24 via an external inverter without incorporating an inverter.
[0021] The component motor 23 is an electric motor that causes the autonomous mobile body 10 to perform actions other than movement, and drives components of the autonomous mobile body 10 other than the wheels 11. In other words, the component motor 23 is an example of a component actuator that drives components capable of performing movements different from the movement of the autonomous mobile body. For example, the component motor 23 may drive the aforementioned lower joint to rotate the torso 14 around the vertical axis relative to the base frame 12. The component motor 23 may drive the aforementioned shoulder joint to change the posture of the arm 16 relative to the torso 14. The component motor 23 may drive the aforementioned arm joint to change the shape of the arm 16. The component motor 23 may drive the aforementioned wrist joint to change the orientation of the hand 17 relative to the arm 16. The component motor 23 may drive the aforementioned finger joint to change the posture of the fingers of the hand 17.
[0022] The autonomous mobile device 10 includes a touch panel display 25, a speaker 26, a microphone 27, a communication interface 28, and a communication interface 28. The touch panel display 25 is an example of a user interface. The touch panel display 25 can also function as a notification device that outputs the display as a notification to the outside of the autonomous mobile device 10, as will be described later. The touch panel display 25 functions as both a user input interface and a user output interface. The user input interface may be a keyboard or mouse, or a smartphone or tablet terminal capable of communicating with the autonomous mobile device 10. The user output interface may be a non-touch panel display.
[0023] Speaker 26 outputs sound. Speaker 26 also functions as an alarm that outputs sound as a notification to the outside of the autonomous mobile unit 1, as will be described later. Microphone 27 collects sounds from around the autonomous mobile unit 10. Microphone 27 outputs audio data indicating the collected sounds. In other words, microphone 27 can also be called an audio sensor that detects audio data indicating sounds from around the autonomous mobile unit 10. Communication interface 28 includes a wireless communication device for wirelessly connecting to the communication network N to which server 2 is connected. Communication interface 28 may include a wireless communication device for mobile communication such as LTE communication and local 5G, or it may include a wireless communication device for Wi-Fi communication.
[0024] The autonomous mobile device 10 includes a positioning sensor 30, a camera 31, a temperature sensor 32, a pressure sensor 33, and a strain sensor 34. Various sensors can be used as the positioning sensor 30 as long as they are for detecting the position of the autonomous mobile device 10, but in this embodiment, a distance measuring sensor is used as the positioning sensor 30. The positioning sensor 30 detects the shape of objects around the autonomous mobile device 10 in three dimensions by measuring the distance around the autonomous mobile device 10 in three dimensions. The positioning sensor 30 detects the position data of the outer surface of obstacles around the autonomous mobile device 10 by receiving reflected waves from objects around the autonomous mobile device 10. The positioning sensor 30 includes, for example, a LiDAR (Light Detection and Ranging) sensor, an infrared distance measuring sensor, a millimeter-wave radar, or a depth sensing camera.
[0025] The processing circuit 40 determines the position of the autonomous mobile unit 10 on the map data by matching the shapes of surrounding objects detected by the positioning sensor 30 with the shapes of the aforementioned map data. In other words, the function of determining the position of the autonomous mobile unit 10 is realized by the combination of software that matches the shapes of objects detected by the positioning sensor 30 with the map data and the positioning sensor 30. Therefore, when the processing circuit 40 receives a signal from the positioning sensor 30, it acquires position data indicating the position of the autonomous mobile unit 10.
[0026] The positioning sensor 30 of the autonomous mobile unit 10 may use a satellite positioning sensor such as a GPS sensor instead of a distance measuring sensor. The autonomous mobile unit 10 may be positioned by calculating the distance from each wireless access point to the autonomous mobile unit 10 based on the strength of each radio wave received by the autonomous mobile unit 10 from multiple wireless access points installed in the autonomous mobile unit 10's activity area. Instead of using radio waves received from multiple wireless access points for positioning, the autonomous mobile unit 10 may use sound waves, light, or magnetism received from multiple locators installed in its activity area for positioning. If the autonomous mobile unit 1 is driven by remote control, a positioning function may not be necessary.
[0027] Camera 31 captures the environment surrounding the autonomous mobile body 10 and outputs image data showing the environment. Temperature sensor 32 detects the temperature of the environment surrounding the autonomous mobile body 10. Temperature sensor 32 can be, for example, a thermograph that detects temperature data showing the temperature distribution of the environment surrounding the autonomous mobile body 10. Pressure sensor 33 is sandwiched between the bumper 15 (see Figure 1) and the body 14. Pressure sensor 33 can detect pressure data showing the pressure caused by the displacement of the bumper 15 when an external force is applied. Strain sensor 34 is attached to the coupling structure 13 (see Figure 1). Strain sensor 34 can detect strain data showing the strain generated in the coupling structure 13 when an external force is applied to the wheels 11 or the body 14.
[0028] Note that the camera 31, temperature sensor 32, pressure sensor 33, and strain sensor 34 are merely illustrative examples. The autonomous mobile device 10 does not need to be equipped with all of the camera 31, temperature sensor 32, pressure sensor 33, and strain sensor 34. The camera 31, temperature sensor 32, pressure sensor 33, and strain sensor 34 are each arbitrarily adopted according to design requirements.
[0029] Figure 3 is a block diagram of server 2 in Figure 1. As shown in Figure 3, server 2 includes a processor 51, system memory 52, storage memory 53, and a communication interface 54. The communication interface 54 includes a communication device that connects to the communication network N by wire or wireless. The processor 51 may include a CPU (Central Processing Unit). The system memory 52 may include volatile memory. The storage memory 53 may include non-volatile memory. The storage memory 53 may include a hard disk, flash memory, or a combination thereof. The storage memory 53 stores the control program P2. An example of a processing circuit 50 is a configuration in which the processor 51 executes the control program P2 read from the storage memory 53 to the system memory 52.
[0030] The storage memory 53 stores map information M, which shows a map of the activity area of the autonomous mobile unit 10. The map information M identifies the shape of the area in which the autonomous mobile unit 10 can travel. For example, the map information M identifies the outline of the area in which the autonomous mobile unit 10 can travel by identifying the outlines of objects on the floors of the facility.
[0031] In this embodiment, the program executed by the processing system 1 consists of a control program P1 stored in the storage memory 43 of the autonomous mobile unit 10 and a control program P2 stored in the storage memory 53 of the server 2. Furthermore, in the processing system 1, the processing circuit 40 of the autonomous mobile unit 10 may be referred to as the first processing circuit, and the processing circuit 50 of the server 2 may be referred to as the second processing circuit.
[0032] Figure 4 is a flowchart of the processing of processing system 1 in Figure 1. The processing will be explained below following the flow shown in Figure 4, with reference to Figures 1, 2, and 3 as appropriate. In the following explanation, the processing of server 2 is performed by processing circuit 50. As shown in Figure 4, in step S1, when the autonomous mobile unit 10 is powered on and not performing any motion, processing circuit 40 of the autonomous mobile unit 10 acquires data to be sent to server 2 as acquired information.
[0033] The acquired information may be information entered by a human 3 operating the touch panel display 25. The acquired information may also be sensor data, which is information detected by sensors 27, 30, 31, 32, 33 and 34 of the autonomous mobile body 10. That is, the acquired information may include data selected from the group of user input data, voice data, location data, image data, temperature data, pressure data, and strain data. These data are merely illustrative examples. The types of acquired information can be arbitrarily determined according to the design requirements.
[0034] In step S2, the processing circuit 40 transmits the acquired information described above to the server 2 via the communication interface 28. At this time, the processing circuit 40 requests the server 2 to perform a calculation to determine the action of the autonomous mobile unit 10, and waits to receive operation information regarding the operation of the autonomous mobile unit 10, which will be determined based on the result of that calculation, from the server 2. Alternatively, the controller 21 is aware in advance that the server 2 will perform a calculation to determine the action of the autonomous mobile unit 10 and transmit operation information regarding the operation of the autonomous mobile unit 10 to the autonomous mobile unit 10 based on the result of that calculation. The operation information includes information used to determine the operation of the autonomous mobile unit 10, operation commands to the autonomous mobile unit 10, etc.
[0035] In step S3, the server 2 uses the acquired information received from the autonomous mobile device 10 as input data to perform calculations to determine the actions of the autonomous mobile device 10. For example, if the server 2 receives user input data entered on the touch panel display 25 as acquired information from the autonomous mobile device 10, it may perform calculations to generate action information to cause the autonomous mobile device 10 to perform an action that matches the request of the user input data. Specifically, if a person 3 inputs user input data instructing the autonomous mobile device 10 to move to a destination, the server 2 may calculate the optimal travel route for the autonomous mobile device 10 from its current location to the destination. In that case, the action information may be information indicating the destination and relay points of the optimal travel route. Upon receiving the action information, the autonomous mobile device 10 autonomously travels towards the destination, passing through the relay points.
[0036] When Server 2 receives position data of the autonomous mobile unit 10 as acquired information from the autonomous mobile unit 10, it may calculate a modified travel route as operation information to change the travel route according to the position of the autonomous mobile unit 10. If the autonomous mobile unit 10 is attempting to enter a region where it needs to obtain permission to enter from Server 2 and is temporarily stopped at a waiting position near the region, Server 2 may, upon receiving position data indicating the current location of the autonomous mobile unit 10 as acquired information from the autonomous mobile unit 10, determine whether predetermined conditions for permission to enter are met. In this case, if the predetermined conditions for permission to enter are met, Server 2 may send information indicating permission to enter to the autonomous mobile unit 10 as operation information. If the predetermined conditions for permission to enter are not met, Server 2 may send information indicating prohibition of entry to the autonomous mobile unit 10 as operation information. The predetermined conditions for permission to enter may include, for example, the condition that there are no other autonomous mobile units other than the autonomous mobile unit 10 in the aforementioned region.
[0037] When server 2 receives audio data input to microphone 27 from autonomous mobile device 10, it may calculate to generate action information to cause autonomous mobile device 10 to perform an action that matches the request indicated by the audio data. In this case, server 2 can interpret the command indicated by the audio data using known speech recognition technology.
[0038] When Server 2 receives image data captured by Camera 31 from the autonomous mobile unit 10, it may recognize people in front of the autonomous mobile unit 10 in the direction of travel based on the image data and calculate the degree of human congestion in front of the autonomous mobile unit 10 in the direction of travel. In that case, Server 2 may calculate the travel route as action information to change or maintain the travel route according to the degree of human congestion.
[0039] When Server 2 receives temperature data detected by the temperature sensor 32 from the autonomous mobile body 10, it may recognize people in front of the autonomous mobile body 10 in the direction of travel based on that temperature data and calculate the degree of human congestion in front of the autonomous mobile body 10 in the direction of travel. In that case, Server 2 may calculate the travel route as action information to change or maintain the travel route according to that degree of human congestion.
[0040] The autonomous mobile unit 10 performs an emergency stop if the pressure detected by the first pressure sensor 33 or the second pressure sensor 35 exceeds a first threshold. The autonomous mobile unit 10 transmits the detected pressure to the server 2 along with an emergency stop signal indicating an emergency stop. The server 2 refers to the received pressure and the surrounding conditions of the autonomous mobile unit 10 and performs a calculation to determine whether the autonomous mobile unit 10 can resume movement. For example, if there are no obstacles such as people or objects within a predetermined range from the autonomous mobile unit 10, and the received pressure is greater than the first threshold but less than the second threshold, the server 2 may transmit a signal to the autonomous mobile unit 10 that permits it to resume movement. If there are no obstacles such as people or objects within a predetermined range from the autonomous mobile unit 10, and the received pressure is greater than the second threshold, the server 2 may transmit a signal to the autonomous mobile unit 10 that prohibits it from resuming movement.
[0041] The autonomous mobile unit 10 performs an emergency stop if the strain detected by the strain sensor 34 exceeds a first threshold. The autonomous mobile unit 10 transmits the detected strain to the server 2 along with an emergency stop signal indicating an emergency stop. The server 2 refers to the received strain and the surrounding conditions of the autonomous mobile unit 10 and performs a calculation to determine whether the autonomous mobile unit 10 can resume movement. For example, if there are no obstacles such as people or objects within a predetermined range from the autonomous mobile unit 10, and the received strain is greater than the first threshold but less than the second threshold, the server 2 may transmit a signal to the autonomous mobile unit 10 that permits it to resume movement. If there are no obstacles such as people or objects within a predetermined range from the autonomous mobile unit 10, and the received strain is greater than the second threshold, the server 2 may transmit a signal to the autonomous mobile unit 10 that prohibits it from resuming movement.
[0042] In step S7, server 2 determines whether the calculation to determine the operation of the autonomous mobile unit 10 has been completed. The time required to complete the calculation may be prolonged depending on the type and amount of information received from the autonomous mobile unit 10, the content of the calculation performed by server 2, etc. If it is determined in step S7 that the calculation has been completed, in step S8, server 2 transmits operation information to the autonomous mobile unit 10 based on the calculation result.
[0043] The time it takes from the moment the autonomous mobile device 10 transmits acquired information to the server 2 until the autonomous mobile device 10 has finished receiving operation information from the server 2 can be prolonged depending on the communication speed of the communication network N, the amount of operation information data, etc. In Figure 4, for convenience, an arrow is shown indicating that the server 2 transmits operation information to the autonomous mobile device 10 before step S9, but in reality, the timing of when the server 2 transmits operation information varies depending on the time required for the calculation in step S3.
[0044] The processing circuit 40 of the autonomous mobile unit 10 determines, within a predetermined time after transmitting the acquired information obtained by the autonomous mobile unit 10 to the server 2, whether or not it has received operation information regarding the operation of the autonomous mobile unit 10 calculated by the server 2 based on the acquired information. If it is determined that it has not received operation information within the predetermined time, it outputs a motion command to cause the autonomous mobile unit 10 to perform a predetermined motion. In other words, the processing circuit 40 outputs a motion command to cause the autonomous mobile unit 10 to perform a predetermined motion if the time required to obtain the result of the calculation to determine the action of the autonomous mobile unit 10 exceeds a predetermined waiting time.
[0045] Specifically, in step S4, the processing circuit 40 determines whether a predetermined time has elapsed since it transmitted the acquired information to the server 2. After transmitting the acquired information to the server 2, the processing circuit 40 waits to receive operation information as a response from the server 2. If it is determined in step S4 that the predetermined time has not elapsed, in step S9, the processing circuit 40 determines whether it has received operation information determined based on the result of the calculation in step S3. If it is determined in step S9 that the autonomous mobile unit 10 has not received operation information, the process returns to step S4.
[0046] If, in step S4, it is determined that a predetermined time has elapsed without the autonomous mobile unit 10 receiving any operational information, then in step S5, the processing circuit 40 outputs a motion command to the propulsion motor 22 or member motor 23 to cause the autonomous mobile unit 10 to initiate a predetermined motion that can be perceived by people 3 around the autonomous mobile unit 10.
[0047] In this embodiment, the predetermined motion includes repetitive motion. For example, the processing circuit 40 controls the propulsion motor 22 to drive each wheel 11, causing the autonomous mobile body 10 to perform reciprocating rotational motion or reciprocating linear motion. Specifically, the reciprocating rotational motion of the autonomous mobile body 10 can be a reciprocating rotational motion in which the autonomous mobile body 10 alternately turns right and left around the vertical centerline of the autonomous mobile body 10. The reciprocating linear motion of the autonomous mobile body 10 may be a reciprocating motion in which the autonomous mobile body 10 repeatedly moves slightly to the right and left without changing direction, or it may be a reciprocating motion in which the autonomous mobile body 10 repeatedly moves slightly forward and backward. If the autonomous mobile body 10 is flying in the air, it may be a reciprocating motion in which the autonomous mobile body 10 repeatedly rises and falls slightly.
[0048] In this way, because the autonomous mobile device 10 repeatedly performs a predetermined motion, people 3 around the autonomous mobile device 10 can recognize that the autonomous mobile device 10 is waiting for the completion of calculations for the next action. Furthermore, by making the predetermined motion performed by the autonomous mobile device 10 a reciprocating motion, it is possible to prevent the need for a large space for people 3 around the autonomous mobile device 10 to recognize that it is performing calculations. If the autonomous mobile device 10 is in a crowd, people around the autonomous mobile device 10 will recognize the reciprocating motion of the autonomous mobile device 10 and be motivated to clear a path for the autonomous mobile device 10 to move, thus preventing a deadlock in which the autonomous mobile device 10 cannot move within the crowd.
[0049] Furthermore, the processing circuit 40 may control the member motor 23 to drive the torso 14, arm 16, hand 17, or head 18, causing the torso 14, arm 16, hand 17, or head 18 to perform predetermined motions. For example, the processing circuit 40 may control the member motor 23 to cause the torso 14 to perform a reciprocating rotational motion around the vertical centerline of the torso 14, alternating between right and left rotations relative to the base frame 12. The processing circuit 40 may control the member motor 23 to cause at least one of the arm 16 and hand 17 to perform a predetermined pattern of motion. The processing circuit 40 may control the member motor 23 to cause the head 18 to perform a reciprocating rotational motion around the vertical centerline of the head 18, alternating between right and left rotations relative to the torso 14.
[0050] Furthermore, if the processing circuit 40 determines that a human 3 is within a predetermined range from the autonomous mobile body 10, it may reduce the operating range of the predetermined motion compared to when it determines that a human 3 is not within a predetermined range from the autonomous mobile body 10. Whether or not a human 3 is within a predetermined range from the autonomous mobile body 10 can be determined based on the detection signal from the distance measuring sensor or the camera 31.
[0051] Furthermore, the processing circuit 40 outputs a notification command to the touch panel display 25 to notify the people 3 surrounding the autonomous mobile body 10 of a predetermined image. For example, the touch panel display 25 displays an image indicating that the system is waiting for the calculation to complete while the predetermined motion described above is being performed. The processing circuit 40 may also output a notification command to the speaker 26 to notify the people 3 surrounding the autonomous mobile body 10 of a predetermined sound. For example, the speaker 26 may output a sound indicating that the system is waiting for the calculation to complete while the predetermined motion described above is being performed.
[0052] The order of steps S5 and S6 is not particularly limited. In Figure 4, step S6 is shown after step S5 for convenience, but steps S5 and S6 may be performed simultaneously or in reverse order. Furthermore, the processing circuit 40 may perform step S6 without performing step S5 if a predetermined condition is met.
[0053] Furthermore, if the processing circuit 40 determines that a human 3 is within a predetermined range from the autonomous mobile body 10, it may skip step S5 and perform step S6. If the processing circuit 40 determines that the remaining charge of the autonomous mobile body 10's battery 24 is below a threshold, it may skip step S5 and perform step S6, or it may skip both steps S5 and S6.
[0054] Next, in step S9, the processing circuit 40 determines whether or not it has received operation information determined based on the result of the calculation in step S3. If it is determined in step S9 that the autonomous mobile unit 10 has not received operation information, the process returns to step S4. On the other hand, if it is determined in step S9 that the autonomous mobile unit 10 has received operation information, in step S10, the processing circuit 40 determines whether or not the predetermined motion and notification described above are currently being performed. If it is determined in step S10 that the predetermined motion and notification are not currently being performed, in step S12, the processing circuit 40 causes the autonomous mobile unit 10 to perform an operation based on the operation information received from the server 2.
[0055] If it is determined in step S10 that a predetermined motion and notification are being performed, the processing circuit 40 terminates the predetermined motion and notification in step S11, and then in step S12 causes the autonomous mobile unit 10 to perform an action based on the operation information received from the server 2.
[0056] According to the configuration described above, if it takes time to obtain the result of the calculation to determine the operation of the autonomous mobile device 10, the autonomous mobile device 10 will perform a predetermined motion during that waiting time. Therefore, the people 3 around the autonomous mobile device 10 can recognize that the autonomous mobile device 10 is waiting to receive operation information for the next operation. Thus, if the time until the autonomous mobile device 10 receives operation information for the next operation becomes long, the autonomous mobile device 10 can appropriately transmit information to the people 3 around it.
[0057] Figure 5 is a flowchart of the processing in the first modified example. In the first modified example, the server 2 determines whether or not the autonomous mobile unit 10 needs to perform a predetermined motion. In Figure 5, steps that are the same as those in Figure 4 are denoted by the same reference numerals as in Figure 4.
[0058] As shown in Figure 5, steps S1, S2, S3, S5, S6, S8, S11, and S12 are the same as the steps with the same reference numerals in Figure 4, so a detailed explanation is omitted. In step S21, the server 2 determines whether a predetermined time has elapsed since it received the acquired information from the autonomous mobile body 10. If it is determined in step S21 that the predetermined time has not elapsed, in step S22 the server 2 determines whether the calculation in step S3 has been completed. If it is determined in step S22 that the calculation has not been completed, the process returns to step S21. If it is determined in step S22 that the calculation has been completed, in step S8 the server 2 transmits operation information to the autonomous mobile body 10 based on the calculation result.
[0059] If it is determined in step S21 that a predetermined time has elapsed without the calculation being completed, in step S23, the server 2 sends a motion command to the autonomous mobile body 10 to initiate a predetermined motion. In Figure 5, for convenience, an arrow is shown indicating that the server 2 sends the motion command to the autonomous mobile body 10 before step S25, but in reality, the server 2 may send the motion command after step S25.
[0060] In step S24, the processing circuit 40 of the autonomous mobile unit 10 determines whether or not it has received operation information from the server 2, which is determined based on the result of the calculation in step S3. If it is determined in step S24 that the autonomous mobile unit 10 has received operation information, in step S12 the processing circuit 40 causes the autonomous mobile unit 10 to perform an operation based on that operation information. On the other hand, if it is determined in step S24 that the autonomous mobile unit 10 has not received operation information, in step S25 the processing circuit 40 determines whether or not it has received a motion command from the server 2. If it is determined in step S25 that the autonomous mobile unit 10 has not received a motion command, the process returns to step S24. On the other hand, if it is determined in step S25 that the autonomous mobile unit 10 has received a motion command, in step S5 the processing circuit 40 starts a predetermined motion. Steps S5 and S6 are the same as the steps with the same reference numerals in Figure 4, so a detailed explanation is omitted.
[0061] After sending a motion command, in step S26, if server 2 determines that the calculation in step S3 is complete, in step S8, it transmits operation information to the autonomous mobile unit 10 based on the calculation result. When the processing circuit 40 of the autonomous mobile unit 10 receives the operation information from server 2, in step S11, it terminates the predetermined motion and notification that is currently being performed, and then in step S12, it causes the autonomous mobile unit 10 to perform an operation based on the operation information.
[0062] Figure 6 is a flowchart of the process in the second modified example. In the second modified example, the autonomous mobile unit 10 makes a prediction on its side as to whether the waiting time after it transmits the acquired information to the server 2 will be prolonged. In Figure 6, steps that are the same as those in Figure 4 are denoted by the same reference numerals as in Figure 4.
[0063] As shown in Figure 6, steps S1, S2, S3, S5, S6, S7, S8, S11, and S12 are the same as the steps with the same reference numerals in Figure 4, so a detailed explanation is omitted. In step S31, the processing circuit 40 of the autonomous mobile unit 10 determines whether or not it predicts that it will not receive operation information from the server 2 within a predetermined time after transmitting the acquired information to the server 2.
[0064] For example, the processing circuit 40 may predict that it will not be able to receive operation information from server 2 within a predetermined time based on the amount of data of acquired information sent to server 2. In this case, it can predict that the time required to acquire the calculation results will be longer when there is a large amount of input data used for calculations on server 2. In addition to or instead of this, the processing circuit 40 may acquire the communication speed of the communication network N and predict that it will not be able to receive operation information from server 2 within a predetermined time based on that communication speed. In this case, the processing circuit 40 can predict that the time required to acquire the calculation results will be longer when the communication speed with server 2 is slow. Alternatively, the processing circuit 40 may predict that it will not be able to receive operation information from server 2 within a predetermined time based on past performance.
[0065] If the processing circuit 40 does not predict in step S31 that it will not receive operation information from the server 2 within a predetermined time, it determines in step S32 whether or not it has received operation information from the server 2. If it determines in step S32 that it has not received operation information from the server 2, it returns to step S31. If it determines in step S32 that it has received operation information from the server 2, in step S12 the processing circuit 40 causes the autonomous mobile unit 10 to perform an operation based on the received operation information.
[0066] In step S31, if the processing circuit 40 predicts that it will not receive operation information from the server 2 within a predetermined time, it starts a predetermined motion in step S5. Steps S6, S8, S11, and S12 are the same as the steps with the same reference numerals in Figure 4, so a detailed explanation is omitted.
[0067] Figure 7 is a flowchart of the processing in the third modified example. In the third modified example, the server 2 makes a prediction as to whether the waiting time after the autonomous mobile unit 10 transmits the acquired information to the server 2 will be prolonged. In Figure 7, steps that are the same as those in Figure 4 are denoted by the same reference numerals as in Figure 4.
[0068] As shown in Figure 7, steps S1, S2, S3, S5, S6, S8, S11, S12, S23, S24, and S25 are the same as the steps with the same reference numerals in Figures 4 and 5, so a detailed explanation is omitted. In step S41, the server 2 determines whether or not it predicts that the autonomous mobile body 10 will not transmit operation information within a predetermined time after receiving acquired information.
[0069] For example, Server 2 may predict, based on the amount of data of the received acquired information, that the calculation will take a long time and that it will not be able to transmit the operation information to the autonomous mobile device 10 within a predetermined time. In addition to or instead of this, Server 2 may acquire the communication speed of the communication network N and predict, based on that communication speed, that it will not be able to complete the transmission of the operation information to the autonomous mobile device 10 within a predetermined time. Alternatively, Server 2 may predict, based on past performance, that it will not be able to transmit the operation information to the autonomous mobile device 10 within a predetermined time.
[0070] If Server 2 does not predict in step S41 that it will not transmit operation information to the autonomous mobile device 10 within a predetermined time, in step S42 it determines whether the calculation for generating the operation information has been completed. If it is determined in step S42 that the calculation has not been completed, it returns to step S41. If it is determined in step S42 that the calculation has been completed, in step S8 Server 2 transmits operation information to the autonomous mobile device 10 based on the calculation result.
[0071] If Server 2 predicts in step S41 that the autonomous mobile unit 10 will not transmit operation information within a predetermined time, in step S23, it transmits a motion command to the autonomous mobile unit 10 to initiate a predetermined motion. Steps S25, S5, S6, S11, and S12 are the same as the steps with the same reference numerals in Figure 5, so a detailed explanation is omitted.
[0072] It should be noted that the technology disclosed herein is not limited to the embodiments and modifications described above. In the embodiments and modifications described above, the calculation that determines the operation of the autonomous mobile body 10 based on the acquired information acquired by the autonomous mobile body 10 was performed by the server 2, but it may also be performed by the autonomous mobile body 10.
[0073] As described above, the embodiments have been explained as examples of the technology disclosed in this application. However, the technology in this disclosure is not limited thereto and can be applied to embodiments that have been modified, replaced, added, or omitted as appropriate. Furthermore, it is possible to combine the components described in the embodiments to create new embodiments. For example, some components or methods in one embodiment may be applied to other embodiments, and some components in an embodiment can be separated from other components in that embodiment and extracted as appropriate. In addition, the components described in the attached drawings and detailed description include not only components that are essential for solving the problem, but also components that are not essential for solving the problem, in order to illustrate the technology.
[0074] The functions of the elements disclosed herein can be performed using circuits or processing circuits, including general-purpose processors, dedicated processors, integrated circuits, ASICs (Application Specific Integrated Circuits), FPGAs (Field Programmable Gate Arrays), conventional circuits, and / or combinations thereof, configured or programmed to perform the disclosed functions. A processor is considered a processing circuit or circuit because it includes transistors and other circuits. In this disclosure, a circuit, unit, or means is hardware that performs the enumerated functions, or hardware programmed to perform the enumerated functions. The hardware may be hardware disclosed herein, or other known hardware that is programmed or configured to perform the enumerated functions. If the hardware is a processor, which is considered a type of circuit, then the circuit, means, or unit is a combination of hardware and software, and the software is used to configure the hardware and / or the processor.
[0075] [Aspect] The embodiments described above are specific examples of the following embodiments.
[0076] (Aspect 1) A processing circuit for controlling an autonomous mobile device, If, within a predetermined time after transmitting the acquired information obtained by the autonomous mobile body, operation information relating to the operation of the autonomous mobile body calculated based on the acquired information is not received, Or, If it is predicted that the operation information will not be received within the predetermined time after the acquired information has been transmitted, A processing circuit that outputs a motion command to cause the autonomous mobile body to perform a predetermined motion that is recognizable to people in the vicinity of the autonomous mobile body.
[0077] According to the configuration of Embodiment 1, if it takes time to obtain the result of the calculation to determine the autonomous mobile body's movement, the autonomous mobile body performs a predetermined motion during that calculation. People around the autonomous mobile body recognize the motion performed by the autonomous mobile body and understand that the autonomous mobile body is not frozen but is performing calculations for the next movement. Therefore, when the calculation to determine the autonomous mobile body's movement is lengthy, the autonomous mobile body can appropriately transmit information to people around it.
[0078] (Aspect 2) The autonomous mobile unit is equipped with a sensor, The processing circuit according to embodiment 1, wherein the acquired information includes sensor data acquired by the sensors of the autonomous mobile body.
[0079] According to the configuration of Embodiment 2, it is possible to inform people around the autonomous mobile body that it takes time to calculate the operation of the autonomous mobile body based on the sensor data of the autonomous mobile body.
[0080] (Aspect 3) The processing circuit according to embodiment 2, wherein the sensor data includes at least one selected from the group consisting of audio data, image data, position data, temperature data, pressure data, and strain data.
[0081] According to the configuration of Embodiment 3, it is possible to inform people around the autonomous mobile unit that it will take time to perform calculations to determine the unit's actions based on data such as voice and images.
[0082] (Aspect 4) The processing circuit according to any one of embodiments 1 to 3, wherein the predetermined motion includes repetitive motion.
[0083] According to the configuration of Embodiment 4, since the autonomous mobile body repeats the same motion, it is possible to appropriately make people in the vicinity recognize that the autonomous mobile body is performing calculations.
[0084] (Appendix 5) The autonomous mobile body is equipped with a propulsion actuator for moving the autonomous mobile body, The processing circuit according to embodiment 2 or 3, wherein the repetitive motion includes reciprocating rotational motion or reciprocating linear motion of the autonomous mobile body by the propulsion actuator.
[0085] According to the configuration of Embodiment 5, even without requiring a large space for the autonomous mobile body's predetermined motion, it is possible to effectively make it known to people in the vicinity that the autonomous mobile body is performing calculations. Furthermore, during calculations to determine the autonomous mobile body's movement in a crowd, people around the autonomous mobile body are motivated to clear a path for its movement by recognizing the autonomous mobile body's reciprocating rotational motion or reciprocating linear motion. Thus, it is possible to prevent the autonomous mobile body from becoming locked up during calculations to determine its movement.
[0086] (Aspect 6) The autonomous mobile body comprises a member capable of performing a motion different from the movement of the autonomous mobile body, and a member actuator that drives the member. The processing circuit according to any one of embodiments 1 to 5, wherein the predetermined motion includes the movement of the member by the member actuator.
[0087] According to the configuration of embodiment 6, it is possible to make people in the vicinity aware that the calculation required to determine the autonomous mobile body's movements is prolonged due to movements other than locomotion.
[0088] (Aspect 7) The autonomous mobile body comprises an arm, a head, or a torso. The processing circuit according to embodiment 6, wherein the member includes the arm, the head, or the torso.
[0089] According to the configuration of Embodiment 7, the movement of the arm, head, or torso can make people in the vicinity aware that the calculations required to determine the autonomous mobile body's movements are taking longer.
[0090] (Pattern 8) The autonomous mobile unit is equipped with an alarm, The processing circuit, when outputting the motion command, outputs a notification command to the notification device to notify a predetermined image or predetermined sound, according to any one of embodiments 1 to 7.
[0091] This configuration allows for the notification of a lengthy calculation process required to determine the autonomous mobile unit's movements, which can then alert people in the vicinity.
[0092] (Aspect 9) The processing circuit is the processing circuit according to any one of embodiments 1 to 8, which predicts that the operation information will not be received within a predetermined time based on the amount of data of the acquired information.
[0093] According to the configuration of embodiment 9, it can be determined that the time required to obtain the calculation result will be longer when there is a large amount of input data used in the calculation.
[0094] (Aspect 10) Obtain the communication speed of the communication network, A processing circuit according to any one of embodiments 1 to 9, which predicts, based on the communication speed, that it will not receive the information relating to the operation of the autonomous mobile body within the predetermined time.
[0095] According to the configuration of embodiment 10, when the communication speed of the communication network used to transmit acquired information from the autonomous mobile body is slow, it can be determined that the time required to acquire the calculation result will be longer.
[0096] (Aspect 11) A method for controlling an autonomous mobile object, If, after transmitting the acquired information obtained by the autonomous mobile device, operation information regarding the operation of the mobile device is not received from the destination to which the acquired information was transmitted within a predetermined time, Or, If it is predicted that the operation information will not be received within the predetermined time after the acquisition information has been transmitted, A control method for outputting a motion command to cause the autonomous mobile body to perform a predetermined motion that is recognizable to people in the vicinity of the autonomous mobile body.
[0097] (Aspect 12) A control program that causes a processor to execute the control method described in embodiment 11.
[0098] (Aspect 13) A processing circuit according to Embodiment 1, comprising a first processing circuit mounted on the autonomous mobile body, A processing system for an autonomous mobile body, comprising: a second processing circuit that communicates with the first processing circuit via a communication network and transmits the operation information to the first processing circuit.
[0099] (Aspect 14) The autonomous mobile unit is equipped with a sensor, The first processing circuit transmits the sensor data acquired by the sensor to the second processing circuit. The processing system for an autonomous mobile body according to embodiment 13, wherein the second processing circuit generates the operation information based on the sensor data received from the first processing circuit.
[0100] (Aspect 15) A processing circuit for controlling an autonomous mobile device via a communication network, If, within a predetermined time after receiving the information acquired by the autonomous mobile device, operation information relating to the operation of the autonomous mobile device calculated based on the acquired information is not transmitted, Or, If it is predicted that the operation information will not be transmitted within the predetermined time after receiving the acquired information, A processing circuit that outputs a command to cause the autonomous mobile body to perform a predetermined motion that allows people in the vicinity of the autonomous mobile body to recognize the autonomous mobile body. [Explanation of Symbols]
[0101] 1. Processing System 2 servers 10 Autonomous Mobile Units 11 wheels 14 Torso 16 Arms 18 head 22 Propulsion motor 23 component motor 25 Touch panel display 26 speakers 40 Processing Circuits 41 processors 50 Processing Circuits 51 processors P1, P2 control program
Claims
1. A processing circuit for controlling an autonomous mobile device, If, within a predetermined time after transmitting the acquired information obtained by the autonomous mobile body, operation information relating to the operation of the autonomous mobile body calculated based on the acquired information is not received, Or, If it is predicted that the operation information will not be received within the predetermined time after the acquired information has been transmitted, A processing circuit that outputs a motion command to cause the autonomous mobile body to perform a predetermined motion that is recognizable to people in the vicinity of the autonomous mobile body.
2. The autonomous mobile unit is equipped with a sensor, The processing circuit according to claim 1, wherein the acquired information includes sensor data acquired by the sensors of the autonomous mobile body.
3. The processing circuit according to claim 2, wherein the sensor data includes at least one selected from the group consisting of audio data, image data, position data, temperature data, pressure data, and strain data.
4. The processing circuit according to claim 1, wherein the predetermined motion includes repetitive motion.
5. The autonomous mobile body is equipped with a propulsion actuator for moving the autonomous mobile body, The processing circuit according to claim 4, wherein the repetitive motion includes reciprocating rotational motion or reciprocating linear motion of the autonomous mobile body by the propulsion actuator.
6. The autonomous mobile body comprises a member capable of performing a motion different from the movement of the autonomous mobile body, and a member actuator that drives the member. The processing circuit according to claim 1, wherein the predetermined motion includes the movement of the member by the member actuator.
7. The autonomous mobile body comprises an arm, a head, or a torso. The processing circuit according to claim 6, wherein the member includes the arm, the head, or the torso.
8. The autonomous mobile unit is equipped with an alarm, The processing circuit according to claim 1, wherein when the processing circuit outputs the motion command, it outputs a notification command to the notification device to notify a predetermined image or predetermined sound.
9. The processing circuit according to claim 1, wherein the processing circuit predicts that the operation information will not be received within the predetermined time based on the amount of data of the acquired information.
10. Obtain the communication speed of the communication network, The processing circuit according to claim 1, which predicts, based on the communication speed, that it will not receive the information relating to the operation of the autonomous mobile body within the predetermined time.
11. A method for controlling an autonomous mobile object, If, after transmitting the acquired information obtained by the autonomous mobile device, operation information regarding the operation of the mobile device is not received from the destination to which the acquired information was transmitted within a predetermined time, Or, If it is predicted that the operation information will not be received within the predetermined time after the acquisition information has been transmitted, A control method for outputting a motion command to cause the autonomous mobile body to perform a predetermined motion that is recognizable to people in the vicinity of the autonomous mobile body.
12. A control program that causes a processor to execute the control method described in claim 11.
13. A processing circuit according to claim 1, comprising a first processing circuit mounted on the autonomous mobile body, A processing system for an autonomous mobile body, comprising: a second processing circuit that communicates with the first processing circuit via a communication network and transmits the operation information to the first processing circuit.
14. The autonomous mobile unit is equipped with a sensor, The first processing circuit transmits the sensor data acquired by the sensor to the second processing circuit. The processing system for an autonomous mobile body according to claim 13, wherein the second processing circuit generates the operation information based on the sensor data received from the first processing circuit.
15. A processing circuit for controlling an autonomous mobile device via a communication network, If, within a predetermined time after receiving the information acquired by the autonomous mobile device, operation information relating to the operation of the autonomous mobile device calculated based on the acquired information is not transmitted, Or, If it is predicted that the operation information will not be transmitted within the predetermined time after receiving the acquired information, A processing circuit that outputs a command to cause the autonomous mobile body to perform a predetermined motion that allows people in the vicinity of the autonomous mobile body to recognize the autonomous mobile body.