IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧

<>
  • 特許-機器制御システム 図1
  • 特許-機器制御システム 図2
  • 特許-機器制御システム 図3
  • 特許-機器制御システム 図4
  • 特許-機器制御システム 図5
  • 特許-機器制御システム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-11-07
(45)【発行日】2024-11-15
(54)【発明の名称】機器制御システム
(51)【国際特許分類】
   G06F 9/455 20180101AFI20241108BHJP
【FI】
G06F9/455
【請求項の数】 7
(21)【出願番号】P 2024554218
(86)(22)【出願日】2023-02-13
(86)【国際出願番号】 JP2023004766
【審査請求日】2024-09-11
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100118762
【弁理士】
【氏名又は名称】高村 順
(72)【発明者】
【氏名】亀谷 聡一朗
【審査官】西間木 祐紀
(56)【参考文献】
【文献】KAWASHIMA, Masahisa,IOWN for digital twin enabled societies,2022 Optical Fiber Communications Conference and Exhibition (OFC),2022年,pp. 1-3,[online], [retrieved on 2023-04-13], Retrieved from <https://ieeexplore.ieee.org/abstract/document/9748734>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/455
(57)【特許請求の範囲】
【請求項1】
ユーザ機器の機能を実現する回路素子と、
前記ユーザ機器の動作を司る情報を記憶するメモリと、
前記メモリに記憶された前記情報を前記ユーザ機器の外部に直接転送し、外部から転送された情報を前記メモリに直接記憶するユーザメモリ転送部と、
を有する前記ユーザ機器と、
前記ユーザ機器との間で情報を直接転送するサーバメモリ転送部と、
前記ユーザ機器の前記メモリのアドレスと前記回路素子の各要素との対応を示す対応情報に基づいて、前記サーバメモリ転送部を用いて前記メモリに記憶された情報を抽出するエミュレータ部と、
前記エミュレータ部が抽出した前記情報を用いて、仮想空間で前記ユーザ機器を再現し、前記仮想空間における分析結果に基づいて前記ユーザ機器の制御内容を決定する統合制御部と、
を有する中央演算処理装置と、
を備え、
前記エミュレータ部は、前記対応情報に基づいて、前記統合制御部が決定した前記制御内容を示す制御情報を、前記サーバメモリ転送部を用いて転送することで、前記制御情報を前記メモリに記憶させる
ことを特徴とする機器制御システム。
【請求項2】
前記中央演算処理装置は、
前記ユーザ機器に対応して設けられ、対応する前記ユーザ機器の前記メモリと同期する機器同期メモリ、
をさらに有し、
前記サーバメモリ転送部は、前記機器同期メモリに記憶された情報を前記ユーザ機器に直接転送し、前記ユーザ機器から転送された情報を前記機器同期メモリに直接記憶し、
前記エミュレータ部は、前記対応情報に基づいて前記メモリのアドレスを特定し、特定した前記アドレスに対応する前記機器同期メモリのアドレスに前記制御情報を書き込むことで、前記制御情報を前記メモリに記憶させる
ことを特徴とする請求項1に記載の機器制御システム。
【請求項3】
前記中央演算処理装置は、仮想現実構築プログラムを実行することによって前記エミュレータ部および前記統合制御部の機能を実現し、
前記仮想現実構築プログラムは、
前記中央演算処理装置に、対象の前記ユーザ機器の前記メモリのアドレスに対応する前記機器同期メモリの記憶領域を読み込ませ、
前記制御情報を生成する処理において、前記中央演算処理装置に、対象の前記ユーザ機器の前記メモリのアドレスに対応する前記機器同期メモリの記憶領域に前記制御情報を書き込ませる
ことを特徴とする請求項2に記載の機器制御システム。
【請求項4】
前記中央演算処理装置は、
前記中央演算処理装置の有する記憶領域の空き状況に基づいて、前記仮想空間への新たな前記ユーザ機器の追加に伴って、新たな前記ユーザ機器に対応する前記機器同期メモリに前記記憶領域を割り当てる同期メモリ管理部、
をさらに有する
ことを特徴とする請求項2または3に記載の機器制御システム。
【請求項5】
前記エミュレータ部は、前記ユーザ機器の前記メモリを直接読み書きする
ことを特徴とする請求項1に記載の機器制御システム。
【請求項6】
前記中央演算処理装置は、仮想現実構築プログラムを実行することによって前記エミュレータ部および前記統合制御部の機能を実現し、
前記仮想現実構築プログラムは、
前記中央演算処理装置に、前記サーバメモリ転送部の機能を用いて、対象の前記ユーザ機器の前記メモリを直接読み込ませ、
前記制御情報を生成する処理において、前記中央演算処理装置に、前記サーバメモリ転送部の機能を用いて、対象の前記ユーザ機器の前記メモリに前記制御情報を直接書き込ませる
ことを特徴とする請求項1に記載の機器制御システム。
【請求項7】
前記ユーザ機器は、
前記回路素子として太陽光発電パネルの向きを変化させる駆動回路を含む駆動系を有する第1のユーザ機器と、
検出したアナログの温度値をデジタル値に変換する変換回路を前記回路素子としてを含む温度計を有する第2のユーザ機器とを含み、
前記統合制御部は、前記第2のユーザ機器が測定した温度値と、前記第1のユーザ機器が設置されている位置とに基づいて太陽の位置を推定し、前記太陽光発電パネルの向きを決定し、
前記エミュレータ部は、前記対応情報に基づいて、前記統合制御部が決定した前記制御内容である前記太陽光発電パネルの向きを示す前記制御情報を、前記サーバメモリ転送部を用いて転送することで、前記太陽光発電パネルの向きを示す前記制御情報を、前記メモリに記憶させる
ことを特徴とする請求項1に記載の機器制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、デジタルツインを用いた機器制御システムに関する。
【背景技術】
【0002】
近年、現実空間に関する情報を収集し、収集した情報に基づいて、仮想空間で現実空間を再現する「デジタルツイン」と呼ばれる技術が注目を集めている。デジタルツインでは、リアルタイムに収集した情報を用いることで、仮想空間に現実空間をリアルタイムに再現することが可能になる。
【0003】
仮想空間を構築する中央演算処理装置は、仮想空間に対して行う分析の結果として、各マシンがどのように動作すべきかを決定し、制御指示を与えることができる。例えば特許文献1には、現実空間上のマシンを、仮想空間上に実装されたコントローラから制御するマシン制御システムが開示されている。
【0004】
仮想空間を構築する中央演算処理装置にはサーバ装置が用いられ、各装置の情報は、ディスク上のデータベースとして保持されるか、あるいは処理を高速化するために、サーバ装置に搭載されたメモリ上にクラス構造で定義されたオブジェクトとして保持されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2021-180507号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来のデジタルツインシステムでは、中央演算処理装置上の仮想空間で決定した機器の動作を機器側に反映する際、処理遅延が発生するため、機器の制御に遅延が生じてしまう場合があるという問題があった。
【0007】
例えば、中央演算処理装置上の仮想空間で決定した機器の制御内容を現実空間に反映する際、中央演算処理装置は、CPU(Central Processing Unit)上で機器の動作を一連のコマンド処理に変換した上でTCP(Transmission Control Protocol)/IP(Internet Protocol)等の汎用的なプロトコルでフレームを生成した上で通信を行い、機器側ではマイコンまたはCPUにおいてIPに係る処理からソケット処理に至る一連の受信処理を行った上でコマンドを解釈し、回路上の素子に対して制御の実行を行う。これら一連の動作において相応の処理遅延が発生するため、中央処理演算装置が機器上の回路動作と同レベルのリアルタイム性で制御を行うことが困難である。
【0008】
本開示は、上記に鑑みてなされたものであって、仮想空間で決定した機器の制御内容を現実空間に反映する際の処理遅延を低減することが可能な機器制御システムを得ることを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するために、本開示にかかる機器制御システムは、ユーザ機器と、中央演算処理装置とを有する。ユーザ機器は、ユーザ機器の機能を実現する回路素子と、ユーザ機器の動作を司る情報を記憶するメモリと、メモリに記憶された情報をユーザ機器の外部に直接転送し、外部から転送された情報をメモリに直接記憶するユーザメモリ転送部と、を有する。中央演算処理装置は、ユーザ機器との間で情報を直接転送するサーバメモリ転送部と、ユーザ機器のメモリのアドレスと回路素子の各要素との対応を示す対応情報に基づいて、サーバメモリ転送部を用いてメモリに記憶された情報を抽出するエミュレータ部と、エミュレータ部が抽出した情報を用いて、仮想空間でユーザ機器を再現し、仮想空間における分析結果に基づいてユーザ機器の制御内容を決定する統合制御部と、を有し、エミュレータ部は、対応情報に基づいて、統合制御部が決定した制御内容を示す制御情報を、サーバメモリ転送部を用いて転送することで、制御情報をメモリに記憶させることを特徴とする。
【発明の効果】
【0010】
本開示にかかる機器制御システムは、仮想空間で決定した機器の制御内容を現実空間に反映する際の処理遅延を低減することが可能であるという効果を奏する。
【図面の簡単な説明】
【0011】
図1】実施の形態1にかかる機器制御システムの構成を示す図
図2図1に示す中央演算処理装置のハードウェア構成の説明図
図3図1に示す機器制御システムの動作を説明するためのシーケンス図
図4】実施の形態2にかかる機器制御システムの構成を示す図
図5】実施の形態3にかかる機器制御システムの構成を示す図
図6】実施の形態4にかかる機器制御システムの構成を示す図
【発明を実施するための形態】
【0012】
以下に、本開示の実施の形態にかかる機器制御システムを図面に基づいて詳細に説明する。
【0013】
実施の形態1.
図1は、実施の形態1にかかる機器制御システム1の構成を示す図である。機器制御システム1は、1または複数のユーザ機器10と、中央演算処理装置20とを有する。ここで、図1に示す機器制御システム1は、2台のユーザ機器10を有し、2台のユーザ機器10のそれぞれを区別する場合、ユーザ機器10-a,10-bと称する。ユーザ機器10は、現実に存在する空間領域である現実空間に存在する装置であり、中央演算処理装置20は、現実空間から収集した情報に基づいて、仮想的な空間領域である仮想空間にユーザ機器10などを再現する装置である。
【0014】
各ユーザ機器10は、回路素子101と、メモリ102と、メモリ転送機能部103とを有する。ユーザ機器10-aの回路素子101を回路素子101-aと称し、ユーザ機器10-aのメモリ102をメモリ102-aと称し、ユーザ機器10-aのメモリ転送機能部103をメモリ転送機能部103-aと称する。同様に、ユーザ機器10-bの構成要素については、各構成要素の名称および符号の後に「-b」を付けて回路素子101-b、メモリ102-b、メモリ転送機能部103-bと称し、それぞれの構成要素を区別する場合がある。
【0015】
回路素子101は、ADC(Analog Digital Converter)、DAC(Digital Analog Converter)、CPU、マイクロコンピュータなどである。回路素子101は、ユーザ機器10の基本的な機能を実現するための回路である。
【0016】
メモリ102は、ユーザ機器10の動作を司る情報を記憶し、回路素子101の動作に伴って、記憶された情報が更新される。メモリ102は、回路素子101の一部として実装されているメモリであってもよいし、回路素子101とは別体のメモリであってもよい。
【0017】
メモリ転送機能部103は、中央演算処理装置20との間で情報を「直接」送受信するユーザメモリ転送部である。
【0018】
中央演算処理装置20は、サーバなどの汎用的な計算機であり、メモリ転送機能部201と、ユーザ機器10に対応して設けられる機器同期メモリ202と、ユーザ機器10に対応して設けられるエミュレータ部203と、統合制御部204とを有する。
【0019】
機器同期メモリ202およびエミュレータ部203は、複数のユーザ機器10-a,10-bのそれぞれに対応して設けられる。ユーザ機器10-aに対応する機器同期メモリ202を機器同期メモリ202-aと称し、ユーザ機器10-bに対応する機器同期メモリ202を機器同期メモリ202-bと称する。同様に、ユーザ機器10-aに対応するエミュレータ部203をエミュレータ部203-aと称し、ユーザ機器10-bに対応するエミュレータ部203をエミュレータ部203-bと称する。
【0020】
メモリ転送機能部201は、ユーザ機器10との間で、情報を「直接」送受信するサーバメモリ転送部である。なお、ここでは1つのメモリ転送機能部201を設けているが、複数のメモリ転送機能部201を有するようにして、複数のユーザ機器10との間で通信の競合が発生しないようにしてもよい。
【0021】
機器同期メモリ202は、対応するユーザ機器10のメモリ102に記憶された情報を記憶する記憶領域であり、対応するユーザ機器10のメモリ102と同期される。機器同期メモリ202には、対応するユーザ機器10のメモリ102に記憶された情報がメモリ転送機能部103およびメモリ転送機能部201を介して記憶される。また、中央演算処理装置20において機器同期メモリ202に書き込まれた情報は、メモリ転送機能部201およびメモリ転送機能部103を介して、対応するユーザ機器10のメモリ102に記憶される。機器同期メモリ202は、中央演算処理装置20の基本機能として実装されるメモリにおける一部のブロックを用いてもよいし、新たなデバイスが実装されてもよい。
【0022】
エミュレータ部203は、対応するユーザ機器10のメモリ102に記憶されたビットデータをユーザ機器10の動作状況として解釈する。また、エミュレータ部203は、ユーザ機器10のメモリ102のアドレスと回路素子101の各要素との対応を示す対応情報に基づいて、メモリ102に記憶された情報を仮想空間を構築するために用いる情報として抽出し、抽出した情報を、統合制御部204に出力することができる。なお、対応情報は、事前に中央演算処理装置20に記憶しておいてもよいし、ユーザ機器10と中央演算処理装置20との間で通信を用いて対応情報を共有してもよい。エミュレータ部203は、統合制御部204が対応するユーザ機器10に対する制御内容を決定した場合、制御内容を示す制御情報をユーザ機器10のメモリ102に記憶させる。具体的には、図1に示す構成では、エミュレータ部203は、対応する機器同期メモリ202に制御情報を書き込むことで、機器同期メモリ202がユーザ機器10のメモリ102と同期されるため、メモリ102に制御情報を記憶させることができる。
【0023】
統合制御部204は、デジタルツイン技術を用いて、エミュレータ部203が抽出したユーザ機器10の情報に基づいて、仮想空間を構築し、仮想空間でユーザ機器10を再現する。また統合制御部204は、仮想空間で行うシミュレーションや分析の結果から、ユーザ機器10の制御内容を決定することができる。なお、統合制御部204は、仮想空間を構築する際に、ユーザ機器10の情報に限らず、現実空間のあらゆる情報を用いることができる。例えば、統合制御部204は、現実空間の環境を測定したセンサ値を用いて、ユーザ機器10が設置された環境を仮想空間に再現してもよいし、ユーザ機器10以外の装置を仮想空間に再現してもよい。
【0024】
なお、エミュレータ部203および統合制御部204の機能は、中央演算処理装置20であるコンピュータ上で動作する仮想現実構築プログラムを用いて実現することができる。仮想現実構築プログラムには、エミュレータ部203および統合制御部204の動作が記述されている。
【0025】
具体的には、仮想現実構築プログラムは、中央演算処理装置20に、対象のユーザ機器10のメモリ102のアドレスに対応する機器同期メモリ202の記憶領域を読み込ませることができる。また、仮想現実構築プログラムは、制御情報を生成する処理において、中央演算処理装置20に、対象のユーザ機器10のメモリ102のアドレスに対応する機器同期メモリ202の記憶領域に制御情報を書き込ませることができる。これにより、エミュレータ部203および統合制御部204は、機器同期メモリ202に記憶されたメモリ102と同期された情報を用いて動作し、仮想現実構築プログラムの実行において、ユーザ機器10の情報を用いた演算を、機器同期メモリ202において、ユーザ機器10のメモリ102と対応する記憶領域を用いて行うため、演算結果が決定した時点で、機器同期メモリ202には制御内容が記憶されることになるため、処理遅延をさらに低減することができる。
【0026】
図2は、図1に示す中央演算処理装置20のハードウェア構成の説明図である。中央演算処理装置20は、図2に示すプロセッサ91およびメモリ92を含む制御回路90を備えることができる。この場合、図1に示すエミュレータ部203および統合制御部204の機能は、プロセッサ91がメモリ92に記憶されたプログラムを読み出して実行することにより、実現することができる。
【0027】
プロセッサ91は、CPUであり、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)などとも呼ばれる。メモリ92は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disk)などである。
【0028】
メモリ92は、プロセッサ91が実行する各処理における一時メモリとしても使用される。また、プロセッサ91が実行するプログラムは、記憶媒体に記憶された状態で提供されてもよいし、インターネットのような通信路を介して提供されてもよい。
【0029】
なお、メモリ転送機能部103およびメモリ転送機能部201が情報を「直接」送受信するとは、装置全体を制御する処理回路やオペレーティングシステムなどを介さずに、記憶媒体と記憶媒体との間、または記憶媒体と入出力デバイスとの間で直接データをやり取りすることを指す。ここでは、メモリ転送機能部103は、回路素子101を介さずに、メモリ102に記憶された情報を、中央演算処理装置20の機器同期メモリ202に直接転送し、中央演算処理装置20から転送された情報を、メモリ102に直接記憶することができる。メモリ転送機能部201は、中央演算処理装置20の全体の動作を制御する制御回路90を介さずに、機器同期メモリ202に記憶された情報を、ユーザ機器10のメモリ102に転送し、ユーザ機器10から転送された情報を、機器同期メモリ202に直接記憶することができる。メモリ転送機能部103およびメモリ転送機能部201は、例えば、RDMA(Remote Direct Memory Access)技術など、データを直接通信する技術を使用して、機器間でメモリデータを共有する機能を有する。
【0030】
図3は、図1に示す機器制御システム1の動作を説明するためのシーケンス図である。ここでは、1台のユーザ機器10と中央演算処理装置20とで行われる動作について説明するが、複数のユーザ機器10のそれぞれと、中央演算処理装置20との間で、同様の動作が行われる。
【0031】
ユーザ機器10のメモリ102は、回路素子101における情報を記憶している。回路素子101がマイクロコンピュータやCPUである場合には、メモリ102には、プログラムの動作状態を示す情報が記憶される。また、回路素子101がADCなどの機能部品である場合には、機能部品からの出力がメモリ102に記憶される。回路素子101が機能部品である場合、マイクロコンピュータやCPUを介してメモリ102に情報を記憶してもよいが、基本的には、DMA技術などの手段によって、メモリ102に直接情報が記憶される。
【0032】
ユーザ機器10のメモリ転送機能部103は、メモリ102の情報を中央演算処理装置20に直接転送する(ステップS101)。ステップS101の転送が行われるタイミングは、メモリ102に記憶された情報をリアルタイムで中央演算処理装置20に転送することができるタイミングであればよい。例えば、ステップS101の転送は、メモリ102の情報が書き換わるタイミングで行われてもよいし、回路素子101の動作周期や、回路素子101の動作周期の数倍程度の周期で周期的に行われてもよいし、中央演算処理装置20からのリクエスト信号に応じたタイミングで行われてもよい。
【0033】
中央演算処理装置20のメモリ転送機能部201は、ユーザ機器10から転送された情報を、転送元であるユーザ機器10に対応する機器同期メモリ202に出力して、機器同期メモリ202を更新する(ステップS102)。機器同期メモリ202のアドレス構造は、対応するメモリ102のアドレス構造と一致するように構成されている。
【0034】
エミュレータ部203は、対応する機器同期メモリ202のビットデータをユーザ機器10の動作状況を示す情報として抽出し(ステップS103)、抽出した情報を統合制御部204に渡す。このときエミュレータ部203は、対応するユーザ機器10の回路素子101の各要素と、メモリ102のアドレスとの対応を示す対応情報を記憶しており、対応情報に基づいて情報を抽出することで、ユーザ機器10の回路素子101の各要素に対応する情報を統合制御部204に提供することができる。このとき、統合制御部204およびエミュレータ部203の動作を記述した仮想現実構築プログラムが各ユーザ機器10の情報を用いた演算を、機器同期メモリ202の対応する記憶領域を用いて行うようにすることで、当該情報へのアクセスを意識することなく統合制御部204が動作することができるようになる。或いは、Shared Memoryプログラミングにおけるセマフォのような調停の手段を用いてもよい。
【0035】
統合制御部204は、ユーザ機器10の情報などに基づいて、仮想空間を構築し、仮想空間にユーザ機器10を再現する(ステップS104)。
【0036】
統合制御部204は、収集した情報に基づいて、仮想空間に対して分析を行い、ユーザ機器10の制御内容を決定する(ステップS105)。なお、ステップS105の処理は、ユーザ機器10の状態によって、必要に応じて実行される。
【0037】
統合制御部204がユーザ機器10の制御内容を決定すると、対象のユーザ機器10に対応するエミュレータ部203は、ユーザ機器10に対応する機器同期メモリ202に制御情報を書き込む(ステップS106)。このとき、エミュレータ部203は、対応情報に基づいて、制御内容に応じた動作を司るメモリ102のアドレスに対応する機器同期メモリ202の部分のデータを書き換える。このとき、仮想現実構築プログラムが、ユーザ機器10に対する制御内容に関する演算を、機器同期メモリ202において対応する記憶領域を用いて行うようにすることで、演算結果が決定した瞬間に、機器同期メモリ202には制御情報が記憶されることになる。このときも、Shared Memoryプログラミングにおけるセマフォのような調停の手段を用いてもよい。
【0038】
機器同期メモリ202の内容が更新されると、制御情報は、中央演算処理装置20のメモリ転送機能部201を介して、機器同期メモリ202に対応するユーザ機器10に転送される(ステップS107)。そして、転送された制御情報は、機器同期メモリ202に対応するユーザ機器10のメモリ転送機能部103を経由してメモリ102へと書き込まれる(ステップS108)。メモリ102に制御情報が書き込まれると、回路素子101は、メモリ102に記憶された情報に基づいて動作するため、統合制御部204で決定された制御内容がユーザ機器10の動作に反映されることになる。
【0039】
なお、ステップS107においては、機器同期メモリ202上の全てのデータがメモリ102へと転送されてもよいし、記憶されたデータの内容が変化したアドレスに相当するデータのみがメモリ102へと転送されてもよい。また、機器同期メモリ202のデータがメモリ102へと転送されるタイミングは、メモリ102のデータが機器同期メモリ202に転送されるタイミングと同様であってもよいし、中央演算処理装置20が転送制御を行う機能を備えていてもよい。この場合、メモリ転送機能部201およびメモリ転送機能部103への転送要求、メモリ102および機器同期メモリ202へのアクセスなどに競合が生じた際には、メモリ転送機能部201、メモリ転送機能部103、または中央演算処理装置20において転送制御を行う機能部において、調停処理を行うことになる。
【0040】
以上説明したように、機器制御システム1は、ユーザ機器10と、中央演算処理装置20とを有する。ユーザ機器10は、ユーザ機器10の機能を実現する回路素子101と、ユーザ機器10の動作を司る情報を記憶するメモリ102と、メモリ102に記憶された情報をユーザ機器10の外部に直接転送し、外部から転送された情報をメモリ102に直接記憶するユーザメモリ転送部であるメモリ転送機能部103と、を有する。また、中央演算処理装置20は、ユーザ機器10との間で情報を直接転送するサーバメモリ転送部であるメモリ転送機能部201と、ユーザ機器10のメモリ102のアドレスと回路素子101の各要素との対応を示す対応情報に基づいて、メモリ転送機能部201を用いてメモリ102に記憶された情報を抽出するエミュレータ部203と、エミュレータ部203が抽出した情報を用いて、仮想空間でユーザ機器10を再現し、仮想空間における分析結果に基づいてユーザ機器10の制御内容を決定する統合制御部204と、を有する。エミュレータ部203は、対応情報に基づいて、統合制御部204が決定した制御内容を示す制御情報を、メモリ転送機能部201を用いて転送することで、制御情報をメモリ102に記憶させる。
【0041】
上記のように、メモリ転送機能部201およびメモリ転送機能部103の機能によって、CPUなどによる通信処理を介さずに、現実空間のユーザ機器10と、統合制御部204が構築する仮想空間との間で直接、迅速な情報共有を行うことが可能になる。また、統合制御部204がユーザ機器10への制御内容を決定した際にも、メモリ転送機能部201およびメモリ転送機能部103の機能を用いることで、メモリ102に制御内容が直接書き込まれることになる。ここで、回路素子101の動作は、メモリ102の読み書きと直結しており、メモリ102に記憶された情報を書き換えることで、回路素子101の動作を変更することが可能である。したがって、回路素子101の基本構成を変更することなく、回路素子101の動作を変更することが可能である。回路素子101の動作がメモリ102の読み書きと直結しているため、処理遅延を抑制し、ハードウェアレベルで高いリアルタイム性を有するデジタルツイン制御を実現することができる。また、従来ユーザ機器10に対して制御コマンドが存在しないため制御できないような動作、例えば、ユーザ機器10上の回路素子101の一部であるセンサの故障に伴う異常値を補うといった制御を行うことも可能となる。
【0042】
また、中央演算処理装置20は、ユーザ機器10に対応して設けられ、対応するユーザ機器10のメモリ102と同期する機器同期メモリ202をさらに有し、メモリ転送機能部201は、機器同期メモリ202に記憶された情報をユーザ機器10に直接転送し、ユーザ機器10から転送された情報を機器同期メモリ202に直接記憶し、エミュレータ部203は、対応情報に基づいてメモリ102のアドレスを特定し、特定したアドレスに対応する機器同期メモリ202のアドレスに制御情報を書き込むことで、制御情報をメモリ102に記憶させる。
【0043】
このように、機器同期メモリ202を有することで、ユーザ機器10のメモリ102に記憶された情報のバックアップデータが、中央演算処理装置20に保持されることになる。したがって、あるユーザ機器10において障害が発生した場合、障害が発生した時点で、ユーザ機器10のメモリ102に記憶されている情報が、周辺の他のユーザ機器10のメモリ102の情報と共に中央演算処理装置20に保持されていることになる。このため、詳細な障害解析を行うことが可能になる。このとき、中央演算処理装置20において各時刻におけるこれらのメモリ102の情報の履歴および周辺のユーザ機器10の情報の履歴を記憶しておくようにすることで、さらに詳しい障害の状況を解析することができるようになる。
【0044】
また、中央演算処理装置20は、仮想現実構築プログラムを実行することによってエミュレータ部203および統合制御部204の機能を実現し、仮想現実構築プログラムは、中央演算処理装置20に、対象のユーザ機器10のメモリ102のアドレスに対応する機器同期メモリ202の記憶領域を読み込ませ、制御情報を生成する処理において、中央演算処理装置20に、対象のユーザ機器10のメモリ102のアドレスに対応する機器同期メモリ202の記憶領域に制御情報を書き込ませる。これにより、制御内容が決定した時点で、制御内容を示す制御情報が機器同期メモリ202に書き込まれることになる。したがって、よりリアルタイムにデジタルツイン制御を実現することが可能になる。
【0045】
また、中央演算処理装置20では、エミュレータ部203を柔軟に構成することができるため、中央演算処理装置20に接続するユーザ機器10の種別や回路素子101上のCPUやマイコンを動作させるファームウェアのバリエーションに応じて、様々なユーザ機器10を接続することが可能になる。
【0046】
実施の形態2.
図4は、実施の形態2にかかる機器制御システム2の構成を示す図である。機器制御システム2は、複数のユーザ機器10と、中央演算処理装置20Aとを有する。中央演算処理装置20Aは、メモリ転送機能部201と、機器同期メモリ202-a,202-bと、エミュレータ部203-a,203-bと、統合制御部204と、同期メモリ管理部205とを有する。実施の形態1にかかる機器制御システム1と比較して、機器制御システム2は、中央演算処理装置20Aが同期メモリ管理部205を有する点が異なる。以下、実施の形態1と同様の部分については説明を省略し、実施の形態1と異なる部分について主に説明する。
【0047】
同期メモリ管理部205は、機器同期メモリ202のアドレス管理を行う。同期メモリ管理部205は、各ユーザ機器10に対して割り当てられた機器同期メモリ202のアドレス情報を管理する。新たなユーザ機器10を追加する際には、同期メモリ管理部205は、中央演算処理装置20Aに備わる機器同期メモリ202用の記憶領域の空き領域を確認して、空き領域を新たなユーザ機器10に対応する機器同期メモリ202に割り当て、新たなエミュレータ部203を追加する登録制御を行う。これにより、新たなユーザ機器10の登録において競合の発生を抑制することができる。
【0048】
なお、中央演算処理装置20Aのハードウェア構成については、実施の形態1にかかる中央演算処理装置20のハードウェア構成と同様であり、同期メモリ管理部205の機能についても、エミュレータ部203および統合制御部204と同様に、プロセッサ91およびメモリ92を用いて実現することができる。
【0049】
以上説明したように、実施の形態2によれば、実施の形態1と同様の効果を奏することが可能である。さらに、実施の形態2によれば、中央演算処理装置20Aは、中央演算処理装置20Aの有する記憶領域の空き状況に基づいて、仮想空間への新たなユーザ機器10の追加に伴って、新たなユーザ機器10に対応する機器同期メモリ202に記憶領域を割り当てる同期メモリ管理部205をさらに有する。これにより、新たなユーザ機器10を追加する際にも、競合の発生を抑制することが可能になる。
【0050】
実施の形態3.
図5は、実施の形態3にかかる機器制御システム3の構成を示す図である。機器制御システム3は、複数のユーザ機器10と、中央演算処理装置20Bとを有する。中央演算処理装置20Bは、メモリ転送機能部201と、エミュレータ部203-a,203-bと、統合制御部204とを有する。実施の形態1にかかる機器制御システム1と比較して、機器制御システム3は、中央演算処理装置20Bが機器同期メモリ202を備えていない点が異なる。以下、実施の形態1と同様の部分については説明を省略し、実施の形態1と異なる部分について主に説明する。
【0051】
中央演算処理装置20Bは、機器同期メモリ202を備えないため、エミュレータ部203は、仮想メモリアドレスを指定してメモリ転送機能部201にアクセスするようにすることで、機器同期メモリ202ではなくメモリ102を直接読み書きする。この場合、機器同期メモリ202を設ける場合のようにユーザ機器10のバックアップデータをとることはできなくなるものの、機器同期メモリ202に書き込んでから機器同期メモリ202とメモリ102とが同期されるまでのタイムラグがなくなるため、よりリアルタイム性の高いデジタルツイン制御を実現することが可能になる。
【0052】
以上説明したように、実施の形態3によれば、実施の形態1と同様の効果を奏することが可能である。さらに、実施の形態3によれば、エミュレータ部203は、ユーザ機器10のメモリ102を直接読み書きすることができる。実施の形態3にかかる機器制御システム3は、機器同期メモリ202を備えないため、ユーザ機器10のバックアップデータを中央演算処理装置20Bに保持することができない代わりに、機器同期メモリ202に書き込んでから機器同期メモリ202とメモリ102とが同期されるまでのタイムラグがなくなるため、よりリアルタイム性の高いデジタルツイン制御を実現することが可能になる。
【0053】
実施の形態3では、中央演算処理装置20Bは、仮想現実構築プログラムを実行することによってエミュレータ部203および統合制御部204の機能を実現し、仮想現実構築プログラムは、中央演算処理装置20Bに、メモリ転送機能部201の機能を用いて、対象のユーザ機器10のメモリ102を直接読み込ませ、制御情報を生成する処理において、中央演算処理装置20Bに、メモリ転送機能部201の機能を用いて、対象のユーザ機器10のメモリ102に制御情報を直接書き込ませる。これにより、実施の形態1と同様に、制御内容を決定する処理が完了した時点で、機器同期メモリ202に制御内容を示す制御情報が書き込まれることになるため、よりリアルタイム性の高いデジタルツイン制御を実現することが可能になる。
【0054】
実施の形態4.
図6は、実施の形態4にかかる機器制御システム4の構成を示す図である。実施の形態1~3では、基本的なシステム構成を示したが、実施の形態4では、太陽光発電設備において、デジタルツイン制御を行う場合について説明する。
【0055】
機器制御システム4は、太陽光発電設備の制御システムであり、太陽光発電パネル1000と、ユーザ機器1010と、中央演算処理装置20Cとを有する。太陽光発電パネル1000は、実施の形態1~3におけるユーザ機器10の具体例であり、第1のユーザ機器とも呼ばれる。ユーザ機器1010は、実施の形態1~3におけるユーザ機器10の具体例であり、第2のユーザ機器とも呼ばれる。ここでは、2台のユーザ機器1010が示されており、2台のユーザ機器1010のそれぞれを区別する場合、ユーザ機器1010-a,1010-bと称する。
【0056】
太陽光発電パネル1000は、太陽光発電パネル1000の向きを変化させる駆動系1101と、メモリ1102と、メモリ転送機能部1103とを有する。太陽光発電パネル1000は、発電効率を高める目的で、太陽を追尾して太陽光発電パネル1000本体の向きを変更する機能を有する。具体的には、太陽光発電パネル1000は、駆動系1101がメモリ1102に記憶された太陽の方角情報に基づいて駆動することにより、太陽の向きに太陽光発電パネル1000の受光面が向くように、太陽光発電パネル1000の向きを変更する。
【0057】
駆動系1101は、太陽光発電パネル1000の向きを変化させる駆動機構と、駆動機構を制御する駆動回路とを有する(不図示)。駆動回路は、実施の形態1~3における回路素子101の具体例である。駆動系1101は、駆動回路がメモリ1102に記憶された情報に基づいて駆動機構を制御することにより、太陽を追尾するように太陽光発電パネル1000の受光面の向きを変化させる。
【0058】
メモリ1102は、実施の形態1~3のメモリ102の具体例であり、駆動系1101の駆動に用いられる情報を記憶する。
【0059】
メモリ転送機能部1103は、実施の形態1~3のメモリ転送機能部103と同様の機能を有する。
【0060】
ユーザ機器1010は、太陽光発電パネル1000の周辺に配置される。各ユーザ機器1010は、温度計1111と、メモリ1112と、メモリ転送機能部1113とを有する。ユーザ機器1010-aの温度計1111を温度計1111-aと称し、ユーザ機器1010-aのメモリ1112をメモリ1112-aと称し、ユーザ機器1010-aのメモリ転送機能部1113をメモリ転送機能部1113-aと称する。同様に、ユーザ機器1010-bの構成要素については、各構成要素の名称および符号の後に「-b」を付けて、温度計1111-b、メモリ1112-b、メモリ転送機能部1113-bと称し、それぞれの構成要素を区別する場合がある。
【0061】
温度計1111は、温度を測定して測定結果である温度値をメモリ1112に出力する。温度計1111は、実施の形態1~3における回路素子101の具体例であるADCを含み、温度値をアナログ値からデジタル値に変換して出力する。
【0062】
メモリ1112は、実施の形態1~3のメモリ102の具体例であり、温度計1111が出力する温度値を記憶する。メモリ転送機能部1113は、実施の形態1~3のメモリ転送機能部103と同様の機能を有する。
【0063】
中央演算処理装置20Cは、メモリ転送機能部201と、機器同期メモリ202と、エミュレータ部203と、統合制御部204とを有する。実施の形態1にかかる中央演算処理装置20が機器同期メモリ202およびエミュレータ部203を2つずつ有していたのに対して、中央演算処理装置20Cは、機器同期メモリ202およびエミュレータ部203を3つずつ有している点が異なる。以下、実施の形態1にかかる中央演算処理装置20と異なる部分について主に説明し、中央演算処理装置20と同様の部分については説明を省略する。
【0064】
中央演算処理装置20Cは、太陽光発電パネル1000に対応する機器同期メモリ202-aおよびエミュレータ部203-aと、ユーザ機器1010-aに対応する機器同期メモリ202-bおよびエミュレータ部203-bと、ユーザ機器1010-bに対応する機器同期メモリ202-cおよびエミュレータ部203-cとを有する。機器同期メモリ202-aは、太陽光発電パネル1000のメモリ1102と同期され、機器同期メモリ202-bは、ユーザ機器1010-aのメモリ1112-aと同期され、機器同期メモリ202-cは、ユーザ機器1010-bのメモリ1112-bと同期される。
【0065】
ユーザ機器1010-a,1010-bのメモリ1112-a,1112-bに記憶された温度計1111の情報は、メモリ転送機能部1113,201を介して機器同期メモリ202-b,202-cと同期されており、エミュレータ部203および統合制御部204を構成するプログラムと常時共有されている。
【0066】
統合制御部204では、各ユーザ機器1010の測定した温度値とユーザ機器1010が設置されている位置とに基づいて太陽の位置を推定し、太陽光発電パネル1000が効率よく発電することが可能になる太陽光発電パネル1000の方角を決定する。なお、エミュレータ部203および統合制御部204の機能を実現する仮想現実構築プログラムは、中央演算処理装置20Cに、太陽光発電パネル1000の方角を決定する演算処理を、太陽光発電パネル1000のメモリ1102に対応する機器同期メモリ202-aの、駆動系1101を司るメモリアドレスに相当する記憶領域を用いて行わせる。これにより、太陽光発電パネル1000の方角を決定する処理が完了した時点で、決定した方角を示す制御情報が機器同期メモリ202-aに記憶されていることになる。機器同期メモリ202-aに記憶された方角は、メモリ転送機能部201,1103を用いることで、CPUなどによる通信処理を介さずに直接、太陽光発電パネル1000のメモリ1102と同期され、駆動系1101は、メモリ1102において更新された方角の情報に基づいて太陽光発電パネル1000の方角を修正することになる。
【0067】
駆動系1101が太陽光発電パネル1000に搭載されたマイコンまたはCPUを介さずにメモリ1102から直接情報を読み取ったり、統合制御部204における演算にかかる時間と、機器同期メモリ202-aに書き込まれた制御情報がメモリ1102に同期されるまでにかかる時間との合計が、太陽光発電パネル1000に搭載されたマイコンまたはCPUにおける処理時間よりも短い場合、太陽光発電パネル1000にとっては統合制御部204の決定が即座に駆動系1101に反映されることになる。
【0068】
また、単純に駆動系1101を動作させるためだけでなく、太陽光発電パネル1000の移乗動作を補正する際にも、機器制御システム4を活用することができる。太陽光発電パネル1000が太陽光を検知するセンサ(不図示)を有し、太陽光発電パネル1000に搭載されたマイコンまたはCPUによって方角を決定しているような場合、太陽光センサが故障すると、メモリ1102において太陽光センサが検知した太陽の位置を記憶する領域を統合制御部204がメモリ転送機能部201,1103を介して上書きするようにしておけば、太陽光発電パネル1000は、太陽の追尾を継続することができる。
【0069】
また、太陽光を検知するセンサに限らず、メモリ1102を太陽光発電パネル1000の外部から書き換えて、太陽光発電パネル1000に搭載されたマイコンまたはCPUによって決定された制御内容よりも外部からの制御内容を優先して、太陽光発電パネル1000に搭載されたマイコンまたはCPUのプログラムを制御するように動作させることで、太陽光発電パネル1000がコマンド制御として有していない機能を含めて、様々な形で外部から動作を制御することが可能になる。このような外部制御機能は、太陽光発電パネル1000において異常を検知した場合に、中央演算処理装置20Cに異常を通知することで有効にするようにしてもよいし、統合制御部204が太陽光発電パネル1000の状態や、仮想空間と太陽光発電パネル1000の挙動の齟齬に基づいて異常を検知した場合に、有効にしてもよい。
【0070】
なお、上記の説明は一例であり、太陽の位置を推定する際には、太陽光発電パネル1000やユーザ機器1010以外から収集した情報、中央演算処理装置20Cが保持している情報を用いてもよい。また太陽の位置を推定する際には、温度値に限らず照度情報を用いてもよいし、気象情報、時刻情報などを用いてもよい。ユーザ機器1010から収集する情報は、温度値以外にも、ユーザ機器1010の位置情報、カメラなどの画像に基づく推定情報がメモリ1112に記憶されていれば、統合制御部204は、それらの情報を用いることもできる。
【0071】
以上説明したように、太陽光発電設備においても、本開示の機器制御システム4を適用することができる。この場合、実施の形態1~3におけるユーザ機器10は、回路素子101として太陽光発電パネル1000の受光面の向きを変化させる駆動回路を含む駆動系1101を有する第1のユーザ機器である太陽光発電パネル1000と、検出したアナログの温度値をデジタル値に変換するADCを回路素子101として含む温度計1111を有する第2のユーザ機器であるユーザ機器1010とを含む。また、統合制御部204は、第2のユーザ機器であるユーザ機器1010が測定した温度値と、第1のユーザ機器である太陽光発電パネル1000が設置されている位置とに基づいて太陽の位置を推定し、太陽光発電パネル1000の向きを決定する。エミュレータ部203-aは、メモリ1102のアドレスと駆動系1101の要素との対応を示す対応情報に基づいて、統合制御部204が決定した制御内容である太陽光発電パネル1000の方角を示す制御情報を、メモリ転送機能部201を用いて転送することで、太陽光発電パネル1000の方角を示す制御情報を、メモリ1102に記憶させる。
【0072】
ユーザ機器1010上のメモリ1112に記憶された温度計1111の測定結果である温度値が中央演算処理装置20C上のプログラムである統合制御部204およびエミュレータ部203によるメモリ呼び出しの形で機器同期メモリ202から読み出されることで、現実空間に存在するユーザ機器1010による温度の測定結果と、仮想空間上での温度分布推定との迅速な情報共有がなされる。
【0073】
また、エミュレータ部203および統合制御部204の機能を実現する仮想現実構築プログラムは、中央演算処理装置20Cに、太陽光発電パネル1000の方角を決定する演算処理を、太陽光発電パネル1000のメモリ1102に対応する機器同期メモリ202-aの、駆動系1101を司るメモリアドレスに相当する記憶領域を用いて行わせる。これにより、太陽光発電パネル1000の方角を決定する処理が完了した時点で、決定した方角を示す制御情報が機器同期メモリ202-aに記憶されていることになる。機器同期メモリ202-aに記憶された方角は、メモリ転送機能部201,1103を用いることで、CPUなどによる通信処理を介さずに直接、太陽光発電パネル1000のメモリ1102と同期され、駆動系1101は、メモリ1102において更新された方角の情報に基づいて太陽光発電パネル1000の方角を修正することになる。したがって、ユーザ機器1010の情報に基づいて、リアルタイムに太陽光発電パネル1000の方角を発電効率を高める向きに修正することが可能になる。
【0074】
さらに、太陽光発電パネル1000において障害を生じた場合、中央演算処理装置20Cは機器同期メモリ202にメモリ1102,1112のバックアップデータを有しているため、太陽光発電パネル1000のメモリ1102の情報が、周辺のユーザ機器1010のメモリ1112の情報と共に保持されていることになる。したがって、生じた障害が、太陽光発電パネル1000に搭載されたマイコン、CPUなどの異常動作が原因で発生したものであるのか、周辺の温度上昇が異常な状態であったために引き起こされたものなのかといった詳細な障害解析を行うことが可能になる。このとき、中央演算処理装置20Cにおいて各時刻におけるメモリ1102の情報を保持するようにしておき、ユーザ機器1010の温度変化と併せてトラッキングすることで、太陽光発電パネル1000上のファームウェアにおけるバグであるのか、あるいは搭載された回路全般に対する熱暴走であるのかといった詳細な解析を行うことが可能になる。
【0075】
以上説明したように、実施の形態4によれば、実施の形態1と同様の効果を奏することが可能になる。また、実施の形態4によれば、実施の形態1で説明したユーザ機器10は、回路素子101として太陽光発電パネル1000の向きを変化させる駆動系1101を有する第1のユーザ機器である太陽光発電パネル1000と、実施の形態1で説明したユーザ機器10の回路素子101として温度計1111を有する第2のユーザ機器であるユーザ機器1010とを含む。統合制御部204は、ユーザ機器1010が測定した温度値と、太陽光発電パネル1000が設置されている位置とに基づいて太陽の位置を推定し、太陽光発電パネル1000の向きを決定する。エミュレータ部203は、対応情報に基づいて、統合制御部204が決定した制御内容である太陽光発電パネル1000の向きを示す制御情報を、メモリ転送機能部201を用いて転送することで、太陽光発電パネル1000の向きを示す制御情報を、メモリ1102に記憶させる。これにより、統合制御部204が構築する仮想空間における分析結果に基づいて、現実空間に存在する太陽光発電パネル1000の方角を決定することが可能になる。
【0076】
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【0077】
例えば、実施の形態4では、実施の形態1の構成を太陽光発電設備に適用した場合について説明したが、実施の形態2,3の構成を太陽光発電設備に適用してもよい。つまり、実施の形態4にかかる機器制御システム4は、同期メモリ管理部205を備えていてもよいし、機器同期メモリ202を省略した構成であってもよい。
【符号の説明】
【0078】
1~4 機器制御システム、10,10-a,10-b,1010,1010-a,1010-b ユーザ機器、20,20A,20B,20C 中央演算処理装置、90 制御回路、91 プロセッサ、92 メモリ、101,101-a,101-b 回路素子、102,102-a,102-b,1102,1112,1112-a,1112-b メモリ、103,103-a,103-b,201,1103,1113,1113-a,1113-b メモリ転送機能部、202,202-a,202-b,202-c 機器同期メモリ、203,203-a,203-b,203-c エミュレータ部、204 統合制御部、205 同期メモリ管理部、1000 太陽光発電パネル、1101 駆動系、1111,1111-a,1111-b 温度計。
【要約】
機器制御システム(1)は、回路素子(101)と、メモリ(102)と、メモリに記憶された情報をユーザ機器の外部に直接転送し、外部から転送された情報をメモリに直接記憶するメモリ転送機能部(103)と、を有するユーザ機器(10)と、ユーザ機器との間で情報を直接転送するメモリ転送機能部(201)と、対応情報に基づいて、サーバメモリ転送部を用いてメモリに記憶された情報を抽出するエミュレータ部(203)と、エミュレータ部が抽出した情報を用いて、仮想空間でユーザ機器を再現し、仮想空間における分析結果に基づいてユーザ機器の制御内容を決定する統合制御部(204)と、を有する中央演算処理装置(20)と、を備え、エミュレータ部は、対応情報に基づいて、統合制御部が決定した制御内容を示す制御情報を、サーバメモリ転送部を用いて転送することで、制御情報をメモリに記憶させることを特徴とする。
図1
図2
図3
図4
図5
図6