JP5552300B2 - 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム - Google Patents

接続機器シミュレータのシーケンス制御装置、方法、及びプログラム Download PDF

Info

Publication number
JP5552300B2
JP5552300B2 JP2009260731A JP2009260731A JP5552300B2 JP 5552300 B2 JP5552300 B2 JP 5552300B2 JP 2009260731 A JP2009260731 A JP 2009260731A JP 2009260731 A JP2009260731 A JP 2009260731A JP 5552300 B2 JP5552300 B2 JP 5552300B2
Authority
JP
Japan
Prior art keywords
sequence
memory
programmable display
execution
control
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.)
Active
Application number
JP2009260731A
Other languages
English (en)
Other versions
JP2011107866A (ja
Inventor
欣史 古山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hakko Electronics Co Ltd
Original Assignee
Hakko Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hakko Electronics Co Ltd filed Critical Hakko Electronics Co Ltd
Priority to JP2009260731A priority Critical patent/JP5552300B2/ja
Publication of JP2011107866A publication Critical patent/JP2011107866A/ja
Application granted granted Critical
Publication of JP5552300B2 publication Critical patent/JP5552300B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Feedback Control In General (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、プログラマブル表示器に接続され、プログラマブル表示器の接続機器を擬似的にシミュレートする技術に関する。
従来のプログラマブル表示器用の接続機器シミュレータ装置(以下シミュレータ装置と表記する)は、プログラマブル表示器からのメモリの読込み/書込み要求に応じて、擬似的に構築されている接続機器メモリ(以下擬似メモリと表記する)に対して読出し/書換えを行うことで、接続機器をシミュレートしている。このとき、シミュレータ装置は、シミュレート中の擬似メモリ中のアドレス(又は変数)とその値を一覧で表示し、GUI(グラフィカル・ユーザ・インタフェース)にてユーザが任意に指定した擬似メモリのアドレスに対して読込み/書込みを行う機能を有する。更に、シミュレータ装置は、ユーザが任意に指定した擬似メモリのアドレスの値を、任意に指定した単位/範囲/時間でインクリメント/デクリメントする機能を有している。
例えば、下記特許文献1及び2では、プログラマブル・ロジック・コントローラ(以下PLCと表記)内の動作をシミュレートする方式が開示されている。これらの従来技術は、PLCのシーケンスをシミュレートすることにより、PLCのデバッグ効率を向上させている。
また、下記特許文献3ではプログラマブル表示器とシミュレータ装置間の汎用的なインタフェースと、シミュレータ装置内部に持つ擬似メモリの制御方法について開示されている。この従来技術は、プログラマブル表示器に対するインタフェース部分をシミュレートすることで、実際の接続機器を接続していなくてもプログラマブル表示器の動作を確認することを可能にしている。
特開平4−215105号公報 特開平5−297915号公報 特許第3562783号公報
しかしながら、特許文献1及び2に記載の従来技術は、その目的がPLCのデバッグ効率の向上であり、プログラマブル表示器の接続機器のシミュレータ装置としては使用できないという問題点を有していた。
また、特許文献3の従来技術では、本来シミュレートしたい接続機器の制御シーケンスを実現するためには、シミュレータ装置上の擬似メモリの内容を、実際の制御シーケンスを考慮しながら、ユーザが手動で更新しなければならなかった。このため、多大な設定工数が掛かってしまうという問題点を有していた。
そこで、本発明の課題は、プログラマブル表示器のデバッグのために、PLCの擬似メモリを操作するためのインタフェースだけでなく、プログラマブル表示器との連動に最低限必要なPLC側のシーケンス制御を実現することにある。
態様の一例では、プログラマブル表示器又はプログラマブル表示器のエミュレータ装置がそれに接続される接続機器に対して実行する制御を、その制御時に指定されるデバイスメモリを擬似する擬似メモリを介して模擬するシミュレータ装置として実現され、以下の構成を有する。
シーケンス情報記憶部は、擬似メモリに対する操作シーケンスを記述するシーケンスブロックデータと、その操作シーケンスを実行する契機を指定するシーケンス動作タイミングデータとを記憶する。
シーケンス実行制御部は、シーケンス情報記憶部に記憶された前記操作シーケンスを実行する契機を指定するシーケンス動作タイミングデータを順次読み出すことにより前記操作シーケンスを実行するタイミングを制御しながら、シーケンス情報記憶部に記憶された前記疑似メモリに対する操作シーケンスを記述したシーケンスブロックデータを順次読み出すことにより、前記接続機器の制御時に指定されるデバイスメモリを疑似する擬似メモリに対する操作を実行して模擬する。
本発明によれば、画面データ作成者は、接続機器毎のシーケンス記述方法に依存することなく、接続機器に対するシミュレータ部のシーケンス記述方法でPLC等の接続機器の模擬シーケンスを記述することができ、テスト用のシーケンスを構築する工数を削減することが可能となる。
また、本発明によれば、接続機器に対するシミュレータのシーケンス制御機能が追加されることで、プログラマブル表示器の画面データの開発者は、動作確認のために接続機器の入手を待つ必要がなくなり、確認工数を削減できる効果が得られる。
本実施形態の全体構成図である。 プログラマブル表示器のハードウェア構成例を示す図である。 本実施形態の機能ブロック図である。 シミュレータ部の制御動作を示す動作フローチャートである。 シーケンスデータの構成例を示す図である。 シーケンスブロックとして記述可能な命令の例を示す図である。 シーケンス処理におけるモード遷移を示すモード遷移表である。 シーケンスエディタの画面例を示す図である。
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。
図1は、本実施形態の全体構成図である。
図1に示されるように、プログラマブル表示器1は、プログラマブル・ロジック・コントローラ(以下PLCと表記)や温調器である接続機器や、シミュレータ装置である作画エディタ装置5と、それぞれに対応した通信インタフェース2及び通信ライン3を介して接続される。作画エディタ装置5は、パーソナルコンピュータ等によって構成される。
PLCや温調器といった接続機器4は、汎用的なワーク領域や各制御情報等を、デバイス名とアドレス等とで指定するメモリと、それらを制御する機能によって実現されるのが一般的である。プログラマブル表示器1は、通信インタフェース2から通信ライン3を介して接続機器4に、固有のプロトコルに即した命令を、上述のデバイス名とアドレス等を指定して発行することにより、接続機器4を制御し、また接続機器4の状態を表示することができる。
図2は、図1に示されるプログラマブル表示器1のハードウェア構成例を示す図である
。まず、プログラマブル表示器1は、表示器本体であるディスプレイ7と表示器本体上で各種操作を行うタッチパネル6を備える。また、プログラマブル表示器1は、バスを介して接続されるROM12に記憶された制御プログラムを、同じくバスを介して接続されるRAM13をワーク領域として使用しながら実行することにより、以下に説明する各種制御動作を実現するCPU8を備える。更に、このCPU8にバスを介して接続され、タッチパネル6を制御するタッチパネルコントローラ9、ディスプレイ7を制御するグラフィックコントローラ11、図1の通信ライン3に接続される通信インタフェース2を制御する通信コントローラ10を備える。
図3は、本実施形態の機能ブロック図である。プログラマブル表示器1による表示機能及び接続機器4に対する制御機能は、表示制御などの基本的な機能に関するプログラムを実行する本体プログラム実行部14と、接続機器4毎のそれぞれ固有のプロトコルに対応した通信制御を実行する通信プログラム実行部16とで実現される。
本体プログラム実行部14及び通信プログラム実行部16は、例えば図2において、CPU8がROM12に記憶された本体プログラム実行部14に対応する本体プログラムと通信プログラム実行部16に対応する通信プログラムを実行する機能として実現される。
これらのプログラムは、パーソナルコンピュータ(以下、「PC」という)17内の作画エディタ部19から、通信処理部18及び通信ライン3を介して、プログラマブル表示器1に転送され、例えば図2のROM12(不揮発性メモリ)へ登録される。特に、接続機器4毎に固有の通信プログラムは、PC17内の特には図示しないハードディスク記憶装置等に記憶された通信プログラムファイル23から作画エディタ部19によって読み込まれ、通信処理部18から通信ライン3を介して、プログラマブル表示器1内のROM12等に記憶される。
また、プログラマブル表示器1の本体プログラム実行部14が、どのような表示動作を実行するか、及び行うか、どのような制御を行うか、どのような接続機種かといったプログラマブル表示器1の動作を規定する画面データ15は、PC17上の作画エディタ部19を用いて作成され、プログラマブル表示器1へダウンロードされる。また、この画面データ15は、画面データファイル22として、PC17への保存が可能である。
ここで例えば、PC17上の作画エディタ部19での画面データ15の作成においては、ユーザの操作を受け付けるスイッチ、データの表示を行う数値表示などの各部品のシンボル画を含む部品リストが、PC17上の特には図示しないディスプレイに表示される。ユーザが、この部品リストとの中から所望の部品を選択して、作画エディタ部19がPC17上の特には図示しないディスプレイに表示するプログラマブル表示器1の画面の任意の位置に移動させ、その部品をプログラマブル表示器1に接続される接続機器4のデバイス名とアドレス等の制御対象メモリと対応付ける。これによって、作画エディタ部19は、上記部品に関する画面データ15を作成し、その画面データ15を画面データファイル22として保存すると共にプログラマブル表示器1に転送する。プログラマブル表示器1においては、本体プログラム実行部14が上記画面データ15を読み込むことにより、ユーザが選択した部品に対応する制御プログラムが選択、起動される。そして、その制御プログラムが、指定されたデバイス名のアドレスに対応する制御対象のメモリ情報を、自動的にディスプレイ7(図2)に表示するようになる。このようにして、制御対象として構成されるべき複数の部品を選択して作画エディタ部19が表示する画面上に配置することによって、接続機器4の情報を容易に制御/表示することができる。
プログラマブル表示器1が実装する通信プログラム実行部16は、PC17上の作画エディタ部19で設定された接続機器4に応じてそれぞれ固有の通信プログラムに差し替え
られて動作するような、汎用的な構成にしておくことが実用的である。この場合、本体プログラム実行部14と通信プログラム実行部16の間のインタフェースは、接続機器4固有の通信プロトコルに依存しない、汎用的な共通インタフェースにしておくことが理想的である。
図1において、プログラマブル表示器1と接続機器4の連携動作は、通信ライン3及び通信インタフェース2を介してプログラマブル表示器1から接続機器4に対して指定されるコマンドによって構築される。そして、接続機器4の制御は、そのコマンドによるデバイスメモリに対する操作として実行される。このことは、通信ライン3を介して指定されるコマンドによってプログラマブル表示器1と接続機器4が連携できれば、接続機器4は実機である必要がないということを意味する。そこで、本実施形態において、シミュレータ装置として機能するPC17上のシミュレータ部21には、シミュレートされるデバイスメモリが擬似メモリ24として用意される。より具体的には、擬似メモリ24は、PC17上の特には図示しないRAM(ランダム・アクセス・メモリ)上に確保される。
そして、プログラマブル表示器1とPC17上のシミュレータ部21とが連携してシミュレート動作が実行される場合には、以下のような動作が実行される。
即ちまず、プログラマブル表示器1の通信プログラム実行部16が実行する通信プログラムが、PC17上のシミュレータ部21との通信用の通信プログラムに差し替えられる。これにより、実際にプログラマブル表示器1と通信する接続機器4が、PC17上のシミュレータ部21に変更される。この結果、プログラマブル表示器1があたかも接続機器4の実機に接続しているような状態で、プログラマブル表示器1を動作させることが可能となる。
シミュレータ部21は、擬似メモリ24の記憶内容を表示及び編集するGUI(グラフィカル・ユーザ・インタフェース)等の、擬似メモリ24の記憶内容を容易に表示・変更できる手段を提供する。プログラマブル表示器1が動作を開始すると、コマンドによるデバイスメモリのアドレス指定により、PC17上のシミュレータ部21が管理する擬似メモリがアクセスされる。シミュレータ部21は、シミュレート対象の画面データファイル22と実際にプログラマブル表示器1が表示している画面とに基づいて、擬似メモリ24上のどの記憶内容がアクセスされているかを解析し、その画面で使用される擬似メモリ24の記憶内容をディスプレイ上に一覧表示する。なお、接続機器4の動作を模擬する上で必要になる一時的な記憶領域は、シミュレータ部21が管理するテンポラリメモリ25上に確保される。テンポラリメモリ25は、PC17上の特には図示しないRAM上に確保される。
このようにして、プログラマブル表示器1に接続機器4が擬似的に接続された状態にして、プログラマブル表示器1にダウンロードされた画面データ15の動作を、PC17上でシミュレートすることができる。
ここで、シミュレータ部21は、プログラマブル表示器1をPC17に接続しない状態でも、シミュレート動作を実行することができる。この場合には、PC17内のエミュレータ部20が、プログラマブル表示器1の動作をエミュレートする。そして、シミュレータ部21は、通信処理部18を介して、プログラマブル表示器1とではなくエミュレータ部20と通信を行うことにより、エミュレータ部20に対するシミュレート動作を実行する。
本実施形態では、図3に示されるように、シミュレータ部21において、接続機器4(図1)に対応する擬似メモリ24が構築され、プログラマブル表示器1と接続機器4とのインタフェースが模擬されるだけでなく、シミュレータ部21でシミュレートしている擬
似的な接続機器4での動作シーケンスをユーザが任意に設定できる。これにより、プログラマブル表示器1と接続機器4間の制御シーケンスを容易に模擬することができるようになる。シミュレータ部21が模擬する擬似的な接続機器4の動作シーケンスと動作タイミングは、図3に示されるシーケンスファイル27によって設定される。このシーケンスファイル27は、図3に示されるシーケンスエディタ部26により編集/保存を行うことが可能である。シミュレータ部21は、指定されたシーケンスファイル27より、擬似的な接続機器4の動作シーケンスと動作タイミングを読み込むことで、シミュレート中の擬似的な接続機器4の制御シーケンスを模擬する。
図4は、図3のシミュレータ部21及び通信処理部18の詳細な機能ブロック図である。
まず、図3及び図4の通信処理部18は、プログラマブル表示器1又は図3に示されるPC17内のエミュレータ部20と選択的に通信を行う。シーケンスファイル読込み処理28では、図3のシーケンスファイル27からシーケンスデータを読み込む。シーケンス実行開始処理29では、シーケンスの実行開始を行う。シーケンス実行終了処理30では、シーケンスの実行終了を行う。シーケンス実行指令処理31では、任意のシーケンスの実行を行う。模擬サイクルタイマイベント処理35では、シミュレートする接続機器4のサイクル時間間隔を通知する。時間経過タイマイベント処理36では、シーケンスの実効契機か否かを判定する。擬似メモリアクセス処理37では、擬似メモリ24の更新によってシーケンスの実効契機か否かを判定する。シーケンス実行条件判定処理39では、シーケンスを実行してよい条件であるか否かを判定する。シーケンス実行処理41では、シーケンスを解析して実行する。
次に、図5は、シーケンスファイル27から読み込まれるシーケンスデータの構成例を示す図である。シーケンスデータは、模擬サイクル時間と、シーケンス動作タイミングデータと、シーケンスブロックデータとで構成される。
シーケンス動作タイミングデータは、シーケンス動作タイミングデータNoにより管理され、ヘッダ部とデータ部とに分類できる。シーケンス動作タイミングヘッダには、設定数とそれぞれのシーケンス動作タイミングデータへのオフセット情報が含まれる。シーケンス動作タイミングデータには、それぞれ設定数分のシーケンス動作タイミングデータが含まれる。シーケンス動作タイミングデータは更に、シーケンス動作契機と、シーケンス動作条件と、シーケンスブロックNoとにより構成される。
シーケンス動作契機は、一般的に、PLC等の接続機器4の1処理を表すサイクル毎に実行されるサイクル動作と、一定の時間が経過した場合に実行される定時動作と、指定したメモリの変化に応じて実行されるトリガ動作と、或る時刻において実行される時刻動作等に分類される。
シーケンス動作条件は、無条件で動作を許可する無条件と、メモリの値の演算によって動作の可否が判定される演算条件と、メモリのビット状態によって動作の可否が判定されるビット条件等に分類される。
シーケンスブロックNoは、対応するシーケンスの動作契機において、どのシーケンスブロックを実行するのかを指定するものである。
シーケンスブロックデータは、ヘッダ部とデータ部に分類できる。ヘッダ部には設定数とそれぞれのシーケンスブロックへのオフセット情報が含まれる。データ部は、それぞれ設定数分のシーケンスブロックにより構成される。
シーケンスブロックは、シーケンスブロックNoにより管理され、一連のシーケンス制
御文の集合体として構成される。ここで、シーケンス制御文の文法は、ラダープログラム表記であってもよいし、独自のインタプリンタ形式の文法等でもよいが、本実施形態においては、独自のインタプリンタ形式の文法(以下「マクロ」と表記する)について記述する。
マクロは、コマンドと引数等により記述され、シーケンスを実行するための一時的なワークメモリ領域である図3のテンポラリメモリ25に、アクセスすることが可能である。例えば模擬しようとしているシーケンスがPLC独自の機能によるものであったり、PLCに接続された外部機器と連動して更新される場合に、PLCのシーケンスを模擬するためにシミュレートしているPLCのメモリリソースを使用するのは望ましくない。このような場合は、このテンポラリメモリ25を使用することが推奨できる。例えば、PLCからの情報をもとに、PLCに接続された外部機器が演算してPLCへ演算結果を通知する場合、演算にテンポラリメモリ25を使用することで、模擬しているPLCのメモリリソースを使用しなくてもよい。
以上の構成を有するシミュレータ部21及び通信処理部18の詳細な動作について、以下に説明する。
まず、図3又は図4の通信処理部18は、シミュレータ部21がプログラマブル表示器1(図1)と連動する場合とエミュレータ部20(図3)と連動する場合とで、通信インタフェースの処理を切り替えることで、双方と通信可能な構造になっている。通信対象となるプログラマブル表示器1やエミュレータ部20からシミュレータ部21への命令指示は、コマンドにより行われ、例えばメモリ読込みコマンドやメモリ書込みコマンド等が実装されている。
[シミュレータソフト起動処理]
シミュレータ部21は、起動時に、シミュレート対象画面データを画面データファイル22(図3)から読み込み、シミュレート対象となる接続機器4が保持するデバイスメモリを判定する。
次に、シミュレータ部21は、上述の画面データファイル22の解析処理により判定された、シミュレート対象となる接続機器4が保持するデバイスメモリ領域と、シーケンス機能が使用するワーク領域を、それぞれ擬似メモリ24及びテンポラリメモリ25としてRAM上に確保する。
また、シミュレータ部21は、起動時に指定された通信対象によって、通信処理部18を通信可能な状態に初期化する。
以上の動作により、シミュレータ部21がシミュレート動作を実行可能な状態となる。
[シーケンスファイル読込み処理28]
シミュレータ部21は、ユーザからシーケンスファイル27(図3)が指定されると、シーケンスファイル読込み処理28を実行する。この処理では、図4に示されるように、対象となるシーケンスファイル27が読み込まれ、正常なシーケンスファイルであるか否かがチェックされる。正常なシーケンスファイルであるかは、例えばチェックサム等をファイルヘッダ部に設定する等が考えられる。異常なシーケンスファイルであった場合、エラーがユーザに通知される。正常なシーケンスファイルであった場合、特には図示しないRAM上にシーケンスデータが展開され、シーケンス実行待ち状態へ遷移する。
[シーケンス実行開始処理29]
シーケンス実行開始処理29では、図4に示されるように、ユーザからシーケンス実行開始が指令された場合に、シーケンス実行状態へ遷移する。
これと共に、RAM上に展開したシーケンスデータから模擬サイクル時間が読み取られ、シーケンス実行契機のうち、サイクル動作を行うための模擬サイクル時間間隔で発生するタイマイベントが、タイマイベント管理処理32へ登録される。
また、シーケンス実行契機のうち、定時動作と時刻動作についての判定を行うための時間経過タイマイベントが、タイマイベント管理処理32へ登録される。
これらのタイマは、例えば100ms(ミリ秒)等、定時動作と時刻動作の仕様を満たす程度の監視間隔であることが望ましい。タイマイベントのタイマイベント管理処理32への登録は、より具体的には例えば、タイマイベント管理処理32にて管理されるRAM上のタイマイベント管理領域に、上記タイマイベントの情報を設定する動作である。
また、シーケンス実行契機のうち、定時動作については、監視時刻と経過時間を記憶する領域がRAM上に構築され、監視時刻に現在時間が格納され、経過時間に0が格納される。
また、シーケンス実行契機のうち、時刻動作については、監視時刻を記憶する領域がRAM上に構築され、監視時刻に現在時間が格納される。
更に、シーケンス実行契機のうち、トリガ動作については、トリガビット状態を記憶する領域がRAM上に構築され、トリガビット状態に現在のトリガビット情報が格納される。
[タイマイベント管理処理32]
タイマイベント管理処理32では、シーケンス実行開始処理29により設定された各種タイマイベント、監視・経過時刻、又はトリガビット状態の各条件が満たされるか否かを管理し、条件が満たされた場合に対応するイベント通知を出力する。
[模擬サイクルタイマイベント処理35]
模擬サイクルタイマイベント処理35は、タイマイベント管理処理32により模擬サイクルタイマイベント通知33が発生した場合に実行される。
この処理では、図5に示されるシーケンス動作タイミングヘッダにある設定数とそれぞれの設定データへのオフセット情報が参照され、設定数分のシーケンス動作タイミングデータが上位から下位へ検索される。
そして、サイクル動作設定となっているシーケンス動作タイミングデータ毎に、シーケンス実行条件判定処理39へ、シーケンス実行契機イベント通知38として、シーケンス実行契機イベントの発生と、シーケンス動作タイミングデータNoが通知される。
[時間経過タイマイベント処理36]
時間経過タイマイベント処理36は、タイマイベント管理処理32により時間経過タイマイベントが発生した場合に実行される。
この処理では、図5に示されるシーケンス動作タイミングヘッダにある設定数とそれぞれの設定データへのオフセット情報が参照され、設定数分のシーケンス動作タイミングデータが上位から下位へ検索される。
次に、定時動作となっているシーケンス動作タイミングデータについては、前回RAM
上に記憶された監視時刻と経過時間より今回の経過時間が演算され、その経過時間より指定の周期が経過したかが判定される。また、時刻動作となっているシーケンス動作タイミングデータについては、前回RAM記憶された監視時刻と今回の時刻間に指定の時刻が含まれているかが判定される。これらの各判定処理の後は、定時動作であれば監視時刻と経過時刻が、時刻動作であれば監視時刻が更新される。
そして、シーケンス実行タイミングと判定されたそれぞれのシーケンス動作タイミングデータ毎に、シーケンス実行条件判定処理39へ、シーケンス実行契機イベント通知38として、シーケンス実行契機イベントの発生と、シーケンス動作タイミングデータNoが通知される。
[擬似メモリアクセス処理37]
擬似メモリアクセス処理37は、擬似メモリ24へのアクセスを管理する。
この処理では、指定されたデバイス名とアドレスにより確定される擬似メモリ24上のデータ部に対する読込み処理又は書込み処理が実行される。
書込み処理が行われた場合、シーケンス実行状態であれば、図5に示されるシーケンス動作タイミングヘッダにある設定数とそれぞれのシーケンス動作タイミングデータへのオフセット情報が参照され、設定数分の設定データが上位から下位へ検索される。そして、トリガ動作設定となっているシーケンス動作タイミングデータ毎に、トリガビットが参照される。この結果、書込み処理を行った擬似メモリ24に該当するトリガビットが設定されていれば、前回記憶されたトリガビット状態と現在のトリガビット状態に基づいて、トリガが発生したか否かが判定される。動作判定後は、トリガビット状態が更新される。
トリガが発生した場合、シーケンス実行条件判定処理39へ、シーケンス実行契機イベントの発生と、シーケンス動作タイミングデータNoが通知される。
[シーケンス実行条件判定処理39]
シーケンス実行条件判定処理39は、模擬サイクルタイマイベント処理35、時間経過タイマイベント処理36、又は擬似メモリアクセス処理37からシーケンス実行契機イベント通知38が通知されたときに実行される。
この処理では、シーケンス実行契機イベント通知38として通知されたシーケンス動作タイミングデータNoに該当する図5に示されるシーケンス動作条件が参照され、それぞれの実行条件が満たされているか否かが判定される。
無条件の場合は実行可能とされる。
演算条件の場合は、指定されたメモリアクセスや演算が実行され、その演算結果が実行条件を満たしているか否かが判定される。
ビット条件の場合は、指定されたメモリのビット状態が実行条件を満たしているか否かが判定される。
実行条件を満たしていると判定された場合には、シーケンス実行処理41へシーケンス実行イベントの発生と上記シーケンス動作条件に対応する図5に示されるシーケンスブロックNoが通知される。
実行条件を満たしていないと判定された場合には、シーケンス実行契機イベント通知38は無視される。
[シーケンス実行指令処理31]
シーケンス実行指令処理31は、図4に示されるように、ユーザから任意の図5に示さ
れるシーケンスブロックNoによるシーケンス実行が指令された場合に、図5に示されるシーケンスブロックヘッダにある設定数とそれぞれのシーケンスブロックデータへのオフセット情報が参照される。そして、実行可能なシーケンスブロックデータが設定されていれば、図4のシーケンス実行処理41へシーケンス実行イベント通知42が通知される。実行可能なシーケンスブロックデータが設定されていなければ、エラーがユーザへ通知さされる。
[シーケンス実行処理41]
シーケンス実行処理41は、シーケンス実行イベント通知40又は42が通知された場合に実行される。
この処理では、上記イベント通知により指定されたシーケンスブロックNoから、図5のシーケンスブロックヘッダにある設定数とそれぞれのシーケンスブロックへのオフセット情報が参照される。そして、該当するシーケンスブロックNoのシーケンスブロックデータの先頭より、そのシーケンスブロックデータの末尾までの制御文が、インタプリンタ方式で実行される。
シーケンス実行処理41は、例えば以下のような記述のシーケンスブロックデータが実行された場合は、擬似メモリアクセス処理37を介して擬似メモリ24への操作が実行される。
<シーケンスブロックデータの例>
D100=D200
D200=D200+1

<実行例>
擬似メモリ24上のD200の値をD100に代入し、D200の値を+1する
というシーケンスが実行される。
シーケンスブロックデータとして記述可能な命令の例を、図6に示す。
[シーケンス実行終了処理30]
シーケンス実行終了処理30は、図4に示されるように、ユーザからシーケンス実行終了が指令された場合に実行される。
この処理では、シーケンス実行待ち状態へ遷移すると共に、サイクルタイマイベントと時間経過タイマイベントの削除が、タイマイベント管理処理32に対して指示される。また、シーケンス実行契機を判定するための記憶情報の削除も指示される。
以上説明した各処理の実行によりモード遷移をまとめたのが、図7である。それぞれの遷移モードにおいて、発生したイベント毎に実行される処理が示されている。
図8は、図3のシーケンスエディタ部26の画面構成例及び機能ブロック図を示す図である。
模擬サイクル時間設定画面表示部43は、PLC等の接続機器4の1処理を表すサイクル時間を模擬するための模擬サイクル時間を設定する画面を表示する。
シーケンス動作タイミング設定画面表示部44は、シーケンス動作タイミングを設定する画面を表示する。
シーケンスブロック記述画面表示部45は、ユーザがシーケンスを記述する画面を表示する。
模擬サイクル時間データ取込み部46は、模擬サイクル時間設定画面表示部43において、ユーザによって入力された模擬サイクル時間データを取り込む。
シーケンス動作タイミングデータ取込み部47は、シーケンス動作タイミング設定画面表示部44において、ユーザが「編集」ボタンをマウスクリックすることにより表示される編集画面を介して、ユーザによって入力されたシーケンス動作タイミングデータを取り込む。
シーケンスブロックデータ取込み部48は、シーケンスブロック記述画面表示部45に対して、ユーザによって記述されたシーケンスブロックデータを取り込む。
ファイル保存部49は、模擬サイクル時間データと、シーケンス動作タイミングデータと、シーケンスブロックデータが取り込まれた後、ユーザによる保存指令に応じて、それらのデータをシーケンスファイル27(図2参照)ヘ保存する。
以上説明した実施形態により、次のような効果が生まれる。
即ち、例えば接続機器4のラダープログラムに連動してプログラマブル表示器1を動作させるシステムを構築する際、従来の方法では画面データ作成者はプログラマブル表示器1との連動に必要な部分のラダープログラムのシーケンスを接続機器4に組み込むため、接続機器4毎のシーケンス記述方法を習得する必要があり、テスト用のシーケンスを構築するために多大な工数が必要であった。
これに対して本実施形態によれば、画面データ作成者は、接続機器4毎のシーケンス記述方法に依存することなく、接続機器4に対するシミュレータ部21(図3)のシーケンス記述方法でPLC等の接続機器4の模擬シーケンスを記述することができ、テスト用のシーケンスを構築する工数を削減することが可能となる。
また、接続機器4の入手が開発期間より遅れるような場合において、従来では接続機器4との結合テストを接続機器4の入手まで行なうことができなかった。本実施形態では、接続機器4に対するシミュレータのシーケンス制御機能が追加されることで、プログラマブル表示器1の画面データ15(図3)の開発者は、動作確認のために接続機器4の入手を待つ必要がなくなり、確認工数を削減できる効果が得られる。
1 プログラマブル表示器
2 通信インタフェース
3 通信ライン
4 接続機器
5 作画エディタ装置
6 タッチパネル6
7 ディスプレイ
8 CPU
9 タッチパネルコントローラ
10 通信コントローラ
11 グラフィックコントローラ
12 ROM
13 RAM
14 本体プログラム
15 画面データ
16 通信プログラム
17 PC
18 通信処理部
19 作画エディタ部
20 エミュレータ部
21 シミュレータ部
22 画面データファイル
23 通信プログラムファイル
24 擬似メモリ
25 テンポラリメモリ
26 シーケンスエディタ部
27 シーケンスファイル
28 シーケンスファイル読込み処理
29 シーケンス実行開始処理
30 シーケンス実行終了処理
31 シーケンス実行指令処理
32 タイマイベント管理処理
33 模擬サイクルタイマイベント通知
34 時間経過タイマイベント通知
35 模擬サイクルタイマイベント処理
36 時間経過タイマイベント処理
37 擬似メモリアクセス処理
38 シーケンス実行契機イベント通知
39 シーケンス実行条件判定処理
40 シーケンス実行イベント通知
41 シーケンス実行処理
42 シーケンス実行イベント通知
43 模擬サイクル時間設定画面表示部
44 シーケンス動作タイミング設定画面表示部
45 シーケンスブロック記述画面表示部
46 模擬サイクル時間データ取込み部
47 シーケンス動作タイミングデータ取込み部
48 シーケンスブロックデータ取込み部
49 ファイル保存部

Claims (5)

  1. プログラマブル表示器又はプログラマブル表示器のエミュレータ装置がそれに接続される接続機器に対して実行する制御を、該制御時に指定されるデバイスメモリを擬似する擬似メモリを介して模擬するシミュレータ装置において、
    前記擬似メモリに対する操作シーケンスを記述するシーケンスブロックデータと、該操作シーケンスを実行する契機を指定するシーケンス動作タイミングデータとを記憶するシーケンス情報記憶部と、
    前記シーケンス情報記憶部に記憶された前記操作シーケンスを実行する契機を指定する前記シーケンス動作タイミングデータを順次読み出すことにより前記操作シーケンスを実行するタイミングを制御しながら、前記シーケンス情報記憶部に記憶された前記疑似メモリに対する操作シーケンスを記述した前記シーケンスブロックデータを順次読み出すことにより、前記接続機器の制御時に指定されるデバイスメモリを疑似する前記擬似メモリに対する操作を実行して模擬するシーケンス実行制御部と、
    を含むことを特徴とする接続機器シミュレータのシーケンス制御装置。
  2. 前記シーケンス情報記憶部に記憶された前記疑似メモリに対する操作シーケンスを記述したシーケンスブロックデータに実行可能なシーケンスブロックが設定されていた場合、ユーザが任意にシーケンスブロックNoによるシーケンス実行を指令することで前記シーケンス実行制御部にシーケンス実行イベント通知がなされることでシーケンスを実行するシーケンス実行指令処理部を更に含む、
    ことを特徴とする請求項1に記載の接続機器シミュレータのシーケンス制御装置。
  3. 前記シーケンスブロックデータ及び前記シーケンス動作タイミングデータを編集するシーケンスエディタ部を更に含む、
    ことを特徴とする請求項1に記載の接続機器シミュレータのシーケンス制御装置。
  4. プログラマブル表示器又はプログラマブル表示器のエミュレータ装置がそれに接続される接続機器に対して実行する制御を、該制御時に指定されるデバイスメモリを擬似する擬似メモリを介して模擬するシミュレート方法において、
    前記擬似メモリに対する操作シーケンスを記述するシーケンスブロックデータと、該操作シーケンスを実行する契機を指定するシーケンス動作タイミングデータとをシーケンス情報記憶部に記憶し、
    前記シーケンス情報記憶部に記憶された前記操作シーケンスを実行する契機を指定する前記シーケンス動作タイミングデータを順次読み出すことにより前記操作シーケンスを実行するタイミングを制御しながら、前記シーケンス情報記憶部に記憶された前記疑似メモリに対する操作シーケンスを記述した前記シーケンスブロックデータを順次読み出すことにより、前記接続機器の制御時に指定されるデバイスメモリを疑似する前記擬似メモリに対する操作を実行して模擬する、
    ことを特徴とする接続機器シミュレータのシーケンス制御方法。
  5. プログラマブル表示器又はプログラマブル表示器のエミュレータ装置がそれに接続される接続機器に対して実行する制御を、該制御時に指定されるデバイスメモリを擬似する擬似メモリを介して模擬するシミュレータ装置に、
    前記擬似メモリに対する操作シーケンスを記述するシーケンスブロックデータと、該操作シーケンスを実行する契機を指定するシーケンス動作タイミングデータとをシーケンス情報記憶部に記憶し、
    前記シーケンス情報記憶部に記憶された前記操作シーケンスを実行する契機を指定する前記シーケンス動作タイミングデータを順次読み出すことにより前記操作シーケンスを実行するタイミングを制御しながら、前記シーケンス情報記憶部に記憶された前記疑似メモリに対する操作シーケンスを記述した前記シーケンスブロックデータを順次読み出すことにより、前記接続機器の制御時に指定されるデバイスメモリを疑似する前記擬似メモリに対する操作を実行して模擬する、
    機能を実行させるためのプログラム。
JP2009260731A 2009-11-16 2009-11-16 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム Active JP5552300B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009260731A JP5552300B2 (ja) 2009-11-16 2009-11-16 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009260731A JP5552300B2 (ja) 2009-11-16 2009-11-16 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2011107866A JP2011107866A (ja) 2011-06-02
JP5552300B2 true JP5552300B2 (ja) 2014-07-16

Family

ID=44231279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009260731A Active JP5552300B2 (ja) 2009-11-16 2009-11-16 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP5552300B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014112060A1 (ja) * 2013-01-17 2014-07-24 発紘電機株式会社 プログラマブルコントローラシステム、プログラマブル表示器、支援装置、プログラム
JP6042980B2 (ja) * 2013-05-24 2016-12-14 発紘電機株式会社 プログラマブルコントローラシステム、その作画エディタ装置、そのプログラム
JP6095743B2 (ja) * 2015-09-15 2017-03-15 発紘電機株式会社 支援装置、プログラム
JP6207694B2 (ja) * 2016-08-25 2017-10-04 発紘電機株式会社 プログラマブル表示器、プログラム
DE112018002344T5 (de) * 2017-07-25 2020-01-23 Hitachi Automotive Systems, Ltd. Entwicklungsunterstützungsvorrichtung
CN109270373A (zh) * 2018-09-14 2019-01-25 北京全路通信信号研究设计院集团有限公司 一种全电子联锁测试系统及方法
JP7412076B2 (ja) * 2018-10-23 2024-01-12 株式会社キーエンス プログラマブルロジックコントローラ用のエンジニアリングツール

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6125646U (ja) * 1984-07-17 1986-02-15 富士電機株式会社 シ−ケンスコントロ−ラのプログラムデバツグ装置
JPH035801A (ja) * 1989-06-02 1991-01-11 Hitachi Ltd プログラマブルコントローラ
JPH0793026A (ja) * 1993-09-24 1995-04-07 Sony Corp シーケンスプログラムの検査装置および検査方法
JP3562783B2 (ja) * 1997-06-25 2004-09-08 株式会社デジタル プログラム式表示装置のデバッグ方法
JP3512705B2 (ja) * 2000-03-31 2004-03-31 株式会社デジタル プログラマブル表示器の画面シミュレーションシステム、画面シミュレーション方法および画面シミュレーションのためのプログラムを記録した記録媒体
JP4137434B2 (ja) * 2001-11-26 2008-08-20 三菱電機株式会社 シミュレーション方式及びシミュレーション方法及びプログラムを記録したコンピュータ読取可能な記録媒体
JP2004259112A (ja) * 2003-02-27 2004-09-16 Omron Corp 評価用システム及び評価方法並びにモーションコントローラ
JP2005346688A (ja) * 2004-06-07 2005-12-15 Ito Soft Design:Kk シーケンサに模擬動作機能を持たせる方法
JP2009037329A (ja) * 2007-07-31 2009-02-19 Mitsubishi Electric Corp Plcシステム模擬装置

Also Published As

Publication number Publication date
JP2011107866A (ja) 2011-06-02

Similar Documents

Publication Publication Date Title
JP5552300B2 (ja) 接続機器シミュレータのシーケンス制御装置、方法、及びプログラム
TWI521316B (zh) 可程式邏輯控制器的周邊裝置及除錯支援程式產品
JP2006350549A (ja) 統合シミュレーションシステム
EP2816427B1 (en) Plc simulation system, plc simulator, recording medium, and simulation method
WO2020039900A1 (ja) 情報処理装置およびプログラム
JP2008250788A (ja) 連携シミュレーションシステム
US20160300000A1 (en) System construction support apparatus
JP4941674B2 (ja) シミュレーション・システム
JP5996150B2 (ja) プログラマブル表示器及び作画ソフトウェア
JP2006172128A (ja) プログラム連携システムの処理方法および情報処理装置
JP5314959B2 (ja) 情報処理装置、及びその制御方法、コンピュータプログラム、記憶媒体
JP4542494B2 (ja) プログラマブル表示装置、デバッグ支援プログラム及びデバッグ装置の制御方法
JP5492573B2 (ja) トレース機能を備える接続機器シミュレータ装置、方法、及びプログラム
JP2010033192A5 (ja)
JP2008165324A (ja) プログラム作成支援装置
JP2008033572A (ja) 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
JP2007156822A (ja) 計算機システムの模擬アプリケーション試験装置
JP2006163657A (ja) プレイバックシミュレータ装置
JP2007172128A (ja) I/oシミュレータ装置
JP4455400B2 (ja) 作画エディタ装置、制御用表示装置、並びに、そのプログラムおよび記録媒体
JPH1011116A (ja) データ処理装置、シミュレーション方法、及び記録媒体
JPH08263130A (ja) シミュレーション方式
WO2022190427A1 (ja) 開発支援装置、開発支援方法、及び、開発支援プログラム
JP2009244952A (ja) モーションコントローラ、シミュレーション方法及びシミュレーションプログラム
JPH08194634A (ja) テスト実行システム

Legal Events

Date Code Title Description
A625 Written request for application examination (by other person)

Free format text: JAPANESE INTERMEDIATE CODE: A625

Effective date: 20121015

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140520

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140526

R150 Certificate of patent or registration of utility model

Ref document number: 5552300

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250