Robot, control method of robot, and computer program product

By introducing connection, drive and sound output parts into the robot, combining emotional and personality parameters, dynamic adjustment of movement and sound is achieved, solving the problem of difficult to truly simulate biological personality in the existing technology, and improving the authenticity and reality of simulated biologicals and Expressiveness.

CN119260753APending Publication Date: 2025-01-07CASIO COMPUTER CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202410878212.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-07-06
Filing Date
2024-07-01
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

Existing robots find it difficult to truly simulate the personality differences of organisms, especially by considering the personality differences caused by congenital factors such as genetics, and it is impossible to achieve more realistic biological simulations.

Method used

A robot is designed, including a linking unit, a driving unit and a sound output unit. By detecting a predetermined triggering situation, it performs the first action with the change of action content with the virtual growth and the second action with the difference in personality, combining the emotional map and personality. Radar diagram, dynamically adjusting the robot's behavior and sound output.

Benefits of technology

It realizes that robots can truly simulate the growth and personality differences of organisms, provide richer emotional and behavioral performance, and enhance the authenticity of organisms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119260753A_ABST
    Figure CN119260753A_ABST
Patent Text Reader

Abstract

The invention provides a robot, a control method of the robot, and a computer program product. The robot operates autonomously, and is provided with: a connection unit that connects a first site and a second site; a drive unit that drives the coupling unit; a sound output unit that outputs sound; and a control unit that controls the driving unit or the sound output unit such that the sound output unit outputs sound when a predetermined trigger is detected. The robot executes a first operation that is set so that the operation content changes in accordance with the virtual growth of the robot, and a second operation that is set so that the operation content does not change in accordance with the virtual growth and is set so that the operation content varies in accordance with the personality difference of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a robot, a method for controlling the robot, and a computer program product. Background Art

[0002] Robots that simulate living things such as pets are known. For example, Japanese Patent Application Laid-Open No. 2003-285286 discloses a robot device that can make a user feel virtual growth by executing a script corresponding to the value of a growth parameter.

[0003] The robot disclosed in Japanese Patent Application Laid-Open No. 2003-285286 can realistically simulate the growth of a living being by making a script corresponding to the value of a growth parameter perform an action. However, in addition to changing actions in various ways according to growth, actual living beings also have individual characteristics due to innate factors such as genetics. It is sought to simulate living beings more realistically by taking such individual characteristics into consideration. Summary of the invention

[0004] The present disclosure is intended to solve the above-mentioned problems, and its object is to provide a robot that can realistically simulate a living being, a method for controlling the robot, and a computer program product.

[0005] A robot according to an embodiment of the present disclosure performs actions autonomously, and the robot comprises: a connecting portion connecting a first part and a second part; a driving portion driving the connecting portion; a sound output portion outputting a sound; and a control portion controlling the driving portion or the sound output portion so that, when a predetermined trigger is detected, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the personality of the robot.

[0006] A robot control method according to an embodiment of the present disclosure is a robot control method having a connecting portion connecting a first portion and a second portion, a driving portion driving the connecting portion, and a sound output portion outputting a sound, the robot control method comprising: a detection step of detecting a predetermined trigger; and a control step of controlling the driving portion or the sound output portion so that when the predetermined trigger is detected by the detection step, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the difference in the personality of the robot.

[0007] A computer program product according to an embodiment of the present disclosure enables a computer of a robot having a connection portion connecting a first part and a second part, a drive portion driving the connection portion, and a sound output portion outputting a sound to function as: a detection unit that detects a predetermined trigger; and a control unit that controls the drive portion or the sound output portion so that, when the predetermined trigger is detected, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the difference in the personality of the robot.

[0008] -Effects of the Invention-

[0009] According to the present disclosure, it is possible to provide a robot that can realistically simulate a living being, a method for controlling the robot, and a computer program product. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] Figure 1 It is a diagram showing the appearance of a robot according to the embodiment.

[0011] Figure 2 This is a cross-sectional view of the robot according to the embodiment as seen from the side.

[0012] Figure 3 It is a diagram showing a housing of a robot according to an embodiment.

[0013] Figure 4 FIG. 1 is a first diagram showing the behavior of a torsion motor of the robot according to the embodiment.

[0014] Figure 5 FIG. 2 is a second diagram showing the behavior of the torsion motor of the robot according to the embodiment.

[0015] Figure 6 FIG. 1 is a first diagram showing the movement of the up-and-down motor of the robot according to the embodiment.

[0016] Figure 7 FIG. 2 is a second diagram showing the movement of the up-and-down motor of the robot according to the embodiment.

[0017] Figure 8 This is a block diagram showing the structure of a robot according to an embodiment.

[0018] Fig. 9 It is a diagram showing an example of a mood map according to an embodiment.

[0019] Fig.10 This is a diagram showing an example of a character value radar chart according to the embodiment.

[0020] Fig.11 It is a diagram showing an example of a growth table according to the embodiment.

[0021] Fig.12 It is a diagram showing an example of an action content table according to the embodiment.

[0022] Fig.13 It is a diagram showing an example of a motion table according to the embodiment.

[0023] Fig.14 It is a diagram showing an example of a personality table according to the embodiment.

[0024] Fig.15 This is a diagram showing the difference in time periods of actions performed by the robot according to the embodiment.

[0025] Fig.16 This is a flowchart showing the flow of robot control processing according to the embodiment.

[0026] Fig.17 This is a flowchart showing the flow of the motion control process according to the embodiment. DETAILED DESCRIPTION

[0027] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. In addition, the same reference numerals are given to the same or corresponding parts in the drawings.

[0028] exist Figures 1 to 3 , the appearance of the robot 200 according to the present embodiment is shown. The robot 200 is a device that operates autonomously without depending on direct operation by a user. Figure 1 As shown, the robot 200 is a pet robot imitating a small animal. The robot 200 has an outer cover 201, and the outer cover 201 has a decorative part 202 imitating eyes and thick hair 203.

[0029] like Figure 2 as well as Figure 3 As shown, the robot 200 includes a housing 207. The housing 207 is covered by the exterior 201 and is housed inside the exterior 201. The housing 207 includes a head 204 as a first part, a connection part 205, and a trunk 206 as a second part. The connection part 205 connects the head 204 and the trunk 206.

[0030] The outer casing 201 is an example of an outer casing member, and is formed in a bag-like shape that is long in the front-rear direction and can accommodate the housing 207. The outer casing 201 is formed in a cylindrical shape from the head 204 to the trunk 206, and integrally covers the trunk 206 and the head 204. The robot 200 is formed in a prone position by the outer casing 201 having such a shape.

[0031] In order to simulate the touch of the skin of a small animal, the outer cover 201 is made of artificial fleece fabric that imitates the fur 203 of a small animal. The lining of the outer cover 201 is made of synthetic fiber, natural fiber, natural leather, artificial leather, a sheet made of synthetic resin, a sheet made of rubber, etc. Since the outer cover 201 is made of such a flexible raw material, it can follow the movement of the housing 207. Specifically, the outer cover 201 follows the rotation of the head 204 relative to the trunk 206.

[0032] In order to make the outer garment 201 follow the movement of the housing 207, the outer garment 201 is attached to the housing 207 by means of snaps (not shown). Specifically, at least one snap is provided in front of the head 204, and at least one snap is provided in the rear of the trunk 206. In addition, snaps that fit with the snaps provided on the head 204 and the trunk 206 are also provided at corresponding positions of the outer garment 201, and the outer garment 201 is fastened and attached to the housing 207 by the snaps. In addition, the number and position of the snaps are just examples and can be changed arbitrarily.

[0033] The trunk 206 extends in the front-to-back direction and contacts the ground, workbench or other mounting surface on which the robot 200 is placed via the outer cover 201. The trunk 206 has a torsion motor 221 at its front end. The head 204 is connected to the front end of the trunk 206 via the connecting portion 205. The connecting portion 205 has an up-and-down motor 222. Figure 2 In the embodiment, the twist motor 221 is provided in the trunk 206, but may be provided in the connection part 205. The head 204 is connected to the trunk 206 so as to be rotatable about the left-right direction and the front-back direction of the robot 200 by the twist motor 221 and the up-down motor 222.

[0034] In addition, as XYZ coordinate axes, an X-axis and a Y-axis are set in the horizontal plane, and a Z-axis is set in the vertical direction. The + direction of the Z-axis is equivalent to the vertical upward direction. And, in order to facilitate the description below, the robot 200 is placed on the loading surface in an orientation in which the left-right direction (width direction) of the robot 200 becomes the X-axis direction and the front-back direction of the robot 200 becomes the Y-axis direction.

[0035] The connecting portion 205 connects the trunk portion 206 and the head portion 204 so as to be freely rotatable about a first rotation axis that passes through the connecting portion 205 and extends in the front-rear direction (Y direction) of the trunk portion 206. Figure 4 as well as Figure 5 As shown, the twist motor 221 rotates the head 204 clockwise (right) within a forward rotation angle range (forward rotation) or counterclockwise (left) within a reverse rotation angle range (reverse rotation) relative to the trunk 206 about the first rotation axis.

[0036] In addition, the clockwise direction in this description refers to the clockwise direction when viewed from the trunk 206 toward the head 204. In addition, the clockwise rotation is also referred to as "rightward twisting rotation", and the counterclockwise rotation is referred to as "leftward twisting rotation". The maximum value of the rightward or leftward twisting rotation angle is arbitrary. Figure 4 as well as Figure 5 In the figure, the angle of the head 204 when the head 204 is neither twisted to the right nor to the left (hereinafter referred to as the "twist reference angle") is represented by 0. In addition, the angle when the head 204 is twisted to the leftmost (counterclockwise) is represented by -100, and the angle when the head 204 is twisted to the rightmost (clockwise) is represented by +100.

[0037] In addition, the connecting portion 205 connects the trunk portion 206 and the head portion 204 so as to be freely rotatable about a second rotation axis that passes through the connecting portion 205 and extends in the left-right direction (width direction, X direction) of the trunk portion 206. Figure 6 as well as Figure 7 As shown, the up-and-down motor 222 rotates the head 204 upward within the forward rotation angle range (forward rotation) or rotates it downward within the reverse rotation angle range (reverse rotation) about the second rotation axis.

[0038] The maximum value of the upward or downward rotation angle is arbitrary, but Figure 6 as well as Figure 7 0 represents the angle of the head 204 when the head 204 is neither rotated upward nor downward (hereinafter referred to as the "up and down reference angle"), -100 represents the angle when rotated to the lowest position, and +100 represents the angle when rotated to the highest position.

[0039] like Figure 2 as well as Figure 3 As shown, the robot 200 includes touch sensors 211 in the head 204 and the trunk 206. The robot 200 can detect through the touch sensors 211 that the user touches or pats the head 204 or the trunk 206.

[0040] The robot 200 has an acceleration sensor 212, a microphone 213, a gyro sensor 214, an illumination sensor 215, and a speaker 231 in the trunk 206. The robot 200 can detect changes in the posture of the robot 200 itself through the acceleration sensor 212 and the gyro sensor 214, and can also detect that the robot 200 is lifted, changed in direction, or thrown by the user. The robot 200 can detect the illumination around the robot 200 through the illumination sensor 215. The robot 200 can detect external sounds through the microphone 213. The robot 200 can make a sound through the speaker 231.

[0041] In addition, at least a part of the acceleration sensor 212 , the microphone 213 , the gyro sensor 214 , the illuminance sensor 215 , and the speaker 231 is not limited to the trunk 206 , and may be provided in the head 204 , or in both the trunk 206 and the head 204 .

[0042] Next, refer to Figure 8 The functional structure of the robot 200 is described below. Figure 8 As shown, the robot 200 includes a control device 100, a sensor unit 210, a drive unit 220, an output unit 230, and an operation unit 240. As an example, these units are connected via a bus BL. In addition, a wired interface such as a USB (Universal Serial Bus) cable or a wireless interface such as Bluetooth (registered trademark) may be used instead of the bus BL.

[0043] The control device 100 includes a control unit 110 and a storage unit 120 . The control device 100 controls the operation of the robot 200 through the control unit 110 and the storage unit 120 .

[0044] The control unit 110 includes a CPU (Central Processing Unit). The CPU is a central processing unit such as a microprocessor that performs various processes and calculations. In the control unit 110, the CPU reads the control program stored in the ROM, uses the RAM as a working memory, and controls the overall action of the robot 200 as its own device. In addition, although not shown in the figure, the control unit 110 includes a clock function, a timer function, etc., and can count the date and time. The control unit 110 can also be called a "processor".

[0045] The storage unit 120 includes a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc. The storage unit 120 includes an OS (Operating System) and application programs, and the control unit 110 stores programs and data used to perform various processes. In addition, the storage unit 120 stores data generated or acquired by the control unit 110 performing various processes.

[0046] The sensor unit 210 includes the aforementioned touch sensor 211, acceleration sensor 212, gyro sensor 214, illumination sensor 215, and microphone 213. The control unit 110 obtains the detection values ​​detected by the various sensors included in the sensor unit 210 via the bus BL as external stimuli. In addition, the sensor unit 210 may also include sensors other than the touch sensor 211, acceleration sensor 212, gyro sensor 214, 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 obtain can be increased.

[0047] The touch sensor 211 includes, for example, a pressure sensor or an electrostatic capacitance sensor, and detects contact with an object. The control unit 110 can detect, based on the detection value of the touch sensor 211 , that the robot 200 is being touched or tapped by a user.

[0048] The acceleration sensor 212 detects acceleration applied to the trunk 206 of the robot 200. The acceleration sensor 212 detects acceleration in each of the X-axis direction, the Y-axis direction, and the Z-axis direction, that is, three-axis acceleration.

[0049] For example, the acceleration sensor 212 detects gravity acceleration when the robot 200 is stationary. The control unit 110 can detect the current posture of the robot 200 based on the gravity acceleration detected by the acceleration sensor 212. In other words, the control unit 110 can detect whether the housing 207 of the robot 200 is tilted from the horizontal direction based on the gravity acceleration detected by the acceleration sensor 212. In this way, the acceleration sensor 212 functions as an inclination detection unit that detects the inclination of the robot 200.

[0050] When the user lifts or throws the robot 200, the acceleration sensor 212 detects acceleration due to the movement of the robot 200 in addition to the gravitational acceleration. Therefore, the control unit 110 can detect the movement of the robot 200 by removing the gravitational acceleration component from the detection value detected by the acceleration sensor 212.

[0051] The gyro sensor 214 detects the angular velocity when rotation is applied to the trunk 206 of the robot 200. Specifically, the gyro sensor detects the angular velocity of three-axis rotations, namely, rotation about the X-axis direction, rotation about the Y-axis direction, and rotation about the Z-axis direction. By combining the detection value detected by the acceleration sensor 212 and the detection value detected by the gyro sensor 214, the movement of the robot 200 can be detected with higher accuracy.

[0052] Furthermore, the touch sensor 211 , the acceleration sensor 212 , and the gyro sensor 214 detect the intensity, acceleration, and angular velocity of contact at synchronized timing (for example, every 0.25 seconds), and output the detection values ​​to the control unit 110 .

[0053] The microphone 213 detects sounds around the robot 200. The control unit 110 can detect, based on the components of the sounds detected by the microphone 213, that the user is calling the robot 200 or clapping.

[0054] The illuminance sensor 215 detects the illuminance around the robot 200. The control unit 110 can detect whether the surroundings of the robot 200 have become brighter or darker based on the illuminance detected by the illuminance sensor 215.

[0055] The driving unit 220 includes a twist motor 221 and an up-and-down motor 222, and is 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) relative to the trunk 206 with the front-and-back direction as an axis. The up-and-down motor 222 is a servo motor for rotating the head 204 in the up-and-down direction (height direction) relative to the trunk 206 with the left-and-right direction as an axis. The robot 200 can perform an action of twisting the head 204 in the lateral direction by the twist motor 221, and can perform an action of raising and lowering the head 204 by the up-and-down motor 222.

[0056] The output unit 230 includes a speaker 231, and the control unit 110 inputs sound data to the output unit 230, and the sound is output from the speaker 231. For example, the control unit 110 inputs the data of the robot 200's shout to the output unit 230, so that the robot 200 makes a virtual shout.

[0057] In addition, the output unit 230 may include a display such as a liquid crystal display or a light emitting unit such as an LED (Light Emitting Diode) instead of or in addition to the speaker 231, so as to display emotions such as joy and sadness on the display or to express emotions such as joy and sadness by using the color and brightness of the emitted light.

[0058] The operation unit 240 includes operation buttons, a volume knob, etc. The operation unit 240 is an interface for receiving user operations such as turning on and off the power supply and adjusting the volume of the output sound.

[0059] Next, the functional structure of the control unit 110 is described. Figure 8As shown, the control unit 110 functionally includes an external stimulus acquisition unit 111 as an example of an external stimulus acquisition unit, a parameter setting unit 113 as an example of a parameter setting unit, and an action control unit 115 as an example of an action control unit. In the control unit 110, the CPU reads a program stored in the ROM into the RAM, executes the program, and controls, thereby functioning as each of these units.

[0060] The storage unit 120 also stores parameter data 121 , a growth table 123 , an action content table 124 , a movement table 125 , a personality table 127 , and a personality ID 128 .

[0061] The external stimulus acquisition unit 111 acquires external stimuli. External stimuli are stimuli that act on the robot 200 from outside the robot 200. Examples of external stimuli include "making a loud sound", "being spoken to", "being touched", "being lifted up", "being turned upside down", "becoming brighter", "becoming darker", etc. External stimuli are also referred to as "events" hereinafter.

[0062] The external stimulus acquisition unit 111 acquires external stimulus based on the detection value obtained by the sensor unit 210. More specifically, the external stimulus acquisition unit 111 acquires multiple external stimuli of different types through multiple sensors (touch sensor 211, acceleration sensor 212, microphone 213, gyro sensor 214, illuminance sensor 215) provided by the sensor unit 210.

[0063] For example, the external stimulus acquisition unit 111 acquires external stimuli such as “a loud sound is emitted” or “a person is spoken to” through the microphone 213. The external stimulus acquisition unit 111 acquires external stimuli such as “being touched” through the touch sensor 212. The external stimulus acquisition unit 111 acquires external stimuli such as “being lifted” or “being turned upside down” through the acceleration sensor 212 and the gyro sensor 214. The external stimulus acquisition unit 111 acquires external stimuli such as “becoming brighter” or “becoming darker” through the illumination sensor 215.

[0064] The parameter setting unit 113 sets the parameter data 121. The parameter data 121 is data for specifying various parameters related to the robot 200. Specifically, the parameter data 121 includes: (1) growth days, (2) emotion parameters, (3) emotion change amount, (4) personality parameters, and (5) growth parameters.

[0065] (1) Growth Days

[0066] The growth days are the virtual growth days of the robot 200, indicating the growth status in age. The robot 200 is virtually born at the first startup by the user after leaving the factory, and grows from a child to an adult over a given growth period. The growth days are equivalent to the number of days from the virtual birth of the robot 200.

[0067] The initial value of the number of days of growth is 1, and the parameter setting unit 113 increases the number of days of growth by 1 every time one day passes. The growth period of the robot 200 from a child to an adult is, for example, 50 days, and the period of 50 days of growth from the virtual birth is called the "first period (child period)". When the first period passes, the virtual growth of the robot 200 is completed. The period after the first period is called the "second period (adult period)".

[0068] (2) Emotional parameters

[0069] The parameter setting unit 113 sets the emotion parameter. The emotion parameter is a parameter that indicates a virtual emotion in the robot 200. The emotion parameter is expressed by the coordinates (X, Y) on the emotion map 300.

[0070] like Fig. 9 As shown, the emotion map 300 is represented by a two-dimensional coordinate system having an axis of peace of mind (uneasiness) as the X axis and an axis of excitement (lethargy) as the Y axis. The origin (0, 0) on the emotion map represents the emotion at normal times. A positive value of the X coordinate (X value) indicates a higher level of peace of mind as its absolute value increases, and a negative value indicates a higher level of anxiety as its absolute value increases. A positive value of the Y coordinate (Y value) indicates a higher level of excitement as its absolute value increases, and a negative value indicates a higher level of lethargy as its absolute value increases.

[0071] The emotion parameter represents multiple (four in this embodiment) virtual emotions that are different from each other. Fig. 9 In the value representing the virtual emotion, one axis (X axis) represents the degree of peace of mind and the degree of anxiety, and the other axis (Y axis) represents the degree of excitement and the degree of lethargy. Therefore, the emotion parameter has two values, X value (degree of peace of mind, degree of anxiety) and Y value (degree of excitement, degree of lethargy), and the point on the emotion map 300 represented by the X value and the Y value represents the virtual emotion of the robot 200. The initial value of the emotion parameter is (0, 0).

[0072] In addition, Fig. 9In the example, the emotion map 300 is represented by a two-dimensional coordinate system, but the number of dimensions of the emotion map 300 is arbitrary. The emotion map 300 may be defined by one dimension, and one value may be set as an emotion parameter. In addition, the emotion map 300 may be defined by a coordinate system of three or more dimensions by adding other axes, and the value of the number of dimensions of the emotion map 300 may be set as an emotion parameter.

[0073] Regarding the initial value of the size of the emotion map 300, Fig. 9 As shown in the frame 301 of , the maximum values ​​of the X value and the Y value are both 100, and the minimum values ​​are both -100. During the first period (e.g., 50 days) which is the growth period of the robot 200, whenever the number of virtual growth days of the robot 200 increases by 1 day, the parameter setting unit 113 increases the maximum value and the minimum value of the emotion map 300 by 2.

[0074] When the number of growth days has passed half of the first period (for example, 25 days), if Fig. 9 As shown in the frame 302, the maximum values ​​of the X value and the Y value are both 150, and the minimum values ​​are both -150. And, when the first period (e.g., 50 days) has passed, the virtual growth of the robot 200 stops. At this time, Fig. 9 As shown in the frame 303, the maximum values ​​of the X value and the Y value are both 200, and the minimum values ​​are both -200. After that, the size of the emotion map 300 is fixed.

[0075] The settable range of the emotion parameter is determined by the emotion map 300. Therefore, as the size of the emotion map 300 increases, the range of the settable emotion parameter increases. Since the settable range of the emotion parameter increases, richer emotion expressions can be performed, and thus the virtual growth of the robot 200 is expressed by the expansion of the size of the emotion map 300.

[0076] In addition, the stop condition of the virtual growth of the robot 200 is not limited to "after the first period has passed", and other conditions may be added. For example, the stop condition of growth may be set to "when any one of the four personality values ​​reaches the maximum value (e.g., 10)". When growth is stopped under this condition, the personality is fixed at the time point when only one of the four personalities reaches the maximum value, so a specific personality can be more strongly expressed.

[0077] (3) Emotional changes

[0078] The emotion change amount is data indicating the degree of change of the virtual emotion of the robot 200, and determines the change amount by which the X value and Y value of the emotion parameter are increased or decreased. The emotion change amount is represented by the following four variables. DXP and DXM increase and decrease the X value of the emotion parameter, respectively. DYP and DYM increase and decrease the Y value of the emotion parameter, respectively.

[0079] DXP: ease of feeling at ease (the ease with which the X value in the emotion map changes in the positive direction)

[0080] DXM: Ease of becoming anxious (ease of changing the X value in the mood map to a negative direction)

[0081] DYP: Degree of excitement (the ease of change of the Y value in the emotion map in the positive direction)

[0082] DYM: Desire to become listless (the ease with which the Y value in the mood map changes to a negative direction)

[0083] The initial value of each of these emotion change amounts DXP, DXM, DYP, and DYM is 10, and is updated by learning described below. The parameter setting unit 113 updates the emotion parameter by adding or subtracting a value corresponding to the external stimulus among the emotion change amounts DXP, DXM, DYP, and DYM from the current emotion parameter.

[0084] For example, when the head 204 is stroked, the virtual emotion of the robot 200 is relieved, so the parameter setting unit 113 adds DXP to the X value of the emotion parameter. On the contrary, when the head 204 is patted, the virtual emotion of the robot 200 is uneasy, so the parameter setting unit 113 subtracts DXM from the X value of the emotion parameter. It is possible to arbitrarily set what kind of emotion change amount is established in correspondence with various external stimuli. An example is shown below.

[0085] The head 204 is touched (reassurance): X = X + DXP

[0086] Head 204 is slapped (becomes restless): X = X-DXM

[0087] (These external stimuli can be detected by the touch sensor 211 of the head 204)

[0088] The trunk 206 is touched (excited): Y = Y + DYP

[0089] The trunk 206 is slapped (becomes listless): Y = Y-DYM

[0090] (These external stimuli can be detected by the touch sensor 211 of the torso 206)

[0091] Holding head up (joy): X = X + DXP and Y = Y + DYP

[0092] Hanging upside down (sad): X = X-DXM and Y = Y-DYM

[0093] (These external stimuli can be detected by the touch sensor 211 and the acceleration sensor 212)

[0094] Called with a gentle voice (becomes calm): X=X+DXP and Y=Y-DYM

[0095] Screaming with a loud voice (anxiety): X = X-DXM and Y = Y+DYP

[0096] (These external stimuli can be detected by microphone 213)

[0097] The external stimulus acquisition unit 111 acquires a plurality of external stimuli of different types through the plurality of sensors provided in the sensor unit 210. Therefore, the parameter setting unit 113 derives various emotion change amounts from the plurality of external stimuli, and sets the emotion parameter according to the derived emotion change amounts.

[0098] The maximum and minimum values ​​of the X and Y values ​​of the emotion parameter are determined according to the size of the emotion map 300. Therefore, the maximum value is set when the value exceeds the maximum value of the emotion map 300, and the minimum value is set when the value falls below the minimum value of the emotion map 300.

[0099] The parameter setting unit 113 updates the variables of the emotion change amounts DXP, DXM, DYP, and DYM according to the external stimulus acquired by the external stimulus acquisition unit 111. Specifically, if the X value of the emotion parameter is set to the maximum value of the emotion map 300 only once in a day, the parameter setting unit 113 increases DXP by 1, and if the Y value of the emotion parameter is set to the maximum value of the emotion map 300 only once in a day, the parameter setting unit 113 increases DYP by 1. In addition, if the X value of the emotion parameter is set to the minimum value of the emotion map 300 only once in a day, the parameter setting unit 113 increases DXM by 1, and if the Y value of the emotion parameter is set to the minimum value of the emotion map 300 only once in a day, the parameter setting unit 113 increases DYM by 1.

[0100] In this way, the parameter setting unit 113 changes the amount of emotion change based on whether the value of the emotion parameter reaches the maximum value or the minimum value of the emotion map 300 (the first condition based on the external stimulus). Such updating of each variable is called learning of the amount of emotion change. As an example, the initial value of each variable of the amount of emotion change is set to 10. The parameter setting unit 113 increases each variable to a maximum of 20 through the above-mentioned updating (learning). Through this learning process, the amount of emotion change, that is, the degree of change of the emotion, changes.

[0101] For example, when only the head 204 is stroked many times, only the emotion change amount DXP increases, and other emotion change amounts do not change, so the robot 200 becomes a personality that is easy to feel at ease. In addition, when only the head 204 is patted many times, only the emotion change amount DXM increases, and other emotion change amounts do not change, so the robot 200 becomes a personality that is easy to become uneasy. In this way, the parameter setting unit 113 changes the emotion change amount according to various external stimuli. In other words, the parameters for determining the virtual personality are updated according to the detected external stimuli.

[0102] In addition, the value added to each variable of the emotion change amount is not limited to 1. For example, the number of times each value of the emotion parameter is set to the maximum value or the minimum value of the emotion map 300 may be counted, and when the number is large, the value added to the emotion change amount is increased. In addition, the conditions for learning the emotion change amount are not limited to the above. For example, if the X value and Y value of the emotion parameter reach a given value (for example, a value 0.5 times the maximum value and a value 0.5 times the minimum value of the emotion map 300) only once, the emotion change amount is learned. In addition, the period is not limited to the period of 1 day, but may be another period such as half a day or 1 week, if the X value and Y value of the emotion parameter reach a given value only once, the emotion change amount is learned. In addition, instead of a constant period such as 1 day, the emotion change amount may be learned if the X value and Y value of the emotion parameter reach a given value only once during a period until the number of acquisitions of external stimuli reaches a given number of times (for example, 50 times).

[0103] (4) Personality parameters

[0104] The personality parameter is a parameter indicating the virtual personality of the robot 200. The personality parameter includes a plurality of personality values ​​indicating the degree of each of the different personalities. The parameter setting unit 113 changes the plurality of personality values ​​included in the personality parameter according to the external stimulus acquired by the external stimulus acquisition unit 111.

[0105] Specifically, the parameter setting unit 113 calculates four personality values ​​according to the following (Mathematical Formula 1). That is, the value obtained by subtracting 10 from DXP indicating ease of feeling at ease is set as the personality value (cheerful), the value obtained by subtracting 10 from DXM indicating ease of becoming uneasy is set as the personality value (shy), the value obtained by subtracting 10 from DYP indicating ease of becoming excited is set as the personality value (active), and the value obtained by subtracting 10 from DYM indicating ease of becoming listless is set as the personality value (coquettish).

[0106] Personality value (cheerful) = DXP-10

[0107] Personality value (shy) = DXM-10

[0108] Character value (active) = DYP-10

[0109] Personality value (love to act like a spoiled brat) = DYM-10

[0110] …(Mathematical formula 1)

[0111] Therefore, if Fig.10 As shown, 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 (coquettish) on the fourth axis, it is possible to generate a personality value radar chart 400. Since the initial value of each variable of the emotion change amount is 10 and increases to 20 at the maximum, the range of the personality value is greater than 0 and less than 10.

[0112] Since the initial value of each personality value is 0, the personality of the robot 200 at birth is represented by the origin of the personality value radar graph 400. As the robot 200 grows, the four personality values ​​change with an upper limit of 10 according to external stimuli detected by the sensor unit 210 (how the user interacts with the robot 200). Thus, 11 to the fourth power = 14641 types of personality can be expressed.

[0113] In this way, the robot 200 has various personalities according to the user's interaction method with the robot 200. In other words, the personality of the robot 200 is formed differently according to the user's interaction method.

[0114] When the first period has passed and the virtual growth of the robot 200 is completed, the four personality values ​​are fixed. In order to correct the personality according to the user's interaction with the robot 200 in the subsequent second period, the parameter setting unit 113 adjusts the four personality correction values ​​(cheerfulness correction value, activeness correction value, shyness correction value, and coquettishness correction value).

[0115] The parameter setting unit 113 adjusts the four personality correction values ​​based on the condition (the second condition based on the external stimulus data) based on where the emotion parameter exists the longest on the emotion map 300. Specifically, the four personality correction values ​​are adjusted as follows (A) to (E).

[0116] (A) If the longest existing area is the reassuring area on the emotion map 300 , the parameter setting unit 113 adds 1 to the cheerfulness correction value and subtracts 1 from the shyness correction value.

[0117] (B) If the longest existing region is the excitement region on the emotion map 300 , the parameter setting unit 113 adds 1 to the activity correction value and subtracts 1 from the coquettishness correction value.

[0118] (C) If the longest existing area is the anxious area on the emotion map 300 , the parameter setting unit 113 adds 1 to the shyness correction value and subtracts 1 from the cheerfulness correction value.

[0119] (D) If the longest existing area is the listless area on the emotion map 300 , the parameter setting unit 113 adds 1 to the coquettishness correction value and subtracts 1 from the activeness correction value.

[0120] (E) If the longest existing region is the central region on the emotion map 300, the parameter setting unit 113 decrements the absolute values ​​of all four personality correction values ​​by 1.

[0121] When four character correction values ​​are set, the parameter setting unit 113 calculates the four character values ​​according to the following (Formula 2).

[0122] Personality value (cheerful) = DXP-10 + cheerfulness correction value

[0123] Personality value (shy) = DXM-10 + shyness correction value

[0124] Character value (active) = DYP-10 + active correction value

[0125] Personality value (love to act like a spoiled child) = DYM-10 + love to act like a spoiled child correction value

[0126] …(Math 2)

[0127] (5) Growth parameters

[0128] The growth parameter is a value indicating the degree of virtual growth of the robot 200, specifically, the degree of cultivation, as the growth status of the character. The parameter setting unit 113 sets the growth parameter based on the character parameter. Specifically, the parameter setting unit 113 sets the growth parameter to the maximum value among the multiple character values ​​(4 in the above example) included in the character parameter. For example, Fig.10 In the example, since the personality value (cheerful) is 3, the personality value (active) is 8, the personality value (shy) is 5, and the personality value (coquettish) is 4, the parameter setting unit 113 sets the value 8 of the personality value (active) which is the maximum value among these as the growth parameter. In addition, the growth parameter is not limited to the maximum value, and the total value, average value, mode, etc. of multiple personality values ​​may also be used.

[0129] Since the personality parameter changes according to the user's interaction with the robot 200, by setting the growth parameter based on the personality parameter, the robot 200 can be virtually grown according to the user's interaction with the robot 200. In other words, a virtual training result of the robot can be obtained.

[0130] Return to Figure 8The motion control unit 115 causes the robot 200 to perform various motions based on the external stimulus acquired by the external stimulus acquisition unit 111 and the parameter data 121 set by the parameter setting unit 113. Here, the motion control unit 115 causes the robot 200 to perform the motions corresponding to at least one of the motions of controlling the driving unit 220 to cause the robot 200 to perform various motions and the motions of controlling the output unit 230 to output various sounds such as calls.

[0131] The motion control unit 115 causes the robot 200 to perform a motion corresponding to the motion trigger. The motion trigger is a condition for the robot 200 to perform a motion. The motion trigger includes a trigger based on an external stimulus (event) acquired by the external stimulus acquisition unit 111 and a trigger not based on an external stimulus.

[0132] More specifically, the motion control unit 115 causes the robot 200 to execute a first motion that depends on the virtual growth of the robot 200 and a second motion that does not depend on the virtual growth of the robot 200 and depends on the personality of the robot 200. The first motion and the second motion are described below.

[0133] (I) Action 1

[0134] The first action is an action whose action content changes as the robot 200 grows up virtually. Even for real creatures, the behavior and the way of humming are different when they are children and adults. For example, when a real creature is a child, it will make violent movements and hum loudly, but when it becomes an adult, the intensity of the movement will decrease and the humming will become lower. The first action is an action used to express the difference in action content caused by the difference in the growth degree of such creatures.

[0135] The action control unit 115 causes the robot 200 to perform a basic action that does not depend on the personality parameter and a personality action that depends on the personality parameter as the first action. Here, the basic action is an action that depends on the virtual growth of the robot 200 but does not depend on the virtual personality of the robot 200. In other words, the basic action is an action that does not change according to the user's way of interacting with the robot 200 (cultivation method). Further, in other words, the basic action is an action whose action content is the same even if there is a difference in the virtual personality of the robot 200, and the action content does not differ due to the difference in the virtual personality of the robot 200. In contrast, the personality action is an action that depends on both the virtual growth and the virtual personality of the robot 200. In other words, the personality action is an action that changes according to the user's way of interacting with the robot 200 (cultivation method). Further, in other words, the personality action is an action whose action content differs according to the difference in the virtual personality of the robot 200.

[0136] The action control unit 115 selects the first action from the basic actions and the character actions with a probability corresponding to the growth parameter. Specifically, the action control unit 115 controls the robot 200 so that the action content changes as the robot 200 grows virtually, that is, as the growth parameter increases. To this end, the action control unit 115 refers to the growth table 123.

[0137] like Fig.11 As shown, the growth table 123 determines the types of actions that the robot 200 performs based on action triggers such as external stimuli, and the probability of each action being selected based on the growth parameter (hereinafter referred to as "action selection probability"). The growth table 123 determines the action selection probability so that the probability of selecting a basic action is higher when the growth parameter is small, and the probability of selecting a character action is higher when the growth parameter increases. In addition, the growth table 123 determines the action selection probability so that the types of basic actions that can be selected increase as the growth parameter increases.

[0138] For example, imagine the following situation: Fig.10 As shown, the current personality values ​​of robot 200 are personality value (cheerful) 3, personality value (active) 8, personality value (shy) 5, personality value (coquettish) 4, and a loud sound is detected by microphone 213. In this case, the growth parameter becomes the maximum value among the four personality values, that is, 8, and the action trigger is "make a loud sound". Fig.11 In the growth table 123 shown, when the reference action trigger is "make a loud sound" and the growth parameter is 8, it can be seen that the action selection probability is: "Basic action 2-0" is 20%, "Basic action 2-1" is 20%, "Basic action 2-2" is 40%, and "Personality action 2-0" is 20%.

[0139] That is, in this case, the action control unit 115 selects "basic action 2-0" with a probability of 20%, "basic action 2-1" with a probability of 20%, "basic action 2-2" with a probability of 40%, and "character action 2-0" with a probability of 20%. When a basic action or a character action is selected in this way, the action control unit 115 refers to the action content table 124 and the movement table 125 to make the robot 200 perform an action corresponding to the selected basic action or character action.

[0140] like Fig.12As shown, the action content table 124 is a table that determines the specific action content of each action determined by the growth table 123. However, the action content table 124 determines the action content of the character action separately for each of the four character values ​​(cheerful, active, shy, and coquettish). When "Character action 2-0" is selected, the action control unit 115 further selects any one of the four types of character actions according to the four character values.

[0141] The action control unit 115 calculates the value obtained by dividing the character value corresponding to the character action by the total value of the four character values ​​as the selection probability of each character action. For example, when the character value (cheerful) is 3, the character value (active) is 8, the character value (shy) is 5, and the character value (coquettish) is 4, their total value is 3+8+5+4=20. In this case, the action control unit 115 selects the character action of "cheerful" with a probability of 3 / 20=15%, selects the character action of "active" with a probability of 8 / 20=40%, selects the character action of "shy" with a probability of 5 / 20=25%, and selects the character action of "coquettish" with a probability of 4 / 20=20%.

[0142] In addition, Fig.11 In the growth table 123 shown, there is only one character action selected for each action trigger, but the types of character actions selected can also be increased as the character value increases, similar to the basic actions. In addition, as long as the growth table 123 can be defined as a function (growth function) that uses the growth parameter as an independent variable and returns the action selection probability of each action type for each action trigger, its form is arbitrary and does not necessarily need to be as follows. Fig.11 The data is shown in table format.

[0143] like Fig.13 As shown, the motion table 125 is a table that determines how the motion control unit 115 controls the twist motor 221 and the up-down motor 222 for each motion determined by the growth table 123. Specifically, the motion table 125 determines the motion time (milliseconds), the motion angle of the twist motor 221 after the motion time, and the motion angle of the up-down motor 222 after the motion time for each motion. Furthermore, the motion table 125 determines the sound data output from the speaker 231 for each motion.

[0144] For example, when basic action 2-0 is selected, the action control unit 115 first controls so that the angles of the twist motor 221 and the up-down motor 222 become 0 degrees after 100 milliseconds, and controls so that the angle of the up-down motor 222 becomes -24 degrees after 100 milliseconds. Furthermore, the action control unit 115 controls so that no rotation is performed during the next 700 milliseconds, and the angle of the twist motor 221 becomes 34 degrees and the angle of the up-down motor 222 becomes -24 degrees after 500 milliseconds. Furthermore, the action control unit 115 controls so that the angle of the twist motor 221 becomes -34 degrees after 400 milliseconds, and controls so that the angles of the twist motor 221 and the up-down motor 222 both become 0 degrees after 500 milliseconds, thereby completing the action of basic action 2-0. In addition, the motion control unit 115 reproduces a short beeping sound from the speaker 231 using the audio data of the short beeping sound in parallel with the driving of the twist motor 221 and the up-and-down motor 222 .

[0145] (II) Action 2

[0146] The second action is an action that does not change the action content as the robot 200 grows virtually, and is an action whose action content is different according to the difference in the personality of the robot 200. Here, the personality of the robot 200 refers to a property that is unique to the robot 200 and different from another robot of the same type as the robot 200. In other words, the personality of the robot 200 is equivalent to "habits" such as the way of moving and the way of humming that do not depend on acquired factors such as the user's training method and the way of communication.

[0147] More specifically, among the properties that actual organisms have that are different from other organisms belonging to the same category, there are properties that are caused by innate factors such as genetics and do not change according to factors in the growth process after birth. The second action is an action for simulating such a personality. The second action can also be called a personality action.

[0148] The parameter setting unit 113 refers to the personality table 127 to set the second action to be performed by the robot 200. Fig.14 As shown, the personality table 127 is a table that specifies a plurality of candidates that can be executed as the second action by the robot 200. The parameter setting unit 113 selects at least one of the motion based on the drive unit 220 and the sound output from the speaker 231 from the personality table 127 as the second action to be executed by the robot 200. In this way, the parameter setting unit 113 sets the personality of the robot 200.

[0149] The parameter setting unit 113 sets the second action using the personality ID 128. Since the personality ID 128 is information indicating the personality of the robot 200, it is desirable that it is unique information different from the personality IDs of other robots. As the personality ID 128, for example, a BLE (Bluetooth Low Energy: Bluetooth Low Energy (registered trademark)) ID can be used. By using the BLE ID, the personality of the robot 200 can be set substantially randomly.

[0150] Before the robot 200 is initially started by the user (for example, when the robot 200 is manufactured in a factory), the personality ID 128 is written into the robot 200 by an operator's operation. The personality ID 128 is stored in, for example, the ROM of the storage unit 120 so that it cannot be rewritten by the user once set. The parameter setting unit 113 sets the action represented by the personality ID 128 thus set among the plurality of actions (motions and sounds) specified in the personality table 127 as the second action.

[0151] Furthermore, the personality ID 128 is not limited to being set when the robot 200 is manufactured in the factory, but can also be set according to the user's wishes. For example, when the user replaces the robot 200 that the user already owns with a new robot 200, the personality ID 128 of the original robot 200 can be copied as the personality ID 128 of the new robot 200. In this way, the personality of the original robot 200 can be inherited by the new robot 200. In other words, just like the inheritance of the personality of a mother and a child, the new robot 200 can have the same personality as the original robot 200. In addition, by setting the personality ID 128 according to the user's wishes, for example, a robot 200 with a high-value personality can be obtained, such as a pet with a pedigree certificate.

[0152] When the personality ID 128 is set in this way, the motion control unit 115 causes the robot 200 to perform a second motion indicated by the personality ID 128 in addition to the first motion. For example, when the second motion is set to "shake after motion", the motion control unit 115 controls the drive unit 220 to vibrate the head 204 or the trunk 206 after causing the robot 200 to perform the first motion. Alternatively, when the second motion is set to "purr after motion", the motion control unit 115 outputs a sound such as "purr" from the speaker 231 after causing the robot 200 to perform the first motion.

[0153] In addition, according to the second action, the action control unit 115 is not limited to executing the second action after the first action, and can also execute the second action simultaneously with the first action or before the first action. For example, when the second action is set to "fast movement", the action control unit 115 quickly performs the movement of the first action when the robot 200 executes the first action. Or, when the second action is set to "loud shouting", the action control unit 115 outputs a higher sound when the robot 200 executes the first action. In addition, when the second action is an action independent of the first action, the action control unit 115 is not limited to executing the second action at the timing accompanying the first action, and can also execute the second action at a timing independent of the first action.

[0154] More specifically, while the virtual growth of the robot 200 does not satisfy the predetermined condition, the motion control unit 115 causes the robot 200 to perform the first motion. After the virtual growth of the robot 200 satisfies the predetermined condition, the motion control unit 115 causes the robot 200 to perform the first motion and the second motion.

[0155] In other words, the motion control unit 115 causes the robot 200 to perform only the first motion for a period of time after the virtual birth of the robot 200, and does not cause the robot 200 to perform the second motion immediately after the virtual birth. Furthermore, after the virtual growth of the robot 200 reaches a certain level, the motion control unit 115 causes the robot 200 to perform the second motion.

[0156] Even for real creatures, the manifestation of their personality begins after the creature has grown to a certain extent. Therefore, by having the robot 200 perform the second action after a certain period of time has passed since the virtual birth, the manifestation of the personality of such a real creature can be simulated more realistically. In addition, since the personality of the robot 200 is not immediately determined after the purchase, the fun of growing the robot 200 increases.

[0157] Here, the predetermined condition is satisfied when the number of days of the virtual growth of the robot 200 reaches a predetermined number of days. Fig.15 As shown, from the virtual birth to the third period, which is a period of a predetermined number of days, the motion control unit 115 causes the robot 200 to perform the first motion, and does not cause the robot 200 to perform the second motion. On the other hand, after the third period has passed since the virtual birth, the motion control unit 115 causes the robot 200 to perform both the first motion and the second motion.

[0158] The predetermined number of days may be less than the number of days in which the virtual growth of the robot 200 is completed. In other words, the third period is shorter than the first period, which is the child period. For example, when the first period is 50 days, the third period, which is equivalent to the predetermined number of days, is set to 30 days. In this way, by starting to execute the second action during the period from when the robot 200 grows from a child to an adult, the manifestation of the personality of an actual creature can be simulated more realistically.

[0159] Next, refer to Fig.16 The following describes the flow of robot control processing. Fig.16 The robot control process shown is executed by the control unit 110 of the control device 100 when the user turns on the power of the robot 200. The robot control process is an example of a control method of the robot 200.

[0160] When the robot control process is started, the control unit 110 functions as the parameter setting unit 113 and sets the parameter data 121 (step S101). At the initial startup of the robot 200 (the first startup by the user after shipment), the control unit 110 sets each parameter of the growth days, the emotion parameter, the emotion change amount, the personality parameter, and the growth parameter to an initial value (e.g., 0). On the other hand, at the second and subsequent startups, the control unit 110 reads the values ​​of each parameter saved in step S109 described later in the previous robot control process and sets it as the parameter data 121. However, all the emotion parameters may be initialized to 0 every time the power is turned on.

[0161] When the parameter data 121 is set, the control unit 110 determines whether there is an external stimulus detected by the sensor unit 210 (step S102). When there is an external stimulus (step S102: Yes), the control unit 110 functions as the external stimulus acquisition unit 111 and acquires the external stimulus from the sensor unit 210 (step S103).

[0162] When an external stimulus is acquired, the control unit 110 derives the emotion change amount corresponding to the acquired external stimulus (step S104 ) and updates the emotion parameter by adding or subtracting the derived emotion change amount from the current emotion parameter (step S105 ).

[0163] When the emotion parameter is updated, the control unit 110 uses the external stimulus acquired in step S103 as an action trigger to execute the action control process (step S106 ), and then proceeds to step S108 .

[0164] On the other hand, when there is no external stimulation in step S102 (step S102: No), the control unit 110 determines whether a spontaneous action such as breathing action is performed (step S107). The method of determining whether a spontaneous action is performed is arbitrary, for example, when the timer detects the elapsed information notified every first reference time (for example, 5 seconds), the determination of step S107 becomes Yes.

[0165] That is, when a spontaneous action is performed (step S107: Yes), when elapsed information indicating "the first reference time has elapsed" is detected as an action trigger, the control unit 110 proceeds to step S106 and executes the action control process, and then proceeds to step S108.

[0166] Next, refer to Fig.17 , to illustrate the action control processing performed by step S106.

[0167] When the action control process starts, the control unit 110 sets the personality parameter (step S201). Specifically, in the first period, the control unit 110 calculates each personality value of the personality parameter according to the emotion change amount learned in step S113 according to the above (mathematical formula 1). On the other hand, in the second period, the control unit 110 calculates each personality value of the personality parameter according to the emotion change amount learned in step S113 and the personality correction value adjusted in step S112 according to the above (mathematical formula 2).

[0168] When the personality parameter is set, the control unit 110 sets the growth parameter (step S202). Specifically, the control unit 110 sets the maximum value among a plurality of personality values ​​included in the personality parameter as the growth parameter.

[0169] When the growth parameter is set, the control unit 110 reads the action trigger given when the action control process is executed and the action selection probability corresponding to the growth parameter calculated in step S202 by referring to the growth table 123 (step S203). Then, the control unit 110 selects the first action using a random number based on the read action selection probability (step S204).

[0170] For example, when the calculated growth parameter is 8 and the action trigger is "make a loud sound", the control unit 110 selects "basic action 2-0" with a probability of 20%, "basic action 2-1" with a probability of 20%, "basic action 2-2" with a probability of 40%, and "character action 2-0" with a probability of 20% (refer to Fig.11 ).

[0171] When the first action is selected, the control unit 110 determines whether a character action is selected as the first action (step S205). When a basic action is selected as the first action (step S205: No), the process proceeds to step S208.

[0172] When a character action is selected as the first action (step S205: Yes), the control unit 110 calculates the selection probability of each character based on the size of the four character values ​​(step S206). Then, the control unit 110 selects a character action using a random number based on the calculated selection probability of each character (step S207).

[0173] When a basic action or a character action is selected as the first action, the control unit 110 determines whether it is in the third period (for example, 30 days from birth) (step S208). If it is in the third period (step S208: Yes), the control unit 110 causes the robot 200 to perform the selected first action (step S209). Specifically, the control unit 110 causes the robot 200 to perform the action content specified in the action content table 124 by performing the exercise specified in the exercise table 125 and outputting the sound.

[0174] On the other hand, when the robot 200 is not in the third period (step S208: No), the control unit 110 causes the robot 200 to perform the first action as in step S209 and also causes the robot 200 to perform the second action (step S210). Specifically, when the number of days of growth of the robot 200 reaches a certain level, in addition to the first action, the control unit 110 causes the robot 200 to perform the second action represented by the personality ID 128 among the multiple actions (movements and sounds) determined in the personality table 127. Thus, the control unit 110 expresses the personality of the robot 200. Through the above, Fig.17 The motion control processing shown ends.

[0175] Return to Fig.16 If no spontaneous action is performed (step S107: No), the control unit 110 determines whether to end the process (step S108). For example, if the operation unit 240 receives an instruction from the user to turn off the power of the robot 200, the process ends. If the process ends (step S108: Yes), the control unit 110 saves the current parameter data 121 to the non-volatile memory (e.g., flash memory) of the storage unit 120 (step S109), and ends. Fig.16 The robot control process shown.

[0176] If the process is not to be terminated (step S108: No), the control unit 110 determines whether the date has changed by the clock function (step S110). If the date has not changed (step S110: No), the process returns to step S102.

[0177] If the date has changed (step S110: Yes), the control unit 110 determines whether it is in the first period (e.g., 50 days from birth) (step S111). If it is not in the first period but in the second period (step S111: No), the control unit 110 adjusts the personality correction value (step S112) and proceeds to step S115.

[0178] If the first period is in progress (step S111: Yes), the control unit 110 learns the emotion change amount (step S113). Specifically, the control unit 110 changes the values ​​of the emotion change amounts DXP, DXM, DYP, and DYM according to whether the emotion parameter has reached the maximum value or the minimum value of the emotion map 300.

[0179] When learning the emotion change amount, the control unit 110 increases both the maximum and minimum values ​​of the emotion map 300 by a predetermined increase (eg, 2) (step S114). The control unit 110 also increases the growth days by 1 (step S115) and returns to step S102.

[0180] In addition, Fig.16 In the example, the learning of the amount of emotion change and the expansion of the emotion map 300 are set to start after the date is determined to have changed in step S110, but can also be set to start after it is determined that a reference time (for example, 9 p.m.) has been reached. In addition, the determination in step S110 can also be made based on the value obtained by accumulating the time when the power of the robot 200 is turned on using the timer function of the control unit 110 instead of the actual date. For example, every time the accumulated hours of the power on become a multiple of 24, the robot 200 is regarded as having grown by 1 day, and the learning of the amount of emotion change and the expansion of the emotion map 300 can be performed. In addition, considering that users tend to ignore the robot 200, the determination can also be made based on the number of times the external stimulus is obtained (for example, every time the number of acquisitions reaches 100 times, the number of growth days has passed 1 day), so that the growth of the robot 200 slows down when it is left alone.

[0181] As described above, the robot 200 according to the present embodiment includes: a motion control unit that causes the robot 200 to execute a first motion that depends on the virtual growth of the robot 200, and a second motion that does not depend on the virtual growth and depends on the personality of the robot 200. In this way, the robot 200 according to the present embodiment executes the second motion that does not depend on the virtual growth and depends on the personality in addition to the first motion that depends on the virtual growth. That is, when a predetermined trigger is detected, the drive unit 220 or the speaker 231 as the sound output unit is controlled so that the robot 200 executes the first motion set so that the motion content changes with the virtual growth of the robot 200, and the second motion set so that the motion content does not change with the virtual growth and the motion content is different according to the difference in the personality of the robot 200. Therefore, in addition to the appearance of biological growth, the personality caused by innate factors such as genetics can also be simulated. As a result, the robot 200 according to the present embodiment can simulate biological organisms more realistically.

[0182] (Variation Example)

[0183] The embodiments of the present disclosure are described above, but the above embodiments are examples, and the application scope of the present disclosure is not limited thereto. That is, the embodiments of the present disclosure can be applied in various ways, and all embodiments are included in the scope of the present disclosure.

[0184] For example, in the above embodiment, the growth parameter is set to the maximum value of the multiple personality values ​​included in the personality parameter. However, the growth parameter is not limited to the case based on the personality parameter. For example, the growth parameter can also be directly based on the number of growth days. In addition, the setting of the parameter data 121 by the parameter setting unit 113 is not limited to the method described in the above embodiment, and various methods can be used.

[0185] In the above embodiment, the predetermined condition for executing the second action is satisfied when the number of days of virtual growth of the robot 200 reaches a predetermined number of days. However, the predetermined condition is not limited thereto. For example, the predetermined condition may also be satisfied when the growth parameter reaches a predetermined value.

[0186] In the above embodiment, the outer garment 201 is formed in a cylindrical shape from the head 204 to the torso 206, and the robot 200 is set in a prone position. However, the robot 200 is not limited to imitating a creature in a prone position. For example, the robot 200 may also be set in a shape with hands and feet to simulate a creature walking with four feet or two feet.

[0187] In the above embodiment, the control device 100 is built into the robot 200, but the control device 100 may be another device (e.g., a server) that is not built into the robot 200. In the case where the control device 100 is outside the robot 200, the robot 200 communicates with the control device 100 via the communication unit and transmits and receives data to and from each other. By communicating with such a robot 200, the external stimulus acquisition unit 111 acquires the external stimulus detected by the sensor unit 210, and the motion control unit 115 controls the drive unit 220 and the output unit 230.

[0188] In the above-mentioned embodiment, in the control unit 110, the CPU can also function as each part of the external stimulus acquisition unit 111, the parameter setting unit 113 and the action control unit 115 by executing the program stored in the ROM. However, in the present disclosure, the control unit 110 can also replace the CPU, for example, it has dedicated hardware such as ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array) or various control circuits, and the dedicated hardware functions as each part of the external stimulus acquisition unit 111, the parameter setting unit 113 and the action control unit 115. In this case, the functions of each part can be realized separately by individual hardware, or the functions of each part can be realized collectively by separate hardware. In addition, part of the functions of each part can be realized by dedicated hardware, and the other part can be realized by software or firmware.

[0189] Furthermore, it is of course possible to provide a robot that has a structure for realizing the functions involved in the present disclosure in advance, and it is also possible to make an existing information processing device or the like function as the robot involved in the present disclosure by applying a program. That is, by applying a program that can be executed by a CPU or the like that controls the existing information processing device or the like to realize the various functional structures of the robot 200 illustrated in the above embodiment, it is possible to make the robot function as the robot involved in the present disclosure.

[0190] In addition, the application method of such a program is arbitrary. For example, the program can be stored in a computer-readable storage medium such as a floppy disk, CD (Compact Disc)-ROM, DVD (Digital Versatile Disc)-ROM, memory card, etc. for application. Furthermore, the program can be superimposed on a carrier and applied via a communication medium such as the Internet. For example, the program can also be announced and published on a bulletin board (BBS: Bulletin Board System) on a communication network. Furthermore, it can also be configured so that the processing can be performed by starting the program and executing it in the same way as other applications under the control of the OS (Operating System).

[0191] As mentioned above, although the preferred embodiments of the present disclosure have been described, the present disclosure is not limited to the above-mentioned embodiments, and various modifications and substitutions can be made to the above-mentioned embodiments without departing from the scope described in the claims.

Claims

1. A robot that moves autonomously, characterized in that: have: A connecting portion connecting the first portion and the second portion; A driving part, driving the connecting part; a sound output unit that outputs sound; and A control unit controls the driving unit or the sound output unit so that when a predetermined trigger is detected, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the personality of the robot.

2. The robot according to claim 1, characterized in that: The robot comprises: a memory storing a first table in which the action content of the first action is defined in correspondence with each growth level, and a second table in which the action content of the second action is defined in correspondence with each personality. The control unit controls the driving unit or the sound output unit based on the first table and the second table.

3. The robot according to claim 1 or 2, characterized in that: The control unit performs the following control: controlling the driving unit or the sound output unit so that the robot performs only the first action among the first action and the second action during a period in which the growth state of the virtual growth does not satisfy a predetermined growth benchmark, The driving unit or the sound output unit is controlled so that, after the growth state of the virtual growth satisfies the predetermined growth criterion, the robot performs the second action in addition to the first action.

4. The robot according to claim 3, characterized in that: The predetermined growth criterion is satisfied when the number of days of growth as the growth state reaches a predetermined number of days.

5. The robot according to claim 4, characterized in that: The predetermined number of days is less than the number of days for the virtual growth to be completed.

6. The robot according to claim 1 or 2, characterized in that: The control unit performs the following control: Control the drive unit or the sound output unit so that the robot performs, as the first action, an action selected from character actions set to have action contents that differ according to differences in the robot's virtual personality, and basic actions set to have action contents that do not differ due to differences in the robot's virtual personality.

7. The robot according to claim 6, characterized in that: The selection probability of selecting the character action and the selection probability of selecting the basic action are set to change with the virtual growth of the robot.

8. The robot according to claim 6, characterized in that: The robot is provided with: a sensor for detecting external stimuli, The control unit updates a parameter for determining the virtual character according to an external stimulus detected by the sensor.

9. The robot according to claim 1 or 2, characterized in that: The robot is provided with: a sensor for detecting external stimuli, The control section detects an external stimulus detected by the sensor as the trigger.

10. The robot according to claim 9, characterized in that: The control unit controls the driving unit or the sound output unit so that the robot performs an action corresponding to a type of external stimulus detected by the sensor.

11. The robot according to claim 1 or 2, characterized in that: The control unit detects, as the trigger, elapsed time information notified every time a predetermined reference time elapses.

12. The robot according to claim 1 or 2, characterized in that: The first part is the head, The second part is the trunk, The head and the torso are covered with an exterior having decorative parts imitating eyes or fur.

13. A robot that moves autonomously, characterized in that: have: The control unit causes the robot to execute a first action that depends on the virtual growth of the robot and a second action that does not depend on the virtual growth and depends on the personality of the robot.

14. A method for controlling a robot, the robot comprising a connecting portion connecting a first portion and a second portion, a driving portion driving the connecting portion, and a sound output portion outputting a sound, The control method of the robot is characterized by comprising: a detecting step of detecting a predetermined trigger; and A control step for controlling the driving unit or the sound output unit so that when the predetermined trigger is detected by the detection step, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the difference in the personality of the robot.

15. A computer program product, characterized in that A computer of a robot including a connecting portion connecting a first portion and a second portion, a driving portion driving the connecting portion, and a sound output portion outputting a sound is caused to function as the following means: a detection unit, detecting a predetermined trigger; and A control unit controls the driving unit or the sound output unit so that when the predetermined trigger is detected, the robot executes a first action whose action content is set to change with the virtual growth of the robot, and a second action whose action content is set not to change with the virtual growth and whose action content is set to be different according to the personality of the robot.

Citation Information

Patent Citations

  • Robot

    JP2003285286A

  • Biology-like device having character trait and revealing method thereof

    CN101493903A

  • Robot, robot control method, and storage medium

    CN110625608A

  • Robot apparatus and control method therefor, and robot character discriminating method

    US20060041332A1

  • Robot, robot control method, and storage medium

    US20220297018A1