(57)【特許請求の範囲】
【請求項１】
複数のモータの移動量を一定周期で同時設定する設定手段、この設定手段で設定した各移動量を所定数分割して記憶する複数の記憶手段、この各記憶手段内のそれぞれ分割移動量を順次積算する複数の積算手段、この各積算手段の積算値をそれぞれ一定時間ごとに送出する送出手段、を有する第１ユニットと、
前記各モータに対応して設けられ、前記送出手段から送出される積算値の変化量を検出する検出手段、この検出手段で検出した変化量を所定数分割して記憶する記憶手段、この記憶手段内の各分割値を順次積算する積算手段、この積算手段の積算値に応じて対応するモータを駆動するモータ駆動手段、を有する複数の第２ユニットと、
を具備したことを特徴とするモータ制御装置。
【請求項２】
複数のモータの移動量を一定周期Ｎで同時設定する設定手段、この設定手段で設定した各移動量をそれぞれＮ分割して一次記憶する複数の一次記憶手段、この各一次記憶手段内のＮ個の分割移動量を一定時間ｔa ごとに順次積算する複数の積算手段、この各積算手段の積算値Ａをそれぞれ一定時間ｔb ごとに送出する送出手段、を有する第１ユニットと、
前記各モータに対応して設けられ、前記送出手段から送出される積算値Ａの変化量を検出する検出手段、この検出手段で検出した変化量を所定数Ｍ分割して一次記憶する一次記憶手段、この一次記憶手段内のＭ個の分割値を一定時間ｔc ごとに積算する積算手段、この積算手段の積算値Ｂに応じて対応するモータを駆動するモータ駆動手段、を有する複数の第２ユニットと、
を具備したことを特徴とするモータ制御装置。
【請求項３】
請求項２に記載のモータ制御装置において、
前記モータ駆動手段は、一定時間ｔc ごとに作動することを特徴とするモータ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えば産業用ロボットの軸のアーム駆動用モータを制御するモータ制御装置に関する。
【０００２】
【従来の技術】
複数軸を有する産業用ロボットは、各軸のアーム駆動用として複数のモータを備え、さらに、これらモータの駆動制御用としてモータ制御装置を備える。
このモータ制御装置の例として、特開平3-222696号公報に示されるように、複数のモータの移動量を一定周期で設定し、これら移動量を各モータ制御ユニットに送り、各モータ制御ユニットでは送られた移動量に応じて各モータを駆動するものがある。また、図４に示すものがある。
【０００３】
図４において、１は数値演算ユニットで、数値演算部２、複数の一次記憶部３、通信制御部４、および主制御部５を備える。
数値演算部２は、後述する複数のモータ１０のそれぞれ移動量（アームの絶対移動位置に相当）を一定周期たとえば24msecごとに演算して同時設定する。
【０００４】
一次記憶部３は、 6個のバッファメモリ３ａ，…３ｆを有し、数値演算部２で設定される移動量を 6分割して各バッファメモリに順次記憶する。
通信制御部４は、各一次記憶部３内のそれぞれ 6個の分割移動量を 4msecごとに各シリアル信号ライン６に順次に送出する（ 6個の分割移動量の全ての送出にかかる時間は24msec）。
【０００５】
主制御部５は、数値演算部２、各一次記憶部３、通信制御部４のそれぞれ作動タイミングを制御する。
上記各シリアル信号ライン６は 4個のモータ制御ユニット１１に接続される。各モータ制御ユニット１１は、通信制御部１２、一次記憶部１３、積算カウンタ１４、モータ駆動部１５、および主制御部１６を備える。
【０００６】
通信制御部１２は、シリアル信号ライン６から 4msecごとに送られてくる 6個の分割移動量を順次に取込む。
一次記憶部１３は、 4個のバッファメモリ１３ａ，…１３ｄを有し、通信制御部１２で順次に取込まれる分割移動量を逐次に 4分割して各バッファメモリに順次記憶する。
【０００７】
積算カウンタ１４は、バッファメモリ１３ａ，…１３ｄ内の再分割移動量を   1msecごとに積算する。
モータ駆動部１５は、積算カウンタ１４の積算値を 1msecごとに参照してその積算値に応じた位置にアームが到達するよう、モータ１０を駆動する。モータ  １０は、産業用ロボットの各軸のアームを駆動する。
主制御部１６は、通信制御部１２、一次記憶部１３、積算カウンタ１４、モータ駆動部１５のそれぞれ作動タイミングを制御する。
【０００８】
【発明が解決しようとする課題】
図４のモータ制御装置では、数値演算ユニット１の数値演算部２による移動量の設定周期が24msec、数値演算ユニット１とモータ制御ユニット１１との間のシリアル信号ライン６を介した通信周期が 4msec（分割移動量の全ての通信にかかる時間は24msec）であり、移動量設定周期とユニット間通信周期との間に、移動量設定周期を整数で割った数値（除算値）がユニット間通信周期になるという関係がある。
【０００９】
このため、何らかの理由で、ユニット間通信周期として 4msecより長い例えば 8msecを採用するような仕様変更が必要になった場合、それに伴い、移動量設定周期として24msecより長い例えば32msecを採用しなければならない。逆に、移動量設定周期を変更しようとすると、それに連動して、ユニット間通信周期も変更しなければならない。つまり、１つの仕様変更が必要になると、それが数値演算ユニット１および各モータ制御ユニット１１の全ての構成変更へと波及してしまう。
【００１０】
この発明は上記の事情を考慮したもので、その目的とするところは、移動量設定周期およびユニット間通信周期のいずれか一方の変更が必要となっても、その変更を一方のみにとどめて他方の変更を回避することができる柔軟性および汎用性にすぐれたモータ制御装置を提供することにある。
【００１２】
【課題を解決するための手段】
第１の発明（請求項１）のモータ制御装置は、複数のモータの移動量を一定周期で同時設定する設定手段、この設定手段で設定した各移動量を所定数分割して記憶する複数の記憶手段、この各記憶手段内のそれぞれ分割移動量を順次積算する複数の積算手段、この各積算手段の積算値をそれぞれ一定時間ごとに送出する送出手段を有する第１ユニットと、上記各モータに対応して設けられ、上記送出手段から送出される積算値の変化量を検出する検出手段、この検出手段で検出した変化量を所定数分割して記憶する記憶手段、この記憶手段内の各分割値を順次積算する積算手段、この積算手段の積算値に応じて対応するモータを駆動するモータ駆動手段を有する複数の第２ユニットと、を備える。
【００１３】
第２の発明（請求項２）のモータ制御装置は、複数のモータの移動量を一定周期Ｎで同時設定する設定手段、この設定手段で設定した各移動量をそれぞれＮ分割して一次記憶する複数の一次記憶手段、この各一次記憶手段内のＮ個の分割移動量を一定時間ｔa ごとに順次積算する複数の積算手段、この各積算手段の積算値Ａをそれぞれ一定時間ｔb ごとに送出する送出手段を有する第１ユニットと、上記各モータに対応して設けられ、上記送出手段から送出される積算値Ａの変化量を検出する検出手段、この検出手段で検出した変化量を所定数Ｍ分割して一次記憶する一次記憶手段、この一次記憶手段内のＭ個の分割値を一定時間ｔc ごとに積算する積算手段、この積算手段の積算値Ｂに応じて対応するモータを駆動するモータ駆動手段を有する複数の第２ユニットと、を備える。
第３の発明（請求項３）のモータ制御装置は、第３の発明において、モータ駆動手段が、一定時間ｔc ごとに作動する。
【００１４】
【発明の実施の形態】
以下、この発明の一実施例について図面を参照して説明する。
図１において、２１は数値演算ユニット（第１ユニット）で、数値演算部２２、複数の一次記憶部（記憶手段）２３、複数の積算カウンタ（積算手段）２４、通信制御部（送出手段）２５、および主制御部２６を備える。
【００１５】
数値演算部２２は、複数のモータ１０のそれぞれ移動量（アームの絶対移動位置に相当）Ｌを一定周期Ｎmsecごとに演算して同時設定する。一定周期Ｎmsecの“Ｎ”は所定値である。
【００１６】
一次記憶部２３は、所定数たとえば一定周期Ｎmsecの“Ｎ”にそのまま対応するＮ個のバッファメモリ２３ａ，…２３ｎを有し、数値演算部２２で設定される移動量ＬをＮ分割して各バッファメモリに順次に一次記憶する。
【００１７】
積算カウンタ２４は、バッファメモリ２３ａ，…２３ｎ内のＮ個の分割移動量（＝Ｌ／Ｎ）を一定時間ｔa たとえば 1msecごとに順次積算する。
通信制御部２５は、各積算カウンタ２４の積算値Ａを一定時間ｔb たとえば  10msecごとに各シリアル信号ライン２７に順次に送出する。
【００１８】
主制御部２６は、数値演算部２２、各一次記憶部２３、積算カウンタ２４、通信制御部２５のそれぞれ作動タイミングを制御する。
上記各シリアル信号ライン２７は複数個のモータ制御ユニット（第２ユニット）３１に接続される。
【００１９】
各モータ制御ユニット３１は、通信制御部３２、減算部（変化量の検出手段）３３、一次記憶部（記憶手段）３４、積算カウンタ（積算手段）３５、モータ駆動部３６、および主制御部３７を備える。
【００２０】
通信制御部３２は、シリアル信号ライン２７から10msecごとに送られてくる積算値Ａを順次に取込む。
減算部３３は、通信制御部３２で順次に取込まれる積算値Ａから積算カウンタ３５の積算値Ｂを逐次に減算するもので、これにより積算値Ａの変化量（＝Ａ−Ｂ）が逐次に検出される。
【００２１】
一次記憶部３４は、所定数Ｍ個たとえば10個のバッファメモリ３４ａ，…３４ｊを有し、減算部３３で検出される変化量（＝Ａ−Ｂ）を所定数Ｍ（＝10）分割して各バッファメモリに順次に一次記憶する。
【００２２】
積算カウンタ３５は、バッファメモリ３４ａ，…３４ｊ内のＭ個の分割値を一定時間ｔc たとえば 1msecごとに順次積算する。
モータ駆動部３６は、積算カウンタ３５の積算値Ｂを 1msec（＝ｔc ）ごとに参照してその積算値Ｂに応じた位置にアームが到達するようモータ１０を駆動する。
【００２３】
主制御部３７は、通信制御部３２、減算部３３、一次記憶部３４、積算カウンタ３５、モータ駆動部３６のそれぞれ作動タイミングを制御する。
つぎに、上記の構成の作用を図２および図３のフローチャートを参照して説明する。
【００２４】
数値演算ユニット２１の数値演算部２２において、一定周期Ｎmsecごとに、各モータ１０の移動量（アームの絶対移動位置に相当）Ｌが同時設定される（ステップ101 ）。設定された各移動量Ｌは、それぞれＮ分割され、各一次記憶部２３のバッファメモリ２３ａ，…２３ｎに格納される（ステップ102 ）。
【００２５】
各一次記憶部２３のバッファメモリ２３ａ，…２３ｎに格納されたＮ個の分割移動量（＝Ｌ／Ｎ）は、 1msecごとに各積算カウンタ２４に送られ積算される（ステップ103 ）。
【００２６】
各積算カウンタ２４の積算値Ａは、通信制御部２５により、10msecごとに各シリアル信号ライン２７に順次に送出される（ステップ104 ）。
一方、モータ制御ユニット３１では、シリアル信号ライン２７から10msecごとに送られてくる積算値Ａが通信制御部３２により順次に取込まれる（ステップ  201 ）。
【００２７】
取込まれる積算値Ａは減算部３３に送られ、そこで積算値Ａから積算カウンタ３５の積算値Ｂが減算されることにより、積算値Ａの変化量（＝Ａ−Ｂ）が検出される（ステップ202 ）。
【００２８】
検出された変化量は一次記憶部３４で10分割され、バッファメモリ３４ａ，…３４ｊに格納される（ステップ203 ）。
バッファメモリ３４ａ，…３４ｊ内の分割値は、 1msecごとに順次に積算カウンタ３５に送られ積算される（ステップ204 ）。
【００２９】
そして、積算カウンタ３５の積算値Ｂが 1msecごとにモータ駆動部３６に送られ（ステップ205 ）、その積算値Ｂに応じた位置にモータ１０が作動する（ステップ206 ）。この作動により、上記設定された移動量Ｌに対応する絶対移動位置にアームが到達する。
【００３０】
このような構成において、数値演算ユニット２１の数値演算部２２による移動量Ｌの設定周期はＮmsecであり、数値演算ユニット２１とモータ制御ユニット  ３１との間のシリアル信号ライン２７を介した通信周期はｔb たとえば10msecであり、従来のように移動量設定周期を整数で割った数値（除算値）がユニット間通信周期になるという特別の関係は存在しない。
【００３１】
すなわち、移動量設定手段とユニット間通信手段との間に積算カウンタ２４が介在することにより、何らかの理由でユニット間通信周期を変更する必要が生じても、移動量設定周期を変更する必要はまったくない。逆に、移動量設定周期を変更する必要が生じても、ユニット間通信周期を変更する必要はまったくない。
【００３２】
１つの仕様変更が数値演算ユニット２１および各モータ制御ユニット３１の全ての構成変更へと波及する事態を回避することができ、汎用性および柔軟性にすぐれたものとなる。
【００３３】
また、各モータ制御ユニット３１では、取込んだ積算値Ａの変化量を検出し、その変化量分だけ、モータ駆動部３６が逐次にモータ駆動を行なう構成としているので、モータ駆動の制御が単純となる。よって、モータ駆動の制御周期を短縮するような必要が生じた場合でも、適正なアーム駆動が可能である。
なお、この発明は上記実施例に限定されるものではなく、要旨を変えない範囲で種々変形実施可能である。
【００３４】
【発明の効果】
以上述べたようにこの発明によれば、移動量設定周期およびユニット間通信周期のいずれか一方の変更が必要となっても、その変更を一方のみにとどめて他方の変更を回避することができる柔軟性および汎用性にすぐれたモータ制御装置を提供できる。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を示すブロック図。
【図２】同実施例の数値演算ユニットの作用を説明するためのフローチャート。
【図３】同実施例のモータ制御ユニットの作用を説明するためのフローチャート。
【図４】従来装置の構成を示すブロック図。
【符号の説明】
１０…モータ
２１…数値演算ユニット
２２…数値演算部
２３…一次記憶部（一次記憶手段）
２４…積算カウンタ（積算手段）
２５…通信制御部
２６…主制御部
２７…シリアル信号ライン
３１…モータ制御ユニット
３２…通信制御部
３３…減算部（変化量の検出手段）
３４…一次記憶部（一次記憶手段）
３５…積算カウンタ（積算手段）
３６…モータ制御部
３７…主制御部
【図１】
0003964516.tif 000002
【図２】
0003964516.tif 000003
【図３】
0003964516.tif 000004
【図４】
0003964516.tif 000005