Robot, robot control method, and program

The robot's control method and program enhance lifelikeness by adjusting drowsiness levels and simulating sleep-wake states and behaviors in response to events and conditions, improving its mimicry of living creatures.

JP2026023900AActive Publication Date: 2026-02-13CASIO COMPUTER CO LTD
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
JP2024126219
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-01
Publication Date
2026-02-13
Estimated Expiration
2044-08-01

AI Technical Summary

Technical Problem

Existing robots lack the ability to express a sleeping state with sufficient lifelikeness, failing to mimic the behaviors and transitions of a living creature effectively.

Method used

A robot equipped with a parameter update mechanism to adjust the degree of pseudo-drowsiness based on external events and environmental conditions, transitioning between sleeping and awake states using a drowsiness value, and incorporating sensors and motors to simulate lifelike movements and responses.

Benefits of technology

Enhances the robot's lifelikeness by accurately simulating sleep-wake transitions and behaviors, mimicking the natural responses of living creatures to environmental changes and interactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026023900000001_ABST
    Figure 2026023900000001_ABST
Patent Text Reader

Abstract

To provide a robot of an apparatus, a control method of the robot, and a program capable of enhancing liveliness.SOLUTION: In the robot 200, when a predetermined type of event occurs, the parameter updater 111 updates the value of the parameter indicating the simulated degree of sleepiness of the robot 200 to a value corresponding to the type of the event that has occurred. The state control unit 112 switches the state of the robot 200 between the sleep state and the normal state based on the value of the parameter updated by the parameter updating unit 111.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a robot, a robot control method, and a program. [Background technology]

[0002] Robots that mimic living creatures are known. For example, Patent Document 1 discloses a robot that goes into a sleep mode when it is handled in a specific way. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2003-71763 Summary of the Invention [Problem to be solved by the invention]

[0004] There is a demand for robots that can express the sleeping state of living creatures as described above to have even more lifelike qualities.

[0005] The present invention has been made to solve the above-mentioned problems, and aims to provide a robot, a robot control method, and a program that can enhance the lifelikeness of a robot. [Means for solving the problem]

[0006] In order to achieve the above-mentioned object, one aspect of the robot according to the present invention is a robot capable of expressing a pseudo-sleeping state different from a normal state, characterized in that it comprises: a parameter update means for updating, when a predetermined type of event occurs, the value of a parameter indicating the degree of pseudo-drowsiness of the robot with a value corresponding to the type of event that has occurred; and a state control means for switching the state of the robot between the sleeping state and the normal state based on the value of the parameter updated by the parameter update means. [Effects of the Invention]

[0007] According to the present invention, it is possible to provide a robot that is a device that can be made to look more like a living thing, and a method and program for controlling the robot. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a diagram showing the appearance of a robot according to a first embodiment. [Figure 2] 1 is a cross-sectional side view of a robot according to a first embodiment. [Figure 3] 1 is a block diagram showing the functional configuration of a robot according to a first embodiment. FIG. [Figure 4] FIG. 3 is a diagram showing an example of a drowsiness value table according to the first embodiment. [Figure 5] FIG. 3 is a diagram showing an example of a light-dark table according to the first embodiment. [Figure 6] FIG. 4 is a diagram illustrating an example of an event table according to the first embodiment. [Figure 7] FIG. 4 is a diagram showing an example of a spontaneous action table according to the first embodiment. [Figure 8] 1 is a first flowchart showing the flow of a robot control process according to the embodiment. [Figure 9] 10 is a second flowchart showing the flow of the robot control process according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that identical or corresponding parts in the drawings are denoted by the same reference numerals. A robot 200 according to embodiment 1 is a device that simulates a living creature and is capable of simulating various states of a living creature. In particular, the robot 200 according to embodiment 1 is a pet-type robot that can simulate a sleeping state. As an example, as shown in FIG. 1 , the robot 200 according to embodiment 1 is a pet robot that simulates a small animal. The robot 200 includes an exterior 201 having decorative parts 202 that resemble eyes and fluffy fur 203. As shown in FIG. 2 , the robot 200 includes a housing 207. The housing 207 is covered by the housing 201 and stored inside the housing 201. The housing 207 includes a head 204, a connecting portion 205, and a body 206. The connecting portion 205 connects the head 204 and the body 206.

[0010] The exterior 201 is an example of an exterior member, and has a bag-like shape that is long in the front-to-rear direction and can accommodate the housing 207 inside. The exterior 201 is formed in a cylindrical shape from the head 204 to the body 206, and integrally covers the body 206 and the head 204. With the exterior 201 having such a shape, the robot 200 is formed in a prone position. The outer surface of the exterior 201 is made of an artificial pile fabric that resembles the fur 203 of a small animal, in order to simulate the feel of the skin of a small animal. The lining of the exterior 201 is made of a flexible material such as leather, resin, or rubber. Because it is made of a flexible material, the exterior 201 follows the movement of the housing 207. Specifically, the exterior 201 follows the rotation of the head 204 relative to the body 206.

[0011] The body 206 extends in the front-to-rear direction, and comes into contact with a support surface such as a floor or a table on which the robot 200 is placed, via the exterior 201. The body 206 is provided with a twist motor 221 at its front end. The head 204 is connected to the front end of the body 206 via a connecting unit 205. The connecting unit 205 is provided with a vertical motor 222. Note that although the twist motor 221 is provided in the body 206 in FIG. 2, it may be provided in the connecting unit 205. The twist motor 221 and the vertical motor 222 connect the head 204 to the body 206 so as to be rotatable about axes in the left-right direction (X-axis direction) and the front-to-back direction (Y-axis direction) of the robot 200.

[0012] The connecting portion 205 connects the body portion 206 and the head portion 204 to be rotatable about a first rotation axis that passes through the connecting portion 205 and extends in the front-to-rear direction (Y-axis direction) of the body portion 206. The twist motor 221 is a servo motor for rotating the head portion 204 clockwise (right-hand rotation) and counterclockwise (left-hand rotation) relative to the body portion 206 about the first rotation axis. The connecting portion 205 also connects the body portion 206 and the head portion 204 to be rotatable about a second rotation axis that passes through the connecting portion 205 and extends in the left-to-right direction (X-axis direction) of the body portion 206. The up-down motor 222 is a servo motor for rotating the head portion 204 upward (forward rotation) and downward (reverse rotation) about the second rotation axis.

[0013] The robot 200 is equipped with touch sensors 211 on the head 204 and the body 206. The robot 200 is also equipped with an acceleration sensor 212, a microphone 213, a gyro sensor 214, an illuminance sensor 215, a speaker 231, and a battery 250 on the body 206. Note that at least some of the acceleration sensor 212, the microphone 213, the gyro sensor 214, the illuminance sensor 215, and the speaker 231 may be provided not only in the body 206 but also in the head 204, or may be provided in both the body 206 and the head 204.

[0014] Next, the functional configuration of the robot 200 will be described with reference to Fig. 3. As shown in Fig. 3, the robot 200 includes a control device 100, a sensor unit 210, a drive unit 220, an output unit 230, and an operation unit 240. These units are connected via a bus line BL, for example. Note that instead of the bus line BL, a wired interface such as a USB (Universal Serial Bus) cable or a wireless interface such as Bluetooth (registered trademark) may be used.

[0015] The control device 100 includes a control unit 110, which is an example of a control means, and a memory unit 120, which is an example of a memory means. The control device 100 controls the operation of the robot 200 using the control unit 110 and the memory unit 120. The control unit 110 includes a CPU (Central Processing Unit). The CPU is, for example, a microprocessor, and is a central processing unit that executes various processes and calculations. In the control unit 110, the CPU reads out a control program stored in ROM and controls the operation of the entire device (robot 200) while using RAM as a work memory. Furthermore, although not shown, the control unit 110 includes a clock function, a timer function, etc., and can measure the date and time, etc. The control unit 110 may also be called a "processor."

[0016] The storage unit 120 includes a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc. The storage unit 120 stores programs and data used by the control unit 110 to perform various processes, including an OS (Operating System) and application programs. The storage unit 120 also stores data generated or acquired by the control unit 110 performing various processes. Specifically, the storage unit 120 stores a drowsiness value table 121, a light / dark table 122, an event table 123, and a spontaneous action table 124. These will be described in detail later.

[0017] The sensor unit 210 includes the touch sensor 211, acceleration sensor 212, microphone 213, gyro sensor 214, and illuminance sensor 215 described above. The control unit 110 acquires, via the bus line BL, detection values ​​detected by the various sensors included in the sensor unit 210. Note that the sensor unit 210 may also include sensors other than these. Increasing the types of sensors included in the sensor unit 210 can increase the types of external stimuli that the control unit 110 can acquire.

[0018] The touch sensor 211 includes, for example, a pressure sensor or a capacitance sensor, and detects whether or not there is contact with some object, and the strength of the contact. Based on the detection value of the touch sensor 211, the control unit 110 can detect that the user has stroked or hit the head 204 or the body 206.

[0019] The acceleration sensor 212 detects acceleration applied to the body 206 of the robot 200. The gyro sensor 214 detects angular velocity applied to the body 206 of the robot 200. The control unit 110 can detect the current posture and changes in posture of the robot 200 using the acceleration sensor 212 and the gyro sensor 214. Furthermore, the control unit 110 can detect using the acceleration sensor 212 and the gyro sensor 214 that the user has lifted the robot 200, changed the direction of the robot 200, or thrown the robot 200.

[0020] The microphone 213 detects sounds around the robot 200. The control unit 110 can detect, for example, a user calling out to the robot 200 or clapping of hands, based on the sound components detected by the microphone 213. The touch sensor 211, acceleration sensor 212, microphone 213, and gyro sensor 214 of the sensor unit 210 are an example of an external stimulus detection means that detects an external stimulus.

[0021] The illuminance sensor 215 detects the illuminance around the robot 200. The illuminance sensor 215 detects the illuminance around the robot 200 by receiving light with a light-receiving element and converting the received light into an electrical signal with a photodiode, phototransistor, or the like. The control unit 110 can detect whether the area around the robot 200 has become brighter or darker based on the illuminance detected by the illuminance sensor 215. The illuminance sensor 215 is an example of an illuminance detection means that detects the illuminance around the robot 200.

[0022] The drive unit 220 includes the twist motor 221 and the up-down motor 222 described above, and is driven by the control unit 110. The robot 200 can express the action of twisting the head 204 sideways by the twist motor 221, and the action of raising and lowering the head 204 by the up-down motor 222. The output unit 230 includes a speaker 231, and when the control unit 110 inputs sound data to the output unit 230, sound is output from the speaker 231. For example, when the control unit 110 inputs data of the cry of the robot 200 to the output unit 230, the robot 200 emits a pseudo cry. Note that the output unit 230 may include a display, an LED (Light Emitting Diode), etc. instead of or in addition to the speaker 231. The operation unit 240 includes operation buttons, a volume knob, etc. The operation unit 240 is an interface for receiving user operations such as turning on / off the power supply, adjusting the volume of the output sound, etc. The battery 250 stores the power used by the robot 200. When the robot 200 returns to the charging station, the battery 250 is charged by the charging station.

[0023] Next, the functional configuration of control unit 110 will be described. As shown in Fig. 3, control unit 110 functionally includes parameter update unit 111, which is an example of parameter update means, state control unit 112, which is an example of state control means, light / dark determination unit 113, which is an example of light / dark determination means, event determination unit 114, which is an example of event determination means, and operation control unit 115, which is an example of operation control means. In control unit 110, the CPU functions as each of these units by reading a program stored in ROM into RAM and executing and controlling the program.

[0024] The parameter update unit 111 sets and updates the drowsiness value. Here, the drowsiness value is a parameter indicating the simulated degree of drowsiness of the robot 200. The drowsiness value increases as the degree of drowsiness increases. When the drowsiness value increases, the robot 200 behaves in a manner simulating a state in which a living creature feels sleepy. On the other hand, when the drowsiness value decreases, the robot 200 behaves in a manner simulating a state in which a living creature does not feel sleepy. As defined in a drowsiness value table 121 shown in FIG. 4 as an example, the drowsiness value ranges from a minimum value of 3 to a maximum value of 150. The drowsiness value changes in various ways depending on external stimuli applied to the robot 200, the illuminance around the robot 200, and the like, as will be described in detail later.

[0025] Returning to FIG. 3 , the state control unit 112 transitions the state of the robot 200 to a pseudo-sleeping state based on the drowsiness value updated by the parameter update unit 111. Here, the state of the robot 200 corresponds to the operation mode of the robot 200. According to the drowsiness value updated by the parameter update unit 111, the state of the robot 200 is switched between a pseudo-sleeping state (hereinafter simply referred to as a "sleeping state") and a pseudo-awake state (hereinafter simply referred to as a "wake-up state"). The sleeping state is a state in which the robot 200 simulates sleeping, and is a mode (sleeping mode) that expresses pseudo-sleeping of the robot 200. In contrast, the wake-up state is a state other than the sleeping state, and is a mode (wake-up mode) that simulates the robot 200 being awake, i.e., awake. The wake-up state is a state in which the robot 200 can perform normal operations, and therefore may also be called a "normal state," an "awake state," or the like.

[0026] The state control unit 112 transitions the state of the robot 200 from the awake state to the sleeping state and from the sleeping state to the awake state in accordance with the drowsiness value updated by the parameter update unit 111. Specifically, the state control unit 112 transitions the state of the robot 200 from the awake state to the sleeping state when the drowsiness value changes from a value outside the first range to a value within the first range. Furthermore, the state control unit 112 transitions the state of the robot 200 from the sleeping state to the awake state when the drowsiness value changes from a value within the second range to a value outside the second range.

[0027] Here, the first range is a range that is referred to when transitioning from an awake state to a sleeping state. Specifically, the first range is a range of 95 or more and 150 or less, as defined in the drowsiness value table 121 shown in FIG. 4. In other words, when the drowsiness value changes from a value less than 95 to a value equal to or greater than 95, the state control unit 112 transitions the state of the robot 200 from the awake state to the sleeping state. In contrast, the second range is a range that is referred to when transitioning from the sleeping state to the awake state. Specifically, the second range is a range of 90 or more and 150 or less, as defined in the drowsiness value table 121 shown in FIG. 4. In other words, when the drowsiness value changes from a value equal to or greater than 90 to a value less than 90, the state control unit 112 transitions the state of the robot 200 from the sleeping state to the awake state.

[0028] The second range is a range of 90 or above, and therefore includes the first range, which is a range of 95 or above. The reason why the second range includes the first range in this way is to prevent frequent switching between the sleeping state and the awake state. In other words, hysteresis is provided in the conditions for switching between the sleeping state and the awake state.

[0029] Returning to FIG. 3 , the light / dark determination unit 113 determines the light / darkness of the surroundings of the robot 200 based on the illuminance detected by the illuminance sensor 215. Specifically, when the illuminance of the surroundings satisfies a first illuminance condition, the light / dark determination unit 113 determines that the illuminance of the surroundings has become bright. Thereafter, the light / dark determination unit 113 determines that the illuminance of the surroundings is bright until the illuminance of the surroundings satisfies a second illuminance condition. Furthermore, when the illuminance of the surroundings satisfies the second illuminance condition, the light / dark determination unit 113 determines that the illuminance of the surroundings has become dark. Thereafter, the light / dark determination unit 113 determines that the illuminance of the surroundings is dark until the illuminance of the surroundings satisfies the first illuminance condition.

[0030] The first illuminance condition is a condition for determining whether the illuminance around the robot 200 has changed from a dark state to a bright state. The first illuminance condition is satisfied when the illuminance around the robot 200 exceeds a first illuminance threshold, as defined in the light-dark table 122 shown in FIG. 5 . In contrast, the second illuminance condition is a condition for determining whether the illuminance around the robot 200 has changed from a bright state to a dark state. The second illuminance condition is satisfied when the illuminance around the robot 200 falls below a second illuminance threshold and this state continues for a predetermined time, as defined in the light-dark table 122. Here, the first illuminance threshold is, for example, 4.10 lux, the second illuminance threshold is, for example, 1.25 lux, and the predetermined time is, for example, 30 seconds.

[0031] The parameter update unit 111 updates the drowsiness value based on the light / dark determination result by the light / dark determination unit 113. Specifically, when the ambient illuminance changes from a dark state to a bright state, the parameter update unit 111 updates the drowsiness value to a value outside the second range, that is, a value at which the state control unit 112 transitions the state of the robot 200 to an awake state. As an example, when the ambient illuminance changes from a dark state to a bright state, the parameter update unit 111 updates the drowsiness value to 3, which is the minimum value.

[0032] When the ambient illuminance changes from a dark state to a bright state, this corresponds to the case where the ambient illuminance first satisfies the first illuminance condition after satisfying the second illuminance condition. This corresponds to, for example, dawn breaking or turning on the lights in the room. When the drowsiness value is updated to the minimum value, if the current state of the robot 200 is a sleeping state, the state control unit 112 transitions the state of the robot 200 to an awake state. In this way, the state control unit 112 simulates the robot 200 waking up from sleep.

[0033] On the other hand, when the ambient illuminance changes from a bright state to a dark state, the parameter update unit 111 updates the drowsiness value to a value within the first range, that is, a value at which the state control unit 112 transitions the state of the robot 200 to a sleeping state. As an example, when the ambient illuminance changes from a bright state to a dark state, the parameter update unit 111 updates the drowsiness value to 150, which is the maximum value.

[0034] When the ambient illuminance changes from a bright state to a dark state, this corresponds to the case where the ambient illuminance first satisfies the second illuminance condition after satisfying the first illuminance condition. This corresponds to, for example, when the sun sets or when the room lights are turned off. When the drowsiness value is updated to the maximum value, if the current state of the robot 200 is an awake state, the state control unit 112 transitions the state of the robot 200 to a sleeping state. In this way, the state control unit 112 simulates the robot 200 falling asleep.

[0035] As described above, the first illuminance condition is met immediately when the ambient illuminance exceeds a first illuminance threshold (e.g., 4.10 lux), whereas the second illuminance condition is not met immediately when the ambient illuminance falls below a second illuminance threshold (e.g., 1.25 lux), but is met only after the ambient illuminance remains below the second illuminance threshold for a predetermined period of time (e.g., 30 seconds). Therefore, the robot 200 immediately transitions from a sleeping state to an awake state when the ambient light becomes bright, whereas it takes a certain amount of time for the robot 200 to transition from an awake state to a sleeping state when the ambient light becomes dark. This allows the robot 200 to accurately simulate the behavior of an actual living thing.

[0036] 3, the event determination unit 114 determines whether or not an event has occurred based on an external stimulus detected by the sensor unit 210. Here, the external stimulus is a stimulus acting on the robot 200 from outside the robot 200. Specifically, the external stimulus is a touch detected by the touch sensor 211, an acceleration detected by the acceleration sensor 212, a sound detected by the microphone 213, an angular velocity detected by the gyro sensor 214, or a combination thereof.

[0037] The event determination unit 114 determines whether any of a plurality of types of events defined in the event table 123 has occurred, based on the detection values ​​of the touch sensor 211, the acceleration sensor 212, the microphone 213, and the gyro sensor 214 in the sensor unit 210. The event table 123 is a table that defines a plurality of types of events that may occur in the robot 200 and the conditions under which each type of event occurs. As an example, as shown in Fig. 6, the event table 123 defines a plurality of types of events such as "a loud noise was made," "someone spoke to," "someone stroked," "someone hit," and "someone turned upside down."

[0038] The event determination unit 114 refers to the event table 123 and determines whether the detection value of the external stimulus by the sensor unit 210 satisfies the occurrence condition of any type of event. For example, when the microphone 213 detects a sound having a peak value equal to or greater than a first threshold TH1, the event determination unit 114 determines that the event "a loud noise was heard" has occurred. When the microphone 213 detects a sound having a peak value less than the first threshold TH1 and equal to or greater than a second threshold TH2, the event determination unit 114 determines that the event "someone spoke to me" has occurred. When the touch sensor 211 of the head 204 or the torso 206 detects a contact of less than a predetermined strength, the event determination unit 114 determines that the event "someone stroked me" has occurred. When the touch sensor 211 of the head 204 or the torso 206 detects a contact of greater than or equal to a predetermined strength, the event determination unit 114 determines that the event "someone hit me" has occurred. Note that the occurrence condition is not limited to the detection value of a single sensor, and may be determined by combining detection values ​​of multiple sensors in the sensor unit 210. For example, "being stroked on the head in a horizontal position" is determined by the detection values ​​of the touch sensor 211, the acceleration sensor 212, and the gyro sensor 214 of the head 204. In this way, the event determination unit 114 determines whether or not the occurrence condition of any type of event defined in the event table 123 is met based on the external stimulus detected by the sensor unit 210, and if the occurrence condition of any type of event is met, determines that the event of that type has occurred.

[0039] Returning to FIG. 3 , the movement control unit 115 controls the movement of the robot 200. Here, the movement of the robot 200 is realized by one or both of the motion by the drive unit 220 and the output by the output unit 230. Specifically, the motion by the drive unit 220 corresponds to rotating the head 204 by driving the twist motor 221 or the up / down motor 222. Furthermore, the output by the output unit 230 corresponds to outputting a cry from the speaker 231 or illuminating an LED. The movement of the robot 200 may also be called the gesture, behavior, etc. of the robot 200.

[0040] When the sensor unit 210 detects an external stimulus, the movement control unit 115 causes the robot 200 to move in response to the detected external stimulus. More specifically, when the event determination unit 114 determines that any type of event has occurred while the current state of the robot 200 corresponds to the awake state, the movement control unit 115 causes the robot 200 to perform a corresponding movement corresponding to the type of event that has occurred. For example, when "a loud noise is heard," the movement control unit 115 causes the robot 200 to perform a surprised movement. When "someone speaks to" the robot 200, the movement control unit 115 causes the robot 200 to perform a movement in response to the speech. When "the robot is turned upside down," the movement control unit 115 causes the robot 200 to perform a movement indicating an unpleasant reaction. When "the robot is petted," the movement control unit 115 causes the robot 200 to perform a happy movement. When "the robot is hit," the movement control unit 115 causes the robot 200 to perform a sad movement.

[0041] Although not shown, the correspondence between events and corresponding actions is stored in advance as an action table in the storage unit 120. The action table defines, for each type of event, the amount and direction of rotation by the twist motor 221, the amount and direction of rotation by the up-down motor 222, and the type and volume of the cry to be output from the speaker 231 as corresponding actions. The action control unit 115 refers to the action table and causes the robot 200 to perform a corresponding action corresponding to the type of event that has occurred.

[0042] On the other hand, when the current state of the robot 200 corresponds to the sleeping state, the action control unit 115 does not cause the robot 200 to perform the above-mentioned corresponding action even if the event determination unit 114 determines that any type of event has occurred. Specifically, since the sleeping state simulates the state of a living creature sleeping, the action control unit 115 does not cause the robot 200 to perform any action in response to an external stimulus, or does not cause the robot 200 to perform any action as active as in the awake state. For example, when the event determination unit 114 determines that any event has occurred, the action control unit 115 may cause the robot 200 to perform actions such as rolling over or talking in its sleep.

[0043] The parameter update unit 111 updates the drowsiness value based on the external stimulus detected by the sensor unit 210. As shown in FIG. 6, the event table 123 defines a correspondence relationship between the type of event and the amount of change in the drowsiness value. The parameter update unit 111 refers to the event table 123 and reads out the amount of change in the drowsiness value corresponding to the type of event determined to have occurred by the event determination unit 114. Then, the parameter update unit 111 changes the drowsiness value by the read amount of change. For example, when an event such as "a loud noise was heard" or "someone spoke to me" occurs, the parameter update unit 111 decreases the drowsiness value by 3. Furthermore, when an event such as "being stroked," "being hit," or "being turned over" occurs, the parameter update unit 111 decreases the drowsiness value by 20.

[0044] When the event determination unit 114 determines that any type of event has occurred, the parameter update unit 111 updates the drowsiness value according to the type of the event that has occurred, regardless of whether the current state of the robot 200 corresponds to the awake state or the sleeping state. Therefore, when the robot 200 is in the awake state, the more events occur, the more awake the robot 200 becomes. In other words, the drowsiness level of the robot 200 decreases. Also, when the robot 200 is in the sleeping state, the more events occur, the lighter the sleep of the robot 200 becomes. In this way, when an event based on an external stimulus detected by the sensor unit 210 occurs, the action control unit 115 causes the robot 200 to perform an action corresponding to the type of the event that has occurred, and the parameter update unit 111 updates the drowsiness value according to the type of the event that has occurred.

[0045] On the other hand, if the event determination unit 114 has not determined that any type of event has occurred, that is, if a state in which no type of event has occurred continues, the movement control unit 115 causes the robot 200 to perform a spontaneous movement (spontaneous movement). Here, the spontaneous movement means a movement that the robot 200 performs spontaneously (actively) without depending on external stimuli and events, such as a breathing movement that simulates breathing. The movement control unit 115 causes the robot 200 to perform, as the spontaneous movement, a breathing movement that simulates breathing and a non-respiratory movement that simulates a movement other than breathing. The non-respiratory movement is, for example, a movement such as moving the body randomly or making a spontaneous cry.

[0046] When causing the robot 200 to perform a breathing movement, the movement control unit 115 expresses the movement of a living creature breathing by slightly moving the twist motor 221 or the up / down motor 222 or by outputting breathing sounds from the speaker 231. When causing the robot 200 to perform a non-breathing movement, the movement control unit 115 randomly moves the twist motor 221 or the up / down motor 222 or by outputting random cries from the speaker 231.

[0047] More specifically, when no event has occurred, the movement control unit 115 causes the robot 200 to perform a breathing action or a non-breathing action at predetermined time intervals. Details of the conditions for performing breathing actions and non-breathing actions are defined in the spontaneous action table 124 shown in FIG. 7. Specifically, when two seconds have passed without an event based on an external stimulus occurring, the movement control unit 115 causes the robot 200 to perform a breathing action. When two seconds have passed after the breathing action without an event occurring, the movement control unit 115 causes the robot 200 to perform a breathing action again. Assuming that the time required for a breathing action is two seconds, the movement control unit 115 causes the robot 200 to repeatedly perform a breathing action at four-second time intervals, i.e., once every four seconds, while no event has occurred.

[0048] Furthermore, as defined in the spontaneous action table 124, the action control unit 115 causes the robot 200 to perform a non-breathing action as a replacement for a breathing action, at a frequency of once every "sleepiness value + 20" times. As described above, the timing at which the action control unit 115 causes the robot 200 to perform a breathing action occurs at a time interval of once every four seconds while no event is occurring. At such a timing at which the action control unit 115 causes the robot 200 to perform a breathing action, the action control unit 115 causes the robot 200 to perform a non-breathing action by replacing the breathing action with a non-breathing action at a frequency according to the drowsiness value set by the parameter update unit 111. For example, if the current drowsiness value is 50, at the timing at which the action control unit 115 causes the robot 200 to perform a breathing action, the action control unit 115 causes the robot 200 to perform a breathing action 69 times out of 70 times, but causes the robot 200 to perform a non-breathing action once out of 70 times.

[0049] By changing the frequency of non-breathing movements according to the drowsiness value in this way, the frequency of small-volume breathing movements increases as the drowsiness value increases, and the frequency of large-volume non-breathing movements increases as the drowsiness value decreases. This makes it possible to express the liveliness of a living creature according to its level of drowsiness, further enhancing its lifelikeness.

[0050] When the event determination unit 114 has not determined that any type of event has occurred, that is, when a state in which no type of event has occurred continues, the movement control unit 115 causes the robot 200 to perform a spontaneous movement as described above, while the parameter update unit 111 updates the drowsiness value so that the degree of simulated drowsiness of the robot 200 increases as the duration of such a state increases. In other words, the parameter update unit 111 gradually increases the drowsiness value over time while no event based on an external stimulus has occurred. In this way, the parameter update unit 111 simulates in the robot 200 the gradual drowsiness that an actual living thing would experience if left alone without receiving any external stimulus.

[0051] More specifically, the parameter update unit 111 changes the frequency and degree of increasing the drowsiness value based on the illuminance around the robot 200 detected by the illuminance sensor 215. Specifically, the parameter update unit 111 increases the drowsiness value more significantly over time when the illuminance detected by the illuminance sensor 215 is low than when the illuminance is high.

[0052] The parameter update unit 111 updates the drowsiness value according to the ambient illuminance, for example, according to the content defined in the light / dark table 122 shown in FIG. 5 . Specifically, when the ambient illuminance is bright and no event has occurred for three minutes or more, the parameter update unit 111 determines that the device has been left in a bright state and increases the drowsiness value by 3. In other words, when the light / dark determination unit 113 determines that the ambient illuminance is bright and no event has occurred, the parameter update unit 111 increases the drowsiness value by 3 every three minutes. On the other hand, when the ambient illuminance is dark and no event has occurred for one minute or more, the parameter update unit 111 determines that the device has been left in a dark state and increases the drowsiness value by 20. In other words, when the light / dark determination unit 113 determines that the ambient illuminance is dark and no event has occurred, the parameter update unit 111 increases the drowsiness value by 20 every minute.

[0053] As described above, when the robot 200 is left in a dark environment, the rate at which the drowsiness value increases is greater than when the robot 200 is left in a bright environment. As a result, when the robot 200 is left in a dark environment, the robot 200 falls asleep faster and is more likely to fall into a deeper sleep. Therefore, for example, when a user sleeps next to the robot 200, even if the robot 200 wakes up due to stimulation from the user, the robot 200 quickly falls asleep again. In contrast, when the robot 200 is left in a bright environment, the robot 200 does not fall asleep easily, and even if it does fall asleep, the state of light sleep continues for a long time. Therefore, even if the robot 200 is asleep, it wakes up immediately when the user strokes the robot 200. In this way, by changing the degree of change in the drowsiness value when the robot 200 is left alone depending on the brightness of the surroundings, it is possible to further enhance the lifelikeness of the robot 200.

[0054] Next, the flow of the robot control process according to this embodiment will be described with reference to Figures 8 and 9. The robot control process shown in Figures 8 and 9 is executed by the control unit 110 of the control device 100 when power is turned on to the robot 200. The robot control process shown in Figures 8 and 9 is an example of a robot control method.

[0055] 8, when the robot control process starts, the control unit 110 executes an initialization process (step S1). In the initialization process, the control unit 110 sets various parameters used to control the robot 200, including the drowsiness value, to initial values. The initial value of the drowsiness value is set in advance to an appropriate value in the range of 3 to 150.

[0056] When the initialization process is performed, the control unit 110 functions as the light / dark determination unit 113 and acquires the illuminance detected by the illuminance sensor 215 (step S2). After acquiring the ambient illuminance, the control unit 110 determines whether the ambient illuminance has changed from a dark state to a bright state (step S3). If the ambient illuminance has changed from a dark state to a bright state (step S3; YES), the control unit 110 functions as the parameter update unit 111 and updates the drowsiness value to the minimum value of 3 (step S4). On the other hand, if the ambient illuminance has not changed from a dark state to a bright state (step S3; NO), the control unit 110 next determines whether the ambient illuminance has changed from a dark state to a bright state (step S5). If the ambient illuminance has changed from a bright state to a dark state (step S5; YES), the control unit 110 determines whether 30 seconds have passed since the ambient illuminance changed (step S6). If it remains dark for 30 seconds (step S6; YES), the control unit 110 functions as the parameter update unit 111 and updates the drowsiness value to 150, which is the maximum value (step S7).

[0057] If the ambient illuminance does not change from a dark state to a bright state or from a bright state to a dark state (step S5; NO), the control unit 110 does not update the drowsiness value. Also, even if the ambient illuminance changes from a bright state to a dark state, if the dark state does not continue for the predetermined time of 30 seconds (step S6; NO), the control unit 110 does not update the drowsiness value.

[0058] Next, the control unit 110 functions as the state control unit 112 and determines whether the current state of the robot 200 is the awake state and the drowsiness value exceeds 95 (step S8). If the current state is the awake state and the drowsiness value exceeds 95 (step S8; YES), the control unit 110 transitions the state of the robot 200 from the awake state to the sleeping state (step S9). If the current state is the awake state and the drowsiness value is 95 or less, or if the current state is the sleeping state (step S8; NO), the control unit 110 determines whether the current state is the sleeping state and the drowsiness value has fallen below 90 (step S10). If the current state is the sleeping state and the drowsiness value has fallen below 90 (step S10; YES), the control unit 110 transitions the state of the robot 200 from the sleeping state to the awake state (step S11). If the current state is the awake state and the drowsiness value is 95 or less, or if the current state is the sleeping state and the drowsiness value is 90 or more (step S10; NO), the control unit 110 does not change the state of the robot 200.

[0059] 9, next, control unit 110 functions as event determination unit 114 and determines whether or not an event has occurred (step S12). Specifically, control unit 110 determines whether or not a condition for occurrence of any type of event defined in event table 123 has been met, based on the detection value by sensor unit 210.

[0060] When an event occurs (step S12; YES), the control unit 110 determines whether the current state of the robot 200 is the awake state (step S13). When the current state is the awake state (step S13; YES), the control unit 110 functions as the movement control unit 115 and causes the robot 200 to perform a movement corresponding to the type of the event that has occurred (step S14). On the other hand, when the current state is the sleeping state (step S13; NO), the control unit 110 skips step S14. In this case, the control unit 110 does not cause the robot 200 to perform a movement, or causes the robot 200 to perform a movement that is less active than in the awake state.

[0061] Next, the control unit 110 functions as the parameter update unit 111 and updates the drowsiness value according to the type of the event that occurred (step S15). Specifically, the control unit 110 refers to the event table 123 and changes the drowsiness value by the amount of change associated with the type of the event that occurred in step S12.

[0062] On the other hand, if no event has occurred in step S12 (step S12; NO), the control unit 110 determines whether or not the timing for a spontaneous movement has arrived (step S16). Specifically, the control unit 110 determines whether or not two seconds have passed without an event occurring. If the timing for a spontaneous movement has arrived (step S16; YES), the control unit 110 functions as the movement control unit 115 and causes the robot 200 to perform a spontaneous movement (step S17). Specifically, the control unit 110 causes the robot 200 to perform a non-breathing movement once every “sleepiness value+20” times, and otherwise causes the robot 200 to perform a breathing movement. On the other hand, if the timing for a spontaneous movement has not arrived (step S16; NO), the control unit 110 skips step S17.

[0063] Next, the control unit 110 determines whether or not three minutes have passed in a bright state without an event occurring (step S18). If three minutes have passed in a bright state (step S18; YES), the control unit 110 functions as the parameter update unit 111 and increases the drowsiness value by three (step S19). On the other hand, if three minutes have not passed in a bright state (step S18; NO), the control unit 110 skips step S19.

[0064] Next, the control unit 110 determines whether one minute has passed in the dark without any event occurring (step S20). If one minute has passed in the dark (step S20; YES), the control unit 110 functions as the parameter update unit 111 and increases the drowsiness value by 20 (step S21). On the other hand, if one minute has not passed in the dark (step S20; NO), the control unit 110 skips step S21.

[0065] Thereafter, the control unit 110 returns the process to step S2. Then, the control unit 110 repeats the processes of steps S2 to S21 as long as the robot 200 is powered on and can operate normally. As a result, the control unit 110 switches between the sleeping state and the awake state according to the drowsiness value while updating the drowsiness value based on the ambient illuminance, external stimuli, etc.

[0066] As described above, the robot 200 according to this embodiment updates the drowsiness value, which is a parameter indicating the degree of simulated drowsiness, based on an external stimulus, and transitions the state of the robot 200 to a sleeping state based on the drowsiness value. Controlling the sleeping state with a simple trigger would fail to fully express lifelikeness, but the robot 200 according to this embodiment controls the sleeping state using the drowsiness value, thereby enabling it to express lifelikeness. In particular, because the drowsiness value changes based on an external stimulus, it is possible to express light and deep sleep, such that if the robot is in light sleep, it will wake up after being stroked once, and if the robot is in deep sleep, it will not wake up unless it is stroked multiple times. Furthermore, even in the awake state, it is possible to express a sleepy state and a not-sleepy state. This further enhances the lifelikeness of sleep.

[0067] Although the embodiments of the present invention have been described above, the above embodiments are merely examples, and the scope of application of the present invention is not limited to these. In other words, the embodiments of the present invention are applicable to various applications, and all embodiments are included in the scope of the present invention.

[0068] For example, in the above embodiment, the movement control unit 115 causes the robot 200 to perform a spontaneous movement, which is a breathing movement or a non-breathing movement, when no event has occurred. However, when the current state of the robot 200 is a sleeping state, the movement control unit 115 may not cause the robot 200 to perform a non-breathing movement as a spontaneous movement. In other words, the movement control unit 115 may cause the robot 200 to perform both a breathing movement and a non-breathing movement as spontaneous movements in the awake state, while causing the robot 200 to perform only a breathing movement as spontaneous movements in the sleeping state. Alternatively, the movement control unit 115 may cause the robot 200 to perform a non-breathing movement less frequently in the sleeping state than in the awake state. For example, in the awake state, the movement control unit 115 may replace a breathing movement with a non-breathing movement once every “sleepiness value + 20” times, as described above, while in the sleeping state, the movement control unit 115 may replace a breathing movement with a non-breathing movement once every “sleepiness value + 50” times. Furthermore, the movement control unit 115 may cause the robot 200 to perform breathing movements less frequently in the sleeping state than in the awake state. For example, the movement control unit 115 may cause the robot 200 to perform breathing movements at 8-second intervals in the sleeping state. In this way, by reducing the activity of spontaneous movements in the sleeping state compared to the awake state, it is possible to more realistically simulate the sleeping state of a living creature.

[0069] In the above embodiment, the numerical values ​​in the tables shown in FIGS. 4 to 7 are merely examples and are not necessarily limited thereto. For example, the event table 123 shown in FIG. 6 illustrates an example in which the drowsiness value is decreased depending on the type of event that has occurred. However, depending on the type of event, the drowsiness value may be increased when the event occurs. Furthermore, the parameter update unit 111 updates the drowsiness value by adding or subtracting depending on the type of event that has occurred or the ambient illuminance. However, the parameter update unit 111 is not limited to adding or subtracting, and may increase the drowsiness value by multiplying the drowsiness value by a predetermined multiplication value, or may decrease the drowsiness value by dividing the drowsiness value by a predetermined division value.

[0070] In the above embodiment, a drowsiness value, which increases as the level of drowsiness increases, is used as the parameter indicating the level of simulated drowsiness of the robot 200. However, a value such as an alertness value, which decreases as the level of drowsiness increases and increases as the level of drowsiness decreases, may also be used as the parameter indicating the level of simulated drowsiness of the robot 200. When an alertness value is used, updating the parameter so that the level of simulated drowsiness decreases corresponds to increasing the alertness value, and updating the parameter so that the level of simulated drowsiness increases corresponds to decreasing the alertness value.

[0071] In the above embodiment, the exterior 201 is formed in a cylindrical shape from the head 204 to the torso 206, and the robot 200 is in a prone position. However, the robot 200 is not limited to being modeled after a prone position creature. For example, the robot 200 may be modeled after a creature with arms and legs, and may be modeled after a creature that walks on four legs or two legs.

[0072] In the above embodiment, the control device 100 is built into the robot 200, but the control device 100 may be a separate device (e.g., a server) rather than built into the robot 200. When the control device 100 is located outside the robot 200, the robot 200 communicates with the control device 100 via a communication unit to send and receive data to and from the control device 100. The control device 100 controls the robot 200 through such communication with the robot 200.

[0073] In the above embodiment, the CPU in the control unit 110 executes a program stored in the ROM to function as the parameter update unit 111, the state control unit 112, the light / dark determination unit 113, the event determination unit 114, and the operation control unit 115. However, in the present invention, the control unit 110 may include dedicated hardware, such as an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or various control circuits, instead of a CPU, and the dedicated hardware may function as each of these units. In this case, the functions of each unit may be realized by individual hardware, or the functions of each unit may be realized together by a single piece of hardware. Alternatively, some of the functions of each unit may be realized by dedicated hardware, and other parts may be realized by software or firmware.

[0074] It is possible to provide a robot that is equipped with a configuration for realizing the functions of the present invention, and also possible to make an existing information processing device or the like function as a robot of the present invention by applying a program. That is, by applying a program for realizing each functional configuration of the robot 200 exemplified in the above embodiment so that it can be executed by a CPU or the like that controls an existing information processing device or the like, it can function as a robot of the present invention.

[0075] Furthermore, the application method of such a program is arbitrary. The program can be applied by storing it on a computer-readable storage medium such as a flexible disk, a CD (Compact Disc)-ROM, a DVD (Digital Versatile Disc)-ROM, or a memory card. Furthermore, the program can be superimposed on a carrier wave and applied via a communication medium such as the Internet. For example, the program can be distributed by posting it on a bulletin board system (BBS) on a communication network. Then, the program can be started and executed under the control of an operating system (OS) in the same way as other application programs, thereby enabling the above-mentioned processing to be performed.

[0076] The above describes preferred embodiments of the present invention, but the present invention is not limited to the above-described embodiments, and various modifications and substitutions can be made to the above-described embodiments without departing from the scope of the claims. [Explanation of symbols]

[0077] 111... parameter update unit, 112... state control unit, 200... robot

Claims

1. A robot capable of expressing a pseudo-sleep state different from a normal state, a parameter updating means for updating a value of a parameter indicating a degree of simulated drowsiness of the robot with a value corresponding to the type of a predetermined type of event that has occurred; a state control means for switching the state of the robot between the sleeping state and the normal state based on the parameter values ​​updated by the parameter update means; A robot comprising:

2. the parameter update means updates the value of the parameter so that the degree of simulated drowsiness increases as the duration of a state in which no event of the predetermined type occurs continues.

2. The robot according to claim 1 .

3. Further, an illuminance detection means is provided for detecting an illuminance around the robot, the parameter update means updates the value of the parameter such that, when a state in which the predetermined type of event does not occur continues, the degree of simulated drowsiness increases more greatly when the illuminance detected by the illuminance detection means is low than when the illuminance is high.

3. The robot according to claim 2.

4. Further comprising a motion control means for operating the robot, The operation control means causing the robot to perform a breathing action that simulates breathing or a non-breathing action that is an action other than the breathing action, as a spontaneous action; the greater the degree of pseudo-drowsiness, the lower the frequency of causing the robot to perform the non-breathing movement as the voluntary movement; 4. The robot according to claim 1, wherein the robot is a robotic arm.

5. The parameter update means when the illuminance around the robot exceeds a first illuminance threshold, updating the value of the parameter to a value at which the state control means switches the state of the robot to the normal state; when the illuminance around the robot continues to be less than a second illuminance threshold for a predetermined time, the value of the parameter is updated to a value at which the state of the robot is switched to the sleeping state by the state control means; 4. The robot according to claim 1, wherein the robot is a robotic arm.

6. The state control means when the value of the parameter changes from a value outside a first range to a value within the first range, switching the state of the robot from the normal state to the sleeping state; when the value of the parameter changes from a value within a second range to a value outside the second range, switching the state of the robot from the sleeping state to the normal state; the second range includes the first range, 4. The robot according to claim 1, wherein the robot is a robotic arm.

7. A method for controlling a robot capable of expressing a pseudo-sleeping state different from a normal state, comprising: When a predetermined type of event occurs, a value of a parameter indicating a degree of simulated drowsiness of the robot is updated with a value corresponding to the type of the event that has occurred; switching the state of the robot between the sleeping state and the normal state based on the updated parameter values; A robot control method comprising:

8. A robot computer that can express a pseudo-sleep state different from the normal state, a parameter updating means for updating a parameter indicating a degree of simulated drowsiness of the robot with a value corresponding to the type of a predetermined type of event that has occurred; a state control means for switching the state of the robot between the sleeping state and the normal state based on the values ​​of the parameters updated by the parameter update means; A program to function as a

Citation Information

Patent Citations

  • Robot device and method of controlling it

    JP2003191187A

  • Robot device for care recipient

    JP2012220783A

  • Robot, method for controlling robot, and program

    JP2020089929A

  • Robot

    JP2023160420A

  • Operation control device, motion control method, and program

    JP2024082536A