以下に、本発明に係る転送制御装置をその実施形態を示す図面を参照して具体的に説明する。なお、以下に説明する実施形態において、本発明の転送制御装置は、画像を処理する画像処理装置としてのパーソナルコンピュータ(出力機器)とプロジェクタ(応答機器)とを接続し、パーソナルコンピュータ(以下、PCという)とプロジェクタとの間で送受される各種の信号を制御する。
(実施形態1)
図1は実施形態1に係る転送制御装置を利用した転送制御システムの構成例を示すブロック図である。図中の白抜き矢符は命令及び命令に対する応答等の信号を示す。本実施形態1の転送制御システム1は、転送制御装置10、プロジェクタ30、転送制御装置10を介してプロジェクタ30へ画像を送出するPC21,22等により構成されている。なお、転送制御装置10を介してプロジェクタ30へ画像を送出する装置は、PC21,22に限られず、例えば、取得した画像を記録媒体に記録するデジタルカメラ、テレビジョン放送による放送番組を受信して記録媒体に記録する記録再生装置等であってもよく、また、接続される機器の数も2つに限定されない。
転送制御装置10は、PC21との接続を行なう第1命令入出力部(接続部)11、PC22との接続を行なう第2命令入出力部(接続部)12、プロジェクタ30との接続を行なう応答入出力部(応答接続部)13、命令制御部14、命令番号格納部15、応答制御部16、応答格納部17、命令実行部18等を備えており、それぞれはシステムバス10aを介して相互に接続されている。なお、図1には、第1命令入出力部11、第2命令入出力部12及び応答入出力部13のそれぞれとシステムバス10aとの接続を省略した図を示す。
第1命令入出力部11又は第2命令入出力部12は、PC21又はPC22等の外部装置から送信される信号(例えば、命令信号、画像信号)を受信し、受信した信号に対する応答信号をそれぞれPC21又はPS22へ送信する。応答入出力部13は、外部のプロジェクタ30へ信号(命令信号、画像信号)を送信し、送信した信号に対する応答信号を受信する。なお、第1命令入出力部11、第2命令入出力部12及び応答入出力部13はそれぞれ、シリアルポート、パラレルポート、LANポート又はUSBポート等からなる入力ポートを有する。
命令制御部14は、CPU(Central Processing Unit )又はMPU(Micro Processor Unit)等により構成されており、第1命令入出力部11又は第2命令入出力部12から信号(以下、代表して命令信号という)が入力された場合、入力を受け付けた命令信号に、入力順序を示す命令番号(信号情報)を割り当てる割当手段として動作する。また、命令制御部14は、入力された命令信号に割り当てた命令番号を、この命令信号が入力された第1命令入出力部11又は第2命令入出力部12に対応させて命令番号格納部(信号情報記憶手段)15に記憶させる。更に、命令制御部14は、入力された命令信号と、この命令信号に割り当てた命令番号とを応答入出力部13からプロジェクタ30へ出力する。
命令番号格納部15は、メモリにより構成されており、図2(b)に示すように、第1命令入出力部11又は第2命令入出力部12に対応して、それぞれに入力された順番に命令番号を格納する。図2(b)においては、入力された順に命令番号欄の左側から命令番号を格納する。また、この命令番号格納部15の格納内容は、第1命令入出力部11又は第2命令入出力部12から命令信号が入力された場合、又は各命令信号に対応する応答信号が第1命令入出力部11又は第2命令入出力部12から返信された場合に、命令制御部14、応答制御部16又は命令実行部18によって更新される。
図2(a)は第1命令入出力部11及び第2命令入出力部12から入力される命令信号の入力例を示しており、例えば、図2(a)に示すように命令信号A,B,C,D,E,Fが、この順でそれぞれ対応する命令入出力部(第1命令入出力部11又は第2命令入出力部12)から入力された場合の命令制御部14の動作を以下に説明する。
まず、第1命令入出力部11から命令信号Aが入力された場合、命令制御部14は、命令番号格納部15に命令番号が格納されていないので、この命令信号Aに命令番号1を割り当て、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に命令番号1を格納する。なお、図2(b)では、命令番号欄の右側を最後尾とする。また、命令制御部14は、入力された命令信号A及び命令信号Aに割り当てた命令番号1を応答入出力部13から出力する。
次に、第2命令入出力部12から命令信号Bが入力された場合、命令制御部14は、既に命令番号1を割り当てているので、命令信号Bに命令番号2を割り当て、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に命令番号2を格納する。また、命令制御部14は、入力された命令信号B及び命令信号Bに割り当てた命令番号2を応答入出力部13から出力する。同様にして、第2命令入出力部12から命令信号Cが入力されると、命令制御部14は、命令信号Cに命令番号3を割り当て、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に命令番号3を格納し、命令信号C及び命令番号3を応答入出力部13から出力する。
ここで、第1命令入出力部11及び第2命令入出力部12から入力される命令信号には、転送制御装置10によって実行される命令信号(以下、内部命令信号という)もある。命令制御部14は、命令信号に付加されて入力されるヘッダー情報によって、入力された命令信号が内部命令信号であるか否かを判断することができ、内部命令信号であると判断した場合、入力された命令信号(内部命令信号)を所定のシンボルに変換し、入力された第1命令入出力部11又は第2命令入出力部12に対応させて命令番号格納部15に記憶させる。
従って、第1命令入出力部11から内部命令信号である命令信号Dが入力された場合、命令制御部14は、命令番号を割り当てずに、命令信号DをシンボルDsに変換して、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に格納する。なお、内部命令信号Dは、CPU又はMPUからなる命令実行部(実行手段)18によって実行される命令であり、内部命令信号Dを変換して生成したシンボルDsは、命令実行部18によって内部命令信号Dであることが理解できるものである。
次に、第1命令入出力部11から命令信号Eが入力されると、命令制御部14は、既に命令番号3まで割り当てているので、命令信号Eに命令番号4を割り当て、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に命令番号4を格納し、入力された命令信号E及び命令番号4を応答入出力部13から出力する。
また、ここで、本実施形態1の命令制御部14は、入力される命令信号を適切に受け付けることができる数(最大受付信号数)を4つとし、入力された命令信号に割り当てる命令番号を4までとしている。命令制御部14は、最大受付信号数以上の命令信号が入力された場合、入力された命令信号の受付が失敗した旨を示すエラーコード(失敗情報)Errを割り当てるように構成してある。従って、次に、第2命令入出力部12から命令信号Fが入力された場合、命令制御部14は、既に命令番号4までの割当が終了しているので、命令信号FにエラーコードErrを割り当て、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾にエラーコードErrを格納する。
上述したように、命令制御部14が、図2(b)示すように命令番号を命令番号格納部15に蓄積すると共に、入力された命令信号及び割り当てられた命令番号を応答入出力部13から出力する転送制御装置10は、出力した命令信号(A,B,C,E)に対応する応答信号(A´,B´,C´,E´)をプロジェクタ30から応答入出力部13を介して取得する。なお、プロジェクタ30による動作は図3に基づいて後述する。
応答入出力部13は、上述したように命令制御部14から取得してプロジェクタ30へ出力した命令信号及び命令番号に対応して、プロジェクタ30から応答信号及び前記命令番号が入力される。応答制御部16は、CPU又はMPU等により構成され、応答入出力部13から応答信号及び命令番号が入力された場合、図2(c)に示すように、入力された応答信号を、入力された命令番号に対応させて応答格納部(応答記憶手段)17に記憶させる。
なお、この応答格納部17の格納内容は、応答入出力部13から応答信号を取得した場合、又は格納した応答信号が対応するPC21,22へ返信された場合に、応答制御部16によって更新される。また、応答入出力部13から入力される応答信号は、それぞれの命令信号の応答入出力部13からの出力順序とは異なった順序で入力されてもよい。従って、応答格納部17に格納される応答信号の格納順序は、命令番号1,2,3,4の順でなくてもよい。
図2(c)に示すように各命令番号に対応する応答信号を取得する転送制御装置10において、応答制御部16は、定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号1に対応する応答信号A´が応答格納部17に格納されたか否かを監視する。ここで、応答信号A´が格納されている場合、応答制御部(出力手段)16は、応答格納部17から応答信号A´を読み出し、対応する第1命令入出力部11を介してPC21へ応答信号A´を送信する。また、応答制御部16は、命令番号格納部15の第1命令入出力部に対応して格納してある命令番号1と、応答格納部17の命令番号1に対応して格納してある応答信号A´とを消去する。なお、命令番号格納部15に格納された命令番号が消去された場合、消去された命令番号の後ろに格納されている命令番号をそれぞれ1つ前にシフトさせる。
次に、応答制御部16は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号2に対応する応答信号B´が応答格納部17に格納されたか否かを監視する。ここで、応答信号B´が格納されている場合、応答制御部16は、応答格納部17から応答信号B´を読み出し、対応する第2命令入出力部12を介してPC22へ応答信号B´を送信する。また、応答制御部16は、命令番号格納部15の第2命令入出力部に対応して格納してある命令番号2と、応答格納部17の命令番号2に対応して格納してある応答信号B´とを消去する。
ここで、命令実行部18も定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部又は第2命令入出力部に対応する命令番号欄の1番目に、内部命令信号を示すシンボルが格納されているかを監視する。従って、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目にシンボルDsが格納されている場合、命令実行部18は、シンボルDsが示す内部命令信号Dを実行し、実行結果(応答信号)を対応する第1命令入出力部11を介してPC21へ送信する。また、命令実行部18は、命令番号格納部15の第1命令入出力部に対応して格納してあるシンボルDsを消去し、この場合も同様に、消去されたシンボルの後ろに格納されている命令番号をそれぞれ1つ前にシフトさせる。
次に、応答制御部16は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号3に対応する応答信号C´が応答格納部17に格納されたか否かを監視し、応答信号C´が格納されている場合、応答格納部17から応答信号C´を読み出して、対応する第2命令入出力部12を介してPC22へ送信する。また、応答制御部16は、命令番号格納部15の第2命令入出力部に対応して格納してある命令番号3と、応答格納部17の命令番号3に対応して格納してある応答信号C´とを消去する。
同様にして、応答制御部16は、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号4に対応する応答信号E´が応答格納部17に格納されたか否かを監視し、応答信号E´が格納されている場合、応答格納部17から応答信号E´を読み出して、対応する第1命令入出力部11を介してPC21へ送信する。また、応答制御部16は、命令番号格納部15の第1命令入出力部に対応して格納してある命令番号4と、応答格納部17の命令番号4に対応して格納してある応答信号E´とを消去する。
更に、応答制御部16は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目にエラーコードErrが格納されていることを検知した場合、第2命令入出力部12から入力された命令信号の受付が失敗した旨を通知するエラー信号(応答信号)を、対応する第2命令入出力部12を介してPC22へ送信する。また、応答制御部16は、命令番号格納部15の第2命令入出力部に対応して格納してあるエラーコードErrを消去する。
なお、命令番号格納部15の第1命令入出力部(又は第2命令入出力部)の1番目に格納されている命令番号に対応する応答信号が、まだプロジェクタ30から返信されていない場合には、1番目の命令番号に対応する応答信号が返信されるまで、第1命令入出力部11(又は第2命令入出力部12)への応答信号の送信を待機する。これにより、第1命令入出力部11(又は第2命令入出力部12)から入力された命令信号に対応する応答信号を、命令信号の入力順序にて返信することができ、それぞれの命令信号に対応して適切な応答信号を返信することができる。
図3はプロジェクタ30の内部構成例の概略を示すブロック図である。なお、プロジェクタ30の詳細な内部構成については実施形態3で詳述する。図中の白抜き矢符は命令及び命令に対する応答等の信号を示す。プロジェクタ30は、上述した転送制御装置10との接続を行なう入出力部(装置接続部)31、命令制御部32、命令キュー33、命令実行部34等を備えており、それぞれはシステムバス30aを介して相互に接続されている。入出力部31は、上述したように転送制御装置10から送信された命令信号と、この命令信号に割り当てられた命令番号とを受け付ける。
命令制御部32は、CPU又はMPU等からなり、入出力部31から入力された命令信号及び命令番号を命令キュー33に格納させると共に、命令キュー33に格納してある命令信号を読み出して命令実行部34へ入力する。命令キュー33は先入れ先出し方式(FIFO)を採用したメモリであり、命令制御部32は、入出力部31から入力された命令信号を命令キュー33の最後尾に格納し、また、命令キュー33に格納されている命令信号のうちの1番最初に格納された命令信号を読み出して命令実行部34へ入力する。
命令実行部34は、CPU又はMPU等からなり、命令制御部32が先入れ先出し方式に従って制御することにより命令キュー33から読み出される命令信号を実行し、実行結果(応答信号)を、命令信号と共に転送制御装置10から受け付けた命令番号と共に入出力部31を介して転送制御装置10へ返信する。
以下に、上述した構成の転送制御装置10による命令信号の取得処理についてフローチャートを参照しながら説明する。図4及び図5は実施形態1に係る転送制御装置10による命令信号の取得処理の手順を示すフローチャートである。なお、以下の処理は、図示していないROM,フラッシュメモリ等に格納されているプログラムに従って命令制御部14が実行する。
電源が投入されて初期準備が完了した転送制御装置10において、命令制御部14は、第1命令入出力部11又は第2命令入出力部12から命令信号が入力されたか否かを判断しており(S1)、入力されていないと判断した場合(S1:NO)、命令信号が入力されるまで待機する。命令制御部14は、命令信号が入力されたと判断した場合(S1:YES)、入力された命令信号が、転送制御装置10の命令実行部18によって実行される内部命令信号であるか否かを判断し(S2)、内部命令信号であると判断した場合(S2:YES)、入力された内部命令信号をシンボルに変換する(S3)。
命令制御部14は、ステップS1で入力された内部命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S4)、第1命令入出力部11から入力された命令信号であると判断した場合(S4:YES)、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に、ステップS3で変換したシンボルを格納する(S5)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S4:NO)、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に、ステップS3で変換したシンボルを格納する(S6)。
命令制御部14は、ユーザによる操作部(図示せず)の操作、電源部(図示せず)からの電力供給の終了等により処理の終了が指示されたか否かを判断しており(S7)、処理の終了が指示されていないと判断した場合(S7:NO)、ステップS1へ処理を戻し、上述した処理を繰り返し、処理の終了が指示されたと判断した場合(S7:YES)処理を終了する。
一方、ステップS2で、入力された命令信号が内部命令信号でないと判断した場合(S2:NO)、命令制御部14は、命令番号格納部15の格納内容に基づいて、命令番号格納部15に格納された命令番号の数が最大受付信号数に到達しているか否かを判断し(S8)、到達していないと判断した場合(S8:NO)、入力された命令信号に対して命令番号を割り当てる(S9)。また、命令制御部14は、入力された命令信号と割り当てた命令番号とを応答入出力部13からプロジェクタ30へ送信する(S10)。
また、命令制御部14は、入力された命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S11)、第1命令入出力部11から入力された命令信号であると判断した場合(S11:YES)、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に、ステップS9で割り当てた命令番号を格納する(S12)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S11:NO)、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に、ステップS9で割り当てた命令番号を格納する(S13)。
また一方、ステップS8で、命令番号格納部15に格納された命令番号の数が最大受付信号数に到達したと判断した場合(S8:YES)、入力された命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S14)、第1命令入出力部11から入力された命令信号であると判断した場合(S14:YES)、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾にエラーコードを格納する(S15)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S14:NO)、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾にエラーコードを格納する(S16)。
命令制御部14は、ユーザによる操作部の操作、電源部からの電力供給の終了等により処理の終了が指示されたか否かを判断しており(S7)、処理の終了が指示されていないと判断した場合(S7:NO)、ステップS1へ処理を戻し、上述した処理を繰り返し、処理の終了が指示されたと判断した場合(S7:YES)処理を終了する。これにより、命令番号格納部15には、図2(b)に示すように、第1命令入出力部11及び第2命令入出力部12のそれぞれから入力された命令信号に割り当てた命令番号を、入力順序に対応させて格納することができる。
転送制御装置10は、上述したように、順次入力される命令信号を応答入出力部13からプロジェクタ30へ送信すると共に、送信した命令信号に対応する応答信号を応答入出力部13から取得しており、応答制御部16は、プロジェクタ30から返信された応答信号を、図2(c)に示すように各命令番号に対応して応答格納部17に格納する。
以下に、プロジェクタ30から返信された応答信号を順次応答格納部17に格納する転送制御装置10において、応答信号のPC21,22への転送処理についてフローチャートを参照しながら説明する。図6及び図7は実施形態1に係る転送制御装置10による応答信号の転送処理の手順を示すフローチャートである。なお、以下の処理は、図示していないROM,フラッシュメモリ等に格納されているプログラムに従って応答制御部16及び命令実行部18が実行する。
転送制御装置10の応答制御部16及び命令実行部18は、定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号が、内部命令信号を示すシンボルであるか否かを判断する(S21)。1番目の命令番号がシンボルであると判断した場合(S21:YES)、命令実行部18は、このシンボルが示す内部命令信号を実行し(S22)、実行結果を対応する第1命令入出力部11を介してPC21へ転送する(S23)。また、命令実行部18は、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されていたシンボルを消去する(S24)。
ステップS21で、1番目の命令番号がシンボルでないと判断した場合(S21:NO)、応答制御部16は、1番目の命令番号として、命令信号の受付を失敗した旨を示すエラーコードが格納されているか否かを判断する(S25)。応答制御部16は、エラーコードが格納されていると判断した場合(S25:YES)、入力された命令信号の受付が失敗した旨を通知するエラー信号を、対応する第1命令入出力部11を介してPC21へ転送する(S26)。また、応答制御部16は、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されていたエラーコードを消去する(S27)。
また、ステップS25で、1番目の命令番号がエラーコードでないと判断した場合(S25:NO)、応答制御部16は、この命令番号に対応する応答信号がプロジェクタ30から返信されて応答格納部17に格納されたか否かを判断し(S28)、まだ応答格納部17に格納されていないと判断した場合(S28:NO)、ステップS31へ処理を移行する。
応答制御部16は、対応する応答信号が応答格納部17に格納されたと判断した場合(S28:YES)、対応する応答信号を応答格納部17から読み出し、対応する第1命令入出力部11を介してPC21へ転送する(S29)。また、応答制御部16は、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号と、応答格納部17の対応する応答信号とを消去する(S30)。
同様にして、応答制御部16及び命令実行部18は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号が、内部命令信号を示すシンボルであるか否かを判断する(S31)。1番目の命令番号がシンボルであると判断した場合(S31:YES)、命令実行部18は、このシンボルが示す内部命令信号を実行し(S32)、実行結果を対応する第2命令入出力部12を介してPC22へ転送する(S33)。また、命令実行部18は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されていたシンボルを消去する(S34)。
ステップS31で、1番目の命令番号がシンボルでないと判断した場合(S31:NO)、応答制御部16は、1番目の命令番号として、命令信号の受付を失敗した旨を示すエラーコードが格納されているか否かを判断する(S35)。応答制御部16は、エラーコードが格納されていると判断した場合(S35:YES)、入力された命令信号の受付が失敗した旨を通知するエラー信号を、対応する第2命令入出力部12を介してPC22へ転送する(S36)。また、応答制御部16は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されていたエラーコードを消去する(S37)。
また、ステップS35で、1番目の命令番号がエラーコードでないと判断した場合(S35:NO)、応答制御部16は、この命令番号に対応する応答信号がプロジェクタ30から返信されて応答格納部17に格納されたか否かを判断し(S38)、まだ応答格納部17に格納されていないと判断した場合(S38:NO)、ステップS41へ処理を移行する。
応答制御部16は、対応する応答信号が応答格納部17に格納されたと判断した場合(S38:YES)、対応する応答信号を応答格納部17から読み出し、対応する第2命令入出力部12を介してPC22へ転送する(S39)。また、応答制御部16は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号と、応答格納部17の対応する応答信号とを消去する(S40)。
応答制御部16及び命令実行部18はユーザによる操作部の操作、電源部からの電力供給の終了等により処理の終了が指示されたか否かを判断しており(S41)、処理の終了が指示されていないと判断した場合(S41:NO)、ステップS21へ処理を戻し、上述した処理を繰り返し、処理の終了が指示されたと判断した場合(S41:YES)処理を終了する。
上述したように、第1命令入出力部11及び第2命令入出力部12から順次入力される命令信号に命令番号を割り当てることによって、転送制御装置10は、それぞれの命令信号を命令番号により管理することができる。転送制御装置10は、入力される命令信号を内部においては記憶させずに応答入出力部13から出力し、出力した命令信号に対するプロジェクタ30からの応答信号を応答格納部17に格納する。プロジェクタ30からの応答信号は、PC21,22からの命令信号と比較してデータ量が少ないため、本実施形態1の転送制御装置10は、命令信号を記憶させるための大容量の記憶装置を備える必要がなく、コストを削減することができる。
また、本実施形態1の転送制御装置10では、命令番号格納部15に格納された順に、対応する応答信号をPC21,22へ転送しており、第1命令入出力部(又は第2命令入出力部)に対応する命令番号欄の1番目に格納されている命令番号に対応する応答信号が、まだプロジェクタ30から返信されていない場合には、1番目の命令番号に対応する応答信号が返信されるまで、第1命令入出力部11(又は第2命令入出力部12)への応答信号の送信を待機する。これにより、第1命令入出力部11(又は第2命令入出力部12)から入力された命令信号に対応する応答信号を、命令信号の入力順序にて返信することができ、応答信号が返信されたPC21,22は、順次入力される応答信号に従って適切に動作することができる。
上述した実施形態1では、命令制御部14において、PC21,22から入力された命令信号を適切に受け付けることができる最大受付信号数を4つとしたが、この数に限定されず、転送制御装置10及びプロジェクタ30の動作性能に応じて適切に設定することができる。
(実施形態2)
図8は実施形態2に係る転送制御装置を利用した転送制御システムの構成例を示すブロック図である。なお、本実施形態2の転送制御システム2も、転送制御装置10が、2つのPC21,22とプロジェクタ30との間で送受信されるデータ転送処理を制御する。また、本実施形態2の転送制御装置10において、上述した実施形態1の転送制御装置10と同様の構成については同一の符号を付して説明を省略する。また、図中の白抜き矢符は命令及び命令に対する応答等の信号を示す。
本実施形態2の転送制御装置10は、上述した実施形態1の転送制御装置10と同様に、第1命令入出力部11、第2命令入出力部12、応答入出力部13、命令制御部14、命令番号格納部15、応答制御部16、命令実行部18等を備えており、更に、命令格納部19を備えている。これらのハードウェア各部はそれぞれシステムバス10aを介して相互に接続されている。従って、本実施形態2の転送制御装置10は、実施形態1の転送制御装置10と同様の構成であるが、応答格納部17を備えない代わりに命令格納部19を有する。
本実施形態2では、命令制御部14は、第1命令入出力部11又は第2命令入出力部12から命令信号が入力された場合、入力を受け付けた信号を、入力順序を示す命令番号(信号情報)に対応させて命令格納部(信号記憶手段)19に記憶させる。また、命令制御部14は、入力された命令信号に対応する命令番号を、この命令信号が入力された第1命令入出力部11又は第2命令入出力部12に対応させて命令番号格納部15に記憶させる。
図9(a)は第1命令入出力部11及び第2命令入出力部12から入力される命令信号の入力例を示しており、例えば、図9(a)に示すように命令信号A,B,C,D,E,Fが、この順でそれぞれ対応する命令入出力部(第1命令入出力部11又は第2命令入出力部12)から入力された場合において、本実施形態2の命令制御部14が行なう動作を以下に説明する。
まず、第1命令入出力部11から命令信号Aが入力された場合、命令制御部14は、命令格納部19に命令信号が格納されていないので、命令番号1に対応させて命令信号Aを命令格納部19に格納する。また、命令制御部14は、命令信号Aに対応する命令番号1を、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に格納する。
次に、第2命令入出力部12から命令信号Bが入力された場合、命令制御部14は、次の命令番号である命令番号2に対応させて命令信号Bを命令格納部19に格納し、命令信号Bに対応する命令番号2を、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に格納する。
同様にして、第2命令入出力部12から命令信号Cが入力されると、命令制御部14は、次の命令番号である命令番号3に対応させて命令信号Cを命令格納部19に格納し、命令信号Cに対応する命令番号3を、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に格納する。
次に、第1命令入出力部11から内部命令信号である命令信号Dが入力された場合、命令制御部14は、命令信号Dを命令格納部19に格納せずに、命令信号DをシンボルDsに変換して、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に格納する。また、同様にして、第1命令入出力部11から命令信号Eが入力されると、命令制御部14は、次の命令番号である命令番号4に対応させて命令信号Eを命令格納部19に格納し、命令信号Eに対応する命令番号4を、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に格納する。
ここで、命令格納部19は、入力される命令信号を記憶できる数(最大受付信号数)を4つとし、命令制御部14は、最大受付信号数以上の命令信号が入力された場合、入力された命令信号の受付が失敗した旨を示すエラーコード(失敗情報)Errを、命令番号格納部15の対応する欄に格納する。従って、次に、第2命令入出力部12から命令信号Fが入力された場合、命令制御部14は、既に命令番号4に対応する命令信号が命令格納部19に記憶されているので、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾にエラーコードErrを格納する。
上述したように、命令制御部14が、入力された命令信号を図9(b)に示すように命令番号に対応させて命令格納部19に格納すると共に、各命令信号に対応する命令番号を図9(c)に示すように命令番号格納部15に格納する転送制御装置10は、命令制御部14によって、入力された順で命令番号及び命令信号を命令格納部19から読み出し、応答入出力部13を介してプロジェクタ30へ出力する。
プロジェクタ30は、実施形態1で説明したとおり、転送制御装置10から取得した命令信号(A,B,C,E)を実行して応答信号(A´,B´,C´,E´)を生成し、生成した応答信号を、転送制御装置10から取得した命令番号と共に転送制御装置10へ返信する。
具体的には、命令制御部14は、定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号1と、命令番号1に対応する命令信号Aとを命令格納部19から読み出して応答入出力部13からプロジェクタ30へ出力する。なお、本実施形態2の命令制御部14は、プロジェクタ30へ出力した命令信号に対応する応答信号を応答入出力部13から取得するまで、次の命令信号のプロジェクタ30への送信を行なわない。
応答入出力部13から応答信号A´及び命令番号1が入力された場合、応答制御部16は、命令番号格納部15の内容に基づいて、命令番号1に対応する命令入出力部が第1命令入出力部11であることを確認し、命令番号格納部15の第1命令入出力部に対応して格納してある命令番号1と、命令格納部19の命令番号1に対応して格納してある命令信号Aとを消去する。また、応答制御部(出力手段)16は、応答信号A´を対応する第1命令入出力部11からPC21へ送信する。なお、命令番号格納部15に格納された命令番号が消去された場合、消去された命令番号の後ろに格納されている命令番号をそれぞれ1つ前にシフトさせる。
次に、命令制御部14は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号2と、命令番号2に対応する命令信号Bとを命令格納部19から読み出して応答入出力部13からプロジェクタ30へ出力する。応答制御部16は、応答入出力部13から応答信号B´及び命令番号2が入力された場合、命令番号格納部15の内容に基づいて、命令番号2に対応する命令入出力部が第2命令入出力部12であることを確認し、命令番号格納部15の第2命令入出力部に対応して格納してある命令番号2と、命令格納部19の命令番号2に対応して格納してある命令信号Bとを消去する。また、応答制御部16は、応答信号B´を対応する第2命令入出力部12からPC22へ送信する。
ここで、命令実行部18も定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部又は第2命令入出力部に対応する命令番号欄の1番目に、内部命令信号を示すシンボルが格納されているかを監視する。従って、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目にシンボルDsが格納されている場合、命令実行部18は、シンボルDsが示す内部命令信号Dを実行し、実行結果を対応する第1命令入出力部11を介してPC21へ送信(出力)する。また、命令実行部18は、命令番号格納部15の第1命令入出力部に対応して格納してあるシンボルDsを消去する。
次に、命令制御部14は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目に格納されている命令番号3と、命令番号3に対応する命令信号Cとを命令格納部19から読み出して応答入出力部13からプロジェクタ30へ出力する。応答制御部16は、応答入出力部13から応答信号C´及び命令番号3が入力された場合、命令番号格納部15の内容に基づいて、命令番号3に対応する命令入出力部が第2命令入出力部12であることを確認し、命令番号格納部15の第2命令入出力部に対応して格納してある命令番号3と、命令格納部19の命令番号3に対応して格納してある命令信号Cとを消去する。また、応答制御部16は、応答信号C´を対応する第2命令入出力部12からPC22へ送信する。
同様にして、命令制御部14は、命令番号格納部15の第1命令入出力部に対応する命令番号欄の1番目に格納されている命令番号4と、命令番号4に対応する命令信号Eとを命令格納部19から読み出して応答入出力部13からプロジェクタ30へ出力する。応答制御部16は、応答入出力部13から応答信号E´及び命令番号4が入力された場合、命令番号格納部15の内容に基づいて、命令番号4に対応する命令入出力部が第2命令入出力部12であることを確認し、命令番号格納部15の第2命令入出力部に対応して格納してある命令番号4と、命令格納部19の命令番号4に対応して格納してある命令信号Eとを消去する。また、応答制御部16は、応答信号E´を対応する第2命令入出力部12からPC22へ送信する。
更に、命令制御部14は、命令番号格納部15の第2命令入出力部に対応する命令番号欄の1番目にエラーコードErrが格納されていることを検知した場合、第2命令入出力部12から入力された命令信号の受付が失敗した旨を通知するエラー信号を、対応する第2命令入出力部12を介してPC22へ送信する。また、命令制御部14は、命令番号格納部15の第2命令入出力部に対応して格納してあるエラーコードErrを消去する。
このように、本実施形態2の転送制御装置10は、PC21,22から入力される命令信号を命令格納部19に格納しておき、順次プロジェクタ30へ転送し、プロジェクタ30から応答信号が返信されるまで次の命令信号のプロジェクタ30への転送を行なわないことにより、応答入出力部13に接続されたプロジェクタ30にかかる負荷を軽減することができ、プロジェクタ30へ送信した命令信号に対する応答信号を確実にPC21,22へ返信することができる。
以下に、上述した構成の転送制御装置10による命令信号の取得処理についてフローチャートを参照しながら説明する。図10は実施形態2に係る転送制御装置10による命令信号の取得処理の手順を示すフローチャートである。なお、以下の処理は、図示していないROM,フラッシュメモリ等に格納されているプログラムに従って命令制御部14が実行する。
電源が投入されて初期準備が完了した転送制御装置10において、命令制御部14は、第1命令入出力部11又は第2命令入出力部12から命令信号が入力されたか否かを判断しており(S51)、入力されていないと判断した場合(S51:NO)、命令信号が入力されるまで待機する。命令制御部14は、命令信号が入力されたと判断した場合(S51:YES)、入力された命令信号が、転送制御装置10の命令実行部18によって実行される内部命令信号であるか否かを判断し(S52)、内部命令信号であると判断した場合(S52:YES)、入力された内部命令信号をシンボルに変換する(S53)。
命令制御部14は、ステップS51で入力された内部命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S54)、第1命令入出力部11から入力された命令信号であると判断した場合(S54:YES)、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に、ステップS53で変換したシンボルを格納する(S55)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S54:NO)、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に、ステップS53で変換したシンボルを格納する(S56)。
命令制御部14は、ユーザによる操作部(図示せず)の操作、電源部(図示せず)からの電力供給の終了等により処理の終了が指示されたか否かを判断しており(S57)、処理の終了が指示されていないと判断した場合(S57:NO)、ステップS51へ処理を戻し、上述した処理を繰り返し、処理の終了が指示されたと判断した場合(S57:YES)処理を終了する。
一方、ステップS52で、入力された命令信号が内部命令信号でないと判断した場合(S52:NO)、命令制御部14は、命令格納部19に格納された命令信号の数が最大受付信号数に到達しているか否かを判断し(S58)、到達していないと判断した場合(S58:NO)、入力された命令信号を、命令信号が格納されていない命令番号に対応させて命令格納部19に格納する(S59)。
また、命令制御部14は、入力された命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S60)、第1命令入出力部11から入力された命令信号であると判断した場合(S60:YES)、ステップS59で命令格納部19に格納された命令信号に対応する命令番号を、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾に格納する(S61)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S60:NO)、ステップS59で命令格納部19に格納された命令信号に対応する命令番号を、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾に格納する(S62)。
また一方、ステップS58で、命令番号格納部15に格納された命令信号の数が最大受付信号数に到達したと判断した場合(S58:YES)、命令制御部14は、入力された命令信号が第1命令入出力部11から入力された命令信号であるか否かを判断し(S63)、第1命令入出力部11から入力された命令信号であると判断した場合(S63:YES)、命令番号格納部15の第1命令入出力部に対応する命令番号欄の最後尾にエラーコードを格納する(S64)。一方、命令制御部14は、第2命令入出力部12から入力された命令信号であると判断した場合(S63:NO)、命令番号格納部15の第2命令入出力部に対応する命令番号欄の最後尾にエラーコードを格納する(S65)。
命令制御部14は、ユーザによる操作部の操作、電源部からの電力供給の終了等により処理の終了が指示されたか否かを判断しており(S57)、処理の終了が指示されていないと判断した場合(S57:NO)、ステップS51へ処理を戻し、上述した処理を繰り返し、処理の終了が指示されたと判断した場合(S57:YES)処理を終了する。これにより、図9(b)に示すように、各命令番号に対応して命令信号を命令格納部19に格納し、図9(c)に示すように、第1命令入出力部11及び第2命令入出力部12のそれぞれから入力された命令信号に対応する命令番号を、入力順で命令番号格納部15に格納することができる。
転送制御装置10は、上述したように、順次入力される命令信号を命令格納部19に格納しつつ、入力順で各命令信号を応答入出力部13からプロジェクタ30へ送信し、対応する応答信号を応答入出力部13から取得する。以下に、プロジェクタ30から返信された応答信号を応答入出力部13から取得する転送制御装置10において、応答信号のPC21,22への転送処理についてフローチャートを参照しながら説明する。図11は実施形態2に係る転送制御装置10による応答信号の転送処理の手順を示すフローチャートである。なお、以下の処理は、図示していないROM,フラッシュメモリ等に格納されているプログラムに従って命令制御部14、応答制御部16及び命令実行部18が実行する。
転送制御装置10の命令制御部14及び命令実行部18は、定期的に命令番号格納部15の内容を監視しており、命令番号格納部15の第1命令入出力部(又は第2命令入出力部)に対応する命令番号欄の1番目に格納されている命令番号が、内部命令信号を示すシンボルであるか否かを判断する(S71)。1番目の命令番号がシンボルであると判断した場合(S71:YES)、命令実行部18は、このシンボルが示す内部命令信号を実行し(S72)、実行結果を対応する第1命令入出力部11(又は第2命令入出力部12)を介してPC21(又はPC22)へ転送する(S73)。また、命令実行部18は、命令番号格納部15の第1命令入出力部(又は第2命令入出力部)に対応する命令番号欄の1番目に格納されていたシンボルを消去する(S74)。
ステップS71で、1番目の命令番号がシンボルでないと判断した場合(S71:NO)、命令制御部14は、1番目の命令番号として、命令信号の受付を失敗した旨を示すエラーコードが格納されているか否かを判断する(S75)。命令制御部14は、エラーコードが格納されていると判断した場合(S75:YES)、入力された命令信号の受付が失敗した旨を通知するエラー信号を、対応する第1命令入出力部11(又は第2命令入出力部12)を介してPC21(又はPC22)へ転送する(S76)。また、命令制御部14は、命令番号格納部15の第1命令入出力部(又は第2命令入出力部)に対応する命令番号欄の1番目に格納されているエラーコードを消去する(S77)。
また、ステップS75で、1番目の命令番号がエラーコードでないと判断した場合(S75:NO)、命令制御部14は、この命令番号に対応する命令信号を命令格納部19から読み出し(S78)、読み出した命令信号と、対応する命令番号とを応答入出力部13からプロジェクタ30へ送信する(S79)。次に応答制御部16は、命令制御部14によって送信された命令信号に対応してプロジェクタ30から返信された応答信号を応答入出力部13から受け付けたか否かを判断し(S80)、まだプロジェクタ30から返信されていないと判断した場合(S80:NO)、応答信号が返信されるまで待機する。
応答制御部16は、対応する応答信号を応答入出力部13から受け付けたと判断した場合(S80:YES)、命令番号格納部15の格納内容に基づいて、取得した応答信号に対応する第1命令入出力部11(又は第2命令入出力部12)を確認し(S81)、命令格納部19の対応する命令信号と、命令番号格納部15の対応する命令番号欄の1番目に格納されている命令番号とを消去する(S82)。また、応答制御部16は、ステップS80で取得した応答信号を、ステップS81で確認した第1命令入出力部11(又は第2命令入出力部12)を介してPC21(又はPC22)へ転送する(S83)。
命令制御部14は、命令番号格納部15に格納された命令番号のそれぞれに対応する全命令信号の実行が完了したか否かを判断しており(S84)、完了していないと判断した場合(S84:NO)、ステップS71へ処理を戻し、同様に、命令番号格納部15の第2命令入出力部(又は第1命令入出力部)に対応する命令番号欄の1番目に格納されている命令番号に基づいて、ステップS71からS83までの処理を繰り返す。命令制御部14は、命令番号格納部15に格納された命令番号のそれぞれに対応する全命令信号の実行が完了したと判断した場合(S84:YES)、処理を終了する。
本実施形態2の転送制御装置10は、上述したように、入力される命令信号を内部に記憶しておき、入力順にプロジェクタ30へ出力してプロジェクタ30から応答信号を取得する。転送制御装置10は、プロジェクタ30へ命令信号を送信した場合、対応する応答信号を取得するまでの間、次の命令信号の送信を行なわないため、プロジェクタ30への負荷を軽減することができ、プロジェクタ30から確実に応答信号を取得することができる。従って、転送制御装置10は、PC21,22から入力された命令信号に対応する応答信号を、命令信号の入力順序にて返信することができ、応答信号が返信されたPC21,22は、順次入力される応答信号に従って適切に動作することができる。
上述した実施形態2では、図9(b)及び(c)に示すように、入力された各命令信号にそれぞれ命令番号を対応させて管理しているが、入力された命令信号を、入力された命令入出力部と、入力順序とに対応させて管理しておけばよく、図9(c)に示すような命令番号格納部15の各命令番号欄に直接命令信号を格納する構成としてもよい。
上述した実施形態2では、PC21,22から入力された命令信号を命令格納部19に格納できる最大受付信号数を4つとしたが、この数に限定されず、転送制御装置10及びプロジェクタ30の動作性能に応じて適切に設定することができる。
(実施形態3)
上述した実施形態1及び2では、転送制御装置10をプロジェクタ30とは別の機器として説明したが、転送制御装置をプロジェクタ(信号処理装置)に内蔵させた構成とすることもできる。図12は本発明の転送制御装置を内蔵したプロジェクタの構成例を示すブロック図である。図中の矢符は命令及び命令に対する応答等の信号を示し、図中の白抜き矢符は照射された光を示す。
本実施形態3のプロジェクタ4は、キセノンランプ又は超高圧水銀ランプ等の光源46、光源46からの光を集光する集光光学系47、画像を形成する投射デバイス44、投射デバイス44上の画像を拡大して外部の被投射体としてのスクリーン4aへ投射する投射光学系45等を備えている。
プロジェクタ4は、光源46からの光を集光光学系47を通して投射デバイス44へ照射し、画像が形成された投射デバイス44上で反射された光を投射光学系45を通して投射することで、投射デバイス44上の画像をスクリーン4aへ投射する構成となっている。なお、光源46からの光を投射デバイス上44で反射させるのではなく透過させることで画像を投射する構成としてもよい。
集光光学系47は、カラーフィルタ、レンズ又はプリズム等を用いてなり、光源からの光の集光・偏光・色分離等を行なう。投射デバイス44は、液晶パネル又はDMD(Digital Micro mirror Device)等を一又は複数個用いてなり、RGB各色の画像を形成する。投射光学系45は、画像を投射するための投射レンズ、この投射レンズが投射する画像の焦点を調整するための焦点調整用レンズ(以下、ピントレンズという)及び大きさを調整するためのズームレンズ等を含み、更に画像の台形歪みを補正するためのレンズシフト(あおり)機構をも備えている。
なお、焦点調整及び大きさの調整のためにピントレンズ及びズームレンズを投射レンズの光軸に沿って移動させるアクチュエータ、レンズシフトのためのアクチュエータ、これらのアクチュエータを駆動させるための駆動回路等も投射光学系45に備えられている。なお、投射光学系45は、RGB各色の画像を合成する色合成光学系を有する構成であってもよい。
プロジェクタ4は、本発明の転送制御装置40を外部のPC21,22との接続を行なうためのインタフェースとして内蔵している。また、プロジェクタ4は、CPU又はMPU等からなり、転送制御装置40から入力された命令信号に基づく処理を行なう制御部41、プロジェクタ4をユーザが操作するための各種の操作ボタンを有する操作部42、転送制御装置40から入力された画像信号を処理し、画像信号に基づいた画像を投射デバイス44に形成させる画像処理部43等を備えている。転送制御装置40は、上述した実施形態1又は2で示した転送制御装置10の構成と同様であるため、説明を省略する。
制御部41は、プロジェクタ4が備える上述したようなハードウェア各部を制御すると共に、PC21,22から入力された命令信号に基づく処理を実行し、得られた実行結果(応答信号)を転送制御装置40を介してPC21,22へ返信する。また、制御部41がPC21,22から入力される命令信号に基づいて適切な処理を行なうことによって、PC21,22から送信された画像信号に基づく画像をスクリーン4aへ投射させることができる。
上述した実施形態1乃至3では、転送制御装置10,40に接続されてプロジェクタ30,4へ信号を出力する出力機器として、2つのPC21,22が接続された例を示したが、PCに限られず、取得した画像信号の記録処理及び再生処理が可能に構成された記録再生装置でもよく、転送制御装置10,40が有する命令入出力部11,12の数を3つ以上とすることにより、転送制御装置10,40に接続される機器の数を増やすこともできる。
また、上述した実施形態1乃至3において、転送制御装置10の命令実行部18によって実行される内部命令信号としては、例えば、転送制御装置10の電源がオンされているか又はオフされているかをPC21,22から確認する際の命令信号があり、また、実施形態3に示すように転送制御装置40がプロジェクタ4に内蔵されている場合には、例えば、プロジェクタ4の光源46が照射する光のオン又はオフの確認の命令信号があり、PC21,22から入力された場合に即時に返信する必要がある命令信号が含まれる。
更に、上述した実施形態3では、本発明の転送制御装置40をプロジェクタ4に内蔵させた例について説明したが、プロジェクタ4に限られず、命令信号を入力する複数の装置が接続される各種の信号処理装置において適用することができる。