IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

<>
  • 特許-制御装置及び制御システム 図1
  • 特許-制御装置及び制御システム 図2
  • 特許-制御装置及び制御システム 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】制御装置及び制御システム
(51)【国際特許分類】
   G05B 19/4155 20060101AFI20241008BHJP
   G05B 19/4061 20060101ALI20241008BHJP
【FI】
G05B19/4155 T
G05B19/4061 Z
【請求項の数】 8
(21)【出願番号】P 2023528861
(86)(22)【出願日】2021-06-16
(86)【国際出願番号】 JP2021022927
(87)【国際公開番号】W WO2022264336
(87)【国際公開日】2022-12-22
【審査請求日】2024-01-12
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110001151
【氏名又は名称】あいわ弁理士法人
(72)【発明者】
【氏名】三好 高史
【審査官】牧 初
(56)【参考文献】
【文献】特開2014-191724(JP,A)
【文献】特開2014-59607(JP,A)
【文献】特開2006-72399(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18-19/416
G05B 19/42-19/46
(57)【特許請求の範囲】
【請求項1】
制御用プログラムに基づいて産業用機械を制御する制御装置であって、PCの汎用OS上で動作するアプリケーションであって前記産業用機械の制御に係る連携アプリケーションと連携して該産業用機械の制御をする制御装置において、
前記制御用プログラムのブロックを解析し、該ブロックの指令に基づく指令データを作成する指令解析部と、
前記産業用機械の動作状態を所定の安全な状態へと移行するための安全動作の指令データが予め記憶される安全動作指令記憶部と、
前記PCから送信される前記連携アプリケーションに係る処理で作成された定期送信情報の受信間隔を監視する受信間隔監視部と、
定期送信情報の前記受信間隔を予め定めた所定の閾値と比較し、該受信間隔が該閾値を超えているか否かを判定する受信間隔判定部と、
前記受信間隔判定部による判定結果に基づいて、前記受信間隔が前記閾値以下である場合には、前記指令解析部が作成した指令データを前記産業用機械の制御に用いることを選択し、前記受信間隔が前記閾値を超えた場合には、前記安全動作指令記憶部に記憶される安全動作の指令データを前記産業用機械の制御に用いることを選択する制御指令選択部と、
前記制御指令選択部が選択した指令データに基づいて前記産業用機械を制御する制御部と、
を備えた制御装置。
【請求項2】
前記連携アプリケーションは、先行位置に基づいて干渉チェックを行う機械衝突防止機能のアプリケーションであり、
前記定期送信情報は、少なくとも前記連携アプリケーションからの前記干渉チェックの結果情報を含む、
請求項1に記載の制御装置。
【請求項3】
前記安全動作は、前記産業用機械を安全に停止する停止動作、前記産業用機械の移動部の移動速度を低下させる速度抑制動作、前記産業用機械の工具をワークからリトラクトして待機するリトラクト待機動作、または前記制御装置の内部監視機能への切り替え動作のいずれかである、
請求項2に記載の制御装置。
【請求項4】
前記安全動作指令記憶部には、前記定期送信情報の種類にそれぞれ対応した複数の安全動作の指令データが予め記憶されており、
前記制御指令選択部は、前記定期送信情報の受信間隔が前記閾値を超えた場合に、前記安全動作指令記憶部に記憶された複数の安全動作の指令データの中から前記定期送信情報の種類に応じた安全動作の指令データを選択する、
請求項1に記載の制御装置。
【請求項5】
前記閾値として、複数の段階的な値が用意されており、
前記安全動作指令記憶部には、前記閾値の段階にそれぞれ対応した複数の安全動作の指令データが予め記憶されており、
前記制御指令選択部は、前記定期送信情報の受信間隔が前記閾値を超えた場合に、前記安全動作指令記憶部に記憶された複数の安全動作の指令データの中から前記閾値の段階に応じた安全動作の指令データを選択する、
請求項1に記載の制御装置。
【請求項6】
前記閾値は、前記制御装置の状態又は前記産業用機械の状態に基づいて動的に算出される、
請求項1に記載の制御装置。
【請求項7】
前記安全動作指令記憶部には、前記制御装置の状態又は前記産業用機械の状態にそれぞれ対応した複数の安全動作の指令データが予め記憶されており、
前記制御指令選択部は、前記定期送信情報の受信間隔が前記閾値を超えた場合に、前記安全動作指令記憶部に記憶された複数の安全動作の指令データの中から前記制御装置の状態又は前記産業用機械の状態に応じた安全動作の指令データを選択する、
請求項1に記載の制御装置。
【請求項8】
制御用プログラムに基づいて産業用機械を制御する制御装置と、汎用OS上で動作するアプリケーションであって前記産業用機械の制御に係る連携アプリケーションが動作しているPCとが連携して構成される制御システムにおいて、
前記制御装置は、
前記制御用プログラムのブロックを解析し、該ブロックの指令に基づく指令データを作成する指令解析部と、
前記産業用機械の動作状態を所定の安全な状態へと移行するための安全動作の指令データが予め記憶される安全動作指令記憶部と、
前記PCから送信される前記連携アプリケーションに係る処理で作成された定期送信情報の受信間隔を監視する受信間隔監視部と、
定期送信情報の前記受信間隔を予め定めた所定の閾値と比較し、該受信間隔が該閾値を超えているか否かを判定する受信間隔判定部と、
前記受信間隔判定部による判定結果に基づいて、前記受信間隔が前記閾値以下である場合には、前記指令解析部が作成した指令データを前記産業用機械の制御に用いることを選択し、前記受信間隔が前記閾値を超えた場合には、前記安全動作指令記憶部に記憶される安全動作の指令データを前記産業用機械の制御に用いることを選択する制御指令選択部と、
前記制御指令選択部が選択した指令データに基づいて前記産業用機械を制御する制御部と、
を備え、
前記PCは、
前記連携アプリケーションの処理を行うために、前記制御装置に係る状態又は前記産業用機械に係る状態の少なくともいずれかを読み出す要求情報を前記制御装置へと送信し、その結果に基づいて前記制御装置に係る状態又は前記産業用機械に係る状態の少なくともいずれかを監視する状態監視部と、
前記連携アプリケーションの処理の結果を前記制御装置に対して送信する処理結果送信部と、
を備える、
制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置及び制御システムに関し、特にPCの汎用OS上で動作する連携アプリケーションと連携する制御装置及び制御システムに関する。
【背景技術】
【0002】
制御装置のハードウェアリソースには限界があるため、PC(Personal Computer)の汎用OS(Operating System)上で、高度なアプリケーションを実現するケースが増えてきた。この高度なアプリケーションは、例えば加工中の機械衝突防止機能(干渉チェック)や、周辺機器の監視(例えば、工具折損検知等)、機械学習アプリケーションなどである。制御装置上のリアルタイム処理に間に合うように、汎用OS上でこれらアプリケーションを高速実行することで、その処理結果に基づいた制御を実現できる。
【0003】
例えば、機械衝突防止機能を利用する際には、制御装置から加工中の先行位置情報をPCに対して送信する。そして、PC側で先行位置に基づいた干渉チェックを行う。そして、干渉の発生を検知した場合、その旨を制御装置へと送信する。制御装置は、PCから送信された干渉チェックの結果に基づいて、加工軸の移動を停止する。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2008-027376号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
リアルタイム性を保証していない汎用OSは、アプリケーションによる処理のリアルタイム性が保証されない。そのため、制御装置からの処理実行要求に対して、PCからの処理結果の送信が間に合わなくなる場合がある。例えば、PCから制御装置側に対して干渉検知の信号を送信できないと、制御装置は、干渉チェックが実質的に無効のまま加工を続けざるを得なくなる。そして、最悪の場合、機械の移動部分をワークや治具などの干渉物に衝突させてしまう可能性がある。
そこで、制御装置から汎用OS上で動作するアプリケーションの処理状況を監視する仕組みが望まれている。
【課題を解決するための手段】
【0006】
本開示による制御システムは、PCの汎用OS上で動作する産業用機械の制御と連携するアプリケーション(以下、連携アプリケーションとする)の処理に係る情報を定期的に制御装置に対して送信する。制御装置は、PCから情報が送信される時間間隔を監視し、予め定めた所定の閾値を超えた場合にPC側の処理が制御装置に対して遅れていることを判定する。そして、遅れを判定した場合、制御装置は機械の運転の停止動作、移動速度の抑制動作、リトラクト待機動作等といったような、予め登録された安全動作の制御指令に基づく制御を行う。
上記課題を解決する。
【0007】
そして、本開示の一態様は、制御用プログラムに基づいて産業用機械を制御する制御装置であって、PCの汎用OS上で動作するアプリケーションであって前記産業用機械の制御に係る連携アプリケーションと連携して該産業用機械の制御をする制御装置において、 前記制御用プログラムのブロックを解析し、該ブロックの指令に基づく指令データを作成する指令解析部と、前記産業用機械の動作状態を所定の安全な状態へと移行するための安全動作の指令データが予め記憶される安全動作指令記憶部と、前記PCから送信される前記連携アプリケーションに係る処理で作成された定期送信情報の受信間隔を監視する受信間隔監視部と、定期送信情報の前記受信間隔を予め定めた所定の閾値と比較し、該受信間隔が該閾値を超えているか否かを判定する受信間隔判定部と、前記受信間隔判定部による判定結果に基づいて、前記受信間隔が前記閾値以下である場合には、前記指令解析部が作成した指令データを前記産業用機械の制御に用いることを選択し、前記受信間隔が前記閾値を超えた場合には、前記安全動作指令記憶部に記憶される安全動作の指令データを前記産業用機械の制御に用いることを選択する制御指令選択部と、前記制御指令選択部が選択した指令データに基づいて前記産業用機械を制御する制御部と、を備えた制御装置である。
【0008】
本開示の他の態様は、制御用プログラムに基づいて産業用機械を制御する制御装置と、汎用OS上で動作するアプリケーションであって前記産業用機械の制御に係る連携アプリケーションが動作しているPCとが連携して構成される制御システムにおいて、前記制御装置は、前記制御用プログラムのブロックを解析し、該ブロックの指令に基づく指令データを作成する指令解析部と、前記産業用機械の動作状態を所定の安全な状態へと移行するための安全動作の指令データが予め記憶される安全動作指令記憶部と、前記PCから送信される前記連携アプリケーションに係る処理で作成された定期送信情報の受信間隔を監視する受信間隔監視部と、定期送信情報の前記受信間隔を予め定めた所定の閾値と比較し、該受信間隔が該閾値を超えているか否かを判定する受信間隔判定部と、前記受信間隔判定部による判定結果に基づいて、前記受信間隔が前記閾値以下である場合には、前記指令解析部が作成した指令データを前記産業用機械の制御に用いることを選択し、前記受信間隔が前記閾値を超えた場合には、前記安全動作指令記憶部に記憶される安全動作の指令データを前記産業用機械の制御に用いることを選択する制御指令選択部と、前記制御指令選択部が選択した指令データに基づいて前記産業用機械を制御する制御部と、を備え、前記PCは、前記連携アプリケーションの処理を行うために、前記制御装置に係る状態又は前記産業用機械に係る状態の少なくともいずれかを読み出す要求情報を前記制御装置へと送信し、その結果に基づいて前記制御装置に係る状態又は前記産業用機械に係る状態の少なくともいずれかを監視する状態監視部と、前記連携アプリケーションの処理の結果を前記制御装置に対して送信する処理結果送信部と、を備える、制御システムである。
【発明の効果】
【0009】
本開示の一態様により、汎用OS上で動作するPC側の連携アプリケーションを用いている場合に、PC側の動作遅延やハングアップといった問題の機械動作への影響を少なく抑えることができる。
【図面の簡単な説明】
【0010】
図1】本発明の一実施形態による制御システムの概略的なハードウェア構成図である。
図2】本発明の一実施形態による制御システムの概略的な機能を示すブロック図である。
図3】本発明の一実施形態による制御システムの動作の流れを示す概略的なフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態を図面と共に説明する。
図1は本発明の一実施形態による制御装置の要部を示す概略的なハードウェア構成図である。本発明の制御装置1は、併設されたパソコンであるPC2と共に制御システム4を構成する。制御装置1は、例えば工作機械やマシニングセンタなどの産業用機械3を制御する。以下では、制御装置1が、PC2の汎用OSの上で動作している機械衝突防止機能(干渉チェック機能)を提供する連携アプリケーションと連携しているものとして説明する。
【0012】
本実施形態による制御装置1が備えるCPU11は、制御装置1を全体的に制御するプロセッサである。CPU11は、バス22を介してROM12に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って制御装置1全体を制御する。RAM13には一時的な計算データや表示データ、及び外部から入力された各種データ等が一時的に格納される。
【0013】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、制御装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれた制御用プログラムやデータ、インタフェース18を介して入力装置71から入力された制御用プログラムやデータ、ネットワーク5を介してフォグコンピュータ6やクラウドサーバ7等の他の装置から取得された制御用プログラムやデータ等が記憶される。不揮発性メモリ14に記憶されるデータは、例えば産業用機械3の機械構成に係るデータや、ワーク、治具などの干渉物に係るデータ、各軸に沿った移動部の移動に係るデータ、その他の産業用機械3に取り付けられた図示しないセンサで検出された各物理量に係るデータ等が含まれていてよい。不揮発性メモリ14に記憶された制御用プログラムやデータは、実行時/利用時にはRAM13に展開されてもよい。また、ROM12には、公知の解析プログラムなどの各種システム・プログラムがあらかじめ書き込まれている。
【0014】
インタフェース15は、制御装置1のCPU11と外部記憶媒体等の外部機器72と接続するためのインタフェースである。外部機器72側からは、例えば産業用機械3の制御に用いられる制御用プログラムや設定データ等が読み込まれる。また、制御装置1内で編集した制御用プログラムや設定データ等は、外部機器72を介して図示しないCFカードやUSBメモリ等の外部記憶媒体に記憶させることができる。PLC(プログラマブル・ロジック・コントローラ)16は、ラダープログラムを実行して産業用機械3及び該産業用機械3の周辺装置(例えば、工具交換装置や、ロボット等のアクチュエータ、産業用機械3に取付けられているセンサ等)にI/Oユニット19を介して信号を入出力して制御する。また、産業用機械3の本体に配備された操作盤の各種スイッチや周辺装置等の信号を受け、必要な信号処理をした後、CPU11に渡す。
【0015】
インタフェース20は、制御装置1のCPUとPC2との間を有線乃至無線で接続するためのインタフェースである。制御装置1とPC2との間の接続は、例えばRS-485等のシリアル通信、Ethernet(登録商標)通信、光通信、無線LAN、Wi-Fi(登録商標)、Bluetooth(登録商標)等の技術を用いて通信をするものであってよい。制御装置1は、インタフェース20を介してPC2との間で相互にデータのやり取りを行っている。
【0016】
表示装置70には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース17を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置71は、インタフェース18を介して作業者による操作に基づく指令やデータ等をCPU11に渡す。
【0017】
産業用機械3が備える移動部を移動させるための軸制御回路30はCPU11からの移動指令量を受けて、移動指令をサーボアンプ40にそれぞれ出力する。サーボアンプ40はこの指令を受けて、産業用機械3が備えるサーボモータ50をそれぞれ駆動する。サーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にそれぞれフィードバックし、位置・速度のフィードバック制御を行う。なお、図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50はそれぞれ1つずつしか示されていないが、実際には制御対象となる産業用機械3に備えられた移動部の数だけ用意される。
【0018】
スピンドル制御回路60は、主軸回転指令を受け、スピンドルアンプ61にスピンドル速度信号を出力する。スピンドルアンプ61はこのスピンドル速度信号を受けて、産業用機械のスピンドルモータ62を指令された回転速度で回転させ、工具を駆動する。スピンドルモータ62にはポジションコーダ63が結合され、ポジションコーダ63が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはCPU11によって読み取られる。
【0019】
一方で、本実施形態によるPC2は、制御装置1に併設されている。PC2が備えるCPU211は、PC2を全体的に制御するプロセッサである。CPU211は、バス222を介してROM212に格納されたシステム・プログラムを読み出し、該システム・プログラムに従ってPC2全体を制御する。RAM213には一時的な計算データや表示データ、及び外部から入力された各種データ等が一時的に格納される。
【0020】
不揮発性メモリ214は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、PC2の電源がオフされても記憶状態が保持される。不揮発性メモリ214には、インタフェース219を介して制御装置1から取得されたデータ、インタフェース215を介して外部機器272から読み込まれたデータやプログラム、入力装置271を介して入力されたデータやプログラム等が記憶される。不揮発性メモリ214に記憶されたデータやプログラムは、実行時/利用時にはRAM213に展開されても良い。また、ROM212には、公知の処理プログラムや解析プログラム、3Dシミュレーションプログラム、機械衝突防止アプリケーションプログラム等の各種システム・プログラムがあらかじめ書き込まれている。
【0021】
インタフェース215は、PC2のCPU211とUSB装置等の外部機器272と接続するためのインタフェースである。外部機器272側からは、例えば解析に用いられるプログラムや各パラメータ等を読み込むことができる。また、PC2内で編集したプログラムや各パラメータ等は、外部機器272を介して外部記憶手段に記憶させることができる。
【0022】
インタフェース219は、PC2のCPU211と制御装置1との間を有線乃至無線で接続するためのインタフェースである。PC2は、インタフェース219を介して制御装置1との間で相互にデータのやり取りを行っている。
【0023】
表示装置270には、メモリ上に読み込まれた各データ、制御用プログラムやシステム・プログラム等が実行された結果として得られたデータ等がインタフェース217介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置271は、インタフェース218を介して作業者による操作に基づく指令,データ等をCPU211に渡す。
【0024】
図2は、本発明の第1実施形態による制御装置1及びPC2が備える機能を概略的なブロック図として示したものである。本実施形態による制御装置1が備える各機能は、図1に示した制御装置1が備えるCPU11がシステム・プログラムを実行し、制御装置1の各部の動作を制御することにより実現される。また、本実施形態によるPC2が備える各機能は、図1に示したPC2が備えるCPU211がシステム・プログラムを実行し、PC2の各部の動作を制御することにより実現される。
【0025】
本実施形態の制御装置1は、指令解析部110、制御指令選択部115、制御部120、受信間隔監視部125、受信間隔判定部130を備える。また、PC2は、状態監視部210、アプリケーション実行部220、処理結果送信部230を備える。更に、制御装置1のRAM13乃至不揮発性メモリ14上には、産業用機械3の安全動作に係る指令を予め記憶するための領域である安全動作指令記憶部170、制御装置1による産業用機械3の制御状態を示す情報を記憶するための領域である状態情報記憶部180が用意されると共に、産業用機械3の制御に用いられる制御用プログラム190が予め記憶されている。
【0026】
指令解析部110は、制御用プログラム190から1ブロック毎に指令を読み出し、該指令を解析して実行形式のデータを作成する。指令解析部110は、実行形式の指令データを制御指令選択部115へと出力する。
【0027】
制御指令選択部115は、受信間隔判定部130が定期的にPCから送信される産業用機械3の制御と連携するアプリケーションの処理で作成された情報(以下、定期送信情報とする)の受信間隔が予め所定の閾値以下であると判定されている間は、指令解析部110が指令を解析して作成した実行形式の指令データを制御部120へ出力する。また、制御指令選択部115は、受信間隔判定部130がPC2から送信される定期送信情報の受信間隔が予め所定の閾値を超えていると判定した場合、安全動作指令記憶部170から読み出した安全動作指令に係る指令データを制御部120へ出力する。なお、定期送信情報、即ち連携アプリケーションの処理で作成された情報とは、連携アプリケーションがその処理に必要とする情報を取得するために作成した要求指令や、連携アプリケーションが作成して出力する情報を含む。
【0028】
安全動作指令記憶部170には、予め産業用機械3の動作状態を所定の安全な状態へと移行するための安全動作に係る指令データが記憶されている。安全動作は、例えば産業用機械3の運転を安全に停止する停止動作、産業用機械3の移動部の移動速度を低下させる速度抑制動作、工具をワークからリトラクトして待機するリトラクト待機動作、PC2と連携している機能の制御装置1に内蔵されている機能への切り替え動作等が例示される。これらの安全動作に係る指令データは、制御する産業用機械3の特性や制御用プログラム190の内容に合わせて予め作成して安全動作指令記憶部170に記憶しておけばよい。
【0029】
制御指令選択部115は、受信間隔が予め所定の閾値以下であると判定されている場合に、指令解析部110が作成した実行形式の指令データに加えて、PC2から送信されてきた連携アプリケーションの処理結果に係る情報を制御部120に出力してよい。例えば、PC2上で機械衝突防止機能の連携アプリケーションが動作しており、定期的に主軸、工具等の移動部と、ワーク、治具、テーブル等の干渉物との間の干渉チェックの結果を送信してくるとする。この場合、制御指令選択部115は、指令解析部110が作成した実行形式の指令データに加えて、干渉チェックの結果を併せて制御部120に出力する。
【0030】
制御部120は、制御指令選択部115から入力された指令に係るデータに基づいて産業用機械3を制御する。制御部120は、例えば産業用機械3の移動部を軸に沿って移動又は停止させる指令データが入力されると、当該軸を駆動するサーボモータ50を駆動するための移動指令データを出力する。また、制御部120は、例えば産業用機械3の主軸を回転又は停止させる指令データが入力されると、スピンドルモータ62を制御するための回転指令データを出力する。その他にも、制御部120は、入力された指令データに基づいて産業用機械3を制御するために必要とされる一般的な制御のための機能を備える。制御部120による産業用機械3の制御に係る処理の結果は、逐次状態情報記憶部180に記憶される。状態情報記憶部180には、例えば産業用機械3の移動部の位置や速度、主軸の回転状態、工具の種別、切削液供給装置や機械扉などの周辺機器の状態等が記憶される。また、本実施形態のようにPC2側で動作している機械衝突防止機能と連携している場合には、干渉チェックを行う移動部の先行位置の情報なども状態情報記憶部180に記憶しておいてよい。
【0031】
制御部120は、制御指令選択部115からPC2から送信されてきた連携アプリケーションの処理結果に係る情報が入力される場合、その情報を参照して産業用機械3の制御に用いるようにしてもよい。例えば、PC2上で機械衝突防止機能の連携アプリケーションが動作しており、定期的に主軸、工具等の移動部と、ワーク、治具、テーブル等の干渉物との間の干渉チェックの結果を送信してくるとする。この場合、制御部120は、PC2から送信されてきた干渉チェックの結果が移動部と干渉物との衝突を示している場合、産業用機械3の動作を停止するように制御してもよい。
【0032】
受信間隔監視部125は、PC2から送られてくる定期送信情報の受信間隔を監視する。受信間隔監視部125は、PC2から定期送信情報の受信時刻を履歴として記憶する。そして、最後に送られてきた情報を受信した時刻から経過した時間を受信間隔判定部130へと出力する。PC2から定期送信情報は複数あってもよい。例えば、本実施形態のように、制御装置1がPC2側で動作している機械衝突防止機能と連携している場合、干渉チェック対象となる移動部の先行位置がPC2から要求される。また、PC2から先に要求された先行位置に関する干渉チェックの結果が送信されてくる。受信間隔監視部125は、この先行位置の要求と、干渉チェックの結果とを、それぞれ定期送信情報として受信間隔を個別に監視するようにしてよい。
【0033】
受信間隔判定部130は、受信間隔監視部125から送られてくる定期送信情報の受信間隔が、予め定めた所定の閾値を超えたと判定した場合に、その判定結果を制御指令選択部115へと出力する。この閾値は、複数の段階的な値であってもよい。その場合、受信間隔判定部130は、何段階目の閾値を超えたのかが把握できるように制御指令選択部115へと出力する。この時、安全動作指令記憶部170に閾値の段階に対応する異なる安全動作の指令データを予め記憶しておく。そして、制御指令選択部115は、何段階目の閾値を超えたのかに応じて、異なる安全動作の指令データを制御部120に出力するようにしてもよい。
【0034】
また、受信間隔監視部125が複数の定期送信情報を監視している場合には、それぞれの定期送信情報に対して異なる閾値を設定するようにしてもよい。この場合においても、安全動作指令記憶部170に定期送信情報の種類に対応する異なる安全動作の指令データを予め記憶しておき、制御指令選択部115は、どの定期送信情報が閾値を超えたのかに応じて、異なる安全動作の指令データを制御部120に出力するようにしてもよい。
【0035】
受信間隔判定部130が用いる所定の閾値は、上記したように予め固定値として設定しておいてもよいが、状況に合わせて動的に設定するようにしてもよい。例えば本実施形態による制御装置1のように、PC2で動作する機械衝突防止機能の連携アプリケーションと連携している場合、PC2が先行位置を取得して、その位置における干渉チェックの結果を送信してくる。そのため、産業用機械3の移動部がこの先行位置に達する時間(以下、先行時間とする)の前であって、移動部が干渉をする前に停止できるタイミングまでに干渉チェックの結果を受信する必要がある。そこで、受信間隔判定部130が用いる閾値を、先行時間に基づいて動的に算出する。より具体的には、先行時間に対して所定の係数(<1.0)を掛けた値を閾値として用いる。このように構成することで、状況に応じて変化する先行位置に対して適切な閾値を動的に設定できる。
【0036】
一方、本実施形態によるPC2が備える状態監視部210は、制御装置1の状態を定期的に監視する。状態監視部210は、例えば制御装置1が備える状態情報記憶部180に記憶されている所定の情報を要求する。そして、その要求の応答として得られた制御装置1の状態に係る情報をアプリケーション実行部220に出力する。例えば、本実施形態のように制御装置1がPC2側で動作している機械衝突防止機能と連携している場合、状態監視部210は制御装置1に対して干渉チェック対象となる産業用機械3の移動部の先行位置を要求し、その結果として得られた移動部の先行位置をアプリケーション実行部220へ出力する。
【0037】
アプリケーション実行部220は、汎用OS上で様々なアプリケーションプログラムを動作させる。アプリケーション実行部220において実行される連携アプリケーションは、状態監視部210から入力された情報を用いた処理を実行してよい。また、連携アプリケーションは、その処理結果を処理結果送信部230へ出力してよい。例えば、本実施形態のアプリケーション実行部220は、機械衝突防止機能を提供するアプリケーションプログラムを実行している。この機械衝突防止機能は、状態監視部210から入力された産業用機械3の移動部の先行位置に基づいて、該移動部とワーク、治具、テーブルなどの干渉物との干渉をチェックする。そして、干渉チェックの結果を処理結果送信部230へ出力する。
【0038】
処理結果送信部230は、アプリケーション実行部220による連携アプリケーションの処理の結果を制御装置1へ送信する。例えば、本実施形態の処理結果送信部230は、機械衝突防止機能の連携アプリケーションによる干渉チェックの実行結果を制御装置1へ送信する。
【0039】
図3は、上記構成を備えた本実施形態による制御装置1における動作の流れを示す概略的なフローチャートである。
制御装置1とPC2で動作する機械衝突防止機能との連携動作が開始されると、受信間隔監視部125は、PC2が備える状態監視部210からの先行位置の要求、及び処理結果送信部230からの干渉チェック結果の送信のそれぞれを定期送信情報として監視する(ステップSA01)。
【0040】
受信間隔判定部130は、受信間隔監視部125が監視しているそれぞれの定期送信情報の受信間隔を、それぞれ予め定めた所定の閾値との間で比較する(ステップSA02)。いずれも閾値以下である場合、制御指令選択部115は、指令解析部110が作成した実行形式の指令データ及びPC2から送信された干渉チェックの処理結果を制御部120に出力する。制御部120は、入力された指令データ及び干渉チェックの処理結果に従って産業用機械3を制御する(ステップSA03)。
【0041】
一方で、受信間隔判定部130の判定の結果、いずれかの敵送信情報の受信間隔が閾値を超えている場合、制御指令選択部115は、安全動作指令記憶部170に記憶される安全動作の指令データを制御部120に出力する。制御部120は、入力された指令データに従って産業用機械3が安全動作をするように制御する(ステップSA04)。安全動作を実行後は、その安全動作の内容に従って、産業用機械3の運転を継続するか、或いは産業用機械3の運転を中断する。
【0042】
上記構成を備えた制御装置1では、PC2から定期的に送信される定期送信情報の受信間隔が遅れてきた場合に、産業用機械3の制御を安全動作に移行することが可能となる。これにより、汎用OS上で動作するPC側の連携アプリケーションを用いている場合に、PC側の動作遅延やハングアップといった問題の機械動作への影響を少なく抑えることができる。受信間隔の判定に用いる閾値を段階的に設けることで、例えば定期送信情報の受信間隔が閾値を超えた場合に、段階的に産業用機械3の移動部の移動速度を抑制していき、最終的には停止する、といったような柔軟な対応が可能となる。PC2側の処理の遅れが一時的なものであれば、いきなり産業用機械3の運転停止させずに対応することも可能になる。定期送信情報の種類に対して異なる安全動作を設けることで、例えば受信できなくなった機能ごとに制御装置1の内部機能へと切り替えたり、受信できないことが致命的な情報と、致命的ではなく産業用機械3の運転の継続が可能な情報とで異なる安全動作を設定したりする等といった柔軟な対応をすることができる。
【0043】
本実施形態による制御装置1の変形例として、制御指令選択部115は、受信間隔判定部130がPC2から送信される定期送信情報の受信間隔が予め所定の閾値を超えていると判定した場合に、制御装置1の状態や産業用機械3の状態、周辺機器の状態等に応じて異なる安全動作に係る指令データを制御部120へと出力するようにしてもよい。この場合、安全動作指令記憶部170には、予め制御装置1の制御状態にそれぞれ対応した複数の安全動作の指令データを記憶しておく。このようにすることで、制御指令選択部115は、状態情報記憶部180から読み出した産業用機械3の移動部の位置や速度、主軸の回転状態、工具の種別、切削液供給装置や機械扉などの周辺機器の状態等や、制御用プログラム190の実行ブロックの番号、産業用機械3からフィードバックされるサーボモータ50やスピンドルモータ62の負荷状態等に応じて、異なる安全動作を選択することができる。
【0044】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記実施形態では制御装置1がPC2側で動作する機械衝突防止機能の連携アプリケーションと連携する例を示した。しかしながら、その他の連携アプリケーションと連携させることもできる。例えば、工具折損を検知するための連携アプリケーションをPC2で動作させ、センサ等の産業用機械3の周辺装置とPC2を接続し、PC2側で工具の折損状態を検出する場合にも対応することができる。この場合、PC2側から定期的に工具の折損状態を制御装置1に対して送信し、この情報を定期送信情報として制御装置1の受信間隔監視部125で監視するようにすればよい。
【0045】
また、PC2で機械学習に係る連携アプリケーションを実行させ、これと制御装置1とが連携する場合も考えられる。例えば、産業用機械3の内部及び周辺を複数のカメラ等で撮像し、その撮像動画をPC2上の機械学習連携アプリケーションで動作状態や周辺の状態を解析して、その解析結果を制御装置1に送信する。このような場合に、PC2からの解析結果の送信が遅れた時に、産業用機械3に安全動作を取らせるようにしてもよい。
【符号の説明】
【0046】
1 制御装置
2 PC
3 産業用機械
4 制御システム
5 ネットワーク
6 フォグコンピュータ
7 クラウドサーバ
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,17,18,20 インタフェース
19 I/Oユニット
22 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
60 スピンドル制御回路
61 スピンドルアンプ
62 スピンドルモータ
63 ポジションコーダ
70 表示装置
71 入力装置
72 外部機器
110 指令解析部
115 制御指令選択部
120 制御部
125 受信間隔監視部
130 受信間隔判定部
170 安全動作指令記憶部
180 状態情報記憶部
190 制御用プログラム
211 CPU
212 ROM
213 RAM
214 不揮発性メモリ
215,217,218,219 インタフェース
222 バス
270 表示装置
271 入力装置
272 外部機器
210 状態監視部
220 アプリケーション実行部
230 処理結果送信部
図1
図2
図3