JP6933227B2 - マルチモータシステム - Google Patents

マルチモータシステム Download PDF

Info

Publication number
JP6933227B2
JP6933227B2 JP2018558070A JP2018558070A JP6933227B2 JP 6933227 B2 JP6933227 B2 JP 6933227B2 JP 2018558070 A JP2018558070 A JP 2018558070A JP 2018558070 A JP2018558070 A JP 2018558070A JP 6933227 B2 JP6933227 B2 JP 6933227B2
Authority
JP
Japan
Prior art keywords
motor
data
control
command
control amount
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
JP2018558070A
Other languages
English (en)
Other versions
JPWO2018117222A1 (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.)
Nidec America Corp
Original Assignee
Nidec America Corp
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 Nidec America Corp filed Critical Nidec America Corp
Publication of JPWO2018117222A1 publication Critical patent/JPWO2018117222A1/ja
Application granted granted Critical
Publication of JP6933227B2 publication Critical patent/JP6933227B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/04Arrangements for controlling or regulating the speed or torque of more than one motor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0006Exoskeletons, i.e. resembling a human figure
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/04Arrangements for controlling or regulating the speed or torque of more than one motor
    • H02P2006/045Control of current

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Multiple Motors (AREA)
  • Control Of Electric Motors In General (AREA)

Description

本開示は、マルチモータシステムに関する。
モータの制御量、たとえば目標位置や目標回転速度、を外部から命令する場合、これまでは、外部装置とモータとが、予め定められたモータ制御量の記述規則に従って通信を行っていた。「モータ制御量の記述規則」の具体例は、同一ネットワーク上で送受信されるモータ制御量のデータが、Q表記(Qフォーマット)に従って整数部が16ビットで記述され、小数部が16ビットで記述される、という規則である。
外部の装置とモータとがともに上記記述規則に従って通信を行うため、制御する側である外部装置のモータ制御量の解釈と、制御される側であるモータのモータ制御量の解釈とが相違することはなかった。よって、目標位置および目標回転速度に適切に追従させるモータ制御が実現されていた。
たとえば特開2003−285954号公報は、プリンタ、ファクシミリ装置等の画像形成装置を開示する。画像形成装置は、画像の記録媒体である用紙を搬送するのに用いられる紙送り装置を有している。紙送り装置の紙送り手段は外部からの指示に従い、所望の位置まで用紙を搬送する。検出手段は、紙送り手段の動作量を検出し、演算手段が、その検出された動作量が外部から指示された動作量と一致するように紙送り手段の駆動源の制御量を演算する。制御手段は、その演算された制御量に基づき、紙送り手段の駆動源を制御する。演算手段は、演算ビット長が一定で、整数部を上位ビットJ桁で表し、小数部を下位ビットK桁で表す固定小数点形式のデータを用いて、駆動源の制御量を演算する。データの整数部及び小数部のビット桁数J、Kについては、設定手段は、紙送り手段の動作量が小さいほど小数部のビット桁数Kが多くなるように設定する。
特開2003−285954号公報
モータの制御量の単位が異なる複数のモータが同一のネットワークで接続された場合、制御する側の上位装置がある1つの規則にしたがってモータ制御量のデータを送信すると、受信側のモータのいくつかはモータ制御量を誤認識する。そのため、全てのモータを正しく動作させることはできなかった。
通信の規則として、モータ制御量の単位をすべてのモータについて同一にすると、受信側のモータがモータ制御量を誤認識することは回避できる。しかしながら、当該モータ制御量は各モータの制御に適した制御量の単位で記述されていないため、モータによっては制御量の精度が粗すぎ、または精度が高すぎる場合が生じる。
各モータユニットに応じた精度でモータ制御量の単位を設定する技術が必要とされている。
本開示のマルチモータシステムは、複数のモータユニットを有するマルチモータシステムであって、前記複数のモータユニットの各々は、モータと、外部から送信されたコマンドを受信する通信回路と、前記コマンドによって指定された制御量で前記モータを回転させるための制御信号を生成する制御回路と、前記制御信号に基づいて前記モータに電流を流すモータ駆動回路とを備え、前記コマンドは、前記モータの制御量を固定データ長で示す制御データであって、前記制御量が少なくとも整数で表現された制御データ、および前記制御データの小数点の位置を指定する位置指定データを有し、前記位置指定データはモータユニットごとに独立して決定される。
本発明の例示的な実施形態にかかるマルチモータシステムによれば、各モータの制御量の単位が異なる複数のモータユニットが同一のネットワークで接続された場合でも、各モータユニットに応じた精度でモータ制御量の単位が、モータごとに独立して設定される。これにより、各モータの制御量の単位をモータごとに適切に設定してモータの回転を制御することが可能になる。
図1Aは、有線のシリアル通信で利用されるデータフレーム1aの構造を示す図である。 図1Bは、無線通信で利用されるデータフレーム1bの構造を示す図である。 図2は、共通データ構造12を示す図である。 図3Aは、コミュニケーションロボット30の外観を示す図である。 図3Bは、パワーアシストスーツ30bの外観を示す図である。 図3Cは、業務用冷蔵ショーケース30cの外観を示す図である。 図4は、マルチモータシステム103の模式図である。 図5Aは、マルチモータシステム103で用いられるコマンド12Aの概要を示す図である。 図5Bは、マルチモータシステム103で用いられるコマンド12Bの概要を示す図である。 図6は、コミュニケーションロボット30(図3A)の関節を回転させるモータユニットを含むマルチモータシステム103の構成例を示す図である。 図7は、RS−485規格の通信時のデータフレーム2aの例を示す。 図8Aは、制御量D1が相対量で指定される場合のコマンド12Cの例を示す図である。 図8Bは、制御量D1が絶対量で指定される場合のコマンド12Dの例を示す図である。 図9は、パワーアシストスーツ30bを装着した人物50と、グリーンハウス60とを示す図である。 図10Aは、人物50が、グリーンハウス60の入口62付近で収穫作業を行っているときに回転速度を高める複数のファンモータユニット64を示す図である。 図10Bは、人物50が移動することによって回転速度を高める、さらに他の複数のファンモータユニット66を示す図である。
本開示による、複数のモータを有するマルチモータシステムは、上位装置、他のマルチモータシステムまたはモータユニット等の外部から送信されたコマンドを受信して、当該コマンドに従って各モータを制御して回転させる。
以下では、添付の図面を参照しながら、まず外部の機器とマルチモータシステムとの間で送受信される際の通信プロトコルを説明する。その後、マルチモータシステムの構成および動作を説明する。
図1Aは、有線のシリアル通信で利用されるデータフレーム1aの構造を示す。シリアル通信の一例はRS−485規格の通信を想定している。RS−485規格はOSI参照モデルでいう物理層の電気的仕様を策定する。
データフレーム1aは各種のデータを包含している。参考のため、図1Aの最上段にはOSI参照モデルの層ごとの区分を示す。また図1Aの最下段には、各データのデータサイズをバイト単位で表記している。図1Aの最左欄は凡例である。後述する図1Bおよび図2でも同様である。
データフレーム1aは、たとえば、送信先デバイスID10と、送信元デバイスID11と、共通データ構造12とを含む。送信先デバイスID10は、送信先のデバイスを識別する識別子である。送信元デバイスID11は、送信元のデバイスを識別する識別子である。送信元のデバイスは、上位装置以外にも、他のマルチモータシステムであり得る。識別子は、たとえば製造時に重複することなく機器ごとに付与されたID(デバイス識別子またはデバイスID)、IPアドレスである。デバイスIDまたはIPアドレスは、通信ネットワーク内でモータユニットを一意に示す識別子である。共通データ構造12は、後述する1または2のコマンドを含むデータ構造である。
これまで、モータを制御するためには、制御対象であるモータを識別する送信先のデバイスIDのみが存在していれば十分であった。送信先デバイスIDを指定して制御データを送れば、当該モータが当該制御データに従って動作していたからである。
本発明者は、これまで考えられていなかった、複数台のモータが互いに通信し、全体として協働的に動作するマルチモータシステムの構築を検討した。そして、そのためには新たな通信プロトコルが必要であると考え、新たに、送信元デバイスID11、および、共通データ構造12を策定した。
図1Bは、無線通信で利用されるデータフレーム1bの構造を示す。無線通信の一例はWi−Fi(登録商標。以下同じ)規格の通信を想定している。Wi−Fi規格はOSI参照モデルでいう物理層およびデータリンク層の仕様を策定する。
データフレーム1bは、OSI参照モデルの各層のヘッダを複数含んでいる。もともと、IPヘッダには宛先IPアドレス20と送信元IPアドレス21とを格納することになっている。本発明者は、送信元IPアドレス21を、上述の送信元デバイスID11に相当する識別子として利用することができると考えた。そこで、Wi−Fi規格の共通データ構造12を利用して行われる通信プロトコルでは、当該送信元IPアドレス21を活用することとした。
なお、上述した有線通信および無線通信は一例である。他の任意の通信プロトコルを利用することができる。本発明者は、モータ制御のためにモータ間通信を行う通信システムにおいて、送信元を一意に示す識別子を利用することとした。そのため、モータ間通信を行う通信システムにおいて、ヘッダ等に送信元を一意に示す識別子が含まれていれば本開示は適用可能である。すなわち、既存の通信プロトコルであっても、送信元を示す識別子が含まれていれば、送信元デバイスID11に相当する識別子としてモータ間通信に利用することができる。
図2は、共通データ構造12を示す。
共通データ構造12は、データ長フィールド12aと、動作系コマンドフィールド12bと、属性系コマンドフィールド12cと、データフィールド12dとを有する。
データ長フィールド12aは、共通データ構造12の総バイト数を示す。
動作系コマンドフィールド12bは、例えばモータを動作させるための動作系コマンドを示す。動作系コマンドは、当該動作系コマンドに対応する数値(2進数表記)で記述される。動作系コマンドの一例は、ライトデータ(Write Data)、リードデータ(Read Data)、実行(Execution)および接続(Connect)である。ライトデータ、リードデータ等は、モータの動作に関連してモータユニットが行う動作である。つまり、動作系コマンドは、モータユニットが行うべき動作を指定する、他のモータユニットからの要求または他のモータユニットへの要求であると言うことができる。
属性系コマンドフィールド12cは、モータに関する属性を指定する属性系コマンドを示す。属性系コマンドもまた、当該コマンド対応する数値(2進数表記)で記述される。属性系コマンドの一例は、現在の角度(Present Angle)、ターゲット角度(Target Angle)、角度制限(Angle Limit)およびシリアル番号(Serial Number)である。属性系コマンドは、動作系コマンドとともに指定される、モータに関する静的または動的な属性であると言うことができる。
データフィールド12dは、属性系コマンドフィールド12cに対するデータが記述される。データの一例は、角度設定値、回転速度設定値、シリアル番号値である。
上述した共通データ構造は、たとえば3バイトから13バイトまでの範囲内に収まる、比較的短いデータ長を有する。他の通信プロトコルであるEtherCATは32バイトの大きさであるため、通信時の混在解消および回線の占有を抑制できる。さらに、動作系コマンドと属性系コマンドとを分けて規定したため、利用者(プログラム者)にとって理解しやすい。
なお、動作系コマンドフィールド12bおよび属性系コマンドフィールド12cにどのようなコマンドが格納されるかについては、後の実施形態とともに説明する。
次に、マルチモータシステムの例示的な実施形態を説明する。
1台の製品に、複数台のモータユニットが搭載される例が増えてきた。そのような製品では、あるモータユニットが他のモータユニットと通信する必要性が高まっている。
たとえば図3Aから図3Cは、複数台のモータユニットを搭載する製品の例を示す。
図3Aは、コミュニケーションロボット30aの外観を示す。コミュニケーションロボット30aの矢印で示す各位置にモータユニットが搭載されている。1台のコミュニケーションロボット30aには約20個またはそれ以上のモータユニットが装着され得る。これにより、ロボット30は複雑な動きを実現することが可能になる。
図3Bはパワーアシストスーツ30bの外観を示している。パワーアシストスーツ30bは農作業、介護作業等に使用される。図3Aの例と同様、複数の矢印で示す各位置にモータユニットが搭載されている。なお、矢印は主として右半身側のモータユニットのみを示しているが、右半身に対応する左半身の各位置にも同様にモータユニットが設けられている。たとえば、パワーアシストスーツ30bには腕力・脚力を支えるため20個以上のモータユニットが使用され得る。なお図3Bには、参考のためパワーアシストスーツ30bを装着した人のシルエットが記載されている。
図3Cは業務用冷蔵ショーケース30cの外観を示している。矢印で示す各位置にモータユニットが搭載されている。1台の業務用冷蔵ショーケース30cには10個以上のファンモータユニットが装着され得る。これにより、冷却効率を高めることができる。
本実施形態では、上述した1台の機器に含まれる複数のモータユニットは相互に通信して、自律的かつ協調して動作する。
たとえば、業務用冷蔵ショーケース30cに搭載された複数台のうちの1台のファンモータユニットが故障したとする。故障したファンモータユニットの回転が停止したにもかかわらず、他のファンモータユニットがこれまでと同様の回転状態を維持すると冷却効率が低下する。
そこで、あるモータユニットが故障したことを、そのファンモータユニット(以下「故障ユニット」と略記する。)自身が他のファンモータユニットに通知し、または故障ユニットとの通信ができなくなったことを他のファンモータユニットが検出する。すると、複数台のファンモータユニットのうちの、故障ユニット近傍の2台のファンモータユニットが自身の動作を変化させる。具体的には、当該2台のファンモータユニットは、回転速度の増加および減少を交互に繰り返して故障したファンモータユニットに代わって動作する。これにより、冷却効率を維持し温度ムラの発生を抑止することができる。
本実施形態では、上位装置などの外部の機器からコミュニケーションロボット30aの各関節に設けられたモータユニットを回転させるためのコマンドを送信する。
図4は、本実施形態によるマルチモータシステム103の模式図である。マルチモータシステム103は複数のモータユニット32a〜32eを有する。後述のように、各モータユニットは、モータおよび種々の回路要素を含んでいる。
複数のモータユニット32a〜32eの各々は、上位装置150から送信されたデータフレーム中のコマンドに従って動作する。複数のモータユニット32a〜32eは相互に通信してもよい。なお、図4のマルチモータシステム103では、通信可能なモータユニット同士が線で結ばれ、データフレームの流れは矢印によって示されているが、記載された線および矢印は一例である。線で結ばれていないモータユニット同士も相互に通信を行うことができる。また、各モータユニットは上位装置150にデータフレームを送信してもよい。
図5Aおよび図5Bは、本実施形態にかかるマルチモータシステム103で用いられるコマンド12Aおよび12Bの概要を示す。コマンド12Aおよび12Bは図2に示す共通データ構造12において定義されるが、図5Aおよび図5Bには全体のうちの一部のみが抜粋されて示されている。
まず図5Aを参照する。図5Aには、モータユニット32aに送信されるコマンド12Aの概略的な構造が示されている。コマンド12Aは3種類のデータを含む。具体的には、制御データの小数点の位置を指定する位置指定データA1、モータの回転方向を指定する回転方向データB1、および、モータの制御量を示す制御データC1である。
位置指定データA1は、制御データC1の小数点の位置を指定する。回転方向データB1は、モータユニット32aのモータの回転方向を指定する。制御データC1は、たとえばモータの回転速度を表す。制御データC1には、モータの制御量を示す数値が固定長で記述されている。本例では、モータの制御量を示す数値は4バイトであるとする。すなわち当該数値は、2進数で32ビット、2桁1組の16進数を4組用いて表される。図5Aでは2桁1組の16進数を4組用いて記載している。図5Bも同様である。
図5Aでは、位置指定データA1は、制御データC1の下位2組目と3組目の間を指している。つまり、制御データC1の上位2組(4桁)はモータの制御量の整数値を示す整数部であり、下位2組(4桁)はモータの制御量の小数値を示す小数部である。図5Aの例では、目標回転速度として5400.25(rpm)が指定されている。
一方、図5Bには、モータユニット32bに送信されるコマンド12Bの概略的な構造が示されている。図5Bのコマンド12Bの構成は、図5Aのコマンド12Aの構成に準じる。以下では、コマンド12Bのうち、図5Aのコマンド12Aと同じデータ構造については説明を省略する。
図5Bでは、位置指定データA2は、制御データC1の下位1組目と2組目の間を指している。上位3組(6桁)はモータの制御量の整数値を示す整数部であり、下位1組(2桁)はモータの制御量の小数値を示す小数部である。図5Bの例でも、目標回転速度として5400.25(rpm)が指定されている。
制御データC1およびC2は固定長で記述される。しかしながら、小数点の位置が異なることにより、表現可能な数値の範囲が異なる。上述の例では、コマンド12Aは、コマンド12Bに比して小数部に割り当てられるデータ量が多い。よってコマンド12Aを利用すれば微細なモータ制御を行うことができる。一方、コマンド12Bは、コマンド12Aに比して整数部に割り当てられるデータ量が多い。よってコマンド12Aを利用すればモータを高速回転させることができる。
同じ性能のモータであれば、位置指定データA1と制御データC1とを用いて、非常に広い範囲の回転速度でモータの回転を制御することが可能になる。また、性能の異なるモータを有するモータユニットが混在する場合には、位置指定データA1と制御データC1とを用いて、各モータユニットが必要とする精度の制御データC1を提供することができる。
図5Aおよび図5Bにおいて、位置指定データA1は、制御データC1およびC2のすべてが整数部であることを示してもよい。つまり、制御データの最下位の桁までが整数部であることを示してもよい。これにより、制御データを用いて整数値のみを指定することができる。
固定小数点を含む数は、Q表記(Qフォーマット)によって小数部分をビット数で示すことがある。整数部のみが存在し小数部の桁数が0(ビット)の場合にはQ0フォーマット、小数部の桁数が8ビットであればQ8フォーマット、小数部の桁数が16ビットであればQ16フォーマットである。
ここで、モータユニットに応じた制御データが送信されない場合の問題を具体的に説明する。「整数部が16ビットおよび小数部が16ビット」の制御データで動作するモータユニットAと、「整数部が24ビットおよび小数部が8ビット」の制御データで動作するモータユニットBとを想定する。目標回転速度は引き続き5400.25(rpm)とする。
上記目標回転速度の制御データは、モータユニットAおよびBそれぞれについて以下のように表現する必要がある。なお、括弧内の数値は16進数の表記である。
モータユニットA用制御データ:整数部(15 18)16、小数部(40 00)16
モータユニットB用制御データ:整数部(00 15 18)16、小数部(40)16
マルチモータシステム103が、モータユニットA用の制御データの形式にのみ対応し、モータユニットB用の制御データの形式に対応していない場合には、モータユニットA用の制御データがモータユニットBに送信されてしまう。しかしながら、モータユニットA用の制御データをモータユニットBに送信すると、モータユニットBは、当該制御データを、整数部が(15 18 40)16、小数部が(00)16であると解釈する。つまりモータユニットBは、目標回転速度が1382464.00(rpm)であると解釈する。結果として、モータの過回転によって故障が発生し、または、許容値を超えるとしてモータの動作が停止するおそれがある。
そこで本発明者は、制御データ中の小数点の位置を指定する位置指定データを設けて、制御データの整数部と小数部とを抽出できるようにした。これにより、各モータユニットが受け付け可能な形式で制御データを送信できるようになった。
なお、モータの回転方向を示すデータを設けるかどうかは用途に応じて決定することができる。たとえば回転方向が一定であるモータであれば、回転方向を指定しなくてもよい。
また、図5Aおよび図5Bでは、モータの回転速度を示す値を制御データC1およびC2として記述したが、回転速度は一例である。他のパラメータ、たとえばトルクや回転角度であってもよい。また、トルクや回転速度の最大値を100%としたときの比(%)を記述してもよい。
上述の例では、小数点の位置が異なることにより、表現可能な数値の範囲が異なる、と述べた。以下、制御データの固定長が1バイトであるときの、Q7フォーマットおよびQ0フォーマットの違いを説明する。
Q7フォーマットでは、制御データは、整数部が1ビット、小数部が7ビットで記述される。当該制御データが表現可能な範囲は以下のとおりである。
( 2進数表記) 0.0000000〜1.1111111
(10進数表記) 0〜1.9921875 (変化幅:0.0078125)
一方のQ0フォーマットでは、制御データは、整数部が8ビット、小数部が0ビットで記述される。当該制御データが表現可能な範囲は以下のとおりである。
( 2進数表記) 00000000〜11111111
(10進数表記) 0〜255 (変化幅:1)
上述の例から明らかなように、どのようなQフォーマットを採用するかによって、表現可能な値の範囲および変化幅を様々に変化させることができる。
以下、モータユニットの構成と、モータユニット間で行われる通信を説明する。例示的に、図3Aのコミュニケーションロボット30aに搭載されるモータユニットを挙げて説明する。
図6は、本実施形態による、コミュニケーションロボット30a(図3A)の関節を回転させるモータユニットを含むマルチモータシステム103の構成例を示す。図6の例では記載の便宜上、2つのモータユニット106Aおよび106Bが示されているが、図3A〜図3Cおよび図4に示すように3以上であってもよい。
マルチモータシステム103は、モータユニット106Aおよび106Bを有している。モータユニット106Aは、通信回路110Aと、プロセッサ112Aと、メモリ113Aと、モータ駆動回路114Aと、関節用モータ116Aと、関節機構104Aとを有する。モータユニット106Bは、通信回路110Bと、プロセッサ112Bと、メモリ113Bと、モータ駆動回路114Bと、関節用モータ116Bと、関節機構104Bとを有する。モータユニット106Aおよび106Bは、インテリジェントモータ(登録商標)と呼ばれることがある。なお、上述の説明では、一例として関節機構104Aおよび104Bはそれぞれモータユニット106Aおよび106Bに含まれるとしたが、含まれなくてもよい。
本明細書ではモータユニット106Aおよび106Bは、図6に示す上位装置150からコマンドを含むデータフレームを受信する。
通信回路110Aおよび110Bはそれぞれバッファ111Aおよび111Bを有している。バッファ111Aおよび111Bには、予め、モータユニット106Aおよび106Bをそれぞれ識別するための識別子が格納されている。当該識別子は、通信可能な範囲の通信ネットワーク内で一意に識別可能な文字および/または数字であればよく、たとえばIPアドレス、または、上述した、デバイスごとに重複なく付与されたID(デバイスID)であり得る。
データフレームを受信したとき、通信回路110Aおよび110Bは、それぞれ、物理層、データリンク層の処理を行い、データフレームの送信先デバイスID10(図1A)がバッファ111Aおよび111Bに格納されている識別子と自身の識別子と一致するか否かを判定する。一致する場合には、通信回路110Aおよび110Bは当該データフレームの処理を続行し、一致しない場合には当該データフレームを破棄する。
Wi−Fi規格による無線通信が行われる場合には、上述の自身の識別子としてIPアドレスを採用し得る。通信回路110Aおよび110Bは、データフレームの宛先IPアドレス20(図1B)が自信のIPアドレスと一致するか否かを判定する。その後の処理は上述の処理と同じである。
データフレームの処理を続行する場合には、通信回路110Aおよび110Bは、データフレームに、さらにOSI参照モデルにおけるIP層、トランスポート層等毎の処理を順次行い、共通データ構造12を抽出する。上述のように共通データ構造12には動作系コマンド12b等が含まれている。通信回路110Aおよび110Bは、それぞれ、コマンドを抽出し、プロセッサ112Aおよび112Bに送信する。
プロセッサ112Aおよび112Bはいずれも、半導体が集積された信号処理プロセッサである。プロセッサは「信号処理回路」または「制御回路」とも呼ばれる。プロセッサ112Aおよび112Bは、それぞれ、指定された回転速度でモータ116Aおよび116Bを回転させるための信号を生成する。当該信号は、たとえばPWM信号である。またプロセッサ112Aおよび112Bは、他のモータユニットから送信されたデータフレームに含まれる共通データ構造12に含まれるコマンドおよびデータ解釈し、コマンドの内容に応じた処理を行う。
メモリ113Aおよび113Bは、他のモータユニットと、当該モータユニットの識別子とを対応付けたテーブルを予め保持している。つまり、識別子は各モータユニットの通信回路に予め設定され、当該識別子が他のモータユニットのメモリに保持されている。プロセッサ112Aおよび112Bは、データフレームの送受信を行いたいモータユニットが決まれば、当該モータユニットの識別子を特定し、通信回路111Aおよび111Bに指示することができる。
モータ駆動回路114Aおよび114Bはそれぞれ、PWM信号に応じた大きさおよび方向で電流をモータ116Aおよび116Bに流す。これにより、モータ116Aおよび116Bは時計回りまたは半時計回りに回転する。モータの回転に伴い、モータの回転軸に取り付けられた関節機構104Aおよび104Bが時計回りまたは半時計回りに駆動される。その結果、モータの回転に応じた方向および角度で、コミュニケーションロボット30a(図3A)の関節が曲がる。
なお、コマンドには、モータ116Aおよび116Bを回転させる速度および時間等が、属性系コマンド12cおよびデータ12d(図2)を利用して指定され得る。この時、回転速度を0と指定すれば、モータ116Aおよび116Bを回転させなくすることもできる。プロセッサ112Aおよび112Bは、指定された回転速度および回転時間でモータ116Aおよび116Bが回転するよう、PWM信号を生成すればよい。
次に、上位装置150から送信されるコマンドを説明する。なお、上位装置150以外の外部の機器がコマンドを送信してもよい。
上位装置150は、送信先デバイスIDにモータユニット106Aの識別子を記述して、モータユニット106A宛てに「目標回転速度を設定するリクエスト」を送信する。以下では例として、モータユニット106AはQ20フォーマットに対応し、モータユニット106Aのモータ116Aを時計回り(CW)方向に目標トルク0090.00(N・m)で回転させることを想定する。
図7は、RS−485規格の通信時のデータフレーム2aの例を示す。データフレーム2aは図1Aのデータフレーム1aに対応する。なお、図1Bに示す、無線通信で利用されるデータフレーム1bに対応する例の説明は省略するが、当業者であれば、図6の例に基づいて理解することができる。
データフレーム2aには、送信先デバイスID10としてモータユニット106Aを示す1バイトの2進数値"00000001"が記述され、送信元デバイスID11として上位装置150を示す1バイトの2進数値"00001000"が記述されている。なお2進数値は一例である。
また、共通データ構造12には、動作系コマンド12bとして、目標回転速度を書き込むための「ライトデータ(Write Data)」コマンドに対応する2進数値"00001011"(0x11)が記述されている。また、属性系コマンド12cとして、下記の2つの属性を示す2進数値"00101001"(0x29)を記述する。
Q20フォーマット
回転方向:時計回り(CW)
なお、2進数8ビット値のうちの最下位ビットによって回転方向が表される。時計回り(CW)の場合には"1"、反時計回り(CCW)の場合には"0"が設定される。また、下位2−6ビットによってQフォーマット(Qに続く番号の2進数)が表現される。つまりQフォーマットは5ビット長で表現される。なお上位2ビットは"00"に予約されている。
Q20フォーマットは、小数部のビット数が20存在することを示す。これは次に説明する「データ」に記述された値、すなわち制御データ(目標回転速度)の小数点の位置(整数部と小数部との境界位置)を指定する「位置指定データ」として機能する。
次に、「制御データ」として、下記の属性が固定長の4バイトを用いて記述される。
目標トルク0090.00(N・m)
上述の例では、動作系コマンドおよび属性系コマンドおよび制御データを含むコマンド全体は5バイトの固定長で記述される。
プロセッサ112Aは、上位装置150が、データの書き込みコマンドを送信したこと、制御データの小数部の桁数が20であること、時計回り(CW)に回転すること、および、目標トルク0090.00(N・m)であること、を認識する。プロセッサ112Aは、回転方向が時計回り(CW)であることを示すフラグ、および、目標回転速度の値をメモリ113Aに書き込む。以上の処理により、上位装置150はモータユニット106Aに目標回転速度を設定させることができる。
なお、目標トルクに代えて、または目標トルクに追加して、他の制御量を記述してもよい。たとえば目標回転速度、目標回転角度等の大きさである。
上述の説明では、目標トルク等を絶対量で直接指定した。しかしながら、予め定められた所定の基準からの相対量によって制御量を指定してもよい。たとえば、現在の角度を基準とした場合の目標回転角度、回転速度の最大値を100%としたときの比(%)、トルクの最大値を100%とした場合の目標トルクの割合(%)、その他種々の制御データを書き込ませることもできる。これらの場合も位置指定データによって、制御データの小数点の位置を記述すればよい。
図8Aは、制御量D1が相対量で指定される場合のコマンド12Cの例を示す。図8Aは図5Aの記載に準じて作成されている。
図5Aの例と比較すると、コマンド12Cの先頭には、絶対・相対判定ビットFが設けられている。絶対・相対判定ビットFは、コマンド12Cの制御量D1が絶対量で記述されているか、相対量で記述されているかを示す。たとえば、制御量D1が絶対量で指定されている場合には当該ビットは「0」に設定され、相対量で指定されている場合には当該ビットは「1」に設定される。なお、小数点位置A1および回転方向B1の値は相対量を表現する値が設定される。
図8Bは、制御量D1が絶対量で指定される場合のコマンド12Dの例を示す。コマンド12Dでは、小数点位置A1、回転方向B1および制御量D1の内容は、図5Aの例と同じである。しかしながら、コマンド12Dでは、先頭の絶対・相対判定ビットFは「0」に設定される。
次に、モータユニット間で通信を行うマルチモータシステムの変形例を説明する。
図3Aの例では、コミュニケーションロボット30a内の複数のモータユニット同士が互いに通信する態様を説明した。また図3Bおよび図3Cの例では、それぞれパワーアシストスーツ30b内の複数のモータユニット同士、業務用冷蔵ショーケース30c内の複数のモータユニット同士が互いに通信する態様を説明した。いずれの例でも、1つの系(1つの製品)の中に含まれる複数台のモータユニット間の通信を想定していた。
しかしながら、異なる系にそれぞれ含まれるモータユニット同士が互いに通信することも可能である。
図9は、パワーアシストスーツ30bを装着した人物50と、グリーンハウス60とを示している。グリーンハウス60には、矢印で示す位置に、空調用ファンを回転させる複数のファンモータユニットが設けられている。
いま、人物50が、グリーンハウス60内で野菜の収穫作業を行う例を考える。人物50は、パワーアシストスーツ30bを装着して、パワーアシストスーツ30bからのアシスト力を得て野菜を収穫し、野菜を収納した収穫かごを運搬する。
本例では、パワーアシストスーツ30bの複数のモータユニットとグリーンハウス60の複数の空調用ファンとが相互に通信し、連携して動作する。
例えば、人物50がパワーアシストスーツ30bを利用して作業をしている位置周辺では、熱のこもり等による温度ムラが発生することが想定される。そこで、人が収穫かごを持って収穫作業をしているときは、パワーアシストスーツの1または複数のモータユニットが、グリーンハウス60の各ファンモータユニットに、現在動作中であることを示す通知を送信する。この通知により、グリーンハウス60の各ファンモータユニットは、人物50がパワーアシストスーツ30bを利用して作業中であることを知る。
本実施形態では、グリーンハウス60の各ファンモータユニットは、パワーアシストスーツ30bの位置を示す情報を取得する。パワーアシストスーツ30bの位置は周知の方法で取得され得る。例えばパワーアシストスーツ30bに無線タグが内蔵されており、無線タグから送信されるビーコン信号を、グリーンハウス60内の1または複数のアンテナ装置によって受信する。周知の到来方向推定アルゴリズム、例えば最尤推定法、を利用することにより、ビーコン信号の到来方向を推定することができる。これにより、グリーンハウス60内の無線タグの位置、つまりパワーアシストスーツ30bの位置を推定することができる。
パワーアシストスーツ30bの位置の情報を取得したグリーンハウス60の各ファンモータユニットは、自律的に自身のモータの回転を制御する。パワーアシストスーツ30bの位置から所定範囲内、例えば15m以内、に存在するファンモータユニットは、回転速度を通常よりも高める。これにより、パワーアシストスーツ30bの温度ムラの発生を抑制することができる。
または、パワーアシストスーツ30bのいずれかのモータユニットが、グリーンハウス60の特定のファンモータユニットのモータの回転を指示してもよい。このとき、モータの回転方向および/または回転速度の制御量を上述の方法によって指定することができる。
図10Aは、人物50が、グリーンハウス60の入口62付近で収穫作業を行っているときに回転速度を高める複数のファンモータユニット64を示している。
また、図10Bは、人物50が移動することによって回転速度を高める、さらに他の複数のファンモータユニット66を示している。
図10Aおよび図10Bのいずれの例でも、ファンモータユニット64および66以外の他のファンモータユニットは通常の回転速度で回転している。
なお、パワーアシストスーツ30bの総消費電力の大きさから、人物50の運動量の大きさを推定することができる。パワーアシストスーツ30bの各モータユニットがパケットに消費電力の大きさを示すデータを格納して送信することにより、グリーンハウス60の各ファンモータユニットは総消費電力の大きさを算出することができる。総消費電力の大きさに応じて、グリーンハウス60のファンモータユニットはモータの回転速度を増減させればよい。より具体的には、総消費電力の大きさに応じた複数の区分を設け、総消費電力が最も大きい区分に属する場合には、対象となるファンモータユニットは最も速くモータを回転させる。このとき、対象となるファンモータユニットを決定するための「所定範囲」を広げてもよい。一方、総消費電力が最も小さい区分に属する場合には、対象となるファンモータユニットは通常の回転速度よりも高速ではあるが、最速ではない回転速度でモータを回転させる。
パワーアシストスーツ30bを、人物50の関節の動きを検出するセンサとして利用することもできる。例えばグリーンハウス60内に入った人物50の具合が突然悪くなり、人物50が倒れたとする。早急な処置が好ましい上に、倒れたままの状態で長時間が経過すると、グリーンハウス60内の室温によっては人物50が熱中症になる危険性がある。
そのような場合を想定して、パワーアシストスーツ30bは、人物50の動きを一定時間、例えば15秒、検出できているか否かを監視している。相互に通信することにより、いずれのモータユニットも15秒以上モータを駆動させていないことが検出されたときは、各モータユニットは緊急信号に相当するパケットを送信する。当該パケットは、例えば動作系コマンドとして、データの書き込みを示す「ライトデータ(Write Data)コマンド」に対応する1バイト値"0x02"を含み、さらに属性系コマンドとして、緊急事態であることを示す2バイト値"0x00"を含む。
当該パケットを受信した各ファンモータユニットは、「パワーアシストスーツのモータが緊急信号を発信している」ことを示す通知を上位装置150に送信する。上位装置150は、通知の受信に応答して緊急事態が発生していることを管理者または家族に通報する。通報を受けた管理者または家族は、人物50の様子を確認しにグリーンハウス60に向かうことができる。
なお、上述の実施形態は一例であって本開示によるマルチモータシステムを制限しない。
本開示による、小数点の位置を指定する位置指定データおよび制御データを含むコマンドは、制御量の単位が異なる種々のモータを含むマルチモータシステムまたはモータ駆動システムに広く適用することができる。
103 マルチモータシステム
104A 関節機構
106A モータユニット
110A 通信回路
111A バッファ
112A プロセッサ(制御回路)
113A メモリ
114A モータ駆動回路
116A 関節用モータ
104B 関節機構
106B モータユニット
110B 通信回路
111B バッファ
112B プロセッサ(制御回路)
113B メモリ
114B モータ駆動回路
116B 関節用モータ
150 上位装置

Claims (10)

  1. 複数のモータユニットを有するマルチモータシステムであって、
    前記複数のモータユニットの各々は、
    モータと、
    外部から送信されたコマンドを受信する通信回路と、
    前記コマンドによって指定された制御量で前記モータを回転させるための制御信号を生成する制御回路と、
    前記制御信号に基づいて前記モータに電流を流すモータ駆動回路と
    を備え、
    前記コマンドは、
    前記モータの制御量を固定データ長で示す制御データであって、前記制御量が少なくとも整数で表現された制御データ、および
    前記制御データの小数点の位置を指定する位置指定データ
    を有し、
    前記位置指定データはモータユニットごとに独立して決定される、マルチモータシステム。
  2. 前記制御量は、前記整数を表す整数部と小数を表す小数部とを用いて表現されている請求項1に記載のマルチモータシステム。
  3. 前記コマンドでは、前記位置指定データ、前記モータの回転方向を指定するデータおよび前記制御データが、順に配列されており、
    前記制御回路は、前記位置指定データを用いて前記整数部および前記小数部を抽出し、抽出した前記整数部および前記小数部から構成される前記制御量に従って、前記制御信号を生成する、請求項2に記載のマルチモータシステム。
  4. 前記コマンドは固定長である、請求項1から3のいずれかに記載のマルチモータシステム。
  5. 前記コマンドは5バイトの固定長である、請求項4に記載のマルチモータシステム。
  6. 前記位置指定データは5ビット長であり、前記小数点以下の桁数は10進数表記で0桁から31桁までを表現可能である、請求項1から5のいずれかに記載のマルチモータシステム。
  7. 前記コマンドは、前記モータの制御量を絶対量によって指定する制御データを含む、請求項1から6のいずれかに記載のマルチモータシステム。
  8. 前記コマンドは、前記制御データが、前記モータの制御量を絶対量で表していることを示す判定データをさらに含む、請求項7に記載のマルチモータシステム。
  9. 前記コマンドは、前記モータの制御量を、所定の基準からの相対量によって指定する制御データを含む、請求項1から6のいずれかに記載のマルチモータシステム。
  10. 前記コマンドは、前記制御データが、前記所定の基準からの相対量で表されていることを示す判定データをさらに含む、請求項7に記載のマルチモータシステム。
JP2018558070A 2016-12-22 2017-12-21 マルチモータシステム Active JP6933227B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016250022 2016-12-22
JP2016250022 2016-12-22
PCT/JP2017/045952 WO2018117222A1 (ja) 2016-12-22 2017-12-21 マルチモータシステム

Publications (2)

Publication Number Publication Date
JPWO2018117222A1 JPWO2018117222A1 (ja) 2019-10-31
JP6933227B2 true JP6933227B2 (ja) 2021-09-08

Family

ID=62626751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018558070A Active JP6933227B2 (ja) 2016-12-22 2017-12-21 マルチモータシステム

Country Status (5)

Country Link
US (1) US10862410B2 (ja)
EP (1) EP3562027B1 (ja)
JP (1) JP6933227B2 (ja)
CN (1) CN110100386B (ja)
WO (1) WO2018117222A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102145506B1 (ko) * 2018-11-30 2020-08-18 (주)이지위드 모터 제어모듈 및 제어방법과, 모터 제어모듈을 갖는 키네틱 아트 장치

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3969615A (en) * 1974-12-20 1976-07-13 The United States Of America As Represented By The United States Energy Research And Development Administration Interpolator for numerically controlled machine tools
US4685114A (en) * 1986-02-27 1987-08-04 The Charles Stark Draper Laboratory, Inc. Waveform modulation system
JPH0352596A (ja) * 1989-07-18 1991-03-06 Mini Pairo Denki:Kk ステッピングモータコントロール装置
JP3645668B2 (ja) 1996-09-06 2005-05-11 松下電器産業株式会社 モータ制御装置
JP2000231731A (ja) * 1999-02-09 2000-08-22 Sony Corp 光ディスク駆動装置、光ディスク駆動方法および光ディスク装置
JP2002112566A (ja) * 2000-07-27 2002-04-12 Matsushita Electric Ind Co Ltd モータ制御装置
JP3783567B2 (ja) * 2001-02-27 2006-06-07 三菱電機株式会社 加減速制御方法
JP3690296B2 (ja) * 2001-03-26 2005-08-31 セイコーエプソン株式会社 センサレスモータの駆動装置
JP4193403B2 (ja) 2002-03-28 2008-12-10 ブラザー工業株式会社 紙送り装置
US7068002B2 (en) * 2002-04-05 2006-06-27 Mitsubishi Denki Kabushiki Kaisha Motor control device
JP4573540B2 (ja) * 2004-02-26 2010-11-04 東洋電機製造株式会社 同期制御用通信装置
US7827011B2 (en) * 2005-05-03 2010-11-02 Aware, Inc. Method and system for real-time signal classification
JP4976798B2 (ja) 2006-09-28 2012-07-18 株式会社東芝 二自由度位置制御方法、二自由度位置制御装置および媒体記憶装置
JP5121369B2 (ja) 2007-09-26 2013-01-16 東洋電機製造株式会社 同期制御システム
JP2009110353A (ja) * 2007-10-31 2009-05-21 Hitachi Ltd マイクロコントローラ及び制御システム
US7593804B2 (en) * 2007-10-31 2009-09-22 Caterpillar Inc. Fixed-point virtual sensor control system and method
US7917333B2 (en) * 2008-08-20 2011-03-29 Caterpillar Inc. Virtual sensor network (VSN) based control system and method
JP5061149B2 (ja) 2009-05-13 2012-10-31 日立オートモティブシステムズ株式会社 浮動小数点演算を用いた組込み制御装置
JP5612058B2 (ja) * 2012-11-09 2014-10-22 ファナック株式会社 送り軸モータおよび主軸モータを有する工作機械の制御装置
SG2013051982A (en) 2013-07-04 2015-02-27 Pteris Global Ltd Motor drive controller
JP5710713B2 (ja) 2013-08-22 2015-04-30 ファナック株式会社 モータ制御システム
JP2016092995A (ja) 2014-11-06 2016-05-23 Ntn株式会社 インホイールモータ装置およびそのインホイールモータ制御装置
JP6460807B2 (ja) 2015-01-22 2019-01-30 株式会社Fuji 機器id割り付けシステム

Also Published As

Publication number Publication date
WO2018117222A1 (ja) 2018-06-28
JPWO2018117222A1 (ja) 2019-10-31
EP3562027A4 (en) 2020-07-29
EP3562027B1 (en) 2024-02-21
EP3562027A1 (en) 2019-10-30
CN110100386B (zh) 2023-03-28
US20200028453A1 (en) 2020-01-23
CN110100386A (zh) 2019-08-06
US10862410B2 (en) 2020-12-08

Similar Documents

Publication Publication Date Title
JP7059939B2 (ja) モータユニットおよびマルチモータシステム
TWI543566B (zh) 基於軟體定義網路的資料中心網路系統及其封包傳送方法、位址解析方法與路由控制器
JP6581277B2 (ja) データパケット転送
JP4670676B2 (ja) スイッチ及びネットワークブリッジ装置
US20050046362A1 (en) Fan control system
JP6428296B2 (ja) 情報処理システム、情報処理装置、および情報処理システムの制御方法
JP6933227B2 (ja) マルチモータシステム
WO2020000489A1 (zh) 一种pcie发送、接收方法及装置、设备和系统
CN105519046A (zh) 可缩放和分离式网络虚拟化
CN104767685B (zh) 一种流量转发方法和装置
CN109729012A (zh) 一种单播报文传输方法和装置
US20180239730A1 (en) Adding a Network Port to a Network Interface Card
CN106209637B (zh) 从虚拟可扩展局域网至虚拟局域网的报文转发方法和设备
KR20130037116A (ko) 공기조화기 및 이의 통신방법
JPS6365987B2 (ja)
JP4480010B2 (ja) 分散制御システム
CN104967564B (zh) 从vlan至trill网络的报文转发方法和设备
US7286903B2 (en) Robotic library communication protocol
JPWO2018220696A1 (ja) 通信制御システム及び通信制御方法
WO2020250728A1 (ja) 通信装置、通信システム、通信方法、およびプログラム
CN113949721B (zh) 多马达系统
JP2004289754A (ja) シリアル通信プロトコルおよびデータフレーム構成
US11695658B2 (en) Processing packet
WO2019131386A1 (ja) パワー・アシスト・スーツ
US20190334736A1 (en) Communication control device and equipment communication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200928

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210802

R151 Written notification of patent or utility model registration

Ref document number: 6933227

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151