(57)【特許請求の範囲】
【請求項１】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、
前記定値区間をその目標値の大小順に並べた際に隣り合う定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、
前記区画境界値によって定められる各区画に対応したＰＩＤ定数が記憶されている記憶部と、
前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、
前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、
を備えることを特徴とする制御装置。
【請求項２】
前記区画境界値の設定処理において、前記隣り合う定値区間の目標値の間に、予め設定されている比率情報に基づき、前記区画境界値を設定することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記区画境界値の設定処理において、前記隣り合う定値区間の目標値の平均値を前記区画境界値として設定することを特徴とする請求項１に記載の制御装置。
【請求項４】
区画分割最大数若しくは区画最小幅が前記記憶部に設定されており、
前記隣り合う定値区間の目標値の差分が、前記制御対象の制御範囲を前記区画分割最大数で割った値若しくは前記区画最小幅より小さかった場合には、当該隣り合う定値区間の目標値の間に前記区画境界値の設定を行わないことを特徴とする請求項１から３の何れかに記載の制御装置。
【請求項５】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、
前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該第１の定値区間に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、
前記区画境界値によって定められる各区画に対応したＰＩＤ定数と、前記区画分割最大数若しくは前記区画最小幅と、が記憶されている記憶部と、
前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、
前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、
を備えることを特徴とする制御装置。
【請求項６】
前記第２の定値区間が存在しない場合、前記２つの定値区間の目標値の間となる値を区画境界値として設定することを特徴とする請求項５に記載の制御装置。
【請求項７】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、
前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該２つの定値区間の内の他方の定値区画に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、
前記区画境界値によって定められる各区画に対応したＰＩＤ定数と、前記区画分割最大数若しくは前記区画最小幅と、が記憶されている記憶部と、
前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、
前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、
を備えることを特徴とする制御装置。
【請求項８】
前記区画境界値の設定処理において、前記第１及び第２の定値区間の目標値の間に、予め設定されている比率情報に基づき、前記区画境界値を設定することを特徴とする請求項５から７の何れかに記載の制御装置。
【請求項９】
前記区画境界値の設定処理において、前記第１及び第２の定値区間の目標値の平均値を前記区画境界値として設定することを特徴とする請求項５から７の何れかに記載の制御装置。
【請求項１０】
前記定値区間をその目標値の大小順に並べた際に１番目と２番目となる定値区間を取得し、当該１番目と２番目の定値区間の目標値の差分の如何に関わらず、当該１番目と２番目の定値区間の目標値の間となる値を区画境界値として設定することを特徴とする請求項５から９の何れかに記載の制御装置。
【請求項１１】
前記区画内に存在する前記目標値を使用してオートチューニングを行うことにより、前記区画に対応するＰＩＤ定数の算出を行うオートチューニング部を備えることを特徴とする請求項１から１０の何れかに記載の制御装置。
【請求項１２】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、
演算部において、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、
前記定値区間をその目標値の大小順に並べた際に隣り合う定値区間の目標値の間となる値を区画境界値として設定するステップと、
前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、
前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、
を実行させることを特徴とする制御プログラム。
【請求項１３】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、
演算部において、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、
前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該第１の定値区間に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定するステップと、
前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、
前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、
を実行させることを特徴とする制御プログラム。
【請求項１４】
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、
演算部において、
前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、
前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該２つの定値区間の内の他方の定値区画に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定するステップと、
前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、
前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、
を実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＩＤ演算による操作量の算出を行う制御装置及び制御プログラムに関する。
【背景技術】
【０００２】
各種の制御対象の制御（例えばヒータの温度制御等）において、ＰＩＤ制御が広く利用されている。
ＰＩＤ制御では、制御対象の特性などに応じたＰＩＤ定数が設定されて使用される。ここで、制御対象の特性が、制御範囲に応じて変化するような場合、これに応じてＰＩＤ定数も最適化されることが望ましい。これに対応するものとして、制御範囲を複数の区画に分け、区画ごとに異なるＰＩＤ定数を使用してＰＩＤ制御を行う技術がある。
このようなＰＩＤ制御に関する従来技術が、特許文献１によって開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平２−２５９８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、予め制御範囲を複数の区間に分割し、各区間に対応するＰＩＤ定数がオートチューニングによって設定されている。これにより、制御対象の目標値が複数設定されているプログラムパターンに基づいてＰＩＤ制御をする際に、各区間に対応するＰＩＤ定数が選択されるものである。
特許文献１によれば、プログラムパターンのステップ毎にＰＩＤの設定をする必要が無く、使用者にかかる負担を軽減できるとされている。
しかしながら、制御範囲を複数の区間に分割する設定作業は、使用者によって行われる必要があり、この点で煩雑なものであった。【０００５】
本発明は、上記の点に鑑み、制御範囲を複数の区画に分け、区画ごとに異なるＰＩＤ定数を使用してＰＩＤ制御を行う制御装置及び制御プログラムであって、設定作業のより一層の簡便化が図られた制御装置及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
（構成１）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、前記定値区間をその目標値の大小順に並べた際に隣り合う定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、前記区画境界値によって定められる各区画に対応したＰＩＤ定数が記憶されている記憶部と、前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、を備えることを特徴とする制御装置。【０００７】
（構成２）
前記区画境界値の設定処理において、前記隣り合う定値区間の目標値の間に、予め設定されている比率情報に基づき、前記区画境界値を設定することを特徴とする構成１に記載の制御装置。【０００８】
（構成３）
前記区画境界値の設定処理において、前記隣り合う定値区間の目標値の平均値を前記区画境界値として設定することを特徴とする構成１に記載の制御装置。【０００９】
（構成４）
区画分割最大数若しくは区画最小幅が前記記憶部に設定されており、前記隣り合う定値区間の目標値の差分が、前記制御対象の制御範囲を前記区画分割最大数で割った値若しくは前記区画最小幅より小さかった場合には、当該隣り合う定値区間の目標値の間に前記区画境界値の設定を行わないことを特徴とする構成１から３の何れかに記載の制御装置。【００１０】
（構成５）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該第１の定値区間に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、前記区画境界値によって定められる各区画に対応したＰＩＤ定数と、前記区画分割最大数若しくは前記区画最小幅と、が記憶されている記憶部と、前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、を備えることを特徴とする制御装置。【００１１】
（構成６）
前記第２の定値区間が存在しない場合、前記２つの定値区間の目標値の間となる値を区画境界値として設定することを特徴とする構成５に記載の制御装置。【００１２】
（構成７）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御装置であって、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部と、前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該２つの定値区間の内の他方の定値区画に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部と、前記区画境界値によって定められる各区画に対応したＰＩＤ定数と、前記区画分割最大数若しくは前記区画最小幅と、が記憶されている記憶部と、前記制御対象の測定値が何れの前記区画に対応しているかを判別し、当該判別された区画に対応付けられている前記ＰＩＤ定数を選択するＰＩＤ定数選択部と、前記ＰＩＤ定数選択部によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部と、を備えることを特徴とする制御装置。【００１３】
（構成８）
前記区画境界値の設定処理において、前記第１及び第２の定値区間の目標値の間に、予め設定されている比率情報に基づき、前記区画境界値を設定することを特徴とする構成５から７の何れかに記載の制御装置。【００１４】
（構成９）
前記区画境界値の設定処理において、前記第１及び第２の定値区間の目標値の平均値を前記区画境界値として設定することを特徴とする構成５から７の何れかに記載の制御装置。【００１５】
（構成１０）
前記定値区間をその目標値の大小順に並べた際に１番目と２番目となる定値区間を取得し、当該１番目と２番目の定値区間の目標値の差分の如何に関わらず、当該１番目と２番目の定値区間の目標値の間となる値を区画境界値として設定することを特徴とする構成５から９の何れかに記載の制御装置。【００１６】
（構成１１）
前記区画内に存在する前記目標値を使用してオートチューニングを行うことにより、前記区画に対応するＰＩＤ定数の算出を行うオートチューニング部を備えることを特徴とする構成１から１０の何れかに記載の制御装置。【００１７】
（構成１２）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、演算部において、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、前記定値区間をその目標値の大小順に並べた際に隣り合う定値区間の目標値の間となる値を区画境界値として設定するステップと、前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、を実行させることを特徴とする制御プログラム。【００１８】
（構成１３）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、演算部において、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該第１の定値区間に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定するステップと、前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、を実行させることを特徴とする制御プログラム。【００１９】
（構成１４）
制御対象の目標値が複数設定されたプログラムパターンと、前記制御対象の測定値とに基づいてＰＩＤ演算による操作量の算出を行う制御プログラムであって、演算部において、前記プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別するステップと、前記定値区間をその目標値の大小順に並べた際に、前記定値区間の目標値の差分が、前記制御対象の制御範囲を区画分割最大数で割った値若しくは区画最小幅より大きい組み合わせとなる２つの定値区間を判別し、当該２つの定値区間の内の一方の定値区画である第１の定値区間と、当該２つの定値区間の内の他方の定値区画に次ぐ目標値を有する第２の定値区間を取得し、当該取得した第１及び第２の定値区間の目標値の間となる値を区画境界値として設定するステップと、前記制御対象の測定値が、前記区画境界値によって定められる各区画の何れに対応しているかを判別し、前記各区画に対応したＰＩＤ定数が記憶されている記憶部から、前記判別された区画に対応付けられている前記ＰＩＤ定数を取得するステップと、前記取得されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うステップと、を実行させることを特徴とする制御プログラム。
【発明の効果】
【００２０】
本発明の制御装置及び制御プログラムによれば、制御範囲を複数の区画に分けるための区画境界値が自動的に設定されるため、区画ごとに異なるＰＩＤ定数を使用するＰＩＤ制御において、設定作業のより一層の簡便化が図られる。
【図面の簡単な説明】
【００２１】
【図１】本発明にかかる実施形態の温度制御装置の構成の概略を示すブロック図
【図２】実施形態における区画境界値の設定の処理動作の概略を示すフローチャート
【図３】実施形態におけるオートチューニングの処理動作の概略を示すフローチャート
【図４】実施形態におけるＰＩＤ制御の処理動作の概略を示すフローチャート
【図５】プログラムパターンの一例を示す図
【図６】区画境界値の設定の処理動作の別の例の概略を示すフローチャート
【図７】区画境界値の設定の処理動作の別の例の概略を示すフローチャート
【図８】プログラムパターンの別の例を示す図
【発明を実施するための形態】
【００２２】
以下、本発明の実施態様について、図面を参照しながら具体的に説明する。なお、以下の実施態様は、本発明を具体化する際の一形態であって、本発明をその範囲内に限定するものではない。
【００２３】
図１は、本発明に係る実施形態の温度制御装置の構成の概略を示すブロック図である。
本実施形態の温度制御装置１は、制御対象２の温度を制御するための装置であり、ここではヒータ２１によって加熱される温度制御対象２２の温度を制御するものを例として説明する。
温度制御装置１は、目標値が複数設定されたプログラムパターンと、制御対象の測定値とに基づくＰＩＤ制御によって、制御対象２の温度を制御するものである。“制御対象の測定値”とは、温度測定部２３によって測定される温度制御対象２２の温度情報である。
温度制御装置１は、その大まかな構成として、演算部１１と、記憶部１２と、入力部１３を備えている。
【００２４】
演算部１１は、プログラムパターンに含まれる目標値が一定値に保たれる定値区間を判別する定値区間判別部１１５と、定値区間の目標値の間となる値を区画境界値として設定する区画境界値設定部１１１と、制御対象２の測定値が何れの区画に対応しているかを判別し、当該判別された区画に対応付けられているＰＩＤ定数を選択するＰＩＤ定数選択部１１２と、ＰＩＤ定数選択部１１２によって選択されたＰＩＤ定数を用いて、ＰＩＤ演算による操作量の算出処理を行うＰＩＤ演算部１１３と、区画内に存在する目標値を使用してオートチューニングを行うことにより、各区画に対応するＰＩＤ定数の算出を行うオートチューニング部１１４と、を備えている。
なお、図１では機能ごとに構成を分けて記載しているが、必ずしもハード的にこれらの構成に分かれていることを示すものではなく、例えば、演算部１１がＰＬＣ、ＭＣＵ、マイコン等の周知のデバイスを用いて構成されて各構成がソフトウェア的に実装されるものであってもよい。以下で説明するように、本実施形態では各構成がソフトウェア的に実装されるものを例としている。もちろん各構成がハード的に構成されるものであってよく、例えばＦＰＧＡ等を利用して構成されるものや、ＡＳＩＣなどによって専用のハードとして構成されるもの等であってもよい。
【００２５】
記憶部１２には、ユーザによって設定されるプログラムパターンや、以下で説明する処理によって得られる「区画境界値によって定められる各区画に対応したＰＩＤ定数」が記憶されている。
入力部１３は、ユーザによって設定されるプログラムパターン等の入力を受けるものであり、例えば、ユーザが設定作業を行う操作部や、外部装置からデータの入力を受ける受信部等によって構成される。
【００２６】
上述したごとく、本実施形態の温度制御装置１は、設定されたプログラムパターンに従って、制御対象２の温度を制御するものである。
図５には、プログラムパターンの一例を示した。図５では、目標温度（目標値）が一定に保たれる定値区間として、ＣＶ１〜ＣＶ７が設定されたプログラムパターンＰＰを例としている。温度制御装置１は、温度制御対象２２の温度がプログラムパターンＰＰの通りに推移するように、ヒータ２１の出力を制御するものである。当該制御は、プログラムパターンＰＰの目標値（目標温度）と、温度測定部２３から得られる測定値との差分に基づくＰＩＤ制御によって行われる。
当該ＰＩＤ制御においては、予め設定されたＰＩＤ定数を使用した演算が行われるが、図５において“入力レンジ範囲”として示されている制御範囲全体に対して、１組のＰＩＤ定数のみで最適化された処理とすることは難しい。温度上昇と共に制御対象２の特性が変化するため、これに応じてＰＩＤ定数も最適化させる必要がある。そこで、制御範囲を複数の区画に分割し、それぞれの区画に適したＰＩＤ定数を設定することが行われる。
本実施形態の温度制御装置１は、当該区画の分割やＰＩＤ定数の設定、及びこれに基づくＰＩＤ制御において特徴を有するものである。以下、当該特徴に関する温度制御装置１の処理動作について、図２〜４のフローチャートを参照しつつ説明する。
なお、図２〜４の処理は、必要に応じて記憶部１２にデータを読み書きしつつ、演算部１１によって実行されるものである。即ち、ここでは、区画境界値設定部１１１、ＰＩＤ定数選択部１１２、ＰＩＤ演算部１１３、オートチューニング部１１４、定値区間判別部１１５が、ソフトウェア的に実装されるものを例としている。
【００２７】
図２は、制御範囲を複数の区画に分割するための閾値となる区画境界値（図５のＴｈ１〜Ｔｈ３）を算出、設定する処理の概略を示すフローチャートである。
先ず、ステップ２０１において、記憶部１２に設定されているプログラムパターンＰＰから、各目標値を取得して、目標値が一定に保たれる定値区間を取得し、各定値区間を、その目標値の昇順にソートする。定値区間の取得は、目標値が所定期間一定に保たれる区間（即ち、プログラムパターンＰＰにおける傾きがゼロの区間）を判別するものである。“所定期間”は、設計思想に基づいて任意に定められるものであってよい。
図５の例に基づけば、定値区間としてＣＶ１〜ＣＶ７が取得され、「定値区間ＣＶ１、ＣＶ２、ＣＶ７、ＣＶ６、ＣＶ３、ＣＶ４、ＣＶ５」の順番に並び替えられることになる。なお、目標値が同一の定値区間が複数あった場合には、これをまとめて１つとして扱う。本実施形態では昇順に並べるものを例としているが降順としても構わない（大小順にしているものとして概念は同一）。
【００２８】
ステップ２０２では、ステップ２０１でソートされた定値区間のうち、１番目と２番目となる定値区間を取得し、当該１番目と２番目の定値区間の目標値の平均値を区画境界値として設定する処理を行う。以下の処理においては、定値区間の目標値の差分が所定値以上となる場合に平均値を区画境界値として設定する処理としているが、１番目と２番目の定値区間については、その目標値の差分の如何に関わらず、区画境界値として設定する処理としている。
図５の例においては、定値区間ＣＶ１とＣＶ２の目標温度の平均値（定値区間ＣＶ１とＣＶ２の目標値の中間の値）が、区画境界値Ｔｈ１として設定される。
これは、１番目の定値区間の目標値のレベルが高いような場合に、図５の例における区画１の幅が大きくなり過ぎることを低減するためのものである。なお、当該ステップ２０２の代わりに、制御範囲（図５の入力レンジ範囲）の下限値を定値区間として扱ってステップ２０１のソート処理を行い（制御範囲の下限値が１番目の定値区間となる）、以下で説明する処理を実行させてもよい。これにより、上記のステップ２０２と同種の目的を果たすことができる。ここでは値の小さなものから処理をするものを例としているため、制御範囲の下限値を定値区間として扱うことになるが、値の大きなものから処理をする場合には、制御範囲の上限値を定値区間として扱うものとなる。
【００２９】
続くステップ２０３では、変数ｉに２を代入する処理（初期化）を行う。
【００３０】
ステップ２０３に続く、ステップ２０４〜２１１のループ処理は、各定値区間の目標値（目標温度）の間にそれぞれ区画境界値を設定するための処理である。
【００３１】
ステップ２０４では、変数ｊに１を代入する処理（初期化）を行う。
ステップ２０５〜２０７の処理は、区画の分割が細かくなり過ぎないようにするための処理である。
ステップ２０５では、ｉ番目の定値区間の目標値と、ｉ＋ｊ番目の定値区間の目標値との差分が所定値より小さいか否かを判別する処理を行う。最初の処理ではｉ＝２、ｊ＝１であり、２番目の定値区間の目標値と３番目の定値区間の目標値の差分について判別する。図５の例においては、定値区間ＣＶ２の目標温度と、定値区間ＣＶ７の目標温度の差分を所定値と比較する処理となる。
“所定値”は、区画の分割が細かくなり過ぎないようにするための設定値であり、予め設定されて記憶部１２に記憶されているものである。本実施形態では、区画の分割数の最大値（区画分割最大数）が定められており、制御範囲（図５における“入力レンジ範囲”）を区画分割最大数で割った値を“所定値”とする。
ステップ２０５〜２０７の繰返し処理は、ｉ番目の定値区間の目標値とｉ＋ｊ番目の定値区間の目標値との差分が所定値より小さかった場合には、ｊをインクリメントして、再度ステップ２０５の判別を行うものである（ステップ２０５：Ｙｅｓ→ステップ２０６、２０７→ステップ２０５）。
ステップ２０５〜２０７の繰返し処理は、目標値の間隔が所定値以上となるまで繰り返される。具体的には、２番目と３番目の目標値の差分→２番目と４番目の目標値の差分→２番目と５番目の目標値の差分・・・と繰り返していき、目標値の間隔が所定値以上となった際に、ステップ２０８へと移行するものである。
即ち、ステップ２０５〜２０７の繰返し処理により、間隔が所定値以上となる定値区間のペアが判別されることになる。図５の例では、先ず、定値区間ＣＶ２と定値区間ＣＶ７の目標温度の差分を所定値と比較し、次に、定値区間ＣＶ２と定値区間ＣＶ６の目標温度の差分が所定値と比較され、これが所定値を超えるため、ここでステップ２０８へと移行する。
この繰返し処理中のステップ２０６では、ｉ＋ｊが定値区間の数に達したか否かの判別を行い、“定値区間の数”に達した場合には、ループを抜けて処理を終了させる（ステップ２０６：Ｙｅｓ→エンド）。当該ステップ２０６の処理は、ｉ番目の定値区間に対して、目標値の差分が所定値より大きくなるｉ＋ｊ番目の定値区間が存在しない場合に処理を終了するものである。なお、“定値区間の数”は、ステップ２０１において昇順にソートされた定値区間の数である。即ち、目標値が同一の定値区間が複数あった場合には、実際の定値区間の数よりも少ない値となる。
【００３２】
ステップ２０８では、ｉ＋ｊが定値区間の数に達したか否かの判別（ステップ２０６と同様の処理）を行い、“定値区間の数”に達していない場合にはステップ２０９へ移行し、“定値区間の数”に達していた場合にはステップ２０４〜２１１のループ処理を抜けてステップ２１２へ移行する。
【００３３】
ｉ＋ｊが“定値区間の数”に達していない場合のステップ２０９では、ｉ＋ｊ番目の定値区間の目標値と、ｉ＋（ｊ＋１）番目の定値区間の目標値の平均値を区画境界値として記憶部１２に記憶する処理を行う。
ｉ＋ｊ番目の定値区間は、ステップ２０５〜２０７の処理によって取得された、目標値の間隔が所定値以上となる定値区間のペアの一方である（前述の図５の例では定値区間ＣＶ６）。ｉ＋（ｊ＋１）番目の定値区間は、ｉ＋ｊ番目の定値区間に次ぐ目標値を有する定値区間（前述の図５の例では定値区間ＣＶ３）である。即ち、前述の図５の例では、定値区間ＣＶ６とＣＶ３の目標温度の平均値が、区画境界値Ｔｈ２として設定される。なお、ｉ＋ｊ番目の定値区間の目標値と、ｉ＋（ｊ＋１）番目の定値区間の目標値の平均値とは、即ち、両目標値の真ん中の値である。
【００３４】
ステップ２１０では変数ｉをｉ＋（ｊ＋１）の値とし、続くステップ２１１では、ｉが定値区間の数に達したか否かの判別を行う。ｉが定値区間の数に達していなかった場合には、ステップ２０４へと戻って上記処理を繰り返し、ｉが定値区間の数に達していた場合には、処理を終了する。ｉが定値区間の数に達した場合、それ以上の繰り返し（ステップ２０４〜２１１の処理）は必要ないためである。
【００３５】
ステップ２０８での判別の結果、“定値区間の数”に達していた場合、“目標値の間隔が所定値以上となる定値区間のペア（ｉ番目の定値区間とｉ＋ｊ番目の定値区間）”が存在し、且つ、“ｉ＋ｊ番目の定値区間に次ぐ目標値を有する定値区間”が存在しない場合を意味する。
この場合、ｉ＋ｊ番目の定値区間の目標値とｉ＋（ｊ＋１）番目の定値区間の目標値の平均値を区画境界値とすること（ステップ２０９の処理）ができない。しかしながら、“目標値の間隔が所定値以上となる定値区間のペア”が存在しているため、区画境界値を設定する方が好ましい。
ステップ２１２はこのような場合に区画境界値を設定するための処理である。
ステップ２０８での判別の結果、“定値区間の数”に達していた場合、ステップ２１２へ移行し、ｉ＋（ｊ−１）番目の定値区間の目標値と、ｉ＋ｊ番目の定値区間の目標値の平均値を区画境界値として記憶部１２に記憶する処理を行う。ステップ２１２の処理が終わったら、処理を終了する。
図５の例では、定値区間ＣＶ６とＣＶ３の目標温度の平均値が区画境界値Ｔｈ２として設定された（ステップ２０９）後、ステップ２１０、２１１を経てステップ２０４へと移行し、続くステップ２０５〜２０７において定値区間ＣＶ３に対して所定値以上の差分を有する定値区間ＣＶ５が判別され、ステップ２０８へ移行する。
この際のステップ２０８の判別結果はＹｅｓとなり、ステップ２１２へと移行し、定値区間ＣＶ４とＣＶ５の目標温度の平均値が区画境界値Ｔｈ３として設定される。
なお、ここでは、ｉ＋（ｊ−１）番目の定値区間の目標値と、ｉ＋ｊ番目の定値区間の目標値の平均値を区画境界値とするものを例としたが、ｉ番目の定値区間の目標値と、ｉ＋ｊ番目の定値区間（図５の例では、定値区間ＣＶ３とＣＶ５）の目標値の間となる値を区画境界値とするものであればよい。
【００３６】
以上のごとく、図２の処理により、制御範囲を複数の区画に分けるための区画境界値が自動的に設定される。即ち、区画分けの設定が自動的に行われるものである。
また、ステップ２０４〜２１１の処理によって、“所定値”の範囲内に区画境界値が設定されることが抑止されるため、区画の分割が細かくなり過ぎることが抑止される。以下で説明するように、分割された区画ごとに対応するＰＩＤ定数が設定され、制御対象の温度状況に適したＰＩＤ定数が使用されるものであるが、区画の分割が細かくなり過ぎると、無駄にＰＩＤ定数が細かく設定され、ＰＩＤ制御において無駄にＰＩＤ定数の切り替えが行われる等、処理が非効率になるが、上記処理によれば当該問題が抑止されるものである。
なお、ここでは“所定値”の例として、制御範囲を区画分割最大数で割った値を使用するものを例としたが、より直接的に、区画の幅としての最小値（区画最小幅）を“所定値”として設定しておくものであってもよい。また、制御対象の特性が、制御範囲のある範囲においてあまり変わらないことがわかっているような場合、即ち、ＰＩＤ定数を変更する必要がない範囲がある場合には、当該範囲部分については区画境界値の設定が行われないように処理するものであってもよい。この場合、区画境界値の設定を行わない範囲を予め設定しておき、目標値が当該範囲内である場合には、ステップ２０９やステップ２１２をスキップする処理とすればよい。
【００３７】
次に図３を参照しつつ、分割された各区画に対してＰＩＤ定数を設定する処理について説明する。区画は上記説明した図２の処理によって得られた区画境界値によって定められる。図５の例においては、区画境界値Ｔｈ１〜３によって区画１〜４が定められている。
図３の処理は、ステップ３０１〜３０４の処理を、すべての区画に対して順番に繰り返し実行するものである。なおここの例では、各区画を昇順（温度の低い区画から高い区画へ向かって順番）に処理するものを例としている。制御対象がヒータのごとく加熱をするものである場合、このような順番とすることで効率に優れるものである。例えば制御対象が冷却をするような場合には、降順とすることが好ましいものであり、各制御対象に応じて適した処理順とすればよい。
【００３８】
ステップ３０１、３０２の処理は、ＰＩＤ定数を自動算出するオートチューニングに使用する目標値を定めるための処理である。
先ずステップ３０１では、区画内に、定値区間が複数含まれているか否かを判別する。図５の例によれば、最初の区画１内には定値区間ＣＶ１の１つしかないため、ステップ３０２をスキップしてステップ３０３へと移行する処理となる（ステップ３０１：Ｙｅｓ→ステップ３０３）。
一方、区画内に定値区間が複数含まれていた場合には、当該区画内に含まれる定値区間の内、区画の中心の値に最も近い目標値を取得する処理を行う（ステップ３０１：Ｎｏ→ステップ３０２）。図２で説明したように、区画の分割が細かくなり過ぎることを抑止するために、区画に所定値以上の幅を設ける処理としているため、区画内に複数の定値区間が含まれている場合がある。ステップ３０１、３０２の処理は、このような場合において、オートチューニングに使用する目標値を、区画の中心の値に最も近い目標値を有する定値区間の目標値にしているものである。
区画の中心の値に最も近いものを使用することにより、区画内に複数の目標値が分散してあるような場合においても、比較的適応度が高いＰＩＤ定数を得られることが期待できる。即ち、例えば、区画の下限付近の目標値に対してＰＩＤ定数を最適化した場合、区画の上限付近の目標値に対するＰＩＤ制御においてこれを使用すると、制御対象に合った適切なＰＩＤ定数にならないおそれもある。オートチューニングに使用する目標値を、区画の中心の値に最も近い目標値を有する定値区間の目標値とすることにより、このような問題が低減され得るものである。
【００３９】
ステップ３０３では、区画内に含まれた定値区間の目標値（複数ある場合には、区画の中心の値に最も近い目標値）を使用して、オートチューニングによりＰＩＤ定数を自動算出する。
なお、オートチューニングについては、利用できる任意のオートチューニングを用いることができる。オートチューニング機能自体については、本発明と直接的に関係するものではないため、ここでの説明を省略する。
【００４０】
ステップ３０４では、ステップ３０３で得られたＰＩＤ定数を、該当する区画に対応づけして記憶部１２に記憶する。
【００４１】
ステップ３０１〜３０４の処理を、すべての区画に対して行ったら、処理を終了する。
以上のごとく、図３の処理により、分割された各区画に対応するＰＩＤ定数が自動的に設定される。
【００４２】
次に、制御対象２の温度制御を行う処理のうち、本発明に関する部分を、図４を参照しつつ説明する。
【００４３】
先ず、ステップ４０１では、温度測定部２３によって測定される温度制御対象２２の温度が、どの区画に属するかを判別し、当該区画に対応するＰＩＤ定数を記憶部１２から取得する処理を行う。
ステップ４０２では、当該取得したＰＩＤ定数を使用して、プログラムパターン（目標温度）と、温度測定部２３によって得られる温度制御対象２２の測定温度の差分に基づいて、ＰＩＤ演算を行い、これによって得られる操作量に基づいてヒータ２１の出力を制御する。
【００４４】
ステップ４０２による温度制御が実行される中で、温度測定部２３によって測定される温度制御対象２２の温度が、区画境界値を超えた場合、即ち、別の区画に入った場合には、ステップ４０１へと移行して上記の処理を繰り返す（ステップ４０３：Ｙｅｓ→ステップ４０１）。これにより、各区画ごとに設定されているＰＩＤ定数を使用したＰＩＤ制御が行われるものである。
【００４５】
プログラムパターンに応じた温度制御が終了したら、処理を終了する（ステップ４０３：Ｙｅｓ→終了）。
【００４６】
以上のごとく、本実施形態の温度制御装置１によれば、制御範囲の区画分けの設定が自動的に行われ、当該各区画に対応するＰＩＤ定数の算出及び設定が自動的に行われる。従って、設定作業のより一層の簡便化が図られるものである。
【００４７】
図６には、制御範囲を複数の区画に分割するための閾値となる区画境界値を算出、設定する処理の別の例を示した。
図６の処理では、図２に対し、ステップ２０９´と、ステップ２１２´において異なる処理となっている。
【００４８】
図６のステップ２０９´では、ｉ番目とｉ＋（ｊ＋１）番目の定値区間の目標値の平均値を算出し、これを区画境界値として設定する処理としている。
図５の例において、図２のステップ２０９の処理では、ｉ番目の定値区間がＣＶ２である場合、これとのペアとしてはＣＶ６が取得されており、ＣＶ６とＣＶ３の目標値の平均が区画境界値として設定される。
これに対し、図６のステップ２０９´の処理では、ｉ番目の定値区間がＣＶ２である場合、これとのペアとしてＣＶ６が取得されている点では同様であるが、ＣＶ２とＣＶ３の目標値の平均が区画境界値として設定されるものである。
【００４９】
図６のステップ２１２´も同趣旨であり、ｉ番目とｉ＋ｊ番目の定値区間の目標値の平均値が区画境界値として設定される処理となる。
図５の例において、図２のステップ２１２の処理では、ｉ番目の定値区間がＣＶ３である場合、これとのペアとしてはＣＶ５が取得されており、ＣＶ４とＣＶ５の目標値の平均が区画境界値として設定される。
これに対し、図６のステップ２１２´の処理では、ｉ番目の定値区間がＣＶ３である場合、これとのペアとしてＣＶ５が取得されている点では同様であるが、ＣＶ３とＣＶ５の目標値の平均が区画境界値として設定されるものである。
【００５０】
図７には、制御範囲を複数の区画に分割するための閾値となる区画境界値を算出、設定する処理のさらに別の例を示した。
ステップ７０１は、図２のステップ２０１と同様である。
ステップ７０１に続くループ処理は、各定値区間の目標値（目標温度）の間にそれぞれ区画境界値を設定するための処理である。
ステップ７０２では、変数ｊに１を代入する処理（初期化）を行う。なお、図では簡略化した記載としているが、変数ｉにも１が代入され、ｉが“定値区間の数−１”になるまでループ内のステップ７０２〜７０７の処理が繰り返されるものである。
【００５１】
ステップ７０３〜７０５の処理は、図２のステップ２０５〜２０７の処理と同様である。
ステップ７０６では、ステップ７０３〜７０５の処理によって取得された、目標値の間隔が所定値以上となる定値区間のペアであるｉ番目の定値区間とｉ＋ｊ番目の定値区間の目標値の平均値を算出する。当該算出された平均値を、区画境界値として記憶部１２に記憶する。即ち、定値区間をその目標値の大小順に並べた際に隣り合う定値区間の目標値の間となる値（ここでは平均値）を区画境界値として設定するものである。
図８のプログラムパターンの例において、ステップ７０３〜７０５の処理によって定値区間ＣＶ４と定値区間ＣＶ１が取得された場合、これらの目標温度の平均値が区画境界値Ｔｈ１として設定されるものである。
【００５２】
ステップ７０７では変数ｉをｉ＋ｊの値とする。
ｉが“定値区間の数−１”になるまでステップ７０２〜７０７の処理を繰り返し、“定値区間の数−１”での処理が終わったら、処理を終了する。
【００５３】
なお、本実施形態では、制御装置の一例として温度制御装置について説明をしているが、本発明をこれに限るものでは無く、目標値が複数設定されたプログラムパターンに基づいてＰＩＤ制御を行う各種の制御装置に対して適用することができる。
【００５４】
本実施形態では、区画境界値の設定処理において、２つの目標値の平均値を区画境界値として設定する処理（図２ステップ２０９等）としているが、区画境界値は、２つの目標値の間の任意の値とすることができる。例えば、２つの目標値の間の値をランダムで自動生成して区画境界値とするものや、予め設定されている比率情報に基づいて区画境界値を設定するもの等であっても構わない。“予め設定されている比率情報”は、装置にデフォルトとして予め設定されるものや、ユーザによって設定されるものである。比率情報としては例えば６０％というような情報であり、２つの目標値の間の６０％の位置となるように区画境界値を設けるものである。本実施形態は、比率情報として５０％が設定されているのと同じ結果となる。装置のデフォルトとしては５０％（本実施形態と同じ動作）としておき、ユーザからの比率情報の設定があった場合にはその設定に従って動作させるようにしてもよい。
本実施形態のごとく、２つの目標値の平均値を区画境界値として設定すること（比率情報を５０％に設定と同じ）により、ＰＩＤ定数の無駄な切り替えが起こることが低減され、処理の効率性に優れる。例えば、図８において、区画境界値Ｔｈ２が、ＣＶ１に近い値とされた場合、ＣＶ１に温度制御する際に生じるオーバーシュートによって、温度が区画境界値Ｔｈ２を一時的に超えることが生じ、短時間にＰＩＤ定数の切り替えが複数回生じる可能性がある。同様に、区画境界値Ｔｈ２が、ＣＶ２に近い値とされた場合、ＣＶ２に温度制御する際に生じるアンダーシュートによってＰＩＤ定数の切り替えが複数回生じる可能性がある。２つの目標値の平均値を区画境界値として設定することにより、このような現象の発生を低減できるものである。
なお、温度を上げる制御においては、通常、アンダーシュートよりオーバーシュートの方が大きくなる。従って、２つの目標値の平均値から少しオフセットした値を区画境界値として設定するものとしてもよい。“少しオフセットした値”とは、実際にオーバーシュートとアンダーシュートの値を測定し、その差分だけオフセットさせるものであっても良いし、ある所定値（例えば「区画の幅の５％」等の予め設定する値）だけオフセットさせるもの等であってもよい。
【００５５】
本実施形態では、制御対象として加熱をするもの、即ち、基本的に目標値が低いものから高いものへと推移するものを例としているため、各定値区間を、その目標値の昇順にソートし、各処理において目標値の小さいものから順に処理をするものを例としているが、本発明をこれに限るものではない。
昇順か降順かの違いや処理の順番の違いは発明の概念に相違を与えるものではなく、適宜選択することができるものである。
例えば、図２の区画境界値を設定する処理において、本実施形態と同様に定値区間をその目標値の小さい順に並べた上で、ステップ２０３〜２１２の処理を、ｉの大きなもの（“定値区間の数”）から初めてｉをデクリメントしながら処理をするようなものであってもよい。この場合、例えば“図５の定値区間ＣＶ４に次ぐ目標値を有する定値区間”とは、定値区間ＣＶ３となる。
【符号の説明】
【００５６】
１．．．温度制御装置（制御装置）
１１．．．演算部
１１１．．．区画境界値設定部
１１２．．．ＰＩＤ定数選択部
１１３．．．ＰＩＤ演算部
１１４．．．オートチューニング部
１１５．．．定値区間判別部
１２．．．記憶部
１３．．．入力部
２．．．制御対象
ＰＰ．．．プログラムパターン
【図１】
0006967712.tif 000002
【図２】
0006967712.tif 000003
【図３】
0006967712.tif 000004
【図４】
0006967712.tif 000005
【図５】
0006967712.tif 000006
【図６】
0006967712.tif 000007
【図７】
0006967712.tif 000008
【図８】
0006967712.tif 000009