WO2013128603A1 - Programmable controller, programmable controller system, and provision system for programmable controller - Google Patents

Programmable controller, programmable controller system, and provision system for programmable controller Download PDF

Info

Publication number
WO2013128603A1
WO2013128603A1 PCT/JP2012/055137 JP2012055137W WO2013128603A1 WO 2013128603 A1 WO2013128603 A1 WO 2013128603A1 JP 2012055137 W JP2012055137 W JP 2012055137W WO 2013128603 A1 WO2013128603 A1 WO 2013128603A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
execution
data area
programmable controller
written
Prior art date
Application number
PCT/JP2012/055137
Other languages
French (fr)
Japanese (ja)
Inventor
幸輝 湯尾
一人 永塚
Original Assignee
富士電機株式会社
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 富士電機株式会社 filed Critical 富士電機株式会社
Priority to CN201280067026.7A priority Critical patent/CN104081299B/en
Priority to PCT/JP2012/055137 priority patent/WO2013128603A1/en
Priority to JP2014501903A priority patent/JP5811265B2/en
Publication of WO2013128603A1 publication Critical patent/WO2013128603A1/en

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/056Programming the PLC

Landscapes

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

Abstract

A programmable controller having an application management means that: adds up the execution periods of a program; counts the number of times that the added-up value obtained by adding up exceeds a prescribed fixed time value; finds the cumulative execution time of the program on the basis of the count value; and prevents the execution of the program if the cumulative execution time exceeds a pre-set evaluation period.

Description

プログラマブルコントローラ、プログラマブルコントローラシステム、及びプログラマブルコントローラの提供システムProgrammable controller, programmable controller system, and system for providing programmable controller
 本発明は、外部機器を制御するプログラマブルコントローラ、プログラマブルコントローラシステム、及びプログラマブルコントローラの提供システムに関する。 The present invention relates to a programmable controller that controls an external device, a programmable controller system, and a system for providing a programmable controller.
 プログラマブルコントローラは、所定のアプリケーションを実行して外部機器等を制御するものである。そのアプリケーションは、プログラミング装置を使って予め利用者によってプログラミングされ、プログラマブルコントローラにダウンロードされる。プログラマブルコントローラは、様々なメーカから商品化されているが、コントローラの性能やアプリケーション開発ツールの使い易さ等はメーカ毎に異なるため、実際に使用してみて採用を判断したいという要望がある。 The programmable controller executes a predetermined application and controls external devices and the like. The application is preprogrammed by the user using a programming device and downloaded to the programmable controller. Programmable controllers have been commercialized by various manufacturers, but controller performance, ease of use of application development tools, and the like vary from manufacturer to manufacturer, and there is a desire to determine the adoption after actually using it.
 このような要望に応えるため、コントローラメーカは、プログラマブルコントローラを利用者に評価させる目的で、プログラマブルコントローラの実機やアプリケーション開発ツールを評価機(体験版)として提供することがある。このような場合、利用者は、評価機を評価し、その評価結果に基づいて正規に購入することとなる。 In order to meet such demands, controller manufacturers may provide actual programmable controller devices and application development tools as evaluation machines (trial versions) for the purpose of allowing users to evaluate programmable controllers. In such a case, the user evaluates the evaluator and purchases it regularly based on the evaluation result.
 しかしながら、提供される評価機は、正規品との区別がなく、特に使用制約を設けていない。よって利用者の中には、評価機を用いてシステムを構築し、構築したシステムをそのままエンド利用者に納めてしまい、コントローラメーカが売上を回収できないという問題がある。そのため、従来では、例えば評価開始時期と現在日時との比較によりプログラマブルコントローラ(評価機)の評価期間の把握を行い、期間満了後にプログラマブルコントローラを起動しない措置を取っている。また、従来では、デモ評価ソフトウェアの実行時間使用量を監視し、経過した実行時間が所定の評価時間を超えた時点で、利用者からの登録があるまでデモ評価ソフトウェアを実行不能にする手法が知られている(例えば、特許文献1参照)。 However, the provided evaluator is indistinguishable from a regular product and does not have any usage restrictions. Therefore, some users have a problem that a system is constructed using an evaluation machine, and the constructed system is directly delivered to the end user, so that the controller manufacturer cannot collect sales. Therefore, conventionally, for example, the evaluation period of the programmable controller (evaluator) is grasped by comparing the evaluation start time with the current date and time, and measures are taken so that the programmable controller is not activated after the period expires. Conventionally, there is a method of monitoring the execution time usage of the demo evaluation software, and when the elapsed execution time exceeds the predetermined evaluation time, the demo evaluation software cannot be executed until registered by the user. It is known (see, for example, Patent Document 1).
特開2001-100855号公報Japanese Patent Laid-Open No. 2001-1000085
 しかしながら、上述した従来の評価開始時期と現在日時との比較により評価期間を把握する手法では、プログラマブルコントローラの電源オフ時に、バッテリのバックアップ等を行っていないとカレンダIC(Integrated Circuit)の動作が停止して、正確な日時がわからなくなる。そのため、上述の手法では、評価期間が正確に把握できないという問題がある。 However, with the conventional method of grasping the evaluation period by comparing the conventional evaluation start time with the current date and time, the operation of the calendar IC (Integrated Circuit) is stopped unless the battery is backed up when the programmable controller is turned off. And I don't know the exact date and time. Therefore, the above-described method has a problem that the evaluation period cannot be accurately grasped.
 また、プログラマブルコントローラは、対話型アプリケーションを搭載するPC(Personal Computer)と異なり、システムを立ち上げた後は連続運転が求められる。例えば、プログラマブルコントローラを所定の生産ラインに適用した場合には、24時間若しくはそれ以上の連続運転を行うことも珍しくない。そのため、従来手法のように、評価期間満了により直ちにプログラマブルコントローラを停止させた場合には、予期せぬ事故等を誘発する可能性がある。 Also, unlike a PC (Personal Computer) equipped with an interactive application, a programmable controller is required to be continuously operated after the system is started up. For example, when a programmable controller is applied to a predetermined production line, it is not uncommon to perform continuous operation for 24 hours or more. Therefore, if the programmable controller is stopped immediately after the evaluation period expires as in the conventional method, an unexpected accident or the like may be induced.
 本発明は、上記の点に鑑みてなされたものであり、評価期間等に対するプログラマブルコントローラの使用を適切に制御するプログラマブルコントローラ、プログラマブルコントローラシステム、及びプログラマブルコントローラの提供システムを提供することを目的とする。 The present invention has been made in view of the above points, and an object thereof is to provide a programmable controller, a programmable controller system, and a programmable controller providing system that appropriately control the use of the programmable controller for an evaluation period or the like. .
 上記の課題を解決するために、本発明は、プログラマブルコントローラにおいて、プログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過すると計数し、該計数値に基づき前記プログラムの累積実行時間を求める。また、本発明は、求めた累積実行時間が予め設定された評価期間を超過することにより前記プログラムの実行を阻止するアプリケーション管理手段を有する。 In order to solve the above problems, the present invention, in a programmable controller, integrates the program execution cycle, counts when the integrated value obtained by the integration exceeds a predetermined fixed time value, and based on the count value, Find the cumulative execution time of a program. The present invention further includes application management means for preventing the execution of the program when the obtained accumulated execution time exceeds a preset evaluation period.
 なお、本発明の構成要素、表現又は構成要素の任意の組み合わせを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造等に適用したものも本発明の態様として有効である。 In addition, what applied the arbitrary combination of the component of this invention, the expression, or the component to a method, an apparatus, a system, a computer program, a recording medium, a data structure, etc. is effective as an aspect of this invention.
 本発明によれば、プログラマブルコントローラの使用を適切に制御することができる。 According to the present invention, it is possible to appropriately control the use of the programmable controller.
本実施形態における提供システムの概略構成の一例を示す図である。It is a figure which shows an example of schematic structure of the provision system in this embodiment. 本実施形態におけるPLCの機能構成の一例を示す図である。It is a figure which shows an example of the function structure of PLC in this embodiment. 本実施形態におけるPLCのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of PLC in this embodiment. 利用者端末の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of a user terminal. 提供者端末の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of a provider terminal. 本実施形態における利用者端末及び提供者端末のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of the user terminal and provider terminal in this embodiment. PLCにおけるプログラムの実行周期例を説明するための図である。It is a figure for demonstrating the execution period example of the program in PLC. 評価期間の判定及び実行制御の第1実施例を説明するためのフローチャートである。It is a flowchart for demonstrating the 1st Example of determination of an evaluation period, and execution control. 評価期間の判定及び実行制御の第2実施例を説明するためのフローチャートである。It is a flowchart for demonstrating 2nd Example of determination of an evaluation period, and execution control. 図9に対応するフラグ書き込みの一例を示す図である。FIG. 10 is a diagram illustrating an example of flag writing corresponding to FIG. 9. 評価期間の判定及び実行制御の第3実施例を説明するためのフローチャートである。It is a flowchart for demonstrating the 3rd Example of determination and execution control of an evaluation period. 図11に対応するフラグ書き込みの一例を示す図である。FIG. 12 is a diagram illustrating an example of flag writing corresponding to FIG. 11. 第3実施例に対する通知処理の一例を示すフローチャートである。It is a flowchart which shows an example of the notification process with respect to 3rd Example. 利用者端末における処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence in a user terminal. 提供者端末における処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence in a provider terminal.
 <本発明について>
 本発明は、例えばプログラマブルコントローラの使用に関し、例えばプログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過すると計数し、該計数値に基づきプログラムの累積実行時間を求め、該累積実行時間が予め設定された評価期間を超過することによりプログラムの実行を阻止する。なお、コントローラで実行されるアプリケーション(プログラム)の実行時間の積算情報は、例えばメモリ(記憶手段)等に蓄えていくことで、カレンダIC等による時刻記録の課題を解決する。
<About the present invention>
For example, the present invention relates to the use of a programmable controller, for example, by accumulating the execution period of a program, counting when the integrated value obtained by the integration exceeds a predetermined fixed time value, and calculating the accumulated execution time of the program based on the counted value. The execution of the program is blocked when the accumulated execution time exceeds a preset evaluation period. The accumulated information of the execution time of the application (program) executed by the controller is stored, for example, in a memory (storage means), thereby solving the problem of time recording by the calendar IC or the like.
 また、本発明は、積算値が固定時間を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって上述した累積実行時間を算出してもよい。また、本発明は、評価期間満了後は、適切なタイミングでプログラマブルコントローラの起動を行わないように制御する。例えば、上述したフラグ数の判定により、プログラムを評価期間の満了期間以上実行した場合には、次回のプログラムの実行を阻止する。 In the present invention, a flag is written in a predetermined data area every time the integrated value exceeds a fixed time, and the above-described accumulated execution time may be calculated based on the number of written flags. Further, the present invention performs control so that the programmable controller is not activated at an appropriate timing after the evaluation period has expired. For example, if the program is executed for the evaluation period or more by the determination of the number of flags described above, execution of the next program is blocked.
 なお、本発明では、実行積算時間が閾値を超過した場合に、例えばプログラマブルコントローラ本体に設けられた発光部や音声出力部を用いて利用者に評価期間満了を通知してもよい。なお、発光部としては、例えばLED(Light Emitting Diode)等があるが、これに限定されるものではなく、その他の発光素子であってもよい。また、音声出力部としては、例えばスピーカ等があるが、これに限定されるものではない。また、上述した発光部や音声出力部は、プログラマブルコントローラ内に一体に設けられていてもよい。また、発光部や音声出力部は、評価コントローラとは別体に設けられ、例えばUSB(Universal Serial Bus)端子やスピーカ端子等の出力端子等により接続されていてもよい。 In the present invention, when the execution integration time exceeds the threshold, the user may be notified of the expiration of the evaluation period using, for example, a light emitting unit or a voice output unit provided in the programmable controller main body. In addition, as a light emission part, although there exists LED (Light Emitting Diode) etc., for example, it is not limited to this, Other light emitting elements may be sufficient. Moreover, as an audio | voice output part, although there exist a speaker etc., for example, it is not limited to this. Moreover, the light emission part and audio | voice output part which were mentioned above may be provided integrally in the programmable controller. In addition, the light emitting unit and the audio output unit are provided separately from the evaluation controller, and may be connected by an output terminal such as a USB (Universal Serial Bus) terminal or a speaker terminal, for example.
 また、本発明では、実行積算時間がタイムアップした場合に、プログラマブルコントローラと接続された利用者端末上の支援ツールに評価期間満了を通知してもよい。例えば、アプリケーションに対するメモリ領域に設けられたRAS情報通知領域等に対して、評価期間満了を通知して利用者に知らせることができる。なお、RAS情報とは、コンピュータシステムの信頼性(Reliability)、可用性(Availability)、保守性(Serviceability)を表す情報である。なお、上述した評価期間満了の通知の際には、対象モジュール(対象機器)であるプログラマブルコントローラが軽故障であるとして通知を行ってもよい。 In the present invention, when the execution integration time is up, the support tool on the user terminal connected to the programmable controller may be notified of the expiration of the evaluation period. For example, the RAS information notification area provided in the memory area for the application can be notified of the expiration of the evaluation period to notify the user. The RAS information is information indicating the reliability (Reliability), availability (Availability), and maintainability (Serviceability) of the computer system. Note that when the above-described evaluation period expiration notification is made, the programmable controller that is the target module (target device) may be notified that there is a minor failure.
 以下に、本発明におけるプログラマブルコントローラ、プログラマブルコントローラシステム、及び提供システムを好適に実施した形態について、図面を用いて説明する。なお、以下の説明では、プログラマブルコントローラの一例としてPLC(Programmable Logic Controller)を用いることとするが、本発明においてはこれに限定されるものではない。 Hereinafter, embodiments in which a programmable controller, a programmable controller system, and a providing system according to the present invention are suitably implemented will be described with reference to the drawings. In the following description, a programmable logic controller (PLC) is used as an example of a programmable controller. However, the present invention is not limited to this.
 <プログラマブルコントローラの提供システムの概略構成例>
 図1は、本実施形態におけるプログラマブルコントローラの提供システムの概略構成の一例を示す図である。図1に示す提供システム10は、PLC11-1~11-3(以下、必要に応じて「PLC11」と総称する)と、利用者端末12と、入出力モジュール13-1~13-n(以下、必要に応じて「I/Oモジュール13」と総称する)とを有する。ここで、図1に示す提供システム10では、一例として3台のPLC11-1~11-3と、複数台のI/Oモジュール13-1~13-nとを有するが、本発明における台数については上記の内容に限定されるものではない。
<Schematic configuration example of a programmable controller providing system>
FIG. 1 is a diagram illustrating an example of a schematic configuration of a programmable controller providing system according to the present embodiment. The providing system 10 shown in FIG. 1 includes PLCs 11-1 to 11-3 (hereinafter collectively referred to as “PLC11” as necessary), a user terminal 12, and input / output modules 13-1 to 13-n (hereinafter referred to as “PLC11”). And collectively referred to as “I / O module 13” as necessary. Here, the providing system 10 shown in FIG. 1 has three PLCs 11-1 to 11-3 and a plurality of I / O modules 13-1 to 13-n as an example. Is not limited to the above.
 利用者端末12と、PLC11-1とは、例えば通信ケーブル14等により接続されており、PLC11-1~11-3と、I/Oモジュール13-1~13-nとは、それぞれ制御用のネットワーク15により接続されている。 The user terminal 12 and the PLC 11-1 are connected by, for example, a communication cable 14 or the like, and the PLCs 11-1 to 11-3 and the I / O modules 13-1 to 13-n are respectively used for control. Connected by a network 15.
 更に、図1に示す提供システム10は、PLC11を提供した提供者端末16を有し、利用者端末12と提供者端末16とは、例えばインターネット等に代表される通信ネットワーク17によりデータの送受信が可能な状態で接続されている。なお、1又は複数のPLC11(図1の例では、PLC11-1~11-3)と、1又は複数のI/Oモジュール13(図1の例では、I/Oモジュール13-1~13-n)とは、プログラマブルコントローラシステム18として機能する。また、複数のPLC11及び複数のI/Oモジュール13は、それぞれが1つのノード(局)として位置付けることができる。 Further, the providing system 10 shown in FIG. 1 includes a provider terminal 16 that provides the PLC 11, and the user terminal 12 and the provider terminal 16 can transmit and receive data via a communication network 17 typified by the Internet, for example. Connected as possible. One or more PLCs 11 (in the example of FIG. 1, PLCs 11-1 to 11-3) and one or more I / O modules 13 (in the example of FIG. 1, I / O modules 13-1 to 13- n) functions as the programmable controller system 18. Each of the plurality of PLCs 11 and the plurality of I / O modules 13 can be positioned as one node (station).
 PLC11は、各種の支援ツールを搭載した利用者端末12からの指示に基づいて、対象機器であるI/Oモジュール13等を用いて所定の処理を実行したり、実行結果の解析、制御等を行うプログラマブルコントローラである。つまり、PLC11は、利用者端末12における支援対象の機器である。なお、PLC11は、例えばアプリケーション演算等を行うCPU(Central Processing Unit)モジュール等が用いられるがこれに限定されるものではない。 The PLC 11 executes predetermined processing using the I / O module 13 or the like that is the target device based on instructions from the user terminal 12 equipped with various support tools, and analyzes and controls execution results. A programmable controller to perform. That is, the PLC 11 is a support target device in the user terminal 12. Note that the PLC 11 uses, for example, a CPU (Central Processing Unit) module that performs application calculation or the like, but is not limited thereto.
 ここで、本実施形態では、CPUモジュール等からなる各PLC11-1~11-3は、所定の周期で例えばリング状のネットワーク15等を介して各I/Oモジュール13-1~13-nとのデータ交換を行う。このとき、各PLC11-1~11-3や各I/Oモジュール13-1~13-nは、例えばネットワーク通信サイクル(例えば、1ms毎)に同期してアプリケーション等を起動する。 In this embodiment, the PLCs 11-1 to 11-3 including the CPU modules and the like are connected to the I / O modules 13-1 to 13-n via, for example, the ring network 15 at a predetermined cycle. Exchange data. At this time, the PLCs 11-1 to 11-3 and the I / O modules 13-1 to 13-n start applications and the like in synchronization with, for example, a network communication cycle (for example, every 1 ms).
 つまり、制御用のネットワーク15のトポロジは、プログラマブルコントローラシステム18内のPLC11-1~11-3や各I/Oモジュール13-1~13-nがデイジーチェーン接続されたリング型である。PLC11は、所定の周期でこのリング型トポロジにデータフレームを周回させることで各I/Oモジュール13-1~13-n間のデータ交換を行っている。 That is, the topology of the control network 15 is a ring type in which the PLCs 11-1 to 11-3 and the I / O modules 13-1 to 13-n in the programmable controller system 18 are daisy chain connected. The PLC 11 exchanges data among the I / O modules 13-1 to 13-n by circulating data frames in this ring topology at a predetermined cycle.
 例えば、上述したプログラマブルコントローラシステム18において、PLC11-1が送信したデータフレームは、PLC11-2→PLC11-3→I/Oモジュール13-1→I/Oモジュール13-2→I/Oモジュール13-nへとバケツリレーのように送受信され順次伝達される。そして、I/Oモジュール13-nに伝達されたデータフレームは、折り返され、上記と逆のルートを辿ってPLC11-1に戻る。このようにネットワーク15を一巡して戻ったデータフレームは、その源の送信元(この場合は、PLC11-1)で削除される。このようにして、リング上のPLC11は、データの送受信を行い、I/Oモジュール13がその送受信データに基づき所定のデータ処理を行う。 For example, in the above-described programmable controller system 18, the data frame transmitted by the PLC 11-1 is PLC 11-2 → PLC 11-3 → I / O module 13-1 → I / O module 13-2 → I / O module 13−. It is transmitted to n and transmitted sequentially like a bucket relay. Then, the data frame transmitted to the I / O module 13-n is turned back, and returns to the PLC 11-1 along the reverse route. The data frame that has returned through the network 15 in this manner is deleted at the source transmission source (in this case, the PLC 11-1). In this way, the PLC 11 on the ring transmits and receives data, and the I / O module 13 performs predetermined data processing based on the transmitted and received data.
 なお、PLC11は、ネットワーク15を用いて入出力データのみならず、他のPLC間のアプリケーションデータの交換や、システム起動・停止・リセット等のシステム全体の制御のため、メッセージのやり取りを行う。これらのデータをリング上で伝送することで、システムとしてタイミングの同期を計りつつ、データの更新を行っている。 The PLC 11 uses the network 15 to exchange not only input / output data, but also exchanges application data between other PLCs and controls the entire system such as system start / stop / reset. By transmitting these data on the ring, the system updates the data while synchronizing the timing.
 また、本実施形態では、PLC11を評価用(サンプル品)として利用者に与えた場合の評価期間(サンプル期間)の満了を出力するために、ネットワーク通信サイクルに同期して起動されるアプリケーションの稼働時間を積算する。具体的には、例えば上述したリング状のネットワーク15を周回するデータの交換周期に同期して実行されるアプリケーションの稼働時間(プログラムの実行周期)を積算して評価期間を判定する。 In this embodiment, in order to output the expiration of the evaluation period (sample period) when the PLC 11 is given to the user as an evaluation (sample product), the operation of the application started in synchronization with the network communication cycle is output. Accumulate time. Specifically, for example, the evaluation period is determined by integrating the operating time of the application executed in synchronization with the exchange period of data circulating around the ring-shaped network 15 described above (program execution period).
 これにより、上述したデータ交換周期に同期して実行されるプログラムの実行周期に対応させて、ネットワーク15上の各PLC11の評価期間を適切に監視することができる。なお、本実施形態におけるプログラムの実行周期の取得方法は、これに限定されるものではない。 Thereby, the evaluation period of each PLC 11 on the network 15 can be appropriately monitored in correspondence with the execution cycle of the program executed in synchronization with the data exchange cycle described above. Note that the method for acquiring the program execution cycle in the present embodiment is not limited to this.
 また、本実施形態では、積算した時間が所定の時間を超過したら評価期間の満了として、例えば利用者に通知してプログラムの実行を阻止する等の処理を行う。 In this embodiment, when the accumulated time exceeds a predetermined time, the evaluation period expires, for example, a process such as notifying the user and preventing the execution of the program is performed.
 つまり、本実施形態では、予め設定されたPLC11を停止させる条件に基づいて、PLC11が使用できるか否かを判断し、使用できなくなった場合に、例えばプログラムの実行を阻止する制御を行うことで、なお、本実施形態においては、これに限定されるものではなく、例えば電源ON/OFF、リセット、停止/起動等の制御によりPLC11の使用を制御してもよい。また、本実施形態において、提供システム10が運転中である場合には、PLC11が使用できなくなった場合に、故障情報等を表示して利用者に何らかの対応を促すインタフェースをPLC11に設けてもよい。 In other words, in the present embodiment, it is determined whether or not the PLC 11 can be used based on a preset condition for stopping the PLC 11, and when the PLC 11 cannot be used, for example, control is performed to prevent execution of the program. In addition, in this embodiment, it is not limited to this, For example, you may control use of PLC11 by control, such as power ON / OFF, a reset, stop / start. Further, in the present embodiment, when the providing system 10 is in operation, the PLC 11 may be provided with an interface that displays failure information or the like and prompts the user to take some measures when the PLC 11 cannot be used. .
 ここで、利用者端末12は、内部にPLC11の実行等を支援する支援ツールが格納されている。利用者端末12は、利用者の指示により、予め設定された支援ツールを実行し、PLC11等に対して所定の処理を実行させる。なお、上述した支援ツールは、各PLC11-1~11-3に対応した支援ツールを提供者端末16から通信ネットワーク17を通じて取得してもよい。 Here, the user terminal 12 stores therein a support tool that supports execution of the PLC 11 and the like. The user terminal 12 executes a preset support tool according to a user instruction, and causes the PLC 11 or the like to execute a predetermined process. The above-described support tool may acquire support tools corresponding to the PLCs 11-1 to 11-3 from the provider terminal 16 through the communication network 17.
 ここで、利用者端末12は、一般的な汎用のコンピュータを用いることができる。また、利用者端末12は、PLC11から予め設定された評価期間を経過した旨の通知を受けた場合に、その旨のメッセージを画面に表示させて利用者に通知する処理を行うことができる。また、利用者端末12は、PLC11に対して正規に購入する場合や、レンタルする場合には、提供者端末16にその旨の通知やPLC11の識別情報(例えば、MACアドレス)等を送信する。また、利用者端末12は、提供者端末16から情報を取得する際に暗号化が必要な場合には、予め設定されている利用者端末12の鍵情報を提供者端末16に送信する。 Here, the user terminal 12 can be a general general-purpose computer. Further, when the user terminal 12 receives a notification from the PLC 11 that a preset evaluation period has elapsed, the user terminal 12 can perform a process of displaying a message to that effect on the screen and notifying the user. Further, when the user terminal 12 regularly purchases or rents the PLC 11, the user terminal 12 transmits a notification to that effect to the provider terminal 16 and identification information (for example, MAC address) of the PLC 11. Further, the user terminal 12 transmits key information of the user terminal 12 set in advance to the provider terminal 16 when encryption is necessary when acquiring information from the provider terminal 16.
 また、利用者端末12は、提供者端末16から正規購入用のコマンド情報やレンタル用のコマンド情報等を取得し、取得した各コマンド情報を対象のPLC11に対して実行することで、評価期間経過後もそのまま継続してPLC11を使用することができる。なお、利用者端末12が提供者端末16から取得される各コマンド情報等は、上述した鍵情報に基づいて暗号化されていることが好ましい。上述したように、コマンドを暗号化して送信するのは、送信したデータが盗難されて他のPLC11に流用されるのを防止するためであり、データの内容自体を秘匿するためでもある。 Further, the user terminal 12 acquires command information for regular purchase, command information for rental, etc. from the provider terminal 16 and executes each acquired command information on the target PLC 11 so that the evaluation period has elapsed. After that, the PLC 11 can be used as it is. In addition, it is preferable that each command information etc. which the user terminal 12 acquires from the provider terminal 16 are encrypted based on the key information mentioned above. As described above, the command is encrypted and transmitted in order to prevent the transmitted data from being stolen and diverted to other PLCs 11 and also to conceal the data content itself.
 利用者端末12は、提供者端末16により得られる暗号化されたコマンド情報を自らの鍵情報により復号し、得られたコマンドを所定のPLC11に実行させることにより、PLC11を購入して正規版として使用したり、所定時間のレンタル使用をすることが可能となる。なお、上述したコマンドは、PLC11-1~11-3毎に固有のコマンドであることが好ましい。PLC11毎に固有のコマンドとすることで、個々の機器に対する制御を行うことができる。なお、固有のコマンドは、例えばMACアドレス等のPLC11の識別情報を含むコマンドを用いることができる。これにより、上述したネットワーク15上を巡回するコマンドを取得した各PLC11は、自分のMACアドレスと、コマンド内のMACアドレスとを比較し、同一である場合にコマンドを実行する。これにより、PLC11の評価版から正規版又はレンタル版へのモード情報の変更(書き換え等)を個別に行うことができる。 The user terminal 12 purchases the PLC 11 as a regular version by decrypting the encrypted command information obtained by the provider terminal 16 with its own key information and causing the predetermined PLC 11 to execute the obtained command. It can be used or rented for a predetermined time. The above-described command is preferably a command specific to each of the PLCs 11-1 to 11-3. By using a unique command for each PLC 11, control of individual devices can be performed. As the unique command, for example, a command including identification information of the PLC 11 such as a MAC address can be used. As a result, each PLC 11 that has acquired the command for circulating on the network 15 compares its own MAC address with the MAC address in the command, and executes the command if they are the same. Thereby, the change (rewriting etc.) of the mode information from the evaluation version of PLC11 to a regular version or a rental version can be performed individually.
 なお、上述したコマンドは、PLC11-1~11-3のうち、複数のPLCに対応する共有のコマンドであってもよい。これにより、複数の機器に対して1つのコマンドで効率的に制御することができる。 The above-described command may be a shared command corresponding to a plurality of PLCs among the PLCs 11-1 to 11-3. Thereby, it is possible to efficiently control a plurality of devices with one command.
 I/Oモジュール13は、他のモジュール等とデータの入出力処理を行う。例えば、I/Oモジュール13は、PLC11からの指示に基づいて、例えば接続機器等から得られるデータ等をPLC11に出力(送信)したり、PLC11により処理された結果を、接続機器等に出力したり、記憶したりする。 The I / O module 13 performs data input / output processing with other modules. For example, based on an instruction from the PLC 11, the I / O module 13 outputs (transmits), for example, data obtained from the connected device or the like to the PLC 11, or outputs a result processed by the PLC 11 to the connected device or the like. Or remember.
 提供者端末16は、通信ネットワークを通じて利用者端末12から取得した情報に基づいて、対象のPLC11が使用可能となるように、それぞれのPLC11毎に使用を許可する固有のコマンドを生成する。なお、利用者端末12から取得する情報としては、例えばPLC11を正規に購入するか又はレンタル使用するかの要求通知や対象のPLC11の識別情報(例えば、MACアドレス)等である。また、暗号化が必要な場合には、予め設定されている利用者端末12の鍵情報を取得する。 The provider terminal 16 generates a unique command that permits the use of each PLC 11 based on the information acquired from the user terminal 12 through the communication network so that the target PLC 11 can be used. The information acquired from the user terminal 12 includes, for example, a request notification as to whether the PLC 11 is properly purchased or used for rental, identification information (for example, a MAC address) of the target PLC 11, and the like. Further, when encryption is necessary, key information of the user terminal 12 set in advance is acquired.
 なお、提供者端末16は、生成されたコマンドを、利用者端末12から得られた鍵情報に基づいて暗号化を行い、暗号化された情報を、通信ネットワーク17を介して利用者端末12に送信することができる。 The provider terminal 16 encrypts the generated command based on the key information obtained from the user terminal 12, and sends the encrypted information to the user terminal 12 via the communication network 17. Can be sent.
 なお、上述した提供システム10において、利用者端末12と提供者端末16とは、通信ネットワーク17等で接続されていなくてもよい。そのような場合に、利用者端末12は、例えばPLC11の購入要求や鍵情報を郵送等で提供者端末16に送付する。また、利用者端末12は、提供者端末16からPLC11の使用を許可する固有のコマンドを含む暗号化情報等が記録された記録媒体(例えば、CD-ROM)等を郵送で受け取り、記録媒体の情報を読み取ることで目的の情報を取得する。 In the providing system 10 described above, the user terminal 12 and the provider terminal 16 may not be connected via the communication network 17 or the like. In such a case, the user terminal 12 sends a purchase request or key information for the PLC 11 to the provider terminal 16 by mail or the like. Further, the user terminal 12 receives a recording medium (for example, a CD-ROM) in which encrypted information including a unique command permitting use of the PLC 11 is recorded from the provider terminal 16 by mail, and stores the recording medium. The target information is acquired by reading the information.
 <PLC11における機能構成例>
 次に、本実施形態におけるPLC11の機能構成例について、図を用いて説明する。図2は、本実施形態におけるPLCの機能構成の一例を示す図である。図2に示すPLC11は、通信インタフェース手段21と、コマンド提供手段22と、ストレージ管理手段23と、アプリケーション管理手段24と、システム管理手段25と、スイッチ(SW)監視手段26と、カレンダIC(日時取得手段)27と、入出力(I/O)制御手段28と、通知手段29とを有する。
<Example of functional configuration in PLC 11>
Next, a functional configuration example of the PLC 11 in the present embodiment will be described with reference to the drawings. FIG. 2 is a diagram illustrating an example of a functional configuration of the PLC according to the present embodiment. The PLC 11 shown in FIG. 2 includes a communication interface unit 21, a command providing unit 22, a storage management unit 23, an application management unit 24, a system management unit 25, a switch (SW) monitoring unit 26, a calendar IC (date and time). Acquisition means) 27, input / output (I / O) control means 28, and notification means 29.
 通信インタフェース手段21は、通信ケーブル14に接続された利用者端末12や、他のPLC11、I/Oモジュール13、I/Oモジュール13に接続された外部機器等とのデータの送受信を行うための通信手段である。なお、通信インタフェース手段21には、例えばMACアドレス等の識別情報を含んでいる。また、通信インタフェース手段21は、例えばUSB(Universal Serial Bus)等のシリアルインタフェースや、LAN(Local Area Network)ケーブル等と接続可能なインタフェース等を備えるが、本発明においては、これに限定されるものではない。 The communication interface unit 21 transmits and receives data to and from the user terminal 12 connected to the communication cable 14, other PLC 11, I / O module 13, external device connected to the I / O module 13, and the like. It is a communication means. The communication interface means 21 includes identification information such as a MAC address. The communication interface means 21 includes a serial interface such as USB (Universal Serial Bus), an interface connectable with a LAN (Local Area Network) cable, and the like. However, the present invention is not limited to this. is not.
 コマンド提供手段22は、例えばローダコマンドサーバとしての機能を有する。具体的には、コマンド提供手段22は、PLC11やI/Oモジュール13との間でデータのやり取りや、予め設定された処理を実行させるためのコマンドをアプリケーション管理手段24から取得する。また、コマンド提供手段22は、所定の外部装置に対してローダに関するコマンドを出力する。 The command providing means 22 has a function as a loader command server, for example. Specifically, the command providing unit 22 acquires a command for exchanging data with the PLC 11 or the I / O module 13 or executing a preset process from the application management unit 24. The command providing unit 22 outputs a command related to the loader to a predetermined external device.
 なお、本実施形態において、ローダとは、例えばプログラムを外部記憶装置からコンピュータの記憶領域に読み込むために使用される記憶領域内に常駐するプログラム等を意味するが、これに限定されるものではない。また、本実施形態において、コマンドとは、例えば上述したローダに対して所定の実行や制御を与えるためのコマンド等を意味するが、これに限定されるものではない。また、各コマンドは、例えば上述した利用者端末12から取得してもよく、またアプリケーション管理手段24やシステム管理手段25により取得することができる。 In this embodiment, the loader means, for example, a program that resides in a storage area used for reading a program from an external storage device into a storage area of a computer, but is not limited thereto. . In the present embodiment, the command means, for example, a command for giving predetermined execution or control to the above-described loader, but is not limited thereto. Each command may be acquired from, for example, the user terminal 12 described above, or may be acquired by the application management unit 24 or the system management unit 25.
 ストレージ管理手段23は、自分のMACアドレス等のPLC11の識別情報やPLC11内で動作された内容、出力結果等を記憶するための記憶手段である。また、ストレージ管理手段23は、評価期間の判定等を行うための領域を有し、その領域に対して、例えばプログラムの実行周期の積算値等を格納する。 The storage management unit 23 is a storage unit for storing identification information of the PLC 11 such as its own MAC address, contents operated in the PLC 11, output results, and the like. Further, the storage management means 23 has an area for determining the evaluation period and the like, and stores, for example, an integrated value of the program execution cycle in the area.
 また、ストレージ管理手段23は、例えば、フラッシュメモリやSDカード(登録商標)等のような不揮発の書換え可能メモリ(記憶手段)と接続して所定の情報を記憶させ、必要に応じて読み出せるようにしてもよい。ストレージ管理手段23は、取得した情報をアプリケーション管理手段24やシステム管理手段25等に出力したり、アプリケーション管理手段24やシステム管理手段25等から得られた情報を記憶する。 Further, the storage management unit 23 is connected to a non-volatile rewritable memory (storage unit) such as a flash memory or an SD card (registered trademark), for example, and stores predetermined information so that it can be read out as necessary. It may be. The storage management unit 23 outputs the acquired information to the application management unit 24, the system management unit 25, etc., and stores information obtained from the application management unit 24, the system management unit 25, etc.
 アプリケーション管理手段24は、本実施形態におけるPLC11の使用期間等を管理し、利用者に適切な使用を行わせるためのアプリケーション(プログラム)等を管理する。具体的には、アプリケーション管理手段24は、例えばプログラムの実行周期を積算し、積算により得られた積算値がPLC11の評価期間が予め設定された閾値を超えた場合に、アプリケーション(プログラム)の実行を阻止することで、PLC11の使用を停止する。 The application management unit 24 manages the usage period of the PLC 11 in the present embodiment, and manages applications (programs) and the like for causing the user to use appropriately. Specifically, the application management unit 24 integrates, for example, program execution cycles, and executes an application (program) when the integrated value obtained by the integration exceeds a preset threshold value of the PLC 11. By stopping this, the use of the PLC 11 is stopped.
 その場合、アプリケーション管理手段24は、最初にプログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過すると計数し、該計数値に基づきプログラムの累積実行時間を求める。次に、アプリケーション管理手段24は、該累積実行時間が予め設定された評価期間を超過することによりプログラムの実行を阻止することで、PLC11の使用を停止する。 In that case, the application management means 24 first accumulates the execution period of the program, counts when the accumulated value obtained by the accumulation exceeds a predetermined fixed time value, and obtains the accumulated execution time of the program based on the counted value. . Next, the application management unit 24 stops the use of the PLC 11 by preventing the execution of the program when the accumulated execution time exceeds a preset evaluation period.
 また、アプリケーション管理手段24は、例えば上述した積算値が、上述した固定時間を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって累積実行時間を算出してもよい。その場合、アプリケーション管理手段24は、プログラムの実行回数が、設定された固定回数を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって積算値を算出してもよい。 Further, the application management unit 24 may write a flag in a predetermined data area every time the above-described integrated value exceeds the above-described fixed time, and calculate the cumulative execution time based on the number of written flags. In that case, the application management means 24 may write a flag in a predetermined data area every time the number of executions of the program exceeds a set fixed number of times, and calculate an integrated value based on the number of written flags.
 なお、フラグを書き込む具体例については後述する。また、アプリケーション管理手段24は、上述したフラグ数の判定により、プログラムを評価期間の満了期間以上実行した場合に、次回のプログラムの実行を阻止する。 A specific example of writing a flag will be described later. The application management unit 24 prevents the next program from being executed when the program is executed for the evaluation period or more by the determination of the number of flags described above.
 システム管理手段25は、PLC11全体のシステム動作を管理する。具体的には、システム管理手段25は、SW監視手段26からのスイッチ情報に基づいて、使用時間の計測等を行う。なお、このときの時間情報は、例えばカレンダIC27から取得することができる。また、システム管理手段25は、計測された実使用時間と予め設定された使用時間とを比較し、実使用時間が、予め設定された使用時間を超えた場合には、プログラムの実行を阻止するに先立ち、光や音声等で周囲にいる利用者等に対して通知を行う。なお、通知等は、アプリケーション管理手段24に通知用のコマンドを発生させることで、通知手段29により所定の通知(例えば、アラーム出力等)を行わせることができる。 The system management means 25 manages the system operation of the entire PLC 11. Specifically, the system management unit 25 measures the usage time based on the switch information from the SW monitoring unit 26. The time information at this time can be acquired from, for example, the calendar IC 27. Further, the system management means 25 compares the measured actual use time with a preset use time, and if the actual use time exceeds the preset use time, the execution of the program is prevented. Prior to the notification, a user or the like in the vicinity is notified by light or voice. Note that the notification or the like can be performed by the notification unit 29 by causing the application management unit 24 to generate a notification command.
 また、システム管理手段25は、利用者端末12から取得した正規購入用又はレンタル用の所定のコマンドを実行する。これにより、システム管理手段25は、例えばストレージ管理手段23内に記憶された評価用コントローラとしての各種設定情報を書き換えて、評価期間の満了後もPLC11の継続使用を実現することができる。なお、システム管理手段25は、例えば外部から得られる固有のコマンドに含まれるMACアドレスと自分のMACアドレスとを比較し、同一である場合にコマンドを実行することができるが、これに限定されるものではない。 Also, the system management means 25 executes a predetermined command for regular purchase or rental acquired from the user terminal 12. Thereby, the system management means 25 can rewrite various setting information as the controller for evaluation stored in the storage management means 23, for example, and can realize continuous use of the PLC 11 even after the evaluation period expires. For example, the system management unit 25 compares the MAC address included in the unique command obtained from the outside with its own MAC address, and can execute the command if they are the same, but is not limited thereto. It is not a thing.
 SW管理手段26は、例えば、PLC11自体に設けられた各スイッチ(例えば、電源スイッチやキースイッチ(KeySW)、局番スイッチ(SW)等)から利用者により選択されたスイッチに対する信号をシステム管理手段25に出力する。 For example, the SW management unit 26 sends a signal to a switch selected by the user from each switch (for example, a power switch, a key switch (KeySW), a station number switch (SW), etc.) provided in the PLC 11 itself. Output to.
 カレンダIC27は、日時情報を取得し、取得した日時情報(例えば、日付、時間だけでなく、例えば曜日等も含む)をシステム管理手段25に出力する。なお、カレンダIC27は、例えばRTC(Real Time Clock)等を用いることができるが、これに限定されるものではない。 The calendar IC 27 acquires date and time information and outputs the acquired date and time information (for example, not only the date and time but also the day of the week, for example) to the system management means 25. The calendar IC 27 may be, for example, an RTC (Real Time Clock), but is not limited to this.
 I/O制御手段28は、PLC11やI/Oモジュール13等の外部装置との間で、制御データやメッセージデータ等の送受信を制御する。また、I/O制御手段28は、取得した各データをアプリケーション管理手段24やシステム管理手段25に出力する。 The I / O control means 28 controls transmission / reception of control data, message data, and the like to / from external devices such as the PLC 11 and the I / O module 13. Further, the I / O control unit 28 outputs the acquired data to the application management unit 24 and the system management unit 25.
 通知手段29は、例えばLED等の発光部やスピーカ等の音声出力部等を有し、外部への通知が必要な場合に、アプリケーション管理手段24からの指示により、外部への通知を行う。なお、通知手段29は、PLC11の内部に設けられていてもよく、外部に設けられていてもよい。 The notifying unit 29 has a light emitting unit such as an LED and a sound output unit such as a speaker, for example, and performs notification to the outside in response to an instruction from the application management unit 24 when notification to the outside is necessary. The notification means 29 may be provided inside the PLC 11 or may be provided outside.
 <PLC11におけるハードウェア構成例>
 次に、本実施形態におけるPLC11のハードウェア構成例について、図を用いて説明する。図3は、本実施形態におけるPLCのハードウェア構成の一例を示す図である。図3に示すPLC11のハードウェア構成は、CPU31と、ドライバ/レシーバ(ネットワーク接続装置)32と、バスコントローラ33と、フラッシュ(FLASH)メモリ34と、プログラムメモリ35と、データメモリ36と、RTC37と、スイッチ38と、LED39と、スピーカ40と、電池41と、電源42と、リセット回路43とを有する。なお、CPU31、ドライバ/レシーバ32、バスコントローラ33、フラッシュメモリ34、プログラムメモリ35、データメモリ36、RTC37、スイッチ38、LED39、及びスピーカ40は、システムバスB等により接続されている。
<Hardware configuration example in PLC 11>
Next, a hardware configuration example of the PLC 11 in the present embodiment will be described with reference to the drawings. FIG. 3 is a diagram illustrating an example of a hardware configuration of the PLC according to the present embodiment. The hardware configuration of the PLC 11 shown in FIG. 3 includes a CPU 31, a driver / receiver (network connection device) 32, a bus controller 33, a flash (FLASH) memory 34, a program memory 35, a data memory 36, and an RTC 37. , Switch 38, LED 39, speaker 40, battery 41, power source 42, and reset circuit 43. The CPU 31, driver / receiver 32, bus controller 33, flash memory 34, program memory 35, data memory 36, RTC 37, switch 38, LED 39, and speaker 40 are connected by a system bus B or the like.
 CPU31は、PLC11全体の制御を行う。具体的には、CPU31は、予め設定された支援ツール等に対応するシステムプログラム及びユーザプログラム等を実行する。なお、プログラムの実行は、例えば上述したリング状のネットワーク15を周回するデータの交換周期に同期して実行される。その一例を説明するが、PLC11-1は、例えば1ms毎にデータフレームをネットワーク15に送出し周回させている。I/Oモジュール13は、周回しているデータフレームを受信すると、自I/O情報をデータフレームに付加した上で再びネットワーク15にデータフレームを送信している。このようにして本発明のプログラマブルコントローラを接続するネットワークは、データフレームをバケツリレーのように伝達している。PLC11-1は、ネットワーク15を一巡したデータフレームを受信してI/Oモジュール13からI/O情報を取得し、自身に搭載されたプログラム(アプリケーションプログラム)にI/O情報を与えて制御の演算を実行している。 CPU 31 controls the entire PLC 11. Specifically, the CPU 31 executes a system program and a user program corresponding to a preset support tool and the like. Note that the program is executed in synchronization with, for example, the exchange period of data circulating around the ring-shaped network 15 described above. As an example, the PLC 11-1 transmits a data frame to the network 15 every 1 ms, for example, and circulates it. When receiving the circulating data frame, the I / O module 13 adds its own I / O information to the data frame and transmits the data frame to the network 15 again. In this way, the network connecting the programmable controllers of the present invention transmits data frames like a bucket relay. The PLC 11-1 receives a data frame that has made a round of the network 15, acquires I / O information from the I / O module 13, and gives the I / O information to a program (application program) installed in the PLC 11-1 for control. An operation is being performed.
 また、本実施形態では、上述したシステムプログラム及びユーザプログラムを電源断時も保存しておくために、例えば不揮発の書換え可能メモリであるフラッシュメモリ34に等に記憶しておくことができる。 In the present embodiment, the system program and the user program described above can be stored in the flash memory 34, which is a non-volatile rewritable memory, in order to save the system program and the user program even when the power is turned off.
 また、CPU31には、ドライバ/レシーバ32が接続されている。ドライバ/レシーバ32は、支援ツールを有する利用者端末12から得られる利用者の指示を伝えるための機器である。なお、ドライバ/レシーバ32は、例えばシリアルバスやネットワーク、イーサネット(登録商標)等を介して利用者端末12が有する支援ツール等を取得する。また、ドライバ/レシーバ32は、例えばUSBやSDカード等の記録媒体を介して、上述した記録媒体に記録された支援ツール等を取得することができる。この場合、ドライバ/レシーバ32は、取得した支援ツール等をCPU31に出力する。 Further, a driver / receiver 32 is connected to the CPU 31. The driver / receiver 32 is a device for transmitting a user instruction obtained from the user terminal 12 having a support tool. The driver / receiver 32 acquires a support tool or the like that the user terminal 12 has via, for example, a serial bus, a network, Ethernet (registered trademark), or the like. Further, the driver / receiver 32 can obtain the support tool recorded on the above-described recording medium via a recording medium such as a USB or an SD card. In this case, the driver / receiver 32 outputs the acquired support tool or the like to the CPU 31.
 バスコントローラ33は、PLC11の制御対象であるI/Oモジュール13へのデータ交換を行う。具体的には、バスコントローラ33は、評価対象機器である所定のI/Oモジュール13に対して処理の指示を行い、その処理結果から、処理速度や処理精度等の結果を取得する。なお、バスコントローラ33は、例えばネットワークLSI(Large Scale Integration)等を用いることができるがこれに限定されるものではない。 The bus controller 33 exchanges data with the I / O module 13 that is the control target of the PLC 11. Specifically, the bus controller 33 issues a processing instruction to a predetermined I / O module 13 that is an evaluation target device, and acquires results such as processing speed and processing accuracy from the processing results. For example, a network LSI (Large Scale Integration) can be used as the bus controller 33, but the present invention is not limited to this.
 フラッシュメモリ34は、CPU31による制御に基づいてシステムプログラム及びユーザプログラム(例えば、PLC11の提供プログラム等)を記憶する。なお、フラッシュメモリ34は、SRAM(Static Random Access Memory)に比べて読み出し/書き込み速度が低速である。そのため、PLC11は、フラッシュメモリ34に格納されたユーザプログラム(及びシステムプログラム等)を実行する場合には、速度の速いプログラムメモリ35に展開して実行する。また、本実施形態では、ユーザプログラム及びシステムプログラムが読み出し/書き込みするメモリとしてデータメモリ36を有する。つまり、プログラムメモリ35及びデータメモリ36は、共にSRAM等からなる。 The flash memory 34 stores a system program and a user program (for example, a program provided by the PLC 11) based on control by the CPU 31. Note that the flash memory 34 has a lower read / write speed than SRAM (Static Random Access Memory). Therefore, when executing the user program (and system program etc.) stored in the flash memory 34, the PLC 11 develops and executes it in the fast program memory 35. In the present embodiment, the data memory 36 is provided as a memory to be read / written by the user program and the system program. That is, both the program memory 35 and the data memory 36 are composed of SRAM or the like.
 ここで、プログラムメモリ35、及びデータメモリ36は、別々のメモリとして表現されているが物理的に一つのメモリでもよく、またより高速なアプリケーション実行を行うためプログラムメモリを、例えばSDRAM(Synchronous Dynamic Random Access Memory)等の高速なデバイスを用いて実現してもよい。なお、メモリは、例えばデータの消去・書き込みを自由に行うことができ、電源を切っても内容が消えない半導体メモリ等を用いることができるが、これに限定されるものではない。 Here, although the program memory 35 and the data memory 36 are expressed as separate memories, they may be physically one memory, and a program memory for executing a higher-speed application, such as an SDRAM (Synchronous Dynamic Random), for example. You may implement | achieve using high-speed devices, such as Access Memory. As the memory, for example, a semiconductor memory or the like that can freely erase and write data and whose contents are not lost even when the power is turned off can be used. However, the present invention is not limited to this.
 また、本実施形態では、コントローラであるPLC11のユーザプログラム実行や異常発生時の記録のため、上述したようにカレンダIC27が実装されている。このカレンダIC27は、RTC37により日時等の正確なデータを取得することができる。 Further, in the present embodiment, the calendar IC 27 is mounted as described above in order to execute a user program of the PLC 11 as a controller and to record when an abnormality occurs. The calendar IC 27 can acquire accurate data such as date and time by the RTC 37.
 また、本実施形態では、スイッチ38等の操作装置を有し、利用者がPLC11に対して直接電源のON/OFF、再起動等の操作を行うことができる。また、本実施形態では、上述したようにLED39やスピーカ40等の利用者への通知手段29を有する。LED39は、光により利用者に所定の使用時間が経過したことや、PLC11が所定の使用時間を超えたために使用できない旨を通知する。また、スピーカ40は音により利用者に所定の使用時間が経過したことや、PLC11が所定の使用時間を超えたために使用できない旨等を通知する。 Further, in the present embodiment, an operation device such as the switch 38 is provided, and the user can directly perform operations such as turning on / off the power supply and restarting the PLC 11. Further, in the present embodiment, as described above, the notification unit 29 for notifying the user such as the LED 39 and the speaker 40 is provided. The LED 39 notifies the user that the predetermined usage time has passed and that the PLC 11 cannot be used because the PLC 11 has exceeded the predetermined usage time. In addition, the speaker 40 notifies the user by sound that the predetermined usage time has elapsed and that the PLC 11 cannot be used because it has exceeded the predetermined usage time.
 ここで、上述したデータメモリ36及びRTC37は、それぞれ電池41-1,41-2等を用いてバックアップされていることもある。なお、電池41-1,41-2は、同一の電池であってもよく別々の電池であってもよい。なお、通常は、電源42からの電源供給によりPLC11を稼動させる。また、本実施形態では、リセット回路43により、PLC11の使用時間等をリセットさせることができる。これにより、PLC11の購入時に、所定の使用時間を超えてもそのまま使用させることができる。 Here, the data memory 36 and the RTC 37 described above may be backed up using batteries 41-1 and 41-2, respectively. The batteries 41-1 and 41-2 may be the same battery or separate batteries. Normally, the PLC 11 is operated by supplying power from the power source 42. In the present embodiment, the use time of the PLC 11 can be reset by the reset circuit 43. Thereby, when purchasing PLC11, even if it exceeds predetermined use time, it can be used as it is.
 <利用者端末12における機能構成例>
 次に、上述した利用者端末12における機能構成例について図を用いて説明する。図4は、利用者端末の機能構成の一例を示す図である。図4に示す利用者端末12は、入力手段51と、出力手段52と、記憶手段53と、PLC(コントローラ)実行手段54と、通知手段55と、購入手段56よ、画面生成手段57と、送受信手段58と、制御手段59とを有する。
<Example of functional configuration in user terminal 12>
Next, a functional configuration example of the above-described user terminal 12 will be described with reference to the drawings. FIG. 4 is a diagram illustrating an example of a functional configuration of the user terminal. The user terminal 12 shown in FIG. 4 includes an input unit 51, an output unit 52, a storage unit 53, a PLC (controller) execution unit 54, a notification unit 55, a purchase unit 56, a screen generation unit 57, It has a transmission / reception means 58 and a control means 59.
 入力手段51は、利用者等からの各PLC11への所定のプログラムの実行指示や、通知指示、購入指示、画面生成指示、送受信指示等の各種指示の開始/終了等の入力を受け付ける。なお、入力手段51は、例えばキーボードやマウス等のポインティングデバイスからなる。更に、入力手段51は、音声等を入力する音声入力機能があってもよい。 The input means 51 accepts input from a user or the like to start or end various instructions such as a predetermined program execution instruction to each PLC 11, a notification instruction, a purchase instruction, a screen generation instruction, and a transmission / reception instruction. The input means 51 is composed of a pointing device such as a keyboard and a mouse. Further, the input means 51 may have a voice input function for inputting voice or the like.
 出力手段52は、入力手段51により入力された内容や、入力内容に基づいて実行された結果や経過等を出力する。なお、出力手段52は、例えばディスプレイやスピーカ等からなる。 The output means 52 outputs the contents input by the input means 51, the results and progress made based on the input contents. Note that the output unit 52 includes, for example, a display or a speaker.
 記憶手段53は、本実施形態において必要となる各種情報(例えば、PLC11に所定の実行をさせる支援ツールやシステムプログラム、ユーザプログラム、PLC11の識別情報、鍵情報、各種設定情報等)を記憶する。また、記憶手段53は、必要に応じて記憶されている各種データを読み出すことができる。 The storage unit 53 stores various pieces of information (for example, a support tool or system program that causes the PLC 11 to perform predetermined execution, a user program, identification information of the PLC 11, key information, various setting information, and the like) necessary in the present embodiment. Further, the storage means 53 can read out various data stored as necessary.
 PLC実行手段54は、記憶手段53等に記憶された支援ツール等に基づいて、PLC11に対して所定の処理(プログラム等)を実行させる。このとき、PLC実行手段54は、PLC11-1~11-3毎に対して個別に所定の処理を実行させてもよく、複数のPLCに対して所定の処理を実行させてもよい。なお、PLC実行手段54は、必要に応じて最新の支援ツールを、通信ネットワーク17を介して提供者端末16から取得することができる。 The PLC execution unit 54 causes the PLC 11 to execute a predetermined process (program or the like) based on a support tool or the like stored in the storage unit 53 or the like. At this time, the PLC execution means 54 may individually execute predetermined processing for each of the PLCs 11-1 to 11-3, or may execute predetermined processing for a plurality of PLCs. The PLC execution unit 54 can obtain the latest support tool from the provider terminal 16 via the communication network 17 as necessary.
 通知手段55は、PLC11から予め設定された評価期間が満了した等の場合に、出力手段52により利用者に対して所定の通知(例えば、アラーム出力等)を行う。なお、通知手段55による通知内容は、PLC11から得られる通知内容に基づいて、画面生成手段57により所定の画面を生成して表示させてもよく、光や音声等により通知してもよい。 The notification means 55 performs a predetermined notification (for example, alarm output) to the user by the output means 52 when the evaluation period preset from the PLC 11 has expired. Note that the notification contents by the notification means 55 may be generated and displayed by the screen generation means 57 based on the notification contents obtained from the PLC 11, or may be notified by light or voice.
 購入手段56は、利用者が評価用のPLC11を実際に購入する場合に、提供者端末16と通信ネットワーク17を介して接続して所定の購入手続を行う。また、購入手段56は、所定の購入手続として買い取りによる購入だけでなく、PLC11の所定期間のレンタル使用の手続を行うことができる。 The purchase means 56 connects to the provider terminal 16 via the communication network 17 and performs a predetermined purchase procedure when the user actually purchases the evaluation PLC 11. Further, the purchase means 56 can perform not only purchase by purchase as a predetermined purchase procedure, but also a procedure for rental use of the PLC 11 for a predetermined period.
 なお、所定の購入手続とは、例えば提供者端末16に対して、PLC11を購入するか、レンタルするか、購入しないかの何れかを示す通知情報を送信する。また、本実施形態では、PLC11の識別情報(例えば、MACアドレス)も提供者端末16に送信する。また、本実施形態では、例えば購入時又はレンタル時において、PLC11の評価期間経過後も継続して使用できるようにするための所定の情報(例えば、コマンド情報等)を取得する際に暗号化を行うため、予め設定された自分の鍵情報を提供者端末16に送信してもよい。 The predetermined purchase procedure is, for example, transmitting notification information indicating whether the PLC 11 is purchased, rented, or not purchased to the provider terminal 16. In this embodiment, the identification information (for example, MAC address) of the PLC 11 is also transmitted to the provider terminal 16. Further, in the present embodiment, for example, at the time of purchase or rental, encryption is performed when acquiring predetermined information (for example, command information, etc.) that can be used continuously after the evaluation period of the PLC 11 has elapsed. For this purpose, preset key information may be transmitted to the provider terminal 16.
 また、購入手段56は、通信ネットワーク17を介して提供者端末16から取得した情報が暗号化されていた場合に、予め設定された鍵情報対応する復号化処理を行う。また、購入手段56は、復号化処理により得られる提供者端末16から得られる情報に基づいて、PLC実行手段54により所定のPLC11に対して正規使用又はレンタル使用の動作を行う処理を実行させる。 Further, the purchase means 56 performs a decryption process corresponding to preset key information when information acquired from the provider terminal 16 via the communication network 17 is encrypted. In addition, the purchasing unit 56 causes the PLC executing unit 54 to execute a process of performing regular use or rental use on the predetermined PLC 11 based on information obtained from the provider terminal 16 obtained by the decryption process.
 画面生成手段57は、利用者が通信ケーブル14等に接続された各PLC11に対してどのような処理をさせるかといった支援ツールの設定画面を生成する。また、画面生成手段57は、PLC11からの評価期間満了を通知する通知情報を表示するための画面を生成する。また、画面生成手段57は、評価期間があとどのくらい残っているかといった画面等を生成することもできる。 The screen generation means 57 generates a setting screen for the support tool such as what kind of processing the user performs on each PLC 11 connected to the communication cable 14 or the like. Further, the screen generation unit 57 generates a screen for displaying notification information for notifying the expiration of the evaluation period from the PLC 11. The screen generation means 57 can also generate a screen or the like indicating how much evaluation period remains.
 送受信手段58は、通信ケーブル14や通信ネットワーク17を用いて接続可能な外部装置から各種情報(例えば、支援ツール(各種プログラム等)やコマンド情報、各種設定情報、所定の処理の実行結果等)を取得するためのインタフェースである。また、送受信手段58は、例えば通知手段55により得られる通知情報やPLC11の実行結果等の各種情報を外部装置に送信することもできる。 The transmission / reception means 58 receives various information (for example, support tools (various programs, etc.), command information, various setting information, execution results of predetermined processing, etc.) from an external device that can be connected using the communication cable 14 or the communication network 17. It is an interface for obtaining. Further, the transmission / reception means 58 can also transmit various information such as notification information obtained by the notification means 55 and the execution result of the PLC 11 to the external device.
 制御手段59は、利用者端末12の各構成部全体の制御を行う。具体的には、制御手段59は、例えば利用者等による入力手段51からの指示等に基づいて、PLC11に対する所定処理の実行や、PLC11の購入処理等の各処理における制御等を行う。 The control unit 59 controls the entire components of the user terminal 12. Specifically, the control unit 59 performs control in each process such as execution of a predetermined process for the PLC 11 and purchase process of the PLC 11 based on an instruction from the input unit 51 by a user or the like.
 <提供者端末16の機能構成例>
 次に、上述した提供者端末16における機能構成例について図を用いて説明する。図5は、提供者端末の機能構成の一例を示す図である。図5に示す提供者端末16利用者端末12は、入力手段61と、出力手段62と、記憶手段63と、PLC(コントローラ)管理手段64と、鍵取得手段65と、コマンド生成手段66と、暗号化手段67と、送受信手段68と、制御手段69とを有する。
<Example of functional configuration of provider terminal 16>
Next, a functional configuration example in the provider terminal 16 described above will be described with reference to the drawings. FIG. 5 is a diagram illustrating an example of a functional configuration of the provider terminal. The provider terminal 16 user terminal 12 shown in FIG. 5 includes an input means 61, an output means 62, a storage means 63, a PLC (controller) management means 64, a key acquisition means 65, a command generation means 66, An encryption unit 67, a transmission / reception unit 68, and a control unit 69 are included.
 入力手段61は、提供者等からのPLC管理指示、鍵取得指示、コマンド生成指示、暗号化指示、送受信指示等の各種指示の開始/終了等の入力を受け付ける。なお、入力手段61は、例えばキーボードやマウス等のポインティングデバイスからなる。更に、入力手段61は、音声等を入力する音声入力機能があってもよい。 The input means 61 accepts inputs such as start / end of various instructions such as a PLC management instruction, a key acquisition instruction, a command generation instruction, an encryption instruction, and a transmission / reception instruction from a provider. The input means 61 is composed of a pointing device such as a keyboard and a mouse. Further, the input means 61 may have a voice input function for inputting voice or the like.
 出力手段62は、入力手段61により入力された内容や、入力内容に基づいて実行された結果や経過等を出力する。なお、出力手段62は、例えばディスプレイやスピーカ等からなる。 The output means 62 outputs the contents input by the input means 61, the results executed based on the input contents, progress, and the like. Note that the output unit 62 includes, for example, a display or a speaker.
 記憶手段63は、本実施形態において必要となる各種情報(例えば、利用者端末12に送信し、PLC11に所定の実行をさせる支援ツールやシステムプログラム、ユーザプログラム、各種設定情報等)を記憶する。また、記憶手段53は、必要に応じて記憶されている各種データを読み出すことができる。 The storage unit 63 stores various information necessary in the present embodiment (for example, a support tool, a system program, a user program, various setting information, and the like that are transmitted to the user terminal 12 and cause the PLC 11 to perform predetermined execution). Further, the storage means 53 can read out various data stored as necessary.
 PLC管理手段64は、利用者端末12毎に、評価版として提供しているPLC11の識別情報や台数、購入履歴等を管理する。なお、購入履歴としては、例えば購入した場合や現在レンタル中である場合を分けて管理できる履歴情報を含むが、これに限定されるものではない。 The PLC management means 64 manages the identification information, the number of units, the purchase history, and the like of the PLC 11 provided as an evaluation version for each user terminal 12. The purchase history includes, for example, history information that can be separately managed when purchased or rented, but is not limited thereto.
 鍵取得手段65は、利用者端末12から少なくとも1台のPLC11の購入時やレンタル使用時に、現在使用しているPLC11を評価期間満了後も継続して使用するためのコマンド情報を暗号化するための鍵情報を取得する。なお、鍵情報は、PLC12の購入時やレンタル使用時に利用者端末12から送信されるが、送信されなかった場合に、鍵情報取得手段65から利用者端末12に対して鍵情報を要求することもできる。 The key acquisition means 65 encrypts command information for continuously using the PLC 11 currently used after the evaluation period expires when purchasing or renting at least one PLC 11 from the user terminal 12. Get key information of. The key information is transmitted from the user terminal 12 when the PLC 12 is purchased or used for rental. If the key information is not transmitted, the key information acquisition unit 65 requests the user terminal 12 for the key information. You can also.
 コマンド生成手段66は、利用者端末12から得られる購入(正規版)要求又はレンタル要求に基づいて対応するコマンドを生成する。なお、コマンドとは、例えば、PLC11に対して正規版として評価期間満了後も継続して無期限で使用可能にするコマンドや、評価期間満了後、レンタル版として更に所定期間だけ継続して使用可能にするコマンドを含む。 The command generation means 66 generates a corresponding command based on a purchase (regular version) request or a rental request obtained from the user terminal 12. The command is, for example, a command that allows the PLC 11 to be used indefinitely as a regular version after the evaluation period expires, or can be used as a rental version for a predetermined period after the evaluation period expires. Contains commands to turn on.
 なお、コマンド生成手段66は、生成するコマンドにPLC11の識別情報を含める。識別情報としては、MACアドレス等を用いることができるが、これに限定されるものではない。この識別情報は、例えば利用者端末12から送信される。 The command generation means 66 includes the identification information of the PLC 11 in the generated command. The identification information can be a MAC address or the like, but is not limited to this. This identification information is transmitted from the user terminal 12, for example.
 暗号化手段67は、コマンド生成手段66で生成されたコマンドの送信時に、上述した鍵取得手段65により取得された鍵情報に基づいて暗号化を行う。コマンドを暗号化することで、送信したデータが盗難されても他のPLC11に流用されるのを防止することができる。なお、本実施形態では、例えば利用者端末12と、提供者端末16とが専用回線で通信される場合には、コマンドを暗号化せずに利用者端末12に送信してもよい。したがって、そのような場合には、鍵取得手段65や暗号化手段67の機能は必要ない。 The encryption unit 67 performs encryption based on the key information acquired by the key acquisition unit 65 described above when the command generated by the command generation unit 66 is transmitted. By encrypting the command, it is possible to prevent the transmitted data from being diverted to another PLC 11 even if the transmitted data is stolen. In the present embodiment, for example, when the user terminal 12 and the provider terminal 16 communicate with each other via a dedicated line, the command may be transmitted to the user terminal 12 without being encrypted. Therefore, in such a case, the functions of the key acquisition unit 65 and the encryption unit 67 are not necessary.
 送受信手段68は、通信ネットワーク17を介して接続可能な1又は複数の利用者端末12から各種情報(例えば、購入要求等)を取得するためのインタフェースである。また、送受信手段68は、例えばコマンド生成手段66により生成されたコマンドを、通信ネットワーク17を介して利用者端末12に送信する。また、送受信手段68は、通信ネットワーク17に接続された外部装置等から必要な各種情報を取得したり、送信したりすることができる。 The transmission / reception means 68 is an interface for acquiring various types of information (for example, purchase request etc.) from one or a plurality of user terminals 12 connectable via the communication network 17. Further, the transmission / reception unit 68 transmits, for example, a command generated by the command generation unit 66 to the user terminal 12 via the communication network 17. The transmission / reception means 68 can acquire and transmit various necessary information from an external device connected to the communication network 17.
 制御手段69は、提供者端末16の各構成部全体の制御を行う。具体的には、制御手段69は、例えば提供者等による入力手段61からの指示等に基づいて、PLC11の管理や利用者端末12に対するコマンド発行等の各処理における制御等を行う。 The control means 69 controls the entire components of the provider terminal 16. Specifically, the control unit 69 performs control in each process such as management of the PLC 11 and issuance of commands to the user terminal 12 based on, for example, an instruction from the input unit 61 by a provider or the like.
 <利用者端末12、提供者端末16におけるハードウェア構成例>
 次に、利用者端末12、提供者端末16におけるハードウェア構成例について図を用いて説明する。図6は、本実施形態における利用者端末及び提供者端末のハードウェア構成の一例を示す図である。
<Hardware Configuration Example in User Terminal 12 and Provider Terminal 16>
Next, a hardware configuration example in the user terminal 12 and the provider terminal 16 will be described with reference to the drawings. FIG. 6 is a diagram illustrating an example of a hardware configuration of the user terminal and the provider terminal in the present embodiment.
 図6における利用者端末12、提供者端末16には、入力装置71と、出力装置72と、ドライブ装置73と、補助記憶装置74と、メモリ装置75と、各種制御を行うCPU76と、ネットワーク接続装置77とを有するよう構成されており、これらはシステムバスBで相互に接続されている。 The user terminal 12 and the provider terminal 16 in FIG. 6 include an input device 71, an output device 72, a drive device 73, an auxiliary storage device 74, a memory device 75, a CPU 76 for performing various controls, and a network connection. Device 77 and these are connected to each other by a system bus B.
 入力装置71は、ユーザ等が操作するキーボード及びマウス等のポインティングデバイスを有しており、ユーザ等からのプログラムの実行等、各種操作信号を入力する。 The input device 71 has a pointing device such as a keyboard and a mouse operated by a user or the like, and inputs various operation signals such as execution of a program from the user or the like.
 出力装置72は、本発明における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、CPU76が有する制御プログラムによりプログラムの実行経過や結果等を表示することができる。 The output device 72 has a display for displaying various windows, data, and the like necessary for operating the computer main body for performing processing in the present invention, and displays the program execution progress and results by the control program of the CPU 76. can do.
 ここで、本発明においてコンピュータ本体にインストールされる実行プログラムは、例えばUSBメモリやCD-ROM等の可搬型の記録媒体78等により提供される。プログラムを記録した記録媒体78は、ドライブ装置73にセット可能であり、記録媒体78に含まれる実行プログラムが、記録媒体78からドライブ装置73を介して補助記憶装置74にインストールされる。 Here, the execution program installed in the computer main body in the present invention is provided by a portable recording medium 78 such as a USB memory or a CD-ROM, for example. The recording medium 78 on which the program is recorded can be set in the drive device 73, and the execution program included in the recording medium 78 is installed from the recording medium 78 to the auxiliary storage device 74 via the drive device 73.
 補助記憶装置74は、ハードディスク等のストレージ手段であり、本発明における実行プログラムやコンピュータに設けられた制御プログラム等を記憶し、必要に応じて入出力を行うことができる。 The auxiliary storage device 74 is a storage means such as a hard disk, and stores an execution program according to the present invention, a control program provided in a computer, and the like, and can perform input / output as necessary.
 メモリ装置75は、CPU76により補助記憶装置74から読み出された実行プログラム等を格納する。なお、メモリ装置75は、ROM(Read Only Memory)やRAM(Random Access Memory)等からなる。 The memory device 75 stores the execution program read from the auxiliary storage device 74 by the CPU 76. The memory device 75 includes a ROM (Read Only Memory), a RAM (Random Access Memory), and the like.
 CPU76は、OS(Operating System)等の制御プログラム、及びメモリ装置75に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して、本実施形態における各処理を実現することができる。なお、プログラムの実行中に必要な各種情報等は、補助記憶装置74から取得することができ、また実行結果等を格納することもできる。 The CPU 76 controls processing of the entire computer such as various operations and data input / output with each hardware component based on a control program such as an OS (Operating System) and an execution program stored in the memory device 75. Thus, each process in the present embodiment can be realized. Various information necessary during the execution of the program can be acquired from the auxiliary storage device 74, and the execution result and the like can also be stored.
 ネットワーク接続装置77は、通信ネットワーク等と接続することにより、実行プログラムを通信ネットワークに接続されている他の端末等から取得したり、プログラムを実行することで得られた実行結果又は本発明における実行プログラム自体を他の端末等に提供することができる。 The network connection device 77 obtains an execution program from another terminal connected to the communication network by connecting to a communication network or the like, or an execution result obtained by executing the program or an execution in the present invention The program itself can be provided to other terminals.
 <I/Oモジュール13とのデータ交換とユーザアプリケーションの実行手順の関係>
 次に、I/Oモジュール13とのデータ交換とユーザアプリケーション(プログラム)の実行手順の関係について、図を用いて説明する。図7は、PLCにおけるプログラムの実行周期例を説明するための図である。
<Relationship between data exchange with I / O module 13 and execution procedure of user application>
Next, the relationship between the data exchange with the I / O module 13 and the execution procedure of the user application (program) will be described with reference to the drawings. FIG. 7 is a diagram for explaining an example of a program execution cycle in the PLC.
 本実施形態において、図7の例に示すユーザアプリケーションは、例えばI/Oモジュール13からのデータを取り込み、演算を実行した後、I/Oモジュール13に演算結果のデータを送ることで一連の演算処理を完了する。図7の説明において、上述した一連の処理を行う期間を「スキャン」と称する。 In the present embodiment, the user application shown in the example of FIG. 7 takes a series of computations by, for example, fetching data from the I / O module 13 and executing computations, and then sending computation result data to the I / O module 13. Complete the process. In the description of FIG. 7, a period during which the above-described series of processing is performed is referred to as “scan”.
 図7に示すように、スキャンとスキャンの間の期間81は、コントローラの管理(例えば、異常監視やシステム制御処理)を行っている。以下の説明において、この期間81は、「スキャンエンド処理期間」という。 As shown in FIG. 7, in a period 81 between scans, controller management (for example, abnormality monitoring and system control processing) is performed. In the following description, this period 81 is referred to as a “scan end process period”.
 コントローラであるPLC11は、スキャン開始までに入力データをアプリケーションに提供するため、まず入力データ82を読み込み、読み込んだ入力データ82をアプリケーションの入力データ領域にコピーする(図7に示す入力データ82から入力データ83への処理)。 In order to provide input data to the application before the start of scanning, the PLC 11 as a controller first reads the input data 82 and copies the read input data 82 to the input data area of the application (input from the input data 82 shown in FIG. 7). Processing to data 83).
 また、図7の例では、前回の出力データ84を書き出す(図7に示す出力データ84から出力データ85への処理)。ここで、入力データ読み込みから次の入力データ読み込みまで、或いは、アプリケーション実行の入力から次アプリケーション実行の入力までの期間86は、利用者によって定義される数値でありスキャン周期と呼ばれる。コントローラであるPLC11は、このスキャン周期に基づいて、所定の演算処理や入出力データ処理(図7に示すユーザプログラム処理期間87)を行う。また、バス処理では、演算処理としてメッセージ伝送88等の処理を行う。 In the example of FIG. 7, the previous output data 84 is written (processing from the output data 84 to the output data 85 shown in FIG. 7). Here, a period 86 from the input data reading to the next input data reading or from the application execution input to the next application execution input is a numerical value defined by the user and is called a scan cycle. The PLC 11, which is a controller, performs predetermined arithmetic processing and input / output data processing (user program processing period 87 shown in FIG. 7) based on this scan cycle. In bus processing, processing such as message transmission 88 is performed as arithmetic processing.
 なお、上述した一連の処理は、図7に示すように一定サイクルで実行され、このサイクルは、例えば上述したリング状のネットワーク15を周回するデータの交換周期に同期して実行される。 Note that the series of processes described above are executed in a constant cycle as shown in FIG. 7, and this cycle is executed in synchronization with, for example, the exchange period of data circulating around the ring network 15 described above.
 ここで、本実施形態では、コントローラであるPLC11の評価用としての提供にあたり、評価期間の判定をアプリケーション実行の積算時間で行うことにする。なお、評価期間の判定には、例えば上述したカレンダIC27を用いた日付による判定も可能である。しかしながら、例えば利用者が実機評価を行わず(コントローラの電源を入れず)にいた場合に評価期間が短くなることや、評価機を貸し出す毎に評価完了日付を設定する必要があること、更にはバッテリを装着せずに運用する可能性があること等から好ましい方法とはいえない。 Here, in the present embodiment, in providing the PLC 11 that is the controller for evaluation, the evaluation period is determined based on the integrated execution time of the application. Note that the evaluation period can be determined by date using the calendar IC 27 described above, for example. However, for example, if the user does not perform actual machine evaluation (the controller is not turned on), the evaluation period is shortened, and it is necessary to set an evaluation completion date every time an evaluation machine is lent. This is not a preferable method because it may be operated without a battery.
 そこで、本実施形態では、評価用コントローラとして使用するPLC11に対し、スキャンエンド処理期間81においてコントローラ管理処理の中でアプリケーションの実行中を判断する。具体的には、本実施形態は、例えばCPU31の制御により、プログラムの実行周期を積算し、積算により得られた積算値が予め設定された閾値を超過した場合にプログラムの実行を阻止することで、PLC11の使用を停止する。なお、積算値等は、上述したフラッシュメモリ34等に記憶して管理される。 Therefore, in the present embodiment, it is determined whether the application is being executed in the controller management process in the scan end processing period 81 for the PLC 11 used as the evaluation controller. Specifically, the present embodiment integrates program execution cycles under the control of the CPU 31, for example, and prevents execution of the program when the integrated value obtained by the integration exceeds a preset threshold value. , Stop using the PLC 11. The integrated value and the like are stored and managed in the above-described flash memory 34 and the like.
 <PLC11における評価期間の判定及び実行制御例>
 ここで、上述したPLC11における評価期間の判定及び実行制御例について具体的に説明する。
<Example of evaluation period determination and execution control in PLC 11>
Here, the evaluation period determination and execution control example in the PLC 11 described above will be specifically described.
 <第1実施例>
 図8は、評価期間の判定及び実行制御の第1実施例を説明するためのフローチャートである。
<First embodiment>
FIG. 8 is a flowchart for explaining a first example of evaluation period determination and execution control.
 図8の例において、第1実施例では、まず上述したスキャン時間を積算時間に加算する(S01)。このように、上述したスキャン時間を基準に積算することで、例えば上述したリング状のネットワーク15を周回するデータの交換周期に同期して実行されるプログラムの実行周期を積算することができる。 In the example of FIG. 8, in the first embodiment, the above-described scan time is first added to the accumulated time (S01). As described above, by accumulating on the basis of the scan time described above, for example, the execution cycle of the program executed in synchronization with the exchange cycle of the data circulating around the ring-shaped network 15 can be accumulated.
 また、第1実施例では、S01により積算された積算時間(積算値)が予め設定された閾値以上であるか否かを判断する(S02)。なお、閾値としては、例えば5~10時間、1~2週間、1~3ヶ月等の時間を設定することができ、この設定は、例えばPLC11を提供する提供者側が設定することができる。また、第1実施例の場合には、この閾値が上述した評価期間となる。ここで、第1実施例では、積算時間が閾値以上である場合(S02において、YES)、予め設定された通知手段により利用者等に通知を行い(S03)、その後、プログラムの実行を阻止する(S04)。また、第1実施例では、S02の処理において、積算時間が閾値以上でない場合(S02において、NO)、S01に戻りプログラムの実行を行うことができる。なお、積算時間は、プログラムの実行周期に対応させて上述したフラッシュメモリ34等に記憶しておくことで管理することができる。 In the first embodiment, it is determined whether or not the integration time (integration value) integrated in S01 is equal to or greater than a preset threshold value (S02). As the threshold value, for example, a time such as 5 to 10 hours, 1 to 2 weeks, or 1 to 3 months can be set, and this setting can be set, for example, by the provider providing the PLC 11. In the case of the first embodiment, this threshold is the above-described evaluation period. Here, in the first embodiment, when the accumulated time is equal to or greater than the threshold value (YES in S02), the user is notified by a preset notification means (S03), and thereafter the execution of the program is prevented. (S04). In the first embodiment, if the accumulated time is not equal to or greater than the threshold in the process of S02 (NO in S02), the program can be executed by returning to S01. The accumulated time can be managed by storing it in the above-described flash memory 34 or the like in correspondence with the program execution cycle.
 これにより、評価期間の満了に対して適切なタイミングでPLC11を停止させることができる。なお、図8に示す処理は、例えば上述したアプリケーション管理手段24等により行われる。 Thereby, the PLC 11 can be stopped at an appropriate timing with respect to the expiration of the evaluation period. Note that the processing shown in FIG. 8 is performed by, for example, the application management unit 24 described above.
 通常、PLC11は、電源ON/OFF、リセット、或いは利用者端末12等から得られる支援ツールからのアプリケーション起動指示等によりアプリケーションを実行する。その場合に、第1実施例では、PLC11によるプログラムの実行時に、上述したフラッシュメモリ34上の積算時間をチェックし、評価期間に対応する閾値を超過している場合にアプリケーションの実行を行わないようにする。 Normally, the PLC 11 executes an application by turning on / off the power, resetting, or an application activation instruction from a support tool obtained from the user terminal 12 or the like. In this case, in the first embodiment, when the program is executed by the PLC 11, the accumulated time on the flash memory 34 described above is checked, and the application is not executed if the threshold corresponding to the evaluation period is exceeded. To.
 上述した第1実施例では、例えば1又は複数のPLC11と、1又は複数のI/Oモジュール13とがデータ交換バスを介して所定の周期でデータ交換を行い、PLC11がI/Oモジュール13を介して当該I/Oモジュールに接続された外部機器を制御するプログラマブルコントローラシステム18で適用することができる。この場合、PLC11は、上述したデータ交換の所定の周期に同期して実行されるプログラムの実行周期を積算し、積算により得られた積算値が予め設定された閾値を超過すると、プログラムの実行を阻止する。これにより、第1実施例では、利用者によるプログラマブルコントローラの不正使用を防止することができる。 In the first embodiment described above, for example, one or a plurality of PLCs 11 and one or a plurality of I / O modules 13 exchange data at a predetermined cycle via a data exchange bus, and the PLC 11 replaces the I / O module 13 with each other. The programmable controller system 18 that controls an external device connected to the I / O module can be applied. In this case, the PLC 11 integrates the execution period of the program executed in synchronization with the predetermined period of data exchange described above, and executes the program when the integrated value obtained by the integration exceeds a preset threshold value. Stop. Thereby, in 1st Example, the unauthorized use of the programmable controller by a user can be prevented.
 <第2実施例>
 次に、第2実施例について説明する。第2実施例では、プログラムの実行周期に基づき、複数回のプログラムの実行に対する時間(固定時間)を設定する。例えば、プログラムの実行周期が100msであれば、固定時間として1分を設定する。そして、第2実施例では、プログラムの実行周期を積算し、積算された積算時間(積算値)が固定時間を超過すると計数し、この計数値に基づきプログラムの累積実行時間を求める。また、第2実施例では、この累積実行時間が予め設定された評価期間を超過することによりプログラムの実行を阻止する。
<Second embodiment>
Next, a second embodiment will be described. In the second embodiment, a time (fixed time) for a plurality of program executions is set based on the program execution cycle. For example, if the program execution cycle is 100 ms, 1 minute is set as the fixed time. In the second embodiment, the execution period of the program is integrated, and when the integrated integration time (integrated value) exceeds a fixed time, the program is counted, and the cumulative execution time of the program is obtained based on this count value. In the second embodiment, the execution of the program is prevented when the accumulated execution time exceeds a preset evaluation period.
 なお、第2実施例では、例えば、上述した積算時間が固定時間を超過する毎に、メモリ等の記憶手段に予め設けられた所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって上述した累積実行時間を算出してもよい。なお、第2実施例では、例えばプログラムの実行が1分経過する毎に1つのフラグの書き込みが行われる。つまり、フラグのセットは、上述した積算時間が上述した固定時間を超過した回数を意味する。また、第2実施例では、データ領域にセットされたフラグ数によって得られる累積実行時間と、上述した評価期間に対応する閾値とに基づいて評価時間の判定を行い、実行制御を行う。 In the second embodiment, for example, every time the above-described integration time exceeds a fixed time, a flag is written in a predetermined data area provided in advance in storage means such as a memory, and the above-described number of flags is written. The accumulated execution time may be calculated. In the second embodiment, for example, one flag is written every time one minute of program execution. That is, the setting of the flag means the number of times that the accumulated time described above exceeds the fixed time described above. In the second embodiment, the evaluation time is determined based on the accumulated execution time obtained from the number of flags set in the data area and the threshold value corresponding to the evaluation period described above, and execution control is performed.
 ここで、図9は、評価期間の判定及び実行制御の第2実施例を説明するためのフローチャートである。また、図10は、図9に対応するフラグ書き込みの一例を示す図である。 Here, FIG. 9 is a flowchart for explaining a second embodiment of evaluation period determination and execution control. FIG. 10 is a diagram showing an example of flag writing corresponding to FIG.
 ここで、図10の例では、フラグを書込む不揮発メモリ領域としてフラッシュメモリ34を用いているが、これに限定されるものではない。図10に示すフラッシュメモリ34は、全領域の一部に評価中ビット91、閾値92、判定領域93の各情報を記憶する領域を含んでいる。評価中ビット91には、正規版、評価版、レンタル版等のモード情報をそれぞれ識別する識別フラグを含んでいる。なお、図10の例では、正規版を「0」、評価版を「1」、レンタル版を「2」として分類しているが、分類内容についてはこれに限定されるものではない。 Here, in the example of FIG. 10, the flash memory 34 is used as a non-volatile memory area for writing a flag, but the present invention is not limited to this. The flash memory 34 shown in FIG. 10 includes an area for storing each information of the bit under evaluation 91, the threshold 92, and the determination area 93 in a part of the entire area. The in-evaluation bit 91 includes an identification flag for identifying mode information such as a regular version, an evaluation version, and a rental version. In the example of FIG. 10, the regular version is classified as “0”, the evaluation version as “1”, and the rental version as “2”, but the classification contents are not limited to this.
 また、閾値92は、評価期間に対応する閾値が設定される。なお、閾値92は、PLC11の提供者側が設定することができるが、これに限定されるものではなく、例えば初期状態として所定の時間(例えば、10時間等)が設定されていてもよい。 Also, as the threshold 92, a threshold corresponding to the evaluation period is set. The threshold value 92 can be set by the provider of the PLC 11, but is not limited to this, and for example, a predetermined time (for example, 10 hours) may be set as an initial state.
 また、判定領域93は、上述したフラグの書き込み領域を示しており、閾値92の時間と上述した固定時間とに応じた領域が設定される。図10の例において、初期状態では、全ビットに「1」が設定され、閾値92で設定された単位時間毎に1ビットずつ「0」に書き込みが行われる。例えば、上述した固定時間を1分とした場合には、1分=1ビットであり、1ケ月=30日=720時間=43200分である。したがって、そのときに使用されるデータ量は、約5400byte(約6Kbyte弱)の情報の格納領域を設定する。 Further, the determination area 93 indicates the above-described flag writing area, and an area corresponding to the time of the threshold 92 and the above-described fixed time is set. In the example of FIG. 10, in the initial state, “1” is set to all bits, and writing is performed to “0” bit by bit for each unit time set by the threshold 92. For example, when the above-mentioned fixed time is 1 minute, 1 minute = 1 bit, and 1 month = 30 days = 720 hours = 43200 minutes. Therefore, the amount of data used at that time sets an information storage area of about 5400 bytes (less than about 6 Kbytes).
 なお、図9の例では、評価中ビット91の所定領域に、評価版である旨の情報が含まれているPLC11に対する処理を示しており、図9の処理を行う前には、PLC11が評価版であるか否かの判断が行われる。したがって、本実施形態では、最初に評価中ビット91の内容を確認し、PLC11が正規版である場合には、以下の処理は行わない。 In the example of FIG. 9, the process for the PLC 11 in which the information indicating that it is an evaluation version is included in the predetermined area of the bit under evaluation 91 is shown. Before the process of FIG. A determination is made as to whether it is a version. Therefore, in the present embodiment, the content of the bit under evaluation 91 is first confirmed, and when the PLC 11 is a regular version, the following processing is not performed.
 図9の例において、第2実施例は、まず上述したスキャン時間を積算時間に加算し(S11)、その後、積算時間が上述した固定時間(例えば、1分)以上であるか否かを判断する(S12)。第2実施例は、積算時間が固定時間以上である場合(S12において、YES)、判定領域93の所定のフラグの書き込み位置をインクリメント(+1)し(S13)、不揮発性メモリ(例えば、フラッシュメモリ34)へフラグの書き込みを行う(S14)。その後、第2実施例は、積算時間をクリアする(S15)。 In the example of FIG. 9, the second embodiment first adds the scan time described above to the accumulated time (S11), and then determines whether the accumulated time is equal to or greater than the fixed time (eg, 1 minute) described above. (S12). In the second embodiment, when the accumulated time is equal to or longer than the fixed time (YES in S12), the write position of a predetermined flag in the determination area 93 is incremented (+1) (S13), and a non-volatile memory (for example, a flash memory) The flag is written to (34) (S14). Thereafter, the second embodiment clears the accumulated time (S15).
 ここで、第2実施例は、S15の処理が終了後、又はS12の処理において、積算時間が固定時間以上でない場合(S12においてNO)、全フラグの書き込みが完了したか否かを判断する(S16)。なお、この処理は、言い換えれば、書き込まれたフラグの数により得られるプログラムの累積実行時間が、上述した閾値92以上か否かを判断することを意味する。 Here, the second embodiment determines whether or not writing of all the flags is completed after the process of S15 is completed or when the integration time is not longer than the fixed time in the process of S12 (NO in S12) ( S16). In other words, this processing means that it is determined whether or not the cumulative execution time of the program obtained based on the number of written flags is equal to or greater than the threshold 92 described above.
 第2実施例は、全フラグの書き込みが完了している場合(S16において、YES)、予め設定された通知手段により利用者等に通知を行い(S17)、その後、プログラムの実行を阻止する(S18)。また、第2実施例では、S16の処理において、全フラグの書き込みが完了していない場合(S16において、NO)、S11に戻りプログラムの実行を行うことができる。なお、積算時間は、プログラムの実行周期に対応させて、例えば上述したフラッシュメモリ34等に記憶しておくことで管理することができる。 In the second embodiment, when all the flags have been written (YES in S16), the user is notified by a preset notification means (S17), and thereafter the execution of the program is blocked (S17). S18). In the second embodiment, if all the flags have not been written in the process of S16 (NO in S16), the program can be executed by returning to S11. The accumulated time can be managed by storing it in the above-described flash memory 34 or the like, for example, corresponding to the execution cycle of the program.
 上述した処理により、PLC11における時間監視を適切に行うことができる。なお、図9に示す処理は、例えば上述したアプリケーション管理手段24等により行われる。 The time monitoring in the PLC 11 can be appropriately performed by the processing described above. Note that the processing shown in FIG. 9 is performed by, for example, the application management unit 24 described above.
 上述したように、第2実施例では、不揮発性メモリであるフラッシュメモリ34を例えばセクタ単位で全ビットON(ビット「1」)の状態で初期化し、ワード単位でビットをONからOFFへの書き込みを行う。そこで、本実施形態では、ビットをOFFする時間を予めシステムプログラムで設定し、その時間が経過する毎に1ビットずつOFFする。これにより、例えばコントローラの電源が、ON/OFFされた場合であっても、それまでの経過時間が記録として残ることになる。 As described above, in the second embodiment, the flash memory 34, which is a non-volatile memory, is initialized with all bits ON (bit "1"), for example, in units of sectors, and bits are written from ON to OFF in units of words. I do. Therefore, in the present embodiment, the time for turning off the bits is set in advance by the system program, and is turned off by one bit every time that time elapses. Thereby, for example, even when the controller power is turned on / off, the elapsed time up to that time remains as a record.
 上述した第2実施例によれば、固定時間に対応させてフラグをセットして利用者が使用した時間を管理することで、フラグの書き込み処理にある程度の時間間隔を持たせることができ処理を軽減することができる。また、時間ではなく、フラグで管理されるため、他人がこのデータを見ても評価期間を管理しているとは気付かないため、他人のデータ改竄等による不正使用を防止することができる。 According to the second embodiment described above, by setting a flag corresponding to a fixed time and managing the time used by the user, the flag writing process can have a certain time interval. Can be reduced. In addition, since it is managed not by time but by a flag, it is not noticed that another person is managing the evaluation period even when viewing this data, so that it is possible to prevent unauthorized use due to data tampering by others.
 <第3実施例>
 次に、第3実施例について説明する。PLC11は、産業用コンピュータであり連続稼動も可能なモジュールである。したがって、PLC11を使用して評価するアプリケーション(プログラム)が、24時間連続稼動のアプリケーションである可能性もある。この場合には、アプリケーションの起動タイミングでのみ評価満了期間の判定を行っていると、連続稼働中のPLC11では評価期間の満了を認識することができない。
<Third embodiment>
Next, a third embodiment will be described. The PLC 11 is an industrial computer and is a module capable of continuous operation. Therefore, there is a possibility that the application (program) to be evaluated using the PLC 11 is an application that operates continuously for 24 hours. In this case, if the evaluation expiration period is determined only at the application activation timing, the PLC 11 in continuous operation cannot recognize the expiration of the evaluation period.
 また、評価期間の満了をもってアプリケーションを強制的に終了させることも可能であるが、そのような場合評価中のシステムによっては甚大な事故を引き起こす可能性もあり、悪意のない評価利用者に対し多大な損失を与える可能性がある。 It is also possible to forcibly terminate the application when the evaluation period expires, but in such a case, depending on the system being evaluated, there is a possibility of causing a serious accident. May cause serious loss.
 そこで、第3実施例では、評価用として使用しているPLC11に対し、上述した評価期間の満了前の所定のタイミングで利用者に通知を行って利用者に正規品への移行を促す。また、第3実施例では、上述した通知を行っているにもかかわらず、継続して使い続けている場合には、悪意ある利用者と判断し、評価期間満了後にプログラムの実行を阻止する。 Therefore, in the third embodiment, the PLC 11 used for evaluation is notified to the user at a predetermined timing before the expiration of the above-described evaluation period, and the user is prompted to shift to a regular product. Further, in the third example, when the above-described notification is performed but the user continues to use it, the user is determined to be a malicious user, and the execution of the program is prevented after the evaluation period expires.
 具体的には、第3実施例では、フラッシュメモリ34上に、上述した評価満了期間判定のための閾値(第1閾値)とは別に、第2の期間満了判定のための閾値(第2閾値)を設ける。また、第3実施例では、第1閾値の経過後も、プログラムの継続使用時間を積算し、積算したこれが一定期間(例えば、2週間)を経過した場合には、強制的にアプリケーション(プログラム)の実行を阻止して、PLC11の使用を停止する。なお、上述した第3実施例では、第1閾値と第2閾値との合計が、プログラムの実行を阻止するまでの評価時間に相当する。 Specifically, in the third embodiment, a threshold value (second threshold value) for second period expiration determination is provided on the flash memory 34 separately from the above-described threshold value for evaluation expiration period determination (first threshold value). ). Further, in the third embodiment, even after the first threshold value has elapsed, the continuous use time of the program is integrated, and if this integrated value has passed a certain period (for example, two weeks), the application (program) is forcibly used. Is stopped and the use of the PLC 11 is stopped. In the third embodiment described above, the sum of the first threshold value and the second threshold value corresponds to the evaluation time until the execution of the program is blocked.
 これにより、第3実施例では、評価期間満了前に通知を行い、その後も所定の期間PLC11が使用できるため、24時間連続稼動のシステムにも適用することができる。また、第3実施例では、PLC11を使い続けられることを防止し、正規品購入による売上につなげることができる。 Thereby, in the third embodiment, notification is made before the expiration of the evaluation period, and the PLC 11 can be used for a predetermined period thereafter, so that it can also be applied to a system operating continuously for 24 hours. Further, in the third embodiment, it is possible to prevent the PLC 11 from being used continuously and to lead to sales by purchasing a regular product.
 なお、上述した通知としては、例えば軽故障表示等を行うことができる。例えばPLC11のモジュール前面等に設けられたLED39、内部に設けられたスピーカ40、利用者端末12上の支援ツールによる故障表示画面の表示、アプリケーションデータメモリ上のRAS領域等に表示される。ここで、PLC11には、アプリケーションの実行に影響はないものの利用者に対処の必要な不具合を通知するためのRAS通知機能(以下、「軽故障表示」という)がある。これは、例えば「バックアップ用の電池の電圧が低下している」、「一時的にアプリケーションの渋滞が発生した」等のときに通知されるものである。このように、軽故障表示を行うことで、評価期間満了に対する利用者への通知が可能となる。 In addition, as a notification mentioned above, a minor failure display etc. can be performed, for example. For example, the LED 39 provided on the front surface of the module of the PLC 11, the speaker 40 provided therein, the display of a failure display screen by the support tool on the user terminal 12, and the RAS area on the application data memory are displayed. Here, the PLC 11 has a RAS notification function (hereinafter referred to as “mild failure display”) for notifying the user of a problem that needs to be dealt with, although it does not affect the execution of the application. This is notified, for example, when “the voltage of the backup battery is low”, “a temporary application congestion has occurred” or the like. Thus, by performing a light failure display, it is possible to notify the user of the expiration of the evaluation period.
 ここで、図11は、評価期間の判定及び実行制御の第3実施例を説明するためのフローチャートである。また、図12は、図11に対応するフラグ書き込みの一例を示す図である。 Here, FIG. 11 is a flowchart for explaining a third embodiment of evaluation period determination and execution control. FIG. 12 is a diagram showing an example of flag writing corresponding to FIG.
 なお、図12の例では、上述した図10に示す例と比較すると、2つの閾値(第1閾値、第2閾値)92-1,92-2と、2つの判定領域(第1のデータ領域(以下、単に「第1領域」という)、第2のデータ領域(以下、単に「第2領域」という))93-1,93-2とを有する。 In the example of FIG. 12, compared with the example shown in FIG. 10 described above, two threshold values (first threshold value, second threshold value) 92-1 and 92-2 and two determination areas (first data area) are compared. (Hereinafter simply referred to as “first area”) and second data area (hereinafter simply referred to as “second area”) 93-1 and 93-2.
 つまり、図11、図12の例では、2種類の書き込みフラグ(第1フラグ、第2フラグ)にそれぞれ対応する閾値と、判定領域とを有する。なお、2つの閾値92-1,92-2は、それぞれ異なる時間でもよく、同一の時間でもよい。また、2つの判定領域93-1,93-2の大きさは、それぞれ閾値92-1,92-2と、上述した第2実施例に示す固定時間とに基づいて設定される。例えば、評価期間に対する判定及び期間満了後の通知を行うための判定で用いられる閾値92-1として、1ヶ月等を設定し、評価期間満了後の所定の期間(強制停止期間満了)の判定用いられる閾値92-2として2週間等を設定することができるが、これに限定されるものではない。 That is, in the example of FIG. 11 and FIG. 12, it has a threshold value corresponding to each of two types of write flags (first flag and second flag) and a determination area. The two threshold values 92-1 and 92-2 may be different times or the same time. The sizes of the two determination areas 93-1 and 93-2 are set based on the threshold values 92-1 and 92-2 and the fixed time shown in the second embodiment described above. For example, one month or the like is set as the threshold 92-1 used in the determination for the evaluation period and the determination for notification after the expiration of the period, and the determination and use of a predetermined period after the evaluation period expires (forcible stop period expiration) Two weeks or the like can be set as the threshold value 92-2, but is not limited to this.
 したがって、第3実施例では、積算値が固定時間を超過する毎にフラグを書込む場合に、最初に第1領域にフラグを書き込み、第1領域の全てのフラグを書き込んだ後、第1領域とは異なる第2領域にフラグを書き込み、第2領域に書き込まれたフラグ数によって評価期間の満了を判定することになる。 Therefore, in the third embodiment, when the flag is written every time the integrated value exceeds the fixed time, the flag is first written in the first area, and after all the flags in the first area are written, A flag is written in a second area different from the above, and the expiration of the evaluation period is determined by the number of flags written in the second area.
 具体的には、図11の例において、第3実施例は、まず上述したスキャン時間を積算時間に加算し(S21)、その後、積算時間が上述した固定時間(例えば、1分)以上であるか否かを判断する(S22)。第3実施例は、積算時間が固定時間以上である場合(S22において、YES)、上述した第1領域(例えば、図12に示す判定領域93-1)への書き込みが完了しているか否かを判断する(S23)。 Specifically, in the example of FIG. 11, in the third embodiment, the scan time described above is first added to the integrated time (S21), and then the integrated time is equal to or longer than the fixed time (for example, 1 minute) described above. It is determined whether or not (S22). In the third embodiment, if the integration time is equal to or longer than the fixed time (YES in S22), whether or not the writing to the first area (for example, the determination area 93-1 shown in FIG. 12) has been completed. Is determined (S23).
 第3実施例は、第1領域への書き込みが完了していない場合(S23において、NO)、第1フラグの書き込み位置をインクリメント(+1)し(S24)、第1領域へフラグの書き込みを行う(S25)。つまり、S24,S25の処理では、第1領域中で未だ第1フラグが書き込まれていない位置にフラグの書き込みを行う。 In the third embodiment, when the writing to the first area is not completed (NO in S23), the writing position of the first flag is incremented (+1) (S24), and the flag is written to the first area. (S25). That is, in the processes of S24 and S25, the flag is written at a position in the first area where the first flag has not yet been written.
 また、第3実施例は、S23の処理において、第1領域への書き込みが完了した場合(S23において、YES)、第2フラグの書き込み位置をインクリメント(+1)し(S26)、第2領域(例えば、図12に示す判定領域93-2)へフラグの書き込みを行う(S27)。つまり、S26,S27の処理では、第2領域中で未だ第2フラグが書き込まれていない位置にフラグの書き込みを行う。 In the third embodiment, when the writing to the first area is completed in the process of S23 (YES in S23), the writing position of the second flag is incremented (+1) (S26), and the second area ( For example, a flag is written in the determination area 93-2) shown in FIG. 12 (S27). That is, in the processing of S26 and S27, the flag is written at a position in the second area where the second flag has not yet been written.
 その後、第3実施例は、積算時間をクリアする(S28)。ここで、第3実施例は、S28の処理が終了後、又はS22の処理において、積算時間が固定時間以上でない場合(S22においてNO)、第2領域の全フラグの書き込みが完了したか否かを判断する(S29)。なお、この処理は、言い換えれば、第1領域及び第2領域に書き込まれたフラグの数により得られるプログラムの累積実行時間が、上述した閾値92-1及び閾値92-2の合計時間以上か否かを判断することを意味する。 Thereafter, the third embodiment clears the accumulated time (S28). Here, in the third embodiment, whether the writing of all the flags in the second area is completed after the processing of S28 is completed or when the integration time is not longer than the fixed time in the processing of S22 (NO in S22). Is determined (S29). In other words, in this process, the cumulative execution time of the program obtained by the number of flags written in the first area and the second area is equal to or longer than the total time of the threshold value 92-1 and the threshold value 92-2. It means to judge.
 第3実施例は、第2領域の全フラグの書き込みが完了している場合(S29において、YES)、プログラムの実行を阻止する(S30)。また、第3実施例では、S29の処理において、全フラグの書き込みが完了していない場合(S29において、NO)、S21に戻りプログラムの実行を行うことができる。なお、積算時間は、プログラムの実行周期に対応させて上述したフラッシュメモリ34等に記憶しておくことで管理することができる。 In the third embodiment, when all the flags in the second area have been written (YES in S29), the execution of the program is blocked (S30). In the third embodiment, if all the flags have not been written in the process of S29 (NO in S29), the program can be executed by returning to S21. The accumulated time can be managed by storing it in the above-described flash memory 34 or the like in correspondence with the program execution cycle.
 上述した処理により、2つの閾値を用いたPLC11における時間監視を適切に行うことができる。なお、図11に示す処理は、例えば上述したアプリケーション管理手段24等により行われる。 The time monitoring in the PLC 11 using the two threshold values can be appropriately performed by the processing described above. Note that the processing shown in FIG. 11 is performed by, for example, the application management unit 24 described above.
 ここで、第3の実施例では、第1領域への書き込み完了後に利用者への通知処理が行われるが、図11には通知処理が示されていない。そこで、以下に、第3実施例に対する通知処理の一例について説明する。図13は、第3実施例に対する通知処理の一例を示すフローチャートである。なお、図13に示す例では、LEDにおける通知例を示すが、これに限定されるものではなく、例えば所定の音声等の出力による通知等であってもよく、その他のアラーム出力であってもよい。 Here, in the third embodiment, the notification process to the user is performed after the writing to the first area is completed, but the notification process is not shown in FIG. Therefore, an example of notification processing for the third embodiment will be described below. FIG. 13 is a flowchart illustrating an example of notification processing for the third embodiment. In the example shown in FIG. 13, an example of notification in the LED is shown, but the present invention is not limited to this. For example, notification by output of a predetermined sound or the like may be used, and other alarm outputs may be used. Good.
 図13の例において、第3実施例における通知処理は、まず上述したフラッシュメモリ34等の不揮発性メモリに設けられた判定領域93を確認し(S31)、上述した第2領域(判定領域93-2)への書き込みが完了したか否かを判断する(S32)。 In the example of FIG. 13, in the notification process in the third embodiment, first, the determination area 93 provided in the nonvolatile memory such as the flash memory 34 is confirmed (S31), and the second area (determination area 93- It is determined whether writing to 2) is completed (S32).
 ここで、通知処理は、第2領域への書き込みが完了していない場合(S32において、NO)、次に、上述した第1領域(判定領域93-1)への書き込みが完了したか否かを判断する(S33)。通知処理は、S33において、第1領域への書き込みが完了している場合(S33において、YES)、故障RASを通知し(S34)、故障LEDを表示する(S35)。 Here, in the notification process, when the writing to the second area is not completed (NO in S32), whether or not the writing to the first area (determination area 93-1) described above is completed next. Is determined (S33). In S33, when the writing to the first area is completed in S33 (YES in S33), the failure RAS is notified (S34), and the failure LED is displayed (S35).
 また、通知処理は、第1領域への書き込みが完了していない場合(S33において、NO)、そのまま処理を終了する。また、通知処理は、上述したS32の処理において、第2領域への書き込みが完了している場合(S32において、YES)、評価コントローラとしての使用を中止するため、通知を行わずにそのまま処理を終了する。なお、第2領域への書き込みが完了している場合には、S34及びS35とは異なる他の通知を行ってもよい。 Further, in the notification process, when the writing to the first area is not completed (NO in S33), the process ends as it is. In addition, in the above-described processing of S32, when the writing to the second area is completed (YES in S32), the notification processing is performed without performing notification so that the use as the evaluation controller is stopped. finish. In addition, when the writing to the second area is completed, another notification different from S34 and S35 may be performed.
 また、図13に示す処理は、上述した図11に示す処理に統合してもよく、図11の処理とは別に所定の間隔で図13に示す通知処理のみを行ってもよい。図13の処理を図11の処理と分けることで、図13に示す通知のみをプログラムの実行とは関係なく、利用者に通知することができる。これにより、利用者は、PLC11の現在の状況を容易に把握することができる。なお、上述した処理は、例えば上述したアプリケーション管理手段24等により行われる。 The process shown in FIG. 13 may be integrated into the process shown in FIG. 11 described above, or only the notification process shown in FIG. 13 may be performed at a predetermined interval separately from the process shown in FIG. By separating the process of FIG. 13 from the process of FIG. 11, only the notification shown in FIG. 13 can be notified to the user regardless of the execution of the program. Thereby, the user can grasp | ascertain easily the present condition of PLC11. The above-described processing is performed by, for example, the above-described application management unit 24.
 つまり、上述した第3実施例では、第1領域と第2領域を設け、フラグを書込む際、第1領域からフラグを書き込み始め、当該第1領域の全領域に対してフラグを書き込み終えると所定の通知(例えば、アラーム出力等)を行い、以降は前記第2領域にフラグを書き込む。また、第3実施例では、当該第1領域に書き込まれたフラグ数と前記第2領域に書き込まれたフラグ数との総フラグ数によって累積実行時間を算出し、算出した累積実行時間が評価期間を超過することにより、プログラムの実行を阻止する。 That is, in the third embodiment described above, when the first area and the second area are provided and the flag is written, the flag starts to be written from the first area, and the flag is written to all the areas of the first area. A predetermined notification (for example, alarm output or the like) is performed, and thereafter, a flag is written in the second area. In the third embodiment, the cumulative execution time is calculated based on the total number of flags including the number of flags written in the first area and the number of flags written in the second area, and the calculated cumulative execution time is evaluated. The program execution is prevented by exceeding.
 なお、第3実施例では、上述した第1閾値を評価期間とし、第2閾値を猶予期間として実行制御を行うことができる。具体的には、第3実施例では、フラグを書込む際、評価期間に対応する第1領域からフラグを書き込み始め、当該第1領域の全領域に対してフラグを書き込み終えると評価期間満了を示す所定の通知を行う。また、以降の処理では、猶予期間に対応する第2領域にフラグを書き込み、第2領域に書き込まれたフラグ数によって算出される累積時間が猶予時間を超過することにより、プログラムの実行を阻止してもよい。 In the third embodiment, execution control can be performed with the first threshold value described above as the evaluation period and the second threshold value as the grace period. Specifically, in the third embodiment, when writing a flag, the flag begins to be written from the first area corresponding to the evaluation period, and the evaluation period expires when the flag has been written to all areas of the first area. A predetermined notification is performed. In subsequent processing, the flag is written in the second area corresponding to the grace period, and the cumulative time calculated by the number of flags written in the second area exceeds the grace time, thereby preventing the execution of the program. May be.
 更に、第3実施例では、図11、図12に示すように、第2領域(判定領域93-2)を別途設けているが、本発明においてはこれに限定されるものではなく、例えば第1領域を継続使用し、評価満了通知判定と強制停止判定の基準をそれぞれ設けることで対応することも可能である。また、本実施形態では、例えば第3領域や第4領域の多数の領域等を設け、各領域のフラグが書き換わる毎に段階的な通知を利用者に行うこともできる。なお、本実施形態では、最初に評価中ビット91の内容を確認し、PLC11が正規版である場合に、上述の処理は行わない。 Furthermore, in the third embodiment, as shown in FIGS. 11 and 12, a second area (determination area 93-2) is separately provided. However, the present invention is not limited to this, and for example, It is possible to cope with this by continuously using one area and providing criteria for evaluation expiration notification determination and forced stop determination. In the present embodiment, for example, a large number of areas such as the third area and the fourth area are provided, and the user can be notified step by step every time the flag of each area is rewritten. In the present embodiment, the content of the bit under evaluation 91 is first confirmed, and the above-described processing is not performed when the PLC 11 is a regular version.
 <評価状態解除方法(コマンドの具体例)>
 ここで、本実施形態において、PLC11を実際に購入した利用者が評価版ではなく、正規版又はレンタル版として使用する場合には、PLC11を後で回収せずに使い回す場合がある。したがって、本実施形態では、評価版である状態(以下、「評価状態」という)を解除して評価用から正規用への変更の仕組みを提供する。
<Evaluation state release method (specific example of command)>
Here, in this embodiment, when the user who actually purchased the PLC 11 uses it as a regular version or a rental version instead of an evaluation version, the PLC 11 may be reused without being collected later. Therefore, in the present embodiment, a state of evaluation version (hereinafter referred to as “evaluation state”) is canceled to provide a mechanism for changing from evaluation to regular use.
 具体的には、上述したように、利用者端末12が、提供者端末16に対して購入手続をすることで、所定のPLC11の評価状態を解除するコマンドを取得する。例えば、本実施形態では、提供者端末16において、イーサネットのMACアドレス等の機器固有の情報に基づいたコマンドを作成し、これを利用者端末12に送信する。利用者端末12は、このコマンドを対象のPLC11に実行させる。 Specifically, as described above, the user terminal 12 obtains a command for canceling the evaluation state of the predetermined PLC 11 by performing a purchase procedure for the provider terminal 16. For example, in this embodiment, the provider terminal 16 creates a command based on device-specific information such as an Ethernet MAC address and transmits it to the user terminal 12. The user terminal 12 causes the target PLC 11 to execute this command.
 利用者端末12は、コマンドをネットワーク15上で巡回させることで、コマンドを取得した各PLC11が自分のMACアドレスとコマンド内のMACアドレスとを比較し、同一である場合にコマンドが実行される。これにより、PLC11の評価版から正規版又はレンタル版へのモード情報の変更(書き換え等)を個別に行うことができる。 The user terminal 12 circulates the command on the network 15 so that each PLC 11 that has acquired the command compares its own MAC address with the MAC address in the command, and the command is executed if they are the same. Thereby, the change (rewriting etc.) of the mode information from the evaluation version of PLC11 to a regular version or a rental version can be performed individually.
 また、コマンド動作は、例えば、上述した図10、図12に示す評価中ビット91に対して、評価版から正規版又はレンタル版の識別情報に書き換えると共に、閾値92の情報や判定領域の情報を初期化する。 Further, for example, the command operation is rewritten from the evaluation version to the identification information of the regular version or the rental version with respect to the evaluation bit 91 shown in FIGS. initialize.
 <他の機器にアプリケーションを使い回した場合のフラグの立て方>
 また、本実施形態において、他の機器(PLC)にアプリケーション(プログラム)を使い回した場合のフラグの立て方について説明する。他の機器にアプリケーションを使い回す場合には、例えばPLC11そのものではなく、コントローラアプリケーション(プログラム)の不正利用ということになる。そのため、本実施形態では、例えばPLC11からアプリケーションをコピーしたとき、そのコピーしたアプリケーションにコピーフラグを設定する。なお、このフラグの設定は、例えばフラッシュメモリ34等に行われるが、これに限定されるものではない。ここで、コピーフラグが付与されたアプリケーションがダウンロードされた別のPLC11は、評価用コントローラという位置付けで動作させる。
<How to set a flag when an application is reused for other devices>
In the present embodiment, how to set a flag when an application (program) is reused for another device (PLC) will be described. When the application is reused for other devices, for example, the controller application (program) is illegally used instead of the PLC 11 itself. Therefore, in this embodiment, for example, when an application is copied from the PLC 11, a copy flag is set for the copied application. This flag is set in the flash memory 34, for example, but is not limited to this. Here, another PLC 11 to which the application with the copy flag is downloaded is operated as an evaluation controller.
 また逆に、正規にダウンロードされた場合には、予め設定されたキーとなるようなファイルを外部装置から別途ダウンロードし、コピーではこのファイルを移せないようにする。なお、上述の処理は、例えばPLC11のアプリケーション管理手段24等により行われる。 On the other hand, if the file is properly downloaded, a file that is a preset key is separately downloaded from the external device, and this file cannot be transferred by copying. The above-described processing is performed by, for example, the application management unit 24 of the PLC 11.
 <レンタル用PLCを想定したときのフラグの立て方>
 次に、レンタル用PLCを想定したときのフラグの立て方について説明する。レンタル用PLCを想定した場合には、評価用コントローラであるPLC11の評価からPLC11の購入という使い方が想定されるが、レンタル使用の場合も考えられる。
<How to set a flag when assuming a rental PLC>
Next, how to set a flag when a rental PLC is assumed will be described. When a rental PLC is assumed, it is assumed that the PLC 11 is purchased from the evaluation of the PLC 11 as an evaluation controller. However, the rental PLC may be used.
 このような場合でも、上述と同様に機器毎の識別情報(例えば、MACアドレス)に基づいたコマンドをダウンロードすることで対応することができる。例えば、レンタル用PLC11の場合には、評価期間としての判定領域の追加、削除、判定領域のリセット、正規版への移行等のフラグを設定しておくことで、PLC11の多種の使用内容に対応することができ、利用者のニーズに適切に対応することができる。 Even in such a case, it is possible to cope by downloading a command based on identification information (for example, MAC address) for each device in the same manner as described above. For example, in the case of the rental PLC 11, it is possible to cope with various usage contents of the PLC 11 by setting flags such as addition / deletion of a determination area as an evaluation period, reset of the determination area, and transition to a regular version. Can respond appropriately to the needs of users.
 <利用者端末12における処理手順>
 ここで、利用者端末12における処理手順について、フローチャートを用いて説明する。図14は、利用者端末における処理手順の一例を示すフローチャートである。図14において、利用者端末12は、まず評価版(評価用コントローラ)として使用しているPLC11に対して所定のプログラム等の実行指示を行い(S41)、また実行結果等を取得する(S42)。なお、実行結果とは、処理結果の他にも例えばエラー情報の取得や残りの評価期間の情報等を取得することができる。
<Processing procedure in user terminal 12>
Here, a processing procedure in the user terminal 12 will be described using a flowchart. FIG. 14 is a flowchart illustrating an example of a processing procedure in the user terminal. In FIG. 14, the user terminal 12 first instructs the PLC 11 used as an evaluation version (evaluation controller) to execute a predetermined program or the like (S41), and obtains an execution result or the like (S42). . In addition to the processing result, for example, acquisition of error information, information on the remaining evaluation period, and the like can be acquired as the execution result.
 ここで、利用者端末12は、PLC11から評価期間が満了した旨の通知があるか否かを判断し(S43)、通知がある場合(S43において、YES)、画面等に表示して利用者に通知すると共に、利用者から購入する指示があったか否かを判断する(S44)。 Here, the user terminal 12 determines whether or not there is a notification from the PLC 11 that the evaluation period has expired (S43). If there is a notification (YES in S43), the user terminal 12 displays it on the screen or the like. And whether or not there has been an instruction to purchase from the user is determined (S44).
 ここで、利用者端末12は、購入指示があった場合(S44において、YES)、購入要求(レンタルの場合も含む)、PLC11の識別情報(例えば、MACアドレス)、必要に応じて鍵情報を提供者端末16に送信する(S45)。次に、利用者端末12は、提供者端末16から暗号化された購入要求に対応するコマンドを取得したか否かを判断し(S46)、取得していない場合(S46において、NO)、取得するまで待機する。また、利用者端末12は、S45の処理において、暗号化されたコマンドを取得した場合(S45において、YES)、復号化処理を行い(S47)、処理されたコマンドを実行する(S48)。 Here, the user terminal 12 receives a purchase instruction (YES in S44), purchase request (including rental), identification information (for example, MAC address) of the PLC 11, and key information as necessary. It transmits to the provider terminal 16 (S45). Next, the user terminal 12 determines whether or not a command corresponding to the encrypted purchase request has been acquired from the provider terminal 16 (S46), and if not acquired (NO in S46), the acquisition is performed. Wait until If the user terminal 12 obtains an encrypted command in the process of S45 (YES in S45), the user terminal 12 performs a decryption process (S47), and executes the processed command (S48).
 ここで、S48の処理の終了後、S43の処理においてPLC11からの通知がない場合(S43において、NO)、又は、S44の処理において利用者からの購入指示がない場合(S44において、NO)、処理を終了する。なお、S48の処理の終了後、及びS43の処理においてPLC11からの通知がない場合(S43において、NO)には、上述した処理を繰り返すことができる。一方、S44の処理において、利用者からの購入指示がない場合(S44において、NO)には、PLC11におけるプログラムの実行が阻止され、PLC11が使用できなくなる。 Here, after the process of S48, when there is no notification from the PLC 11 in the process of S43 (NO in S43), or when there is no purchase instruction from the user in the process of S44 (NO in S44), The process ends. In addition, after the process of S48 is completed and when there is no notification from the PLC 11 in the process of S43 (NO in S43), the above-described process can be repeated. On the other hand, in the process of S44, when there is no purchase instruction from the user (NO in S44), the execution of the program in the PLC 11 is blocked and the PLC 11 cannot be used.
 <提供者端末16における処理手順>
 ここで、提供者端末16における処理手順について、フローチャートを用いて説明する。図15は、提供者端末における処理手順の一例を示すフローチャートである。図15において、提供者端末16は、まず利用者端末12からの購入要求(レンタルの場合も含む)があったか否かを判断し(S51)、購入要求があった場合(S51において、YES)、購入要求に応じて対象のPLC11に対する所定のコマンドを生成する(S52)。
<Processing procedure in provider terminal 16>
Here, a processing procedure in the provider terminal 16 will be described using a flowchart. FIG. 15 is a flowchart illustrating an example of a processing procedure in the provider terminal. In FIG. 15, the provider terminal 16 first determines whether or not there is a purchase request (including rental) from the user terminal 12 (S51). If there is a purchase request (YES in S51), A predetermined command for the target PLC 11 is generated in response to the purchase request (S52).
 次に、提供者端末16は、S52の処理で生成したコマンドに対して利用者端末12から得られる鍵情報に基づいて暗号化を行い(S53)、暗号化されたコマンドを利用者端末12に送信する(S54)。なお、提供者端末16は、S51の処理において、利用者端末12からの購入要求がない場合(S51において、NO)、処理を終了する。なお、上述した提供者端末16における処理は、PLC11を提供している利用者端末12に対してPLC11毎に処理が行われる。 Next, the provider terminal 16 encrypts the command generated in the process of S52 based on the key information obtained from the user terminal 12 (S53), and sends the encrypted command to the user terminal 12. Transmit (S54). If there is no purchase request from the user terminal 12 in the process of S51 (NO in S51), the provider terminal 16 ends the process. In addition, the process in the provider terminal 16 mentioned above is processed for every PLC11 with respect to the user terminal 12 which provides PLC11.
 また、図15に示す処理は、利用者端末12と提供者端末16とが通信ネットワーク17等で接続されている場合の処理を示しているが、本実施形態においては、これに限定されるものではない。例えば、利用者端末12と提供者端末16とが通信ネットワーク17で接続されていない場合には、両者間のデータのやり取りは郵送等により行われる。 Moreover, although the process shown in FIG. 15 has shown the process in case the user terminal 12 and the provider terminal 16 are connected by the communication network 17 grade | etc., In this embodiment, it is limited to this. is not. For example, when the user terminal 12 and the provider terminal 16 are not connected via the communication network 17, data exchange between the two is performed by mail or the like.
 上述したように、本発明によれば、プログラマブルコントローラの使用を適切に制御することができる。つまり、本発明は、プログラマブルコントローラの利用者に対するプログラマブルコントローラとしての提供において、評価期間の高精度な監視を行うことができる。 As described above, according to the present invention, it is possible to appropriately control the use of the programmable controller. That is, the present invention can monitor the evaluation period with high accuracy in providing the programmable controller as a programmable controller.
 これにより、既存のコントローラに対しハードウェア等の変更なく、評価期間を利用者のアプリケーション(プログラム)実行時間の合計として判断し、評価期間満了後のコントローラ起動を制限することができる機能を実現する。また、ユーザアプリケーション実行中に評価期間満了となった場合は、アプリケーションを停止しない形で期間満了を所定の通知手段、又はアプリケーションや支援ツール等に通知し、利用者に対し正規品の購入を促すことができる。これにより、正規品への置換えを行わないシステムに対しては悪意ある使用とみなし、一定期間経過後にコントローラの実行を停止することができる。 This realizes a function capable of determining the evaluation period as a total of the application (program) execution time of the user without changing the hardware or the like with respect to the existing controller, and limiting the activation of the controller after the evaluation period expires. . In addition, when the evaluation period expires during execution of the user application, the expiration of the period is notified to the predetermined notification means, application, support tool, etc. without stopping the application, and the user is encouraged to purchase a genuine product. be able to. As a result, the system that does not replace the genuine product is regarded as malicious use, and the execution of the controller can be stopped after a certain period of time.
 以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。 The preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to the specific embodiments, and various modifications, It can be changed.
 10 提供システム
 11 PLC
 12 利用者端末
 13 入出力モジュール
 14 通信ケーブル
 15 ネットワーク
 16 提供者端末
 17 通信ネットワーク
 18 プログラマブルコントローラシステム
 21 通信インタフェース手段
 22 コマンド提供手段
 23 ストレージ管理手段
 24 アプリケーション管理手段
 25 システム管理手段
 26 スイッチ(SW)監視手段
 27 カレンダIC(日時取得手段)
 28 入出力(I/O)制御手段
 29 通知手段
 31 CPU
 32 ドライバ/レシーバ(ネットワーク接続装置)
 33 バスコントローラ
 34 フラッシュ(FLASH)メモリ
 35 プログラムメモリ
 36 データメモリ
 37 RTC
 38 スイッチ
 39 LED
 40 スピーカ
 41 電池
 42 電源
 43 リセット回路
 51,61 入力手段
 52,62 出力手段
 53,63 記憶手段
 54 PLC(コントローラ)実行手段
 55 通知手段
 56 購入手段
 57 画面生成手段
 58,68 送受信手段
 59,69 制御手段
 64 PLC(コントローラ)管理手段
 65 鍵取得手段
 66 コマンド生成手段
 67 暗号化手段
 71 入力装置
 72 出力装置
 73 ドライブ装置
 74 補助記憶装置
 75 メモリ装置
 76 CPU
 77 ネットワーク接続装置
 78 記録媒体
 81,86 期間
 82,83 入力データ
 84,85 出力データ
 87 ユーザプログラム処理期間
 88 メッセージ伝送
 91 評価中ビット
 92 閾値
 93 判定領域
10 Providing system 11 PLC
DESCRIPTION OF SYMBOLS 12 User terminal 13 Input / output module 14 Communication cable 15 Network 16 Provider terminal 17 Communication network 18 Programmable controller system 21 Communication interface means 22 Command providing means 23 Storage management means 24 Application management means 25 System management means 26 Switch (SW) monitoring Means 27 Calendar IC (Date and time acquisition means)
28 Input / output (I / O) control means 29 Notification means 31 CPU
32 Driver / receiver (network connection device)
33 Bus controller 34 Flash (FLASH) memory 35 Program memory 36 Data memory 37 RTC
38 switch 39 LED
40 speaker 41 battery 42 power supply 43 reset circuit 51, 61 input means 52, 62 output means 53, 63 storage means 54 PLC (controller) execution means 55 notification means 56 purchase means 57 screen generation means 58, 68 transmission / reception means 59, 69 control Means 64 PLC (controller) management means 65 Key acquisition means 66 Command generation means 67 Encryption means 71 Input device 72 Output device 73 Drive device 74 Auxiliary storage device 75 Memory device 76 CPU
77 Network connection device 78 Recording medium 81, 86 Period 82, 83 Input data 84, 85 Output data 87 User program processing period 88 Message transmission 91 Bit under evaluation 92 Threshold 93 Determination area

Claims (19)

  1.  プログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過すると計数し、該計数値に基づき前記プログラムの累積実行時間を求め、該累積実行時間が予め設定された評価期間を超過することにより前記プログラムの実行を阻止するアプリケーション管理手段を有することを特徴とするプログラマブルコントローラ。 The program execution cycle is accumulated, and the accumulated value obtained by the accumulation is counted when it exceeds a predetermined fixed time value. The accumulated execution time of the program is obtained based on the counted value, and the accumulated execution time is preset. A programmable controller comprising application management means for preventing the execution of the program by exceeding an evaluation period.
  2.  前記アプリケーション管理手段は、
     前記積算値が前記固定時間を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって前記累積実行時間を算出することを特徴とする請求項1に記載のプログラマブルコントローラ。
    The application management means includes
    2. The programmable controller according to claim 1, wherein a flag is written in a predetermined data area each time the integrated value exceeds the fixed time, and the cumulative execution time is calculated based on the number of the written flags.
  3.  前記データ領域は、第1のデータ領域と第2のデータ領域で構成され、
     前記アプリケーション管理手段は、
     前記フラグを書込む際、前記第1のデータ領域からフラグを書き込み始め、当該第1のデータ領域の全領域に対してフラグを書き込み終えると所定の通知を行い、以降は前記第2のデータ領域にフラグを書き込み、前記第1のデータ領域に書き込まれたフラグ数と前記第2のデータ領域に書き込まれたフラグ数との総フラグ数によって前記累積実行時間を算出することを特徴とする請求項2に記載のプログラマブルコントローラ。
    The data area is composed of a first data area and a second data area,
    The application management means includes
    When writing the flag, the flag starts to be written from the first data area, and when the flag has been written to all areas of the first data area, a predetermined notification is given, and thereafter the second data area The cumulative execution time is calculated from the total number of flags of the number of flags written to the first data area and the number of flags written to the second data area. 2. The programmable controller according to 2.
  4.  プログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過する毎に、所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって累積実行時間を算出し、該累積実行時間が予め設定された評価期間を超過した後、所定の猶予期間を待って前記プログラムの実行を阻止するアプリケーション管理手段を有し、
     前記データ領域は第1のデータ領域と第2のデータ領域で構成され、
     前記アプリケーション管理手段は、前記フラグを書込む際、前記評価期間に対応する前記第1のデータ領域からフラグを書き込み始め、当該第1のデータ領域の全領域に対してフラグを書き込み終えると前記評価期間満了を示す所定の通知を行い、以降は前記猶予期間に対応する前記第2のデータ領域にフラグを書き込み、前記第2のデータ領域に書き込まれたフラグ数のみによって算出される累積時間が前記猶予時間を超過することにより、プログラムの実行を阻止することを特徴とするプログラマブルコントローラ。
    Every time the program execution cycle is integrated, and the integrated value obtained by the integration exceeds a predetermined fixed time value, a flag is written in a predetermined data area, and the cumulative execution time is calculated by the number of the written flags, After the accumulated execution time exceeds a preset evaluation period, application management means for waiting for a predetermined grace period and preventing the execution of the program,
    The data area includes a first data area and a second data area,
    The application management means starts writing the flag from the first data area corresponding to the evaluation period when writing the flag, and finishes writing the flag to all areas of the first data area. A predetermined notification indicating the expiration of the period is performed, and thereafter, a flag is written in the second data area corresponding to the grace period, and the cumulative time calculated only by the number of flags written in the second data area A programmable controller characterized in that execution of a program is prevented by exceeding a grace period.
  5.  前記プログラマブルコントローラは、MACアドレスを含む通信手段と、
     外部からMACアドレスを含んだコマンド受信し、該受信したコマンドに含まれるMACアドレスと前記通信手段に含まれた前記MACアドレスとを比較し、両MACドレスが同一である場合に前記コマンドを実行し、該実行により当該プログラマブルコントローラのモード情報を書き換え、前記累積実行時間が前記評価期間を超過しても前記アプリケーション管理手段に前記プログラムの実行を継続させるシステム管理手段とを更に有することを特徴とする請求項1乃至4の何れか1項に記載のプログラマブルコントローラ。
    The programmable controller includes communication means including a MAC address;
    A command including a MAC address is received from the outside, the MAC address included in the received command is compared with the MAC address included in the communication means, and the command is executed when both MAC addresses are the same. And system management means for rewriting the mode information of the programmable controller by the execution and causing the application management means to continue execution of the program even if the accumulated execution time exceeds the evaluation period. The programmable controller of any one of Claims 1 thru | or 4.
  6.  前記プログラムの実行を阻止するに先立ち、前記プログラムの実行の停止を通知する通知手段を更に有することを特徴とする請求項1乃至5の何れか1項に記載のプログラマブルコントローラ。 The programmable controller according to any one of claims 1 to 5, further comprising notification means for notifying execution stop of the program prior to preventing execution of the program.
  7.  前記プログラマブルコントローラは、リング状のデータ交換バスに接続され、該データ交換バスに接続される複数のノードと周期的にデータ交換し、
     前記プログラムは、前記データ交換の周期に同期して起動されることを特徴とする請求項1乃至6の何れか1項に記載のプログラマブルコントローラ。
    The programmable controller is connected to a ring-shaped data exchange bus and periodically exchanges data with a plurality of nodes connected to the data exchange bus.
    7. The programmable controller according to claim 1, wherein the program is started in synchronization with the data exchange cycle.
  8.  プログラムを実行する1又は複数のプログラマブルコントローラと、データの入出力を行う1又は複数のI/Oモジュールとがデータ交換バスを介して所定の周期でデータ交換を行い、前記プログラマブルコントローラが前記I/Oモジュールを介して当該I/Oモジュールに接続された外部機器を制御するプログラマブルコントローラシステムにおいて、
     前記プログラマブルコントローラは、前記データ交換の前記所定の周期に同期して実行されるプログラムの実行周期を積算し、積算により得られた積算値が予め設定された閾値を超過すると、前記プログラムの実行を阻止するアプリケーション管理手段を有することを特徴とするプログラマブルコントローラシステム。
    One or more programmable controllers for executing a program and one or more I / O modules for inputting / outputting data exchange data at a predetermined cycle via a data exchange bus, and the programmable controller In a programmable controller system that controls an external device connected to the I / O module via the O module,
    The programmable controller integrates the execution cycle of the program executed in synchronization with the predetermined cycle of the data exchange, and executes the program when the integrated value obtained by the integration exceeds a preset threshold value. A programmable controller system comprising application management means for blocking.
  9.  前記アプリケーション管理手段は、
     前記プログラムの実行回数が、設定された固定回数を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって前記積算値を算出することを特徴とする請求項8に記載のプログラマブルコントローラシステム。
    The application management means includes
    9. The flag is written in a predetermined data area every time the number of executions of the program exceeds a set fixed number of times, and the integrated value is calculated based on the number of written flags. Programmable controller system.
  10.  前記データ領域は、第1のデータ領域と第2のデータ領域で構成され、
     前記アプリケーション管理手段は、
     前記フラグを書込む際、前記第1のデータ領域からフラグを書き込み始め、当該第1のデータ領域の全領域に対してフラグを書き込み終えると所定の通知を行い、以降は前記第2のデータ領域にフラグを書き込み、当該第2のデータ領域に書き込まれたフラグ数と前記第1のデータ領域に書き込まれたフラグ数の総フラグ数によって前記積算値を算出することを特徴とする請求項9に記載のプログラマブルコントローラシステム。
    The data area is composed of a first data area and a second data area,
    The application management means includes
    When writing the flag, the flag starts to be written from the first data area, and when the flag has been written to all areas of the first data area, a predetermined notification is given, and thereafter the second data area The integrated value is calculated from the number of flags written in the second data area and the total number of flags written in the first data area. The programmable controller system described.
  11.  前記プログラマブルコントローラは、MACアドレスを含む通信手段を更に有し、
     外部からMACアドレスを含んだコマンド受信し、この受信したコマンドに含まれるMACアドレスと前記通信手段に含まれた前記MACアドレスとを比較し、両MACドレスが同一である場合に前記コマンドを実行し、このコマンドの実行により当該プログラマブルコントローラのモード情報を書き換え、前記積算値が前記閾値を超過しても前記アプリケーション管理手段に前記プログラムの実行を継続させるシステム管理手段を更に有することを特徴とする請求項8乃至10の何れか1項に記載のプログラマブルコントローラシステム。
    The programmable controller further includes communication means including a MAC address,
    A command including a MAC address is received from the outside, the MAC address included in the received command is compared with the MAC address included in the communication means, and the command is executed when both MAC addresses are the same. The system further comprises system management means for rewriting the mode information of the programmable controller by executing this command and causing the application management means to continue execution of the program even if the integrated value exceeds the threshold value. Item 11. The programmable controller system according to any one of Items 8 to 10.
  12.  前記プログラムの実行を阻止するに先立ち、前記プログラムの実行の停止を通知する通知手段を更に有することを特徴とする請求項8乃至11の何れか1項に記載のプログラマブルコントローラシステム。 The programmable controller system according to any one of claims 8 to 11, further comprising notification means for notifying execution stop of the program prior to preventing execution of the program.
  13.  プログラムを実行するプログラマブルコントローラと、該プログラマブルコントローラに前記プログラムの実行を指示する利用者端末と、前記プログラマブルコントローラを提供した提供者端末とがネットワーク上に接続された前記プログラマブルコントローラの提供システムであって、
     前記プログラマブルコントローラは、前記プログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過すると計数し、該計数値に基づき前記プログラムの累積実行時間を求め、該累積実行時間が予め設定された評価期間を超過することにより前記プログラムの実行を阻止するアプリケーション管理手段を有することを特徴とする提供システム。
    A programmable controller providing system in which a programmable controller that executes a program, a user terminal that instructs the programmable controller to execute the program, and a provider terminal that provides the programmable controller are connected on a network. ,
    The programmable controller integrates the execution period of the program, counts when the integrated value obtained by the integration exceeds a predetermined fixed time value, obtains an accumulated execution time of the program based on the counted value, and performs the accumulated execution A providing system comprising application management means for preventing execution of the program when time exceeds a preset evaluation period.
  14.  前記アプリケーション管理手段は、
     前記積算値が前記固定時間を超過する毎に所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって前記累積実行時間を算出することを特徴とする請求項13に記載の提供システム。
    The application management means includes
    14. The providing system according to claim 13, wherein a flag is written in a predetermined data area every time the integrated value exceeds the fixed time, and the cumulative execution time is calculated based on the number of the written flags.
  15.  前記データ領域は、第1のデータ領域と第2のデータ領域で構成され、
     前記アプリケーション管理手段は、
     前記フラグを書込む際、前記第1のデータ領域からフラグを書き込み始め、当該第1のデータ領域の全領域に対してフラグを書き込み終えると所定の通知を行い、以降は前記第2のデータ領域にフラグを書き込み、前記第1のデータ領域に書き込まれたフラグ数と前記第2のデータ領域に書き込まれたフラグ数との総フラグ数によって前記累積実行時間を算出することを特徴とする請求項14に記載の提供システム。
    The data area is composed of a first data area and a second data area,
    The application management means includes
    When writing the flag, the flag starts to be written from the first data area, and when the flag has been written to all areas of the first data area, a predetermined notification is given, and thereafter the second data area The cumulative execution time is calculated from the total number of flags of the number of flags written to the first data area and the number of flags written to the second data area. 14. The providing system according to 14.
  16.  プログラムを実行するプログラマブルコントローラと、該プログラマブルコントローラに前記プログラムの実行を指示する利用者端末と、前記プログラマブルコントローラを提供した提供者端末とがネットワーク上に接続された前記プログラマブルコントローラの提供システムであって、
     前記プログラマブルコントローラは、プログラムの実行周期を積算し、積算により得られた積算値が所定の固定時間値を超過する毎に、所定のデータ領域にフラグを書き込み、該書き込まれたフラグ数によって累積実行時間を算出し、該累積実行時間が予め設定された評価期間を超過した後、所定の猶予期間を待って前記プログラムの実行を阻止するアプリケーション管理手段を有し、
     前記データ領域は第1のデータ領域と第2のデータ領域で構成され、
     前記アプリケーション管理手段は、前記フラグを書込む際、前記評価期間に対応する前記第1のデータ領域からフラグを書き込み始め、当該第1のデータ領域の全領域に対してフラグを書き込み終えると前記評価期間満了を示す所定の通知を行い、以降は前記猶予期間に対応する前記第2のデータ領域にフラグを書き込み、前記第2のデータ領域に書き込まれたフラグ数のみによって算出される累積時間が前記猶予時間を超過することにより、プログラムの実行を阻止することを特徴とする提供システム。
    A programmable controller providing system in which a programmable controller that executes a program, a user terminal that instructs the programmable controller to execute the program, and a provider terminal that provides the programmable controller are connected on a network. ,
    The programmable controller integrates the program execution cycle, writes a flag in a predetermined data area every time the integrated value obtained by the integration exceeds a predetermined fixed time value, and performs cumulative execution according to the number of the written flags An application management means for calculating a time and waiting for a predetermined grace period after the accumulated execution time exceeds a preset evaluation period, and preventing execution of the program;
    The data area includes a first data area and a second data area,
    The application management means starts writing the flag from the first data area corresponding to the evaluation period when writing the flag, and finishes writing the flag to all areas of the first data area. A predetermined notification indicating the expiration of the period is performed, and thereafter, a flag is written in the second data area corresponding to the grace period, and the cumulative time calculated only by the number of flags written in the second data area A providing system characterized in that execution of a program is prevented by exceeding a grace period.
  17.  前記プログラマブルコントローラは、MACアドレスを含む通信手段と、
     外部からMACアドレスを含んだコマンド受信し、該受信したコマンドに含まれるMACアドレスと前記通信手段に含まれた前記MACアドレスとを比較し、両MACドレスが同一である場合に前記コマンドを実行し、該実行により当該プログラマブルコントローラのモード情報を書き換え、前記累積実行時間が前記評価期間を超過しても前記アプリケーション管理手段に前記プログラムの実行を継続させるシステム管理手段とを更に有することを特徴とする請求項13乃至16の何れか1項に記載の提供システム。
    The programmable controller includes communication means including a MAC address;
    A command including a MAC address is received from the outside, the MAC address included in the received command is compared with the MAC address included in the communication means, and the command is executed when both MAC addresses are the same. And system management means for rewriting the mode information of the programmable controller by the execution and causing the application management means to continue execution of the program even if the accumulated execution time exceeds the evaluation period. The providing system according to any one of claims 13 to 16.
  18.  前記プログラムの実行を阻止するに先立ち、前記プログラムの実行の停止を通知する通知手段を更に有することを特徴とする請求項13乃至17の何れか1項に記載の提供システム。 The providing system according to any one of claims 13 to 17, further comprising notification means for notifying execution stop of the program prior to preventing execution of the program.
  19.  前記プログラマブルコントローラは、リング状のデータ交換バスに接続され、該データ交換バスに接続される複数のノードと周期的にデータ交換し、
     前記プログラムは、前記データ交換の周期に同期して起動されることを特徴とする請求項13乃至18の何れか1項に記載の提供システム。
    The programmable controller is connected to a ring-shaped data exchange bus and periodically exchanges data with a plurality of nodes connected to the data exchange bus.
    The system according to any one of claims 13 to 18, wherein the program is started in synchronization with the data exchange cycle.
PCT/JP2012/055137 2012-02-29 2012-02-29 Programmable controller, programmable controller system, and provision system for programmable controller WO2013128603A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201280067026.7A CN104081299B (en) 2012-02-29 2012-02-29 The offer system of Programmable Logic Controller, programable controller system and Programmable Logic Controller
PCT/JP2012/055137 WO2013128603A1 (en) 2012-02-29 2012-02-29 Programmable controller, programmable controller system, and provision system for programmable controller
JP2014501903A JP5811265B2 (en) 2012-02-29 2012-02-29 Programmable controller, programmable controller system, and system for providing programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/055137 WO2013128603A1 (en) 2012-02-29 2012-02-29 Programmable controller, programmable controller system, and provision system for programmable controller

Publications (1)

Publication Number Publication Date
WO2013128603A1 true WO2013128603A1 (en) 2013-09-06

Family

ID=49081850

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/055137 WO2013128603A1 (en) 2012-02-29 2012-02-29 Programmable controller, programmable controller system, and provision system for programmable controller

Country Status (3)

Country Link
JP (1) JP5811265B2 (en)
CN (1) CN104081299B (en)
WO (1) WO2013128603A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6573749B1 (en) * 2018-08-30 2019-09-11 三菱電機株式会社 Control device, control method and program
WO2020070873A1 (en) * 2018-10-05 2020-04-09 三菱電機株式会社 Cpu unit, programmable logic controller, method, program, and engineering tool

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180086490A (en) * 2016-01-07 2018-07-31 미쓰비시덴키 가부시키가이샤 Programmable controller and synchronization control program
JP6766917B1 (en) * 2019-04-25 2020-10-14 オムロン株式会社 Control system and control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134720A (en) * 1991-11-11 1993-06-01 Murata Mach Ltd Clock device for programable controller
JPH07295803A (en) * 1994-04-25 1995-11-10 Internatl Business Mach Corp <Ibm> Method and equipment to distribute software object
JPH08194748A (en) * 1995-01-17 1996-07-30 Hitachi Ltd Software trial management system
JP2001100855A (en) * 1999-07-27 2001-04-13 Lucent Technol Inc Method for monitoring use of execution time for demonstration evaluation software for demonstration

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765000A (en) * 1994-12-29 1998-06-09 Siemens Energy & Automation, Inc. Dynamic user interrupt scheme in a programmable logic controller
JP3694987B2 (en) * 1996-06-25 2005-09-14 石川島播磨重工業株式会社 Triple fault tolerant system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134720A (en) * 1991-11-11 1993-06-01 Murata Mach Ltd Clock device for programable controller
JPH07295803A (en) * 1994-04-25 1995-11-10 Internatl Business Mach Corp <Ibm> Method and equipment to distribute software object
JPH08194748A (en) * 1995-01-17 1996-07-30 Hitachi Ltd Software trial management system
JP2001100855A (en) * 1999-07-27 2001-04-13 Lucent Technol Inc Method for monitoring use of execution time for demonstration evaluation software for demonstration

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6573749B1 (en) * 2018-08-30 2019-09-11 三菱電機株式会社 Control device, control method and program
WO2020044483A1 (en) * 2018-08-30 2020-03-05 三菱電機株式会社 Control device, control method, and program
WO2020070873A1 (en) * 2018-10-05 2020-04-09 三菱電機株式会社 Cpu unit, programmable logic controller, method, program, and engineering tool

Also Published As

Publication number Publication date
JP5811265B2 (en) 2015-11-11
CN104081299B (en) 2016-08-17
CN104081299A (en) 2014-10-01
JPWO2013128603A1 (en) 2015-07-30

Similar Documents

Publication Publication Date Title
US11119905B2 (en) System and method for managing electronic assets
US9208459B2 (en) System and method for performing serialization of devices
WO2009055040A1 (en) Dynamic, secure software tagging for software asset management with respect to deployment, configuration, and usage
US9536060B2 (en) Network information system with license registration and method of operation thereof
JP5811265B2 (en) Programmable controller, programmable controller system, and system for providing programmable controller
CN102419729B (en) Parallel test execution
US9721240B2 (en) Software license serving in a massively parallel processing environment
CN101479716A (en) Independent computation environment and provisioning of computing device functionality
WO2009089054A1 (en) Limited functionality mode for secure, remote, decoupled computer ownership
TWI261748B (en) Policy-based response to system errors occurring during OS runtime
US20190095593A1 (en) License information based on baseboard management controller
CN101933024A (en) Option management system, option management method, and recording medium for digital equipment
CN102271054B (en) For bookmark and the performance histories of network software deployment evaluation
JPWO2015011896A1 (en) Function setting method
US9009535B2 (en) Anomaly detection at the level of run time data structures
JP2008084275A (en) Device and method for monitoring alteration of software
US8074121B2 (en) Automated information technology error and service request correlation
JP4678217B2 (en) Method and apparatus for managing numerical control apparatus
JP2008123322A (en) Device and tampering detection system
JP2017004293A (en) Security control device, electronic apparatus, security control method, and security control program
JP2009529722A (en) Apparatus, method and computer program product for generating tracking data
JP5863332B2 (en) Information processing apparatus and program
JP2002222021A (en) License managing method for software and storage medium
TWI405071B (en) System and method for recording consumed time
WO2020235172A1 (en) Control device, data disabling program and control system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12870265

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014501903

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12870265

Country of ref document: EP

Kind code of ref document: A1