(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-11
(45)【発行日】2024-12-19
(54)【発明の名称】更新内容検証システム及び更新内容検証方法
(51)【国際特許分類】
G06F 21/57 20130101AFI20241212BHJP
【FI】
G06F21/57
(21)【出願番号】P 2021195637
(22)【出願日】2021-12-01
【審査請求日】2024-03-13
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】小倉 貴志
(72)【発明者】
【氏名】岩澤 寛
(72)【発明者】
【氏名】辻 大輔
【審査官】平井 誠
(56)【参考文献】
【文献】国際公開第2005/088452(WO,A1)
【文献】特開2020-038585(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/00-88
(57)【特許請求の範囲】
【請求項1】
制御システムに対して実施する更新の内容を検証する更新内容検証システムであって、
前記制御システムの更新情報が入力される更新情報入力部と、
前記更新情報を解析する更新情報解析部と、
前記更新の内容に対して行われる検証に関する検証情報が格納された検証情報記憶部と、
前記解析の結果及び前記検証情報の中から、前記制御システムに対して実施する更新の内容及び当該更新に対して実施する検証の内容を設定する更新及び検証内容設定部と、
前記更新及び前記検証を実施するために要する実施時間を推定する実施時間推定部と、
前記推定した実施時間と、所定の制限時間とを比較して、前記更新及び前記検証が前記制限時間以内に実施を完了できるか否か判定する実施可否判定部と、を有する、
ことを特徴とする更新内容検証システム。
【請求項2】
請求項1に記載の更新内容検証システムであって、
前記更新情報解析部は、前記更新情報を解析して、複数の更新処理に分割する、
ことを特徴とする更新内容検証システム。
【請求項3】
請求項2に記載の更新内容検証システムであって、
前記更新及び検証内容設定部は、前記制御システムに対して実施する更新内容として、前記分割した複数の更新処理のうち少なくとも1つを設定する、
ことを特徴とする更新内容検証システム。
【請求項4】
請求項1に記載の更新内容検証システムであって、
前記更新情報解析部による前記解析、前記更新及び検証内容設定部による前記設定、及び前記実施時間推定部による前記推定のうち少なくとも1つは、前記制御システムを実行するハードウェア又はソフトウェアをコンピュータ上で再現したデジタルモデルに基づき行う、
ことを特徴とする更新内容検証システム。
【請求項5】
請求項1に記載の更新内容検証システムであって、
前記検証情報は、複数レベルが設定された、検証範囲又は検証粒度の一方を少なくとも含む、
ことを特徴とする更新内容検証システム。
【請求項6】
請求項1に記載の更新内容検証システムであって、
前記実施可否判定部が、前記更新及び前記検証が前記制限時間以内に実施を完了できると判定した場合に、
前記更新及び検証内容設定部は、前記制限時間内に実施を完了できると判定された前記実施及び検証の内容以外の前記更新の内容及び前記検証の内容を追加設定し、
前記実施時間推定部は、前記追加設定した更新及び検証を実施するために要する時間を推定し、
前記実施可否判定部は、前記追加設定した更新及び検証が、前記制限時間以内に実施を完了できると判定された前記更新及び前記検証に追加して実施できるか否か判定する、ことを特徴とする更新内容検証システム。
【請求項7】
請求項1に記載の更新内容検証システムであって、
前記更新情報解析部による前記解析の結果の中から、必須の更新内容を設定する必須更新内容設定部をさらに備える、
ことを特徴とする更新内容検証システム。
【請求項8】
請求項1に記載の更新内容検証システムであって、
前記実施可否判定部が、前記更新及び前記検証が前記制限時間以内に実施を完了できると判定した場合に、当該更新及び検証を実施した場合に想定される安全レベルを算出する安全レベル算出部と、
前記想定される安全レベルと、前記制御システムに要求される安全レベルとを比較して前記更新及び検証が実施可能であるか判定する安全レベル判定部と、をさらに備える
ことを特徴とする更新内容検証システム。
【請求項9】
請求項1に記載された更新内容検証システムの更新内容検証方法であって
、
前記更新情報解析部が、前記更新情報入力部に入力された前記制御システムの更新情報を解析し、
前記更新及び検証内容設定部が、前記解析の結果、及び
、前記検証情報記憶部に格納された前記更新の内容に対して行われる検証に関する検証情報の中から、前記制御システムに対して実施する更新の内容及び当該更新に対して実施する検証の内容を設定し、
前記実施時間推定部が、前記更新及び前記検証を実施するために要する実施時間を推定し、
前記実施可否判定部が、前記推定した実施時間と、所定の制限時間とを比較して、前記更新及び前記検証が前記制限時間内に実施を完了できるか否かを判定する、
ことを特徴とする更新内容検証方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御システムに対して実施する更新の内容を検証するためのシステム及び方法に関し、特に、セキュリティまたはセイフティ検証するための技術に関する。
【背景技術】
【0002】
現在、DX(デジタルトランスフォーメーション:Digital Transformation)の進展に伴い、製造や物流等の事業において、ヒト(有人機)を含む様々な制御対象が混在し、それら制御対象が協調して各種制御が行われるシステムが普及している。このような制御システムにおいて、現場の状況や経営判断に基づき制御のルールやシステムの構造を変化・更新し、生産性や効率といったシステムの価値を向上させることが注目されている。
【0003】
しかし、上記のシステムに生じる変化や行われる更新の内容に不備があった場合、制御システムにおいて重要な要件の一つである安全性が損なわれる可能性がある。また、上記不備により、制御システムが不正アクセスなどのサイバー攻撃の脅威にさらされる可能性もある。そのため、システムの変化や更新に対してセキュリティやセイフティを検証し、安全性を担保することが要求されている。
【0004】
上記のシステムの変化や更新に対するセキュリティまたはセイフティを検証する方法に関する技術である特許文献1では、コンピュータシステムのパラメータ変更に対して、更新の内容がセキュリティの観点で許容されるのかを検証し、許容されない場合は更新内容を再検討、許容される場合は更新の実施を行っている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1のセキュリティの検証方法では、セキュリティ的な観点で更新の内容を決定するまでに留まっており、決定した更新の内容を実施することにより、例えば工場のダウンタイムを超えても更新が終了せず、作業に支障をきたす、といった課題がある。
【0007】
そこで、本発明は、システムの更新に対するセキュリティまたはセイフティの検証内容の決定に、更新の実施と検証の実施において許容される制限時間を入力し、この制限時間内で実施可能なシステムの更新の内容およびセキュリティまたはセイフティを担保するために更新の内容に対して行われる検証の内容を決定することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明は、制御システムに対して実施する更新の内容を検証する更新内容検証システムであって、制御システムの更新情報が入力される更新情報入力部と、更新情報を解析する更新情報解析部と、更新の内容に対して行われる検証に関する検証情報が格納された検証情報記憶部と、解析の結果及び検証情報の中から、制御システムに対して実施する更新の内容及び当該更新に対して実施する検証の内容を設定する更新及び検証内容設定部と、更新及び検証を実施するために要する実施時間を推定する実施時間推定部と、推定した実施時間と、所定の制限時間とを比較して、更新及び検証が制限時間以内に実施を完了できるか否か判定する実施可否判定部と、を有する。
【0009】
また、本発明には、このセキュリティまたはセイフティ検証内容を決定する方法が含まれる。さらに、セキュリティまたはセイフティ検証内容を決定する方法をコンピュータに実行させるためのコンピュータプログラムやこのコンピュータプログラムを格納した記憶媒体も含まれる。
【発明の効果】
【0010】
本発明によれば、制御システムに対して制限時間内で実施可能なシステム更新の内容及びセキュリティまたはセイフティの検証内容が決定できる。
本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
【
図1】実施例1に係る更新内容検証システムの機能構成の例を示す機能ブロック図。
【
図2】実施例1~3に係る更新内容検証システムのシステム構成図。
【
図3】実施例1~3で用いられる制御システムの例を示す図。
【
図4】実施例1~3で用いられる検証レベルの一例を示す図。
【
図5】実施例1に係る更新内容検証方法のフローチャートの一例を示す図。
【
図6】実施例2に係る更新内容検証システムの機能構成の例を示す機能ブロック図。
【
図7】実施例2に係る更新内容検証方法のフローチャートの一例を示す図。
【
図8】実施例3に係る更新内容検証システムの機能構成の例を示す機能ブロック図。
【
図9】実施例3に係る更新内容検証方法のフローチャートの一例を示す図。
【発明を実施するための形態】
【0012】
以下、本発明の各実施例を、図面を用いて説明する。各実施例においては、
図3に示すような構成要素がそれぞれ接続されている制御システムの更新内容とセキュリティまたはセイフティの検証内容を生成する。なお、構成要素としては、ロボット管理装置A31等が挙げられるが、具体的なシステムの構成については、後述する。なお、以下では、「制御システムの更新内容」については、単に「更新内容」と呼称し、「セキュリティまたはセイフティの検証内容」については、単に「検証内容」と呼称する。
【0013】
[実施例1]
以下、本発明の実施例1について図面を用いて説明する。
図1は、本実施例に係る更新内容検証システム100の機能構成を示す機能ブロック図である。以下、各ブロック(機能)について説明する。
【0014】
更新内容検証システム100は、更新内容検証装置20と、更新内容検証装置20に接続され、検証レベル記憶部108が格納された記憶装置24と、を有する。更新内容検証装置20は、システム更新情報入力部101、更新情報解析部102、更新及び検証内容設定部103、更新及び検証実施時間推定部104、制限時間入力部105、実施可否判定部106、及び更新及び検証内容出力部107を有する。また、記憶装置24は、更新及び検証内容設定部103との間に通信可能に接続されている。
【0015】
システム更新情報入力部101には、制御システムの更新情報が入力される。更新情報解析部102では、システム更新情報入力部101で入力された情報を解析し、更新情報を段階的な複数の更新処理へと分割する。更新及び検証内容設定部103では、更新情報解析部102の段階的な更新処理の一つを更新内容として設定するとともに、検証レベル記憶部108の情報を基に更新内容に対する検証内容を設定する。更新及び検証実施時間推定部104では、更新及び検証内容設定部103で設定された更新及び検証内容の実施に必要な時間を推定する。ここで、更新及び検証内容の実施に必要な時間とは、実際に更新及び/または検証の実行が開始してから終了するまでの時間のことである。開始/終了の判定は、自動的に判定されてもよいし、人によって判定されてもよい。実施可否判定部106では、更新及び検証実施時間推定部104で推定した時間が制限時間入力部105で入力された更新及び検証の実施に許容される制限時間内で終了するのか否かを判定する。
【0016】
更新及び検証内容出力部107では、実施可否判定部106において制限時間内で終了すると判定された更新及び検証内容を出力、および、表示する。なお、各記憶部や演算部は、CPUやPCそのものであることもある。なお、実施可否判定部106で、制限時間内で更新及び検証の実施が終了しないと判定された場合には、再度更新及び検証内容設定部103にて、異なる内容の更新及び検証内容の設定を行う。
【0017】
図1に示した更新内容検証装置20の機能構成をコンピュータ上で実現したシステム構成を、
図2に示す。更新内容検証装置20は、バスなどで互いに接続されたCPUのような処理部21、メモリ22、及び入出力I/F23によって構成される。
【0018】
ここで、処理部21は、更新情報解析部102、更新及び検証内容設定部103、更新及び検証実施時間推定部104、実施可否判定部106、更新及び検証内容出力部107、必須更新内容設定部601、検証内容設定部602、安全レベル算出及び判定部801、及び各種情報出力部803を有しており、これらはプログラムによって実現可能である。つまり、本実施例では、プログラムをメモリ22に展開し、これらの各機能、演算を処理部21で実行する。
【0019】
また、更新内容検証装置20は、入出力I/F23を介して記憶装置24と接続されている。記憶装置24は、検証レベル情報410を記憶する。つまり、記憶装置24は、
図1の検証レベル記憶部108として機能する。また、記憶装置24は、更新内容検証装置20内部に設けられてもよい。
【0020】
なお、必須更新内容設定部601及び検証内容設定部602は、実施例2で用いられ、本実施例では使用されなくともよい。また、安全レベル算出及び判定部801、各種情報出力部803は、実施例3で用いられる機能であり、本実施例では使用されなくともよい。
【0021】
また、更新内容検証装置20は、入出力I/F23を介して、各種の端末装置26-1、2と接続する。端末装置26-1、2は、それぞれコンピュータで実現され、利用者からの入力を受け付けたり、更新内容検証装置20の処理結果を表示したりする機能を有する。
【0022】
つまり、端末装置26-1、2は、入力部として機能する。より具体的には、
図1のシステム更新情報入力部101、制限時間入力部105、
図8の要求レベル入力部802として機能する。また、端末装置26-2は、ネットワーク25を介して、更新内容検証装置20と接続する。なお、端末装置26-1、2は、更新内容検証装置20と一体化してもよい。
【0023】
つまり、更新内容検証装置20に表示装置や入出力装置を設けてもよい。表示装置や入出力装置を本システムの一構成要素として構成する場合、クラウド30、ロボット管理装置A31、ロボット管理装置B32およびロボット管理装置C33に更新内容検証装置20の機能を持たせる。
【0024】
また、更新内容検証装置20は、インターネット27と接続し、外部の情報を取得することも可能である。この一例として、検証対象のシステムがインターネット27を介して接続され、当該システムから検証レベル情報410を受信してもよい。
【0025】
次に、本実施例による更新内容検証方法を具体例により説明する。まず、更新対象となる制御システムを
図3に示す。この制御システム300は、構成要素として、クラウド30、ロボット管理装置A31、ロボット管理装置B32、ロボット管理装置C33、ロボットA34、ロボットB35、ロボットC36、およびベルトコンベヤ37で構成されている。
【0026】
そして、各構成要素は、他の構成要素と、以下のように接続されている。クラウド30は、ロボット管理装置A31と、ロボット管理装置B32と、ロボット管理装置C33と、に接続されている。ロボット管理装置A31は、クラウド30と、ロボット管理装置B32と、ロボットA34と、に接続されている。ロボット管理装置B32は、クラウド30と、ロボット管理装置A31と、ロボット管理装置C33と、ロボットB35と、に接続されている。ロボット管理装置C33は、クラウド30と、ロボット管理装置B32と、ロボットC36と、に接続されている。
【0027】
また、更新内容検証装置20は、本システムに接続されていてもよいし、本システムの一構成要素として実現してもよい。更新内容検証装置20を本システムの一構成要素として構成する場合、クラウド30、ロボット管理装置A31、ロボット管理装置B32、またはロボット管理装置C33に、更新内容検証装置20の機能を持たせる。
【0028】
なお、本発明は
図3に示す制御システム例のみならず、段階的なシステムの更新が可能な制御システムにおいて有効である。段階的なシステムの更新が可能な制御システムの例としては、
図3に示すような製造ラインシステムや物流倉庫の仕分けシステムや大規模なFA(Factory Automation)やPA(Plant Automation)システムなどが挙げられる。ただし、例に挙げた制御システムに限定されるものではない。
【0029】
図4は、検証レベル記憶部108に記憶されている検証レベル情報410を示す図である。検証レベル情報410は粒度の表420と範囲の表430を持つ。本実施例では、セキュリティに関連する情報を記載している。各表はレベル(Lv)を3つずつ持ち、例えば以下のような内容である。
【0030】
「粒度」の表420
Lv1 : 簡易チェックシートによる検証
Lv2 : ツールを用いた検証
Lv3 : 専門家による詳細検証
【0031】
「範囲」の表430
Lv1 : 変更・更新の対象機器のみ
Lv2 : 変更・更新の対象機器のみ + 隣接機器
Lv3 : 制御システム全体
【0032】
粒度はLvが上がるほど、検証の内容が細かくなり検証の実施に時間を要するものである。また、範囲はLvが上がるほど、検証の範囲が広くなり検証の実施に時間を要するものである。検証内容の設定部では、粒度の表420と範囲の表430からそれぞれ1つのLvを選択し、更新及び検証内容設定部103に用いる。なお、本実施例では検証レベルを粒度と範囲の2つの軸で表現し、それぞれを選択することで検証内容を決定する例を示す。ただし、検証レベルは粒度または範囲のどちらか一方でもよい。また、検証レベルを表現する内容は粒度および範囲に限定されるものでもない。さらに、検証レベルは表形式での表現でなくともよい。
【0033】
また、粒度の表420と範囲の表430の内容は対象の制御システムの構成等を反映した内容でなく一般的な表現としたが、検証レベルの表現として対象制御システム構成等を加味した特定の装置名称やネットワーク名称を含んだ表現であってもよい。
【0034】
図5は、本発明の一実施例に係る更新内容検証方法の全体フローである。まず、システム更新情報入力部101から入力されたシステム更新情報を解析する(S501)。そして、ステップS501の解析結果と検証レベル記憶部108の情報を用い、更新内容及び検証内容を設定する(S502)。
【0035】
そして、設定した更新及び検証内容の実施時間を推定する(S503)。そして、制限時間入力部105で入力した制限時間とステップS503で推定した更新及び検証内容の実施時間とを比較する(S504)。ステップS504にて制限時間が推定した実施時間よりも小さい場合にはステップS502に戻り、更新及び検証内容を再設定する。一方、ステップS504にて制限時間が推定した実施時間以上の場合、ステップS505に進む。ステップS505では、更なる更新及び検証内容の組合せについて検証が必要かを判定する。ステップS505にて更なる検証が必要だと判定された場合は、ステップS502に戻り更新及び検証内容を再設定する。それ以上の検証が必要でないと判定された場合は、検証を修了する。
【0036】
図5の各フローを
図3の制御システム300及び検証レベル情報410を例に用いて説明する。まず、システム更新情報入力部101に対して、「ロボット管理装置A31及びロボット管理装置B32それぞれの、ロボット制御プログラム及び装置自体の更新」が入力されたとする。本実施例では、システム更新情報入力部101の入力をテキストとしたが、ユーザからの入力の方式として、端末装置26-1、2の画面上に示したシステム構成図上でグラフィカルに更新情報を入力する方法や端末装置26-1、2の画面上の更新情報候補をユーザが選択する入力方法などがあり、これに限定されない。ステップS501では、システム更新情報入力部101からの入力を以下のように解析し、更新情報を段階的な更新へと分割する。
【0037】
1.ロボット管理装置A31のロボット制御プログラムの更新。
2.ロボット管理装置A31とロボット管理装置B32それぞれのロボット制御プログラムの更新。
3.ロボット管理装置A31のロボット制御プログラム及び装置自体の更新。
4.ロボット管理装置A31とロボット管理装置B32それぞれのロボット制御プログラム及び装置自体の更新。
【0038】
図5のステップS502では、上記の情報と
図4の検証レベル情報410を用いて更新及び検証内容を設定する。ここでは、ステップS501で解析した結果のうち最も実施に時間のかかる「4.ロボット管理装置A31とロボット管理装置B32それぞれのロボット制御プログラム及び装置自体の更新」を設定し、検証レベル情報410においても粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」を設定する。
【0039】
つまりこの例では、「ロボット管理装置A31及びロボット管理装置B32それぞれのロボット制御プログラム及び装置自体の更新に対して、専門家による詳細な検証を制御システム全体に対して行う」が設定される。これらの設定には
図3の制御システムのハードウェアやソフトウェア等の特徴を仮想空間上で再現したデジタルモデル(デジタルツイン)を活用することが可能である。このデジタルモデルは後のステップS503やステップS504においても活用することが可能である。ただし、本発明はデジタルモデルを活用したステップS502やステップS503、ステップS504の実施に限定されるものではなく、制御システムのハードウェアやソフトウェア等の特徴をテキストにより表形式で記述した情報の活用や数式形式で記述した情報の活用なども可能である。
【0040】
ステップS503では、ステップS502で設定した「ロボット管理装置A31及びロボット管理装置B32それぞれのロボット制御プログラム及び装置自体の更新に対して、専門家による詳細な検証を制御システム全体に対して行う」の実施に必要な時間を推定する。ここでは、6時間が必要であると推定されたと仮定する。
【0041】
次のステップS504では、制限時間入力部105で入力された制限時間とステップS503で推定された時間とを比較する。ここでは、まず入力された制限時間が2時間であり、推定された6時間よりも短い場合の処理について述べる。制限時間が推定された時間よりも短いので、更新及び検証内容の再設定を行うためステップS502に戻る。再設定には、現在設定されている更新及び検証内容より次点で実施時間が大きいと予想される内容を設定する。
【0042】
本実施例のケースでは、現在の更新は「4.ロボット管理装置A31とロボット管理装置B32のロボット制御プログラムの更新と装置自体の更新」、検証レベルの粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」が設定されているため、次点で実施時間が大きいと予想される内容として更新が「3.ロボット管理装置A31のロボット制御プログラムの更新及びと装置自体の更新」、検証レベルの粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」と設定される。
【0043】
上記のように再設定を行い、以降は前述と同様に更新及び検証の実施時間の推定をステップS503で行い、制限時間と推定実施時間の比較をステップS504で実施する。
【0044】
この方式により、更新及び更新に対する検証の内容として最も更新の効果が大きくかつ検証レベルが高い検証内容から順に候補となり、決定される内容に制限時間内で最も更新の効果が大きくかつ最も検証レベルが高い内容が必ず含まれるため、本発明の効果をより高めることが可能になる。ただし本発明は、この設定方式に限らず、ランダムで各内容を設定する方法などでもよい。
【0045】
一方、入力された制限時間が12時間であり、推定された実施時間である6時間よりも長い場合の処理について述べる。制限時間が推定された時間よりも長い場合には、現在の更新及び検証内容は許容される内容となる。そのため、次ステップのステップS505に進む。ステップS505では、追加の更新及び検証内容の組合せについて検証が必要かを判定する。
【0046】
ユーザが複数の更新及び検証内容の組合せの出力を要求した際には、現在の更新及び検証内容の組合せを保持したうえで、再度ステップS502で現在の更新及び検証内容の組合せとは別の組合せを設定し、以降上述と同様の処理を行う。
【0047】
具体例としては例えば、現在の更新として「1.ロボット管理装置A31のロボット制御プログラム及び装置自体の更新」、検証レベルの粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」が設定されているとした場合、追加の更新及び検証内容の組合せとして、「1’.ロボット管理装置B32のロボット制御プログラム及び装置自体の更新」、検証レベルの粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」を選択することが考えられる。
【0048】
なお、追加の組合せ検討の要望は、ステップS505の都度ユーザに確認する方式もあれば、全体フロー開始前にユーザに確認する方式や、単一の内容を出力するないしは複数の内容を出力する旨を全体フローの既定設定としておく方式などがある。一方、ステップS505で追加の更新及び検証内容の組合せが必要ないと判定された場合には、
図5の全体フローは終了する。
【0049】
以上で、本実施例の説明を完了する。本実施例においては、
図3で示す制御システム300に対して実施する更新内容を、制限時間内に実施可能になるように、複数の制御プログラム/装置自体のうちいずれかを含むような複数の更新処理の中から選択し、当該更新内容を検証する方法を設定している。従って、本実施例の更新内容検証方法によれば、制限時間内で実施可能なシステム更新及びセキュリティまたはセイフティの検証を決定できる。
【0050】
[実施例2]
以下、本発明の実施例2について図面を用いて説明する。
システムの更新を検討する際に、今回の更新にて必ず更新が必要となる内容が存在している場合もある。
図3の制御システム300の例においては、ロボットA34、ロボットB35、ロボットC36、ベルトコンベヤ37などの機器の故障への対応や制御システムでの処理物の変更に伴うロボット管理装置A31とロボット管理装置B32とロボット管理装置C33のロボット制御プログラムの更新などが必ず更新が必要な内容の例になる。そのため、本実施例では、実施例1で述べた方法に、必須の更新内容を設定する機能を追加した、制限時間内で制御システムのセキュリティまたはセイフティを確保した中でのシステム更新方法について説明する。
【0051】
本実施例では、実施例1で述べた
図1の更新内容検証装置の機能構成を示す機能ブロック図に必須更新内容設定部601を追加し、更新及び検証内容設定部103を検証内容設定部602に変更した
図6に示すブロック図を用いる。
図6において符号101~102、104~108は
図1と同一のものであり、説明を省略する。本実施例においてはさらに、
図2に示す必須更新内容設定部601および検証内容設定部602が用いられる。
【0052】
図7は、本実施例の全体フローを示した図である。実施例1で述べた
図5の全体フローに、解析情報を基に必須更新内容を決定するステップS701及び必須更新内容に対する検証内容を設定するステップS702を追加した。
図7においてステップS501、S503~S505は実施例1と同一のものであり、説明を省略する。以下では、実施例1と同様に、
図3の制御システム300と検証レベル情報410を用いた全体フローの動作例を述べる。
【0053】
システム更新情報入力部101では、「ロボット管理装置A31とロボット管理装置B32のロボット制御プログラムと装置自体を更新」が入力されたとする。本実施例では、システム更新情報入力部101の入力をテキストとしたが、ユーザからの入力の方式として、端末装置26-1、2の画面上に示したシステム構成図上でグラフィカルに更新情報を入力する方法や端末装置26-1、2の画面上の更新情報候補をユーザが選択する入力方法があり、これに限定されない。ステップS501では、システム更新情報入力部101からの入力を以下のように解析し更新情報を段階的な更新へと分割する。
【0054】
1.ロボット管理装置A31のロボット制御プログラムの更新
2.ロボット管理装置A31及びロボット管理装置B32それぞれのロボット制御プログラムの更新
3.ロボット管理装置A31のロボット制御プログラム及び装置自体の更新
4.ロボット管理装置A31及びロボット管理装置B32それぞれのロボット制御プログラム及び装置自体の更新
【0055】
ステップS701では、上記の情報から必須更新内容として「3.ロボット管理装置A31のロボット制御プログラム及び装置自体の更新」が決定されたとする。本決定は、システム更新情報入力部101で入力された情報に基づき機械学習やAIを用いて決定される方法もあれば、ステップS701実行時点で端末装置26-1、2からユーザが指定し決定する方法もある。または、システム更新情報入力部101への入力時に必須更新内容として該当更新内容のみを入力することで決定する方法もある。
【0056】
そして、ステップS702においては、ステップS701にて更新の内容は決定しているため、検証内容のみを決定する。検証の内容には、検証レベル情報410においても粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」を設定する。つまりこの例では、「ロボット管理装置A31のロボット制御プログラム及び装置自体の更新を必須の更新内容として、専門家による詳細な検証を制御システム全体に対して行う」が設定される。
【0057】
これらの設定には
図3の制御システムのハードウェアやソフトウェア等の特徴を仮想空間上で再現したデジタルモデル(デジタルツイン)を活用することが可能である。このデジタルモデルは後のステップS503やステップS504においても活用することが可能である。ただし、本発明はデジタルモデルを活用したステップS502やステップS503、ステップS504の実施に限定されるものではなく、制御システムのハードウェアやソフトウェア等の特徴をテキストにより表形式で記述した情報の活用や数式形式で記述した情報の活用などが可能である。
【0058】
ステップS503では、ステップS502で設定した「ロボット管理装置A31のロボット制御プログラム及び装置自体の更新を必須として、専門家による詳細な検証を制御システム全体に対して行う」ために必要な時間を推定する。ここでは、4時間が必要であると推定されたと仮定する。
【0059】
次のステップS504では、制限時間入力部105で入力された制限時間とステップS503で推定された時間を比較する。ここで入力された制限時間が2時間であり、推定された時間4時間よりも小さい場合の処理について述べる。制限時間2時間が推定された時間よりも小さい場合には、検証内容の再設定を行うためステップS702に戻る。再設定には、現在設定されている検証内容より次点で実施時間が大きいと予想される検証内容を設定する。
【0060】
本実施例のケースでは、更新内容については必須であるため変更せずに、検証内容を変更する。現在は検証レベルの粒度と範囲ともに最もレベルの高いLv3「粒度:専門家による詳細検証」、「範囲:制御システム全体」が設定されているため、次点で実施時間が大きいと予想される検証の内容として検証レベルの粒度がLv3「専門家による詳細検証」と範囲がLv2「変更・更新の対象機器のみ+隣接機器またはこれらの機器内のプログラム」と設定される。上記のように再設定を行い以降は前述と同様に更新及び検証の実施時間の推定をステップS503、制限時間と推定実施時間の比較をステップS504で実施する。
【0061】
本実施例では、必須更新内容に対して行う検証内容の再設定を現在の内容から次点で実施時間が大きいと予想される内容を設定する方式をとった。この方式は、最も検証レベルが高い検証内容から順に候補となり、決定される内容に制限時間内で最も検証レベルが高い内容が必ず含まれるため、本発明の効果をより高める方式である。ただし本発明は、この設定方式に限らず、ランダムで各内容を設定する方法などでもよい。
【0062】
一方、入力された制限時間が12時間であり、推定された実施時間4時間よりも大きい場合の処理について述べる。制限時間12時間が推定された時間4時間よりも大きい場合には、現在の更新及び検証内容は許容される内容となる。そのため、次ステップのステップS505に進む。ステップS505では、追加の更新及び検証内容の組合せについて検証が必要かを判定する。ユーザが複数の更新及び検証内容の組合せの出力を要求した際には、現在の更新及び検証内容の組合せを保持したうえで、再度ステップS502で現在の更新及び検証内容の組合せとは別の組合せを設定し、以降上述と同様の処理を行う。追加の更新及び検証内容としては、必須の更新があるかどうかを再度検索する方法でもよいし、必須ではないが重要度の高い更新を選択する方法でもよいし、ランダムに選択する方法でもよい。
【0063】
なお、追加の組合せ検討の要望は、ステップS505の都度ユーザに確認する方式もあれば、全体フロー開始前にユーザ確認する方式や、単一の内容を出力するないしは複数の内容を出力する旨を全体フローの既定設定としておく方式などがある。一方、ステップS505で追加の更新及び検証内容の組合せが必要ないと判定された場合には、
図5の全体フローは終了する。
【0064】
以上で、本実施例の説明を完了する。本実施例の更新内容検証方法によれば、必須なシステム更新の確保と制限時間内での実施を可能にしたうえでのセキュリティまたはセイフティの検証内容が決定される。
【0065】
[実施例3]
以下、本発明の実施例3について図面を用いて説明する。
システムの更新を検討する際に、満たしておきたいセキュリティまたはセイフティのレベル(安全レベル)が存在する場合がある。その場合は、一定以上の安全レベルを得られる更新及び検証内容が出力として必要となる。本実施例では、実施例1で述べた方法に、安全性の要求レベルの入力と安全性の到達レベルの算出および算出されたレベルが要求レベルを満たしているかを判定する機能を追加した。さらに、
図5の全体フローにおいて中間出力である推定時間等を出力に含める機能を追加した。
【0066】
本実施例では、実施例1で述べた
図1の更新内容検証システムの機能構成を示す機能ブロック図に安全レベル算出及び判定部801、要求レベル入力部802を追加し、更新及び検証内容出力部107を各種情報出力部803に変更した
図8に示すブロック図を用いる。
【0067】
図8において符号101~106、108は
図1と同一のものである。各種情報出力部803では更新及び検証実施時間推定部104の推定時間の結果や安全レベル算出及び判定部801によって算出された想定される安全レベルが更新および検証内容とともに出力される。それによりユーザは更新および検証内容に加えより多くの情報を得ることができる。安全レベル算出及び判定部801および各種情報出力部803は
図2に示す更新内容検証装置20内に搭載された機能である。なお、
図8においては安全レベル算出及び判定部は1つの機能部として記載されているが、これらは別々の機能部としてもよい。
【0068】
図9は、本実施例の全体フローを示した図である。実施例1で述べた
図5の全体フローに、制限時間内で完了する更新および検証内容の組合せにより想定される安全レベルを算出するステップS901、想定される安全レベルと要求レベル入力部802で入力された要求レベルとを比較するステップS902を追加した。
図9において符号S501~S505は実施例1と同一のものであり、説明を省略する。以下では、実施例1と同様に、
図3の制御システム300と検証レベル情報410を用いた全体フローの動作例を述べる。
【0069】
図9におけるステップS501~S505は実施例1と同様である。ステップS505の結果である制限時間内で実施が完了する更新および検証内容の各組合せに対してステップS901でセキュリティまたはセイフティの安全レベルを算出する。到達レベルの算出方法は、規格や標準などの手法を参照する方法もある。または、検証レベル情報410のLvを用いた算術により算出する方法もある。
【0070】
そして、算出された安全レベルが要求レベル入力部802で入力された要求レベルと比較して要求を満たしているのかを判定をステップS902で行う。ある更新及び検証内容の組合せがステップS902の判定において、要求を満たしていないと判定された場合は、ステップS903に進み該当の更新及び検証内容の組合せを破棄し、出力しない。一方、ある更新及び検証内容の組合せがステップS902の判定において、要求を満たしていると判定された場合は、該当の更新及び検証内容の組合せが出力される。上記判定をステップS505の結果である制限時間内で実施が完了する更新および検証内容の各組合せに対して実施する。
【0071】
以上で、本実施例の説明を完了する。本実施例の安全性の検証内容の決定方法によれば、要求される安全性の到達レベルを満たしたうえで制限時間内に実施可能なシステム更新と安全性の検証内容が決定される。
【0072】
以上で説明した本発明の実施例によれば、以下の作用効果を奏する。
(1)本発明に係る更新内容検証システムは、制御システムに対して実施する更新の内容を検証する更新内容検証システムであって、制御システムの更新情報が入力される更新情報入力部と、更新情報を解析する更新情報解析部と、更新の内容に対して行われる検証に関する検証情報が格納された検証情報記憶部と、解析の結果及び検証情報の中から、制御システムに対して実施する更新の内容及び当該更新に対して実施する検証の内容を設定する更新及び検証内容設定部と、更新及び検証を実施するために要する実施時間を推定する実施時間推定部と、推定した実施時間と、所定の制限時間とを比較して、更新及び検証が制限時間以内に実施を完了できるか否か判定する実施可否判定部と、を有する。
【0073】
上記構成によって、制御システムに対して許容される制限時間内で実施することが可能なシステム更新及び安全性の検証内容が決定できる。
【0074】
(2)更新情報解析部は、更新情報を解析して、複数の更新処理に分割する。これにより、制御システムに対して実施する更新処理の候補を複数生成することが可能になり、実施する更新及び検証内容の選択肢をより多く確保することが可能になる。
【0075】
(3)更新及び検証内容設定部は、制御システムに対して実施する更新内容として、分割した複数の更新処理のうち少なくとも1つを設定する。これにより、更新情報に含まれる全ての更新内容を実施できない場合であっても、一部の更新内容を実施することが可能になるため、様々な観点から更新内容を選択することが可能になる。
【0076】
(4)更新情報解析部による解析、更新及び検証内容設定部による設定、及び実施時間推定部による推定のうち少なくとも1つは、制御システムを実行するハードウェア又はソフトウェアをコンピュータ上で再現したデジタルモデルに基づき行う。これにより、ハードウェア及び/ソフトウェアを実際に使用することなく実行できるため、資源の節約を図ることが可能になる。
【0077】
(5)検証情報は、複数レベルが設定された、検証範囲又は検証粒度の一方を少なくとも含む。これにより、選択する更新及び検証内容についてこれらの情報を基に好適に優先順位付けして選択することが可能になる。
【0078】
(6)実施可否判定部が、更新及び検証が制限時間以内に実施を完了できると判定した場合に、更新及び検証内容設定部は、制限時間内に実施を完了できると判定された実施及び検証の内容以外の更新の内容及び検証の内容を追加設定し、実施時間推定部は、追加設定した更新及び検証を実施するために要する時間を推定し、実施可否判定部は、追加設定した更新及び検証が、制限時間以内に実施を完了できると判定された更新及び検証に追加して実施できるか否か判定する。これにより、一つの更新及び検証を実施した後も、追加で更新及び検証を実施することが可能になるため、制御システムに対してより安全性を高めることが可能になる。
【0079】
(7)更新情報解析部による解析の結果の中から、必須の更新内容を設定する必須更新内容設定部をさらに備える。これにより、制御システムに対して実施し得る更新処理が複数存在する場合であっても、必須の更新内容を設定することが可能になる。このため、例えばセキュリティ上の観点から直ちに更新されるべき装置/プログラムがあった場合に、他の必須でない更新が優先的に実施されてしまい、制御システムが危険にさらされる、といったリスクを低減することが可能になる。
【0080】
(8)実施可否判定部が、更新及び検証が制限時間以内に実施を完了できると判定した場合に、当該更新及び検証を実施した場合に想定される安全レベルを算出する安全レベル算出部と、想定される安全レベルと、制御システムに要求される安全レベルとを比較して更新及び検証が実施可能であるか判定する安全レベル判定部と、をさらに備える。これにより、(7)と同様に、制御システムが危険にさらされるリスクを低減することが可能になる。
【0081】
(9)また、本発明に係る更新内容検証方法は、制御システムの更新情報を取得し、更新情報を解析し、解析の結果、及び更新の内容に対して行われる検証に関する検証情報の中から、制御システムに対して実施する更新の内容及び当該更新に対して実施する検証の内容を設定し、更新及び検証を実施するために要する実施時間を推定し、推定した実施時間と、所定の制限時間とを比較して、更新及び検証が制限時間内に実施を完了できるか否かを判定する。
【0082】
上記構成により、(1)と同様に、制御システムに対して許容される制限時間内で実施することが可能なシステム更新及び安全性の検証内容が決定できる。
【0083】
以上で、本発明の実施形態についての説明を終了する。なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものである。このため、例えば、記憶部に記憶されている情報の内容、更新情報解析部での解析処理、更新及び検証実施時間推定部での推定処理、出力結果等、必ずしも説明した全ての構成、処理、情報、数値、に限定されるものではない。
【0084】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、それぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に記憶することができる。
【符号の説明】
【0085】
101…システム更新情報入力部(更新情報入力部)、102…更新情報解析部、103…更新及び検証内容設定部、104…更新及び検証実施時間推定部、105…制限時間入力部、106…実施可否判定部、108…検証レベル記憶部(検証情報記憶部)、300…制御システム、410…検証レベル情報、601…必須更新内容設定部、801…安全レベル算出及び判定部(安全レベル算出部・安全レベル判定部)