(57)【要約】【課題】記憶装置に対して第１周期でデータの書き込みや読み出しを行いつつも、第１周期よりも長い第２周期で第２書き込みアドレスをリセットする技術において、第２周期が第１周期の整数倍でない場合であっても、第２周期で周期的な動作をさせるための制御の精度を高める。【解決手段】時間差ΔＴが値Ｔｄ・ｂ未満であれば、第２タイミングＱ２の直後の第１タイミングＱ１である冒頭タイミングにおいて、書き込みアドレスとして第１番目のアドレスが指定される。時間差ΔＴが値Ｔｄ・ｂ以上であれば、冒頭タイミングにおいて書き込みアドレスとして第２番目のアドレスを指定する。【選択図】図２
2014217206.tif 000002
【特許請求の範囲】
【請求項１】
順次に入力するデータを第１〜Ｎ番目のアドレス（＃１〜＃Ｎ）に対応して記憶する記憶部（９１）と、
第１周期（Ｔｄ）毎の第１タイミング（Ｑ１）で前記データの書き込みアドレス（Ａ）及び前記データの読み出しアドレス（Ｂ）を指定し、前記第１周期よりも長い第２周期（Ｔｒ）毎の第２タイミング（Ｑ２）で前記書き込みアドレスをリセットするアドレス指定部（９３）と
を備え、
前記第２周期を前記第１周期で除した値（Ｔｒ／Ｔｄ）の整数部分がＮ−１に等しく、
前記データの書き込みアドレスは、前記第１周期毎に前記第１〜Ｎ番目のアドレスからこの順に循環的に指定され、
前記データの読み出しアドレスは、前記第１周期毎に前記第１〜Ｎ番目のアドレスからこの順に循環的に指定され、
前記アドレス指定部は、
前記第２のタイミングと、その直後の前記第１タイミングである冒頭タイミングとの時間差（ΔＴ）が、
(i)前記第１周期のｂ（０＜ｂ＜１）倍（Ｔｄ・ｂ）未満であれば、前記冒頭タイミングにおいて前記書き込みアドレスとして前記第１番目のアドレス（＃１）を指定し、
(ii)前記第１周期のｂ倍以上であれば、当該冒頭タイミングにおいて前記書き込みアドレスとして前記第２番目のアドレス（＃２）を指定する、記憶装置（９０）。
【請求項２】
前記第１タイミング（Ｑ１）において、前記データの書き込みアドレス（Ａ）として前記第Ｋ番目（Ｋは１からＮまでの整数）のアドレス（＃Ｋ）と、前記データの読み出しアドレス（Ｂ）として前記第Ｌ番目（Ｌは１からＮまでの整数）のアドレス（＃Ｌ）とが、それぞれ指定され、前記Ｋと前記Ｌとが異なる、請求項１記載の記憶装置。
【請求項３】
前記Ｌは、第１数の前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）であり、
前記第１数は、所定時間（Ｔａ）を前記第１周期で除した値（Ｔａ／Ｔｄ）を整数へ丸めた値と前記Ｋとの和である、請求項２記載の記憶装置。
【請求項４】
前記第１数は、前記所定時間（Ｔａ）を前記第１周期で除した値（Ｔａ／Ｔｄ）と前記ｂとの和の整数部と、前記Ｋとの和である、請求項３記載の記憶装置。
【請求項５】
前記Ｋは一の前記第１タイミングがその直前の前記第２タイミング（Ｑ２）から経過した時間（Ｔ１）から前記時間差（ΔＴ）を差し引いた値を前記第１周期で除した値（（Ｔ１−ΔＴ）／Ｔｄ）に加算値を加えた値であり、
前記加算値は、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍（Ｔｄ・ｂ）未満であれば１であり、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍以上であれば２であり、
前記Ｌは前記一の前記第１タイミングに対して所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）を整数へ丸めた値に前記加算値を加えた値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である、請求項２記載の記憶装置。
【請求項６】
前記Ｌは、前記一の前記第１タイミングに対して前記所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）と前記ｂとの和の整数部に、前記加算値を加えた値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である、請求項５記載の記憶装置。
【請求項７】
前記第１タイミング（Ｑ１）で、前記データの書き込みアドレス（Ａ）として前記第Ｋ番目（Ｋは１からＮまでの整数）のアドレスが、前記データの読み出しアドレス（Ｂ）として前記第Ｌ番目（Ｌは１からＮまでの整数）のアドレス及び前記第Ｍ番目（Ｍは１からＮまでの整数）のアドレスが、それぞれ指定され、
前記Ｋは前記一の前記第１タイミングがその直前の前記第２タイミング（Ｑ２）から経過した時間（Ｔ１）から前記時間差（ΔＴ）を差し引いた値を前記第１周期で除した値（（Ｔ１−ΔＴ）／Ｔｄ）に加算値を加えた値であり、
前記加算値は、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍（Ｔｄ・ｂ）未満であれば１であり、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍以上であれば２であり、
前記Ｌは前記一の前記第１タイミングに対して所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した除算値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）の整数部の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）であり、
前記Ｍは前記Ｌに１を加算した値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）であり、
前記アドレス指定部は、前記除算値の小数部（Ｐ）をも出力する、請求項１記載の記憶装置。
【請求項８】
前記ｂの値は１／２である、請求項１乃至７のいずれか一つに記載の記憶装置。
【請求項９】
前記記憶部（９１）は、アドレス毎に記憶した値を、入力した値で増加させて更新して記憶する機能をも備える、請求項１乃至８のいずれか一つに記載の記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は記憶装置に関する。記憶装置へデータを書き込むアドレス（以下「書き込みアドレス」）及び記憶装置からデータを読み出すアドレス（以下「読み出しアドレス」）を周期的に指定し、書き込みアドレスを周期的にリセットする技術に関する。
【背景技術】
【０００２】
従来から、アクティブフィルタによって電源高調波を抑制する技術が知られている。当該技術は特許文献１，２に紹介されている。
【０００３】
特許文献１，２では、補償電流によって、電源に流れる電源電流の高調波成分を低減する技術が紹介されている。電源高調波を発生させる負荷と共に電源に接続された電源高調波抑制装置（アクティブフィルタ）が、当該補償電流を供給している。
【０００４】
補償電流と、その指令との間の誤差が求められる。当該誤差を積分する繰り返し制御を用いて、誤差が低減するように補償電流が制御される。
【０００５】
なお、後述の説明のため、時間遅れや電流を検出する際の遅れを抑制する技術を示す特許文献３を挙げる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−１８６７５２号公報
【特許文献２】特開２０１２−１４３０９５号公報
【特許文献３】特開２００８−２３４２９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献２は特許文献１を引用し、電源周期と制御周期とが完全に同期しない場合、位相毎に準備された積分器を適切に選択できないことを問題点として挙げる。特許文献２では、かかる問題点を解決するために、誤差を積分する誤差積分器に対して割り当てられたアドレスを制御周期毎に更新しつつ、電源周期毎に当該アドレスをリセットしている。
【０００８】
しかしながら、特許文献２に記載された技術では、電源周期毎にリセットされるアドレスは一種類しか設定されていない。よって誤差積分器を決定するアドレスが、同一の電源位相に対して振動的に設定されることが、特許文献２自身で指摘されていた。
【０００９】
特許文献２ではこのようなアドレスの設定が、平均的には本来の電源位相の誤差を積分することとなる旨が指摘される。
【００１０】
しかしながら、電源周期に同期して変動する諸量は、アクティブフィルタの制御において固定座標系から回転座標系へ座標変換される。そしてこの座標変換が電源位相に依拠していることに鑑みれば、かかるアドレスの振動的な設定は、諸量の制御を不安定とし、あるいは電源電流の高調波成分を低減する効果を損ないかねない。
【００１１】
そこで、この発明は、記憶装置に対して第１周期でデータの書き込みや読み出しを行いつつも、第１周期よりも長い第２周期で第２書き込みアドレスをリセットする技術において、第２周期が第１周期の整数倍でない場合であっても、第２周期で周期的な動作をさせるための制御の精度を高めることを目的とする。
【課題を解決するための手段】
【００１２】
この発明にかかる記憶装置（９０）の第１の態様は、順次に入力するデータを第１〜Ｎ番目のアドレス（＃１〜＃Ｎ）に対応して記憶する記憶部（９１）と、第１周期（Ｔｄ）毎の第１タイミング（Ｑ１）で前記データの書き込みアドレス（Ａ）及び前記データの読み出しアドレス（Ｂ）を指定し、前記第１周期よりも長い第２周期（Ｔｒ）毎の第２タイミング（Ｑ２）で前記書き込みアドレスをリセットするアドレス指定部（９３）とを備える。但し前記第２周期を前記第１周期で除した値（Ｔｒ／Ｔｄ）の整数部分がＮ−１に等しい。
【００１３】
前記データの書き込みアドレスは、前記第１周期毎に前記第１〜Ｎ番目のアドレスからこの順に循環的に指定され、前記データの読み出しアドレスは、前記第１周期毎に前記第１〜Ｎ番目のアドレスからこの順に循環的に指定される。
【００１４】
前記アドレス指定部は、前記第２のタイミングと、その直後の前記第１タイミングである冒頭タイミングとの時間差（ΔＴ）が、前記第１周期のｂ（０＜ｂ＜１）倍（Ｔｄ・ｂ）未満であれば、前記冒頭タイミングにおいて前記書き込みアドレスとして前記第１番目のアドレス（＃１）を指定する。
【００１５】
前記アドレス指定部は、前記第２のタイミングと、その直後の前記第１タイミングである冒頭タイミングとの時間差（ΔＴ）が、前記第１周期のｂ倍以上であれば、当該冒頭タイミングにおいて前記書き込みアドレスとして前記第２番目のアドレス（＃２）を指定する。
【００１６】
この発明にかかる記憶装置の第２の態様は、その第１の態様であって、前記第１タイミング（Ｑ１）において、前記データの書き込みアドレス（Ａ）として前記第Ｋ番目（Ｋは１からＮまでの整数）のアドレス（＃Ｋ）と、前記データの読み出しアドレス（Ｂ）として前記第Ｌ番目（Ｌは１からＮまでの整数）のアドレス（＃Ｌ）とが、それぞれ指定され、前記Ｋと前記Ｌとが異なる。
【００１７】
この発明にかかる記憶装置の第３の態様は、その第２の態様であって、前記Ｌは、第１数の前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）であり、前記第１数は、所定時間（Ｔａ）を前記第１周期で除した値（Ｔａ／Ｔｄ）を整数へ丸めた値と前記Ｋとの和である。
【００１８】
望ましくは前記第１数は、前記所定時間（Ｔａ）を前記第１周期で除した値（Ｔａ／Ｔｄ）と前記ｂとの和の整数部と、前記Ｋとの和である。
【００１９】
この発明にかかる記憶装置の第４の態様は、その第２の態様であって、前記Ｋは一の前記第１タイミングがその直前の前記第２タイミング（Ｑ２）から経過した時間（Ｔ１）から前記時間差（ΔＴ）を差し引いた値を前記第１周期で除した値（（Ｔ１−ΔＴ）／Ｔｄ）に加算値を加えた値であり、前記加算値は、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍（Ｔｄ・ｂ）未満であれば１であり、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍以上であれば２である。
【００２０】
前記Ｌは前記一の前記第１タイミングに対して所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）を整数へ丸めた値に前記加算値を加えた値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である。
【００２１】
望ましくは前記Ｌは、前記一の前記第１タイミングに対して前記所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）と前記ｂとの和の整数部に、前記加算値を加えた値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である。
【００２２】
この発明にかかる記憶装置の第５の態様は、その第１の態様であって、前記第１タイミング（Ｑ１）で、前記データの書き込みアドレス（Ａ）として前記第Ｋ番目（Ｋは１からＮまでの整数）のアドレスが、前記データの読み出しアドレス（Ｂ）として前記第Ｌ番目（Ｌは１からＮまでの整数）のアドレス及び前記第Ｍ番目（Ｍは１からＮまでの整数）のアドレスが、それぞれ指定される。
【００２３】
前記Ｋは前記一の前記第１タイミングがその直前の前記第２タイミング（Ｑ２）から経過した時間（Ｔ１）から前記時間差（ΔＴ）を差し引いた値を前記第１周期で除した値（（Ｔ１−ΔＴ）／Ｔｄ）に加算値を加えた値である。
【００２４】
前記加算値は、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍（Ｔｄ・ｂ）未満であれば１であり、前記時間差（ΔＴ）が前記第１周期の前記ｂ倍以上であれば２である。
【００２５】
前記Ｌは前記一の前記第１タイミングに対して所定時間（Ｔａ）経過後の時間から前記時間差を差し引いた値を前記第１周期で除した除算値（（Ｔ１＋Ｔａ−ΔＴ）／Ｔｄ）の整数部の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である。
【００２６】
前記Ｍは前記Ｌに１を加算した値の、前記Ｎを法とする剰余（但し当該剰余が０であるときには値Ｎ）である。
【００２７】
前記アドレス指定部は、前記除算値の小数部（Ｐ）をも出力する。
【００２８】
第１乃至第５の態様において望ましくは、前記ｂの値が１／２である。
【００２９】
第１乃至第５の態様において望ましくは、前記記憶部（９１）が、アドレス毎に記憶した値を、入力した値で増加させて更新して記憶する機能をも備える。
【発明の効果】
【００３０】
第２周期で周期的な動作をさせるために第１周期で制御を行う制御方法や制御装置において、第１周期毎に更新したデータが用いられる。この発明にかかる記憶装置の第１の態様によれば、第２周期が第１周期の整数倍でない場合であっても、第２周期で周期的な動作をさせるための制御の精度が高い。
【００３１】
この発明にかかる記憶装置の第２の態様は、遅延素子として機能する。特にデータが第２周期で周期的に変動する場合には、当該記憶素子は実質的にはデータを進ませる機能を果たす。
【００３２】
この発明にかかる記憶装置の第３の態様及び第４の態様では、当該記憶素子は遅延素子として機能し、特にデータが第２周期で周期的に変動する場合には、近似的に、第２周期と遅延時間との差だけデータを進ませる機能を果たす。
【００３３】
この発明にかかる記憶装置の第５の態様によれば、読み出したデータの補間が可能となる。
【図面の簡単な説明】
【００３４】
【図１】第１の実施の形態にかかる記憶装置の構成を示すブロック図である。
【図２】第１の実施の形態にかかる記憶装置の動作を示すタイミングチャートである。
【図３】第２の実施の形態におけるアドレス指定部の構成の一例を示すブロック図である。
【図４】第３の実施の形態における読み出しアドレス生成部の構成の一例を示すブロック図である。
【図５】第４の実施の形態におけるアドレス指定部の構成を示すブロック図である。
【図６】第５の実施の形態におけるアドレス指定部の一部の構成を示すブロック図である。
【図７】第５の実施の形態における補間部の構成を示すブロック図である。
【図８】第１の適用例にかかるアクティブフィルタ制御装置の構成を例示するブロック図である。
【図９】第１の適用例における遅延部の構成を例示するブロック図である。
【図１０】第１の適用例にかかるアクティブフィルタ制御装置の効果を示すグラフである。
【図１１】第１の適用例にかかるアクティブフィルタ制御装置の効果を示すグラフである。
【図１２】第１の適用例にかかるアクティブフィルタ制御装置の効果を示すグラフである。
【図１３】第２の適用例にかかるアクティブフィルタ制御装置の構成を例示するブロック図である。
【図１４】第２の適用例における遅延部の構成を例示するブロック図である。
【図１５】第２の適用例における遅延部の構成を例示するブロック図である。
【図１６】第２の適用例にかかるアクティブフィルタ制御装置の効果を示すグラフである。
【図１７】第３の適用例にかかるアクティブフィルタ制御装置の構成を例示するブロック図である。
【図１８】第３の適用例における繰り返し制御部の構成を例示するブロック図である。
【図１９】第３の適用例における繰り返し制御部の構成を例示するブロック図である。
【図２０】第３の適用例におけるアクティブフィルタ制御装置の効果を示すグラフである。
【図２１】第１の適用例と比較されるアクティブフィルタ制御装置の構成を例示するブロック図である。
【図２２】第１の適用例と比較されるアクティブフィルタ制御装置の効果を例示するグラフである。
【発明を実施するための形態】
【００３５】
第１の実施の形態．
図１は本実施の形態にかかる記憶装置９０の構成を示すブロック図である。記憶装置９０は、記憶部９１と、入出力インタフェース９２と、アドレス指定部９３とを備えている。
【００３６】
記憶部９１にはデータＤｉｎが順次に入力し、記憶部９１は第１〜Ｎ番目のアドレス＃１〜＃Ｎに対応して記憶する。記号＃の次の記号はアドレスの順序を示す番号であって、アドレスの値それ自体とは区別する。
【００３７】
具体的には、記憶部９１は入出力インタフェース９２からアドレス＃１〜＃Ｎのうちのいずれかである書き込みアドレスＡを入力し、書き込みアドレスＡに対応してデータＤｉｎを記憶する。書き込みアドレスＡは順次更新されるので、順次に入力するデータＤｉｎが、書き込みアドレスＡに対応して記憶部９１に順次に記憶される。
【００３８】
データＤｉｎも入出力インタフェース９２を介して記憶部９１に入力してもよい。
【００３９】
入出力インタフェース９２は記憶部９１に対して上述のように書き込みアドレスＡを出力するほか、読み出しアドレスＢをも出力する。更に入出力インタフェース９２は、記憶部９１において読み出しアドレスＢに対応して記憶されていたデータを、データＤｏｕｔとして出力する。
【００４０】
書き込みアドレスＡ及び読み出しアドレスＢは、アドレス指定部９３から入出力インタフェース９２へと供給される。アドレス指定部９３は書き込みアドレスＡ及び読み出しアドレスＢを、第１タイミングＱ１で指定する。
【００４１】
あるいは、書き込みアドレスＡに相当するアドレスの番号Ｋ（Ｋは１〜Ｎの整数：このとき書き込みアドレスＡはアドレス＃Ｋとなる）及び読み出しアドレスＢに相当するアドレス番号Ｌ（Ｌは１〜Ｎの整数：このとき読み出しアドレスＢはアドレス＃Ｌとなる）を、アドレス指定部９３から入出力インタフェース９２へと供給する。この場合には、入出力インタフェース９２が番号Ｋ，Ｌからそれぞれアドレス＃Ｋ，＃Ｌを設定する。
【００４２】
図１では簡単のため、アドレス指定部９３から入出力インタフェース９２へ書き込みアドレスＡ及び読み出しアドレスＢを供給する場合のみを示した。またこれらを指定する第１タイミングＱ１によるトリガを、記号Ｑ１で示される入力にて表している。
【００４３】
第１タイミングＱ１は第１周期Ｔｄ毎に発生する。つまり記憶装置９０は第１周期Ｔｄで周期的に制御される、と把握することができる。よって以下、当該第１周期Ｔｄを制御周期と称することもある。
【００４４】
記憶装置９０は、入力するデータＤｉｎを書き込みアドレスＡに対応して記憶し、読み出しアドレスＢに対応して記憶されていたデータＤｏｕｔを出力する。ここでデータＤｉｎ，Ｄｏｕｔは記憶装置９０へ入力するか記憶装置９０から出力されるかの相違によって記号を使い分けているのであって、両者が実質的に異なる必然性はない。
【００４５】
データＤｉｎは第２周期Ｔｒで周期的に変動する場合がある。例えば「背景技術」で説明したように、補償電流によって、電源に流れる電源電流の高調波成分を低減する場合、当該補償電流とその指令値との誤差は当該電源が負荷に印加する電圧（あるいは電源電流）の周期（以下「電源周期」と称す）と同じ周期で変動する。
【００４６】
よって誤差に基づいて補償電流をフィードバック制御する場合、このフィードバック制御は電源周期で周期的な動作となる。よってデータＤｉｎとして当該誤差を採用すれば、第２周期Ｔｒとしては電源周期が採用されることになる。また、データＤｉｎは制御周期毎に更新されて記憶される。
【００４７】
例えば電源電流の高調波成分を補償電流によって低減する技術において、補償電流とその指令値との誤差に基づいてフィードバック制御するためには、電源周期で周期的な動作をさせるために制御周期でフィードバックを行うことになる。
【００４８】
このような制御方法や制御装置において、記憶装置９０を繰り返し制御に採用する場合、記憶装置は少なくも電源周期の長さに亘ってデータＤｉｎを記憶する必要がある。
【００４９】
しかも、電源位相と、出力されるデータＤｏｕｔとは同期していなければならない。よって特許文献１，２のように、電源周期毎に書き込みアドレスをリセットする必要がある。しかし、上述の通り、特許文献２では電源周期毎にリセットされる書き込みアドレスの値は一種類しか設定されていないので、問題が生じていた。
【００５０】
そこで、本実施の形態では書き込みアドレスＡが電源周期毎にリセットされる際のアドレスを、二つのアドレスから選択する。以下、電源周期毎に書き込みアドレスＡをリセットするタイミングを第２タイミングＱ２と称する。
【００５１】
図１では簡単のため、書き込みアドレスＡをリセットする第２タイミングＱ２によるトリガを、記号Ｑ２で示される入力にて表している。
【００５２】
なお、上記の説明から理解されるように、第２タイミングＱ２は第２周期Ｔｒ（上述の例では電源周期）毎に発生する。
【００５３】
図２は記憶装置９０の動作を示すタイミングチャートである。図２において右向きに時間の経過を示す。第１タイミングＱ１及び第２タイミングＱ２は、それぞれ黒三角及び白三角で示されている。第１タイミングＱ１同士の間隔は第１周期Ｔｄであり、第２タイミングＱ２同士の間隔は第２周期Ｔｒである。
【００５４】
第２周期Ｔｒを第１周期Ｔｄで除して得られる周期比（Ｔｒ／Ｔｄ）が整数でない場合、特許文献２で言及されたように特許文献１の問題点が発生する。本実施の形態では、周期比（Ｔｒ／Ｔｄ）の整数部分を（Ｎ−１）に等しい場合を想定する。周期比（Ｔｒ／Ｔｄ）の小数部Ｐ（０≦Ｐ＜１）を導入すると、Ｔｒ／Ｔｄ−Ｐ＝Ｎ−１と表される。
【００５５】
つまり、書き込みアドレスＡ及び読み出しアドレスＢが取り得るアドレスの上限の個数は、周期比（Ｔｒ／Ｔｄ）の整数部分よりも１以上大きく設定される。これは、通常、電源周期の変動が制御周期よりも小さいことに鑑みれば、設定可能な事項である。
【００５６】
図２では周期比（Ｔｒ／Ｔｄ）の整数部分が５である場合を例示しているが、これよりも多くてもよい。周期比（Ｔｒ／Ｔｄ）が大きい方が電源周期に対して細かなフィードバック制御ができることは当然である。
【００５７】
しかし、電源周期の変動を制御周期未満に抑さえ、書き込みアドレスＡ及び読み出しアドレスＢが取り得るアドレスの上限の個数を固定できる観点からは、周期比（Ｔｒ／Ｔｄ）が小さい方が望ましい。
【００５８】
書き込みアドレスＡは、第１周期Ｔｄ毎にアドレス＃１〜＃Ｎからこの順に循環的に指定される。また読み出しアドレスＢも、第１周期Ｔｄ毎にアドレス＃１〜＃Ｎからこの順に循環的に指定される。
【００５９】
書き込みアドレスＡと読み出しアドレスＢとは必ずしも一致しない。両者を異ならせることにより、記憶装置９０は遅延素子として機能する。データＤｉｎが電源周期で周期的に変動するので、記憶装置９０はデータＤｉｎを実質的に先取りすることができる。これはフィードバック制御において採用される処理の遅延時間を補償する観点で望ましい技術である。
【００６０】
アドレス指定部９３による書き込みアドレスＡのリセットは、第２のタイミングＱ２の直後の第１タイミングＱ１（以下「冒頭タイミング」とも称す）において書き込みアドレスＡを指定することで実現できる。
【００６１】
図２において第２タイミングＱ２と冒頭タイミングとの差が時間差ΔＴとして示されている。図２でΔＴ＝０と示された時点では第１タイミングＱ１と第２タイミングＱ２とが一致しており、この場合は冒頭タイミングも第２タイミングＱ２とが一致していると考える。
【００６２】
また、乗数ｂ（０＜ｂ＜１）を導入し、時間差ΔＴと、第１周期Ｔｄのｂ倍（Ｔｄ・ｂ）との大小関係も示されている。例えばｂ＝０．５であり、図２では左側に０＜ΔＴ＜Ｔｄ・ｂと示された時間間隔は、左側にＴｄ・ｂ≦ΔＴと示された時間間隔よりも狭い。
【００６３】
本実施の形態では冒頭タイミングで設定される書き込みアドレスＡとして、第１番目のアドレス＃１と第２番目のアドレス＃２とから、時間差ΔＴと値Ｔｄ・ｂとの大小関係に基づいて、一つを選択する。
【００６４】
時間差ΔＴが値Ｔｄ・ｂ未満であれば、冒頭タイミングにおいて書き込みアドレスＡとして第１番目のアドレス＃１を指定する。時間差ΔＴが値Ｔｄ・ｂ以上であれば、冒頭タイミングにおいて書き込みアドレスＡとして第２番目のアドレス＃２を指定する。
【００６５】
即ち、第２タイミングＱ２の前後の第１タイミングＱ１で設定される書き込みアドレスＡのいずれかが実質的に第１番目のアドレス＃１となる。
【００６６】
このように書き込みアドレスＡを指定することの利点は、乗数ｂが０．５である場合を例に採れば理解しやすい。第２タイミングＱ２に近い方の第１タイミングＱ１で設定される書き込みアドレスＡが実質的に第１番目のアドレス＃１となる。これにより、電源位相に最も適切に対応したデータＤｏｕｔが出力される。
【００６７】
しかしながら、乗数ｂが必ずしも０．５でなくても、冒頭タイミングでにリセットされる書き込みアドレスＡの値が一種類しか設定されていない場合と比較すれば、電源位相との整合性は改善される。実数を整数へ丸める際に、当該実数の小数部分の閾値を０．５以外にすることに相当するからである。
【００６８】
以上のように、第２周期Ｔｒで周期的な動作をさせるために第１周期Ｔｄで制御を行う制御方法や制御装置において、第１周期Ｔｄ毎に更新したデータＤｏｕｔが用いられる場合がある。そして本実施の形態にかかる記憶装置９０によれば、第２周期Ｔｒが第１周期Ｔｄの整数倍でない場合であっても、第２周期Ｔｒで周期的な動作をさせるための制御の精度が高まる。
【００６９】
なお、記憶装置９０が補間部９４をも備えることが望ましい。補間部９４は隣接する一対の読み出しアドレスＢに対応した一対のデータＤｏｕｔを、小数部Ｐに基づいて内挿し、補間値Ｄ＾を出力する。このようにして得られた補間値Ｄ＾を用いることにより、電源位相との整合性が更に改善される。
【００７０】
但し、ここで隣接する一対の読み出しアドレスＢとは第１番目のアドレス＃１と第Ｎ番目のアドレス＃Ｎも含む。これは入力するデータＤｉｎは第２周期Ｔｒで周期的に変動する一方で、上述のようにＴｒ／Ｔｄ−Ｐ＝Ｎ−１が成立しており、Ｎ−１≦Ｔｒ／Ｔｄ＜Ｎが満足され、しかも書き込みアドレスＡ及び読み出しアドレスＢが、第１周期Ｔｄ毎にアドレス＃１〜＃Ｎからこの順に循環的に指定されるからである。
【００７１】
なお、上述のように、書き込みアドレスＡと読み出しアドレスＢとを異ならせることが望ましい場合がある。かかる場合については補間を行う場合も含め、第３の実施の形態以降において、より具体的に説明する。
【００７２】
第２の実施の形態．
図３は第２の実施の形態におけるアドレス指定部９３の構成の一例を示すブロック図である。当該アドレス指定部９３は、第１の実施の形態において図１を用いて説明された記憶装置９０のアドレス指定部９３の一例である。
【００７３】
アドレス指定部９３は、タイマ９３１と、比較器９３２と、カウンタ９３３と、読み出しアドレス生成部９３４とを備える。
【００７４】
タイマ９３１は第２タイミングＱ２によってリセットされ、その直後に第１タイミングＱ１が発生するまでの時間が計測される。この計測結果は上述の時間差ΔＴに相当するので、タイマ９３１は時間差生成手段として把握することができる。
【００７５】
比較器９３２は、時間差ΔＴと値Ｔｄ・ｂとの大小関係に基づいて冒頭タイミングにおいて指定されるアドレス番号１，２のいずれかを出力する。この動作については第１の実施の形態で説明済みである。つまり比較器９３２は第２タイミングＱ２毎に第２周期Ｔｒで書き込みアドレスＡをアドレス＃１，＃２のいずれかにリセットする機能を果たしている。
【００７６】
カウンタ９３３は入力したアドレス番号１，２のいずれかを一つずつ増加させる。カウンタ９３３がアドレス番号１を入力した場合には第１タイミングＱ１毎にアドレス番号が順次２，３，…Ｎ−１，Ｎと変化する。カウンタ９３３がアドレス番号２を入力した場合には第１タイミングＱ１毎にアドレス番号が順次３，４，…Ｎ−１，Ｎと変化する。
【００７７】
ここでアドレス番号の「増加」とはアドレス＃ｉ（ｉは１〜Ｎの整数）の番号ｉの大きさに着目したアドレスの順序を指しており、必ずしもアドレスの値それ自体の増加とは限らない。例えばここでいう「増加」とはアドレス＃１，＃２，＃３，…＃Ｎ−１，＃Ｎの値同士の大小関係がこの順に増大しなくても、この順序はここでいうアドレス番号の「増加」として把握する。
【００７８】
このようにカウンタ９３３が動作するので、カウンタ９３３は第１タイミングＱ１毎に第１周期Ｔｄでアドレス＃１〜＃Ｎからこの順に循環的に指定される書き込みアドレスＡのアドレス番号を出力することになる。
【００７９】
以上のことから、タイマ９３１と、比較器９３２と、カウンタ９３３とは相まって、書き込みアドレスＡを指定するアドレス番号Ｋを設定する、書き込みアドレス設定部として把握することができる。
【００８０】
読み出しアドレス生成部９３４は、書き込みアドレスＡのアドレス番号Ｋに基づいて、読み出しアドレスＢのアドレス番号Ｌを生成する。例えば読み出しアドレス生成部９３４は、番号Ｋに一定数を加えて番号Ｌを生成することができる。
【００８１】
第１の実施の形態で述べたように、入出力インタフェース９２が番号Ｋ，Ｌからそれぞれアドレス＃Ｋ，＃Ｌを設定する。よって、タイマ９３１と、比較器９３２と、カウンタ９３３とは相まって、実質的に書き込みアドレスＡを設定する、書き込みアドレス設定部として把握することができる。
【００８２】
なお、読み出しアドレスＢは書き込みアドレスＡと一致してもよい。その場合、アドレス指定部９３は読み出しアドレス生成部９３４を省略し、読み出しアドレスＢの番号Ｌとして書き込みアドレスＡの番号Ｋを出力する。
【００８３】
第３の実施の形態．
図４は、読み出しアドレス生成部９３４の構成の一例を示すブロック図である。
【００８４】
読み出しアドレス生成部９３４は、除算器９３４２と、整数化器９３４３と、加算器９３４４とを備えている。
【００８５】
除算器９３４２は先読み時間Ｔａを第１周期Ｔｄで除した値を出力する。ここで先読み時間Ｔａとは、記憶装置９０においてデータＤｉｎを実質的に先取りする時間である。記憶装置９０を遅延時間（Ｔｒ−Ｔａ）の遅延素子として把握した場合、データＤｉｎが第２周期Ｔｒで周期的に変動するので、Ｔｒ−（Ｔｒ−Ｔａ）＝Ｔａだけ実質的にデータＤｉｎが先取りされる。
【００８６】
例えば先読み時間Ｔａは第１周期Ｔｄの数倍程度の値を採る。よって、読み出しアドレスＢを適切に選定することは、先読み時間Ｔａを採用する場合において特に重要である。
【００８７】
このように記憶装置９０を遅延素子（実質的な先取り素子）として機能させる場合、読み出しアドレスＢを書き込みアドレスＡよりも、先読み時間Ｔａに相当する整数でアドレスの番号を増加させる。書き込みアドレスＡ及び読み出しアドレスＢが、第１周期Ｔｄ毎にアドレス＃１〜＃Ｎからこの順に循環的に指定されるからである。
【００８８】
このアドレスの番号を増加させる整数はほぼ値Ｔａ／Ｔｄに相当するので、除算器９３４２がまず値Ｔａ／Ｔｄを計算する。
【００８９】
整数化器９３４３は、値Ｔａ／Ｔｄを整数化し、読み出しアドレスＢのアドレスの番号を、書き込みアドレスＡのアドレス番号に対して増加させる整数を求める。当該整数化は公知の種々の手法を採用することができる。たとえば値（Ｔａ／Ｔｄ）と乗数ｂとの和の整数部の和を、上記整数として出力する。
【００９０】
加算器９３４４は書き込みアドレスＡのアドレス番号Ｋと、上記整数とを加算して読み出しアドレスＢのアドレス番号Ｌを出力する。
【００９１】
このように読み出しアドレス生成部９３４が機能するので、記憶装置９０は遅延素子として機能し、特にデータＤｉｎが第２周期Ｔｒで周期的に変動する場合に、近似的に、第２周期Ｔｒと遅延時間（Ｔｒ−Ｔａ）との差Ｔａだけ進んだデータＤｏｕｔが得られる。
【００９２】
但し、加算器９３４４は、読み出しアドレスＢがアドレス＃１〜＃Ｎからこの順に循環的に指定されることに鑑みて、剰余計算を行うことに留意する。具体的にはアドレス番号Ｌは、Ｋ＋round［Ｔａ／Ｔｄ］の、Ｎを法とする剰余である。ここで記号round［］は、[]で挟まれた値を整数へ丸めた値を意味する。また当該剰余が０であるときにはアドレス番号はＮとなる。
【００９３】
第４の実施の形態．
図５は第４の実施の形態におけるアドレス指定部９３の構成を示すブロック図である。本実施の形態では第３の実施の形態とは異なり、書き込みアドレスＡのアドレス番号Ｋと、読み出しアドレスＢのアドレス番号Ｌとを別々に求める。
【００９４】
本実施の形態では、リセット後経過時間Ｔ１を導入する。リセット後経過時間Ｔ１とは、第２タイミングＱ２で書き込みアドレスＡがリセットされることに鑑みた名称である。具体的には、第１タイミングＱ１がその直前の第２タイミングＱ２から経過した時間をリセット後経過時間Ｔ１として定義する。
【００９５】
特別な場合として、第１タイミングＱ１のうち、冒頭タイミングであるものについてはリセット後経過時間Ｔ１は時間差ΔＴと一致する。
【００９６】
アドレス指定部９３は、タイマ９３１と、比較器９３２と、減算器９３５と、加算器９３７，９３８と、除算器９３４２，９３６と、整数化器９３４３とを備えている。
【００９７】
タイマ９３１と、比較器９３２とは、第２の実施の形態で説明された動作を行って加算器９３７へとアドレス番号１，２のいずれかを出力する。
【００９８】
減算器９３５はリセット後経過時間Ｔ１から時間差ΔＴを差し引いて出力する。第１タイミングＱ１は第１周期Ｔｄで周期的に発生するので、減算器９３５の出力は第１周期Ｔｄの整数倍となる。
【００９９】
除算器９３６は減算器９３５の出力を第１周期Ｔｄで除算して出力する。上述の考察から、当該出力は整数となる。この整数は、冒頭タイミングから、着目する第１タイミングＱ１が第１周期Ｔｄの何個分遅延しているかを示している。よって加算器９３７によって求められる、比較器９３２の出力と除算器９３６の出力との和は、書き込みアドレスＡのアドレス番号Ｋを表している。
【０１００】
加算器９３８は減算器９３５の出力に先読み時間Ｔａを加算した値（Ｔ１−ΔＴ＋Ｔａ）を出力する。これはリセット後経過時間Ｔ１に対応する第１タイミングＱ１に対応するデータＤｉｎよりも先読み時間Ｔａだけ遡る時間を求めるためである。
【０１０１】
そして除算器９３４２は加算器９３８の出力を第１周期Ｔｄで除算した値（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄを出力する。整数化器９３４３は除算器９３４２の出力を整数化する。そして比較器９３２が出力する値１，２のいずれかと整数化器９３４３の出力との和が、加算器９３４４によって求められ、当該和となる整数Ｌは、読み出しアドレスＢのアドレス番号として採用できる。
【０１０２】
整数化器９３４３、加算器９３４４の動作については、第３の実施の形態におけるこれらの動作と同様である。
【０１０３】
本実施の形態でも第３の実施の形態と同様に、記憶装置９０は遅延素子として機能し、特にデータＤｉｎが第２周期Ｔｒで周期的に変動する場合に、近似的に、第２周期Ｔｒと遅延時間（Ｔｒ−Ｔａ）との差Ｔａだけ進んだデータＤｏｕｔが得られる。
【０１０４】
第５の実施の形態．
図６は第５の実施の形態におけるアドレス指定部９３の変形を示すブロック図である。図７は補間部９４の構成を示すブロック図である。
【０１０５】
本実施の形態にかかるアドレス指定部９３も、図１に示された記憶装置９０が備えるアドレス指定部９３として採用することができる。但し、本実施の形態にかかるアドレス指定部９３は、読み出しアドレスＢに対応するアドレス番号として一対の整数Ｌ，Ｍ（＝Ｌ＋１）と、１未満の非負の小数部Ｐとを出力する。
【０１０６】
また、本実施の形態では記憶装置９０が補間部９４をも備えている場合を想定する。
【０１０７】
本実施の形態では、第４の実施の形態で示されたアドレス指定部９３の整数化器９３４３を整数／小数分離部９３４５に置換し、更に加算器９３４７を備えた構成が説明される。
【０１０８】
本実施の形態において、除算器９３４２は、第４の実施の形態と同様にして値（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄを出力する。整数／小数分離部９３４５は値（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄの整数部分を加算器９３４４に出力する。また整数／小数分離部９３４５は値（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄの小数部分Ｐをも出力する。加算器９３４４は第４の実施の形態と同様にして、読み出しアドレスＢの第１のアドレス番号Ｌを出力する。加算器９３４７はアドレス番号Ｌに１を加算して読み出しアドレスＢの第２のアドレス番号Ｍを出力する。よって、Ｌ≦（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄ＜Ｌ＋１，０≦Ｐ＜１が成立する。但し、加算器９３４４，９３４７のいずれもが、Ｎを法とする剰余を出力し、当該剰余が０であるときにはアドレス番号はＮとなる。よって例えばＬ＝Ｎであれば、Ｍ＝１となる。
【０１０９】
記憶部９１は読み出しアドレス＃Ｌ，＃Ｍにおいてそれぞれ格納されていたデータＤｏｕｔ（＃Ｌ），Ｄｏｕｔ（＃Ｍ）を補間部９４に出力する。補間部９４は小数部分Ｐをも入力する（図７の他、図１をも参照）。
【０１１０】
補間部９４は減算器９４１と、乗算器９４２，９４３と加算器９４４とを有する。
【０１１１】
減算器９４１は値１から小数部分Ｐを差し引いて値（１−Ｐ）を出力する。乗算器９４２は値（１−Ｐ）とデータＤｏｕｔ（＃Ｌ）との積を出力する。乗算器９４３は小数部分ＰとデータＤｏｕｔ（＃Ｍ）との積を出力する。
【０１１２】
加算器９４４は乗算器９４２，９４３の出力の和を読み出しデータＤ＾として出力する。読み出しデータＤ＾は、値（Ｔ１−ΔＴ＋Ｔａ）／Ｔｄに対応した、データＤｏｕｔ（＃Ｌ），Ｄｏｕｔ（＃Ｍ）の補間値である。
【０１１３】
よって、リセット後経過時間Ｔ１に対応する第１タイミングＱ１に対応するデータＤｉｎよりも先読み時間Ｔａだけ遡った時点における読み出しデータとして、第３の実施の形態や第４の実施の形態に示された技術よりも適切である。
【０１１４】
＜アクティブフィルタへの適用の説明＞
第１の適用例．
図８は上述の記憶装置９０を遅延部３１として用いたアクティブフィルタ制御装置の構成を例示するブロック図である。
【０１１５】
以下、三相交流が採用される場合について例を取って説明する。但しこの相数は例示であって、相数が三に特定される必要はない。
【０１１６】
三相の交流電源１は負荷２へと三相の負荷電流Ｉｏを供給する。並列形アクティブフィルタ６は交流電源１に三相の連系リアクトル４を介して接続される。並列形アクティブフィルタ６は三相の補償電流Ｉｃを出力する。
【０１１７】
なお、ここでは補償電流Ｉｃについて並列形アクティブフィルタ６から交流電源１へ向かう方向を正に採っており、交流電源１から流れる電源電流Ｉｓと補償電流Ｉｃの和が負荷電流Ｉｏであるとして説明する。
【０１１８】
もちろん、補償電流Ｉｃの向きを当該実施の形態の説明と逆向きに採っても、それは補償電流Ｉｃの極性の符号（正負）が変わるに過ぎない。
【０１１９】
並列形アクティブフィルタ６は例えばインバータ６１とコンデンサ６２とを備える。インバータ６１は補償電流Ｉｃを入出力することにより、コンデンサ６２を直流電圧Ｖｄｃに充放電する。
【０１２０】
例えばインバータ６１は電圧形インバータであり、３つの電流経路がコンデンサ６２に対して並列に接続され、各々の電流経路において二つのスイッチング素子が設けられる。
【０１２１】
アクティブフィルタ制御装置は、高調波成分抽出部７Ａと、差分電流生成部３Ａと、電流制御器５と、駆動信号生成回路８とを備える。
【０１２２】
高調波成分抽出部７Ａは負荷電流Ｉｏの高調波成分から補償電流Ｉｃの指令値Ｉｃ＊を得る。具体的な構成は特許文献３等で公知であるので、その説明は簡単に留める。
【０１２３】
高調波成分抽出部７Ａは変圧器７１、位相検出器７２、ｄｑ変換器７３、ハイパスフィルタ７４，７５、逆ｄｑ変換器７６を有する。
【０１２４】
変圧器７１は交流電源１の三相の交流電圧Ｖｓの一相分を検出し、これを位相検出器７２に与える。位相検出器７２は検出した位相をｄｑ変換器７３及び逆ｄｑ変換器７６に伝える。
【０１２５】
ｄｑ変換器７３は検出された負荷電流Ｉｏを三相／二相変換してｄ軸電流、ｑ軸電流を得る。ハイパスフィルタ７４，７５はｄ軸電流、ｑ軸電流の低域成分、特に直流成分を除去し、逆ｄｑ変換器７６に与える。
【０１２６】
逆ｄｑ変換器７６は二相／三相変換を行って補償電流Ｉｃの指令値Ｉｃ＊を生成する。ここで、ｄ軸及びｑ軸は位相検出器７２で検出された位相と同期して回転する回転座標系である。
【０１２７】
負荷電流Ｉｏのうち、交流電源１の位相と同期する成分は、ｄ軸電流、ｑ軸電流において直流分として現れる。つまり負荷電流Ｉｏに高調波成分が無ければ、ｄ軸電流、ｑ軸電流はいずれも直流成分のみとなる。よって上記ハイパスフィルタ７４，７５はｄ軸電流、ｑ軸電流として現れる、負荷電流Ｉｏの高調波成分のみを出力する。
【０１２８】
従って、指令値Ｉｃ＊は負荷電流Ｉｏの高調波成分を表すことになる。よって補償電流Ｉｃが位相のずれなく指令値Ｉｃ＊と一致すれば、これが負荷電流Ｉｏの高調波成分を負担することになり、電源電流Ｉｓには高調波成分が発生しない。
【０１２９】
差分電流生成部３Ａは、指令値Ｉｃ＊を後述する所定の時間で先読みした指令値Ｉｃ＊＾と、補償電流Ｉｃとの間の偏差Ｉｅを得る。つまり指令値Ｉｃ＊は、交流電源１の位相と同期する回転座標系（ｄｑ座標系）で把握される負荷電流Ｉｏから直流分を除去し、更に座標変換して固定座標系で把握される。そして補償電流Ｉｃ、偏差Ｉｅも固定座標系において求められる。
【０１３０】
電流制御器５は、差分電流生成部３Ａの出力に基づいて三相の電圧指令値Ｖ＊を生成する処理を行う。電流制御器５は、例えばＰＩ（比例積分）制御を行うことで、上記処理を実現する。
【０１３１】
駆動信号生成回路８は、電圧指令値Ｖ＊に基づいて並列形アクティブフィルタ６を駆動する駆動信号Ｇを生成する。例えば駆動信号生成回路８は電圧指令値Ｖ＊とキャリアとを比較した結果に対する論理演算を行って駆動信号Ｇを生成する。よって電圧指令値Ｖ＊は駆動信号Ｇを介して間接的に並列形アクティブフィルタ６を制御する制御信号であると言える。
【０１３２】
なお、ローパスフィルタ９は、補償電流Ｉｃのリプルを除去する観点から、設けられることが望ましい。ここではローパスフィルタ９は一相分のみを図示しているが、実際には三相分設けられる。
【０１３３】
上述のように、電流制御器５はＰＩ制御を行って電圧指令値Ｖ＊を生成するので遅延時間（以下、この遅延時間を時間ｔａと表す）が生じる。よってもし、偏差Ｉｅを指令値Ｉｃ＊と補償電流Ｉｃとから求めた場合、時間ｔａは補償電流Ｉｃと高調波成分とのずれの原因となり、電源電流Ｉｓの高調波成分を抑制することに対する阻害要因となる。
【０１３４】
しかしながら差分電流生成部３Ａにおいて、指令値Ｉｃ＊を時間ｔａだけ先読みした指令値Ｉｃ＊＾と、補償電流Ｉｃとから偏差Ｉｅを求めることにより、上記阻害要因は解消もしくは低減する。
【０１３５】
ここで、定常状態において時間ｔａは一定値を採ると考えられる。よって予め測定もしくは推定によって、時間ｔａが見積もられる。
【０１３６】
例えば差分電流生成部３Ａは、遅延部３１と、減算器３２とを有している。遅延部３１は、電源周期Ｔｒから時間ｔａを差し引いた時間で遅延させる処理を行う。従って、時間ｔａを先読み時間Ｔａとして採用することにより、遅延部３１として記憶装置９０を採用することができる。
【０１３７】
図９は遅延部３１の構成を例示するブロック図である。遅延部３１は３つの記憶装置９０を有しており、各々が三相の指令値Ｉｃ＊の一相分のデータをデータＤｉｎとして入力する。また各々が三相の指令値Ｉｃ＊＾の一相分のデータをデータＤｏｕｔとして出力する。
【０１３８】
上述のいずれの実施の形態における記憶装置９０も遅延部３１において採用することができる。但し、第５の実施の形態にかかる記憶装置９０については、補間値Ｄ＾が指令値Ｉｃ＊＾として出力される。
【０１３９】
タイミング設定器３０１は、位相検出器７２によって検出された位相ωｔから、第２タイミングＱ２を設定する。例えば位相ωｔが０となる時点を第２タイミングＱ２として設定する。
【０１４０】
あるいは電源周期が変動する場合を考慮して、第２タイミングＱ２は、位相ωｔが一旦０となる時点を検出し、それに対して電源周期の平均値を加算したタイミングを採用することもできる。
【０１４１】
第１タイミングＱ１は、遅延部３１の外部から供給される制御インターバルＳｉｎｔによって設定される。例えば制御インターバルＳｉｎｔはアクティブフィルタ制御装置の動作を制御するタイミングである。
【０１４２】
減算器３２は、遅延部３１が出力する先読みした指令値Ｉｃ＊＾と補償電流Ｉｃとの差分として偏差Ｉｅを得る。
【０１４３】
図１０乃至図１２は上述のアクティブフィルタ制御装置の効果を示すグラフである。図１０乃至図１２において、諸量は一相分のみを示している。負荷２として平衡負荷が採用される場合には負荷電流Ｉｏはその三相分が平衡し、電源電流Ｉｓ及び補償電流Ｉｃもそれぞれの三相分が平衡し、これらの諸量の三相分は互いに位相が１２０度異なるだけに過ぎないからである。
【０１４４】
図１０は上段から下に向かうに従って、それぞれ負荷電流Ｉｏ、補償電流Ｉｃの極性を反転した値（−Ｉｃ)、電源電流Ｉｓ、先読みした指令値Ｉｃ＊＾、補償電流Ｉｃ、偏差Ｉｅの波形を示す。
【０１４５】
図１１は上段において交流電圧Ｖｓ及びその位相θの波形を、中段において指令値Ｉｃ＊の波形を、下段において先読みした指令値Ｉｃ＊＾の波形を、それぞれ示す。なお、時間ｔａ（＝Ｔａ）及び電源周期（＝第２周期）Ｔｒも併記している。見かけ上、指令値Ｉｃ＊よりも時間ｔａだけ指令値Ｉｃ＊＾が進んでいることが視認される。
【０１４６】
図１２は上段において指令値Ｉｃ＊及び先読みした指令値Ｉｃ＊＾の波形を、下段において指令値Ｉｃ＊及び補償電流Ｉｃの波形を、それぞれ示す。図１２で示された波形は図１１で示された波形よりも時間軸が拡大されて示されている。
【０１４７】
図１２の上段の波形では、図１１の中段及び下段から視認される様に、指令値Ｉｃ＊よりも、先読みした指令値Ｉｃ＊＾の方が進んでいることが視認される。そして図１２の下段の波形から、指令値Ｉｃ＊と補償電流Ｉｃとがほぼ一致した波形を呈することが視認される。
【０１４８】
図２１は図８において遅延部３１を省略した構成であり、実質的には図８の構成において先読み時間Ｔａを０にした構成に相当する。図２２は当該構成において得られる諸量の波形を図１０に対応して示すグラフである。
【０１４９】
図１０と図２２との比較により、指令値Ｉｃではなく先読みした指令値Ｉｃ＊＾を用いた制御によって補償電流Ｉｃを得ることにより、偏差Ｉｅが減少し、以て電源電流Ｉｓの高調波成分が著しく低減することが視認される。
【０１５０】
つまり、電流制御器５における演算処理による電源電流Ｉｓの高調波成分の抑制について、その阻害が改善されたことが判る。
【０１５１】
第２の適用例．
補償電流の指令値を回転座標系において把握する場合にも、第１の適用例と同様にデータを先読みさせて、電流制御器における演算処理による電源電流Ｉｓの高調波成分の抑制の阻害を、改善することができる。
【０１５２】
図１３は記憶装置９０を遅延部３１ｄ，３１ｑとして用いたアクティブフィルタ制御装置の他の構成を示すブロック図である。
【０１５３】
第２の適用例においては、第１の適用例において図８のブロック図で示された構成に対し、高調波成分抽出部７Ａを高調波成分抽出部７Ｂに、差分電流生成部３Ａを差分電流生成部３Ｂに、電流制御器５を相電圧指令生成部１０Ｂに、それぞれ置換し、かつｄｑ変換器１１が追加された構成となっている。更に、負荷２はより詳細な構成が例示されている。
【０１５４】
第２の適用例での例示では、負荷２はインバータ２３と、インバータ２３で制御されて冷媒（不図示）を圧縮する圧縮機２４とを含む空気調和機である。負荷２は更に、インバータ２３へと直流電源を供給するためにコンバータ２１及びコンバータ２１とインバータ２３との間で並列に介挿されるコンデンサ２２も含んでいる。
【０１５５】
このような負荷２はその負荷変動が小さいので、指令値の位相を実質的に進める精度が高い観点で望ましい。
【０１５６】
ｄｑ変換器１１は補償電流Ｉｃをｄｑ変換し、ｄ軸電流Ｉｄとｑ軸電流Ｉｑとを出力する。
【０１５７】
高調波成分抽出部７Ｂは、高調波成分抽出部７Ａから逆ｄｑ変換器７６を省略し、減算器７７，電圧制御器７８、加算器７９を追加した構成となっている。高調波成分抽出部７Ｂにおける変圧器７１、位相検出器７２、ｄｑ変換器７３、ハイパスフィルタ７４，７５の機能及び相互の接続関係は、高調波成分抽出部７Ａのそれと同じである。
【０１５８】
減算器７７はコンデンサ６２が支える直流電圧Ｖｄｃとその指令値Ｖｄｃ＊との偏差を求める。電圧制御器７８は減算器７７から得られた偏差にＰＩ制御を行ってｄ軸電流の補正値を求める。当該補正値は（ｄ軸電流用の）ハイパスフィルタ７４の出力と加算器７９によって加算される。これによりｄ軸電流指令値Ｉｄ＊が加算器７９から得られる。
【０１５９】
ｑ軸電流指令値Ｉｑ＊は、ｑ軸電流用のハイパスフィルタ７５から得られる。ｄ軸電流指令値Ｉｄ＊及びｑ軸電流指令値Ｉｑ＊は、直流電圧Ｖｄｃの脈動を考慮した負荷電流Ｉｏの高調波成分を回転座標系において把握したものであると言える。よって、これらは補償電流Ｉｃを回転座標系において把握したｄ軸電流Ｉｄ、ｑ軸電流Ｉｑに対する指令値として把握できる。
【０１６０】
差分電流生成部３Ｂは遅延部３１ｄ，３１ｑと、減算器３２ｄ，３２ｑとを有している。
【０１６１】
図１４及び図１５は、それぞれ遅延部３１ｄ，３１ｑの構成を例示するブロック図である。図９に示された遅延部３１と同様にして、遅延部３１ｄ，３１ｑはいずれもタイミング設定器３０１と記憶装置９０とを有している。
【０１６２】
遅延部３１ｄ，３１ｑにおけるタイミング設定器３０１は、遅延部３１におけるタイミング設定器３０１と同様に動作する。
【０１６３】
但し、遅延部３１ｄ，３１ｑには、遅延部３１に入力した指令値Ｉｃ＊に代えて、それぞれｄ軸電流指令値Ｉｄ＊及びｑ軸電流指令値Ｉｑ＊がデータＤｉｎとして入力する。また遅延部３１から出力した先読みした指令値Ｉｃ＊に代えて、遅延部３１ｄ，３１ｑはそれぞれ、先読みしたｄ軸電流指令値Ｉｄ＊＾及び先読みしたｑ軸電流指令値Ｉｑ＊＾がデータＤｏｕｔとして出力される。
【０１６４】
減算器３２ｄ，３２ｑはいずれも第１の適用例で示された減算器３２と同様に、それぞれ偏差Ｉｅｄ，Ｉｅｑを出力する。即ち、先読みしたｄ軸電流指令値Ｉｄ＊＾とｄ軸電流Ｉｄとの間の偏差Ｉｅｄと、先読みしたｑ軸電流指令値Ｉｑ＊＾とｑ軸電流Ｉｑとの間の偏差Ｉｅｑとが、それぞれ減算器３２ｄ，３２ｑから得られる。
【０１６５】
相電圧指令生成部１０は電流制御器１０ｄｄ，１０ｑｑを有している。電流制御器１０ｄｄ，１０ｑｑはそれぞれ偏差Ｉｅｄ，Ｉｅｑに対してＰＩ制御を行うことで、電圧指令値Ｖｉｄ，Ｖｉｑを出力する。電流制御器１０ｄｄ，１０ｑｑにおけるＰＩ制御によってそれぞれ遅延時間ｔｄ，ｔｑが発生するとすれば、遅延部３１ｄに用いられた記憶装置９０の先読み時間Ｔａに遅延時間ｔｄを採用し、遅延部３１ｑに用いられた記憶装置９０の先読み時間Ｔａに遅延時間ｔｑを採用されることで、第１の適用例と同様の効果を得ることができる。
【０１６６】
なお、図１３ではｄ軸における電流制御とｑ軸における電流制御との間でのいわゆる干渉を避けるための構成（以下「非干渉構成」と称す）が採用されて、電圧指令値Ｖｉｄ，Ｖｉｑが補正される態様が示される。非干渉構成は公知の技術であるので、説明は簡略にするに留める。
【０１６７】
具体的には、乗算器１０ｄｑ，１０ｑｄ、減算器１０ｄ及び加算器１０ｑが追加して設けられる。
【０１６８】
乗算器１０ｄｑは三相の交流電圧Ｖｓの角周波数ω（＝２π／Ｔｒ）と連系リアクトルのインダクタンスＬ’との積ωＬ’をｄ軸電流指令値Ｉｄ＊に乗算して加算器１０ｑに与える。
【０１６９】
乗算器１０ｑｄは角周波数ωとインダクタンスＬ’との積ωＬ’をｑ軸電流指令値Ｉｑ＊に乗算して減算器１０ｄに与える。
【０１７０】
減算器１０ｄは電流制御器１０ｄｄから得られた電圧指令値Ｖｉｄを、乗算器１０ｑｄからの出力を差し引くことによって補正する。
【０１７１】
加算器１０ｑは電流制御器１０ｑｑから得られた電圧指令値Ｖｉｑを、乗算器１０ｄｑからの出力を加えることによって補正する。
【０１７２】
なお、乗算器１０ｄｑ，１０ｑｄには、（先読みしていない）ｄ軸電流指令値Ｉｄ＊及びｑ軸電流指令値Ｉｑ＊が与えられる。これは乗算器１０ｄｑ，１０ｑｄでの処理には電流制御器１０ｄｄ，１０ｑｑでの処理のような遅延が発生しない観点に基づいている。
【０１７３】
但し、定常状態では非干渉構成の影響は小さく、また遅延部３１ｄ，３１ｑにおける遅延は定常状態でなければ実質的な先読みに相当しない。よって、かかる観点からは、乗算器１０ｄｑ，１０ｑｄには、先読みしたｄ軸電流指令値Ｉｄ＊＾及び先読みしたｑ軸電流指令値Ｉｑ＊＾が与えられてもよい。
【０１７４】
なお、ｄ軸とｑ軸の干渉を考慮しない場合、当然ながら、乗算器１０ｄｑ，１０ｑｄ、減算器１０ｄ及び加算器１０ｑを省略することができる。
【０１７５】
第２の適用例では第１の適用例とは異なり、駆動信号生成回路８は、二相の電圧指令値Ｖｉｄ，Ｖｉｑに基づいて並列形アクティブフィルタ６を駆動する駆動信号Ｇを生成する。
【０１７６】
よって電圧指令値Ｖｉｄ，Ｖｉｑも三相の電圧指令値Ｖ＊と同様に、駆動信号Ｇを介して間接的に並列形アクティブフィルタ６を制御する制御信号であると言える。かかる機能を有する駆動信号生成回路８の構成は周知であるので、ここでの説明は省略する。
【０１７７】
図１６は第２の適用例にかかるアクティブフィルタ制御装置の効果を示すグラフであり、上段から下方に向かって順に、ｄ軸電流Ｉｄ、偏差Ｉｅｄ、ｑ軸電流Ｉｑ、偏差Ｉｅｑ、電源電流Ｉｓのそれぞれの波形を示している。
【０１７８】
ｄ軸電流Ｉｄは、電源電流Ｉｓが実際には三相であることを反映して、電源電流Ｉｓの周期Ｔｒの１／６の周期Ｔｒ／６で周期的に変動している。そしてｄ軸電流Ｉｄはほぼ正弦波を呈している。同様に、ｑ軸電流Ｉｑも周期Ｔｒ／６で周期的に変動している。
【０１７９】
偏差Ｉｅｄ，Ｉｅｑは小さく、電源電流Ｉｓもほぼ正弦波を呈して高調波が抑制されていることがわかる。
【０１８０】
このように、第２の適用例でも第１の適用例と同様に、電流制御器１０ｄｄ，１０ｑｑにおける演算処理による電源電流Ｉｓの高調波成分の抑制について、その阻害が改善されたことが判る。
【０１８１】
第２の適用例では上述のように、補償電流Ｉｃが回転座標系においてｄ軸電流Ｉｄ及びｑ軸電流Ｉｑで把握され、偏差Ｉｅｄ，Ｉｅｑもこの回転座標系において求められる。交流電源１が三相以上の多相電源であっても、回転座標系は二相として把握できるので、遅延部３１ｄ，３１ｑや電流制御器１０ｄｄ，１０ｑｑは二相分で足りる。第１の適用例においては、遅延部３１や電流制御器５は、実際には三相分が必要であった。
【０１８２】
なお、第２の適用例では特に、ｄ軸電流Ｉｄ及びｑ軸電流Ｉｑが、交流電圧Ｖｓの周期Ｔｒの１／６で周期的に変動していることが、他の効果を招来する。つまり、回転座標系における指令値Ｉｄ＊、Ｉｑ＊や、補償電流たるｄ軸電流Ｉｄ及びｑ軸電流Ｉｑの周期は、固定座標系におけるそれら（第１の適用例における指令値Ｉｃ＊や補償電流Ｉｃ）の電源周期Ｔｒよりも短い。これは遅延部３１ｄ，３１ｑに採用される記憶装置９０における記憶部９１の記憶容量を小さくできる観点で望ましい。
【０１８３】
具体的には例えば、第１の適用例で示された遅延部３１において記憶装置９０は３個設けられる。よって周期Ｔｒの３倍分のメモリ容量が必要となる。
【０１８４】
他方、遅延部３１ｄは、ｄ軸電流指令値Ｉｄ＊を周期Ｔｒ／６相当分を順次に記憶し、これを所定の遅延量で順次に出力すれば足りる。遅延部３１ｑについても同様である。よって必要なメモリ容量は周期Ｔｒの１／３倍分であり、第１の適用例と比較して１／９に低減できる。
【０１８５】
第３の適用例．
記憶装置９０は、先読み時間Ｔａと電源周期Ｔｒとを一致させることにより、いわゆる繰り返し制御に用いることもできる。
【０１８６】
図１７は記憶装置９０を繰り返し制御部３３ｄ，３３ｑに用いたアクティブフィルタ制御装置の他の構成を示すブロック図である。
【０１８７】
第３の適用例においては、第２の適用例において図１３のブロック図で示された構成に対し、差分電流生成部３Ｂを差分電流生成部３Ｃに、相電圧指令生成部１０Ｂを相電圧指令生成部１０Ｃに、それぞれ置換した構成が例示されている。
【０１８８】
差分電流生成部３Ｃは、繰り返し制御部３３ｄ，３３ｑと、減算器３２ｄ，３２ｑとを有している。
【０１８９】
第３の適用例では、減算器３２ｄはｄ軸電流指令値Ｉｄ＊とｄ軸電流Ｉｄとの間の偏差Ｉｅｄを出力し、減算器３２ｑはｑ軸電流指令値Ｉｑ＊とｑ軸電流Ｉｑとの間の偏差Ｉｅｑを出力する。
【０１９０】
図１８及び図１９は、それぞれ繰り返し制御部３３ｄ，３３ｑの構成を例示するブロック図である。図９に示された遅延部３１と同様にして、繰り返し制御部３３ｄ，３３ｑはいずれもタイミング設定器３０１と記憶装置９０とを有する他、更にそれぞれ加算器３０２ｄ，３０２ｑをも有している。
【０１９１】
繰り返し制御部３３ｄ，３３ｑにおけるタイミング設定器３０１は、遅延部３１におけるタイミング設定器３０１と同様に動作する。
【０１９２】
但し、繰り返し制御部３３ｄ，３３ｑには、遅延部３１に入力した指令値Ｉｃ＊に代えて、それぞれ偏差Ｉｅｄ，Ｉｅｑが、データＤｉｎとして入力する。また遅延部３１から出力されていた、先読みした指令値Ｉｃ＊に代えて、繰り返し制御部３３ｄ，３３ｑでは、それぞれ先読みした偏差Ｉｅｄの積算値及び先読みした偏差Ｉｅｑの積算値が、データＤｏｕｔとして出力される。ここで、データＤｉｎは書き込みアドレスＡ（＃Ｋ）に格納され、データＤｏｕｔは読み出しアドレスＢ（＃Ｌ）から読み出される。
【０１９３】
繰り返し制御部３３ｄにおいて、記憶装置９０が書き込みアドレスＡ（＃Ｋ）で記憶している値を、偏差Ｉｅｄで増加させて記憶する。これは記憶装置９０において、記憶部９１が、アドレス毎に記憶した値を、入力した値で増加させて更新して記憶する機能をも備えることで実現できる。
【０１９４】
繰り返し制御部３３ｑにおいても同様にして、記憶部９１がアドレス毎に記憶した値を、入力した値で増加させて更新して記憶する加算機能をも備え、記憶装置９０が書き込みアドレスＡ（＃Ｋ）で記憶している値を、偏差Ｉｅｄで増加させて記憶する。
【０１９５】
相電圧指令生成部１０Ｃは、相電圧指令生成部１０Ｂに対して、加算器１０１ｄ，１０１ｑを追加した構成を有している。
【０１９６】
加算器１０１ｄは電流制御器１０ｄｄの出力と、繰り返し制御部３３ｄの出力との和を出力する。そして減算器１０ｄは加算器１０１ｄから乗算器１０ｄｑの出力を差し引いて、電圧指令値Ｖｉｄを出力する。
【０１９７】
加算器１０１ｑは電流制御器１０ｑｑの出力と、繰り返し制御部３３ｑの出力との和を出力する。そして加算器１０ｑは加算器１０１ｑに乗算器１０ｑｄの出力を加えて電圧指令値Ｖｉｑを出力する。
【０１９８】
図２０は第３の適用例におけるアクティブフィルタ制御装置の効果を示すグラフであり、諸量は一相分のみを示している。図１０に示されたグラフと同様に、電源電流Ｉｓの高調波成分が小さいことが判る。
【０１９９】
このように、記憶装置９０は繰り返し制御にも適用できる。
【符号の説明】
【０２００】
９０  記憶装置
９１  記憶部
９３  アドレス指定部
【図１】
2014217206.tif 000003
【図２】
2014217206.tif 000004
【図３】
2014217206.tif 000005
【図４】
2014217206.tif 000006
【図５】
2014217206.tif 000007
【図６】
2014217206.tif 000008
【図７】
2014217206.tif 000009
【図８】
2014217206.tif 000010
【図９】
2014217206.tif 000011
【図１０】
2014217206.tif 000012
【図１１】
2014217206.tif 000013
【図１２】
2014217206.tif 000014
【図１３】
2014217206.tif 000015
【図１４】
2014217206.tif 000016
【図１５】
2014217206.tif 000017
【図１６】
2014217206.tif 000018
【図１７】
2014217206.tif 000019
【図１８】
2014217206.tif 000020
【図１９】
2014217206.tif 000021
【図２０】
2014217206.tif 000022
【図２１】
2014217206.tif 000023
【図２２】
2014217206.tif 000024