(57)【要約】【課題】制御系の設計変数を適値に設定する。【解決手段】本方法では、制御系に対して設定する設計変数ρの値が算出される。制御系は、目標指令ｒと第一制御要素の出力ｙmとに基づき、伝達関数Ｃ（ρ）に従う制御入力ｕを算出し、制御入力ｕに基づき、第一制御要素を操作することにより、第一制御要素からの作用を受ける第二制御要素の出力ｙfを制御する。本方法では、制御入力ｕの標本ｕ0、第一出力ｙmの標本ｙm0、及び第二出力ｙfの標本ｙf0の組合せの時系列データが取得される（Ｓ１１０）。この時系列データと、伝達関数Ｃ（ρ）と、目標指令ｒに対する出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、制御系に設定する設計変数ρの値として、制御誤差を最小にする設計変数ρの値ρ*が算出される（Ｓ１４０）。【選択図】図３
2020004038.tif 000002
【特許請求の範囲】
【請求項１】
目標指令ｒと第一制御要素の出力である第一出力ｙmとに基づき、設計変数ρを有する伝達関数Ｃ（ρ）に従う制御入力ｕを算出し、前記制御入力ｕに基づき、前記第一制御要素を操作することにより、前記第一制御要素からの作用を受ける第二制御要素の出力である第二出力ｙfを制御するように構成される制御系
に対して設定する前記設計変数ρの値を算出する方法であって、
前記制御入力ｕの標本ｕ0、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0の組合せの時系列データを取得することと、
前記時系列データと、前記伝達関数Ｃ（ρ）と、前記目標指令ｒに対する前記第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、前記制御系に設定する前記設計変数ρの値として、制御誤差を最小にする前記設計変数ρの値ρ*を算出することと、
を含み、
前記制御誤差は、
前記第二出力ｙfの標本ｙf0と、前記第二出力ｙfの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記制御入力ｕの標本ｕ0、及び前記第一出力ｙmの標本ｙm0から算出される規範値と、の誤差、又は、
前記制御入力ｕの標本ｕ0と、前記制御入力ｕの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0から算出される規範値と、の誤差
に対応する算出方法。
【請求項２】
前記制御系は、前記目標指令ｒと前記第一出力ｙmとの偏差（ｒ−ｙm）を前記伝達関数Ｃ（ρ）に入力することにより、前記制御入力ｕを算出するように構成され、
前記設計変数ρの値ρ*を算出することは、前記時系列データに基づき、前記制御誤差に関する評価関数の値を最小にする前記設計変数ρの値ρ*を算出することを含み、
前記評価関数は、式
【数１】
2020004038.tif 000012
に従う関数Ｅf（ρ，ｕ0，ｙm0，ｙf0）のノルムに対応する請求項１記載の算出方法。
【請求項３】
前記制御系は、前記目標指令ｒと前記第一出力ｙmとの偏差（ｒ−ｙm）を前記伝達関数Ｃ（ρ）に入力することにより、前記制御入力ｕを算出するように構成され、
前記設計変数ρの値ρ*を算出することは、前記時系列データに基づき、前記制御誤差に関する評価関数の値を最小にする前記設計変数ρの値ρ*を算出することを含み、
前記評価関数は、式
【数２】
2020004038.tif 000013
に従う関数Ｅv（ρ，ｕ0，ｙm0，ｙf0）のノルムに対応する請求項１記載の算出方法。
【請求項４】
前記設計変数ρの値ρ*を算出することは、前記時系列データが示す前記第一出力ｙmの標本ｙm0と前記第二出力ｙfの標本ｙf0との差が基準以上であることを条件に、前記時系列データに基づき、前記設計変数ρの値ρ*を算出することを含む請求項１〜請求項３のいずれか一項記載の算出方法。
【請求項５】
前記時系列データを取得することは、複数の制御条件のそれぞれで前記制御系を動作させたときの、観測された前記制御入力ｕ、前記第一出力ｙm、及び前記第二出力ｙfの標本ｕ0、標本ｙm0、標本ｙf0を示す、複数の時系列データを取得することを含み、
前記算出方法は、
前記複数の時系列データのそれぞれにおける前記第一出力ｙmの標本ｙm0と前記第二出力ｙfの標本ｙf0との差を評価することと、
前記差の評価値に基づき、前記複数の時系列データの一つを参照データに選択することと、
を更に含み、
前記設計変数ρの値ρ*を算出することは、前記参照データに基づき、前記設計変数ρの値ρ*を算出することを含む請求項１〜請求項３のいずれか一項記載の算出方法。
【請求項６】
前記第一制御要素は、モータであり、前記第二制御要素は、前記モータにより駆動される負荷である請求項１〜請求項５のいずれか一項記載の算出方法。
【請求項７】
前記第二制御要素は、動力伝達に遅延が生じる機構を介して前記第一制御要素により駆動される制御要素である請求項１〜請求項６のいずれか一項記載の算出方法。
【請求項８】
目標指令ｒと第一制御要素の出力である第一出力ｙmとに基づき、設計変数ρを有する伝達関数Ｃ（ρ）に従う制御入力ｕを算出し、前記制御入力ｕに基づき、前記第一制御要素を操作することにより、前記第一制御要素からの作用を受ける第二制御要素の出力である第二出力ｙfを制御するように構成される制御系
に対して設定する前記設計変数ρの値を算出する情報処理装置であって、
プロセッサと、
インタフェースと、を含み、
前記プロセッサは、
前記インタフェースを通じて前記制御入力ｕの標本ｕ0、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0の組合せの時系列データを取得し、
前記時系列データと、前記伝達関数Ｃ（ρ）と、前記目標指令ｒに対する前記第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、前記制御系に設定する前記設計変数ρの値として、制御誤差を最小にする前記設計変数ρの値ρ*を算出する
ように構成され、
前記制御誤差は、
前記第二出力ｙfの標本ｙf0と、前記第二出力ｙfの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記制御入力ｕの標本ｕ0、及び前記第一出力ｙmの標本ｙm0から算出される規範値と、の誤差、又は、
前記制御入力ｕの標本ｕ0と、前記制御入力ｕの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0から算出される規範値と、の誤差
に対応する情報処理装置。
【請求項９】
目標指令ｒと第一制御要素の出力である第一出力ｙmとに基づき、設計変数ρを有する伝達関数Ｃ（ρ）に従う制御入力ｕを算出し、前記制御入力ｕに基づき、前記第一制御要素を操作することにより、前記第一制御要素からの作用を受ける第二制御要素の出力である第二出力ｙfを制御するように構成される制御系
に対して設定する前記設計変数ρの値を算出する処理をコンピュータに実行させるためのコンピュータプログラムであって、前記処理は、
前記制御入力ｕの標本ｕ0、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0の組合せの時系列データを取得することと、
前記時系列データと、前記伝達関数Ｃ（ρ）と、前記目標指令ｒに対する前記第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、前記制御系に設定する前記設計変数ρの値として、制御誤差を最小にする前記設計変数ρの値ρ*を算出することと、
を含み、
前記制御誤差は、
前記第二出力ｙfの標本ｙf0と、前記第二出力ｙfの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記制御入力ｕの標本ｕ0、及び前記第一出力ｙmの標本ｙm0から算出される規範値と、の誤差、又は、
前記制御入力ｕの標本ｕ0と、前記制御入力ｕの規範値であって、前記伝達関数Ｃ（ρ）、前記モデル関数Ｔd、前記第一出力ｙmの標本ｙm0、及び前記第二出力ｙfの標本ｙf0から算出される規範値と、の誤差
に対応するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、制御系に設定する設計変数の値を算出するための方法及び装置に関する。
【背景技術】
【０００２】
従来、制御器の自動調整技術として、ＦＲＩＴ（Fictitious Reference Iterative Tuning）技術及びＶＲＦＴ（Virtual Reference Feedback Tuning）技術が知られている（例えば特許文献１参照）。これらの技術は、目標応答に近づくように制御器のパラメータを調整する技術である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−６８６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した従来技術は、フルクローズド制御を対象としており、セミクローズド制御に最適化されていない。例えば、モータにより機械の動作を制御する場合、フルクローズド制御及びセミクローズド制御では、それぞれ次の処理が行われる。
【０００５】
フルクローズド制御では、モータに取り付けられた機械の動作を観測する。この機械の動作に関する観測値をフィードバック量として用いて、フィードバック量と目標指令との比較により、モータに対する制御入力を決定する。これにより、機械の動作が目標応答に従うように機械を制御する。
【０００６】
セミクローズド制御では、モータの動作を観測する。このモータの動作に関する観測値をフィードバック量として用いて、フィードバック量と目標指令との比較により、制御入力を決定して、機械の動作が目標応答に従うように機械を制御する。
【０００７】
従来技術は、目標応答を定義するパラメータと同じパラメータをフィードバック量として用いるフルクローズド制御を前提としており、そうではないセミクローズド制御には適合しない。
【０００８】
そこで、本開示の一側面によれば、制御系の設計変数、特にはセミクローズド制御系の設計変数を目標応答に応じた適値に設定するための技術を提供できることが望ましい。
【課題を解決するための手段】
【０００９】
本開示の一側面に係る算出方法は、制御系に対して設定する設計変数ρの値を算出するように構成される。制御系の例には、目標指令ｒと第一制御要素の出力である第一出力ｙmとに基づき、設計変数ρを有する伝達関数Ｃ（ρ）に従う制御入力ｕを算出し、制御入力ｕに基づき、第一制御要素を操作することにより、第一制御要素からの作用を受ける第二制御要素の出力である第二出力ｙfを制御するように構成される制御系が含まれる。
【００１０】
この算出方法は、制御入力ｕの標本ｕ0、第一出力ｙmの標本ｙm0、及び第二出力ｙfの標本ｙf0の組合せの時系列データを取得することを含む。
【００１１】
この算出方法は更に、取得した時系列データと、伝達関数Ｃ（ρ）と、目標指令ｒに対する第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、制御系に設定する設計変数ρの値として、制御誤差を最小にする設計変数ρの値ρ*を算出することを含む。
【００１２】
制御誤差は、第二出力ｙfの標本ｙf0と第二出力ｙfの規範値との誤差、又は、制御入力ｕの標本ｕ0と制御入力ｕの規範値との誤差に対応する。第二出力ｙfの規範値は、伝達関数Ｃ（ρ）、モデル関数Ｔd、制御入力ｕの標本ｕ0、及び第一出力ｙmの標本ｙm0から算出可能である。制御入力ｕの規範値は、伝達関数Ｃ（ρ）、モデル関数Ｔd、第一出力ｙmの標本ｙm0、及び第二出力ｙfの標本ｙf0から算出可能である。
【００１３】
本開示の算出方法によれば、上述した制御誤差に基づき設計変数ρの値ρ*を算出することから、この値ρ*をセミクローズド制御系に設定することで、セミクローズド制御系の設計変数を目標応答に応じた適値に設定することができる。即ち、目標応答に対する制御誤差の少ない制御系を構築することができる。
【００１４】
本開示の別側面によれば、制御系は、目標指令ｒと第一出力ｙmとの偏差（ｒ−ｙm）を伝達関数Ｃ（ρ）に入力することにより、制御入力ｕを算出するように構成されていてもよい。
【００１５】
本開示の別側面によれば、上記設計変数ρの値ρ*を算出することは、上記時系列データに基づき、制御誤差に関する評価関数であって、次の関数Ｅf（ρ，ｕ0，ｙm0，ｙf0）及び関数Ｅv（ρ，ｕ0，ｙm0，ｙf0）の一方のノルムに対応する評価関数の値を最小にする設計変数ρの値ρ*を算出することを含んでいてもよい。
【００１６】
【数１】
2020004038.tif 000003
【００１７】
本開示の別側面によれば、上記設計変数ρの値ρ*を算出することは、時系列データが示す第一出力ｙmの標本ｙm0と第二出力ｙfの標本ｙf0との差が基準以上であることを条件に、当該時系列データに基づき、設計変数ρの値ρ*を算出することを含んでもよい。
【００１８】
差が大きい時系列データで設計変数ρの値ρ*を算出することによれば、差が小さい時系列データに基づいて値ρ*を算出する場合よりも、制御精度を向上させることが可能な設計変数ρの適値を算出することができる。
【００１９】
本開示の別側面によれば、上記時系列データを取得することは、複数の制御条件のそれぞれで制御系を動作させたときに観測される制御入力ｕ、第一出力ｙm、及び第二出力ｙfの標本ｕ0、標本ｙm0、標本ｙf0を示す、複数の時系列データを取得することを含んでもよい。
【００２０】
この場合、上記方法は、複数の時系列データのそれぞれにおける第一出力ｙmの標本ｙm0と第二出力ｙfの標本ｙf0との差を評価することと、差の評価値に基づき、複数の時系列データの一つを参照データに選択することと、を更に含んでもよい。即ち、設計変数ρの値ρ*を算出することは、上記参照データに基づき、設計変数ρの値ρ*を算出することであってもよい。
【００２１】
この方法によれば、複数の時系列データから選択された有利な時系列データに基づいて、目標応答を高精度に実現可能な設計変数ρの適値を算出することができる。
【００２２】
本開示の別側面によれば、第一制御要素は、モータであってもよい。第二制御要素は、モータにより駆動される負荷であってもよい。本開示の別側面によれば、第二制御要素は、動力伝達に遅延が生じる機構を介して第一制御要素により駆動される制御要素であってもよい。
【００２３】
本開示の別側面によれば、上述した制御系に対して設定する設計変数ρの値を算出するための情報処理装置が提供されてもよい。この情報処理装置は、プロセッサと、インタフェースと、を含んでいてもよい。プロセッサは、上述した方法を実行するように構成されてもよい。
【００２４】
例えば、プロセッサは、インタフェースを通じて制御入力ｕの標本ｕ0、第一出力ｙmの標本ｙm0、及び第二出力ｙfの標本ｙf0の組合せの時系列データを取得するように構成されてもよい。
【００２５】
プロセッサは、時系列データと、伝達関数Ｃ（ρ）と、目標指令ｒに対する第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、制御系に設定する設計変数ρの値として、制御誤差を最小にする設計変数ρの値ρ*を算出するように構成されてもよい。制御誤差は、上述した、第二出力ｙfの標本ｙf0と第二出力ｙfの規範値との誤差、又は、制御入力ｕの標本ｕ0と制御入力ｕの規範値との誤差に対応していてもよい。
【００２６】
本開示の別側面によれば、上述した制御系に対して設定する設計変数ρの値を算出する処理をコンピュータに実行させるためのコンピュータプログラムが提供されてもよい。この処理は、制御入力ｕの標本ｕ0、第一出力ｙmの標本ｙm0、及び第二出力ｙfの標本ｙf0の組合せの時系列データを取得することと、時系列データと、伝達関数Ｃ（ρ）と、目標指令ｒに対する第二出力ｙfの規範値を定義するモデル関数Ｔdとに基づき、制御系に設定する設計変数ρの値として、制御誤差を最小にする設計変数ρの値ρ*を算出することと、を含んでいてもよい。制御誤差は、上述した、第二出力ｙfの標本ｙf0と第二出力ｙfの規範値との誤差、又は、制御入力ｕの標本ｕ0と制御入力ｕの規範値との誤差に対応していてもよい。
【図面の簡単な説明】
【００２７】
【図１】設定システム及び制御系の構成を表すブロック図である。
【図２】制御対象の例を表すブロック図である。
【図３】プロセッサが実行する第一実施形態の設定処理を表すフローチャートである。
【図４】第一出力及び第二出力を目標指令と共に示すグラフである。
【図５】図５Ａ及び図５Ｂは、制御器の例を示すブロック図である。
【図６】図６Ａは、本開示の技術に基づいて制御系の設計変数を調整した後の、第一出力及び第二出力を目標応答と共に示すグラフであり、図６Ｂは、従来技術に基づいて制御系の設計変数を調整した後の、第一出力及び第二出力を示すグラフである。
【図７】本開示の技術を適用可能な機器の一例を説明した図である。
【図８】図８Ａは、本開示の技術を適用して機器の設計変数を調整した後の、第一出力及び第二出力を目標応答と共に示すグラフであり、図８Ｂは、従来技術に基づいて機器の設計変数を調整した後の、第一出力及び第二出力を示すグラフである。
【図９】第二実施形態の設定処理を表すフローチャートである。
【図１０】第三実施形態の設定処理を表すフローチャートである。
【発明を実施するための形態】
【００２８】
以下に本開示の例示的実施形態を、図面を参照しながら説明する。
［第一実施形態］
図１に示す本実施形態の設定システム１０は、ＦＲＩＴ又はＶＲＦＴ技術を基礎とする新規な技術によって、制御系４０に関する設計変数ρの適値ρ*を算出し、算出した適値ρ*を制御系４０に設定するように構成される。
【００２９】
設定システム１０は、観測器２０と、設定装置３０とを備える。観測器２０は、制御系４０における制御入力ｕと、制御入力ｕに対応する制御出力としての第一出力ｙm及び第二出力ｙfとを観測するように構成される。観測器２０は、観測に必要なセンサ類及び信号入力端子を備えることができる。観測器２０は、観測された制御入力ｕ、第一出力ｙm、及び第二出力ｙfの組合せについて、その時系列データを、標本データとして設定装置３０に入力するように構成される。
【００３０】
設定装置３０は、プロセッサ３１と、メモリ３３と、入出力インタフェース３５と、操作インタフェース３７とを備える。プロセッサ３１は、メモリ３３に記録されたプログラムに従う処理を実行することにより、制御系４０における設計変数ρの値を設定する。メモリ３３は、ＲＡＭ及びフラッシュメモリを含む。
【００３１】
具体的に、プロセッサ３１は、入出力インタフェース３５を通じて観測器２０から入力される上記標本データに基づいて、設計変数ρの適値ρ*を算出する。プロセッサ３１は、算出した適値ρ*を、入出力インタフェース３５を通じて制御系４０に設定する。
【００３２】
制御系４０は、指令器５０と、制御器６０と、観測器７０と、制御対象９０とを備える。この制御系４０は、セミクローズド制御系に対応する。指令器５０は、目標とする制御出力に対応する値を、目標指令ｒとして制御器６０に入力するように構成される。
【００３３】
制御器６０は、減算器６１と、主制御器６５とを備える。減算器６１は、目標指令ｒと観測器７０により観測された第一出力ｙmとの偏差ｅ＝ｒ−ｙmを算出するように構成される。観測器７０は、第一出力ｙmを観測するように構成される。観測器７０は、第一出力ｙmの観測に必要なセンサ類を備えることができる。
【００３４】
主制御器６５は、上記偏差ｅに対応する制御入力ｕを、設定された伝達関数Ｃ（ρ）に従って算出するように構成される（ｕ＝Ｃ（ρ）・ｅ）。伝達関数Ｃ（ρ）が有する設計変数ρの値は、設定システム１０により初期値から上記適値ρ*に更新される。制御系４０は、設定システム１０により設定された設計変数ρの値を保持するための記憶装置（図示せず）を備えることができる。制御器６０は、主制御器６５により算出された制御入力ｕで、制御対象９０を操作する。
【００３５】
制御対象９０は、第一制御要素９１と、伝達要素９３と、第二制御要素９５とを備える。第一制御要素９１は、上記制御入力ｕによって制御器６０により操作される。伝達要素９３は、第一制御要素９１の制御出力である第一出力ｙmに対応する作用を、第一制御要素９１から受けて、第二制御要素９５に伝達する。
【００３６】
第二制御要素９５は、上記第一出力ｙmに対応する作用を、第一制御要素９１から伝達要素９３を介して受けて動作する。これにより、第二制御要素９５は、第一出力ｙmに対応した動作を受動的に実行し、第二制御要素９５からは、第二制御要素９５の制御出力としての第二出力ｙfが得られる。
【００３７】
図２に示す制御対象９０Ａは、上述した制御対象９０の一例である。制御対象９０Ａは、第一制御要素９１としてモータ９１Ａを備え、第二制御要素９５として、モータ９１Ａからの動力を受ける負荷９５Ａを備える。負荷９５Ａは、モータ９１Ａにより駆動される機械として理解されてもよい。
【００３８】
この例において、制御器６０からの制御入力ｕは、駆動電流に対応する。モータ９１Ａは、例えば、制御入力ｕに対応した駆動電流で駆動されて回転する。第一出力ｙmとしてモータ９１Ａの回転量が観測される。
【００３９】
ボールねじモデルによれば、制御対象９０Ａは、モータ９１Ａから負荷９５Ａへの伝達要素として、ボールねじ構造に関する要素Ｒ，Ｋｔを備え、第一出力ｙmは、出力Ｋt・（Ｒ・ｙm−ｙf）に変換されて負荷９５Ａに伝達される。
【００４０】
負荷９５Ａは、この出力Ｋt・（Ｒ・ｙm−ｙf）に対応する作用を受けて動作し、変位する。第二出力ｙfは、負荷９５Ａの変位量に対応する。そして、モータ９１Ａは、制御器６０からの制御入力ｕと、出力Ｒ・Ｋt・（Ｒ・ｙm−ｙf）との偏差に対応した量だけ駆動される。
【００４１】
続いて、プロセッサ３１が制御系４０に設計変数ρの適値ρ*を設定するために実行する設定処理の詳細を説明する。プロセッサ３１は、設定指示が入力されると、図３に示す設定処理を実行する。設定指示は、例えば、操作インタフェース３７を通じて操作者から入力される。
【００４２】
プロセッサ３１は、設定指示が入力されると、標本データを観測器２０から取得する（Ｓ１１０）。プロセッサ３１は、入出力インタフェース３５を介して制御系４０に試験的な制御動作の実行を指示し、その試験的な制御動作により観測された制御入力ｕ、第一出力ｙm、及び第二出力ｙfの組合せの時系列データを、上記標本データとして観測器２０から取得することができる。あるいは、操作者が、制御系４０を直接操作して、制御系４０に試験的な制御動作を実行させてもよい。
【００４３】
試験的な制御動作において、指令器５０は、予め定められた目標指令ｒを制御器６０に入力することができる。例えば、図４において一点鎖線で示すように、目標指令ｒとして一定値ｒoを入力することができる。観測器２０は、この目標指令ｒが入力されたときの制御系４０の挙動を表す制御入力ｕ、第一出力ｙm、及び第二出力ｙfを観測し、その組合せの時系列データを標本データとして設定装置３０に提供することができる。以下では、標本データが示す各時刻の制御入力ｕ、第一出力ｙm、及び第二出力ｙfを、それぞれ順に制御入力ｕ0、第一出力ｙm0、及び第二出力ｙf0と表す。
【００４４】
その後、プロセッサ３１は、取得した標本データが示す各時刻の制御入力ｕ0、第一出力ｙm0、及び第二出力ｙf0を評価関数Ｊ（ρ）に代入したときに、評価関数Ｊ（ρ）を最小にする設計変数ρの値ρ*を、制御系４０に設定する設計変数ρの値ρ*として算出する（Ｓ１４０）。
【００４５】
評価関数Ｊ（ρ）は、次式に従う評価関数Ｊ１（ρ）であり得る。即ち、Ｓ１４０において、プロセッサ３１は、次の評価関数Ｊ１（ρ）を最小にする設計変数ρの値ρ*を算出することができる。
【００４６】
【数２】
2020004038.tif 000004
【００４７】
評価関数Ｊ１（ρ）は、関数Ｅf（ρ，ｕ0，ｙm0，ｙf0）のノルム、具体的にはＬ２ノルムに対応する。ここでノルム内の制御入力ｕ0、第一出力ｙm0、及び第二出力ｙf0は、それぞれ、各時刻の観測値を時系列で要素に含むベクトルである。目標応答伝達関数Ｔdは、目標応答として、目標指令ｒに対する第二出力ｙfの規範値ｙf*を定義するモデル関数Ｔdである。具体的に、規範値ｙf*は、次式に従って定義される。
【００４８】
【数３】
2020004038.tif 000005
【００４９】
設計変数ρは、この規範値ｙf*に対する誤差の少ない第二出力ｙfを実現可能な値に設定されることが好ましい。このために、評価関数Ｊ１（ρ）は、第二出力ｙfの制御誤差を評価するように構成される。具体的には、次式から理解できるように、観測された第二出力ｙf0と、設計変数ρに対応する第二出力ｙfの規範値ｙf*（ρ）との誤差を、制御誤差として算出するように構成される。
【００５０】
【数４】
2020004038.tif 000006
【００５１】
このように、評価関数Ｊ１（ρ）は、観測された各時刻の第二出力ｙf0と、その規範値ｙf*（ρ）との誤差の二乗和に対応する。従って、評価関数Ｊ１（ρ）が最小となる設計変数ρの値ρ*を算出することは、誤差の二乗和を最小にする設計変数ρの値ρ*を算出することに対応する。
【００５２】
設計変数ρは、単一の変数で定義されてもよいし、複数の変数ρ1，ρ2，…ρn（ｎは１以上の自然数）で定義されてもよい。評価関数Ｊ１（ρ）を最小にする値ρ*は、評価関数Ｊ１（ρ）がρ1，ρ2，…ρnの線形結合で表される場合、最小二乗法を用いて算出可能である。最小化問題に対する他の既知の解法が採用されてもよい。
【００５３】
上述した評価関数Ｊ１（ρ）は、ＦＲＩＴ技術を基礎とするものである。別例として、評価関数Ｊ（ρ）は、ＶＲＦＴ技術を基礎とする、次式に従う評価関数Ｊ２（ρ）であってもよい。即ち、Ｓ１４０において、プロセッサ３１は、次の評価関数Ｊ２（ρ）を最小にする設計変数ρの値ρ*を算出してもよい。
【００５４】
【数５】
2020004038.tif 000007
【００５５】
評価関数Ｊ２（ρ）は、関数Ｅv（ρ，ｕ0，ｙm0，ｙf0）のノルム、具体的にはＬ２ノルムに対応する。ここでノルム内のｕ0、ｙm0、ｙf0、及びＴdは、評価関数Ｊ１（ρ）と同様にベクトルである。評価関数Ｊ２（ρ）は、次式から理解できるように、観測された制御入力ｕ0と、設計変数ρに対応する制御入力ｕ0の規範値ｕ0*（ρ）との誤差を評価するように構成される。この評価関数Ｊ２（ρ）は、具体的に、観測された各時刻の制御入力ｕ0と、その規範値ｕ0*（ρ）との誤差の二乗和に対応する。
【００５６】
【数６】
2020004038.tif 000008
【００５７】
プロセッサ３１は、このようにして評価関数Ｊ、具体的には評価関数Ｊ１（ρ）又は評価関数Ｊ２（ρ）を最小にする設計変数ρの値ρ*を算出し（Ｓ１４０）、制御器６０における設計変数ρの値を、算出した値ρ*に更新する（Ｓ１５０）。これにより、設定装置３０は、第二出力ｙfを規範値ｙf*（目標応答）に精度よく制御可能な制御器６０を構成することができる。設定装置３０は、制御器６０における設計変数ρの値を更新した後、当該設定処理を終了する。
【００５８】
ここで、図２に示す制御対象９０Ａを、制御器６０の例としての図５Ａに示す位置−速度制御器６０Ａで制御する制御系に関する実験結果を説明する。図５Ａに示すように、制御器６０Ａは、主制御器６５として、位置に関する比例制御要素（利得Ｋp）と速度に関する比例制御要素（利得Ｋv）とを含む主制御器６５Ａを備える。図示される「ｄ／ｄｔ」は、時間微分要素に対応する。第一出力ｙmの時間微分は、モータ９１Ａの回転速度に対応する。
【００５９】
図４に示されるグラフは、実験で用いられた標本データに対応する。このグラフは、横軸を時間とするグラフであり、グラフに示される一点鎖線は、目標指令ｒに対応する。黒い破線は、標本データが示す第一出力ｙm0に対応し、白い破線は、標本データが示す第二出力ｙf0に対応する。
【００６０】
図６Ａは、このような波形を示す標本データに基づき、上記手法で値ρ*を算出し、主制御器６５Ａに、値ρ*を設定した後の、制御系の動作結果を示す。図６Ａから理解できるように、第二出力ｙfは、よく規範値（目標応答）Ｔdｒに合致している。図６Ａにおける一点鎖線は、目標指令ｒに対応し、黒い破線は、値ρ*が設定された後に観測された第一出力ｙmに対応し、白い破線は、値ρ*が設定された後に観測された第二出力ｙfに対応する。実線は、規範値Ｔdｒに対応する。
【００６１】
この実験では、具体的に次式に従う評価関数Ｊ１（ρ）が用いられた。ここで示すＦは、時間微分要素に対応する。
【００６２】
【数７】
2020004038.tif 000009
【００６３】
比較例として、図６Ｂには、本開示の技術ではなく、従来のＦＲＩＴ技術を用いて、図６Ａと同じ制御系の設計変数ρの値を更新したときの、制御系の動作結果を示す。従来のＦＲＩＴ技術は、フルクローズド制御系を想定した技術である。このため、第二出力ｙfではなく、第一出力ｙmが規範値Ｔdｒに合致するように、設計変数ρが調整される。
【００６４】
このように、従来技術では、セミクローズド制御系において、モータ９１Ａに駆動される負荷９５Ａの出力を適切に制御可能に、設計変数ρを調整することができなかった。従って、本開示の技術は、セミクローズド制御系における設計変数ρの調整に大変有意義である。
【００６５】
特に、本開示の技術は、第一出力ｙmと第二出力ｙfとの間に大きな差が生じる環境で有意義に機能する。この差が生じる一つの原因は、信号や動力の伝達遅延である。本開示の技術は、このような遅延が生じるセミクローズド制御系において有意義である。
【００６６】
伝達遅延が生じる制御系の例には、弾性材を介して搬送対象を搬送する機器が含まれる。図７に示される機器１００は、搬送対象１１０をキャリッジ１２０及びベルト搬送機構１３０を用いて搬送するように構成される。搬送対象１１０は、例えば、用紙を切断するカッターでありえる。搬送対象１１０は、インクジェットヘッドなどの記録ヘッドであってもよい。
【００６７】
この例によれば、ベルト搬送機構１３０は、ゴム製の無端ベルト１３１と、搬送ローラ１３３と、従動ローラ１３５とを備え、無端ベルト１３１は、搬送ローラ１３３と従動ローラ１３５との間に巻回されている。無端ベルト１３１は、モータ１５０からの動力を受けて搬送ローラ１３３が回転するとき、搬送ローラ１３３との接触面で、搬送ローラ１３３からの力の作用を受けて、搬送ローラ１３３と同期回転する。従動ローラ１３５は、無端ベルト１３１の回転に伴って従動回転する。
【００６８】
キャリッジ１２０は、この無端ベルト１３１に固定され、ガイドレール１４０に摺動するように配置される。これにより、キャリッジ１２０の移動方向は、ガイドレール１４０に平行な方向に制限され、キャリッジ１２０及び搬送対象１１０は、無端ベルト１３１が回転すると、ガイドレール１４０に平行な方向に移動する。
【００６９】
この機器１００によれば、モータ１５０が第一制御要素９１に対応し、搬送対象１１０あるいはキャリッジ１２０が第二制御要素９５に対応する。そして、伝達要素９３には、ベルト搬送機構１３０が含まれる。
【００７０】
この場合、搬送対象１１０及びキャリッジ１２０は、モータ１５０によりベルト搬送機構１３０を通じて搬送されるとき、無端ベルト１３１の弾性により、具体的には無端ベルト１３１の伸縮により、モータ１５０の動きに遅れて搬送される。このような動力の伝達遅延が生じ得る機器１００において、搬送対象１１０の位置及び速度を制御するとき、本開示の技術は、有意義に機能する。即ち、本開示の技術を機器１００に適用すると、モータ１５０に取り付けられたロータリエンコーダ１６０により観測される第一出力ｙmに基づくセミクローズド制御で、搬送対象１１０の位置及び速度を精度よく制御することができる。
【００７１】
ここで、図８Ａには、本開示の技術を適用して機器１００を制御する制御器６０Ｂの設計変数ρを適値ρ*に調整したときの第一出力ｙm、第二出力ｙf、及び、目標応答としての第二出力ｙfの規範値Ｔdｒの軌跡を、横軸を時間とするグラフに示す。制御器６０Ｂが備える主制御器６５Ｂは、図５Ｂに示すように、位置に関する比例制御要素（利得Ｋp）、及び、速度に関する比例積分制御要素（利得Ｋvp，Ｋvi）を含む。
【００７２】
図８Ａから理解できるように、この機器１００においても、第二出力ｙfが規範値Ｔdｒによく合致するように、制御器６０Ｂの設計変数ρを適切に調整することができる。図８Ｂには、本開示の技術を適用せず、従来技術を適用して、機器１００を制御する制御器６０Ｂの設計変数ρを調整したときの第一出力ｙm、第二出力ｙf、及び、第二出力ｙfの規範値Ｔdｒの軌跡を、横軸を時間とするグラフに示す。図８Ａ及び図８Ｂを比較すれば理解できるように、本実施形態によれば、従来技術よりも第二出力ｙfを精度よく制御することができる。
【００７３】
ところで、標本データを取得するために行われる制御系４０の試験的な制御動作は、適値ρ*を算出するために、第一出力ｙmと第二出力ｙfとの間に大きな差が生じる目標指令ｒを用いて行われるのが好ましい。具体的には、図４において斜線でハッチングされる領域の面積が大きくなるような目標指令ｒを用いて試験的な制御動作が行われるのが好ましい。このために、設計者は、最適な目標指令ｒを探索して、試験的な制御動作で用いる目標指令ｒを定義することができる。
【００７４】
［第二実施形態］
続いて、第二実施形態の設定システム１０を説明する。第二実施形態の設定システム１０は、プロセッサ３１が実行する設定処理が、図３に示す設定処理と部分的に異なる点を除いて第一実施形態と同じである。従って、以下では、第二実施形態の設定システム１０に関して、第一実施形態と同一の構成の説明を省略する。第一実施形態と同一符号が付された構成及び処理は、第一実施形態と同様であると理解されてよい。
【００７５】
本実施形態において、プロセッサ３１は、図３に示す設定処理に代えて、図９に示す設定処理を実行する。この設定処理において、プロセッサ３１は、第一実施形態と同様に、Ｓ１１０，Ｓ１４０，Ｓ１５０の処理を実行する。更に、Ｓ１１０の処理とＳ１４０の処理との間で、新たな処理Ｓ１２０，Ｓ１３０を実行する。
【００７６】
即ち、プロセッサ３１は、観測器２０から標本データを取得した後（Ｓ１１０）、取得した標本データの品質を評価する処理を実行する（Ｓ１２０）。品質評価は、設計変数ρの良好な値を算出可能であるかの観点で行われる。Ｓ１２０の処理の具体例として、プロセッサ３１は、標本データが示す第一出力ｙm0と第二出力ｙf0と差の評価値ｃ1を、Ｌ２ノルムを用いた次式に従って算出することができる（Ｓ１２１）。
【００７７】
【数８】
2020004038.tif 000010
【００７８】
評価値ｃ1は、各時刻の第一出力ｙm0と第二出力ｙf0との差の二乗和に対応し、その大小は、図４に示されるハッチング領域の面積の大小に対応する。即ち、評価値ｃ1は、その値が大きいほど、標本データの品質が高いことを意味する。
【００７９】
あるいは、プロセッサ３１は、上記評価値ｃ1に代えて、無限大ノルムを用いた次式に従う評価値ｃ2を算出してもよい。
【００８０】
【数９】
2020004038.tif 000011
【００８１】
Ｓ１２０では、この評価値ｃ1又は評価値ｃ2を用いて、標本データの品質を評価することができる。その後、プロセッサ３１は、標本データの品質が基準以上であるか否かを判断し（Ｓ１３０）、品質が基準以上であると判断した場合には（Ｓ１３０でＹｅｓ）、Ｓ１４０及びＳ１５０の処理を実行し、品質が基準未満であると判断した場合には（Ｓ１３０でＮｏ）、Ｓ１４０及びＳ１５０の処理を実行せずに、設定処理を終了する。
【００８２】
Ｓ１３０の具体例として、プロセッサ３１は、評価値ｃ1が予め定められた基準値以上であるか否かを判断することができる（Ｓ１３１）。あるいは、プロセッサ３１は、評価値ｃ2が予め定められた基準値以上であるか否かを判断することができる。
【００８３】
このようにして、プロセッサ３１は、評価値ｃ1又は評価値ｃ2が基準値以上である場合に限って、評価関数Ｊ（ρ）に基づいた設計変数ρの値ρ*の算出及び設定を行うことができる。換言すれば、プロセッサ３１は、評価値ｃ1又は評価値ｃ2が基準値未満である場合には、制御系４０の設計変数ρを更新しないように動作することができる。
【００８４】
第二実施形態におけるＳ１２０及びＳ１３０の処理は、特に制御系４０の試験的な制御動作がユーザの手動操作を介して行われ、標本データの品質を予測することができない場合に、有意義に機能する。
【００８５】
あるいは、第二実施形態では、試験的な制御動作のための目標指令ｒが複数用意されてもよく、プロセッサ３１は、複数の目標指令ｒの中から選択した目標指令ｒで試験的な制御動作を実行するように、制御系４０を指示して、標本データを取得してもよい（Ｓ１１０）。
【００８６】
この場合、プロセッサ３１は、品質が基準以上となる標本データが得られるまで、制御系４０が試験的な制御動作に用いる目標指令ｒを変更しながら、設定処理を繰返し実行することができる。これにより、制御系４０の設計変数ρを良好に更新可能である。
【００８７】
［第三実施形態］
続いて、第三実施形態の設定システム１０を説明する。第三実施形態の設定システム１０は、プロセッサ３１が実行する設定処理が、図３に示す設定処理と部分的に異なる点を除いて第一実施形態と同じである。従って、以下では、第三実施形態の設定システム１０に関して、第一実施形態と同一の構成の説明を省略する。
【００８８】
第三実施形態では、試験的な制御動作のための目標指令ｒが複数用意される。また、プロセッサ３１は、図３に示す設定処理に代えて、図１０に示す設定処理を実行する。この設定処理において、プロセッサ３１は、複数の目標指令ｒの中から選択した目標指令ｒで試験的な制御動作を実行するように、制御系４０を指示して、観測器２０から標本データを取得する動作を繰返し実行することにより、複数の目標指令ｒのそれぞれに対応する複数の標本データを取得する（Ｓ２１０）。即ち、制御条件としての目標指令ｒの異なる複数の標本データを取得する（Ｓ２１０）。
【００８９】
その後、プロセッサ３１は、複数の標本データのそれぞれの品質を評価する（Ｓ２２０）。Ｓ２２０では、複数の標本データのそれぞれに関して、第二実施形態と同様の評価値ｃ1を算出することができる。評価値ｃ1に代えて評価値ｃ2が算出されてもよい。
【００９０】
続くＳ２３０において、プロセッサ３１は、品質が最も高い標本データを、設計変数ρの適値ρ*の算出に用いる標本データに選択する（Ｓ２３０）。具体的に、プロセッサ３１は、Ｓ２２０で算出した評価値ｃ1が最大の標本データを選択することができる。あるいは、プロセッサ３１は、評価値ｃ2が最大の標本データを選択してもよい。
【００９１】
続くＳ２４０において、プロセッサ３１は、Ｓ２３０で選択した標本データが示す各時刻の制御入力ｕ0、第一出力ｙm0、及び第二出力ｙf0を評価関数Ｊ（ρ）に代入したときに、評価関数Ｊ（ρ）を最小にする設計変数ρの値ρ*を、制御系４０に設定する設計変数ρの適値ρ*として算出する（Ｓ２４０）。用いられる評価関数Ｊ（ρ）は、第一実施形態と同様である。そして、プロセッサ３１は、制御系４０の設計変数ρを、その算出値ρ*に更新する（Ｓ２５０）。
【００９２】
第三実施形態によれば、制御条件の異なる複数の標本データの中から、設計変数ρの適値ρ*の算出に最も優れた標本データを選び出し、選び出した標本データに基づき算出した適値ρ*を、制御系４０に設定するので、制御系４０の制御精度をより向上させることができる。
【００９３】
［その他の実施形態］
本開示は、上記の実施形態に限定されるものではなく、種々の態様を採ることができることは言うまでもない。例えば、第一制御要素９１と第二制御要素９５との組合せは、モータ９１Ａと負荷９５Ａとの組合せに限定されない。第一制御要素９１と第二制御要素９５との組合せは、電気回路と、電気回路からの電力供給を受ける、機械的な可動部を備えない電気機器との組合せであってもよい。例えば、第二制御要素９５は、ヒータであってもよく、第一制御要素は、ヒータの駆動回路であってもよい。本開示の技術は、あらゆるセミクローズド制御系に適用することができる。
【００９４】
この他、設定システム１０は、制御系４０を含む装置とは独立した装置として構成されてもよいし、制御系４０を含む装置の筐体内に組み込まれてもよい。後者の場合、設定システム１０は、定期的に制御系４０の設計変数ρを調整することが可能である。本開示の技術は、制御器６０の設計の場面、製品出荷の場面、製品のメンテナンスの場面を含む様々な場面で活用することができる。
【００９５】
上記実施形態における１つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、１つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。上記実施形態の構成の少なくとも一部は、他の上記実施形態の構成に対して付加又は置換されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【符号の説明】
【００９６】
１０…設定システム、２０…観測器、３０…設定装置、３１…プロセッサ、３３…メモリ、３５…入出力インタフェース、３７…操作インタフェース、４０…制御系、５０…指令器、６０，６０Ａ，６０Ｂ…制御器、６１…減算器、６５，６５Ａ，６５Ｂ…主制御器、７０…観測器、９０，９０Ａ…制御対象、９１…第一制御要素、９１Ａ…モータ、９３…伝達要素、９５…第二制御要素、９５Ａ…負荷、１００…機器、１１０…搬送対象、１２０…キャリッジ、１３０…ベルト搬送機構、１３１…無端ベルト、１３３…搬送ローラ、１３５…従動ローラ、１４０…ガイドレール、１５０…モータ、１６０…ロータリエンコーダ。
【図１】
2020004038.tif 000014
【図２】
2020004038.tif 000015
【図３】
2020004038.tif 000016
【図４】
2020004038.tif 000017
【図５】
2020004038.tif 000018
【図６】
2020004038.tif 000019
【図７】
2020004038.tif 000020
【図８】
2020004038.tif 000021
【図９】
2020004038.tif 000022
【図１０】
2020004038.tif 000023