Electronic device, control method for electronic device, and program

JP7913472B2Active Publication Date: 2026-09-01CASIO COMPUTER CO LTD
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
JP2023158718
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-09-22
Publication Date
2026-09-01
Estimated Expiration
2043-09-22

AI Technical Summary

Benefits of technology

【0007】 本発明によれば、生き物らしさを向上させることが可能な電子機器、電子機器の制御方法及びプログラムを提供することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007913472000001
    Figure 0007913472000001
  • Figure 0007913472000002
    Figure 0007913472000002
  • Figure 0007913472000003
    Figure 0007913472000003
Patent Text Reader

Abstract

To provide an electronic device capable of improving a lifelike quality, a control method thereof, and a program.SOLUTION: In a robot 200, a control part 110, in the case of a close range, that is, in the case that an own device is within a prescribed distance from another device of the same type, or in the case that a terminal device compatible with the other device is within a prescribed distance from a terminal device compatible with the own device, updates character parameters that represent a pseudo-character of the own device on the basis of character parameters representing a pseudo-character of the other device.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[[Technical Field]]

[0001] The present invention relates to an electronic device, a control method for an electronic device, and a program. [[Background Art]]

[0002] Electronic devices that simulate living creatures such as pets and humans are known. For example, Patent Document 1 discloses a robot device that allows a user to experience simulated growth by operating a scenario corresponding to the value of a growth parameter. [[Prior Art Literature]] [[Patent Literature]]

[0003] [[Patent Document 1]] Japanese Unexamined Patent Application Publication No. 2003-285286 [[Summary of the Invention]] [[Problem to be Solved by the Invention]]

[0004] In electronic devices that simulate living creatures as described above, it is desired to improve the creature-like characteristics when another device exists in the vicinity of the own device.

[0005] The present invention is intended to solve the problems as described above, and an object of the present invention is to provide an electronic device, a control method for an electronic device, and a program that can improve creature-like characteristics. [[Means for Solving the Problem]]

[0006] To achieve the above object, one aspect of the electronic device according to the present invention is: control means for updating a personality parameter representing the simulated personality of the own device based on a personality parameter representing the simulated personality of said another device, when said own device is in an approaching state where said own device has approached another device of the same type as said own device within a predetermined distance, or a terminal device corresponding to said another device has approached within said predetermined distance from a terminal device corresponding to said own device, Equipped with 、 When updating the characteristic parameters of the own machine without relying on the characteristic parameters of the other machine, the characteristic parameters of the own machine are updated to parameters within a predetermined limit range. When updating the characteristic parameters of the self-operated device based on the characteristic parameters of the other device, the characteristic parameters of the self-operated device are updated to parameters outside the restricted range. It is characterized by the following: [Effects of the Invention]

[0007] According to the present invention, it is possible to provide an electronic device, a control method for the electronic device, and a program that can enhance the lifelikeness of the device. [Brief explanation of the drawing]

[0008] [Figure 1] This figure shows a schematic overview of the overall configuration of the robot system according to Embodiment 1. [Figure 2] This is a cross-sectional view of the robot according to Embodiment 1, seen from the side. [Figure 3] This is a block diagram showing the configuration of the robot according to Embodiment 1. [Figure 4] This is a block diagram showing the configuration of the terminal device according to Embodiment 1. [Figure 5] This figure shows an example of an emotion map according to Embodiment 1. [Figure 6] This figure shows an example of a personality value radar chart according to Embodiment 1. [Figure 7] This figure shows an example of gesture information according to Embodiment 1. [Figure 8] This is the first figure showing an example of a coefficient table according to Embodiment 1. [Figure 9] This is the second figure, showing an example of a coefficient table according to Embodiment 1. [Figure 10] This diagram shows how the robot according to Embodiment 1 encounters another robot. [Figure 11] This figure shows an example of encounter information according to Embodiment 1. [Figure 12] This flowchart shows the flow of robot control processing according to Embodiment 1. [Figure 13] This is a flowchart showing the flow of the gesture control process according to Embodiment 1. [Figure 14] It is a flowchart showing a flow of encounter control processing according to the first embodiment. [Figure 15] It is a diagram showing how a robot according to the second embodiment encounters another robot. MODE FOR CARRYING OUT THE INVENTION

[0009] Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings, the same or corresponding portions are denoted by the same reference numerals.

[0010] (First Embodiment) FIG. 1 schematically shows a configuration of a robot system according to the first embodiment. The robot system includes a robot and a terminal device. The robot is an example of an electronic device according to the first embodiment.

[0011] The robot according to the first embodiment includes an exterior, a decorative component, fluffy fur, a head, a connecting portion, a body, a housing, a touch sensor, an acceleration sensor, a microphone, an illuminance sensor, and a speaker that are the same as those of the robot disclosed in Japanese Patent Laid-Open No. 2023-115370, and description thereof is omitted. The shape of the head may be the shape shown in FIG. 2, or may be the shape disclosed in, for example, FIG. 2 of Japanese Patent Laid-Open No. 2023-115370.

[0012] The robot according to the first embodiment includes a twist motor and a vertical motor that are the same as those of the robot disclosed in Japanese Patent Laid-Open No. 2023-115370, and description thereof is omitted. The twist motor and the vertical motor of the robot according to the first embodiment operate in the same manner as those of the robot disclosed in Japanese Patent Laid-Open No. 2023-115370.

[0013] The robot 200 is equipped with a gyro sensor 215. The robot 200 can detect changes in its own posture using the acceleration sensor 212 and the gyro sensor 215, and can also detect when it is lifted, turned, or thrown by the user.

[0014] Furthermore, at least a portion of the acceleration sensor 212, microphone 213, gyro sensor 215, illuminance sensor 214, and speaker 231 may be provided not only in the torso 206 but also in the head 204, or in both the torso 206 and the head 204.

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

[0016] The control device 100 is a device that controls the robot 200. The control device 100 comprises a control unit 110, which is an example of a control means; a storage unit 120, which is an example of a storage means; and a communication unit 130, which is an example of a communication means.

[0017] The control unit 110 includes a CPU (Central Processing Unit). The CPU is, for example, a microprocessor, and is a central processing unit that performs various processes and calculations. In the control unit 110, the CPU reads the control program stored in ROM and controls the operation of the entire robot 200, which is the device itself, using RAM as work memory. Although not shown in the figures, the control unit 110 also has a clock function, a timer function, etc., and can measure the date and time. The control unit 110 may also be called a "processor".

[0018] The storage unit 120 includes ROM (Read Only Memory), RAM (Random Access Memory), flash memory, etc. The storage unit 120 stores programs and data used by the control unit 110 to perform various processes, including the OS (Operating System) and application programs. The storage unit 120 also stores data generated or acquired by the control unit 110 as a result of various processes.

[0019] The communication unit 130 is equipped with a communication interface for communicating with external devices of the robot 200. For example, the communication unit 130 communicates with external devices, including the terminal device 50, in accordance with well-known communication standards such as wireless LAN (Local Area Network), BLE (Bluetooth Low Energy®), and NFC (Near Field Communication).

[0020] The sensor unit 210 includes the aforementioned touch sensor 211, acceleration sensor 212, gyro sensor 215, illuminance sensor 214, and microphone 213. The sensor unit 210 is an example of a detection means for detecting external stimuli.

[0021] The touch sensor 211 includes, for example, a pressure sensor or a capacitance sensor, and detects when an object comes into contact with it. Based on the values ​​detected by the touch sensor 211, the control unit 110 can detect whether the robot 200 is being stroked or tapped by the user.

[0022] The acceleration sensor 212 detects the acceleration applied to the torso 206 of the robot 200. The acceleration sensor 212 detects acceleration in the X-axis, Y-axis, and Z-axis directions, i.e., acceleration in all three axes.

[0023] For example, the acceleration sensor 212 detects gravitational acceleration when the robot 200 is stationary. Based on the gravitational acceleration detected by the acceleration sensor 212, the control unit 110 can detect the current posture of the robot 200. In other words, based on the gravitational acceleration detected by the acceleration sensor 212, the control unit 110 can detect whether or not the housing 207 of the robot 200 is tilted from the horizontal. Thus, the acceleration sensor 212 functions as a tilt detection means for detecting the tilt of the robot 200.

[0024] Furthermore, if the user lifts or throws the robot 200, the acceleration sensor 212 detects the acceleration associated with the movement of the robot 200 in addition to the acceleration due to gravity. Therefore, the control unit 110 can detect the movement of the robot 200 by removing the component of acceleration due to gravity from the detected value obtained by the acceleration sensor 212.

[0025] The gyro sensor 215 detects the angular velocity when rotation is applied to the torso 206 of the robot 200. Specifically, the gyro sensor 215 detects the angular velocity of rotations around three axes: the X-axis, the Y-axis, and the Z-axis. By combining the values ​​detected by the acceleration sensor 212 and the values ​​detected by the gyro sensor 215, the movement of the robot 200 can be detected with greater accuracy.

[0026] The touch sensor 211, acceleration sensor 212, and gyro sensor 215 detect the contact strength, acceleration, and angular velocity, respectively, at synchronized intervals (for example, every 0.25 seconds), and output the detected values ​​to the control unit 110.

[0027] The microphone 213 detects sounds around the robot 200. Based on the sound components detected by the microphone 213, the control unit 110 can detect, for example, that a user is calling out to the robot 200 or clapping their hands.

[0028] The illuminance sensor 214 detects the illuminance around the robot 200. Based on the illuminance detected by the illuminance sensor 214, the control unit 110 can detect whether the area around the robot 200 has become brighter or darker.

[0029] The control unit 110 acquires detection values ​​from the various sensors in the sensor unit 210 as external stimuli via the bus line BL. External stimuli are stimuli that act on the robot 200 from outside the robot 200. Examples of external stimuli include "a loud noise," "someone talking to you," "someone stroking you," "someone lifting you up," "someone turning you upside down," "it got brighter," "it got darker," etc.

[0030] For example, the control unit 110 acquires external stimuli such as "a loud noise" or "being spoken to" using the microphone 213, and external stimuli such as "being stroked" using the touch sensor 211. In addition, the control unit 110 acquires external stimuli such as "being lifted" or "being turned upside down" using the accelerometer 212 and gyro sensor 215, and external stimuli such as "it getting brighter" or "it getting darker" using the illuminance sensor 214.

[0031] The sensor unit 210 may also include sensors other than the touch sensor 211, acceleration sensor 212, gyro sensor 215, and microphone 213. By increasing the types of sensors included in the sensor unit 210, the types of external stimuli that the control unit 110 can acquire can be increased.

[0032] The drive unit 220 includes a twist motor 221 and an up / down motor 222, which are driven by the control unit 110. The twist motor 221 is a servo motor for rotating the head 204 in the left-right direction (width direction) around the front-back direction as the axis relative to the body 206. The up / down motor 222 is a servo motor for rotating the head 204 in the up-down direction (height direction) around the left-right direction as the axis relative to the body 206. The robot 200 can express a sideways twisting motion of the head 204 using the twist motor 221, and can express an up-and-down motion of the head 204 using the up / down motor 222.

[0033] The output unit 230 is equipped with 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 robot 200's vocalizations to the output unit 230, the robot 200 emits a simulated vocalization.

[0034] Furthermore, the output unit 230 may be equipped with a display such as a liquid crystal display or a light-emitting unit such as an LED (Light Emitting Diode) in place of or in addition to the speaker 231, to display emotions such as joy or sadness on the display or to express them through the color and brightness of the emitted light.

[0035] The control unit 240 includes control buttons, a volume knob, and the like. The control unit 240 is an interface for receiving user operations such as turning the power on and off, and adjusting the output volume.

[0036] Battery 250 is a rechargeable secondary battery that stores the power used by robot 200. Battery 250 is charged when robot 200 moves to the charging station.

[0037] The location information acquisition unit 260 is equipped with a location information sensor such as GPS (Global Positioning System) and acquires the current location information of the robot 200. The location information acquisition unit 260 may acquire the location information of the robot 200 not only by GPS, but also by general methods using wireless communication, or by acquiring the location information of the robot 200 through the application software of the terminal device 50.

[0038] Functionally, the control unit 110 comprises a state parameter acquisition unit 112, which is an example of a state parameter acquisition means; a gesture control unit 113, which is an example of a gesture control means; and an encounter control unit 114, which is an example of an encounter control means. In the control unit 110, the CPU functions by reading a program stored in ROM into RAM and executing that program to control the system.

[0039] Furthermore, the memory unit 120 stores gesture information 121, state parameters 122, coefficient table 124, and encounter information 125.

[0040] Next, the configuration of the terminal device 50 will be described with reference to Figure 4. The terminal device 50 is an operating terminal operated by a user. The terminal device 50 is a general-purpose information processing device such as a smartphone, tablet terminal, or wearable terminal. As shown in Figure 4, the terminal device 50 comprises a control unit 510, a storage unit 520, an operation unit 530, a display unit 540, and a communication unit 550.

[0041] The control unit 510 includes a CPU. In the control unit 110, the CPU reads the control program stored in ROM and controls the operation of the entire terminal device 50 using RAM as work memory. The control unit 510 may also be called a "processor".

[0042] The storage unit 520 includes ROM, RAM, flash memory, etc. The storage unit 520 stores programs and data used by the control unit 510 for various processing. The storage unit 520 also stores data generated or acquired by the control unit 510 through various processing.

[0043] The control unit 530 is equipped with input devices such as a touch panel, touchpad, and physical buttons, and accepts user input.

[0044] The display unit 540 is equipped with a display device such as a liquid crystal display and displays various images under the control of the control unit 510. The display unit 540 is an example of a display means.

[0045] The communication unit 550 is equipped with a communication interface for communicating with devices outside the terminal device 50. For example, the communication unit 550 communicates with external devices, including the robot 200, in accordance with well-known communication standards such as wireless LAN, BLE (registered trademark), and NFC.

[0046] Returning to Figure 3, in the control device 100 of the robot 200, the state parameter acquisition unit 112 acquires state parameters 122. State parameters 122 are parameters that represent the state of the robot 200. Specifically, state parameters 122 include (1) emotion parameters, (2) personality parameters, (3) battery level, (4) current location, (5) current time, and (6) growth days (nurturing days).

[0047] (1) Emotional parameters The emotion parameter is a parameter that represents simulated emotions for robot 200. The emotion parameter is represented by coordinates (X,Y) on the emotion map 300.

[0048] The emotion map 300 is the same as that disclosed in Japanese Patent Application Publication No. 2023-115370, and therefore no further explanation is provided.

[0049] The state parameter acquisition unit 112 calculates the emotion change amount, which is the amount of change that increases or decreases the X and Y values ​​of the emotion parameters. The emotion change amount is expressed by the following four variables. DXP: Ease of feeling safe (ease of positive change in the X value on the emotion map) DXM: Susceptibility to anxiety (ease of the X value in the emotion map changing in a negative direction) DYP: Excitability (ease of change in the positive direction of the Y value on the emotion map) DYM: Proneness to lethargy (ease of the Y value in the emotion map changing in the negative direction)

[0050] The state parameter acquisition unit 112 updates the emotion parameters by adding or subtracting a value from the emotion change amounts DXP, DXM, DYP, and DYM that corresponds to the external stimulus to the current emotion parameters. For example, when the head 204 is stroked, the robot 200's simulated emotion becomes reassuring, so the state parameter acquisition unit 112 adds DXP to the X value of the emotion parameters. Conversely, when the head 204 is struck, the robot 200's simulated emotion becomes anxious, so the state parameter acquisition unit 112 subtracts DXM from the X value of the emotion parameters. The emotion change amounts associated with various external stimuli can be arbitrarily set. An example is shown below. Being petted on head 204 (feels reassuring): X = X + DXP Hitting the head 204 (causing anxiety): X=X-DXM (These external stimuli can be detected by the touch sensor 211 on the head 204.) When the torso 206 is stroked (excited): Y=Y+DYP The torso 206 is struck (becomes lethargic): Y=Y-DYM (These external stimuli can be detected by the touch sensor 211 on the torso 206.) Being held with the head up (happy): X=X+DXP and Y=Y+DYP Suspended upside down (sad): X=X-DXM and Y=Y-DYM (These external stimuli can be detected by the touch sensor 211 and the accelerometer 212.) A gentle voice calls out (peace is restored): X=X+DXP and Y=Y-DYM Being yelled at loudly (irritating): X=X-DXM and Y=Y+DYP (These external stimuli can be detected by microphone 213.)

[0051] The sensor unit 210 acquires multiple external stimuli of different types using multiple sensors. The state parameter acquisition unit 112 derives various amounts of emotion change according to each of these multiple external stimuli and sets emotion parameters according to the derived amounts of emotion change.

[0052] The values ​​for the emotion change amounts DXP, DXM, DYP, and DYM start at 10 and increase up to a maximum of 20. The state parameter acquisition unit 112 updates each of the emotion change amount variables DXP, DXM, DYP, and DYM in accordance with the external stimuli detected by the sensor unit 210.

[0053] Specifically, the state parameter acquisition unit 112 adds 1 to DXP if the X value of the emotion parameter is set to the maximum value of the emotion map 300 at least once during the day, and adds 1 to DYP if the Y value of the emotion parameter is set to the maximum value of the emotion map 300 at least once. In addition, the state parameter acquisition unit 112 adds 1 to DXM if the X value of the emotion parameter is set to the minimum value of the emotion map 300 at least once during the day, and adds 1 to DYM if the Y value of the emotion parameter is set to the minimum value of the emotion map 300 at least once.

[0054] In this way, the state parameter acquisition unit 112 changes the amount of emotion change according to a condition based on whether the value of the emotion parameter has reached the maximum or minimum value of the emotion map 300. This update process changes the amount of emotion change, that is, the degree of emotion change.

[0055] For example, if only the head 204 is stroked repeatedly, only the DXP emotion change amount increases, while other emotion change amounts remain unchanged, making the robot 200 more reassuring. Conversely, if only the head 204 is tapped repeatedly, only the DXM emotion change amount increases, while other emotion change amounts remain unchanged, making the robot 200 more prone to anxiety. In this way, the state parameter acquisition unit 112 changes the emotion change amounts in response to various external stimuli.

[0056] (2) Personality parameters The personality parameters are parameters that represent the simulated personality of the robot 200. The personality parameters include multiple personality values, each representing a different degree of personality. The state parameter acquisition unit 112 changes the multiple personality values ​​included in the personality parameters in response to external stimuli detected by the sensor unit 210.

[0057] To explain in more detail, the state parameter acquisition unit 112 calculates four personality values ​​according to the following (Equation 1). Specifically, the value obtained by subtracting 10 from DXP, which indicates ease of reassurance, is set as the personality value (cheerful); the value obtained by subtracting 10 from DXM, which indicates susceptibility to anxiety, is set as the personality value (shy); the value obtained by subtracting 10 from DYP, which indicates excitability, is set as the personality value (active); and the value obtained by subtracting 10 from DYM, which indicates susceptibility to lethargy, is set as the personality value (clingy). Personality Value (Cheerful) = DXP - 10 Personality Value (Shy) = DXM - 10 Personality score (active) = DYP - 10 Personality Value (Clingy) = DYM-10 …(Formula 1)

[0058] As a result, as shown in Figure 6, a personality value radar chart 400 can be generated by plotting the personality value (cheerful) on the first axis, the personality value (active) on the second axis, the personality value (shy) on the third axis, and the personality value (clingy) on the fourth axis. Since each variable for the amount of emotion change starts at 10 and increases up to a maximum of 20, the range of personality values ​​is between 0 and 10.

[0059] The personality value radar chart 400 is the same as that disclosed in Japanese Patent Application Publication No. 2023-115370, and therefore its explanation is omitted.

[0060] Thus, the robot 200 exhibits various characteristics depending on how the user interacts with it. In other words, the personality of the robot 200 is formed individually and differently depending on how the user interacts with it.

[0061] These four personality values ​​are fixed once the childhood period is over and the robot 200's simulated growth is complete. In the subsequent adult period, the state parameter acquisition unit 112 adjusts the four personality correction values ​​(cheerfulness correction value, activeness correction value, shyness correction value, and clinginess correction value) to adjust the robot 200's personality according to how the user interacts with it.

[0062] The state parameter acquisition unit 112 adjusts the four personality correction values ​​according to conditions based on which area on the emotion map 300 has had the longest duration of the emotion parameter. Specifically, it adjusts the four personality correction values ​​as follows: (A) to (E). (A) If the longest existing area is a safe area on the emotion map 300, the state parameter acquisition unit 112 adds 1 to the cheerful correction value and subtracts 1 from the shy correction value. (B) If the longest existing area is an excited area on the emotion map 300, the state parameter acquisition unit 112 adds 1 to the active correction value and subtracts 1 from the clingy correction value. (C) If the longest existing area is an anxiety area on the emotion map 300, the state parameter acquisition unit 112 adds 1 to the shy correction value and subtracts 1 from the cheerful correction value. (D) If the longest existing area is a lethargic area on the emotion map 300, the state parameter acquisition unit 112 adds 1 to the clinginess correction value and subtracts 1 from the activity correction value. (E) If the longest existing area is the central area on the emotion map 300, the state parameter acquisition unit 112 decreases the absolute value of all four personality correction values ​​by 1.

[0063] Once four personality correction values ​​are set, the state parameter acquisition unit 112 calculates the four personality values ​​according to the following (Equation 2). Personality Value (Cheerful) = DXP - 10 + Cheerful Correction Value Personality Value (Shy) = DXM - 10 + Shy Correction Value Personality Value (Active) = DYP - 10 + Activity Correction Value Personality Value (Clingy) = DYM - 10 + Clingy Correction Value …(Formula 2)

[0064] (3) Battery level The battery level is the remaining amount of power stored in the battery 250 and is a parameter that represents the simulated hunger level of the robot 200. The state parameter acquisition unit 112 acquires information on the current battery level from the power control unit that controls the charging and discharging of the battery 250.

[0065] (4) Current location The current location is the location where the robot 200 is currently positioned. The state parameter acquisition unit 112 acquires information about the robot 200's current location from the location information acquisition unit 260.

[0066] The state parameter acquisition unit 112 determines that the current location is the home if it matches the location with the highest recording frequency. If the current location is not the home, the state parameter acquisition unit 112 determines, based on the number of past recordings of that location, whether the current location is a new place, a familiar place, or a place that is not very familiar, and acquires the determination information. For example, if the number of past recordings is 5 or more, the state parameter acquisition unit 112 determines that the current location is a familiar place, and if the number of past recordings is less than 5, it determines that the current location is a place that is not very familiar.

[0067] (5)Current time The current time is the current time. The state parameter acquisition unit 112 acquires the current time using the clock installed on the robot 200. However, as with the acquisition of position information, the acquisition of the current time is not limited to this method.

[0068] More specifically, the state parameter acquisition unit 112 refers to the log of the robot 200's simulated sleep ON / OFF status to determine whether the current time is immediately after the wake-up time, immediately before the bedtime, or during the daytime nap period.

[0069] (6) Growth days (nurturing days) The growth days represent the number of days for the simulated growth of Robot 200. Robot 200 is simulated to be born when it is first activated by the user after leaving the factory, and grows from a child to an adult over a predetermined growth period. The growth days correspond to the number of days since Robot 200's simulated birth.

[0070] The initial value of the growth days is 1, and the state parameter acquisition unit 112 adds 1 to the growth days each day that passes. The growth period for robot 200 to grow from a child to an adult is, for example, 50 days, and the period of 50 days from the simulated birth is called the "childhood period". Once the childhood period has elapsed, the simulated growth of robot 200 is complete. The period after the completion of the childhood period is called the "adulthood period".

[0071] During the childhood period, the state parameter acquisition unit 112 increases both the maximum and minimum values ​​of the emotion map 300 by 2 for each day the robot 200's simulated growth period increases. Initially, as shown in frame 301, the size of the emotion map 300 has a maximum X value of 100 and a minimum value of -100 for both the X and Y values. When half of the childhood period (for example, 25 days) has passed, as shown in frame 302, the maximum X value and Y value become 150 and the minimum value becomes -150. Once the childhood period is over, the robot 200's simulated growth stops. At this point, as shown in frame 303, the maximum X value and Y value become 200 and the minimum value becomes -200. After that, the size of the emotion map 300 is fixed.

[0072] The configurable range of emotional parameters is determined by the emotion map 300. Therefore, as the size of the emotion map 300 increases, the range of configurable emotional parameters also increases. This expansion of the configurable range of emotional parameters allows for richer emotional expression, and thus the simulated growth of the robot 200 is represented by the expansion of the emotion map 300.

[0073] Returning to Figure 3, the gesture control unit 113 causes the robot 200 to perform various gestures according to the situation based on the gesture information 121. The gesture information 121 is information that defines the gestures that the robot 200 will perform. Here, gestures refer to the behavior and actions of the robot 200. Specifically, gestures include "lowering the head," "squeaking," "shaking the head," "being surprised," "being happy," and "being sad," as shown in Figure 7. In addition to the gestures shown in Figure 7, various other gestures can be given, such as "laughing," "getting angry," "sneezing," and "breathing." Each gesture is composed of a combination of multiple elements, each of which is either an action or an audio output.

[0074] "Operation" refers to the physical movement (motion) of the robot 200, which is performed by the drive unit 220. Specifically, "operation" corresponds to moving the head 204 relative to the body 206 using the twist motor 221 or the up / down motor 222. "Audio output" refers to the output of various sounds, such as cries, from the speaker 231 of the output unit 230.

[0075] As shown in Figure 7, the gesture information 121 defines gesture control parameters for each of the multiple gestures that the robot 200 can perform. The gesture control parameters are the parameters that cause the robot 200 to perform each gesture. For each element that makes up the gesture, the gesture control parameters define the motion parameter or sound parameter and the time (milliseconds) for executing that element. The motion parameter defines the operating angle of the twist motor 221 and the operating angle of the up and down motor 222. The sound parameter defines the sound and volume.

[0076] For example, when making robot 200 perform the "lower head" gesture, the gesture control unit 113 first controls the twist motor 221 and the up / down motor 222 to have an angle of 0 after 100 milliseconds, and then controls the up / down motor 222 to have an angle of -45 after another 100 milliseconds. When making robot 200 perform the "squeak" gesture, the gesture control unit 113 outputs the sound "squeak" at a volume of 60 dB from speaker 231 for 300 milliseconds. When making robot 200 perform the "shake head" gesture, the gesture control unit 113 first controls the twist motor 221 and the up / down motor 222 to have an angle of 0 after 100 milliseconds, then controls the drive unit 220 to have an angle of 34 for the twist motor 221 after another 100 milliseconds, and then controls the drive unit 220 to have an angle of -34 for the twist motor 221 after another 100 milliseconds.

[0077] Furthermore, the gesture information 121 shown in Figure 7 defines more complex gestures such as "surprised," "happy," and "sad." When the robot 200 is made to perform the "surprised" gesture, the gesture control unit 113 first controls the twist motor 221 and the up / down motor 222 so that their angles become 0 after 100 milliseconds, and then controls the up / down motor 222 so that its angle becomes -24 after another 100 milliseconds. Then, the gesture control unit 113 does not rotate for 700 milliseconds, and then controls the twist motor 221 so that its angle becomes 34 and the up / down motor 222 so that its angle becomes -24 after 500 milliseconds. Then, the gesture control unit 113 controls the twist motor 221 so that its angle becomes -34 after another 400 milliseconds, and then controls the twist motor 221 and the up / down motor 222 so that their angles become 0 after another 500 milliseconds. Furthermore, the gesture control unit 113 outputs a "scream" sound at a volume of 70 dB from the speaker 231 in parallel with driving the twist motor 221 and the up / down motor 222. Note that the gesture control parameters for gestures such as "happy" and "sad" are omitted in Figure 7, but similar to "surprised," they are determined by a combination of the action (motion) by the twist motor 221 or the up / down motor 222 and the sound output (scream) from the speaker 231.

[0078] The gesture information 121 defines the gestures that the robot 200 should perform, based on a combination of such actions (motions) or sound outputs (sounds). The gesture information 121 may be pre-programmed into the robot 200. Alternatively, the gesture information 121 may be freely created by the user operating the terminal device 50.

[0079] Each gesture defined in the gesture information 121 is pre-associated with a trigger, which is the condition under which the robot 200 performs the gesture. Specifically, the triggers can be various conditions such as "being called," "being petted," "being lifted," "being turned upside down," "it becoming brighter," "it becoming darker," etc. These triggers are triggers based on external stimuli and are detected by the sensor unit 210. For example, "being called" is detected by the microphone 213. "Being petted" is detected by the touch sensor 211. "Being lifted" and "being turned upside down" are detected by the acceleration sensor 212 or the gyro sensor 215. "It becoming brighter" and "it becoming darker" are detected by the illuminance sensor 214. Note that triggers may also be those not based on external stimuli, such as "a specific time has arrived" or "the robot 200 has moved to a specific location."

[0080] The gesture control unit 113 determines, based on the detection results from the sensor unit 210, whether or not one of the triggers for multiple gestures defined in the gesture information 121 has been met. For example, the gesture control unit 113 determines whether or not one of the triggers predetermined in the gesture information 121 has been met, such as whether the user's voice has been recognized, whether the robot 200's head 204 has been stroked, whether a specific time has arrived, or whether the robot 200 has moved to a specific location. If, as a result of the determination, any of the triggers has been met, the gesture corresponding to the met trigger is made to be executed by the robot 200.

[0081] When any trigger is met, the gesture control unit 113 refers to the gesture information 121 and identifies the gesture control parameters set for the gesture corresponding to the met trigger. Specifically, the gesture control unit 113 identifies the combination of actions or sounds that constitute the gesture corresponding to the met trigger, the execution start timing of each element, and the action parameters or sound parameters that are parameters of each element as gesture control parameters. Then, the gesture control unit 113 drives the drive unit 220 or outputs sound from the speaker 231 based on the identified gesture control parameters, causing the robot 200 to execute the gesture corresponding to the met trigger.

[0082] More specifically, the gesture control unit 113 corrects the gesture control parameters identified from the gesture information 121 based on the state parameters 122 acquired by the state parameter acquisition unit 112. This allows the gestures to be changed according to the current state of the robot 200, enabling a realistic simulation of living creatures.

[0083] To correct the gesture control parameters, the gesture control unit 113 refers to the coefficient table 124. As shown in Figures 8 and 9, the coefficient table 124 defines correction coefficients for each of the state parameters 122: (1) emotion parameter, (2) personality parameter, (3) battery level, (4) current location, and (5) current time. Although not shown in the figure, the coefficient table 124 may also define a correction coefficient for (6) growth days.

[0084] The correction coefficient is a coefficient used to correct the gesture control parameters identified from the gesture information 121. Specifically, the correction coefficient is determined by the direction of action and a weighting coefficient for each of the following: the speed and amplitude of the vertical movement by the vertical motor 222, the speed and amplitude of the horizontal movement by the twist motor 221, and the movement start time lag.

[0085] More specifically, the gesture control unit 113 determines which of the following (1) to (5) corresponds to the current state of the robot 200, as indicated by the state parameter 122 acquired by the state parameter acquisition unit 112. Then, the gesture control unit 113 corrects the gesture control parameters using a correction coefficient corresponding to the current state of the robot 200. (1) Which of the following best describes the current emotional parameter of robot 200: joy, frustration, sadness, lethargy, or normal? In other words, is the coordinate (X,Y) representing the emotional parameter located in the area labeled "joy," "frustration," "sadness," "lethargy," or "normal" on the emotional map 300 shown in Figure 5? (2) Which of the following personality parameters best describes Robot 200: cheerful, active, shy, or clingy? In other words, which of the four personality values—cheerful, active, shy, or clingy—is the largest? (3) Is the current battery level of robot 200 70% or more, between 70% and 30%, or 30% or less? (4) Is Robot 200 currently at its home, a familiar place, an unfamiliar place, or a new place? (5) Is the current time immediately after waking up, during a nap, or just before going to sleep?

[0086] For example, in the coefficient table 124 shown in Figure 9, when the current time corresponds to immediately after waking up, the direction of action for both the speed and amplitude of the up-and-down movement and the left-and-right movement is set to "-" and the weight coefficient is set to "0.2". Therefore, the motion control unit 113 lengthens the movement time by 20% and shortens the movement distance by 20% based on the values ​​obtained from the motion information 121. In other words, the motion control unit 113 makes the robot 200's movements 20% slower and 20% smaller than normal.

[0087] Furthermore, in the coefficient table 124 shown in Figure 9, the direction of action of the operation start time lag is defined as "+" and the weight coefficient is defined as "0.2". Therefore, the gesture control unit 113 delays the execution start timing by 20% compared to normal, based on the value set in the gesture information 121. By correcting using such correction coefficients, it is possible to represent that gestures are executed with slightly slower movements than normal when the person is sleepy immediately after waking up.

[0088] In addition to (5) the current time, the gesture control unit 113 also identifies the corresponding correction coefficients from the coefficient table 124 for each of the following states: (1) emotion parameters, (2) personality parameters, (3) battery level, and (4) current location. The gesture control unit 113 then corrects the gesture control parameters using the sum of the corresponding correction coefficients from (1) to (5).

[0089] As a specific example, let's explain the case where (1) the current emotional parameter corresponds to joy, (2) the current personality parameter corresponds to cheerful, (3) the current battery level is 30% or less, (4) the current location is a new place, and (5) the current time is immediately after waking up.

[0090] In this case, referring to the coefficient table 124 shown in Figures 8 and 9, the sum of the correction coefficients for the speed and amplitude of the vertical movement is calculated as "+0.2 + 0.1 - 0.3 - 0.2 - 0.2 = -0.4", and the sum of the correction coefficients for the speed and amplitude of the horizontal movement is calculated as "+0.2 + 0 - 0.3 - 0.2 - 0.2 = -0.5". Therefore, the gesture control unit 113 increases the operating time of the vertical motor 222 by 40% and decreases the operating distance by 40% based on the value set in the gesture information 121. Furthermore, the gesture control unit 113 increases the operating time of the twist motor 221 by 50% and decreases the operating distance by 50% based on the value obtained from the gesture information 121.

[0091] Furthermore, the sum of the correction coefficients for the operation start time lag is calculated as "+0+0+0.3+0.2+0.2=+0.7". Therefore, the gesture control unit 113 delays the execution start timing by 70% compared to normal, based on the value obtained from the gesture information 121.

[0092] Although not shown in the diagram, the coefficient table 124 also defines correction coefficients for vocalizations, similar to those for actions. Specifically, the gesture control unit 113 corrects the volume, which is a vocalization parameter set for the gesture corresponding to the trigger established in the gesture information 121, using a correction coefficient corresponding to the state parameter 122 acquired by the state parameter acquisition unit 112.

[0093] In this way, the gesture control unit 113 corrects the gesture control parameters based on the state parameters 122 acquired by the state parameter acquisition unit 112. Then, the gesture control unit 113 drives the drive unit 220 or outputs sound from the speaker 231 based on the corrected gesture control parameters, causing the robot 200 to execute the gesture corresponding to the trigger that has been met. By correcting the gesture control parameters based on the state parameters 122, even when the robot 200 performs the same gesture, there will be differences in the gesture performed depending on the robot 200's current state (emotion, personality, battery level, current location, current time, etc.). For example, even when the robot 200 performs the same "happy" gesture, there will be differences in the gesture performed depending on whether the simulated emotion corresponds to "happy" or "irritated". This prevents gestures from becoming uniform and allows for the expression of individuality.

[0094] Returning to Figure 3, the encounter control unit 114 determines whether the self-operated robot has encountered another robot 200. Here, the other robot 200 is a robot 200 that is the same type of equipment as the self-operated robot but is a separate individual. In principle, the other robot 200 has the same configuration and functions as the self-operated robot and operates in the same way as the self-operated robot.

[0095] Meeting means that two robots 200 approach each other to a range where they can recognize each other, and specifically, as shown in Figure 10, it corresponds to a state of approach where they are within a predetermined distance D. The meeting of two robots 200 may also be called "contact". Another robot 200 that has approached within a predetermined distance D and entered a state of approach may also be called an "approaching device". The meeting control unit 114 performs control when the robot meets another robot 200 in this way, i.e., when it enters a state of approach.

[0096] The encounter control unit 114 searches the area around the current robot and determines whether or not another robot 200 of the same type as the current robot exists within a predetermined distance D from the current robot, in other words, in the vicinity of the current robot. If another robot 200 is found in the vicinity of the current robot, the encounter control unit 114 determines that the current robot has encountered the other robot 200.

[0097] Specifically, the encounter control unit 114 uses the BLE search function to determine whether or not another robot 200 of the same type as itself is present in the vicinity of its own robot. For example, if another robot 200 is present in the vicinity of its own robot, the encounter control unit 114 can identify that the robot 200 is of the same type as its own robot by using the device name in the BLE search function.

[0098] In this embodiment, the case using BLE is described as an example, but the encounter control unit 114 may determine whether or not another robot 200 is present in the vicinity of its own robot using communication other than BLE, such as Wi-Fi or infrared. The encounter control unit 114 will, in principle, always perform such a search as long as its own robot is operating normally, unless there is a special command from the terminal device 50.

[0099] If the search results determine that another robot 200 of the same type as the current robot is present in the vicinity of the current robot, the encounter control unit 114 establishes a BLE connection with that robot 200. In a BLE connection, a master-slave relationship (central / peripheral relationship) enables synchronized control by notifying the slave robot 200 of the synchronization timing, as well as coordinated control by instructing the slave robot 200 to perform actions.

[0100] Once a BLE connection is established, the encounter control unit 114 acquires the other robot information, which is information indicating the ID and personality parameters of the other robot 200, and transmits its own robot information, which is information indicating its own robot ID and personality parameters, to the other robot 200. The encounter control unit 114 updates the encounter information 125 stored in the memory unit 120 using the other robot information acquired from the other robot 200.

[0101] As shown in Figure 11, the encounter information 125 is defined by associating each of the other robots 200 with an ID, the latest encounter date and time, the cumulative number of encounters, personality parameters, friend registration, intimacy level, and user operation history. In the encounter information 125, the latest encounter date and time is the date and time of the last encounter with the other robot 200. The cumulative number of encounters is the total number of times the other robot 200 has been encountered in the past. The personality parameters are the personality parameters of the other robot 200. Friend registration is done when the intimacy level exceeds a threshold. Intimacy level is the degree of intimacy between the other robot 200 and the player's robot. The user operation history is the history of user operations during the time the player's robot has encountered each ID of robot 200.

[0102] When the encounter control unit 114 obtains information about the other party's robot 200, it compares the ID shown in the obtained information with each ID included in the encounter information 125. The encounter control unit 114 then updates the information associated with the corresponding ID in the encounter information 125. Specifically, the encounter control unit 114 adds 1 to the cumulative number of encounters associated with the corresponding ID in the encounter information 125. In addition, the encounter control unit 114 updates the personality parameters associated with the corresponding ID in the encounter information 125 with the personality parameters of the other party's robot 200 shown in the obtained information about the other party.

[0103] Next, the encounter control unit 114 estimates the distance between the user's robot and the other robot 200. For example, the encounter control unit 114 refers to the radio wave strength of the BLE signal received from the other robot 200, and estimates that the stronger the radio wave strength, the closer the distance between the user's robot and the other robot 200 is.

[0104] When the encounter control unit 114 determines that the player robot has encountered another robot 200, the gesture control unit 113 causes the player robot to perform a gesture corresponding to the encounter with that robot 200. Specifically, when the player robot encounters another robot 200, the gesture control unit 113 causes the player robot to perform a gesture corresponding to the number of times the player robot has encountered that robot 200. In other words, when the player robot is in close proximity to another robot 200, the gesture control unit 113 causes the player robot to perform a gesture corresponding to the number of times the player robot has been in close proximity to another robot 200.

[0105] More specifically, when the robot encounters another robot 200, the gesture control unit 113 first refers to the distance estimated by the encounter control unit 114. (1) If the estimated distance is close, the gesture control unit 113 causes the robot to perform a gesture that simulates a greeting to the other robot 200. An estimated distance being close corresponds, for example, to a case where the estimated distance is less than the first distance.

[0106] (2) If the estimated distance is somewhat close, the gesture control unit 113 causes the robot to perform a gesture to search for the other robot 200. If the estimated distance is somewhat close, for example, this corresponds to a case where the estimated distance is greater than or equal to the first distance and less than the second distance. The first distance and the second distance are distances less than a predetermined distance D that is set in advance as a threshold. In this way, when the robot encounters another robot 200, the gesture control unit 113 causes the robot to perform a gesture corresponding to the distance between the robot and the other robot 200.

[0107] Furthermore, the gesture control unit 113 (1) if the estimated distance is close, refers to the cumulative number of encounters with the encountered robot 200 recorded in the encounter information 125. Then, the gesture control unit 113 changes the gesture that performs a greeting to the other robot 200 as a gesture corresponding to the cumulative number of encounters, as shown in (1A) to (1C) below.

[0108] (1A) Specifically, if the cumulative number of encounters is the first time (i.e., the first meeting), the gesture control unit 113 causes the robot to perform gestures that simulate a cautious greeting towards the other robot 200.

[0109] (1B) In contrast, if the cumulative number of encounters is the second or later (more precisely, if it does not fall under (1C) below), the gesture control unit 113 causes the robot to perform a gesture that simulates a normal greeting to the other robot 200.

[0110] (1C) Furthermore, if the player's robot frequently encounters the opponent's robot 200, the player's robot will perform a gesture that simulates a playful greeting with the opponent's robot 200. Here, "frequently encountering the opponent's robot 200" refers to cases where, for example, the number of encounters is 10 or more, and it has been less than 3 days since the last encounter.

[0111] The gesture control unit 113, when the player robot encounters another robot 200 and the estimated distance is short, causes the player robot to perform a gesture that simulates a greeting as the first gesture during the encounter. Furthermore, the gesture control unit 113 causes the player robot to perform additional gestures, such as the aforementioned greeting gesture, depending on the cumulative number of encounters.

[0112] For example, the gesture control unit 113 may cause the user robot to perform gestures corresponding to the cumulative number of encounters, such as movements identical to those of the other robot 200, or movements synchronized with those of the other robot 200. Alternatively, if the level of intimacy between the user robot and the other robot 200 is above a predetermined value, the gesture control unit 113 may cause the user robot to perform gestures such as dancing together with the other robot 200. The gesture control unit 113 may cause the user robot to perform such gestures corresponding to the cumulative number of encounters periodically or at random intervals while the other robot 200 is nearby.

[0113] In the encounter information 125, intimacy is the degree of closeness between the player's robot and other robots 200. The encounter control unit 114 sets the intimacy level based on the number of encounters. In principle, the intimacy level with a particular robot 200 is expressed by the number of encounters with that robot 200. That is, when the number of encounters increases by 1, the corresponding intimacy level also increases by 1.

[0114] When the encounter control unit 114 encounters another robot 200, it updates the intimacy level with that robot 200 based on the time elapsed since the last encounter with that robot 200. Specifically, when the encounter control unit 114 encounters another robot 200, it refers to the most recent encounter date and time with that robot 200 recorded in the encounter information 125. Then, if a certain period of time has elapsed since the most recent encounter, the encounter control unit 114 reduces the intimacy level. For example, if more than three months have passed since the last encounter, the encounter control unit 114 reduces the intimacy level by half.

[0115] Furthermore, the encounter control unit 114 corrects the intimacy level based on the external stimulus when the user robot approaches another robot 200 and the sensor unit 210 detects an external stimulus to the user robot. Here, the external stimulus is, for example, a user operation directed at the user robot. The encounter control unit 114 corrects the intimacy level based on the user operation directed at the user robot when the user robot encounters another robot 200. Here, the state when the user robot encounters another robot 200 is the period from when the other robot 200 approaches the user robot's vicinity (for example, within a predetermined distance D) until it is no longer in the vicinity.

[0116] To explain in more detail, when the robot 200 encounters another robot 200, the encounter control unit 114 determines whether the sensor unit 210 has detected an action that the robot 200 would enjoy or dislike. Actions that the robot 200 would enjoy include being petted, praised, or hugged. Actions that the robot 200 would dislike include being hit, scolded, or turned upside down.

[0117] The encounter control unit 114 uses the touch sensor 211 to detect the strength of the user's contact with the robot 200, and based on the strength of the contact, it determines whether the user's action is pleasing or disliked, i.e., whether the user's action is "stroked" or "hit." The encounter control unit 114 also detects the user's voice using the microphone 213, performs voice recognition on the detected voice, and determines whether the user is "praised" or "scolded." Furthermore, based on the detection values ​​of the acceleration sensor 212 or the gyro sensor 215, the encounter control unit 114 determines whether the user is "hugged" or "turned upside down."

[0118] The encounter control unit 114 adjusts the intimacy level each time the number of times an operation that the robot 200 finds pleasing or dislikes exceeds a preset threshold (for example, 5 times). Specifically, the encounter control unit 114 increases the intimacy level by +0.5 each time the number of times an operation that the robot 200 finds pleasing exceeds the threshold. Conversely, the encounter control unit 114 decreases the intimacy level by -0.5 each time the number of times an operation that the robot 200 finds dislikes exceeds the threshold. The encounter control unit 114 performs this intimacy level adjustment based on the content of user operations until the other robot 200 approaches and then moves away from the vicinity of the user robot.

[0119] When the intimacy level exceeds a predetermined threshold due to such an update, the encounter control unit 114 reflects the personality of the other robot 200 into the personality of the player's own robot. Here, the personality of the robot 200 is specifically a personality parameter that represents the pseudo-personality of the robot 200. Alternatively, the threshold may be set to the same value as the initial intimacy level, and the personality of the other robot 200 that has been encountered (in a close-proximity state) may be reflected in the player's own robot's personality regardless of the number of encounters.

[0120] To explain in more detail, the encounter control unit 114 registers the other robot 200 as a friend when the level of intimacy exceeds a predetermined threshold. Specifically, the encounter control unit 114 records a "○" in the friend registration column for the other robot 200 in the encounter information 125 to indicate that it has been registered. Then, the encounter control unit 114 updates the player's own character parameters based on the character parameters of the other robot 200 that has been registered as a friend. By reflecting some or all of the other robot 200's character parameters in the player's own character parameters, it is possible to reflect this in the player's subsequent growth, gestures, etc.

[0121] Here, the personality parameters of each robot 200 are expressed in 11 stages from 0 to 10 for each of the four personality values, as illustrated in Figure 6. If the personality of the own robot is not affected by the personalities of other robots 200, the state parameter acquisition unit 112 updates each of the own robot's personality values ​​within this predetermined limit range of 0 to 10. In other words, if the personality parameters of the own robot are to be updated without being based on the personality parameters of other robots 200, the state parameter acquisition unit 112 updates the personality parameters of the own robot to parameters within the predetermined limit range.

[0122] In contrast, when the encounter control unit 114 updates its own robot's personality parameters based on the personality parameters of other robots 200, it updates its own robot's personality parameters to parameters outside the restricted range. In other words, the encounter control unit 114 can update its own robot's personality parameters to values ​​that would not be possible to update if not based on the personality parameters of other robots 200. Five examples are given below.

[0123] As a first example, the encounter control unit 114 may simply add each personality value of the opponent robot 200's personality parameters to each personality value of its own robot's personality parameters. This allows each personality value of the own robot's personality parameters to be expressed in 21 steps from 0 to 20, making it possible to update the value to exceed the upper limit before the addition.

[0124] As a second example, if the encounter control unit 114 finds that the opponent robot 200 has a personality whose personality value is above a predetermined level (specifically, any of the following: cheerful, shy, lively, or clingy), it may increase the personality value of that personality among the player's personality parameters by any desired level. This makes it possible for the player's robot 200 to be influenced by the personality parameter with the strongest element. In this case, the upper limit of each personality value in the player's personality parameters may be set to any value that exceeds the value updated by the state parameter acquisition unit 112.

[0125] As a third example, the encounter control unit 114 may increase the personality value of the personality parameter of the own robot by any level if the personality of the other robot 200 whose personality value is above a predetermined value (specifically, one of cheerful, shy, lively, or clingy) matches the personality of the own robot whose personality value is above a predetermined value.

[0126] As a fourth example, the encounter control unit 114 may reflect the personality parameters of the opponent's robot 200 in the coefficients that control the ease with which each personality value of its own robot's personality parameters grows. The coefficients that control the ease with which each personality value grows are, for example, the personality correction values ​​mentioned above. For example, the personality correction value corresponding to the personality of a personality parameter of the opponent's robot 200 that is above a predetermined value may be increased by one step.

[0127] As a fifth example, the encounter control unit 114 may add a new type of personality value (for example, a "sociable" personality value) that is different from the four personality values ​​of the player's character parameters. Also, for example, the higher the "sociable" personality value, the greater the amount of expansion of the emotion map per day, or the "sociable" personality value may be converted to an arbitrary multiplier and multiplied by an arbitrary personality correction value. Since the new type of personality value was limited to 0 before it was added, adding a new type of personality value and setting an appropriate value is equivalent to updating the player's character parameters to parameters outside the restricted range.

[0128] In this way, by reflecting the personality parameters of the encountered Robot 200 into the personality parameters of your own robot, it becomes possible to achieve growth that would be impossible with Robot 200 alone.

[0129] The encounter control unit 114 will not apply personality parameters if it encounters a robot 200 that has already been registered as a friend in the encounter information 125. This prevents the personality parameters from being applied multiple times when the same robot 200 is the other party. Note that any information, not limited to friend registration, may be registered in the encounter information 125 as long as it is possible to determine that personality parameters have been applied in the past.

[0130] The encounter control unit 114 reflects the friend registration information in the encounter information 125 in determining the gestures described above. For example, even if a robot 200 that was previously registered as a friend in the encounter information 125 has not been encountered for some time, the encounter control unit 114 does not decrease the intimacy level of that robot 200.

[0131] When the encounter control unit 114 detects that the other robot 200 is no longer in its vicinity, it determines that the encounter with the other robot 200 has ended. In this case, the encounter control unit 114 updates the date and time of the previous encounter in the encounter information 125 to the current date and time, and terminates the encounter control.

[0132] Furthermore, if two or more robots 200 are simultaneously present in the vicinity of the user, the encounter control unit 114 may establish a BLE connection with each of the two or more robots 200 and execute the above-described process with each of the two or more robots 200 as the other robot 200. In this case, the gesture control unit 113 can cause the user to perform gestures that are alternately coordinated with each of the two or more robots 200, or to perform gestures that are coordinated with all of the two or more robots 200 simultaneously. However, it is also possible to set a restriction so that the user cannot connect to more than an upper limit (for example, three robots) of robots 200 at the same time.

[0133] Next, the flow of the robot control process will be explained with reference to Figure 12. The robot control process shown in Figure 12 is executed by the control unit 110 of the control device 100 when the user turns on the power to the robot 200. The robot control process is an example of a control method for electronic equipment.

[0134] When the robot control process starts, the control unit 110 sets the state parameter 122 (step S101). When the robot 200 is first started (first start by the user after factory shipment), the control unit 110 sets the emotion parameter, personality parameter, and growth days parameter to their initial values ​​(e.g., 0). On the other hand, when starting up for the second time or later, the control unit 110 reads the values ​​of each parameter saved in step S106 of the previous robot control process and sets them to the state parameter 122. However, the emotion parameter may be initialized to 0 each time the power is turned on.

[0135] When the state parameter 122 is set, the control unit 110 communicates with the terminal device 50 and obtains gesture information 121 created in the terminal device 50 based on the user's operation (step S102). If the gesture information 121 is already stored in the storage unit 120, step S102 may be skipped.

[0136] Upon acquiring the gesture information 121, the control unit 110 determines whether or not one of the triggers for the multiple gestures defined in the gesture information 121 has been triggered (step S103).

[0137] If any trigger is met (step S103; YES), the control unit 110 causes the robot 200 to perform the action corresponding to the met trigger (step S104). Details of the action control process in step S104 will be explained with reference to the flowchart in Figure 13. Step S104 is an example of a control step.

[0138] When the gesture control process shown in Figure 13 is started, the control unit 110 updates the state parameter 122 (step S201). Specifically, if the trigger established in step S103 is due to an external stimulus, the control unit 110 derives the amount of emotion change corresponding to that external stimulus. Then, the control unit 110 updates the emotion parameter by adding or subtracting the derived amount of emotion change to the current emotion parameter. Furthermore, during the childhood period, the control unit 110 calculates each personality value of the personality parameter from the amount of emotion change updated in step S108 according to (Equation 1) described above. On the other hand, during the adult period, the control unit 110 calculates each personality value of the personality parameter from the amount of emotion change updated in step S108 and the personality correction value according to (Equation 2) described above.

[0139] When the state parameter 122 is updated, the control unit 110 refers to the gesture information 121 and obtains the gesture control parameters of the gesture corresponding to the trigger that was met (step S202). Specifically, the control unit 110 obtains from the gesture information 121 the combination of actions or sounds that constitute the gesture corresponding to the trigger that was met, the execution start timing of each element, and the action parameters or sound parameters.

[0140] Upon acquiring the gesture control parameters, the control unit 110 corrects the gesture control parameters based on the correction coefficients defined in the coefficient table 124 (step S203). Specifically, the control unit 110 calculates the sum of the correction coefficients corresponding to the state parameter 122 updated in step S201, from among the correction coefficients defined for (1) emotion parameters, (2) personality parameters, (3) battery level, (4) current location, and (5) current time in the coefficient table 124. Then, the control unit 110 corrects the operation parameters, vocalization parameters, and execution start timing based on the calculated sum of correction coefficients.

[0141] After correcting the gesture control parameters, the control unit 110 executes the gesture corresponding to the activated trigger (step S204). Specifically, the control unit 110 drives the drive unit 220 or outputs sound from the speaker 231 according to the gesture control parameters corrected in step S203. With this, the gesture control process shown in Figure 13 is completed.

[0142] Returning to Figure 12, if none of the triggers for the multiple gestures are met in step S103 (step S103; NO), the control unit 110 skips step S104.

[0143] Next, the control unit 110 determines whether or not to terminate the process (step S105). For example, if the operation unit 240 receives a user instruction to turn off the power of the robot 200, the process is terminated. If the process is terminated (step S105; YES), the control unit 110 saves the current state parameter 122 to the non-volatile memory of the storage unit 120 (step S106), and terminates the robot control process shown in Figure 12.

[0144] If the process is not terminated (step S105; NO), the control unit 110 determines whether or not it has encountered another robot 200 (step S107). Specifically, the control unit 110 uses the BLE search function to determine whether or not another robot 200 is present in the vicinity of its own robot.

[0145] If the robot encounters another robot 200 (step S107; YES), the control unit 110 executes an encounter control process (step S108). Details of the encounter control process in step S108 will be explained with reference to Figure 14.

[0146] When the encounter control process shown in Figure 14 is started, the control unit 110 updates the cumulative number of encounters and personality parameters in the encounter information 125 (step S301). Specifically, the control unit 110 obtains the ID of the encountered robot 200, adds 1 to the cumulative number of encounters associated with the obtained ID in the encounter information 125, and updates the personality parameters associated with the obtained ID in the encounter information 125 to the personality parameters of the encountered robot 200.

[0147] Next, the control unit 110 updates the intimacy level in the encounter information 125 based on the time elapsed since the most recent encounter (step S302). Specifically, the control unit 110 decreases the intimacy level if a certain period of time has elapsed since the most recent encounter.

[0148] When the encounter information 125 is updated, the control unit 110 estimates the distance between its own robot and the other robot 200 based on the radio wave strength of the BLE signal received from the other robot 200 (step S303).

[0149] Once the distance is estimated, the control unit 110 instructs the robot to perform a gesture corresponding to the estimated distance and the cumulative number of encounters with the other robot 200 (step S304). For example, if the estimated distance is less than the first distance, the control unit 110 instructs the robot to perform a gesture that simulates a greeting. In this case, the control unit 110 instructs the robot to perform a gesture that simulates a cautious greeting, a normal greeting, or a playful greeting, depending on the cumulative number of encounters. Conversely, if the estimated distance is greater than or equal to the first distance and less than the second distance, the control unit 110 instructs the robot to perform a gesture that simulates searching for the other robot 20.

[0150] Next, the control unit 110 determines whether or not it has detected a user operation by the sensor unit 210 (step S305). If a user operation is detected (step S305; YES), the control unit 110 corrects the intimacy level with the encountered robot 200 (step S306). Specifically, the control unit 110 increases the intimacy level if it detects an operation that pleases the robot, and decreases the intimacy level if it detects an operation that the robot dislikes. After correcting the intimacy level, the control unit 110 returns to step S303.

[0151] If no user operation is detected (step S305; NO), the control unit 110 determines whether the level of intimacy with the encountered robot 200 exceeds a threshold (step S307). If the level of intimacy exceeds the threshold (step S307; YES), the control unit 110 registers the other robot 200 as a friend (step S308).

[0152] When a friend is added, the control unit 110 reflects the personality parameters of the other robot 200 in the personality parameters of the own robot (step S309). For example, the control unit 110 updates the personality parameters of the own robot based on the personality parameters of the other robot 200 by adding each personality value of the other robot 200's personality parameters to each personality value of the own robot's personality parameters.

[0153] In contrast, if the intimacy level does not exceed the threshold (step S307; NO), the control unit 110 skips steps S308 and S309.

[0154] Next, the control unit 110 determines again whether the other robot 200 is nearby (step S310). In other words, the control unit 110 determines whether the encounter with the other robot 200 is continuing.

[0155] If the other robot 200 is nearby (step S310; YES), the control unit 110 returns to step S303. The control unit 110 then repeats the processes from steps S303 to S310 while the encounter with the other robot 200 continues.

[0156] In contrast, if the other robot 200 is not nearby (step S310; NO), the control unit 110 updates the latest encounter date and time in the encounter information 125 to the current date and time (step S311). With this, the encounter control process shown in Figure 14 is completed.

[0157] Returning to Figure 12, if no other robot 200 has been encountered in step 107 (step S107; NO), the control unit 110 skips the encounter control process in step S108.

[0158] Next, the control unit 110 determines whether the date has changed using its clock function (step S109). If the date has not changed (step S109; NO), the process returns to step S103.

[0159] If the date changes (step S109; YES), the control unit 110 updates the state parameter 122 (step S110). Specifically, if the child is in the childhood period (e.g., 50 days after birth), the control unit 110 changes the values ​​of the emotion change amounts DXP, DXM, DYP, and DYM depending on whether the emotion parameter has reached the maximum or minimum value of the emotion map 300. Also, if the child is in the childhood period, the control unit 110 expands both the maximum and minimum values ​​of the emotion map 300 by a predetermined increase (e.g., 2). Conversely, if the child is in the adulthood period, the control unit 110 adjusts the personality correction value.

[0160] When the state parameter 122 is updated, the control unit 110 adds 1 to the growth days (step S111) and returns to step S103. Then, as long as the robot 200 is operating normally, the control unit 110 repeats the process from step S103 to step S111.

[0161] As described above, the robot 200 according to Embodiment 1 performs actions corresponding to its own personality parameters and updates its own personality parameters based on the personality parameters of other robots 200 it encounters. This allows it to be influenced by and influence other robots 200, thereby improving its lifelikeness. Furthermore, as the variations in the robot 200's growth are broadened, its long-term usability can be improved, and improvements in its therapeutic effect, the creation of a sense of attachment, and the promotion of communication between users can be expected.

[0162] Furthermore, when the robot 200 according to Embodiment 1 encounters another robot 200, it performs a gesture corresponding to the number of times it has encountered the other robot 200. In this way, because the robot 200 according to Embodiment 1 performs a gesture corresponding to the number of times it has encountered other robots 200, it can further enhance its lifelike appearance when other robots 200 are present in its vicinity.

[0163] (Embodiment 2) Next, Embodiment 2 will be described. Descriptions of the same configuration and functions as in Embodiment 1 will be omitted as appropriate.

[0164] In Embodiment 1 described above, the robot 200 is equipped with the function of the encounter control unit 114, and the robots 200 directly estimate the distance to each other and determine that an encounter has occurred. In contrast, in Embodiment 2, the terminal device 50 is equipped with the function of the encounter control unit 114. The encounter control unit 114 determines that the robot 200 has encountered the other robot 200 when the terminal device 50 corresponding to the other robot 200 approaches within a predetermined distance D from the terminal device 50 corresponding to the robot 200 itself.

[0165] Figure 15 shows how the robots 200 meet in Embodiment 2. In Embodiment 2, the meeting control unit 114 determines that the first robot 200 and the second robot 200 have met, i.e., are in an approach state, when the first terminal device 50 corresponding to the first robot 200 and the second terminal device 50 corresponding to the second robot 200 approach within a predetermined distance D.

[0166] In other words, in Embodiment 1, the number of encounters (number of approaches) was the number of times another robot 200 approached within a predetermined distance D from the own robot, whereas in Embodiment 2, the number of encounters (number of approaches) is the number of times a terminal device 50 corresponding to another robot 200 approached within a predetermined distance D from the terminal device 50 corresponding to the own robot.

[0167] Here, the first terminal device 50 and the second terminal device 50 are devices for controlling the first robot 200 and the second robot 200, respectively, and have the same configuration and functions in principle. In each of the first terminal device 50 and the second terminal device 50, the encounter control unit 114 executes the encounter control process shown in Figure 14 in Embodiment 1, and updates and manages the encounter information 125 of the corresponding robot 200. The encounter control unit 114 communicates with its own robot 200 via the communication unit 550 and transmits the encounter information 125 updated by the encounter control process to the corresponding robot 200. As a result, the encounter control unit 114 causes the corresponding robot 200 to perform a gesture corresponding to the encounter.

[0168] Thus, in Embodiment 2, even if the robot 200 does not have the functions of the encounter control unit 114, particularly the function of searching its surroundings to determine the presence of other robots 200, it can still perform encounter control with other robots 200, and obtain the same effects as in Embodiment 1.

[0169] (modified version) Although embodiments of the present invention have been described above, these embodiments are merely examples, and the scope of application of the present invention is not limited thereto. In other words, the embodiments of the present invention can be applied in various ways, and all embodiments fall within the scope of the present invention.

[0170] For example, in the above embodiment, the encounter control unit 114 reflected the personality parameters of the encountered robot 200 in the personality parameters of the own robot when the intimacy level exceeded a predetermined threshold due to an update of the intimacy level. However, the encounter control unit 114 may also update the personality parameters of the own robot based on the length of time spent together (time spent in proximity). Here, the time spent together means the time from when the other robot 200 approaches the vicinity of the own robot (within a predetermined distance D) until it is no longer in the vicinity. Specifically, the encounter control unit 114 may add more to the player's sociability parameter the longer the encounter lasts; add a value obtained by multiplying the value of the player robot 200's personality parameter by a large multiplier the longer the encounter lasts; increase the player's personality value among their own personality parameters if there is a personality in the player robot 200's personality parameters that is above a predetermined value the longer the encounter lasts; and strongly reflect the player robot 200's personality parameters in the coefficients that control the ease with which each personality value of the player's personality parameters grows the longer the encounter lasts.

[0171] In the above embodiment, the control device 100 was built into the robot 200, but the control device 100 may be a separate device (for example, a server) rather than being built into the robot 200. If the control device 100 is located outside the robot 200, the control device 100 communicates with the robot 200 via the communication unit 130 to send and receive data to each other and controls the robot 200 as described in the above embodiment.

[0172] In the above embodiment, the exterior 201 was formed in a cylindrical shape from the head 204 to the torso 206, and the robot 200 had a prone position. However, the robot 200 is not limited to mimicking a creature with a prone position. For example, the robot 200 may have limbs and mimic a quadrupedal or bipedal creature.

[0173] Furthermore, the electronic device is not limited to the robot 200 that mimics a living creature. For example, the electronic device could be a wristwatch or any other device capable of expressing individuality by performing various gestures. Even electronic devices other than the robot 200 can be described in the same way as the above embodiment if they have the same configuration and functions as the robot 200 described above.

[0174] In the above embodiment, the control unit 110 functioned as a gesture control unit 113 and other parts by having the CPU execute a program stored in ROM. However, in the present invention, the control units 110 and 510 may be equipped with dedicated hardware such as an ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or various control circuits instead of a CPU, and the dedicated hardware may function as a gesture control unit 113 and other parts. In this case, each function of each part may be realized by separate hardware, or the functions of each part may be realized together by a single piece of hardware. Furthermore, some of the functions of each part may be realized by dedicated hardware, and other parts may be realized by software or firmware.

[0175] Furthermore, while it is possible to provide a robot 200 or terminal device 50 pre-equipped with the configuration necessary to realize the functions according to the present invention, it is also possible to make existing information processing devices, etc., function as the robot 200 or terminal device 50 according to the present invention by applying a program. That is, by applying a program to realize each functional configuration of the robot 200 or terminal device 50 as exemplified in the above embodiment so that it can be executed by a CPU, etc. that controls an existing information processing device, etc., it can be made to function as the robot 200 or terminal device 50 according to the present invention.

[0176] Furthermore, the method of applying such a program is arbitrary. The program can be stored and applied on a computer-readable storage medium such as a flexible disk, CD (Compact Disc)-ROM, DVD (Digital Versatile Disc)-ROM, or memory card. In addition, the program can be superimposed on a carrier wave and applied via a communication medium such as the Internet. For example, the program may be posted and distributed on a bulletin board system (BBS) on a communication network. The program can then be launched and executed under the control of the OS (Operating System), similar to other application programs, to perform the aforementioned processing.

[0177] Although preferred embodiments of the present invention have been described above, the present invention is not limited to the embodiments described above, and various modifications and substitutions can be made to the embodiments described above without departing from the scope of the claims. [Explanation of Symbols]

[0178] 1...Robot system, 50...Terminal device, 100...Control device, 110...Control unit, 112...State parameter acquisition unit, 113...Gesture control unit, 114...Encounter control unit, 120...Memory unit, 121...Gesture information, 122...State parameters, 124...Coefficient table, 125...Encounter information, 130...Communication unit, 200...Robot, 201...Exterior, 202...Decorative parts, 203...Hair, 204...Head, 205...Connecting unit, 206...Body unit, 207...Housing, 210...Sensor unit, 211...Touch sensor, 212...Accelerometer, 213...Microphone, 214...Illuminance sensor, 215...Gyro sensor, 220...Drive unit, 221...Twist motor, 222...Up / down motor, 230...Output unit, 231... Speaker, 240...Operation Unit, 250...Battery, 260...Location Information Acquisition Unit, 300...Emotion Map, 301~303...Frame, 400...Personality Value Radar Chart, 510...Control Unit, 520...Memory Unit, 530...Operation Unit, 540...Display Unit, 550...Communication Unit, BL...Bus Line

Claims

1. When the self-operated unit is in a proximity state, which is when it is within a predetermined distance of another device of the same type as the self-operated unit, or when a terminal device corresponding to the other device is within the predetermined distance of a terminal device corresponding to the self-operated unit, a control means updates the character parameters representing the pseudo-character of the self-operated unit based on the character parameters representing the pseudo-character of the other device. Equipped with, The control means is When updating the characteristic parameters of the own machine without relying on the characteristic parameters of the other machine, the characteristic parameters of the own machine are updated to parameters within a predetermined limit range. When updating the characteristic parameters of the self-operated device based on the characteristic parameters of the other device, the characteristic parameters of the self-operated device are updated to parameters outside the restricted range. An electronic device characterized by the following features.

2. The control means is The player character is instructed to perform actions corresponding to the player character's personality parameters. When the aforementioned proximity state occurs, the operator causes the operator to perform a gesture corresponding to the number of times the operator has entered the proximity state with the other device. The electronic device according to feature 1.

3. The control means is Based on the number of approaches, the intimacy level between the user and the other device is set. If the aforementioned intimacy level exceeds a threshold, the personality parameters of the own device are updated based on the personality parameters of the other device. The electronic device according to feature 2.

4. When the proximity state is reached and an external stimulus is detected to the self by a predetermined detection means, the control means corrects the intimacy level based on the external stimulus. The electronic device according to feature 3.

5. A method for controlling an electronic device, When the electronic device is in a proximity state, which is when it is within a predetermined distance of another device of the same type as the electronic device, or when a terminal device corresponding to the other device is within a predetermined distance of a terminal device corresponding to the electronic device, the character parameters representing the pseudo-character of the electronic device are updated based on the character parameters representing the pseudo-character of the other device. When updating the characteristic parameters of the electronic device without relying on the characteristic parameters of the other devices, the characteristic parameters of the electronic device are updated to parameters within a predetermined limit range. When updating the characteristic parameters of the electronic device based on the characteristic parameters of the other device, the characteristic parameters of the electronic device are updated to parameters outside the restricted range. A method for controlling electronic equipment characterized by the following features.

6. A computer of an electronic device, When the electronic device is in a proximity state, which is when it is within a predetermined distance of another device of the same type as the electronic device, or when a terminal device corresponding to the other device is within a predetermined distance of a terminal device corresponding to the electronic device, a control means updates the character parameters representing the pseudo-character of the electronic device based on the character parameters representing the pseudo-character of the other device. To make it function as, When the control means updates the characteristic parameters of the electronic device without relying on the characteristic parameters of the other device, it updates the characteristic parameters of the electronic device to parameters within a predetermined limit range. When updating the characteristic parameters of the electronic device based on the characteristic parameters of the other device, the characteristic parameters of the electronic device are updated to parameters outside the restricted range. A program characterized by the following features.

Citation Information

Patent Citations

  • Robot device and character determining method of robot device

    JP2001157983A

  • Robot device and control method for robot device

    JP2001212782A

  • Robot

    JP2003285286A

  • Robot device and interactive method for robot device

    JP2004090109A

  • Robot device and control method for it

    JP2007320032A