以下に添付図面を参照して、本発明の一実施例について説明する。本実施例では、制御装置の制御対象としてエンジンを例に挙げて説明しているが、モータやタービンをはじめとする様々な原動機やポンプ、あるいはそれらが組み込まれた車両や船舶、ロボットなどの移動体についても同様に適用することができる。以下、エンジンを含むエネルギ供給装置と、このエネルギ供給装置の動作状態を取得するためのセンサと、各センサから得られるデータ(以下、センサデータ)をもとにエネルギ供給装置に指令を与える制御装置からなる制御系を例に、その内容を説明する。ここで、動作状態には、運転状態とエネルギ供給装置に供給する燃料の状態に関するデータが含まれる。また、本例では、自律的に制御モードが切替わり熱効率の最適化及び定常・安定(以下、安定)稼働をするように制御する。
図1には全体構成を示す。エネルギ供給装置102は、原動機とこれが作用する対象からなる。ここでは原動機としてエンジンが用いられているものとし、エンジンは発電機と軸を介して接続し、発電機により外部に電気エネルギ(以下、電力)を供給し、またエンジンの排気熱を利用して外部に熱エネルギを供給する装置である。センサ部103は、エンジンを含むエネルギ供給装置102の運転状態および、エネルギ供給装置に供給する燃料の状態に関するデータを計測するためのセンサからなる。ここでは、一例として、回転角度信号、水素流量、電力、筒内圧を計測可能なセンサが備えられているものとする。また、制御装置101は、センサ部103とエネルギ供給装置102に接続されており、センサ部103からセンサデータが入力され、エネルギ供給装置102に指令値を出力できるものとする。
制御装置101は、複数の機能が備えられている。具体的には、制御装置101は、入力部111と、制御部11と、出力部112と、通信処理部12とを有している。
入力部111は、エネルギ供給装置102の運転状態とエネルギ供給装置102に供給する燃料の状態に関するデータを取得する。制御部11は、運転状態と燃料の状態に関するデータを少なくとも含む情報に基づいてエネルギ供給装置102を制御する制御情報を決定する。出力部112は、制御部11にて決定した制御情報をエネルギ供給装置に出力する。通信処理部12は、制御装置101の外部ネットワーク104を介したエネルギ供給装置の稼働状態の指示を受け付けるために用いられる。
制御部11は、要求状態判定処理部113と、制御量演算部115と、選択部116と、制御量探索部117と、学習部118とを有している。
要求状態判定処理部113は、入力部111で得られたセンサデータを基にエネルギ供給装置102が要求状態を満足しているか、または満足するための制御モードで稼働しているかなどを判定する。制御量演算部115は、センサデータを基にして学習モデルを通じて制御量を算出処理する。選択部116は、要求状態判定処理部113およびセンサデータ得られる情報に基づいて学習モデルを選択する。制御量探索部117は、規定した目的を満たす制御量を決定するためにエネルギ供給装置102の制御量を算出する。学習部118は、センサデータ及び制御量から学習モデルを作成する。
また、制御装置101の外部からエネルギ供給装置102の稼働状態の指令を受け付けるための通信インタフェース(以下、通信IF)119を有しており、通信処理部12と内部バス等の内部通信線により電気的に接続されている。
通信処理部12は、制御装置101の外部からエネルギ供給装置102の稼働状態の指令を受け付けるため外部インタフェース(以下、外部IF)121を有する。また、通信処理部12は、稼働状態の指令に応じて信号の入出力を担う内部処理部122と、ディジタル信号などの入出力を行う信号入出力部123とを有している。
また、制御装置101は、探索用データベースと、学習用データベースと、学習モデルデータベースと、稼働ログデータベース、とを少なくとも保持可能な記憶領域を有している。探索用データベースは、制御量探索に用いる。学習用データベースは、センサデータ及び制御量に基づいて学習モデルを作成するために用いる。学習モデルデータベースは、学習後のモデルデータを保持する。稼働ログデータベースは、稼働ログデータを保持する。
さらに、制御装置101のハードウェアとしては、PC(Personal Computer)等の一般的なコンピュータにより構成される。つまり、CPU(Central Processing Unit)、メモリ、外部記憶装置、通信処理部12、出力装置、入力装置、電源入力部等の各部を備えている。制御装置101を構成するこれらの各部は、内部バス等の内部通信線により電気的に接続されている。
CPUは、外部記憶装置に記憶されている各種プログラムを読み出してメモリにロード
して実行することにより、制御装置101の各種機能を実現する。メモリは、例えば、データの読書き可能なRAM(Random Access Memory)から構成され、CPUにより上
記各種プログラムがロードされる。外部記憶装置は、例えば、ROM(Read Only Memory)等の記憶媒体、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の記憶装置から構成される。そして、外部記憶装置は、制御装置101の処理に必要な各種プログラムを記憶する。
なお、上記各種プログラムは、外部IF121を介してネットワークから外部記憶装置にダウンロードされ、メモリ上にロードされて、CPUにより実行されるようにしてもよい。また、CD(Compact Disk)やDVD(Digital Versatile Disk)等の可搬性を有するコンピュータで読み取り可能な記憶媒体を用いてもよい。つまり、これらに対して情報を読み書きする読書装置を介して、当該記憶媒体からメモリ上に直接ロードされCPUにより実行されるようにしてもよい。
さらには、上記各種プログラムが、コンピュータにインストール可能な形式又は実行可
能な形式のファイルで上記記憶媒体に記録されて提供されてもよい。さらには、上記各種
プログラムが、通信ネットワークに接続されたコンピュータ上に格納され、ネットワーク
経由でダウンロードにより提供されてもよい。
また、ここでは、制御装置101の各部については、ソフトウェア(コンピュータプログラム)としての実装を想定しているが、それらのすべてまたは一部をハードウェアとして実装してもよい。例えば、入力部および出力部の機能をハードウェアAに実装し、制御部11の各部をハードウェアBに実装し、通信処理部12をハードウェアCに実装してもよい。この場合、ハードウェアAとハードウェアBとハードウェアCの各ハードウェアを通信線等により電気的に接続することで制御装置101の構成を満たすこともできる。また、制御部11と通信処理部12が同一のハードウェアで構成されている場合、通信処理部12に機能が補える場合、通信IF119は端子等の信号の受信点とみなすこともできる。
また、センサ部103を除く各部については、制御装置101と通信可能な遠隔地に設けられていても良い。また、以上の各部をなすハードウェアやソフトウェアは、実施形態に応じて取捨選択しても良い。
センサデータの一例を、図5に示した。つまり、水素流量501といった燃料の状態、エネルギ供給装置102の稼働状態データである電力502、筒内圧503~筒内圧505(筒内圧1~N)といった、エンジンの燃焼の1サイクル分の燃焼圧力の時間変化に対応するデータである。加えて、図示していないが、エンジンの制御量である空気量、燃料量、点火時期や、回転角信号、カム信号、ラムダ信号等を稼働状態および燃料の状態として入手するものとする。
また、筒内圧を計測可能なセンサとしては、ここでは気筒内部の燃焼圧力を計測する燃焼圧力センサを想定するが、筒内圧と相関がある量を計測可能なセンサであれば他のセンサを代替してもよい。例えばエンジンに設置したひずみセンサを用いても良いし、筒内圧の変化が音や振動として計測可能ならマイクや振動センサを用いても良い。あるいは、燃焼熱の変化を計測可能ならば熱検知センサやカメラ等のセンサを用いても良い。または新規にセンサを付与せずとも、クランク軸の回転信号と相関があるならば、その信号をセンサデータとして用いることもできる。
入力部111では、センサ部103が取得したセンサデータをもとに、エネルギ供給装置102の稼働状態および燃料の状態に関するデータが得られているものとし、制御部11にセンサデータを受け渡す処理を行う。例えば、入力部111は上記センサデータ自体をそのまま状態データとみなして以降の処理で用いてもよいし、連続データを適当な離散データに変換するなど、特定のルールに沿った処理を行っても良い。また、上記の状態データが取得できる場合には、信号の種別や形態は問わず、アナログ信号でも良いしディジタル信号でも良い。
出力部112では、制御部11から出力される制御量をエネルギ供給装置102に指令値として出力する機能を備える。例えば、出力部112では、制御量として空気量、燃料量、点火時期に関する指令値をそのままのデータで受け渡しても良い。また、必要な補正を処理しても良く、エネルギ供給装置102の受信形態に応じてアナログ信号や通信信号などの最適な手法で信号を受け渡す機能を備える。
通信処理部12内の外部IF121は、ゲートウェイやルータなど外部ネットワークを中継する機能を備えており、外部ネットワークから要求状態の指令信号を中継する機能を備える。
また、通信処理部12内の内部処理部122は、外部ネットワーク104から通信処理部12内にある信号入出力部123に対して信号出力または信号入力に関する指令が出された場合に、その実行処理を行う機能を備える。例えば外部ネットワーク104から、信号入出力部123に対して、ディジタル信号の出力指令が出された場合、外部IF121を介して、内部処理部122に指令が届き、内部処理部122が実行処理を行い、信号入出力部123からディジタル信号が出力される。
ここで、信号入出力部123は、内部処理部122から実行処理がある場合に、信号の入力または出力を行う機能を有しており、入出力信号の形態はアナログ信号でもディジタル信号も問わない。
なお、制御装置101は、複数のエネルギ供給装置102と接続し、それぞれのエネルギ供給装置102を制御することも可能である。この場合、制御装置101は、外部ネットワーク104を介して各エネルギ供給装置102と接続してもよい。
制御部11の内部機能を記述するにあたり、以上に記載した制御系において、エンジンを制御するための第1の制御モードと、第2の制御モードの少なくとも2つの制御モードを想定する。
ここで第1の制御モードは、設定した探索目的を満たす制御量を決定するためにエネルギ供給装置102の制御量を可変する制御量探索部117が担う制御モードである。第1の制御モードにおいて、例えばエネルギ供給装置をエンジン発電機とし、エンジン発電機の発電効率を最大化することを探索目的と設定した場合を説明する。本モードでは、エンジン発電機の電力と、エンジンの制御量となる空気量、燃料量、点火時期などから発電効率を演算し、エンジン発電機の稼働状態は同一条件下において、発電効率が最大化となるよう制御量を可変とする。つまり、第1の制御モードでは、エンジン発電機の制御に関する学習(探索)を行いかつ発電機の制御を実行している。また、第1の制御モードは、学習処理を行うモードと表現することも可能である。このように、安定状態が継続する場合、つまり、動作状態が一定範囲内である場合に、第1の制御モードにおいて、学習モデルを選択することも本実施例に含まれる。本内容は後述するが、このことで、動作状態に応じた学習処理を実現できる。
また第2の制御モードとは、エネルギ供給装置102を制御するモードである。処理ステップとしては、入力部111で得られたセンサデータを基に、要求状態判定処理部113によって選択される制御モードである。これは、需要に応じたオンデマンド制御とも表現可能である。この場合、まずセンサデータに含まれる情報から制御量を算出するための学習モデルを選択し、選択された学習モデルによって制御量を算出し、制御量出力部114に制御量を送信する制御ステップを有する。
第2の制御モードにおける、エネルギ供給装置をエンジン発電機とし、エンジン発電機の電力を制御する例を説明する。このモードは、図5に示されるセンサデータに含まれる稼働状態の水素流量501や、電力502のセンサ情報を踏まえて、選択部116にて学習モデルを選択する。そして、本モードは、選択された学習モデルにセンサデータを制御量演算部115に入力し、算出された制御量を、制御量出力部114を介して出力部112に送信することで、エンジン発電機を所望の電力にて制御するモードである。
なお、制御装置101が、複数のエネルギ供給装置102と接続する場合、その一部に対して能動的に、第1の制御モードとなるよう制御を実行してもよい。つまり、後述するような燃料の状態と所定の範囲になるような制御信号、制御量出力部114で出力してもよい。このことで、一部のエネルギ供給装置102についての学習処理を実行しつつ、他のエネルギ供給装置102は第2の制御モード、つまり、需要に応じたオンデマンド制御で運転が可能になる。このように、第2の制御モードでは、第1の制御モードとは異なる制御でエンジン発電機を制御することになる。
ここで、要求状態判定処理部113は、エネルギ供給装置102の稼働状態および、エネルギ供給装置102に供給される燃料の状態に関するセンサデータを受信した際に、処理が実行される。図2には要求状態判定処理部113の処理フローの一例を示し、以下説明する。
まず、要求状態判定処理部113は、入力部111を介してセンサデータを受信し、判定処理フローを開始する(ステップ201)。
要求状態判定処理部113は、制御対象であるエネルギ供給装置102が稼働しているかにより、実行モードを確認する(ステップ202)。要求状態判定処理部113は、エネルギ供給装置102が稼働している場合は、第2の制御モードで実行すると判断する。
次に、要求状態判定処理部113は、第1の制御モードの実行スケジュールの指定の有無を判定する(ステップ203)。これは、制御装置101が有するスケジュールデータを用いて判断する。
そして、要求状態判定処理部113は、実行スケジュールの指定が有る場合、スケジュールデータを用いて第1の制御モードの実行時間を特定する(ステップ204)。
要求状態判定処理部113は、実行時間であれば第1の制御モードに移行する(ステップ209)。一方、第1の制御モードの実行スケジュールが指定されていない場合や、まだ実行時間でない場合は、ステップ205にて、要求状態判定処理部113が外部通信の有無の判定が行われる。なお、第1の制御モードの実行スケジュールの指定方法は、外部ネットワークを介しても良いし、事前に登録しておいても良い。但し、第1の制御モードはエネルギ供給装置102の安定的な稼働状態が必要となるため、あらかじめエネルギ供給装置102の稼働スケジュールを定めておき、稼働状態が安定する時間帯に第1の制御モードの実行スケジュールを設定しておくと良い。
ステップ205において外部ネットワークを介した通信制御が行われている場合、ステップ207にて、要求状態判定処理部113が第1の制御モードの実行指示の有無を判別する。外部ネットワークを介して第1の制御モードの実行指示がある場合、第1の制御モードに移行する(ステップ209)。一方、要求状態判定処理部113は第1の制御モードの実行指示がない場合は、第2の制御モード実行のためステップ214の処理項目に進む。
ステップ205において、要求状態判定処理部113は外部ネットワークを介した通信制御が行われていない場合、後述する実行条件1を満たす運転条件かの判定処理を行う(ステップ206)。判定の結果、実行条件1を満足した場合、第1の制御モードに移行する(ステップ209)。一方、実行条件1を満足しない場合、要求状態判定処理部113はステップ208の処理項目に進む。
ステップ208にて、要求状態判定処理部113は後述する実行条件2を満たす運転条件化の判定処理を行う。判定の結果、実行条件2を満足した場合、第1の制御モードに移行する(ステップ209)。一方、実行条件1を満足しない場合、第2の制御モード実行のためにステップ214の処理項目に進む。
ここで、前述の実行条件1の一例としては、図7に示した実行条件1判定処理開始(ステップ701)から実行条件判定終了処理(ステップ713)にて定義することができる。図2のステップ206で実行条件1の判別処理に移行した際に、図7のステップ701が実行される。この場合、要求状態判定処理部113がまず燃料の状態の変動が所定の範囲内であるか否かを判別する(ステップ702)。そして、要求状態判定処理部113は、所定の範囲内である場合には経過時間が所定の時間以内であるか否かを判別する(ステップ703)。これらによって所定の時間に、要求状態判定処理部113は、所定の範囲内の変動で収まれば燃料の状態は安定していると判断することになる。ここで、燃料の状態とは、燃料の流量や、特に多種燃料を利用した場合は燃料の種類、混合割合、燃料成分の変動などを指す。つまり、これらの少なくとも1つを用いることが可能である。これら各種の情報を用いることで、エネルギ供給装置102の特定に応じたきめ細かな制御が可能になる。
なお、燃料として、エタノールやメタンなどのバイオ燃料を用いてもよい。さらに多種燃料は、複数の燃料であり、バイオ燃料と水素燃料などその組み合わせは問わない。
これらの燃料の状態が安定していると判断されれば、次に制御対象のエネルギ供給装置102の稼働状態の安定判別が行われる。ステップ704では、要求状態判定処理部113では、エネルギ供給装置102の稼働状態・出力(例えば電力)の変動の判別が行われ、その安定状態の経過時間が所定の時間か否かを判別する(ステップ705)。要求状態判定処理部113は、これらの各条件を満足した場合に、実行条件1が満足したと判断する。一方、要求状態判定処理部113は、いずれかが満足していなければ実行条件1は満足しないと判断し、実行条件判定処理を終了し(ステップ713)、図2のステップ208に移行する。
また前述の実行条件2の一例としては、図7に示した実行条件2判定処理開始(ステップ708)から実行条件判定終了処理(ステップ713)にて定義することができる。
図2のステップ208で実行条件2の判別処理に移行した際に、要求状態判定処理部113が図7のステップ708を実行する。要求状態判定処理部113は、まず選択可能な学習モデルの有無を判別する(ステップ709)。そして、要求状態判定処理部113は、選択可能な学習モデルが無い場合は、もっとも近いモデルで第2の制御モードが実行されている状態であり、この状態が所定の時間の経過判別(ステップ710)に移行する。ステップ701にて、要求状態判定処理部113は、所定の時間経過しているとみなされれば、実行条件2が満足すると判定する(ステップ711)。一方、いずれにも該当しない場合には、要求状態判定処理部113は、実行条件2を満足しないと判定する(ステップ712)。このため、実行条件判定処理は終了し、図2のステップ214に移行する。
なお、図2では、実行条件1および実行条件2の2つの条件を設定したが、条件数および条件内容はこの限りではなく、エネルギ供給装置102の稼働計画に応じて自由に設定ができる。また図7における実行条件においては、所定の第1の時間の間、エネルギ供給装置の燃料の状態の変動が所定の範囲内であることと、所定の第2の時間の間、エネルギ供給装置の電力変動が安定していること、を少なくとも含むが、他に諸条件を付与してもよい。また、所定の第1の時間と所定の第2の時間は、同じ時間でもよく、異なる時間でもよい。また、図7では直列に判別条件(ステップ702~ステップ705、ステップ709~ステップ710)を設定したが、制御対象の状態に応じて並列に設定しても良い。さらに、要求状態判定処理部113におけるステップ702~705、709~710は、それぞれ単独で判断してもよい。例えば、要求状態判定処理部113がステップ702にて、燃料の状態変動が所定範囲内と判定すると、ステップ706に移行してもよい。
以上のとおり、図7では、エネルギ供給装置102の動作状態として、燃料の状態と供給するエネルギの状態を用いている。このことで、エネルギ供給装置102の動作の実情に応じた制御を行うことが可能になる。さらに、動作状態の変動が、所定時間以上一定の範囲内かを判定することで、継続的に安定状態が継続しているかを判定でき、より正確な判定が可能になる。
図2におけるステップ209は、第1の制御モードに移行処理が行われる。具体的には後述する図4の第1の制御モードの実行処理フローチャート事例におけるステップ401を実行する。またさらに後述する図6の第2の制御モードの実行処理フローチャート事例におけるステップ610に処理終了判定を出力することで、第1の制御モードに移行する。その後、ステップ211では要求状態判定処理部113がステップ418の処理判定を行い、第1の制御モードの中断指令があるかを判定する(ステップ212)。この結果、要求状態判定処理部113は中断指令がない限り、第1の制御モードが継続する。ステップ211で終了判定後、ステップ213では、要求状態判定処理部113は要求状態判定処理の終了判定を行い、要求状態判定処理が継続である場合は、ステップ202に戻る。
一方、要求状態判定処理部113が行うステップ210は第2の制御モードに移行する処理であるが、エネルギ供給装置102の稼働状態に応じて処理が異なる。
ステップ214では、要求状態判定処理部113は、まず現状、第2の制御モードで稼働しているかを判定するため、ステップ601~610の処理を行っているか否かを判別する。第2の制御モードが実行中の場合は、ステップ202に戻るが、第2の制御モードが実行していない場合は、第1の制御モードで稼働しているか否かを判定する(ステップ215)。第1の制御モードが実行中の場合は、要求状態判定処理部113は、ステップ416に対して中断指令を出力する(ステップ216)。一方、第1の制御モードも稼働していない場合は、要求状態判定処理部113は、第2の制御モード実行のため、ステップ601の実行処理(ステップ217)を行った後、ステップ202に移行する。
ステップ213で、要求状態判定処理部113は、要求状態判定処理が継続でない場合は、処理を終了する。(ステップ218)
以上の第1の制御モードへの移行は、所定の時間(第1の時間)以上の間に動作状態が一定範囲内である場合に、第1の制御モードを実行することと表現可能である。また、第2の制御モードへの移行は、エネルギ供給装置102の稼働状態(例えば、出力である電力)が所定の第2の時間以上の間に一定範囲内である場合に移行可能と表現できる。また、エネルギ供給装置102の稼働状態には、予め設定された目標出力(例えば、目標電力)やセンサデータとして検知された実際の出力のいずれでもよい。 図4には、第1の制御モードの実行処理フローチャート事例を示す。
まず、ステップ401にて第1の制御モードが開始されると、要求状態判定処理部113は、探索目的の読込処理を行う(ステップ402)。探索目的は予め設定しておくパラメータである。例えば、エネルギ供給装置102をエンジン発電機とした場合、エンジン発電機の発電効率の最大化、などが設定できるが、この限りではなく、センサデータとの整合がとれるならば二酸化炭素排出量の最小化や、燃料料金の最小化などを設定してもよい。
次に、要求状態判定処理部113は探索領域の更新有無を判定する(ステップ403)。例えば、探索が中断した場合、前回の探索領域がメモリ等の記憶領域に保持されている。このため、この有無を確認し、中断時の稼働状態および燃料の状態と、現在の稼働状態および燃料の状態を比較して同程度の場合に前回探索領域を用いる判定が下されるなど条件が設定できる。探索領域の更新が必要ない場合は、ステップ408に進む。
一方探索領域の更新が必要の場合、要求状態判定処理部113ハ、入力部111を介して現在の運転状態に関するセンサデータを取得する(ステップ404)。また、要求状態判定処理部113は、燃料の状態に関するセンサデータを取得する(ステップ405)。そして、要求状態判定処理部113はセンサデータに基づいて学習モデルを選択(ステップ406)、その後、学習モデルによる制御量の算出結果に基づいて、探索領域を設定する(ステップ407)。
探索領域は、例えば制御量の可変領域の設定と同義であり、例えば点火時期を可変する場合、現在の点火時期に対して±1degや、±2degを設定するものである。この後、ステップ408に進む。
ステップ408では、要求状態判定処理部113は、入力部111を介して、その時点の運転状態に関するセンサデータを取得する。その後、要求状態判定処理部113は、燃料の状態に関するセンサデータを取得する(ステップ409)。そして、要求状態判定処理部113はセンサデータに基づいて探索目的を達成して更新すべき学習モデルを選択し(ステップ410)、探索領域に基づいて制御量を可変しセンサデータを取得する(ステップ411)。
ステップ412では、要求状態判定処理部113が制御量可変により探索目的の達成可否を判定する。例えば、エンジン発電機の発電効率の最大化が探索目的である場合、設定した探索領域の中で発電効率が最大となる制御量を探索するため、探索目的が未達成である限りステップ403及びステップ408~416を繰り返す。 なお、ステップ416は中断指令が届いた場合は、直ちにステップ417に移行する判定項目である。
ステップ412において探索目的が達成された場合、要求状態判定処理部113は、探索目的の達成した制御量において新たにモデル作成するためにセンサデータを収集し、学習データとする(ステップ413)。
その後、要求状態判定処理部113は、学習データに基づいて新たに学習モデルを作成し(ステップ414)、ステップ410で選択した学習モデルを更新する処理が行う(ステップ415)。このようにして学習モデルが更新され、適宜探索目的に応じて最新の学習モデルが得られる。
ステップ415処理後、制御量出力部114からの制御量を用いて、出力部112の指令値に従ってステップ417にて第2の制御モードが実行され、第1の制御モード実行処理を終える(ステップ418)。
ここで、学習モデルの作成(ステップ414)および学習モデル更新(ステップ415)について詳述するため、センサデータから、新規に学習モデルを作成する学習方法について記述する。学習モデル作成および学習モデル更新は学習部118が担い、学習部118には、回帰を行うためのニューラルネットワークが構成されているものとする。
ここで、ニューラルネットワークに対し、当該ニューラルネットワークのモデル(以下、学習モデル)を求める。ここでは、エネルギ供給装置102の稼働状態およびエネルギ供給装置102に供給される燃料の状態データであるセンサデータ、例えば図5に示される水素流量501、電力502、筒内圧503~筒内圧505(筒内圧1~N)を入力とする。そして、この入力によってニューラルネットワークより得られる出力値と、入力したセンサデータに対応する制御量(空気量、燃料量、点火時期)との差を用い、この差が小さくなるようにニューラルネットワークを更新する。いわゆる学習の処理を行い、制御量として、ここでは、空気量、燃料量、点火時期を算出する。なお、学習手法として、ここではDNNの利用を想定しているが、同様の効果が得られるならば他の手法を用いてもよい。
図6は、第2の制御モードの制御モードの実行処理フローチャート事例を示す。まず、要求状態判定処理部113において、ステップ601にて第2の制御モードが実行されると、外部通信の有無を確認する(ステップ602)。要求状態判定処理部113では、外部通信がない場合はステップ605に移行するが、外部通信がある場合は要求電力の指定の有無を確認する(ステップ603)。ここでは要求電力を図示したが、実行モードが指定される場合もあってよい。ステップ603にて、要求状態判定処理部113は、特に指定がない場合はステップ605に移行するが、要求電力の指定がある場合、エネルギ供給装置102のセンサデータに含まれる電力502の電力値を要求電力に書き換える処理を行う(ステップ604)。この処理によって後述の学習モデル選択時に要求電力に見合うモデル選定が実現できる。
ステップ605では、要求状態判定処理部113から 選択部116に対してセンサデータを送信し、後述する学習モデル選択を実施する。選択部116は受信したセンサデータを基に学習モデルの情報を送信する(ステップ605)。その後、センサデータおよび選択された学習モデルを基に制御量演算部115において制御量が演算される(ステップ606)。
次に、制御量演算部115は要求電力の有無判定を処理する(ステップ607)。制御量演算部115は、要求電力がある場合には、演算された制御量のうち必要なデータ、例えば燃料量の熱量情報と、発電効率の情報から要求電力に見合う燃料量に補正する演算処理を、制御量出力部114にて実施し制御量を補正する(ステップ608)。一方、ステップ607にて要求電力がない場合は、制御量演算部115は演算された制御量を制御量出力部114に送信し、制御量出力部114から出力部112に制御量を出力する(ステップ609)。なお、制御量の補正は、制御信号を補正することで実行可能である。
ステップ610において、制御量演算部115は処理終了の判定が行い、終了の場合には、ステップ611にて第2の制御モード実行処理を終える。一方、ステップ610にて終了しない場合はステップ602に戻り、ステップ602~610を繰り返すことで第2の制御モードを、実行を継続する。
ここで、ステップ605の学習モデル選択について詳述する。図3は、学習モデル選択の処理手順を示すフローチャートの事例を示したものである。図6のステップ605において選択モデル選択処理が実行されると、図3のステップ301の選択処理が実行される。
次に、ステップ302においては、選択部116が、センサデータに含まれる特徴量を抽出してその値が0か否かを判別する。例えば特徴量を水素流量501とする場合、選択部116は、センサデータから水素流量値を抽出し、水素流量が0である場合は、学習モデル0を選択する(ステップ303)処理を実行する。一方で、水素流量が0より大きい数値を示し、ステップ302が該当しない場合は、選択部116は、次に特徴量が事前に設定したしきい値1以下か否かを判別する処理を実行する(ステップ304)。例えば特徴量が水素流量501で、しきい値1が50L/minと設定した場合、水素流量が20L/minであればステップ305に移行するが、水素流量が60L/minの場合はステップ307に移行する。
次に、ステップ305に移行した場合、選択部116は、特徴量をしきい値1で除算して、0。5未満か否かを判別する処理(ステップ305)が実行される。例えば、しきい値1が50L/minで、水素流量が20L/minである場合は、20÷50=0。4となり、0。5より小さい数値となるため、ステップ303に移行し、学習モデル0を選択する。
以上のように特徴量と、事前に設定したしきい値に応じて学習モデルの選択判別処理が実行され最適な学習モデルを選択された後、選択部116はモデル選択処理を終了する(ステップ317)。ここで、ステップ313まで該当がない場合には、選択部116は、ステップ317処理実行後に、前述の実行条件1または実行条件2において最適な学習モデルが無いと判断する。そして、一定時間経過後にステップ209にて探索処理、学習処理が実行され、新たな学習モデルが作成される。
また、図3に示した実施例において特徴量およびしきい値は、水素流量を例に挙げたが、一つの種類には限らなくてもよい。エネルギ供給装置の安定稼働を担う学習モデルが選択できることが条件として、例えば、特徴量としては水素流量と電力の2種類を選択し、それぞれのしきい値を設定しても良い。また、図5のセンサデータには図示していないがエンジンの制御量である空気量、燃料量、点火時期や、回転角信号、カム信号、ラムダ信号等の稼働状態および燃料の状態として入手した信号を、特徴量として適用しても良い。
また、図3に示した実施例においては、学習モデルの選択を1つとするために、ステップ305、ステップ308、ステップ311、ステップ314等の判別項目を設定したが、この限りではない。ステップ302とステップ304の間に特徴量が存在する場合、学習モデル0と学習モデル1の2つのモデルを選択することもできる。この場合、例えばセンサデータを基にして、学習モデル0にて算出された制御量0と、同一のセンサデータを基にして学習モデル1にて算出された制御量1と、を用いて制御量を算出する手法も選択できる。
以上の実施例で、制御装置101の各部における一連の処理を含めて記述した。本手法で、エネルギ供給装置102の稼働状態及び供給される燃料の状態に応じて、多種燃料対応のエネルギ供給装置を自律的に制御する運転制御装置および制御方法を提供できる。但し、各処理のうち、その一部を制御対象などに応じて取捨選択を行っても良い。
また図8には、複数のエネルギ供給装置102を構成するエネルギ供給装置102-1と、エネルギ供給装置102-2の2台を各制御モードで制御した事例を示す。横軸は時間、縦軸は電力値であり、30分おきに各エネルギ供給装置が出力した電力データを示している。これは、前述の複数のエネルギ供給装置102の能動的な制御の内容を示すものである。
0時から10時の時間帯においては、エネルギ供給装置102-1と、エネルギ供給装置102-2と、共に第2の制御モードで制御しているため、それぞれ需要負荷に合わせて同時同量の発電によって電力変動がみられる。
10時30分には、エネルギ供給装置102-1が第1の制御モードに移行して探索および学習が開始した。これによりエネルギ供給装置102-1の電力は一定電力を出力することとなり、需要変動には対応ができないが、その分、エネルギ供給装置102-2が第2の制御モードにて変動電力の対応がされている。エネルギ供給装置102-1は、約1時間かけて第1の制御モードにて探索および学習モデルの更新が完了しており、その後、第2の制御モードに移行した。
次に図8における12時には、エネルギ供給装置102-1の第1の制御モードの結果で得られた学習モデルを、エネルギ供給装置102-2の第2の制御モードで選択し制御を開始した。この際、エネルギ供給装置102-1の第1の制御モードで実行した電力値に合わせてエネルギ供給装置102-2の電力を一定制御する必要があり、これによってエネルギ供給装置102-2が第1の制御モードに移行する。このためエネルギ供給装置102-1が第2の制御モードで需要負荷変動に対応し、エネルギ供給装置102-2はエネルギ供給装置102-1で得られた学習モデルを基に探索および学習モデル更新を実行した。この結果、エネルギ供給装置102-2は、約30分で探索、学習モデル更新を完了しており、その後、第2の制御モードに移行した。
13時30分には、エネルギ供給装置102-2が第1の制御モードに移行して探索および学習が開始した。これによりエネルギ供給装置102-2の電力は一定電力を出力することとなり、需要変動には対応ができないが、その分、エネルギ供給装置102-1が第2の制御モードにて変動電力の対応がされている。エネルギ供給装置102-2は、約1時間かけて第1の制御モードにて探索および学習モデルの更新が完了しており、その後、第2の制御モードに移行した。
次に、15時30分には、エネルギ供給装置102-2の第1の制御モードの結果で得られた学習モデルを、エネルギ供給装置102-1の第2の制御モードで選択し制御を開始した。この際、エネルギ供給装置102-2の第1の制御モードで実行した電力値に合わせてエネルギ供給装置102-1の電力を一定制御する必要があり、これによってエネルギ供給装置102-1が第1の制御モードに移行する。このためエネルギ供給装置102-2が第2の制御モードで需要負荷変動に対応し、エネルギ供給装置102-1はエネルギ供給装置102-1で得られた学習モデルを基に探索および学習モデル更新を実行した。この結果、エネルギ供給装置102-1は、約30分で探索、学習モデル更新を完了しており、その後、第2の制御モードに移行した。
以上までの実施例によれば、少なくとも2台のエネルギ供給装置が稼働する場合、以下の制御が可能である。エネルギ供給装置102-1が第1の制御モードで制御する場合、残りのエネルギ供給装置102-2は第2の制御モードで制御することで需要負荷の変動に対応し電力需給調整が可能である。
また、少なくとも2台のエネルギ供給装置が稼働する場合において、エネルギ供給装置102-1が第1の制御モードを実行完了し作成した学習モデルは、エネルギ供給装置102-2にて第2の制御モードで利用することができる。
さらに、エネルギ供給装置102-2はエネルギ供給装置102-1で作成した学習モデルを基にして、エネルギ供給装置102-2は第1の制御モードで制御することができる。この際、エネルギ供給装置102-2の稼働条件が、エネルギ供給装置102-1が学習モデルを作成した稼働状態および燃料の状態と同様の条件の場合には、エネルギ供給装置102-2の第1の制御モードの実行時間が短縮される効果がある。ただし、稼働状態や燃料の状態、設定条件によっては、短縮時間の定量値は異なる。
また、エネルギ供給装置102-2の稼働条件が、エネルギ供給装置102-1が学習モデルを作成した稼働状態および燃料の状態と異なる稼働条件の場合には、以下の制御を行ってもよい。エネルギ供給装置102-1が作成した学習モデルをもとにした制御を抑止し、エネルギ供給装置102-2の学習モデルをもとに第1の制御モードに移行することもできる。このように、稼働状態および燃料の状態が同様(同一ないし同等)の条件の場合、第1の制御モードで作成した学習モデルを、第2の制御モードで利用する。また、条件が同様でない場合、学習モデルの利用を抑止する。また、このように学習モデルを利用するかの判断は、稼働状態および燃料の状態の少なくとも一方が同様の条件であるかで判断してもよい。
なお、複数のエネルギ供給装置102を制御する場合、第1の制御モードと第2の制御モードを以下のとおり行ってもよい。
(1)受動的な制御
複数のエネルギ供給装置102の一部が第1の制御モードへの移行条件を満たしている場合、他のエネルギ供給装置102を第2の制御モードに移行させる。
(2)能動的な制御
複数のエネルギ供給装置102の一部を、第1の制御モードへ移行させる。一部のエネルギ供給装置に対して、動作状態(燃料の状態、運転状態、出力)を一定はン位となるように、能動的に制御する。その上で、他のエネルギ供給装置102を第2の制御モードに移行させる。
以上の実施例では、少なくとも2台のエネルギ供給装置を例に挙げて記述したが、3台以上の複数台のエネルギ供給装置においても同様に制御方法を適用することができる。
また、図9には、システム全体の構成図(図1)の別構成を示す。図9において、電源回路106と、蓄電装置105を備え、電源回路106には、電力変換回路161と、切替装置162と、を少なくとも備える構成である。
ここで、蓄電装置105は、エネルギ供給装置の発電電力を蓄電するものである。蓄電装置105と制御装置101は電源回路106を介して電気的に接続され、制御装置101は必要に応じてエネルギ供給装置102または蓄電装置105の電力を供給されて稼働することができるようになっている。また図9では、制御装置101内部の制御部11と通信処理部12を、それぞれ電気的に電力変換回路161を介して蓄電装置105と接続することを想定している。すなわち、蓄電装置105は、制御部11の電源入力部120と電力変換回路161と切替装置162を介して、通信処理部12の電源入力部124は電力変換回路を介して、それぞれ電気的に接続し電力の給電を受ける構成とする。なお、蓄電装置105は電源回路106を介して系統連系し、電力授受を行う構成にしてもよい。
蓄電装置105の具体的な構成は特に制限されなお。例えば、鉛蓄電池、リチウムイオン蓄電池、NAS電池、コンデンサ、電気二重層キャパシタ等の公知の任意の蓄電池(二次電池)や、レッドクスフロー蓄電池システムや、水素貯蔵システム等の充放電制御システム、などを用いることができる。また必要な際に、必要な電力が確保できるならば燃料電池や太陽電池および一次電池でもよい。ただし、二次電池としては、満充電状態から放電し、一定放電後に再度充電を実施する繰り返し用途専用に製造されるサイクル用蓄電池が望ましい。具体的には、例えばナトリウム硫黄電池、鉛蓄電、リチウムイオン蓄電池池等が挙げられ、中でも電気的性能に優れ、コンパクトで安価な鉛蓄電池が好ましい。なお、蓄電池は1個の蓄電池により構成されてもよく、2個以上の蓄電池を任意に接続して蓄電池群として構成してもよい。充放電制御システムはバッテリチャージャーなどの慣習的な充放電制御システムが適用でき、特に制限はない。
電力変換回路161は交流(Alternating Current、以下AC)の電力から直流(Direct Current、以下DC)電力の変換、DC電力からAC電力の変換、電圧値の変換、電流値の変換など電力変換機能を備える。また、交流とは三相交流、単相交流いずれも含み、三相交流と単相交流の相互変換の機能も備える。電力変換回路161は、公知のインバータやコンバータ等が主に該当するが、前記機能を備える構成であればこの限りではない。
切替装置162は、信号入出力部123の指令を受けて、制御部の給電を電気的に遮断、導通できる機能を有していればよく、部品材料、構成は特に限定されない。例えば機械的接点スイッチや、リレー、半導体スイッチ素子等を自由に選択できる。ただし、電気的な仕様は、設計段階で整合をとる必要があり、システム規模に応じて適合する切替手段を選択できる。
以上の構成において、外部ネットワーク104を介した起動指令が届くことによって、通信処理部12内の内部処理部122は、外部ネットワーク104から通信処理部12内にある信号入出力部123に対して、信号出力または信号入力に関する指令を出す。その後、信号入出力部123は切替装置162に対して導通信号を出し、この導通信号によって切替装置162が導通状態となり電源入力部120に給電が開始され、制御部11が起動する。
ここで実施例として、図9において、エネルギ供給装置102が停止状態であり、起動指示を受けてエネルギ供給装置102を起動することを想定する。また、商用電力とは非接続でエネルギ供給装置102が独立状態で起動することを想定する。ここでは、実施例として、蓄電装置105は鉛蓄電池で電圧は直流12V、電池容量30Ahを選定した。蓄電装置105は、予めエネルギ供給装置102の発電電力により電力変換回路161のAC/DC変換を介して満充電している。なお、蓄電装置105の充電率SoC(State Of Charge)は、80%とする。また制御装置101の待機電力は20Wであり、このうち制御部11は19W、通信処理部は1Wである。
比較のため、切替装置162は常時通電状態であり、すなわち制御装置101の全てが蓄電装置105からの受電を受けて待機していることを想定する。エネルギ供給装置102は停止状態のため、蓄電装置105の給電先は制御部11と通信処理部12の両方であり、待機電力20Wの電力を供給する必要がある。この場合、蓄電装置105は(12V×30Ah×80%)÷20W=14。4hの給電が可能である。ただし、エネルギ供給装置102の停止時間は14。4h未満にしない限り、再起動ができないことを意味する。
一方、切替装置162を外部ネットワーク104による導通指令がない限り、遮断した構成を想定する。この場合、蓄電装置105の給電は、通信処理部12に限定され、待機電力は1Wである。ただし、エネルギ供給装置102の起動時には制御部11の電力20Wが必要となるため、仮に20Whの電力量を確保すると仮定しても、蓄電装置105は(12V×30Ah×80%―20Wh)÷1W=268hは給電が可能となる。すなわちエネルギ供給装置102は、約11日間は停止しても再起動ができることを意味する。
以上の構成をとれば、蓄電装置105の消費電力を抑えることができ、エネルギ供給装置102の保守・メンテナンスまたは運転計画等による装置の停止時間の制約を低減できるメリットがある。また、以上の実施例では、商用電力を非接続ではあるが、系統連系により商用電力を使用できる状況下においても、エネルギ供給装置102の待機電力を低減することができ省エネルギのエネルギ供給装置および制御装置を提供できる。
また、本実施例の制御装置101は、物理的に分けることが可能である。基本的には、図1、9の入力部111、出力部112と、制御部11と、通信処理部12をそれぞれ個別尾筐体とすることになる。また、この変形例およびこれを用いたシステムの別例を、図10に示す。図1では、制御装置101が、コントローラ(1)1011、コントローラ(2)1012および通信処理部12に分けられている。コントローラ(1)1011が入力部111、出力部112を有する。また、これに九会和え、制御量演算処理部1100を有する。制御量演算処理部1100は、センサ部103、エネルギ供給装置102と、コントローラ(2)1012の橋渡し機能を有するものである。つまり、入力部111で受け付けたデータを、コントローラ(2)1012で演算できるように形式の変換等を行う。また、制御量演算処理部1100は、逆にコントローラ(2)1012の演算結果を、制御信号に変換する。
また、本例では、電源回路106やそれに接続する蓄電装置105を有する。これは、コントローラ(1)1011、コントローラ(2)1012および通信処理部12に対して動作のための電源を供給するもので、電源入力部や切替装置を設け、電源供給を制御可能である。
また、図1、9および10のいずれの例においても、以下の構成が可能である。制御装置101やコントローラ(1)1011、コントローラ(2)1012、通信処理装置はエネルギ供給装置102に近傍ないし直接設置してもよいし外部ネットワーク104を介して遠隔地に設置してもよい。また、外部ネットワーク104を、複数のエネルギ供給装置102の運転状態を監視する監視装置と接続してもよい。この場合、監視装置から制御装置101やコントローラ(1)1011、コントローラ(2)1012への指示により、前述の能動的な制御を行ってもよい。なお、本実施例では、エネルギ供給装置102が複数ある場合に能動的な制御を行うことを説明した。但し、エネルギ供給装置102が単数である場合に、入力部111が受け付けるエネルギ発電機の出力(例えば電力)の監視を行い能動的な制御を実行してもよい。