(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】制御装置
(51)【国際特許分類】
G05B 19/414 20060101AFI20241008BHJP
G16Y 10/25 20200101ALI20241008BHJP
【FI】
G05B19/414 Q
G16Y10/25
(21)【出願番号】P 2022561913
(86)(22)【出願日】2021-11-08
(86)【国際出願番号】 JP2021041016
(87)【国際公開番号】W WO2022102581
(87)【国際公開日】2022-05-19
【審査請求日】2023-06-15
(31)【優先権主張番号】P 2020187222
(32)【優先日】2020-11-10
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110001151
【氏名又は名称】あいわ弁理士法人
(72)【発明者】
【氏名】齋藤 卓哉
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開2010-277425(JP,A)
【文献】特開平05-084631(JP,A)
【文献】特開平11-202917(JP,A)
【文献】特開昭52-006434(JP,A)
【文献】特開2016-215303(JP,A)
【文献】特開平10-124131(JP,A)
【文献】特開2020-151817(JP,A)
【文献】米国特許出願公開第2010/0063608(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/05-19/414
B23Q 15/00-17/09
B25J 19/06
G06F 3/00-15/00
G16Y 10/25
(57)【特許請求の範囲】
【請求項1】
産業機械を制御する制御装置において、
前記産業機械に係るデータの参照及び更新の少なくともいずれかを実行するための少なくとも1つのデータアクセスロジックが記憶されたデータアクセスロジック記憶部と、
前記産業機械へのデータアクセスをする際に
それぞれの産業機械に対応するデータアクセスロジックを前記データアクセスロジック記憶部から読み出し、該データアクセスロジックに基づいて、前記産業機械に係るデータの参照及び更新の少なくともいずれかを実行するデータ管理部と、
前記産業機械の制御処理を実行するための少なくとも1つの操作ロジックが記憶された操作ロジック記憶部と、
前記産業機械を操作する際に
それぞれの産業機械に対応する操作ロジックを前記操作ロジック記憶部から読み出し、該操作ロジックに基づいて、前記産業機械に係る操作を実行する操作管理部と、
前記データ管理部及び前記操作管理部に対して前記制御装置が備える各機能がアクセスするための共通インタフェースを提供するインタフェース部と、
を備え、
前記産業機械に係る機能の利用が前記共通インタフェースを介して行えるようにした、制御装置。
【請求項2】
前記機能は、前記産業機械で用いられる工具に係る操作を行う機能、前記工具に係るデータにアクセスする機能、前記工具に係る寿命管理の機能うち少なくともいずれかである、
請求項1に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置に関し、特に同一のインタフェースを介してデータ管理や操作を行える制御装置に関する。
【背景技術】
【0002】
制御装置は、製造現場で用いられる工作機械やロボット、周辺装置などの多種多様の産業用の機械を制御する(特許文献1など)。例えば、3軸制御工作機械、5軸制御工作機械、ミリング加工機、旋盤、研削盤、ギア加工機などの加工機や、マガジン収納式自動工具交換装置(ドラム収納方式、チェーン収納方式、マトリックス収納方式など)、タレット式自動工具交換装置、くし刃式刃物台などの工具交換装置、多関節ロボット、パラレルリンクロボットなどのロボットなど、様々な機械を制御する。また、同じ加工機や工具交換装置を制御する場合にも、穴あけ工具、フライス工具、タップ工具などの様々な工具を扱う。
【0003】
制御装置には、このように多種多様な機械の仕様や、多種多様な周辺装置、工具の仕様に対応するために、数多くの機能が存在する。それぞれの機能毎にサポート範囲が異なることもあり、機械メーカは所望の機械制御を実現するために必要となる機能を吟味して選択する。
【0004】
制御装置の機能は、その機能毎に操作仕様やデータ構成が変わることが多い。そのため、選択する機能に応じて、データアクセスや操作を行うためのインタフェースが異なるケースが多くなる。
【0005】
また、上記の機能群で不足する要素に対して、マクロ変数やPLC変数領域などを活用して独自の工具管理の仕組みを構築している機械メーカ(時には機械ユーザ)も多く存在する。このような仕組みは、機械メーカ毎あるいは機械毎に、独自仕様およびインタフェースを持つケースも多い。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
様々な機械種類、機械メーカの産業機械が混在する製造現場においては、制御装置の設定が異なる機械群や、独自の工具管理の仕組みを持った機械群が混在する。そのため、データ収集システムの構築や周辺機器との連携の際に、機械毎に異なる対応が必要となる。これが、現場の作業者による各設備の活用を困難にする一因となっている。
そこで、多種多様な機械、周辺装置、装備品に係るやり取りを共通のインタフェースを介して行うことができる仕組みが望まれている。
【課題を解決するための手段】
【0008】
本発明による制御装置は、製造現場で用いられる工作機械やロボット、周辺装置などの産業機械毎に異なるインタフェースを共通化することにより、上記課題を解決する。
本発明による制御装置は、産業機械毎に異なる該産業機械に係るデータの参照及び設定の手順(以下、データアクセスロジックとする)と、該産業機械に対して行われる操作の手順(以下、操作ロジックとする)とを管理する。そして、産業機械との間でデータアクセスや操作を行うためのやり取りをする際に、制御対象の産業機械のために用意されているデータアクセスロジック及び操作ロジックを共通のインタフェースを介して呼び出す。データアクセスロジック及び操作ロジックは、産業機械に取り付けられた工具などの装備品が異なるごとに用意しても良い。
【0009】
そして、本発明の一態様は、産業機械を制御する制御装置において、前記産業機械に係るデータの参照及び更新の少なくともいずれかを実行するための少なくとも1つのデータアクセスロジックが記憶されたデータアクセスロジック記憶部と、前記産業機械へのデータアクセスをする際にそれぞれの産業機械に対応するデータアクセスロジックを前記データアクセスロジック記憶部から読み出し、該データアクセスロジックに基づいて、前記産業機械に係るデータの参照及び更新の少なくともいずれかを実行するデータ管理部と、前記産業機械の制御処理を実行するための少なくとも1つの操作ロジックが記憶された操作ロジック記憶部と、前記産業機械を操作する際にそれぞれの産業機械に対応する操作ロジックを前記操作ロジック記憶部から読み出し、該操作ロジックに基づいて、前記産業機械に係る操作を実行する操作管理部と、前記データ管理部及び前記操作管理部に対して前記制御装置が備える各機能がアクセスするための共通インタフェースを提供するインタフェース部と、を備え、前記産業機械に係る機能の利用が前記共通インタフェースを介して行える、制御装置である。
【発明の効果】
【0010】
本発明の一態様により、多種多様な機械、周辺装置、装備品に係るやり取りを共通のインタフェースを介して行うことが可能となり、現場に設置された多種多様の設備をより容易に活用することができるようになる。
【図面の簡単な説明】
【0011】
【
図1】一実施形態による制御装置の概略的なハードウェア構成図である。
【
図2】一実施形態による制御装置の機能を示す概略的なブロック図である。
【
図3】データアクセスロジック記憶部の例を示す図である。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態を図面と共に説明する。
図1は本発明の第1実施形態による制御装置の要部を示す概略的なハードウェア構成図である。本発明の制御装置1は、例えば機械3を制御用プログラムに基づいて制御する制御装置として実装することができる。
【0013】
本実施形態による制御装置1が備えるCPU11は、制御装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス22を介して読み出し、該システム・プログラムに従って制御装置1全体を制御する。RAM13には一時的な計算データや表示データ、及び外部から入力された各種データ等が一時的に格納される。
【0014】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、制御装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれた制御用プログラムやデータ、インタフェース18を介して入力装置71から入力された制御用プログラムやデータ、ネットワーク5を介して他の制御対象となる機械やフォグコンピュータ6、クラウドサーバ7等から取得された制御用プログラムやデータ等が記憶される。不揮発性メモリ14に記憶されるデータは、例えば機械における各モータの位置や速度、加速度、負荷、使用時間、その他の機械に取り付けられた図示しないセンサで検出された各物理量に係るデータ等が含まれていてよい。また、不揮発性メモリ14に記憶されるデータは、例えば他の制御対象となる機械における各モータの位置や速度、加速度、負荷、使用時間、その他の該機械に取り付けられた図示しないセンサで検出された各物理量に係るデータ等が含まれていてよい。不揮発性メモリ14に記憶された制御用プログラムやデータは、実行時/利用時にはRAM13に展開されてもよい。また、ROM12には、公知の解析プログラムなどの各種システム・プログラムがあらかじめ書き込まれている。
【0015】
インタフェース15は、制御装置1のCPU11と外部記憶媒体等の外部機器72と接続するためのインタフェースである。外部機器72側からは、例えば機械の制御に用いられる制御用プログラムや設定データ等が読み込まれる。また、制御装置1内で編集した制御用プログラムや設定データ等は、外部機器72を介して図示しないCFカードやUSBメモリ等の外部記憶媒体に記憶させることができる。プログラマブル・ロジック・コントローラ(PLC)16は、ラダープログラムを実行して、入出力信号に基づいて制御される機械3(例えば、工具交換装置や、ロボット等のアクチュエータ、機械に取付けられている温度センサや湿度センサ等のセンサ)にI/Oユニット19を介して信号を出力し制御する。また、機械3からの信号を受け取り、それに必要な信号処理をした後、CPU11に渡す。
【0016】
インタフェース20は、制御装置1のCPUと有線乃至無線のネットワーク5とを接続するためのインタフェースである。ネットワーク5は、例えばRS-485等のシリアル通信、Ethernet(登録商標)通信、光通信、無線LAN、Wi-Fi(登録商標)、Bluetooth(登録商標)等の技術を用いて通信をするものであってよい。ネットワーク5には、他の制御対象となる機械やフォグコンピュータ6、クラウドサーバ7等の上位の管理装置が接続され、制御装置1との間で相互にデータのやり取りを行っている。
【0017】
表示装置70には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース17を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置71は、作業者による操作に基づく指令,データ等をインタフェース18を介してCPU11に渡す。
【0018】
機械が備える軸を制御するための軸制御回路30は、CPU11からの軸の移動指令量を受け取って、軸の指令をサーボアンプ40にそれぞれ出力する。サーボアンプ40はこの指令を受け取って、機械が備える駆動部を軸に沿って移動させるサーボモータ50をそれぞれ駆動する。軸のサーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にそれぞれフィードバックし、位置・速度のフィードバック制御を行う。なお、
図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50はそれぞれ1つずつしか示されていないが、実際には制御対象となる機械に備えられた軸の数だけ用意される。
【0019】
図2は、本発明の第1実施形態による制御装置1が備える機能を概略的なブロック図として示したものである。本実施形態による制御装置1が備える各機能は、
図1に示した制御装置1が備えるCPU11がシステム・プログラムを実行し、制御装置1の各部の動作を制御することにより実現される。
【0020】
本実施形態の制御装置1は、制御用プログラム実行部100、ネットワーク制御部110、I/O制御部120、画面操作制御部130、インタフェース部140、データ管理部150、操作管理部160を備える。また、制御装置1のRAM13乃至不揮発性メモリ14には、機械2,3,4や周辺装置などを制御するためのNCプログラム(数値制御プログラム)等の制御用プログラム200が記憶されると共に、制御対象となる機械2,3,4の制御に係る機能で用いられるデータの参照乃至更新を行うためのデータアクセスロジックが記憶されたデータアクセスロジック記憶部210、データアクセスロジックにより取得されたデータを記憶するための領域であるデータ記憶部220、制御対象となる機械2,3,4の制御に係る機能で行われる操作を実行するための操作ロジックが記憶された操作ロジック記憶部230、がそれぞれ設けられている。
【0021】
制御用プログラム実行部100は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、軸制御回路30、PLC16、インタフェース17,18,インタフェース20等を用いた処理が行われることで実現される。制御用プログラム実行部100は、制御用プログラム200を解析し、その解析結果に基づいて軸制御回路30を介して制御される機械2やPLC16を介して制御される機械3、ネットワーク5を介して制御される機械4等の動作を制御する。制御用プログラム実行部100は、例えば制御用プログラム200により指令された機械2,3,4を制御する指令に基づいて、機械2,3,4を制御するための指令データを作成して出力する。一方で、制御用プログラム実行部100は、サーボモータ50の状態(モータの電流値、位置、速度、加速度、負荷等)をフィードバック値として取得して各制御処理に使用する。制御用プログラム実行部100は、機械2,3,4に係る所定のデータにアクセス(参照や更新)する場合は、インタフェース部140が提供するインタフェースを介してアクセスする。また、制御用プログラム実行部100は、機械2,3,4に対して所定の制御に係るデータを出力する際には、インタフェース部140が提供するインタフェースを介して出力する。
【0022】
ネットワーク制御部110は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、インタフェース20等を用いた処理が行われることで実現される。ネットワーク制御部110は、ネットワークを介したデータへのアクセスや指令の入出力を行う。ネットワーク制御部110は、ネットワーク5を介して機械2,3,4に係る所定のデータにアクセス(参照や更新)する場合、インタフェース部140が提供するインタフェースを介してアクセスする。また、ネットワーク制御部110は、ネットワーク5を介して機械2,3,4に対して所定の制御に係る指令を出力する場合は、インタフェース部140が提供するインタフェースを介して該指令を出力する。
【0023】
I/O制御部120は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、PLC16等を用いた処理が行われることで実現される。I/O制御部120は、PLC16を介したデータへのアクセスや指令の入出力を行う。I/O制御部120は、PLC16を介して機械2,3,4に係る所定のデータにアクセス(参照や更新)する場合は、インタフェース部140が提供するインタフェースを介してアクセスする。また、I/O制御部120は、PLC16を介して機械2,3,4に対して所定の制御に係る指令を出力する場合は、インタフェース部140が提供するインタフェースを介して該指令を出力する。
【0024】
画面操作制御部130は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、インタフェース17,18等を用いた処理が行われることで実現される。画面操作制御部130は、UI(ユーザインタフェース)としての表示装置70への表示出力や入力装置71を介した入力の制御を行う。画面操作制御部130は、表示装置70に表示する所定のデータを、インタフェース部140が提供するインタフェースを介して取得する。
【0025】
インタフェース部140は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理が行われることで実現される。インタフェース部140は、制御用プログラム実行部100、ネットワーク制御部110、I/O制御部120、及び画面操作制御部130に対してデータ管理部150や操作管理部160を用いるための共通のインタフェースの仕組みを提供する。
【0026】
インタフェース部140が提供するデータアクセスに係る共通のインタフェースは、少なくともデータ参照のためのインタフェースとデータ更新のためのインタフェースとを含む。データ参照のためのインタフェースは、例えば、アクセス先の機械を一意に識別する情報とアクセス先のデータ項目を一意に識別する情報とを入力とし、該データの値を出力とするものであって良い。データ更新のためのインタフェースは、例えばアクセス先の機械を一意に識別する情報、アクセス先のデータ項目を一意に識別する情報、及び更新するデータの値を入力とし、該データ値の更新の正否を出力とするものであって良い。インタフェース部140は、共通のインタフェースを介したデータアクセスに係る要求を受けると、指定された機械に係るデータアクセスロジックを用いた処理を実行するようにデータ管理部150に対して指令する。
【0027】
また、インタフェース部140が提供する操作に係る共通のインタフェースは、例えば操作する機械を一意に識別する情報、操作を一意に識別する情報、及び該操作に係るパラメータの値を入力とし、該操作の正否を出力とするものであって良い。インタフェース部140は、共通のインタフェースを介した操作に係る要求を受けると、指定された機械に係る操作ロジックを用いた処理を実行するように操作管理部160に対して指令する。
【0028】
データ管理部150は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、軸制御回路30、PLC16、インタフェース17,18,インタフェース20等を用いた処理とが行われることで実現される。データ管理部150は、制御対象となる機械に係るデータに対するアクセスを管理する。データ管理部150は、所定の機械に係るデータに対するアクセス(参照、更新等)が要求されると、当該機械に係るデータアクセスロジックをデータアクセスロジック記憶部210から読み出して実行することで、該機械に係るデータに対するアクセスを行う。
データアクセスロジック記憶部210には、
図3に例示されるように、それぞれの機械に係るデータにアクセスするために用いられるデータアクセスロジックが制御対象となる機械に関連付けられて記憶されている。制御装置1が軸制御回路30を介して制御する機械2に係るデータアクセスロジックは、例えば、それぞれのデータ項目の値を参照する際の軸の番号、読み取り値の参照のための処理手順、読み取り値から参照値への変換の手順などを含む。制御装置1がPLC16を介して制御する機械3に係るデータアクセスロジックは、例えば、それぞれのデータ項目の値を参照する際の信号のアドレス、信号値の参照のための処理手順、信号値から参照値への変換の手順などを含む。制御装置がネットワーク5を介して制御する機械4に係るデータアクセスロジックは、例えば、該機械のネットワーク5上の位置、それぞれのデータ項目の値を更新する際のアドレス、更新値から機械上の値編変換の手順、更新のための処理手順などを含む。
それぞれのデータアクセスロジックは、制御装置1のCPU11やPLC16上で動作するサブプログラムなどで作成されていてよい。これらのデータアクセスロジックは、制御対象となる機械の機械メーカが予め作成しておいても良いし、該機械のユーザが独自で開発しても良い。データ管理部150は、1つのデータ項目に対するアクセス要求に対して、1つのデータアクセスロジックを実行することでデータアクセスを実現してもよい。また、所定の定義に従って、1つのデータ項目に対するアクセス要求に対して複数のデータアクセスロジックを組み合わせて実行しても良い。これは、例えば複数の機械に係るデータの値に基づいて算出されるデータ値の参照を行う場合や、1つのデータ値の更新が複数の機械に係るデータに対して影響する場合などに用いられる。このデータに対するアクセス要求とデータアクセスロジックとの対応関係の定義は、予めデータアクセスロジック記憶部210に記憶しておけばよい。
【0029】
データ管理部150は、機械に係るデータをデータ記憶部220に記憶して管理しても良い。この場合、データ管理部150は、インタフェース部140からのデータ参照の要求に応じて、データ記憶部220から該当するデータを検索する。そして、データが存在していた場合には、データ管理部150はデータ記憶部220に記憶されているデータを取得して応答し、一方、データが存在していない場合にはデータアクセスロジックを用いて機械からデータを取得して応答すると共に、取得したデータをデータ記憶部220に記憶する。一方、データ管理部150は、インタフェース部140からのデータ更新の要求に対しては、データ記憶部220に記憶されたデータを更新すると共に、データアクセスロジックを用いて機械上のデータを並列して更新する。データ記憶部220にデータを記憶して管理する場合、記憶したデータに対して有効期限を設けても良い。データ管理部150は、有効期限が切れたデータについては、必ずデータアクセスロジックを用いて機械からデータを取得する。有効期限は、作業者による設定変更などが行われない限り値に変化が無いデータについては大きく設定し、リアルタイムに変化するモータの位置や速度等のデータについては小さく設定するかゼロ(0)に設定しておけばよい。
【0030】
操作管理部160は、
図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、軸制御回路30、PLC16、インタフェース17,18,インタフェース20等を用いた処理とが行われることで実現される。操作管理部160は、制御対象となる機械に係る操作の実行を管理する。操作管理部160は、所定の機械に係る操作の実行が要求されると、当該機械に係る操作ロジックを操作ロジック記憶部230から読み出して実行することで、該機械に係る操作を実行する。
操作ロジック記憶部230には、
図4に例示されるように、それぞれの機械毎に、所定の制御処理を実行するための手順を含む操作ロジックが記憶されている。操作ロジック記憶部230には、それぞれの機械の操作に用いられる操作ロジックが制御対象となる機械に関連付けられて記憶されている。制御装置1が軸制御回路30を介して制御する機械2に係る制御処理を実行する操作ロジックは、例えば、指定された処理を実行する際に使用する軸の番号、制御のための処理手順などを含む。制御装置1がPLC16を介して制御する機械3に係る制御処理を実行する操作ロジックは、例えば、指定された処理を実行する際に使用する信号のアドレス、制御のための処理手順などを含む。制御装置がネットワーク5を介して制御する機械4に係る制御処理を実行する操作ロジックは、例えば、該機械のネットワーク5上の位置、制御のための処理手順などを含む。
それぞれの操作ロジックは、制御装置1のCPU11やPLC16上で動作するサブプログラムなどで作成されていてよい。これらの操作ロジックは、制御対象となる機械の機械メーカが予め作成しておいても良いし、該機械のユーザが独自で開発しても良い。操作管理部160は、1つの操作の実行要求に対して、1つの操作ロジックを実行してもよい。また、所定の定義に従って、1つの操作の実行要求に対して複数の操作ロジックを組み合わせて実行しても良い。複数の操作ロジックを組み合わせて実行する際には、各操作ロジックを排他の関係で実行してもよい。この操作の実行要求と操作ロジックとの対応関係の定義は、予め操作ロジック記憶部230に記憶しておけばよい。
【0031】
以下では、上記構成を備えた制御装置1におけるデータアクセス、操作実行の例を説明する。
工具交換装置A(PLC16経由で接続)と工具交換装置B(ネットワーク5を介して接続)の2つの機械が制御装置1により制御されている場合を考える。データアクセスロジック記憶部210には、工具交換装置Aの工具寿命値状態に係るデータアクセスロジックとして工具交換装置A用の「切削時間基準アクセスロジック」、「使用回数基準ロジック」が記憶されている。また、工具交換装置Bの工具寿命値状態に係るデータアクセスロジックとして工具交換装置B用の「切削時間基準アクセスロジック」、「工具摩耗量基準アクセスロジック」が予め記憶されている。そして、共通インタフェースを介して工具寿命値状態に係る参照が来た時、工具交換装置Aでは「切削時間基準アクセスロジック」、「使用回数基準ロジック」を用いたデータアクセスを行い応答するように定義がされており、工具交換装置Bでは「切削時間基準アクセスロジック」、「工具摩耗量基準アクセスロジック」を用いたデータアクセスを行い応答するように定義がされているとする。
【0032】
この時、上位装置であるフォグコンピュータ6上で動作している稼働監視アプリケーションから、工具交換装置Aの「工具寿命値状態」に係る参照依頼を受けたとする(ステップSA01)。すると、ネットワーク制御部110は、上位PCから受けた依頼に基づいて、工具交換装置Aの「工具寿命値状態」のデータ参照をインタフェース部140に依頼する(ステップSA02)。これを受けたインタフェース部140が、データ管理部150に対して工具交換装置Aの「工具寿命値状態」を参照するように依頼すると(ステップSA03)、データ管理部150は、工具交換装置Aの「工具寿命値状態」を参照するために、データアクセスロジック記憶部210から工具交換装置A用の「切削時間基準アクセスロジック」及び「使用回数基準ロジック」を読み出して実行する(ステップSA04)。それぞれのデータアクセスロジックは、データ記憶部220に工具交換装置Aの切削時間基準データと使用回数基準データが記憶されている場合にはこれを応答する(ステップSA05)。一方、記憶されていない場合には、工具交換装置Aに係るデータを参照するためのサブプログラムを実行し、PLC16経由で工具交換装置Aの切削時間基準データと使用回数基準データを取得し、これを応答する(ステップSA06)。
【0033】
一方で、上位装置であるフォグコンピュータ6上で動作している稼働監視アプリケーションから、工具交換装置Bの「工具寿命値状態」に係る参照依頼を受けたとする(ステップSB01)。すると、ネットワーク制御部110は、上位PCから受けた依頼に基づいて、工具交換装置Bの「工具寿命値状態」のデータ参照をインタフェース部140に依頼する(ステップSB02)。これを受けたインタフェース部140が、データ管理部150に対して工具交換装置Bの「工具寿命値状態」を参照するように依頼すると(ステップSB03)、データ管理部150は、工具交換装置Bの「工具寿命値状態」を参照するために、データアクセスロジック記憶部210から工具交換装置B用の「切削時間基準アクセスロジック」及び「工具摩耗量基準アクセスロジック」を読み出して実行する(ステップSB04)。それぞれのデータアクセスロジックは、データ記憶部220に工具交換装置Bの切削時間基準データと工具摩耗量基準データが記憶されている場合にはこれを応答する(ステップSB05)。一方、記憶されていない場合には、工具交換装置Bに係るデータを参照するためのサブプログラムを実行し、ネットワーク5経由で工具交換装置Bの切削時間基準データと工具摩耗量基準データを取得し、これを応答する(ステップSB06)。
【0034】
別の例として、操作ロジック記憶部230には、工具交換装置Aの工具選択操作に係る操作ロジックとして工具交換装置A用の「低寿命工具選択ロジック」(最も寿命が低い工具が選択される)が記憶されている。また、工具交換装置Bの工具選択操作に係る操作ロジックとして工具交換装置B用の「最短工具選択ロジック」(最も早く搬送できる工具が選択される)が予め記憶されている。そして、共通インタフェースを介して工具選択操作の実行依頼が来た時、工具交換装置Aでは「低寿命工具選択ロジック」を用いた工具選択が実行されるように定義がされており、工具交換装置Bでは「最短工具選択ロジック」を用いた工具選択が実行されるように定義がされているとする。
【0035】
この時、制御用プログラム200で工具選択指令(T_)が指令され、これを制御用プログラム実行部100が実行したとする(ステップSC01)。制御用プログラム実行部100は、工具選択指令の実行に基づいて、工具交換装置Aの「工具選択操作」を実行するようにインタフェース部140に依頼する(ステップSC02)。これを受けたインタフェース部140が、操作管理部160に対して工具交換装置Aの「工具選択操作」を実行するように依頼すると(ステップSC03)、操作管理部160は、工具交換装置Aの「工具選択操作」を実行するために、操作ロジック記憶部230から工具交換装置A用の「低寿命工具選択ロジック」を読み出して実行する(ステップSC04)。この操作ロジックにより、工具交換装置Aに低寿命の工具をサーチして選択するサブプログラムが実行される。該サブプログラムは、PLC16経由で工具交換装置Aから、又はデータ管理部150を介して、各工具の寿命を取得し、低寿命の工具を特定する。そして、特定した低寿命の工具を選択するように、PLC16経由で工具交換装置Aに対して指令する(ステップSC05)。
【0036】
一方で、制御用プログラム200で工具選択指令(T_)が指令され、これを制御用プログラム実行部100が実行したとする(ステップSD01)。制御用プログラム実行部100は、工具選択指令の実行に基づいて、工具交換装置Bの「工具選択操作」を実行するようにインタフェース部140に依頼する(ステップSD02)。これを受けたインタフェース部140が、操作管理部160に対して工具交換装置Bの「工具選択操作」を実行するように依頼すると(ステップSD03)、操作管理部160は、工具交換装置Bの「工具選択操作」を実行するために、操作ロジック記憶部230から工具交換装置B用の「最短工具選択ロジック」を読み出して実行する(ステップSD04)。この操作ロジックにより、工具交換装置Bに最短で選択できる工具をサーチして選択するサブプログラムが実行される。該サブプログラムは、ネットワーク5経由で工具交換装置Bから、又はデータ管理部150を介して、各工具の配置を取得し、最短で選択できる工具を特定する。そして、特定した工具を選択するように、ネットワーク5経由で工具交換装置Bに対して指令する(ステップSD05)。
【0037】
更に別の例として、3軸制御の工作機械A(PLC16経由で接続)と5軸制御の工作機械B(ネットワーク5を介して接続)の2つの機械が制御装置1により制御されている場合を考える。データアクセスロジック記憶部210には、工作機械Aのアラーム診断情報に係るデータアクセスロジックとして工作機械A用の「メーカ準拠アラーム診断データアクセスロジック」が記憶されている。また、工作機械Bのアラーム診断情報に係るデータアクセスロジックとして工作機械B用の「ユーザ定義アラーム診断データアクセスロジック」が予め記憶されている。そして、共通インタフェースを介してアラーム診断情報に係る参照が来た時、工作機械Aでは「メーカ準拠アラーム診断データアクセスロジック」を用いたデータアクセスを行い応答するように定義がされており、工作機械Bでは「ユーザ定義アラーム診断データアクセスロジック」を用いたデータアクセスを行い応答するように定義がされているとする。
【0038】
この時、制御装置1の画面操作制御部130が、表示装置70に対して工作機械Aのアラームの診断画面を表示しようしたとする(ステップSE01)。画面操作制御部130は、画面の表示に必要な情報として工作機械Aの「アラーム診断情報」に係るデータ参照をインタフェース部140に依頼する(ステップSE02)。これを受けたインタフェース部140が、データ管理部150に対して工作機械Aの「アラーム診断情報」を参照するように依頼すると(ステップSE03)、データ管理部150は、工作機械Aの「アラーム診断情報」を参照するために、データアクセスロジック記憶部210から工作機械A用の「メーカ準拠アラーム診断データアクセスロジック」を読み出して実行する(ステップSE04)。このデータアクセスロジックは、データ記憶部220に工作機械Aのメーカが設定したアラーム診断情報が記憶されている場合にはこれを応答する(ステップSE05)。一方、かかるアラーム診断情報が記憶されていない場合には、工作機械Aに係るデータを参照するためのサブプログラムを実行し、PLC16経由で工作機械Aからメーカが設定したアラーム診断情報を取得し、これを応答する(ステップSE06)。
【0039】
一方で、制御装置1の画面操作制御部130が、表示装置70に対して工作機械Bのアラームの診断画面を表示しようとしたとする(ステップSF01)。画面操作制御部130は、画面の表示に必要な情報として工作機械Bの「アラーム診断情報」に係るデータ参照をインタフェース部140に依頼する(ステップSF02)。これを受けたインタフェース部140が、データ管理部150に対して工作機械Bの「アラーム診断情報」を参照するように依頼すると(ステップSF03)、データ管理部150は、工作機械Bの「アラーム診断情報」を参照するために、データアクセスロジック記憶部210から工作機械B用の「ユーザ定義アラーム診断データアクセスロジック」を読み出して実行する(ステップSF04)。このデータアクセスロジックは、データ記憶部220に工作機械Bのユーザが設定したアラーム診断情報が記憶されている場合にはこれを応答する(ステップSF05)。一方、かかるアラーム診断情報が記憶されていない場合には、工作機械Bに係るデータを参照するためのサブプログラムを実行し、ネットワーク5経由で工作機械Bからユーザが設定したアラーム診断情報を取得し、これを応答する(ステップSF06)。
【0040】
更に別の例として、操作ロジック記憶部230に、工作機械Aの工具軌跡描画に係る操作ロジックとして工作機械A用の「座標計算ロジック」、「工具補正計算ロジック」、及び「工具軌跡描画ロジック」が予め記憶され、また、工作機械Bの工具軌跡描画に係る操作ロジックとして工作機械B用の「5軸座標計算ロジック」、「工具補正計算ロジック」、「熱変位補正計算ロジック」、及び「工具軌跡描画ロジック」が予め記憶されている。そして、共通インタフェースを介して工具軌跡描画の実行依頼が来た時、工作機械Aでは「座標計算ロジック」、「工具補正計算ロジック」、「工具軌跡描画ロジック」を順に実行して工具軌跡描画の処理をするように定義がされており、一方、工作機械Bでは「5軸座標計算ロジック」、「工具補正計算ロジック」、「熱変位補正計算ロジック」、「工具軌跡描画ロジック」を順に実行して工具軌跡描画の処理をするように定義がされているとする。
【0041】
この時、上位装置であるフォグコンピュータ6上で動作している状態監視アプリケーションから、工作機械Aの「工具軌跡描画」を実行するように依頼を受けたとする(ステップSG01)。ネットワーク制御部110は、工作機械Aの「工具軌跡描画」を実行するようにインタフェース部140に依頼する(ステップSG02)。これを受けたインタフェース部140が、操作管理部160に対して工作機械Aの「工具軌跡描画」を実行するように依頼すると(ステップSG03)、操作管理部160は、工作機械Aの「工具軌跡描画」を実行するために、操作ロジック記憶部230から工作機械A用の「座標計算ロジック」、「工具補正計算ロジック」、「工具軌跡描画ロジック」を順に読み出して実行する(ステップSG04)。この操作ロジックにより、工作機械Aの座標位置の計算、工具補正の計算、計算した座標値及び工具補正値に基づいた工具軌跡の描画処理が順に実行される。そして、描画計算された結果がインタフェース部140を介して上位装置に応答される(ステップSG05)。
【0042】
一方で、上位装置であるフォグコンピュータ6上で動作している状態監視アプリケーションから、工作機械Bの「工具軌跡描画」を実行するように依頼を受けたとする(ステップSH01)。ネットワーク制御部110は、工作機械Bの「工具軌跡描画」を実行するようにインタフェース部140に依頼する(ステップSH02)。これを受けたインタフェース部140が、操作管理部160に対して工作機械Bの「工具軌跡描画」を実行するように依頼すると(ステップSH03)、操作管理部160は、工作機械Bの「工具軌跡描画」を実行するために、操作ロジック記憶部230から工作機械B用の「5軸座標計算ロジック」、「工具補正計算ロジック」、「熱変位補正計算ロジック」、「工具軌跡描画ロジック」を順に読み出して実行する(ステップSH04)。この操作ロジックにより、工作機械Bの主軸の傾き等を考慮した座標位置の計算、工具補正の計算、熱変位補正の計算、計算した座標値、工具補正値、熱変位補正値に基づいた工具軌跡の描画処理が順に実行される。そして、描画計算された結果がインタフェース部140を介して上位装置に応答される(ステップSH05)。
【0043】
このように、上記構成を備えた制御装置1では、制御対象となる機械毎にデータアクセスロジックや操作ロジックを用いた機械の制御を行うことができる。これら機械に対するデータアクセスや操作は、インタフェース部140が提供する共通のインタフェースを介して行われるため、アプリケーション等の開発者は共通インタフェースの仕様を覚えていれば、容易に仕様の異なる機械に対するデータアクセスや制御を行うことができる。機械間の仕様の相違、工具等の装備品の相違についてはデータ管理部150及び操作管理部160により実行されるデータアクセスロジック、操作ロジックが吸収してくれる。現場の作業者は、共通のインタフェースを用いて、機械の制御、保守や管理に用いる独自のアプリケーションの開発を行うことができるので、開発効率が向上し、設備の保守性の向上が見込める。
【0044】
以上、本発明の一実施形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【符号の説明】
【0045】
1 制御装置
2,3,4 機械
5 ネットワーク
6 フォグコンピュータ
7 クラウドサーバ
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,17,18,20 インタフェース
16 PLC
19 I/Oユニット
22 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
70 表示装置
71 入力装置
72 外部機器
100 制御用プログラム実行部
110 ネットワーク制御部
120 I/O制御部
130 画面操作制御部
140 インタフェース部
150 データ管理部
160 操作管理部
200 制御用プログラム
210 データアクセスロジック記憶部
220 データ記憶部
230 操作ロジック記憶部