(57)【特許請求の範囲】
【請求項１】
安全信号の状態を監視する独立した二つの安全機能用シーケンスプログラムと、前記安全機能用シーケンスプログラムが別々に保存される二つの記憶部と、前記安全機能用シーケンスプログラムをそれぞれ起動する第１のＣＰＵおよび第２のＣＰＵを備えた工作機械おいて、
前記記憶部の各々が、プログラムを変更出来ない固定プログラム領域と、
プログラムの追加・変更可能な可変プログラム領域を有し、
前記固定プログラム領域の中には、前記工作機械の制御に用いられる前記安全機能用シーケンスプログラムが予め記憶されており、
前記可変プログラム領域の中には、さらに複数の領域に分割された周辺機器プログラム領域が含まれ、
前記第１のＣＰＵ１と第２のＣＰＵ２は、夫々の周辺機器プログラム領域に記憶された周辺機器プログラムを実行して入出力される入出力信号が一致するかどうかを監視すると共に、
前記第２のＣＰＵは、前記安全機能用シーケンスプログラム毎に予め設定された実行周期で安全機能用シーケンスプログラムを実行する、
ことを特徴とする工作機械。
【請求項２】
安全信号の状態を監視する独立した二つの安全機能用シーケンスプログラムと、前記安全機能用シーケンスプログラムが別々に保存される二つの記憶部と、前記安全機能用シーケンスプログラムをそれぞれ起動する第１のＣＰＵおよび第２のＣＰＵを備えた工作機械おいて、
前記記憶部の各々が、プログラムを変更出来ない固定プログラム領域と、
プログラムの追加・変更可能な可変プログラム領域を有し、
前記固定プログラム領域の中には、前記工作機械の制御に用いられる前記安全機能用シーケンスプログラムが予め記憶されており、
前記可変プログラム領域の中には、さらに複数の領域に分割された周辺機器プログラム領域が含まれ、
前記第１のＣＰＵ１と第２のＣＰＵ２は、夫々の周辺機器プログラム領域に記憶された周辺機器プログラムを実行して入出力される入出力信号が一致するかどうかを監視すると共に、
前記第２のＣＰＵは、実行周期の異なる複数の系統のシーケンス制御部を制御する、
ことを特徴とする特徴とする工作機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械に関し、特に工作機械本体だけでなく、その周辺装置を含めた状態で安全を確保したい場合、新たに安全スイッチ、安全リレーなどハード回路の安全装置や安全シーケンサなどを追加することなく、工作機械に組み込まれた安全機能付プログラマブル・シーケンス制御（安全シーケンスラダー）により、工作機械に取付けられる周辺機器に関するプログラムを後付で容易にカスタマイズすることができる工作機械に関する。
【背景技術】
【０００２】
従来、工作機械からオペレータを安全に保護するために最低限必要な部分については、ユーザが変更できないシーケンスプログラムで構成された組み込み安全回路と、ユーザが自由に変更可能なユーザ安全回路を有し、ユーザ安全回路が不適切なものであっても、機械を操作するオペレータの最低限の安全は保持される安全機能を内蔵したプログラマブル・シーケンス制御装置があった（例えば、特許文献１）。
【０００３】
また、従来、工作機械において周辺装置を含めた状態で安全を確保したい場合、安全スイッチや安全リレーなどを追加して、安全回路をハードで構成して周辺装置を制御したり、安全シーケンサを追加して本体ソフトウェアと異なる手段で安全ソフトウェアを作成・追加する場合もある。
【０００４】
更に、複数のＣＰＵを用いた機械における安全確保のための技術として、それぞれのＣＰＵが利用するプログラム領域の相互チェックを行う技術がある。例えば、図５に示すように、複数のＣＰＵを用いた機械では、プログラム領域は、ＣＰＵ１が制御する固定プログラム領域（機械本体で使用している部分）と周辺機器メーカやユーザが自由にプログラムを作成できる可変プログラム領域に分けられている。ＣＰＵ２が制御するプログラムは、固定プログラム領域で構成されている。固定プログラム領域内に安全機能の領域も含まれる。ＣＰＵ２が制御する安全機能領域とＣＰＵ１内の安全領域のプログラムについては、固定プログラム領域内の相互チェックが行われており、安全が確保されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４３００１２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１で開示される従来技術は、機械の制御論理の初期設計段階において、安全機能を可能にする安全機能内蔵プログラマブル、シーケンス制御装置を構築する技術であり、機械が完成後に周辺機器メーカが自由に安全機能の制御論理を組み替え・追加することは、困難であるという問題があった。
【０００７】
安全スイッチや安全リレー、安全シーケンサを追加する従来技術は、周辺装置に作業者の安全を確保する必要がある場合に、安全スイッチや安全リレー、安全シーケンサなどを追加して、安全回路を構成し、周辺装置を制御しているが、これは、安全を守る為の部品の追加に費用が掛かり、また、ソフトウェアで構成しても、構造的に安全が確実に確保されない場合がある。
【０００８】
複数のＣＰＵを用いた機械における安全確保をする場合、安全機能の中に、短い周期で動作を監視する機能と安全信号状態をモニタする機能がある。ＣＰＵ２の処理は、どれも同じ周期で相互監視処理を行っており、ＣＰＵへの負担が大きい。また、ＣＰＵ１は、ＰＭＣ専用のＣＰＵであり、処理に余裕があるが、ＣＰＵ２は、ＣＮＣのＣＰＵの空き時間で処理されている為、処理に余裕がなく、大きな容量のソフトを作成することが難しい。
また、可変プログラム領域に周辺機器のプログラムを追加しても、周辺機器に関する入出力信号が１重構造となるため、安全回路として不十分であった。これを補うためには、追加のハードウェア回路が必要であり、手間もコストもかかった。
【０００９】
更に、数値制御装置のコントロールソフトウェアの処理量は、工作機械の多軸化、多系統化や、高機能化の要望実現により年々増加しており、特に多軸化による軸制御処理の増加は顕著である。また、より高速かつ高精度な加工を実現するために、リアルタイム性の高い軸制御処理の既定周期をより短縮化することも要求されており、結果として、より短時間でより多くの処理を行うことが必要となるという問題があった。
【００１０】
そこで本発明の目的は、周辺機器の後付けが容易かつ安価に実現でき、安全性も保てる工作機械を提供することである。
【課題を解決するための手段】
【００１１】
本願の請求項１に係る発明は、安全信号の状態を監視する独立した二つの安全機能用シーケンスプログラムと、前記安全機能用シーケンスプログラムが別々に保存される二つの記憶部と、前記安全機能用シーケンスプログラムをそれぞれ起動する第１のＣＰＵおよび第２のＣＰＵを備えた工作機械おいて、前記記憶部の各々が、プログラムを変更出来ない固定プログラム領域と、プログラムの追加・変更可能な可変プログラム領域を有し、前記固定プログラム領域の中には、前記工作機械の制御に用いられる前記安全機能用シーケンスプログラムが予め記憶されており、前記可変プログラム領域の中には、さらに複数の領域に分割された周辺機器プログラム領域が含まれ、前記第１のＣＰＵ１と第２のＣＰＵ２は、夫々の周辺機器プログラム領域に記憶された周辺機器プログラムを実行して入出力される入出力信号が一致するかどうかを監視すると共に、前記第２のＣＰＵは、前記安全機能用シーケンスプログラム毎に予め設定された実行周期で安全機能用シーケンスプログラムを実行する、ことを特徴とする工作機械である。
【００１２】
本願の請求項２に係る発明は、安全信号の状態を監視する独立した二つの安全機能用シーケンスプログラムと、前記安全機能用シーケンスプログラムが別々に保存される二つの記憶部と、前記安全機能用シーケンスプログラムをそれぞれ起動する第１のＣＰＵおよび第２のＣＰＵを備えた工作機械おいて、前記記憶部の各々が、プログラムを変更出来ない固定プログラム領域と、プログラムの追加・変更可能な可変プログラム領域を有し、前記固定プログラム領域の中には、前記工作機械の制御に用いられる前記安全機能用シーケンスプログラムが予め記憶されており、前記可変プログラム領域の中には、さらに複数の領域に分割された周辺機器プログラム領域が含まれ、前記第１のＣＰＵ１と第２のＣＰＵ２は、夫々の周辺機器プログラム領域に記憶された周辺機器プログラムを実行して入出力される入出力信号が一致するかどうかを監視すると共に、前記第２のＣＰＵは、実行周期の異なる複数の系統のシーケンス制御部を制御する、ことを特徴とする特徴とする工作機械である。
【発明の効果】
【００１３】
本発明では、可変プログラム領域を複数の領域に分け、その領域に周辺機器用のプログラム領域が含まれるようにし、複数の安全機能用シーケンスプログラムの実行周期を変更する構成、およびＣＰＵ２を複数系統処理可能な構成とすることにより、系統毎に実行周期を変更できる構成を工作機械に設けている。このような構成を設けることにより、周辺機器の後付けが容易かつ安価に実現でき、安全性も保てる工作機械を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る実施の形態の周辺機器を安全に制御する機能を有する工作機械の要部ブロック図である。
【図２】本発明に係る実施の形態における固定プログラム領域と可変プログラム領域の関係を説明するための図である。
【図３】本発明の実施の形態におけるＣＰＵによる入出力監視処理のフローチャートである。
【図４】本発明の他の実施の形態の概要を説明する図である。
【図５】従来技術における安全制御機能を有する工作機械の要部ブロック図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面と共に説明する。
図１は、本発明に係る実施の形態の周辺機器を安全に制御する機能を有する工作機械の要部ブロック図である。工作機械１００には、ＣＰＵ１とＣＰＵ２の２つのプロセッサと、ＣＰＵ１，２がそれぞれ実行する安全関連ソフトウェアプログラムを記憶するプログラム領域１０，２０を備えている。それぞれのプログラム領域１０，２０は、固定プログラム領域１１，２１と可変プログラム領域１２，２２とに分けられている。
【００１６】
固定プログラム領域１１と固定プログラム領域２１には、機械本体の制御に用いる安全機能用シーケンスプログラムが両領域に格納されており、ＣＰＵ１，２はそれぞれの固定プログラム領域１１，２１に記憶された安全機能用シーケンスプログラムを実行することにより、工作機械から入力される機械信号を処理することができるようになっており、いずれか一方のＣＰＵに問題が発生したとしても、他方のＣＰＵにより安全制御が実行されるようになっている。
【００１７】
また、可変プログラム領域１２と可変プログラム領域２２には、周辺機器メーカやユーザが作成した複数の周辺機器用の安全機能用シーケンスプログラムを記憶する周辺機器プログラム領域が設けられている。可変プログラム領域１２，２２に設けられた各周辺機器プログラム領域は両可変プログラム領域間で対応付けられており、同一の周辺機器用の安全機能用シーケンスプログラムがそれぞれの領域に２重に格納されているため、いずれか一方のＣＰＵに問題が発生したとしても、他方のＣＰＵにより周辺機器に関する安全制御が実行されるようになっている。
【００１８】
ＣＰＵ１，２は工作機械から機械信号を受信すると、固定プログラム領域１１，２１に記憶されている安全機能用シーケンスプログラムを実行して入力された機械信号を解析し、油圧モータ、空圧回路、動力などの機械各部に対する出力信号を生成し、油圧モータ等の動力遮断、空圧回路の元電源の遮断、機械の安全停止、機械の安全な緊急停止などの制御を行う。
【００１９】
また、ＣＰＵ１，２は安全柵スイッチ３、治具関係の油圧・空圧回路４、コンベア、ローダ回路５などの周辺機器からの入力信号を受信すると、可変プログラム領域１２，２２に記憶されている、それぞれの周辺機器に対応する周辺機器プログラム領域に記憶されている周辺機器用の安全機能用シーケンスプログラムを実行し、当該安全機能用シーケンスプログラムにより入力された各種信号を解析して機械各部を制御するための出力信号を生成し、油圧モータ等の動力遮断、空圧回路の元電源の遮断、機械の安全停止、機械の安全な緊急停止などの制御を行う。
【００２０】
そして、ＣＰＵ１とＣＰＵ２は、相互に相手の入力信号、出力信号が、自ＣＰＵへの入力信号、出力信号と一致するかを監視することで、安全制御の２重化を実現している。このような相互監視は、固定プログラム領域１１，２１と、可変プログラム領域１２，２２内の周辺機器プログラム領域ごとに実行されているため、機械信号に基づく安全制御だけでなく、各周辺機器に基づく安全制御についても完全な２重化が実現される。
【００２１】
図２は、本発明の一実施の形態における固定プログラム領域と可変プログラム領域の関係を説明するための図である。
図１で説明したように、本発明の工作機械においては、周辺機器に基づく安全制御を行うための周辺機器用の安全機能用シーケンスプログラムを周辺機器のメーカやユーザが自由に追加できるように構成している。そのために、可変プログラム領域２２に記憶された周辺機器用の安全機能用シーケンスプログラムから出力される出力信号を、工作機械が備える機械各部に対して出力するための機構を設ける必要がある。本発明の一実施の形態における工作機械は、予め工作機械の仕様に合わせて、固定プログラム領域２１に可変プログラム領域２２から出力される信号を受け付けるための安全信号インタフェース２３０を設けることで、この問題を解決する。
【００２２】
図２に示すように、機械主要部から入力された信号は、固定プログラム領域２１の入力信号受信部２１１により受信され、論理（ロジック）部２１２によって解析される。そして、解析結果に基づいて出力信号送信部油圧用２１３、出力信号送信部空圧用２１４、出力信号送信部動力停止用２１５、出力信号送信部動力遮断用２１６に対する信号が生成され、各送信部から油圧部１１０、空圧部１２０、動力停止部１３０、動力遮断部１４０の機械各部へ制御用の信号が出力される。
【００２３】
これに対して、周辺機器から入力された信号は、可変プログラム領域２２の入力信号受信部２２１により受信され、論理（ロジック）部２２２によって解析される。なお、入力信号受信部２２１、論理（ロジック）部２２２は、各周辺機器プログラム領域に格納されている周辺機器用の安全機能用シーケンスプログラムにより実現される機能手段である。
その後、論理（ロジック）部２２２の解析結果に基づいて、安全信号インタフェース２３０を介して出力信号送信部油圧用２１３、出力信号送信部空圧用２１４、出力信号送信部動力停止用２１５、出力信号送信部動力遮断用２１６に対する信号が生成され、各送信部から油圧部１１０、空圧部１２０、動力停止部１３０、動力遮断部１４０の機械各部へ制御用の信号が出力される。
【００２４】
このように、周辺機器用の安全機能用シーケンスプログラムを作成する周辺機器メーカやユーザは、安全信号インタフェースを介して信号を出力するプログラムを作成することで機械各部に対する制御を行うことができるので、新たな追加のハードウェア回路を設けることなく各周辺機器に基づく安全制御に関する処理を自由に作成することができる。
【００２５】
ここまで説明してきたように、本発明が提案する構成を設けることにより、周辺機器用の安全機能用シーケンスプログラムを周辺機器メーカやユーザが工作機械に自由に追加できるようにし、追加した周辺機器に基づく工作機械の安全制御を２重化することができる。しかしながら、固定プログラム領域１１，２１に格納されている安全機能用シーケンスプログラムの入出力を監視するのと同じ周期で全ての周辺機器用の安全機能用シーケンスプログラムに対する入出力を監視した場合、ＣＰＵに対して負荷がかかるという問題がある。そこで、本発明においては、追加された周辺機器用の安全機能用シーケンスプログラムの種類や重要度に応じて、固定プログラム領域１１，２１の監視とは異なるあらかじめ設定された周期にて、周辺機器用の安全機能用シーケンスプログラムの入出力を監視するように構成する。
【００２６】
図３の左側のフローチャートは、本発明の一実施の形態における、周辺機器用の安全機能用シーケンスプログラムが追加されていない状態における、ＣＰＵ２による入出力監視処理のフローチャートである。周辺機器用の安全機能用シーケンスプログラムが追加されていない状態では、ＣＰＵ２においては、固定プログラム領域１１，２１の安全機能用シーケンスプログラムのみが監視対象となる。そのため、ステップＳＡ０１に示すように、ＣＰＵ２は数μｓｅｃ周期でＣＰＵ１の固定プログラム領域１１の入出力信号とＣＰＵ２の固定プログラム領域２１の安全機能用シーケンスプログラムの入出力信号の一致を監視する。
【００２７】
図３の右のフローチャートは、本発明の一実施の形態における、周辺機器用の安全機能用シーケンスプログラムが追加された状態における、ＣＰＵ２による入出力監視処理のフローチャートである。
●［ステップＳＢ０１］周辺機器用の安全機能用シーケンスプログラムを追加する場合、追加する周辺機器用の安全機能用シーケンスプログラムの個数ｎを取得する。個数ｎは、オペレータからの入力により取得してもよいし、工作機械の起動時の初期化の際に読み込まれる周辺機器用の安全機能用シーケンスプログラムの個数をカウントするようにしてもよい。
●［ステップＳＢ０２］ステップＳＢ０１で取得したｎに基づいて、周辺機器プログラム領域をｎ個確保する。
●［ステップＳＢ０３］ＣＰＵ２は数μｓｅｃ周期でＣＰＵ１の固定プログラム領域１１の安全機能用シーケンスプログラムの入出力信号と、ＣＰＵ２の固定プログラム領域２１の安全機能用シーケンスプログラムの入出力信号の一致を監視する。
●［ステップＳＢ０４］ＣＰＵ２は、周辺機器プログラム領域に格納された周辺機器用の安全機能用シーケンスプログラム毎に、それぞれの周辺機器用の安全機能用シーケンスプログラムに設定された重要度や種類に応じてあらかじめ設定されている周期で、ＣＰＵ１の可変プログラム領域１２に記憶された各周辺機器用の安全機能用シーケンスプログラムの入出力信号と、ＣＰＵ２の可変プログラム領域２２に記憶された対応する各周辺機器用の安全機能用シーケンスプログラムの入出力信号の一致を監視する。
【００２８】
図３のフローチャートでは、各周辺機器用の安全機能用シーケンスプログラムの入出力信号の監視はあらかじめ設定された周期（数十ｍｓｅｃ周期）で行うように記載しているが、当該周期は、ＣＰＵにかかる負荷と、周辺機器用の安全機能用シーケンスプログラムに設定された重要度や種類に基づく優先度に応じて、動的に調整するようにしてもよい。
【００２９】
このように、固定プログラム領域に格納されている工作機械の安全機能用シーケンスプログラムの入出力の監視周期と、各周辺機器用の安全機能用シーケンスプログラムの入出力の監視周期とを異なる周期とすることにより、ＣＰＵによる監視処理の負荷を軽減することができる。
【００３０】
以上、説明してきた構成を工作機械に設けることにより、ＣＰＵの負荷を高くすることなく、追加した周辺機器に基づく工作機械の安全制御の２重化が実現できるが、この構成を応用することで、ＣＰＵの安全制御にかかる負荷を高くすることなく、多系統の安全制御を同時に行うようにすることができる。
【００３１】
図４の左は、従来通りＣＰＵを１つの系統のＰＭＣとして動作させ安全制御を行う場合の概念図である。これに対して、本発明においては、図４の右に示すように、系統毎に処理時間（監視周期など）を設定できるように構成する。このように構成することで、系統毎にあらかじめ設定された周期にて安全制御の状態を監視できるため、ＣＰＵの負荷を高めることなく複数系統の監視を実現することができる。
【符号の説明】
【００３２】
１，２    ＣＰＵ
３    安全柵スイッチ
４    治具関係の油圧・空圧回路
５    コンベア、ローダなどの回路
１０    プログラム領域（ＣＰＵ１用）
１１    固定プログラム領域（ＣＰＵ１用）
１２    可変プログラム領域（ＣＰＵ１用）
２０    プログラム領域（ＣＰＵ２用）
２１    固定プログラム領域（ＣＰＵ２用）
２２    可変プログラム領域（ＣＰＵ２用）
１００    工作機械
１１０    油圧部
１２０    空圧部
１３０    動力停止部
１４０    動力遮断部
２１１    入力信号受信部
２１２    論理（ロジック）部
２１３    出力信号送信部油圧用
２１４    出力信号送信部空圧用
２１５    出力信号送信部動力停止用
２１６    出力信号送信部動力遮断用
２２１    入力信号受信部
２２２    論理（ロジック）部
２３０    安全信号インタフェース
【要約】
【課題】周辺機器の後付けが容易かつ安価に実現でき、安全性も保てる工作機械を提供すること。
【解決手段】安全信号の状態を監視する独立した二つの安全機能用シーケンスプログラムと、前記安全機能用シーケンスプログラムが別々に保存される二つの記憶部と、前記安全機能用シーケンスプログラムをそれぞれ起動する第１のＣＰＵおよび第２のＣＰＵを備えた工作機械おいて、前記第２のＣＰＵが、前記安全機能用シーケンスプログラム毎にあらかじめ設定された異なる実行周期で監視処理を実行するように構成することで、安全信号の状態監視におけるＣＰＵ負荷を軽減する。
【選択図】図１【図１】
0005902778.tif 000002
【図２】
0005902778.tif 000003
【図３】
0005902778.tif 000004
【図４】
0005902778.tif 000005
【図５】
0005902778.tif 000006