(57)【要約】【課題】状態に応じて制御則を切り替えて操作量を演算する制御装置及び制御方法のために演算負荷を低減する手法を提供する。【解決手段】制御装置１００は、状態空間を分割する複数の凸多面体の各々に制御則が対応付けられており、状態ベクトルの属する凸多面体に対応する制御則を使用して操作量を演算する速度制御器１１０と、状態空間を規則的に区切る複数のメッシュのうち状態ベクトルの属するメッシュに関連する制御則を候補として、状態ベクトルの属する凸多面体に対応する制御則を該候補から決定する検索器１１２と、を備える。【選択図】図１
2013101472.tif 000002
【特許請求の範囲】
【請求項１】
状態空間を分割する複数の凸多面体の各々に制御則が対応付けられており、状態ベクトルの属する凸多面体に対応する制御則を使用して操作量を演算する制御器と、
前記状態空間を規則的に区切る複数のメッシュのうち前記状態ベクトルの属するメッシュに関連する制御則を候補として、前記状態ベクトルの属する凸多面体に対応する制御則を該候補から決定する制御則検索器と、を備えることを特徴とする制御装置。
【請求項２】
前記複数のメッシュの各々と、各メッシュに重なりをもつ凸多面体に対応する制御則とが予め関連付けられていることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記状態空間は、Ｍ個（Ｍは２以上の整数）の凸多面体に分割され、Ｎ個（Ｎは２以上の整数）のメッシュに区切られており、
ｉ番目（ｉは１以上Ｍ以下の整数）の凸多面体のいずれかの頂点がｊ番目（ｊは１以上Ｎ以下の整数）のメッシュに含まれる場合に、当該ｉ番目の凸多面体が当該ｊ番目のメッシュに関連付けられることを特徴とする請求項１または２に記載の制御装置。
【請求項４】
凸多面体を定義するための連立不等式から複数の不等式を選択し不等号を等号に置き換えて得られる連立方程式の解が、当該連立方程式に組み入れられなかった不等式を満たすことを条件として、当該凸多面体の頂点とみなされることを特徴とする請求項３に記載の制御装置。
【請求項５】
各々に制御則が対応付けられており状態空間を分割する複数の凸多面体のうち状態ベクトルの属する凸多面体に対応する制御則を決定することと、
前記状態ベクトルの属する凸多面体に対応する制御則を使用して操作量を演算することと、を含み、
前記決定することは、前記状態空間を規則的に区切る複数のメッシュのうち前記状態ベクトルの属するメッシュに関連する制御則を候補とすることを含むことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、状態に応じて制御則を切り替えて操作量を演算する制御装置及び制御方法に関する。
【背景技術】
【０００２】
ハイブリッドシステムを対象とするモデル予測制御のためのコントローラを、マルチパラメトリック計画法（以下では「ｍｐ計画法」ともいう）を用いて設計することが近年試みられている（例えば、特許文献１、非特許文献１を参照）。こうした試みによれば、状態空間の領域ごとに異なる制御則が予め定められる。実際の制御においては、制御周期ごとに状態ｘに応じて制御則が選択され、その制御則を使用して状態ｘから操作量が演算される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１３９９０号公報
【非特許文献】
【０００４】
【非特許文献１】藤田政之、外１名、「モデル予測制御−ＶＩ−ハイブリッドモデル予測制御」、システム／制御／情報、２００３年、第４７巻、第３号、ｐ．１４６−１５２
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の方式においては状態空間がしばしば多数の領域で区分され、制御周期はごく短い時間に設定される。状態空間の区分数は多くの場合例えば容易に１００を超え、制御周期は用途によるが例えばサブミリ秒程度である。状態に応じて制御則を決定する処理は一般に相応の演算を要する。そのため、こうしたコントローラに典型的に用いられる演算処理装置にはとりわけ、演算負荷が過大になりがちである。よって、演算負荷の低減は、実装に向けての１つの課題となり得る。
【０００６】
特許文献１に提案されるように、演算負荷の低減のために状態空間の区分数を減らすことが考えられる。例えば、物理的に生じ得ない区分を削除する、あるいは、制御ゲインの近い２つの隣接区分を１つに結合する、といった提案がされている。しかし、一般にはｍｐ計画法を適用する段階で物理的に生じ得ない状態は予め排除されており、コントローラが設計された段階で削除できる区分は少ない。また、ｍｐ計画法で設計したコントローラを隣接区分の結合により恣意的に変えることで、コントローラの最適性が失われる可能性がある。よって、コントローラが設計された段階で状態空間の区分数を減らすことは必ずしも効果的であるとは言えない。
【０００７】
本発明はこうした状況に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、状態に応じて制御則を切り替えて操作量を演算する制御装置及び制御方法のために演算負荷を低減する手法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明のある態様は、制御装置に関する。この装置は、状態空間を分割する複数の凸多面体の各々に制御則が対応付けられており、状態ベクトルの属する凸多面体に対応する制御則を使用して操作量を演算する制御器と、前記状態空間を規則的に区切る複数のメッシュのうち前記状態ベクトルの属するメッシュに関連する制御則を候補として、前記状態ベクトルの属する凸多面体に対応する制御則を該候補から決定する制御則検索器と、を備える。
【０００９】
本発明の別の態様は、制御方法に関する。この方法は、各々に制御則が対応付けられており状態空間を分割する複数の凸多面体のうち状態ベクトルの属する凸多面体に対応する制御則を決定することと、前記状態ベクトルの属する凸多面体に対応する制御則を使用して操作量を演算することと、を含む。前記決定することは、前記状態空間を規則的に区切る複数のメッシュのうち前記状態ベクトルの属するメッシュに関連する制御則を候補とすることを含む。
【００１０】
なお、本発明の構成要素や表現を、方法、装置、システム、コンピュータプログラムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、演算負荷を低減することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係る制御装置を含むシステム構成の例を示すブロック図である。
【図２】本発明の一実施形態に係る切替コントローラにおける演算処理を説明するためのフローチャートである。
【図３】本発明の一実施形態に係る制御装置の適用例である射出成形機の一部を示す。
【図４】本発明の一実施形態に係る制御装置の適用例である射出成形機の一部を示す。
【図５】本発明の一実施形態に係る制御装置が適用される制御モデルの動特性変化の例を示す。
【図６】本発明の一実施形態に係る切替コントローラの一例を示す。
【図７】本発明の一実施形態に係るメッシュの例を示す。
【図８】本発明の一実施形態に係る凸多面体及びメッシュの例を示す。
【図９】本発明の一実施形態に係る凸多面体及びメッシュの例を示す。
【発明を実施するための形態】
【００１３】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。
【００１４】
ある実施の形態においては、状態空間を規則的に区切るメッシュが導入される。メッシュの規則性によって、状態ベクトルの属するメッシュを特定することが容易である。そのメッシュに重なりをもつ凸多面体を、状態ベクトルの属する凸多面体の候補とすることができる。それら候補について状態ベクトルの凸多面体への属否を判定することで、状態ベクトルの属する凸多面体を特定することができる。多数の凸多面体に闇雲に当たるのに比べて少ない判定回数で、状態ベクトルの属する凸多面体を発見できると期待される。凸多面体ごとに対応する制御則は予め定められている。こうして、状態ベクトルから制御則を決定する処理の演算量を低減することができる。
【００１５】
図１は、本発明の一実施形態に係る制御装置１００を含むシステム構成の例を示すブロック図である。制御装置１００は、負荷（図示せず）を駆動するための電動機１０２、または電動機１０２を搭載した機器を制御するために設けられている。制御装置１００は、例えば電動機１０２の速度制御のために設けられている。
【００１６】
制御装置１００は、状態量指令値演算部１０４と減算器１０６とを備える。状態量指令値演算部１０４は、所定の入力指令値（例えば速度指令値）から状態量指令値ｘｒを演算する。入力指令値は例えば、上位の制御装置により制御装置１００に与えられる。入力指令値に代えて状態量指令値ｘｒが制御装置１００に直接与えられてもよい。減算器１０６は、状態量指令値ｘｒ及び状態量推定値ｘｈａｔを入力として、それらの差である偏差ｘｅ（＝状態量指令値ｘｒ−状態量推定値ｘｈａｔ）を出力する。
【００１７】
ここで、本システムの状態変数がｎ個（即ち、状態空間がｎ次元、ｎは１以上の整数）であるとき、状態量指令値ｘｒ及び状態量推定値ｘｈａｔはそれぞれ、状態変数ｘ１ないしｘｎの指令値及び推定値を成分にもつｎ×１の列ベクトルである。状態量推定値ｘｈａｔを、以下では状態ベクトルと呼ぶことがある。状態量推定値ｘｈａｔ（つまり状態ベクトル）は、状態空間における位置ベクトルと見ることができる。状態変数ｘ１ないしｘｎのうち一部の（または全部の）検出可能である状態変数については検出値が用いられ、検出不能である状態変数については推定値が用いられてもよい。
【００１８】
制御装置１００は、切替コントローラ１０８を備える。切替コントローラ１０８は、状態ベクトルｘｈａｔに応じて制御則を選択し、その制御則に従って状態ベクトルｘｈａｔから操作量ｕを演算する。そのために、切替コントローラ１０８は、速度制御器１１０と検索器１１２とを備える。速度制御器１１０及び検索器１１２の詳細については後述する。
【００１９】
制御装置１００は、電流制御器１１４を備える。電流制御器１１４は、切替コントローラ１０８から出力された操作量ｕに基づき電動機１０２に供給する制御電流を決定する。電動機１０２は電流制御器１１４から供給される制御電流によって駆動される。
【００２０】
制御装置１００は、状態演算部１１６と状態推定器１１８とを備える。状態演算部１１６は、電動機１０２の出力から少なくとも１つの状態変数の検出値を演算する。電動機１０２の出力は電動機１０２に付随する検出器（図示せず）により検出され、検出信号が状態演算部１１６に入力される。状態演算部１１６は演算結果（例えば検出速度）を状態推定器１１８に出力する。状態推定器１１８は、検出されない状態変数を、状態演算部１１６の出力と切替コントローラ１０８の出力する操作量ｕとから推定する。状態推定器１１８は、状態量推定値ｘｈａｔを検索器１１２及び減算器１０６に出力する。こうした状態量推定それ自体は公知の方法を適宜採用することができる。このようにして、状態演算部１１６と状態推定器１１８とにより状態量がフィードバックされる。
【００２１】
ところで、切替コントローラ１０８は、ハイブリッドシステムを対象とするモデル予測制御のためにｍｐ計画法を用いて設計されている。この設計手法の結果として、状態空間がＭ個（Ｍは２以上の整数）の凸多面体の領域に分割され、凸多面体の各々に異なる制御則が対応付けられている。多くの場合、少なくとも１００を超える凸多面体で状態空間は分割される。
【００２２】
切替コントローラ１０８は、状態変数ｘ（または状態量推定値ｘｈａｔ）から操作量ｕを、ｕ＝Ｆｉ・ｘ＋Ｇｉ（またはｕ＝Ｆｉ・ｘｈａｔ＋Ｇｉ）で演算する形式で設計される。ここで、操作量ｕがｍ次元のとき、Ｆｉはｍ×ｎの行列であり、Ｇｉはｍ×１の列ベクトルである。Ｆｉ及びＧｉが、ｉ番目（ｉは１以上Ｍ以下の整数）の凸多面体に対応付けられた制御則を表す。以下では、ｉ番目の凸多面体を凸多面体ｉと表記することがある。
【００２３】
速度制御器１１０は、操作量ｕをｕ＝Ｆｉ・ｘｅ＋Ｇｉにより演算する。偏差ｘｅを用いるのは状態変数を指令値ｘｒに追従させるためである。速度制御器１１０は、求めた操作量ｕを電流制御器１１４に出力する。また、速度制御器１１０は、操作量ｕを状態推定器１１８に出力する。
【００２４】
検索器１１２は、速度制御器１１０にて使用する制御則Ｆｉ及びＧｉを、制御周期ごとに状態ベクトルｘｈａｔに応じて切り替える。検索器１１２は、制御則Ｆｉ及びＧｉの切替のために、速度制御器１１０にて使用する制御則の検索処理を実行する。制御則の検索処理は、状態ベクトルｘｈａｔが属する凸多面体を総数Ｍ個の凸多面体から検索し、その凸多面体に対応する制御則Ｆｉ及びＧｉを決定する処理である。この処理は言い換えれば、状態空間において状態ベクトルｘｈａｔが表す位置座標を幾何学的に包含する凸多面体ｉ（及び対応する制御則Ｆｉ及びＧｉ）を特定する処理である。
【００２５】
ｎ次元の状態空間における任意の点を表す列ベクトルｘがｉ番目の凸多面体の内部にあるとき、列ベクトルｘは、Ｈｉ・ｘ≦Ｋｉなる不等式を満たす。ここで、ｉ番目の凸多面体の面の数がｍｉのとき、Ｈｉはｍｉ×ｎの行列であり、Ｋｉはｍｉ×１の列ベクトルである。列ベクトルｘは成分ｘ１ないしｘｎからなる。不等式Ｈｉ・ｘ≦Ｋｉは変数ｘ１ないしｘｎについての連立不等式である。連立不等式Ｈｉ・ｘ≦Ｋｉがｎ次元の状態空間におけるｉ番目の凸多面体を定義する。
【００２６】
制御則の検索処理は、Ｍ個の凸多面体のうちどの凸多面体に状態ベクトルｘｈａｔが属するかを判定するために、不等式Ｈｉ・ｘｈａｔ≦Ｋｉが成立する凸多面体ｉを決定する処理を含む。検索器１１２は例えば、不等式Ｈｉ・ｘｈａｔ≦Ｋｉが成立するＨｉ、Ｋｉを発見するまでｉ＝１、２、．．．、Ｍと順次、当該不等式が成立するか否かを判定してもよい。不等式を成立させる正解の凸多面体は１つのみである。仮に正解がＭ番目の凸多面体であった場合には、検索器１１２は不等式の成立判定をＭ回繰り返すことになる。
【００２７】
凸多面体の総数は上述のように最小でも１００を超えるから、不等式の判定回数も１００回を超えうる。電動機１０２の制御周期は一般に例えば０．１ｍｓ程度である。こうした短時間で多数回の判定を行うことは、制御装置１００に通例用いられるプロセッサにとって過大な演算負荷となり得る。
【００２８】
そこで、本実施形態においては、検索器１１２は、不等式の成立判定処理に先立って、正解を含むよう適切に候補を抽出し、不等式の成立判定処理の実行をそれら候補に限定する。こうして不等式の判定回数を少なくすることにより、制御則の検索処理の演算負荷が軽減される。
【００２９】
図２は、切替コントローラ１０８における演算処理を説明するためのフローチャートである。この演算処理は制御装置１００による制御処理の一部を構成し、制御装置１００の制御周期ごとに実行される。この演算処理は、偏差ｘｅ及び状態量推定値ｘｈａｔを含む切替コントローラ１０８への入力から操作量ｕを含む出力を演算する処理である。
【００３０】
処理が開始されると、切替コントローラ１０８は、偏差ｘｅ及び状態量推定値ｘｈａｔの入力を受ける（Ｓ１０）。上述のように、偏差ｘｅは減算器１０６から速度制御器１１０に入力され、状態量推定値ｘｈａｔは状態推定器１１８から検索器１１２に入力される。
【００３１】
切替コントローラ１０８は、入力に基づき制御則の検索処理を実行する（Ｓ１２）。検索器１１２は、状態空間に導入されたメッシュに基づいて制御則の候補を抽出し、候補から状態量推定値ｘｈａｔに応じた制御則を選択するという２段階の処理で、速度制御器１１０にて使用する制御則を決定する。次に述べるように検索処理は、メッシュ特定処理（Ｓ１４）と、候補凸多面体特定処理（Ｓ１６）と、制御則決定処理（Ｓ１８）と、を含む。
【００３２】
検索器１１２は、入力された状態量推定値ｘｈａｔが属するメッシュを特定する（Ｓ１４）。後述するように、事前の準備作業によって状態空間は幾何学的に規則的なメッシュで区切られている。検索器１１２は、メッシュの規則性に基づいて、状態量推定値ｘｈａｔが属するメッシュを特定する。
【００３３】
検索器１１２は、Ｍ個の凸多面体から、状態量推定値ｘｈａｔが属するメッシュに関連する凸多面体を、状態量推定値ｘｈａｔが属する凸多面体の候補として抽出する（Ｓ１６）。そのために、検索器１１２は、メッシュ特定処理（Ｓ１４）にて特定されたメッシュに関連する凸多面体を、インデックスを参照して特定する。後述するように、事前の準備作業によって、個々のメッシュに幾何学的に重なりをもつ凸多面体の一覧がインデックスとして作成されている。凸多面体の総数Ｍ個に比べて少数のＰ個の凸多面体が、状態量推定値ｘｈａｔの属する凸多面体の候補となる。
【００３４】
検索器１１２は、状態量推定値ｘｈａｔの属する凸多面体を候補から特定し、その凸多面体に対応する制御則を決定する（Ｓ１８）。検索器１１２は、Ｐ個の候補凸多面体について、不等式Ｈｉ・ｘｈａｔ≦Ｋｉが成立するＨｉ、Ｋｉを発見するまでｉ＝１、２、．．．、Ｐと順次、当該不等式が成立するか否かを判定する。検索器１１２は、不等式を満たす凸多面体を、状態量推定値ｘｈａｔの属する凸多面体と特定する。検索器１１２は、特定された凸多面体に対応する制御則Ｆｉ、Ｇｉを、速度制御器１１０で使用すべき制御則と決定する。検索器１１２は、決定された制御則Ｆｉ、Ｇｉに速度制御器１１０を切り替える。
【００３５】
速度制御器１１０は、決定された制御則Ｆｉ、Ｇｉに従って偏差ｘｅから操作量ｕを演算する（Ｓ２０）。速度制御器１１０は、上述のように、操作量ｕを電流制御器１１４及び状態推定器１１８に出力する。こうして、切替コントローラ１０８における操作量ｕの演算処理は終了する。
【００３６】
上述の構成により制御装置１００は、制御周期ごとに状態量推定値ｘｈａｔに応じて制御則を選択し、その制御則に従って状態量推定値ｘｈａｔと指令値ｘｒとの偏差ｘｅから操作量ｕを演算する。制御装置１００は、操作量ｕに基づいて電動機１０２を制御し、その結果である状態量推定値ｘｈａｔをフィードバックする。次の制御周期においても同様に、制御装置１００は、状態量推定値ｘｈａｔに応じて制御則を切り替えて、電動機１０２を制御する。
【００３７】
よって、制御装置１００は、状態変数に依存して動特性が変化するシステムの制御に向いている。１つの適用例として、射出成形機の射出装置のための射出モータの速度制御が挙げられる。射出モータからそれによって駆動されるスクリューへの動力伝達機構にはたいてい、部材間に敢えて遊びが設けられている。図３及び図４を参照して説明するように、遊びの存在によって、射出モータ４５によるスクリュー位置制御に不感帯が生じる。制御装置１００を適用することにより、実際上許容できる演算負荷でこうした不感帯をモデルに組み込むことができるようになる。それにより、より高精度の制御を提供することができる。
【００３８】
図３は、制御装置１００が適用される射出成形機の射出装置の一例を示す。図４は、図３に示す射出装置に設けられている加熱シリンダ１２及びスクリュー２２の一例を示す。図３及び図４に示す射出装置の構成それ自体は知られている。以下では、上記の不感帯に関連する部分を中心に説明する。
【００３９】
図３に示す射出装置は、計量モータ４４と射出モータ４５とを備える。射出装置の駆動部ケース１１の前方部に計量モータ４４が、後方部に射出モータ４５が、互いに同一軸上に配設される。計量モータ４４は溶融樹脂の計量工程のためにスクリュー２２（図４参照）を回転させ、射出モータ４５は計量された樹脂の射出工程のためにスクリュー２２を軸線方向に直線運動させる。スクリュー２２は加熱シリンダ１２に収容されており、加熱シリンダ１２の後方に駆動部ケース１１が固定されている。
【００４０】
射出モータ４５の回転出力をスクリュー２２の直線運動に変換するための動力伝達機構が軸線上に設けられている。この動力伝達機構は、軸線上に配設された、ボールねじ軸６５、ボールナット６９、第２スプライン軸７１、ベアリングボックス７３、及び、第１スプライン軸６３を備える。動力伝達機構を収容するために、計量モータ４４及び射出モータ４５の出力軸は中空とされている。
【００４１】
射出モータ４５のロータ４９の回転によりボールねじ軸６５が回転するように、ロータ４９の後端にボールねじ軸６５の後端が取り付けられている。その取付位置の前方でボールねじ軸６５にボールナット６９が螺合しており、ボールナット６９の前部に第２スプライン軸７１が固定されている。第２スプライン軸７１は、駆動部ケース１１に固定されている第２スプラインナット７６とスプライン係合している。第２スプライン軸７１の前方に第１スプライン軸６３がベアリングボックス７３を介して連結されている。ベアリングボックス７３は第２スプライン軸７１と第１スプライン軸６３とが一体に軸線方向に移動可能に、かつ第２スプライン軸７１に対し第１スプライン軸６３が回転可能に、両者を連結している。第１スプライン軸６３の前端にスクリュー２２の後端が固定されている。
【００４２】
よって、射出モータ４５のロータ４９の回転によりボールねじ軸６５が回転する。第２スプライン軸７１及び第２スプラインナット７６によりボールナット６９の回転は拘束されているので、ボールねじ軸６５の回転はボールナット６９の軸線方向の直線運動に変換される。ボールナット６９と一体に、第２スプライン軸７１、ベアリングボックス７３、第１スプライン軸６３、及びスクリュー２２が軸線方向に移動する。射出工程においては計量モータ４４は停止されている。こうして、射出工程のために、射出モータ４５の駆動によりスクリュー２２を前進させることができる。
【００４３】
上述の動力伝達機構には、計量モータ４４の回転によりスクリュー２２を回転させるための回転伝達機構も組み込まれている。計量モータ４４のロータ４７に第１スプラインナット６２が固定され、第１スプラインナット６２は第１スプライン軸６３とスプライン係合している。上述のように第１スプライン軸６３と第２スプライン軸７１とはベアリングボックス７３により相対回転可能に連結されている。
【００４４】
よって、計量工程において計量モータ４４の回転は、第１スプラインナット６２、第１スプライン軸６３を経てスクリュー２２に伝達される。スクリュー２２は、加熱シリンダ１２内に投入される樹脂を溶融させながら前進し、それに伴って生じる溶融樹脂の背圧によって後退させられる。射出モータ４５は、計量される樹脂の背圧を制御しながら駆動され、ロータ４９はスクリュー２２を後退させる方向に回転させられる。
【００４５】
射出モータ４５の回転を検出する検出器として絶対値パルスエンコーダ８５が設けられている。絶対値パルスエンコーダ８５は、射出モータ４５のロータ４９及びボールねじ軸６５の回転角度を検出する。絶対値パルスエンコーダ８５は、射出装置の軸線上の最後端部に取り付けられている。また、樹脂の背圧は例えば、スクリュー２２に作用する軸方向荷重、または加熱シリンダ１２内の樹脂圧力に基づいて求められる。スクリュー２２の軸方向荷重は図示されない荷重計により検出される。加熱シリンダ１２内の樹脂圧力は図示されない圧力センサにより検出される。
【００４６】
図３に示す射出装置の動力伝達機構においては、例えば第２スプラインナット７６と第２スプライン軸７１との間に若干の遊びがある。第２スプラインナット７６と第２スプライン軸７１との軸線方向の相対運動における摺動抵抗を小さくするために、遊びを設けることが好ましい。また、遊びがあることによって、部材の加工精度（ひいては加工コスト）を実用上適切な程度に収めることができる。
【００４７】
こうした遊びによって、射出モータ４５のスクリュー駆動制御に不感帯が生じる。スクリュー位置に相当する負荷角度θＬとロータ４９の角度θＭとの相対角度θＴが遊びよりも小さいとき、ボールナット６９に推力Ｆは発生しない。一方、相対角度θＴが遊びよりも大きいとき、ボールナット６９に推力Ｆが発生する。ここで、負荷角度θＬは例えば、スクリュー位置をボールねじリードを用いて回転座標に変換した値である。
【００４８】
不感帯が存在することで、射出モータ４５によるスクリュー２２の直線運動は動特性が変化する。射出工程では成形品質を高めるために、スクリューの位置および推力を高精度に制御することが求められる。不感帯による動特性の変化は制御性能に影響しうる。
【００４９】
そこで、本実施形態では、上述の制御装置１００を射出モータ４５によるスクリュー２２の速度制御に適用する。不感帯による動特性変化を表したスクリューの直線運動モデルに対しｍｐ計画法を用いて切替コントローラ１０８が設計される。動特性の変化に応じた制御則の切替制御によって、スクリューの位置および推力を高精度に制御することが可能となる。制御装置１００を適用することにより、実際上許容できる演算負荷で動特性変化をスクリュー２２の直線運動モデルに組み込むことができる。
【００５０】
スクリュー２２の直線運動モデルは３つの状態変数ｘ１ないしｘ３で表すことができる。状態空間は３次元である。３つの状態変数ｘ１ないしｘ３としてはさまざまな組み合わせがあり得る。ここでは一例として、状態変数ｘ１を射出モータ４５のロータ角速度ω、状態変数ｘ２をロータ角度θＭと負荷角度θＬとの相対角度θＴ、状態変数ｘ３を負荷角速度ωＬとする。
【００５１】
この場合、図１に示す状態量指令値演算部１０４への入力指令値は、図示されない上位の制御装置から指令されるロータ角速度ωの指令値ωｒである。状態量指令値演算部１０４は、ロータ角速度指令値ωｒを変換ベクトルＴ１によって状態量指令値ｘｒに変換する。
【００５２】
状態量推定値ｘｈａｔは、状態変数ｘ１ないしｘ３を成分にもつ３次元の列ベクトルである。状態変数ｘ１は、状態演算部１１６が絶対値パルスエンコーダ８５で検出したロータ角度θＭからその速度を演算することで求められる。状態変数ｘ２、ｘ３は、射出モータ４５への電流指令値ｕと状態変数ｘ１とから状態推定器１１８により推定される。
【００５３】
図５は、スクリュー２２の直線運動モデルの動特性変化を示す。状態変数ｘ１ないしｘ３による状態空間において推力Ｆが発生しないθＴの不感帯幅をθＤＢとすると、図示の領域１および領域３においては推力Ｆが発生し、領域２では推力が発生しない。このモデルにおいて動特性のモード数は３である。
【００５４】
装置における物理的な制約などによって、状態変数ｘ１ないしｘ３のそれぞれの取り得る範囲が定まる。よって状態空間は有限の領域となる。状態変数ｘ１の範囲は、射出モータ４５に許容されるロータの最大角速度により定められる。状態変数ｘ２の範囲は、射出装置に許容される最大相対角度により定められる。推力Ｆは、
【数１】
2013101472.tif 000003
と表される（係数Ｋｓはボールねじに固有の係数である。）。この関係式により、推力Ｆの最大値から相対角度θＴの範囲を規定することができる。状態変数ｘ３の範囲は、ロータの最大角速度により定められる。
【００５５】
図６は、切替コントローラ１０８の一例である。切替コントローラ１０８は、図５に例示するスクリュー２２の直線運動モデルに対しｍｐ計画法を用いて設計されている。状態空間は１２３１個の凸多面体に分割され、それぞれの凸多面体に異なる制御則Ｆｉ、Ｇｉが割り当てられている。図からわかるように、幾何学的に見て状態空間は多数の凸多面体で不規則に分割されている。また、場所によって凸多面体に疎密があることもわかる。例えば図５に示す領域２に相当するエリアには微小な凸多面体が密集している。
【００５６】
切替コントローラ１０８の検索器１１２は上述のように、状態量推定値ｘｈａｔから制御則Ｆｉ、Ｇｉを検索する。切替コントローラ１０８の速度制御器１１０は、偏差ｘｅから電流指令値ｕ（＝Ｆｉ・ｘｅ＋Ｇｉ）を演算し、電流制御器１１４に出力する。電流制御器１１４は、電流指令値ｕに基づいて射出モータ４５のステータに電流を供給し、射出モータ４５を駆動する。
【００５７】
次に、制御則の検索処理のための事前の準備作業を説明する。準備作業には３つの段階がある。第１に、切替コントローラ１０８が設計される。第２に、状態空間がメッシュで区切られる。第３に、メッシュと凸多面体とを関連付けるインデックスが作成される。第２段階及び第３段階により、複数のメッシュの各々と、各メッシュに重なりをもつ凸多面体に対応する制御則とが予め関連付けられる。準備作業は、制御処理に先立ってオフラインで行われる。準備作業は、制御装置１００により、またはその他の演算装置で実行される。
【００５８】
切替コントローラ１０８の設計作業は、モデル予測制御問題をｍｐ計画法により解くことにより、状態空間を制御則ｕ＝Ｆｉ・ｘ＋Ｇｉが適用できる領域ごとに分割して、多面体の集合を構成する作業である。状態空間は状態変数の取り得る範囲によって規定される有限な空間である。多面体の集合は図６に例示され、凸多面体の集合である。状態空間が定義され、すべての凸多面体について制御則を表す行列Ｆｉ、Ｇｉ、及び凸多面体を表す行列Ｈｉ、Ｋｉが演算される。ここで定義された状態空間を表す情報、及び、求められた行列Ｆｉ、Ｇｉ、Ｈｉ、Ｋｉは、切替コントローラ１０８に付随する記憶手段（図示せず）に保存される。
【００５９】
次に、状態空間にメッシュが作成される。上述のように、状態変数の制約条件により状態空間は有限の領域である。状態空間がＮ個（Ｎは２以上の整数）のメッシュにより規則的に区切られる。各メッシュには特定のためにメッシュ番号ｊ（ｊは１以上Ｎ以下の整数）が付与される。メッシュの形状は、状態空間の基底ベクトルに各面が平行となる形状であることが望ましい。つまり、状態空間が例えば２次元であれば長方形、３次元であれば直方体が望ましい。このようにすれば、状態量推定値ｘｈａｔにより表される状態空間での位置座標から直ちに、その状態量推定値ｘｈａｔが属するメッシュ番号ｊを求めることができる。図７に３次元の場合のメッシュの例を示す。メッシュを表す情報は、切替コントローラ１０８に付随する記憶手段（図示せず）に保存される。
【００６０】
メッシュの大きさは、１つのメッシュにいくつかの凸多面体が重なり合うように定めることが好ましい。メッシュに重なり合う凸多面体の数が、状態ベクトルの属する凸多面体の候補の数を定める。例えば、１つのメッシュに多くとも約１０個の凸多面体が重なりをもつようにメッシュの大きさを定めることができる。このようにすれば、凸多面体の候補を１０個程度に抑え、検索処理の演算負荷を実装可能なレベルに軽減することができる。
【００６１】
図７に例示するメッシュは、均一の形状及び大きさで状態空間を区切っている。しかし、状態空間を区切るすべてのメッシュが均一の形状または大きさではなくてもよい。例えば、状態空間における凸多面体の疎密にメッシュの分布を合わせ、凸多面体の密集領域（例えば、図６において、図５に示す領域２にあたる部分）が疎領域よりも細かいメッシュで区切られてもよい。このようにして、各メッシュに重なりをもつ凸多面体の数を均一化するようにしてもよい。この場合、当初は状態空間を粗いメッシュで区切り、基準を超える凸多面体と重なり合うメッシュについてのみ更に細かいメッシュで区切るという手順でメッシュが設定されてもよい。
【００６２】
メッシュ作成に次いで、凸多面体のインデックスが作成される。状態空間を区切るＮ個のメッシュすべてについて、メッシュと重なりをもつ凸多面体をそのメッシュに関連付けることにより、インデックスが作成される。ｊ番目のメッシュに重なりをもつ凸多面体の集合をＮｊと表記する。各メッシュｊの集合Ｎｊによりインデックスが構成される。凸多面体のインデックスを表す情報は、切替コントローラ１０８に付随する記憶手段（図示せず）に保存される。
【００６３】
（凸多面体のインデックスの作成方法の例示）
インデックスは例えば、凸多面体の頂点に着目して作成される。ある凸多面体の頂点があるメッシュに含まれる場合にはその凸多面体とメッシュとは重なりをもつ。そこで、ｉ番目の凸多面体のいずれかの頂点がｊ番目のメッシュに含まれる場合に、ｉ番目の凸多面体が集合Ｎｊの要素であると判定される。メッシュの規則性により、凸多面体の頂点の座標からその頂点を含むメッシュを容易に特定することができる。この判定がすべての凸多面体について繰り返されることで、集合Ｎｊが決定される。他のメッシュについても同様にして、そのメッシュに重なりをもつ凸多面体を求めることができる。凸多面体と制御則とが１対１に対応付けられていることから、状態空間を区分する制御則それぞれが各メッシュに関連付けられることになる。
【００６４】
図８に例示するように、ｊ番目のメッシュにｉ番目の凸多面体が重なりをもつ場合には、メッシュｊに凸多面体ｉの全体が含まれる場合（図８（ａ））と、メッシュｊに凸多面体ｉの一部分が含まれる場合（図８（ｂ））と、メッシュｊが凸多面体ｉに含まれる場合（図８（ｃ））と、が主に考えられる。図８には便宜上、２次元の状態空間の例を示す。ところが、例えばメッシュｊが凸多面体ｉに含まれる場合には（図８（ｃ））、そのメッシュｊは凸多面体ｉの頂点を含まない。そこで、ｉ番目の凸多面体がｊ番目のメッシュの頂点を含む場合に、ｉ番目の凸多面体が集合Ｎｊの要素であると判定されてもよい。また、ｉ番目の凸多面体がｊ番目のメッシュの任意の点を含む場合に、ｉ番目の凸多面体が集合Ｎｊの要素であると判定されてもよい。
【００６５】
さらに、ｉ番目の凸多面体がｊ番目のメッシュと重なりをもつ場合には、ｉ番目の凸多面体内にｊ番目のメッシュの頂点が含まれず、かつｊ番目のメッシュ内にｉ番目の凸多面体の頂点が含まれない状況も想定される。例えば図９に示すように、あるメッシュ（例えば、メッシュ３及びメッシュ４）を凸多面体ｉの辺の一部分が通過することもあり得る。
【００６６】
こうした状況が想定される場合には、インデックスの作成のために、凸多面体及びメッシュの頂点以外の凸多面体またはメッシュの幾何学的特徴が使用されてもよい。インデックスの作成は、例えば、ある凸多面体ｉに重なりをもつメッシュの集合の凸性をチェックすることを含んでもよい。ここで、「メッシュの集合の凸性」とは、「メッシュの集合に含まれるメッシュの中心間を結ぶすべての線分がメッシュの集合の外に出ないこと」と定義する。メッシュの中心間を結ぶ線分のいずれかが通るメッシュｊについては、当該メッシュの集合Ｎｊの要素に凸多面体ｉが追加されるようにしてもよい。
【００６７】
例えば、図９において凸多面体ｉは図示のメッシュ１，２，３，４，５，６すべてと重なっている。頂点に着目する方法ではメッシュ１，２，５，６と凸多面体ｉとの重なりが検出される。このとき、凸多面体ｉは、メッシュ１の集合Ｎ１（即ち、メッシュ１と重なりをもつ凸多面体の集合Ｎ１）、メッシュ２の集合Ｎ２、メッシュ５の集合Ｎ５、メッシュ６の集合Ｎ６それぞれの要素となる。
【００６８】
ここでは併せて、凸多面体ｉに重なりをもつメッシュの集合｛１，２，５，６｝の凸性がチェックされる。そうすると、メッシュ１，２，５，６の中心間を結ぶ線分のうち、例えば、メッシュ１とメッシュ５の中心を結ぶ線分ａとメッシュ２とメッシュ６の中心を結ぶ線分ｂとが、メッシュ集合｛１，２，５，６｝の外に出ることがわかる。そこで線分ａがメッシュ集合｛１，２，５，６｝の外で通過するメッシュ３と、線分ｂがメッシュ集合｛１，２，５，６｝の外で通過するメッシュ４とをメッシュの集合｛１，２，５，６｝に加える。このようにして、凸多面体ｉに重なりをもつメッシュがメッシュ１ないし６であることがわかる。この場合、メッシュ３の集合Ｎ３及びメッシュ５の集合Ｎ５のそれぞれに凸多面体ｉが追加される。
【００６９】
（凸多面体の頂点座標の求め方の例示）
インデックス作成のために凸多面体の頂点座標を求める方法を述べる。この方法は、数値演算の微小な誤差を許容する実用的な方法である。この方法は、凸多面体を定義するための連立不等式から複数の不等式を選択し不等号を等号に置き換えて得られる連立方程式の解を、当該連立方程式に組み入れられなかった不等式を満たすことを条件として、当該凸多面体の頂点とみなす。
【００７０】
凸多面体の頂点座標を求める方法は、３つのステップからなる。第１は、凸多面体を定義する連立不等式から連立方程式を作成するステップである。状態空間がｎ次元であり、凸多面体の面の数がｍであるとき、この連立方程式は、連立不等式から抽出されたｍＣｎ個の不等式の不等号を等号に置き換えたものである。第２ステップでは、連立方程式を解いて交点ｘｃを求める。この交点ｘｃは凸多面体の頂点ではない場合がある。それを排除するのが第３ステップである。第３ステップは、連立方程式の解である交点ｘｃが、連立不等式のうち連立方程式に組み入れられなかった残りの不等式をすべて満たすか否かを判定する。交点ｘｃが凸多面体の頂点ではない場合には、残りの不等式のいずれかが満たされない。このようにして、凸多面体の頂点座標を求めることができる。
【００７１】
以上述べたように、本実施形態によれば、状態空間が凸多面体の領域に分割されており、凸多面体ごとに制御則が予め対応付けられている。一般に凸多面体は状態空間を不規則に分割する。状態空間を規則的に区切るメッシュが導入されることにより、凸多面体のいわばマッピングがなされる。よって、状態ベクトルの属する凸多面体を少ない演算量で速やかに特定することができる。
【００７２】
以上、本発明を実施例にもとづいて説明した。本発明は上記実施形態に限定されず、種々の設計変更が可能であり、様々な変形例が可能であること、またそうした変形例も本発明の範囲にあることは、当業者に理解されるところである。
【００７３】
上述の制御装置１００においては、ハイブリッドシステムを対象とするモデル予測制御のための切替コントローラ１０８がｍｐ計画法を用いて設計されている。しかし、本発明の適用対象はこれには限定されず、動特性変化のない線形システムにおいて状態量または操作量の範囲が規定された制約条件付のモデル予測制御にも同様に適用可能である。こうした制約条件付のモデル予測制御問題についてもｍｐ計画法により、図６に例示されるものと同様のコントローラが設計可能であることが知られている。また、本発明はこうした設計手法には限定されず、状態空間を分割する複数の凸多面体の各々に制御則が対応付けられている任意のコントローラにも適用することができる。
【００７４】
制御装置１００の適用対象は射出モータ４５または電動機１０２の速度制御には限られない。射出モータ４５またはその他の電動機の電流制御または位置制御を含む任意の制御にも適用することができる。また、制御装置１００の適用対象は射出モータ４５に限られず、計量モータ４４または例えば可動プラテンを駆動する型締めモータを含む射出成形機の任意の電動機に適用することができる。
【００７５】
また、制御装置１００の適用対象は射出成形機または電動機に限られず、ロボット、コンバータ、あるいは油圧制御など、制御周期が短く動特性が不連続に切り換わる任意の機器の制御に適用することができる。
【符号の説明】
【００７６】
１００  制御装置、  １０８  切替コントローラ、  １１０  速度制御器、  １１２  検索器。
【図１】
2013101472.tif 000004
【図２】
2013101472.tif 000005
【図３】
2013101472.tif 000006
【図４】
2013101472.tif 000007
【図７】
2013101472.tif 000008
【図８】
2013101472.tif 000009
【図９】
2013101472.tif 000010
【図５】
2013101472.tif 000011
【図６】
2013101472.tif 000012