(57)【特許請求の範囲】
【請求項１】
複数の制御基板と、
前記複数の制御基板にそれぞれ設けられた複数のＣＰＵと、
前記複数の制御基板の少なくとも何れか１つに設けられ前記複数のＣＰＵが共通にアクセス可能な共通ＲＡＭと、
前記共通ＲＡＭを有する制御基板とは別の制御基板であって、外部との入出力制御を司る入出力用制御基板に着脱可能に設けられた記憶手段と、
前記共通ＲＡＭを有する制御基板および前記入出力用制御基板とは別の制御基板に備えられ、少なくとも前記入出力用制御基板のＣＰＵがアクセス可能なメモリカードと、
前記共通ＲＡＭを有する制御基板の故障を検出する故障検出手段とを備え、
前記故障検出手段により前記共通ＲＡＭを有する制御基板の故障が検出されると、前記入出力用制御基板のＣＰＵは、前記メモリカードに保存されている情報を前記記憶手段に転送し記憶させるとともに、前記共通ＲＡＭに異常が発生している場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送せず、前記共通ＲＡＭに異常が発生していない場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送し記憶させることを特徴とする数値制御装置。
【請求項２】
前記共通ＲＡＭは、
前記共通ＲＡＭを有する制御基板のＣＰＵおよび前記入出力用制御基板のＣＰＵが共通にアクセス可能な第１の共通ＲＡＭと、
前記共通ＲＡＭを有する制御基板のＣＰＵおよび前記入出力用制御基板とは別の制御基板のＣＰＵが共通にアクセス可能な第２の共通ＲＡＭとから構成され、
前記第１の共通ＲＡＭおよび前記第２の共通ＲＡＭを有する制御基板のＣＰＵは、
前記故障検出手段として前記第２の共通ＲＡＭの故障を検出可能に構成されていることを特徴とする請求項１記載の数値制御装置。
【請求項３】
前記共通ＲＡＭを有する制御基板のＣＰＵが故障した場合は、
前記共通ＲＡＭを有する制御基板とは別の制御基板のＣＰＵが、前記故障検出手段として機能するように構成されていることを特徴とする請求項１または２に記載の数値制御装置。
【請求項４】
前記共通ＲＡＭに記憶される情報は工作機械を作動させるための情報であることを特徴とする請求項１ないし３の何れかに記載の数値制御装置。
【請求項５】
前記記憶手段に記憶された情報は前記共通ＲＡＭに転送可能に構成されていることを特徴とする請求項１ないし４の何れかに記載の数値制御装置。
【請求項６】
複数の制御基板と、
前記複数の制御基板にそれぞれ設けられた複数のＣＰＵと、
前記複数の制御基板の少なくとも何れか１つに設けられ前記複数のＣＰＵが共通にアクセス可能な共通ＲＡＭと、
前記共通ＲＡＭを有する制御基板とは別の制御基板であって、外部との入出力制御を司る入出力用制御基板に着脱可能に設けられた記憶手段と、
前記共通ＲＡＭを有する制御基板および前記入出力用制御基板とは別の制御基板に備えられ、少なくとも前記入出力用制御基板のＣＰＵがアクセス可能なメモリカードと、
を備えた数値制御装置に用いられる数値制御プログラムであって、
前記共通ＲＡＭを有する制御基板の故障を検出する故障検出ステップと、
前記故障検出ステップにより前記共通ＲＡＭを有する制御基板の故障が検出されると、前記メモリカードに保存されている情報を前記記憶手段に転送し記憶させるとともに、前記共通ＲＡＭに異常が発生している場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送せず、前記共通ＲＡＭに異常が発生していない場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送し記憶させる転送記憶ステップとを備えてなることを特徴とする数値制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の制御基板にそれぞれ設けられた複数のＣＰＵおよびこれら複数のＣＰＵが共通にアクセス可能な共通ＲＡＭを備えた数値制御装置および数値制御プログラムに関する。
【背景技術】
【０００２】
この種の数値制御装置は、例えば制御機能ごとに複数のＣＰＵを備え、これら複数のＣＰＵがそれぞれ異なる複数の制御基板に実装された構成となっている。
例えば特許文献１には、図９に示すように、工作機械の動作を制御する数値制御装置１０１において、工作機械の動作全体の制御を司るマスターＣＰＵ１０２、ワーク加工の制御を司るスレーブＣＰＵ１０３および自動工具交換の制御を司る自動工具交換ＣＰＵ１０４を備えた構成が開示されている。
【０００３】
これらＣＰＵ１０２〜１０４には、制御実行中のデータなどを一時的に記憶するためのＲＡＭ１０５〜１０８、制御プログラムなどが格納されたＲＯＭ１０９〜１１１、各種モータ、各種入出力装置などがそれぞれ接続されている。
また、マスターＣＰＵ１０２およびスレーブＣＰＵ１０３には、これらＣＰＵ１０２，１０３が共通にアクセス可能な共通ＲＡＭ１１２が接続されており、マスターＣＰＵ１０２および自動工具交換ＣＰＵ１０４には、これらＣＰＵ１０２，１０４が共通にアクセス可能な共通ＲＡＭ１１３が接続されている。これら共通ＲＡＭ１１２，１１３には、ソフトウェア制御で使用するフラグ、画面情報、工作機械の動作情報、アラーム履歴、機械状態（工作機械の動作状態）などが記憶される。
【特許文献１】特開２００１−１０５２６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
複数の制御基板からなる数値制御装置において、制御基板が故障した場合には、当該故障した制御基板ごと交換することが行われている。ところが、上記のような共通ＲＡＭ１１２，１１３を有する制御基板が故障した場合には、工作機械の制御が不能となるばかりでなく、これら共通ＲＡＭ１１２，１１３にアクセスすることも不能となることから、当該共通ＲＡＭ１１２，１１３に記憶されている情報をバックアップすることができない。そのため、故障した制御基板を交換した後には、各種情報を手入力するなどして再設定や再調整をしなければならず、故障復旧のための操作に手間と時間がかかる。
【０００５】
本発明は、上記した事情に鑑みてなされたものであり、その目的は、複数のＣＰＵが共通にアクセス可能な共通ＲＡＭを有する制御基板が故障したとしても、当該故障した制御基板を交換後において、故障復旧のための操作性を向上することができる数値制御装置および数値制御プログラムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の数値制御装置は、複数の制御基板と、前記複数の制御基板にそれぞれ設けられた複数のＣＰＵと、前記複数の制御基板の少なくとも何れか１つに設けられ前記複数のＣＰＵが共通にアクセス可能な共通ＲＡＭと、前記共通ＲＡＭを有する制御基板とは別の制御基板であって、外部との入出力制御を司る入出力用制御基板に着脱可能に設けられた記憶手段と、前記共通ＲＡＭを有する制御基板および前記入出力用制御基板とは別の制御基板に備えられ、少なくとも前記入出力用制御基板のＣＰＵがアクセス可能なメモリカードと、前記共通ＲＡＭを有する制御基板の故障を検出する故障検出手段とを備え、前記故障検出手段により前記共通ＲＡＭを有する制御基板の故障が検出されると、前記入出力用制御基板のＣＰＵは、前記メモリカードに保存されている情報を前記記憶手段に転送し記憶させるとともに、前記共通ＲＡＭに異常が発生している場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送せず、前記共通ＲＡＭに異常が発生していない場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送し記憶させることに特徴を有する（請求項１の発明）。
【０００７】
【０００８】
また、前記共通ＲＡＭは、前記共通ＲＡＭを有する制御基板のＣＰＵおよび前記入出力用制御基板のＣＰＵが共通にアクセス可能な第１の共通ＲＡＭと、前記共通ＲＡＭを有する制御基板のＣＰＵおよび前記入出力用制御基板とは別の制御基板のＣＰＵが共通にアクセス可能な第２の共通ＲＡＭとから構成し、前記第１の共通ＲＡＭおよび前記第２の共通ＲＡＭを有する制御基板のＣＰＵは、前記故障検出手段として前記第２の共通ＲＡＭの故障を検出可能に構成することが好ましい（請求項２の発明）。
【０００９】
また、前記共通ＲＡＭを有する制御基板のＣＰＵが故障した場合は、前記共通ＲＡＭを有する制御基板とは別の制御基板のＣＰＵが、前記故障検出手段として機能するように構成することが好ましい（請求項３の発明）。
【００１０】
また、前記共通ＲＡＭに記憶される情報は工作機械を作動させるための情報とすることが好ましい（請求項４の発明）。
また、前記記憶手段に記憶された情報は前記共通ＲＡＭに転送可能に構成することが好ましい（請求項５の発明）。
【００１１】
本発明の数値制御プログラムは、複数の制御基板と、前記複数の制御基板にそれぞれ設けられた複数のＣＰＵと、前記複数の制御基板の少なくとも何れか１つに設けられ前記複数のＣＰＵが共通にアクセス可能な共通ＲＡＭと、前記共通ＲＡＭを有する制御基板とは別の制御基板であって、外部との入出力制御を司る入出力用制御基板に着脱可能に設けられた記憶手段と、前記共通ＲＡＭを有する制御基板および前記入出力用制御基板とは別の制御基板に備えられ、少なくとも前記入出力用制御基板のＣＰＵがアクセス可能なメモリカードと、を備えた数値制御装置に用いられる数値制御プログラムであって、前記共通ＲＡＭを有する制御基板の故障を検出する故障検出ステップと、前記故障検出ステップにより前記共通ＲＡＭを有する制御基板の故障が検出されると、前記メモリカードに保存されている情報を前記記憶手段に転送し記憶させるとともに、前記共通ＲＡＭに異常が発生している場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送せず、前記共通ＲＡＭに異常が発生していない場合には当該共通ＲＡＭに記憶されている情報を前記記憶手段に転送し記憶させる転送記憶ステップとを備えてなることに特徴を有する（請求項６の発明）。
【発明の効果】
【００１２】
本発明によれば、複数のＣＰＵが共通にアクセス可能な共通ＲＡＭを有する制御基板の故障が検出されると、当該共通ＲＡＭに記憶されている情報が、故障した制御基板（共通ＲＡＭを有する制御基板）とは別の制御基板に設けられた記憶手段に転送され記憶される。
これにより、共通ＲＡＭを有する制御基板が故障したとしても、当該故障した制御基板を交換後に、記憶手段に記憶されている情報を利用して再設定や再調整を行うことができ、故障復旧のための操作性を向上することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態について図１ないし図８を参照しながら説明する。
図１は、例えば工作機械（図示せず）の動作を制御する数値制御装置１の基板構成を示すブロック図である。数値制御装置１は、ＮＣ基板（数値制御基板）２と、ＳＶＩＦ基板（サーボインターフェース基板）３と、ローカル基板（入出力用制御基板）４とを備えて構成されている。これらＮＣ基板２，ＳＶＩＦ基板３，ローカル基板４は何れも制御基板に相当する。ＮＣ基板２には、工作機械の動作全体の制御を司るメインＣＰＵ５（故障検出手段に相当）が設けられ、ＳＶＩＦ基板３には、ワーク加工の制御を司るスレーブＣＰＵ６（故障検出手段に相当）が設けられ、ローカル基板４には、ファイル転送、通信、画面表示など外部との入出力制御を司るローカルＣＰＵ７（故障検出手段に相当）が設けられている。これらＮＣ基板２，ＳＶＩＦ基板３，ローカル基板４は、図２に示すように、コネクタ４ａなどを介して互いに接続されるようになっている。
【００１４】
ＮＣ基板２には、メインＣＰＵ５を中心として、メインＲＯＭ８、メインＲＡＭ９、第１の共通ＲＡＭに相当するメイン−ローカル共通ＲＡＭ１０および第２の共通ＲＡＭに相当するメイン−スレーブ共通ＤＲＡＭ（Dynamic ＲＡＭ）１１が備えられている。メインＣＰＵ５は、メインＲＯＭ８に格納されている工作機械制御用のソフトウェア（数値制御プログラム）をメインＲＡＭ９にアクセス（参照や書き込み）しながら実行することにより、工作機械の動作全般を制御するようになっている。
【００１５】
メイン−ローカル共通ＲＡＭ１０は、メイン−ローカル共通ＳＲＡＭ（Static ＲＡＭ）１２と、メイン−ローカル共通ＤＲＡＭ（Dynamic ＲＡＭ）１３とから構成されている。これらメイン−ローカル共通ＳＲＡＭ１２およびメイン−ローカル共通ＤＲＡＭ１３には、メインＣＰＵ５およびローカルＣＰＵ７が接続されており、これらメインＣＰＵ５，ローカルＣＰＵ７が共通にアクセス可能となっている。
【００１６】
メイン−ローカル共通ＤＲＡＭ１３には、工作機械を作動させるための情報として、数値制御装置１が制御実行中に使用する情報（例えばソフトウェア制御で使用するフラグ（後述のフラグ１，２など）、画面情報、工作機械の動作情報など）が格納されるようになっている。このメイン−ローカル共通ＤＲＡＭ１３に格納された情報は、数値制御装置１の電源がオフされると消去されるようになっている。
【００１７】
メイン−ローカル共通ＳＲＡＭ１２には、高速に動作する特性および電力供給のある間は情報を保持する特性を有したＳＰＲＡＭ（ソフトプロテクトＲＡＭ）領域と高速に動作する特性を有したＮＰＲＡＭ（ノンプロテクトＲＡＭ）領域とが設けられている。
ＳＰＲＡＭ領域には、工作機械を作動させるための情報として、保存する必要がある情報（アラーム履歴や機械状態（工作機械の動作状態）など）が格納されるようになっており、このＳＰＲＡＭ領域に格納された情報は、数値制御装置１の電源がオフされても、電池（図示せず）からの電力供給により保持されるようになっている。また、ＮＰＲＡＭ領域には、工作機械を作動させるための情報として、高頻度または高速でアクセスを行う必要がある情報（例えばユーザパラメータ、機械パラメータなど）が格納されるようになっている。
【００１８】
ここで、機械パラメータは、工作機械の特性を示すものであり、具体的には、工作機械の稼動領域、主軸の最高回転数、ボールネジの長さ、工具交換に関するタイムアウト時間、工作機械ごとに生じるガタを補正するためのデータなど約２０００種程度のパラメータを設定可能となっている。この機械パラメータは、工作機械特有に定まるものであり、その設定内容は変更できないようになっている。ユーザパラメータは、ユーザにより設定可能となっており、具体的には、復旧パラメータ（後述する自動データ復旧を可能な状態とするか否かを設定するパラメータ）、表示灯の点灯条件、使用する数値制御プログラムの番号、座標の表示形態（例えばＺ軸の表示において工具長を加味するか否か）など約１０００種程度のパラメータを設定可能となっている。
【００１９】
メイン−スレーブ共通ＤＲＡＭ１１には、メインＣＰＵ５およびスレーブＣＰＵ６が接続されており、これらメインＣＰＵ５およびスレーブＣＰＵ６が共通にアクセス可能となっている。このメイン−スレーブ共通ＤＲＡＭ１１には、工作機械を作動させるための情報として、数値制御装置１が制御実行中に使用する情報（後述のフラグ３，４など）が格納されるようになっている。なお、このメイン−スレーブ共通ＤＲＡＭ１１には、スレーブＲＯＭ１４が接続されており、スレーブＣＰＵ６は、当該スレーブＲＯＭ１４を介してメイン−スレーブ共通ＤＲＡＭ１１にアクセス可能となっている。
【００２０】
ＳＶＩＦ基板３には、メモリカード１５およびスレーブＲＡＭ１６が備えられている。メモリカード１５には、ローカルＣＰＵ７が接続されており、当該ローカルＣＰＵ７がメモリカード１５にアクセス可能となっている。なお、このメモリカード１５は、ローカルＣＰＵ７，メイン−ローカル共通ＲＡＭ１０を介してメインＣＰＵ５にも接続されており、当該メインＣＰＵ５がアクセス可能となっている。即ち、本実施形態では、メモリカード１５は、メインＣＰＵ５およびローカルＣＰＵ７が共通にアクセス可能な共通ＲＡＭとしても機能するようになっている。スレーブＲＡＭ１６には、スレーブＣＰＵ６が接続されており、当該スレーブＣＰＵ６がアクセス可能となっている。
【００２１】
スレーブＣＰＵ６には、Ｘ軸モータ１７、Ｙ軸モータ１８、Ｚ軸モータ１９および主軸モータ２０が接続されている。スレーブＣＰＵ６は、これらＸ軸モータ１７，Ｙ軸モータ１８，Ｚ軸モータ１９，主軸モータ２０の駆動を制御することにより、ワーク（被加工物）が取り付けられるワークテーブル（図示せず）をＸ−Ｙ方向（水平方向）およびＺ方向（上下方向）に移動させ、所定の工具による加工動作を実行するようになっている。
【００２２】
メモリカード１５には、ファイル転送、通信、画面表示など外部との入出力制御のためのプログラムと、ユーザパラメータ、機械パラメータ、ワークカウント数（工作機械で加工したワークの数）、工具に関するデータ（工具長、工具径、工具の予測寿命と現在値）など各種情報とが保存される。
【００２３】
ローカル基板４には、ローカルＲＡＭ２３が備えられている。ローカルＲＡＭ２３には、ローカルＣＰＵ７が接続されており、当該ローカルＣＰＵ７がアクセス可能となっている。ローカルＣＰＵ７には、各種情報を入力するためのキーボード２４、各種情報（アラーム情報、入力情報、動作情報など）を表示するためのＣＲＴ２５および各種情報の通信を行うためのシリアルインターフェース２６が接続されている。また、ローカル基板４（メイン−ローカル共通ＲＡＭ１０を有する制御基板とは別の制御基板に相当）には、ＵＳＢ端子（図示せず）を介してＵＳＢ２７（記憶手段に相当）が着脱可能に構成されている。このＵＳＢ２７は、ローカルＣＰＵ７に接続されるようになっており、当該ローカルＣＰＵ７は、ＵＳＢ２７への各種情報の読み書きが可能となっている。
【００２４】
次に、本実施形態の作用について図３ないし図８を参照しながら説明する。ここでは、ＮＣ基板２に異常が生じ、工作機械に電源が投入されても当該工作機械を起動できない場合（例えばＮＣ基板２が故障した場合、ＮＣ基板２上の各種情報が壊れている場合、ソフトウェアのバージョンが異なり整合性が取れない場合など）について説明する。この場合、数値制御装置１は、ＮＣ基板２のエラーチェック処理（故障検出処理）を実行するとともに、当該エラーチェック処理の結果に応じてバックアップ処理を実行する。図３ないし図７は、その処理内容を示すフローチャートである。
【００２５】
図３に示すように、数値制御装置１は、この処理を開始すると、クリア処理（ステップＳ１）を実行する。このクリア処理では、数値制御装置１は、メイン−ローカル共通ＤＲＡＭ１３のフラグ１，２を０クリア（「０」を書き込み）するとともに、メイン−スレーブ共通ＤＲＡＭ１１のフラグ３，４を０クリアする。続いて、数値制御装置１は、エラーチェック処理として、
（１）メインＲＯＭ／ＲＡＭチェック（ステップＳ２）
（２）スレーブＲＯＭ／ＲＡＭチェック（ステップＳ３）
（３）共有ＲＡＭチェック（ステップＳ４）
を順に実行する。
ここで、これらステップＳ２〜Ｓ４の処理内容について図４ないし図６を参照しながら説明する。
【００２６】
（１）メインＲＯＭ／ＲＡＭチェック
図４に示すように、このメインＲＯＭ／ＲＡＭチェックでは、メインＣＰＵ５が実行するメインチェック処理（メインＲＯＭ８およびメインＲＡＭ９のエラーチェック）と、ローカルＣＰＵ７が実行するバックアップ処理とが並列的に実行される。
【００２７】
まず、メインチェック処理について説明する。
メインＣＰＵ５は、メインＲＯＭ８のエラーチェック（メインＲＯＭ８が正常か否か）を行う（ステップＳ１１）。メインＲＯＭ８が異常である場合（ステップＳ１１：ＮＯ）、メインＣＰＵ５は、ステップＳ１２に移行して、フラグ１にメインＲＯＭ８が異常であることを示す「１」を書き込み、このメインチェック処理を終了する。一方、メインＲＯＭ８が正常である場合（ステップＳ１１：ＹＥＳ）、メインＣＰＵ５は、ステップＳ１３に移行して、メインＲＡＭ９のエラーチェック（メインＲＡＭ９が正常か否か）を行う。
【００２８】
メインＲＡＭ９が異常である場合（ステップＳ１３：ＮＯ）、メインＣＰＵ５は、ステップＳ１４に移行して、フラグ１にメインＲＡＭ９が異常であることを示す「２」を書き込み、このメインチェック処理を終了する。一方、メインＲＡＭ９が正常である場合（ステップＳ１３：ＹＥＳ）、メインＣＰＵ５は、ステップＳ１５に移行して、フラグ２にメインチェックが正常終了したこと（メインＲＡＭ９、メインＲＯＭ８ともに正常であること）を示す「１」を書き込み、このメインチェック処理を終了する。
【００２９】
次に、バックアップ処理について説明する。
ローカルＣＰＵ７は、タイムアウトカウンタの初期化を実行すると（ステップＳ２１）、ステップＳ２２に移行して、メインＣＰＵ５によるメインチェック処理の完了待ち状態となる。このとき、ローカルＣＰＵ７は、メインチェック完了後のフラグ２に「１」が書き込まれているか否かを判断する。フラグ２に「１」が書き込まれている場合（ステップＳ２２：ＹＥＳ）、ローカルＣＰＵ７は、このメインＲＯＭ／ＲＡＭチェックを正常終了する。一方、フラグ２に「１」が書き込まれていない場合（ステップＳ２２：ＮＯ）、ローカルＣＰＵ７は、ステップＳ２３に移行して、フラグ１に「０」以外の値が書き込まれているか否か、即ち、メインＲＡＭ９またはメインＲＯＭ８に異常が発生しているか否かを判断する。
【００３０】
フラグ１に「０」以外の値が書き込まれている場合（ステップＳ２３：ＹＥＳ）、ローカルＣＰＵ７は、ステップＳ２４に移行して、アラーム／バックアップ処理を実行する。このアラーム／バックアップ処理の内容については後述する。一方、フラグ１に「０」が書き込まれている場合（ステップＳ２３：ＮＯ）、ローカルＣＰＵ７は、ステップＳ２５に移行して、１秒間待ち状態となるとともに、タイムアウトカウンタを１増加させる。そして、ステップＳ２６に移行して、タイムアウトカウンタが１０以上であるか否かを判断する。
【００３１】
タイムアウトカウンタが１０未満である場合（ステップＳ２６：ＮＯ）、ローカルＣＰＵ７は、ステップＳ２２に戻り、再びメインチェック処理の完了待ち状態となるとともに、メインチェック完了後のフラグ２に「１」が書き込まれているか否かを判断する。一方、タイムアウトカウンタが１０以上である場合（ステップＳ２６：ＹＥＳ）、ローカルＣＰＵ７は、ステップＳ２７に移行して、フラグ１にメイン立ち上げできない旨を示す「３」を書き込む。そして、ステップＳ２４に移行して、アラーム／バックアップ処理（後述）を実行する。
【００３２】
（２）スレーブＲＯＭ／ＲＡＭチェック
図５に示すように、このスレーブＲＯＭ／ＲＡＭチェックでは、スレーブＣＰＵ６が実行するスレーブチェック処理（スレーブＲＯＭ１４、スレーブＲＡＭ１６およびメイン−スレーブ共通ＤＲＡＭ１１のエラーチェック）と、メインＣＰＵ５が実行するバックアップ処理とが並列的に実行される。
【００３３】
まず、スレーブチェック処理について説明する。
スレーブＣＰＵ６は、スレーブＲＯＭ１４のエラーチェック（スレーブＲＯＭ１４が正常か否か）を行う（ステップＳ３１）。スレーブＲＯＭ１４が異常である場合（ステップＳ３１：ＮＯ）、スレーブＣＰＵ６は、ステップＳ３２に移行して、フラグ３にスレーブＲＯＭ１４が異常であることを示す「４」を書き込み、このスレーブチェック処理を終了する。一方、スレーブＲＯＭ１４が正常である場合（ステップＳ３１：ＹＥＳ）、スレーブＣＰＵ６は、ステップＳ３３に移行して、スレーブＲＡＭ１６のエラーチェック（スレーブＲＡＭ１６が正常か否か）を行う。
【００３４】
スレーブＲＡＭ１６が異常である場合（ステップＳ３３：ＮＯ）、スレーブＣＰＵ６は、ステップＳ３４に移行して、フラグ３にスレーブＲＡＭ１６が異常であることを示す「５」を書き込み、このスレーブチェック処理を終了する。一方、スレーブＲＡＭ１６が正常である場合（ステップＳ３３：ＹＥＳ）、スレーブＣＰＵ６は、ステップＳ３５に移行して、メイン−スレーブ共通ＤＲＡＭ１１のエラーチェック（メイン−スレーブ共通ＤＲＡＭ１１が正常か否か）を行う。
【００３５】
メイン−スレーブ共通ＤＲＡＭ１１が異常である場合（ステップＳ３５：ＮＯ）、スレーブＣＰＵ６は、ステップＳ３６に移行して、フラグ３にメイン−スレーブ共通ＤＲＡＭ１１が異常であることを示す「６」を書き込み、このスレーブチェック処理を終了する。一方、メイン−スレーブ共通ＤＲＡＭ１１が正常である場合（ステップＳ３５：ＹＥＳ）、スレーブＣＰＵ６は、ステップＳ３７に移行して、フラグ４にスレーブチェックが正常終了したこと（スレーブＲＯＭ１４、スレーブＲＡＭ１６、メイン−スレーブ共通ＤＲＡＭ１１ともに正常であること）を示す「２」を書き込み、このスレーブチェック処理を終了する。
【００３６】
次に、バックアップ処理について説明する。
メインＣＰＵ５は、タイムアウトカウンタの初期化を実行すると（ステップＳ４１）、ステップＳ４２に移行して、スレーブＣＰＵ６によるスレーブチェック処理の完了待ち状態となる。このとき、メインＣＰＵ５は、スレーブチェック完了後のフラグ４に「２」が書き込まれているか否かを判断する。フラグ４に「２」が書き込まれている場合（ステップＳ４２：ＹＥＳ）、メインＣＰＵ５は、このスレーブＲＯＭ／ＲＡＭチェックを正常終了する。一方、フラグ４に「２」が書き込まれていない場合（ステップＳ４２：ＮＯ）、メインＣＰＵ５は、ステップＳ４３に移行して、フラグ３に「０」以外の値が書き込まれているか否か、即ち、スレーブＲＯＭ１４、スレーブＲＡＭ１６、メイン−スレーブ共通ＤＲＡＭ１１の何れかに異常が発生しているか否かを判断する。
【００３７】
フラグ３に「０」以外の値が書き込まれている場合（ステップＳ４３：ＹＥＳ）、メインＣＰＵ５は、ステップＳ４４に移行して、フラグ３の値をフラグ１にコピーする。そして、ステップＳ４５に移行して、アラーム／バックアップ処理（後述）を実行する。一方、フラグ３に「０」が書き込まれている場合（ステップＳ４３：ＮＯ）、メインＣＰＵ５は、ステップＳ４６に移行して、１秒間待ち状態となるとともに、タイムアウトカウンタを１増加させる。そして、ステップＳ４７に移行して、タイムアウトカウンタが１０以上であるか否かを判断する。
【００３８】
タイムアウトカウンタが１０未満である場合（ステップＳ４７：ＮＯ）、メインＣＰＵ５は、ステップＳ４２に戻り、再びスレーブチェック処理の完了待ち状態となるとともに、スレーブチェック完了後のフラグ４に「２」が書き込まれているか否かを判断する。一方、タイムアウトカウンタが１０以上である場合（ステップＳ４７：ＹＥＳ）、メインＣＰＵ５は、ステップＳ４８に移行して、フラグ３にスレーブ立ち上げできない旨を示す「７」を書き込む。そして、ステップＳ４４に移行して、フラグ３の値をフラグ１にコピーし、ステップＳ４５に移行して、アラーム／バックアップ処理（後述）を実行する。
【００３９】
（３）共有ＲＡＭチェック
図６に示すように、このエラーチェックでは、メインＣＰＵ５が実行する共有ＲＡＭチェック処理（メイン−ローカル共通ＳＲＡＭ１２およびメイン−ローカル共通ＤＲＡＭ１３のエラーチェック）と、ローカルＣＰＵ７が記憶手段を有する制御基板のＣＰＵとして実行するバックアップ処理が並列的に実行される。
【００４０】
まず、共有ＲＡＭチェック処理について説明する。
メインＣＰＵ５は、メイン−ローカル共通ＳＲＡＭ１２のエラーチェック（メイン−ローカル共通ＳＲＡＭ１２が正常か否か）を行う（ステップＳ５１）。メイン−ローカル共通ＳＲＡＭ１２が異常である場合（ステップＳ５１：ＮＯ）、メインＣＰＵ５は、ステップＳ５２に移行して、フラグ１にメイン−ローカル共通ＳＲＡＭ１２が異常であることを示す「８」を書き込み、この共通ＲＡＭチェック処理を終了する。一方、メイン−ローカル共通ＳＲＡＭ１２が正常である場合（ステップＳ５１：ＹＥＳ）、メインＣＰＵ５は、ステップＳ５３に移行して、メイン−ローカル共通ＤＲＡＭ１３のエラーチェック（メイン−ローカル共通ＤＲＡＭ１３が正常であるか否か）を行う。
【００４１】
メイン−ローカル共通ＤＲＡＭ１３が異常である場合（ステップＳ５３：ＮＯ）、メインＣＰＵ５は、ステップＳ５４に移行して、フラグ１にメイン−ローカル共通ＤＲＡＭ１３が異常であることを示す「９」を書き込み、この共通ＲＡＭチェック処理を終了する。一方、メイン−ローカル共通ＤＲＡＭ１３が正常である場合（ステップＳ５３：ＹＥＳ）、メインＣＰＵ５は、ステップＳ５５に移行して、フラグ２に共通ＲＡＭチェックが正常終了したこと（メイン−ローカル共通ＳＲＡＭ１２、メイン−ローカル共通ＤＲＡＭ１３ともに正常であること）を示す「３」を書き込み、この共通ＲＡＭチェック処理を終了する。
【００４２】
次に、バックアップ処理について説明する。
ローカルＣＰＵ７は、タイムアウトカウンタの初期化を実行すると（ステップＳ６１）、ステップＳ６２に移行して、メインＣＰＵ５による共通ＲＡＭチェック処理の完了待ち状態となる。このとき、ローカルＣＰＵ７は、共通ＲＡＭチェック完了後のフラグ２に「３」が書き込まれているか否かを判断する。フラグ２に「３」が書き込まれている場合（ステップＳ６２：ＹＥＳ）、ローカルＣＰＵ７は、この共通ＲＡＭチェックを正常終了する。一方、フラグ２に「３」が書き込まれていない場合（ステップＳ６２：ＮＯ）、ローカルＣＰＵ７は、ステップＳ６３に移行して、フラグ１に「０」以外の値が書き込まれているか否か、即ち、メイン−ローカル共通ＳＲＡＭ１２またはメイン−ローカル共通ＤＲＡＭ１３に異常が発生しているか否かを判断する（故障検出ステップに相当）。
【００４３】
フラグ１に「０」以外の値が書き込まれている場合（ステップＳ６３：ＹＥＳ）、ローカルＣＰＵ７は、ステップＳ６４に移行して、アラーム／バックアップ処理（後述）を実行する。一方、フラグ１に「０」が書き込まれている場合（ステップＳ６３：ＮＯ）、ローカルＣＰＵ７は、ステップＳ６５に移行して、１秒間待ち状態となるとともに、タイムアウトカウンタを１増加させる。そして、ステップＳ６６に移行して、タイムアウトカウンタが１０以上であるか否かを判断する（故障検出ステップに相当）。
【００４４】
タイムアウトカウンタが１０未満である場合（ステップＳ６６：ＮＯ）、ローカルＣＰＵ７は、ステップＳ６２に戻り、再び共通ＲＡＭチェック処理の完了待ち状態となるとともに、共通ＲＡＭチェック完了後のフラグ２に「３」が書き込まれているか否かを判断する。一方、タイムアウトカウンタが１０以上である場合（ステップＳ６６：ＹＥＳ）、ローカルＣＰＵ７は、ステップＳ６７に移行して、フラグ１に共通ＲＡＭチェック処理がタイムアウトした旨を示す「１０」を書き込む。そして、ステップＳ６４に移行して、アラーム／バックアップ処理（後述）を実行する。
【００４５】
次に、上記のステップＳ２４，Ｓ４５，Ｓ６４において実行されるアラーム／バックアップ処理の内容について説明する。
図７に示すように、数値制御装置１は、このアラーム／バックアップ処理を開始すると、フラグ１に書き込まれている値に従いＣＲＴ２５にアラーム情報を表示する（ステップＳ７１）。このとき、数値制御装置１は、
フラグ１が「１」の場合は、「メインＲＯＭエラー」を表示し、
フラグ１が「２」の場合は、「メインＲＡＭエラー」を表示し、
フラグ１が「３」の場合は、「メイン立ち上げできない」を表示し、
フラグ１が「４」の場合は、「スレーブＲＯＭエラー」を表示し、
フラグ１が「５」の場合は、「スレーブＲＡＭエラー」を表示し、
フラグ１が「６」の場合は、「メイン−スレーブ共有ＲＡＭエラー」を表示し、
フラグ１が「７」の場合は、「スレーブ立ち上げできない」を表示し、
フラグ１が「８」の場合は、「メイン−ローカル共通ＳＲＡＭエラー」を表示し、
フラグ１が「９」の場合は、「メイン−ローカル共通ＤＲＡＭエラー」を表示し、
フラグ１が「１０」の場合は、「共有ＲＡＭチェックタイムアウト」を表示する。
【００４６】
次に、数値制御装置１は、ステップＳ７２に移行して、メモリカード１５に保存されている各種情報をＵＳＢ２７に転送し記憶（バックアップ）させる。この時、メモリカード１５の情報であることを識別できるように、数値制御装置１は、識別符号を付与してＵＳＢ２７に転送し記憶させる。そして、ステップＳ７３に移行して、フラグ１に「８」ないし「１０」の何れかが書き込まれているか否か、即ち、メイン−ローカル共通ＳＲＡＭ１２またはメイン−ローカル共通ＤＲＡＭ１３に異常が発生しているか否かを判断する。
【００４７】
フラグ１に「８」ないし「１０」の何れかが書き込まれている場合（ステップＳ７３：ＹＥＳ）、数値制御装置１は、このアラーム／バックアップ処理を終了する。即ち、この場合、ＵＳＢ２７には、メモリカード１５の情報のみがバックアップされ、異常の可能性があるメイン−ローカル共通ＳＲＡＭ１２およびメイン−ローカル共通ＤＲＡＭ１３の情報はバックアップされないようになっている。
【００４８】
一方、フラグ１に「８」，「９」，「１０」以外の値が書き込まれている場合（ステップＳ７３：ＮＯ）、数値制御装置１は、ステップＳ７４に移行して、メイン−ローカル共通ＲＡＭ１０（メイン−ローカル共通ＳＲＡＭ１２およびメイン−ローカル共通ＤＲＡＭ１３）に記憶されている情報をＵＳＢ２７に転送し記憶（バックアップ）させ（転送記憶ステップに相当）、このアラーム／バックアップ処理を終了する。このとき、メイン−ローカル共通ＲＡＭ１０に記憶されている情報であることを識別できるように、数値制御装置１は、識別符号を付与してＵＳＢ２７に転送し記憶させる。即ち、この場合、ＵＳＢ２７には、メモリカード１５の情報のみならずメイン−ローカル共通ＳＲＡＭ１２およびメイン−ローカル共通ＤＲＡＭ１３の情報も保存され、極力多くの情報がバックアップされるようになっている。
【００４９】
次に、故障したＮＣ基板２の交換後において、数値制御装置１が実行する自動データ復旧処理の内容について図８を参照して説明する。
ＮＣ基板２の交換後に工作機械に電源が投入されると、数値制御装置１は、ＮＣ基板２のエラーチェック処理（上述のメインＲＯＭ／ＲＡＭチェック、スレーブＲＯＭ／ＲＡＭチェック、共有ＲＡＭチェック）が正常に終了したか否かを判断する（ステップＳ８１）。
【００５０】
エラーチェック処理が正常終了していない場合（ステップＳ８１：ＮＯ）、数値制御装置１は、ステップＳ８２に移行して、例えばＣＲＴ２５に異常原因の対策（ＮＣ基板２の交換など）および電源再投入を促す旨のアラーム表示を行う。一方、エラーチェック処理が正常終了している場合（ステップＳ８１：ＹＥＳ）、数値制御装置１は、ステップＳ８３に移行して、ＵＳＢ２７に復旧データ（バックアップされた各種情報）が保存されているか否かを判断する。復旧データが保存されている場合（ステップＳ８３：ＹＥＳ）、数値制御装置１は、ステップＳ８４に移行して、自動データ復旧可能状態であるか否か（復旧パラメータが有効となっているか、または所定の復旧操作がされているか）を判断する。
【００５１】
自動データ復旧可能状態である場合（ステップＳ８４：ＹＥＳ）、数値制御装置１は、ステップＳ８５以降において自動データ復旧を行う。この自動データ復旧では、数値制御装置１は、ＵＳＢ２７にＳＲＡＭ情報（メイン−ローカル共通ＳＲＡＭ１２に格納すべき情報）が保存（バックアップ）されているか否かをＵＳＢ２７に記憶された識別符号によって判断する（ステップＳ８５）。ＳＲＡＭ情報が保存されている場合（ステップＳ８５：ＹＥＳ）、数値制御装置１は、ＵＳＢ２７のＳＲＡＭ情報をメイン−ローカル共通ＳＲＡＭ１２に転送（コピー）し（ステップＳ８６）、ステップＳ８７に移行する。一方、ＳＲＡＭ情報が保存されていない場合（ステップＳ８５：ＮＯ）、数値制御装置１は、そのままステップＳ８７に移行する。
【００５２】
数値制御装置１は、ステップＳ８７に移行すると、ＵＳＢ２７にメモリカード情報（メモリカード１５に格納すべき情報）が保存されているか否かをＵＳＢ２７に記憶された識別符号によって判断する。メモリカード情報が保存されている場合（ステップＳ８７：ＹＥＳ）、数値制御装置１は、ＵＳＢ２７のメモリカード情報をメイン−ローカル共通ＳＲＡＭ１２に転送（コピー）し（ステップＳ８８）、ステップＳ８９に移行する。一方、メモリカード情報が保存されていない場合（ステップＳ８７：ＮＯ）、数値制御装置１は、そのままステップＳ８９に移行する。
【００５３】
数値制御装置１は、ステップＳ８９に移行すると、ＵＳＢ２７に保存されている復旧データを削除する。そして、ステップＳ９０に移行して、メモリカード１５の情報（ＰＬＣソフトウェア、ユーザパラメータ、機械パラメータなど）をメイン−ローカル共通ＳＲＡＭ１２にコピーし、この自動データ復旧処理を正常に終了する。
【００５４】
なお、上記のステップＳ８３において復旧データが保存されていない場合（ＮＯ）およびステップＳ８４において自動データ復旧可能状態でない場合（ＮＯ）においても、数値制御装置１は、ステップＳ９０に移行して、メモリカード１５内の情報をメイン−ローカル共通ＳＲＡＭ１２にコピーする。
【００５５】
以上に説明したように本実施形態によれば、ＮＣ基板２（メインＣＰＵ５およびローカルＣＰＵ７が共通にアクセス可能なメイン−ローカル共通ＲＡＭ１０を有する制御基板）の故障が検出されると、当該メイン−ローカル共通ＲＡＭ１０に記憶されている情報が、ローカル基板４（故障したＮＣ基板２とは別の制御基板）に設けられたＵＳＢ２７に転送され記憶される。
【００５６】
これにより、メイン−ローカル共通ＲＡＭ１０を有するＮＣ基板２が故障したとしても、当該故障したＮＣ基板２を交換後に、ＵＳＢ２７に記憶されている情報を利用して再設定や再調整を行うことができ、数値制御装置１の故障復旧のための操作性を向上することができる。
【００５７】
ＵＳＢ２７の復旧データをメイン−ローカル共通ＳＲＡＭ１２に転送（図８中ステップＳ８６，Ｓ８８参照）した後に、当該復旧データをＵＳＢ２７から削除（ステップＳ８９参照）するようにした。これにより、数値制御装置１は、ＵＳＢ２７に復旧データが保存されているか否かを判断することで（ステップＳ８３参照）、前回の電源投入時に自動データ復旧が行われたか否かを把握することができ、電源投入のたびに自動データ復旧が余計に行われてしまうことを回避することができる。
【００５８】
なお、本発明は、上述の一実施形態にのみ限定されるものではなく、次のように変形または拡張できる。
図７に示すアラーム／バックアップ処理において、メイン−ローカル共通ＲＡＭ１０およびメモリカード１５の情報のみならず（ステップＳ７２，Ｓ７４）、メインＣＰＵ５およびスレーブＣＰＵ６が共通にアクセス可能なメイン−スレーブ共通ＤＲＡＭ１１の情報もＵＳＢ２７にバックアップするようにするとよい。
【００５９】
メイン−スレーブ共通ＤＲＡＭ１１のエラーチェック（図５中ステップ３５参照）は、スレーブＣＰＵ６が実行するのではなく、メインＣＰＵ５（第１の共通ＲＡＭおよび第２の共通ＲＡＭを有する制御基板のＣＰＵ）が実行するようにしてもよい。
【００６０】
メインＣＰＵ５の故障を検出するステップを設け、当該メインＣＰＵ５が故障した場合には、スレーブＣＰＵ６あるいはローカルＣＰＵ７が、故障検出手段として共有ＲＡＭチェック処理（図６中ステップＳ５１〜Ｓ５５参照）を実行するようにしてもよい。
【００６１】
工作機械を正常に起動できない場合のみならず正常に起動できる状態においても、数値制御装置１は、自動的にバックアップ処理を行うようにしてもよい。この場合、例えば、パラメータや設定により定められた所定の日時、前回のバックアップ処理から一定時間が経過したとき、電源の再投入回数が一定回数を超えたとき、数値制御プログラムの実行回数が一定回数を超えたとき、特定のアラームが発生したときなどに自動的にバックアップ処理を行うようにすることが可能である。
【００６２】
数値制御装置１は、工作機械が運転中であるか否かを判断可能に構成し、運転終了後に自動的にバックアップ処理を行うようにしてもよい。この構成によれば、工作機械の運転中では取得できない情報（例えば数値制御装置１が参照している情報）もバックアップすることができる。
【００６３】
バックアップ処理により自動的に保存する情報を選択できるように構成してもよい。この場合、例えばユーザによるキーボード２４の操作あるいは数値制御プログラムの設定により情報を選択可能に構成するとよい。この構成によれば、例えば、工作機械を全く起動できない場合には、保守データ（工作機械の復旧に必要な保障情報など）を選択してバックアップすることができ、故障の内容に応じて復旧に必要な情報のみをバックアップすることができる。また、故障が発生することなく前回のバックアップ処理から一定時間が経過した場合には、保守データ以外のデータを選択してバックアップすることができる。また、特定のアラームが発生した場合には、アラーム履歴および操作履歴を選択してバックアップすることもでき、この場合、特定のアラームをキーボード２４の操作などにより選択可能に構成してもよい。
【図面の簡単な説明】
【００６４】
【図１】本発明の一実施形態を示すものであり、数値制御装置の基板構成を示すブロック図
【図２】数値制御装置の全体構成を概略的に示す斜視図
【図３】ＮＣ基板異常時の処理内容を示すフローチャート
【図４】メインＲＯＭ／ＲＡＭチェックの内容を示すフローチャート
【図５】スレーブＲＯＭ／ＲＡＭチェックの内容を示すフローチャート
【図６】共通ＲＡＭチェックの内容を示すフローチャート
【図７】アラーム／バックアップ処理の内容を示すフローチャート
【図８】自動データ復旧処理の内容を示すフローチャート
【図９】従来技術を説明するための図１相当図
【符号の説明】
【００６５】
図面中、１は数値制御装置、２はＮＣ基板（制御基板）、３はＳＶＩＦ基板（制御基板）、４はローカル基板（制御基板、入出力用制御基板）、５はメインＣＰＵ（故障検出手段）、６はスレーブＣＰＵ（故障検出手段）、７はローカルＣＰＵ（故障検出手段）、１０はメイン−ローカル共通ＲＡＭ（第１の共通ＲＡＭ）、１１はメイン−スレーブ共通ＤＲＡＭ（第２の共通ＲＡＭ）、２７はＵＳＢ（記憶手段）を示す。
【図１】
0004821747.tif 000002
【図２】
0004821747.tif 000003
【図３】
0004821747.tif 000004
【図４】
0004821747.tif 000005
【図５】
0004821747.tif 000006
【図６】
0004821747.tif 000007
【図７】
0004821747.tif 000008
【図８】
0004821747.tif 000009
【図９】
0004821747.tif 000010