以下に添付図面を参照して、この発明に係る光通信装置、同光通信装置の制御装置および光出力安定化方法の実施例を図面に基づいて詳細に説明する。なお、本実施例では、光スイッチ素子として、駆動電流型の光スイッチ素子を用いた場合について説明するが、これによりこの発明が限定されるものではなく、電気熱による温度上昇が生じるおそれのある他の光スイッチ素子に対しても適用可能である。
まず、本実施例に係る光通信装置の概要について説明する。図1は本実施例に係る光通信装置の構成の概要を示すブロック図である。図1に示すように、本実施例に係る光通信装置1は、光パケット変換部10と、ドライバ部20と、制御部30とを有する。
光パケット変換部10は、光信号出力部として機能するものであり、スーパーコンピュータ等の計算ノード(図示せず)からの情報に基づいて光信号を出力する装置である。ドライバ部20は、光パケット変換部10より出力された光信号の経路の切り替えを行う装置である。制御部30は、光通信装置1全体を制御する制御装置であり、光信号の経路の切り替え制御や光スイッチ素子22の温度制御等を行う。
ドライバ部20は、光スイッチモジュール21を有する。この光スイッチモジュール21は、光信号の経路切り替えを行う光スイッチ素子22と、光スイッチ素子22の温度を測定するためのサーミスタ23と、光スイッチ素子22の温度を加熱/冷却する熱電冷却素子24とを有する。
制御部30は、駆動制御部31と、温度制御部32とを有する。駆動制御部31は、光パケット変換部10の要求に従って、光スイッチ素子22の経路の切り替えを制御する。温度制御部32は、熱電冷却素子24に制御信号を出力することにより光スイッチ素子22の温度制御を行うものであり、電流検出部33と、温度検出部34とを有する。電流検出部33は、駆動制御部31による駆動電流の発生を検出する。温度検出部34は、サーミスタ23の抵抗値に基づいて光スイッチ素子22の温度を検出する。
ここで、光スイッチ素子22は、駆動電流型と呼ばれるものであり、駆動制御部31から注入される駆動電流に応じて光信号のオン−オフを行う光ゲートとして機能する。すなわち、駆動制御部31は、光パケット変換部10からの出力信号に応じて光スイッチ素子22に駆動電流を供給(注入)することで、当該光スイッチ素子22をゲートオン状態とする。
また、温度制御部32は、温度検出部34により検出した光スイッチ素子22の温度に応じて、光スイッチ素子22の温度を所定温度に保つための制御信号を熱電冷却素子24に出力する。
さらに、温度制御部32は、温度検出部34が駆動電流の発生を検出すると、光スイッチ素子22の温度を所定温度に保つための制御信号を熱電冷却素子24に出力する。そして、冷却部として機能する熱電冷却素子24は、これら制御信号に基づき光スイッチ素子22を冷却する。
このように、本実施例に係る温度制御部32は、電流検出部33の検出結果に基づくフィードフォワード制御および温度検出部34の検出結果に基づくフィードバック制御によって、光スイッチ素子22の温度制御を行う。
ここで、本実施例にかかる光通信装置1の光出力安定化方法を光スイッチ素子22に対してフィードバック制御のみによる温度制御を行った場合と比較して説明する。図2はフィードバック制御のみによる光スイッチ素子22の温度制御を説明するための図であり、図3はサーミスタ23の温度と光信号の出力レベルとの関係を示す図であり、図4は本実施例に係る光通信装置1の光出力安定化方法を説明するための図である。
図2に示すように、時間t1において駆動電流がOFF状態からON状態となると、光スイッチ素子22に駆動電流が注入され、光スイッチ素子22の温度が上昇する。しかし、光スイッチ素子22の温度がサーミスタ23に伝わるには時間がかかるため、この時点では光スイッチ素子22に対する温度制御は行われず、時間t2においてサーミスタ23の温度が上昇して初めて光スイッチ素子22の温度制御が行われる。
そのため、図3に示すように、光出力レベルは、駆動電流がON状態となった時点では所望の値まで上昇するものの(A)、光スイッチ素子22の温度上昇をサーミスタ23が検出するまでにタイムラグが生じ(B)、温度制御が遅れるため、出力レベルの低下が生じる(C)。このように、フィードバック制御のみでは、光出力レベルの変動を適切に防止することは困難である。
そこで、本実施例に係る光通信装置1では、光スイッチ素子22の温度制御方法として、フィードバック制御と併せてフィードフォワード制御を行う。具体的には、光通信装置1は、図4に示すように、時間t3において駆動電流がON状態となったことを電流検出部33が検出した時点で、光スイッチ素子22に対する温度制御を開始する。これにより、光スイッチ素子22の温度上昇とほぼ同時に温度制御が開始されるため、フィードバック制御のみの場合と比べて光スイッチ素子22の温度上昇をより適切に制御することができ、光出力レベルを安定させることができる。
次に、本実施例に係る光通信装置1の具体的な構成について図5を参照して説明する。図5は本実施例に係る光通信装置1の構成を示すブロック図である。なお、本実施例に係る光通信装置1は、光パケット変換部10および光スイッチモジュール21をそれぞれ3つ備えているが、光パケット変換部10や光スイッチモジュール21の数はこれに限ったものではない。
図5に示すように、本実施例に係る光通信装置1において、光パケット変換部10a〜10cは、転送データを光パケット変換することにより、光信号をドライバ部20へ送信する。また、光パケット変換部10a〜10cは、それぞれ計算ノード11a〜11cから送信されるアドレス情報に基づいて駆動制御部31にポート接続情報を送信する。このポート接続情報は、駆動電流を注入する光スイッチ素子22を決定するための情報を含む情報である。
また、ドライバ部20は、光スイッチモジュール21a〜21cと、光アンプ25a〜25cと、PD26a〜26fと、分配カプラ27a〜27cと、合波カプラ27d〜27fとを有する。光アンプ25a〜25cは、光パケット変換部10から出力される光信号を増幅する。PD(PhotoDiode)は、光信号を電気信号に変換し、当該変換した電気信号を信号レベル検出部36に送信する。分配カプラ27a〜27cは、光アンプ25a〜25cから出力された光信号を光スイッチ素子22a〜22iへ分配する。合波カプラ27d〜27fは、各光スイッチ素子22a〜22iから送信される光信号を合波する。
光スイッチモジュール21a〜21cは、光スイッチ素子をそれぞれ3つずつ有する。具体的には、光スイッチモジュール21aは、光スイッチ素子22a〜22cを有し、光スイッチモジュール21bは、光スイッチ素子22d〜22fを有し、光スイッチモジュール21cは、光スイッチ素子22g〜22iを有する。なお、光スイッチモジュール21の有する光スイッチ素子22の数は、これに限ったものではない。
また、制御部30は、駆動制御部31と、温度制御部32と、O/E変換部35と、信号レベル検出部36と、利得制御部37とを有する。O/E変換部35は、光パケット変換部10から送信されるポート接続情報を電気信号に変換する。信号レベル検出部36は、PD26a〜26cから取得した電気信号に基づき光信号の入力レベルを検出するとともに、PD26d〜26fから取得した電気信号に基づき光信号の出力レベルを検出する。利得制御部37は、信号レベル検出部36により検出された光信号の入力レベルおよび出力レベルに基づいて、光アンプ25a〜25cによる光信号の増幅量を制御する。
そして、駆動制御部31は、光パケット変換部10a〜10cからのポート接続情報に基づいて光スイッチ素子22a〜22iを選択し、所望のポートを接続するように光スイッチ素子22a〜22iに対して駆動電流を注入する。これにより、光パケット変換部10a〜10cから送信される光信号は、光スイッチモジュール21a〜21c内でスイッチングされて、接続先の計算ノード11へ転送される。
さらに、駆動制御部31および温度制御部32の具体的な構成を図6に示す。図6に示すように、駆動制御部31は、駆動設定部100と、D/A変換部101とを有する。駆動設定部100は、光パケット変換部10からのポート接続情報に基づき、駆動電流を注入する光スイッチ素子22a〜22iを選択したり、光スイッチ素子22に注入する駆動電流の大きさや駆動電流の注入タイミング等を設定したりする。また、駆動設定部100は、設定した情報に基づきD/A変換部101にデジタル電気信号を送信する。D/A変換部101は、駆動設定部100からのデジタル電気信号をアナログ電気信号に変換して、光スイッチ素子22に出力する。
温度制御部32は、電流検出部33と、温度検出部34と、記憶部110と、FF演算制御部111と、監視制御部112と、自動パラメータ設定部113と、PID演算制御部114と、D/A変換部115と、温度コントローラ116とを有する。
電流検出部33は、駆動設定部100から出力されるデジタル電気信号に基づいて駆動電流の発生を検出する。記憶部110は、温度制御を行う際の光スイッチ素子22の目標温度や、その目標温度との許容誤差を決定する温度閾値等を記憶する他、電流検出部33の検出結果に基づくフィードフォワード制御を行う際の制御パラメータを光スイッチ素子22ごとに記憶する。
FF演算制御部111は、電流検出部33の検出結果に応じて、記憶部110に記憶された制御パラメータに基づきフィードフォワード制御の制御量を演算する。
監視制御部112は、記憶部110に記憶されている目標温度や閾値温度および温度検出部34により検出された光スイッチ素子22の温度に応じて自動パラメータ設定部113の制御を行う。
自動パラメータ設定部113は、温度検出部34や監視制御部112からの情報に基づきフィードバック制御やフィードフォワード制御を行う際の制御パラメータの設定を行う。PID(Proportional Integral Derivative)演算制御部114は、自動パラメータ設定部113で設定した制御パラメータに基づいてフィードバック制御の制御量を演算する。
D/A変換部115は、PID演算制御部114で演算されたフィードバック制御の制御量に基づくデジタル電気信号をアナログ電気信号に変換する。また、D/A変換部115は、FF演算制御部111で演算された制御量に基づくデジタル電気信号をPID演算制御部114を介して取得し、アナログ電気信号に変換する。
温度コントローラ116は、D/A変換部115によりアナログ変換された電気信号をフィードバック制御信号あるいはフィードフォワード制御信号として熱電冷却素子24に供給する。そして、熱電冷却素子24は、供給された電流をペルチェ効果により温度に変換することで光スイッチ素子22を冷却する。なお、図中、符号120は、光スイッチ素子22やサーミスタ23を載置するための素子台である。
このように、PID演算制御部114は、フィードバック制御部として機能する。また、FF演算制御部111およびPID演算制御部114は、フィードフォワード制御部として機能する。
また、温度検出部34は、A/D変換部117と、センサ値受信部118とを有する。A/D変換部117は、サーミスタ23の抵抗値に基づくアナログ電気信号をデジタル電気信号に変換して、センサ値受信部118に出力する。センサ値受信部118は、光スイッチ素子22の温度をA/D変換部117からデジタル電気信号として受信する。なお、温度検出部34は、A/D変換部117を含まない構成としてもよい。
なお、本実施例に係る光通信装置1は、光信号の転送を行う「通常モード」の他に、フィードフォワード制御を行う際の制御パラメータの自動設定を行う「調整モード」を備えている。かかる「調整モード」の詳細については、後述する。
次に、本実施例に係る光通信装置1の具体的動作の一例として、駆動制御部31および温度制御部32の処理手順について図面を参照して説明する。まず、駆動制御部31の処理手順について説明する。図7は本実施例に係る駆動制御部31の処理手順の一例を示すフローチャートである。なお、以下の処理は、光通信装置1が実行する種々の動作のうち、「通常モード」における光スイッチ素子22の温度制御に関するもののみを示している。
図7に示すように、駆動制御部31は、処理を開始すると、まず、ポート接続情報を取得したか否かを判定する(ステップS101)。この処理において、ポート接続情報を取得したと判定すると(ステップS101肯定)、駆動制御部31は、取得したポート接続情報に基づき、駆動させる光スイッチ素子22を選択する(ステップS102)。
続いて、駆動制御部31は、駆動電流量を設定し(ステップS103)、選択した光スイッチ素子22に対して駆動電流を注入する(ステップS104)。ステップS104の処理を終えたとき、或いは、ステップS101において、ポート接続情報を取得していないとき(ステップS101否定)、駆動制御部31は、処理をステップS101に移行する。
図8は、温度制御部32の処理手順の一例を示すフローチャートである。図8に示すように、温度制御部32は、処理を開始すると、駆動電流の発生を検出したか否かを判定する(ステップS201)。この判定は、電流検出部33が、駆動設定部100からD/A変換部101に出力されるデジタル電気信号を検出したか否かにより判定される。この処理において、駆動電流の発生を検出したと判定すると(ステップS201肯定)、温度制御部32は、記憶部110に記憶されているフィードフォワード制御の制御量に関する情報のうち、ステップS102において選択された光スイッチ素子22に対応する情報を取得する(ステップS202)。そして、温度制御部32は、取得した情報に基づき、ステップS102において選択された光スイッチ素子22に対応する熱電冷却素子に対してフィードフォワード制御信号を出力する(ステップS203)。
一方、ステップS201において、駆動電流を検出していないとき(ステップS201否定)、監視制御部112は、光スイッチモジュール21の温度と目標温度との差が温度閾値外であるか否かを判定する(ステップS204)。この判定において、光スイッチモジュール21の温度と目標温度との差が温度閾値外であると判定すると(ステップS204肯定)、PID演算制御部114は、光スイッチモジュール21の温度と目標温度との差に応じたフィードバック制御量を演算する(ステップS205)。そして、温度制御部32は、ステップS205での演算結果に応じたフィードバック制御信号を熱電冷却素子24に出力する(ステップS206)。
ステップS203、S206の処理を終えたとき、あるいは、ステップS204において、光スイッチモジュール21の温度と目標温度との差が温度閾値外ではないとき(ステップS204否定)、温度制御部32は、処理をステップS201に移行する。
次に、本実施例に係る光通信装置1が備える「調整モード」について図面を用いて具体的に説明する。本実施例に係る、フィードフォワード制御は、比例係数、積分係数及び微分係数に基づいて実行されるPID制御である。そして、この「調整モード」は、これら各パラメータを光スイッチ素子22ごとに自動で設定するモードである。
図9は、本実施例に係る自動パラメータ設定部113の処理手順の一例を示す図である。なお、図9においては、自動パラメータ設定部113が実行する処理手順のうち、「調整モード」に関連する処理手順のみを示している。
図9に示すように、自動パラメータ設定部113は、処理を開始すると、制御パラメータ設定の対象となる光スイッチ素子22を選択する(ステップS301)。次に、自動パラメータ設定部113は、比例係数決定処理を行う。この比例係数決定処理は、制御パラメータの一つである比例係数を決定する処理であり、後述する。
続いて、自動パラメータ設定部113は、積分係数決定処理を行う。この積分係数決定処理は、制御パラメータの一つである積分係数を決定するための処理であり、後述する。続いて、自動パラメータ設定部113は、微分係数決定処理を行う。この微分係数決定処理は、制御パラメータの一つである微分係数を決定するための処理であり、後述する。
続いて、自動パラメータ設定部113は、ステップS302〜S304の各処理において決定した制御パラメータに基づいてフィードフォワード制御量を演算する(ステップS305)。そして、自動パラメータ設定部113は、演算したフィードフォワード制御量をステップS301において選択した光スイッチ素子22と関連付けて記憶部110に記憶する(ステップS306)。この処理を終えたとき、自動パラメータ設定部113は、処理を終了する。
図10は、比例係数決定処理の処理手順の一例を示すフローチャートであり、図11は、比例係数決定処理を実行した際の光スイッチ素子22の温度変化を示す図である。図10に示すように、自動パラメータ設定部113は、比例係数決定処理を開始すると、設定情報として、記憶部110に記憶されている光スイッチ素子22の目標温度および温度閾値をセットする(ステップS401)。また、自動パラメータ設定部113は、比例係数として予め決められた値(初期値)をセットする(ステップS402)。そして、自動パラメータ設定部113は、上記セットした情報に基づいて駆動電流をオンする(ステップS403)。なお、この比例係数初期値は、記憶部110の所定の領域に記憶されている。
続いて、自動パラメータ設定部113は、光スイッチ素子22の温度が安定したか否かを判定する(ステップS404)。この判定は、監視制御部112による光スイッチ素子22の温度の監視結果に基づき判定される。具体的には、図11に示すように、監視制御部112は、目標温度と光スイッチ素子22の温度との差を定期的に監視しており、n〜n+10回までの監視結果が一定となったとき、自動パラメータ設定部113は、光スイッチ素子22の温度が安定したと判定する。この処理において、光スイッチ素子22の温度が安定していないとき(ステップS404否定)、自動パラメータ設定部113は、処理をステップS405に移行する。
ステップS405において、自動パラメータ設定部113は、駆動電流オンから一定時間が経過したか否かを判定する。この処理において、駆動電流オンから一定時間が経過していないとき(ステップS405否定)、自動パラメータ設定部113は、処理をステップS404に移行する。
一方、ステップS404において、光スイッチ素子22の温度が安定したと判定したとき(ステップS404肯定)、あるいは、ステップS405において、駆動電流オンから一定時間が経過したと判定したとき(ステップS405肯定)、自動パラメータ設定部113は、駆動電流をオフする(ステップS406)。
続いて、自動パラメータ設定部113は、比例係数として、前回セットした比例係数+αの値をセットし直し(ステップS407)、再び駆動電源をオンする(ステップS408)。そして、自動パラメータ設定部113は、ステップS404〜S406までの処理と同様の処理を再度行う(ステップS409〜S411)。
続いて、自動パラメータ設定部113は、目標温度と光スイッチ素子22の温度との差が前回測定したときよりも縮まったか否かを判定する(ステップS412)。この処理において、目標温度と光スイッチ素子22の温度との差が前回測定したときよりも縮まったと判定すると(ステップS412肯定)、自動パラメータ設定部113は、処理をステップS407に移行して、再度測定を行う。
一方、ステップS412において、目標温度と光スイッチ素子22の温度との差が前回測定したときよりも縮まっていないとき(ステップS412否定)、自動パラメータ設定部113は、前回の測定でセットした比例係数を最適な比例係数として決定する(ステップS413)。そして、自動パラメータ設定部113は、当該決定した比例係数をステップS301において選択した光スイッチ素子22と関連付けて記憶部110に記憶する(ステップS414)。ステップS414の処理を終えたとき、自動パラメータ設定部113は、比例係数決定処理を終了する。このように、比例係数は、光スイッチ素子22に駆動電流が供給された状態における光スイッチ素子22の安定温度と所定温度との差分に基づいて決定される。
図12は、積分係数決定処理の処理手順の一例を示すフローチャートであり、図13は、積分係数決定処理を実行した際の光スイッチ素子22の温度変化を示す図である。図12に示すように、自動パラメータ設定部113は、積分係数決定処理を開始すると、設定情報として、記憶部110に記憶されている光スイッチ素子22の目標温度および温度閾値をセットする(ステップS501)。また、自動パラメータ設定部113は、比例係数決定処理において決定した比例係数をセットする(ステップS502)。さらに、自動パラメータ設定部113は、積分係数として予め決められた値(初期値)をセットする(ステップS503)。そして、自動パラメータ設定部113は、上記セットした情報に基づいて駆動電流をオンする(ステップS504)。なお、積分係数初期値は、記憶部110の所定の領域に記憶されている。
続いて、自動パラメータ設定部113は、光スイッチ素子22の温度が安定したか否かを判定する(ステップS505)。この処理において、光スイッチ素子22の温度が安定していないとき(ステップS505否定)、自動パラメータ設定部113は、処理をステップS506に移行する。
ステップS506において、自動パラメータ設定部113は、駆動電流オンから一定時間が経過したか否かを判定する。この処理において、駆動電流オンから一定時間が経過していないとき(ステップS506否定)、自動パラメータ設定部113は、処理をステップS505に移行する。
一方、ステップS505において、光スイッチ素子22の温度が安定したと判定したとき(ステップS505肯定)、あるいは、ステップS506において、駆動電流オンから一定時間が経過したと判定したとき(ステップS506肯定)、自動パラメータ設定部113は、処理をステップS507に移行する。
ステップS507において、自動パラメータ設定部113は、光スイッチ素子22の温度が温度閾値内であるか否かを判定する。すなわち、自動パラメータ設定部113は、図13に示すように、PI制御(比例積分制御)により制御されて安定した光スイッチ素子22の温度が、温度閾値内に収まっているか否かを判定する。
この処理において、光スイッチ素子22の温度が温度閾値内でないとき(ステップS507否定)、自動パラメータ設定部113は、駆動電流をオフする(ステップS508)。そして、自動パラメータ設定部113は、積分係数として、前回セットした積分係数+αの値をセットし直し(ステップS509)、処理をステップS504に移行する。このようにして、自動パラメータ設定部113は、光スイッチ素子22の温度が温度閾値内となるまで、積分係数を変更して測定を続ける。
一方、ステップS507において、光スイッチ素子22の温度が温度閾値内であると判定すると(ステップS507肯定)、自動パラメータ設定部113は、駆動電流をオフする(ステップS510)。そして、自動パラメータ設定部113は、当該測定においてセットした積分係数を最適な積分係数として決定し(ステップS511)、決定した積分係数をステップS301において選択した光スイッチ素子22と関連付けて記憶部110に記憶する(ステップS512)。ステップS512の処理を終えたとき、自動パラメータ設定部113は、積分係数決定処理を終了する。
このように、積分係数は、比例係数決定処理において決定された比例係数と、光スイッチ素子22に駆動電流が供給された状態における光スイッチ素子22の安定温度と所定温度との差分とに基づいて決定される。
図14は、微分係数決定処理の処理手順の一例を示すフローチャートであり、図15は、微分係数決定処理を実行した際の光スイッチ素子22の温度変化を示す図である。図14に示すように、自動パラメータ設定部113は、微分係数決定処理を開始すると、設定情報として、記憶部110に記憶されている光スイッチ素子22の目標温度および温度閾値をセットする(ステップS601)。また、自動パラメータ設定部113は、比例係数決定処理において決定した比例係数をセットする(ステップS602)。また、自動パラメータ設定部113は、積分係数決定処理において決定した積分係数をセットする(ステップS603)。
さらに、自動パラメータ設定部113は、微分係数として予め決められた値(初期値)をセットする(ステップS604)。そして、自動パラメータ設定部113は、上記セットした情報に基づいて駆動電流をオンする(ステップS605)。なお、この微分係数初期値は、記憶部110の所定の領域に記憶されている。
続いて、自動パラメータ設定部113は、光スイッチ素子22の温度が安定したか否かを判定する(ステップS606)。この処理において、光スイッチ素子22の温度が安定していないとき(ステップS606否定)、自動パラメータ設定部113は、処理をステップS607に移行する。
ステップS607において、自動パラメータ設定部113は、駆動電流オンから一定時間が経過したか否かを判定する。この処理において、駆動電流オンから一定時間が経過していないとき(ステップS607否定)、自動パラメータ設定部113は、処理をステップS606に移行する。
一方、ステップS606において、光スイッチ素子22の温度が安定したと判定したとき(ステップS606肯定)、あるいは、ステップS607において、駆動電流オンから一定時間が経過したと判定したとき(ステップS607肯定)、自動パラメータ設定部113は、光スイッチ素子22の温度の最大上昇値を記憶部110に記憶する(ステップS608)。すなわち、自動パラメータ設定部113は、図15に示すように、温度検出部34が検出した光スイッチ素子22の温度の最大値と駆動電流をオンする前の光スイッチ素子22の安定温度との差Tを記憶する。この最大温度上昇値Tを記憶した後、自動パラメータ設定部113は、駆動電流をオフする(ステップS609)。
続いて、自動パラメータ設定部113は、微分係数として、前回セットした微分係数+αの値をセットし直し(ステップS610)、再び駆動電源をオンする(ステップS611)。そして、自動パラメータ設定部113は、ステップS606〜S609までの処理と同様の処理を再度行う(ステップS612〜S615)。
続いて、自動パラメータ設定部113は、最大温度上昇値Tが前回測定したときよりも小さいか否かを判定する(ステップS616)。この処理において、最大温度上昇値Tが前回測定したときよりも小さいと判定すると(ステップS616肯定)、自動パラメータ設定部113は、処理をステップS610に移行して、再度測定を行う。
一方、ステップS616において、最大温度上昇値Tが前回測定したときよりも小さくないとき(ステップS616否定)、自動パラメータ設定部113は、前回の測定でセットした微分係数を最適な微分係数として決定する(ステップS617)。そして、自動パラメータ設定部113は、当該決定した微分係数をステップS301において選択した光スイッチ素子22と関連付けて記憶部110に記憶する(ステップS618)。ステップS618の処理を終えたとき、自動パラメータ設定部113は、微分係数決定処理を終了する。
このように、微分係数は、比例係数決定処理において決定された比例係数及び積分係数決定処理において決定された積分係数と、光スイッチ素子22に駆動電流が供給された際の光スイッチ素子22の最大温度上昇値とに基づいて決定される。
本実施例に係る光通信装置1は、このようにして決定した各パラメータに基づきフィードフォワード制御量を演算し、当該演算結果に基づくフィードフォワード制御信号を熱電冷却素子24に出力する。これにより、駆動電流がONした直後から最適な制御量でフィードフォワード制御が行われるため、図16に示すように、光スイッチ素子22の温度上昇を閾値温度内に留めることができる。
上述してきたように、実施例1に係る光通信装置1によれば、フィードバック制御およびフィードフォワード制御によって光スイッチ素子22の温度を適切に制御することにより、光信号をより安定して出力することができる。
また、実施例1に係る光通信装置1は、「調整モード」を有することにより、フィードフォワード制御を行う際の最適な制御パラメータを光スイッチ素子22ごとに自動で設定することができる。
実施例1に係る光通信装置1では、光スイッチ素子22の温度に基づきフィードバック制御を行うとともに、駆動電流の発生に基づきフィードフォワード制御を行うことにより、光スイッチ素子22の温度を適切に制御して、光出力レベルの安定化を図った。しかし、フィードフォワード制御を行った場合であっても、熱電冷却素子24で発生した冷却熱が光スイッチ素子22に伝わるまでに時間がかかる。したがって、光信号をより安定して出力するためには、このロスタイム間に発生する光出力レベルの低下も抑える必要がある。
そこで、実施例2では、上述したフィードフォワード制御に加え、駆動電流の発生に基づき光信号の増幅量を制御することによって光出力レベルの更なる安定化を図っている。以下に、実施例2に係る光通信装置の概要について図面を用いて説明する。なお、既に説明した構成と同じものについては同一の符号を付し、その説明を省略する。
実施例2に係る光通信装置1は、図5を参照して説明した実施例1に係る光通信装置1と同様の構成を有する。もっとも、実施例2に係る光通信装置1は、さらに利得制御部37を有する点が、実施例1に係る光通信装置1と異なる。この点を図17を用いて説明する。図17は、実施例2における利得制御部、駆動制御部及び光スイッチモジュールの構成を示すブロック図である。図17に示すように、本実施例に係る光通信装置1における利得制御部37は、電流検出部130と、利得ゲイン設定部131とを有する。電流検出部130は、光パケット変換部10からポート接続情報を取得する。
利得ゲイン設定部131は、信号レベル検出部36により検出された光信号の入力レベルおよび出力レベルに基づいて、光アンプ25に対して光信号の増幅量を決定するための制御信号を出力する。また、利得ゲイン設定部131は、電流検出部130から取得したポート接続情報に基づき、光信号が出力される光スイッチ素子22を特定し、特定した光スイッチ素子22に対応する光アンプ25に対して光信号の増幅量を決定するための制御信号を出力する。
このように、電流検出部130は、ポート接続情報を取得することにより駆動電流の発生を検出する。そして、利得制御部37は、電流検出部130が駆動電流の発生を検出すると、信号レベル検出部36による検出結果にかかわらず、光信号を所定時間だけ増幅させるための制御信号を光アンプ25に出力する。
次に、本実施例に係る利得制御部37の処理手順の一例を図18を用いて詳細に説明する。図18は、本実施例に係る利得制御部37の処理手順の一例を示すフローチャートである。
図18に示すように、利得制御部37は、処理を開始すると、駆動電流の発生を検出したか否かを判定する(ステップS701)。この判定は、電流検出部130がポート接続情報を取得したか否かにより判定される。この処理において、駆動電流の発生を検出していないとき(ステップS701否定)、利得制御部37は、処理をステップS702に移行する。
ステップS702において、利得制御部37は、光信号の入力レベルと出力レベルとの差が所定値以上であるか否かを判定する。この処理において、光信号の入力レベルと出力レベルとの差が所定値以上であると判定すると(ステップS702肯定)、利得制御部37は、入力レベルと出力レベルとの差に応じた制御信号を光アンプに出力する(ステップS703)。
一方、ステップS701において、駆動電流の発生を検出したと判定すると(ステップS701肯定)、利得制御部37は、光信号の入力レベルを所定時間だけ増幅させるための制御信号を光アンプに出力する(ステップS704)。ここで、所定時間とは、熱電冷却素子24による冷却熱が光スイッチ素子22に伝わるまでに要する時間とする。また、入力レベルの増幅量は、駆動電流が光スイッチ素子22に注入されてから温度制御部32によるフィードフォワード制御が開始されるまでの間における入力レベルの低下量とする。
このように、本実施例に係る光通信装置1は、駆動電流が光スイッチ素子22に注入されると、熱電冷却素子24による冷却熱が光スイッチ素子22に伝わるまでの間、通常よりも高レベルの光信号を光スイッチ素子22に出力する。これにより、フィードフォワード制御のみでは防げなかった駆動電流の発生直後に生じる光出力レベルの低下を防ぐことができる。
上述してきたように、本実施例2では、光スイッチ素子22の温度をより適切に制御することにより、光信号をより一層安定的に出力することができる。
さて、実施例1に係る光通信装置1では、光スイッチ素子22の温度に基づきフィードバック制御を行うとともに、駆動電流の発生に基づきフィードフォワード制御を行うことにより、光スイッチ素子22の温度を適切に制御して、光出力レベルの安定化を図った。また、実施例2に係る光通信装置1では、フィードフォワード制御に加え、駆動電流の発生に基づき光信号の増幅量を制御することによって光出力レベルの更なる安定化を図った。しかし、実施例1および実施例2いずれの場合においても、光スイッチ素子22の駆動や光信号の増幅のために流れる電流量が急激に変化し、光スイッチモジュール21に流れる電流量が急激に変化すると、光スイッチ素子22の温度変化も急激になり、許容範囲に保つことができなくなる。したがって、光スイッチ素子22の温度をより適切に制御し、光信号をより安定して出力するためには、電流量の急激な変化にも対応することが望ましい。
そこで、実施例3では、実施例1において説明したフィードフォワード制御に加え、フィードバック制御の目標温度を動的に変更することによって、光スイッチ素子22の温度をより適切に制御し、光信号をより安定して出力する。以下、まず、目標温度の動的変更を実施しない場合の課題を方式毎に説明する。
[目標温度の動的変更を実施しない場合の課題]
図19〜図21を用いて、目標温度の動的変更を実施しない場合の課題を方式毎に説明する。図19は、温度制御を行わない方式における課題を説明するための図であり、図20は、フィードバック制御による温度制御のみを行う方式における課題を説明するための図であり、図21は、フィードバック制御を行うとともにフィードフォワード制御を行う方式における課題を説明するための図である。
図19に示すように、温度制御を行わない方式においては、時刻t1で光スイッチ素子22の駆動や光信号の増幅が開始されると(A)、熱が発生し始める。すると、図19に示すように、光スイッチ素子22の温度はそれ以降上昇を続け、やがて、許容上限温度を超えてしまい、許容範囲に保つことができなくなる。
また、図20に示すように、フィードバック制御による温度制御のみを行う方式においては、図19と同様、時刻t1で光スイッチ素子22の駆動や光信号の増幅が開始されると(A)、熱が発生し始め、光スイッチ素子22の温度も上昇し始める。もっとも、フィードバック制御の働きによって光スイッチ素子22を冷却するため(B)、やがて光スイッチ素子22の温度は許容範囲内に収束する。しかし、光スイッチモジュール21に流れる電流量が急激に変化すると、図20に示すように、光スイッチ素子22の温度は許容上限温度を超えてしまう場合があり、許容範囲に保つことができなくなる。
また、図21に示すように、フィードバック制御を行うとともにフィードフォワード制御を行う方式においても、図19や図20と同様、時刻t1で光スイッチ素子22の駆動や光信号の増幅が開始されると(A)、熱が発生し始め、光スイッチ素子22の温度も上昇し始める。もっとも、図21に示すように、フィードフォワード制御の働きによって、図20に比較すると素早い温度制御が行われ、光スイッチ素子22を冷却するため、やがて光スイッチ素子22の温度は許容範囲内に収束する。
しかし、光スイッチモジュール21に流れる電流量が急激に変化すると、図21に示すように、光素子22の温度は許容上限温度を超えてしまう場合があり、許容範囲に保つことができなくなる。さらに、フィードフォワード制御によって光スイッチ素子22が冷却されるまでに遅延があるため、その間フィードバック制御も過剰に行われてしまう結果、図21に示すように、かえってアンダーシュートがでてしまう場合もある(B)。
この原因は、光スイッチモジュール21の構造にある。図6に示すように、光スイッチモジュール21は、熱電冷却素子24が光スイッチ素子22を冷却する構造になっているが、熱電冷却素子24と光スイッチ素子22との間には、素子台120が存在する。素子台120は、光スイッチ素子22の台座の役割を果たす部品であり、stemやcarrierと呼ばれる。この素子台120や光スイッチ22自体が熱容量を持つため、熱電冷却素子24の冷却効果が光スイッチ素子22に伝わるまでに時間がかかる。つまり、実施例1に係る光通信装置1や実施例2に係る光通信装置1のようにフィードフォワード制御をもってしても、光スイッチモジュール21に流れる電流量が急激に変化すると、必ずしも光スイッチ素子22の温度を許容範囲に保つことができるとは限らない。
なお、熱電冷却素子24の能力を大きくするアプローチも考えられるが、熱電冷却素子24(例えばペルチェ素子)に流す電流を大きくし過ぎると熱電冷却素子24自体が熱暴走を起こしてしまうので逆効果となる。また、光スイッチモジュール21やそれを用いた装置の物理的な制約により、無制限に熱電冷却素子24の能力を大きくできるわけではない。
このようなことから、温度制御を行わない方式、フィードバック制御による温度制御のみを行う方式、フィードバック制御を行うとともにフィードフォワード制御を行う方式のいずれの方式においても、電流量の急激な変化には対応することができず、結果として、光スイッチモジュール21を用いた装置の性能にも支障をきたしてしまう。
[実施例3に係る光通信装置の概要]
次に、図22〜図24を用いて、実施例3に係る光通信装置の概要について説明する。なお、既に説明した構成と同じものについては同一の符号を付し、その説明を省略する。図22は、実施例3における駆動制御部、温度制御部及び光スイッチモジュールの構成を示すブロック図であり、図23は、電流量モニタテーブルを説明するための図であり、図24は、温度モニタテーブルを説明するための図である。
実施例3に係る光通信装置1は、図5を参照して説明した実施例1に係る光通信装置1と同様の構成を有する。もっとも、実施例3に係る光通信装置1は、温度制御部32が目標温度判定部141をさらに有する点が、実施例1に係る光通信装置1と異なる。以下、目標温度判定部141について説明するとともに、実施例3における電流検出部33、温度検出部34、監視制御部112、記憶部110について、実施例1や実施例2と異なる点について説明する。
実施例3における記憶部110は、実施例1と同様、フィードバック制御による温度制御を行う際の光スイッチ素子22の目標温度、その目標温度との許容誤差を決定する温度閾値、フィードフォワード制御を行う際の制御パラメータを光スイッチ素子22ごとに記憶する。
もっとも、実施例3における記憶部110は、フィードバック制御による温度制御を行う際の目標温度として固定的な一つの値を記憶するのではなく、高温値、低温値、中央値の3つの値と、いずれの値が選択されているかを示す設定情報とを記憶する。記憶部110は、光通信装置1の運用者によって予め設定されることで、高温値、低温値、中央値の3つの目標温度を記憶し、また、目標温度判定部141によって設定されることで、設定情報を記憶する。後述するように、目標温度判定部141は、周期的に目標温度の判定を行い、その都度、記憶部110に設定情報を格納するので、結果として、目標温度は、高温値、低温値、中央値の3つの値の中で動的に変更されることになる。
また、実施例3における記憶部110は、電流量モニタテーブルおよび温度モニタテーブルを記憶する。後述するように、実施例3における電流検出部33は、周期的に光スイッチモジュール21の電流量を検出し、その都度、記憶部110の電流量モニタテーブルに格納することで、電流量モニタテーブルを更新する。ここで、光スイッチモジュール21の電流量とは、光スイッチ素子22に供給される駆動電流の電流量のことである。すなわち、電流検出部33は、実施例1と同様、駆動制御部31による駆動電流の発生を検出し、また、駆動電流の電流量を検出する。また、温度検出部34は、周期的に光スイッチ素子22の温度を検出し、その都度、記憶部110の温度モニタテーブルに格納することで、温度モニタテーブルを更新する。
例えば、電流量モニタテーブルは、図23に示すような情報であり、N世代分の電流量をFIFO(First In First Out)で格納する。また、例えば、温度モニタテーブルは、図24に示すような情報であり、N世代分の温度をFIFOで格納する。
電流検出部33は、周期的に光スイッチモジュール21を流れる電流量を検出し、その都度、記憶部110の電流量モニタテーブルに格納することで、電流量モニタテーブルを更新する。また、電流検出部33は、電流量モニタテーブルを参照し、電流量の直近平均値を算出すると、算出した電流量の直近平均値を目標温度判定部141に通知する。
ここで、電流量の直近平均値とは、電流量モニタテーブルに格納されている値のうち、直近数世代の値の平均値である。最新の値でなく直近平均値を用いるのは、微小な変化に過敏に反応して目標温度判定部140による判定が頻繁に変化することを防ぐためである。なお、平均化する際の世代数は、任意に設定可能である。
実施例3における温度検出部34は、周期的に光スイッチモジュール21の温度を検出し、その都度、記憶部110の温度モニタテーブルに格納することで、温度モニタテーブルを更新する。また、温度検出部34は、温度モニタテーブルを参照し、温度の直近平均値を算出すると、算出した温度の直近平均値を目標温度判定部141に通知する。
ここで、温度の直近平均値とは、温度モニタテーブルに格納されている値のうち、直近数世代の値の平均値である。最新の値でなく直近平均値を用いるのは、微小な変化に過敏に反応して目標温度判定部140による判定が頻繁に変化することを防ぐためである。なお、平均化する際の世代数は、任意に設定可能である。
目標温度判定部141は、フィードバック制御による温度制御を行う際の目標温度として、高温値、低温値、中央値の3つの値のうち、いずれの値を選択すべきかを判定し、判定結果を設定情報として記憶部110に格納することで、目標温度を動的に変更する。
具体的には、目標温度判定部141は、電流検出部33から電流量の直近平均値を周期的に通知され、温度検出部34から温度の直近平均値を周期的に通知されると、目標温度としていずれの値を選択すべきかを判定する。すなわち、目標温度判定部141は、電流量の変化状態や温度の変化状態に基づく所定のアルゴリズムによって、高温値、低温値、中央値の3つの値のうち、目標温度としていずれの値を選択すべきかを判定する。また、目標温度判定部141は、判定した目標温度の設定情報を記憶部110に格納するとともに、監視制御部112に監視タイミングであることを通知する。なお、目標温度を判定するアルゴリズムについては、後に詳述する。
実施例3における監視制御部112は、実施例1と同様、光スイッチ素子22の温度と目標温度との差が温度閾値外であるか否かを判定し、温度閾値外であると判定した場合に、フィードバック制御を行うよう自動パラメータ設定部113に通知する。もっとも、実施例3における監視制御部112は、目標温度判定部141から監視タイミングであることを通知された際に判定を行うべく記憶部110を参照するが、実施例1のように固定的な一つの値を参照するのではなく、目標温度として設定されているものをその都度参照する。
すなわち、監視制御部112は、目標温度として高温値が設定されていれば、光スイッチ素子22の温度と当該高温値との差が温度閾値外であるか否かを判定し、温度閾値外であると判定した場合には、当該高温値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。同様に、監視制御部112は、目標温度として低温値が設定されていれば、光スイッチ素子22の温度と当該低温値との差が温度閾値外であるか否かを判定し、温度閾値外であると判定した場合には、当該低温値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。また、監視制御部112は、目標温度として中央値が設定されていれば、光スイッチ素子22の温度と当該中央値との差が温度閾値外であるか否かを判定し、温度閾値外であると判定した場合には、当該中央値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。
[実施例3に係る光通信装置による処理手順]
続いて、図25を用いて、実施例3における温度制御部の処理手順を説明する。図25は、実施例3における温度制御部の処理手順の一例を示すフローチャートである。
なお、実施例1において、温度制御部の処理手順の一例として図8に示す処理手順を説明したが、この一例において、温度制御部は、駆動電流の発生を検出したか否かを判定する処理から処理を開始していた。これに対し、図25に示すように、実施例3における温度制御部は、更新タイミングであるか否かを判定する処理から処理を開始している。実施例1および実施例3のいずれにおいても、温度制御部による一連の処理は周期的に繰り返されるので、どのような処理から処理を開始するかは、運用の形態に応じて任意に変更可能である。
図25に示すように、実施例3において、電流検出部33および温度検出部34は、電流量モニタテーブルおよび温度モニタテーブルの更新タイミングであるか否かを判定している(ステップS801)。更新タイミングでないと判定すると(ステップS801否定)、電流検出部33および温度検出部34は、ステップS801の判定処理に戻る。
一方、更新タイミングであると判定すると(ステップS801肯定)、電流検出部33は、光スイッチモジュール21を流れる電流量を検出し、記憶部110の電流量モニタテーブルに格納するとともに、電流量の直近平均値を算出する(ステップS802)。なお、電流検出部33は、算出した電流量の直近平均値を目標温度判定部141に通知する。
一方、温度検出部34は、光スイッチモジュール21の温度を検出し、記憶部110の温度モニタテーブルに格納するとともに、温度の直近平均値を算出する(ステップS803)。なお、温度検出部34は、算出した温度の直近平均値を目標温度判定部141に通知する。
すると、目標温度判定部141は、電流検出部33から電流量の直近平均値を通知され、温度検出部34から温度の直近平均値を通知されるので、フィードバック制御の目標温度としていずれの値を選択すべきかを判定するPID(フィードバック制御)目標温度判定処理を行う(ステップS804)。目標温度を判定するアルゴリズムについては、後に詳述する。なお、目標温度判定部141は、判定した目標温度の設定情報を記憶部110に格納するとともに、監視制御部112に監視タイミングであることを通知する。
続いて、監視制御部112は、監視タイミングであることを目標温度判定部141から通知されると、光スイッチ素子22の温度と目標温度との差が温度閾値外であるか否かを判定する(ステップS805)。この時、監視制御部112は、記憶部110を参照し、目標温度として高温値が設定されていれば、光スイッチ素子22の温度と当該高温値との差が温度閾値外であるか否かを判定する。同様に、監視制御部112は、目標温度として低温値が設定されていれば、光スイッチ素子22の温度と当該低温値との差が温度閾値外であるか否かを判定する。また、監視制御部112は、目標温度として中央値が設定されていれば、光スイッチ素子22の温度と当該中央値との差が温度閾値外であるか否かを判定する。
判定の結果、温度閾値内であると判定した場合には(ステップS805否定)、監視制御部112は、電流検出部33に対して、駆動電流の変化を検知したか否かの判定を行うよう通知する。
一方、判定の結果、温度閾値外であると判定した場合には(ステップS805肯定)、監視制御部112は、目標温度を高温値として判定した場合には当該高温値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。同様に、監視制御部112は、目標温度を低温値として判定した場合には当該低温値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。また、監視制御部112は、目標温度を中央値として判定した場合には当該中央値を目標温度としてフィードバック制御を行うよう自動パラメータ設定部113に通知する。
すると、実施例1と同様、PID演算制御部114が、光スイッチ素子22の温度と目標温度との差に応じたフィードバック制御量を演算し(ステップS806)、温度制御部32は、ステップS806での演算結果に応じたフィードバック制御信号を熱電冷却素子24に出力する(ステップS807)。
その後、実施例1と同様、電流検出部33が、駆動電流の変化を検出したか否かを判定する(ステップS808)。電流検出部33が、駆動電流の変化を検出した場合には(ステップS808肯定)、温度制御部32は、記憶部110に記憶されているフィードフォワード制御の制御量に関する情報を取得し(ステップS809)、フィードフォワード制御信号を出力する(ステップS810)。
なお、実施例3における温度制御部32は、実施例1と同様、ステップS801からの処理を周期的に繰り返す。
[目標温度を判定するアルゴリズム]
次に、図26〜図35を用いて、目標温度を判定するアルゴリズムを詳細に説明する。
[電流量の閾値、目標温度]
まず、図26〜図29を用いて、目標温度を判定するアルゴリズムで用いられる電流量の閾値および目標温度を説明する。図26は、電流量閾値1を説明するための図であり、図27は、電流量閾値2を説明するための図である。また、図28は、低温値を説明するための図であり、図29は、高温値を説明するための図である。
まず、実施例3において、図30乃至図33に示す「I(th1)」とは、電流量閾値1であり、図26に示すように、目標温度が中央値である時(A)に電流量が増加した場合に、温度変化のピークが許容温度上限ちょうど(B)となるような電流量のことである。一方、「I(th2)」とは、電流量閾値2であり、図27に示すように、目標温度が中央値である時(A)に電流量が減少した場合に、温度変化のピークが許容温度下限ちょうど(B)となるような電流量のことである。
すなわち、実施例3における温度制御部32は、電流量の急激な変化に対応することを目的としているわけであるが、電流量の急激な変化は、電流量がある程度少ない場合やある程度多い場合に発生し得るものである。言い換えると、電流量の急激な変化は、電流量が中間的な量である場合には発生しないと考えられるのであり、このような場合には、目標温度を通常通り中央値に設定しておけばよい。
そこで、目標温度を中央値に設定すればよい電流量の値について閾値を定めたものが、電流量閾値1「I(th1)」および電流量閾値2「I(th2)」である。電流量閾値1「I(th1)」>電流量閾値2「I(th2)」の関係にあり、電流量が電流量閾値1「I(th1)」と電流量閾値2「I(th2)」との間にある場合には、目標温度を通常通り中央値に設定しておけばよい。
この電流量閾値1「I(th1)」および電流量閾値2「I(th2)」をどのように定めるかを示すものが、図26および図27である。すなわち、目標温度が中央値に設定されている状態で電流量が電流量閾値1「I(th1)」であれば、図26のように、温度変化のピークが許容温度上限ちょうどとなる。一方、目標温度が中央値に設定されている状態で電流量が電流量閾値2「I(th2)」であれば、図27のように、温度変化のピークが許容温度下限ちょうどとなる。
次に、実施例3において、目標温度の「低温値」とは、図28に示すように、「中央値」に温度が収束している状態で、電流量が「0」から「最大電流量」へと変化した場合に許容温度上限値を超える温度幅(A)を「中央値」から減算した値の温度である。すなわち、「低温値」を目標温度としておけば、図28に示すように、電流量が「0」から「最大電流量」へと変化した場合(電流量が急激に増加した場合)であっても、許容できる温度上昇幅に余裕があり、許容温度上限を超えることがないと考えられる。
また、実施例3において、目標温度の「高温値」とは、図29に示すように、「中央値」に温度が収束している状態で、電流量が「最大電流量」から「0」へと変化した場合に許容温度下限値を超える温度幅(A)を「中央値」に加算した値の温度である。すなわち、「高温値」を目標温度としておけば、図29に示すように、電流量が「最大電流量」から「0」へと変化した場合(電流量が急激に減少した場合)であっても、許容できる温度下降幅に余裕があり、許容温度下限を超えることがないと考えられる。
[温度制御イメージ]
次に、図30〜図33を用いて、実施例3における温度制御イメージを説明する。図30は、電流量が急激に増加した場合の温度制御を説明するための図であり、図31は、固定的な目標温度を用いた温度制御を説明するための図である。また、図32は、電流量が急激に減少した場合の温度制御を説明するための図であり、図33は、固定的な目標温度を用いた温度制御を説明するための図である。
まず、図30を用いて、電流量が急激に増加する場合の温度制御を説明する。図30に示すように、電流量はI(th1)とI(th2)との間で安定し、光スイッチ素子22の温度も中央値に収束している状態を開始時の状態であるとする(時刻t0−t1)。
ここで、時刻t1において、電流量が緩やかに減少し、I(th2)を下回る値に変化した(A)。すると、光スイッチ素子22の温度も緩やかに下降するが、もはや電流量の急激な減少は見込まれず、光スイッチ素子22の温度が許容温度下限を下回るおそれもない。そこで、実施例3における温度制御部32は、電流量の急激な増加に備え、目標温度を「低温値」に設定する。すると、「低温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「低温値」に誘導され、やがて「低温値」に収束する(B)。
次に、図30に示すように、時刻t2において、電流量が急激に増加し、I(th1)を上回る値に変化した。すると、光スイッチ素子22の温度も急激に上昇する(C)。この時、実施例3における温度制御部32は、目標温度を「中央値」や「高温値」にすると温度の上昇を助長してしまうため、「低温値」に維持する(D)。
ここで、光スイッチ素子22の温度も急激に上昇するが、時刻t2までに「低温値」に収束していた恩恵で、許容できる温度上昇幅に余裕がある。結果として、実施例3においては、「低温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度が許容温度上限を超えることはない(E)。
さて、時刻t3−t4において、電流量は引き続きI(th1)を上回る値であるが、やがて光スイッチ素子22の温度は上昇を終え、収束する。すると、実施例3における温度制御部32は、今度は、電流量の急激な減少に備え、目標温度を「高温値」に設定する(F)。すると、「高温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「高温値」に誘導され、やがて「高温値」に収束する(G)。
その後、時刻t4において、電流量がI(th1)とI(th2)との間に変化すると、実施例3における温度制御部32は、目標温度を通常通り「中央値」に設定する(H)。すると、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導され、やがて「中央値」に収束する(I)。
一方、仮にこのような制御が行われないとすると、光スイッチ素子22の温度は、図31のように変化する。
まず、図31に示すように、目標温度は「中央値」に設定され(A)、電流量はI(th1)とI(th2)との間で安定し、光スイッチ素子22の温度も中央値に収束している状態(B)を開始時の状態であるとする(時刻t0−t1)。
ここで、時刻t1において、電流量が緩やかに減少し、I(th2)を下回る値に変化し、光スイッチ素子22の温度も緩やかに下降するが(C)、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導され、やがて「中央値」に収束する(D)。
次に、図31に示すように、時刻t2において、電流量が急激に増加し、I(th1)を上回る値に変化した。すると、光スイッチ素子22の温度も急激に上昇する(F)。この時、温度制御は、目標温度を「中央値」に維持しているので、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導される。しかしながら、時刻t2における電流量の変化が急激であったため、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きは間に合わず、光スイッチ素子22の温度は許容温度上限を超えてしまっている(G)。
その後、時刻t3において、電流量が減少し、電流量がI(th1)とI(th2)との間に変化すると、光スイッチ素子22の温度は下降し始め、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度はやがて「中央値」に収束する(H)。
このように、固定的な目標温度を用いた温度制御では、電流量が急激に増加した場合に、光スイッチ素子22の温度が許容温度上限を超えてしまうことになる。このような温度制御においてどの程度の電流量の変化まで許容範囲に収められるかは、光スイッチ素子22を構成する部品の熱容量や熱電冷却素子24の冷却能力に依存していた。これに対し、実施例3によれば、フィードバック制御の目標温度を動的に変更することによって、光スイッチ素子22の温度をより適切に制御し、電流量が急激に増加する場合にも、光信号をより安定して出力することが可能になる。
続いて、図32を用いて、電流量が急激に減少する場合の温度制御を説明する。図32に示すように、電流量はI(th1)とI(th2)との間で安定し、光スイッチ素子22の温度も中央値に収束している状態を開始時の状態であるとする(時刻t0−t1)。
ここで、時刻t1において、電流量が緩やかに増加し、I(th1)を上回る値に変化した(A)。すると、光スイッチ素子22の温度も緩やかに上昇するが、もはや電流量の急激な増加は見込まれず、光スイッチ素子22の温度が許容温度上限を上回るおそれもない。そこで、実施例3における温度制御部32は、電流量の急激な減少に備え、目標温度を「高温値」に設定する。すると、「高温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「高温値」に誘導され、やがて「高温値」に収束する(B)。
次に、図32に示すように、時刻t2において、電流量が急激に減少し、I(th2)を下回る値に変化した。すると、光スイッチ素子22の温度も急激に下降する(C)。この時、実施例3における温度制御部32は、目標温度を「中央値」や「低温値」にすると温度の下降を助長してしまうため、「高温値」に維持する(D)。
ここで、光スイッチ素子22の温度も急激に下降するが、時刻t2までに「高温値」に収束していた恩恵で、許容できる温度下降幅に余裕がある。結果として、実施例3においては、「高温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度が許容温度下限を超えることはない(E)。
さて、時刻t3−t4において、電流量は引き続きI(th2)を下回る値であるが、やがて光スイッチ素子22の温度は下降を終え、収束する。すると、実施例3における温度制御部32は、今度は、電流量の急激な増加に備え、目標温度を「低温値」に設定する(F)。すると、「低温値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「低温値」に誘導され、やがて「低温値」に収束する(G)。
その後、時刻t4において、電流量がI(th1)とI(th2)との間に変化すると、実施例3における温度制御部32は、目標温度を通常通り「中央値」に設定する(H)。すると、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導され、やがて「中央値」に収束する(I)。
一方、仮にこのような制御が行われないとすると、光スイッチ素子22の温度は、図33のように変化する。
まず、図33に示すように、目標温度は「中央値」に設定され(A)、電流量はI(th1)とI(th2)との間で安定し、光スイッチ素子22の温度も中央値に収束している状態(B)を開始時の状態であるとする(時刻t0−t1)。
ここで、時刻t1において、電流量が緩やかに増加し、I(th1)を上回る値に変化し、光スイッチ素子22の温度も緩やかに上昇するが(C)、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導され、やがて「中央値」に収束する(D)。
次に、図33に示すように、時刻t2において、電流量が急激に減少し、I(th2)を下回る値に変化した。すると、光スイッチ素子22の温度も急激に下降する(F)。この時、温度制御は、目標温度を「中央値」に維持しているので、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度は「中央値」に誘導される。しかしながら、時刻t2における電流量の変化が急激であったため、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きは間に合わず、光スイッチ素子22の温度は許容温度下限を超えてしまっている(G)。
その後、時刻t3において、電流量が増加し、電流量がI(th1)とI(th2)との間に変化すると、光スイッチ素子22の温度は上昇し始め、「中央値」を目標温度とするフィードバック制御や、フィードフォワード制御の働きにより、光スイッチ素子22の温度はやがて「中央値」に収束する(H)。
このように、固定的な目標温度を用いる温度制御では、電流量が急激に減少した場合に、光スイッチ素子22の温度が許容温度下限を超えてしまうことになる。このような温度制御においてどの程度の電流量の変化まで許容範囲に収められるかは、光スイッチ素子22を構成する部品の熱容量や熱電冷却素子24の冷却能力に依存していた。これに対し、実施例3によれば、フィードバック制御の目標温度を動的に変更することによって、光スイッチ素子22の温度をより適切に制御し、電流量が急激に減少する場合にも、光信号をより安定して出力することが可能になる。
[目標温度を判定する処理手順]
次に、図34および図35を用いて、目標温度を判定する処理手順(図25のステップS804に対応)を説明する。図34は、目標温度を判定するアルゴリズムを説明するための図であり、図35は、目標温度を判定するアルゴリズムを示すフローチャートである。
図30および図32を用いて説明してきたように、実施例3における温度制御部32は、現在の電流量、現在の電流量に至った経緯、光スイッチ素子22の温度などに基づいて、目標温度としてのいずれの値を選択すべきであるかを判定し、設定する。この点をまとめたものを図34に示す。
すなわち、実施例3における温度制御部32は、現在の電流量がI(th1)を上回り(電流Iの状態が「大」)、それが継続している状態の場合には(電流Iの前状態も「大」)、光スイッチ素子22の温度の時間変化率を用いてさらに判定する。すなわち、時間変化率が収束もしくは下降を示すものである場合、図30のt3に対応する場合であるので、電流量の急激な減少に備え、温度制御部32は、目標温度を「高温値」に設定する。一方、時間変化率が上昇を示すものである場合、図30のt2−t3に対応する場合であるので、低温値を維持すべきとして、温度制御部32は、目標温度を「低温値」に設定する。
また、実施例3における温度制御部32は、現在の電流量がI(th1)を上回り(電流Iの状態が「大」)、それが急激な変化の場合には(電流Iの前状態は「小」)、図30のt2に対応する場合であるので、既に低温値に誘導されているはずであり、低温値を維持すべきとして、温度制御部32は、目標温度を「低温値」に設定する。
また、実施例3における温度制御部32は、現在の電流量がI(th1)を上回り(電流Iの状態が「大」)、それが緩やかな変化の場合には(電流Iの前状態は「中」)、図32のt1に対応する場合であるので、電流量の急激な減少に備え、温度制御部32は、目標温度を「高温値」に設定する。
一方、実施例3における温度制御部32は、現在の電流量がI(th2)を下回り(電流Iの状態が「小」)、それが継続している状態の場合には(電流Iの前状態も「小」)、光スイッチ素子22の温度の時間変化率を用いてさらに判定する。すなわち、時間変化率が収束もしくは上昇を示すものである場合、図32のt3に対応する場合であるので、電流量の急激な増加に備え、温度制御部32は、目標温度を「低温値」に設定する。一方、目標温度が「高温値」に設定された状態で電流量が急激に減少する場合、例えば、時間変化率が下降を示す図32のt2−t3に対応する場合、高温値を維持すべきとして、温度制御部32は、目標温度を「高温値」に設定する。
また、実施例3における温度制御部32は、現在の電流量がI(th2)を下回り(電流Iの状態が「小」)、それが急激な変化の場合には(電流Iの前状態は「大」)、図32のt2に対応する場合であるので、既に高温値に誘導されているはずであり、高温値を維持すべきとして、温度制御部32は、目標温度を「高温値」に設定する。
また、実施例3における温度制御部32は、現在の電流量がI(th2)を下回り(電流Iの状態が「小」)、それが緩やかな変化の場合には(電流Iの前状態は「中」)、図30のt1に対応する場合であるので、電流量の急激な増加に備え、温度制御部32は、目標温度を「低温値」に設定する。
なお、実施例3における温度制御部32は、現在の電流量がI(th1)とI(TH2)との間である場合には、通常通り目標温度を「中央値」に設定する。
この点を温度制御部32による処理手順としてフローチャートに示したものが図35である。図35は、図25のステップS804に対応する。図35に示す「I」は、電流検出部33によって算出された電流量の直近平均値である。また、「T」は、温度検出部34によって算出された温度の直近平均値である。また、「dT/dt」は、温度の時間変化率である。
図35に示すように、目標温度判定部141は、まず、電流検出部33から通知された電流量の直近平均値「I」が、「I(th1)」を上回るか否かを判定する(ステップS901)。電流量の直近平均値「I」が、「I(th1)」を下回ると(ステップS901否定)、目標温度判定部141は、次に、電流検出部33から通知された電流量の直近平均値「I」が、「I(th2)」を下回るか否かを判定する(ステップS902)。そして、電流量の直近平均値「I」が、「I(th2)」を上回ると(ステップS902否定)、目標温度判定部141は、目標温度に「中央値」を設定する(ステップS903)。
さて、ステップS901において、電流量の直近平均値「I」が、「I(th1)」を上回ると判定されると(ステップS901肯定)、次に、目標温度判定部141は、前の時刻における電流量「Iの前状態」が、「I(th1)」を上回るか否かを判定する(ステップS904)。
そして、電流量「Iの前状態」が「I(th1)」を上回ると判定すると(ステップS904肯定)、目標温度判定部141は、温度の直近平均値「T」の時間変化率がゼロ以下であるか否かを判定する(ステップS905)。目標温度判定部141は、ゼロ以下である場合には(ステップS905肯定)、目標温度に「高温値」を設定し(ステップS906)、ゼロより大きい場合には(ステップS905否定)、目標温度に「低温値」を設定する(ステップS907)。
一方、ステップS904において、電流量「Iの前状態」が「I(th1)」を下回ると判定すると(ステップS904否定)、続いて、目標温度判定部141は、電流量「Iの前状態」が「I(th2)」を下回るか否かを判定する(ステップS908)。そして、電流量「Iの前状態」が「I(th2)」を下回ると判定すると(ステップS908肯定)、目標温度に「低温値」を設定し(ステップS909)、上回ると判定すると(ステップS908否定)、目標温度に「高温値」を設定する(ステップS910)。
さて、ステップS901において、電流量の直近平均値「I」が、「I(th1)」を下回ると判定され(ステップS901否定)、ステップS902において、「I(th2)を下回ると判定されると(ステップS902肯定)、次に、目標温度判定部141は、前の時刻における電流量「Iの前状態」が、「I(th2)」を下回るか否かを判定する(ステップS911)。
そして、電流量「Iの前状態」が「I(th2)」を下回ると判定すると(ステップS911肯定)、目標温度判定部141は、温度の直近平均値「T」の時間変化率がゼロ以上であるか否かを判定する(ステップS912)。目標温度判定部141は、ゼロ以上である場合には(ステップS912肯定)、目標温度に「低温値」を設定し(ステップS9136)、ゼロより小さい場合には(ステップS912否定)、目標温度に「高温値」を設定する(ステップS914)。
一方、ステップS911において、電流量「Iの前状態」が「I(th2)」を上回ると判定すると(ステップS911否定)、続いて、目標温度判定部141は、電流量「Iの前状態」が「I(th1)」を上回るか否かを判定する(ステップS915)。そして、電流量「Iの前状態」が「I(th1)」を上回ると判定すると(ステップS915肯定)、目標温度に「高温値」を設定し(ステップS916)、下回ると判定すると(ステップS915否定)、目標温度に「低温値」を設定する(ステップS917)。
[実施例3の効果]
上記してきたように、実施例3に係る光通信装置1は、光スイッチモジュール21に供給される電流量に基づいて、フィードバック制御の目標温度を動的に変更する(所定の目標温度と異なる目標温度を決定する)。この結果、光スイッチ素子22の温度をより適切に制御し、電流量が急激に変化する場合にも、光スイッチ素子22の温度を許容範囲内に収めることが可能になる。あるいは、固定的な目標温度を用いた温度制御であれば許容範囲を超えていたケースであっても、救済することが可能になる。ひいては、光信号をより安定して出力することが可能になり、光スイッチモジュールを用いた通信品質を向上させることが可能になる。
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
例えば、温度制御部32は、電流検出部33が駆動設定部100から出力されるデジタル信号を検出することにより、駆動制御部の駆動状態を判定することとしたが、駆動制御部の駆動状態を判定方法はこれに限ったものではない。例えば、温度制御部32は、ポート接続情報に基づいて駆動電流の発生を検出することもできる。かかる場合、電流検出部33は、光パケット変換部10から出力されるポート接続情報を検出する。また、温度制御部32は、光スイッチ素子22に注入される駆動電流を直接検出してもよい。かかる場合、電流検出部33は、D/A変換部101から光スイッチ素子22へ出力されるアナログ電気信号を検出する。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)光信号を出力する光信号出力部と、
前記光信号の経路切換えを行う光スイッチ素子と、
前記光スイッチ素子による経路切換え動作を制御するための駆動電流を前記光スイッチ素子に供給する駆動制御部と、
制御信号に基づいて、前記光スイッチ素子を冷却する冷却部と、
前記光スイッチ素子の温度を所定温度に保つための前記制御信号を前記冷却部に出力する温度制御部と、
を備えたことを特徴とする光通信装置。
(付記2)前記光信号出力部から出力される光信号を増幅する光アンプと、
前記光スイッチ素子へ入力される光信号の入力レベル及び前記光スイッチ素子から出力される光信号の出力レベルを検出する信号レベル検出部と、
前記信号レベル検出部により検出された前記光信号の入力レベル及び出力レベルに基づいて、前記光アンプによる光信号の増幅量を制御する利得制御部と、を備え、
前記利得制御部は、前記信号レベル検出部による検出結果にかかわらず、前記駆動制御部の駆動状態に応じて、前記光信号を所定時間だけ増幅させるための制御信号を前記光アンプに出力することを特徴とする付記1に記載の光通信装置。
(付記3)前記温度制御部は、前記駆動制御部の駆動状態に応じて前記制御信号を前記冷却部に出力するフィードフォワード制御部を備え、前記フィードフォワード制御部による制御は、比例係数、積分係数及び微分係数に基づいて実行されるものであり、
前記比例係数は、前記光スイッチ素子に前記駆動電流が供給された状態における前記光スイッチ素子の安定温度と前記所定温度との差分に基づいて決定され、
前記積分係数は、前記決定された比例係数と、前記光スイッチ素子に前記駆動電流が供給された状態における前記光スイッチ素子の安定温度と前記所定温度との差分と、に基づいて決定され、
前記微分係数は、前記決定された比例係数及び積分係数と、前記光スイッチ素子に前記駆動電流が供給された際の前記光スイッチ素子の最大温度上昇値と、に基づいて決定されることを特徴とする付記1又は付記2に記載の光通信装置。
(付記4)前記光スイッチ素子の温度を検出する温度検出部と、
前記温度検出部により検出した温度に応じて、前記光スイッチ素子の温度を所定温度に保つための制御信号を前記冷却部に出力するフィードバック制御部と、
を備えることを特徴とする付記1〜3のいずれか1つに記載の光通信装置。
(付記5)前記温度制御部は、前記光スイッチ素子の温度変化が収束状態に移行したら、前記光スイッチ素子に供給される電流の量に基づいて、前記所定温度と異なる温度を新たな所定温度とすることを特徴とする付記1に記載の光通信装置。
(付記6)光信号の経路切換えを行う光スイッチ素子と当該光スイッチ素子を冷却する冷却部とを備えた光通信装置を制御する制御装置であって、
前記光スイッチ素子による経路切換え動作を制御するための駆動電流を前記光スイッチ素子に供給する駆動制御部と、
前記駆動制御部の駆動状態に応じて、前記光スイッチ素子の温度を前記所定温度に保つための制御信号を前記冷却部に出力するフィードフォワード制御部と、
を備えたことを特徴とする制御装置。
(付記7)前記光通信装置は、前記光信号を出力する光信号出力部と、前記光信号出力部から出力される光信号を増幅する光アンプと、を備えており、
前記光スイッチ素子へ入力される光信号の入力レベル及び前記光スイッチ素子から出力される光信号の出力レベルを検出する信号レベル検出部と、
前記信号レベル検出部により検出された前記光信号の入力レベル及び出力レベルに基づいて、前記光アンプによる光信号の増幅量を制御する利得制御部と、を備え、
前記利得制御部は、前記信号レベル検出部による検出結果にかかわらず、前記駆動制御部の駆動状態に応じて、前記光信号を所定時間だけ増幅させるための制御信号を前記光アンプに出力することを特徴とする付記6に記載の制御装置。
(付記8)前記フィードフォワード制御部による制御は、比例係数、積分係数及び微分係数に基づいて実行されるものであり、
前記比例係数は、前記光スイッチ素子に前記駆動電流が供給された状態における前記光スイッチ素子の安定温度と前記所定温度との差分に基づいて決定され、
前記積分係数は、前記決定された比例係数と、前記光スイッチ素子に前記駆動電流が供給された状態における前記光スイッチ素子の安定温度と前記所定温度との差分と、に基づいて決定され、
前記微分係数は、前記決定された比例係数及び積分係数と、前記光スイッチ素子に前記駆動電流が供給された際の前記光スイッチ素子の最大温度上昇値と、に基づいて決定されることを特徴とする付記6又は付記7に記載の制御装置。
(付記9)前記光スイッチ素子の温度を検出する温度検出部と、
前記温度検出部により検出した温度に応じて、前記光スイッチ素子の温度を所定温度に保つための制御信号を前記冷却部に出力するフィードバック制御部と、
を備えることを特徴とする付記6〜8のいずれか1つに記載の制御装置。
(付記10)光スイッチ素子により光信号の経路切換えを行う光通信装置の光出力安定化方法であって、
前記光通信装置が、
前記光スイッチ素子による経路切換え動作を制御するための駆動電流を駆動制御部から前記光スイッチ素子に供給する工程と、
前記駆動制御部の駆動状態に応じて、フィードフォワード制御部により前記光スイッチ素子の温度を所定温度に保つための制御信号を冷却部に出力する工程と、
を含んだことを特徴とする光出力安定化方法。