(57)【要約】【課題】起動に関わる設定を変更したことが原因で装置が起動完了しなくなった場合に、装置が起動しなくなった原因となる動作環境の変更を容易に特定でき、装置が起動しなくなる設定の変更を未然に防止できる数値制御装置を提供すること。【解決手段】数値制御装置１００は、起動可能な起動設定を格納する起動可能設定格納領域２１０と、起動完了しない原因となる起動設定値を記憶する誤設定検出データベース２２０とを備え、起動時に起動が完了した場合には現在の起動設定を起動可能な設定として起動可能設定格納領域２１０に格納し、起動が完了しなかった場合には原因となる起動設定値を誤設定検出データベース２２０に登録し、現在の設定を起動可能な設定へと復元して再起動する。また、起動設定を変更した際には誤設定検出データベース２２０を検索し、変更した起動設定と同一の起動設定が検索された場合には、検索された起動設定を出力する。【選択図】図３
2016021119.tif 000002
【特許請求の範囲】
【請求項１】
動作環境を設定する起動設定に基づいて起動を制御するプロセッサを備えた数値制御装置において、
前記数値制御装置が起動完了しない原因となる起動設定の設定値を記憶する誤設定検出データベースと、
前記数値制御装置が起動可能な起動設定を格納する起動可能設定記憶部と、
を備え、
前記数値制御装置の起動時に起動完了を判定する起動判定手段と、
前記起動判定手段が起動完了と判定した場合、現在の起動設定を起動可能設定データとして前記起動可能設定記憶部に格納するバックアップ手段と、
前記起動判定手段が起動完了しなかったと判定した場合、起動完了しない原因となった起動設定を検出し、前記誤設定検出データベースに登録する誤設定登録手段と、
前記起動可能設定記憶部に記憶された前記起動可能設定データに基づいて前記数値制御装置の現在の設定を起動可能な設定へと復元する起動設定復元手段と、
前記数値制御装置を再起動する再起動手段と、
前記数値制御装置の前記起動設定を変更した際に、前記変更した起動設定に基づいて前記誤設定検出データベースを検索し、前記変更した起動設定と同一の起動設定が検索された場合、前記検索された起動設定を出力する誤設定検索手段と、
を有することを特徴とする数値制御装置。
【請求項２】
前記起動判定手段、前記バックアップ手段、前記誤設定登録手段、前記起動設定復元手段、前記再起動手段の各手段は、前記数値制御装置の起動を制御するプロセッサとは異なるプロセッサ上で機能する、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記起動判定手段は、一定時間内に加工サイクルが１回完了した場合に起動完了したと判定する、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項４】
前記起動判定手段は、一定時間内に特定の信号が入力された場合に起動完了したと判定する、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項５】
前記起動判定手段は、一定時間内に前記数値制御装置に組み込まれているアプリケーションからの指令を受信した場合に起動完了したと判定する、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項６】
前記起動判定手段は、一定時間内にサーボモータの準備が完了した場合に起動完了したと判定する、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項７】
前記起動判定手段は、一定時間内にスピンドルモータの準備が完了した場合に起動完了したと判定する、
ことを特徴とする請求項１または２に載の数値制御装置。
【請求項８】
前記起動判定手段は、一定時間内にネットワーク通信の準備が完了した場合に起動完了したと判定する、
ことを特徴とする請求項１または２に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特に装置が起動しなくなった原因となる動作環境の変更を容易に特定できる数値制御装置に関する。
【背景技術】
【０００２】
数値制御装置（ＣＮＣ）において、起動に関わる設定を誤って変更したことにより数値制御装置が起動しなくなった場合、起動していた時にバックアップした設定を手動で数値制御装置にロードして、数値制御装置を起動できるようにしているが、その場合、バックアップした設定はバックアップした当時の設定値となっており、最新の設定値が反映されていないため、バックアップした設定をロードした後で一部の設定について再設定をやり直す必要があり、時間がかかるという課題があった。
【０００３】
このような課題を解決するために、最新の設定値が反映されている設定をバックアップする技術として、数値制御装置の電源投入時などに自動で設定を記憶装置にバックアップする技術が提案されている（例えば、特許文献１）。
【０００４】
図１４は、従来技術の実施形態を説明する図である。数値制御装置１００は、演算処理を行うプロセッサであるＣＰＵ１１０と、外部入力機器５００を制御する入力機器コントローラ１２０、数値制御装置１００の起動設定のバックアップを記憶している記憶装置２００を制御する記憶装置コントローラ１３０、ＲＡＭやＲＯＭなどのメモリ１４０、ＳＲＡＭなどで構成され数値制御装置１００の起動に関わる設定など記憶している不揮発性メモリ１５０、表示器３００を制御する表示コントローラ１６０、電源スイッチ６００からのオン・オフ信号により数値制御装置１００の電源をオン・オフ制御する電源コントローラ１７０、および、工作機械４００との信号の授受を制御する信号インタフェース１８０がバス１９０を介して接続される。
従来技術における数値制御装置１００は、電源スイッチ６００が操作されて電源が投入されると、現在数値制御装置に設定されている各設定の設定値を、自動的に記憶装置の設定値記憶領域にバックアップしている。
【０００５】
また、起動しなくなった装置を自動で復旧する技術として、コンピュータの動作環境を変更し再起動する場合に、変更前の動作環境をバックアップしておき起動できなくなったら変更前の動作環境を自動で復元する技術が提案されている（例えば、特許文献２）。
更に、設定を管理する技術として、デフォルトの設定とオペレータが変更した設定との差異をリストで管理する技術が提案されている（例えば、特許文献３）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０３−２８８２０８号公報
【特許文献２】特開平０５−３４１９６７号公報
【特許文献３】特開２０１１−１１８８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術には以下に説明する問題があった。
特許文献１に記載の技術では、数値制御装置の電源投入時などに自動で設定を記憶装置にバックアップすることで、最新の設定値が反映されている設定をバックアップしているが、誤った設定が存在する場合でも設定を無条件にバックアップしているため、記憶装置に誤った設定が記憶されてしまった場合、バックアップした設定をロードした後で従来通り一部の再設定をやり直す必要があるという問題があった。
【０００８】
また、特許文献２に記載の技術では、コンピュータの動作環境を変更し再起動する場合に、変更前の動作環境をバックアップしておくことで、起動しなくなった装置を自動で復旧しているが、単に自動的に復旧する処理をするだけでは起動しなくなった原因となる動作環境の変更を特定することが困難であるという問題があった。
更に、特許文献３に記載の技術では、設定の差異を検出できるが、変更した設定が正しいかを判別することや誤った設定への変更を防止することはできなかった。
【０００９】
そこで、本発明の目的は、起動に関わる設定を変更したことが原因で装置が起動完了しなくなった場合に、装置が起動しなくなった原因となる動作環境の変更を容易に特定できる数値制御装置を提供することである。
【課題を解決するための手段】
【００１０】
本願の請求項１に係る発明は、動作環境を設定する起動設定に基づいて起動を制御するプロセッサを備えた数値制御装置において、前記数値制御装置が起動完了しない原因となる起動設定の設定値を記憶する誤設定検出データベースと、前記数値制御装置が起動可能な起動設定を格納する起動可能設定記憶部と、を備え、前記数値制御装置の起動時に起動完了を判定する起動判定手段と、前記起動判定手段が起動完了と判定した場合、現在の起動設定を起動可能設定データとして前記起動可能設定記憶部に格納するバックアップ手段と、前記起動判定手段が起動完了しなかったと判定した場合、起動完了しない原因となった起動設定を検出し、前記誤設定検出データベースに登録する誤設定登録手段と、前記起動可能設定記憶部に記憶された前記起動可能設定データに基づいて前記数値制御装置の現在の設定を起動可能な設定へと復元する起動設定復元手段と、前記数値制御装置を再起動する再起動手段と、前記数値制御装置の前記起動設定を変更した際に、前記変更した起動設定に基づいて前記誤設定検出データベースを検索し、前記変更した起動設定と同一の起動設定が検索された場合、前記検索された起動設定を出力する誤設定検出手段と、を有することを特徴とする数値制御装置である。
【００１１】
本願請求項２に係る発明は、前記起動判定手段、前記バックアップ手段、前記誤設定登録手段、前記起動設定復元手段、前記再起動手段の各手段が、前記数値制御装置の起動を制御するプロセッサとは異なるプロセッサ上で機能する、ことを特徴とする請求項１に記載の数値制御装置である。
【００１２】
本願請求項３に係る発明は、前記起動判定手段が、一定時間内に加工サイクルが１回完了した場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願請求項４に係る発明は、前記起動判定手段が、一定時間内に特定の信号が入力された場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願請求項５に係る発明は、前記起動判定手段が、一定時間内に前記数値制御装置に組み込まれているアプリケーションからの指令を受信した場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願請求項６に係る発明は、前記起動判定手段が、一定時間内にサーボモータの準備が完了した場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願請求項７に係る発明は、前記起動判定手段が、一定時間内にスピンドルモータの準備が完了した場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願請求項８に係る発明は、前記起動判定手段が、一定時間内にネットワーク通信の準備が完了した場合に起動完了したと判定する、ことを特徴とする請求項１または２に記載の数値制御装置である。
【発明の効果】
【００１３】
本発明により、起動に関わる設定を変更したことが原因で装置が起動完了しなくなった際に、現在の設定から誤設定を検出して誤設定検出データベースに登録し、現在の設定を起動可能な設定へと復元して再起動し、再起動後に登録した誤設定をオペレータに提示することで、装置が起動しなくなった原因となる動作環境の変更を容易に特定できる。
また、起動に関わる設定を変更した際に誤設定検出データベースを参照することで、起動しなくなる原因となる誤設定を検出してオペレータに警告することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態における数値制御装置の要部ブロック図である。
【図２】本発明の実施の形態における数値制御装置の起動成功時の動作概要図である。
【図３】本発明の実施の形態における数値制御装置の起動失敗時の動作概要図である。
【図４】本発明の実施の形態における数値制御装置の再起動時の動作概要図である。
【図５】本発明の実施の形態における数値制御装置の起動時の処理を示すフローチャートである。
【図６】本発明の実施の形態における数値制御装置の設定変更時の動作概要図である。
【図７】本発明の実施の形態における数値制御装置の設定変更時の処理を示すフローチャートである。
【図８】本発明の実施の形態における誤設定検出データベース登録処理の動作概要図である。
【図９】本発明の実施の形態における数値制御装置の誤設定検出データベース登録処理のフローチャートである。
【図１０】本発明の実施の形態における数値制御装置の誤設定検索処理の動作概要図である。
【図１１】本発明の実施の形態における数値制御装置の誤設定検索処理のフローチャートである。
【図１２】本発明の実施の形態における数値制御装置をマルチプロセッサ構成とした場合における要部ブロック図である。
【図１３】本発明の実施の形態における数値制御装置の他の実施の形態における要部ブロック図である。
【図１４】従来技術における数値制御装置の要部ブロック図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面と共に説明する。なお、従来技術と同一または類似する構成は同じ符号を用いて説明する。
図１は、本発明に係る実施形態の数値制御装置の要部ブロック図である。数値制御装置１００は、従来技術における数値制御装置と同様に、演算処理を行うプロセッサであるＣＰＵ１１０と、外部入力機器５００を制御する入力機器コントローラ１２０、記憶装置２００を制御する記憶装置コントローラ１３０、ＲＡＭやＲＯＭなどのメモリ１４０、ＳＲＡＭなどで構成され数値制御装置１００の起動に関わる設定など記憶している不揮発性メモリ１５０、表示器３００を制御する表示コントローラ１６０、電源スイッチ６００からのオン・オフ信号により数値制御装置１００の電源をオン・オフ制御する電源コントローラ１７０、および、工作機械４００との信号の授受を制御する信号インタフェース１８０がバス１９０を介して接続される。
【００１６】
本実施の形態の記憶装置２００は、起動可能設定格納領域２１０と、誤設定検出データベース２２０を備えている。
起動可能設定格納領域２１０には、数値制御装置１００を起動する際に、数値制御装置１００の起動が完了した時点での数値制御装置１００の起動に関わる設定がバックアップされている。すなわち、起動可能設定格納領域２１０には、常に数値制御装置１００が起動可能な設定が格納される。
一方で、誤設定検出データベース２２０には、数値制御装置１００を起動する際に、数値制御装置１００の起動が正常に行われなかった場合における数値制御装置１００の起動に関わる設定を蓄積して管理するデータベースである。
【００１７】
本実施の形態の数値制御装置１００の起動時の動作について、図２〜５を用いて説明する。
図２は、本実施の形態の数値制御装置１００が起動に成功した場合の動作の概要を示している。図２に示すように、本実施の形態の数値制御装置１００上では、数値制御装置１００の起動を制御するタスクとして、制御タスクと起動判定処理を有するタスク（以下、起動判定タスク）が動作している。数値制御装置１００の起動に成功した場合、各タスクは以下の手順で動作する。
●［ＳＡ０１］電源コントローラ１７０をオペレータが操作するなどして数値制御装置１００が起動を開始すると、制御タスクから起動判定タスクに対して起動処理を開始したことを示す起動開始信号が送信される。
●［ＳＡ０２］数値制御装置１００の起動処理が完了すると、制御タスクから起動判定タスクに対して起動処理が完了したことを示す起動完了信号が送信される。
●［ＳＡ０３］起動判定タスクは、制御タスクから起動開始信号を受信した後、一定時間内に起動完了信号を受信した場合、数値制御装置の起動が完了したと判定する。なお、起動完了を判定する条件としては、工作機械の加工サイクルが１回完了した場合、工作機械などからＰＭＣなどを介して起動完了信号などの特定の信号が入力された場合、数値制御装置１００に組み込まれているアプリケーションからの指令を受信した場合、サーボモータ、スピンドルモータが起動条件を満たし、励磁状態になったことを検出した場合、ネットワーク通信の接続が確立し、データの送受信が可能となった場合など、数値制御装置１００が利用できる状態になったと判断される条件であればどのような条件により判定してもよい。
●［ＳＡ０４］起動判定タスクは、現在数値制御装置１００に設定されている起動に関わる設定を、起動可能設定データとして記憶装置２００の起動可能設定格納領域２１０にバックアップする。
【００１８】
本実施の形態の数値制御装置１００は、このように動作することにより常に最新の設定値が反映された起動可能設定データをバックアップすることができる。
【００１９】
図３は、本実施の形態の数値制御装置１００が起動に失敗した場合の動作の概要を示している。数値制御装置１００の起動に失敗した場合、各タスクは以下の手順で動作する。
●［ＳＢ０１］電源コントローラ１７０をオペレータが操作するなどして数値制御装置１００が起動を開始すると、制御タスクから起動判定タスクに対して起動処理を開始したことを示す起動開始信号が送信される。
●［ＳＢ０２］起動判定タスクは、制御タスクから起動開始信号を受信した後、一定時間経過しても起動完了信号を受信できなかった場合、数値制御装置１００が正常に起動しなかったと判定する。
●［ＳＢ０３］起動判定タスクは、後述する処理手順により現在の起動に関わる設定から起動しない原因となった設定を検出し、誤設定検出データベース２２０に追加する。
●［ＳＢ０４］起動判定タスクは、記憶装置２００の起動可能設定格納領域２１０から、数値制御装置１００が起動可能設定データを取得して不揮発性メモリに１５０設定されている起動に関わる設定を復元する。
●［ＳＢ０５］起動判定タスクは、数値制御装置１００を再起動する。
【００２０】
図４は、図３の手順で再起動した数値制御装置１００の動作の概要を示している。数値制御装置１００の起動失敗後における最初の再起動時に、各タスクは以下の手順で動作する。
●［ＳＢ０６］数値制御装置１００の再起動時に、制御タスクから起動判定タスクに対して起動処理を開始したことを示す起動開始信号が送信される。
●［ＳＢ０７］数値制御装置１００の起動処理が完了すると、制御タスクから起動判定タスクに対して起動処理が完了したことを示す起動完了信号が送信される。
●［ＳＢ０８］起動判定タスクは、制御タスクから起動開始信号を受信した後、一定時間内に起動完了信号を受信した場合、数値制御装置の起動が完了したと判定する。
●［ＳＢ０９］制御タスクは、ＳＢ０３で検出した起動に関わる設定の差異を数値制御装置１００に接続されている表示器３００に表示する。
【００２１】
以下で、図２〜４で説明した数値制御装置１００の起動処理について、図５のフローチャートを用いて詳細に説明する。
＜制御タスクの処理フロー＞
●［Ｓ５０１］電源コントローラ１７０をオペレータが操作するなどして数値制御装置１００が起動を開始すると、制御タスクは、起動判定タスクに対して起動処理を開始したことを示す起動開始信号を送信する。
●［Ｓ５０２］制御タスクは、不揮発性メモリ１５０に記憶されている現在の起動に関わる設定を読み込んで、数値制御装置１００を起動する処理を実行する。
●［Ｓ５０３］Ｓ５０２の処理により、数値制御装置１００の起動が完了した場合、制御タスクは、起動判定タスクに対して起動処理を開始したことを示す起動完了信号を送信する。
●［Ｓ５０４］制御タスクは、今回の起動が誤設定に基づく再起動であるか否かを判定する。本判定処理は、例えば不揮発性メモリ１５０内に再起動を示すフラグなどを設けることで実現するようにしてもよい。今回の起動が誤設定に基づく再起動である場合にはＳ５０５へと進み、通常の起動である場合には制御タスクの処理を終了する。
●［Ｓ５０５］制御タスクは、誤設定検出データベース２２０から、前回起動時に誤設定検出データベース２２０に追加したデータを読み出し、誤設定と正設定との差異がわかるように数値制御装置１００に接続された表示器３００へと表示する。
【００２２】
＜起動判定タスクの処理フロー＞
●［Ｓ５１１］起動判定タスクは、制御タスクから起動開始信号を受信するまで待機する。制御タスクから起動開始信号を受信するとＳ５１２へと進む。
●［Ｓ５１２］起動判定タスクは、起動完了待ち時間を計測するためのタイマをスタートさせる。
●［Ｓ５１３］起動判定タスクは、起動完了信号を受信したか否かを判定する。起動完了信号を受信したらＳ５１４へと進み、起動完了信号が受信されていない場合にはＳ５１５へと進む。
●［Ｓ５１４］起動判定タスクは、起動完了信号を受信したら現在不揮発性メモリ１５０に設定されている設定を起動可能設定データとして記憶装置２００の起動可能設定格納領域２１０に格納する。
●［Ｓ５１５］起動判定タスクは、タイマの値を読み出し、起動完了待ち時間がタイムアップしたか否かを判定する。タイムアップしていない場合はＳ５１３へと進み、タイムアップした場合にはＳ５１６へと進む。
●［Ｓ５１６］起動判定タスクは、後述する処理手順により起動処理の状態から起動完了しない原因となったパラメータ群を検出して、検出したパラメータ群の中から設定を誤ったパラメータの値を誤設定検出データベース２２０に追加し、記憶装置２００の起動可能設定格納領域２１０に格納されている起動可能設定データに基づいて、現在の設定を起動可能となるように復元する。
●［Ｓ５１７］起動判定タスクは、Ｓ５１６で復元した設定に基づいて数値制御装置１００を再起動する。
【００２３】
本実施の形態の数値制御装置１００は、このように動作することにより起動に関わる設定を誤った設定に変更にした場合でも、数値制御装置１００を自動的に再起動させることができるので、緊急時における保守性が向上する。
また、誤った設定をしてしまった場合でも、起動に失敗した際の変更箇所を表示させることで、オペレータは起動しなくなった原因を特定し易くなり、再設定に必要となる時間を短縮させることができる。
【００２４】
図６は、本実施の形態の数値制御装置１００上でオペレータが設定を変更した際に、誤設定を検出する動作概要を示している。数値制御装置１００が誤動作を検出する場合、各タスクは以下の手順で動作する。
●［ＳＣ０１］オペレータが数値制御装置１００の設定を変更した場合、制御タスクは、後述する処理手順によりオペレータが変更した設定に基づいて誤設定検出データベース２２０を検索する。
●［ＳＣ０２］ＳＣ０１において誤設定検出データベース２２０と同じ設定が検索された場合、制御タスクは該当する設定を数値制御装置１００に接続された表示器３００の画面に表示する。
【００２５】
以下で、図６で説明した数値制御装置１００の起動処理について、図７のフローチャートを用いて詳細に説明する。
●［Ｓ７０１］制御タスクは、数値制御装置１００が備える操作盤（図示せず）などを介してオペレータより不揮発性メモリ１５０に記憶されている起動に関わる設定を変更する操作を受け付ける。
●［Ｓ７０２］制御タスクは、後述する処理手順によりオペレータが変更した設定に基づいて誤設定検出データベース２２０を検索する。
●［Ｓ７０３］Ｓ７０２においてオペレータが変更した設定と同じ設定が検索された場合はＳ７０４へと進み、検索されなかった場合は制御タスクによる設定変更処理を終了する。
●［Ｓ７０４］制御タスクは、誤設定検出データベース２２０より検索された設定を、数値制御装置１００に接続された表示器３００に表示する。
●［Ｓ７０５］制御タスクは、Ｓ７０４で表示した設定について、オペレータによる設定変更を受け付ける。
【００２６】
本実施の形態の数値制御装置１００は、このように動作することにより起動に関わる設定の変更時に以前と同じ設定の誤りを検出し、数値制御装置１００が起動しなくなることを防止している。
【００２７】
図８は、本実施の形態の数値制御装置１００における、誤設定パラメータの誤設定検出データベース２２０への登録処理の概要を説明する図である。
数値制御装置１００の起動に失敗した場合、最初に現在の設定の中で誤設定されていると推定されるパラメータ群を特定する。そして、誤設定されていると推定されるパラメータ群からそれぞれのパラメータを順に誤設定検出データベース２２０に設定するとともに、記憶装置２００の起動可能設定格納領域２１０に記憶されている、起動可能設定データから取得した設定値へと変更して起動可能かどうかを内部処理で判定し、起動しないと判定された場合には次の誤設定パラメータについて同様の処理を繰り返す。
【００２８】
以下で、図８で説明した誤設定検出データベース２２０への登録処理について、図９のフローチャートを用いて詳細に説明する。
●［Ｓ９０１］制御タスクの起動処理の進捗状態から起動完了しない原因となったパラメータ群を検出する。起動完了しない原因となったパラメータ群を検出する手法としては、例えば現在の設定の内で、記憶装置２００内の起動可能設定格納領域２１０に記憶されている起動可能設定データから変更されているパラメータを、起動完了しない原因となったパラメータ群として検出してもよいし、数値制御装置１００のシステムが出力するエラーに基づいて起動完了しない原因となったパラメータを検出してもよい。
●［Ｓ９０２］Ｓ９０１で検出された、起動完了しない原因となったパラメータ群に含まれる各パラメータについて、Ｓ９０３〜Ｓ９０６までの処理を繰り返し実行するために用いる変数であるインデックスｉを設定する。初期値は１とする。
●［Ｓ９０３］起動完了しない原因となったパラメータ群のｉ番目のパラメータのパラメータ番号ｎを取得する。
●［Ｓ９０４］不揮発メモリに設定されている現在の起動に関わる設定のうち、パラメータ番号ｎの設定値を誤設定検出データベース２２０へ登録する。
●［Ｓ９０５］不揮発メモリに設定されている現在の起動に関わる設定のうち、パラメータ番号ｎの設定値を、記憶装置２００の起動可能設定格納領域２１０に記憶されている起動可能設定データから取得した値へと変更する。
●［Ｓ９０６］装置の内部処理によりＳ９０５で変更を加えた現在の起動に関わる設定に基づいて数値制御装置１００が起動可能か否かを判定する。起動可能か否かの判定処理には、誤設定検出データベース２２０を検索する手法などを用いてもよい。起動可能であると判定された場合にはＳ９０９へと進み、起動不可能と判定された場合にはＳ９０７へと進む。
●［Ｓ９０７］インデックスｉの値をインクリメントする。
●［Ｓ９０８］インデックスｉの値がＳ９０１で検出された誤設定パラメータの数を超えた場合には、全ての検出された誤設定パラメータを誤設定検出データベースへ登録したことになるので、繰り返し処理を抜けてＳ９０９へと進み、そうでない場合にはＳ９０３へと戻る。
●［Ｓ９０９］今回の処理において誤設定検出データベース２２０に登録されたパラメータにグループ番号を付与してグループ化する。グループ番号はご設定検出データベースへの登録処理が実行される毎に異なる数値を付与し、１回の登録処理においてＳ９０３〜Ｓ９０８の処理が繰り返されて複数の誤設定パラメータが登録された場合には、当該複数の誤設定パラメータには同じグループ番号が付与される。
【００２９】
図１０は、本実施の形態の数値制御装置１００における、オペレータが変更した起動に関わる設定と、誤検出データベースとの比較処理の概要を説明する図である。
数値制御装置１００の操作盤（図示せず）などをオペレータが操作して、数値制御装置１００の起動に関わる設定を変更すると、設定を変更したパラメータと同じパラメータ番号が誤設定検出データベース２２０に登録されているか否かを、誤設定検出データベース２２０をパラメータ番号で検索することで判定する。
そして、同じパラメータ番号が登録されている場合には、変更したパラメータの設定値が誤設定検出データベース２２０に登録されている誤設定値と同一か否かを判定する。パラメータ番号が複数登録されている場合には、それぞれについて判定する。
【００３０】
また、変更したパラメータの設定値が誤設定検出データベース２２０に登録されている誤設定値と同一である場合には、検索されたパラメータと同じグループ番号が設定されている他のパラメータについても同様に、パラメータの設定値が誤設定値と同一か否か判定する。そして、すべての設定値が同一であるグループが誤設定検出データベースに登録されている場合には、現在の設定は誤設定であると判定する。
【００３１】
以下で、図１０で説明したオペレータが変更した起動に関わる設定と、誤検出データベースとの比較処理について、図１１のフローチャートを用いて詳細に説明する。
●［Ｓ１１０１］制御タスクは、オペレータが変更した設定のパラメータ番号ｎを取得する。
●［Ｓ１１０２］制御タスクは、Ｓ１１０１で取得したパラメータ番号ｎに基づいて誤設定検出データベースを検索する。
●［Ｓ１１０３］制御タスクは、誤設定フラグを論理値falseに設定する。
●［Ｓ１１０４］制御タスクは、誤設定検出データベースから検索された各パラメータについて、Ｓ１１０５〜Ｓ１１０７の繰り返し処理を実行する。
●［Ｓ１１０５］制御タスクは、パラメータ番号ｎのパラメータの設定値と、誤設定検出データベースから検索されたパラメータの誤設定値とを比較して一致するか否かを判断する。一致する場合にはＳ１１０６へ進み、一致しない場合には次の検索されたパラメータについて繰り返し処理を続ける。
●［Ｓ１１０６］制御タスクは、誤設定検出データベースから検索されたパラメータと同じグループの他のパラメータについて、他のパラメータの誤設定値が現在のパラメータの設定値と一致するか否かを判定する。他のパラメータがすべて一致する場合にはＳ１１０７へと進み、１つでも一致しないパラメータがある場合には次の検索されたパラメータについて繰り返し処理を続行する。
●［Ｓ１１０７］制御タスクは、現在の設定が誤設定であると判定し、誤設定フラグに論理値trueを設定する。
【００３２】
図１１で説明した処理を実行した後、誤設定フラグを参照することで現在の設定が誤設定であるか否かを検出することができる。誤設定フラグが論理値trueとなっている場合には、現在の設定が誤設定であると判定できる。
【００３３】
以上、１つのＣＰＵ１１０上で制御タスクと起動判定タスクを動作させる一例を示したが、本実施の形態では制御タスクと起動判定タスクとをそれぞれ独立のＣＰＵ上で動作させるように構成してもよい。図１２は、マルチプロセッサを備えた数値制御装置１００において、制御タスクをメインＣＰＵ７００上で動作させ、起動判定タスクをサブＣＰＵ７１０上で動作させた場合の本実施の形態の一例である。
このように構成することにより、メインＣＰＵ７００そのものがハングアップした場合であっても、サブＣＰＵ７１０で起動判定タスクを実行可能となり、緊急時の保守性が向上する。
【００３４】
図１３は、本発明の他の実施形態の数値制御装置を説明する図である。
図１３に示す数値制御装置１００は、電子計算機８００を備えている。電子計算機８００は、演算処理を行うプロセッサであるＣＰＵ８１０と、外部入力機器５００を制御する入力機器コントローラ８２０、記憶装置２００を制御する記憶装置コントローラ８３０、ＲＡＭやＲＯＭなどのメモリ８４０、表示器３００を制御する表示コントローラ８５０、電源スイッチ６１０からのオン・オフ信号により電子計算機８００の電源をオン・オフ制御する電源コントローラ８６０、および、数値制御装置１００とのデータの授受を制御する数値制御装置との通信コントローラ８７０がバス８８０を介して接続される。
【００３５】
通信コントローラ８７０上では起動判定タスクが動作しており、数値制御装置用のスイッチ６２０を制御することにより数値制御装置１００を再起動することができるように構成されている。また、数値制御装置１００上で動作する制御タスクから数値制御装置１００の起動開始信号、および起動完了信号を受信する。
このように構成することにより、数値制御装置１００がハングアップした場合であっても、電子計算機８００上で起動判定タスクを実行可能となり、緊急時の保守性が向上する。
【符号の説明】
【００３６】
１００    数値制御装置
１１０    ＣＰＵ
１２０    入力機器コントローラ
１３０    記憶装置コントローラ
１４０    メモリ
１５０    不揮発性メモリ
１６０    表示コントローラ
１７０    電源コントローラ
１８０    信号インタフェース
１９０    バス
２００    記憶装置
２１０    起動可能設定格納領域
２２０    誤設定検出データベース
３００    表示器
４００    工作機械
５００    外部入力機器
６００    電源スイッチ
６１０    パソコン用電源スイッチ
６２０    数値制御装置用電源スイッチ
８００    電子計算機
８１０    ＣＰＵ
８２０    入力機器コントローラ
８３０    記憶装置コントローラ
８４０    メモリ
８５０    表示コントローラ
８６０    電源コントローラ
８７０    数値制御装置との通信コントローラ
【図１】
2016021119.tif 000003
【図２】
2016021119.tif 000004
【図３】
2016021119.tif 000005
【図４】
2016021119.tif 000006
【図５】
2016021119.tif 000007
【図６】
2016021119.tif 000008
【図７】
2016021119.tif 000009
【図８】
2016021119.tif 000010
【図９】
2016021119.tif 000011
【図１０】
2016021119.tif 000012
【図１１】
2016021119.tif 000013
【図１２】
2016021119.tif 000014
【図１３】
2016021119.tif 000015
【図１４】
2016021119.tif 000016