IP Library Granted Patent US 10,828,784
Granted Patent B2
US 10,828,784 · App. 16/301,055 · Granted Nov 10, 2020

Method and apparatus for controlling dancing of service robot

Inventor: Liang Zhang (Weifang, CN)
Assignee: Goertek Inc.
B25J11/0035B25J9/1664B25J11/008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,828,784
App. No.
16/301,055
Granted
Nov 10, 2020
Kind
B2
Abstract

A method and apparatus for controlling dancing of a service robot are provided. The method comprises: providing corresponding part controlling commands for preset actions of individual parts of the service robot, and providing a dance controlling strategy indicating times for sending a command and a command sending interval of the part controlling commands; when receiving a dance starting command, establishing a wireless connection with an external speaker located outside the service robot, loading a song from a song library of the service robot, and determining that the song currently loaded by the service robot is the song to be played by the external speaker; according to the loaded song, selecting a dance controlling strategy used by the service robot, and determining a command sending timing of the part controlling command of the dance controlling strategy; and when the external speaker is playing the song and the command sending timing of the dance controlling strategy arrives, sending a randomly selected part controlling command to the corresponding part of the service robot till the times for sending a command of the dance controlling strategy is reached, and controlling the service robot to dance to the song.

Claims (68)

1. A method for controlling dancing of a service robot by providing a part controlling command corresponding to a preset action of a part of the service robot, and providing a dance controlling strategy indicating a time point for sending the part controlling command and a time duration for sending the part controlling command, the method comprising:

establishing a wireless connection with an external speaker located outside the service robot in response to receiving a dance starting command, loading a song from a song library of the service robot, and determining that the song loaded from the song library is a song to be played by the external speaker;

selecting the dance controlling strategy to be used by the service robot in response to the song loaded from the song library, and determining the time point for sending the part controlling command and the time duration for sending the part controlling command in response to the dance controlling strategy;

playing the song loaded from the song library via the external speaker;

randomly selecting the part controlling command from a plurality of part controlling commands;

sending the part controlling command to the part of the service robot for the time duration for sending the part controlling command in response to reaching the time point within the dance controlling strategy, and controlling the service robot to dance to the song loaded from the song library in response to the part controlling command.

2. The method according to claim 1 , wherein the dance controlling strategy is selected in response to at least one of:

a tempo of the song; and,

a stored relationship between the song and the dance controlling strategy.

3. The method according to claim 2 , wherein selecting the dance controlling strategy used by the service robot according to the tempo of the song includes:

determining a time interval for sending two successive part controlling commands according to a relation between the tempo of the song and a motor speed of the part of the service robot, and selecting the dance controlling strategy in response to the time interval for sending two successive part controlling commands such that

when the tempo of the song is greater than or equal to the motor speed, the time interval for sending two successive part controlling commands is greater than or equal to one beat and when the tempo of the song is less than the motor speed, the time interval for sending two successive part controlling commands is less than one beat.

4. The method according to claim 3 , wherein determining a time interval for sending two successive part controlling commands according to a relation between the tempo of the song and the motor speed of the part of the service robot includes:

determining a minimum time interval for sending two successive part controlling commands is one beat when the tempo of the song is less than a first multiple of the motor speed and greater than a second multiple of the motor speed;

determining the minimum time interval for sending two successive part controlling commands is two beats when the tempo of the song is greater than the first multiple of the motor speed; and

determining the minimum time interval for sending two successive part controlling commands is half of one beat when the tempo of the song is less than the second multiple of the motor speed;

wherein the first multiple of the motor speed is greater than the second multiple of the motor speed.

5. The method according to claim 3 , selecting the dance controlling strategy used by the service robot according to the tempo of the song further includes:

determining the time point for sending the part controlling command sent last time in the dance controlling strategy is a play end point of the song;

switching the dance controlling strategy, and re-determining times for sending the part controlling commands and a time interval for sending the part controlling commands of a dance controlling strategy after the switching in response to the time point for sending the part controlling command sent last time in the selected dance controlling strategy not being the play end point of the song, wherein the time interval of the part controlling commands of the dance controlling strategy after the switching is different from that before the switching; and

switching to a reset controlling strategy of the song loaded from the song library, and determining a reset controlling command indicated by the reset controlling strategy in response to the time point for sending the part controlling command sent last time in the dance controlling strategy being the play end point of the song, wherein the reset controlling command restores the individual parts of the service robot to gestures before the dance or to specified gestures.

6. The method according to claim 1 , wherein when the external speaker is playing the song and the time point for sending the part controlling commands in the selected dance controlling strategy arrives, sending the part controlling command to the part of the service robot including at least one of:

randomly selecting one part controlling command, or randomly selecting two or more part controlling commands of different parts in response to the time point for sending the part controlling commands in the selected dance controlling strategy; and,

selecting one part controlling command, or selecting two or more part controlling commands of different parts, according to a sending order number of the part controlling command corresponding to an arrived time point for sending the part controlling commands.

7. The method according to claim 6 , wherein selecting one part controlling command, or selecting two or more part controlling commands of different parts according to a sending order number of the part controlling command corresponding to the arrived time point for sending the part controlling commands includes:

dividing the dance controlling strategy into a plurality of sub-controlling strategies, wherein each of the sub-controlling strategies includes a pre-controlling strategy and a post-controlling strategy, and times for sending the part controlling commands in the pre-controlling strategy and times for sending the part controlling commands in the post-controlling strategy are same;

determining a sub-controlling strategy for the arrived time point for sending the part controlling commands according to the sending order number of the part controlling command corresponding to the arrived time point for sending the part controlling commands;

randomly selecting one part controlling command, or selecting two or more part controlling commands of different parts in response to the arrived time point for sending the part controlling commands belonging to the pre-controlling strategy of the sub-controlling strategy currently used; and

selecting a part controlling command whose action effect corresponds to that of the part controlling command corresponding to the pre-controlling strategy when the arrived time point for sending the part controlling commands belongs to the post-controlling strategy of the sub-controlling strategy currently used.

8. The method according to claim 1 , wherein providing the part controlling command corresponding to the preset action of the part of the service robot includes providing a fixed part controlling command indicating the turning of the part of the service robot at a fixed angle, and providing a random part controlling command indicating the turning of the part of the service robot at a random angle;

providing a dance mode corresponding to the song loaded from the song library, wherein the dance mode indicates a selection mode of the part controlling commands; and

parsing the dance mode corresponding to the song loaded from the song library, and

randomly selecting a fixed part controlling command, in response to the song loaded from the song library corresponding to a fixed dance mode;

randomly selecting one random part controlling command in response to the song loaded from the song library corresponding to a random dance mode;

selecting a fixed part controlling command or a random part controlling command, in response to the song loaded from the song library corresponds to a regular dance mode; and

controlling the selected dance controlling strategy to select the part controlling command according to one of the fixed dance mode, the random dance mode, and the regular dance mode in response to the song loaded from the song library corresponds to a mixed dance mode.

9. An apparatus for controlling dancing of a service robot, comprising:

a storing unit configured for storing a part controlling command corresponding to a preset action of individual parts of the service robot, and storing a dance controlling strategy indicating a time for sending the part controlling commands and a time interval for sending the part controlling commands;

a connecting unit configured for establishing a wireless connection with an external speaker located outside the service robot in response to receiving a dance starting command;

a loading unit configured for loading a song from a song library of the service robot, and determining that the song loaded from the song library is a song to be played by the external speaker in response to receiving a dance starting command;

a selecting unit configured for selecting the dance controlling strategy used by the service robot, and determining a time point for sending the part controlling command in the dance controlling strategy in response to the song loaded from the song library; and

a controlling unit configured for sending the part controlling command to a part of the service robot corresponding to the selected dance controlling strategy in response to the time point for sending the part controlling command, and controlling the service robot to dance to the song loaded from the song library in response to the external speaker playing the song loaded from the song library and the time point for sending the part controlling commands in the selected dance controlling strategy;

wherein the selecting unit includes a time point determining module for determining the time point for sending the part controlling command in response the dance controlling strategy and the time interval for sending the part controlling command.

10. The apparatus according to claim 9 , wherein the selecting unit is configured for selecting the dance controlling strategy used by the service robot in response to at least one of a tempo of the song loaded from the song library; and,

a stored relationship between a song and a dance controlling strategy wherein the stored relationship is stored in the storing unit.

11. The apparatus according to claim 10 wherein the time point determining module is further configured for determining a time interval for sending two successive part controlling commands according to a relation between the tempo of the song loaded from the song library and motor speeds of the individual parts of the service robot, and selecting a dance controlling strategy that satisfies the time interval for sending two successive part controlling commands;

determining that the time interval for sending two successive part controlling commands is greater than or equal to one beat in response to the tempo of the song loaded from the song library being greater than or equal to the motor speed of the service robot, determining that the time interval for sending two successive part controlling commands is less than one beat in response to the tempo of the song loaded from the song library being less than the motor speed of the service robot, or determining that the time interval for sending two successive part controlling commands is greater than or equal to one beat.

12. The apparatus according to claim 11 wherein the time point determining module is configured for:

determining that a minimum time interval for sending successive part controlling commands is one beat in response to the tempo of the song loaded from the song library being less than a first multiple of the motor speed and greater than a second multiple of the motor speed;

determining that a minimum time interval for sending two successive part controlling commands is two beats in response to the tempo of the song loaded from the song library is greater than the first multiple of the motor speed; and

determining that a minimum time interval for sending two successive part controlling commands is half of one beat in response to the tempo of the song loaded from the song library is less than the second multiple of the motor speed;

wherein the first multiple of the motor speed is greater than the second multiple of the motor speed.

13. The apparatus according to claim 11 , wherein the selecting unit further comprises a dance controlling strategy switching module configured for determining a time point for sending the part controlling command sent last time in the selected dance controlling strategy being a play end point of the song loaded from the song library in response to the time for sending the part controlling command indicated by the selected dance controlling strategy;

switching the selected dance controlling strategy, and re-determining times for sending the part controlling commands and a time interval for sending the part controlling commands of a dance controlling strategy after the switching by using the time point determining module in response to the time point for sending the part controlling command sent last time in the selected dance controlling strategy not being the play end point of the song loaded from the song library, wherein the time interval of the part controlling commands of the dance controlling strategy after the switching is different from that before the switching; and

switching to a reset controlling strategy of the song loaded from the song library, and determining a reset controlling command indicated by the reset controlling strategy in response to the time point for sending the part controlling command sent last time in the selected dance controlling strategy being the play end point of the song loaded from the song library, wherein the reset controlling command restores the individual parts of the service robot to gestures before the dance or to specified gestures.

14. The apparatus according to claim 9 , wherein the controlling unit comprises a part controlling command selecting module configured for at least one of randomly selecting one part controlling command, or randomly selecting two or more part controlling commands of different parts in response to the time point for sending the part controlling commands in the selected dance controlling strategy; and,

selecting one part controlling command, or selecting two or more part controlling commands of different parts in response to a sending order number of the part controlling command corresponding to the arrived time point for sending the part controlling commands.

15. The apparatus according to claim 14 , wherein the selected dance controlling strategy being divided into a plurality of sub-controlling strategies, wherein each of the sub-controlling strategies comprises a pre-controlling strategy and a post-controlling strategy, and times for sending the part controlling commands in the pre-controlling strategy and times for sending the part controlling commands in the post-controlling strategy are same; and

the part controlling command selecting module configured for:

determining a sub-controlling strategy for the arrived time point for sending the part controlling commands in response to the sending order number of the part controlling command corresponding to the arrived time point for sending the part controlling commands;

randomly selecting one part controlling command, or selecting two or more part controlling commands of different parts in response to the arrived time point for sending the part controlling commands belonging to the pre-controlling strategy of the sub-controlling strategy currently used; and

selecting a part controlling command whose action effect corresponds to that of the part controlling command corresponding to the pre-controlling strategy in response to the arrived time point for sending the part controlling commands belongs to the post-controlling strategy of the sub-controlling strategy currently used.

16. The apparatus according to claim 9 , wherein the part controlling command includes a fixed part controlling command indicating the turning of the body part of the service robot at a fixed angle and a random part controlling command indicating the turning of the body part of the service robot at a random angle;

the controlling unit further including a dance mode parsing module for parsing the dance mode corresponding to the song loaded from the song library, wherein the dance mode indicates a selection mode of the part controlling commands and wherein the controlling unit is further configured for

randomly selecting a fixed part controlling command, or randomly selecting two or more fixed part controlling commands of different parts in response to the song loaded from the song library corresponding to a fixed dance mode and the time point for sending the part controlling commands in the selected dance controlling strategy;

randomly selecting one random part controlling command, or randomly selecting two or more random part controlling commands of different parts in response to the song loaded from the song library corresponding to a random dance mode and the time point for sending the part controlling commands in the selected dance controlling strategy;

selecting one fixed part controlling command or random part controlling command, or selecting two or more fixed part controlling commands or random part controlling commands of different parts in response to the song loaded from the song library corresponding to a regular dance mode and the time point for sending the part controlling commands in the selected dance controlling strategy; and

controlling the selected dance controlling strategy to select a part controlling command according to one of the fixed dance mode, the random dance mode, and the regular dance mode in response to the song loaded from the song library corresponding to a mixed dance mode.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2018
From: ZHANG, LIANG
To: GOERTEK INC.
Reel/Frame 047496/0199 →
Priority Claims (1)
CN 2016 1 0555450 · Jul 14, 2016 · national
Continuity (1)
Related Publication 20190184575A1 · Jun 20, 2019