JP2019192067A - システム、およびシステム制御方法 - Google Patents
システム、およびシステム制御方法 Download PDFInfo
- Publication number
- JP2019192067A JP2019192067A JP2018086289A JP2018086289A JP2019192067A JP 2019192067 A JP2019192067 A JP 2019192067A JP 2018086289 A JP2018086289 A JP 2018086289A JP 2018086289 A JP2018086289 A JP 2018086289A JP 2019192067 A JP2019192067 A JP 2019192067A
- Authority
- JP
- Japan
- Prior art keywords
- condition
- character string
- data
- program
- controlled device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
【課題】ラダープログラムなどのコントローラで用いられるデバイス制御プログラムについて詳しい知識がない操作者でも、コントローラ配下の被制御デバイスの動作条件を容易に確認できるようにする。【解決手段】被制御デバイスを制御するPLC21からラダープログラム21aを取得する。取得したラダープログラム21aを解析し、デバイスの動作(インターロック)条件を特定する。そして、デバイスの動作条件を自然言語により記述したコメント文字列を動作条件に関連付けて登録する。装置オペレータの制御デバイスやその動作名称に係る検索操作に応じて、そのデバイスの動作条件に関連付けられたコメント文字列を出力する。【選択図】図1
Description
本発明は、被制御デバイスを制御するコントローラのデバイス制御プログラムを処理するシステム、およびシステム制御方法に関する。
工業製品を生産する生産ラインに配置された、搬送装置、加工装置、組立装置といったデバイス、機器の制御に、PLC(プログラマブル・ロジック・コントローラ)、シーケンサなどと呼ばれる制御装置(コントローラ)が用いられている。
一般に、このような制御装置(コントローラ)では、配下のデバイスの動作を決定付ける制御構造を記述した制御プログラム(以下、デバイス制御プログラムという)が用いられる。例えば、IEC61131−3規格には、このようなデバイス制御プログラムとして、グラフィカル表現および、プログラムテキスト表現によるいくつかのソフトウェアアーキテクチャが記載されている。
このようなデバイス制御プログラムでは、ラダープログラムが用いられる場合がある。ラダープログラムでは、コントローラ配下のスイッチやリレー、モータなど種々のデバイスの要素で構成された回路図(ラダーロジック)のような様式で被制御機器の相互関係を記述する。ラダープログラムの作成や編集においては、この回路図に似たグラフィカルな形式が用いられる。一方、実際にメモリ上に格納されるラダープログラムは、例えば上記のIEC61131−3規格に記載されるようなプログラムテキスト形式(あるいはそれと等価なバイナリデータや中間コード)が用いられる。一般に、このようなプログラムテキストは図12のようなラダーロジック表現(形式)に変換可能なソフトウェアアーキテクチャである。
ラダープログラムでは、システム動作の確実性を確保するため、インターロックと呼ばれる仕組み用いられることがある。インターロック機構は、例えばラダープログラムのプログラマが「インターロック回路」などと呼ばれる制御関係を記述することにより定義、作成することができる。例えば、ある被制御機器の動作を別の被制御機器が動作していない場合にのみ許可するようなインターロック回路は、一方の被制御機器を動作させるデバイスのいわゆるb接点を他方の被制御機器の回路に追加する、といった形式で記述できる。
このインターロック機構(回路)は、特定のデバイスの動作に係る動作条件を記述したものと考えることができる。例えば、特定のデバイスの動作状態についてインターロック(条件)が「成立している/成立していない」と言った場合、そのデバイスに係る他のデバイスの状態が動作条件を「満たしている/満たしていない」という意味になる。
もし、あるデバイスに関するデバイス制御プログラムないしラダープログラムで定義されたインターロック条件が成立しない状態であれば、目的のデバイスは動作しない。例えば、装置オペレータが特定の動作を起動しようと操作パネルなどに配置された操作スイッチを押しても、目的のデバイスは動作しない。このように、あるデバイスで装置オペレータが意図した所望の動作が行われない場合、その原因を究明するには、そのデバイスのインターロック条件が何かを知り、その1つ1つを確認する必要がある。
従来では、このようなインターロック条件の調査には、ラダープログラムについてのリテラシー、知見、能力が必要であり、例えばコントローラとその配下のデバイスが配置された現場の装置オペレータには必ずしも容易ではない。例えば、インターロック条件の調査では、手持ちの端末でラダープログラムを表示させ、目的の被制御機器を特定し、そこに記述されているインターロック回路(条件)を読み取る、といった知見、能力が要求される。
そこで、ラダープログラムに記述された制御条件の理解を支援するため、ラダープログラムに記述されたデバイス間の依存関係を表示する、あるいはラダープログラムの検索結果に説明コメントを表示する、などの方法が従来より提案されている。例えば、特許文献1には、デバイス間の依存関係の把握を表示可能なデバッグ装置、デバッグ方法およびデバッグプログラムが開示されている。また、特許文献2には、検索結果表示画面に、スイッチ接点やコイルのような制御要素それぞれに付されたコメント(ネットコメント)を表示する機能を備えたラダープログラム編集装置が開示されている。
しかしながら、特許文献1記載の技術では、デバイス間の関係を表示させることはできるが、オペレータの関心がある動作がプログラムのどの場所に記載されているかを特定することができない。また、特許文献2記載の技術では、検索結果に含まれるネットコメントから接点やコイルのような制御要素の個々については理解できるが、特定のデバイスの動作条件を成立させるのに必要な作業については有用な情報を提供することができない。
即ち、従来では、デバイス制御プログラムで記述された特定のデバイスの動作条件が成立しない場合に、装置オペレータが何を解決すればその条件を成立させることができるか、を容易に理解できるよう支援する仕組みが提供されていなかった。
そこで本発明の課題は、ラダープログラムなどのコントローラで用いられるデバイス制御プログラムについて詳しい知識がない操作者でも、コントローラ配下の被制御デバイスの動作条件を容易に確認できるようにすることにある。
上記課題を解決するため、本発明のシステムにおいては、被制御デバイスを制御するコントローラからデバイス制御プログラムを取得する取得部と、取得した前記デバイス制御プログラムを解析し、前記被制御デバイスの動作条件を特定する解析部と、前記動作条件を自然言語により記述したコメント文字列を前記動作条件に関連付けて登録する設定部と、前記被制御デバイスの動作条件に関連付けられた前記コメント文字列を出力する出力部と、を備えた構成を採用した。
上記構成によれば、ラダープログラムなどのコントローラで用いられるデバイス制御プログラムについて詳しい知識がない操作者でも、コントローラ配下の被制御デバイスの動作条件を容易に確認することができる。
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。
以下に示す実施形態では、デバイス制御を行うコントローラとしてPLC(プログラマブル・ロジック・コントローラ)を例示する。また、コントローラが配下のデバイスを制御するためのデバイス制御プログラムのグラフィカル表現としてはラダープログラムないしラダーロジック(ラダー回路)を前提とする。しかしながら、実際にデバイス制御プログラムがPLCのメモリやストレージに格納される時のフォーマットは任意である。なお、以下の実施形態で例示する部材名や、プログラム、データの名称はあくまでも一例に過ぎない。そして、以下の実施形態で例示する構成、制御手順は、デバイス制御プログラムのグラフィカル表現、あるいはメモリ上のテキスト表現が上記と異なる場合であっても、当業者において適宜、設計変更を加えた上、実施することができるのはいうまでもない。
図1に、本実施形態のシステムの概略構成を示す。インターロック条件表示装置の本システムはインターロック条件表示装置1、デバイス制御装置2、および表示装置3から構成される。
デバイス制御装置2は、例えば生産ラインに配置された加工装置、組立装置、搬送装置、ロボット装置、センサ、スイッチパネルなどのデバイスをシーケンス制御するPLC21を含む。PLC21は、例えば生産ラインに配置された加工装置、組立装置、搬送装置、ロボット装置、センサ、スイッチパネルなどのデバイスに接続される。PLC21は、接続されたこれら配下のデバイスを制御するためのデバイス制御プログラムとして、ラダープログラム21aを格納する。ラダープログラム21aは、予め不図示のラダープログラム開発端末などを用いて作成され、PLC21の内部メモリなどに格納される。また、PLC21の内部メモリには、接続された配下の各デバイスの状態を表現したデバイスデータ21bを有する。各デバイスの状態は、生産ラインのデバイスなどに配置されたセンサやリミットスイッチなどの状態を反映し、刻々と更新されるものとする。
PLC21では、例えばデバイス制御プログラムとしてのラダープログラム21aに、例えば図12に示すようなラダーロジック(ラダー回路)を記述することにより、特定の被制御デバイスの動作条件(インターロック条件)を定義することができる。
図12のラダープログラム21aの場合、被制御デバイスは出力デバイスであるM100で、例えばモータやソレノイドなどに相当する。図12のラダーロジックは、被制御デバイスとしての出力デバイスM100の動作(インターロック)条件の1つは、例えばスイッチや接点などに相当するT100およびX1000の双方がオン、または、T101がオンになることを要求している。また、その際、例えばデバイスデータ21bが示す2つの他のデバイスの状態(D100、D200)が特定の条件を満たすことが要求される。状態(D100、D200)に係る他のデバイスは、例えばPLC21配下のセンサやリミットスイッチなどにより検出した温度などの数値データや、あるいは、特定のロボット装置の位置、姿勢である。
前述のように、図12のように記述された被制御デバイス(M100)の動作条件(インターロック条件)は、ラダーロジックに関する知見なしに解読することはかなり難しい。例えば、ここで、生産ラインの装置オペレータが、デバイス制御装置2のスイッチパネル(不図示)などに配置した起動スイッチを操作して被制御デバイス(M100)を動作させようとしたが、意図した通りの動作が行われなかったとする。その時、装置オペレータが、手持ちの端末などを用いて図12のような被制御デバイス(M100)に係るラダープログラム21aにアクセスできる可能性はある。しかしながら、表示されたラダープログラム21aに記述されたラダーロジックを解読する知見がなければ、インターロックが成立しない原因を特定したり、インターロック条件を成立させるために必要な作業を特定するのは困難である。
そこで、本実施形態では、インターロック条件表示装置1を用いて本システムは、例えばデバイス制御装置2のPLC21のデバイス制御プログラム、即ちラダープログラム21a、およびデバイスデータ21bを解析できるようにする。そして、その解析結果に基づき、特定の被制御デバイス(M100)の動作条件に係る情報を出力装置としての表示装置3に表示させ、オペレータを支援できるようにする。その場合、被制御デバイス(M100)の動作条件に関する支援情報は、例えばそのデバイスの動作条件を成立させるのに必要な要素を具体的に記述したコメント文字列によって出力する。好ましくは、この被制御デバイス(M100)の動作条件に関する支援情報は、「○○を××して下さい」のような動作条件を成立させるのに必要な作業を自然言語により具体的に記述したコメント文字列とする(後述の図15参照)。なお、このコメント文字列による動作(インターロック)条件に関する支援情報を出力する表示装置3はLCDディスプレイなどから構成することができる。
図16は、図1のインターロック条件表示装置1の制御系1000の構成例を示している。図示のようなインターロック条件表示装置1は、パーソナルコンピュータ(PC)と同等のハードウェア構成を利用して実現することができる。図16のインターロック条件表示装置1は、インターロック条件表示装置1の制御部として機能するCPU1aと、ROM1bと、RAM1cと、記憶装置1dと、入力装置1eと、通信インターフェース1fとを備えている。CPU1a、ROM1b、RAM1c、記憶装置1d、入力装置1e、通信インターフェース1fはバス1gを介して接続されている。
CPU1aは、RAM1cを作業領域として使用しながら、ROM1b及び記憶装置1dに記憶されているプログラムを実行する。入力装置1eは、キーボードやマウスなどのポインティングデバイスなどによって構成される。PLC21との通信は、通信インターフェース1fを介して行われる。
図1では、インターロック条件表示装置1は機能ブロック表示により示されている。例えば、本実施形態のインターロック条件表示装置1は、設定部11、ラダープログラム解析部12、取得部13、データ記憶部14、表示部15、表示データ生成部16から構成される。これらのうち、取得部13は例えばネットワークインターフェース回路などを用いて構成され、データ記憶部14は、例えば上記のRAM1c(図16)の記憶領域によって構成される。また、図16の制御系1000に不図示のHDDやSSD、NASなどから構成された外部記憶装置が接続されている場合、データ記憶部14にはこの外部記憶装置の記憶領域を用いることもできる。
図1において、書類フォルダに類似したシンボルで図示した各種のデータは、データ記憶部14に格納される。また、インターロック条件表示装置1の機能ブロックの内、制御手順に係る機能は、CPU1a(図16)のソフトウェアによって実装される。本実施形態のシステム制御方法に関しては、以下でフローチャート図を用いて、詳細に説明する。本実施形態の制御手順を実現するためのCPU1a(図16)のソフトウェアは、例えばCPU1aが実行可能な制御プログラムとして、例えばROM1b(図16)の例えばEEPROM領域や、上記のような外部記憶装置などに記憶させておく。
その場合、後述の制御手順を実現するためのCPU1aの制御プログラムは、ネットワークインターフェース(不図示)を介して、上記の各記憶部に供給し、また新しい(別の)プログラムに更新することができる。あるいは、後述の制御手順を実現するためのCPU1aの制御プログラムは、不図示の磁気ディスクや光ディスク、フラッシュメモリなどの記憶手段と、そのためのドライブ装置を経由して、上記の各記憶部に供給し、またその内容を更新することができる。上述の制御手順を実現するためのCPU1aの制御プログラムを格納した状態におけるROM1bや外部記憶装置などの記憶手段は、本発明の制御手順を格納したコンピュータ読み取り可能な記録媒体を構成することになる。
インターロック条件表示装置1の機能ブロックの内、取得部13は、デバイス制御装置2のPLC21が格納するラダープログラム21aとデバイスデータ21bの情報を読出し、データ記憶部14に記憶する。取得部13は、デバイス制御装置2のPLC21と通信するインターフェースを有し、ラダープログラム21aの情報読出し、およびデバイスデータ21bの情報読出しを行う。
設定部11は、特定の被制御デバイスの動作(インターロック)条件成立に必要な作業を記述したコメント文字列である作業コメントデータ11bを登録編集し、データ記憶部14に記憶させるために用いられる。その場合、作業コメントデータ11bは、例えば装置オペレータが行う操作とラダープログラム該当箇所を関係付けた動作リストデータ11aと紐付けられた上で格納される。この設定登録の対象とする被制御デバイスの動作(インターロック)条件は、取得部13によってPLC21から取得したラダープログラム21aのラダーロジックによって記述されたものとする。
設定部11による設定操作は、例えば、動作リストデータ11aに関連付けて登録すべき作業コメントデータ11bの入力は、例えばインターロック条件表示装置1の制御系1000の入力装置1eを介して行う。この作業コメントデータ11bの設定操作は、ラダープログラム21a中のデバイス要素と、ラダーロジックが記述している制御構造を理解している作業者、例えば、ラダープログラム21aのプログラマや管理者などにより行われる。
ラダープログラム解析部12は、取得部13によってPLC21から取得したラダープログラム21aに記述された特定の被制御デバイスの動作(インターロック)条件を解析する。そして、解析結果に基づき、図10に示すようなインターロック条件データ12aを生成し、データ記憶部14へ記憶させる。ラダープログラム解析部12ラダープログラム21aをインターロック条件毎に分割変換する機能と、インターロック条件を検索する機能を有するものとする。例えば、ラダープログラム21aには、単数のみならず、複数の被制御デバイスと、そのそれぞれの動作(インターロック)条件がラダーロジックによって記述される。そこで、ラダープログラム解析部12は、例えば被制御デバイスごとにその動作(インターロック)条件を分割、特定し、インターロック条件データ12a(図10)を生成する。
データ記憶部14は、設定部11とラダープログラム解析部12と取得部13と表示データ生成部16の各処理で生成されたデータを記憶する機能を有するもので、上述のようにRAM1c(図16)や不図示の外部記憶装置などによって構成される。
表示部15は、データ記憶部14に蓄積された情報を参照し、操作された処理に基づいた表示データ16aを表示する機能を有する。表示データ生成部16は、表示装置3で操作された処理を、データ記憶部14に記憶された作業コメントデータ11bとインターロック条件データ12aとデバイスデータ21bとを用いて表示データ16aを生成し、データ記憶部14へ記憶する。
なお、図1では、例えば動作条件を自然言語により記述したコメント文字列の出力部としての表示部15が、あたかもインターロック条件表示装置1の表示装置であるかのように図示されている。しかしながら、表示部15は、必ずしもインターロック条件表示装置1を構成するPCハードウェアである必要はない。
例えば、表示部15は、設定部11、取得部13、解析部12、が実装されたインターロック条件表示装置1(第1のハードウェア装置)とは異なる例えば遠隔位置に存在していてもよい。例えば、表示部15は、インターロック条件表示装置1とネットワーク接続された、ネットワーク端末(第2のハードウェア装置)の表示装置により構成されていてもよい。このネットワーク端末(第2のハードウェア装置)は、例えば、PLC21を備えたデバイス制御装置2が配置された生産ラインの装置オペレータが携行するような端末とする。即ち、インターロック条件表示装置1(第1のハードウェア装置)のみが、PLC21を備えたデバイス制御装置2が配置された生産ラインから遠隔位置にあり、ネットワーク接続されているような状態である。その場合、例えば動作条件を自然言語により記述したコメント文字列は、表示部15を備えたネットワーク端末(第2のハードウェア装置)で行った特定の被制御デバイスを検索するような検索操作に応じてその表示部15で表示させることができる。
このような構成によれば、生産ラインなどに配置された装置オペレータが、現場での特定の被制御デバイスのインターロック条件不成立に直面した場合でも、動作条件に係る自然言語によるコメント文字列を容易に入手できる。従来では、そのようなインターロック条件不成立の状況では、作業内容の示唆などの支援情報は、電話や電子メールなどの手段を介して、生産ラインの装置オペレータがPLC21のラダープログラム21aの作成者などに連絡を取る必要があった。これに対して、上記のようなネットワーク構成を利用することにより、装置オペレータは、容易に特定の被制御デバイスのインターロック条件不成立を解決するのに必要なコメント文字列を入手することができる。
以下、本発明のインターロック条件表示装置1を用いたシステムの動作について、さらに図面を参照しつつ説明する。図2は、インターロック条件表示装置1について、処理の流れおよびデータの流れを表したフローチャート(S000)である。
図2の制御手順は、ステップS001〜S006により構成される。図2の図示は、ステップS006において、表示部15を介して動作条件に係る自然言語によるコメント文字列を表示させるために必要な手続をごく大まかに列挙したものである。そして、図2の手続の列挙は、必ずしもステップS001〜S006がこの順序で全てシーケンシャルに実行されることを要求するものではない。
例えば、ラダープログラム21aの取得(S002)、コメント文字列の設定登録(S003)、インターロック条件の解析と同データ生成(S004)は、特定のラダープログラム21aについて、予め一通り実行しておく構成でもよい。その場合、コメント文字列の表示データ生成(S005)と、表示(S006)は、例えば種々の被制御デバイスを検索する現場の装置オペレータの検索操作に応じて、その都度、繰り返し実行することができる。
また、後述するように、図2の手続において、ステップS003(図4のS200)の作業コメント登録では、便宜上、その後に図示してあるステップS004(図5のS300)のインターロック条件解析の結果が参照される。これらのステップS003(図4のS200)、ステップS004(図5のS300)は、例えばCPU1aのマルチプロセスないしマルチスレッド実行などによって並行して実行される構成であってもよい。
一方、図3、図4、図5、図6、図7は、処理の流れを表したフローチャート(ステップS100、S200、S300、S400、S500)である。これら図3〜図7の処理は、それぞれステップS101〜ステップS102、ステップS201〜ステップS202、ステップS301〜ステップS306、ステップS401〜ステップS404、およびステップS501〜ステップS502により構成される。
図3のステップS101〜ステップS102は、例えば図2のステップS002に相当し、デバイス制御装置2と取得部13と前記データ記憶部14により実行される。また、図4のステップS201〜ステップS205は、例えば図2のステップS003に相当し、設定部11とデータ記憶部14により実行される。また、図5のステップS301〜ステップS306は、例えば図2のステップS004に相当し、ラダープログラム解析部12とデータ記憶部14により実行される。また、図6のステップS401〜ステップS404は、例えば図2のステップS005に相当し、表示データ生成部16とデータ記憶部14において実行される。また、図7のステップS501〜ステップS502は、例えば図2のステップS006に相当し、表示部15とデータ記憶部14において実行される。
以下、図2の各ステップを、その詳細を記述した図3〜図7の制御手順を参照して順次、説明する。その場合、これらの制御手順で作成ないし参照されるデータ構成は図8〜図11に例示するような構成であるものとする。図8、図9、図10、図11はそれぞれ図1の動作リストデータ11a、作業コメントデータ11b、インターロック条件データ12a、デバイスデータ21bのデータ構成の一例である。
また、図8、図9、図10、図11のデータ構成は、図13、図14に示すようなデバイス構成に相当する。図13は、チャック機構22c1を有するシフタ22c、チャック機構22a1を有するワーク受渡ロボット22a、チャック機構22b1を有するワーク受取ロボット22bを示している。これらのシフタ22c、ワーク受渡ロボット22a、ワーク受取ロボット22bはPLC21により制御されるインターロック関係にあるデバイスである。図13の構成では、ワーク受渡ロボット22aによってワーク22dがシフタ22cに受渡され、シフタ22cによってワーク22dが搬送され、ワーク受取ロボット22bが受取ったワーク22dを他の位置に排出する。上記の具体的な動作プログラムの細部はPLC21に記述されているものとする。
ここで、図2において、ステップS001は、続くステップS002以降の手順の契機となる指令操作を示したものである。例えば、ラダープログラムの取得、解析、コメント文字列の設定、解析(S002〜S004)を、コメント文字列の検索、表示(S005、S006)に先立って予め実行しておく構成では、ステップS002〜S004の処理を選択する指令操作に相当する。この操作は、例えばインターロック条件表示装置1の制御系1000において入力装置1eにより行うものとする。
インターロック条件表示装置1は、図2のステップS002において、ステップS001の指令操作に応答して、PLC21からラダープログラム21a、あるいはさらにデバイスデータ21bを取得する。この詳細な制御手順は、図3のステップS100(S101、S102)に相当し、取得部13がPLC21に格納してあるデータを読み出す。具体的には、ステップS101で取得部13がPLC21のラダープログラム21aを取得し、データ記憶部14に記憶させ、全てのラダープログラムを記憶したらS102に進む。ステップS102では、取得部13によりPLC21のデバイスデータ21bを取得し、記憶する。完了したらEND処理へ進み、図3のS100は全ステップ完了となる。
取得されるデバイスデータ21bは、図11のように、デバイスアドレス21b1、デバイスコメント21b2、そのデバイスの現在の状態を表現する値21b3、の各フィールドを備えたデータリストないしデータテーブルの構造を有する。デバイスアドレス21b1のフィールドには、実際にはバイナリアドレスが格納される場合もあるが、便宜上、この例では図12〜図14の構成で用いているものと同じ表記(T100、D100、M100…など)を用いている。デバイスコメント21b2のフィールドには、例えばラダープログラム21a中で、そのデバイスについて記述されたコメント文字列が取得される。このデバイスコメントは、本実施形態における作業コメント(11b2)とは異なり、従来よりラダープログラムの言語仕様などにおいて、単にデバイスの名前を記述するなどの目的で用いられているものである。
インターロック条件表示装置1は、図2のステップS003において、図4のフローチャートS200に示した制御手順により、設定部11により作業コメントデータの設定登録を行う。ここでは、設定部11は、図4のステップS201で、設定部11は、取得したラダープログラム21aを参照して、動作名称11a1、およびラダープログラム出力回路キー11a2で構成される動作リストデータ11aを取得する。図13、図14の構成では、動作名称11a1、およびラダープログラム出力回路キー11a2で構成される動作リストデータ11aは図8に示すような構成となる。設定部11は、取得した動作リストデータ11aをデータ記憶部14に格納する。
また、続くステップS202では、設定部11は、インターロック条件11b1と、このインターロック条件11b1に関係づけられた作業コメント11b2と、で図9のように構成されたインターロック条件データ(11b)を記憶する。その後、制御はEND処理へ進み図4のS200は全ステップ完了となる。
なお、図4のコメントデータの設定登録は、例えば図9に示すような表形式と同等のユーザーインターフェースを表示部15で表示し、入力装置1e(図16)で作業コメントデータ11bを入力させることにより行う。この作業は、通常、ラダープログラム21aのプログラマやシステム管理者などが実行する。この時、このユーザーインターフェースの初期状態では、作業コメントデータ11bの欄は空欄である。そして、この空欄の作業コメントデータ11bの欄にプログラマやシステム管理者などがインターロック条件11b1に関連する作業コメントデータを入力する。
ここで、インターロック条件11b1は、例えばCPU1aのマルチプロセスないしマルチスレッド実行などによって並行して実行される図2のステップS004(図5のS300)において、ラダープログラム解析部12により解析、取得される。
即ち、図5のステップS301において、ラダープログラム解析部12は、データ記憶部14にラダープログラム21aを取得し、続いてステップS302で取得したラダープログラム21aをインターロック条件毎に分割変換する。ステップS301、S302によりラダープログラム21aのプログラムテキストの最終行まで処理したら(B301)、ステップS303に進む。
PLC21には複数のラダープログラム21a(ないし複数のラダーロジック)が存在することがある。複数のラダープログラム21aが存在する場合は、全てのラダープログラム21aを処理したかを判定(B301)しながら、ステップS301の処理とステップS302の処理を繰り返し実行する。そして、全てのラダープログラム21aについてインターロック条件毎に分割変換が完了したらステップS303に進む。
さらに、ステップS303において、ラダープログラム解析部12は、データ記憶部14に格納されている動作リストデータ11aを取得する。この動作リストデータ11a(図8)は例えば、並行動作により図4のステップS200の手順により生成されているものとする。
続いて、ステップS304で、ラダープログラム解析部12は、ステップS303にて取得した動作リストデータ11aのラダープログラム出力回路キー11a2からインターロック条件を検索するための検索デバイスキーを抽出する。ラダープログラム出力回路キー11a2が複数存在する場合は、すべてを検索デバイスキーとして抽出する。検索デバイスキーの抽出が完了したらステップS305に進める。
さらに、ステップS305において、ラダープログラム解析部12は、動作リストデータ11aのラダープログラム出力回路キー12a1と、ステップS302にてインターロック条件毎に分割変換したインターロック条件12a2とを解析する。そして、その解析の結果、例えば図10のようにラダープログラム出力回路キー12a1とインターロック条件12a2を関連付けたインターロック条件データ12aを生成する。
ラダープログラム解析部12は、インターロック条件データ12aの生成が完了したらステップS306に進み、ステップS305で生成したインターロック条件データ12aをデータ記憶部14に記憶させる。また、設定部11には複数の動作リストデータ11aが存在することがある。従って、複数の動作リストデータ11aが存在する場合は、全ての動作リストデータ11aを処理したか確認(B302)しながら、ステップS303〜S304とS305〜S306を繰り返し実行することになる。以上のようにして図5のインターロック条件データの生成が終了すると、END処理へ進み図5のS300は全ステップ完了となる。
以上のようにして、図8、図9、図10、の動作リストデータ11a、作業コメントデータ11b、インターロック条件データ12aが生成されると、図2のステップS005(図6のS400)、S006(図7のS500)の作業コメントデータの表示データ生成、および例えば表示によるデータ出力が可能となる。
作業コメントデータの表示データ生成においては、まず、図6のステップS401で、表示部15が、データ記憶部14に記憶されている動作リストデータ11a(図8)、およびインターロック条件データ12a(図10)を参照する。そして、操作者、例えば装置オペレータが指定した動作に係るインターロック条件12a2を取得、抽出する。
本実施形態では、特定のデバイスの動作(インターロック)条件に関して装置オペレータを支援する作業コメントデータのうち、成立していない(非成立の)動作(インターロック)条件のみを表示するよう制御を行う。
このため、ステップS402では、表示部15は、PLC21配下の各デバイスの状態を示すデバイスデータ21bを取得する。デバイスデータ21bはこのタイミングにおいて、PLC21から新たに取得する。あるいは、データ記憶部14に記憶されているデバイスデータ21bが何らかのバックグラウンド処理などにより随時更新されている場合には、データ記憶部14からデバイスデータ21bを取得してもよい。
続いて、表示部15は、取得したインターロック条件12a2とデバイスデータ21bとを照合し、インターロック条件が非成立か否かを評価(B401)する。そして、インターロック条件が非成立の場合のみ、そのインターロック条件に関連づけられている作業コメントデータを取得(S403)する。この処理を全てのインターロック条件について行ったことを確認(B402)しながら繰り返す。このようにして、表示部15は、データ記憶部14の作業コメントデータ(図9)から、インターロック条件12a2(図10)が非成立である作業コメント11b2のみを抽出することができる(S404)。このy抽出処理が完了すると、END処理へ進み、図6のS400は全ステップ完了となる。
そして、図7のステップS500(図2のS006)で、表示部15は、抽出したインターロック条件12a2(図10)が非成立である作業コメント11b2を表示装置3により表示させる。ここでは、まず、図7のステップS501で抽出したインターロック条件12a2(図10)が非成立である作業コメント11b2を適当な表示形式、例えば図15に示すような表形式に加工する。そして、ステップS502で、表示部15は、加工した作業コメント11b2を表示装置3に送信し、表示させる。
図15の表形式の作業コメント11b2の表示は、特定の被制御デバイス、シフタ22cの動作に係るもので、同図の上段に示すように「シフタ ワーク受取位置」の動作名称(1501)のタイトル表記の部分を有する。例えば、この動作名称(1501)のタイトル表記の部分は、例えばプルダウン(アップ)メニュー形式や、テキスト入力フィールド形式で構成し、装置オペレータが所望の被制御デバイスを検索する検索操作入力を行えるよう構成することができる。このプルダウン(アップ)メニュー形式や、テキスト入力フィールド形式で構成した動作名称(1501)の部分は、例えば装置オペレータが携行する作業端末を表示装置3として用いる構成において検索手段としてその端末に表示させることができる。例えば上記のような構成により、装置オペレータは、動作条件の不成立に直面した時、デバイス名や参照符号(の一部)などを入力ないし指定することで、動作条件不成立に係る被制御デバイスを検索することができる。
また、図15の表形式の表示では、図9の全ての作業コメント11b2から、インターロック条件12a2(図10)が非成立であるもののみが抽出されている。例えば、図15の表示例では、そのタイミングで、ワーク22dがシフタ22cに載置状態であり、インターロック条件の1つ、T100(図9)は成立している。このため図15の下部の表形式の表示では、インターロック条件のT100(図9)に係る作業コメントは非表示の状態となっている。
なお、図15の表形式の出力フォーマットは一例であって、作業コメント11b2は、例えばラダープログラムに関する知見に乏しい装置オペレータのとって判りやすい形式であれば、当業者において任意の出力形式で出力して構わない。例えば、図12に示したようなラダーロジック形式を用いて、作業コメント11b2を出力することが考えられる。その場合、例えば図9、図10、図15を対比して明らかなように、図15の1番から3番の作業コメント文字列は、図12中のラダーロジックのデバイス要素であるD100=K1、D200=K1、T100、T101、X1000の近傍にそれぞれ表示する。また、同時に、ラダーロジックのデバイス要素 D100=K1、D200=K1、T100、T101、X1000のグラフィック表示の表示色を変更したり強調表示形式を用いてインターロック条件の非成立を強調してもよい。
また、図15のような表形式ないしはリスト形式、および図12に示したようなラダーロジックによる出力形式と、を双方とも表示画面に出力して用いる手法を取っても構わない。また、作業コメント11b2の出力の手法は表示に拘らず、不図示のプリンタなどを用いた印刷出力であってもよいし、ネットワーク接続された外部装置への転送出力などによって行っても構わない。
ここで、図13、図14に示した構成における動作(インターロック)条件不成立の例について説明する。図13で説明したように動作するデバイスがPLC21の配下に接続されている場合において、各デバイスが図14の状態にあるものとする。この図14の各デバイスの位置、姿勢において、シフタ22cをワーク受取ロボット22bのワーク受取位置に移動させようとすると、ワーク受取ロボットとシフタ22cが衝突ないし接触する。同様に、ワーク受渡ロボット22aもワーク受渡位置にいると衝突ないし接触する。また、シフタ22cにワーク22dが置かれている状態でチャック機構22c1を開いたまま移動するとワーク22dが外れて、装置内の機構に衝突ないし接触する可能性がある。そこで、出力デバイス(M100)の動作を介してシフタ22cがワーク受取位置に移動するための動作条件(インターロック条件)は、ラダープログラムで表現すると、上述の図12のようなラダーロジックになる。
そして、装置オペレータが出力デバイス(M100)の動作を介してシフタ22cをワーク受取位置に移動させる所定のスイッチ操作を行った時、上記の動作条件(インターロック条件)が不成立であれば、その所望の動作は実行されない。しかしながら、本実施形態のシステムでは、装置オペレータは図15に示したような表示装置3のユーザーインターフェースを介して、「シフタ ワーク受取位置」の動作名称(1501)を選択、ないし検索することができる。そして、動作(インターロック)条件を成立させるために、現在、必要とされている作業を記述した作業コメントの文字列(1502)を表示させることができる。この作業コメントの文字列(1502)には、自然言語で記述され、しかも具体的な作業内容を記述することができる。従って、ラダープログラムに関する知見に乏しい装置オペレータでも、プログラマや管理者の支援がなくても、極めて容易に動作条件(インターロック条件)の不成立を解消することができる。
以上に示した実施形態の構成はあくまでも一例であって、本発明の実施においては、当業者は本発明の範囲を逸脱しない限り、任意の設計変更を行って構わない。例えば、以上の実施形態では、デバイス制御プログラムや、そのグラフィカル表現としてラダープログラムやラダーロジックを考えた。しかしながら、デバイス制御プログラム、そのグラフィカル表現が上記のラダープログラムやラダーロジックとは異なるシステムにおいても、本発明の基本構成は実施することができる。本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
なお、本発明におけるシステム及びシステムの制御は、前記インターロック条件および動作に関わるコメントの確認が必要であれば、いつでも実施することができる。特に、被制御デバイスの稼働開始前に実施する被制御デバイスのセッティング時に利用することで、セッティングに要する時間を大幅に短縮することができる。また、被制御デバイスの稼働後、被制御デバイスの動作エラー等による停止時にも有効である。
1…インターロック条件表示装置、1a…CPU、1b…ROM、1c…RAM、1d…記憶装置、1e…入力装置、2…デバイス制御装置、3…表示装置、11…設定部、11a…動作リストデータ、11b…作業コメントデータ、12…ラダープログラム解析部、12a…インターロック条件データ、13…取得部、14…データ記憶部、15…表示部、16…表示データ生成部、16a…表示データ、21…PLC、21a…ラダープログラム、21b…デバイスデータ。22a…ワーク受渡ロボット、22b…ワーク受取ロボット、22d…ワーク。
Claims (16)
- 被制御デバイスを制御するコントローラからデバイス制御プログラムを取得する取得部と、
取得した前記デバイス制御プログラムを解析し、前記被制御デバイスの動作条件を特定する解析部と、
前記動作条件を自然言語により記述したコメント文字列を前記動作条件に関連付けて登録する設定部と、
前記被制御デバイスの動作条件に関連付けられた前記コメント文字列を出力する出力部と、を備えたシステム。 - 請求項1に記載のシステムにおいて、前記デバイス制御プログラムがラダーロジック形式に変換可能なプログラムテキストにより表現されているシステム。
- 請求項2に記載のシステムにおいて、前記動作条件が、前記プログラムテキストにより記述された、前記被制御デバイス、および前記被制御デバイスの動作に関係する前記コントローラに接続された他のデバイスのインターロック条件であるシステム。
- 請求項1から3のいずれか1項に記載のシステムにおいて、前記コメント文字列が、前記動作条件を成立させるための作業を支援する情報を含むシステム。
- 請求項1から4のいずれか1項に記載のシステムにおいて、前記コントローラから、前記コントローラに接続された前記被制御デバイスおよび他のデバイスの状態を示すデバイスデータを取得し、取得したデバイスデータに基づき、前記被制御デバイスの動作条件のうち、成立している動作条件を除き、非成立の動作条件に係るコメント文字列のみを前記出力部により出力するシステム。
- 請求項2または3に記載のシステムにおいて、前記出力部が、リスト形式および/またはラダーロジック形式により前記コメント文字列を出力するシステム。
- 請求項1から6のいずれか1項に記載のシステムにおいて、前記取得部、前記解析部、および前記設定部が実装された第1のハードウェア装置とは異なり、前記第1のハードウェア装置とネットワーク接続された第2のハードウェア装置に前記出力部が実装されているシステム。
- 被制御デバイスを制御するコントローラからデバイス制御プログラムを取得する取得工程と、
取得した前記デバイス制御プログラムを解析し、前記被制御デバイスの動作条件を特定する解析工程と、
前記動作条件を自然言語により記述したコメント文字列を前記動作条件に関連付けて登録する設定工程と、
操作者によって指定された前記被制御デバイスの動作条件に関連付けられた前記コメント文字列を出力する出力工程と、を含むシステム制御方法。 - 請求項8に記載のシステム制御方法において、前記デバイス制御プログラムがラダーロジック形式に変換可能なプログラムテキストにより表現されているシステム制御方法。
- 請求項9に記載のシステム制御方法において、前記動作条件が、前記プログラムテキストにより記述された、前記被制御デバイス、および前記被制御デバイスの動作に関係する前記コントローラに接続された他のデバイスのインターロック条件であるシステム制御方法。
- 請求項8から10のいずれか1項に記載のシステム制御方法において、前記コメント文字列が、前記動作条件を成立させるための作業を支援する情報を含むシステム制御方法。
- 請求項8から11のいずれか1項に記載のシステム制御方法において、前記コントローラから、前記コントローラに接続された前記被制御デバイスおよび他のデバイスの状態を示すデバイスデータを取得し、取得したデバイスデータに基づき、前記被制御デバイスの動作条件のうち、成立している動作条件を除き、非成立の動作条件に係るコメント文字列のみを出力装置により出力するシステム制御方法。
- 請求項9または10に記載のシステム制御方法において、前記出力工程で、リスト形式および/またはラダーロジック形式により前記コメント文字列を出力するシステム制御方法。
- 請求項8から13のいずれか1項に記載のシステム制御方法において、前記取得工程、前記解析工程、および前記設定工程が実装された第1のハードウェア装置とは異なり、前記第1のハードウェア装置とネットワーク接続された第2のハードウェア装置に前記出力工程が実装されているシステム制御方法。
- 請求項8から14のいずれか1項に記載の各工程をシステム制御を行う制御部に実行させるための制御プログラム。
- 請求項9に記載の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018086289A JP2019192067A (ja) | 2018-04-27 | 2018-04-27 | システム、およびシステム制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018086289A JP2019192067A (ja) | 2018-04-27 | 2018-04-27 | システム、およびシステム制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019192067A true JP2019192067A (ja) | 2019-10-31 |
Family
ID=68390205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018086289A Pending JP2019192067A (ja) | 2018-04-27 | 2018-04-27 | システム、およびシステム制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019192067A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6813077B1 (ja) * | 2019-12-16 | 2021-01-13 | 株式会社安川電機 | 生産システム、復旧システム、生産方法、及びプログラム |
-
2018
- 2018-04-27 JP JP2018086289A patent/JP2019192067A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6813077B1 (ja) * | 2019-12-16 | 2021-01-13 | 株式会社安川電機 | 生産システム、復旧システム、生産方法、及びプログラム |
US11703830B2 (en) | 2019-12-16 | 2023-07-18 | Kabushiki Kaisha Yaskawa Denki | Production system, recovery system, production method, and information storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7500597B2 (en) | Configurable interface configuration method and system using a remote interface | |
US20060095855A1 (en) | HMI reconfiguration method and system | |
EP0619538A1 (en) | Control apparatus for an automated production system workcell | |
CN104160343A (zh) | 多轴控制系统设定/调整功能辅助装置 | |
JP4820265B2 (ja) | エンジニアリング装置 | |
JP7440227B2 (ja) | ロボットプログラミング装置及びロボットプログラミング方法 | |
US9176734B2 (en) | Ladder program creation apparatus | |
CN110275451A (zh) | 开发支援装置、开发支援方法以及记录介质 | |
JP2019192067A (ja) | システム、およびシステム制御方法 | |
WO2007106085A1 (en) | Configurable human-machine interface configuration method and system using a remote interface | |
JP5862236B2 (ja) | 制御プログラム編集装置及び制御プログラムの作成支援プログラム | |
EP2556414B1 (en) | System and method for solving chemical engineering equations and model development using equation editor | |
CN106155519B (zh) | 画面信息生成装置 | |
JP2010079354A (ja) | 分散型plcシステム | |
JP2013163247A (ja) | ロボットシステム、ロボット、ロボット制御装置およびロボット制御方法 | |
JP7058925B2 (ja) | プラント制御装置 | |
JP6939662B2 (ja) | プログラミング支援装置、プログラミング支援方法及びプログラム | |
JP4588364B2 (ja) | 操作器画面生成装置 | |
WO2024096011A1 (ja) | シーケンスプログラムの編集プログラム | |
JP6657597B2 (ja) | 制御プログラムの編集装置 | |
JP4443436B2 (ja) | 制御システムおよび制御方法 | |
JP2001075614A (ja) | エディタ装置およびエディタプログラムを記録した記録媒体 | |
US20220206453A1 (en) | Program creation device, program creation method, and program | |
WO2018037435A1 (en) | Factory automation system and programmable logic controller | |
JP2005251014A (ja) | 制御システム、制御モニタプログラムおよびそのプログラムを記録した記録媒体、ならびにエディタ装置、エディタプログラムおよびそのプログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180620 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180620 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200804 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20200804 |