JP2019091460A - IoTデバイス実行順序制御システム及びその制御方法 - Google Patents

IoTデバイス実行順序制御システム及びその制御方法 Download PDF

Info

Publication number
JP2019091460A
JP2019091460A JP2018232053A JP2018232053A JP2019091460A JP 2019091460 A JP2019091460 A JP 2019091460A JP 2018232053 A JP2018232053 A JP 2018232053A JP 2018232053 A JP2018232053 A JP 2018232053A JP 2019091460 A JP2019091460 A JP 2019091460A
Authority
JP
Japan
Prior art keywords
firmware
execution order
iot device
level device
information
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.)
Pending
Application number
JP2018232053A
Other languages
English (en)
Inventor
航洋 竹之下
Koyo Takenoshita
航洋 竹之下
修 大橋
Osamu Ohashi
修 大橋
将仁 谷口
Masahito Taniguchi
将仁 谷口
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.)
Uhuru Corp
Original Assignee
Uhuru 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 Uhuru Corp filed Critical Uhuru Corp
Priority to JP2018232053A priority Critical patent/JP2019091460A/ja
Publication of JP2019091460A publication Critical patent/JP2019091460A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】ファームウェアの更新において、誤動作を発生しにくくなる下位装置を提供する。【解決手段】下位装置は、動作単位と、動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を上位装置から受信する受信部と、少なくとも、自装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、動作情報を記憶し、部分書き換え可能な領域である動作規定層と、を含む複数の階層からなるファームウェアと、を備える。【選択図】図1

Description

本発明は、上位装置からの指示に従って動作する下位装置のファームウェアに関する。
従来、各種機器のファームウェアについては、当該機器の動作を規定するものとして、通常書き換えができないように構成されている。このとき、機器の性能向上や問題改善のために、ファームウェアのバージョンアップを行うことがあるが、その場合には、ファームウェアを丸ごと更新する。特許文献1には、ファームウェアの更新において、ファームウェアを複数のブロックに分割して、更新対象の機器に送信することが開示されている。
特開2005−215796号公報
ところで、従来ファームウェアを更新する場合には、上述のように丸ごと更新する必要があるため、機器そのものの本来動作を止めたうえで、実行しなければならなかった。そのため、ファームウェアの更新期間中は、機器に期待されている本来実行すべき処理を実行できないという問題があった。また、機器として、小容量、低性能の機器を用いている場合には、大容量、高性能の機器に比して単位時間当たりの処理量が少ないため、ファームウェアの更新のための時間を要し、本来業務を実行できない時間が長くなるという問題もある。さらに、仮に、ファームウェアの更新を複数の機器に対して一斉に行ったとすると、ファームウェアにエラーがあった場合には、ファームウェアの更新後の複数の機器が正常に動作しなくなるという問題があった。
そこで、本発明は、上記問題に鑑みて成されたものであり、上位装置からの指示に従って動作する下位装置において、上述のような誤動作が発生しにくい下位装置、及びそのファームウェアを提供することを目的とする。
上述の課題を解決すべく、本発明の一態様に係る動作単位と、動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を上位装置から受信する受信部と、少なくとも、自装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、動作情報を記憶し、部分書き換え可能な領域である動作規定層と、を含む複数の階層からなるファームウェアと、を備える。
また、上記下位装置において、複数の階層は、下位装置の運用態様を示す動作単位の基礎を示す基礎動作を規定するエージェント層を更に含むこととしてもよい。
また、上記下位装置において、下位装置は、受信部が新たな指示情報を受信すると、新たな指示情報で示される動作情報を用いて動作規定層を更新する更新部を更に備えることとしてもよい。
また、本発明の一態様に係るファームウェアは、動作単位と動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を、上位装置から受信し、当該動作情報に従って動作する下位装置のファームウェアであって、少なくとも、下位装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、動作情報を記憶する、部分書き換え可能な領域である動作規定層と、を含むこととしてもよい。
また、上記ファームウェアにおいて、複数の階層は、システムにおける下位装置の運用態様を示す動作単位の基礎を示す基礎動作を規定するエージェント層を更に含むこととしてもよい。
また、本発明の一態様に係る更新方法は、下位装置におけるファームウェアの更新方法であって、動作単位と、動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を上位装置から受信する受信ステップと、少なくとも、自装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、動作情報を記憶し、部分書き換え可能な領域である動作規定層と、を含む複数の階層からなるファームウェアのうち、動作規定層のみを受信ステップにおいて受信した動作情報を用いて更新する更新ステップとを含む。
本発明に係る下位装置によれば、そのファームウェアが少なくとも部分書き換え可能な動作規定層と、部分書き換え不可能な基礎オペレーティングシステム層とに分けられていることにより、動作規定層だけでの書き換えが可能となり、下位装置の基本動作には影響を与えないので、下位装置においてファームウェアを更新しても誤動作しにくくなる。
下位装置を含む機器管理システムの構成例を示すシステム図である。 上位装置において動作情報を生成するためのユーザインターフェースの画面例を示す図である。 下位装置の動作例を示すフローチャートである。 下位装置の別構成例を示すブロック図である。 ファームウェアの更新の他の態様を示すイメージ図である。
以下、本発明に係る下位装置及びそのファームウェアについて、図面を参照しながら、詳細に説明する。
<実施の形態>
<構成>
本発明に係るファームウェアは、図1に示すように上位装置100と、下位装置200とからなるシステムにおける下位装置200において用いられるファームウェア231である。ここでは、当該システムを、機器管理システム1と呼称する。機器管理システム1において、上位装置100は、各下位装置200を管理する。当該管理の一環として、上位装置100は、下位装置200のファームウェア231の全部の更新(書き換え)、あるいは、一部の更新(書き換え)を指示することができる。当該指示は、上位装置100のオペレータからの入力に基づくものであってもよいし、プログラムによる自動的な指示であってもよい。
機器管理システム1は、例えば、工場における各種機器の管理システムであったり、セキュリティシステムであったり、ユーザの所在管理システムであったり、ホームネットワークシステムであったりしてよい。
機器管理システム1が、工場における各種機器の管理システムである場合には、上位装置100としては、下位装置200を管理するコンピュータであり、下位装置200は、工場に配された当該工場における作業を行うための作業機械や、作業機械や人員を管理するためのセンサ類であってよい。
機器管理システム1が、セキュリティシステムである場合には、上位装置100としては、下位装置200を管理するコンピュータであり、下位装置200は、セキュリティ管理を実現するための各種のセンサ(例えば、人感センサ、イメージセンサなど)であってよい。
また、機器管理システム1が、所在管理システムである場合には、上位装置100としては、下位装置200から情報を収集するサーバであり、下位装置200は、例えば、ユーザが保持するICカード等の認証機器などから識別情報を読み取るカードリーダであってよい。
また、機器管理システム1が、ホームネットワークシステムである場合には、上位装置100としては、下位装置200を管理するコンピュータであり、下位装置200は、家屋に備え付けられた各種の家電製品であってよい。なお、ここに示した機器管理システム1の具体例は一部での具体例であり、他のシステムであってもよい。
機器管理システム1においては、下位装置200は、複数配置することが想定された機器であり、そのため、その製作コストを抑制するために、プロセッサ(制御部220)の性能が低く、メモリ(記憶部230)の記憶容量が少ない装置となることが多い。一方で、下位装置200は、センサ類などである場合には、常時、センサとして機能する必要があるため、ファームウェアの更新などによって、本来の動作(センシング処理)が妨げられるのは望ましくない。また、同時に、ファームウェアの更新後に、ファームウェアにエラーが存在した場合に誤動作することも考えられるが、このような誤動作が発生したとしても下位装置200として果たすべき基本的動作が妨げられることも望ましくない。そこで、本実施の形態に係る下位装置200において、ファームウェアは、基本動作(根幹動作と呼称してもよい)を規定し、部分的書き換えが不可能な基礎オペレーティング層234と、基本動作を利用した動作単位と、動作単位を接続するリンクとによって定められた動作情報を記憶する部分的書き換えが可能な動作規定層232とに、ファームウェア231を部分的に更新できるように構成している。このようにファームウェア231を部分書き換え不可能に構成することで、上述のファームウェアの更新後にエラーが発生していたとしても最低限の機能を担保することができる。下位装置200の更なる詳細については、後述する。
上位装置100は、1以上の下位装置200とネットワーク300を介して接続され、各下位装置200を管理する機能を有する。上位装置100は、例えば、オペレータからの入力に従って動作するコンピュータシステムにより実現されるものであり、例えば、PC、サーバ装置などと呼称されるものが該当する。ここでは、図1に示すように上位装置100は、コンピュータシステムであり、モニターやオペレータからの入力を受け付けるキーボードやマウス、タッチパネル等の入力デバイスと接続されて運用される。
上位装置100は、入力部110と、制御部120と、通信部130と、記憶部140と、を備えるコンピュータシステムである。
入力部110は、上位装置100のオペレータからの入力を受け付ける機能を有する入力インターフェースである。入力部110は、例えば、キーボードやマウス、タッチパネル等の入力デバイスからの入力を受け付けて、制御部120に伝達する。
制御部120は、上位装置100の各部を制御する機能を有する。制御部120は、例えば、記憶部140に記憶されている制御用プログラム及び各種データを利用して、上位装置100として果たすべき機能を実行するプロセッサである。制御部120は、入力部110から伝達された入力内容に従って、動作単位と、動作単位間の接続関係を示すリンクと、により規定される動作情報を生成し、当該動作情報を含む指示情報を通信部130から指定した下位装置200に送信させる。動作単位や動作情報などの詳細については、後述する。
通信部130は、ネットワーク300を介して、下位装置200と通信を実行する機能を有する通信インターフェースである。通信部130は、下位装置200の通信部210から情報を受信すると、制御部120に伝達する。また、通信部130は、制御部120から指定された情報を、指定された宛先に送信する。例えば、通信部130は、制御部130からの指示に従って、下位装置200に対して送信すべき指示情報を、ネットワーク300を介して送信する。
記憶部140は、上位装置100が動作上必要とする各種プログラム及びデータを記憶する機能を有する。記憶部140は、例えば、HDD、SSD、フラッシュメモリなどの記憶媒体により実現することができる。また、記憶部140は、各下位装置200から収集した情報を記憶することとしてもよい。
上述のように、上位装置100は、上位装置100のオペレータ等からの入力にしたがって、下位装置200のファームウェアの一部の書き換えを指示することができる。
次に、下位装置200は、動作単位と、動作単位間の接続関係を示すリンクと、により規定された動作情報を含む指示情報であって、上位装置100から送信される指示情報に従って動作する機器(IoT(Internet of Things)デバイス)である。動作単位とは、下位装置において実行する処理1つ1つの単位のことであり、例えば、何らかのデータの入力であったり、データに対して実行する処理の内容であったり、何らかのデータの出力であったりする。動作単位間の接続関係を示すリンクとは、動作単位の実行順序を示す情報のことであり、動作単位と動作単位とを接続する情報のことをいう。下位装置200は、上流側の動作単位から順番にリンクで接続されている順序で、動作単位で示される処理を実行する。下位装置200は、例えば、工場における作業機械やセンサ、セキュリティ管理をするための各種の情報を収集するセンサであったり、ICカード等の認証機器などから識別情報を読み取るリーダであったり、各種の家電製品などにより実現することができる。
下位装置200は、通信部210と、制御部220と、記憶部230とを備える。通信部210と、制御部220と、記憶部230とは互いにバス240を介して接続される。
通信部210は、ネットワーク300を介して、上位装置100の通信部130と通信を実行する機能を有する通信インターフェースである。通信部210は、上位装置100の通信部130から送信された指示情報を受信して、制御部220に伝達する。また、通信部210は、制御部220から指示された場合に、制御部220から指定された情報を、上位装置100の通信部130に送信する。
制御部220は、下位装置200の各部を制御する機能を有するプロセッサである。当該プロセッサは、マイクロコンピュータと呼称されることもある。制御部220は、少なくとも、下位装置200が発揮する機能を実現するために足る最小限の性能を有する。制御部220は、記憶部230のファームウェア231の動作規定層232において規定されている動作情報に従って、下位装置200として実行すべき機能を実行する。また、制御部220は、通信部210から指示情報を伝達された場合に、当該指示情報に含まれる動作情報を抽出し、当該動作情報を用いて記憶部230に記憶されているファームウェア231のうち、動作規定層232を更新する更新部として機能してもよい。ここでいう更新は、一度動作規定層232に記憶されている情報を削除し、削除後に伝達された動作情報を書き込むものであってもよいし、動作規定層232に直接上書きするものであってもよい。
記憶部230は、下位装置200が動作上必要とする各種プログラム及びデータを記憶する機能を有する。記憶部230は、ファームウェア231を記憶する領域を有する。
ファームウェア231は複数の階層からなり、複数の階層は、少なくとも、下位装置200の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層234と、動作情報を記憶する、部分書き換え可能な領域である動作規定層232と、を含む。なお、複数の階層は、システムにおける下位装置200の運用態様を示す動作単位の基礎を示す基礎動作を規定するエージェント層233を含んでもよい。ファームウェア231は、下位装置200に所定の動作をさせるためのソフトウェアであり、ハードウェアとしての下位装置200に密接に関連するため、書き換えがされにくい記憶領域に保存されるものをいう。一般に、ファームウェアを、更新をする場合には、その全体が書き換えられるため、一部を更新しにくいところ、下位装置200におけるファームウェア231においては、部分的な書き換えが可能な領域を設けている。部分書き換え可能とは、ファームウェア全体ではなく一部の書き換えが可能になっていることをいう。一般的に機器のファームウェアを更新することになる場合には、下位装置200におけるファームウェア231のようにファームウェア本体を複数層に分離させていないため、ファームウェア全体で更新することになる。したがって、ファームウェアの記述に誤りがあった場合には、ファームウェア更新後の機器の基本動作が保証できなくなる可能性があるという問題があった。これに対して、本実施の形態に係る下位装置200においては、動作規定層232に限っては、部分的な書き換えを許容している。そのため、下位装置200として実行する基本動作内容を規定する基礎OS層234やエージェント層233を変更することがないので、下位装置200は、その基本動作を停止することなく、ファームウェアの更新が実現できる。
なお、図1には示していないが、下位装置200は、センサとして動作する場合には、備え付けられているセンサとして、各種の情報を取得する検知部を備えてよい。当該センサが例えば、超音波センサであれば、所定範囲内に何らかの物体が存在するか否かを検知したりすることができ、温度センサであれば、所定範囲内の温度を検知したりすることができる。また、下位装置200が、カードリーダとして動作する場合には、例えば、識別情報取得部として機能して、所定範囲内に存在するICカード等の識別情報を有する機器と通信して、当該識別情報を取得したりすることができる。
図2は、上位装置100において、動作情報を生成するために上位装置100に接続されたモニター上に表示されるUI(ユーザインターフェース)2000の一例を示す図である。
図2に示すように、UI2000は、少なくとも、各種の動作単位を示すノードを羅列した領域2010と、必要なノードを配置し、各ノードを接続するリンク等の接続を行うための作業領域2030とを含む。
領域2010は、スクロールバー2020を上下させることで、図示されていない、他のノードを領域2010に表示することができる。ノードは、例えば、下位装置200に対する入力を指定するものであったり、下位装置200から出力を指定するものであったり、下位装置200が保持するデータ等に対して行う処理などを規定するものであったりしてよい。
上位装置100のオペレータは、マウス等のポインティングデバイス等を用いて、動作単位であるノードのいずれかを、作業領域2030にドラッグアンドドロップすることにより、使用するノードを指定することができる。そして、各種の必要となるノードとノードを、リンクで接続することにより、下位装置200における処理の動作手順を指定することができる。
図2に示す例では、動作単位として、入力ノードIA2031、処理ノードPA2033、処理ノードPB2035、出力ノードOA2037、入力ノードIB2040、処理ノードPC2042、出力ノードOB2044が配されている。
そして、入力ノードIA2031と、処理ノードPA2033とは、リンク2032で接続されている。同様に、処理ノードPA2033は、処理ノードPB2035に、リンク2034で接続され、処理ノードPB2035は、出力ノードOA2037及び処理ノードPC2042に接続され、入力ノードIB2040は処理ノードPC2042に接続され、処理ノードPC2042は、出力ノード2044に接続されている。
図2に示す例における動作単位(ノード)と、各ノード間を接続するリンクとにより規定される動作情報の例では、下位装置200は、IAという入力を受けて処理PAを実行し、処理PAを実行した後に処理PBを実行して、得られた結果をOAとして出力する。また、下位装置200は、処理PBを実行して得られた結果と、IBという入力とを受けて、処理PCを行い、OBとして出力する。動作情報は、図2に示した、どのノードを使用し、どのノードとどのノードをリンクで接続しているのかの接続関係を示す情報になっていればどのような態様であってもよい。
このようなUIを通して、上位装置100のオペレータは、機器管理システム1に含まれる複数の下位装置200に対して、動作内容を指示することができる。
<動作>
図3は、下位装置200が、上位装置100から指示情報を受信した場合の処理例を示すフローチャートである。当該フローチャートは、ファームウェアの部分書き換え(更新)を行う場合の処理例を示している。
図3に示すように、下位装置200の通信部210は、上位装置100の通信部130からネットワーク300を介して、動作情報を含む指示情報を受信する(ステップS301)。通信部210は、指示情報を受信すると、動作情報を抽出し、制御部220に伝達する。
制御部220は、通信部210から動作情報を伝達されると、記憶部230に記憶されているファームウェア231のうち、動作規定層232に記憶されている動作情報を削除する(ステップS302)。
そして、その後に、制御部220は、通信部210から伝達された動作情報を、動作規定装置232に書き込んで更新する(ステップS303)。
これによって、下位装置200の根幹をなす動作を規定する基礎オペレーティング層234に触れることなく、下位装置200において複雑な処理を行うための動作情報を格納する動作規定層232を更新することができる。
<まとめ>
上記実施の形態に示したように、本発明に係る下位装置200に搭載されているファームウェアは、一部のみ更新が可能なように構成されていることで、ファームウェアの更新後にエラーが発生した場合にも下位装置200の根幹動作に支障を来す可能性を低減することができる。具体的には、下位装置200は、ファームウェア231を更新する場合に、下位装置200の根幹動作を規定するファームウェア231の基礎OS層234を書き換えることなく、動作規定層232を更新することができる。したがって、動作規定層232で規定されている基本動作の組み合わせは実行できずとも、下位装置200としての基本動作には影響を与えずに済むので、ファームウェアの更新後(動作規定層232の更新後)にエラーが発生したとしても下位装置200の根幹動作に支障を来す可能性を低減することができる。
<補足>
上記実施の形態に従って、下位装置200及びそのファームウェア231について説明したが、下位装置200及びファームウェア231は、他の手法により実現されてもよいことは言うまでもない。以下、下位装置200及びファームウェア231が取り得る他の態様について説明する。
(1)上記実施の形態においては、ファームウェア231を3つの層に分けた例を示したが、これは、部分書き換え可能な領域と、部分書き換え不可能な領域の2つの層に分けるだけであってもよい。ただし、上記実施の形態に示したように、3つの層に分けた方が、下位装置200として、よりフレキシビリティに長けた下位装置200を提供することができる。
(2)上記実施の形態においては特に記載していないが、ファームウェア231は、どのようなプログラミング言語によって作成されたものであってよく、例えば、C++、JAVA等の言語により作成されたものであってもよい。
(3)上記実施の形態においては特に記載していないが、下位装置200の制御部220は、ファームウェアの更新後にエラーが発生した場合に、ファームウェアの更新前に戻す処理を行ってもよい。この処理を行う場合、下位装置200は、記憶部200の記憶容量に余裕があれば、更新前のファームウェアのコピーを予め退避させておき、エラー発生時に退避させておいた更新前のファームウェアで再度上書きを行う。記憶部200の記憶容量に余裕がない場合には、上位装置100が各段階(バージョン)のファームウェアを保持しておき、ファームウェアの更新後にエラーが発生した場合に、下位装置200が上位装置100にエラーの報告を行うとともに、上位装置100に更新前のファームウェアの情報を要求して、更新前の状態に戻すこととしてもよい。
(4)上記実施の形態においては、オペレータは、上位装置100における新たな動作単位であるノードをUIを介して設定できてもよい。また、当該UIを介して、動作情報を送信する先の下位装置200を指定できてよく、このとき、下位装置200の一部または全部を示すグループ情報を指定して、複数の下位装置200を纏めて指定できてもよい。
(5)上記実施の形態においては、動作情報を都度削除し、新たな動作情報を書き込むことで、ファームウェアを更新する態様を示しているが、これは、動作情報を削除することなく、新たな動作情報を追加する更新であってもよい。
(6)上記実施の形態においては示していないが、基礎オペレーティング層234を更新する場合には、従来と同様にファームウェア231全体を更新する態様で更新することとしてよい。この場合、機器管理システム1においては、下位装置200の代替となる他の下位装置を設置してから、下位装置200のファームウェア231全体の更新を行うこととしてもよい。
(7)上記実施の形態においては、上位装置100において、実行順序を規定する動作情報を含む指示情報を作成し、下位装置200に送信することによって、下位装置200におけるファームウェアの更新を実行する態様を示したが、下位装置200におけるファームウェアの更新の態様はこれに限るものではない。以下、他の実施態様についての一具体例を説明する。
本補足に示す態様は、上記実施の形態と異なる点は、上位装置100ではなく、オペレータが自身の情報処理端末を用いて、動作情報及びその動作情報の配信ポリシーをクラウド上で作成し、その配信ポリシーを適宜下位装置200に送信する。ここで、動作情報とは、上記実施の形態にも示しているが、下位装置200が実行可能な処理のいずれかを示す動作単位と、その実行順序を示す情報である。そして、下位装置200は、その配信ポリシーに従って、クラウド上で作成された動作情報を配信ポリシーにしたがって、ダウンロードして、ファームウェアの更新を実行するというものである。ここで、下位装置200は、前述している通り、一例として、IoT機器である。
具体的には、図5に示すように、オペレータは自身の情報処理装置500(例えば、PC、タブレット端末、スマートフォン等)を用いて、上位装置100と同様の機能を有するサーバ100aにアクセスする。サーバ100aは、上位装置100が保有する機能に加えて、ウェブサーバとして、情報処理装置500からのアクセスを受けて付けて動作情報を作成するためのインターフェースを提供する。即ち、図2を用いて説明した動作情報をウェブブラウジングにより作成するためのインターフェースを提供する。情報処理装置500は、情報処理装置500のオペレータからの指示に従って、サーバ100aから提供するインターフェース画面(ウェブブラウザ)を表示し、そのインターフェース画面上で動作情報を作成する。即ち、図2に示すように、表示画面上で、実行させたい処理としての動作単位を配置し、実行させたい順序で、配置した動作単位間をオペレータ自身が線で結ぶことにより、オペレータは、動作情報(動作単位の順序の組み合わせを示す実行順序)を作成することができる。ここで、動作単位と動作単位とを線で結ぶとは、オペレータが、自由に線を描いて、または、始点と終点を指定して、動作単位同士を接続することをいう。これにより、オペレータは、視覚的にみて、容易に、かつ、自由度高く、直感的に動作情報を作成することができる。
また、動作情報を作成する際には、オペレータは、動作情報を各下位装置200に配信するための配信ポリシーを作成してもよい。オペレータにより作成された動作情報及び配信ポリシーは、サーバ100aの記憶部130またはサーバ100aがネットワーク300上(クラウド上)のアクセス可能な記憶媒体に記憶される。
ここで、配信ポリシーとは、各下位装置200に配信される情報であって、各下位装置200が、動作情報をサーバ100aからダウンロードし、ファームウェアの更新を実行するための条件を示す情報のことである。より具体的には、配信ポリシーとは、いつ、どの下位装置200が(下位装置200が多数ある場合には、「どの下位装置200からなる群が」でもよい)、どの動作情報をダウンロードして、ファームウェアの更新を行うのかを示す情報であり、1以上サーバ100aに記憶される動作情報の中のいずれかを示す動作情報の識別情報と、ファームウェアを更新する下位装置200を示す識別情報と、ファームウェアの更新を開始する時間情報とが対応付けられた情報である。配信ポリシーは、作成されると同時に、各下位装置200、もしくは、配信ポリシーを作成したオペレータにより指定された下位装置200に送信される。また、配信ポリシーは、サーバ100aで記憶されていてもよい。
下位装置200は、上記実施の形態に示した下位装置200の機能に加えて、更に、配信ポリシーを受信する機能と、その配信ポリシーに従って、必要に応じて、動作情報をサーバ100aにアクセスして取得し、取得した動作情報にしたがって、自装置内のファームウェアの更新を実行する機能とを有する。下位装置200の通信部210は、サーバ100aから配信ポリシーを受信する。そして、下位装置200の制御部220(エージェントソフトウェア)は、その配信ポリシーで示される動作情報を、その配信ポリシーで示される時間情報で指定される時間において、サーバ100aから取得し、ファームウェアの更新を実行する。制御部220は、ファームウェアの一部として、動作情報が規定されると、動作情報で示される実行順序で、指定されている動作単位を実行することで、下位装置200として処理するべき機能を実行する。なお、下位装置200は、配信ポリシーを一定時間ごとにサーバ100aにアクセスして取得する構成としてもよい。また、ここでは、下位装置200が配信ポリシーに従って動作情報をサーバ100aに取得しにいく構成としているが、これは、サーバ100aが配信ポリシーに従って、各下位装置200に配信する構成であってもよい。
このように、下位装置200のファームウェアの更新は、オペレータによるウェブブラウングにより、実行されてもよい。これにより、下位装置200のファームウェアの更新にあたり、より利便性の高いシステムを提供することができる。
(8)上記実施の形態において、下位装置200の各部は、集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって実現してもよいし、CPU(Central Processing Unit)およびメモリを用いてソフトウェアによって実現してもよい。また、各機能部は、1又は複数の集積回路により実現されてよく、複数の機能部の機能を1つの集積回路により実現されることとしてもよい。LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。また、当該回路は、再構築可能な回路(例えば、FPGA:Field Programmable Gate Away)により実現されてもよい。下位装置200を回路により構成する場合、例えば、図4に示すように、通信回路210aと、制御回路220aと、記憶回路230aと、から構成されてよく、各回路は、上記実施の形態に示した各機能部と同様の機能を実現する。
下位装置200の各機能部をソフトウェアにより実現する場合、下位装置200は、各機能を実現するソフトウェアである制御プログラムの命令を実行するCPU、制御プログラムおよび各種データがコンピュータ(又はCPU)で読み取り可能に記録されたROM(Read Only Memory)又は記憶装置(これらを「記録媒体」と称する)、上記制御プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(又はCPU)が上記制御プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記制御プログラムは、当該制御プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。本発明は、上記委任状送信プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
なお、上記制御プログラムは、例えば、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。
(9)本発明を諸図面や実施形態に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。また、上記実施の形態に示す構成を適宜組み合わせてもよい。
[付記事項]
以下に本願の原出願に係る請求項を付記する。
[1]
動作単位と、動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を上位装置から受信する受信部と、
少なくとも、自装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、前記動作情報を記憶し、部分書き換え可能な領域である動作規定層と、を含む複数の階層からなるファームウェアと、を備える下位装置。
[2]
前記複数の階層は、
前記下位装置の運用態様を示す前記動作単位の基礎を示す基礎動作を規定するエージェント層を更に含むことを特徴とする、[1]に記載の下位装置。
[3]
前記下位装置は、
前記受信部が新たな指示情報を受信すると、前記新たな指示情報で示される動作情報を用いて前記動作規定層を更新する更新部を更に備えることを特徴とする、[1]又は[2]に記載の下位装置。
[4]
動作単位と動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を、上位装置から受信し、当該動作情報に従って動作する下位装置のファームウェアであって、
少なくとも、
前記下位装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、
前記動作情報を記憶する、部分書き換え可能な領域である動作規定層と、を含む
ことを特徴とするファームウェア。
[5]
前記複数の階層は、
前記システムにおける前記下位装置の運用態様を示す前記動作単位の基礎を示す基礎動作を規定するエージェント層を更に含む
ことを特徴とする[4]に記載のファームウェア。
[6]
下位装置におけるファームウェアの更新方法であって、
動作単位と、動作単位間の接続関係を示すリンクとにより規定された動作情報を含む指示情報を上位装置から受信する受信ステップと、
少なくとも、自装置の基本動作を規定し、部分書き換え不可能な領域である基礎オペレーティングシステム層と、前記動作情報を記憶し、部分書き換え可能な領域である動作規定層と、を含む複数の階層からなるファームウェアのうち、前記動作規定層のみを前記受信ステップにおいて受信した動作情報を用いて更新する更新ステップとを含む更新方法。
1 機器管理システム
100 上位装置
110 入力部
120 制御部
130 記憶部
140 通信部
200 下位装置
210 通信部
220 制御部
230 記憶部
240 バス
300 ネットワーク

Claims (5)

  1. クラウドで、所望する動作単位を視覚的に配置して線を結ぶことで、当該動作単位の順序の組み合わせを示す実行順序を、作成する第1作成手段と、
    前記クラウドで、前記実行順序を配信するための配信ポリシーを作成する第2作成手段と、
    前記クラウドから配信対象のIoTデバイスに対して、前記作成された配信ポリシーに従って、前記作成された実行順序を配信する配信手段と、
    前記IoTデバイス内のエージェントソフトウェアが、前記配信された実行順序の通りに、前記IoTデバイスに処理を実行させるように制御する制御手段と、
    を備えるIoTデバイス実行順序制御システム。
  2. 前記実行順序は、前記IoTデバイスのファームウェアの一部として、規定される情報であり、
    前記IoTデバイスは、前記実行順序を受信すると、自機のファームウェアの更新を実行する
    ことを特徴とする請求項1に記載のIoTデバイス実行順序制御システム。
  3. 前記IoTデバイスは、前記ファームウェアのうちの一部である前記実行順序を定義する部分のみを更新する
    ことを特徴とする請求項2に記載のIoTデバイス実行順序制御システム。
  4. IoTデバイス実行順序制御システムによるIoTデバイスの制御方法であって、
    クラウドで、所望する動作単位を視覚的に配置して線を結ぶことで、当該動作単位の順序の組み合わせを示す実行順序を、作成する第1作成ステップと、
    前記クラウドで、前記実行順序を配信するための配信ポリシーを作成する第2作成ステップと、
    前記クラウドから配信対象のIoTデバイスに対して、前記作成された配信ポリシーに従って、前記作成された実行順序を配信する配信ステップと、
    前記IoTデバイス内のエージェントソフトウェアが、前記配信された実行順序の通りに、前記IoTデバイスに処理を実行させるように制御する制御ステップと、
    を含むIoTデバイスの制御方法。
  5. 1以上のコンピュータに、
    クラウドで、所望する動作単位を視覚的に配置して線を結ぶことで、当該動作単位の順序の組み合わせを示す実行順序を作成する第1作成ステップと、
    前記クラウドで、前記実行順序を配信するための配信ポリシーを作成する第2作成ステップと、
    前記クラウドから配信対象のIoTデバイスに対して、前記作成された配信ポリシーに従って、前記作成された実行順序を配信する配信ステップと、
    前記IoTデバイス内のエージェントソフトウェアが、前記配信された実行順序の通りに、前記IoTデバイスに処理を実行させるように制御する制御ステップと、
    をさせるためのプログラム。
JP2018232053A 2018-12-11 2018-12-11 IoTデバイス実行順序制御システム及びその制御方法 Pending JP2019091460A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018232053A JP2019091460A (ja) 2018-12-11 2018-12-11 IoTデバイス実行順序制御システム及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018232053A JP2019091460A (ja) 2018-12-11 2018-12-11 IoTデバイス実行順序制御システム及びその制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017217853A Division JP6648091B2 (ja) 2017-11-10 2017-11-10 機器管理システム、上位装置、下位装置、及び更新方法

Publications (1)

Publication Number Publication Date
JP2019091460A true JP2019091460A (ja) 2019-06-13

Family

ID=66836516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018232053A Pending JP2019091460A (ja) 2018-12-11 2018-12-11 IoTデバイス実行順序制御システム及びその制御方法

Country Status (1)

Country Link
JP (1) JP2019091460A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021256494A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ アクチュエータ及び/又は加熱器を備える装置並びにその装置を制御する方法
WO2021256496A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報処理方法および情報処理装置
WO2021256497A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ アクチュエータ及び/又は加熱器を備える装置並びにその装置を制御する方法
WO2021256430A1 (ja) * 2020-06-19 2021-12-23 パナソニックIpマネジメント株式会社 洗濯機、制御方法、及び、制御システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021256494A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ アクチュエータ及び/又は加熱器を備える装置並びにその装置を制御する方法
WO2021256496A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報処理方法および情報処理装置
WO2021256497A1 (ja) * 2020-06-19 2021-12-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ アクチュエータ及び/又は加熱器を備える装置並びにその装置を制御する方法
WO2021256430A1 (ja) * 2020-06-19 2021-12-23 パナソニックIpマネジメント株式会社 洗濯機、制御方法、及び、制御システム

Similar Documents

Publication Publication Date Title
US10678649B2 (en) Interfacing with a virtual database system
JP2019091460A (ja) IoTデバイス実行順序制御システム及びその制御方法
US10242023B2 (en) Programming model for synchronizing browser caches across devices and web services
CN106802858B (zh) 一种日志动态配置方法、装置及系统
US9218100B2 (en) Method and system for partitioning asset management plugins
CN111428166A (zh) 页面配置方法、页面元素替换方法、装置、设备及介质
US10684838B2 (en) Dynamic application deployment
US9906399B2 (en) Methods and systems for combined management of multiple servers
US20130325534A1 (en) Terminal management system, management server, and method therefor
TW201525870A (zh) 可更新積體電路無線電
US20130007377A1 (en) Message oriented middleware with integrated rules engine
KR102121641B1 (ko) 그래픽 동작들 통합
JP6648091B2 (ja) 機器管理システム、上位装置、下位装置、及び更新方法
US9690753B1 (en) Caching of a site model in a hierarchical modeling system for network sites
JP2012133567A (ja) 情報処理装置、情報処理装置の制御方法、プログラム。
KR20150099345A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
CN103077035B (zh) 一种进程配置管理系统及实现方法
CN116501449B (zh) 云原生环境下对于容器文件的管理方法及系统
KR102622170B1 (ko) Ai 모델 서빙 시스템 및 방법
CN116431194A (zh) 持续集成任务的构建方法、装置、设备以及存储介质
KR20150099261A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
CN116719551A (zh) 一种热部署方法、云服务系统、电子设备及存储介质
KR20150097181A (ko) 애플리케이션 개발 환경 제공 시스템
KR20150097190A (ko) 애플리케이션 개발 환경 제공 시스템
KR101229222B1 (ko) 동적 바로가기를 이용한 정보제공 시스템 및 그 방법

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190129

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190627