(57)【特許請求の範囲】
【請求項１】
制御装置と複数のサーボアンプがシリアルバスで接続され、制御装置で生成したモータに対するトルク指令または電流指令値をシリアルバスを通して複数のサーボアンプに送信し、複数のサーボアンプは受信したトルク指令または電流指令値に基づいて、モータを駆動するサーボモータ制御システムにおいて、
前記制御装置で生成したトルク指令または電流指令値を格納する複数のレジスタと複数のサーボアンプとを対応付けるための変換値を書き換え可能のテーブルを有し、該テーブルに基づいて該レジスタに格納されたデータを前記シリアルバスを通して該複数のサーボアンプに送信するシリアルバス制御回路を備え、
前記シリアルバス制御回路は、
前記制御装置で生成した１つの前記トルク指令または電流指令値を格納した前記レジスタからデータを読み出し前記シリアルバスを通して前記複数のサーボアンプに送信し、該複数のサーボアンプは受信した同一のトルク指令または電流指令値に基づいてモータを駆動する第１の形態と、前記制御装置で生成した複数の前記トルク指令または電流指令値を格納した前記複数のレジスタからデータを読み出し前記シリアルバスを通して前記複数のサーボアンプに送信し、該複数のサーボアンプは受信したそれぞれのトルク指令または電流指令値に基づいてモータを駆動する第２の形態とを、前記複数のレジスタと前記複数のサーボアンプとを対応付けるための前記変換値を前記テーブルにおいて書き換えることによって設定できることを特徴とするサーボモータ制御システム。
【請求項２】
前記第１の形態においては、同一のトルク指令または電流指令に基づいてモータを駆動する複数のサーボアンプには、各サーボアンプにそれぞれ１台づつモータを接続し駆動する場合と、前記複数のサーボアンプに１台のモータを接続し駆動する場合があることを特徴とする請求項１に記載のサーボモータ制御システム。
【請求項３】
請求項２に記載されるサーボアンプに１台のモータを接続し駆動する場合、１台のモータは電気的に独立した複数組の各相巻線を有し、１台のモータの複数の各組の各相巻線に前記複数のサーボアンプをそれぞれ接続して駆動することを特徴とする請求項２に記載のサーボモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータ制御システムに関する。
【背景技術】
【０００２】
大容量のモータをインバータ装置で駆動制御する場合、大容量のインバータ装置を使用する必要がある。しかし、インバータ装置を構成する要素の制約から、大容量の単一インバータ装置を構成することが困難である。これを代替する手段として、小容量のインバータ装置を複数個並列に接続して、この複数のインバータ装置によって等価的に大容量の出力を得て大容量のモータを駆動制御する技術がある。
【０００３】
複数設けたインバータ装置に対してそれぞれモータ駆動指令をモータ制御装置が出力することは、モータ制御装置でインバータ装置の個数分のモータ駆動指令生成処理を行わなければならない。そうすると、複数のモータ駆動指令生成処理部が１つのモータを駆動するために専用されることになる。その結果、モータ制御装置で他のモータをも駆動する場合、駆動制御できる他のモータの数に制約が生じる問題がある。
【０００４】
そこで、モータ制御装置からの１つのモータ駆動指令で複数のインバータ装置を駆動制御して大型モータ等を駆動できるモータ制御装置がある。このようなモータ制御装置の一例として、特許文献１には、モータ駆動指令を作成するモータ制御装置２０から送信されるモータ駆動指令に基づいて、各インバータ装置２２ａ〜２２ｄへ同一のモータ駆動指令を並列的に供給する中継装置２１を有するモータ駆動装置の技術が開示されている（図７（ａ）参照）。このモータ駆動装置では、各インバータ装置２２ａ〜２２ｄは、この中継装置２１から出力されるモータ駆動指令により制御されモータ２３を駆動する。これにより、モータ制御装置では、１つのモータ駆動指令を生成する処理部だけで済み、他のモータへのモータ駆動指令を生成し出力でき、他のモータの駆動を可能にしている。
【０００５】
図７（ｂ）は中継装置２１の要部ブロック図である。中継装置２１は、レシーバ回路２１ａ、設定回路２１ｂ、演算回路２１ｃ、インバータ装置の数に対応したドライバ回路２１ｄ１〜２１ｄｎで構成されている。モータ制御装置２０からパラレルデータとして出力されたモータ駆動指令（トルク指令）は、レシーバ回路２１ａで受信され、演算回路２１ｃで各インバータ装置２２ａ〜２２ｄへのモータ駆動指令を生成し、パラレルデータとしてドライバ回路２１ｄ１〜２１ｄｎを介して各インバータ装置２２ａ〜２２ｄに同時に出力される。
【０００６】
【特許文献１】特開２００５−８６９１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
背景技術で説明した特許文献１に開示されるモータ駆動装置では、モータ制御装置２０とモータ２３とを接続するシリアルバス２４上に中継装置２１を配置している。そのため、モータ２３を制御するための装置が複雑化し、小型化が困難であった。また、モータ２３への指令信号をシリアルデータとして中継装置２１で受信し、受信データに基づいてモータ２３の指令信号を作成しており、応答遅れの問題があった。
【０００８】
そこで、本発明の目的は、数値制御装置内にあるシリアルバス制御回路に、モータを駆動する複数のサーボアンプに対して電流指令あるいはトルク指令を複数の異なる形態で配信させる機能を具備させる、サーボモータ制御システムを提供することである。
【課題を解決するための手段】
【０００９】
本願の請求項１に係る発明は、制御装置と複数のサーボアンプがシリアルバスで接続され、制御装置で生成したモータに対するトルク指令または電流指令値をシリアルバスを通して複数のサーボアンプに送信し、複数のサーボアンプは受信したトルク指令または電流指令値に基づいて、モータを駆動するサーボモータ制御システムにおいて、前記制御装置で生成したトルク指令または電流指令値を格納する複数のレジスタと複数のサーボアンプとを対応付けるための変換値を書き換え可能のテーブルを有し、該テーブルに基づいて該レジスタに格納されたデータを前記シリアルバスを通して該複数のサーボアンプに送信するシリアルバス制御回路を備え、前記シリアルバス制御回路は、前記制御装置で生成した１つの前記トルク指令または電流指令値を格納した前記レジスタからデータを読み出し前記シリアルバスを通して前記複数のサーボアンプに送信し、該複数のサーボアンプは受信した同一のトルク指令または電流指令値に基づいてモータを駆動する第１の形態と、前記制御装置で生成した複数の前記トルク指令または電流指令値を格納した前記複数のレジスタからデータを読み出し前記シリアルバスを通して前記複数のサーボアンプに送信し、該複数のサーボアンプは受信したそれぞれのトルク指令または電流指令値に基づいてモータを駆動する第２の形態とを、前記複数のレジスタと前記複数のサーボアンプとを対応付けるための前記変換値を前記テーブルにおいて書き換えることによって設定できることを特徴とするサーボモータ制御システムである。
【００１１】
請求項２に係る発明は、前記第１の形態においては、同一のトルク指令または電流指令に基づいてモータを駆動する複数のサーボアンプには、各サーボアンプにそれぞれ１台づつモータを接続し駆動する場合と、前記複数のサーボアンプに１台のモータを接続し駆動する場合があることを特徴とする請求項１に記載のサーボモータ制御システムである。
【００１２】
請求項３に係る発明は、請求項２に記載されるサーボアンプに１台のモータを接続し駆動する場合、１台のモータは電気的に独立した複数組の各相巻線を有し、１台のモータの複数の各組の各相巻線に前記複数のサーボアンプをそれぞれ接続して駆動することを特徴とする請求項２に記載のサーボモータ制御システムである。
【発明の効果】
【００１３】
本発明により、シリアルバス上に中継装置を配置する必要がなくなり、装置の小型化、簡素化を図ることが可能である。
【００１４】
また、シリアルバスを介する前段階で複数のモータへの指令情報を処理していることから、処理遅れが生じない。
【発明を実施するための最良の形態】
【００１５】
以下、本発明であるサーボモータ制御システムの一実施形態を図面とともに説明する。図１は、数値制御装置１内のシリアルバス制御回路４が複数のサーボモータを駆動制御するサーボアンプ５−１〜５−３に送信すべきデータを、同一の電流指令レジスタ３−１から繰り返し読み取る、サーボ制御システムを説明する図である。
【００１６】
デジタルシグナルプロセッサ（ＤＳＰ）２は、サーボ制御ソフトウェアで各サーボモータの位置，速度，電流を制御するための各サーボアンプに対する電流指令値を算出する。算出された電流指令値は電流指令レジスタ３−１〜３−３に格納される。シリアルバス制御回路４は、パラレル信号である電流指令レジスタ３−１〜３−３に格納された電流指令値を読み出し、シリアル信号に変換して後、シリアルバス６を介してサーボアンプ５−１〜５−３に送出する。
【００１７】
ここで、サーボアンプ５−１に接続されているモータ（図示省略）とサーボアンプ５−２に接続されているモータ（図示省略）とでタンデム制御する形態を考える。ここでタンデム制御とは、１台のモータでは加減速制御等が困難な大型の可動部材を駆動するために、複数のモータによって大型の可動部材を駆動する方法であって、数値制御装置で生成された一つの電流指令（トルク指令）により複数のモータを駆動する制御方法である。この形態では、サーボアンプ５−１およびサーボアンプ５−２に対して同一の電流指令値を与える。この場合、電流指令レジスタ３−１および電流指令レジスタ３−２へ同じ電流指令値を格納しなければならない。同じ電流指令値を電流指令レジスタ３−１と電流指令レジスタ３−２に格納することで、ＤＳＰ２は電流指令値の演算を２度実行することになり、ＤＳＰの限られた処理能力が無駄に使われることになる。
【００１８】
そこで、本発明のサーボ制御システムでタンデム制御する形態においては、図１に示される電流指令レジスタ３−２へのサーボアンプ５−２に対する電流指令値の格納を行わない。その代わりに、シリアルバス制御回路４は、電流指令レジスタ３−１から格納されている電流指令値を繰り返し読み取る。そして、電流指令レジスタ３−１に格納された電流指令値をサーボアンプ５−２に対する電流指令値としても使用する。繰り返し読み取る回数は、タンデム駆動するモータの個数に対応して可変である。
【００１９】
シリアルバス制御回路４は、同一の電流指令レジスタから複数回読み出した同一の電流指令値を、タンデム駆動するモータを駆動する複数のサーボアンプ５に対してシリアルバス６を通して送出する。
【００２０】
これにより、本発明のサーボモータ制御システムでタンデム制御を行う形態では、ＤＳＰ２の処理負荷を増大させることがない。また、タンデム制御を行うための従来技術で必要とされていた中継装置（特許文献１参照）を使用する必要がない。
【００２１】
図２は、シリアルバス制御回路４を介した電流指令レジスタ３−１〜３−３とサーボアンプ５−１〜５−３の対応関係を説明する図である。図２（ａ）は、通常の形態のシリアルバス制御回路４を介した電流指令レジスタ３−１〜３−３とサーボアンプ５−１〜５−３の対応関係を表している。サーボアンプ５−１〜５−３のそれぞれに対応する電流指令レジスタ３−１〜３−３がある。そして、それぞれの電流指令レジスタ３−１〜３−３には、サーボアンプ５−１〜５−３に対する電流指令値が格納される。  
図２（ｂ）は、タンデム制御の形態でのシリアルバス制御回路４を介した電流指令レジスタ３−１〜３−３とサーボアンプ５−１〜５−３の対応関係を表している。この場合、サーボアンプ５−１とサーボアンプ５−２に対する電流指令値は、両者とも電流指令レジスタ１に格納された電流指令値である。
【００２２】
電流指令レジスタとサーボアンプとの対応関係は、通常の形態の場合とタンデム制御の形態の場合も、切り換えて設定することが可能である。このため、タンデム制御の形態も通常の形態の制御と同様に同じハードウェア構成の数値制御装置で実現することが可能である。
なお、図１及び図２において、電流指令レジスタとサーボアンプの数をそれぞれ３つとして説明しているが、電流指令レジスタとサーボアンプの数が３つに限定されるわけではない。
【００２３】
図３は、本発明のサーボ制御システムを構成する数値制御装置の一実施形態である。数値制御装置１は、ＤＳＰ２、コモンＲＡＭ３、シリアルバス制御回路４、サーボアンプ５を接続するシリアルバス６、バス７、ＳＲＡＭ８、ＲＯＭ９、ＣＰＵ１０、及び、コモンＲＡＭ１１を備えている。
【００２４】
プロセッサであるＣＰＵ１０は、バス７を介して、ＤＳＰ２、シリアルバス制御回路４、ＳＲＡＭ８、ＲＯＭ９、及び、コモンＲＡＭ１１にアクセスすることができる。ＣＰＵ１０は、コモンＲＡＭ１１を介してＤＳＰ２との間でデータの授受を行う。ＤＳＰ２がコモンＲＡＭ１１に一定周期毎に移動量を書き込ませると、ＤＳＰ２はコモンＲＡＭ１１から移動量を読み出し、各サーボモータに対する電流指令値を計算する。
【００２５】
ＤＳＰ２で計算された電流指令値は、コモンＲＡＭ３に設けられた電流指令レジスタに書き込まれる。シリアルバス制御回路４は、コモンＲＡＭ３に設けられた電流指令レジスタから電流指令値を読み出し、シリアルバス６を経由してサーボアンプ５に送信する。
【００２６】
シリアルバス制御回路４は、パラメータを設定することにより、コモンＲＡＭ３に設けられた電流指令レジスタの１つに書き込まれた電流指令値を複数回にわたって読み出し、複数個のサーボアンプ５に送信し、複数個のサーボモータを同一の電流指令値に基づいて駆動する。これとは反対に、複数個のサーボモータをそれぞれの電流指令値に基づいて駆動するように、シリアルバス制御回路４は、各サーボアンプ５に対応した電流指令レジスタに書き込まれた電流指令値を読み出し、それぞれのサーボアンプに送信できる。
【００２７】
図４は、本発明のサーボ制御システムを構成するシリアルバス制御回路４の概略ブロック図（第１の形態）である。シリアルバス制御回路４は、アドレステーブル４ａ、変換テーブル４ｂ、セレクタ４ｃ、送信制御回路４ｄ、ＵＰカウンタ４ｅ、パラレル・シリアル変換回路４ｆ、及び、アドレス送出回路４ｇを備えている。そして、コモンＲＡＭ３には、シリアルバス制御回路４に格納されているアドレステーブル４ａのアンプの各アドレスに対応したアドレスが設定されており、このアドレスには電流指令レジスタ３−１〜３−ｎが設けられている。
【００２８】
アドレステーブル４ａは、各サーボアンプ５のアドレスを格納する。変換テーブル４ｂは、各サーボアンプ５とコモンＲＡＭ３にある電流指令レジスタとを対応付けるためのテーブルである。変換テーブル４ｂに格納されるテーブルは、ＣＰＵ１０からの指令により書き換え可能である。このように書き換え可能にすることで、前述したように（段落番号００２２欄および図２を参照）、電流指令レジスタとサーボアンプとの対応関係を切り換えて設定することができる。
【００２９】
送信制御回路４ｄはＵＰカウンタ４ｅの番号ｎを順次増加していき変換テーブル４ｂに番号ｎを送出する。変換テーブル４ｂは、格納されているテーブルに従って、番号ｎを変換し、変換して得られた変換値ｍをセレクタ４ｃに出力する。
セレクタ４ｃは、変換テーブル４ｂから入力した変換値ｍに従って、アドレステーブル４ａからサーボアンプ５のアドレスを選択し、選択したアドレスをアドレス送出回路４ｇを介してコモンＲＡＭ３に出力する。
【００３０】
コモンＲＡＭ３は、アドレス送出回路４ｇから入力したサーボアンプ５のアドレスに対応した電流指令レジスタのレジスタデータをパラレル・シリアル変換回路４ｆへ出力する。このレジスタデータはＤＳＰ２で演算された電流指令値であり、パラレルデータである。パラレル・シリアル変換回路４ｆには、コモンＲＡＭ３からの電流指令データと、ＵＰカウンタ４ｅからの番号ｎが入力される。ＵＰカウンタ４ｅからの番号ｎは、各サーボアンプ５を識別するために用いられる。シリアル・パラレル変換回路４ｆは、前記番号ｎ及び前記電流指令データとをパラレル・シリアル信号変換を行う。そして、前記電流指令データにサーボアンプ５を識別する番号ｎをひとまとまりのシリアルデータ、例えば、パケット信号として各サーボアンプ５へ出力する。各サーボアンプ５（５−１〜５−ｎ）は、番号ｎに基づき各シリアルデータをそれぞれのサーボアンプへの指令と認識する。
【００３１】
このようにすることにより、例えば、ｎが１および２の場合、アンプ１台目のアドレス４ａ１がコモンＲＡＭ３に渡され、ｎが３の場合、アンプ３台目のアドレス４ａ３がコモンＲＡＭ３に渡される。そして、それぞれのアドレスに対応した電流指令レジスタ１および３から電流指令値が読み出され、パラレルデータとしてパラレル・シリアル変換回路４ｆに出力される。パラレル・シリアル変換回路４ｆでは、ＵＰカウンタ４ｅからの番号ｎとともにシリアルデータを形成し、サーボアンプ５に出力される。
【００３２】
図５は、本発明のサーボ制御システムを構成するシリアルバス制御回路４の概略ブロック図（第２の形態）である。この図５が図４と相違する点は、変換テーブル４ｂに格納されるデータが相違することのみである。ｎと１対１に対応したｍ値がセレクタ４ｃに渡される。そして、ｎに１対１に対応してアンプのアドレステーブル４ａがコモンＲＡＭ３に出力される。そして、アドレスに対応した電流指令データが電流指令レジスタ３−１〜３−ｎから読み出され、パラレル・シリアル変換回路４ｆに出力される。
パラレル・シリアル変換回路４ｆでは、図４について説明したのと同様に、ＵＰカウンタ４ｅからの番号ｎとともにシリアルデータを形成し、サーボアンプ５に出力する。
【００３３】
図６は、本発明のサーボ制御システムのシリアルバス制御回路４が実行するアルゴリズムのフローチャートの例である。以下、各ステップにしたがって説明する。  
送信制御回路４ｄが、ＵＰカウンタ４ｅをリセットする（ｎ＝１）（ステップＳ１００）。ＵＰカウンタ４ｅは、変換テーブル４ｂ及びパラレル・シリアル変換回路４ｆに対して番号ｎを出力する（ステップＳ１０１）。変換テーブル４ｂは、入力された番号ｎに対して番号ｍをセレクタ４ｃへ出力する（ステップＳ１０２）。セレクタ４ｃは、サーボアンプ５のアドレスをアドレステーブル４ａから選択しアドレス送出回路４ｇに送出する（ステップＳ１０３）。
【００３４】
アドレス送出回路４ｇは、ステップＳ１０３で選択されたサーボアンプ５のアドレスをコモンＲＡＭ３に送出する（ステップＳ１０４）。コモンＲＡＭ３は、サーボアンプ５のアドレスをアドレス送信回路４ｇから受信し、このサーボアンプ５のアドレスに対応する電流指令レジスタ３−１〜３−ｎのレジスタデータをシリアルバス制御回路４のパラレル・シリアル変換回路４ｆに送出する（ステップＳ１０５）。
【００３５】
パラレル・シリアル変換回路４ｆは、コモンＲＡＭ３から入力した電流指令レジスタ及びＵＰカウンタ４ｅからのパラレルデータをシリアルデータに変換し（ステップＳ１０６）、このシリアルデータを対応するアドレスのサーボアンプ５（図１〜図３参照）に送出する（ステップＳ１０７）。
【００３６】
そして、ＵＰカウンタ４ｅの値ｎが最大値ｎＭＡＸに達したか否か判断し、達していれば終了し、達していなければステップＳ１０９へ移行する（ステップＳ１０８）。ＵＰカウンタ４ｅは番号ｎをインクリメント（＋１）し、ステップＳ１０１に戻り処理を継続する（ステップＳ１０９）。
【００３７】
上述した説明では、モータを駆動制御するサーボアンプへの指令値として電流指令値を例としたが、トルク指令値としてもよい。
【図面の簡単な説明】
【００３８】
【図１】数値制御装置内のシリアルバス制御回路が複数のサーボモータに送信すべきデータを、同一の電流指令レジスタから繰り返し読み取る、本発明であるサーボ制御システムを説明する図である。
【図２】シリアルバス制御回路を介したサーボアンプと電流指令レジスタの対応関係を説明する図である。
【図３】本発明のサーボ制御システムを構成する数値制御装置の一実施形態である。
【図４】本発明のサーボ制御システムを構成するシリアルバス制御回路の概略ブロック図である（第１の形態）。
【図５】本発明のサーボ制御システムを構成するシリアルバス制御回路の概略ブロック図である（第２の形態）。
【図６】本発明のサーボ制御システムのシリアルバス制御回路が実行するアルゴリズムのフローチャートの例である。
【図７】従来技術である中継装置を介して複数のインバータ装置により制御する場合の制御方式のブロック図である。
【符号の説明】
【００３９】
１  数値制御装置
２  デジタルシグナルプロセッサ（ＤＳＰ）
３  コモンＲＡＭ
３−１，３−２，３−３  電流指令レジスタ
４  シリアルバス制御回路
４ａ  アドレステーブル
４ｂ  変換テーブル
４ｃ  セレクタ
４ｄ  送信制御回路
４ｅ  ＵＰカウンタ
４ｆ  パラレル・シリアル変換回路
４ｇ  アドレス送出回路
５  サーボアンプ
５−１，５−２，５−３  サーボアンプ
６  シリアルバス
７  バス
８  ＳＲＡＭ
９  ＲＯＭ
１０  ＣＰＵ
１１  コモンＲＡＭ
２０  モータ制御装置
２１  中継装置
２２ａ，２２ｂ，２２ｃ，２２ｄ  インバータ
２３  モータ
２４  シリアルバス
【図１】
0004390835.tif 000002
【図２】
0004390835.tif 000003
【図３】
0004390835.tif 000004
【図４】
0004390835.tif 000005
【図５】
0004390835.tif 000006
【図６】
0004390835.tif 000007
【図７】
0004390835.tif 000008