JP6727472B1 - プログラマブルロジックコントローラ、設定ツール、及びプログラム - Google Patents

プログラマブルロジックコントローラ、設定ツール、及びプログラム Download PDF

Info

Publication number
JP6727472B1
JP6727472B1 JP2020508054A JP2020508054A JP6727472B1 JP 6727472 B1 JP6727472 B1 JP 6727472B1 JP 2020508054 A JP2020508054 A JP 2020508054A JP 2020508054 A JP2020508054 A JP 2020508054A JP 6727472 B1 JP6727472 B1 JP 6727472B1
Authority
JP
Japan
Prior art keywords
log
value
reference data
difference
stored
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
JP2020508054A
Other languages
English (en)
Other versions
JPWO2021019615A1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6727472B1 publication Critical patent/JP6727472B1/ja
Publication of JPWO2021019615A1 publication Critical patent/JPWO2021019615A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

差分ログ収集部(160)は、制御プログラムが1回実行されるたびに、デバイスメモリ(110)から、値が変化したデバイス値のログである差分ログをログ記憶部(130)に格納する。一括ログ収集部(140)は、設定されたタイミングで、収集対象のデバイス値を、差分ログの収集に使用する基準データとしてログ記憶部(130)に一括で格納する。分割ログ収集部(150)は、制御プログラムが1回実行されるたびに、新たな基準データを作成するため、収集対象のうち1/N(Nは2以上の自然数)のデバイス値のログである分割ログをログ記憶部(130)に格納し、空き領域がなくなると、1/Nのデバイス値のログでログ記憶部(130)に格納されているデータを上書きする。差分ログ収集部(160)は、ログ記憶部(130)に新たな基準データが格納された状態となると、差分ログでログ記憶部(130)のデータを上書きする。

Description

本発明は、プログラマブルロジックコントローラ、設定ツール、及びプログラムに関する。
生産システム、制御システム等において稼動するプログラマブルロジックコントローラは、制御プログラムを繰り返し実行することにより、制御対象の機器を制御する。制御プログラムの入力データ及び出力データは、プログラマブルロジックコントローラが有するデバイスメモリと呼ばれるメモリ上の領域に格納される。入力データは、例えば、検出器から供給された入力信号を示すデータである。出力データは、例えば、プログラマブルロジックコントローラが制御対象の機器に供給する出力信号を示すデータである。
ユーザは、プログラマブルロジックコントローラが正常に動作しているかを確認するため、デバイスメモリに格納されたデータの履歴をチェックすることがある。このため、プログラマブルロジックコントローラが、デバイスメモリに格納されたデータのログを収集するロギング機能を備えることがある。
特許文献1には、ロギング機能を備えたプログラマブルロジックコントローラが、I/O(Input Output)リフレッシュのタイミングで入出力データのログをとることが記載されている。I/Oリフレッシュとは、プログラマブルコントローラが機器とのデータ交換を行う処理をいう。特許文献1に記載のプログラマブルロジックコントローラは、ログデータの容量の増加を抑えるために、プログラムの最初の実行の後にすべての入出力データのログを記録し、2回目以降の実行の後には値が変化したデータのログのみを記録する。
国際公開第2017/203583号
特許文献1に記載されたプログラマブルロジックコントローラは、2回目以降のプログラムの実行の後には値が変化したデータのログのみを記録しているが、ログの記録回数が増えるにつれ、ログを記録するメモリの容量が増えていくことが予想される。ログを記録するメモリの容量が増加することにより、プログラマブルロジックコントローラの動作に必要なメモリが不足し、最終的には、プログラマブルロジックコントローラが停止してしまう恐れがある。
本発明は上記実情に鑑みてなされたものであり、ログ収集処理に起因するメモリの空き容量の不足によるエラーの発生を防止することを目的とする。
上記目的を達成するため、本発明に係るプログラマブルロジックコントローラは、制御プログラムが1回実行されるたびに、新たな基準データを作成するため、収集対象として設定されたデバイス値のうち1/N(Nは2以上の自然数)のデバイス値をデバイス記憶手段から収集し、収集した1/Nのデバイス値のログである分割ログを基準データ記憶手段に格納し、基準データ記憶手段の空き領域がなくなると、1/Nのデバイス値のログで基準データ記憶手段に格納されているデータを上書きする。差分ログ収集手段は、分割ログ収集手段が分割ログを基準データ記憶手段にN回格納することにより基準データ記憶手段に新たな基準データが格納された状態となると、差分ログで差分ログ記憶手段に格納されているデータを上書きする。
本発明に係るプログラマブルロジックコントローラが上記の構成を備えることにより、ログの記録回数が増えたとしても、プログラマブルロジックコントローラのメモリの空き容量が減少してしまうことを抑制することができる。よって、ログ収集に起因するメモリの空き容量の不足によるエラーの発生を防止することができる。
本発明の実施の形態に係るプログラマブルロジックコントローラ及び設定ツールの機能構成を示すブロック図 実施の形態に係るプログラマブルロジックコントローラ及び設定ツールのハードウェア構成を示す図 実施の形態に係るログ記憶部の構成の一例を示す図 実施の形態に係る全データ領域に格納されるデータの一例を示す図 実施の形態に係る差分データ領域に格納されるデータの一例を示す図 実施の形態に係るデバイスメモリの構成の一例を示す図 実施の形態に係る全データ領域にスキャン前にデータが書き込まれた状態を示す図 実施の形態に係る全データ領域の1回目のスキャン後にデータが書き込まれた状態を示す図 実施の形態に係る全データ領域に複数回のスキャンでデータが書き込まれた状態を示す図 実施の形態に係る全データ領域全てにデータが書き込まれた状態を示す図 実施の形態に係る全データ領域のデータが上書きされた状態を示す図 実施の形態に係る全データ領域の(2×N)回目のスキャン後の状態を示す図 実施の形態に係る設定ツールのロギングの設定画面の一例を示す図 実施の形態に係るロギング処理のフローチャート 変形例に係る設定ツールのロギングの設定画面の一例を示す図 変形例に係る設定ツールのロギングの設定画面の他の例を示す図
(実施の形態)
以下、本発明の実施の形態に係るプログラマブルロジックコントローラについて、図面を参照しつつ詳細に説明する。
図1に示すプログラマブルロジックコントローラ100は、制御システム、生産システム等において、制御プログラムを実行して、制御対象の機器を制御する。例えば、プログラマブルロジックコントローラ100(以下、PLC100)は、センサ、スイッチ等の検出器から入力された入力値を使用して、プログラムされている演算を実行する。入力値は、センサ、スイッチ等の検出器から入力された入力信号が示す「真」または「偽」の論理値である。PLC100は、演算により出力値を得る。出力値は、「真」または「偽」の論理値である。PLC100は、「真」または「偽」の論理値が示す出力信号を接触器、モータ、表示灯等の制御対象の機器に出力する。このようにして、例えば、制御対象の機器のオン/オフが制御される。
PLC100は、制御プログラムの最初の命令から最後の命令まで、命令を順次実行する。PLC100は、最後の命令であるEND命令を実行すると、再び、最初の命令から、命令を順次実行する。PLC100が制御プログラムの最初の命令から最後の命令までを実行することをスキャンということがある。PLC100が最初の命令から最後の命令までを実行する時間、言い換えると、PLC100が制御プログラムの命令の実行を一巡する時間、をスキャンタイムということがある。スキャンタイムを実行周期ということもある。なお、PLC100は、制御プログラムを周期的に実行するが、制御プログラムを固定期間毎に実行するわけではない。
検出器から入力された入力信号が示す論理値は、PLC100が備えるデバイスメモリ110と呼ばれるメモリ上の領域に格納される。また、PLC100が演算により得た出力信号を示す論理値もデバイスメモリ110に格納される。PLC100が実行する制御プログラムはリレー回路の機能を実現するプログラムであるため、デバイスメモリ110には、プログラム上の仮想的なリレーである内部リレーをオン/オフする信号を示す論理値も格納される。デバイスメモリ110に格納されているデータをデバイス値という。PLC100は、デバイスメモリ110に格納されているデバイス値を使用してプログラムされている演算を実行する。
PLC100は、決められたタイミングで、検出器及び制御対象の機器とデバイスメモリ110のデータを一括でデータ交換する。このデータ交換をI/Oリフレッシュという。例えば、PLC100は、制御プログラムの最初の命令を実行する前にI/Oリフレッシュを実行する。PLC100は、I/Oリフレッシュにより検出器から供給された入力信号を示す論理値をデバイスメモリ110に格納し、デバイスメモリ110に格納されており、前回のスキャンタイムにおける演算により得た出力信号を制御対象の機器に供給する。
実施の形態においては、PLC100は、デバイス値のロギング機能を備える。ロギング機能が有効となるよう設定されている場合、PLC100は、デバイスメモリ110に格納されるデバイス値を収集し、デバイス値のログを記録する。実施の形態においては、PLC100は、以下のような特徴的な構成を備える。PLC100は、制御プログラムの実行に先立って、デバイスメモリ110に格納されている収集対象のデバイス値のログをメモリの決められた領域に一括で記録する。さらに、PLC100は、スキャンタイム毎に、デバイスメモリ110に格納されている収集対象のデバイス値のログを分割して取得する。加えて、PLC100は、スキャンタイム毎に値が変化したデバイス値のログをとる。
設定ツール500は、ユーザが、ロギング処理に必要な設定値をPLC100に設定するためのツールである。設定ツール500として、例えば、PLC100と同じ工場内にあり、専用のプログラムをインストールしたパーソナルコンピュータが使用される。
続いて、各装置のハードウェア構成を説明する。図2に示すように、PLC100はハードウェア構成として、各種のプログラム及びデータを記憶するメモリ11と、通信ケーブル701を介して設定ツール500との間でデータを授受する接続インタフェース12と、PLC100全体を制御するCPU(Central Processing Unit)13とを有する。メモリ11と接続インタフェース12とは、バス19を介してCPU13に接続されており、それぞれCPU13と通信する。
メモリ11は、揮発性メモリと不揮発性メモリとを含む。メモリ11は、PLC100の各種機能を実現するためのプログラムとプログラムの実行時に使用されるデータとを記憶する。メモリ11が記憶するプログラムは、ファームウェアと、制御対象の機器を制御するための制御プログラムとを含む。実施の形態においては、ファームウェアがPLC100がロギング機能を実現させる。さらに、メモリ11はCPU13のワークメモリとして用いられる。
接続インタフェース12は、例えば、USBコントローラを含み、通信ケーブル701を介して、設定ツール500が出力した電気信号を受け付け、受け付けた電気信号をデータに復元してCPU13に出力する。通信ケーブル701は、例えば、USBケーブルである。また、接続インタフェース12は、CPU13から供給されたデータを電気信号に変換し、変換した信号を通信ケーブル701を介して設定ツール500に出力する。
CPU13は、メモリ11に記憶されているプログラムを実行して、PLC100の各種機能を実現する。例えば、CPU13は、メモリ11に格納されている制御プログラムを実行することにより、検出器から供給された入力信号が示す値を使用した演算を行う。
設定ツール500は、ハードウェア構成として、各種のプログラム及びデータを記憶するメモリ51と、通信ケーブル701を介してPLC100との間でデータを授受する接続インタフェース52と、ユーザの入力操作を検出する入力装置53と、画像を出力する表示装置54と、設定ツール500全体を制御するCPU55とを有する。メモリ51と接続インタフェース52と入力装置53と表示装置54とは、バス59を介してCPU55に接続されており、それぞれCPU55と通信する。
メモリ51は、揮発性メモリと不揮発性メモリとを含む。メモリ51は、設定ツール500の各種機能を実現するためのプログラムとプログラムの実行時に使用されるデータとを記憶する。メモリ11が記憶するプログラムは、ロギング処理に必要なデータをPLC100に設定する機能を実現する設定プログラムを含む。さらに、メモリ51はCPU55のワークメモリとして用いられる。
接続インタフェース52は、例えば、USBコントローラを含み、CPU55から供給されたデータを電気信号に変換し、変換した信号を通信ケーブル701を介してPLC100に出力する。また、接続インタフェース52は、通信ケーブル701を介して、PLC100が出力した電気信号を受け付け、受け付けた電気信号をデータに復元してCPU55に出力する。
入力装置53は、マウス、操作キー等を含み、ユーザからの操作入力を受け付け、ユーザの操作入力を示す信号をCPU55に出力する。表示装置54は、ディスプレイを含み、CPU55から供給される信号に基づく画像をディスプレイに表示する。
CPU55は、メモリ51に記憶されているプログラムを実行して、設定ツール500の各種機能を実現する。具体的には、CPU55は、メモリ11に格納されている設定プログラムを実行することにより、PLC100にロギング処理に必要な設定情報を登録する。
次に、図1を参照して、PLC100の機能構成を説明する。PLC100は、機能的には、デバイス値を記憶するデバイスメモリ110と、ロギング処理に係る設定情報を記憶する設定情報記憶部120と、デバイス値のログを記憶するログ記憶部130と、設定されたタイミングでデバイス値のログを一括で収集する一括ログ収集部140と、プログラムの実行中にデバイス値のログを分割して収集する分割ログ収集部150と、変化したデバイス値のログを収集する差分ログ収集部160とを有する。
デバイスメモリ110はデバイス値を記憶する。デバイス値は、検出器から供給された入力信号が示す論理値と、演算により得られた出力信号を示す論理値と、内部リレーをオン/オフする信号を示す論理値とを含む。デバイスメモリ110の機能は、図2に示すメモリ11により実現される。デバイスメモリ110は、本発明のデバイス記憶手段の一例である。
設定情報記憶部120は、ロギング処理に必要な設定情報を記憶する。設定情報記憶部120は、ロギング機能を有効にするか無効にするかを示す値を記憶する。この値がロギング機能を有効にすることを示す値である場合、PLC100はロギングを行う。設定情報記憶部120は、収集対象であるデバイス値を特定する情報を記憶する。
ログ記憶部130は、デバイス値のログを記憶する。ログ記憶部130の機能は、図2に示すメモリ11により実現される。
図3Aに示すようにログ記憶部130は、全データ領域1301と、差分データ領域1302とを備える。全データ領域1301には、制御プログラムの実行前に一括で収集される収集対象のデバイス値のログと、スキャンタイム毎に分割して記録される収集対象のデバイス値のログとが格納される。全データ領域1301には、図3Bに示すように、デバイス名とデバイス値とそのときのスキャン数が格納される。スキャン数は、制御プログラムがスキャンされた回数である。なお、制御プログラムの実行前に、全データ領域1301に格納されるデータのスキャン数は、例えば、“0”である。制御プログラムの実行が開始されると、スキャン数は1ずつ加算される。ユーザは、全データ領域1301の容量を任意に設定することができるが、収集対象として設定されたデバイス値を格納するのに十分な容量を設定する必要がある。以下の説明においては、全データ領域1301の容量は、収集対象のデバイス値をすべて格納できる容量の2倍に設定されていると仮定する。全データ領域1301の容量は、収集対象のデバイス値をすべて格納できる容量の2倍に限られず、3倍であってもよいし、4倍以上であってもよい。また、必ずしも、収集対象のデバイス値をすべて格納できる容量の正の整数倍である必要はなく、全データ領域1301の容量は任意の容量に設定してよい。全データ領域1301は、本発明の基準データ記憶手段の一例である。
差分データ領域1302には、収集対象のデバイス値のうち、値が変化したデバイス値のログである差分ログが格納される。図3Cに示すように、差分データ領域1302には、デバイス名とデバイス値とそのときのスキャン数とが格納される。デバイス値は変化後のデバイス値である。差分データ領域1302は、本発明の差分ログ記憶手段の一例である。
図1に示す一括ログ収集部140は、ログ収集に加え、ログ収集のための事前準備を行う。例えば、一括ログ収集部140は、制御プログラムを開始する前に事前準備に係る処理を行う。
事前準備に係る処理は以下の通りである。一括ログ収集部140は、ユーザが設定した設定値をメモリ11の決められた領域から読み出し、読み出した設定値を設定情報記憶部120に格納する。ユーザは、設定ツール500を使用して設定値をPLC100のメモリ11の決められた領域に予め格納しているものとする。設定値は、全データ領域1301のサイズと、差分データ領域1302のサイズと、ログを分割して取得する回数である分割数Nとを含む。分割数Nとして2以上の自然数が設定されているものとする。
一括ログ収集部140は、全データ領域1301と差分データ領域1302とをユーザが設定したサイズでログ記憶部130に確保する。一括ログ収集部140は、ユーザが指定する分割数Nとメモリ11に予め格納されているデバイス値に関する設定データとから、後述の分割ログ収集部150が1回に収集するデバイス値の数を算出し、算出した値を設定情報記憶部120に格納する。
一括ログ収集部140は、設定されたタイミングで、デバイスメモリ110に格納されている収集対象として設定されたデバイス値を収集する。以下、一括ログ収集部140は、制御プログラムの実行開始前に、デバイスメモリ110に格納されている収集対象として設定されたデバイス値を収集する例を説明する。
具体的には、一括ログ収集部140は、PLC100に電源が投入された後に実行されるイニシャル処理の一部として、デバイスメモリ110に格納されている収集対象のすべてのデバイス値のデータを一括で全データ領域1301に格納する。図3Bに示すように、一括ログ収集部140は、デバイス名とデバイス値とスキャン数とを全データ領域1301に格納する。ここで、PLC100は制御プログラムの実行を開始していないため、一括ログ収集部140は、スキャン数に“0”を設定する。
一括ログ収集部140が、制御プログラムの実行開始前に、全データ領域1301に格納したデータは、差分ログの収集のための基準データとなる。後述の差分ログ収集部160は、差分ログの収集の際にデバイス値が変化したか否かを判別するために基準データを使用する。
前述のように、実施の形態では、全データ領域1301の容量は、収集対象のデバイス値をすべて格納できる容量の2倍となるように設定されている。一括ログ収集部140がイニシャル処理で、デバイスメモリ110の収集対象のデバイスを全データ領域1301に格納すると、図5Aに示すように、全データ領域1301の半分の領域が使用される。図5Aで、斜線で表されている領域は未使用領域であり、この領域を収集対象デバイス格納領域1301Aと称するものとする。一括ログ収集部140の機能は、図2に示すCPU13により実現される。一括ログ収集部140は、本発明の一括ログ収集手段の一例である。
実施の形態においては、制御プログラムの実行開始前に、一括ログ収集部140が基準データを収集するが、これは次のような理由による。一括ログ収集部140は、基準データとして収集対象として設定されたデバイス値を一括で収集するため、収集に係る処理にある程度の時間を要することが想定される。基準データを収集するのに要する時間が長くなれば、スキャンタイムが増加する。このため、実施の形態においては、スキャンタイムの増加を抑制するため、一括ログ収集部140は制御プログラムの実行開始前に基準データを収集する。ただし、一括ログ収集部140が基準データを収集するタイミングは、制御プログラムの実行開始前に限られない。一括ログ収集部140は、制御プログラムの実行開始後であっても、ロギングが開始される前に基準データを収集していればよい。
図1に示す分割ログ収集部150は、制御プログラムの実行を開始した後、デバイスメモリ110に格納されている収集対象のデバイス値のログを複数のスキャンタイムに分けて取得する。具体的には、分割ログ収集部150は、各スキャンタイムでEND命令が実行されると、デバイスメモリ110に格納されている収集対象のデバイス値のうち、1/Nのデバイス値のログを全データ領域1301に格納する。分割ログ収集部150が全データ領域1301に格納するログは、デバイス名とデバイス値とそのときのスキャン数とを含む。分割ログ収集部150が収集し、全データ領域1301に格納するログを分割ログということがある。
分割ログ収集部150が1回に収集するデバイス値の数は次のように決められる。前述のように、一括ログ収集部140が、事前準備に係る処理として、分割ログ収集部150が1回に収集するデバイス値の数を算出する。例えば、図4に示すように、デバイスメモリ110に、D1〜D2000のデバイス値が格納されており、D1〜D2000すべてが収集対象であるとする。この場合、デバイス値のデータ数は2000個である。ここで、分割数Nが20と設定されており、D1〜D2000のデバイス値のデータサイズが同じであるとする。この場合、分割ログ収集部150は、各スキャンタイムでデバイスメモリ110のデバイス値を100個ずつ収集すればよい。
よって、分割ログ収集部150は、例えば、1回目のスキャンで、図5Bに示すように、D1〜D100のデバイス値のログを全データ領域1301に格納する。1回目のスキャンでは、全データ領域1301の収集対象デバイス格納領域1301Aが空いているため、分割ログ収集部150は、デバイス値のログを収集対象デバイス格納領域1301Aに格納する。分割ログ収集部150は、2回目のスキャンで、D101〜D200のデバイス値のログを全データ領域1301の収集対象デバイス格納領域1301Aに格納する。図5Cに示すように、分割ログ収集部150は、収集対象デバイス格納領域1301Aが空いている場合には、スキャン毎に100個のデバイス値のログを収集対象デバイス格納領域1301Aに格納する。なお、分割ログ収集部150は、デバイス値を全データ領域1301に格納したときに、次のスキャンタイムで、収集対象のデバイス値を特定する情報と、次のスキャンタイムで、全データ領域1301にデータを書き込む位置を特定する情報とを記憶しておく必要がある。分割ログ収集部150の機能は、図2に示すCPU13により実現される。分割ログ収集部150は、本発明の分割ログ収集手段の一例である。
分割ログ収集部150は、収集対象デバイス格納領域1301Aに空き容量がなくなると、分割ログを全データ領域1301に格納するため、全データ領域1301に格納されている一番古いデータを上書きする。例えば、図5Dに示すように、20回目のスキャンタイムに、分割ログ収集部150がデバイス値のログを収集対象デバイス格納領域1301Aに格納すると、収集対象デバイス格納領域1301Aに空き領域がない状態となる。この場合、図5Eに示すように、分割ログ収集部150は、21回目のスキャンタイムにおいて、ログを全データ領域1301に格納するため制御プログラムの実行開始前に書き込まれたデータを上書きする。
一括ログ収集部140が、制御プログラムの実行開始前に全データ領域1301に格納したデータは、差分ログの収集のための基準データとなることを前述したが、このデータは、スキャン数が20回を超えると上書きされる。この場合、分割ログ収集部150が1回目から20回目のスキャンタイムで全データ領域1301に格納したデバイス値のログが、新たな基準データとして使用される。
さらに、分割ログ収集部150は、図5Fに示すように40回目のスキャンタイムにデータを格納した後、41回目のスキャンタイムで、1回目のスキャンで全データ領域1301に格納したデータを上書きする。よって、1回目以降のスキャンで全データ領域1301に格納されたデータが上書きされる。この場合、分割ログ収集部150が21回目から40回目のスキャンタイムで、全データ領域1301に格納したデバイス値のログが、新たな基準データとして使用される。
上述のように、分割ログ収集部150は、基準データとなる収集対象のデバイス値のログをN回に分けて記録する。分割ログ収集部150がこのような構成を備えることにより、次のようなメリットがある。分割ログ収集部150が1回のスキャンタイムで記録するログは、収集対象のデバイス値の1/Nのデバイス値のログである。よって、1回のスキャンタイムで記憶されるデータ量は、収集対象のすべてのデバイス値のログを1度に記録する場合に比べて少ない。このため、ログの記録に要する処理時間は、収集対象のすべてのデバイス値のログを1度に記録する場合に比べて短い。ログの記録に要する時間が長くないため、ログの記録処理に起因してスキャンタイムが延びることがない。
例えば、ログの記録処理によりスキャンタイムが長くなり、スキャンタイムが許容範囲を超えてしまうと、PLC100の処理が遅れ、ひいてはシステム全体の動作に悪影響が生じる。このような理由により、実施の形態では、分割ログ収集部150は、収集対象のデバイス値のログをN回に分けて記録する。
図1に示す差分ログ収集部160は、制御プログラムのEND命令が実行されると、デバイスメモリ110の収集対象のデバイス値の値が変化したか否かを判別し、値が変化したデバイス値のログを差分データ領域1302に格納する。差分ログ収集部160の機能は、図2に示すCPU13により実現される。差分ログ収集部160は、本発明の差分ログ収集手段の一例である。
まず、差分ログ収集部160は、収集対象のデバイス値の差分ログが差分データ領域1302に格納されているか否かを判別する。収集対象のデバイス値の差分ログが差分データ領域1302に格納されていると判別した場合、差分ログ収集部160は、差分データ領域1302に最も最近格納されたデバイス値とデバイスメモリ110のデバイス値とが一致するか否かを判別する。2つのデバイス値が一致しない場合、差分ログ収集部160は、デバイス値が変化したと判別する。
さらに、差分ログ収集部160は、収集対象のデバイス値の差分ログが差分データ領域1302に格納されていないと判別した場合、全データ領域1301に格納されている基準データに含まれるデバイス値と、デバイスメモリ110のデバイス値とが一致するか否かを判別する。2つのデバイス値が一致しない場合、差分ログ収集部160は、デバイス値が変化したと判別する。
差分ログ収集部160は、デバイス値の値が変化したと判別すると、差分ログとして、デバイス名とデバイスメモリ110に格納されているデバイス値とそのときのスキャン数とを差分データ領域1302に格納する。図3Cに示す例では、差分ログ収集部160は、3回目のスキャンタイムでD1の値が変化したと判別し、D1の差分ログを差分データ領域1302に格納している。差分ログ収集部160は、5回目のスキャンタイムでD1の値が変化したと判別し、D1の差分ログを差分データ領域1302に格納している。
実施の形態に特徴的な構成として、差分ログ収集部160は、基準データが差し替えられたタイミングで、以前の差分ログを上書きする。前述したように、全データ領域1301のデータは(M×N)+1回目以降のスキャン(Mは1以上の自然数)で上書きされる。このタイミングで、基準データは新たな基準データに差し替えられることになる。新たな基準データが作成される前に収集された差分ログは不要となるからである。
続いて、設定ツール500の機能構成を説明する。図1に示すように、設定ツール500は、機能的には、ロギング処理に必要な設定値をPLC100に登録する設定登録部510を含む。
設定登録部510は、例えば、図6に示すようなロギングの設定画面を表示装置54に表示する。ユーザは、設定ツール500により、ロギング機能を有効にするか否か、ログを分割収集するときの分割数、全データ領域1301のサイズ、差分データ領域1302のサイズをPLC100に設定する。分割数は、PLC100の分割ログ収集部150が、収集対象のデバイス値のログを分けて収集する回数である分割数Nのことである。ユーザが、入力装置53を操作して、ロギング機能の有効/無効と、分割数と、全データ領域1301のサイズと、差分データ領域1302のサイズとを入力し、「設定」ボタンを押したとする。これに応答して、設定登録部510は、ユーザが入力した値をPLC100のメモリ11の決められた領域に書きこむ。
次に、PLC100のロギング処理の一連の流れを説明する。PLC100のCPU13は、ファームウェアを実行することにより、図1に示す一括ログ収集部140、分割ログ収集部150、及び差分ログ収集部160として機能する。以下の説明においては、デバイスメモリ110のすべてのデバイス値が収集対象として設定されているものとする。
ユーザが、PLC100のスイッチを操作して、PLC100の運転を開始したとする。従って、PLC100はイニシャル処理を開始する。
図7に示すように、一括ログ収集部140は、イニシャル処理の一部として、ロギング処理の事前準備を行う(ステップS11)。具体的には、一括ログ収集部140はイニシャル処理の一部として、メモリ11の決められた領域から分割数Nを読み出し、分割数Nを設定情報記憶部120に格納する。さらに、一括ログ収集部140は、メモリ11の決められた領域から全データ領域1301のサイズの定義値、差分データ領域1302のサイズの定義値を読み出し、設定されたサイズの全データ領域1301と設定されたサイズの差分データ領域1302とをログ記憶部130に確保する。
さらに、一括ログ収集部140は、イニシャル処理の一部として、図5Aに示すように、デバイスメモリ110の収集対象の全てのデバイス値のログを基準データとして全データ領域1301に格納する(ステップS12)。イニシャル処理が終わると、PLC100は、制御プログラムの実行を開始する。
分割ログ収集部150は、ログ収集のタイミングであるか否かを判別する(ステップS13)。分割ログ収集部150は、END命令が実行されるとログ収集のタイミングであると判別し(ステップS13;Yes)、収集対象のデバイス値のうちの1/Nのデバイス値のログである分割ログを全データ領域1301に格納する(ステップS14)。なお、分割ログ収集部150は、分割ログを全データ領域1301に格納するため、(M×N)+1回目以降のスキャン(Mは1以上の自然数)において全データ領域1301に格納されている一番古い分割ログを上書きする。
続いて、差分ログ収集部160は、収集対象のデバイス値のうち値が変化したデバイス値があるか否かを判別する(ステップS15)。収集対象のデバイス値のうち値が変化したデバイス値があると判別すると(ステップS15;Yes)、差分ログ収集部160は、差分ログを記録する(ステップS16)。なお、差分ログ収集部160は、基準データが新たなものに差し替えられた後は、新たな基準データが作成される前に記録された差分ログを上書きする。
制御プログラムの次のスキャンが終わると、分割ログ収集部150及び差分ログ収集部160は、再びステップS13以降の処理を行う。
以上説明したように、実施の形態に係る構成においては、PLC100は、デバイスメモリ110の収集対象のデバイス値のログをN回に分けて収集し、収集したデバイス値を全データ領域1301に格納する。N回に分けて収集されるログは、差分データの収集に使用される基準データとなる。PLC100は、全データ領域1301に空き容量がなくなると、全データ領域1301に格納されている一番古いログから上書きしていく。このように、全データ領域1301に格納されるデータの容量は設定されたサイズ以上となることはない。
さらに、PLC100は、基準データに基づいて値が変化したと判別したデバイス値を差分ログとして収集する。PLC100は、新たな基準データが全データ領域1301に格納されると、差分データ領域1302に格納されている差分ログのうち、新たな基準データが作成される前に収集された差分ログを上書きしていく。このため、差分データ領域1302に必要な領域サイズは、収集対象のデバイス値の数、デバイス値のサイズ、分割数Nのサイズから、適切なサイズを設定する必要がある。差分データ領域1302のデータは、全データ領域1301に格納されている基準データが新たなものに差し替えられた後、上書きされていくため、差分データ領域1302に格納されるデータの容量が設定されたサイズ以上となることはない。
PLC100が上述のような構成を備えることにより、分割ログを格納するために、設定された容量以上のメモリが使用されることがない。さらに、差分ログの格納に必要なメモリ容量も設定された容量を超えることがない。よって、ログ収集によりメモリの空き容量の不足が生じない。従って、メモリ容量の不足によるエラーの発生を防止することができる。
実施の形態に係る構成においては、基準データと差分ログとから、デバイス値の履歴を再現することが可能になる。基準データが新たなものに差し替えられた後は、基準データが差し替えられる前に収集されたデバイス値の履歴を再現することはできないが、ユーザが、デバイス値の履歴を取得することを所望する期間から全データ領域1301の領域サイズと分割数Nとを適切に設定することにより、必要なデバイス値の履歴を取得することが可能となる。
PLC100は、デバイスメモリ110の収集対象のデバイス値をN回に分けて収集する。例えば、収集対象のデバイス値のサイズがすべて同じであるとする。分割してログを記録する場合のデバイス値の数は、一括でログを記録する場合のデバイス値の数の1/Nである。よって、ログの記録処理に係る時間を1回のスキャンで収集対象のデバイス値すべてのログを記録する場合に比べて短縮することができる。よって、ロギングを行う場合であっても、スキャンタイムの増加を抑制することができる。さらに、各スキャンタイムにおいて、ロギング処理として、1/Nのデバイス値のログと差分ログを記録するだけであるので、PLC100のCPU13の処理の負荷が高くなることを抑えることができる。
(変形例)
実施の形態においては、ユーザが分割数Nを設定する例を説明したが、設定ツール500の設定登録部510が分割数Nを算出してもよい。以下、変形例に特徴的な構成を中心に説明する。例えば、設定登録部510は、図8に示すような条件を設定する画面を表示装置54に表示する。この場合、ユーザは、入力装置53を操作して、ログを収集するスキャン数と、許容可能なスキャンタイムの増加時間とを設定するだけでよい。
設定ツール500の設定登録部510は以下のように分割数Nを算出する。まず、ログ記憶部130の容量が最小となる分割数Nの理論値は下記の数式1で表される。
Figure 0006727472
N:分割数
C:収集対象のデバイス値の記憶容量
D:差分ログの記憶容量の予測値
S:ログを収集するスキャン数
収集対象のデバイス値の記憶容量Cは、ユーザが設定した収集対象のデバイス値を記憶するのに必要な記憶容量である。収集対象のデバイス値の記憶容量Cは、ユーザが指定する収集対象のデバイス値の個数とそれぞれのデバイス値のデータのサイズとから算出される。差分ログの記憶容量の予測値Dは、1スキャンで収集する差分ログを記憶するのに必要な記憶容量の予測値である。1スキャンで収集される差分ログを記憶するのに必要な記憶容量の予測値Dは、例えば、過去のログ収集に基づく統計データから算出される値である。ログを収集するスキャン数Sはユーザが設定した値である。
PLC100がロギング処理を実行する場合、ロギング処理を実行しない場合に比べてスキャンタイムが増加するのは明らかであるが、スキャンタイムの増加分は、ユーザが許容できる範囲内となるべきである。このため、1スキャンあたりに収集される分割ログと差分ログをログ記憶部130に格納するのに要する時間が、ユーザが設定した許容可能なスキャンタイムの増加時間を超えないように、分割数Nを決定する必要がある。
ここで、ユーザが設定した許容可能なスキャンタイムの増加時間をT[sec]とし、ログ記憶部130にデータを格納する速度(データ転送速度)をA[bps]とする。この場合、スキャンタイムの許容される増加時間で、ログ記憶部130に格納可能なデータのサイズはTA[bit]である。各スキャンで、分割ログと差分ログとが記録されるため、分割数Nは、下記の数式2の条件を満たす必要がある。
Figure 0006727472
N:分割数
C:収集対象のデバイス値の記憶容量
D:差分ログの記憶容量の予測値
T:許容可能なスキャンタイムの増加時間
A:ログ記憶部130にデータを格納する速度
許容可能なスキャンタイムの増加時間Tはユーザが設定する値である。ログ記憶部130にデータを格納する速度は、PLC100の記憶装置のデータ転送速度である。データ転送速度として、例えば、仕様書に記載されているデータ転送速度の値を採用することができる。
ここで、許容可能なスキャンタイムの増加時間Tは下記の数式3を満たしている必要がある。
Figure 0006727472
設定登録部510は、数式1より、ログ記憶部130の容量が最小となる分割数Nを算出する。具体的には、まず、設定登録部510は、収集対象のデバイス値の個数とそれぞれのデバイス値のデータのサイズとから収集対象のデバイス値の記憶容量Cを算出する。差分ログの記憶容量の予測値Dは、メモリ51の決められた領域に予め格納されているものとする。ログを収集するスキャン数Sは、ユーザが図8に示す画面で入力した値である。続いて、設定登録部510は、数式1より分割数Nを算出する。
設定登録部510は、数式1から算出した分割数Nが数式2、数式3の条件を満たすように分割数Nを決定する。許容可能なスキャンタイムの増加時間Tは、ユーザが図8に示す画面で入力した値である。ログ記憶部130にデータを格納する速度Aは、メモリ11の決められた領域に予め格納されているものとする。設定登録部510は決定した分割数Nをメモリ51の決められた領域に格納する。
なお、設定登録部510は、上記の分割数Nの算出に先立って、ユーザが図8に示す画面で許容可能なスキャンタイムの増加時間を入力した後、入力された値が数式3の条件を満たすか否かを判別する。設定された許容可能なスキャンタイムの増加時間が数式3の条件を満たさないと判別すると、設定登録部510は、ユーザに許容可能なスキャンタイムの増加時間を修正することを示すメッセージを表示装置54に表示する。この場合、ユーザは、入力装置53を操作して、許容可能なスキャンタイムの増加時間の値を変更する必要がある。
さらに、設定登録部510は、算出した分割数Nから全データ領域1301の記憶容量を算出する。全データ領域1301の記憶容量Mは下記式により算出することができる。
Figure 0006727472
N:分割数
C:収集対象のデバイス値の記憶容量
D:差分ログの記憶容量の予測値
S:ログを収集するスキャン数
設定登録部510は算出した記憶容量Mをメモリ51の決められた領域に格納する。例えば、分割数Nと取得予定のスキャン数Sとが同じ値である場合、記憶容量Mは収集対象のデバイス値の記憶容量Cのほぼ2倍となる。
さらに、設定登録部510は、差分ログの記憶容量の予測値Dと、設定されたスキャン数とから、差分データ領域1302の記憶容量を算出し、算出した値をメモリ51の決められた領域に格納する。その後、設定登録部510は、図9に示すような画面において、算出したロギングの設定を示すパラメータを表示する。
ここで、ユーザが、算出された分割数N、全データ領域1301及び差分データ領域1302の記憶容量の値に問題がないと判断したとする。この場合、ユーザは、設定ツール500とPLC100とが通信ケーブル701で接続されている状態で、ユーザは「設定」ボタンを押して、ロギングの設定をPLC100に書き込むことを指示する。設定登録部510は、メモリ51に格納されているロギングの設定を示すパラメータをPLC100のメモリ11の決められた領域に書き込む。一方、ユーザは、図9に示す画面上に表示された分割数N、全データ領域1301及び差分データ領域1302の記憶容量の値を変更したい場合、「戻る」ボタンを押す。これに応答して、設定登録部510は、再び図8に示す画面を表示する。この場合、ユーザは、図8に示す画面上で、ログを収集するスキャン数と、許容可能なスキャンタイムの増加時間との値を修正することができる。
変形例に係る構成の場合、ユーザは分割数を自ら決定する必要がなく、ログを取得するスキャン数と許容可能なスキャンタイムの増加時間とを設定するだけでよい。
変形例に係る構成においても、実施の形態と同様に、分割ログを格納するために、設定された容量以上のメモリが使用されることがない。さらに、差分ログの格納に必要なメモリ容量も設定された容量を超えることがない。よって、ログ収集によりメモリの空き容量の不足が生じない。従って、メモリ容量の不足によるエラーの発生を防止することができる。
さらに、実施の形態と同様に、ログの記録処理に係る時間を1回のスキャンで収集対象のデバイス値すべてのログを記録する場合に比べて短縮することができる。よって、ロギングを行う場合であっても、スキャンタイムの増加を抑制することができる。さらに、ロギング処理に係るCPU13の処理負荷を抑えることができる。また、収集されたデータからデバイス値の時系列のデータを生成することが可能である。
実施の形態においては、PLC100がログ記憶部130を備える例を説明したが、これに限られない。PLC100は、ログ記憶部130を備えず、他の装置が備える記憶部にログを記録してもよい。例えば、PLC100は、ネットワークを介して、他の装置にログのデータを送信する。
実施の形態においては、PLC100がデバイスメモリ110を備える例を説明したが、これに限られない。PLC100は、他の装置が備えるデバイスメモリのログを記録してもよい。例えば、PLC100は、ネットワークを介して他の装置からデバイス値を受信してもよい。あるいは、PLC100は、ネットワークを介した、他の装置の共有メモリに記録されているデバイス値を読み出してもよい。
実施の形態においては、PLC100が、制御プログラムのEND命令が実行されるとログを記録する例を説明したが、これに限られない。PLC100は、例えば、制御プログラムの最初の命令を実行する前に行われるI/Oリフレッシュの前に、ログを記録してもよい。
実施の形態においては、一括ログ収集部140と分割ログ収集部150とは、ログとして、デバイス名とデバイス値とスキャン数とを記録する例を説明したが、これに限られない。例えば、一括ログ収集部140と分割ログ収集部150とは、デバイス名とデバイス値とスキャン数に加えて、そのときの時刻情報をログとして記録してもよい。
上記のプログラムを記録する記録媒体としては、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ、半導体メモリ、磁気テープを含むコンピュータ読取可能な記録媒体を使用することができる。
本発明は、広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
N 分割数、11,51 メモリ、12,52 接続インタフェース、13,55 CPU、19,59 バス、53 入力装置、54 表示装置、100 プログラマブルロジックコントローラ(PLC)、110 デバイスメモリ、120 設定情報記憶部、130 ログ記憶部、140 一括ログ収集部、150 分割ログ収集部、160 差分ログ収集部、500 設定ツール、510 設定登録部、701 通信ケーブル、1301 全データ領域、1301A 収集対象デバイス格納領域、1302 差分データ領域

Claims (7)

  1. 制御プログラムを周期的に実行するプログラマブルロジックコントローラであって、
    前記制御プログラムが1回実行されるたびに、前記制御プログラムの入力値及び出力値を含むデバイス値を記憶するデバイス記憶手段から、収集対象として設定された前記デバイス値のうち値が変化した前記デバイス値を収集し、収集した前記デバイス値のログである差分ログを差分ログ記憶手段に格納する差分ログ収集手段と、
    設定されたタイミングで、前記収集対象として設定された前記デバイス値を、前記差分ログの収集に使用する基準データとして前記デバイス記憶手段から収集し、収集した前記デバイス値のログを基準データ記憶手段に一括で格納する一括ログ収集手段と、
    前記制御プログラムが1回実行されるたびに、新たな前記基準データを作成するため、前記収集対象として設定された前記デバイス値のうち1/N(Nは2以上の自然数)の前記デバイス値を前記デバイス記憶手段から収集し、収集した前記1/Nの前記デバイス値のログである分割ログを前記基準データ記憶手段に格納し、前記基準データ記憶手段の空き領域がなくなると、前記1/Nの前記デバイス値の前記分割ログで前記基準データ記憶手段に格納されているデータを上書きする分割ログ収集手段と、
    を備え
    記差分ログ収集手段は、前記分割ログ収集手段が前記分割ログを前記基準データ記憶手段にN回格納することにより前記基準データ記憶手段に新たな前記基準データが格納された状態となると、前記差分ログで前記差分ログ記憶手段に格納されているデータを上書きする、
    プログラマブルロジックコントローラ。
  2. 前記設定されたタイミングは、前記制御プログラムの実行開始前である、
    請求項1に記載のプログラマブルロジックコントローラ。
  3. 前記差分ログ収集手段は、(i)前記差分ログ記憶手段に格納された前記差分ログに含まれる最新の前記デバイス値の値と前記デバイス記憶手段に格納されている前記デバイス値とが異なる場合、あるいは、(ii)前記基準データに含まれる前記デバイス値の値と、前記デバイス記憶手段に格納されている前記デバイス値とが異なる場合に、前記デバイス値が変化したと判別し、その前記デバイス値の前記差分ログを前記差分ログ記憶手段に格納する、
    請求項1または2に記載のプログラマブルロジックコントローラ。
  4. 前記分割ログ収集手段は、前記制御プログラムの最後の命令が実行されるたびに、前記収集対象として設定された前記デバイス値のうち1/N(Nは2以上の自然数)の前記デバイス値を前記デバイス記憶手段から収集し、収集した1/Nの前記デバイス値の前記分割ログを前記基準データ記憶手段に格納する、
    請求項1から3のいずれか1項に記載のプログラマブルロジックコントローラ。
  5. 前記分割ログ収集手段は、設定されたNの値と、前記デバイス記憶手段に記憶されている前記デバイス値のデータサイズ及びデータ数と、から、1度に収集する前記デバイス値のデータ数を決める、
    請求項1から4のいずれか1項に記載のプログラマブルロジックコントローラ。
  6. 請求項1から5のいずれか1項に記載のプログラマブルロジックコントローラに、接続される設定ツールであって、
    前記プログラマブルロジックコントローラに、Nの値を設定する設定登録部を備える、
    設定ツール。
  7. 制御プログラムを周期的に実行するコンピュータに、
    前記制御プログラムが1回実行されるたびに、前記制御プログラムの入力値及び出力値を含むデバイス値を記憶するデバイス記憶手段から、収集対象として設定された前記デバイス値のうち値が変化した前記デバイス値のログである差分ログを差分ログ記憶手段に格納させ、
    設定されたタイミングで、前記収集対象として設定された前記デバイス値を、前記差分ログの収集に使用する基準データとして、基準データ記憶手段に一括で格納させ、
    前記制御プログラムが1回実行されるたびに、新たな前記基準データを作成するため、前記収集対象として設定された前記デバイス値のうち1/N(Nは2以上の自然数)の前記デバイス値のログである分割ログを前記基準データ記憶手段に格納させ、
    前記基準データ記憶手段の空き領域がなくなると、前記1/Nの前記デバイス値の前記分割ログで前記基準データ記憶手段に格納されているデータを上書きさせ、
    前記基準データ記憶手段に新たな前記基準データが格納された状態となると、前記差分ログで前記差分ログ記憶手段に格納されているデータを上書きさせる、
    プログラム。
JP2020508054A 2019-07-26 2019-07-26 プログラマブルロジックコントローラ、設定ツール、及びプログラム Active JP6727472B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/029491 WO2021019615A1 (ja) 2019-07-26 2019-07-26 プログラマブルロジックコントローラ、設定ツール、及びプログラム

Publications (2)

Publication Number Publication Date
JP6727472B1 true JP6727472B1 (ja) 2020-07-22
JPWO2021019615A1 JPWO2021019615A1 (ja) 2021-09-13

Family

ID=71663983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020508054A Active JP6727472B1 (ja) 2019-07-26 2019-07-26 プログラマブルロジックコントローラ、設定ツール、及びプログラム

Country Status (5)

Country Link
US (1) US20220308548A1 (ja)
JP (1) JP6727472B1 (ja)
CN (1) CN114174939B (ja)
DE (1) DE112019007572T5 (ja)
WO (1) WO2021019615A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7270843B2 (ja) * 2020-05-15 2023-05-10 三菱電機株式会社 機器制御装置および機器制御システム
US20240264584A1 (en) * 2021-07-20 2024-08-08 Mitsubishi Electric Corporation Programmable controller, data logging method, and recording medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764476A (ja) * 1993-08-27 1995-03-10 Koyo Electron Ind Co Ltd プログラマブルコントローラ
JP2004199670A (ja) * 2002-12-04 2004-07-15 Omron Corp データ収集装置及びデータ収集システム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3852636B2 (ja) * 1997-09-03 2006-12-06 豊和工業株式会社 状態データ収集方法及び制御装置
US7930490B2 (en) * 2002-12-23 2011-04-19 Siemens Industry, Inc. Method for utilizing a memory device for a programmable logic controller (PLC)
JP3961478B2 (ja) * 2002-12-27 2007-08-22 オムロン株式会社 プログラマブルコントローラ用ユニット及びメモリ自動復旧方法
JP5317690B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
KR101101038B1 (ko) * 2009-12-30 2011-12-29 경희대학교 산학협력단 플래시메모리 기반 데이터베이스 관리 시스템 및 이를 위한 페이지 합병 방법
JP5484088B2 (ja) * 2010-01-19 2014-05-07 パナソニック株式会社 生産計画変更方法および生産計画変更装置
DE112012006297T5 (de) * 2012-04-30 2015-04-02 Abb Technology Ltd. Verfahren und Datensammler für einen industriellen Prozess
CN106663048B (zh) * 2014-06-12 2018-06-22 三菱电机株式会社 日志记录系统、日志记录装置、数据日志记录方法
JP2016151966A (ja) * 2015-02-18 2016-08-22 富士通株式会社 情報処理装置、情報処理方法及びシステム
WO2017203583A1 (ja) * 2016-05-23 2017-11-30 三菱電機株式会社 プログラマブルロジックコントローラ
CN108803502B (zh) * 2017-04-27 2022-07-26 横河电机株式会社 数据收集装置及系统、数据服务器、数据收集方法及计算机可读取的非易失性的记录介质
KR102445674B1 (ko) * 2017-12-18 2022-09-22 삼성전자주식회사 선택적으로 메모리를 부팅시키도록 구성되는 램 컨트롤러 및 그 동작 방법
CN108829345B (zh) * 2018-05-25 2020-02-21 华为技术有限公司 日志文件的数据处理方法和终端设备
CN113056711B (zh) * 2018-11-22 2022-04-15 三菱电机株式会社 输入输出控制单元、plc及数据控制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764476A (ja) * 1993-08-27 1995-03-10 Koyo Electron Ind Co Ltd プログラマブルコントローラ
JP2004199670A (ja) * 2002-12-04 2004-07-15 Omron Corp データ収集装置及びデータ収集システム

Also Published As

Publication number Publication date
JPWO2021019615A1 (ja) 2021-09-13
DE112019007572T5 (de) 2022-04-28
CN114174939B (zh) 2024-01-12
WO2021019615A1 (ja) 2021-02-04
CN114174939A (zh) 2022-03-11
US20220308548A1 (en) 2022-09-29

Similar Documents

Publication Publication Date Title
JP6727472B1 (ja) プログラマブルロジックコントローラ、設定ツール、及びプログラム
TWI482024B (zh) 可程式邏輯控制器
TW201839615A (zh) 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置
US20110307635A1 (en) A/d converter and programmable controller system
JP4659643B2 (ja) ロギングシステム
US20070106834A1 (en) Device and method for monitoring operation of a flash memory
JP2020134984A (ja) プログラマブルロジックコントローラ及びそのログデータ保存方法
CN103809502A (zh) 控制器及程序
KR101459200B1 (ko) 전송 제어장치, 메모리 제어장치, 및 상기 전송 제어장치를 구비한 plc
JP5844020B1 (ja) リモート制御装置および制御システム
JP6514479B2 (ja) プログラマブル・ロジック・コントローラ、システム、制御方法およびプログラム
SE0950463A1 (sv) Förfarande och system för lagring av data
JP5782962B2 (ja) Raidグループ制御装置
US11262834B1 (en) Data processing system and method for monitoring system properties
JP2010182216A (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システムおよびプログラム
US20190005693A1 (en) Programmable display device
JP2021192491A5 (ja)
JP4910785B2 (ja) 電子機器、電子機器の電源制御プログラムおよび電源制御方法
JPH05151013A (ja) 性能予測・診断装置システム
US20240264584A1 (en) Programmable controller, data logging method, and recording medium
US20210303487A1 (en) Programmable logic controller, external apparatus, method, and recording medium
JP4624702B2 (ja) 仮想テープ装置の制御システムおよび制御プログラム
JP2016081300A (ja) プログラマブル・ロジック・コントローラ、プログラム作成支援装置、制御方法およびプログラム
EP0867811A1 (en) Accounting-information outputting device
WO2021229796A1 (ja) 機器制御装置および機器制御システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200212

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200212

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200212

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200313

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: 20200602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200630

R150 Certificate of patent or registration of utility model

Ref document number: 6727472

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