(57)【特許請求の範囲】
【請求項１】
上位ＣＰＵと該上位ＣＰＵによるデータの読み書き可能な上位ＲＡＭと該上位ＣＰＵによるデータの読込み可能な上位ＲＯＭとからなる上位ユニットと、
下位ＣＰＵと該下位ＣＰＵによるデータの読み書き可能な下位ＲＡＭとからなり該下位ＣＰＵ専用のＲＯＭが設けられていない複数の下位ユニットと、
該上位ユニットと該下位ユニットとの間に設けられ該上位ＣＰＵと該下位ＣＰＵとによるデータの読み書き可能な共有ＲＡＭと、
該共有ＲＡＭに格納されているプログラムを該下位ＲＡＭに転送する下位ユニット用転送プログラムと該上位ユニットの動作モードに応じて選択される複数の下位ユニット用システムプログラムとを少なくとも含む該下位ＣＰＵが実行可能な下位ユニット用プログラムを該上位ＲＯＭから該共有ＲＡＭに転送する転送手段と、
該転送手段が該下位ユニット用転送プログラムを該上位ＲＯＭから該共有ＲＡＭに転送し終えた後に該下位ＣＰＵを起動させる起動制御手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記転送手段は、前記上位ＣＰＵにより実行される上位転送プログラムである請求項１記載の制御装置。
【請求項３】
前記起動制御手段は、前記上位ＣＰＵが前記下位ＣＰＵに出力するリセット解除信号である請求項１記載の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、工作機械等の種々の機器に利用できる、コスト低減や小型化等に有効な制御装置に関するものである。
【０００２】
【従来の技術】
マイクロコンピュータを用いた一般的な制御装置は、ＣＰＵと、そのＣＰＵで実行するためのプログラムを格納する記憶デバイスであるＲＯＭと、プログラムの実行上必要となる変数等を格納する記憶デバイスであるＲＡＭと、その他、必要な回路等で構成され、その機能を実現している。
制御内容が単純な場合であれば、ＣＰＵ、ＲＯＭ、ＲＡＭ等がそれぞれ１づつ存在すれば十分であるが、制御内容が複雑化したり、処理速度の高速化が要求される場合、複数のユニットに分散させてプログラムを処理させたり、機能ごとに専用の処理ユニットを設けることが行われている。
例えば、プログラムを複数のＣＰＵで分散して実行する場合、基本的には各ユニットごとに単独して単一動作を行わせ、各ユニット間で必要となるデータの伝達等は共有ＲＡＭ等からなるインタフェースを介在させて行い、制御装置全体としての高速化、高機能化を図っている。
【０００３】
ところで、従来の制御装置では、図４に示すように、各ユニットのＣＰＵごとにＲＯＭやＲＡＭが設けられ、電源を投入すると、各ユニットのＣＰＵが、各ＣＰＵごとに設けられたＲＯＭから専用のプログラムを読込んで実行し、動作を行なうようになっていた。このため、従来の制御装置では、少なくともＣＰＵの個数と同数のＲＯＭが必要とされていた。
【０００４】
【発明が解決しようとする課題】
しかし、制御装置の高性能化が進み、ユニット数が増えると、実装チップ数が増加し、より大きな実装面積が必要となり、制御装置の小型化を図ることが難しくなってきた。また、ＲＯＭの場合、各ＲＯＭごとの書込み作業が必要となるため、ＲＯＭ数が増えると、その工数も増大することになる。
また、通常、ＲＯＭは書込むプログラム容量よりも大きな容量のものを選定して使用するため、従来のように各ＣＰＵごとにＲＯＭを設ける場合、未使用領域を残しつつ多数のＲＯＭが存在して、非効率でもあった。
さらに、全く同じプログラムを複数のＣＰＵで動作させる場合にも、同じプログラムを書き込んだＲＯＭをＣＰＵごとに実装しなければならなかった。特に、プログラムが複数の動作をもつ大きなものである場合、各ＲＯＭに同じプログラムを書込んで、それぞれのＲＯＭを実装することは非常に非効率である。
また、制御装置は、その機種ごとにＲＯＭに書込むプログラムが異なるため、ＲＯＭの種類が多くなると、その管理工数も大きくなる。
本発明は、このような事情に鑑みて為されたものである。つまり、ＲＯＭへのプログラムの書込み工数や書込み時間、デバイスコスト、チップの実装工数や実装面積等の低減、制御装置の小型化、各機種ごとに必要となる機種ＲＯＭの管理工数低減等の少なくともいずれかを図ることができる制御装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
そこで、本発明者はこの課題を解決すべく鋭意研究し、試行錯誤を重ねた結果、複数のユニットからなる制御装置において下位側のＲＯＭを削除することを思い付き、本発明の制御装置を開発するに至ったものである。
すなわち、本発明の制御装置は、上位ＣＰＵと該上位ＣＰＵによるデータの読み書き可能な上位ＲＡＭと該上位ＣＰＵによるデータの読込み可能な上位ＲＯＭとからなる上位ユニットと、下位ＣＰＵと該下位ＣＰＵによるデータの読み書き可能な下位ＲＡＭとからなり該下位ＣＰＵ専用のＲＯＭが設けられていない複数の下位ユニットと、該上位ユニットと該下位ユニットとの間に設けられ該上位ＣＰＵと該下位ＣＰＵとによるデータの読み書き可能な共有ＲＡＭと、該共有ＲＡＭに格納されているプログラムを該下位ＲＡＭに転送する下位ユニット用転送プログラムと該上位ユニットの動作モードに応じて選択される複数の下位ユニット用システムプログラムとを少なくとも含む該下位ＣＰＵが実行可能な下位ユニット用プログラムを該上位ＲＯＭから該共有ＲＡＭに転送する転送手段と、該転送手段が該下位ユニット用転送プログラムを該上位ＲＯＭから該共有ＲＡＭに転送し終えた後に該下位ＣＰＵを起動させる起動制御手段と、を備えることを特徴とする。
【０００６】
本発明の制御装置は、従来、ＣＰＵごとにＲＯＭが必要と考えられていた概念を覆し、下位ユニット側のＲＯＭを削除したものである。そして、そのＲＯＭを削除するに際し、従来ならそのＲＯＭに格納されていた下位ユニット用プログラムを、本発明では上位ＲＯＭにまとめて格納しておき、上位ユニットと下位ユニットとの間に必要となる共有ＲＡＭを有効利用して、転送手段により、その下位ユニット用プログラムを上位ＲＯＭからその共有ＲＡＭへ転送し、その下位ユニット用プログラムを下位ＣＰＵが実行できるようにしたものである。
但し、下位ＣＰＵが下位ユニット用プログラムを実行するには、先ず、その実行するプログラムが少なくとも共有ＲＡＭに転送されていることが前提となるため、下位ＣＰＵの起動タイミングを制御することが必要となる。そこで、この起動制御を行うのが起動制御手段である。
前記転送手段は、例えば、前記上位ＣＰＵにより実行される上位転送プログラムである。
【０００７】
そして、前記上位ＲＯＭに複数の下位ユニット用システムプログラムが格納されており、その上位転送プログラムに、上位ユニットの動作モードに応じて選択される該下位ユニット用システムプログラムを転送するプログラムが含まれている。
上位ユニットの動作モードに応じて、必要となる下位ユニットの動作モードも決まるため、その下位ユニットの動作に必要な下位ユニット用システムプログラムのみを転送することができると、転送時間の短縮、共有ＲＡＭや下位ＲＡＭの有効利用または容量の節減が可能となる。
【０００８】
また、前記起動制御手段は、例えば、前記上位ＣＰＵが前記下位ＣＰＵに出力するリセット解除信号である。
下位ＣＰＵの起動は、下位ユニットの動作に必要な下位ユニット用プログラムが、上位ＲＯＭから共有ＲＡＭへ転送された後になされ、その転送を実行している上位ＣＰＵがリセット解除信号を出力するため、誤動作や異常信号の出力を防止できる。
【０００９】
ところで、下位ユニット用プログラムが、下位ユニット用転送プログラムを少なくとも含むのは次の理由による。
転送される下位ユニット用プログラム全体が小容量のものであれば、下位ＣＰＵが共有ＲＡＭへ転送されたプログラムを共有ＲＡＭから直接読込んで実行することも可能である。しかし、下位ユニット用プログラムの容量が大きかったり、複数の機能をもつプログラムから構成されている場合、状況に応じて必要なプログラム（例えば、下位ユニット用システムプログラム）を下位ＲＡＭに転送した後、下位ＣＰＵがその下位ＲＡＭにあるプログラムを読込んで実行する方が処理速度等の観点から好ましい。この場合、共有ＲＡＭから下位ＲＡＭへデータを転送する下位ユニット用転送プログラムが必要となり、下位ＣＰＵは、上位ＲＯＭから共有ＲＡＭへ転送されてきた下位ユニット用転送プログラムを、先行して実行する。つまり、このとき、下位ＣＰＵは、起動と同時に、下位ユニット用転送プログラムが格納されている共有ＲＡＭの所定番地から、その下位ユニット用転送プログラム（データ）を読み始めることになる。
【００１０】
なお、上述の「上位」、「下位」は便宜上の称呼であり、制御装置全体としての機能上の上位や下位を示すものではない。また、言うまでもないが、ＣＰＵは中央処理装置であり、一般的に使用されている種々のＣＰＵが含まれ、キャッシュを伴うものでも良い。ＲＡＭは、通常、一時記憶可能な揮発性メモリであり、ＤＲＡＭやＳＲＡＭがある。また、共有ＲＡＭは、デュアルポート（２ポート）ＲＡＭ等からなり、両ポートから読み書き可能で、両ユニット間でデータのやりとりができるものである。ＲＯＭは、不揮発性メモリであり、マスクＲＯＭやＰＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ等）等からなる。
【００１１】
【発明の実施の形態】
次に、実施形態を挙げ、本発明の制御装置をより具体的に説明する。
先ず、本発明の概念を図１および図２を用いて詳しく説明する。図１は、制御装置（例えば、工作機械のＮＣ装置）の制御基板上に配設される回路構成の内、本発明に係る要部を模式的に示したものである。図１では、理解を容易にするために、上位ユニットと下位ユニットとの２ユニットしか示していないが、下位ユニットが複数あっても、上位ユニットと下位ユニットとの組合わせが複数あっても、基本的には同様である。
【００１２】
図１に示す上位ユニット１０も下位ユニット２０も、共に外部機器１５、２５にインターフェース（Ｉ／Ｆ）１４、２４を介して接続されており、外部機器１５、２５に信号やデータを出力して外部機器の制御を行ったり、外部機器１５、２５から信号やデータを受取ったりできるようになっている。
そして、上位ユニット１０と下位ユニット２０との間には、両者のインターフェースとなる共有ＲＡＭ（２ポートＲＡＭ）３０が設けられている。この共有ＲＡＭ３０をバッファとすることにより、上位ユニット１０と下位ユニット２０との間でデータや信号の送受信やプログラムの転送が可能となる。
【００１３】
ところで、本発明に係る制御装置を示した図１と、従来の制御装置を示した図４とを比較すると明かなように、本発明に係る制御装置では、下位ユニット２０側のＲＯＭが省略されている。
この図１に示す制御装置の動作について、図２を参照しつつ説明する。図２は、上位ユニット１０側に設けたフラッシュメモリからなるＲＯＭ（上位ＲＯＭ）１３に格納されているプログラムを階層的に模式化して示したものである。
【００１４】
▲１▼上位ＣＰＵ１１は、電源監視回路（図略）からの出力信号によりリセット解除されると、起動するように回路が構成されている。そして、上位ＣＰＵ１１が起動すると、ＲＯＭ１３から上位ユニット用プログラムを読み込んで実行を開始する。また、上位ＣＰＵ１１は、必要に応じて、ＲＡＭ１２にアクセスして、プログラムやデータを一時的に記憶させる。
【００１５】
▲２▼次に、上位ＣＰＵ１１は、前述の上位ユニット用プログラムに含まれていた転送プログラム（上位転送プログラム）を実行し（転送手段）、下位ユニット用プログラムの一種である下位ユニット用転送プログラムをＲＯＭ１２から共有ＲＡＭ３０に転送する。
【００１６】
▲３▼次に、上位ＣＰＵ１１は、その転送完了信号を受けて、下位ＣＰＵ２１にリセット解除信号を出力する（起動制御手段）。
【００１７】
▲４▼下位ＣＰＵ２１は、このリセット解除信号を受けて起動し、共有ＲＡＭ３０に既に転送されている下位ユニット用転送プログラムを読込んで実行を開始する。なお、下位ＣＰＵ２１は起動時に共有ＲＡＭ３０の所定番地からデータを読込むように回路が構成されている。
こうして、下位ＣＰＵ２１は、ＲＯＭ１３から共有ＲＡＭ３０に転送されてきたプログラムを下位ユニット２０側のＲＡＭ２２に転送させることができる。
【００１８】
▲５▼次に、上位ＣＰＵ１１は、前述の上位転送プログラムを再度実行させ、ＲＯＭ１３の下位ユニット用転送プログラムの下層に格納されている下位ユニットシステムプログラム▲１▼を共有ＲＡＭ３０に転送する。
但し、上位ユニット１０の動作モードによっては、下位ユニット用システムプログラム▲２▼を共有ＲＡＭ３０に転送しても良い。さらに、下位ユニット用システムプログラム▲１▼の転送途中であっても、下位ユニット用システムプログラム▲２▼の転送に切替えても良い。
【００１９】
▲６▼上位ＣＰＵ１１から共有ＲＡＭ３０へのプログラムの転送処理完了を待って、またはその転送処理と並行して、下位ＣＰＵ２１は、共有ＲＡＭ３０に転送されてきた下位ユニット用システムプログラム▲１▼を順次、ＲＡＭ２２へ転送し始める。
【００２０】
▲７▼そして、ＲＡＭ２２への転送が終了すると、下位ＣＰＵ２１は、ＲＡＭ２２から転送された下位ユニット用システムプログラムを読込んで実行し、下位ユニット２０の機能を発揮する。
このようにして、本発明の制御装置は、下位ユニット側のＲＯＭを削減しながらも、上位ユニット側のＲＯＭや共有ＲＡＭを有効活用し、従来の制御装置と何ら機能的に劣ることなく、コスト削減や基板の実装面積の減少または制御装置の小型化を図ることに成功した。
【００２１】
なお、上述の説明では、下位ユニット用システムプログラムのＲＡＭ２２への転送終了後に下位ＣＰＵ２１がそのプログラムを実行する場合を想定して説明したが、その転送途中や、実行途中に、上位ＣＰＵが別の下位ユニット用システムプログラムを転送し直して、下位ＣＰＵの動作を変更することも可能である。
また、下位ユニットが複数あり、各下位ＣＰＵが同じプログラムで動作する場合は、プログラム共用化して（つまり、上位ＲＯＭに格納するプログラムを一つに集約して）、同じプログラムを上位ＲＯＭから各下位ＲＡＭや各共有ＲＡＭに転送するようにしても良い。
【００２２】
次に、本発明の実施形態である工作機械のＮＣ装置１００を図３に示す。なお、図３では、本発明に係わる制御基板の要部を中心に示した。
このＮＣ装置１００は、図１に示した制御装置と同様に、上位ＣＰＵ１１１、（上位）ＲＡＭ１１２およびフラッシュメモリからなる上位ＲＯＭ１１３で上位ユニットが構成される。上位ＲＯＭ１１３に格納されているプログラムの内容等は、図２に示したものと基本的に同様である。
【００２３】
また、上位ＣＰＵ１１１は、インターフェース（Ｉ／Ｆ）１１４を介して、コネクタ１１５に接続された外部機器と通信可能であると共に、コネクタ１６５に接続されたＰＬＣ（プログラマブルロジックコントローラ）を制御するＰＬＣ制御部１６０とも入出力可能である。
一方、下位ユニットとして、サーボ制御部を例示した。このサーボ制御部は、第１サーボを制御する第１サーボアンプ部（第１下位ユニット）と第２サーボを制御する第２サーボアンプ部（第２下位ユニット）とからなる。
【００２４】
第１サーボアンプ部は、下位ＣＰＵ１２１と、第１サーボ用インターフェース（Ｉ／Ｆ）１２４と、ＲＡＭ１２２とで構成され、コネクタ１２５を介して第１サーボに接続される。そして、上位ユニットとの間には共有ＲＡＭ１３０が設けられている。
【００２５】
第２サーボアンプ部は、下位ＣＰＵ１４１と、第２サーボ用インターフェース（Ｉ／Ｆ）１４４とで構成され、コネクタ１４５を介して第２サーボに接続される。そして、上位ユニットとの間には共有ＲＡＭ１５０が設けられている。
従って、このＮＣ装置１００では、上位ユニット一つに対して下位ユニットが二つある場合に相当する。そして、上位ＲＯＭ１１３には、上位ユニット用プログラムと共に、第１サーボアンプ部と第２サーボアンプ部との機能実現に必要なそれぞれの下位ユニット用システムプログラムと、その下位ユニット用転送プログラムとが格納されている。
【００２６】
ところで、図３に示したＮＣ装置１００の場合、第１サーボアンプ部にはＲＡＭ１２２を設けたのに対して、第２サーボアンプ部には専用の下位ＲＡＭを設けずに、共有ＲＡＭ１５０を兼用させることとした。従って、本発明でいう「下位ＲＡＭ」は、「共有ＲＡＭ」に含めて考えることもできるものである。つまり、本発明でいう下位ＲＡＭは必ずしも独立した存在である必要はない。
【００２７】
また、図３に示した波線矢印は、プログラム転送の流れを示したものである。つまり、上位ＲＯＭ１１３には、基板への実装前または実装後に、ＲＯＭライターにより必要なデータ（プログラム）が書込まれる。そして、その書込まれたプログラムの内で、下位ＣＰＵ１２１または下位ＣＰＵ１４１で実行されるプログラムは、それぞれ共有ＲＡＭ１３０または共有ＲＡＭ１５０に転送される。
【００２８】
図３では、本発明に係る要部のみを示したが、実際のＮＣ装置を構成する制御基板には多数のチップやユニットが集積して組込まれている。そのため、従来の制御基板では、高機能化に伴ってさらにチップ等を増加させることは困難であったが、本発明によれば、ＲＯＭを削減できる分、他のチップやユニットの搭載が可能となり、制御装置の大型化を回避しつつ、制御装置のさらなる高機能化を達成し得る。
【００２９】
【発明の効果】
本発明の制御装置によれば、ユニット数が増加しても下位ユニットのＲＯＭを削減できるため、ＲＯＭへのプログラムの書込み工数の低減、書込み時間の削減、デバイスコストの低減、チップの実装工数の低減または機種ＲＯＭの管理工数の低減等に伴うコストダウンや、実装面積の低減等に伴う制御装置の小型化等を図れる。
【図面の簡単な説明】
【図１】本発明に係る制御装置を概念的に示した模式図である。
【図２】本発明に係る制御装置に用いられた上位ＲＯＭに格納されたプログラムを階層的に示した説明図である。
【図３】本発明の実施形態に係るＮＣ装置の制御基板の要部を示した図である。
【図４】従来の制御装置を概念的に示した模式図である。
【符号の説明】
１１、１１１                上位ＣＰＵ
１３、１１３              （上位）ＲＯＭ
１２、１１２              （上位）ＲＡＭ
２１、１２１、１４１        下位ＣＰＵ
２２、１２２              （下位）ＲＡＭ
３０、１３０、１５０        共有ＲＡＭ
１００                      ＮＣ装置（制御装置）
【図１】
0003833897.tif 000002
【図２】
0003833897.tif 000003
【図３】
0003833897.tif 000004
【図４】
0003833897.tif 000005