JP5951162B1 - Control device, composite unit device, update determination program, and program update method - Google Patents

Control device, composite unit device, update determination program, and program update method Download PDF

Info

Publication number
JP5951162B1
JP5951162B1 JP2016514185A JP2016514185A JP5951162B1 JP 5951162 B1 JP5951162 B1 JP 5951162B1 JP 2016514185 A JP2016514185 A JP 2016514185A JP 2016514185 A JP2016514185 A JP 2016514185A JP 5951162 B1 JP5951162 B1 JP 5951162B1
Authority
JP
Japan
Prior art keywords
unit
update
program
control device
rule
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
JP2016514185A
Other languages
Japanese (ja)
Other versions
JPWO2016170641A1 (en
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 JP5951162B1 publication Critical patent/JP5951162B1/en
Publication of JPWO2016170641A1 publication Critical patent/JPWO2016170641A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

プログラム更新装置(11)は、プログラムであるファームウェアを記憶するプログラム記憶部(1051)と、ファームウェアの更新のルールが定められたルール情報を記憶するルール記憶部(1052)と、ファームウェアを更新するための更新情報を受信する更新情報受信部(1053)と、更新情報がルール情報に適合するかどうかを判定する判定部(1054)と、判定部(1054)が適合すると判定した場合に、プログラム記憶部(1051)が記憶するファームウェアを、更新情報を用いて更新する更新部(1055)を備える。The program update device (11) updates a firmware, a program storage unit (1051) that stores firmware as a program, a rule storage unit (1052) that stores rule information in which rules for updating the firmware are defined, and When the update information receiving unit (1053) that receives the update information, the determination unit (1054) that determines whether the update information matches the rule information, and the determination unit (1054) are determined to be compatible, the program storage An update unit (1055) that updates firmware stored in the unit (1051) using update information.

Description

この発明は、制御装置、複合ユニット装置、更新判定プログラム及びプログラム更新方法も関する。 The present invention also relates to a control device , a composite unit device, an update determination program, and a program update method.

一般に、組込機器の動作を規定するソフトウェアをファームウェアと呼ぶ。以下、ファームウェアをFWと記す場合がある。近年、スマートフォンに代表される機器のネットワーク化に伴い、機能強化やバグフィックスを目的として、エンドユーザがFWを更新できる機能が活用されている。FWを更新できる機能は、コンシューマー製品だけでなく、プラントや工場で利用される産業用制御装置や自動車を制御する電子機器でも一部利用されている。以下、FWを更新できる機能をFWアップデート機能と呼ぶことにする。   In general, software that defines the operation of an embedded device is called firmware. Hereinafter, the firmware may be referred to as FW. In recent years, with the networking of devices typified by smartphones, functions that allow end users to update FW have been utilized for the purpose of function enhancement and bug fixes. The function of updating the FW is partially used not only in consumer products but also in industrial control devices used in plants and factories and electronic devices that control automobiles. Hereinafter, a function capable of updating the FW is referred to as an FW update function.

FWアップデート機能は、エンドユーザにおいて以下の手順で利用される。
(1)エンドユーザが、製造業者のウェブサイトから、更新されたFWのファイルを取得する。
(2)エンドユーザは、製取得したファイルを、ネットワークや記録媒体を介して対象の組込機器へ入力する。
(3)組込機器が、FWのファイルを元にファームウェアを書き換える。
The FW update function is used in the following procedure by the end user.
(1) The end user obtains an updated FW file from the manufacturer's website.
(2) The end user inputs the manufactured and acquired file to the target embedded device via a network or a recording medium.
(3) The embedded device rewrites the firmware based on the FW file.

FWアップデート機能は上記のような利便性を提供する一方、攻撃者の利用経路として悪用される危険性がある。例えば、悪意ある第三者によって作成されたFWを用いて、エンドユーザが機器のFWのアップデートを行えば、悪意ある第三者に機器を乗っ取られる危険性がある。したがって、FWアップデート機能で用いられるFWは、機器の製造者からリリースされたことを証明できる必要がある。非特許文献1には、デジタル署名やメッセージ認証コードによるメッセージへの改竄検出を利用することにより、FWを任意に改変することを阻止する技術が記載されている。ここで、産業用制御装置や自動車の電子制御機器は、単体で最終ユーザに利用されるわけでなく、それらの機器を部品とした最終製品が、別のメーカによって作られる点に留意が必要である。このため、最終製品として、個々の機器のFWに対する管理責任が最終製品のメーカにある。また、産業用制御装置はコンポーネント化されて、最終製品はそれらを複数組み合わせて構成される点にも留意が必要である。すなわち、個々の機器のFWは単体として管理するだけでなく、複数の組み合わせとして管理を行う必要がある。一方で、制御システムのように、なんらかの障害の発生による中断や停止が発生した場合に影響が大きいシステムにおいては、FWのアップデートのようなシステムの動作に影響を与えかねない事象を可能な限り排除する傾向にあると言える。   While the FW update function provides the convenience as described above, there is a risk that the FW update function may be abused as a use route of an attacker. For example, if the end user updates the FW of the device using the FW created by the malicious third party, there is a risk that the malicious third party can take over the device. Therefore, it is necessary to be able to prove that the FW used in the FW update function has been released by the manufacturer of the device. Non-Patent Document 1 describes a technique for preventing arbitrary modification of FW by using falsification detection to a message using a digital signature or a message authentication code. Here, it is necessary to note that industrial control devices and electronic control devices for automobiles are not used alone by end users, and that final products using these devices as parts are produced by other manufacturers. is there. For this reason, the manufacturer of the final product is responsible for managing the FW of each device as the final product. It should also be noted that the industrial control device is made into a component and the final product is configured by combining a plurality of them. That is, it is necessary not only to manage the FW of each device as a single unit but also to manage it as a plurality of combinations. On the other hand, in systems such as control systems, which have a large impact when interruption or stoppage due to the occurrence of some kind of failure occurs, eliminate events that may affect system operation such as FW updates as much as possible. It can be said that there is a tendency to.

例えば、非特許文献2に開示される「Copy Exactly!」の例にあるように、生産システムは一切の揺れを排除して構築することで、不具合のリスクが低減される。   For example, as in the example of “Copy Exactly!” Disclosed in Non-Patent Document 2, the risk of malfunction is reduced by constructing the production system by eliminating any shaking.

RFC4108,“Using Cryptographic Message Syntax(CMS) to Protect Firmware Packages”, http://tools.ietf.org/html/rfc4108RFC 4108, “Using Cryptographic Message Syntax (CMS) to Protect Firmware Packages”, http: // tools. ietf. org / html / rfc4108 Intel “Manufacturing Process Copy exactly!” http://www.intel.com/content/www/us/en/quality/exact−copy.htmlIntel “Manufacturing Process Copy exact!” Http: // www. intel. com / content / www / us / en / quality / exact-copy. html

コンポーネント化された産業用制御装置は、用途が限定されず、汎用性のある仕様で構成される。当然、その産業用制御装置の動作は、その仕様の範囲内で保証される。一方、産業用制御装置を複数の構成部品のうちの一つとする最終製品は、産業用制御装置の仕様を把握した上で、システムアップされる。しかし、コンポーネントの仕様の範囲とはいえ、最終製品は、産業用制御装置などのそれぞれの構成部品の揺れ(仕様許容範囲内での変動)をすべて考慮して品質を検証できるわけではない。   Componentized industrial control devices are not limited in application and are configured with versatile specifications. Of course, the operation of the industrial control device is guaranteed within its specifications. On the other hand, a final product having an industrial control device as one of a plurality of components is system-up after grasping the specifications of the industrial control device. However, despite the range of component specifications, the quality of the final product cannot be verified in consideration of all the fluctuations (variations within the specification allowable range) of each component such as an industrial control device.

従って、最終製品を構築するメーカから見れば、仕様の範囲内とはいえ、FWアップデートにより揺れ(許容範囲での仕様の変動)が発生することは、最終製品で不具合が発生するリスクとなる。よって、最終製品を製造するメーカは、産業用制御装置が持つFWアップデート機能のエンドユーザの使用を、制御及び制限できることが必要である。   Therefore, from the viewpoint of the manufacturer who builds the final product, the occurrence of fluctuations (changes in the specification within the allowable range) due to the FW update is a risk that a malfunction may occur in the final product, although it is within the specification range. Therefore, the manufacturer that manufactures the final product needs to be able to control and limit the use of the end user of the FW update function of the industrial control device.

また、複数の制御装置からなる最終製品は、個々の制御装置のFWを組み合わせとして管理する必要がある。従って、FWアップデート機能も、FWの組み合わせを考慮した上で、エンドユーザでの使用を制御及び制限できる必要がある。   In addition, a final product composed of a plurality of control devices needs to be managed as a combination of the FWs of the individual control devices. Therefore, the FW update function needs to be able to control and limit the use by the end user in consideration of the combination of FW.

複数の制御装置を部品として備える最終製品は、エンドユーザによって部品交換される。すなわち最終製品は部品である個々の制御装置が交換されることが考慮され、FWの組み合わせが管理される必要がある。   A final product including a plurality of control devices as parts is replaced by an end user. That is, it is necessary to manage the combination of FW in consideration of replacement of individual control devices that are parts of the final product.

本発明は、最終製品を製造するメーカが、制御装置が持つFWアップデート機能のエンドユーザの使用を、制御及び制限できる構成の提供を目的とする。   An object of the present invention is to provide a configuration in which a manufacturer that manufactures a final product can control and limit the use of an end user of the FW update function of a control device.

この発明のプログラム更新装置は、
プログラムを記憶するプログラム記憶部と、
前記プログラムの更新のルールが定められたルール情報を記憶するルール記憶部と、
前記プログラムを更新するための更新情報を受信する更新情報受信部と、
前記更新情報が前記ルール情報に適合するかどうかを判定する判定部と、
前記判定部が適合すると判定した場合に、前記プログラム記憶部が記憶する前記プログラムを、前記更新情報を用いて更新する更新部と
を備える。
The program update device of the present invention provides:
A program storage unit for storing the program;
A rule storage unit that stores rule information in which rules for updating the program are defined;
An update information receiving unit for receiving update information for updating the program;
A determination unit that determines whether the update information matches the rule information;
And an update unit that updates the program stored in the program storage unit using the update information when it is determined that the determination unit is suitable.

この発明により、最終製品を製造するメーカが、制御装置が持つFWアップデート機能のエンドユーザの使用を、制御及び制限が可能となる。   According to the present invention, a manufacturer that manufactures the final product can control and limit the use of the end user of the FW update function of the control device.

実施の形態1を示す図で、FWアップデートシステム1の構成示す図。FIG. 3 is a diagram illustrating the configuration of the FW update system 1 according to the first embodiment. 実施の形態1を示す図で、図1を通信ネットワーク40への接続状態で示す図。FIG. 2 shows the first embodiment, and shows FIG. 1 in a connected state to a communication network 40. 実施の形態1を示す図で、セットメーカ20が制御装置105を含む最終製品を出荷する工程を説明する図。FIG. 5 shows the first embodiment, and is a diagram for explaining a process in which the set maker 20 ships a final product including the control device 105. 実施の形態1を示す図で、プロジェクトファイル202及びFWの更新ルールが記載されたルールファイル205を示す図。The figure which shows Embodiment 1 and shows the rule file 205 in which the update rule of the project file 202 and FW was described. 実施の形態1を示す図で、セットメーカ20からエンドユーザ30に渡される制御装置105及びプロジェクトファイル202を示す図。FIG. 3 is a diagram illustrating the first embodiment, and illustrates a control device 105 and a project file 202 that are passed from the set maker 20 to the end user 30. 実施の形態1を示す図で、エンドユーザ30が、制御装置105(30)のFWを更新する場合を説明する図。The figure which shows Embodiment 1 and is a figure explaining the case where the end user 30 updates FW of the control apparatus 105 (30). 実施の形態1を示す図で、制御装置105の構成を示すブロック図。FIG. 3 is a diagram illustrating the first embodiment and is a block diagram illustrating a configuration of a control device 105; 実施の形態1を示す図で、エンドユーザ30における、エンドユーザ装置300及び制御装置105(30)の動作を示すシーケンス図。FIG. 5 is a diagram illustrating the first embodiment, and is a sequence diagram illustrating operations of the end user device 300 and the control device 105 (30) in the end user 30. 実施の形態1を示す図で、複数のユニットA〜EがファームウェアA〜Eを使用する状態を示す図。FIG. 5 shows the first embodiment, and shows a state in which a plurality of units A to E use firmware A to E. 実施の形態1を示す図で、ユニットAの構成を示すブロック図。FIG. 3 is a diagram illustrating the first embodiment and is a block diagram illustrating a configuration of a unit A. 実施の形態1を示す図で、ユニットAの有するルールファイル205Aを示す図。FIG. 5 shows the first embodiment, and shows a rule file 205A of unit A. 実施の形態1を示す図で、部品交換によって、意図せずFWの組み合わせが変更されるケースでの動作を示す図。The figure which shows Embodiment 1 and shows the operation | movement in the case where the combination of FW is changed unintentionally by component replacement. 実施の形態1を示す図で、ユニットAが保有するルールファイル205Aを示す図。The figure which shows Embodiment 1 and shows the rule file 205A which the unit A has. 実施の形態1を示す図で、制御装置105(30)が、バージョン取得部を備える構成を示すブロック図。FIG. 5 is a diagram illustrating the first embodiment, and is a block diagram illustrating a configuration in which the control device 105 (30) includes a version acquisition unit. 実施の形態1を示す図で、ユニットAがバージョンを取得するシーケンスを示す図。FIG. 5 shows the first embodiment, and shows a sequence in which unit A obtains a version. 実施の形態2を示す図で、制御装置のハードウェア構成を示す図。FIG. 9 is a diagram illustrating the second embodiment and illustrates a hardware configuration of a control device.

実施の形態1.
<***構成の説明***>
図1から図15を参照して実施の形態1を説明する。図1は、FWのアップデートに必要なFWアップデートシステム1の構成示す。図2は、図1を、通信ネットワーク40への接続状態で示す図である。また図2は、FW配信サーバ装置100(以下、配信サーバ100)、セットメーカ装置200及びエンドユーザ装置300のブロック構成図を示した。
Embodiment 1 FIG.
<*** Explanation of configuration *****>
The first embodiment will be described with reference to FIGS. FIG. 1 shows a configuration of an FW update system 1 necessary for FW update. FIG. 2 is a diagram illustrating FIG. 1 in a state of connection to the communication network 40. 2 shows a block configuration diagram of the FW distribution server apparatus 100 (hereinafter, distribution server 100), the set maker apparatus 200, and the end user apparatus 300.

配信サーバ100は、制御部110、更新情報生成部120、通信部130、記憶部140を備える。制御部110は配信サーバ100の動作を制御する。更新情報生成部120は、後述する更新用FW102を生成する。通信部130は通信ネットワーク40を介してセットメーカ装置200、エンドユーザ装置300と通信する。記憶部140は更新用FW102などの情報を記憶する。   The distribution server 100 includes a control unit 110, an update information generation unit 120, a communication unit 130, and a storage unit 140. The control unit 110 controls the operation of the distribution server 100. The update information generation unit 120 generates an update FW 102 to be described later. The communication unit 130 communicates with the set maker device 200 and the end user device 300 via the communication network 40. The storage unit 140 stores information such as the update FW 102.

セットメーカ装置200は、開発ツール実行部210、通信部220、記憶部230を備える。開発ツール実行部210は、記憶部230に記憶された、プログラムである開発ツール201を実行する。通信部220は通信ネットワーク40を介して配信サーバ100、エンドユーザ装置300と通信する。記憶部230は開発ツール201などの情報を記憶する。開発ツール実行部210は、後述のプロジェクトファイル202を生成するプロジェクトファイル生成部211、後述のルールファイルを生成するルール情報生成部212を備える。   The set maker apparatus 200 includes a development tool execution unit 210, a communication unit 220, and a storage unit 230. The development tool execution unit 210 executes the development tool 201 that is a program stored in the storage unit 230. The communication unit 220 communicates with the distribution server 100 and the end user device 300 via the communication network 40. The storage unit 230 stores information such as the development tool 201. The development tool execution unit 210 includes a project file generation unit 211 that generates a project file 202 described later, and a rule information generation unit 212 that generates a rule file described later.

エンドユーザ装置300は、開発ツール実行部310、通信部320、記憶部330を備える。開発ツール実行部310は、記憶部330に記憶された、プログラムである開発ツール301を実行する。通信部320は通信ネットワーク40を介して通信する。記憶部330は開発ツール301などの情報を記憶する。   The end user device 300 includes a development tool execution unit 310, a communication unit 320, and a storage unit 330. The development tool execution unit 310 executes the development tool 301 that is a program stored in the storage unit 330. The communication unit 320 communicates via the communication network 40. The storage unit 330 stores information such as the development tool 301.

図1の制御装置メーカ10は、FWを配信する配信サーバ100を持ち、更新用FW102を管理する。
(1)制御装置メーカ10とは、制御装置を製造するメーカである。具体例としては、最終製品がPLC(プログラマブル ロジック コントローラ)である場合には、PLCを構成するCPUユニットや通信ユニットなどが制御装置である。制御装置とは他の機器を制御する装置である。
(2)更新用FW102とは、制御装置105の有するFWを更新するための情報である。なお、FWはプログラムである。よって、更新用FW102とは、制御装置105の有するプログラムを更新するための更新情報である。更新用FW102は、更新前のFWと更新後のFWとの差分情報でもよいし、更新前のFWの全部と置き換わる全体情報でもよい。なお、ルールファイル205も更新されるが、ルールファイル205についても更新用FW102と同様に、差分情報でもよいし、全体情報でもよい。
The control apparatus manufacturer 10 in FIG. 1 has a distribution server 100 that distributes FW, and manages the update FW 102.
(1) The control device manufacturer 10 is a manufacturer that manufactures a control device. As a specific example, when the final product is a PLC (programmable logic controller), a CPU unit, a communication unit, or the like constituting the PLC is a control device. A control device is a device that controls other devices.
(2) The update FW 102 is information for updating the FW included in the control device 105. Note that FW is a program. Therefore, the update FW 102 is update information for updating a program included in the control device 105. The update FW 102 may be difference information between the FW before the update and the FW after the update, or may be overall information that replaces all of the FW before the update. Note that the rule file 205 is also updated, but the rule file 205 may also be difference information or overall information, similar to the update FW 102.

配信サーバ100は、通信ネットワーク40に接続され、通信部130を介して、セットメーカ装置200や、エンドユーザ装置300からのアクセスを受け入れる。   The distribution server 100 is connected to the communication network 40 and accepts access from the set maker device 200 and the end user device 300 via the communication unit 130.

図1のセットメーカ20では、制御装置メーカ10から提供される開発ツール201が格納された、セットメーカ装置200を有する。セットメーカ装置200は制御装置105(20)と接続されている。セットメーカ20では、制御装置105(20)に対してセットメーカ装置200に格納された開発ツール201を用いて、自身の目的に合わせて追加的な開発を行う。セットメーカ20は、制御装置メーカ10からの通知か、あるいは定期確認により、FW更新の必要性を認識する。FWの更新が必要性な場合は、セットメーカ20は、セットメーカ装置200によって、配信サーバ100から更新用FW102をダウンロードする。ダウンロードされた更新用FW102は、セットメーカ装置200を介して、セットメーカ20の制御装置105(20)へ送信される。制御装置105(20)は、受信した更新用FW102で、自身のFWを更新する。なお、図1において、制御装置メーカ10、セットメーカ20,エンドユーザ30のそれぞれに制御装置105を示しているが、制御装置105は同じものである。制御装置105(10)は、制御装置105が制御装置メーカ10に存在することを示す。制御装置105(20)は、制御装置105(10)がセットメーカ20に搬入されたものであることを示す。制御装置105(30)は、制御装置105(10)がセットメーカ20を経由して、エンドユーザ30に搬入されたものであることを示す。区別の不要な場合は制御装置105と記載する。ここで、更新用FW102は非特許文献1に開示される方法あるいは類似の方法によって保護されていると仮定する。保護の方式についは特に制限を設けない。   The set maker 20 in FIG. 1 includes a set maker apparatus 200 in which a development tool 201 provided from the control apparatus maker 10 is stored. The set maker device 200 is connected to the control device 105 (20). The set maker 20 uses the development tool 201 stored in the set maker apparatus 200 for the control apparatus 105 (20) to perform additional development according to its own purpose. The set maker 20 recognizes the necessity of FW update by the notification from the control device maker 10 or the periodic confirmation. When the FW needs to be updated, the set maker 20 downloads the update FW 102 from the distribution server 100 using the set maker apparatus 200. The downloaded update FW 102 is transmitted to the control device 105 (20) of the set maker 20 via the set maker device 200. The control device 105 (20) updates its own FW with the received update FW102. In FIG. 1, the control device 105 is shown for each of the control device manufacturer 10, the set manufacturer 20, and the end user 30, but the control device 105 is the same. The control device 105 (10) indicates that the control device 105 exists in the control device manufacturer 10. The control device 105 (20) indicates that the control device 105 (10) has been carried into the set maker 20. The control device 105 (30) indicates that the control device 105 (10) is carried into the end user 30 via the set maker 20. When the distinction is unnecessary, it is described as a control device 105. Here, it is assumed that the update FW 102 is protected by a method disclosed in Non-Patent Document 1 or a similar method. There are no particular restrictions on the protection method.

同様に図1のエンドユーザ30でも、制御装置メーカ10から提供される開発ツール301が格納された、エンドユーザ装置300を有する。エンドユーザ30では、セットメーカ20で開発された最終製品に内包する形で、制御装置105(20)がリリースされる。なおセットメーカ20とは、制御装置メーカ10が製造した複数の制御機器を用いることで、複数の制御装置を含む最終製品を組み立てるメーカである。上記のように最終製品がPLCであれば、制御装置はCPUユニットや通信ユニットである。エンドユーザ装置300は制御装置105(30)と接続されており、エンドユーザ30もセットメーカ20と同様に、制御装置105(30)に対してエンドユーザ装置300に格納された開発ツール301を用いて、自身の目的に合わせて追加的な開発を行う。エンドユーザ30においても制御装置メーカ10からの通知か、あるいは定期確認によりFW更新の必要性を認識し、配信サーバ100からエンドユーザ装置300を介して更新用FW102をダウンロードする。ダウンロードされた更新用FW102は、エンドユーザ装置300を介して制御装置105(30)へ送信される。制御装置105(30)は、受信した更新用FW102で自身のFWを更新する。   Similarly, the end user 30 of FIG. 1 also has an end user device 300 in which a development tool 301 provided from the control device manufacturer 10 is stored. In the end user 30, the control device 105 (20) is released in the form of being included in the final product developed by the set maker 20. The set maker 20 is a maker that assembles a final product including a plurality of control devices by using a plurality of control devices manufactured by the control device maker 10. As described above, if the final product is a PLC, the control device is a CPU unit or a communication unit. The end user device 300 is connected to the control device 105 (30), and the end user 30 also uses the development tool 301 stored in the end user device 300 for the control device 105 (30) as in the case of the set manufacturer 20. And additional development to suit their own purposes. The end user 30 also recognizes the necessity of FW update by notification from the control device manufacturer 10 or by periodic check, and downloads the update FW 102 from the distribution server 100 via the end user device 300. The downloaded update FW 102 is transmitted to the control device 105 (30) via the end user device 300. The control device 105 (30) updates its own FW with the received update FW102.

以上がFWアップデートの基本構成と基本動作である。   The above is the basic configuration and basic operation of the FW update.

次に図3〜図5を用いて、最終製品の製造元であるセットメーカ20が、制御装置105の持つFWアップデート機能を、エンドユーザ30に対して制御する方法を説明する。   Next, with reference to FIGS. 3 to 5, a method in which the set maker 20 that is the manufacturer of the final product controls the FW update function of the control device 105 to the end user 30 will be described.

図3は、セットメーカ20が制御装置105を含む最終製品をエンドユーザ30に出荷する工程を説明する図である。図4は、プロジェクトファイル202及びFWの更新ルールが記載されたルールファイル205を示す図である。図5は、セットメーカ20からエンドユーザ30に渡される制御装置105及びプロジェクトファイル202を示す。   FIG. 3 is a diagram illustrating a process in which the set maker 20 ships the final product including the control device 105 to the end user 30. FIG. 4 is a diagram showing a rule file 205 in which project file 202 and FW update rules are described. FIG. 5 shows the control device 105 and the project file 202 delivered from the set maker 20 to the end user 30.

まず図3、図4を用いて、セットメーカ20での動作を説明する。以下に説明するセットメーカ20における処理は、セットメーカ装置200によって行われる。   First, the operation in the set maker 20 will be described with reference to FIGS. Processing in the set maker 20 described below is performed by the set maker apparatus 200.

セットメーカ20は、制御装置105(20)のプログラムを、開発ツール201が格納されたセットメーカ装置200で開発する。その際に、一般にセットメーカ装置200に格納された開発ツール201は、制御装置105(20)のプログラムが、制御装置105(20)向けであることを管理する管理機能を有する。その管理機能の一つが、図3、図4に示すプロジェクトファイル202である。   The set maker 20 develops the program of the control device 105 (20) with the set maker device 200 in which the development tool 201 is stored. At that time, the development tool 201 generally stored in the set maker apparatus 200 has a management function for managing that the program of the control apparatus 105 (20) is for the control apparatus 105 (20). One of the management functions is a project file 202 shown in FIGS.

プロジェクトファイル202で管理されるプログラム、パラメータやデータなどのファイル群は、制御装置105(20)の制御に必要なファイルの一式である。
(1)プロジェクトファイル202は、図4に示すように、プログラム、パラメータあるいはデータを、ファイル群として含む。セットメーカ装置200の開発ツール実行部210は、プロジェクトファイル202を管理することで、プログラム、パラメータあるいはデータなどのファイル群を管理する。
(2)図4の更新FW URL203は、プロジェクトファイル202で管理されるデータの一つである。更新FW URL203は、制御装置メーカ10が公開するウェブサイトの位置指定子である。このウェブサイトからは制御装置105の更新用FW102をダウンロードできる。
(3)ルールファイル URL204は、プロジェクトファイル202で管理されるデータの一つである。ルールファイル URL204は、セットメーカ20が公開するウェブサイトの位置指定子である。このウェブサイトからは最終製品のFWアップデートに関し、FWの更新ルールが定められたルールファイル205をダウンロードできる。FWの更新ルールとは、FWのアップデートの条件である。アップデートの条件の例としては、FWのバージョン205−1、アップデートした機能に関する属性205−2、アップデートによって解決する脆弱性の属性205−3などが挙げられる。尚、FWのバージョン205−1も属性情報であり、FWのバージョン205−1を含むこれらの属性情報は、更新用FW102に記載されている。なおルールファイル205も更新される。この更新は後述する。
A group of files such as programs, parameters, and data managed by the project file 202 is a set of files necessary for control of the control device 105 (20).
(1) The project file 202 includes programs, parameters, or data as a file group, as shown in FIG. The development tool execution unit 210 of the set maker apparatus 200 manages a project file 202 to manage a file group such as a program, a parameter, or data.
(2) The update FW URL 203 in FIG. 4 is one of data managed by the project file 202. The update FW URL 203 is a website location specifier published by the control device manufacturer 10. The update FW 102 of the control device 105 can be downloaded from this website.
(3) Rule file The URL 204 is one of data managed by the project file 202. The rule file URL 204 is a location specifier of a website published by the set maker 20. From this website, a rule file 205 in which FW update rules are defined can be downloaded for the FW update of the final product. The FW update rule is a condition for FW update. Examples of update conditions include FW version 205-1, attribute 205-2 related to the updated function, vulnerability attribute 205-3 resolved by the update, and the like. The FW version 205-1 is also attribute information, and the attribute information including the FW version 205-1 is described in the update FW102. The rule file 205 is also updated. This update will be described later.

図5のように、セットメーカ20は、最終製品を出荷する際に制御装置105(20)に対し、セットメーカ装置200の開発ツール実行部210がルールファイル205−1をインストールする。ここではルールファイル205−1はインストールされたルールファイル205を意味し、後にルールファイル205−1が、ルールファイル URL204へのアクセスによって更新された場合、ルールファイル205はルールファイル205−2と記載する。このインストールの際には、図5に示すように、ルールファイル205−1には、セットメーカ20の秘密鍵を用いて生成されたデジタル署名207が付加される。また、セットメーカ20は、最終製品を出荷する際に、制御装置105(20)に対し、ルールファイル205−1に付加されたデジタル署名207を検証する公開鍵206をインストールする。デジタル署名207と公開鍵206とは検証情報2060である。   As shown in FIG. 5, when the set maker 20 ships the final product, the development tool execution unit 210 of the set maker apparatus 200 installs the rule file 205-1 to the control apparatus 105 (20). Here, the rule file 205-1 means the installed rule file 205, and when the rule file 205-1 is later updated by accessing the rule file URL 204, the rule file 205 is described as the rule file 205-2. . At the time of this installation, as shown in FIG. 5, a digital signature 207 generated using the private key of the set maker 20 is added to the rule file 205-1. Further, when the set maker 20 ships the final product, the set maker 20 installs the public key 206 for verifying the digital signature 207 added to the rule file 205-1 to the control device 105 (20). The digital signature 207 and the public key 206 are verification information 2060.

図5に示すように、エンドユーザ30に対し、セットメーカ20からは最終製品とともに、プロジェクトファイル202がリリースされる。   As shown in FIG. 5, a project file 202 is released from the set maker 20 together with the final product to the end user 30.

次にエンドユーザ30における動作を説明する。図6は、エンドユーザ30が、制御装置105(30)のFWを更新する場合を説明する図である。図7は、制御装置105の構成を示すブロック図である。FWはプログラム記憶部1051に記憶されている。図8はエンドユーザ30における、エンドユーザ装置300及び制御装置105(30)の動作を示すシーケンス図である。   Next, the operation in the end user 30 will be described. FIG. 6 is a diagram illustrating a case where the end user 30 updates the FW of the control device 105 (30). FIG. 7 is a block diagram illustrating a configuration of the control device 105. The FW is stored in the program storage unit 1051. FIG. 8 is a sequence diagram showing operations of the end user device 300 and the control device 105 (30) in the end user 30.

<***構成の説明***>
まず、図7を参照して制御装置105の構成を説明する。
<*** Explanation of configuration *****>
First, the configuration of the control device 105 will be described with reference to FIG.

プログラム更新装置11である制御装置105は、プログラム記憶部1051、ルール記憶部1052、更新情報受信部1053、判定部1054、更新部1055、ルール情報受信部1056、要求送信部1057、検証部1058を備える。プログラム記憶部1051は、プログラムであるファームウェアを記憶する。ルール記憶部1052は、ファームウェアの更新のルールが定められたルール情報2051であるルールファイル205を記憶する。更新情報受信部1053は、ファームウェアを更新するための更新情報1020である更新用FW102を受信する。判定部1054は、更新情報1020がルール情報2051に適合するかどうかを判定する。更新部1055は、判定部1054が適合すると判定した場合に、プログラム記憶部1051が記憶するファームウェアを、更新情報1020を用いて更新する。また更新部1055は、ルール情報を更新する。   The control device 105 that is the program update device 11 includes a program storage unit 1051, a rule storage unit 1052, an update information reception unit 1053, a determination unit 1054, an update unit 1055, a rule information reception unit 1056, a request transmission unit 1057, and a verification unit 1058. Prepare. The program storage unit 1051 stores firmware that is a program. The rule storage unit 1052 stores a rule file 205 that is rule information 2051 in which firmware update rules are defined. The update information receiving unit 1053 receives the update FW 102 that is update information 1020 for updating the firmware. The determination unit 1054 determines whether the update information 1020 matches the rule information 2051. The update unit 1055 updates the firmware stored in the program storage unit 1051 using the update information 1020 when it is determined that the determination unit 1054 is suitable. The update unit 1055 updates rule information.

ルール情報受信部1056は、ルール情報2051が更新された新版ルール情報2052を受信する。要求送信部1057は、新版ルール情報2052が受信された場合に、更新情報1020の送信を要求する送信要求51を送信する。この場合、更新情報受信部1053は、送信要求51の応答として、更新情報1020を受信し、判定部1054は、更新情報受信部1053が応答として受信した更新情報1020が、新版ルール情報2052に適合するかどうかを判定する。   The rule information receiving unit 1056 receives the new version rule information 2052 in which the rule information 2051 is updated. When the new version rule information 2052 is received, the request transmission unit 1057 transmits a transmission request 51 for requesting transmission of the update information 1020. In this case, the update information receiving unit 1053 receives the update information 1020 as a response to the transmission request 51, and the determination unit 1054 matches the new version rule information 2052 with the update information 1020 received as a response by the update information receiving unit 1053. Determine whether to do.

ルール記憶部1052が記憶するルール情報2051は、検証情報2060を有している。検証部1058は、検証情報2060と、ルール情報受信部1056が受信した新版ルール情報2052とに基づいて、新版ルール情報2052が正当かどうかを検証し、検証の結果、正当でないと判定した場合に、新版ルール情報2052を破棄する。   The rule information 2051 stored in the rule storage unit 1052 has verification information 2060. The verification unit 1058 verifies whether or not the new version rule information 2052 is valid based on the verification information 2060 and the new version rule information 2052 received by the rule information reception unit 1056, and determines that the new version rule information 2052 is not valid as a result of the verification. The new version rule information 2052 is discarded.

ルール情報受信部1056は、ウェブサイト103にアップロードされた新版ルール情報2052をウェブサイト103からダウンロードするダウンロード装置3000から、新版ルール情報2052を受信する。この場合、ダウンロード装置3000は、エンドユーザ装置300である。   The rule information receiving unit 1056 receives the new version rule information 2052 from the download device 3000 that downloads the new version rule information 2052 uploaded to the website 103 from the website 103. In this case, the download device 3000 is the end user device 300.

<***動作の説明***>
次に図6、図8を参照して、エンドユーザ装置300、制御装置105(30)の動作を説明する。
<*** Explanation of operation *****>
Next, operations of the end user device 300 and the control device 105 (30) will be described with reference to FIGS.

エンドユーザ30は、制御装置メーカ10やセットメーカ20からの通知、あるいは定期的な確認によりFW更新の必要性を認識する。エンドユーザ30は、開発ツール301とプロジェクトファイル202とが格納されたエンドユーザ装置300を用いて、最終製品に含まれる制御装置105(30)のメンテナンスを行う。   The end user 30 recognizes the necessity of FW update by notification from the control device manufacturer 10 or the set manufacturer 20 or by periodic confirmation. The end user 30 performs maintenance of the control device 105 (30) included in the final product using the end user device 300 in which the development tool 301 and the project file 202 are stored.

<ステップS101>
エンドユーザ装置300の開発ツール実行部310は、プロジェクトファイル202に規定されたルールファイルURL204を通信部320を用いて参照し、ルールファイル205−1の新しいバージョンがあるかどうかをチェックする。ここで、ルールファイル205のバージョンは、図4に示すように、プロジェクトファイル202で管理されている。
<Step S101>
The development tool execution unit 310 of the end user device 300 refers to the rule file URL 204 defined in the project file 202 using the communication unit 320 and checks whether there is a new version of the rule file 205-1. Here, the version of the rule file 205 is managed by the project file 202 as shown in FIG.

<ステップS102>
開発ツール実行部310は、新しいバージョンがある場合は、ウェブサイトのページからルールファイル205−2をダウンロードする。
<Step S102>
When there is a new version, the development tool execution unit 310 downloads the rule file 205-2 from the website page.

<ステップS103>
開発ツール実行部310は、新しいバージョンのルールファイル205−2をダウンロードした場合、通信部320を介して制御装置105(30)へ送信する。なおエンドユーザ装置300は記憶部330にルールファイル205を格納している。開発ツール実行部310が制御装置105に送信するルールファイル205は、記憶部330のルールファイル205のコピーである。
<Step S103>
When the development tool execution unit 310 downloads a new version of the rule file 205-2, the development tool execution unit 310 transmits the rule file 205-2 to the control device 105 (30) via the communication unit 320. Note that the end user device 300 stores the rule file 205 in the storage unit 330. The rule file 205 transmitted from the development tool execution unit 310 to the control device 105 is a copy of the rule file 205 in the storage unit 330.

<ステップS104>
制御装置105(30)のルール情報受信部1056は、新版ルール情報2052であるルールファイル205−2を受信する。検証部1058は、あらかじめセットメーカ20でインストールされた公開鍵206を用いて、ルールファイル205−1のデジタル署名207の正当性を検証する。なおルールファイル205−1はルール記憶部1052に記憶されている。検証部1058は、通常のデジタル署名207の検証方式を実行する。具体的には、検証部1058は、公開鍵206でデジタル署名207を復号し、復号値h1を生成する。また、検証部1058は、取得した新しいバージョンのルールファイル205−2に含まれる情報を用いてハッシュ値h2を生成し、復号値h1とハッシュ値h2とを比較する。検証部1058は、h1=h2の場合、検証成功と判定し、h1=h2でない場合は検証失敗と判定する。
<Step S104>
The rule information receiving unit 1056 of the control device 105 (30) receives the rule file 205-2 which is the new version rule information 2052. The verification unit 1058 verifies the validity of the digital signature 207 of the rule file 205-1 using the public key 206 installed in advance by the set maker 20. The rule file 205-1 is stored in the rule storage unit 1052. The verification unit 1058 executes a normal digital signature 207 verification method. Specifically, the verification unit 1058 decrypts the digital signature 207 with the public key 206 and generates a decrypted value h1. Also, the verification unit 1058 generates a hash value h2 using information included in the acquired new version of the rule file 205-2, and compares the decrypted value h1 and the hash value h2. The verification unit 1058 determines that the verification is successful when h1 = h2, and determines that the verification is not successful when h1 = h2.

<ステップS105>
検証失敗の場合は、検証部1058は、受信したルールファイル205−2を破棄し、エンドユーザ装置300にエラーを通知する。
<Step S105>
In the case of verification failure, the verification unit 1058 discards the received rule file 205-2 and notifies the end user device 300 of an error.

<ステップS106>
検証部1058による検証が成功した場合、更新部1055は、受信した更新用のルールファイル205−2で、自身が保持するルールファイル250−1を更新する。また要求送信部1057は、エンドユーザ装置300に更新成功の通知を送信する。更新成功の通知は、更新用FW102の送信を要求する送信要求51である。
<Step S106>
When the verification by the verification unit 1058 is successful, the update unit 1055 updates the rule file 250-1 held by the update unit 1055 with the received update rule file 205-2. Further, the request transmission unit 1057 transmits a notification of successful update to the end user device 300. The notification of successful update is a transmission request 51 for requesting transmission of the update FW 102.

<ステップS107>
エンドユーザ装置300の通信部320が送信要求51を受信する。送信要求51が受信された場合、開発ツール実行部310は通信部320を介して更新FW URL203にアクセスし、ルールファイル205−2の示すルールに適合する更新用FW102があるかどうかを確認する。なお更新FW URL203の実体は、図2に示すように配信サーバ100である。開発ツール実行部310は、ルールに適合する更新用FW102がある場合には、適合する更新用FW102を更新FW URL203からダウンロードする(S108;YES)。開発ツール実行部310は、更新FW URL203にアクセスした結果、ルールファイル205−2のルールに適合する更新用FW102が無い場合は、ファームウェアアップデートが不要なことを表示装置などに出力して通知する(S108;NO)。
<Step S107>
The communication unit 320 of the end user device 300 receives the transmission request 51. When the transmission request 51 is received, the development tool execution unit 310 accesses the update FW URL 203 via the communication unit 320 and checks whether there is an update FW 102 that conforms to the rule indicated by the rule file 205-2. The entity of the update FW URL 203 is the distribution server 100 as shown in FIG. When there is an update FW 102 that matches the rule, the development tool execution unit 310 downloads the update FW 102 that matches the rule from the update FW URL 203 (S108; YES). If there is no update FW 102 that conforms to the rules of the rule file 205-2 as a result of accessing the update FW URL 203, the development tool execution unit 310 outputs to the display device and notifies that no firmware update is required ( S108; NO).

<ステップS109>
開発ツール実行部310は通信部320を介して、ダウンロードされた更新用FW102を、制御装置105(30)へ送信する。
<Step S109>
The development tool execution unit 310 transmits the downloaded update FW 102 to the control device 105 (30) via the communication unit 320.

<ステップS110>
更新情報受信部1053が、更新情報1020である更新用FW102を受信する。判定部1054は、受信された更新用FW102が、ルールファイル205−2の示すルールに適合するどうかを確認する。この時、前述のとおり、更新用FW102は非特許文献1に開示される方法あるいは類似の方法によって改竄から保護されていると仮定し、その保護の方法、方式についは特に制限を設けない。
<Step S110>
The update information receiving unit 1053 receives the update FW 102 that is the update information 1020. The determination unit 1054 confirms whether or not the received update FW 102 conforms to the rule indicated by the rule file 205-2. At this time, as described above, it is assumed that the update FW 102 is protected from tampering by the method disclosed in Non-Patent Document 1 or a similar method, and the protection method and method are not particularly limited.

<ステップS111>
ルールに適合する場合(S110でYES)は、更新部1055は、適合が確認(S110でYES)され、かつ、正当性が確認(S104でYES)された更新用FW102で、制御装置105(30)のFWを更新する。更新完了後、更新部1055は、正常終了をエンドユーザ装置300に送信する。
<Step S111>
When the rule is met (YES in S110), the update unit 1055 is the update FW 102 for which the match is confirmed (YES in S110) and the validity is confirmed (YES in S104), and the controller 105 (30 ) FW is updated. After completing the update, the update unit 1055 transmits a normal end to the end user device 300.

<ステップS110でNO>
なおルールに適合しない場合(S110でNO)、更新部1055は、FWを更新せず、更新不可をエンドユーザ装置300に送信する。
<NO in step S110>
If the rule does not match (NO in S110), the update unit 1055 does not update the FW and transmits an update impossible message to the end user device 300.

なお、実施の形態1のルールファイル205は単一のものではなく、エンドユーザ30毎に分けてもよいし、最終製品のバージョンごとに分けてもよい。   The rule file 205 according to the first embodiment is not a single one, and may be divided for each end user 30 or for each version of the final product.

次に、図9〜図11を参照して、制御装置105(30)の備える各ユニットのFWの組み合わせに関するルールを説明する。   Next, with reference to FIG. 9 to FIG. 11, rules regarding the FW combinations of the units included in the control device 105 (30) will be described.

図9は、制御装置105(30)が複数のユニットA〜Eを有しており、複数のユニットA〜Eが、それぞれファームウェアA〜Eを使用する状態を示す。制御装置105(30)は、複数のユニットを備える複合ユニット装置である。図9では、更新FW群401は、更新用のファームウェアA〜Eからなる。更新用のファームウェアA、B等を更新用FW(A)、更新用FW(B)等と記す。更新用FW(A)は、図1等で述べた更新用FW102に相当する。更新用FW(B)〜更新用FW(E)も同様に、それぞれ更新用FW102に相当する。図10は、マスタユニットとなるユニットAの構成を示すブロック図である。ユニットAは図7の制御装置105と同じ構成である。図7のプログラム記憶部1051〜検証部1058は、図10のプログラム記憶部1051M〜検証部1058Mに対応し、機能も同様である。図11は、ユニットAの有するルールファイル205Aを示す。ルールファイル205Aはルール記憶部1052Mに記憶されている。図10に示すユニットAの動作は図8の制御装置105(30)の動作と同じであり、図7の制御装置105(30)をユニットAと読み替えることができる。但しルールファイル205Aの内容が異なる。   FIG. 9 shows a state in which the control device 105 (30) has a plurality of units A to E, and the plurality of units A to E use the firmware A to E, respectively. The control device 105 (30) is a composite unit device including a plurality of units. In FIG. 9, the update FW group 401 includes update firmware A to E. The firmware A and B for update are referred to as update FW (A), update FW (B), and the like. The update FW (A) corresponds to the update FW 102 described in FIG. Similarly, the update FW (B) to the update FW (E) correspond to the update FW 102, respectively. FIG. 10 is a block diagram showing a configuration of unit A serving as a master unit. Unit A has the same configuration as the control device 105 of FIG. The program storage unit 1051 to verification unit 1058 in FIG. 7 correspond to the program storage unit 1051M to verification unit 1058M in FIG. FIG. 11 shows a rule file 205A of unit A. The rule file 205A is stored in the rule storage unit 1052M. The operation of the unit A shown in FIG. 10 is the same as that of the control device 105 (30) of FIG. 8, and the control device 105 (30) of FIG. However, the contents of the rule file 205A are different.

図9に示す制御装置105(30)は、FWが更新される可能性のあるユニットA、B、C、D、Eの、5つのユニットで構成される。これは例示であり、構成を限定するものではない。ここで、ユニットAが制御装置105(30)においてマスタの役割を果たすものとする。以下、ユニットAをマスタユニットAと呼ぶ。制御装置105(30)がPLCであれば、マスタユニットAがCPUユニットであり、スレイブとなるユニットB、C、D、Eが、CPUユニット以外の、通信用などのユニットである。   The control device 105 (30) illustrated in FIG. 9 includes five units A, B, C, D, and E that may be updated. This is an example, and the configuration is not limited. Here, it is assumed that the unit A plays the role of a master in the control device 105 (30). Hereinafter, unit A is referred to as master unit A. If the control device 105 (30) is a PLC, the master unit A is a CPU unit, and the slave units B, C, D, and E are communication units other than the CPU unit.

更新FW群401は、それぞれ、図8に示す方法でダウンロードされたものである(図8のS109)。   The updated FW group 401 is downloaded by the method shown in FIG. 8 (S109 in FIG. 8).

更新FW群401は、図9での経路41を経由する。すなわち、更新FW群401は必ずマスタユニットAを経由し、それぞれのユニットA〜EのFWが更新される。この更新処理では、マスタユニットAは、更新用FW(A)、FW(B)等がルールファイル205Aのルールに合致しているかを確認する。つまり、更新FW群401を更新する場合は、マスタユニットAが図8の制御装置105(30)の役割を果たすものであり、経路41の場合は、図8の制御装置105(30)が、マスタユニットAに置き換わる。経路41の場合は、前述のとおり、更新用FW(A)等に対する改竄は、非特許文献1に開示される方法あるいは類似の方法によって保護される。   The update FW group 401 passes through the path 41 in FIG. That is, the update FW group 401 always passes through the master unit A, and the FW of each unit A to E is updated. In this update process, the master unit A confirms whether the update FW (A), FW (B), and the like match the rules of the rule file 205A. That is, when updating the update FW group 401, the master unit A plays the role of the control device 105 (30) in FIG. 8, and in the case of the path 41, the control device 105 (30) in FIG. Replaced with master unit A. In the case of the path 41, as described above, the tampering with the update FW (A) or the like is protected by the method disclosed in Non-Patent Document 1 or a similar method.

一方、スレイブユニットB〜Eは、図9での経路42、すなわち、直接スレイブのユニットに対するFWの更新を許可しない。このように、スレイブユニットB〜EのFWの更新の際には、必ずマスタユニットAを経由させる。スレイブユニットは、制御部、通信部、FWを記憶する記憶部を有する(図示していない)。制御部は、通信部を介してFWの更新要求を受信した場合は、要求を拒否する。   On the other hand, the slave units B to E do not permit the FW update for the path 42 in FIG. 9, that is, the direct slave unit. As described above, when the FW of the slave units B to E is updated, the master unit A is always used. The slave unit includes a control unit, a communication unit, and a storage unit that stores the FW (not shown). When receiving a FW update request via the communication unit, the control unit rejects the request.

マスタユニットAのルール記憶部1052Mは、図11のルールファイル205Aを記憶している。図11の例ではルールファイル205Aは、各ユニットのFWを更新してよいかどうかを更新可否情報205A−0として有する。マスタユニットAの判定部1054Mは、マスタユニットAの更新用FW(A)と、さらに、スレイブユニットB〜Eの更新用FW(B)〜FW(E)が、セットメーカ20がルールファイル205Aとして示すルールに従うFWであるかをチェックする。このチェックは、図8のS110に相当し、S110において、マスタユニットAの判定部1054Mは、ルールファイル205Aの示すルールを参照し、更新しようとするFWがルールに適合するかを判定する。具体的には以下の様である。判定部1054Mは、適合を判定するFWが更新用FW(B)の場合、更新可否情報205A−0を参照し、更新可なので適合と判定する。しかし適合を判定するFWが更新用FW(C)の場合、更新可否情報205A−0で更新不可であるため、判定部1054Mは、ルールに適合しないと判定する。   The rule storage unit 1052M of the master unit A stores the rule file 205A of FIG. In the example of FIG. 11, the rule file 205A has update availability information 205A-0 indicating whether or not the FW of each unit may be updated. The determination unit 1054M of the master unit A includes the update FW (A) of the master unit A, and the update FW (B) to FW (E) of the slave units B to E as the rule file 205A by the set manufacturer 20. It is checked whether the FW conforms to the rule shown. This check corresponds to S110 in FIG. 8, and in S110, the determination unit 1054M of the master unit A refers to the rule indicated by the rule file 205A and determines whether the FW to be updated conforms to the rule. Specifically, it is as follows. When the FW for determining conformity is the update FW (B), the determination unit 1054M refers to the update availability information 205A-0 and determines that it is compatible because it can be updated. However, when the FW for determining the conformity is the update FW (C), the determination unit 1054M determines that it does not conform to the rule because the update is not possible with the update availability information 205A-0.

マスタユニットAでは、判定部1054Mが更新FW群401に対してルールに適合するかどうかを判定する他は、図8の制御装置105(30)の動作と同様である。判定部1054Mがルールに適合すると判定した場合、更新部1055MがFWを更新する。   In the master unit A, the operation is the same as that of the control device 105 (30) in FIG. 8 except that the determination unit 1054M determines whether the update FW group 401 conforms to the rule. When the determination unit 1054M determines that the rule is met, the update unit 1055M updates the FW.

次に図12〜図15を参照して、マスタユニットAが各ユニットからFWのバージョンを取得する場合を説明する。図9の場合と同様に、制御装置105(30)はユニットA〜Eを備える。   Next, a case where the master unit A acquires the FW version from each unit will be described with reference to FIGS. As in the case of FIG. 9, the control device 105 (30) includes units A to E.

図12は、部品交換によって、意図せずFWの組み合わせが変更されるケースでの動作を示す。尚、図12は例示であり、構成や属性を限定するものではない。図13は、マスタユニットAが保有するルールファイル205Aを示す。ルールファイル205AのFWバージョン205A−1では、各ユニットに認められるFWのバージョンの上限が規定されている。FWバージョン205A−1では、バージョン1.2まで、FWが更新可能である。図14は、マスタユニットAが、さらに、各ユニットからFWのバージョンを取得するバージョン取得部1059Mを備える構成である。図15は、バージョン取得部1059MがFWからバージョンを取得する際の動作を示す。   FIG. 12 shows an operation in the case where the combination of FWs is changed unintentionally by component replacement. Note that FIG. 12 is an example, and the configuration and attributes are not limited. FIG. 13 shows a rule file 205A held by the master unit A. In the FW version 205A-1 of the rule file 205A, the upper limit of the FW version allowed for each unit is defined. In FW version 205A-1, the FW can be updated up to version 1.2. FIG. 14 shows a configuration in which the master unit A further includes a version acquisition unit 1059M that acquires the FW version from each unit. FIG. 15 shows an operation when the version acquisition unit 1059M acquires a version from the FW.

図12のように、制御装置105(30)のユニットBが、ハードウェア故障を起こし、ユニットB−1と交換されるケースを想定する。このとき、ユニットBのFWバージョンは1.1であり、ユニットAに搭載されるルールファイル205AのFWバージョン205A−1に適合する。FWバージョン205A−1によれば、バージョン1.2まではFWを更新可能であるが、最新の1.3への更新は認められない。よって交換するユニットB−1に最新のバージョン1.3のFWが搭載されている場合、FWバージョン205A−1に適合しない。   As shown in FIG. 12, it is assumed that the unit B of the control device 105 (30) has a hardware failure and is replaced with the unit B-1. At this time, the FW version of unit B is 1.1, which conforms to the FW version 205A-1 of the rule file 205A installed in unit A. According to FW version 205A-1, FW can be updated up to version 1.2, but update to the latest 1.3 is not permitted. Therefore, when the latest version 1.3 FW is mounted on the unit B-1 to be replaced, it does not conform to the FW version 205A-1.

<***動作の説明***>
<ステップS201>
マスタユニットAのバージョン取得部1059Mは、制御装置105(30)の起動時に、自身のFWのバージョンに加え、ユニットB〜EのそれぞれのFWのバージョンを、各FWから取得する。
<*** Explanation of operation *****>
<Step S201>
The version acquisition unit 1059M of the master unit A acquires the FW version of each of the units B to E from each FW in addition to its own FW version when the control device 105 (30) is activated.

<ステップS202>
判定部1054Mは、ルールファイル205Aに記載のルールと、取得されたバージョンとの整合性を確認する。
<Step S202>
The determination unit 1054M confirms the consistency between the rules described in the rule file 205A and the acquired version.

<ステップS203>
ユニットB−1に最新のバージョン1.3のFWが搭載されている場合、ルールとの整合性の確認により、判定部1054Mは、ユニットB−1が、ルールファイル205AのFWバージョン205A−1のルールに適合していないことを発見する。
この場合、要求送信部1057Mが、エンドユーザ装置300に、不敵適を示す不適合信号52を送信する。この不適合信号52は、送信要求51である。送信要求51は、送信を希望する更新用FWの情報を含む。適合しないことの通知は、エンドユーザ装置300に限らず、通知を受信し、表示する機能を有するマスタユニットAの表示機能部(図示していない)や、ネットワーク経由で、HMI(Human Machine Interface)、SCADA(Supervisory Control And Data Acquisition)など他の端末装置に送信してもよい。
<Step S203>
When the latest version 1.3 FW is installed in the unit B-1, the determination unit 1054M confirms that the unit B-1 is the FW version 205A-1 of the rule file 205A by checking the consistency with the rule. Discover that the rules are not met.
In this case, the request transmission unit 1057M transmits a non-conformance signal 52 indicating unsuitability to the end user device 300. This nonconforming signal 52 is a transmission request 51. The transmission request 51 includes information on the update FW that is desired to be transmitted. The notification of non-conformity is not limited to the end user device 300, but a display function unit (not shown) of the master unit A having a function of receiving and displaying the notification, or an HMI (Human Machine Interface) via the network. , May be transmitted to other terminal apparatuses such as SCADA (Supervision Control And Data Acquisition).

<ステップS204、S205>
エンドユーザ装置300は送信要求51を受信した場合、開発ツール実行部310が更新FW URL203にアクセスし、配信サーバ100からルールファイル205Aのルールに適合する更新FW(B)(バージョン1.2)を取得し、制御装置105に送信する(S205)。
<Steps S204 and S205>
When the end user apparatus 300 receives the transmission request 51, the development tool execution unit 310 accesses the update FW URL 203, and the distribution server 100 sends an update FW (B) (version 1.2) that conforms to the rules of the rule file 205A. It is acquired and transmitted to the control device 105 (S205).

<ステップS206>
更新部1055Mは、ユニットB−1のFWを、更新用FW(B)を用いて更新する。このケースでは、エンドユーザ装置300とマスタユニットAとによって、ユニットB−1のファームウェアは「1.2」に更新され、処理が完了する。
<Step S206>
The update unit 1055M updates the FW of the unit B-1 using the update FW (B). In this case, the firmware of the unit B-1 is updated to “1.2” by the end user device 300 and the master unit A, and the process is completed.

<***効果の説明***>
実施の形態1の制御装置105は、セットメーカ20の提供するルールファイル205が格納される。よって、最終製品を製造するセットメーカ20は、制御装置105が持つFWアップデート機能のエンドユーザの使用を、制御及び制限できる。
実施の形態1では、ルールファイル205は更新が可能である。よって、セットメーカ20は、産業用制御装置が持つFWアップデート機能のエンドユーザの使用を、より詳細に、かつ、柔軟に、制御及び制限できる。
また、ルールファイル205はウェブサイトからダウンロード可能であるが、セットメーカ20はセットメーカ装置200で更新した新版ルールファイルをウェブサイトにアップロードできる。よって、セットメーカ20で容易にルールを変更することができ、また、容易に、変更後のルールをエンドユーザ30に提供できる。
<*** Explanation of effects *****>
The control device 105 according to the first embodiment stores a rule file 205 provided by the set maker 20. Therefore, the set maker 20 that manufactures the final product can control and limit the use of the end user of the FW update function of the control device 105.
In the first embodiment, the rule file 205 can be updated. Therefore, the set maker 20 can control and restrict the end user's use of the FW update function of the industrial control device in more detail and flexibly.
The rule file 205 can be downloaded from the website, but the set maker 20 can upload the new version rule file updated by the set maker apparatus 200 to the website. Therefore, the rules can be easily changed by the set maker 20, and the changed rules can be easily provided to the end user 30.

実施の形態1では、マスタユニット判定部1054Mが、ルールファイル205Aを用いたスレイブの更新用FWをチェックするので、FWの組み合わせの管理が可能となり、エンドユーザ30による、不適切なFWアップデートがおこなわれないように制御できる。つまり、図11に示すルールファイル205Aに、セットメーカ20が個々の更新用FWの更新条件を規定することで、FWの組み合わせの更新を管理、制御することができる。また、マスタユニットAのマスタユニット判定部1054Mのみが、FWの更新の可否を判断し、スレイブユニット自体はFWを更新しない。よって、FWの組み合わせを統合して管理できる。   In the first embodiment, the master unit determination unit 1054M checks the FW for updating the slave using the rule file 205A, so that the combination of FWs can be managed, and an inappropriate FW update is performed by the end user 30. Can be controlled. That is, the set manufacturer 20 can manage and control the update of the combination of FWs by defining the update conditions of the individual update FWs in the rule file 205A shown in FIG. Also, only the master unit determination unit 1054M of the master unit A determines whether or not the FW can be updated, and the slave unit itself does not update the FW. Therefore, the combination of FW can be integrated and managed.

実施の形態1の制御装置105では、バージョン取得部1059MがFWのバージョンを取得し、判定部1054Mが、取得されたバージョンがルールファイル205Aに適合するか判定する。よってエンドユーザ30によってユニットが交換された場合にも、FWの組み合わせを管理できる。また、バージョンが適合しない場合は適合するバージョンの更新用FWが取得されるので、FWのバージョンが適合しない場合でも、バージョンの適合するFWに迅速に替えることができる。   In the control device 105 according to the first embodiment, the version acquisition unit 1059M acquires the version of the FW, and the determination unit 1054M determines whether the acquired version matches the rule file 205A. Therefore, even when the unit is replaced by the end user 30, the combination of FW can be managed. In addition, when the version does not match, a compatible version update FW is acquired, so even if the version of the FW does not match, it can be quickly switched to the version compatible FW.

実施の形態2.
図16を参照して実施の形態2を説明する。図16は配信サーバ100、セットメーカ装置200、エンドユーザ装置300、制御装置105、マスタユニットA等を、コンピュータで実現する場合のハードウェア構成例である。図16を参照して説明する。コンピュータである制御装置105を例に説明する。配信サーバ100、セットメーカ装置200、エンドユーザ装置300も、制御装置105の説明が当てはまる。
Embodiment 2. FIG.
The second embodiment will be described with reference to FIG. FIG. 16 is a hardware configuration example when the distribution server 100, the set maker device 200, the end user device 300, the control device 105, the master unit A, and the like are realized by a computer. This will be described with reference to FIG. The control device 105, which is a computer, will be described as an example. The description of the control device 105 also applies to the distribution server 100, the set maker device 200, and the end user device 300.

制御装置105は、プロセッサ901、補助記憶装置902、メモリ903、通信装置904、入力インタフェース905、ディスプレイインタフェース906といったハードウェアを備える。プロセッサ901は、信号線910を介して他のハードウェアと接続され、これら他のハードウェアを制御する。入力インタフェース905は、入力装置907に接続されている。ディスプレイインタフェース906は、ディスプレイ908に接続されている。   The control device 105 includes hardware such as a processor 901, an auxiliary storage device 902, a memory 903, a communication device 904, an input interface 905, and a display interface 906. The processor 901 is connected to other hardware via the signal line 910, and controls these other hardware. The input interface 905 is connected to the input device 907. The display interface 906 is connected to the display 908.

プロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ901は、例えば、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。補助記憶装置902は、例えば、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)である。メモリ903は、例えば、RAM(Random Access Memory)である。通信装置904は、データを受信するレシーバー9041及びデータを送信するトランスミッター9042を含む。通信装置904は、例えば、通信チップ又はNIC(Network Interface Card)である。入力インタフェース905は、入力装置907のケーブル911が接続されるポートである。入力インタフェース905は、例えば、USB(Universal Serial Bus)端子である。ディスプレイインタフェース906は、ディスプレイ908のケーブル912が接続されるポートである。ディスプレイインタフェース906は、例えば、USB端子又はHDMI(登録商標)(High Definition Multimedia Interface)端子である。入力装置907は、例えば、マウス、キーボード又はタッチパネルである。ディスプレイ908は、例えば、LCD(Liquid Crystal Display)である。   The processor 901 is an IC (Integrated Circuit) that performs processing. The processor 901 is, for example, a CPU (Central Processing Unit), a DSP (Digital Signal Processor), or a GPU (Graphics Processing Unit). The auxiliary storage device 902 is, for example, a ROM (Read Only Memory), a flash memory, or an HDD (Hard Disk Drive). The memory 903 is, for example, a RAM (Random Access Memory). The communication device 904 includes a receiver 9041 that receives data and a transmitter 9042 that transmits data. The communication device 904 is, for example, a communication chip or a NIC (Network Interface Card). The input interface 905 is a port to which the cable 911 of the input device 907 is connected. The input interface 905 is, for example, a USB (Universal Serial Bus) terminal. The display interface 906 is a port to which the cable 912 of the display 908 is connected. The display interface 906 is, for example, a USB terminal or an HDMI (registered trademark) (High Definition Multimedia Interface) terminal. The input device 907 is, for example, a mouse, a keyboard, or a touch panel. The display 908 is, for example, an LCD (Liquid Crystal Display).

補助記憶装置902には、図7に示すプログラム記憶部1051〜検証部1058の機能を実現するプログラムが記憶されている。また図14のマスタユニットAの場合であればプログラム記憶部1051M〜バージョン取得部1059Mの機能を実現するプログラムが記憶されている。プログラム記憶部1051〜検証部1058、及びプログラム記憶部1051M〜バージョン取得部1059Mをまとめて「部」と表記する。 このプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。より具体的には「部」のうち記憶部は、プログラム、補助記憶装置902、メモリ903等により実現される。また「部」のうち送信部、受信部はプログラム、通信装置904等によって実現される。記憶部、送信部、受信部以外はプログラムによって実現される。補助記憶装置902には、OS(Operating System)も記憶されている。そして、OSの少なくとも一部がメモリ903にロードされ、プロセッサ901はOSを実行しながら、「部」の機能を実現するプログラムを実行する。図16では、1つのプロセッサ901が図示されているが、制御装置105が複数のプロセッサ901を備えていてもよい。そして、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。また、「部」の処理の結果を示す情報やデータや信号値や変数値が、メモリ903、補助記憶装置902、又は、プロセッサ901内のレジスタ又はキャッシュメモリに記憶される。   The auxiliary storage device 902 stores programs that realize the functions of the program storage unit 1051 to the verification unit 1058 shown in FIG. In the case of the master unit A shown in FIG. 14, programs that realize the functions of the program storage unit 1051M to the version acquisition unit 1059M are stored. The program storage unit 1051 to the verification unit 1058 and the program storage unit 1051M to the version acquisition unit 1059M are collectively referred to as “parts”. This program is loaded into the memory 903, read into the processor 901, and executed by the processor 901. More specifically, among the “units”, the storage unit is realized by a program, an auxiliary storage device 902, a memory 903, and the like. In addition, among the “units”, the transmission unit and the reception unit are realized by a program, the communication device 904, and the like. Other than the storage unit, transmission unit, and reception unit are implemented by a program. The auxiliary storage device 902 also stores an OS (Operating System). Then, at least a part of the OS is loaded into the memory 903, and the processor 901 executes a program that realizes the function of “unit” while executing the OS. Although one processor 901 is illustrated in FIG. 16, the control device 105 may include a plurality of processors 901. A plurality of processors 901 may execute a program for realizing the function of “unit” in cooperation with each other. In addition, information, data, signal values, and variable values indicating the processing results of “unit” are stored in the memory 903, the auxiliary storage device 902, or a register or cache memory in the processor 901.

「部」を「サーキットリー」で提供してもよい。また、「部」を「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。「回路」及び「サーキットリー」は、プロセッサ901だけでなく、ロジックIC又はGA(Gate Array)又はASIC(Application Specific Integrated Circuit)又はFPGA(Field−Programmable Gate Array)といった他の種類の処理回路をも包含する概念である。   The “part” may be provided as “circuitry”. Further, “part” may be read as “circuit”, “process”, “procedure”, or “processing”. “Circuit” and “Circuitry” include not only the processor 901 but also other types of processing circuits such as a logic IC or GA (Gate Array) or ASIC (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array). It is a concept to include.

上記のように、実施の形態1の制御装置105、マスタユニットの「部」の動作は、更新判定プログラムあるいはプログラム更新方法としても把握できる。   As described above, the operation of the “unit” of the control device 105 and the master unit of the first embodiment can also be grasped as an update determination program or a program update method.

M マスタユニット、1 FWアップデートシステム、10 制御装置メーカ、11 プログラム更新装置、20 セットメーカ、30 エンドユーザ、40 通信ネットワーク、41,42 経路、51 送信要求、52 不適合信号、100 配信サーバ、102 更新用FW、1020 更新情報、103 ウェブサイト、110 制御部、120 更新情報生成部、130 通信部、140 記憶部、105,105(10),105(20),105(30) 制御装置、1050 ユニット装置、1051,1051M プログラム記憶部、1052,1052M ルール記憶部、1053,1053M 更新情報受信部、1054,1054M 判定部、1055,1055M 更新部、1056,1056M ルール情報受信部、1057,1057M 要求送信部、1058,1058M 検証部、1059M バージョン取得部、200 セットメーカ装置、201 開発ツール、202 プロジェクトファイル、203 更新FW URL、204 ルールファイルURL、205 ルールファイル、2051 ルール情報、2052 新版ルール情報、205−1 FWバージョン、205−2,205−3 属性、206 公開鍵、207 デジタル署名、2060 検証情報、210 開発ツール実行部、211 プロジェクトファイル生成部、212 ルール情報生成部、220 通信部、230 記憶部、300 エンドユーザ装置、3000 ダウンロード装置、301 開発ツール、310 開発ツール実行部、320 通信部、330 記憶部。   M master unit, 1 FW update system, 10 control device manufacturer, 11 program update device, 20 set manufacturer, 30 end user, 40 communication network, 41, 42 route, 51 transmission request, 52 nonconforming signal, 100 distribution server, 102 update FW, 1020 update information, 103 website, 110 control unit, 120 update information generation unit, 130 communication unit, 140 storage unit, 105, 105 (10), 105 (20), 105 (30) control device, 1050 unit Device, 1051, 1051M program storage unit, 1052, 1052M rule storage unit, 1053, 1053M update information reception unit, 1054, 1054M determination unit, 1055, 1055M update unit, 1056, 1056M rule information reception unit, 1057, 1 057M request transmission unit, 1058, 1058M verification unit, 1059M version acquisition unit, 200 set maker device, 201 development tool, 202 project file, 203 update FW URL, 204 rule file URL, 205 rule file, 2051 rule information, 2052 new version rule Information, 205-1 FW version, 205-2, 205-3 attribute, 206 public key, 207 digital signature, 2060 verification information, 210 development tool execution unit, 211 project file generation unit, 212 rule information generation unit, 220 communication unit , 230 storage unit, 300 end user device, 3000 download device, 301 development tool, 310 development tool execution unit, 320 communication unit, 330 storage unit.

Claims (8)

制御装置メーカによって製造された制御装置でありセットメーカによって組み立てられた最終製品に含まれている制御装置において、
プログラムを記憶するプログラム記憶部と、
前記プログラムの更新のルールが定められたルール情報であって前記セットメーカの有するセットメーカ装置によって生成されたルール情報を記憶するルール記憶部と、
前記プログラムを更新するための更新情報であって前記制御装置メーカの有する配信サーバ装置によって生成された更新情報を受信する更新情報受信部と、
前記更新情報が前記ルール情報に適合するかどうかを判定する判定部と、
前記判定部が適合すると判定した場合に、前記プログラム記憶部が記憶する前記プログラムを、前記更新情報を用いて更新する更新部と
を備える制御装置
In the control device manufactured by the control device manufacturer and included in the final product assembled by the set manufacturer,
A program storage unit for storing the program;
A rule storage unit that stores rule information generated by a set maker apparatus of the set maker, which is rule information in which rules for updating the program are defined;
An update information receiving unit for receiving update information for updating the program and generated by the distribution server device of the control device manufacturer ;
A determination unit that determines whether the update information matches the rule information;
A control apparatus provided with the update part which updates the said program which the said program memory | storage part memorize | stores using the said update information, when it determines with the said determination part adapting.
前記制御装置は、さらに、
前記ルール情報が更新された新版ルール情報であって前記セットメーカ装置によって生成された新版ルール情報を受信するルール情報受信部と、
前記新版ルール情報が受信された場合に、前記更新情報の送信を要求する送信要求を送信する要求送信部と
を備え、
前記更新情報受信部は、
前記送信要求の応答として、前記更新情報を受信し、
前記判定部は、
前記更新情報受信部が応答として受信した更新情報が、前記新版ルール情報に適合するかどうかを判定する請求項1に記載の制御装置。
The control device further includes:
A rule information receiving unit that receives the new version rule information generated by the set maker device, which is the new version rule information in which the rule information is updated;
A request transmitter for transmitting a transmission request for requesting transmission of the update information when the new version rule information is received;
The update information receiving unit
In response to the transmission request, the update information is received,
The determination unit
The control device according to claim 1, wherein the update information received as a response by the update information receiving unit determines whether or not the new version rule information matches.
前記ルール記憶部が記憶する前記ルール情報は、
検証情報を有し、
前記制御装置は、さらに、
前記検証情報と、前記ルール情報受信部が受信する前記新版ルール情報とに基づいて、前記新版ルール情報が正当かどうかを検証し、検証の結果、正当でないと判定した場合に、前記新版ルール情報を破棄する検証部を備えた請求項2に記載の制御装置。
The rule information stored in the rule storage unit is:
Have verification information,
The control device further includes:
Based on the verification information and the new version rule information received by the rule information receiving unit, the new version rule information is verified if the new version rule information is verified as valid as a result of the verification. The control device according to claim 2, further comprising: a verification unit that discards.
前記ルール情報受信部は、
ウェブサイトにアップロードされた前記新版ルール情報を前記ウェブサイトからダウンロードするダウンロード装置から、前記新版ルール情報を受信する請求項2または請求項3に記載の制御装置。
The rule information receiving unit
The control device according to claim 2, wherein the new version rule information is received from a download device that downloads the new version rule information uploaded to the website from the website.
制御装置メーカによって製造された制御装置であると共にセットメーカによって組み立てられた最終製品に含まれている制御装置であり、マスタとなるユニット装置であるマスタユニットと、スレイブとなるユニット装置であるスレイブユニットとの複数のユニット装置を備える制御装置である複合ユニット装置において、
前記マスタユニットは、
それぞれの前記ユニット装置のプログラムの更新のルールが定められたルール情報であって前記セットメーカの有するセットメーカ装置によって生成されたルール情報を記憶するルール記憶部と、
それぞれの前記ユニット装置のプログラムを更新するための、前記ユニット装置ごとの更新情報であって前記制御装置メーカの有する配信サーバ装置によって生成された更新情報を受信する更新情報受信部と、
前記更新情報が前記ルール情報に適合するかどうかを判定する判定部と、
前記判定部が適合すると判定した場合に、前記更新情報に対応する前記ユニット装置のプログラムを、前記更新情報を用いて更新する更新部と
を備える複合ユニット装置。
A master device that is a control device manufactured by the control device manufacturer and included in the final product assembled by the set manufacturer, and is a master unit device, and a slave unit that is a slave unit device In a composite unit device that is a control device comprising a plurality of unit devices,
The master unit is
A rule storage unit for storing rule information in which rules for updating the program of each of the unit devices are defined and generated by the set manufacturer device of the set manufacturer ;
An update information receiving unit that receives the update information for each unit device, which is update information generated by the distribution server device of the control device manufacturer, for updating the program of each unit device;
A determination unit that determines whether the update information matches the rule information;
A composite unit device comprising: an update unit that updates a program of the unit device corresponding to the update information using the update information when it is determined that the determination unit is compatible.
前記マスタユニットは、さらに、
それぞれの前記ユニット装置のプログラムのバージョンを、それぞれの前記ユニット装置から取得するバージョン取得部を備え、
前記ルール記憶部が記憶する前記ルール情報は、
それぞれの前記ユニット装置のプログラムに認められるバージョンが定められており、
前記判定部は、
前記バージョン取得部が取得したそれぞれの前記ユニット装置のプログラムのバージョンが、前記ルール情報に定められたバージョンに適合するかどうかを判定し、
前記マスタユニットは、さらに、
前記バージョン取得部が取得したそれぞれのバージョンの少なくとも一つが適合しないと判定された場合には、適合しないことを示す不適合信号を出力する要求送信部を備える請求項5に記載の複合ユニット装置。
The master unit further includes:
A version acquisition unit that acquires the version of each unit device program from each unit device;
The rule information stored in the rule storage unit is:
The versions allowed for each unit device program are defined,
The determination unit
It is determined whether the version of each unit device program acquired by the version acquisition unit conforms to the version defined in the rule information,
The master unit further includes:
The composite unit device according to claim 5, further comprising: a request transmission unit that outputs a non-conformance signal indicating non-conformity when it is determined that at least one of the versions acquired by the version acquisition unit does not conform.
制御装置メーカによって製造された制御装置であると共にセットメーカによって組み立てられた最終製品に含まれている制御装置であり、記憶装置を有する制御装置であるコンピュータに、
プログラムを前記記憶装置に記憶する処理、
前記プログラムの更新のルールが定められたルール情報であって前記セットメーカの有するセットメーカ装置によって生成されたルール情報を前記記憶装置に記憶する処理、
前記プログラムを更新するための更新情報であって前記制御装置メーカの有する配信サーバ装置によって生成された更新情報を受信する処理、
前記更新情報が前記ルール情報に適合するかどうかを判定する処理、
適合する場合に、前記記憶装置が記憶する前記プログラムを、前記更新情報を用いて更新する処理、
を実行させるための更新判定プログラム。
A control device manufactured by a control device manufacturer and a control device included in an end product assembled by a set manufacturer, and a computer that is a control device having a storage device,
Processing for storing a program in the storage device;
Processing for storing in the storage device the rule information in which rules for updating the program are defined and generated by the set maker device of the set maker ;
Processing for receiving update information for updating the program and generated by the distribution server device of the control device manufacturer ;
A process of determining whether the update information matches the rule information;
A process for updating the program stored in the storage device by using the update information when it is suitable;
Update judgment program for executing
制御装置メーカによって製造された制御装置であると共にセットメーカによって組み立てられた最終製品に含まれている制御装置であり、プログラム記憶部、ルール記憶部、更新情報受信部、判定部、更新部を備える制御装置が行うプログラム更新方法において、
前記プログラム記憶部が、プログラムを記憶し、
前記ルール記憶部が、前記プログラムの更新のルールが定められたルール情報であって前記セットメーカの有するセットメーカ装置によって生成されたルール情報を記憶し、
前記更新情報受信部が、前記プログラムを更新するための更新情報であって前記制御装置メーカの有する配信サーバ装置によって生成された更新情報を受信し、
前記判定部が、前記更新情報が前記ルール情報に適合するかどうかを判定し、
前記更新部が、前記判定部が適合すると判定した場合に、前記プログラム記憶部が記憶する前記プログラムを、前記更新情報を用いて更新するプログラム更新方法。
A control device manufactured by a control device manufacturer and included in a final product assembled by a set manufacturer, and includes a program storage unit, a rule storage unit, an update information reception unit, a determination unit, and an update unit In the program update method performed by the control device,
The program storage unit stores a program,
The rule storage unit stores rule information that is a rule information in which rules for updating the program are defined and is generated by a set maker device that the set maker has ,
The update information receiving unit is update information for updating the program, and receives update information generated by a distribution server device of the control device manufacturer ,
The determination unit determines whether the update information matches the rule information;
A program update method for updating the program stored in the program storage unit using the update information when the update unit determines that the determination unit is suitable.
JP2016514185A 2015-04-23 2015-04-23 Control device, composite unit device, update determination program, and program update method Active JP5951162B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/062391 WO2016170641A1 (en) 2015-04-23 2015-04-23 Program update device, composite unit device, update determination program, and program update method

Publications (2)

Publication Number Publication Date
JP5951162B1 true JP5951162B1 (en) 2016-07-13
JPWO2016170641A1 JPWO2016170641A1 (en) 2017-04-27

Family

ID=56375125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016514185A Active JP5951162B1 (en) 2015-04-23 2015-04-23 Control device, composite unit device, update determination program, and program update method

Country Status (3)

Country Link
JP (1) JP5951162B1 (en)
TW (1) TWI599906B (en)
WO (1) WO2016170641A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018055465A (en) * 2016-09-29 2018-04-05 セイコーエプソン株式会社 Printer and control method of printer

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6539701B2 (en) * 2017-09-12 2019-07-03 アセンテック株式会社 Terminal device, thin client conversion method and thin client conversion program
CN111078249B (en) * 2019-11-08 2023-06-02 泰康保险集团股份有限公司 Software updating method, system, equipment and storage medium
TWI761917B (en) * 2020-08-19 2022-04-21 鴻海精密工業股份有限公司 Program debugging method, device and storage media

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005202503A (en) * 2004-01-13 2005-07-28 Hitachi Ltd Onboard information equipment, onboard equipment management system, method for distributing upgrade information of program of control unit of vehicle, and upgrade method and system for program of control unit of vehicle
JP2008546318A (en) * 2005-06-03 2008-12-18 グッド テクノロジー インコーポレイテッド System and method for monitoring and maintaining wireless devices
JP2009193218A (en) * 2008-02-13 2009-08-27 Fuji Xerox Co Ltd Firmware update device and system
US20110088025A1 (en) * 2009-10-13 2011-04-14 Microsoft Corporation Use of software update policies
JP2012043168A (en) * 2010-08-19 2012-03-01 Ricoh Co Ltd Information processor, information processing system, installation support method and installation support program
JP2013232077A (en) * 2012-04-27 2013-11-14 Samsung Techwin Co Ltd Control program update system for semiconductor manufacturing apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005202503A (en) * 2004-01-13 2005-07-28 Hitachi Ltd Onboard information equipment, onboard equipment management system, method for distributing upgrade information of program of control unit of vehicle, and upgrade method and system for program of control unit of vehicle
JP2008546318A (en) * 2005-06-03 2008-12-18 グッド テクノロジー インコーポレイテッド System and method for monitoring and maintaining wireless devices
JP2009193218A (en) * 2008-02-13 2009-08-27 Fuji Xerox Co Ltd Firmware update device and system
US20110088025A1 (en) * 2009-10-13 2011-04-14 Microsoft Corporation Use of software update policies
JP2012043168A (en) * 2010-08-19 2012-03-01 Ricoh Co Ltd Information processor, information processing system, installation support method and installation support program
JP2013232077A (en) * 2012-04-27 2013-11-14 Samsung Techwin Co Ltd Control program update system for semiconductor manufacturing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018055465A (en) * 2016-09-29 2018-04-05 セイコーエプソン株式会社 Printer and control method of printer

Also Published As

Publication number Publication date
TW201640407A (en) 2016-11-16
TWI599906B (en) 2017-09-21
WO2016170641A1 (en) 2016-10-27
JPWO2016170641A1 (en) 2017-04-27

Similar Documents

Publication Publication Date Title
US11533187B2 (en) Device birth certificate
US20230208824A1 (en) Device programming with system generation
TWI741041B (en) Unified programming environment for programmable devices
EP3491576B1 (en) Device programming with system generation
US10860229B2 (en) Managing privileges of different entities for an integrated circuit
JP5951162B1 (en) Control device, composite unit device, update determination program, and program update method
GB2473946A (en) Deployment of approved software updates
US20180131520A1 (en) Method and arrangement for securely interchanging configuration data for an apparatus
US11412047B2 (en) Method and control system for controlling and/or monitoring devices
TW202123651A (en) Device programming with system generation
US11681513B2 (en) Controlled scope of authentication key for software update
CN109408486B (en) File distribution method and system, distribution server and file generation device
CN116126380A (en) Firmware upgrading method and device, electronic equipment and storage medium
JP5472708B2 (en) Verification device and field device software update system using the same
EP3975019A1 (en) Secured software workload provisioning to a trusted execution environment
US20170006062A1 (en) Method for purposes of making a &#34;zero knowledge&#34; connection between an electronic unit and a computer
CN117389614B (en) Method and device for activating vehicle software, computer equipment and storage medium

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160420

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160607

R150 Certificate of patent or registration of utility model

Ref document number: 5951162

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250