Control device, robot, control method, and computer program product
By identifying specific users and switching modes through sensors, the robot selects actions based on its growth period, solving the problem of lack of biological sensation caused by fixed actions in existing technologies, and realizing the action expression of biological growth.
Patent Information
- Application Number
- CN202610594657.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2025-05-02
- Filing Date
- 2026-04-30
- Publication Date
- 2026-11-03
AI Technical Summary
Existing robots, due to their pre-programmed and fixed action selection rules, cannot sense growth during the accumulation of actions and lack biological perception.
The robot has a processing unit that identifies a specific user through sensors, switches to user recognition mode or normal mode, and selects actions from a group of candidate actions based on the length of the simulated growth period. Specific actions are performed in user recognition mode.
It enables robots to perform actions that humans can perceive as biological growth, enhancing the realism of biological sensations.
Smart Images

Figure CN123025260A_ABST
Abstract
Description
[0001] Cross-references to related applications This application claims priority and related rights to Japanese Patent Application No. 2025-076533, filed May 2, 2025. The description, claims, and all drawings of Japanese Patent Application No. 2025-076533 are incorporated herein by reference. Technical Field
[0002] This disclosure relates to control devices, robots, control methods, and computer program products. Background Technology
[0003] Previously, there was a known robot that detected touch or speech from a user through sensors and selected and executed actions based on the detection results, thereby being able to perform biological-like actions (e.g., Japanese Patent Application Publication No. 2002-59389). Summary of the Invention
[0004] The technical problem that the invention aims to solve However, in the aforementioned prior art, since the selection rules for actions based on the detection results are pre-programmed and fixed, the selected action will not change even if the cumulative action period increases. Therefore, it is impossible to perceive growth over the cumulative action period, resulting in a lack of biological sensation.
[0005] The purpose of this disclosure is to enable robots to perform actions that humans can perceive as biological growth.
[0006] Technical solutions for solving technical problems To address the aforementioned issues, the control device disclosed herein includes one or more processing units configured to: when a specific user is identified based on detection data from sensors possessed by the robot, cause the robot to operate in a user identification mode; and when the robot is not operated in a user identification mode, cause the robot to operate in a normal mode. During the operation of the robot in the user identification mode, an action to be performed by the robot is determined from a candidate action group containing a specific action based on the length of the robot's simulated growth period. This specific action is not performed in the normal mode but is performable in the user identification mode.
[0007] The effects of the invention According to this disclosure, robots can perform actions that humans can perceive as biological growth. Attached Figure Description
[0008] Figure 1 This is a diagram showing the appearance of a robot.
[0009] Figure 2This is a schematic diagram showing the structure of the robot body.
[0010] Figure 3 It is a block diagram representing the functional structure of a robot.
[0011] Figure 4 It is a graph representing state data.
[0012] Figure 5 It is a diagram representing an emotion map.
[0013] Figure 6 It is a diagram representing the external stimulus table.
[0014] Figure 7 This is a diagram showing the options for the corresponding actions of hugging and stroking the body.
[0015] Figure 8 This is another example of a diagram showing the selection table for actions such as hugging and stroking the body.
[0016] Figure 9 It is a diagram showing the action selection table corresponding to speaking.
[0017] Figure 10 This is a flowchart illustrating the control steps of a robot control device.
[0018] Figure 11 This is a flowchart representing the control steps of the input determination device.
[0019] Figure 12 This is a flowchart illustrating the control steps of the output determination device. Detailed Implementation
[0020] Hereinafter, embodiments of the present disclosure will be described based on the accompanying drawings. Figure 1 As shown, robot 1 comprises a main body 100 and a shell 200 covering the entire surface of the main body 100. Robot 1 is a pet robot modeled after a small creature. Robot 1 is capable of performing a variety of different actions that mimic the movements of a living creature. The shell 200 is made of a soft material that deforms according to the movements of the main body 100. The shell 200 may have, for example, fur made of plush fabric and decorative parts that mimic eyes. The back side of the shell 200 (the side in contact with the main body 100) is provided with a (not shown) engaging part that can engage with a (not shown) fastener provided on the surface of the main body 100. By engaging the engaging part with the fastener, the main body 100 and the shell 200 can be prevented from shifting significantly. The number of engaging parts and fasteners is kept to a necessary minimum in a way that does not hinder the movements of the main body 100 and makes it easy to attach and detach the shell 200. In this embodiment, engaging parts and fasteners are provided at three locations: the left and right eye positions and the rear end of robot 1.
[0021] like Figure 2 As shown, the main body 100 of robot 1 has a head 101, a torso 103, and a connecting part 102 connecting the head 101 and the torso 103. The main body 100 has a drive unit 40 for moving the head 101 relative to the torso 103. In robot 1, the head 101 is equivalent to a "movable part". The drive unit 40 has a torsion motor 41 and a vertical motion motor 42. The torsion motor 41 is a servo motor that rotates the head 101 and the connecting part 102 within a predetermined angle range about a first rotation axis 401 extending along the direction of the connecting part 102. The movement of the torsion motor 41 enables robot 1 to rotate the head 101. The vertical motion motor 42 is a servo motor that rotates the head 101 within a predetermined angle range about a second rotation axis 402 perpendicular to the first rotation axis 401. The vertical motion motor 42 enables robot 1 to move the head 101 up and down. The direction of the up-and-down movement of the head 101 changes to an inclination relative to the vertical direction, depending on the angle at which the torsion motor 41 twists the head 101. By making the torsion motor 41 and / or the up-and-down movement motor 42 perform subtle and periodic movements, the robot 1 can swing and shake its head 101. By appropriately changing and combining the timing, amplitude, and speed of the movements of the torsion motor 41 and the up-and-down movement motor 42, the robot 1 can perform various actions, such as joyful actions, surprised actions, and breathing actions mimicking biological respiration. Among these, breathing actions are one type of spontaneous action of the robot 1. The main body 100 has a touch sensor 51, a motion sensor 52, an illumination sensor 53, a microphone 54, a sound output unit 30, and a receiving coil 73. The motion sensor 52 includes an accelerometer sensor 521 and a gyroscope sensor 522. The touch sensor 51 is respectively disposed on the upper part of the head 101 and the body part 103. The motion sensor 52 and the receiving coil 73 are disposed near the lower surface of the body part 103. An illumination sensor 53 and a sound output unit 30 are located on the upper part of the body part 103. A microphone 54 is located on the upper part near the base of the head 101.
[0022] like Figure 3 As shown, robot 1 includes a CPU 11 (Central Processing Unit) (one or more processing units), RAM 12 (Random Access Memory), storage unit 13, operation unit 20, sound output unit 30, drive unit 40, sensing unit 50 (sensor), communication unit 60, and power supply unit 70. The CPU 11, RAM 12, and storage unit 13 constitute the control device 10. All parts of robot 1 are connected via data transmission paths such as buses. Figure 3All the functional components shown are provided on the main body 100. The CPU 11 is a processor that controls the actions of the robot 1 by reading and executing the program 131 stored in the storage unit 13 and performing various calculations. Furthermore, the robot 1 may have multiple processors (e.g., multiple CPUs), and the multiple processes executed by the CPU 11 in this embodiment may also be executed by these multiple processors. In this case, multiple processors constitute one or more processing units. In this case, multiple processors may participate in the same process or independently execute different processes in parallel. The RAM 12 provides storage space for the CPU 11 to work and stores temporary data.
[0023] Storage unit 13 is a non-temporary storage medium that can be read by CPU 11, which functions as a computer, and stores program 131 and various data. Storage unit 13 includes non-volatile memory such as flash memory. Program 131 is stored in storage unit 13 in the form of computer-readable program code. Data stored in storage unit 13 includes state data 132, motion setting data 133, etc. State data 132 stores data representing the current state of robot 1 and its surrounding environment. State data 132 is updated sequentially based on the motion history of robot 1, etc. Figure 4 As shown, the state data 132 stores "Action Mode," "Battery Remaining Power," "Environmental State," "Sleepiness Value," "Growth Days," "Emotional Value," and "Personality Value." In this embodiment, the robot 1's "Action Mode" switches between a "User Recognition Mode," indicating that the robot 1 has recognized a user, and a "Normal Mode," which is an exception. Although not shown, the robot 1 also switches between a "Wake-up Mode," indicating that the robot 1 is not asleep, and a "Sleep Mode," indicating that the robot 1 is asleep. Therefore, the robot 1's state includes four types: "Normal Mode and Wake-up Mode," "Normal Mode and Sleep Mode," "User Recognition Mode and Wake-up Mode," and "User Recognition Mode and Sleep Mode." Alternatively, it can be set so that the robot 1 does not switch to User Recognition Mode when operating in Sleep Mode. "Battery Remaining Power" refers to the remaining power in battery 71. "Environmental State" indicates the brightness around the robot 1, and is either "bright" or "dim." "Sleepiness Value" is a parameter where a higher value indicates a stronger simulated sleepiness in the robot 1. Robot 1 switches between "Awake Mode" and "Sleep Mode" based on its "Sleepiness Value". "Growth Days" is the number of days calculated from the date Robot 1 is first activated. "Growth Days" represents the length of Robot 1's simulated growth period. "Growth Days" can also be the cumulative length of Robot 1's actions.
[0024] "Emotional Value" represents Robot 1's simulated emotions, and is composed of "Emotional Value (X)" and "Emotional Value (Y)". The emotional value is determined through... Figure 5The coordinates of the points on the XY-coordinate plane emotion map are used to represent the simulated emotion values of Robot 1. "Emotion Value (X)" is the position of the coordinate point along the X-axis; a higher value indicates a higher level of reassurance, and a lower value indicates a higher level of anxiety. "Emotion Value (Y)" is the position of the coordinate point along the Y-axis; a higher value indicates a higher level of excitement, and a lower value indicates a higher level of lethargy. The maximum value for both "Emotion Value (X)" and "Emotion Value (Y)" is 200, and the minimum value is -200. Therefore, the emotion value is any coordinate within a square emotion region R with a side length of 400. The emotion region R of the emotion map is divided into multiple regions R1 to R9 corresponding to several distinct emotions. Region R1, satisfying -200≦X≦-67 and 67≦Y≦200, represents the emotion of "irritability." Region R2, satisfying -66≦X≦66 and 67≦Y≦200, represents the emotion of "excitement." Region R3, satisfying 67≦X≦200 and 67≦Y≦200, represents the emotion of "joy". Region R4, satisfying -200≦X≦-67 and -66≦Y≦66, represents the emotion of "anxiety". Region R5, satisfying -66≦X≦66 and -66≦Y≦66, represents the emotion of "normal". Region R6, satisfying 67≦X≦200 and -66≦Y≦66, represents the emotion of "peace of mind". Region R7, satisfying -200≦X≦-67 and -200≦Y≦-67, represents the emotion of "sadness". Region R8, satisfying -66≦X≦66 and -200≦Y≦-67, represents the emotion of "helplessness". Region R9, satisfying 67≦X≦200 and -200≦Y≦-67, represents a "peaceful" emotion. Furthermore, the side lengths of the emotion region R and regions R1 to R9 can be set to increase within a certain range based on the robot 1's growth days. For example, the emotion region R can be initially set to a region of -100≦X≦100 and -100≦Y≦100, and then increased to a region of -200≦X≦200 and -200≦Y≦200 based on the robot 1's growth days. The emotion value changes constantly based on external stimuli received by the robot 1. The magnitude of the change in the emotion value in a single instance is selected from the following variables: DXP, DXM, DYP, and DYM.
[0025] DXP: Change in the +X direction DXM: Change in the -X direction DYP: Change in the +Y direction DYM: Change in the -Y direction Alternatively, the variable DXP represents the degree of ease of feeling at ease, DXM represents the degree of ease of feeling anxious, DYP represents the degree of ease of feeling excited, and DYM represents the degree of ease of feeling powerless. In this embodiment, the initial values of variables DXP, DXM, DYP, and DYM are "10". Furthermore, when the emotion value reaches its maximum value in the +X-axis direction, -X-axis direction, +Y-axis direction, and -Y-axis direction, respectively, variables DXP, DXM, DYP, and DYM increase by a predetermined amount. In this embodiment, the maximum value of variables DXP, DXM, DYP, and DYM is "20".
[0026] Figure 4 The "Personality Values" shown represent the simulated personality of Robot 1, composed of "Personality Value (Cheerful)," "Personality Value (Shy)," "Personality Value (Lively)," and "Personality Value (Clingy)." "Personality Value (Cheerful)" is the value minus "10" from the variable DXP, representing the ease with which it changes in the positive X-axis direction on the emotion map, i.e., the degree of ease with which one feels at ease. "Personality Value (Shy)" is the value minus "10" from the variable DXM, representing the ease with which it changes in the negative X-axis direction on the emotion map, i.e., the degree of ease with which one feels anxious. "Personality Value (Lively)" is the value minus "10" from the variable DYP, representing the ease with which it changes in the positive Y-axis direction on the emotion map, i.e., the degree of ease with which one feels excited. "Personality Value (Clingy)" is the value minus "10" from the variable DYM, representing the ease with which it changes in the negative Y-axis direction on the emotion map, i.e., the degree of ease with which one feels powerless. Therefore, each personality value changes according to the variables DXP, DXM, DYP, and DYM, with an initial value of "0" and a maximum value of "10". Thus, the four personality values represent the degree of four personality traits. The personality corresponding to the largest value among the four is the personality of Robot 1 at that moment. For example, in Figure 4 In the example shown, the "Personality Value (Clingy)" is "7", which is the highest value. Therefore, at this moment, Robot 1's personality is "Clingy". Furthermore, when two or more personality values are the same and are the highest values, a personality is determined according to a predetermined priority. In this embodiment, the priority of personalities from highest to lowest is "Cheerful", "Lively", "Shy", and "Clingy".
[0027] Figure 3The motion setting data 133 shown contains various settings related to the actions of robot 1. The motion setting data 133 includes an external stimulus table 1331 for determining the type of external stimulus received by robot 1, and an action selection table 1332 for selecting the action corresponding to the external stimulus. The contents of the external stimulus table 1331 and the action selection table 1332 will be explained later. The motion setting data 133 also contains settings related to the action content of various actions performed by robot 1. Settings related to action content include, for example, settings for the timing and magnitude of the actions of the torsion motor 41 and the up-and-down motion motor 42 of the drive unit 40, and settings for the pitch, length, and volume of the sound output by the sound output unit 30.
[0028] The operation unit 20 includes operation buttons and knobs for power switching, volume adjustment of the sound output unit 30, etc. The operation unit 20 outputs operation information based on input operations to the operation buttons, knobs, etc., to the CPU 11. The sound output unit 30 includes a speaker that outputs sound based on the pitch (high / low), length, and volume of the sound data sent from the CPU 11. This sound can also be a sound mimicking a biological call. The drive unit 40 operates the aforementioned torsion motor 41 and up-and-down motion motor 42 based on the control signals sent from the CPU 11.
[0029] The sensing unit 50 includes the aforementioned touch sensor 51, motion sensor 52, illuminance sensor 53, and microphone 54, and outputs the detection data from each sensor and microphone 54 to the CPU 11. The touch sensor 51 detects contact between an object and the robot 1. Here, the object can also be a user. The touch sensor 51 in this embodiment can also detect the intensity of contact. The touch sensor 51 may include, for example, a pressure sensor such as a capacitance sensor or a piezoelectric sensor, and outputs detection data related to whether the robot 1 is being contacted to the CPU 11. The touch sensor 51 detects the intensity of contact with the robot 1 and outputs it to the CPU 11. The touch sensor 51 can also be set to detect pressure above a predetermined first threshold as contact, and not detect pressure below the first threshold. In this case, the first threshold can also be changed by the CPU 11. Increasing the first threshold is equivalent to decreasing the sensitivity of the touch sensor 51 to contact detection.
[0030] The motion sensor 52, comprising an accelerometer 521 and a gyroscope 522, detects the movements of the robot 1. The movements of the robot 1 include actions based on the mechanical forces acting upon it. The motion sensor 52 can also be called an inertial sensor. The accelerometer 521 detects accelerations along the three orthogonal axes and outputs the data to the CPU 11. The gyroscope 522 detects angular velocities around the three orthogonal axes and outputs the data to the CPU 11. Since both the accelerometer 521 and the gyroscope 522 have three detection axes, the motion sensor 52 is also called a six-axis sensor. The illuminance sensor 53 detects the brightness around the robot 1 and outputs the data to the CPU 11. The microphone 54 detects sounds around the robot 1 and outputs the sound detection data to the CPU 11. The microphone 54 can also be configured to detect sounds above a predetermined second threshold as external stimuli and not detect sounds below the second threshold. In this case, the second threshold can be changed by the CPU 11. Increasing the second threshold is equivalent to decreasing the microphone 54's sensitivity to sound detection.
[0031] The communication unit 60 is a communication module including an antenna, modulation and demodulation circuit, signal processing circuit, etc., and performs wireless data communication with external devices according to a specified communication standard. The power supply unit 70 includes a battery 71, a remaining charge detection unit 72, and a receiving coil 73. The battery 71 supplies power to the various components of the robot 1. In this embodiment, the battery 71 is a rechargeable battery that can be repeatedly charged by contactless charging. The remaining charge detection unit 72 detects the remaining charge of the battery 71 based on a control signal sent from the CPU 11 and outputs the detection result to the CPU 11. The charging operation of the battery 71 is performed when the robot 1 is housed (set) inside a dedicated power supply unit (housing unit, charging base, not shown). In the power supply unit, a power supply coil is provided opposite the receiving coil 73 when the robot 1 is housed. The receiving coil 73 of the robot 1 supplies current to the battery 71 through electromagnetic induction, which is induced by the magnetic field generated by the power supply coil. With this configuration, the charging operation of the battery 71 automatically starts when the robot 1 is housed in the power supply unit. In addition, the charging method of battery 71 is not limited to non-contact charging, but can also be contact charging.
[0032] Next, the actions of robot 1 will be described. Under the control of CPU 11, robot 1 performs actions in response to external stimuli and spontaneous actions (automatically generated actions). Hereinafter, the actions performed by robot 1 and the automatically generated actions are referred to as "actions". The actions performed by robot 1 differ depending on whether the robot 1's action mode is a normal mode or a user recognition mode. When CPU 11 recognizes a pre-registered specific user (hereinafter also referred to as "owner"), it causes robot 1 to act in user recognition mode. User recognition mode can also be referred to as "closeness mode" indicating that robot 1 is close to its owner. In addition, when CPU 11 does not cause robot 1 to act in user recognition mode, it causes robot 1 to act in normal mode. "The situation of recognizing a specific user" can also be referred to as "the situation of recognizing a specific user within a specified distance from robot 1". Specifically, CPU 11 acquires sound detection data from microphone 54 at a specified frequency (e.g., hundreds of milliseconds) and performs specified speech recognition processing on the detection data to determine whether the detected sound comes from the owner's speech. In this determination, for example, known voiceprint analysis can be used. Voiceprint analysis may include processing the similarity between specified voice feature parameters of the detected voice data and the voice feature parameters of a pre-prepared owner's voice. Furthermore, voiceprint analysis may also include determining that the voice belongs to the owner when the derived similarity exceeds a specified threshold. When the CPU 11 determines that the detected voice is from the owner, it switches the robot 1 from normal mode to user recognition mode. Therefore, in this embodiment, the microphone 54 in the sensing unit 50, which serves as a "sensor," is used to identify the owner. In addition, sensors in the sensing unit 50 other than the microphone 54 may also be used to identify the owner. The CPU 11 maintains the user recognition mode for a specified set time, and after the set time has elapsed, it restores the operation mode from user recognition mode to normal mode. In this embodiment, the set time is 1 minute or 3 minutes, but is not limited to these. Specifically, in this embodiment, the probability of whether the voice is from the owner is evaluated by dividing it into multiple levels through voice recognition processing. When the probability is lower than a first benchmark value, the detected voice is determined to be "not the owner's voice," and the "owner level" is determined to be "0." When the "Owner Level" is determined to be "0", Robot 1 does not switch to user recognition mode and operates in normal mode. When the probability is above the first benchmark value but below the second benchmark value which is greater than the first benchmark value, the "Owner Level" is determined to be "1". "Owner Level" of "1" indicates that the detected voice is "highly likely to be the owner's voice". When the "Owner Level" is determined to be "1", the duration of the continuous user recognition mode is set to 1 minute, and Robot 1 switches to user recognition mode. When the probability is above the second benchmark value, the "Owner Level" is determined to be "2". "Owner Level" of "2" indicates that the detected voice is "definitely the owner's voice".When the "Master Level" is determined to be "2", the duration of the continuous user recognition mode is set to 3 minutes, and Robot 1 switches to user recognition mode.
[0033] The CPU 11 detects external stimuli received by the robot 1 based on the detection data from the touch sensor 51, motion sensor 52, and microphone 54, and determines the type of external stimulus received by the robot 1. In this embodiment, for example, the touch sensor 51, motion sensor 52, and microphone 54 in the sensing unit 50, which are "sensors," are used to determine the type of external stimulus. Then, the CPU 11 determines the corresponding action (reaction action) based on the type of external stimulus received by the robot 1, and causes the robot 1 to perform that action. Specifically, the CPU 11 causes the robot 1 to perform the action by driving the torsion motor 41 and the up-and-down motion motor 42 of the drive unit 40, and causes the sound output unit 30 to output sound.
[0034] To determine the type of external stimulus received by robot 1, CPU 11 acquires detection data from touch sensor 51, motion sensor 52, and microphone 54 at a predetermined frequency (e.g., hundreds of milliseconds). Alternatively, it can generate a set of detection data for determination by performing predetermined statistical processing on multiple (e.g., three) detection data sets. CPU 11 then uses this detection data and... Figure 6 The external stimulus table 1331 shown determines the type of external stimulus received by robot 1. External stimulus table 1331 contains pre-generated standard data corresponding to various different external stimuli. The standard data represents the standard detection data detected by touch sensor 51, motion sensor 52, and microphone 54 when robot 1 receives the external stimulus corresponding to the data row. Figure 6The external stimulus table 1331 shown includes external stimuli such as "speaking," "horizontal stroking of the body," "hugging and stroking of the body," "horizontal stroking of the head," "hugging and stroking of the head," "swaying left and right," "horizontal patting," "hugging and patting," "horizontal poking of the body," "hugging and poking of the body," "stroking the neck," and "hugging." Each external stimulus is assigned a unique label number. For "speaking," as mentioned above, it is determined by speech recognition processing of the detection data from microphone 54, so standard data may not be prepared for "speaking." Among these external stimuli, "horizontal" indicates the external stimulus received when robot 1 is placed on a roughly horizontal surface. "hugging" indicates the external stimulus received when robot 1 is being hugged by the user. "Stroking the body" indicates that the user strokes the torso 103 of robot 1. "Stroking the head" indicates that the user strokes the head 101 of robot 1. "Swaying left and right" indicates that the user is hugging robot 1 and swaying it left and right. "Patting" indicates that the user pats robot 1 lightly with their palm or the like. "Poking the body" (poking) indicates that the user poks robot 1 lightly with their fingertips or the like. "Stroking the neck" means the user strokes the area between the head 101 and the body 103 of robot 1. This "stroking the neck" is an external stimulus applied to an area where no touch sensor 51 is located; therefore, the standard data for "stroking the neck" does not include the detection data "A" corresponding to the touch sensor 51. "Holding" means the user picks up robot 1 and holds it in their arms. Furthermore, Figure 6 The external stimuli shown are examples; the external stimulus table 1331 can also contain standard data corresponding to external stimuli other than these. External stimuli other than "speaking" are determined as follows: The CPU 11 derives the similarity between the detection data acquired from the touch sensor 51, motion sensor 52, and microphone 54 and the standard data for each of the various external stimuli in the external stimulus table 1331. Then, the CPU 11 determines the external stimulus corresponding to the standard data with the highest similarity to the acquired detection data among the various external stimuli in the external stimulus table 1331 as the external stimulus received by the robot 1. For example, the CPU 11 can convert the detection data and standard data into points in n-dimensional space respectively, and determine that the closer the Euclidean distance between these points, the higher the similarity. Thus, in addition to the touch sensor 51 and motion sensor 52, the microphone 54 is also used to distinguish and determine external stimuli with different forms of contact. This is because different forms of contact result in different loudness, length, etc., of the sound produced by the contact, and this difference can be detected by the microphone 54.
[0035] After determining the type of external stimulus received by robot 1, CPU 11 refers to the action selection table 1332 corresponding to the determined external stimulus to determine the action that robot 1 should take in response to the external stimulus. For example, when the stimulus is determined to be "hugging and stroking the body", CPU 11 refers to the action selection table 1332 corresponding to "hugging and stroking the body" to determine the action that robot 1 should take. Figure 7 Action selection table 1332. For each external stimuli other than "hugging and stroking the body," action selection tables 1332 are also pre-generated and stored in the storage unit 13. When subjected to an external stimulus, the CPU 11 causes the robot 1 to perform... Figure 7 The action shown is either one of the common actions A (general actions) or the intimate action B (specific actions). Common action A is one of "infant action," "basic action," "emotional action," "personality action α," and "personality action β." "Infant action" refers to actions performed by Robot 1 shortly after birth (shortly after initial activation), imitating those of an infant. "Basic action" refers to basic actions performed by Robot 1 regardless of its emotion or personality. "Emotional action" refers to actions performed by Robot 1 based on its own emotions. As mentioned above, Robot 1's emotions are determined by the coordinates of its emotion value. Figure 5 Which region among R1 to R9 determines it? "Personality Action α" and "Personality Action β" are the actions performed by Robot 1 based on its own personality. Figure 7 The ordinary action A shown is the action that can be selected when Robot 1 is in awake mode. When Robot 1 is in sleep mode, ordinary action A will be replaced by a sleep mode-specific action (not shown). "Affectionate action B" indicates an action by which Robot 1 approaches the user. In this embodiment, affectionate action B can be selected in both awake and sleep modes, or it can be replaced by being selectable only in awake mode. In this embodiment, there are 4 "infant actions", 5 "basic actions", 9 "emotional actions", 4 "personality actions α", 8 "personality actions β", and 2 "affectionate actions B".
[0036] Ordinary action A and intimate action B are collectively referred to as "candidate action group G". Action selection table 1332 specifies and records the probability of each action in candidate action group G being selected. The table showing the selection probabilities of each action contained in a candidate action group G is denoted as "probability table T1" or "probability table T2". Figure 7 In this example, a probability table consists of six cells corresponding to six different actions. The values recorded in probability tables T1 and T2 represent percentages, with blank cells indicating a 0% probability. Probability table T1 is selected when robot 1 operates in its normal mode, and probability table T2 is selected when robot 1 operates in its user-recognized mode. For example... Figure 7As shown, probability tables T1 and T2 are set for periods P1 to P6 corresponding to the growth days of Robot 1, respectively. Period P1 is the period from 0 to 2 days of growth. Period P2 is the period from 3 to 6 days of growth. Period P3 is the period from 7 to 9 days of growth. Period P4 is the period from 10 to 29 days of growth. Period P5 is the period from 30 to 49 days of growth. Period P6 is the period from 50 days of growth and beyond. Furthermore, in Figure 7 In this context, the candidate action group G consists of 6 actions, including actions with a probability of 0%, or it can consist of actions with a probability greater than 0 among these 6 actions.
[0037] In probability tables T1 and T2 corresponding to period P1, the probability of selecting an infant action is 100%. Therefore, when the number of days of growth is 2 or less, Robot 1 only performs infant actions. In probability tables T1 and T2 corresponding to period P2, the probability of selecting both infant actions and basic actions is 50%. Therefore, when period P2 is reached, Robot 1 will perform basic actions in addition to infant actions. Alternatively, within the range of period P2, the probability of selecting infant actions decreases as the number of days increases, while the probability of selecting basic actions increases. From period P3 onwards, the probability of selecting infant actions is 0%, and Robot 1 no longer performs infant actions. From period P3 onwards, a greater than 0 probability is set for emotional actions, and Robot 1 will perform emotional actions in addition to basic actions. From period P4 onwards, a greater than 0 probability is set for personality action α, and Robot 1 will further perform personality action α. From period P5 onwards, a greater than 0 probability is set for personality action β, and Robot 1 will further perform personality action β.
[0038] In probability table T1 corresponding to the normal mode, the probability of selecting the affectionate action B is 0% in all periods P1 to P6. Therefore, when Robot 1 operates in the normal mode, it will not perform the affectionate action B. On the other hand, from period P3 onwards, in probability table T2 corresponding to the user recognition mode, the probability of selecting the affectionate action B is set to a value greater than 0. Therefore, from period P3 onwards, when Robot 1 operates in the user recognition mode, it will perform the affectionate action B with a predetermined probability. The affectionate action B is equivalent to a special action that is not performed in the normal mode but can be performed in the user recognition mode. In probability table T2 for a certain period, the ratio of the selection probabilities of each action other than the affectionate action B is equal to the ratio of the selection probabilities of each action in probability table T1 for that period. For example, in probability table T2 for period P3, the selection probability of the affectionate action B is 25%. In addition, the selection probabilities of the remaining "basic actions" and "emotional actions" are "60%" and "15%" respectively, with a ratio of 4:1. On the other hand, in the probability table T1 of P3 during the same period, the selection probabilities of "basic action" and "emotional action" are "80%" and "20%" respectively, and their ratio (4:1) is the same as the ratio in the user recognition mode.
[0039] The selection probability of the affinity action B is set separately for each period from P3 to P6. In other words, the selection probability of affinity action B is set to a value corresponding to the number of growth days. Specifically, in periods P3 to P6, the selection probability of affinity action B is set to "25%", "40%", "30%", and "40%" respectively. The reason why the selection probability of affinity action B does not monotonically increase with the increase of growth days is as follows: As the number of growth days increases (especially when switching from period P4 to period P5), the number of ordinary actions A that become selection candidates increases. If the selection probability of affinity action B were to monotonically increase uniformly, it would lead to a large deviation between the probability of each ordinary action A being selected and the probability of each affinity action B being selected. To suppress this deviation, the selection probability of affinity action B is controlled at a low level, especially in periods P5 and P6.
[0040] Furthermore, there are cases where the approach action B is not pre-defined in the external stimuli. Whether or not the approach action B is pre-defined for the external stimuli should be pre-specified and registered. Figure 6 The external stimuli are shown in Table 1331. In... Figure 6 In the example shown, no intimate action B was assigned to "swaying left and right", "lightly poking the body horizontally", "hugging and poking the body", or "stroking the neck". In the action selection table 1332 corresponding to these external stimuli, the probability table T1 corresponding to the normal mode and the probability table T2 corresponding to the user recognition mode are the same, and the selection probability of intimate action B is 0% in both cases.
[0041] Based on the growth days value and action pattern (normal mode or user recognition mode) in the state data 132, CPU 11 selects either probability table T1 or T2 from the action selection table 1332. Then, CPU 11 determines an action that the robot 1 should perform based on the probability set in the selected probability table T1 or T2. Thus, CPU 11 determines the action that the robot 1 should perform from the candidate action group G based on the length of the growth days. Specifically, CPU 11 determines the action that the robot 1 should perform from the candidate action group G based on the probability corresponding to the length of the growth days.
[0042] Figure 7 The action selection table 1332 shown is an example and can be modified in various ways. For example, as Figure 8 As shown, a selection probability can be set so that the longer the growth period, the higher the probability of selecting the closeness action B. Figure 8 In the example shown, the selection probability of affinity action B is set to 0% in periods P1 and P2, 25% in period P3, 40% in period P4, 60% in period P5, and 80% in period P6. Furthermore, the number of affinity actions B for the selected object included in candidate action group G can be determined based on the length of the growth period. Specifically, the number of affinity actions B for the selected object included in candidate action group G can be set to be greater the longer the growth period. Here, affinity actions B for the selected object refer to affinity actions B with a selection probability set to a value greater than 0. Figure 8 In the example shown, candidate action group G contains 5 intimacy actions B1 to B5. In period P3, 2 intimacy actions B1 and B2 are selected; in period P4, 3 intimacy actions B1 to B3 are selected; in period P5, 4 intimacy actions B1 to B4 are selected; and in period P6, 5 intimacy actions B1 to B5 are selected. Figure 8 In this context, starting with period P3, each time the system switches to the next period, one more intimacy action B becomes a candidate for selection, but this is not the only possibility. For example, different intimacy actions B can be set as candidates for selection in each period. For instance, period P3 might use intimacy action B1 as a candidate, period P4 might use intimacy actions B2 and B3 as candidates, period P5 might use intimacy actions B4 to B6 as candidates, and period P6 might use intimacy actions B7 to B10 as candidates. Here, intimacy actions B1 to B10 can also be completely different. Furthermore, intimacy actions B can be included in the selection candidates for periods P1 and / or P2.
[0043] When the external stimulus is determined to be "speaking," CPU11 references the stimulus corresponding to "speaking." Figure 9 Action selection table 1332. When stimulated by the external stimulus of "speaking", CPU 11 causes robot 1 to perform an action. Figure 9One of the ordinary actions A (general actions) shown, or one of the intimate actions B (specific actions). Figure 9 The ordinary action A is one of the following: "infant action", "basic action", "personality action α" and "voice recognition action α (non-user recognition)". "Voice recognition action α (non-user recognition)" is the action that robot 1 takes in response to speech that is recognized as not being spoken by the owner. Figure 9 The approachable action B is designated as "voice recognition action β (user recognition)". "Voice recognition action β (user recognition)" indicates that robot 1 recognizes the user's action; it is the action robot 1 takes in response to voice recognized as the owner's voice. There are four types of "voice recognition actions α (non-user recognition)", namely "Action A1-1" to "Action A1-4". There are eight types of "voice recognition actions β (user recognition)", namely "Action B11-1" to "Action B11-4" and "Action B12-1" to "Action B12-4".
[0044] exist Figure 9 In the table, probability tables T1 and T2 (T2a and T2b) are columns of 15 sections corresponding to 15 different actions. For periods P1 and P2, only probability table T1 corresponding to the normal mode is set. In probability table T1 corresponding to period P1, the selection probability of the infant action is 100%. In probability table T1 corresponding to period P2, the selection probabilities of the infant action and the basic action are both 50%. For each period from P3 to P6, probability table T1 corresponding to the normal mode and two probability tables T2a and T2b corresponding to the user recognition mode are set respectively. After processing the detection data from microphone 54 for speech recognition, if the owner level is determined to be "0", robot 1 will act in the normal mode and select probability table T1. In probability table T1, at least a portion of the infant action, basic action, and personality action are given a selection probability greater than 0, and at least a portion of the speech recognition action α (non-user recognition) from "Action A1-1" to "Action A1-4" are given a selection probability greater than 0. The selection probability of speech recognition action α (non-user recognition) was set to "25%", "40%", "55%", and "75%" in periods P3 to P6, respectively. Furthermore, the number of types of speech recognition action α (non-user recognition) that became candidates for selection in periods P3 to P6 was "1", "2", "3", and "4", respectively. That is, the later the period, the more types of speech recognition action α (non-user recognition) became the selection targets.
[0045] After processing the detection data from microphone 54 using speech recognition, if the owner level is determined to be "1", robot 1 switches to user recognition mode and selects probability table T2a. Probability table T2a is equivalent to changing the selection probability of speech recognition action α (non-user recognition) in probability table T1 at the same time to 0, and setting a table with a selection probability greater than 0 for at least a portion of "Action C1-1" to "Action C1-4" of speech recognition action β (user recognition). After processing the detection data from microphone 54 using speech recognition, if the owner level is determined to be "2", robot 1 switches to user recognition mode and selects probability table T2b. Probability table T2b is equivalent to changing the selection probability of speech recognition action α (non-user recognition) in probability table T1 at the same time to 0, and setting a table with a selection probability greater than 0 for at least a portion of "Action C2-1" to "Action C2-4" of speech recognition action β (user recognition). In probability tables T2a and T2b, the selection probability of speech recognition action β (user recognition) is set to "25%", "40%", "55%", and "75%" in periods P3 to P6, respectively. Furthermore, in periods P3 to P6, the number of types of speech recognition action β (user recognition) that become candidates is "1", "2", "3", and "4", respectively. That is, the later the period, the more types of speech recognition action β (user recognition) become candidates.
[0046] Next, refer to Figures 10-12 The robot control processing performed by CPU 11 to implement the aforementioned actions of robot 1 will be explained. Robot control processing begins when the power to robot 1 is turned on. For example... Figure 10As shown, after the robot control process begins, the CPU 11 executes the prescribed initialization process (step S101). Step S101 includes setting the robot 1's action mode to the normal mode. The CPU 11 determines whether the robot 1 will enter a power-off state (step S102). Here, the CPU 11 determines that it will enter a power-off state if the user performs a power-off operation or if the remaining power of the battery 71 is lower than a predetermined lower limit. If it is determined that the robot 1 will not enter a power-off state ("No" in step S102), the CPU 11 executes the input determination process described later (step S103). Next, the CPU 11 executes the output (i.e., action) determination process based on the result of the input determination process and makes the robot 1 perform the output determination process (step S104). Afterwards, the CPU 11 updates the emotion parameters, personality parameters, and growth days in the status data 132 according to the robot 1's action history and stores them in the storage unit 13 (step S105). After step S105 is completed, the CPU 11 returns the process to step S102. The loop processing of steps S102 to S105 is repeatedly executed at a predetermined frequency (e.g., hundreds of milliseconds). In step S102, if it is determined that the power-off state will be entered ("Yes" in step S102), the CPU11 ends the robot control processing.
[0047] like Figure 11As shown, when the input determination process is invoked, the CPU 11 acquires the detection data from the touch sensor 51, motion sensor 52, and microphone 54 (step S201). As described above, the CPU 11 derives the similarity between the acquired detection data and the standard data of various external stimuli, and determines whether the robot 1 is receiving external stimuli and the type of external stimuli based on this similarity (step S202). That is, the CPU 11 determines the external stimulus corresponding to the standard data with the highest similarity as the external stimulus received by the robot 1. Furthermore, if the similarity with all external stimuli is lower than a predetermined benchmark value, the CPU 11 determines that the robot 1 is not receiving external stimuli. The CPU 11 performs speech recognition processing based on the detection data from the microphone 54 (step S203). Here, the CPU 11 performs predetermined speech recognition processing on the detection data from the microphone 54 to acquire speech information related to the detected speech. This speech information includes information on whether the detected speech is a human voice. In addition, this speech information includes information on the determination result of whether the human voice is the owner's voice, i.e., the owner level value. When the CPU11 determines that the detected voice is human ("Yes" in step S204), it determines whether it is the owner's voice, i.e., whether the owner level is "1" or "2" (step S205). When the owner level is determined to be "1" or "2" ("Yes" in step S205), the CPU11 determines the setting time of the continuous user recognition mode according to the owner level (step S206). Here, the CPU11 sets the setting time to 1 minute when the owner level is "1"; and sets the setting time to 3 minutes when the owner level is "2". After that, the CPU11 switches the robot 1 to user recognition mode and changes the "action mode" in the status data 132 to "user recognition mode" (step S207). When step S205 ends, or when the detected voice is determined to be non-human ("No" in step S204), or when the owner level is determined to be "0" ("No" in step S205), the CPU11 ends the input determination process.
[0048] like Figure 12 As shown, after the output confirmation process is invoked, CPU11 in Figure 11In the input determination process, if it is determined that robot 1 has received an external stimulus ("Yes" in step S301), then it is determined whether to make robot 1 perform an action (step S302). For example, if robot 1 is performing another action, CPU 11 determines that the other action should be performed first, and no new action should be performed (no new action should be started). When it is determined that robot 1 should perform an action ("Yes" in step S302), CPU 11 obtains the action selection table 1332 corresponding to the determined external stimulus (step S303). CPU 11 obtains the value of the number of growth days in the status data 132 (step S304). CPU 11 determines whether to make robot 1 act in user recognition mode, that is, whether the "action mode" in the status data 132 is "user recognition mode" (step S305). When robot 1 acts in user recognition mode ("Yes" in step S305), CPU 11 determines whether to make robot 1 act in user recognition mode. Figure 11 After switching to user recognition mode in step S207, check whether the set time (1 minute or 3 minutes) determined in step S206 has elapsed (step S306). If it is determined that the set time has not elapsed ("No" in step S306), CPU11 obtains the probability table T2 of the user recognition mode corresponding to the number of growth days obtained in step S304 (step S307). In addition, when the external stimulus is "speaking", obtain one of the probability tables T2a or T2b corresponding to the owner level. If it is determined that the set time has elapsed ("Yes" in step S306), CPU11 switches the robot 1's action mode to normal mode and changes the "action mode" in status data 132 to "normal mode" (step S308). When step S308 is executed, or when it is determined in step S305 that the robot 1's action mode is not the user-recognized mode (i.e., the normal mode) ("No" in step S305), CPU 11 acquires the probability table T1 of the normal mode for the period corresponding to the number of growth days acquired in step S304 (step S309). When step S307 or S309 ends, CPU 11 determines the action to be performed by the robot 1 based on the probabilities in the acquired probability table T1 or T2 (step S310). CPU 11 sends a control signal corresponding to the action to be performed to the drive unit 40 and the sound output unit 30 (step S311). As a result, CPU 11 drives the torsion motor 41 and the up-down movement motor 42 of the drive unit 40, and outputs sound from the sound output unit 30 to make the robot 1 perform the determined action. When step S311 ends, or when the branch in either step S301 or S302 is "No", CPU 11 ends the output determination process.
[0049] As described above, the control device 10 according to this embodiment includes a CPU 11. When the CPU 11 identifies a specific user based on the detection data from the microphone 54 of the robot 1, it causes the robot 1 to operate in a user identification mode; when the robot 1 is not operated in user identification mode, it operates in normal mode. When the robot 1 operates in user identification mode, the CPU 11 determines the action to be performed by the robot 1 from a candidate action group G including the intimate action B, based on the length of the growth days of the robot 1, wherein the intimate action B is not performed in normal mode but can be performed in user identification mode. Thus, the timing and frequency of the robot 1 performing the intimate action B can be changed according to the length of the growth days corresponding to the simulated growth period of the robot 1. Therefore, the user can feel the growth of the robot 1 during the growth period from the intimate action B performed by the robot 1. Thus, the robot 1 can perform actions that make people feel like biological growth.
[0050] Furthermore, when the CPU 11 determines that the robot 1 has received an external stimulus based on the detection data from the touch sensor 51, motion sensor 52, and microphone 54, it determines the corresponding reaction action, i.e., the action, and enables the robot 1 to perform it. Thus, the robot 1 can use the approaching action B as a reaction action to the interaction between the user and the robot 1.
[0051] Furthermore, the CPU 11 determines an action from a candidate action group G that includes both the affinity action B and a regular action A that differs from the affinity action B, based on the probability corresponding to the length of the growth days. Thus, the frequency of performing the affinity action B can be adjusted according to the growth of the robot 1. Therefore, a robot 1 with more biological characteristics can be realized.
[0052] Furthermore, CPU 11 can also determine the action by selecting the affinity action B with a higher probability as the robot 1 grows. This allows the frequency of performing the affinity action B to increase as the robot 1 grows. Therefore, it can represent the state where the robot 1 becomes increasingly closer to the user as it grows. Thus, a more biologically-like robot 1 can be achieved.
[0053] Furthermore, the number of affinity actions B selected from the candidate action group G can be determined based on the length of the growth period. Therefore, the types of affinity actions B performed by robot 1 can be changed according to its growth. Thus, a robot 1 with more biological characteristics can be realized.
[0054] Furthermore, the number of affinity actions B included in the candidate action group G that become the selection target can be set to increase as the growth period lengthens. This allows the number of different affinity actions B performed by robot 1 to increase as it grows. Therefore, it is possible to create a robot 1 with more biological characteristics.
[0055] Furthermore, the robot 1 according to this embodiment includes a control device 10 and a microphone 54. Thus, it is possible to realize a robot 1 that can perform actions that are perceived by humans as if a living organism is growing.
[0056] Furthermore, according to the determination method of this embodiment, by executing the above-described processing by the CPU 11, the robot 1 can perform actions that are perceptible to humans as if it were a biological growth process. In addition, the program 131 of this embodiment causes the CPU 11 to execute the above-described processing. Thus, the robot 1 can perform actions that are perceptible to humans as if it were a biological growth process.
[0057] Furthermore, this disclosure is not limited to the above-described embodiments and various modifications are possible. For example, the user recognition mode can also be any action mode performed by robot 1 (CPU 11) when a specific user is identified. Furthermore, although a specific action is described using a closeness action as an example, it is not limited to this. A specific action can also be any action (movement) that is not performed in the normal mode but can be performed in the user recognition mode.
[0058] Furthermore, in the above embodiment, the example described is based on identifying a specific user based on the detection result of the user's speech and using it as a trigger condition for switching to user recognition mode, but it is not limited to this method. For example, a specific user can also be identified by detecting a specific external stimulus to robot 1 (e.g., a "horizontal tap") and used as a trigger condition for switching to user recognition mode. The external stimulus is detected by the sensing unit 50, which acts as a "sensor".
[0059] Furthermore, while the simulated growth period is illustrated using the number of growth days as an example, it is not limited to this. For instance, the simulated growth period could also be the cumulative motion length from the first start of robot 1. That is, the unit for the simulated growth period is not limited to days; it could also be hours, minutes, or seconds, etc.
[0060] Furthermore, the composition of Robot 1 is not limited to Figures 1-3 The examples provided are as follows. For instance, robots could be robots that mimic real-world creatures such as humans, animals, birds, and fish, robots that mimic extinct creatures such as dinosaurs, or robots that mimic fictional creatures.
[0061] Furthermore, the above description discloses an example of using the flash memory of storage unit 13 as a computer-readable medium for the program involved in this disclosure, but it is not limited to this example. Other computer-readable media may include information storage media such as HDD (HardDisk Drive), SSD (Solid State Drive), and CD-ROM.
[0062] Furthermore, a carrier wave is also applicable to this disclosure as a medium for providing data of the procedures disclosed via a communication line.
[0063] In existing technologies, the rules for selecting actions based on detection results are pre-programmed and fixed. Therefore, even if the cumulative action length increases, the selected action will not change. Consequently, users cannot perceive the robot's growth as the cumulative action length increases, lacking biological characteristics.
[0064] This disclosure enables robots to perform actions that humans can perceive as biological growth.
[0065] Furthermore, robot 1 performs motion determination processing by branching between user recognition mode and normal mode. Only in user recognition mode, it determines motion based on the length of the simulation growth period, targeting candidate motion groups containing specific motions. This suppresses unnecessary candidate evaluation and recalculation in normal mode, reducing the load on the processing unit. Moreover, the information required for motion determination can be limited based on robot 1's motion mode and simulation growth period, thus reducing the amount of temporary data in the working memory.
[0066] Furthermore, the detailed structure and operation of each component of robot 1 in the above embodiments can, of course, be appropriately modified without departing from the spirit of this disclosure. Although embodiments of the present invention have been described, the scope of this disclosure is not limited to the above embodiments, but also includes the scope of the invention as set forth in the claims and its equivalents.
Claims
1. A control device comprising one or more processing units, characterized in that, The processing unit is configured as follows: When a specific user is identified based on detection data from the robot's sensors, the robot operates in a user identification mode; otherwise, it operates in its normal mode. During the operation of the robot in the user identification mode, an action to be performed by the robot is determined from a candidate action group containing a specific action based on the length of the robot's simulated growth period, wherein the specific action is not performed in the normal mode but is performed in the user identification mode.
2. The control device according to claim 1, characterized in that, When one or more processing units determine that the robot has been subjected to a specified external stimulus based on the detection data of the sensor, they determine the action as a response action corresponding to the external stimulus and cause the robot to perform the action.
3. The control device according to claim 1, characterized in that, The one or more processing units determine the action from the candidate action group, which includes the specific action and general actions different from the specific action, according to the probability corresponding to the length of the simulated growth period.
4. The control device according to claim 3, characterized in that, The one or more processing units determine the action such that the longer the simulated growth period, the higher the probability of selecting the specific action.
5. The control device according to claim 1, characterized in that, The one or more processing units determine the action from the candidate action group, which includes the specific action and general actions different from the specific action. The number of the specific actions included in the candidate action group that become the selection target depends on the length of the simulated growth period.
6. The control device according to claim 5, characterized in that, The number of the specific actions included in the candidate action group that become the selection target is determined in such a way that the longer the simulated growth period, the greater the number.
7. A robot, characterized in that, have: The control device according to claim 1; and The sensor.
8. A control method, which is a control method executed by a computer, characterized in that, include: When a specific user is identified based on detection data from the robot's sensors, the robot operates in a user identification mode; otherwise, it operates in its normal mode. During the operation of the robot in the user identification mode, an action to be performed by the robot is determined from a candidate action group containing a specific action based on the length of the robot's simulated growth period, wherein the specific action is not performed in the normal mode but is performed in the user identification mode.
9. A computer program product, characterized in that, The computer will perform the following processes: When a specific user is identified based on detection data from the robot's sensors, the robot operates in a user identification mode; otherwise, it operates in its normal mode. During the operation of the robot in the user identification mode, an action to be performed by the robot is determined from a candidate action group containing a specific action based on the length of the robot's simulated growth period, wherein the specific action is not performed in the normal mode but is performed in the user identification mode.
Citation Information
Patent Citations
Autonomous walking robot device
JP2002059389A
Terminal unit and communication method
JP2025076533A
