JP6573749B1 - 制御装置、制御方法及びプログラム - Google Patents

制御装置、制御方法及びプログラム Download PDF

Info

Publication number
JP6573749B1
JP6573749B1 JP2019526331A JP2019526331A JP6573749B1 JP 6573749 B1 JP6573749 B1 JP 6573749B1 JP 2019526331 A JP2019526331 A JP 2019526331A JP 2019526331 A JP2019526331 A JP 2019526331A JP 6573749 B1 JP6573749 B1 JP 6573749B1
Authority
JP
Japan
Prior art keywords
execution
control
control program
information
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019526331A
Other languages
English (en)
Other versions
JPWO2020044483A1 (ja
Inventor
新 谷出
新 谷出
香怡 陳
香怡 陳
知洋 古川
知洋 古川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6573749B1 publication Critical patent/JP6573749B1/ja
Publication of JPWO2020044483A1 publication Critical patent/JPWO2020044483A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Programmable Controllers (AREA)
  • Storage Device Security (AREA)

Abstract

制御装置(10)は、機器(40)を制御し、取得部(110)と実行スイッチ部(130)と実行部(140)とを備える。取得部(110)は、機器(40)を制御するための制御プログラム(212)の実行が許可される許可時間の長さを示す許可情報(221)を取得する。実行スイッチ部(130)は、指示を入力するための入力部材を有し、実行スイッチ部(130)には、この入力部材の位置に対応して制御プログラム(212)の実行の指示及び停止の指示が入力される。実行部(140)は、実行スイッチ部(130)に実行の指示が入力された場合に制御プログラム(212)を実行し、実行スイッチ部(130)に停止の指示が入力された場合に制御プログラム(212)の実行を停止して、実行スイッチ部(130)に実行の指示が入力されている実行時間の長さが許可時間の長さを超える場合に、制御プログラム(212)の実行を制限する。

Description

本発明は、制御装置、制御方法及びプログラムに関する。
近年、コンピュータにおいて実行されるプログラムは、種々の手法で提供されている。例えば、店頭でのパッケージ販売及び通信ネットワークを介したダウンロード販売によりプログラムが販売される。しかしながら、購入対象のプログラムの使用頻度が低い場合には、これらの手法によりプログラムを購入すると、ユーザの費用負担が大きくなってしまう。そこで、プログラムの使用権を時間単位で販売する手法が提案されている(例えば、特許文献1を参照)。
特許文献1には、サーバからネットワークを介して接続された端末に対しソフトウェアの使用権を販売する手法について記載されている。この手法では、サーバから送信される実施許諾データに基づいて、端末においてソフトウェアが一定時間だけ使用可能になる。
特開2001−306735号公報
工場に代表される施設では、生産システム、加工システム及び検査システムを含む種々の制御システムが形成される。このような制御システムは、一般的に、センサ装置及びアクチュエータに代表される機器と、制御プログラムを実行することで当該機器を制御する制御装置と、を有する。ここで、制御システムのユーザには、制御装置によって実行される種々の制御プログラムを実際に購入する前に、一時的に制御プログラムを体験したいという要望がある。
そこで、特許文献1の手法を利用して、制御プログラムの試用時間を定めることが考えられる。しかしながら、特許文献1の手法では、ソフトウェアが起動してから終了するまでの時間をカウントしている。このため、起動しているにも関わらず機器を実際に制御することのない処理がソフトウェアに含まれるような場合には、制御装置が機器を制御した際の使用感を得ることなく予め定められた試用時間が終了してしまうおそれがある。
本発明は、上記の事情に鑑みてなされたものであり、制御装置に実行させる制御プログラムを試用する際の使用感を確実に得ることを目的とする。
上記目的を達成するため、本発明の制御装置は、機器を制御する制御装置であって、機器を制御するための制御プログラムの実行が許可される許可時間の長さを示す許可情報を取得する取得手段と、制御プログラムの実行の指示及び停止の指示が入力されるスイッチと、スイッチに実行の指示が入力された場合に制御プログラムを実行して機器を制御し、スイッチに停止の指示が入力された場合に制御プログラムの実行を停止して機器の制御を中止する実行手段と、を備え、実行手段は、スイッチに実行の指示が入力されている実行時間の長さが許可時間の長さを超える場合に、制御プログラムの実行を制限する。
本発明によれば、制御装置は、制御プログラムの実行の指示及び停止の指示が入力されるスイッチと、スイッチに実行の指示が入力された場合に制御プログラムを実行して機器を制御し、スイッチに停止の指示が入力された場合に制御プログラムの実行を停止して機器の制御を中止する実行手段と、を備え、実行手段は、スイッチに実行の指示が入力されている実行時間の長さが許可時間の長さを超える場合に、制御プログラムの実行を制限する。このため、実行時間が許可時間を超えるまでは、制御プログラムの実行により機器が制御される。したがって、制御装置に実行させる制御プログラムの使用感を確実に得ることができる。
本発明の実施の形態1に係る制御システムの構成を示すブロック図 実施の形態1に係る制御装置及び端末のハードウェア構成を示す図 実施の形態1に係る制御装置の正面図 実施の形態1に係る入力部材の位置を変更した例を示す図 実施の形態1に係る制御装置の機能的な構成を示す図 実施の形態1に係るコードの暗号化及び復号について説明するための図 実施の形態1に係る制御処理を示すフローチャート 実施の形態1に係る実行処理を示すフローチャート 実施の形態1に係る認証処理を示すフローチャート 実施の形態1に係るカウント処理を示すフローチャート 実施の形態1に係る機器制御処理を示すフローチャート 実施の形態1に係る権限レベルについて説明するための第1の図 実施の形態1に係る権限レベルについて説明するための第2の図 実施の形態1に係る制御プログラムを制限する例を示すラダー図 実施の形態1に係る許可時間の変化の一例を示す図 実施の形態2に係る制御システムの構成を示す図 実施の形態2に係る制御装置の機能的な構成を示す図 実施の形態2に係る認証データについて説明するための図 実施の形態2に係る制御処理を示すフローチャート 実施の形態2に係る認証処理を示すフローチャート 実施の形態3に係る制御システムの構成を示す図 実施の形態3に係る制御装置の機能的な構成を示す図 実施の形態3に係る端末に表示される操作画面の一例を示す図 変形例に係る制御装置の正面図 変形例に係る制御システムの構成を示す図
以下、本発明の実施の形態に係る制御システム100について、図面を参照しつつ詳細に説明する。
実施の形態1.
本実施の形態に係る制御システム100は、工場に設置されるFA(Factory Automation)システムであって、製品を生産する生産システムに相当する。この制御システム100は、製造ラインに流れるワークに対して加工、監視及び検査に代表される種々の処理を施す。この処理は、プログラム21が制御装置10によって実行されることで実現される。
制御システム100は、図1に示されるように、プログラム21を実行する制御装置10と、プログラム21及びプログラム21を一定期間に限って体験するためのコード22が記録された記録媒体20と、記録媒体20から読み出したデータを制御装置10に書き込む端末30と、通信路50を介して制御装置10に接続される機器40と、を有する。
記録媒体20は、例えば、CD−ROM(Compact Disc Read−Only Memory)、DVD(Digital Versatile Disc)、又はUSB(Universal Serial Bus)フラッシュドライブである。記録媒体20は、制御装置10を稼働させるための複数のプログラム21と、プログラム21の実行時間を限定するためのコード22と、が記録された状態で提供される。プログラム21はそれぞれ、例えば、ポカヨケのアプリケーションプログラム、又は、電動ドライバのアプリケーションプログラムである。
記録媒体20は、制御装置10とともにパッケージ200を構成し、制御装置10に付属する。パッケージ200は、制御装置10を使用するユーザU1に提供される製品パッケージである。この提供の形態は、例えば、販売、レンタル、又はリースであるが、これらに限定されず、他の形態で提供されてもよい。
端末30は、産業用コンピュータ又は汎用コンピュータである。ユーザU1は、記録媒体20のデータを端末30で読み出して、端末30を操作することにより、複数のプログラム21のうち試用するプログラム21とコード22とを制御装置10に書き込む。端末30と制御装置10とは、USBケーブル、LAN(Local Area Network)又は他の通信線を介して接続される。
機器40は、製造ラインに設置されたセンサ装置、アクチュエータ又はロボットに代表される機器である。例えば、センサ装置である機器40の検出値に応じて、ロボットである機器40の動作が制御装置10によって制御される。ただし、制御装置10による制御の対象は、アクチュエータ又はロボットに限定されない。機器40がいずれもセンサ装置である場合であっても、制御装置10は、機器40のセンシングに関するパラメータを設定することで機器40を制御してもよい。
通信路50は、制御装置10と機器40とを接続することで互いに通信可能とする。通信路50は、工場内に設置された通信線によって実現される産業用の制御ネットワークである。ただし、通信路50は、LANに代表される情報ネットワークであってもよい。また、通信路50は、専用線であってもよい。
制御装置10は、パッケージ200の一部として提供されて工場に設置されるPLC(Programmable Logic Controller、プログラマブルロジックコントローラ)である。制御装置10は、機器40を制御する。詳細には、制御装置10は、機器40を利用して製造ラインを稼働させるための制御処理を実行する。この制御処理は、パッケージ200の一部として提供されるコード22を利用することで、一定期間に限ってプログラム21によって実行される。
続いて、制御装置10及び端末30のハードウェア構成について説明する。制御装置10及び端末30はそれぞれ、図2に示されるように、プロセッサ61、主記憶部62、補助記憶部63、クロック部64、入力部65、出力部66、及び通信部67を有する。主記憶部62、補助記憶部63、クロック部64、入力部65、出力部66及び通信部67はいずれも、内部バス68を介してプロセッサ61に接続される。
プロセッサ61は、CPU(Central Processing Unit)又はMPU(Micro Processing Unit)を含む。プロセッサ61は、補助記憶部63に記憶されるプログラム69を実行することにより、制御装置10及び端末30の種々の機能を実現して、後述の処理を実行する。
主記憶部62は、RAM(Random Access Memory)を含む。主記憶部62には、補助記憶部63からプログラム69がロードされる。そして、主記憶部62は、プロセッサ61の作業領域として用いられる。
補助記憶部63は、EEPROM(Electrically Erasable Programmable Read-Only Memory)に代表される不揮発性メモリを含む。補助記憶部63は、プログラム69の他に、プロセッサ61の処理に用いられる種々のデータを記憶する。補助記憶部63は、プロセッサ61の指示に従って、プロセッサ61によって利用されるデータをプロセッサ61に供給し、プロセッサ61から供給されたデータを記憶する。なお、図2では、プログラム69として1つのブロックが代表的に示されているが、補助記憶部63は複数のプログラム69を記憶してもよい。また、制御装置10の補助記憶部63に記憶されるプログラム69は、図1のプログラム21に相当する。
クロック部64は、水晶振動子及び発振回路に代表される素子を含む。クロック部64は、クロック信号をプロセッサ61に提供する。クロック信号は、時間を測定するために利用される。
入力部65は、スイッチ、入力キー及びポインティングデバイスに代表される入力デバイスを含む。入力部65は、ユーザU1によって入力された情報を取得して、取得した情報をプロセッサ61に通知する。
出力部66は、LED(Light Emitting Diode)、LCD(Liquid Crystal Display)及びスピーカに代表される出力デバイスを含む。出力部66は、プロセッサ61の指示に従って、種々の情報をユーザU1に提示する。
通信部67は、外部の装置と通信するための通信インタフェース回路を含む。通信部67は、外部から信号を受信して、この信号により示されるデータをプロセッサ61へ出力する。また、通信部67は、プロセッサ61から出力されたデータを示す信号を外部の装置へ送信する。
図3には、制御装置10の正面図が簡略的に示されている。図3に示されるように、制御装置10は、制御装置10の状態を示す複数のLED11と、制御装置10の電源を投入し又は切断するための電源スイッチ12と、制御装置10に書き込まれたプログラム21を実行させ又は停止させるための実行スイッチ13と、端末30を含む外部装置に接続するための端子14と、通信路50に接続するための端子15と、を有する。
LED11は、出力部66に対応し、電源スイッチ12及び実行スイッチ13は、入力部65に対応する。電源スイッチ12及び実行スイッチ13は、スライドスイッチである。電源スイッチ12は、電源の投入を指示するためのON状態と、電源の切断を指示するためのOFF状態と、のいずれか一方をユーザU1が選択するために用いられる。実行スイッチ13は、プログラム21の実行を指示するためのRUN状態と、停止を指示するためのSTOP状態と、のいずれか一方をユーザU1が選択するために用いられる。
また、実行スイッチ13は、指示を入力するための入力部材131を有し、実行スイッチ13には、この入力部材131の位置に対応して制御プログラムの実行の指示及び停止の指示が入力される。入力部材131は、外力に応じて制御装置10の筐体に対して移動する突起部又は摩擦部を有する。ユーザU1は、通常、この突起部又は摩擦部を指で操作することにより入力部材131を移動させて、実行スイッチ13の状態を変化させる。図3には、実行スイッチ13に実行の指示が入力される状態が示され、図4には、実行スイッチ13に停止の指示が入力される状態が示されている。なお、電源スイッチ12及び実行スイッチ13は、スライドスイッチに限定されず、トグルスイッチ、押しボタンスイッチ、又は他のスイッチであってもよい。端子14,15は、通信部67に対応する。
制御装置10は、上述のハードウェア構成が協働することにより、種々の機能を発揮する。制御装置10は、図5に示されるように、その機能として、端末30からデータを取得する取得部110と、電源の投入又は切断を選択するための電源スイッチ部120と、プログラム21の実行又は停止を選択するための実行スイッチ部130と、プログラム21を実行する実行部140と、機器40と通信する通信部150と、プログラム21が実行されている時間を測定する測定部160と、種々のデータを記憶する記憶部170と、を有する。
取得部110は、主としてプロセッサ61及び通信部67の協働によって実現され、端子14に対応する。取得部110は、端末30によって記録媒体20から読み出されたプログラム21及びコード22を端末30から取得する。取得部110によって取得されたプログラム21及びコード22は、記憶部170に格納される。取得部110は、制御装置10の構成のうち、後述の許可情報221を取得する取得手段の一例である。
電源スイッチ部120は、主として入力部65によって実現され、電源スイッチ12に対応する。電源スイッチ部120は、電源の投入の指示及び切断の指示をユーザU1が切り替えて入力するために用いられる。電源スイッチ部120により入力された指示は、実行部140に通知される。
実行スイッチ部130は、主として入力部65によって実現され、実行スイッチ13に対応する。実行スイッチ部130は、プログラム21の実行の指示及び停止の指示をユーザU1が切り替えて入力するために用いられる。実行スイッチ部130により入力された指示は、実行部140に通知される。実行スイッチ部130は、制御装置10の構成のうち、後述の制御プログラム212の実行及び停止の指示が入力されるスイッチの一例である。
実行部140は、主としてプロセッサ61及び主記憶部62の協働により実現される。実行部140は、記憶部170からプログラム21を読み出して実行する。詳細には、実行部140は、実行スイッチ部130により実行の指示が入力された場合にプログラム21を実行し、実行スイッチ部130により停止の指示が入力された場合にプログラム21の実行を停止する。また、実行部140は、プログラム21を実行した実行時間が、当該実行が許可される時間としてコード22により規定された許可時間を超える場合に、プログラム21の実行を制限する。実行部140は、制御装置10の構成のうち、プログラム21を実行し又は停止する実行手段の一例である。
通信部150は、主として通信部67によって実現され、端子15に対応する。通信部150は、センサ装置である機器40からセンシング結果を示す信号を受信して、センシング結果を実行部140に通知する。また、通信部150は、アクチュエータ又はロボットである機器40に対する制御命令を実行部140から取得して、この制御命令を示す信号を制御対象の機器40に送信する。
測定部160は、主としてプロセッサ61及びクロック部64の協働により実現される。測定部160は、実行部140によってプログラム21が実行されている時間を、実行部140からの指示に従って測定する。測定部160は、測定結果を実行部140に通知する。
記憶部170は、主として補助記憶部63によって実現される。記憶部170には、プログラム21及びコード22が格納される。プログラム21は、制御プログラム212を実行する前処理としての認証処理を実行するための認証プログラム211と、機器40を制御するための制御プログラム212と、を含む。記憶部170は、制御装置10の構成のうち、制御プログラム212の実行が許可される許可時間の長さを記憶する許可時間記憶手段、及び、制御装置10に関する装置情報173を記憶する装置情報記憶手段の一例である。
コード22は、認証処理で用いられる情報が暗号化されたデータである。詳細には、コード22は、図6に示されるように、制御プログラム212の実行が許可される許可時間を示す許可情報221と、プログラム21に関するプログラム情報172と、制御装置10に関する装置情報173と、制御プログラムを実行する権限のレベルを示す権限情報224と、を合わせて公開鍵174で予め暗号化されたデータである。
許可情報221は、例えば、時間単位、日単位、又は月単位で規定された許可時間を示す。プログラム情報172は、プログラム21、認証プログラム211又は制御プログラム212を識別するための情報であってもよいし、これらのプログラムに固有の情報であってもよいし、これらのプログラムのバージョンに代表される種別を示す情報であってもよい。また、プログラム情報172は、プログラム21を含むパッケージ200に関する情報であってもよい。
装置情報173は、シリアル番号に代表される、制御装置10を識別するための情報又は制御装置10に固有の情報であってもよいし、制御装置10の機種を示す情報であってもよい。権限情報224は、制御プログラム212を使用する権限のレベルを示す。権限のレベルの詳細については、後述する。
図6に示されるように、コード22は、実行部140によって、予め記憶部170に格納された秘密鍵171を用いて復号される。1つのパッケージ200に対応する秘密鍵で他のパッケージ200に含まれるコード22を無制限に復号されることを防ぐために、公開鍵及び秘密鍵は、パッケージ200毎に異なることが望ましい。そして、パッケージ200毎に異なる秘密鍵が制御装置10の記憶部170に格納された状態で、制御装置10及びコード22が記録された記録媒体20を含むパッケージ200がユーザU1に提供される。このため、このコード22は、他の制御装置10によって復号されることがない。
また、コード22が復号された結果、許可情報221、第1復号情報222、第2復号情報223、及び権限情報224が生成される。コード22は、いわゆるライセンスキーに相当する。
図5に戻り、記憶部170は、予め格納された秘密鍵171と、この秘密鍵171でコード22を展開することで生成される許可情報221、第1復号情報222、第2復号情報223、及び権限情報224と、を記憶する。許可情報221は、プログラム21が実行される度に、許可時間の残り時間を示す情報に更新される。
さらに、記憶部170は、プログラム情報172と、装置情報173とを記憶する。プログラム情報172は、記憶部170に格納されたプログラム21から実行部140によって生成されてもよいし、予め記憶部170に格納されていてもよい。装置情報173は、予め記憶部170に格納される。
ここで、図6に示されるようにコード22から情報が復号された場合において、通常は、第1復号情報222はプログラム情報172に等しく、第2復号情報223は装置情報173に等しい。ただし、秘密鍵171及び記録媒体20が流出してこの記録媒体20に記録されたコード22が他の制御装置10で復号された場合には、第1復号情報222及び第2復号情報223が、他の制御装置10に記憶されるプログラム情報172及び装置情報173に等しくなるとは限らない。
例えば、パッケージ200を構成する制御装置10に、このパッケージ200のプログラム21に対応するプログラム情報172、及び制御装置10固有の装置情報173が予め格納された状態で、パッケージ200が提供される場合を想定する。この場合において、プログラム情報172は、パッケージ200として提供されていない他の制御装置10には格納されていないため、流出したコード22を他の制御装置10で復号して得る第2復号情報223は、他の制御装置10のプログラム情報172と一致しない。さらに、装置情報173は、制御装置10に固有の情報であるため、流出したコード22を他の制御装置10で復号して得る第2復号情報223と、他の制御装置10に固有の装置情報173とは、一致しない。したがって、第1復号情報222及び第2復号情報223は、プログラム21の実行を制御装置10に限定するために利用される。なお、装置情報173が制御装置10の機種を示す情報である場合には、この装置情報173は、プログラム21を実行する装置の機種を限定するために利用される。つまり、装置情報173が、制御装置10の属性を示す情報である場合には、この装置情報173は、プログラム21を実行する装置の属性を限定するために利用される。
続いて、制御装置10によって実行される制御処理について、図7〜15を用いて説明する。図7に示される制御処理は、プログラム21を実行するための手順を示している。
制御処理では、ユーザU1が、提供されたパッケージ200を取得する(ステップS1)。ユーザU1は、パッケージ200に含まれる制御装置10を端末30及び通信路50に接続し、端末30のドライブ又は端子に記録媒体20を挿入する。
次に、ユーザU1が、制御装置10の電源スイッチ12をON状態に設定し(ステップS2)、端末30からプログラム21及びコード22を制御装置10に書き込む(ステップS3)。具体的には、ユーザU1は、パッケージ200に含まれる複数のプログラム21から、試用することを希望するプログラム21を選択して、選択したプログラム21及びコード22を、端末30のプログラミングツールを利用して制御装置10にプログラミングする。これにより、プログラム21及びコード22は、取得部110によって取得され、記憶部170に書き込まれる。なお、ステップS3では、ユーザU1は、制御プログラム212の試用期間を追加するための新たなコード22のみを制御装置10に書き込んでもよい。
次に、ユーザU1は、制御装置10の電源をリセットする(ステップS4)。具体的には、ユーザU1は、制御装置10の電源を一旦切断してから再度投入する。これにより、ステップS3で書き込まれたプログラム21及びコード22が利用可能な状態になる。
次に、ユーザU1は、実行スイッチ13を実行状態に設定する(ステップS5)。これにより、プログラム21が起動し、実行処理が実行されてから(ステップS6)、制御処理が終了する。実行処理は、実行部140がプログラム21を実行する処理である。この実行処理では、図8に示されるように、認証プログラム211によって実行される認証処理と(ステップS10)、制御プログラム212によって実行される機器制御処理と(ステップS20)が順に実行される。その後、実行処理が終了する。以下では、認証処理及び機器制御処理について、順に説明する。
認証処理は、制御プログラム212を実行することの正当性の有無を判定する処理である。認証処理では、図9に示されるように、取得部110が、ステップS3で書き込まれたコード22を秘密鍵171で復号することが可能か否かを判定する(ステップS101)。
復号可能でないと判定された場合(ステップS101;No)、実行部140は、エラーを出力して(ステップS102)、機器制御処理を実行することなく実行処理を終了する。この場合には、制御プログラム212の実行が制限される。一方、復号可能と判定した場合(ステップS101;Yes)、取得部110は、コード22を復号して情報を生成する(ステップS103)。
次に、取得部110は、生成した情報が、正規ライセンスであるか否かを判定する(ステップS104)。正規ライセンスは、期間を限定することなく制御プログラム212を利用可能であることを証明するデータである。正規ライセンスは、例えば、図6の上段に示される4つの情報のうちプログラム情報172及び装置情報173に相当するデータである。図1,6では、試用期間が設定されたコード22の例を示したが、正規ライセンスから生成されたコード22が、記録媒体20に記録される場合がある。この場合には、プログラム情報172及び装置情報173を暗号化したコード22を秘密鍵171で復号することで第1復号情報222及び第2復号情報223を得て、第1復号情報222がプログラム情報172に一致し、かつ第2復号情報223が装置情報173に一致したときに、生成した情報が正規ライセンスであると判定される。
生成した情報が正規ライセンスであると判定された場合(ステップS104;Yes)、実行部140は、認証された正規ライセンスのコード22の履歴に今回のコード22を登録してから認証処理を終了して、図8の実行処理に戻り、機器制御処理を実行する。一方、生成した情報が正規ライセンスではないと判定した場合(ステップS104;No)、取得部110は、復号により生成された許可情報221、第1復号情報222、第2復号情報223、及び権限情報224を取得する(ステップS105)。
次に、実行部140は、ステップS103で復号されたコード22について、過去に認証されたコード22であるか否かを判定する(ステップS106)。具体的には、実行部140は、過去に認証された試用期間付きのコード22の履歴に、今回の認証処理の対象とされるコード22が含まれているかを判定する。図1に示されるように、パッケージ200は、単一のコード22を含むが、複数のコード22を含んでもよい。また、プログラム21の実行時間が上限である許可時間に達した場合又は達することが見込まれる場合において、ユーザU1が、新たなコード22の提供をパッケージ200の提供者に求めて制御プログラム212の試用期間を延長してもよい。このような場合には、複数のコード22が利用される。そのため、制御装置10は、ステップS106の判定により、試用期間付きのコード22を重複して利用することを回避する。
過去に認証されたコード22であると判定した場合(ステップS106;Yes)実行部140は、処理をステップS111へ移行する。一方、過去に認証されたコード22でないと判定した場合(ステップS106;No)、実行部140は、ステップS105で取得した第1復号情報222が記憶部170に格納されているプログラム情報172と異なるか否かを判定する(ステップS107)。ステップS106の判定が否定されるのは、例えば、購入したパッケージ200に含まれるプログラム21を初めて実行した場合、及び、制御プログラム212の試用期間を延長するためにユーザU1が新たなコード22を制御装置10に書き込んでからプログラム21が実行される場合である。
第1復号情報222がプログラム情報172と異なると判定した場合(ステップS107;Yes)、実行部140は、エラーを出力して(ステップS102)、機器制御処理を実行することなく実行処理を終了する。この場合には、制御プログラム212の実行が制限される。一方、第1復号情報222がプログラム情報172と異ならないと判定した場合(ステップS107;No)、実行部140は、ステップS105で取得した第2復号情報223が記憶部170に格納されている装置情報173と異なるか否かを判定する(ステップS108)。
第2復号情報223が装置情報173と異なると判定した場合(ステップS108;Yes)、実行部140は、エラーを出力して(ステップS102)、機器制御処理を実行することなく実行処理を終了する。この場合には、制御プログラム212の実行が制限される。
一方、第2復号情報223が装置情報173と異ならないと判定した場合(ステップS108;No)、実行部140は、ステップS105で取得した許可情報221により示される許可時間を、既に認証処理を終えたコード22により示される許可時間の残り時間に加算する(ステップS109)。具体的には、実行部140は、記憶部170に格納されている許可情報221を更新して、許可時間を加算する。ただし、記憶部170に許可情報221が格納されていない状態で認証処理が初めて実行された場合には、実行部140は、ステップS105で取得した許可情報221をそのまま記憶部170に格納する。また、既に記憶部170に格納されている許可情報221により示される許可時間の長さがゼロであれば、実行部140は、ステップS105で取得した許可情報221を記憶部170に書き込んで、許可情報221を上書きしてもよい。
次に、実行部140は、コード22を登録する(ステップS110)。具体的には、実行部140は、ステップS105で取得した第1復号情報222、第2復号情報223及び権限情報224を記憶部170に格納し、ステップS103で復号したコード22を、既に認証された試用期間付きのコード22の履歴に追加する。
次に、実行部140は、カウント処理を開始する(ステップS111)。カウント処理は、制御プログラム212の実行時間を測定する処理であって、実行部140及び測定部160によって実行される。その後、実行部140による処理は、図8に示される実行処理に戻り、認証処理に続いて機器制御処理が実行される。なお、カウント処理は、機器制御処理とは並列に実行される。このカウント処理について、図10を用いて説明する。
カウント処理では、実行部140が、測定部160によって測定された実行時間が許可情報221により示される許可時間を超えるか否かを判定する(ステップS31)。実行時間が許可時間を超えないと判定された場合(ステップS31;No)、測定部160は、一定時間待機する(ステップS32)。一定時間は、例えば1秒間、1分間、1時間、又は1日間である。
次に、測定部160は、実行時間を示すカウント値を更新する(ステップS33)。具体的には、測定部160は、ステップS32の待機時間に相当する値をカウント値に加算して、測定結果として得る実行時間を増加させる。その後、ステップS31以降の処理が繰り返される。なお、カウント処理が開始した際のカウント値の初期値はゼロに設定される。
ステップS31にて実行時間が許可時間を超えると判定された場合(ステップS31;Yes)、実行部140は、図8に示される実行処理を停止する(ステップS34)。これにより、制御プログラム212の実行が制限される。
次に、実行部140は、実行時間が許可時間を超えたことを示すエラーを出力して(ステップS35)、カウント処理を終了する。
続いて、図8に示される機器制御処理について、図11を用いて説明する。機器制御処理では、実行部140は、権限情報224により示される権限レベルに従って制御プログラムを実行することにより、機器40を制御する(ステップS21)。
権限レベルは、図12に例示されるように、「高」、「中」及び「低」の3つのレベルのいずれかであって、権限レベルに応じて、想定されるユーザU1及び権限の内容が決定される。例えば、管理者であるユーザU1には、権限レベルが「高」に設定されたコード22を含むパッケージ200が提供され、オペレータであるユーザU1には、権限レベルが「低」に設定されたコード22を含むパッケージ200が提供される。
また、権限の内容は、権限レベルに応じた制御プログラムの機能の制限を意味する。図13には、このような機能の制限が例示されている。例えば、機器40の動作モードを変更することは、権限レベルが「高」又は「中」であれば可能であるが、権限レベルが「低」であれば不可能である。
図14には、制御プログラム212の機能を限定するためのラダー図が模式的に示されている。図14に示される例では、権限レベル「高」、「中」及び「低」それぞれの値が「3」、「2」及び「1」であって、権限レベルの値が「1」以下であればプログラムモジュールM1,M2,M3のうち、プログラムモジュールM1,M2を実行することができず、プログラムモジュールM3のみを実行することができる。
図11に戻り、ステップS21に続いて、実行部140は、終了指示があるか否かを判定する(ステップS22)。具体的には、実行部140は、実行スイッチ部130により停止の指示が入力されたか否かを判定する。停止指示がないと判定した場合(ステップS22;No)、実行部140は、ステップS21以降の処理を繰り返す。一方、停止指示があると判定した場合(ステップS22;Yes)、実行部140は、許可時間から実行時間を減じることで許可情報221を更新する(ステップS23)。具体的には、実行部140は、記憶部170から読み出した許可情報221により示される許可時間から、測定部160から最後に通知された測定結果である実行時間を減算して、許可時間の残り時間を算出する。そして、実行部140は、記憶部170に記憶される許可情報221を更新する。これにより、許可情報221は、許可時間の残り時間を示す情報に更新される。
次に、実行部140は、カウント処理を終了させる(ステップS24)。その後、制御装置10による処理は、図11の機器制御処理から図8の実行処理に戻り、実行処理が終了する。
実行処理及びカウント処理が以上のように実行されることで変化する許可時間の例が、図15に示されている。図15に示されるように、一定の長さの許可時間があるときに、ステップS41にて制御プログラム212が実行されて停止すると、実行時間の分だけ許可時間が短くなる。そして、ステップS42にて制御プログラム212が再度実行されて停止すると、許可時間がさらに短くなる。
ここで、ステップS43にて新たなコード22により許可時間を追加すると、このコード22により規定される時間の長さだけ許可時間が長くなる。そして、ステップS44にて制御プログラム212を実行し続けると、実行時間が長くなり、許可時間がゼロになった時点で制御プログラム212が終了する。その後、ステップS45にてさらに新たなコード22による許可時間を追加すると、さらに制御プログラム212を実行することが可能になる。
以上、説明したように、実行部140は、実行スイッチ部130に実行の指示が入力された場合に制御プログラム212を実行して機器40を制御し、実行スイッチ部130に停止の指示が入力された場合に制御プログラム212の実行を停止して機器40の制御を中止する。また、実行部140は、実行スイッチ部130に実行の指示が入力されている実行時間の長さが許可時間の長さを超える場合に、制御プログラム212の実行を制限する。このため、実行時間が許可時間を超えるまでは、制御プログラム212の実行により機器40が制御される。したがって、制御装置10に実行させる制御プログラム212の使用感を確実に得ることができる。
また、取得部110は、暗号化された複数の許可情報221を取得して、実行部140は、実行時間の長さが、複数の許可情報221により示される許可時間の長さの総和を超える場合に、制御プログラム212の実行を制限した。これにより、ユーザU1は、制御プログラム212の試用が不十分である場合に、正規ライセンスを購入することなく、新たなコード22の提供を受ければ、引き続き制御プログラム212を試用することができる。
また、取得部110は、公開鍵174で暗号化されたコード22を取得し、コード22を秘密鍵171で復号することにより許可情報221を取得した。これにより、他の制御装置10に対してこのコード22を書き込んでも、他の制御装置10が許可情報221を得ることはできず、他の制御装置10での制御プログラム212の実行を制限することができる。
また、取得部110は、コード22を復号することにより第1復号情報222を取得し、実行部140は、第1復号情報222がプログラム情報172と異なる場合に、制御プログラム212の実行を制限した。これにより、他の制御装置10での制御プログラム212の実行を制限することができる。具体的には、他の制御装置10に提供された他のプログラム21を実行するために、制御装置10に提供されたコード22が流用されることを防ぐことができる。
また、取得部110は、コード22を復号することにより第2復号情報223を取得し、実行部140は、第2復号情報223が装置情報173と異なる場合に、制御プログラム212の実行を制限した。これにより、他の制御装置10での制御プログラム212の実行を制限することができる。
また、取得部110は、コード22を復号することにより権限情報224を取得し、実行部140は、権限情報224により示される権限レベルに従って制御プログラム212を実行した。これにより、パッケージ200の提供先に応じて制御プログラム212の機能を制限することができる。
また、許可時間は、複数の制御プログラム212のうち少なくとも1つを実行することが許可される時間である。そして、取得部110は、許可情報221と、複数のプログラム21それぞれに含まれる制御プログラム212から選択されたいずれか1つの制御プログラム212と、を取得し、実行部140は、取得部110によって取得された制御プログラム212を実行した。これにより、複数の制御プログラム212を含むパッケージ200をユーザU1に提供して、ユーザU1は、複数の制御プログラム212のうち、試用を希望する制御プログラム212を選択して試用することができる。
なお、複数のプログラム21それぞれが1つの制御プログラム212を含む場合には、コード22を生成するためのプログラム情報172は、複数のプログラム21に共通する情報であることが望ましい。また、複数のプログラム21それぞれに対応するコード22が記録媒体20に記録されてもよい。また、1つのプログラム21が複数の制御プログラム212を含んでもよい。
実施の形態2.
続いて、実施の形態2について、上述の実施の形態1との相違点を中心に説明する。なお、上記実施の形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。上記実施の形態1では、暗号化されたコード22を利用して認証処理が実行されたが、ハッシュ値を利用する形態も考えられる。以下では、ハッシュ値である認証データが提供される例について説明する。
図16に示されるように、記録媒体20には、プログラム21に加えて、認証処理に用いる認証データ22aと、許可情報221と、権限情報224と、が記録されている。そして、図17に示されるように、制御装置10の取得部110は、端末30を介して記録媒体20から認証データ22a、許可情報221及び権限情報224を取得して記憶部170に書き込む。
認証データ22aは、図18に示されるように、許可情報221、プログラム情報172、装置情報173及び権限情報224を合わせてハッシュ化することにより得るハッシュ値に相当する。図17に示されるように、記憶部170には、許可情報221、プログラム情報172、装置情報173及び権限情報224が記憶されるため、これらの情報を合わせてハッシュ化したデータと、認証データ22aとを照合することにより、認証をすることができる。
そのような認証をするために、図19に示されるように制御処理では、ステップS2に続いて、ユーザU1が端末30からプログラム21、認証データ22a、許可情報221及び権限情報224を制御装置10に書き込む(ステップS7)。なお、ステップS7では、ユーザU1は、制御プログラム212の試用期間を追加するための新たな認証データ22a及び許可情報221のみを制御装置10に書き込んでもよい。その後、ステップS4以降の手順が実施の形態1と同様に行われる。
また、認証処理では、図20に示されるように、取得部110が、認証データ22a、許可情報221及び権限情報224を取得する(ステップS121)。次に、取得部110は、認証データ22aが正規ライセンスであるか否かを判定する(ステップS104)。正規ライセンスではないと判定された場合(ステップS104;No)、実行部140は、ステップS121で取得された認証データ22aについて、過去に認証したデータであるか否かを判定する(ステップS122)。具体的には、実行部140は、過去に認証された認証データ22aの履歴に、今回の認証処理の対象とされる認証データ22aが含まれているかを判定する。
過去に認証したデータであると判定した場合(ステップS122;Yes)、実行部140は、ステップS111へ処理を移行する。一方、過去に認証したデータでないと判定した場合(ステップS122;No)、実行部140は、ステップS121で取得した許可情報221及び権限情報224と、記憶部170から読み出したプログラム情報172及び装置情報173と、をハッシュ化して生成データを生成する(ステップS123)。ハッシュ化の手法は任意であるが、例えば、MD5(Message Digest Algorithm 5)、又はSHA−2(Secure Hash Algorithm-2)に代表されるハッシュ関数を利用してもよい。
次に、実行部140は、認証データ22aが、ステップS123で生成した生成データと異なるか否かを判定する(ステップS124)。認証データ22aが生成データと異なると判定した場合(ステップS124;Yes)、実行部140は、エラーを出力して(ステップS102)、実行処理を終了する。この場合には、制御プログラム212の実行が制限される。
一方、認証データ22aが生成データと異ならないと判定した場合(ステップS124;No)、実行部140は、実施の形態1と同様のステップS109を実行する。次に、実行部140は、認証データ22aを登録する(ステップS125)。具体的には、実行部140が、ステップS121で取得されたデータを記憶部170に格納し、既に認証された認証データ22aの履歴に、ステップS121で取得した認証データ22aを追加する。その後、実行部140は、実施の形態1と同様にステップS111以降の処理を実行する。
以上、説明したように、取得部110は、認証データ22aを取得する。そして、実行部140は、許可情報221、プログラム情報172、装置情報173及び権限情報224のハッシュ化により生成データを生成し、生成データが認証データと異なる場合に、制御プログラム212の実行を制限する。これにより、他の制御装置10での制御プログラム212の実行を制限することができる。
詳細には、取得部110は、許可情報221と、制御プログラム212を認証するための認証データ22aと、を取得し、実行部140は、制御プログラム212から生成データを生成し、この生成データが認証データ22aと異なる場合に、プログラム21の実行を制限した。これにより、制御プログラム212とは異なる他の制御プログラム212が提供された他の制御装置10において、認証データ22aを流用して他の制御プログラム212が実行されることを防ぐことができる。
また、取得部110は、許可情報221と、制御装置10を認証するための認証データ22aと、を取得し実行部140は、装置情報173から生成データを生成し、この生成データが認証データ22aと異なる場合に、プログラム21の実行を制限した。これにより、制御装置10に提供された認証データ22aを、他の制御装置10に流用され、他の制御装置10に提供されたプログラム21が実行されることを防ぐことができる。
実施の形態3.
続いて、実施の形態3について、上述の実施の形態1との相違点を中心に説明する。なお、上記実施の形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。上記実施の形態1では、電源スイッチ部120及び実行スイッチ部130は、ハードウェアスイッチである電源スイッチ12及び実行スイッチ13に対応したが、このようなスイッチがソフトウェア上で実装される形態も考えられる。以下では、制御装置10を遠隔操作して、ソフトウェア上のスイッチに指示を入力する形態について説明する。
図21において、通信路50に接続される端末31は、制御装置10を遠隔操作するための装置である。なお、図21では、制御装置10は端末31と通信路50を介して接続されているが、これには限定されず、他の伝送路を介して接続されてもよい。
この端末31は、図22に示されるように、電源スイッチ部120及び実行スイッチ部130に対するユーザU1からの指示を入力する。電源スイッチ部120及び実行スイッチ部130は、プロセッサ61と通信部67との協働により実現される。
図23には、端末31に表示される操作画面の例が示されている。この画面には、制御装置10のLED11と同等の表示をするオブジェクト11aと、電源スイッチ12に対応するオブジェクト12aと、実行スイッチ13に対応するオブジェクト13aと、が表示される。ユーザU1は、この画面上でカーソル311をオブジェクト13a上に移動させてクリックすることで、実行スイッチ部130に入力される指示を切り替えることができる。
以上、説明したように、実行スイッチ部130がソフトウェアによって実現される場合にも、制御装置10は、実施の形態1と同等の効果を奏する。
また、上記実施の形態2に係る実行スイッチ部130を、本実施の形態と同様にソフトウェアによって実現してもよい。
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態によって限定されるものではない。
例えば、上記実施の形態では、実行スイッチ13は、実行の指示と停止の指示との2つのいずれか一方を選択する例について説明したが、これには限定されない。例えば、図24に示されるように、制御装置10は、プログラム21の実行の指示及び停止の指示に加えて、プログラム21をリセットする指示を切り替えて入力するための実行スイッチ13を有してもよい。
また、図25に示されるように、端末30を省略して制御システム100を構成し、制御装置10が記録媒体20からデータを直接読み出してもよい。
また、制御装置10の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
例えば、プロセッサ61によって実行されるプログラム69を、コンピュータ読み取り可能な非一時的な記録媒体に格納して配布し、そのプログラム69をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。このような記録媒体としては、例えばフレキシブルディスク、CD−ROM(Compact Disc Read−Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto−Optical Disc)が考えられる。
また、プログラム69をインターネットに代表される通信ネットワーク上のサーバ装置が有するディスク装置に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロードさせてもよい。
また、通信ネットワークを介してプログラム69を転送しながら起動実行することによっても、上述の処理を達成することができる。
さらに、プログラム69の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムを実行することによっても、上述の処理を達成することができる。
なお、上述の機能を、OS(Operating System)が分担して実現する場合又はOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロードしてもよい。
また、制御装置10の機能を実現する手段は、ソフトウェアに限られず、その一部又は全部を、回路を含む専用のハードウェアによって実現してもよい。
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
本発明は、機器を制御するための制御プログラムの実行時間を限定することに適している。
100 制御システム、 10 制御装置、 11 LED、 12 電源スイッチ、 13 実行スイッチ、 131 入力部材、 11a,12a,13a オブジェクト、 14,15 端子、 110 取得部、 120 電源スイッチ部、 130 実行スイッチ部、 140 実行部、 150 通信部、 160 測定部、 170 記憶部、 171 秘密鍵、 172 プログラム情報、 173 装置情報、 174 公開鍵、 200 パッケージ、 20 記録媒体、 21 プログラム、 211 認証プログラム、 212 制御プログラム、 22 コード、 22a 認証データ、 221 許可情報、 222 第1復号情報、 223 第2復号情報、 224 権限情報、 311 カーソル、 30,31 端末、 40 機器、 50 通信路、 61 プロセッサ、 62 主記憶部、 63 補助記憶部、 64 クロック部、 65 入力部、 66 出力部、 67 通信部、 68 内部バス、 69 プログラム、 U1 ユーザ。

Claims (11)

  1. 機器を制御する制御装置であって、
    前記機器を制御するための制御プログラムの実行が許可される許可時間の長さを示す許可情報を取得する取得手段と、
    記制御プログラムの実行の指示及び停止の指示が入力されるスイッチと、
    前記スイッチに実行の指示が入力された場合に前記制御プログラムを実行して前記機器を制御し、前記スイッチに停止の指示が入力された場合に前記制御プログラムの実行を停止して前記機器の制御を中止する実行手段と、を備え、
    前記実行手段は、前記スイッチに実行の指示が入力されている実行時間の長さが前記許可時間の長さを超える場合に、前記制御プログラムの実行を制限する、
    制御装置。
  2. 前記許可時間の長さを記憶する許可時間記憶手段、をさらに備え、
    前記取得手段は、複数の前記許可情報を取得し、
    前記許可時間記憶手段は、前記複数の許可情報により示される前記許可時間の長さの総和を記憶し、
    前記実行手段は、前記実行時間の長さが、前記許可時間の長さの総和を超える場合に、前記制御プログラムの実行を制限する、
    請求項1に記載の制御装置。
  3. 前記取得手段は、公開鍵で暗号化されたコードを取得し、前記コードを復号することにより前記許可情報を取得する、
    請求項1又は2に記載の制御装置。
  4. 前記取得手段は、前記コードを復号することにより前記許可情報と第1復号情報とを取得し、
    前記実行手段は、前記第1復号情報が前記制御プログラムに関するプログラム情報と異なる場合に、前記制御プログラムの実行を制限する、
    請求項3に記載の制御装置。
  5. 前記取得手段は、前記コードを復号することにより前記許可情報と第2復号情報とを取得し、
    前記実行手段は、前記第2復号情報が制御装置に関する装置情報と異なる場合に、前記制御プログラムの実行を制限する、
    請求項3又は4に記載の制御装置。
  6. 前記取得手段は、前記コードを復号することにより、前記許可情報と、前記制御プログラムを実行する権限のレベルを示す権限情報と、を取得し、
    前記実行手段は、前記権限情報により示されるレベルに従って前記制御プログラムを実行する、
    請求項3から5のいずれか一項に記載の制御装置。
  7. 前記取得手段は、前記許可情報と、前記制御プログラムを認証するための認証データと、を取得し、
    前記実行手段は、前記制御プログラムから生成データを生成し、該生成データが前記認証データと異なる場合に、前記制御プログラムの実行を制限する、
    請求項1から6のいずれか一項に記載の制御装置。
  8. 制御装置に関する装置情報を記憶する装置情報記憶手段、をさらに備え、
    前記取得手段は、前記許可情報と、制御装置を認証するための認証データと、を取得し、
    前記実行手段は、前記装置情報から生成データを生成し、該生成データが前記認証データと異なる場合に、前記制御プログラムの実行を制限する、
    請求項1から6のいずれか一項に記載の制御装置。
  9. 前記許可時間は、複数の前記制御プログラムのうち少なくとも1つを実行することが許可される時間であって、
    前記取得手段は、前記許可情報と、複数の前記制御プログラムから選択された一の前記制御プログラムと、を取得し、
    前記実行手段は、前記取得手段によって取得された一の前記制御プログラムを実行する、
    請求項1から8のいずれか一項に記載の制御装置。
  10. 器を制御するための制御プログラムの実行の指示及び停止の指示が入力されるスイッチに実行の指示が入力された場合に前記制御プログラムを実行して前記機器を制御するステップと、
    前記スイッチに停止の指示が入力された場合に前記制御プログラムの実行を停止して前記機器の制御を中止するステップと、
    前記スイッチに実行の指示が入力されている時間の長さが、前記制御プログラムの実行が許可される時間の長さを超える場合に、前記制御プログラムの実行を制限するステップと、
    を含む制御方法。
  11. コンピュータに、
    器を制御するための制御プログラムの実行の指示及び停止の指示が入力されるスイッチに実行の指示が入力された場合に前記制御プログラムを実行して前記機器を制御し、
    前記スイッチに停止の指示が入力された場合に前記制御プログラムの実行を停止して前記機器の制御を中止し、
    前記スイッチに実行の指示が入力されている時間の長さが、前記制御プログラムの実行が許可される時間の長さを超える場合に、前記制御プログラムの実行を制限する、
    ことを実行させるためのプログラム。
JP2019526331A 2018-08-30 2018-08-30 制御装置、制御方法及びプログラム Active JP6573749B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/032075 WO2020044483A1 (ja) 2018-08-30 2018-08-30 制御装置、制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP6573749B1 true JP6573749B1 (ja) 2019-09-11
JPWO2020044483A1 JPWO2020044483A1 (ja) 2020-09-03

Family

ID=67909623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019526331A Active JP6573749B1 (ja) 2018-08-30 2018-08-30 制御装置、制御方法及びプログラム

Country Status (3)

Country Link
JP (1) JP6573749B1 (ja)
CN (1) CN112639773A (ja)
WO (1) WO2020044483A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003076435A (ja) * 2001-09-03 2003-03-14 Tokyo Electron Ltd 処理システム及び実行制御方法
JP2008281231A (ja) * 2007-05-08 2008-11-20 Sharp Corp 電気機器、空気調和機、室外機及び室内機
JP2013171346A (ja) * 2012-02-17 2013-09-02 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
WO2013128603A1 (ja) * 2012-02-29 2013-09-06 富士電機株式会社 プログラマブルコントローラ、プログラマブルコントローラシステム、及びプログラマブルコントローラの提供システム
JP2013239036A (ja) * 2012-05-15 2013-11-28 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
WO2016209858A1 (en) * 2015-06-23 2016-12-29 Johnson & Johnson Consumer Inc. Light therapy platform universal power source and controller
JP2017207889A (ja) * 2016-05-18 2017-11-24 三菱電機株式会社 ラインを管理するシステム、ラインを管理するための作業者用の表示装置、ラインを管理するためのサーバーおよびラインを管理するための管理者用の表示装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4406794B2 (ja) * 2006-03-24 2010-02-03 京セラミタ株式会社 画像形成装置
CN101329788A (zh) * 2008-08-05 2008-12-24 王兴昆 一种授权式用电管理方法和***
TW201337630A (zh) * 2012-03-13 2013-09-16 Wistron Corp 保護軟體授權之方法及系統
CN103186729B (zh) * 2013-03-26 2016-04-06 北京深思数盾科技有限公司 利用加密锁对软件进行保护的方法及加密锁
CN104580102B (zh) * 2013-10-23 2019-03-05 北大方正集团有限公司 一种客户端程序的保护方法及服务平台
CN103648024A (zh) * 2013-12-27 2014-03-19 深圳Tcl新技术有限公司 智能终端的应用程序的运行监控方法
CN106940652A (zh) * 2017-03-22 2017-07-11 广东小天才科技有限公司 控制应用程序的方法及移动终端
CN107943671A (zh) * 2017-11-22 2018-04-20 朱秋华 设定软件使用时间的方法、装置、智能设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003076435A (ja) * 2001-09-03 2003-03-14 Tokyo Electron Ltd 処理システム及び実行制御方法
JP2008281231A (ja) * 2007-05-08 2008-11-20 Sharp Corp 電気機器、空気調和機、室外機及び室内機
JP2013171346A (ja) * 2012-02-17 2013-09-02 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
WO2013128603A1 (ja) * 2012-02-29 2013-09-06 富士電機株式会社 プログラマブルコントローラ、プログラマブルコントローラシステム、及びプログラマブルコントローラの提供システム
JP2013239036A (ja) * 2012-05-15 2013-11-28 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
WO2016209858A1 (en) * 2015-06-23 2016-12-29 Johnson & Johnson Consumer Inc. Light therapy platform universal power source and controller
JP2017207889A (ja) * 2016-05-18 2017-11-24 三菱電機株式会社 ラインを管理するシステム、ラインを管理するための作業者用の表示装置、ラインを管理するためのサーバーおよびラインを管理するための管理者用の表示装置

Also Published As

Publication number Publication date
CN112639773A (zh) 2021-04-09
WO2020044483A1 (ja) 2020-03-05
JPWO2020044483A1 (ja) 2020-09-03

Similar Documents

Publication Publication Date Title
CN107077574A (zh) 用于客户端设备的信任服务
US10664263B2 (en) Software management system, software updater, software updating method, and non-transitory computer-readable storage medium storing software update program
US9709970B2 (en) Control device, security management system, and security management method
JP2004287590A (ja) デバッグシステム、マイクロプロセッサ及びデバッガ
KR20140043809A (ko) 라이선스 관리 장치, 라이선스 관리 시스템, 라이선스 관리 방법, 및 프로그램
CN103258148B (zh) 控制***、控制装置和程序执行控制方法
JP6573749B1 (ja) 制御装置、制御方法及びプログラム
US20220156392A1 (en) Control system, security device, and method
WO2013147732A1 (en) Programmable logic controller having embedded dynamic generation of encryption keys
JP5759827B2 (ja) メモリシステム、情報処理装置、メモリ装置、およびメモリシステムの動作方法
CN115037547B (zh) 软件授权方法及***
JP6421816B2 (ja) 制御装置及び制御装置システム
EP2940621B1 (en) Apparatus, system, and method for controlling encryption and decryption with respect to a key
US20190268144A1 (en) Data processing method, control system, and control device
WO2022185583A1 (ja) 制御装置、ならびに制御装置の記憶部に保存されたデータの入出力を管理するプログラムおよび方法
JP5230710B2 (ja) 画像形成システム
JP2017004293A (ja) セキュリティ制御装置、電子機器、セキュリティ制御方法及びセキュリティ制御プログラム
JP6570801B1 (ja) Cpuユニット、プログラマブルロジックコントローラ、プログラム、及びエンジニアリングツール
JP7400215B2 (ja) 制御装置、データ不能化プログラム、および制御システム
JP2006120089A (ja) データ管理システム及びデータ管理方法
JP4433736B2 (ja) 無停電電源装置管理プログラムおよび無停電電源装置管理装置
JP6766917B1 (ja) 制御システムおよび制御方法
JP2005202663A (ja) 制御用プログラム,コンパイラおよび変換プログラム
CN115640549A (zh) Erp软件模块化离线独立授权与检测方法
CN111970124B (zh) 计算机工厂模式控制方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190515

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190515

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190515

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190702

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190813

R150 Certificate of patent or registration of utility model

Ref document number: 6573749

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250