(57)【要約】【課題】１台の数値制御装置でＤＳＰのない第１形式のアンプとＤＳＰを有する第２形式のアンプを制御するモータ制御システムで、数値制御装置に設けるインターフェース回路（シリアルバス制御回路）の個数を削減してコストを低減する。【解決手段】ＰＷＭ指令を受ける第１形式のアンプ51と、位置指令を受ける第２形式のアンプ61と、数値制御装置41と、シリアルバス48A,49Aと、を備え、数値制御装置41は、モータの位置指令を算出する第１のプロセッサ42と、位置指令から第１形式のアンプのＰＷＭ指令を算出するＤＳＰ43と、第１形式のアンプのＰＷＭ指令及び第２形式のアンプの位置指令をシリアルバス49Aに出力するシリアルバス制御回路47と、を備え、第１形式のアンプ51は、受信したＰＷＭ指令から直接モータの駆動電流信号を生成し、第２形式のアンプ61は、受信した位置指令からＰＷＭ指令を算出する第３のプロセッサ62を備える。【選択図】図１
2008242728.tif 000002
【特許請求の範囲】
【請求項１】
ＰＷＭ指令に基づいてモータの駆動電流信号を生成する少なくとも１台の第１形式のアンプと、位置指令または速度指令に基づいてモータの駆動電流信号を生成する少なくとも１台の第２形式のアンプと、前記少なくとも１台の第１形式のアンプ及び前記少なくとも１台の第２形式のアンプを制御する数値制御装置と、前記数値制御装置、前記少なくとも１台の第１形式のアンプ及び前記少なくとも１台の第２形式のアンプを順に接続するシリアルバスと、を備え、
前記数値制御装置は、制御するすべてのモータの位置指令または速度指令を算出する第１のプロセッサと、前記第１のプロセッサが算出した前記少なくとも１台の第１形式のアンプが駆動するモータの位置指令または速度指令からＰＷＭ指令を算出する第２のプロセッサと、前記第２のプロセッサが算出した前記ＰＷＭ指令及び前記第１のプロセッサが算出した前記少なくとも１台の第２形式のアンプが駆動するモータの位置指令または速度指令を前記シリアルバスに出力するシリアルバス制御回路と、を備え、
前記第１形式のアンプは、前記シリアルバス経由で前記数値制御装置から受信した前記ＰＷＭ指令から直接モータの駆動電流信号を生成し、
前記第２形式のアンプは、前記シリアルバス経由で前記数値制御装置から受信した前記位置指令または速度指令からモータのＰＷＭ指令を算出する第３のプロセッサを備え、前記第３のプロセッサが算出した前記ＰＷＭ指令からモータの駆動電流信号を生成する、ことを特徴とするモータ制御システム。
【請求項２】
前記数値制御装置は、前記第２形式のアンプへの位置指令または速度指令を分割して送信し、前記第１形式のアンプへの前記ＰＷＭ指令は分割せずに１つの前記第２形式のアンプへの位置指令または速度指令を送信する間に複数の前記ＰＷＭ指令を送信し、
前記第２形式のアンプは、分割して受信した前記位置指令または速度指令を蓄積して１つの指令にまとめるバッファを備えることを特徴とする請求項１に記載のモータ制御システム。
【請求項３】
前記数値制御装置は、前記第２のプロセッサが算出した前記ＰＷＭ指令を格納する第１送信用バッファと、前記第１のプロセッサが算出した前記第２形式のアンプへの位置指令または速度指令を格納する第２送信用バッファと、を備え、
前記シリアルバス制御回路は、前記シリアルバスに接続されたアンプに応じて前記第１送信用バッファまたは第２送信用バッファに格納された指令を前記シリアルバスに出力することを特徴とする請求項１に記載のモータ制御システム。
【請求項４】
前記第１形式及び第２形式のアンプは、前記シリアルバスからの送信データを入力する入力回路と、前記入力回路に入力された送信データを次段のアンプに向けて前記シリアルバスに出力する出力回路と、を備えることを特徴とする請求項１に記載のモータ制御システム。
【請求項５】
当該システムは、前記少なくとも１台の第１形式のアンプ、前記少なくとも１台の第２形式のアンプ及び前記数値制御装置を順に接続する第２のシリアルバスを備え、
前記第１形式及び第２形式のアンプは、前記第２のシリアルバスからの送信データを入力する第２入力回路と、前記入力回路に入力された送信データを次段のアンプまたは前記数値制御装置に向けて前記第２のシリアルバスに出力する第２出力回路と、を備え、
前記第１形式及び第２形式のアンプは、前記第２のシリアルバスの前段のアンプから受信した位置情報データに、当該アンプが制御するモータの位置情報データを付加して、前記第２出力回路から前記第２のシリアルバスに出力することを特徴とする請求項１に記載のモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置でモータを制御するモータ制御システムに関し、特に１台の数値制御装置（以下ＣＮＣ装置とも称する）で複数のモータを制御するモータ制御システムに関する。
【背景技術】
【０００２】
図１２は、従来の数値制御装置によるモータ制御の構成を示すブロック図である。図１２に示すように、数値制御装置１１は、メインプロセッサ１２と、ＤＳＰ（デジタルシグナルプロセッサ）１３と、ドライバ１４と、を有する。メインプロセッサ１２は、制御するモータ１５の（回転）位置を指示する位置指令または速度指令を算出してＤＳＰ１３に出力する。ＤＳＰ１３は、与えられた位置指令または速度指令及びモータ１５に取り付けられたパルスコーダ１６から送信されるモータの位置情報から、モータ１５を駆動するのに必要な電流値を算出し、ＰＷＭ(Pulse Width Modulation)信号としてドライバ１４に出力する。ドライバ１４は、送られてきたＰＷＭ信号に基づいて実際にモータ１５を駆動するための電流信号を生成して出力すると共に、モータに流れた電流を計測してＤＳＰ１３に電流値を還す。ＤＳＰ１３は、電流が計算どおりの値となるようにＰＷＭ信号を制御する。また、ＤＳＰ１３は、パルスコーダ１６から新たな位置情報が送られてきたら、新たな電流値、ＰＷＭ信号を算出及び出力して、位置指令どおりの位置にモータが回転するまで、電流出力を続行する。
【０００３】
メインプロセッサ１２、ＤＳＰ１３、ドライバ１４からなる数値制御装置１１のハードウェアは、一体化して一つのユニットにまとめることも可能であるが、制御するモータが複数台である場合やモータの種類が複数である場合、組合せの数だけユニットを準備する必要があるため、工作機械の数値制御装置では、数値制御装置からモータのドライブに関係する部分を分離して、メインプロセッサを搭載する狭義の数値制御装置と、モータの数、種類に応じた複数のアンプとに分離し、数値制御装置とアンプとの間をシリアル通信で結合するのが一般的である。これらの構成については、例えば、特許文献１及び２に記載されている。
【０００４】
アンプを分離する際に、ＤＳＰの実装位置を数値制御装置側にするかアンプ側にするかは、各々コスト、機能、仕様上の違いで優劣があり、両者の利点と欠点を勘案して決めており、一台の数値制御装置で両方の構成を使い分ける場合もある。特許文献１及び２を参照のこと。
【０００５】
ＤＳＰを制御装置側に設ける利点としては、例えば、メインプロセッサと複数のＤＳＰを数値制御装置上の高速バスで接続して所定時間内で大量のデータを送信可能とすることで、多軸のシステムであってもモータの調整ツール等で使用する大量のデータをメインプロセッサで処理することが可能であることが挙げられる。
【０００６】
一方、ＤＳＰをアンプ側に設ける利点としては、例えば、数値制御装置に不具合が生じてモータの制御が不可能になったとしても、アンプ側にＤＳＰがあるので、モータを制御しながら停止させることが可能になることが挙げられる。
【０００７】
図１３は、ＤＳＰのないアンプと、ＤＳＰを有するアンプを１台の数値制御装置で制御する場合の構成を示すブロック図である。モータ３０を制御するアンプ２８は、ドライバ２９のみを有し、ＤＳＰは設けられていない。モータ３５を制御するアンプ３２は、ＤＳＰ３３とドライバ３４とを有する。数値制御装置２０は、メインプロセッサ２１と、ＤＳＰ２２と、送信バッファ２３と、シリアルバス制御回路２４と、送信バッファ２５と、シリアルバス制御回路２６と、を有する。シリアルバス制御回路２４とアンプ２８はシリアルバス２７で接続され、シリアルバス制御回路２６とアンプ３２はシリアルバス３１で接続されている。モータ３０のパルスコーダで検出された位置情報はＤＳＰ２２に送信され、モータ３５のパルスコーダで検出された位置情報は、アンプ３２のＤＳＰ３３に送信され、ＤＳＰ３３は位置情報をそのまま、または加工してメインプロセッサ２１に送信する。従って、数値制御装置２０は、これらの位置情報を受信するためのインターフェース（ＩＦ）回路を有するが、ここでは図示を省略している。
【０００８】
メインプロセッサ２１は、２台のモータ３０、３５の位置指令を算出し、モータ３０の位置指令をＤＳＰ２２に出力し、モータ３５の位置指令を送信バッファ２５に出力する。ＤＳＰ２２は、与えられた位置指令及びモータ３０の位置情報から、モータ３０を駆動するのに必要な電流値を算出し、ＰＷＭ(Pulse Width Modulation)信号として送信バッファ２３に出力する。シリアルバス制御回路２４は、送信バッファ２３に保持されたＰＷＭ信号を、シリアルバス２７に出力する。アンプ２８内のドライバ２８は、送られてきたＰＷＭ信号に基づいてモータ３０の電流信号を生成して出力する。なお図示していないが、ドライバ２９が検出したモータに流れた電流値をＤＳＰ１３に還す必要のある場合は、別途通信経路を設けるが、パルスコーダで検出された位置情報を一旦アンプ２８で収集し、電流値と合わせてＤＳＰ２２に送信する場合もある。シリアルバス制御回路２６は、送信バッファ２５に保持された位置指令を、シリアルバス３１に出力する。アンプ３２内のＤＳＰ３３は、受信した位置指令及びモータ３５の位置情報から、モータ３５を駆動するのに必要な電流値を算出し、ＰＷＭ(Pulse Width Modulation)信号としてドライバ３４に出力する。ドライバ３４は、ＰＷＭ信号に基づいてモータ３５の電流信号を生成して出力する。
【０００９】
以下、ＤＳＰを有さず、ＰＷＭ信号を受信してモータへの電流出力を生成するアンプを第１形式のアンプと、ＤＳＰを有し、位置指令を受信してモータへの電流出力を生成するアンプを第２形式のアンプと、称する。
【００１０】
一般に、第１形式のアンプに対して１回に送信するＰＷＭ信号のデータ量は、第２形式のアンプに対して１回に送信する位置指令のデータ量より少ないが、第１形式のアンプに対して指令データ（ＰＷＭ信号）を送信する頻度は、第２形式のアンプに対して指令データ（位置指令）を送信する頻度より高くする必要がある。
【００１１】
【特許文献１】特開平９−６９００４号公報
【特許文献２】特開２００２−１２０１２８号公報
【特許文献３】特表ＷＯ０１−０３５５２２
【発明の開示】
【発明が解決しようとする課題】
【００１２】
図１３に示すように、１台の数値制御装置で、ＤＳＰのない第１形式のアンプと、ＤＳＰを有する第２形式のアンプを制御する場合、第１形式のアンプと接続するシリアルバスと、第２形式のアンプと接続するシリアルバスを、数値制御装置にそれぞれ用意する必要があり、数値制御装置に設けるシリアルバス制御回路（ＩＦ回路）及びこれに付随するコネクタの個数が増加し、その分数値制御装置が大きくなり、コストアップになるという問題があった。
【００１３】
引用文献３は、１台の数値制御装置が、共通のシリアルＩＦを介して位置決め型サーボアンプと指令追従型サーボアンプを制御するサーボ制御システムを記載している。しかし、引用文献３に記載されたサーボ制御システムは、各アンプの制御情報を書き換えることによりどちらのアンプとして使用するか設定可能であり、各アンプがＤＳＰを有する構成であり、ＤＳＰを有さない第１形式のアンプを接続することは記載していない。
【００１４】
本発明は、１台の数値制御装置で、ＤＳＰのない第１形式のアンプとＤＳＰを有する第２形式のアンプを制御するモータ制御システムの構成を簡略することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を実現するため、本発明のモータ制御システムは、ＰＷＭ指令に基づいてモータの駆動電流信号を生成する少なくとも１台の第１形式のアンプと、位置指令または速度指令に基づいてモータの駆動電流信号を生成する少なくとも１台の第２形式のアンプと、前記少なくとも１台の第１形式のアンプ及び前記少なくとも１台の第２形式のアンプを制御する数値制御装置と、前記数値制御装置、前記少なくとも１台の第１形式のアンプ及び前記少なくとも１台の第２形式のアンプを順に接続するシリアルバスと、を備え、前記数値制御装置は、制御するすべてのモータの位置指令または速度指令を算出する第１のプロセッサ（メインプロセッサ）と、前記第１のプロセッサが算出した前記少なくとも１台の第１形式のアンプが駆動するモータの位置指令または速度指令からＰＷＭ指令を算出する第２のプロセッサ（ＤＳＰ）と、前記第２のプロセッサが算出した前記ＰＷＭ指令及び前記第１のプロセッサが算出した前記少なくとも１台の第２形式のアンプが駆動するモータの位置指令または速度指令を前記シリアルバスに出力するシリアルバス制御回路と、を備え、前記第１形式のアンプは、前記シリアルバス経由で前記数値制御装置から受信した前記ＰＷＭ指令から直接モータの駆動電流信号を生成し、前記第２形式のアンプは、前記シリアルバス経由で前記数値制御装置から受信した前記位置指令または速度指令からモータのＰＷＭ指令を算出する第３のプロセッサ（ＤＳＰ）を備え、前記第３のプロセッサが算出した前記ＰＷＭ指令からモータの駆動電流信号を生成する、ことを特徴とする。
【００１６】
数値制御装置は、第２形式のアンプへの位置指令または速度指令は分割して送信し、第１形式のアンプへのＰＷＭ指令は分割せずに１つの第２形式のアンプの位置指令または速度指令を送信する間に複数の前記ＰＷＭ指令を送信し、第２形式のアンプは、分割して受信した位置指令または速度指令を蓄積して１つの指令にまとめるバッファを備えるように構成する。
【００１７】
前述のように、第１形式のアンプに対して１回に送信するＰＷＭ信号のデータ量は、第２形式のアンプに対して１回に送信する位置指令のデータ量より少ないが、第１形式のアンプに対してデータ（ＰＷＭ信号）を送信する頻度は、第２形式のアンプに対してデータ（位置指令）を送信する頻度より高くする必要がある。このデータ送信頻度、すなわち送信周期は、制御対象のモータにより決定されるが、第２形式のアンプに対して位置指令を送信するのに要する時間が、第１形式のアンプに対する送信周期より長いと、第１形式のアンプに対してＰＷＭ信号を正常に送信できないという事態が生じる。このような事態を回避するため、第１形式のアンプへのＰＷＭ信号の送信は要求される送信周期で行い、第２形式のアンプの位置指令または速度指令は分割して送信する。
【００１８】
数値制御装置は、第２のプロセッサが算出したＰＷＭ指令を格納する第１送信用バッファと、第１のプロセッサが算出した第２形式のアンプへの位置指令または速度指令を格納する第２送信用バッファと、を備え、シリアルバス制御回路は、シリアルバスに接続されたアンプに応じて第１送信用バッファまたは第２送信用バッファに格納された指令をシリアルバスに出力する。
【００１９】
第１形式及び第２形式のアンプは、シリアルバスからの送信データを入力する入力回路と、入力回路に入力された送信データを次段のアンプに向けてシリアルバスに出力する出力回路と、を備える。
【００２０】
各アンプが駆動するモータの位置情報（回答データ）などを数値制御装置に送信するにも共通のシリアルバスを使用することが望ましい。そのため、本発明のモータ制御システムは、少なくとも１台の第１形式のアンプ、少なくとも１台の第２形式のアンプ及び数値制御装置を順に接続する第２のシリアルバスを備え、第１形式及び第２形式のアンプは、第２のシリアルバスからの送信データを入力する第２入力回路と、前記入力回路に入力された送信データを次段のアンプまたは数値制御装置に向けて第２のシリアルバスに出力する第２出力回路と、を備え、第１形式及び第２形式のアンプは、第２のシリアルバスの前段のアンプから受信した位置情報データに、このアンプが制御するモータの位置情報データを付加して、第２出力回路から第２のシリアルバスに出力するように構成する。
【発明の効果】
【００２１】
本発明によれば、ＤＳＰのない第１形式のアンプとＤＳＰ（第３のプロセッサ）を有する第２形式のアンプを、数値制御装置の共通のシリアルバス制御回路を通じて制御できるので、数値制御装置に設けるインターフェース回路（シリアルバス制御回路）の個数を削減し、コストを低減できる。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明の第１実施形態のモータ制御システムの構成を示すブロック図である。図示のように、第１実施形態のモータ制御システムは、数値制御装置４１と、モータ５３に駆動のための電流出力を供給するアンプ５１と、モータ６４に駆動のための電流出力を供給するアンプ６１と、数値制御装置４１とアンプ５１とを接続するシリアルバス４８Ａ、４８Ｂと、アンプ６１とアンプ５１とを接続するシリアルバス４９Ａ、４９Ｂと、を有する。
【００２３】
アンプ５１は、ＤＳＰを有さず、シリアルバス４８Ａを通じて送信されるＰＷＭ信号からドライバ５２が直接電流出力を生成する第１形式のアンプである。また、アンプ６１は、ＤＳＰ６２を有し、ＤＳＰ６２がシリアルバス４９Ａを通じて送信される位置指令または速度指令（以下、位置指令とのみ称する）からＰＷＭ信号を算出し、ドライバ６３がこのＰＷＭ信号から電流出力を生成する第２形式のアンプである。
【００２４】
アンプ６１は、モータ６４のパルスコーダから送信される位置情報（回答データ）を、そのまままたはＤＳＰ６２で加工してシリアルバス４９Ｂに出力する。アンプ５１は、シリアルバス４９Ｂから受信したアンプ６１の位置情報をシリアルバス４８Ｂに出力すると共に、モータ５３のパルスコーダから送信される位置情報をシリアルバス４８Ｂに出力する。数値制御装置４１は、シリアルバス４８Ｂから、アンプ６１の位置情報及びアンプ５１の位置情報を受信して、位置指令の生成に使用する。
【００２５】
数値制御装置４１は、メインプロセッサ４２と、ＤＳＰ４３と、ＰＷＭ指令型アンプ用送受信バッファ４４と、位置指令型アンプ用送受信バッファ４５と、内部バス４６と、シリアルバス制御回路４７と、を有する。メインプロセッサ４２は、制御するモータ５３及び６４の（回転）位置を指示する位置指令を算出し、モータ５３の位置指令をＤＳＰ４３に出力し、モータ６４の位置指令を位置指令型アンプ用送受信バッファ４５に格納する。ＤＳＰ４３は、与えられた位置指令及び後述するモータ５３の位置情報から、モータ５３を駆動するのに必要な電流値を算出し、ＰＷＭ(Pulse Width Modulation)信号としてＰＷＭ指令型アンプ用送受信バッファ４４に格納する。
【００２６】
シリアルバス制御回路４７は、所定のサイクルで、ＰＷＭ指令型アンプ用送受信バッファ４４から読み出したアンプ５１への指令データと、位置指令型アンプ用送受信バッファ４５から読み出したアンプ６１への指令データを、交互にシリアルバス４８Ａに出力する。ここで、第１実施形態におけるデータ送信を説明する前に従来例におけるデータ送信を説明する。
【００２７】
図２は、図１３に示した従来のモータ制御システムにおける第１形式のアンプ２８と第２形式のアンプ３５への指令データの構成を示す図である。図示のように、どちらの形式のアンプへの指令データも、最初の部分にスタートコードを有し、第１形式のアンプへの指令データはスタートコードの後に長さＬＡの送信データＡを有し、第２形式のアンプへの指令データはスタートコードの後に長さＬＢの送信データＢを有する。スタートコードは、通信の開始を表すビット列であり、送信データはスタートコードの直後から所定のビット長にあることがあらかじめ決められている。
【００２８】
本発明では、第１形式のアンプ５１と第２形式のアンプ６１への指令データが同じシリアルバス４８Ａ、４９Ａを通じて送られるため、受信するアンプ側では指令データがどのアンプ宛であるかを識別できなければならない。そこで、第１実施形態では、スタートコードの後に配列する各アンプへの指令データの順番及び各指令データの長さ（ビット長）を決めておき、各アンプはスタートコードを検出すると、自アンプ宛と決められた対応部分の指令（送信）データを抽出する。
【００２９】
図２に示すように、メインプロセッサ４２が算出する位置指令Ｂ、すなわち第２形式のアンプに対する指令データは、位置または速度を指示するために、加減速の時定数や現在位置など多種のデータが必要であり、１回の送信で必要とされるデータ量はＰＷＭ指令Ａのデータ量より多い。一方、ＰＷＭ指令Ａは、一つ一つのデータ量は少ないが、指令データがすぐにモータに対する出力として使用されるため、出力周期を位置指令に比べて短くする必要がある。
【００３０】
そのため、図３の（Ａ）に示すように、ＰＷＭ指令データＡは、送信に要する時間はＬ１であり、Ｌ２以下の周期で送信する必要がある。これに対して、図３の（Ｂ）に示すように、位置指令データＢは、１回の送信に要する時間Ｌ３は長いが、送信周期は比較的長く、Ｌ４の周期で送信できれば問題ない。
【００３１】
指令データＡとＢを、図３の（Ｃ）に示すように交互に送信することが考えられるが、この場合１送信周期は、少なくともＬ１＋Ｌ３となり、これがＬ２以上になるとＰＷＭ指令による制御が行えないという問題を生じる。
【００３２】
そこで、第１の実施形態では、図３の（Ｄ）に示すように、位置指令データＢをＢ１とＢ２の２つに分けて、最初にＡとＢの前半部分Ｂ１を合わせて送信し、次にＡとＢの後半部分Ｂ２を合わせて送信する。これらの送信に要する時間は、それぞれＬ１＋Ｌ３／２であり、これがＡ（ＰＷＭ信号）の送信に必要な周期Ｌ２より短ければ、ＰＷＭ指令による制御が正常に行える。また、位置指令データＢは、前半と後半の送信が終了して１回の送信に必要なデータが揃うので、２×Ｌ２の周期で送られることになり、これがＬ４より短ければ正常な制御が可能である。
【００３３】
図４は、図３の（Ｄ）に示したように、位置指令データＢをＢ１とＢ２の２つに分けて送信する第１の実施形態のモータ制御システムにおけるアンプ５１及びアンプ６１への指令データの構成を示す図であり、（Ａ）がＡとＢ１を送信する場合のデータ構成を、（Ｂ）がＡとＢ２を送信する場合のデータ構成を示す。図４の（Ａ）のスタートコード１はＢ１を送信することを示し、図４の（Ｂ）のスタートコード２はＢ２を送信することを示す。アンプ６１は、スタートコードを識別して、送信されるデータがＢ１であるかＢ２であるかを識別する。
【００３４】
アンプ５１及びアンプ６１への指令データは、上記のように送信されるので、数値制御装置４１のシリアルバス制御回路４７は、アンプ５１へＰＷＭ信号データを送信する時には、ＰＷＭ指令型アンプ用送受信バッファ４４から読み出したＰＷＭ信号データをシリアルバス４８Ａに出力し、アンプ６１へ位置指令データの前半部分を送信する時には、位置指令型アンプ用送受信バッファ４５の前半部分から読み出した位置指令データの前半部分をシリアルバス４８Ａに出力し、アンプ６１へ位置指令データの後半部分を送信する時には、位置指令型アンプ用送受信バッファ４５の後半部分から読み出した位置指令データの後半部分をシリアルバス４８Ａに出力する。
【００３５】
なお、上記の説明では、位置指令データＢをＢ１とＢ２の２つに分けて送信する例を説明したが、必要に応じて３つ以上（ｎ（ｎは１以上の整数））に分けて送信することも可能であり、その場合には、図４のデータ形式はｎ種あり、スタートコードｎは送信データＡと送信データＢ（ｎ）が続く構成を有する。
【００３６】
シリアルバス４８Ｂ及び４９Ｂを通じて送信される回答データも、スタートコードの後にアンプ５１及び６１の位置情報（回答データ）が続く構成を有するが、いずれの位置情報も１回に送信するデータ量が小さいので分けて送信する必要はない。
【００３７】
図５は、第１形式のアンプ５１の構成を示すブロック図である。第１形式のアンプ５１は、指令データ入力回路７１と、指令データ出力回路７２と、回答データ出力回路７３と、回答データ入力回路７４と、シリアル・パラレル（シリ・パラ）変換回路７５と、スタートコード検出回路７６と、データラッチ回路７７と、設定保存回路７８と、位置データバッファ７９と、パラレル・シリアル（パラ・シリ）変換回路８０と、図１に示したドライバ５２と、を有する。
【００３８】
指令データ入力回路７１は、シリアルバス４８Ａを通じて数値制御装置４１から送信される指令データを受信し、受信した指令データを、指令データ出力回路７２及びシリ・パラ変換回路７５に出力する。指令データ出力回路７２は、指令データをそのままシリアルバス４９Ａに出力する。これにより、数値制御装置４１のシリアルバス制御回路４７から出力された指令データは、アンプ５１を中継してアンプ６１に送信される。
【００３９】
設定保存回路７８は、システム構築時に、設定手段により設定された、このアンプ５１宛の送信データの開始及び終止位置を示すビット数を保存している。シリ・パラ変換回路７５は、受信したシリアルデータである指令データをパラレルデータに変換する。スタートコード検出回路７６は、パラレルデータに変換された指令データ内でスタートコードの存在を検査し、スタートコードを検出するとデータラッチ回路７７に対してパラレルデータのラッチを指令する。データラッチ回路７７は、指令データにおいてスタートコードからのビット数をカウントし、設定保存回路７８から出力されるデータ開始ビットの位置から、データ終止位置までのデータをラッチして、一旦保存する。保存されたデータは直ちにＰＷＭ指令としてドライバ５２に送られて電流出力が生成される。
【００４０】
位置データバッファ７９は、モータ５３のパルスコーダが検出した位置情報データを、最新のデータに更新しながら保持している。この位置情報データは、パラレル・シリアル（パラ・シリ）変換回路８０でシリアルデータに変換されて、回答データとして回答データ出力回路７３に出力される。
【００４１】
回答データ入力回路７４は、シリアルバス４９Ｂを通じてアンプ６１から送信される回答データ（位置情報）を受信し、回答データ出力回路７３に出力する。回答データ出力回路７３は、回答データ入力回路７４から送られたアンプ６１の回答データに、パラ・シリ変換回路８０からのシリアルデータ、すなわちモータ５３の位置情報データを付加してシリアルバス４８Ｂに出力する。この処理は、回答データのフォーマットに従って、スタートコードに続く所定位置に書き込むことで行われる。
【００４２】
図６は、第２形式のアンプ６１の構成を示すブロック図である。第２形式のアンプ６１は、指令データ入力回路８１と、指令データ出力回路８２と、回答データ出力回路８３と、回答データ入力回路８４と、シリアル・パラレル（シリ・パラ）変換回路８５と、スタートコード検出回路８６と、データラッチ回路８７と、設定保存回路８８と、セレクタ８９と、受信バッファ領域９０と、位置データバッファ９１と、パラレル・シリアル（パラ・シリ）変換回路９２と、を有する。
【００４３】
指令データ入力回路８１、指令データ出力回路８２、回答データ出力回路８３、回答データ入力回路８４、シリアル・パラレル（シリ・パラ）変換回路８５、スタートコード検出回路８６、データラッチ回路８７、設定保存回路８８、位置データバッファ９１及びパラ・シリ変換回路９２は、図５で説明したアンプ５１のものと同じ構成であるが、指令データ入力回路８１がシリアルバス４９Ａに、回答データ出力回路８３がシリアルバス４９Ｂに接続されており、指令データ出力回路８２及び回答データ入力回路８４にはシリアルバスが接続されていない点が異なる。回答データ入力回路８４には前段のアンプの位置情報データは入力されないので、回答データ出力回路８３はスタートコードに、パラ・シリ変換回路９２から出力されるモータ６４の位置情報データを付加して出力する。
【００４４】
前述のように、３台以上のアンプを接続することが可能であり、その場合には、図６の指令データ出力回路８２及び回答データ入力回路８４にそれぞれシリアルバスを接続し、それに図５または図６に示したアンプを接続する。
【００４５】
スタートコード検出回路８６は、スタートコードの種類が（１〜ｎ）（ここでは２）のいずれかであるかを示す信号をセレクタ８９に出力する。これに応じて、セレクタ８９は、データラッチ回路８７にラッチされた所定範囲のデータを受信バッファ領域９０のｎ番目の領域に保存する。受信バッファ領域９０は図１に示したＤＳＰ（第３のプロセッサ）６２によりアクセス可能に構成されている。受信バッファ領域９０のｎ番目の領域までデータが格納されると、ＤＳＰ６２は、受信バッファ領域９０に格納された位置指令データに基づいてＰＷＭ信号を算出して、ドライバ６３に出力する。ドライバ６３はＰＷＭ信号に基づいて電流出力を生成してモータ６４に供給する。
【００４６】
図７の（Ａ）は指令データの送信を、図７の（Ｂ）は回答データの送信を説明する図である。指令データは、図７の（Ａ）に示すように、数値制御装置４１からシリアルバス４８Ａを介してアンプ５１に送信され、アンプ５１を中継してさらにシリアルバス４９Ａを介してアンプ６１に送信される。
【００４７】
回答データは、図７の（Ｂ）に示すように、アンプ６１からシリアルバス４９Ｂを介してアンプ５１に送信され、アンプ５１を中継してさらにシリアルバス４８Ｂを介して数値制御装置４１に送信される。数値制御装置４１は、送信されたアンプ５１及び６１の位置情報データに基づいて、モータ５３及び６４の位置、速度を割り出し、次の位置指令やＰＷＭ指令の算出に利用する。また、第１形式のアンプ５１は、ＰＷＭ指令によって発生した電流などの各種情報をドライバ５２で測定し、測定データを位置情報と同様に数値制御装置４１に送信している。
【００４８】
図８は、第１の実施形態のモータ制御システムにおいて、位置指令を３つに分けて送信するとした場合の、数値制御装置４１、アンプ５１及びアンプ６１における動作を示すタイムチャートである。数値制御装置４１は、ＰＷＭ指令Ａと位置指令Ｂの第１部分Ｂ１を送信し、次いでＰＷＭ指令Ａと位置指令Ｂの第２部分Ｂ２を送信し、さらにＰＷＭ指令Ａと位置指令Ｂの第３部分Ｂ３を送信し、以下この動作を繰り返す。第１形式のアンプ５１は、受信した指令データのうちＰＷＭ指令Ａを抽出し、さらにドライバ５２に対してＰＷＭ指令を出力する。ドライバ５２はＰＷＭ指令に基づいて電流出力を生成してモータ５３に供給する。第２形式のアンプ６１は、受信した指令データのうち位置指令Ｂを構成するＢ１、Ｂ２及びＢ３を順次抽出し、Ｂ１、Ｂ２及びＢ３を合わせて位置指令Ｂを再生する。ＤＳＰ６２は位置指令ＢからＰＷＭ指令を算出し、さらにドライバ６３に対してＰＷＭ指令を出力する。ドライバ６３はＰＷＭ指令に基づいて電流出力を生成してモータ６４に供給する。
【００４９】
第１の実施形態では、１台の数値制御装置４１で、１台の第１形式のアンプ５１と１台の第２形式のアンプ６１を制御するモータ制御システムを説明したが、制御するアンプの台数を増加させることも可能である。第２の実施形態では、１台の数値制御装置４１で、２台の第１形式のアンプ５１と１台の第２形式のアンプ６１を制御するモータ制御システムを説明する。
【００５０】
図９は、第２の実施形態のモータ制御システムの構成を示すブロック図である。第２の実施形態のモータ制御システムは、図示のように、１台目と３台目が第１形式のアンプ５１であり、２台目が第２形式のアンプ６１であり、数値制御装置４１と１台目のアンプ５１はシリアルバス（２本）４８で接続され、１台目のアンプ５１と２台目のアンプ６１はシリアルバス４９で接続され、２台目のアンプ６１と３台目のアンプ５１はシリアルバス５０で接続されている。数値制御装置４１、１台目と３台目の第１形式のアンプ５１及び２台目の第２形式のアンプ６１は、第１の実施形態のものと同じ構成を有する。従って、２台目のアンプ６１の指令データ出力回路８２と回答データ入力回路８４は、３台目のアンプ５１の指令データ入力回路７１と回答データ出力回路７３とそれぞれシリアルバスを介して接続される。
【００５１】
図１０は、第２の実施形態における指令データの構成を示す図である。図示のように、Ｚビット長のスタートコードに続いて、Ｘビット長の１台目のアンプ５１用のＰＷＭ指令データＡが設けられ、さらにＹビット長の２台目のアンプ６１用の位置指令データＢが設けられ、さらにＸビット長の３台目のアンプ５１用のＰＷＭ指令データＡが設けられる。  図１１は、第２の実施形態における数値制御装置のシリアルバス制御回路４７における制御データの設定例を示す図である。図示のように、４台のアンプが接続可能になっており、接続されるアンプのデータタイプ、すなわちＰＷＭ指令を受信するのか位置指令を受信するのかが設定され、スタートコード、１台目から４台目のデータビットの開始位置（ビット）、及びデータビットの終止位置（ビット）が設定される。第２の実施形態では接続されるのは３台のアンプであるので、４台目のデータは「無し」に設定されている。図示のように、スタートコードの開始位置は１ビットであり、終止位置はＺビットであり、１台目のアンプのデータタイプは「Ａ」で、開始位置はＺ＋１ビットであり、終止位置はＺ＋Ｘビットであり、２台目のアンプのデータタイプは「Ｂ」で、開始位置はＺ＋Ｘ＋１ビットであり、終止位置はＺ＋Ｘ＋Ｙビットであり、３台目のアンプのデータタイプは「Ａ」で、開始位置はＺ＋Ｘ＋Ｙ＋１ビットであり、終止位置はＺ＋Ｘ＋Ｙ＋Ｘビットである。各アンプのスタートコード検出回路は、指令データからスタートコードを識別する。もし、第２形式のアンプの場合には、受信した指令データに含まれるのが分割した何番目の位置指令データであるかを識別する。各アンプの設定保存回路には、図１１の開始位置と終止位置が記憶されており、データラッチ回路は指令データにおけるスタートコードから開始位置までをカウントし、開始位置から終止位置までのデータを抽出する。
【００５２】
以上本発明の実施形態を説明したが、各種の変形例が可能であるのはいうまでもない。例えば、接続するアンプの台数及び種類は任意に設定可能である。また、通信データの構成なども任意に設定可能である。
【産業上の利用可能性】
【００５３】
本発明は、１台の数値制御装置で、複数台の異なる形式のアンプを制御する場合に適用され、特に工作機械の多軸制御を行うモータ制御システムへ適用される。
【図面の簡単な説明】
【００５４】
【図１】本発明の第１の実施形態のモータ制御システムの構成を示す図である。
【図２】従来のアンプへの指令データの構成を示す図である。
【図３】異なる形式のアンプへの指令データを共通のシリアルバスで送信する場合の問題点と、本発明での送信方式を説明する図である。
【図４】第１の実施形態における指令データの構成を示す図である。
【図５】第１の実施形態においてＰＷＭ指令を受信する第１形式のアンプの構成を示す図である。
【図６】第１の実施形態において位置指令を受信する第２形式のアンプの構成を示す図である。
【図７】第１の実施形態における指令データの送信と回答データの送信を説明する図である。
【図８】第１の実施形態における各部の動作を示すタイムチャートである。
【図９】本発明の第２の実施形態のモータ制御システムの構成を示す図である。
【図１０】第２の実施形態における指令データの構成を示す図である。
【図１１】第２の実施形態における数値制御装置のシリアルバス制御回路の制御データの設定例を示す図である。
【図１２】従来のモータ制御システムの構成例を示す図である。
【図１３】１台の数値制御装置に異なる形式のアンプを接続する従来のモータ制御システムの構成を示す図である。
【符号の説明】
【００５５】
４１    数値制御装置
４２    メイン（第１）プロセッサ
４３    ＤＳＰ（第２プロセッサ）
４４    ＰＷＭ指令型アンプ用送受信バッファ
４５    位置指令型アンプ用送受信バッファ
４７    シリアルバス制御回路
４８Ａ、４８Ｂ、４９Ａ、４９Ｂ    シリアルバス
５１    第１形式のアンプ
５２    ドライバ
６１    第２形式のアンプ
６２    ＤＳＰ（第３のプロセッサ）
６３    ドライバ
【図１】
2008242728.tif 000003
【図２】
2008242728.tif 000004
【図３】
2008242728.tif 000005
【図４】
2008242728.tif 000006
【図５】
2008242728.tif 000007
【図６】
2008242728.tif 000008
【図７】
2008242728.tif 000009
【図８】
2008242728.tif 000010
【図９】
2008242728.tif 000011
【図１０】
2008242728.tif 000012
【図１１】
2008242728.tif 000013
【図１２】
2008242728.tif 000014
【図１３】
2008242728.tif 000015