(57)【特許請求の範囲】
【請求項１】
サーボモータの位置指令値を出力するＣＰＵと、
サーボモータを駆動するアンプに対して電流指令値を出力するサーボ制御部および外部信号の入出力を行うＩ／Ｏ部を備えた集積回路と、
位置指令値を読み取り、サーボモータを位置指令値の位置に移動させるための制御を行うＤＳＰと、
前記ＣＰＵと前記集積回路間の一方のデバイス間通信経路及び他方のデバイス間通信経路と、を有し、
前記集積回路は、
前記一方のデバイス間通信経路に接続される一方の通信インタフェースと前記サーボ制御部との間に接続される第１内部バスと、
前記他方のデバイス間通信経路に接続される他方の通信インタフェースと前記Ｉ／Ｏ部との間に接続される第２内部バスと、
前記第１内部バスおよび前記第２内部バスを介さずに、前記サーボ制御部と前記Ｉ／Ｏ部の間で直接信号を伝送する内部通信経路と、を備える
ことを特徴とする数値制御装置。
【請求項２】
前記Ｉ／Ｏ部は、
前記ＣＰＵを介さずに直接前記サーボ制御部との間で通信する第１種のデータと、前記ＣＰＵを介して前記サーボ制御部と通信する第２種のデータを識別し、
前記第１種のデータと識別されたときは、前記内部通信経路を介して前記サーボ制御部に送信し、
第２種のデータと識別されたときは、前記第２内部バス、前記他方の通信インタフェース、前記他方のデバイス間通信経路を介して前記ＣＰＵに送信すること、
を特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記ＤＳＰは、前記ＣＰＵに搭載されている請求項１または２に記載の数値制御装置。
【請求項４】
前記デバイス間通信経路は、シリアル通信インタフェース用である請求項１から３のいずれか１項に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御およびロボット制御等に使用される数値制御装置に関し、特にサーボ制御部における外部信号の入出力を高速にした数値制御装置に関する。
【背景技術】
【０００２】
数値制御装置は、工作機械を制御するＣＮＣ制御に使用される。ロボットコントローラは、ロボット内のモータを制御することを行っており、ＣＮＣ制御用の数値制御装置と類似の構成を有する。本発明に係る数値制御装置は、ＣＮＣ制御用数値制御装置に限定されず、ロボットコントローラも含むものとする。
【０００３】
数値制御装置を製作する場合、全体の制御を行うメイン（主）制御部、機械への信号の入出力を制御するシーケンス機能を実行するＰＬＣ(Programmable Logic Control: PLC)部、サーボインタフェース（以下、Ｉ／Ｆと略称する場合がある）を介してサーボモータとの間で信号を入出力するサーボ制御部、サーボ制御信号の演算処理を行う演算部（ＤＳＰ）と、装置内の他の部分とのデータ入出力（Ｉ／Ｏ）用Ｉ／Ｆ、ユーザＩ／Ｆおよび周辺機器Ｉ／Ｆ等をパラレルデータバス（以下、バスと略称する場合がある）で接続し、各部の間の通信を行っていた。
【０００４】
数値制御装置は、コストを考慮しつつ、要求される仕様を十分満足する構成を実現することが求められるが、この際に使用する部品の性能向上および供給体制の変化等も考慮することが望ましい。数値制御装置を製作する場合、メイン制御部およびＰＬＣ部の形成に使用するプロセッサ（ＣＰＵ）およびＤＳＰは、汎用のものを使用するのが一般的である。一方、部品点数を減らすことはコスト低減に有効であり、そのためにＣＰＵ、ＤＳＰ以外の部分、すなわちサーボ制御部とその他の回路を１つの集積回路（ＩＣ）に統合することが行われる。このようなＩＣは、特定用途向けＩＣ（ＡＳＩＣ）と呼ばれる。上記のバスで接続された構成でＣＰＵ、ＤＳＰ以外の部分をＡＳＩＣ化する場合、ＣＰＵおよびＤＳＰとＡＳＩＣの間をバスで接続し、ＡＳＩＣ内にもバスを設けることになる。
【０００５】
さらに、ＣＰＵのマルチコア化や、シリアルＩ／Ｆ化が行われている。ＣＰＵをマルチコア化することにより、メイン制御部およびＰＬＣ部を１個のＣＰＵで容易に実現できる。ＣＰＵとＡＳＩＣからなる構成で、バスをＰＣＩエクスプレス(PCI Express)（登録商標）等の高速シリアルＩ／Ｆ化する場合、ＣＰＵとＡＳＩＣ間の通信をシリアルＩ／Ｆ化するが、ＡＳＩＣ内の通信はバスで行う。
【０００６】
数値制御装置における通信では、メイン制御部（ＣＰＵ内）とサーボ制御部（ＡＳＩＣ内）との間の通信性能を確保することが重要であり、その通信性能が制御対象である機械やロボットの性能を左右する。
【０００７】
そこで、数値制御装置の高速化、高性能化に関連する技術として、以下のような提案が報告されている（例えば、特許文献１乃至４）。特許文献１には、モータ制御部におけるモータ制御用のプロセッサをマルチコアＤＳＰにより構成し、かつ高速シリアル通信Ｉ／Ｆを介してモータ制御用アンプに接続した構成例が示される（段落〔００１６〕〜〔００１８〕及び図１参照）。またマルチコアＣＰＵに数値制御、モータ制御、ＰＬＣ部の各機能が割り当てられ、通信制御兼バスブリッジに高速シリアルインタフェースで接続する例が示されている。
【０００８】
特許文献２には、データ用量が小さく加工速度に直接的に影響を与えるデータと、工作機械の各部分間のＩ／Ｏなどとを、データ処理容量は小さいが処理時間の速い運営体制により駆動される一つのＣＰＵで処理する例が開示されている。さらに、データ用量が大きく加工速度に直接的に影響を与えないデータを、データ処理用量は大きいが処理時間の遅い運営体制により駆動されるもう一つのＣＰＵで各々分散して処理する点が開示されている。このような構成により、工作機械を高速、高性能に制御することができるというものである（例えば、段落〔００１７〕及び図３参照）。また、処理データの内容に対するデータ処理用量と処理時間の関係が示されている（例えば、段落〔００１６〕及び図２参照）。さらに、特許文献１において、第２ＣＰＵが、情報共有部に貯蔵されたデータをリードして高速に処理し、また、このように処理されたデータによってサーボモータを制御するための制御信号を発生する点が開示されている（段落〔００２６〕参照）。
【０００９】
特許文献３には、数値制御部とロボット制御部を有する数値制御が開示され、従来別々の異なるプロセッサで実行していた数値制御とロボット制御をマルチコアプロセッサに統合することを記載している。
【００１０】
特許文献４には、制御部間の接続にネットワークを使用し、ケーブル接続の煩雑さを低減した数値制御装置が開示されている。
【００１１】
さらに、数値制御装置では、外部との入出力（Ｉ／Ｏ）信号のうち入力信号については、メイン制御部に送られ、何らかの処理が行われる。例えば、サーボ制御部に関係する入力信号は、メイン制御部で処理された後、処理結果に応じた制御信号がサーボ制御部に送信される。上記のように、メイン制御部が形成されるＣＰＵと、サーボ制御部を有するＡＳＩＣを高速シリアルＩ／Ｆで接続した場合、メイン制御部からサーボ制御部への信号は、高速シリアルＩ／ＦおよびＡＳＩＣ内のバスを介して送信される。また、Ｉ／Ｏ信号の入出力部がＡＳＩＣに設けられ、メイン制御部で処理する必要のない入力信号は、Ｉ／Ｏ信号の入出力部からＡＳＩＣ内のバスを介してサーボ制御部へ送信される。いずれにしろ、サーボ制御部がＡＳＩＣの内部バスに接続されているため、サーボ制御部への信号は、バスを介して送信される。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２０１３−０５４７３０号公報
【特許文献２】特開２００３−３１６４０８号公報
【特許文献３】特開２０１４−２１１７２１号公報
【特許文献４】特開平０９−０７３３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
サーボ制御部への入力信号には、外部から駆動中のモータの緊急停止信号、モータの所定の回転状態への変更指示信号など、緊急性のある信号がある。他にも、ある動作が完了したことを加工機に知らせる信号のように、信号に対するサーボ制御部の応答性が重要となる。パンチプレス板金加工機による抜き加工では、短いサイクルタイムを実現するために、板金の打ち抜き完了信号を検出したら、加工機が即座に次の加工に移ることが望ましい。あるいはプレスブレーキによる板金曲げ加工では、短いサイクルタイムを実現するために、板金の曲げ角度が所定の角度に到達したことを知らせる完了信号を検出したら、加工機が即座に次の加工に移ることが望ましい。また円筒研削盤では、短いサイクルタイムを実現するために、加工中にワークが所定の径や面粗さに到達したら、即座に次の加工に移ることが望ましい。上記のように、サーボ制御部への信号は、バスを介して送信されるため、遅延が生じる。特に、入力信号の通信優先度を高くしても、バスが大きなデータの転送中にはデータの退避等に時間を要するために遅延が大きくなるという問題があった。
【００１４】
本発明の目的は、サーボ制御部および外部信号の入出力部を搭載するＩＣを有する数値制御装置で、緊急性の高い入力信号や応答性が要求される入力信号について、入出力部からサーボ制御部への通信時間を短縮することを目的とする。
【課題を解決するための手段】
【００１５】
本発明に係る数値制御装置は、サーボモータの位置指令値を出力するＣＰＵと、サーボモータを駆動するアンプに対して電流指令値を出力するサーボ制御部および外部信号の入出力を行うＩ／Ｏ部を備えた集積回路と、位置指令値を読み取り、サーボモータを位置指令値の位置に移動させるための制御を行うＤＳＰと、ＣＰＵと集積回路間のデバイス間通信経路と、を有し、集積回路は、デバイス間通信経路に接続される通信インタフェースおよびＩ／Ｏ部に接続される内部バスと、内部バスを介さずに、サーボ制御部とＩ／Ｏ部の間で直接信号を伝送する内部通信経路と、を備えることを特徴とする。
【発明の効果】
【００１６】
本発明に係る数値制御装置によれば、サーボ制御部への入力信号のうち、ＣＰＵでの処理を行わない緊急性の高い信号や応答性が要求される入力信号は、集積回路内のバスを介さずにＩ／Ｏ部からサーボ制御部に直接通信されるので、バスを介して伝送する場合より、通信時間を短縮できる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施例１に係る数値制御装置の構成図である。
【図２】本発明の実施例２に係る数値制御装置の構成図である。
【図３】本発明の実施例３に係る数値制御装置の構成図である。
【図４】本発明の実施例４に係る数値制御装置の構成図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して、本発明に係る数値制御装置の実施形態について説明する。
【００１９】
［実施例１］
まず、本発明の実施例１に係る数値制御装置について説明する。図１は、本発明の実施例１に係る数値制御装置の構成図である。本発明の実施例１に係る数値制御装置１０１は、マルチコアＣＰＵ１と、ＡＳＩＣ２と、を有する。マルチコアＣＰＵ１とＡＳＩＣ２は、１つの高速シリアルインタフェース（Ｉ／Ｆ）ライン１０で接続されている。高速シリアルＩ／Ｆライン１０として、例えばＰＣＩエクスプレス(PCI Express)（登録商標）を用いることができるが、このような例には限られない。
【００２０】
マルチコアＣＰＵ１は、マルチコアＤＳＰ３と、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）コントローラ１１と、を備えている。マルチコアＤＳＰ３は、サーボ制御に関係する演算を行う。ＭＡＣコントローラ１１は、ネットワークとの通信を行い、物理層（ＰＨＹ）４１を有する。ネットワークは、例えば、多機能（Ｍｕｌｔｉ−ｆｕｎｃｔｉｏｎ）イーサネット（登録商標）である。「多機能」とは、種々の産業用イーサネット（登録商標）として使用できることを意味している。ただし、ネットワークはこれに限定されるものではない。本実施例では、マルチコアＣＰＵ１には、図示のように外部にＣＰＵ用の主記憶メモリであるＤＲＡＭ１３を接続しているが、ＡＳＩＣ２に外部接続する場合もある。
【００２１】
ＡＳＩＣ２は、サーボ制御部２１、Ｉ／Ｏ通信マスタ２２、ペリフェラル２３、グラフィックエンジン(MPU & VRAM)２４、Ｉ／Ｏ用ＲＡＭ２８、シリアルＩ／Ｆ２７１、およびＡＳＩＣ内部バス２５０を備える。サーボ制御部２１、Ｉ／Ｏ通信マスタ２２、ペリフェラル２３、グラフィックエンジン(MPU & VRAM)２４、Ｉ／Ｏ用ＲＡＭ２８、シリアルＩ／Ｆ２７１、はＡＳＩＣ内部バス２５０に接続されている。
【００２２】
Ｉ／Ｏ通信マスタ２２は、Ｉ／Ｏ通信を制御するための回路であり、Ｉ／Ｏ通信用の外部Ｉ／Ｆ端子２２１を介してＤＩ／ＤＯを入出力するスレーブユニット（図示せず）が接続される。Ｉ／Ｏ通信マスタ２２は、Ｉ／Ｏ用ＲＡＭ２８に格納されたＤＯを接続されたスレーブユニットに出力する。一方、スレーブユニットから入力されたＤＩは、Ｉ／Ｏ通信マスタ２２を通じてＩ／Ｏ用ＲＡＭ２８にＤＩとして格納される。Ｉ／Ｏ通信マスタ２２とサーボ制御部２１の間には、内部通信経路２６０が設けられている。Ｉ／Ｏ用ＲＡＭ２８上のＤＩ／ＤＯは、マルチコアＣＰＵ１上で実行されるシーケンスプログラムにより、高速シリアルＩ／Ｆライン１０、シリアルＩ／Ｆ２７１および内部バス２５０を介してリード／ライトされる。なお、Ｉ／Ｏ用ＲＡＭ２８を設けず、Ｉ／Ｏ通信マスタ２２が入出力するＩ／Ｏデータを記憶するメモリとして、ＤＲＡＭ１３を利用することも可能である。また、ＡＳＩＣ２にＲＡＭを接続して、それをＩ／Ｏ用ＲＡＭ２８およびＡＳＩＣ２内の処理の動作メモリとして利用してもよい。
【００２３】
ペリフェラル２３には、マルチコアＣＰＵ１の初期化動作時にローディングしてＤＲＡＭ１３に展開するＣＮＣのソフトを格納したストレージデバイス６０、バッテリィバックアップされたＳＲＡＭ７０が接続される。ＳＲＡＭ７０は、動作中のデータを記憶し、電源が切れた場合等でも元の状態に復帰可能にするために使用される。さらに、ペリフェラル２３は、キーボード用、アナログ入出力用、クロック用の外部Ｉ／Ｆ端子を有する。これらの端子を利用して、ユーザ入力、実行中の加工プログラムをスキップさせるための信号入力、タッチセンサの信号入力、クロック入力、アナログスピンドル出力（アナログ出力）等を行う。
【００２４】
グラフィックエンジン２４は、簡易なグラフィック機能を実現するプロセッサ（ＭＰＵ）と、画面のイメージのデータを格納するためのＶＲＡＭと、ＶＲＡＭに書かれたデータをＬＣＤパネルなどのディスプレイに出力するコントローラで構成される。
【００２５】
次に、サーボ制御について説明する。マルチコアＣＰＵ１は、移動指令値をＤＲＡＭ１３やＣＰＵ内部のキャッシュに書き込み、ＤＳＰコア３がそれにアクセスする。ＤＳＰコア３は、移動指令値からサーボモータを指令値の位置に移動させるためのアンプに対する電流指令値を生成し、高速シリアルＩ／Ｆライン１０、シリアルＩ／Ｆ２７１およびＡＳＩＣ内部バス２５０を介してサーボ制御部２１に送る。
【００２６】
サーボ制御部２１には、サーボＩ／Ｆ２６が設けられている。サーボＩ／Ｆ２６は、サーボアンプまたはスピンドルアンプをサーボ制御部２１に接続するためのインタフェースである。サーボアンプまたはスピンドアンプには、工作機械の各軸を動作させるサーボモータまたはスピンドルモータへの動力線と、各モータの位置／速度を検出するフィードバック入力信号が接続される。
【００２７】
サーボ制御部２１からは、サーボＩ／Ｆ２６を通じて、アンプに対して電流の指令値を送る。アンプは、受け取った電流指令値に基づきＰＷＭ信号による電流制御を行い、アンプに内蔵された電流センサの値をサーボＩ／Ｆ２６を介してサーボ制御部２１に送る。また、サーボモータからのフィードバック信号も、サーボＩ／Ｆ２６を介してサーボ制御部２１に送られる。マルチコアＤＳＰ３は、高速シリアルＩ／Ｆライン１０、シリアルＩ／Ｆ２７１およびＡＳＩＣ内部バス２５０を介してサーボ制御部２１が受け取った電流センサの値やフィードバック信号の値を読み取り、それに基づいて次の電流制御指令値を演算し、逆の経路でサーボ制御部２１に送る。サーボ制御部２１は、次の電流制御指令値をサーボＩ／Ｆ２６を通じてアンプに送る。マルチコアＤＳＰ３は、この電流制御を繰り返し行うことでサーボモータを制御し、マルチコアＣＰＵ１から指示された位置に各軸を到達させる。マルチコアＤＳＰ３は、フィードバック信号の値をＤＲＡＭ１３または内蔵のキャッシュに書き込み、マルチコアＣＰＵ１はこの値を読み、位置指令値に軸が到達したことを確認する。
【００２８】
Ｉ／Ｏ通信マスタ２２を介して入出力されるＩ／Ｏ信号データ（ＤＩ／ＤＯ）は、マルチコアＣＰＵ１を介さずに直接サーボ制御部２１との間で通信することが可能な第１種のデータと、それ以外の第２種のデータに分けられる。
【００２９】
第１種のデータの第１の例は、特定の軸（１軸または複数の軸）が回転している状態で、Ｉ／Ｏ通信マスタ２２からサーボ制御部２１に入力されると、サーボ制御部２１は、マルチコアＣＰＵ１の介在なしに、信号の種類で指定された特定の軸（１軸または複数の軸）の回転を即時停止するＤＩ信号である。
【００３０】
第１種のデータの第２の例は、特定の軸（１軸または複数の軸）が一定速度で回転している状態で、Ｉ／Ｏ通信マスタ２２からサーボ制御部２１に入力されると、サーボ制御部２１は、マルチコアＣＰＵ１の介在なしに、一定速度で回転している軸の回転速度を、信号の種類で指定された回転速度に変更するＤＩ信号である。ＤＩ信号と回転速度の関係づけは、運転開始前にサーボ制御部２１に対してあらかじめ設定されている。
【００３１】
第１種のデータの第３の例は、特定の軸（１軸または複数の軸）が停止している状態で、Ｉ／Ｏ通信マスタ２２からサーボ制御部２１に入力されると、サーボ制御部２１は、マルチコアＣＰＵ１の介在なしに、停止していた軸を特定位置まで特定の最大加減速、特定の最大速度で移動し位置決めさせるＤＩ信号である。位置決めの位置、最大加減速、最大速度は、運転開始前にサーボ制御部２１に対してあらかじめ設定されている。複数のＤＩ信号に対して複数の位置決め位置や複数の最大速度を設定することもできる。
【００３２】
第２種のデータの第１の例は、あらかじめストレージデバイス６０等に保存された加工プログラムを指定するＤＩ信号である。このようなＤ１信号は、Ｉ／Ｏ通信マスタ２２からマルチコアＣＰＵ１に送信され、マルチコアＣＰＵ１は、指定された加工プログラムにしたがってサーボ制御２１への移動指令値を生成し、サーボ制御部２１に送信する。
【００３３】
第２種のデータの第２の例は、複数の軸で同時輪郭制御（補間処理）を行う場合で、Ｉ／Ｏ通信マスタ２２のＩ／Ｏ通信ＩＦに他の軸の制御を行うスレーブユニット（サーボ制御ＩＣ）が接続され、スレーブユニットからデータを受ける場合である。このデータは、サーボ制御２１からのデータを含めて、マルチコアＣＰＵ１の主制御部でまとめて処理される必要がある。
【００３４】
第１種と第２種のデータの識別は、Ｉ／Ｏ通信マスタ部に設けられた識別テーブルにより識別される。この識別テーブルには、第１種のデータとして扱われるべき信号が、Ｉ／Ｏ用ＲＡＭへ格納されるアドレスとビットで指定されており、このテーブルとの照合により第１種と第２種の信号が識別される。またアドレスとビットの代わりに、Ｉ／Ｏ通信ＩＦに接続されるスレーブユニットの種類、ユニットにあるコネクタの端子で識別テーブルに対して指定することもできる。識別テーブルに対する指定は、数値制御装置の使用者が任意に変更できる。
【００３５】
実施例１では、Ｉ／Ｏ通信マスタ２２が、ＤＩが第１種のデータであるか否かを識別し、第１種のデータであれば内部通信経路２６０を介してサーボ制御部２１に送信し、第２種のデータであればＡＳＩＣ内部バス２５０、シリアルＩＦ２７１および高速シリアルＩ／Ｆライン１０を介してマルチコアＣＰＵ１に送信する。なお、マルチコアＣＰＵ１は、全体の制御のために第１種のデータのうちでも管理することが望ましいデータが存在するので、そのようなデータについて、Ｉ／Ｏ通信マスタ２９は、内部通信経路２６０を介して、第１種のデータをサーボ制御部２２に送信した後、ＡＳＩＣ内部バス２５０、シリアルＩ／Ｆ２７１および高速シリアルＩ／Ｆライン１０を介して、第１種のデータをマルチコアＣＰＵ１に適宜送信するようにしてもよい。
【００３６】
以上説明したように、実施例１では、Ｉ／Ｏ通信マスタ２２が、第１種のデータを受信してから、サーボ制御部２１が第１種のデータを受信するまでの時間を短くできる。したがって、第１種のデータが緊急性や応答性を要する場合には、特に有利である。
【００３７】
［実施例２］
次に、本発明の実施例２に係る数値制御装置について説明する。図２は、本発明の実施例２に係る数値制御装置の構成図である。本発明の実施例２に係る数値制御装置１０２が、実施例１に係る数値制御装置１０１と異なっている点は、マルチコアＣＰＵ１がマルチコアＤＳＰ３を有さず、マルチコアＤＳＰ３がＡＳＩＣ２に外部接続される点である。実施例２に係る数値制御装置１０２のその他の構成は、実施例１に係る数値制御装置１０１における構成と同様であるので詳細な説明は省略する。
【００３８】
ＡＳＩＣ２は、シリアルＩ／Ｆ２７３をさらに有する。サーボ制御部２１は、シリアルＩ／Ｆ２７３および高速シリアルＩ／Ｆライン３０を介してマルチコアＤＳＰ３と接続される。高速シリアルＩ／Ｆライン３０として、例えばＰＣＩエクスプレス(PCI Express)（登録商標）を用いることができるが、このような例には限られない。
【００３９】
次に、サーボ制御について説明する。マルチコアＣＰＵ１は、サーボモータ（図示せず）の位置指令値をＡＳＩＣ２内のサーボ制御部２１に出力する。サーボ制御部２１は、サーボモータを駆動するアンプ（図示せず）に対して電流指令値を出力する。マルチコアＤＳＰ３は、位置指令値を読み取り、サーボモータを位置指令値の位置に移動させるための制御を行う。
【００４０】
サーボ制御部２１には、サーボＩ／Ｆ２６が設けられている。サーボＩ／Ｆ２６は、サーボアンプまたはスピンドルアンプをサーボ制御部２１に接続するためのインタフェースである。サーボアンプまたはスピンドアンプには、工作機械の各軸を動作させるサーボモータまたはスピンドルモータへの動力線と、各モータの位置／速度を検出するフィードバック入力信号が接続される。
【００４１】
サーボ制御部２１には、内蔵のＲＡＭ領域にマルチコアＣＰＵ１からの位置指令値が書き込まれる。マルチコアＤＳＰ３は、位置指令値を読み取り、サーボモータを指令値の位置に移動させるための制御を行う。サーボモータの制御は、サーボ制御部２１に接続されたサーボＩ／Ｆ２６を通じて行う。マルチコアＤＳＰ３は、フィードバック信号の値をサーボ制御部２１に書き込み、マルチコアＣＰＵ１はこの値を読み、位置指令値に軸が到達したことを確認する。他の動作は、実施例１と同じなので、説明は省略する。
【００４２】
実施例２でも、実施例１と同様に、Ｉ／Ｏ通信マスタ２２が、第１種のデータを受信してから、サーボ制御部２１が第１種のデータを受信するまでの時間を短くできる。
【００４３】
［実施例３］
次に、本発明の実施例３に係る数値制御装置について説明する。図３は、本発明の実施例３に係る数値制御装置の構成図である。本発明の実施例３に係る数値制御装置１０３が、実施例１に係る数値制御装置１０１と異なっている点は、ＡＳＩＣ内部バスが、サーボ制御部２１およびシリアルＩ／Ｆ２７１が接続される第１ＡＳＩＣ内部バス２５１と、それ以外のＩ／Ｏ通信マスタ２２．ペリフェラル２３、グラフィックエンジン２４およびＩ／Ｏ用ＲＡＭ２８が接続される第２ＡＳＩＣ内部バス２５２に分離されたこと、第２ＡＳＩＣ内部バス２５２をマルチコアＣＰＵ１に接続するためのシリアルＩ／Ｆ２７２が新たに設けられたこと、およびマルチコアＣＰＵ１とシリアルＩ／Ｆ２７２間を接続する高速シリアルＩ／Ｆライン２０が設けられた点である。実施例３に係る数値制御装置１０３のその他の構成は、実施例１に係る数値制御装置１０１における構成と同様であるので詳細な説明は省略する。
【００４４】
マルチコアＣＰＵ１とサーボ制御部２１の間のサーボ制御データの通信は、高速シリアルＩ／Ｆライン１０、シリアルＩ／Ｆ２７１および第１ＡＳＩＣ内部バス２５１を介して行われる。ＡＳＩＣ２内のサーボ制御部２１以外の要素とマルチコアＣＰＵ１の間の通信は、高速シリアルＩ／Ｆライン２０、シリアルＩ／Ｆ２７２および第２ＡＳＩＣ内部バス２５２を介して行われる。
【００４５】
実施例３でも、実施例１および２実施形態と同様に、サーボ制御部２１で緊急に必要なＩ／Ｏ通信マスタ２２に入力する外部信号の通信遅延を低減できる。特に、実施例３の数値制御装置１０３では、内部通信経路２６０が設けられていないと仮定すると、Ｉ／Ｏ通信マスタ２２に入力する外部信号をサーボ制御部２１に送信する場合、第２ＡＳＩＣ内部バス２５２、シリアルＩ／Ｆ２７２、高速シリアルＩ／Ｆライン２０、ＣＰＵ１、高速シリアルＩ／Ｆライン１０、シリアルＩ／Ｆ２７１および第１ＡＳＩＣ内部バス２５１を介して送信することになるので遅延時間が大きくなるので、特に効果的である。
【００４６】
さらに、実施例３では、サーボ制御部２１とマルチコアＣＰＵ１との間の通信は、ＡＳＩＣ２内の他の要素部分とマルチコアＣＰＵ１との間の通信に影響されないので、マルチコアＣＰＵ１とサーボ制御部２１間の通信のパフォーマンスを向上させることができる。さらにＡＳＩＣ２内の他の要素部分もマルチコアＣＰＵ１との間の通信を、サーボ制御部２１による通信から独立して行えるので通信のパフォーマンスを向上させることができる。これにより、例えば、グラフィックエンジン２４による描画機能をより高機能なものにすることも可能である。
【００４７】
［実施例４］
次に、本発明の実施例４に係る数値制御装置について説明する。図４は、本発明の実施例４に係る数値制御装置の構成図である。本発明の実施例４に係る数値制御装置１０４が、実施例１に係る数値制御装置１０１と異なっている点は、Ｉ／Ｏ通信マスタ２２をＡＳＩＣ２から除き、Ｉ／Ｏ通信マスタ２２が入出力するＩ／Ｏ信号データ（ＤＩ／ＤＯ）は、マルチコアＣＰＵ１のＭＡＣ１１によりネットワークとの間で入出力される点である。実施例４に係る数値制御装置１０３のその他の構成は、実施例１に係る数値制御装置１０１における構成と同様であるので詳細な説明は省略する。
【００４８】
ＭＡＣ１１により入出力されるデータは、実施例１と同様に、Ｉ／Ｏ用ＲＡＭ２８に記憶される。
【００４９】
以上、本発明の実施例を説明したが、各種の変形例があり得るのは言うまでもない。例えば、マルチコアＣＰＵ１とＡＳＩＣ２の間の通信インタフェースはシリアルＩ／Ｆに限定されず、各ＩＣにどのような機能部分を統合するか、ＡＳＩＣ内の複数のバスにそれぞれどのような機能部を接続するかは、仕様に応じて適宜定められるべきであり、それに応じて各種の変形例があり得る。
【符号の説明】
【００５０】
１    マルチコアＣＰＵ
２    ＡＳＩＣ
３    マルチコアＤＳＰ
１０，２０，３０    高速シリアルＩ／Ｆライン
２１    サーボ制御部
２２    Ｉ／Ｏ通信マスタ
２３    ペリフェラル
２４    グラフィックエンジン
２６    サーボＩ／Ｆ
２８    Ｉ／Ｏ用ＲＡＭ
２６０    内部通信経路
【図１】
0006457376.tif 000002
【図２】
0006457376.tif 000003
【図３】
0006457376.tif 000004
【図４】
0006457376.tif 000005