JP2017196675A - Operation controller - Google Patents

Operation controller Download PDF

Info

Publication number
JP2017196675A
JP2017196675A JP2016087342A JP2016087342A JP2017196675A JP 2017196675 A JP2017196675 A JP 2017196675A JP 2016087342 A JP2016087342 A JP 2016087342A JP 2016087342 A JP2016087342 A JP 2016087342A JP 2017196675 A JP2017196675 A JP 2017196675A
Authority
JP
Japan
Prior art keywords
robot
information
motion
unit
beat
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016087342A
Other languages
Japanese (ja)
Other versions
JP6616231B2 (en
Inventor
裕康 馬場
Hiroyasu Baba
裕康 馬場
陽太郎 茂木
Yotaro Mogi
陽太郎 茂木
祥平 藤井
Shohei Fujii
祥平 藤井
光雄 原
Mitsuo Hara
光雄 原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Soken Inc
Original Assignee
Denso Corp
Soken Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp, Soken Inc filed Critical Denso Corp
Priority to JP2016087342A priority Critical patent/JP6616231B2/en
Publication of JP2017196675A publication Critical patent/JP2017196675A/en
Application granted granted Critical
Publication of JP6616231B2 publication Critical patent/JP6616231B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide an operation controller for controlling operation of a robot, with which followability of operation is maintained with respect to music even when tempo of the music changes.SOLUTION: An operation controller 10 includes: a data acquisition part 102 for acquiring MIDI information of music played; an operation calculation part 103 for executing calculation processing that calculates currently played measures and beats on the basis of ticks, time bases, and time signatures contained in the acquired MIDI information, and for executing determination processing that determines whether the currently played measures and beats are the timing for making the robot perform a specific operation; and an operation output part 104 for outputting an operation instruction on the basis of a determination processing result of the operation calculation part 103.SELECTED DRAWING: Figure 1

Description

本発明は、ロボットの動作を制御する動作制御装置に関する。   The present invention relates to an operation control apparatus that controls the operation of a robot.

ロボットとしては、従来人が行っていた作業を代替することを主目的とするものや、人が行うには負荷が大きすぎる作業を行うことを主目的とするものが知られている。これらに対して、音楽に基づいて動作のバリエーションをつけるものが、下記特許文献1のように提案されている。下記特許文献1に記載の音響再生ロボットは、駆動機構と、バッファー処理部と、音響解析部と、駆動機構制御部と、を備えている。バッファー処理部は、音響データ列を順次蓄積する部分である。音響解析部は、バッファー処理部に蓄積されている音響データ列から音響に関する特徴量を抽出する部分である。駆動機構制御部は、音響解析部で抽出された特徴量に基づいて駆動機構を制御する部分である。   As robots, there are known robots whose main purpose is to replace work that has been performed by humans and those whose main purpose is to perform work that is too heavy for humans to perform. On the other hand, Patent Document 1 below proposes an operation variation based on music. The acoustic reproduction robot described in Patent Document 1 below includes a drive mechanism, a buffer processing unit, an acoustic analysis unit, and a drive mechanism control unit. The buffer processing unit is a part that sequentially stores the acoustic data string. The acoustic analysis unit is a part that extracts a feature amount related to sound from the acoustic data sequence stored in the buffer processing unit. The drive mechanism control unit is a part that controls the drive mechanism based on the feature amount extracted by the acoustic analysis unit.

特開2008−200843号公報JP 2008-200843 A

上記従来の技術では、音響データ列を順次蓄積するサンプリングを実行する必要があることに加え、そのサンプリングした音響データ列から特徴量を抽出する処理も必要となっていた。このような構成では、例えば音楽のテンポが変わるのに同調させてロボットの動きを変化させたい場合に、処理が追従できないものと考えられる。   In the conventional technique described above, it is necessary to perform sampling for sequentially accumulating the acoustic data strings, and in addition, it is necessary to extract a feature amount from the sampled acoustic data strings. In such a configuration, for example, when it is desired to change the movement of the robot in synchronization with the change in the music tempo, it is considered that the process cannot follow.

本発明はこのような課題に鑑みてなされたものであり、その目的は、ロボットの動作を制御する動作制御装置であって、音楽のテンポが変わった場合でも音楽に対する動作の追従性を保つことができる動作制御装置を提供することにある。   The present invention has been made in view of the above problems, and an object of the present invention is an operation control device that controls the operation of a robot, and maintains tracking of the operation of music even when the tempo of the music changes. An object of the present invention is to provide an operation control device capable of

上記課題を解決するために、本発明に係る動作制御装置は、ロボットの動作を制御する動作制御装置であって、流れている音楽のMIDI情報を取得するデータ取得部(102)と、取得したMIDI情報に含まれるティックと、タイムベースと、拍子記号と、に基づいて、現在流れている小節及び拍を算出する算出処理を実行し、現在流れている小節及び拍が、前記ロボットに特定の動作をさせるタイミングであるか否かを判断する判断処理を実行する動作演算部(103)と、前記動作演算部の判断処理結果に基づいて動作指示を出力する動作出力部(104)と、を備える。   In order to solve the above-mentioned problem, the motion control device according to the present invention is a motion control device that controls the motion of the robot, and the data acquisition unit (102) that acquires the MIDI information of the flowing music Based on the tick, time base, and time signature included in the MIDI information, a calculation process is performed to calculate a currently flowing measure and beat, and the currently flowing measure and beat are specified to the robot. An operation calculation unit (103) for executing a determination process for determining whether or not it is a timing to perform an operation; and an operation output unit (104) for outputting an operation instruction based on the determination process result of the operation calculation unit. Prepare.

本発明によれば、MIDI情報に含まれるティックと、MIDI情報に同じく含まれるか別途設定されるタイムベースと、MIDI情報に同じく含まれるか別途設定される拍子記号と、に基づいて、ロボットに特定の動作をさせるタイミングを判断するので、流れている音楽を分析することなくロボットに音楽に合わせた動作をさせることができる。MIDI情報のテンポが変化すると小節及び拍のタイミングも変化し、その変化に追従させてロボットの動作をコントロールすることができる。   According to the present invention, the robot is based on the tick included in the MIDI information, the time base that is also included in the MIDI information or set separately, and the time signature that is also included in the MIDI information or set separately. Since the timing for performing a specific action is determined, it is possible to cause the robot to perform an action according to the music without analyzing the music that is flowing. When the tempo of the MIDI information changes, the bar and beat timing also changes, and the robot operation can be controlled by following the changes.

尚、「課題を解決するための手段」及び「特許請求の範囲」に記載した括弧内の符号は、後述する「発明を実施するための形態」との対応関係を示すものであって、「課題を解決するための手段」及び「特許請求の範囲」に記載の発明が、後述する「発明を実施するための形態」に限定されることを示すものではない。   Reference numerals in parentheses described in “Means for Solving the Problems” and “Claims” indicate a correspondence relationship with “Mode for Carrying Out the Invention” described later, It does not indicate that the invention described in “Means for Solving the Problems” and “Claims” is limited to “Mode for Carrying Out the Invention” described later.

本発明によれば、ロボットの動作を制御する動作制御装置であって、音楽のテンポが変わった場合でも音楽に対する動作の追従性を保つことができる動作制御装置を提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, it is an operation control apparatus which controls operation | movement of a robot, Comprising: Even when the tempo of music changes, the operation control apparatus which can maintain the tracking of the operation | movement with respect to music can be provided.

図1は、本発明の実施形態に係る動作制御装置の機能的な構成を示すブロック図である。FIG. 1 is a block diagram showing a functional configuration of an operation control apparatus according to an embodiment of the present invention. 図2は、図1に示される動作制御装置の処理を説明するためのフローチャートである。FIG. 2 is a flowchart for explaining the processing of the operation control apparatus shown in FIG. 図3は、図1に示される動作制御装置の処理を説明するためのフローチャートである。FIG. 3 is a flowchart for explaining processing of the operation control apparatus shown in FIG. 図4は、図1に示される動作制御装置の処理を説明するためのフローチャートである。FIG. 4 is a flowchart for explaining the processing of the operation control apparatus shown in FIG. 図5は、制御対象となるロボットの一例を説明するための図である。FIG. 5 is a diagram for explaining an example of a robot to be controlled. 図6は、図5に示されるロボットの動作を規定する情報の一例を説明するための図である。FIG. 6 is a diagram for explaining an example of information defining the operation of the robot shown in FIG. 図7は、図1に示される動作制御装置の処理を説明するためのフローチャートである。FIG. 7 is a flowchart for explaining processing of the operation control apparatus shown in FIG.

以下、添付図面を参照しながら本発明の実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。   Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In order to facilitate the understanding of the description, the same constituent elements in the drawings will be denoted by the same reference numerals as much as possible, and redundant description will be omitted.

本実施形態に係る動作制御装置は、ロボットの動作を制御するものであって、ハードウェアとしては、CPU(Central Processing Unit)といった演算装置、ROM(Read Only Memory)やRAM(Random Access Memory)といった記憶装置、入出力インターフェイス、通信装置といったものを有するコンピュータシステムである。   The motion control device according to the present embodiment controls the motion of the robot. As hardware, an arithmetic device such as a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory) are used. A computer system including a storage device, an input / output interface, a communication device, and the like.

図1に示される動作制御装置10は、機能的な構成要素として、設定受付部101と、データ取得部102と、動作演算部103と、動作出力部104と、動作情報格納部105と、を備えている。   The operation control apparatus 10 shown in FIG. 1 includes, as functional components, a setting reception unit 101, a data acquisition unit 102, an operation calculation unit 103, an operation output unit 104, and an operation information storage unit 105. I have.

設定受付部101は、拍子記号を含む設定情報を受け付ける部分である。拍子記号とは、1小節に入る音符の数を特定する記号である。拍子記号は、分母と分子から構成されている。拍子記号の分母は、1拍になる音符の種類を示している。拍子記号の分子は、1小節に入る音符の数を示している。例えば、4分の4拍子を示す拍子記号であれば、1拍になる音符が4分音符であり、1小節が4分音符4つ分の長さであることを示している。設定受付部101は、拍子記号を含む設定情報を動作演算部103に出力する。   The setting receiving unit 101 is a part that receives setting information including a time signature. The time signature is a symbol that specifies the number of notes that enter one measure. The time signature consists of a denominator and a numerator. The denominator of the time signature indicates the type of note that becomes one beat. The numerator of the time signature indicates the number of notes that enter one measure. For example, in the case of a time signature indicating a quarter of a time signature, it is indicated that a note that is one beat is a quarter note, and a measure is four quarter notes long. The setting receiving unit 101 outputs setting information including a time signature to the operation calculating unit 103.

データ取得部102は、音響データとしてMIDI情報を取得する部分である。データ取得部102は、流れている音楽のMIDI情報を取得する。データ取得部102は、取得したMIDI情報を動作演算部103に出力する。MIDIとは、Musical Instrument Digital Interfaceの略である。MIDI情報とは、MIDI規格に沿った音楽データである。MIDI規格では、データの1つ1つを「イベント」と呼称している。「イベント」には、「ノートオン」「ノートオフ」「ピッチベンド」「コントロールチェンジ」「プログラムチェンジ」といった情報が含まれる。   The data acquisition unit 102 is a part that acquires MIDI information as acoustic data. The data acquisition unit 102 acquires MIDI information of the music being played. The data acquisition unit 102 outputs the acquired MIDI information to the operation calculation unit 103. MIDI is an abbreviation for Musical Instrument Digital Interface. MIDI information is music data that conforms to the MIDI standard. In the MIDI standard, each piece of data is called an “event”. The “event” includes information such as “note on”, “note off”, “pitch bend”, “control change”, and “program change”.

MIDI情報における時間の最小単位は、「ティック」と呼称されている。1ティックがどれくらいの時間長さかは、「タイムベース」及び「テンポ」によって特定される。タイムベースは、「分解能」とも呼称される。タイムベースは、4分音符が何ティックかを設定する情報となっている。例えば、タイムベースが120であれば、4分音符が120ティックになるので、8分音符が60ティック、全音符は480ティックとなる。   The minimum unit of time in MIDI information is called “tick”. How long a tick is is specified by “time base” and “tempo”. The time base is also referred to as “resolution”. The time base is information for setting how many ticks the quarter note is. For example, if the time base is 120, the quarter note is 120 ticks, so the eighth note is 60 ticks and the whole note is 480 ticks.

テンポは、1分間における拍数で示される。従って、1ティックの時間(秒)は、60(秒)/テンポ/タイムベースによって算出することができる。例えば、テンポが120で、タイムベースが480だとすると、1ティックは1/960秒となる。   The tempo is indicated by the number of beats per minute. Therefore, the time (second) of one tick can be calculated by 60 (seconds) / tempo / time base. For example, if the tempo is 120 and the time base is 480, one tick is 1/960 seconds.

動作演算部103は、取得したMIDI情報に含まれるティックと、タイムベースと、拍子記号と、に基づいて、現在流れている小節及び拍を算出する算出処理を実行し、現在流れている小節及び拍が、ロボットに特定の動作をさせるタイミングであるか否かを判断する判断処理を実行する部分である。MIDI情報は、データ取得部102から出力される。ティック及びタイムベースはMIDI情報に含まるものであって、その意味は上記した通りである。尚、拍子記号もMIDI情報に含まれているので、設定受付部101が必ずしも拍子記号を受け取らなくてもよい。   The motion calculation unit 103 executes a calculation process for calculating a currently flowing measure and beat based on the tick, time base, and time signature included in the acquired MIDI information, and the currently flowing measure and This is a part for executing a determination process for determining whether or not the beat is a timing for causing the robot to perform a specific action. The MIDI information is output from the data acquisition unit 102. The tick and time base are included in the MIDI information, and their meanings are as described above. Since the time signature is also included in the MIDI information, the setting reception unit 101 does not necessarily receive the time signature.

現在の小節をMeasure、現在のティックをCurrent_tick、タイムベースをResolution、拍子記号の分母である音価をPhonetic_value、拍子記号の分子である拍数をBeats、現在の拍をBeat とすると、現在の小節及び拍は次の2式によって求められる。

Figure 2017196675
Figure 2017196675
If the current measure is Measurement, the current tick is Current_tick, the time base is Resolution, the time signature denominator is Phonetic_value, the time signature numerator is Beats, and the current beat is Beat. And the beat is obtained by the following two formulas.
Figure 2017196675
Figure 2017196675

動作演算部103は、このように現在流れている小節及び拍を算出する。動作演算部103は更に、動作情報格納部105に格納されている情報に基づいて、現在の小節及び拍がロボットに特定の動作をさせるタイミングであるか否かを判断する。動作演算部103は、判断処理の結果を動作出力部104に出力する。動作情報格納部105には、小節及び拍とロボット姿勢の対応情報が格納されている。   The motion calculation unit 103 thus calculates the current measure and beat. Further, based on the information stored in the motion information storage unit 105, the motion calculation unit 103 determines whether the current measure and beat are the timing for causing the robot to perform a specific motion. The motion calculation unit 103 outputs the result of the determination process to the motion output unit 104. The motion information storage unit 105 stores correspondence information between measures and beats and robot postures.

動作出力部104は、動作演算部103の判断処理結果に基づいて動作指示を出力する部分である。動作出力部104は、動作指示を制御対象としてのロボットに出力する。動作制御装置10が制御対象としてのロボットと一体的に設けられている場合は、ロボットの動作機構部に対して動作指示を出力する。   The operation output unit 104 is a part that outputs an operation instruction based on the determination processing result of the operation calculation unit 103. The operation output unit 104 outputs an operation instruction to a robot as a control target. When the motion control device 10 is provided integrally with a robot to be controlled, an operation instruction is output to the motion mechanism unit of the robot.

続いて、図2を参照しながら、動作制御装置10の処理について説明する。ステップS101では、設定受付部101が拍子記号を設定する。MIDI情報に含まれる拍子記号を用いる場合は、データ取得部102又は動作演算部103が拍子記号を設定する。   Next, processing of the operation control device 10 will be described with reference to FIG. In step S101, the setting reception unit 101 sets a time signature. When using the time signature included in the MIDI information, the data acquisition unit 102 or the operation calculation unit 103 sets the time signature.

ステップS101に続くステップS102では、データ取得部102がMIDI情報の読み込みを開始する。ステップS102に続くステップS103では、動作演算部103がタイムベースの設定を行う。   In step S102 following step S101, the data acquisition unit 102 starts reading MIDI information. In step S103 following step S102, the operation calculation unit 103 sets a time base.

ステップS103に続くステップS104では、動作演算部103が、現在のティックから現在の小節及び拍を算出する。算出方法は上記した通りである。ステップS104に続くステップS105では、動作演算部103が、算出した小節及び拍と動作情報格納部105に格納されているマップとを比較参照する。   In step S104 following step S103, the motion calculation unit 103 calculates the current measure and beat from the current tick. The calculation method is as described above. In step S <b> 105 following step S <b> 104, the motion calculation unit 103 compares and refers to the calculated bar and beat and the map stored in the motion information storage unit 105.

ステップS105に続くステップS106では、動作演算部103が、現在の小節及び拍がロボット姿勢を変化させる小節及び拍であるか否かを判断する。具体的には、動作情報格納部105に格納されているマップにおいて、ロボットが動作するタイミングとして特定されている小節及び拍と現在の小節及び拍とが合致するか否かを判断する。現在の小節及び拍がロボット姿勢を変化させる小節及び拍であればステップS107の処理に進み、現在の小節及び拍がロボット姿勢を変化させる小節及び拍でなければステップS104の処理に戻る。   In step S106 following step S105, the motion calculation unit 103 determines whether or not the current measure and beat are the measure and beat that change the robot posture. Specifically, in the map stored in the motion information storage unit 105, it is determined whether or not the bar and beat specified as the timing of the robot movement match the current bar and beat. If the current measure and beat are those that change the robot posture, the process proceeds to step S107, and if the current measure and beat is not the measure and beat that changes the robot posture, the process returns to step S104.

ステップS107では、動作出力部104がロボットに対して動作指示を出力する。ステップS107に続くステップS107では、動作演算部103が、MIDI情報が終了したか否かを判断する。具体的には、データ取得部102から出力されるMIDI情報が停止したか否かで判断する。MIDI情報が終了していれば処理を終了し、MIDI情報が終了していなければステップS104の処理に戻る。   In step S107, the operation output unit 104 outputs an operation instruction to the robot. In step S107 following step S107, the motion calculation unit 103 determines whether or not the MIDI information has been completed. Specifically, the determination is made based on whether or not the MIDI information output from the data acquisition unit 102 is stopped. If the MIDI information has ended, the process ends. If the MIDI information does not end, the process returns to step S104.

図2を参照しながら説明した例では、MIDI情報が入力されると処理を開始し、MIDI情報が終了すると処理を終了するものであった。MIDI規格では様々な情報を含めるフォーマットが規定されているので、これを利用してロボットの操作開始・終了をコントロールすることができる。図3を参照しながら、この例について説明する。   In the example described with reference to FIG. 2, the process starts when MIDI information is input, and the process ends when the MIDI information ends. Since the MIDI standard defines a format that includes various information, it is possible to control the start / end of the operation of the robot using this format. This example will be described with reference to FIG.

ステップS201,S202,S203は、ステップS101,S102,S103と同様の処理であるのでその説明を省略する。   Steps S201, S202, and S203 are the same processes as steps S101, S102, and S103, and thus description thereof is omitted.

ステップS203に続くステップS204では、動作演算部103が、MIDI情報にロボット動作開始信号が含まれているか否かを判断する。ロボット動作開始信号は、MIDI情報の例えばコントロールチェンジの空き系統に割り当てることができる。例えば、コントロールチェンジのスイッチ系統として割り当てられている、64番から95番のいずれかに割り当てることができる。例えば、値が1の場合はロボット操作を開始し、値が2の場合はロボット操作を停止させるように設定する。MIDI情報にロボット動作開始信号が含まれていればステップS205の処理に進み、MIDI情報にロボット動作開始信号が含まれていなければステップS204の処理を繰り返す。   In step S204 following step S203, the motion calculation unit 103 determines whether or not a robot motion start signal is included in the MIDI information. The robot operation start signal can be assigned to an empty system of, for example, control change in MIDI information. For example, it can be assigned to any of No. 64 to No. 95 assigned as a control change switch system. For example, when the value is 1, the robot operation is started, and when the value is 2, the robot operation is stopped. If the robot information start signal is included in the MIDI information, the process proceeds to step S205. If the robot information start signal is not included in the MIDI information, the process in step S204 is repeated.

ステップS205では、動作演算部103が、現在のティックから現在の小節及び拍を算出する。算出方法は上記した通りである。ステップS205に続くステップS206では、動作演算部103が、算出した小節及び拍と動作情報格納部105に格納されているマップとを比較参照する。   In step S205, the motion calculation unit 103 calculates the current measure and beat from the current tick. The calculation method is as described above. In step S206 following step S205, the motion calculation unit 103 compares and compares the calculated bar and beat with the map stored in the motion information storage unit 105.

ステップS206に続くステップS207では、動作演算部103が、現在の小節及び拍がロボット姿勢を変化させる小節及び拍であるか否かを判断する。具体的には、動作情報格納部105に格納されているマップにおいて、ロボットが動作するタイミングとして特定されている小節及び拍と現在の小節及び拍とが合致するか否かを判断する。現在の小節及び拍がロボット姿勢を変化させる小節及び拍であればステップS208の処理に進み、現在の小節及び拍がロボット姿勢を変化させる小節及び拍でなければステップS205の処理に戻る。   In step S207 following step S206, the motion calculation unit 103 determines whether or not the current measure and beat are measures and beats that change the robot posture. Specifically, in the map stored in the motion information storage unit 105, it is determined whether or not the bar and beat specified as the timing of the robot movement match the current bar and beat. If the current measure and beat are the measure and beat that change the robot posture, the process proceeds to step S208. If the current measure and beat is not the measure and beat that changes the robot posture, the process returns to step S205.

ステップS208では、動作出力部104がロボットに対して動作指示を出力する。ステップS208に続くステップS209では、動作演算部103が、MIDI情報にロボット動作終了信号が含まれているか否かを判断する。MIDI情報にロボット動作終了信号が含まれていれば処理を終了し、MIDI情報にロボット動作終了信号が含まれていなければステップS205の処理に戻る。   In step S208, the operation output unit 104 outputs an operation instruction to the robot. In step S209 following step S208, the motion calculation unit 103 determines whether or not a robot motion end signal is included in the MIDI information. If the robot operation end signal is included in the MIDI information, the process ends. If the robot information end signal is not included in the MIDI information, the process returns to step S205.

続いて、制御対象が6軸ロボットの場合の例について、図4を参照しながら説明する。 ステップS301,S302,S303,S304,S305は、ステップS201,S202,S203,S204,S205と同様の処理であるのでその説明を省略する。   Next, an example where the control target is a six-axis robot will be described with reference to FIG. Steps S301, S302, S303, S304, and S305 are the same processes as steps S201, S202, S203, S204, and S205, and thus description thereof is omitted.

ステップS305に続くステップS306では、動作演算部103が、算出した小節及び拍と動作情報格納部105に格納されているマップとを比較参照する。本例では、図5に示されるような6軸ロボットを制御対象とする。6軸ロボットは、J1,J2,J3,J4,J5,J6の6軸周りに可動するように構成されている。   In step S <b> 306 following step S <b> 305, the motion calculation unit 103 compares and compares the calculated bar and beat with the map stored in the motion information storage unit 105. In this example, a 6-axis robot as shown in FIG. The six-axis robot is configured to move around six axes of J1, J2, J3, J4, J5, and J6.

動作情報格納部105に格納されているマップの一例を図6に示す。図6に示される例では、4分の4拍子の小節と拍に対する6軸ロボットの関節角を示している。図6に示される1拍は4分音符のタイミングであり、0.5拍は8分音符のタイミングである。従って、小節は整数である必要があるけれども、拍は小数点以下が設定されていてもよい。   An example of the map stored in the operation information storage unit 105 is shown in FIG. In the example shown in FIG. 6, the joint angle of the 6-axis robot with respect to the bars and beats of four quarters is shown. One beat shown in FIG. 6 is a quarter note timing, and 0.5 beat is an eighth note timing. Therefore, although the measure needs to be an integer, the beat may be set to a decimal point.

ステップS306に続くステップS307では、動作演算部103が、現在の小節及び拍がロボット姿勢を変化させる小節及び拍であるか否かを判断する。具体的には、動作情報格納部105に格納されているマップにおいて、ロボットが動作するタイミングとして特定されている小節及び拍と現在の小節及び拍とが合致するか否かを判断する。例えば、図6に示した例では、1小節目の3.5拍目の時に、J1からJ6の関節角をそれぞれ20degに移動させる。現在の小節及び拍がロボット姿勢を変化させる小節及び拍であればステップS308の処理に進み、現在の小節及び拍がロボット姿勢を変化させる小節及び拍でなければステップS305の処理に戻る。   In step S307 following step S306, the motion calculation unit 103 determines whether or not the current measure and beat are measures and beats that change the robot posture. Specifically, in the map stored in the motion information storage unit 105, it is determined whether or not the bar and beat specified as the timing of the robot movement match the current bar and beat. For example, in the example shown in FIG. 6, the joint angles from J1 to J6 are moved to 20 degrees at the 3.5th beat of the first bar, respectively. If the current measure and beat are those that change the robot posture, the process proceeds to step S308. If the current measure and beat is not the measure and beat that changes the robot posture, the process returns to step S305.

ステップS308では、動作出力部104がロボットに対して動作指示を出力する。ステップS308に続くステップS309では、動作演算部103が、MIDI情報にロボット動作終了信号が含まれているか否かを判断する。MIDI情報にロボット動作終了信号が含まれていれば処理を終了し、MIDI情報にロボット動作終了信号が含まれていなければステップS305の処理に戻る。   In step S308, the operation output unit 104 outputs an operation instruction to the robot. In step S309 following step S308, the motion calculation unit 103 determines whether or not a robot motion end signal is included in the MIDI information. If the robot operation end signal is included in the MIDI information, the process ends. If the robot information end signal is not included in the MIDI information, the process returns to step S305.

続いて、ロボットを動かす際に動きのスピードを考慮して円滑に動作させる例について、図7を参照しながら説明する。ステップS401〜S407は、ステップS301〜S307と同様の処理であるので説明を省略する。   Next, an example in which the robot is operated smoothly in consideration of the speed of movement when the robot is moved will be described with reference to FIG. Steps S401 to S407 are the same processes as steps S301 to S307, and thus description thereof is omitted.

ステップS408では、動作演算部103が、現在のテンポから関節角を移動する時間を算出する。具体的には、ロボットの移動時間をMotion_time、次の関節角が変化する小節をNext_measure、現在の小節をCurrent_measure、拍子記号の分子である拍数をBeats、次の関節角が変化する拍をNext_beat、現在の拍をCurrent_beat、テンポをTempo、拍子記号の分母である音価をPhonetic_valueとすると、ロボットの移動時間は次の式によって求められる。

Figure 2017196675
このようにMIDI情報に含まれるテンポを用いてロボットの移動時間を求めることで、テンポの変化に追従した動きを実現することができる。 In step S408, the motion calculation unit 103 calculates the time for moving the joint angle from the current tempo. Specifically, the movement time of the robot is Motion_time, the measure where the next joint angle changes is Next_measure, the current measure is Current_measure, Beats is the numerator of the time signature, and the beat where the next joint angle changes is Next_beat. If the current beat is Current_beat, the tempo is Tempo, and the note value that is the denominator of the time signature is Phonetic_value, the movement time of the robot can be obtained by the following equation.
Figure 2017196675
As described above, by determining the moving time of the robot using the tempo included in the MIDI information, it is possible to realize a movement following the change of the tempo.

ステップS408に続くステップS409では、移動時間を考慮し、動作出力部104がロボットに対して動作指示を出力する。ステップS409に続くステップS410では、動作演算部103が、MIDI情報にロボット動作終了信号が含まれているか否かを判断する。MIDI情報にロボット動作終了信号が含まれていれば処理を終了し、MIDI情報にロボット動作終了信号が含まれていなければステップS405の処理に戻る。   In step S409 following step S408, the operation output unit 104 outputs an operation instruction to the robot in consideration of the movement time. In step S410 following step S409, the motion calculation unit 103 determines whether or not a robot motion end signal is included in the MIDI information. If the robot operation end signal is included in the MIDI information, the process ends. If the robot information end signal is not included in the MIDI information, the process returns to step S405.

上記したように本実施形態に係る動作制御装置10は、流れている音楽のMIDI情報を取得するデータ取得部102と、取得したMIDI情報に含まれるティックと、タイムベースと、拍子記号と、に基づいて、現在流れている小節及び拍を算出する算出処理を実行し、現在流れている小節及び拍が、ロボットに特定の動作をさせるタイミングであるか否かを判断する判断処理を実行する動作演算部103と、動作演算部103の判断処理結果に基づいて動作指示を出力する動作出力部104と、を備える。   As described above, the motion control apparatus 10 according to the present embodiment includes the data acquisition unit 102 that acquires MIDI information of flowing music, the ticks included in the acquired MIDI information, the time base, and the time signature. Based on the above, a calculation process for calculating the current measure and beat is executed, and a determination process for determining whether the current measure and beat are the timing for causing the robot to perform a specific action is executed. A calculation unit 103 and an operation output unit 104 that outputs an operation instruction based on the determination processing result of the operation calculation unit 103 are provided.

本実施形態によれば、MIDI情報に含まれるティックと、MIDI情報に同じく含まれるか別途設定されるタイムベースと、MIDI情報に同じく含まれるか別途設定される拍子記号と、に基づいて、ロボットに特定の動作をさせるタイミングを判断するので、流れている音楽を分析することなくロボットに音楽に合わせた動作をさせることができる。MIDI情報のテンポが変化すると小節及び拍のタイミングも変化し、その変化に追従させてロボットの動作をコントロールすることができる。MIDI情報である演奏データを途中で停止すれば、ティックも送られてこなくなるので、ロボットの動作を停止させることができる。MIDI情報である演奏データのテンポを変更すると、送られてくるティックの速度が変わるため、小節及び拍のタイミングも変化し、ロボットの動きをテンポの変化に即して変えることができる。小節及び拍でロボットの姿勢を決めるため、タイミングを取りやすく音楽に合わせた動きとしやすい。   According to the present embodiment, the robot is based on the tick included in the MIDI information, the time base that is also included in the MIDI information or set separately, and the time signature that is also included in the MIDI information or set separately. Therefore, it is possible to cause the robot to perform an operation in accordance with the music without analyzing the flowing music. When the tempo of the MIDI information changes, the bar and beat timing also changes, and the robot operation can be controlled by following the changes. If performance data, which is MIDI information, is stopped halfway, ticks will not be sent, and the robot operation can be stopped. When the tempo of performance data, which is MIDI information, is changed, the speed of the ticks to be sent changes, so the timing of measures and beats also change, and the movement of the robot can be changed in accordance with the change in tempo. Since the posture of the robot is determined by the bars and beats, it is easy to take the timing and make it easy to move with the music.

また本実施形態では、MIDI情報には、ロボットに動作を開始させることを示す動作開始情報が含まれており、動作演算部103は、動作開始情報を確認した後に判断処理を実行することもできる。また本実施形態では、MIDI情報には、ロボットに動作を終了させることを示す動作終了情報が含まれており、動作演算部103は、動作終了情報を確認した後に判断処理を停止することもできる。音楽の開始・停止に依存せずにロボットの動きの開始・停止を制御できるので、より多彩な動きを実現することができる。   Further, in the present embodiment, the MIDI information includes operation start information indicating that the robot starts an operation, and the operation calculation unit 103 can execute the determination process after confirming the operation start information. . In the present embodiment, the MIDI information includes operation end information indicating that the robot ends the operation, and the operation calculation unit 103 can stop the determination process after confirming the operation end information. . Since it is possible to control the start / stop of the robot movement without depending on the start / stop of the music, more diverse movements can be realized.

また本実施形態では、更に、小節及び拍と、ロボットの動作とを関連付けた動作情報を格納する動作情報格納部105を備えている。動作演算部103は、動作情報に基づいて前記判断処理を実行することができる。また本実施形態では、動作情報には、ロボットの動作としてロボットを構成する軸の回転角度が含まれており、動作出力部104は、回転角度を含む動作指示を出力することができる。
また本実施形態では、動作演算部103は、MIDI情報に含まれるテンポに基づいてロボットが行う動作の速度を算出し、この算出した速度に基づいて動作のタイミングを判断することができる。
In addition, the present embodiment further includes an operation information storage unit 105 that stores operation information in which measures and beats are associated with the operation of the robot. The motion calculation unit 103 can execute the determination process based on the motion information. In the present embodiment, the motion information includes the rotation angle of the axis constituting the robot as the motion of the robot, and the motion output unit 104 can output a motion instruction including the rotation angle.
In the present embodiment, the motion calculation unit 103 can calculate the speed of the motion performed by the robot based on the tempo included in the MIDI information, and can determine the timing of the motion based on the calculated speed.

尚、小節及び拍を対応するロボットの姿勢については、上記したものに限られない。例えば、移動ロボットの場合、モータといった移動手段の出力や移動方向をマップ化してもよい。また、マップではなく、ロボットが自律的に判断した姿勢を、拍のタイミングで切り替えてもよい。   Note that the posture of the robot corresponding to the bars and beats is not limited to the above. For example, in the case of a mobile robot, the output and moving direction of moving means such as a motor may be mapped. Moreover, you may switch the attitude | position which the robot determined autonomously instead of a map at the timing of a beat.

以上、具体例を参照しつつ本発明の実施の形態について説明した。しかし、本発明はこれらの具体例に限定されるものではない。これら具体例に、当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。前述した各具体例が備える各要素およびその配置、条件、形状などは、例示したものに限定されるわけではなく適宜変更することができる。前述した各具体例が備える各要素は、技術的な矛盾が生じない限り、適宜組み合わせを変えることができる。   The embodiments of the present invention have been described above with reference to specific examples. However, the present invention is not limited to these specific examples. Those in which those skilled in the art appropriately modify the design of these specific examples are also included in the scope of the present invention as long as they have the features of the present invention. Each element included in each of the specific examples described above and their arrangement, conditions, shape, and the like are not limited to those illustrated, and can be changed as appropriate. Each element included in each of the specific examples described above can be appropriately combined as long as no technical contradiction occurs.

10:動作制御装置
102:データ取得部
103:動作演算部
104:動作出力部
105:動作情報格納部
10: Operation control device 102: Data acquisition unit 103: Operation calculation unit 104: Operation output unit 105: Operation information storage unit

Claims (6)

ロボットの動作を制御する動作制御装置であって、
流れている音楽のMIDI情報を取得するデータ取得部(102)と、
取得したMIDI情報に含まれるティックと、タイムベースと、拍子記号と、に基づいて、現在流れている小節及び拍を算出する算出処理を実行し、現在流れている小節及び拍が、前記ロボットに特定の動作をさせるタイミングであるか否かを判断する判断処理を実行する動作演算部(103)と、
前記動作演算部の判断処理結果に基づいて動作指示を出力する動作出力部(104)と、を備える動作制御装置。
An operation control device for controlling the operation of a robot,
A data acquisition unit (102) for acquiring MIDI information of the flowing music;
Based on the tick, time base, and time signature included in the acquired MIDI information, a calculation process for calculating a currently flowing measure and beat is executed, and the currently flowing measure and beat are transmitted to the robot. An operation calculation unit (103) for executing a determination process for determining whether it is a timing for performing a specific operation;
An operation control unit comprising: an operation output unit (104) that outputs an operation instruction based on a determination processing result of the operation calculating unit.
請求項1記載の動作制御装置であって、
前記MIDI情報には、前記ロボットに動作を開始させることを示す動作開始情報が含まれており、
前記動作演算部は、前記動作開始情報を確認した後に前記判断処理を実行する、動作制御装置。
The operation control apparatus according to claim 1,
The MIDI information includes operation start information indicating that the robot starts an operation,
The operation controller is configured to execute the determination process after confirming the operation start information.
請求項2記載の動作制御装置であって、
前記MIDI情報には、前記ロボットに動作を終了させることを示す動作終了情報が含まれており、
前記動作演算部は、前記動作終了情報を確認した後に前記判断処理を停止する、動作制御装置。
The operation control device according to claim 2,
The MIDI information includes operation end information indicating that the robot ends the operation,
The operation control unit is configured to stop the determination process after confirming the operation end information.
請求項1から3いずれか1項記載の動作制御装置であって、
更に、小節及び拍と、前記ロボットの動作とを関連付けた動作情報を格納する動作情報格納部(105)を備え、
前記動作演算部は、前記動作情報に基づいて前記判断処理を実行する、動作制御装置。
The operation control device according to any one of claims 1 to 3,
And a motion information storage unit (105) for storing motion information in which measures and beats are associated with motions of the robot.
The operation calculation unit is an operation control device that executes the determination process based on the operation information.
請求項4記載の動作制御装置であって、
前記動作情報には、前記ロボットの動作として前記ロボットを構成する軸の回転角度が含まれており、
前記動作出力部は、前記回転角度を含む動作指示を出力する、動作制御装置。
The operation control device according to claim 4,
The movement information includes a rotation angle of a shaft constituting the robot as the movement of the robot,
The operation output unit outputs an operation instruction including the rotation angle.
請求項4記載の動作制御装置であって、
前記動作演算部は、前記MIDI情報に含まれるテンポに基づいて前記ロボットが行う動作の速度を算出し、この算出した速度に基づいて動作のタイミングを判断する、動作制御装置。
The operation control device according to claim 4,
The motion control device, wherein the motion calculation unit calculates a speed of a motion performed by the robot based on a tempo included in the MIDI information, and determines a motion timing based on the calculated speed.
JP2016087342A 2016-04-25 2016-04-25 Motion control device Active JP6616231B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016087342A JP6616231B2 (en) 2016-04-25 2016-04-25 Motion control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016087342A JP6616231B2 (en) 2016-04-25 2016-04-25 Motion control device

Publications (2)

Publication Number Publication Date
JP2017196675A true JP2017196675A (en) 2017-11-02
JP6616231B2 JP6616231B2 (en) 2019-12-04

Family

ID=60238636

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016087342A Active JP6616231B2 (en) 2016-04-25 2016-04-25 Motion control device

Country Status (1)

Country Link
JP (1) JP6616231B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019103297A1 (en) * 2017-11-27 2019-05-31 엘지전자 주식회사 Mobile terminal, and music play-back system comprising mobile terminal

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05329272A (en) * 1992-05-29 1993-12-14 Victor Co Of Japan Ltd Musical performance operation toy
JPH06182683A (en) * 1992-12-18 1994-07-05 Koichi Wada Midi robot control device and method
JP2001239485A (en) * 1999-12-24 2001-09-04 Nippon Telegr & Teleph Corp <Ntt> Music response robot, voice response robot, and communication/broadcasting merged robot system
JP2002346958A (en) * 2001-05-24 2002-12-04 Sony Corp Control system and control method for legged mobile robot
JP2004127019A (en) * 2002-10-03 2004-04-22 Sony Corp Information processing system, method and program for controlling graphic display
JP2007244726A (en) * 2006-03-17 2007-09-27 Mitsubishi Heavy Ind Ltd Activity support device
JP2008090633A (en) * 2006-10-02 2008-04-17 Sony Corp Motion data creation device, motion data creation method and motion data creation program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05329272A (en) * 1992-05-29 1993-12-14 Victor Co Of Japan Ltd Musical performance operation toy
JPH06182683A (en) * 1992-12-18 1994-07-05 Koichi Wada Midi robot control device and method
JP2001239485A (en) * 1999-12-24 2001-09-04 Nippon Telegr & Teleph Corp <Ntt> Music response robot, voice response robot, and communication/broadcasting merged robot system
JP2002346958A (en) * 2001-05-24 2002-12-04 Sony Corp Control system and control method for legged mobile robot
JP2004127019A (en) * 2002-10-03 2004-04-22 Sony Corp Information processing system, method and program for controlling graphic display
JP2007244726A (en) * 2006-03-17 2007-09-27 Mitsubishi Heavy Ind Ltd Activity support device
JP2008090633A (en) * 2006-10-02 2008-04-17 Sony Corp Motion data creation device, motion data creation method and motion data creation program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019103297A1 (en) * 2017-11-27 2019-05-31 엘지전자 주식회사 Mobile terminal, and music play-back system comprising mobile terminal

Also Published As

Publication number Publication date
JP6616231B2 (en) 2019-12-04

Similar Documents

Publication Publication Date Title
US11235461B2 (en) Controller and machine learning device
US8744625B2 (en) Robot controlling device
JP6044099B2 (en) Attitude detection apparatus, method, and program
JP2013213946A (en) Performance device, method, and program
JP2010120124A (en) Teaching system for robot arm and method thereof
JP2018051652A (en) Robot system
JP2013213744A (en) Device, method and program for detecting attitude
CN109605367B (en) Robot programming method, device and equipment and storage medium
JP2007299062A5 (en)
JP2016055404A (en) Locus generation method, locus generation device, robot device, program, and recording medium
JP2006340480A (en) Control device of motor and control method
JP6616231B2 (en) Motion control device
JP2011081380A (en) Theremin performance robot
CN116728419B (en) Continuous playing action planning method, system, equipment and medium for playing robot
JP6338389B2 (en) Dynamic calculation method and program, and simulation apparatus
JP4612989B2 (en) Mechatronics system simulation method
JP5321243B2 (en) Bowed instrument playing robot
JP2015058493A (en) Control device, robot system, robot, robot operation information generation method, and program
JP2009198551A (en) Musical instrument playing robot and automatic musical instrument playing method
JP4924317B2 (en) Singing diagnosis apparatus and waveform diagnosis processing program
JP6519578B2 (en) Posture detection apparatus and posture detection method
JP6436145B2 (en) Performance device, method and program
Grosshauser et al. Connected musicians-examples of new supportive technologies for musician's performance analysis and daily routine
WO2023119348A1 (en) Program teaching assistance device
JP5215899B2 (en) Sound value changing device, method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190925

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191107

R150 Certificate of patent or registration of utility model

Ref document number: 6616231

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250