JP6720958B2 - 駆動装置、駆動方法及びプログラム - Google Patents

駆動装置、駆動方法及びプログラム Download PDF

Info

Publication number
JP6720958B2
JP6720958B2 JP2017246664A JP2017246664A JP6720958B2 JP 6720958 B2 JP6720958 B2 JP 6720958B2 JP 2017246664 A JP2017246664 A JP 2017246664A JP 2017246664 A JP2017246664 A JP 2017246664A JP 6720958 B2 JP6720958 B2 JP 6720958B2
Authority
JP
Japan
Prior art keywords
identification information
servo motor
controller
signal line
common signal
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.)
Active
Application number
JP2017246664A
Other languages
English (en)
Other versions
JP2019111611A (ja
Inventor
石井 克典
克典 石井
保 階上
保 階上
浩良 小川
浩良 小川
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2017246664A priority Critical patent/JP6720958B2/ja
Priority to US16/212,176 priority patent/US10850394B2/en
Priority to CN201811538844.6A priority patent/CN109968336B/zh
Publication of JP2019111611A publication Critical patent/JP2019111611A/ja
Application granted granted Critical
Publication of JP6720958B2 publication Critical patent/JP6720958B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/003Controls for manipulators by means of an audio-responsive input
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0009Constructional details, e.g. manipulator supports, bases
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33126Identification of address connected module, processor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33337For each axis a processor, microprocessor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34013Servocontroller

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Programmable Controllers (AREA)
  • Control Of Multiple Motors (AREA)
  • Toys (AREA)

Description

本発明は、ロボット等に好適な駆動装置、駆動方法及びプログラムに関する。
関節部に夫々サーボモータを設けることで、何らかの生体等を模して動作するロボットにおいては、ロボット全体で使用するサーボモータの数が多くなるために、UART(Universal Asynchronous Receiver/Transmitter)等のシリアル通信インタフェイスを用いて、同一の信号線上に複数のサーボモータを接続する構成を採ることがある。
この場合、すべてのサーボモータを統括して制御するコントローラからの信号は、同一信号線上の各サーボモータに同じ信号として配信される。各サーボモータは、内部のメモリに固有のID情報を記憶しており、配信される信号に付加されているID情報により、自分宛に送信してきた信号であるか否かを判断することができる。
サーボモータは、初期状態では同じID情報が割り振られているため、コントローラは信号線に1つのサーボモータのみを信号線上に接続し、コントローラから認識できるモータが1つのみである1対1の状態で、ID情報を当該サーボモータに書換えさせる、という作業を、使用するサーボモータの数だけ繰返して実行する必要があり、とても煩雑な作業が必要となる。
実際にロボットに実装するサーボモータにID情報を設定するためには、ロボットの組立前に個々のサーボモータ毎にID情報を設定してからロボットを組立てるか、あるいはロボットの組立後に個々のサーボモータを1つずつ取り外してID情報を設定した後、元の位置に装着し直す、という方法が考えられるが、いずれにしても作業が大変に煩雑なものとなる。
数値制御装置の分野においても、同様の煩雑な作業を避けるべく、装置の立ち上げ時に発生するパラメータ設定を極力自動化し、ユーザが設定しなければならない場合でも誤設定を防止し、かつ短時間で目的の制御を実現させるための技術が提案されている。(例えば、特許文献1)
特開平9−062323号公報
しかしながら、上記特許文献1においても、上述した各サーボモータに固有のID情報を書込む際の煩雑な作業が発生するという課題がある。
本発明は上記のような実情に鑑みてなされたもので、その目的とするところは、共通の信号線を介して接続される複数のサーボモータの初期設定を効率的に実施することが可能な駆動装置、駆動方法及びプログラムを提供することにある。
本発明の一態様は、コントローラと、上記コントローラと共通信号線を介して接続された複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた駆動装置であって、上記複数のサーボモータは夫々、互いに異なる識別情報を記憶する第1の記憶部と、ランダム値を発生し、発生したランダム値を上記識別情報として生成する識別情報生成手段と、上記識別情報生成手段で生成した識別情報を上記第1の記憶部に記憶させる第1の記憶制御手段と、上記識別情報生成手段で生成した識別情報を、上記共通信号線を介して上記コントローラへ送信する第2の送信手段と、上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合に当該サーボモータを動作させる駆動制御部と、を備え、上記コントローラは、サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信手段と、上記第1の送信手段で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該駆動装置の動作態様を検出する動作検出手段と、上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成手段と、を備える駆動装置である
本発明によれば、共通の信号線を介して接続される複数のサーボモータの初期設定を効率的に実施することが可能となる。
本発明の一実施形態に係るロボットの外観構成を示す斜視図。 同実施形態に係る電子回路の機能構成を示すブロック図。 同実施形態に係る全体の処理の流れを示すフローチャート。 同実施形態に係るシリアルバスを挟んだコントローラとサーボモータモジュール相互間のIDコード設定時の通信内容を示すシーケンス図。 同実施形態に係るID要求メッセージ」のパケットデータのフォーマットを示す図。 同実施形態に係るコントローラ側でのIDコード設定の処理内容を示すフローチャート。 同実施形態に係るサーボモータモジュール側でのIDコード設定の処理内容を示すフローチャート。 同実施形態に係るロボットをデスクボードBD上に仰向けとなる状態に載置した場合を示す斜視図。 同実施形態に係る部位登録時のIDコードと対応付けた登録設定の処理内容を示すフローチャート。
以下、本発明をヒト型ロボットに適用した場合の一実施形態について、図面を参照して説明する。
図1は、本実施形態に係るロボット10の外観構成を示す斜視図である。同図においては、胴体部12に対して頭部11、右手部13、左手部14、右足部15、及び左足部16を夫々回動自在に取付け、各基部に配設したサーボモータモジュールM1〜M5夫々の駆動により、胴体部12に対する各取付角度が可変するように任意に動作させることが可能であるものとする。
サーボモータモジュールM1〜M5は、具体的にはモータとそのドライバ回路とで構成される。
図2は、上記ロボット10内に設けられる電子回路の機能構成を示すブロック図である。コントローラ21を中心に、UARTを用いたシリアルバスSBを介して、上記サーボモータモジュールM1〜M5と接続される。またコントローラ21は、入出力部22とも接続される。この入出力部22に対して、音声処理部23と加速度センサACとが接続される。
音声処理部23は、マイクロホンMCとスピーカSPとを接続し、マイクロホンMCから入力されるアナログの音声信号をデジタル符号化した後に入出力部22を介して上記コントローラ21へ送信する。また音声処理部23は、例えばPCM音源回路を有し、コントローラ21から入出力部22を介して与えられるデジタル音声データをアナログの音声信号に変換し、スピーカSPにより拡声出力させる。
加速度センサACは、上記胴体部12の中心に配設される、例えば3軸加速度センサとその検出回路とで構成され、胴体部12における、重力加速度を含めた互いに直交する3軸方向の加速度情報から、その時点で胴体部12にかかっている挙動やロボット10全体の姿勢を検出するために用いられる。
コントローラ21は、例えば1チップのマイクロコンピュータで構成されるもので、CPUとワークメモリとなるRAM、及び動作プログラムや各種固定データ等を記憶している不揮発性のフラッシュメモリメモリなどを含んで、このロボット10の動作を統括して制御する。
なお、説明を簡易化するために、本実施形態ではロボット10が5軸のみの自由度(駆動部)を有するものとしたが、実際に製品化されているペット型ロボットやヒト型ロボットでは20〜30軸程度の自由度(駆動部)を有するものもあり、それら各駆動部毎に設けられるサーボモータモジュールをコントローラ21に並列接続することは現実的ではない。そのため、上述したようにシリアルバスSBに一様に接続する構成を採るものである。上記サーボモータモジュールM1〜M5の各ドライバ回路には、当該モータのIDコードを記憶するためのメモリが内蔵されている。
次に上記実施形態の動作について説明する。
図3は、コントローラ21による初期設定時の処理全体の流れを示すもので、大きく分けて2段階に分かれる。まず第1の段階において、すべてのサーボモータモジュールM1〜M5に対してIDコードを自動的に設定する(ステップS101)。次いで、第2の段階において、設定したIDコードに基づいて、サーボモータモジュールM1〜M5が夫々、ロボット10のどの部位であるのか検出し、検出した位置を示す情報をそのモータのIDコードと対応付けて記憶する(ステップS102)。
まず第1の段階のサーボモータモジュールMx(x:1,2,…,5のいずれか)毎にIDコードを設定する処理について説明する。
図4は、シリアルバスSBを挟んで、コントローラ21とサーボモータモジュールM1〜M5相互間で実行する、IDコード設定時の通信内容を示すシーケンス図である。シリアルバスSB上のデータは、コントローラ21とサーボモータモジュールM1〜M5の双方で送受信することができる。
その当初にコントローラ21がシリアルバスSBを介して全サーボモータモジュールM1〜M5に対して「ID要求メッセージ要求」を送信する(msg01)。
この「ID要求メッセージ要求」は、サーボモータモジュールM1〜M5に対して、「ID要求メッセージ」の送信を促すための要求メッセージである。
当該メッセージを受信したサーボモータモジュールMxは、「ID要求メッセージ」を応答として送信する(msg02)。ここで、メッセージに対して応答を行なうか否かは各サーボモータモジュールMxがランダムに選択するものとする。
「ID要求メッセージ」を送信したサーボモータモジュールMxは、IDコードの設定を受付ける状態となるが。当該受付け状態は、次に「ID要求メッセージ要求」を受信することでリセットされる。
図5は、サーボモータモジュールMxが送信する「ID要求メッセージ」のパケットデータのフォーマットを示す図である。同図に示すように、先頭に1バイト分のID登録要求のコマンドデータD1を配し、その後に4バイト分の発生したランダム値D2を配している。最後に、4バイト分のチェックサムD3を配して、計9バイトから構成されている。
シリアルバスSB上に上記「ID要求メッセージ」を2個以上送信された場合、すなわち複数のサーボモータモジュールが同時に「ID要求メッセージ」を返信した場合、シリアルバスSB上で信号が交錯することにより、上記チェックサムD3が正しいデータとならない。したがって、コントローラ21は正しいチェックサムD3が返信されるまで、「ID要求メッセージ要求」の送信を繰返し実施する(msg03)。
そして、正しいチェックサムD3を有する返信があったと判断した時点で(msg04)、コントローラ21は1個のサーボモータモジュールMxのみが「ID要求メッセージ」を返信して受付け状態であるものとして、データフォーマット中、受信したランダム値D2に基づいて当該モータのIDコードを設定するべく送信する(msg05)。
受付状態にある1個のサーボモータモジュールMxは、送信されてきたIDコードを内部のメモリに記憶することで、IDコードの設定が完了する。
コントローラ21は同様に、1個のサーボモータモジュールMxのみが「ID要求メッセージ」を送信してくるのを待機して1個ずつサーボモータモジュールMxへのIDコード設定を順次実行する。
図6は、上記コントローラ21側が実行する、IDコード設定時の処理内容を示すフローチャートである。その当初にコントローラ21は、シリアルバスSBに接続されるすべてのサーボモータモジュールM1〜M5へのIDコードの設定が完了していないことを確認した上で(ステップS201のNo)、「ID要求メッセージ要求」をシリアルバスSBに対して送信する(ステップS202)。
この1回の「ID要求メッセージ要求」送信に際して、予め設定した時間が経過してタイムアウトとなったか否か(ステップS203)、いずれか少なくとも1つのサーボモータモジュールMxからメッセージを受信したか否か(ステップS204)を繰返し判断し続けることで、タイムアウトとなるか、またはサーボモータモジュールMxからのメッセージの受信があるのを待機する。
上記ステップS203において、タイムアウトとなったと判断した場合(ステップS203のYes)、コントローラ21は上記ステップS202からの処理に戻って、再び「ID要求メッセージ要求」をシリアルバスSBに対して送信する。
また上記ステップS204において、少なくとも1つのサーボモータモジュールMxからメッセージを受信したと判断した場合(ステップS204のYes)、コントローラ21はそのメッセージ中の上記図5で示したチェックサムD3の内容を確認した上で(ステップS205)、その内容が正しいものであったか否かを判断する(ステップS206)。
チェックサムD3が正しくないと判断した場合(ステップS206のNo)、コントローラ21は、複数のサーボモータモジュールから「ID要求メッセージ」が返信されたものと判断して、上記ステップS202からの処理に戻り、再び「ID要求メッセージ要求」をシリアルバスSBに対して送信する。
また上記ステップS206において、チェックサムD3の内容が正しく、1個のサーボモータモジュールMxのみが「ID要求メッセージ」を返信して受付け状態であると判断したコントローラ21は、そのチェックサムD3の前に付加されていたランダム値D2に基づいたIDコードを当該サーボモータモジュールに設定するべく送信する(ステップS207)。
次いでその時点で保持しているIDコードを登録設定して、次のサーボモータモジュールMxのIDコードの設定に備えるものとした後(ステップS208)、上記ステップS201の処理に戻って、以下同様にまだIDコードの設定を行っていないサーボモータモジュールMxに対して同様の処理を続行する。
そして、すべてのサーボモータモジュールM1〜M5に対するIDコードの設定を完了したことを判断した時点で(ステップS201のYes)、この図6によるコントローラ21におけるIDコードの設定処理を終える。
図7は、一方のサーボモータモジュールM1〜M5の夫々において、上記第1の段階においてIDコードを設定する間での処理内容を示すフローチャートである。以下、サーボモータモジュールMxにおける処理として説明する。
サーボモータモジュールMxにおいて、ID設定時にコントローラ21からの「ID要求メッセージ要求」をシリアルバスSBを介して受信したか否かを判断する(ステップS301)。受信していないと判断した場合(ステップS301のNo)、続けて、その時点でIDコード設定の受付け状態であり、且つシリアルバスSBを介してIDコードの設定を受けたか否かを判断する(ステップS302)。
IDコード設定の受付け状態ではないか、またはIDコード設定の受付け状態であってもシリアルバスSBを介してIDコードの設定を受けていないと判断した場合(ステップS302のNo)、サーボモータモジュールMxでは再び上記ステップS301からの処理に戻る。
こうしてステップS301,S302の処理を繰返し実行しながら、「ID要求メッセージ要求」を受信するか、またはIDコード設定の受付け状態からIDコードの設定を受けるのを待機する。
上記ステップS301において、「ID要求メッセージ要求」を受信したと判断した場合(ステップS301のYes)、サーボモータモジュールMxでは、その時点でIDコードの設定受付け状態をリセットした上で(ステップS303)、コントローラ21に対して「ID要求メッセージ」を送信するか否かを判断する(ステップS304)。
上述した如く、サーボモータモジュールMxにおいては、コントローラ21からのメッセージに対して応答を行なうか否かはランダムに選択するものであり、ここでコントローラ21からの「ID要求メッセージ要求」に対して応答せず、「ID要求メッセージ」を送信しないと判断した場合(ステップS304のNo)、サーボモータモジュールMxでは再び上記ステップS301からの処理に戻る。
また上記ステップS304において、コントローラ21からの「ID要求メッセージ要求」に対して応答するものとし、「ID要求メッセージ」を送信すると判断した場合(ステップS304のYes)、サーボモータモジュールMxではあらためて上記図5に示した「ID要求メッセージ」をシリアルバスSBを介してコントローラ21に向けて送信した上で(ステップS305)、IDコードの設定受付け状態をセットし(ステップS306)、再び上記ステップS301からの処理に戻って、コントローラ21からIDコードを設定するべく送信されてくるのを待機する。
そして上記ステップS302において、IDコード設定の受付け状態であり、且つシリアルバスSBを介してIDコードの設定を受けたと判断した場合(ステップS302のYes)、サーボモータモジュールMxでは、コントローラ21から受信したIDコードを内部のメモリ部に記憶させ(ステップS307)、以上でこの図7によるサーボモータモジュールMxでのIDコードの設定処理を終える。
次に上記第2の段階として、すべてのサーボモータモジュールM1〜M5に夫々ランダムに発生したユニークなIDコードを設定した状態から、それらサーボモータモジュールM1〜M5がロボット10のどの部位であるのか検出し、検出した位置を示す情報をIDコードと対応付けて記憶する場合の動作について説明する。
図8は、ロボット10を例えばデスクボードBD上に仰向けとなる状態に載置した場合を示す。同図の状態において、胴体部12部内の略中央に破線で示すように上記加速度センサACが配設されており、上記サーボモータモジュールM1〜M5のいずれか1つを予め設定された一定量だけ動作させることにより、ロボット10において発生する挙動の変化から、その時点で駆動されたサーボモータモジュールMxのロボット10における部位を判断するものとする。
図9は、上記図8に示した状態から、コントローラ21で実行する、上記第2の段階での処理内容を示すフローチャートである。
その当初にコントローラ21では、位置未検出のサーボモータモジュールMxが少なくとも1つあるか否かにより、当該第2の段階での設定を終えていないことを確認する(ステップS401)。
位置未検出のサーボモータモジュールMxが少なくとも1つあり、当該第2の段階での設定を終えていないと判断すると(ステップS401のYes)、コントローラ21では、未検出のサーボモータモジュールMxを1つ選択してそのIDコードを指定した上で、例えば、現在の状態からモータ角度を−10°から(+)10°までの20°に渡って回転駆動し、その後に元の0°の状態に戻すような指示信号を送信する(ステップS402)。
同時にコントローラ21では、加速度センサACからの3軸加速度データを随時計測することで、上記ロボット10の傾きの変化がどのように発生しているのか、その経時的な変化を取得する(ステップS403)。
コントローラ21では、加速度センサACから得た経時的なデータ系列のパターンを、予め記憶している、部位毎のパターンデータと比較して夫々の部位のパターン出たとの類似度を夫々算出することで、最も類似度が高い部位を当該サーボモータモジュールMxが配設されている部位であるものとして決定する(ステップS404)。
そして、決定した部位に関する情報を、該当するサーボモータモジュールMxのIDコードと対応付けて記録設定する(ステップS405)。
以上で、1つのサーボモータモジュールMxに対する部位の検出と線路に関する処理を終えたものとして、再び上記ステップS401からの処理に戻る。
こうしてステップS401〜S405の処理をサーボモータモジュールM1〜M5の数だけ繰返し実行することで、サーボモータモジュールM1〜M5すべての部位を夫々のIDコードと対応付けて記録させることができる。
その後、上記ステップS401において、すべてのサーボモータモジュールM1〜M5に対する記録設定を終えた状態で、位置未検出のサーボモータモジュールMxがもうないと判断すると(ステップS401のNo)、以上でこの図9の処理を終了すると共に、上記第2の段階を終えて、このロボット10での初期設定を完了する。
以上詳述した如く本実施形態によれば、共通の信号線を介して接続される複数のサーボモータの初期設定を効率的に実施することが可能となる。
また上記実施形態では、サーボモータモジュールM1〜M5が夫々発生したランダム値に基づいて夫々を識別するためのIDコードとして設定するものとしたので、コントローラ21側がその制御対象に対するIDコードを生成する手間を省いて処理の負担を軽減できる。
この場合にコントローラ21側では、サーボモータモジュールM1〜M5に設定したIDモータをその都度記憶しておくことにより、後の段階で検出した部位と対応付けて記憶することで、初期設定を効率的に実行できる。
また上記実施形態では説明しなかったが、上記初期設定のみならず、初期設定を完了した後の通常動作時においても、シリアルバスSBを介してコントローラ21がサーボモータモジュールM1〜M5夫々に動作を指示する際のIDコードを含めた制御データをパケットデータ化してシリアルバスSBへ送信することで、当該指示を受信するサーボモータモジュールM1〜M5側での受信データの取り扱いが容易となる。
また上記実施形態では、初期設定の第2の段階における加速度センサACでの計算結果に基づいてサーボモータモジュールM1〜M5の各部位を検出するものとして説明したが、加速度センサACのみならず、ロボット10が有するサーボモータモジュールM1〜M5夫々の動作を、例えばジャイロセンサを用いた角速度、モータの駆動音と周囲環境等の物理干渉等によるマイクロホンMCで集音した音声信号、あるいはさらにロボット10がイメージセンサを含む撮像系を有するものとして周囲、あるいはロボット10と対向設置した鏡によりロボット10自体の動作の映像信号の変化により検出できるものとすれば、それら各種信号を統括して判断することで、動作させている部位をより正確に検出することができる。
また上述した如く、何らかの生物を模した、より高位のロボットにおいては、多数の自由度(駆動部)を有するが故に初期設定が煩雑化するため、本実施形態のような初期設定時の処理を採用することで、必要な手間を大幅に簡略化できる。
その他、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[請求項1]
コントローラと、上記コントローラと共通信号線を介して接続された複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた駆動装置であって、
上記複数のサーボモータは夫々、
互いに異なる識別情報を記憶する第1の記憶部と、
上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合に当該サーボモータを動作させる駆動制御部と、を備え、
上記コントローラは、
サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信手段と、
上記第1の送信手段で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該駆動装置の動作態様を検出する動作検出手段と、
上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成手段と、を備える、
駆動装置。
[請求項2]
上記複数のサーボモータは夫々、
ランダム値を発生し、発生したランダム値を上記識別情報として生成する識別情報生成手段と、
上記識別情報生成手段で生成した識別情報を上記第1の記憶部に記憶させる第1の記憶制御手段と、
上記識別情報生成手段で生成した識別情報を、上記共通信号線を介して上記コントローラへ送信する第2の送信手段と、
をさらに備える、請求項1記載の駆動装置。
[請求項3]
上記コントローラは、
上記複数のサーボモータの夫々が送信した識別情報を受信して記憶する第2の記憶部をさらに備える、請求項1または2記載の駆動装置。
[請求項4]
上記コントローラは、
上記第2の記憶部に記憶しているいずれか1つの識別情報に基づいて、識別情報とサーボモータを動作させるための動作情報とを含むパケットデータを生成するパケットデータ生成手段をさらに備える、請求項3記載の駆動装置。
[請求項5]
上記動作検出手段は、上記サーボモータが駆動する上記駆動部の動きに起因する当該駆動装置の動作態様を、加速度、角速度、音声及び映像の少なくとも1つにより検出する、請求項1乃至4いずれか記載の駆動装置。
[請求項6]
上記駆動装置はロボットであり、上記複数の駆動部は、生物を模した、胴体部に対する頭部、頸部、四肢部の少なくとも1つを形成する、請求項1乃至5いずれか記載の駆動装置。
[請求項7]
上記サーボモータは、上記頭部、頸部、四肢部のいずれかに配設され、
上記対応情報生成手段は、上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、いずれの部位に配設されたサーボモータであるのかを示す対応情報を生成する、
請求項6記載の駆動装置。
[請求項8]
コントローラと、上記コントローラと共通信号線を介して接続され、互いに異なる識別情報を記憶する第1の記憶部、及び上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合にサーボモータを動作させる駆動制御部を設けた複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた装置での駆動方法であって、
上記コントローラによる、
サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信工程と、
上記第1の送信工程で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該装置の動作態様を検出する動作検出工程と、
上記動作検出工程で検出した動作態様に基づいて、上記第1の送信工程で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成工程と、
を有する駆動方法。
[請求項9]
コントローラと、上記コントローラと共通信号線を介して接続され、互いに異なる識別情報を記憶する第1の記憶部、及び上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合にサーボモータを動作させる駆動制御部を設けた複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた装置が内蔵するコンピュータが実行するプログラムであって、上記コンピュータを、
サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信手段と、
上記第1の送信手段で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該装置の動作態様を検出する動作検出手段と、
上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成手段と、
して機能させるプログラム。
10…(ヒト型)ロボット
11…頭部
12…胴体部
13…右手部
14…左手部
15…右足部
16…左足部
21…コントローラ
AC…加速度センサ
M1〜M5…サーボモータモジュール
MC…マイクロホン
SB…シリアルバス
SP…スピーカ

Claims (8)

  1. コントローラと、上記コントローラと共通信号線を介して接続された複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた駆動装置であって、
    上記複数のサーボモータは夫々、
    互いに異なる識別情報を記憶する第1の記憶部と、
    ランダム値を発生し、発生したランダム値を上記識別情報として生成する識別情報生成手段と、
    上記識別情報生成手段で生成した識別情報を上記第1の記憶部に記憶させる第1の記憶制御手段と、
    上記識別情報生成手段で生成した識別情報を、上記共通信号線を介して上記コントローラへ送信する第2の送信手段と、
    上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合に当該サーボモータを動作させる駆動制御部と、を備え、
    上記コントローラは、
    サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信手段と、
    上記第1の送信手段で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該駆動装置の動作態様を検出する動作検出手段と、
    上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成手段と、を備える、
    駆動装置。
  2. 上記コントローラは、
    上記複数のサーボモータの夫々が送信した識別情報を受信して記憶する第2の記憶部をさらに備える、請求項1記載の駆動装置。
  3. 上記コントローラは、
    上記第2の記憶部に記憶しているいずれか1つの識別情報に基づいて、識別情報とサーボモータを動作させるための動作情報とを含むパケットデータを生成するパケットデータ生成手段をさらに備える、請求項2記載の駆動装置。
  4. 上記動作検出手段は、上記サーボモータが駆動する上記駆動部の動きに起因する当該駆動装置の動作態様を、加速度、角速度、音声及び映像の少なくとも1つにより検出する、請求項1乃至3いずれか記載の駆動装置。
  5. 上記駆動装置はロボットであり、上記複数の駆動部は、生物を模した、胴体部に対する頭部、頸部、四肢部の少なくとも1つを形成する、請求項1乃至4いずれか記載の駆動装置。
  6. 上記サーボモータは、上記頭部、頸部、四肢部のいずれかに配設され、
    上記対応情報生成手段は、上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、いずれの部位に配設されたサーボモータであるのかを示す対応情報を生成する、
    請求項5記載の駆動装置。
  7. コントローラと、上記コントローラと共通信号線を介して接続され、互いに異なる識別情報を記憶する第1の記憶部、ランダム値を発生し、発生したランダム値を上記識別情報として生成する識別情報生成手段、上記識別情報生成手段で生成した識別情報を上記第1の記憶部に記憶させる第1の記憶制御手段、上記識別情報生成手段で生成した識別情報を、上記共通信号線を介して上記コントローラへ送信する第2の送信手段、及び上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合にサーボモータを動作させる駆動制御部を設けた複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた装置での駆動方法であって、
    上記コントローラによる、
    サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信工程と、
    上記第1の送信工程で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該装置の動作態様を検出する動作検出工程と、
    上記動作検出工程で検出した動作態様に基づいて、上記第1の送信工程で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成工程と、
    を有する駆動方法。
  8. コントローラと、上記コントローラと共通信号線を介して接続され、互いに異なる識別情報を記憶する第1の記憶部、ランダム値を発生し、発生したランダム値を上記識別情報として生成する識別情報生成手段、上記識別情報生成手段で生成した識別情報を上記第1の記憶部に記憶させる第1の記憶制御手段、上記識別情報生成手段で生成した識別情報を、上記共通信号線を介して上記コントローラへ送信する第2の送信手段、及び上記コントローラが上記共通信号線に送信した識別情報が上記第1の記憶部に記憶する識別情報と一致する場合にサーボモータを動作させる駆動制御部を設けた複数のサーボモータと、上記複数のサーボモータの夫々により駆動される複数の駆動部とを備えた装置が内蔵するコンピュータが実行するプログラムであって、
    上記コンピュータを、
    サーボモータを指定する識別情報を上記共通信号線に送信する第1の送信手段と、
    上記第1の送信手段で識別情報を上記共通信号線に送信することにより、上記複数のサーボモータのいずれかが動作し、動作したサーボモータにより駆動される駆動部の動きに起因する当該装置の動作態様を検出する動作検出手段と、
    上記動作検出手段で検出した動作態様に基づいて、上記第1の送信手段で送信した識別情報が、上記複数のサーボモータ中のいずれのサーボモータであるのかを示す対応情報を生成する対応情報生成手段と、
    して機能させるプログラム。
JP2017246664A 2017-12-22 2017-12-22 駆動装置、駆動方法及びプログラム Active JP6720958B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017246664A JP6720958B2 (ja) 2017-12-22 2017-12-22 駆動装置、駆動方法及びプログラム
US16/212,176 US10850394B2 (en) 2017-12-22 2018-12-06 Driving device
CN201811538844.6A CN109968336B (zh) 2017-12-22 2018-12-14 驱动装置、驱动方法以及记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017246664A JP6720958B2 (ja) 2017-12-22 2017-12-22 駆動装置、駆動方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2019111611A JP2019111611A (ja) 2019-07-11
JP6720958B2 true JP6720958B2 (ja) 2020-07-08

Family

ID=66949275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017246664A Active JP6720958B2 (ja) 2017-12-22 2017-12-22 駆動装置、駆動方法及びプログラム

Country Status (3)

Country Link
US (1) US10850394B2 (ja)
JP (1) JP6720958B2 (ja)
CN (1) CN109968336B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110091323B (zh) * 2018-01-30 2020-11-24 优必选教育(深圳)有限公司 一种智能设备及机器人的控制方法、具有存储功能的装置
WO2019220504A1 (ja) * 2018-05-14 2019-11-21 ロボショップ株式会社 スマート・サーボモータおよび複数のスマート・サーボモータを使用した駆動装置
KR102203438B1 (ko) * 2018-12-26 2021-01-14 엘지전자 주식회사 이동 로봇 및 이동 로봇의 제어방법
CN114502309A (zh) * 2019-10-11 2022-05-13 松下知识产权经营株式会社 标识符管理方法、机器人控制装置以及综合控制装置
CN114750158A (zh) * 2022-04-28 2022-07-15 上海擎朗智能科技有限公司 一种机器人工作方法、机器人及存储介质
US20240004368A1 (en) * 2022-06-29 2024-01-04 Kawasaki Jukogyo Kabushiki Kaisha Robot system
CN115609581B (zh) * 2022-09-23 2024-02-27 上海飒智智能科技有限公司 移动机器人控制及边缘计算方法和机器人控制器

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962323A (ja) 1995-08-24 1997-03-07 Mitsubishi Electric Corp 数値制御装置のシステムパラメータ設定方法および数値制御装置
DE69834876T2 (de) * 1997-09-05 2007-01-18 Pioneer Electronic Corp. Informationserzeugungs- und -wiedergabeverfahren und -gerät sowie Informationsaufzeichnungsmedium
JP4472165B2 (ja) * 1999-12-24 2010-06-02 本田技研工業株式会社 移動ロボットの制御装置
JP2001277166A (ja) * 2000-03-31 2001-10-09 Sony Corp ロボット及びロボットの行動決定方法
JP4346574B2 (ja) * 2005-03-28 2009-10-21 日本リライアンス株式会社 サーボモータ制御装置
JP2007164577A (ja) 2005-12-15 2007-06-28 Seiko Epson Corp ロボット制御装置の制御方法及びロボット制御装置
JP4859706B2 (ja) * 2006-08-29 2012-01-25 株式会社ダイヘン ロボット制御システム
CN101417425A (zh) * 2007-10-26 2009-04-29 应广科技股份有限公司 多重伺服马达控制系统与方法
US20090128080A1 (en) * 2007-11-16 2009-05-21 Padauk Technology Co. System and method for controlling multiple servo motors
TW201019131A (en) 2008-11-14 2010-05-16 Micro Star Int Co Ltd Complex servo controlling system
JP2010152595A (ja) * 2008-12-25 2010-07-08 Omron Corp サーボシステムおよび安全制御機器
JP2011087414A (ja) * 2009-10-15 2011-04-28 Taida Electronic Ind Co Ltd サーボモータ機構およびその作動方法
JP5877742B2 (ja) * 2012-03-19 2016-03-08 平田機工株式会社 制御装置及び制御方法
TW201407364A (zh) * 2012-08-01 2014-02-16 Mitac Int Corp 伺服器啟動方法
JP6542544B2 (ja) * 2015-02-25 2019-07-10 ファナック株式会社 モータの軸名称を認識する数値制御システム
TWI554022B (zh) * 2015-09-23 2016-10-11 金寶電子工業股份有限公司 智慧馬達的識別碼設定方法及應用其之多軸控制裝置
JP6108645B1 (ja) * 2016-01-31 2017-04-05 貴司 徳田 モーターモジュールシステム
CN105988404B (zh) * 2016-06-30 2018-12-04 深圳市优必选科技有限公司 一种伺服器控制系统
TWI684081B (zh) * 2018-06-20 2020-02-01 新世代機器人暨人工智慧股份有限公司 馬達編號方法、自動控制裝置以及記錄介質

Also Published As

Publication number Publication date
CN109968336A (zh) 2019-07-05
US10850394B2 (en) 2020-12-01
US20190193266A1 (en) 2019-06-27
CN109968336B (zh) 2022-07-08
JP2019111611A (ja) 2019-07-11

Similar Documents

Publication Publication Date Title
JP6720958B2 (ja) 駆動装置、駆動方法及びプログラム
US6381515B1 (en) Robot apparatus
JP3968501B2 (ja) ロボットの自己位置同定システム及び自己位置同定方法
JP7518610B2 (ja) 制御装置、制御システム、ロボットシステム及び制御方法
JP7339776B2 (ja) 制御システム、機械装置システム及び制御方法
JP7384575B2 (ja) 情報処理装置、仲介装置、シミュレートシステム、情報処理方法及びプログラム
JP5877742B2 (ja) 制御装置及び制御方法
CN110825121B (zh) 控制装置与无人机控制方法
WO2021024586A1 (ja) 制御装置、制御システム、ロボットシステム及び制御方法
WO2020032249A1 (ja) 情報処理装置、仲介装置、シミュレートシステム及び情報処理方法
CN109746914B (zh) 构建机器人的方法、机器人控制设备、系统及存储介质
JP2014119907A (ja) 通信ユニット、通信システム、制御方法、およびプログラム
CN110977959B (zh) 控制装置、机器人、控制方法以及存储介质
US11992951B2 (en) Control method, control device, robot system, program, and recording medium
JP7363823B2 (ja) 情報処理装置、および情報処理方法
KR101378305B1 (ko) 로봇맵 생성 방법 및 시스템
US20090088044A1 (en) Interactive intellectual robotic toy and control method of the same
CN111612889B (zh) 一种机器人的动作识别方法及动作识别系统
JP2011110687A (ja) ロボットコントロール・システム、ロボットコントロール方法
JP7333197B2 (ja) 制御システム、機械装置システム及び制御方法
Grandi et al. Unibot remote laboratory: A scalable web-based set-up for education and experimental activities in robotics
Dang et al. Design of a new cost-effective head for a low-cost humanoid robot
KR101213151B1 (ko) 분산 지능형 제어장치의 데이터 패킷 생성 방법
JP3239216B1 (ja) 通信により知識情報を更新するロボット、ロボットシステム
US20240086509A1 (en) Information processing device, information processing method, and information processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200312

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: 20200519

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200601

R150 Certificate of patent or registration of utility model

Ref document number: 6720958

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150