JP6337956B2 - 制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法 - Google Patents

制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法 Download PDF

Info

Publication number
JP6337956B2
JP6337956B2 JP2016507376A JP2016507376A JP6337956B2 JP 6337956 B2 JP6337956 B2 JP 6337956B2 JP 2016507376 A JP2016507376 A JP 2016507376A JP 2016507376 A JP2016507376 A JP 2016507376A JP 6337956 B2 JP6337956 B2 JP 6337956B2
Authority
JP
Japan
Prior art keywords
data
recording medium
control
type
portable recording
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
JP2016507376A
Other languages
English (en)
Other versions
JPWO2015136965A1 (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Publication of JPWO2015136965A1 publication Critical patent/JPWO2015136965A1/ja
Application granted granted Critical
Publication of JP6337956B2 publication Critical patent/JP6337956B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Description

本発明は、制御機器へのデータの書き込みに関する。
生産工場の製造現場等に設置されるFA(ファクトリオートメーション)システムでは、当該システムの制御を司るPLC(プログラマブルロジックコントローラ)等の制御機器が利用されている。当該制御機器は、制御プログラムに基づいて演算を実行することにより、上記システムを制御する。このような制御機器における制御プログラム等のデータのダウンロードについて、従来、種々の技術が提案されている。
たとえば、特開2007−95107号公報(特許文献1)は、制御機器のユニットごとのパラメータの設定に関する技術を開示している。より具体的には、情報処理装置から制御機器へのパラメータのダウンロードに際して、情報処理装置は、パラメータ設定の際に使用した機種情報定義ファイルのバージョンと、制御機器におけるユニットのバージョンとを比較する。そして、情報処理装置は、両バージョンが一致する場合、または、ユニットのバージョンの方が新しい場合には、制御機器へのダウンロードを実行し、ユニットのバージョンの方が古い場合には制御機器へのダウンロードを禁止した上でエラーを表示する。
また、特開2007−94546号公報(特許文献2)は、制御機器に制御プログラムと当該制御プログラムの付加情報とをダウンロードさせるプログラム作成支援装置を開示している。より具体的には、プログラム作成支援装置は、制御機器に制御プログラムと付加情報とをダウンロードする際に、制御機器がメモリ容量の点から付加情報を格納できない場合には、付加情報を当該メモリ容量に収めるように加工した後で、制御機器に制御プログラムと付加情報とをダウンロードさせる。
特開2007−95107号公報 特開2007−94546号公報
ところで、制御システムでは、制御機器へのプログラムやデータのダウンロードが迅速にかつ簡易に行なわれることが求められている。これは、制御機器におけるダウンロードが、当該制御機器の量産時、および、制御機器の故障時に行なわれることにも影響を受けている。
たとえば制御機器の量産時に上記ダウンロードが行なわれる場合、量産における生産性の向上の観点から、ダウンロードは迅速に行なわれることが好ましい。また、量産時に誤ったデータ等のダウンロードを回避するために、ダウンロードは簡易に行なわれることが好ましい。
また、制御機器の故障時に上記ダウンロードが行なわれる場合、制御機器の故障による生産の停止時間を短縮するために、ダウンロードは迅速に行なわれることが好ましい。また、製造現場において熟練度の低い作業員でも間違いなくダウンロードが行なえるように、ダウンロードは簡易に行なわれることが好ましい。
しかしながら、従来の制御システムでは、制御機器におけるデータのプログラムのダウンロードを含めて、制御機器におけるデータの書き込みに関し、その作業を簡易にするという観点では検討がなされていなかった。
本発明は、かかる実情に鑑み考え出されたものであり、その目的は、制御機器におけるプログラムやデータの書き込みが迅速にかつ簡易に行なうことができるようにすることである。
ある局面に従うと、制御機器が提供される。制御機器は、可搬型記録媒体のデータを読み込むための読取装置と、制御に用いられるデータを記憶する記憶装置と、可搬型記録媒体に記録されたデータを記憶装置に書き込むためのプロセッサとを備える。可搬型記録媒体には、さらに、データの種類の組合せを特定する情報である組合せ情報が記録されている。プロセッサは、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含む場合には、可搬型記録媒体に記録されたデータを記憶装置に書き込むように構成されている。プロセッサは、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合には、可搬型記録媒体に記録されたデータを記憶装置に書き込まないように構成されている。
好ましくは、記憶装置に記憶されたデータは、制御機器の一種類または複数種類のファームェアである。可搬型記録媒体に記録されたデータは、ファームウェアによる制御に用いられる一種類または複数種類の設定データである。組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である。
好ましくは、可搬型記録媒体に記録されたデータは、制御機器の一種類または複数種類のファームウェアである。記憶装置に記憶されたデータは、ファームウェアによる制御に用いられる一種類または複数種類の設定データである。組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である。
好ましくは、制御機器は、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、報知動作を実行する報知部をさらに備える。
他の局面に従うと、制御機器と、制御機器に書き込まれるデータを可搬型記録媒体に記録するための支援装置とを備える制御システムが提供される。支援装置は、可搬型記録媒体に情報を記録するための記録装置と、記録装置の動作を制御するためのコントローラとを含む。コントローラは、記録装置に、可搬型記録媒体へ、データと、当該データの種類と組み合わされるデータの種類を特定する情報である組合せ情報とを記録させるように構成されている。制御機器は、可搬型記録媒体のデータを読み込むための読取装置と、制御機器の制御に用いられるデータを記憶する記憶装置と、可搬型記録媒体に記録されたデータを記憶装置に書き込むためのプロセッサとを含む。プロセッサは、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含む場合には、可搬型記録媒体に記録されたデータを記憶装置に書き込む。プロセッサは、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合には、可搬型記録媒体に記録されたデータを記憶装置に書き込まないように構成されている。
好ましくは、記憶装置に記憶されたデータは、制御機器における動作を制御するための一種類または複数種類のファームウェアである。可搬型記録媒体に記録されたデータは、ファームウェアによる制御に用いられる一種類または複数種類の設定データである。組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である。
好ましくは、記憶装置に記憶されたデータは、ファームウェアによる制御に用いられる一種類または複数種類の設定データである。組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である。
好ましくは、制御機器は、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、報知動作を実行する報知部をさらに含む。
さらに他の局面に従うと、可搬型記録媒体のデータを読み込むための読取装置と、制御に用いられるデータを記憶する記憶装置とを備える制御機器のプロセッサによって実行される、当該制御機器の制御方法が提供される。可搬型記録媒体には、データと、データの種類の組合せを特定する情報である組合せ情報とが記録されている。制御方法は、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含むか否かを判断するステップと、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含む場合に、可搬型記録媒体に記録されたデータを記憶装置に書き込むステップとを備える。
好ましくは、制御方法は、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、可搬型記録媒体に記録されたデータを記憶装置に書き込むことなく報知を実行するステップをさらに備える。
さらに他の局面に従うと、制御機器と、制御機器に書き込まれるデータを可搬型記録媒体に記録するための支援装置とを備える制御システムの制御方法が提供される。支援装置は、可搬型記録媒体に情報を記録するための記録装置を含む。制御方法は、支援装置が、記録装置に、可搬型記録媒体へ、データと、当該データの種類と組み合わされるデータの種類を特定する情報である組合せ情報とを記録させるステップを備える。制御機器は、可搬型記録媒体のデータを読み込むための読取装置と、制御機器の制御に用いられるデータを記憶する記憶装置とを含む。制御方法は、制御機器が、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含むか否かを判断するステップと、制御方法は、制御機器が、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含む場合に、可搬型記録媒体に記録されたデータを記憶装置に書き込むステップとを備える。
好ましくは、制御方法は、制御機器が、可搬型記録媒体に記録されている組合せ情報が、記憶装置が記憶するデータの種類と可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、可搬型記録媒体に記録されたデータを記憶装置に書き込むことなく報知を実行するステップをさらに備える。
本発明によれば、制御機器は、記録媒体に記録されているデータの書き込みの可否を、当該記録媒体に記録されている組合せ情報に従って、判断し得る。したがって、制御機器におけるデータの書き込みにおいて、当該書き込みに立ち会う作業員が、制御機器へのデータの書き込みの可否を判断するための知識を備えている必要が無い。
これにより、制御機器へのデータの書き込みが簡易に行なわれ得る。また、制御機器へのデータの書き込みに際して作業員の判断を要することがない。つまり、制御機器へのデータの書き込みが、制御機器によって自動的に実行され得る。これにより、制御機器へのデータの書き込みが、迅速にかつ簡易に行なわれ得る。
4つの実施の形態の制御システムのそれぞれが利用される製造現場の構成の一例を概略的に示す図である。 制御システムのシステム構成を模式的に示す図である。 制御機器の一例であるPLCの機能的な構成の一例を示す図である。 PLCのハードウェア構成の一例を示す図である。 支援装置のハードウェア構成の一例を示す図である。 制御システムの第1の実施の形態における支援装置の機能構成の一例を模式的に示す図である。 第1の実施の形態の組合せテーブルに含まれる情報の一例を示す図である。 支援装置において実行される処理の一例のフローチャートである。 システムファームウェアとユーザコンフィグレーションデータとの組合せを特定する情報の一例を模式的に示す図である。 アドオンファームウェアとユーザコンフィグレーションデータとの組合せを特定する情報の一例を模式的に示す図である。 第2の実施の形態の支援装置において実行される、記録媒体へのユーザコンフィグレーションデータの記録のための処理のフローチャートである。 PLCへのデータの書込処理の一例のフローチャートである。 第3の実施の形態の支援装置において記録媒体に記録するための処理のフローチャートである。 PLCへのデータの書込処理の他の例のフローチャートである。 第4の実施の形態の支援装置において実行される、記録媒体にデータを記録するための処理のフローチャートである。
本発明に従う制御システムの4つの実施の形態について、図面を参照しながら詳細に説明する。より具体的には、まず全ての実施の形態における共通部分を説明し、その後、各実施の形態の詳細を説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
<製造現場の構成>
図1は、4つの実施の形態の制御システムのそれぞれが利用される製造現場の構成の一例を概略的に示す図である。図1を参照して、製造現場において、消費財5が、コンベア4上を矢印A1が示す方向に沿って流れる際に、各消費財5は、製造装置2A,2C,2Eのそれぞれにおいて処理を施される。
消費財5とは、たとえば工場で製造される商品を意味する。消費財5の一例としては、食品や医薬品、衣装、家財、家電、自動車、またはスマートフォン等の、一般消費者向けの商品が挙げられる。また、消費財5の他の例としては、半導体、液晶パネル、自動車部品、または木材等の、一般消費者向け商品に使用される部品が挙げられる。
製造装置2A,2C,2Eとは、消費財を製造するための装置を意味する。製造装置2A,2C,2Eの一例としては、たとえば、半導体製造装置、工作機、包装機、および、プレス機が挙げられる。
製造装置2A,2C,2Eには、各製造装置を制御するためのFA制御機器(以下、単に「制御機器」という)が搭載されている。より具体的には、製造装置2Aには、制御機器3A,3Bが搭載されている。製造装置2Cには、制御機器3C,3Dが搭載されている。製造装置2Eには、制御機器3E,3Fが搭載されている。制御機器3A〜3Fの一例としては、PLCが挙げられる。また、制御機器3A〜3Fは、広義には、表示機、センサ、サーボモータ、ロボットなどを含み得る。
<制御システムの構成>
各実施の形態に係る制御システムの構成について説明する。各実施の形態では、機械や設備などの制御対象を制御するPLCを制御機器(図1に示された制御機器3A〜3F)の典型例として、説明を行う。但し、本発明に係る制御機器は、PLCに限られることなく、各種の制御機器へ適用可能である。
図2は、制御システム1のシステム構成を模式的に示す図である。図2を参照して、制御システム1は、PLC100と、支援装置300とを含む。
支援装置300は、PLC100において実行され得るプログラムについての、各種パラメータの設定、プログラミング、モニタリング、デバッグなどを行なう。PLC100と支援装置300との間は、典型的には、USB(Universal Serial Bus)規格に従って通信可能に構成される。なお、支援装置300は、PLC100が読み込み可能な可搬型記録媒体(以下、単に「記録媒体」という)500に、PLC100に書き込まれるプログラムやデータを記録する。これにより、支援装置300がPLC100と直接接続できない状態でも、PLC100へのプログラム等のデータの書き込みが可能になる。記録媒体500は、PLC100および支援装置300に対して着脱可能な記録媒体である。
PLC100は、制御演算を実行するCPU(Central Processing Unit)ユニット104と、1つ以上のIO(Input/Output)ユニット106とを含む。これらのユニットは、PLCシステムバス108を介して、データを互いに遣り取りできるように構成される。また、これらのユニットには、電源ユニット102によって適切な電圧の電源が供給される。
制御システム1において、PLC100は、(PLCシステムバス108を介して接続される)IOユニット106を介して、および/または、フィールドバス110を介して、各種のフィールド機器との間でデータを遣り取りする。これらのフィールド機器は、制御対象に対して何らかの処理を行うためのアクチュエータや、制御対象から各種情報を取得するためのセンサなどを含む。
図2には、このようなフィールド機器の一例として、検出スイッチ10、リレー20、および、モータ32を駆動するサーボモータドライバ30が示されている。また、PLC100は、フィールドバス110を介して、リモートIOターミナル200に接続されている。リモートIOターミナル200は、基本的には、IOユニット106と同様に、一般的な入出力処理に関する処理を行う。より具体的には、リモートIOターミナル200は、フィールドバス110でのデータ伝送に係る処理を行うための通信カプラ202と、1つ以上のIOユニット204とを含む。これらのユニットは、リモートIOターミナルバス208を介して、データを互いに遣り取りできるように構成される。
<PLCの機能構成>
図3は、制御機器の一例であるPLCの機能的な構成の一例を示す図である。PLC100には、システムファームウェア104Aおよびアドオンファームウェア104Bがインストールされている。システムファームウェア104Aは、PLC100の基本機能を提供するソフトウェアである。図3に示されるように、システムファームウェア104Aは、「Basic middleware」および「Basic application」といった、制御機器の基本機能(プログラム実行、通信、センシング等)を実現するためのソフトウェアを含む。また、システムファームウェア104Aは、OS(Operating System)を含む。また、システムファームウェア104Aは、「Bootloader」「FPGA」および「Device driver」といった、制御機器の表示装置やメモリ等の、制御機器に搭載されたハードウェア資源を制御するソフトウェアを含む。
アドオンファームウェア104Bは、制御機器に応用機能を付加するソフトウェアである。応用機能とは、制御機器が搭載される製造装置特有の機能である。一例として、温度制御機能や特殊通信機能が挙げられる。また、応用機能は、制御機器のメーカが競争力を高めるために、制御機器の基本機能とは異なる機能であって、それによって制御機器の価値を高めることを希望される機能である。つまり、応用機能は、制御機器ごとに、また、制御機器が搭載される製造装置ごとに、異なる場合があり得る。
PLC100は、さらに、ユーザコンフィグレーションデータ104Cを含む。ユーザコンフィグレーションデータ104Cとは、設定データの一例であって、PLC100を設定変更やプログラミングによってカスタマイズするためのデータ(データ群)である。PLC100において利用されるユーザコンフィグレーションデータ104Cは、システムファームウェア104Aをカスタマイズするためのデータと、アドオンファームウェア104Bをカスタマイズするためのデータとを含む。
<PLCのハードウェア構成>
図4は、PLC100のハードウェア構成の一例を示す図である。図4に示されるように、PLC100は、プロセッサ122と、メインメモリ124と、不揮発性メモリ126と、LED(Light Emitting Diode)128と、入力装置132と、コネクタ134と、SD(Secure Data)メモリカード・インタフェース136とを含む。
プロセッサ122は、不揮発性メモリ126等に格納されたプログラムを実行することにより、PLC100の動作を制御する。メインメモリ124は、プロセッサ122の作業領域として利用され得る。不揮発性メモリ126は、プログラム等の各種のデータを記憶する。LED128は、報知部の一例であり、プロセッサ122によって点灯動作を制御される。入力装置132は、外部からの情報の入力を受け付け、たとえばボタン等によって構成される。コネクタ134は、USB(Universal Serial Bus)メモリ等の、外部の機器と接続するために設けられている。SDメモリカード・インタフェース136は、記録媒体500の一例であるSDメモリカードに記録された情報を読み出す。
<支援装置300のハードウェア構成>
図5は、支援装置300のハードウェア構成の一例を示す図である。図5に示されるように、支援装置300は、典型的には、汎用のコンピュータで構成される。
図5に示されるように、支援装置300は、OSを含む各種プログラムを実行するCPU302と、BIOSや各種データを格納するROM(Read Only Memory)304と、CPU302でのプログラムの実行に必要なデータを格納するための作業領域を提供するRAM(Random Access Memory)306と、CPU302で実行されるプログラムなどを不揮発的に格納するハードディスク(HDD)308とを含む。制御システム1では、CPU302とRAM306とによって、コントローラの一例が構成される。
ハードディスク308には、サポートプログラム330が格納されている。サポートプログラム330は、支援装置300がPLC100において実行されるプログラムを調整するためのアプリケーションプログラムを含む。
支援装置300は、さらに、ユーザからの操作を受け付けるキーボード310およびマウス312と、情報をユーザに提示するためのモニタ314とを含む。また、支援装置300は、記録媒体500に記録されたデータを読み込み、また、記録媒体500にデータを記録するためのSDメモリカード・インタフェース316を含む。さらに、支援装置300は、PLC100(CPUユニット104)などと通信するための通信インターフェイス(IF)318を含む。
支援装置300で実行されるサポートプログラム330などのプログラムは、光学記録媒体に格納されて流通し得る。光学記録媒体に格納されたプログラムは、光学記録媒体専用のドライブ装置(図示せず)において読み取られ、ハードディスク308などへ格納され得る。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムを書き込むように構成してもよい。
本実施の形態では、ハードディスク308は、記憶装置の一例である。また、SDメモリカード・インタフェース316は、記録装置の一例である。
[第1の実施の形態]
以上説明した制御システムでは、PLC100等の制御機器において実行されるプログラムは、当該制御機器のファームウェアを含む。制御機器に置いて、ファームウェアは、大きく分類して、システムファームウェアとアドオンファームウェアとの2つの種類に分類される。PLC100は、記録媒体500を介して、これらのプログラムを書き込む場合もある。制御システムの第1の実施の形態では、支援装置300は、PLC500のために、上記された2種類のファームウェアを記録媒体500に記録する。より具体的には、支援装置300は、上記2種類のファームウェアを、予め定められた組合せで記録媒体500に記録する。以下、第1の実施の形態の制御システムについて説明する。
<機能構成>
図6は、制御システムの第1の実施の形態における支援装置300の機能構成の一例を模式的に示す図である。図6に示されるように、支援装置300には、プロジェクトファイル350と、ファームウェアデータベース360と、組合せテーブル370とが格納されている。
プロジェクトファイル350は、制御機器を動作させるためのデータ群の一例であり、ユーザプログラム(後述するシステムファームウェアおよびアドオンファームウェア)およびシステム構成を表すデータ(ユーザコンフィグレーションデータ)を含む。より具体的には、プロジェクトファイル350は、PLC100において実行されるシステムファームウェアおよびアドオンファームウェアを特定する情報、ならびに、これらのファームウェアにおける設定用のデータであるユーザコンフィグレーションデータを含む。プロジェクトファイル350は、たとえばHDD308に格納される。
ファームウェアデータベース360は、制御機器のファームウェアデータとそのライセンスとを格納するデータベースである。ファームウェアデータベース360は、プロジェクトファイル350において指定される種類に従って、ファームウェアを特定する。ファームウェアの種類は、ファームウェアに関する大分類(システムファームウェア、アドオンファームウェア、…)とバージョン(Ver1.0、Ver1.1、…)に基づく分類をとを含む。ファームウェアデータベース360は、たとえば、ファームウェアを格納するHDD308と、当該格納されたファームウェアの検索を実行するCPU302とによって実現される。
組合せテーブル370は、ファームウェアデータベース360に格納されているデータ同士の組合せに関する情報を格納する。たとえば、組合せテーブル370は、システムファームウェアの種類ごとに、各種類のシステムファームウェア上で正常に動作するアドオンファームウェアの種類を特定する情報を含む。組合せテーブル370は、たとえばHDD308に格納される。また、組合せテーブル370は、システムファームウェアの種類ごとに、各種類のシステムファームウェアの設定に利用できるユーザコンフィグレーションデータの種類を特定する情報を含む。さらに、組合せテーブル370は、アドオンファームウェアの種類ごとに、各種類のアドオンファームウェアの設定に利用できるユーザコンフィグレーションデータの種類を特定する情報を含む。
<組合せテーブル>
図7は、第1の実施の形態の組合せテーブル370に含まれる情報の一例を示す図である。図7に示されるように、組合せテーブル370は、システムファームウェアのバージョンごとに、当該バージョン上で使用可能な(正常に動作する)アドオンファームウェアの種類を指定する情報を含む。ここで指定される種類とは、アドオンファームウェアのタイトルおよびバージョンを識別する。つまり、組合せテーブル370では、タイトルが共通しても、バージョンが異なるアドオンファームウェア同士は、互いに異なる種類のアドオンファームウェアとして識別される。システムファームウェアのバージョンおよびアドオンファームウェアのバージョンは、たとえば、各ファームウェアのプログラムのファイル名によって特定され得る。
たとえば、組合せテーブル370では、バージョン「V1.0」のシステムファームウェアに対して、「Add-on_A V1.0」という情報が関連付けられている。これは、バージョ
ン「V1.0」のシステムファームウェア上では、「Add-on_A」という種類のアドオンファームウェアのバージョン「V1.0」のプログラムが正常に動作することを意味する。
また、組合せテーブル370では、バージョン「V1.1」のシステムファームウェアに対して、「Add-on_A V1.0」という情報と「Add-on_B V1.0」という情報とが関連付けられている。これは、バージョン「V1.1」のシステムファームウェア上では、「Add-on_A」という種類のアドオンファームウェアのバージョン「V1.0」のプログラムと、「Add-on_B」という種類のアドオンファームウェアのバージョン「V1.0」のプログラムとが正常に動作することを意味する。
支援装置300において、図7に示されたようなテーブルは、たとえばHDD308に格納される。なお、上記したような組合せを特定する情報は、テーブル形式以外のいかなる公知の形式(たとえば、関数等)でも記憶され得る。
第1の実施の形態の制御システムでは、支援装置300は、組合せテーブルにおいて指定される組合せのシステムファームウェアとアドオンファームウェアとを、記録媒体500に格納する。より具体的には、支援装置300では、プロジェクトファイルを作成するためのソフトウェア(たとえば、プロジェクトファイル作成用のアプリケーション)がインストールされている。当該アプリケーションにおいて、まずシステムファームウェアが設定される。次に、当該アプリケーションは、アドオンファームウェアの指定を受け付ける。ただし、当該アプリケーションが指定を受け付けるのは、既に指定されているシステムファームウェア上で正常に動作し得るアドオンファームウェアのみである。つまり、上記アプリケーションは、システムファームウェアを設定した後、上記したテーブルにおいて当該設定されたシステムファームウェア上で正常に動作し得るアドオンファームウェアの指定のみを受け付け、それ以外のアドオンファームウェアが指定された際にはエラー報知等を行なう。
これにより、プロジェクトファイルでは、組合せテーブルにおける規定に従ったシステムファームウェアとアドオンファームウェアの組合せが指定されるようになる。上記アプリケーションは、プロジェクトファイルにおいて指定されたシステムファームウェアとアドオンファームウェアとを記録媒体500に記憶する。したがって、本実施の形態において記録媒体500に記憶されるシステムファームウェアとアドオンファームウェアの組合せは、正常に動作し得る組合せとなる。
<記録媒体へのデータの記録>
図8は、支援装置300において実行される処理の一例のフローチャートである。当該処理は、支援装置300が、記録媒体500に、ファームウェアデータベース360内のファームウェアを記録するための処理である。当該処理は、CPU302が、所与のプログラム(たとえば、上記したプロジェクトファイル作成用のアプリケーション)を実行することによって、実現される。
図8を参照して、ステップS10で、CPU302は、システムファームウェアの種類およびアドオンファームウェアの種類の選択を受け付ける。
ステップS12で、CPU302は、ステップS10で指定を受け付けたシステムファームウェアとアドオンファームウェアの組合せは、組合せテーブル370に基づいて、組み合わせることが可能なものであるかどうかを判断する。そして、CPU302は、組合せ可能なものであると判断するとステップS16へ制御を進め(ステップS12でYES)、組合せ可能なものではない(たとえば、組合せテーブル370において規定されていない組合せである)と判断するとステップS14へ制御を進める(ステップS12でNO)。
ステップS14では、CPU302は、選択されている組合せが許可されないことを報知して、ステップS10へ制御を戻す。当該報知は、たとえば、モニタ314に組合せが許可されたものではないことを示すメッセージの表示によって実現される。
ステップS16では、CPU302は、記録媒体500への書き込みの指示を入力されたかどうかを判断する。当該指示が入力されたと判断するまで、CPU302は、ステップS16で指示を待つ(ステップS16でNO)。そして、当該指示が入力されたと判断すると、CPU302は、ステップS18へ制御を進める(ステップS16でYES)。
ステップS18では、CPU302は、指定されたシステムファームウェアとアドオンファームウェアとを記録媒体500に記録して、処理を終了させる。
以上説明した図8の処理により、記録媒体500に書き込まれるシステムファームウェアとアドオンファームウェアとの組合せは、組合せテーブル370において規定された組合せとなる。
これにより、作業員は、当該記録媒体500を利用してPLC100にファームウェアを書き込む場合、記録媒体500に記録されている2つの種類のファームウェアの組合せを考慮することなく作業することができる。
[第2の実施の形態]
第2の実施の形態の制御システムでは、支援装置300は、記録媒体500に、コンフィグレーションデータとともに、上記した組合せテーブルを記録する。以下、制御システムの構成を説明する。
<組合せテーブル>
第2の実施の形態の制御システムでは、図6に示された組合せテーブル370は、ユーザコンフィグレーションデータについての組合せを特定する情報を含む。より具体的には、組合せテーブル370は、ユーザコンフィグレーションデータとシステムファームウェアとの組合せを特定する情報、および、ユーザコンフィグレーションデータとアドオンファームウェアとの組合せを特定する情報を含む。
図9は、システムファームウェアとユーザコンフィグレーションデータとの組合せを特定する情報の一例を模式的に示す図である。図9に示されるように、組合せテーブル370では、システムファームウェアのバージョンと、各システムファームウェアに対して使用することができるユーザコンフィグレーションデータの種類(バージョン)が関連付けられている。たとえば、バージョン「V1.0」のシステムファームウェアには、バージョン「User configuration data (System) for V1.0」のユーザコンフィグレーションデータ、および、バージョン「User configuration data (System) for V1.1」のユーザコンフィグレーションデータが関連付けられている。システムファームウェアのバージョンは、たとえば各ファームウェアのプログラムのファイル名によって特定され得る。また、ユーザコンフィグレーションデータのバージョンは、たとえば当該データのファイル名によって特定され得る。
図10は、アドオンファームウェアとユーザコンフィグレーションデータとの組合せを特定する情報の一例を模式的に示す図である。図10に示されるように、組合せテーブル370では、アドオンファームウェアのバージョンと、各システムファームウェアに対して使用することができるユーザコンフィグレーションデータの種類(バージョン)が関連付けられている。図10では、複数種類のアドオンファームウェアの中の1つの種類「アドオンA」についての関係が示されている。たとえば、アドオンAのバージョン「V1.0」のアドオンファームウェアには、バージョン「User configuration data (Add-on_A) for V1.0」のユーザコンフィグレーションデータが関連付けられている。アドオンファームウェアのバージョンは、たとえば各ファームウェアのプログラムのファイル名によって特定され得る。
<記録媒体へのデータの記録>
図11は、第2の実施の形態の支援装置300において実行される、記録媒体500へのユーザコンフィグレーションデータの記録のための処理のフローチャートである。
図11を参照して、ステップS20で、CPU302は、ユーザコンフィグレーションデータの選択を受け付ける。
ステップS22で、CPU302は、記録媒体500への書き込みの指示を受けたかどうかを判断する。まだ当該指示を受けていないと判断すると、ステップS22で当該指示を待つ(ステップS22でNO)。そして、当該指示を受けたと判断すると、ステップS24へ制御を進める(ステップS22でYES)。
ステップS24では、CPU302は、記録媒体500に、ステップS20で選択されたユーザコンフィグレーションデータに対応する組合せテーブルを生成する。
「対応する組合せテーブル」とは、組合せテーブル370の中の、選択されたユーザコンフィグレーションデータを含む部分を意味する。より具体的には、たとえば、図9に示されるように、バージョン「User configuration data (System) for V1.0」のユーザコンフィグレーションデータは、バージョン「V1.0」「V1.1」および「V1.2」のシステムファームウェアに関連付けられている。このため、バージョン「User configuration data (System) for V1.0」のユーザコンフィグレーションデータが選択されている場合には、ステップS24では、組合せテーブル370から、バージョン「V1.0」「V1.1」および「V1.2」のシステムファームウェアを含む部分が抽出されることにより、「対応する組合せテーブル」が生成される。
また、図10に示されるように、バージョン「User configuration data (Add-on_A) for V1.0」のユーザコンフィグレーションデータは、アドオンAのバージョン「V1.0」および「V1.1」のアドオンファームウェアに関連付けられている。このため、バージョン「User configuration data (System) for V1.0」のユーザコンフィグレーションデータが選択されている場合には、組合せテーブル370から、バージョン「V1.0」「V1.1」および「V1.2」のシステムファームウェアを含む部分が抽出されることにより、「対応する組合せテーブル」が生成されされる。
図11に戻って、ステップS24で「対応する組合せテーブル」を生成した後、ステップS26で、CPU302は、選択されているユーザコンフィグレーションデータと、ステップS24において生成した組合せテーブルとを記録媒体500に記録して、処理を終了させる。
以上説明した図11に示された処理では、CPU302は、記録媒体500に、選択されたユーザコンフィグレーションデータ、および、当該ユーザコンフィグレーションデータに対応する組合せテーブルを記録する。なお、記録媒体500に記録される組合せテーブルは、少なくとも選択されたユーザコンフィグレーションデータに対応する部分を含んでいればよい。つまり、たとえば、ステップS26において、組合せテーブル370の全体が記録媒体500に記録される場合もあり得る。
<PLCへのデータの書き込み>
図12は、図11に示されたような処理によってデータを記録された記録媒体500を利用したPLCへのデータの書込処理のフローチャートである。図12の処理は、PLCのプロセッサ122によって実行される。プロセッサ122は、SDメモリカード・インタフェース136に記録媒体500を装着された状態で、図12の処理を実行する。
図12を参照して、ステップS30で、プロセッサ122は、記録媒体500に格納されているユーザコンフィグレーションデータと、PLC100にインストールされているシステムファームウェアまたはアドオンファームウェアとの組合せが、記録媒体500に記録されている組合せテーブル(ステップS24,S26)において規定されている内容に基づいて適切であるかどうかを判断する。より具体的には、プロセッサ122は、PLC100にインストールされているシステムファームウェアまたはアドオンファームウェアが、組合せテーブルにおいて、記録媒体500に記録されているユーザコンフィグレーションデータに関連付けられている場合には、組合せが適切であると判断する。また、プロセッサは、関連付けられていない場合には、組合せが適切ではないと判断する。そして、プロセッサ122は、組合せが適切であると判断するとステップS32へ制御を進める(ステップS30でYES)。また、プロセッサ122は、組合せが適切ではないと判断するとステップS34へ制御を進める(ステップS30でNO)。
ステップS32では、プロセッサ122は、記録媒体500に記録されているユーザコンフィグレーションデータを不揮発性メモリ126に書き込み、図12の処理を終了させる。
ステップS34では、プロセッサ122は、ステップS32において実行されるような書き込みを行なうことなく、記録媒体500に記録されているデータが不正であることを報知して、処理を終了させる。
以上説明した第2の実施の形態では、PLC100が記録媒体500からユーザコンフィグレーションデータを書き込む場合、当該記録媒体500に格納されている組合せテーブルに従って、組合せの適否が判断される。つまり、ユーザコンフィグレーションデータの書き込みの作業に立ち会う作業員が、ユーザコンフィグレーションデータと、システムファームウェアおよび/またはアドオンファームウェアとの組合せの適否についての知識を有している必要が無い。これにより、当該書き込むが迅速かつ簡易に実行され得る。なお、上記作業に立ち会う作業員は、たとえば、PLC100に電源を投入するためのスイッチを操作し、図12の処理を開始させるためのスイッチを操作し、および/または、PLC100に記録媒体500を装着する。
また、記録媒体500中のユーザコンフィグレーションデータが、PLC100にインストールされているシステムファームウェアおよび/またはアドオンファームウェアに適合しないものである場合、ステップS34において報知が行なわれる。これにより、PLC100において、誤ったユーザコンフィグレーションデータが書き込まれることを回避できる。また、PLC100において、製造現場の管理者が意図しないシステムファームウェアおよび/またはアドオンファームウェアのバージョン変更が行なわれた場合、当該変更が容易に発見され得る。
[第3の実施の形態]
第3の実施の形態の制御システムでは、支援装置300は、記録媒体500に、システムファームウェアと、アドオンファームウェアと、ユーザコンフィグレーションデータと、組合せテーブルとを記録する。PLC100は、当該記録媒体500を利用して、データの書き込みを実行する。以下、第3の実施の形態の制御システムの構成を説明する。
<記録媒体へのデータの記録>
図13は、第3の実施の形態の支援装置300において記録媒体500に記録するための処理のフローチャートである。図11を参照して、ステップS40で、CPU302は、システムファームウェアおよびアドオンファームウェアの選択を受け付ける。
ステップS42で、CPU302は、組合せテーブル370において規定される内容(図7参照)に基づいて、ステップS40で選択された組合せが適切であるか否かを判断する。そして、CPU302は、適切であると判断するとステップS46へ制御を進める(ステップS42でYES)。また、CPU302は、適切ではないと判断するとステップS44へ制御を進める(ステップS42でNO)。
ステップS44では、CPU302は、選択されたシステムファームウェアとアドオンファームウェアの組合せが適切ではないことを報知して、ステップS40へ制御を戻す。
ステップS46では、CPU302は、ユーザコンフィグレーションデータの選択を受け付ける。そして、制御は、ステップS48へ進められる。
ステップS48では、CPU302は、組合せテーブル370において規定される内容(図9または図10参照)に基づいて、ステップS46で選択されたユーザコンフィグレーションデータが、ステップS40で選択されたシステムファームウェアまたはアドオンファームウェアに対して適切に組み合わされるものであるかどうかを判断する。そして、CPU302は、適切であると判断するとステップS52へ制御を進める(ステップS48でYES)。また、CPU302は、適切ではないと判断するとステップS50へ制御を進める(ステップS48でNO)。
ステップS50では、CPU302は、選択されたユーザコンフィグレーションデータが、既に選択されているシステムファームウェアおよび/またはアドオンファームウェアに対して適切に組合されるものではないことを報知して、ステップS46へ制御を戻す。
ステップS52で、CPU302は、記録媒体500への書き込みの指示を受けたかどうかを判断する。まだ当該指示を受けていないと判断すると、ステップS52で当該指示を待つ(ステップS52でNO)。そして、当該指示を受けたと判断すると、ステップS54へ制御を進める(ステップS52でYES)。
ステップS54で、CPU302は、ステップS40で選択されたシステムファームウェアおよびアドオンファームウェア、ならびに、ステップS46で選択されたユーザコンフィグレーションデータに対応する組合せテーブルを生成する。
組合せテーブルの生成は、1)選択されたシステムファームウェアに対応する組合せテーブルの生成、2)選択されたアドオンファームウェアに対応する組合せテーブルの生成、および、3)選択されたユーザコンフィグレーションデータに対応する組合せテーブルの生成を含む。
1)選択されたシステムファームウェアに対応する組合せテーブルの生成は、たとえば、組合せテーブル370から、選択されたシステムファームウェアを含む部分を抽出することによって行われる。
2)選択されたアドオンファームウェアに対応する組合せテーブルの生成は、たとえば、組合せテーブル370から、選択されたアドオンファームウェアを含む部分を抽出することによって行われる。
3)選択されたユーザコンフィグレーションデータに対応する組合せテーブルの生成は、たとえば、組合せテーブル370から、選択されたユーザコンフィグレーションデータを含む部分を抽出することによって行われる。
ステップS56で、CPU302は、記録媒体500に、ステップS40で選択されたシステムファームウェアおよびアドオンファームウェア、ステップS46で選択されたユーザコンフィグレーションデータ、ならびに、ステップS54で生成した組合せテーブルを記録して、処理を終了させる。
<PLCへのデータ書き込み>
図14は、記録媒体500を利用する、PLC100へのデータの書込処理のフローチャートである。プロセッサ122は、SDメモリカード・インタフェース136に記録媒体500を装着された状態で、図14の処理を実行する。
図14を参照して、ステップS60で、プロセッサ122は、PLC100にユーザコンフィグレーションデータが格納されているかどうかを判断する。プロセッサ122は、ステップS60において、たとえば、ユーザコンフィグレーションデータ用の予め定められた文字列を含むファイル名のファイルが不揮発性メモリ126に格納されているか否かを判断する。プロセッサ122は、PLC100にユーザコンフィグレーションデータが格納されていると判断すると、ステップS64へ制御を進める(ステップS60でYES)。プロセッサ122は、PLC100にユーザコンフィグレーションデータが格納されていないと判断すると、ステップS62へ制御を進める(ステップS60でNO)。
ステップS62で、プロセッサ122は、記録媒体500に格納されている全てのデータを不揮発性メモリ126に書き込み、図14の処理を終了させる。
ステップS64で、プロセッサ122は、記録媒体500に格納されているデータの種類を判断する。そして、プロセッサ122は、ファームウェア(システムファームウェアおよびアドオンファームウェア)のみが格納されていると判断すると、ステップS66へ制御を進める。プロセッサ122は、ファームウェア(システムファームウェアおよびアドオンファームウェア)とユーザコンフィグレーションデータとが格納されていると判断すると、ステップS72へ制御を進める。プロセッサ122は、ユーザコンフィグレーションデータのみが格納されていると判断すると、ステップS74へ制御を進める。
ステップS66では、プロセッサ122は、記録媒体500に格納されている組合せテーブルの内容に基づいて、PLC100に格納されているユーザコンフィグレーションデータと記録媒体500に格納されているファームウェア(システムファームウェアおよびアドオンファームウェア)との組合せが適切であるか否かを判断する。より具体的には、プロセッサ122は、記録媒体500内の組合せテーブルの中で、記録媒体500内のシステムファームウェアを含む部分を抽出し、当該抽出した部分が、PLC100内のユーザコンフィグレーションデータを含むかどうかを判断する。また、プロセッサ122は、記録媒体500内の組合せテーブルの中で、記録媒体500内のアドオンファームウェアを含む部分を抽出し、当該抽出した部分が、PLC100内のユーザコンフィグレーションデータを含むかどうかを判断する。「含む」という判断は、組合せが適切であるという判断に相当する。「含まない」という判断は、組合せが適切ではないという判断に相当する。
そして、プロセッサ122は、PLC100内のユーザコンフィグレーションデータが、記録媒体500内のシステムファームウェアおよびアドオンファームウェアのいずれかとの組合せとして適切であると判断すると、ステップS68へ制御を進める(ステップS66でYES)。プロセッサ122は、PLC100内のユーザコンフィグレーションデータが、記録媒体500内のシステムファームウェアおよびアドオンファームウェアのいずれとも適切に組合せられないと判断すると、ステップS70へ制御を進める(ステップS66でNO)。
ステップS68で、プロセッサ122は、PLC100内のユーザコンフィグレーションデータを残したまま、記録媒体500に格納されたファームウェア(システムファームウェアおよびアドオンファームウェア)を不揮発性メモリ126に書き込み、図14の処理を終了させる。
ステップS70で、プロセッサ122は、ステップS68のような書き込みを行なうことなく、記録媒体500が不正なデータを有することを報知して、処理を終了させる。当該報知は、たとえばLED128の点灯または点滅である。
ステップS72では、プロセッサ122は、記録媒体500内のファームウェア(システムファームウェアおよびアドオンファームウェア)およびユーザコンフィグレーションデータを不揮発性メモリ126に書き込み、図14の処理を終了させる。
ステップS74では、プロセッサ122は、記録媒体500に格納されている組合せテーブルの内容に基づいて、PLC100にインストールされているファームウェア(システムファームウェアおよびアドオンファームウェア)と記録媒体500に記録されているユーザコンフィグレーションデータとの組合せが適切であるか否かを判断する。より具体的には、プロセッサ122は、記録媒体500内の組合せテーブルの中で、記録媒体500内のユーザコンフィグレーションデータを含む部分を抽出し、当該抽出した部分が、PLC100内のシステムファームウェアまたはアドオンファームウェアを含むかどうかを判断する。「含む」という判断は、組合せが適切であるという判断に相当する。「含まない」という判断は、組合せが適切ではないという判断に相当する。
そして、プロセッサ122は、記録媒体500内のユーザコンフィグレーションデータが、PLC100内のシステムファームウェアまたはアドオンファームウェアとの組合せとして適切であると判断すると、ステップS76へ制御を進める(ステップS74でYES)。プロセッサ122は、記録媒体500内のユーザコンフィグレーションデータが、PLC100内のシステムファームウェアおよびアドオンファームウェアのいずれとも適切に組合せられないと判断すると、ステップS78へ制御を進める(ステップS74でNO)。
ステップS76で、プロセッサ122は、PLC100内にインストールされているシステムファームウェアまたはアドオンファームウェアを残したまま、記録媒体500内のユーザコンフィグレーションデータを不揮発性メモリ126に書き込み、図14の処理を終了させる。
ステップS78で、プロセッサ122は、ステップS76のような書き込みを行なうことなく、記録媒体500が不正なデータを有することを報知して、処理を終了させる。当該報知は、たとえばLED128の点灯または点滅である。
以上説明した第3の実施の形態では、PLC100では、記録媒体500に記録されたデータの書き込みの可否を、当該記録媒体500に記憶された組合せテーブルに従って判断する。
より具体的には、ステップS74〜S78として示されたように、PLC100が記録媒体500からユーザコンフィグレーションデータを書き込む場合、当該記録媒体500に格納されている組合せテーブルに従って、当該ユーザコンフィグレーションデータと既にPLC100に格納されているファームウェアとの組合せの適否が判断される。つまり、当該書き込みの作業に立ち会う作業員が、ユーザコンフィグレーションデータと、システムファームウェアおよび/またはアドオンファームウェアとの組合せの適否についての知識を有している必要が無い。これにより、当該PLC100へのデータの書き込みが迅速かつ簡易に実行され得る。
また、ステップS66〜S70として示されたように、PLC100が記録媒体500からファームウェア(システムファームウェアおよび/またはアドオンファームウェア)を書き込む場合、当該記録媒体500に格納されている組合せテーブルに従って、当該ファームウェアと既にPLC100に格納されているユーザコンフィグレーションデータとの組合せの適否が判断される。つまり、当該書き込みの作業に立ち会う作業員が、既にPLC100に格納されているユーザコンフィグレーションデータと、書き込まれるシステムファームウェアおよびアドオンファームウェアとの組合せの適否についての知識を有している必要が無い。これにより、PLC100へのデータの書き込みが迅速かつ簡易に実行され得る。
また、本実施の形態によれば、PLC100内のシステムファームウェア、アドオンファームウェア、および/またはユーザコンフィグレーションデータが、製造現場の管理者が意図しないうちにバージョン等を変更されることによって、書き込もうとしたファームウェアまたはユーザコンフィグレーションデータと適切に組合されなくなった場合、組合せが適切でないことが報知される(ステップS70,S78)。これにより、当該変更が容易に発見され得る。
なお、図14に示された書込処理は、図13の処理に従ってデータを記録された記録媒体500以外の記録媒体を利用した処理にも適用され得る。
[第4の実施の形態]
第4の実施の形態の支援装置300は、記録媒体500に、システムファームウェア、アドオンファームウェア、および、ユーザコンフィグレーションデータを記録する。これらは、組合せテーブル370によって規定される適切な組合わせを構成する。このような組合せのシステムファームウェア、アドオンファームウェア、および、ユーザコンフィグレーションデータは、たとえば、新規のPLC100にそのまま書き込まれる。
図15は、第4の実施の形態の支援装置300において実行される、記録媒体500にデータを記録するための処理のフローチャートである。
図13に示された処理と比較して、図15に示された処理は、ステップS54における組合せテーブルの生成を含まない。また、図15に示された処理のステップS56では、CPU302は、記録媒体500に、ステップS40で選択されたシステムファームウェアおよびアドオンファームウェアと、ステップS46で選択されたユーザコンフィグレーションデータとを記録する。
第4の実施の形態の制御システムでは、PLC100は、支援装置300によって記録媒体500に記録された全てのデータ(システムファームウェア、アドオンファームウェア、および、ユーザコンフィグレーションデータ)を書き込む。これらのデータは、組合せテーブル370において適切であると規定されている組合せに従ったデータである。したがって、PLC100において、書き込みの作業に立ち会う作業者は、これらのデータの組合せについて特別な知識を有する必要が無い。したがって、PLC100へのデータの書き込みの作業が迅速かつ簡易になる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、100 PLC、122 プロセッサ、124 メインメモリ、126 不揮発性メモリ、132 入力装置、134 コネクタ、136,316 SDメモリカード・インタフェース、300 支援装置、308 ハードディスク、310 キーボード、312 マウス、314 モニタ、500 記録媒体。

Claims (12)

  1. 可搬型記録媒体のデータを読み込むための読取装置と、
    制御に用いられるデータを記憶する記憶装置と、
    前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むためのプロセッサとを備え、
    前記可搬型記録媒体には、さらに、データの種類の組合せを特定する情報である組合せ情報が記録されており、
    前記プロセッサは、
    前記記憶装置に予め定められた特定の種類のデータが記憶されていない場合には、前記可搬型記録媒体に記録されている全データを前記記憶装置に書き込み、
    前記記憶装置に前記特定の種類のデータが記憶されている場合には、
    前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込み、
    前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まないときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込まないように構成されており、
    前記データは、制御機器の一種類または複数種類のファームウェアと、当該ファームウェアによる制御に用いられる設定データであり、
    前記特定の種類のデータは、前記設定データである、制御機器。
  2. 前記記憶装置に記憶されたデータは、前記制御機器の一種類または複数種類のファームェアであり、
    前記可搬型記録媒体に記録されたデータは、前記ファームウェアによる制御に用いられる一種類または複数種類の設定データであり、
    前記組合せ情報は、前記ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である、請求項1に記載の制御機器。
  3. 前記記憶装置に記憶されたデータは、前記ファームウェアによる制御に用いられる一種類または複数種類の設定データであり、
    前記組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である、請求項2に記載の制御機器。
  4. 前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まないときに、報知動作を実行する報知部をさらに備える、請求項1〜請求項3のいずれか1項に記載の制御機器。
  5. 制御機器と、前記制御機器に書き込まれるデータを可搬型記録媒体に記録するための支援装置とを備える制御システムであって、
    前記支援装置は、
    可搬型記録媒体に情報を記録するための記録装置と、
    前記記録装置の動作を制御するためのコントローラとを含み、
    前記コントローラは、前記記録装置に、前記可搬型記録媒体へ、データと、当該データの種類と組み合わされるデータの種類を特定する情報である組合せ情報とを記録させるように構成されており、
    前記制御機器は、
    前記可搬型記録媒体のデータを読み込むための読取装置と、
    前記制御機器の制御に用いられるデータを記憶する記憶装置と、
    前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むためのプロセッサとを含み、
    前記プロセッサは、
    前記記憶装置に予め定められた特定の種類のデータが記憶されていない場合には、前記可搬型記録媒体に記録されている全データを前記記憶装置に書き込み、
    前記記憶装置に前記特定の種類のデータが記憶されている場合には、
    前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込み、
    前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まないときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込まないように構成されており、
    前記データは、制御機器の一種類または複数種類のファームウェアと、当該ファームウェアによる制御に用いられる設定データであり、
    前記特定の種類のデータは、前記設定データである、制御システム。
  6. 前記記憶装置に記憶されたデータは、前記制御機器における動作を制御するための一種類または複数種類のファームウェアであり、
    前記可搬型記録媒体に記録されたデータは、前記ファームウェアによる制御に用いられる一種類または複数種類の設定データであり、
    前記組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である、請求項5に記載の制御システム。
  7. 前記記憶装置に記憶されたデータは、ファームウェアによる制御に用いられる一種類または複数種類の設定データであり、
    前記組合せ情報は、ファームウェアの種類と当該ファームウェアによる制御に用いられる設定データの種類との組合せを特定する情報である、請求項6に記載の制御システム。
  8. 前記制御機器は、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、報知動作を実行する報知部をさらに含む、請求項5〜請求項7のいずれか1項に記載の制御システム。
  9. 可搬型記録媒体のデータを読み込むための読取装置と、制御に用いられるデータを記憶する記憶装置とを備える制御機器のプロセッサによって実行される、当該制御機器の制御方法であって、
    前記可搬型記録媒体には、データと、データの種類の組合せを特定する情報である組合せ情報とが記録されており、
    前記記憶装置に予め定められた特定の種類のデータが記憶されているか否かを判断するステップと、
    前記記憶装置に前記特定の種類のデータが記憶されていない場合には、前記可搬型記録媒体に記録されている全データを前記記憶装置に書き込み、
    前記記憶装置に前記特定の種類のデータが記憶されている場合に、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むか否かを判断し、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むステップとを備え
    前記データは、制御機器の一種類または複数種類のファームウェアと、当該ファームウェアによる制御に用いられる設定データであり、
    前記特定の種類のデータは、前記設定データである、制御機器の制御方法。
  10. 前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むことなく報知を実行するステップをさらに備える、請求項9に記載の制御機器の制御方法。
  11. 制御機器と、前記制御機器に書き込まれるデータを可搬型記録媒体に記録するための支援装置とを備える制御システムの制御方法であって、
    前記支援装置は、可搬型記録媒体に情報を記録するための記録装置を含み、
    前記制御方法は、前記支援装置が、前記記録装置に、前記可搬型記録媒体へ、データと、当該データの種類と組み合わされるデータの種類を特定する情報である組合せ情報とを記録させるステップを備え、
    前記制御機器は、前記可搬型記録媒体のデータを読み込むための読取装置と、前記制御機器の制御に用いられるデータを記憶する記憶装置とを含み、
    前記制御方法は、
    前記制御機器が、前記記憶装置に予め定められた特定の種類のデータが記憶されているか否かを判断するステップと、
    前記制御機器が、前記記憶装置に前記特定の種類のデータが記憶されていない場合には、前記可搬型記録媒体に記録されている全データを前記記憶装置に書き込むステップと、
    前記制御機器が、前記記憶装置に前記特定の種類のデータが記憶されている場合に、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むか否かを判断し、前記制御機器が、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含むときに、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むステップとを備え
    前記データは、制御機器の一種類または複数種類のファームウェアと、当該ファームウェアによる制御に用いられる設定データであり、
    前記特定の種類のデータは、前記設定データである、制御システムの制御方法。
  12. 前記制御方法は、前記制御機器が、前記可搬型記録媒体に記録されている組合せ情報が、前記記憶装置が記憶するデータの種類と前記可搬型記録媒体に記録されているデータの種類との組合せを含まない場合に、前記可搬型記録媒体に記録されたデータを前記記憶装置に書き込むことなく報知を実行するステップをさらに備える、請求項11に記載の制御システムの制御方法。
JP2016507376A 2014-03-14 2015-01-15 制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法 Active JP6337956B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014052680 2014-03-14
JP2014052680 2014-03-14
PCT/JP2015/050879 WO2015136965A1 (ja) 2014-03-14 2015-01-15 制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法

Publications (2)

Publication Number Publication Date
JPWO2015136965A1 JPWO2015136965A1 (ja) 2017-04-06
JP6337956B2 true JP6337956B2 (ja) 2018-06-06

Family

ID=54071419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016507376A Active JP6337956B2 (ja) 2014-03-14 2015-01-15 制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法

Country Status (5)

Country Link
US (1) US10296241B2 (ja)
EP (1) EP3101537A4 (ja)
JP (1) JP6337956B2 (ja)
CN (1) CN106062712A (ja)
WO (1) WO2015136965A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6661409B2 (ja) * 2016-03-01 2020-03-11 キヤノン株式会社 自動設置システム、情報処理装置、情報処理装置の制御方法、及びプログラム
DE102016224784A1 (de) * 2016-12-13 2018-06-14 Robert Bosch Gmbh Steuervorrichtung zur Steuerung mindestens eines Teils einer industriellen Anlage und Verfahren zur Programmierung und/oder Diagnose der Steuervorrichtung
JP2019159752A (ja) 2018-03-13 2019-09-19 オムロン株式会社 コントローラ、ライセンスの管理方法、およびライセンスの管理プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6412082B1 (en) 1997-12-17 2002-06-25 Sony Corporation Method and apparatus for selecting computer programs based on an error detection mechanism
JP4029448B2 (ja) * 1997-12-17 2008-01-09 ソニー株式会社 情報処理装置および情報処理方法
JP2003223617A (ja) * 2002-01-29 2003-08-08 Sony Corp 情報処理装置および方法、記録媒体、記憶媒体、並びにプログラム
JP2003345617A (ja) 2002-05-23 2003-12-05 Nec Corp 情報処理装置、情報処理方法、icカード、及びプログラム
JP3925557B2 (ja) * 2005-02-28 2007-06-06 オムロン株式会社 パラメータ設定装置
JP4462443B2 (ja) 2005-02-28 2010-05-12 オムロン株式会社 パラメータ設定装置
JP4390079B2 (ja) 2005-09-27 2009-12-24 オムロン株式会社 制御システム
JP4952978B2 (ja) * 2006-02-28 2012-06-13 ブラザー工業株式会社 インストーラを作成するためのプログラム,該プログラムを記憶する記憶媒体,情報処理装置
JP2010055279A (ja) * 2008-08-27 2010-03-11 Fuji Xerox Co Ltd 更新判定装置、画像処理装置、及びプログラム
US8892699B2 (en) * 2008-12-31 2014-11-18 Schneider Electric USA, Inc. Automatic firmware updates for intelligent electronic devices
JP5428721B2 (ja) * 2009-10-02 2014-02-26 富士通株式会社 管理システム,管理装置,管理方法および管理プログラム
CN102043614A (zh) * 2009-10-12 2011-05-04 无锡华润矽科微电子有限公司 一种二次开发系统及二次开发方法
JP2012168879A (ja) * 2011-02-16 2012-09-06 Nec Access Technica Ltd 情報処理装置
JP2012212415A (ja) * 2011-03-18 2012-11-01 Hitachi Kokusai Electric Inc 無線基地局装置
US8978024B2 (en) * 2012-08-02 2015-03-10 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Federated system automatic update communication to enable selective update of critical firmware elements
US9027014B2 (en) * 2013-01-17 2015-05-05 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Updating firmware compatibility data
US9116775B2 (en) * 2013-05-15 2015-08-25 Dell Products L.P. Relationship-based dynamic firmware management system

Also Published As

Publication number Publication date
US20170212699A1 (en) 2017-07-27
CN106062712A (zh) 2016-10-26
EP3101537A4 (en) 2017-03-22
JPWO2015136965A1 (ja) 2017-04-06
US10296241B2 (en) 2019-05-21
WO2015136965A1 (ja) 2015-09-17
EP3101537A1 (en) 2016-12-07

Similar Documents

Publication Publication Date Title
JP4462449B2 (ja) 制御システム設定装置
US10268185B2 (en) Multiple deployment of applications with multiple configurations in an industrial automation environment
JP5295464B1 (ja) システム構築支援ツール及びシステム
WO2015136959A1 (ja) 制御システム、方法、プログラムおよび情報処理装置
EP3655902B1 (en) Configuring an industrial automation system for internet-of-things accessibility
JP2005327263A (ja) 制御システム設定装置
JP6337956B2 (ja) 制御機器、制御システム、制御機器の制御方法、および、制御システムの制御方法
CN103477291A (zh) 参数设定装置及参数设定系统
JP6442131B2 (ja) 制御システムおよび制御装置
JP7063009B2 (ja) 表示装置、画面生成方法、および画面生成プログラム
EP2985662A1 (en) Automatic creation of hardware configuration in a distributed control system
TWI624790B (zh) 設定建構指示符以啟用或停用特徵之技術
EP3009900A1 (en) Dynamic recommendation of elements suitable for use in an engineering configuration
US11029978B2 (en) Industrial controller and method for automatically creating user interface
US10976909B2 (en) Operating module and methods for dynamic adapatation of a user interface for a machine
JP6414590B2 (ja) 制御機器、制御システム、支援装置、および、制御機器のメンテナンスの管理方法
JP6169306B2 (ja) 制御システム及びプログラマブルロジックコントローラ
JP6794668B2 (ja) プログラミング装置
JP6199088B2 (ja) 機器管理装置および機器管理方法
CN110637263B (zh) 监视辅助装置、监视辅助方法及记录介质
JP5962086B2 (ja) Plcシステム、情報表示方法、plc、および保守装置
JP6785916B1 (ja) 設定実行装置、設定実行方法および設定実行プログラム
JP2000035811A (ja) データ管理方法、データ管理装置及びそれらの記録媒体
JP5951041B2 (ja) プログラマブル表示器
JP2023027509A (ja) サポート装置、サポートプログラムおよび制御システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180308

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180423

R150 Certificate of patent or registration of utility model

Ref document number: 6337956

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