以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
図1および図2を参照して、本発明に係る光信号受信装置を有する携帯情報通信端末の一態様である携帯電話100について説明する。図1は、折畳式の携帯電話100の筐体を開いた状態で正面から表わした図である。図2は、筐体を開いた状態で表わした携帯電話100を背面から示した図である。
図1に示されるように、携帯電話100は、第1の筐体104と、第2の筐体106と、スピーカ174と、メインディスプレイ150と、サブカメラ142と、操作のための入力を受ける入力部120と、マイク172とを含む。入力部120は、メインディスプレイ150に表示されるカーソルを移動するためのカーソル移動キー122と、押下に応じた信号を出力するための数字ボタンおよび記号から構成される12キー124とを含む。
図2に示されるように、携帯電話100は、第1の筐体104において、サブディスプレイ160と、操作のための入力を受けるサブ入力部130と、メインカメラ140と、LED(Light Emitting Diode)176とを含む。また、携帯電話100は、第2の筐体106に、信号の送受信を行なうアンテナ108を有する。送受信される信号は、電話のための電波と、後述するように、インターネットその他の通信回線との接続時に通信される信号とを含む。サブ入力部130は、サブディスプレイ160に表示されるカーソルを移動させるための指示の入力を受ける移動キー130a,130cと、決定キー130bとを含む。
なお、当該光信号受信装置を有する端末は、携帯電話に限られない。たとえば、PDAその他の情報処理端末、あるいはデジタルカメラであってもよい。
図3を参照して、携帯電話100の構成についてさらに説明する。図3は、携帯電話100のハードウェア構成を表わすブロック図である。
携帯電話100は、図1および図2に示される構成に加えて、携帯電話100の動作を制御するための制御回路300と、データを格納するフラッシュメモリ360と、被写体を撮影して映像信号を出力する撮像部140と、撮像部140を制御するためのCCD(Charge Coupled Device)駆動制御回路310と、撮像部140からの出力信号の出力先を切り換えるためのスイッチ320と、撮像部140から出力される映像信号に基づいて予め定められた画像処理を実行するための画像信号処理回路330と、撮像部140からの信号に基づいて光信号を復調するための光通信信号処理回路340と、データを一時的に格納するためのVRAM(Video Random Access Memory)350と、メインディスプレイ150およびサブディスプレイ160における表示のために出力先を切り換える切換回路370と、アンテナ108を介して信号の通信を行なうための通信回路380とを備える。
制御回路300は、CCDイメージセンサ140cからの信号に基づいて受光された光信号の強度を検出するための検出回路340と、マイク172からの信号に対して予め定められた処理、およびスピーカ174への信号に対して予め定められた処理を実行するための音声信号処理回路302とを含む。
撮像部140は、携帯電話100の筐体の表面に配置され外部から光を集めるレンズ140aと、レンズ140aにより集められた光を結像するために、入射光の方向あるいは範囲を制限するための絞り140bと、CCD駆動制御回路310からの制御信号に基づいて、絞り140bを介して入射される光を受けて電気信号を出力するためのCCDイメージセンサ140cを含む。CCDイメージセンサは、フォトダイオードその他の受光素子(図示しない)と、CCD駆動制御回路310からの指令に応じて受光素子からの電荷を保持し、あるいは電荷を転送するための複数の固体撮像素子を含む。各固体撮像素子は、後述するように、予め定められた方向と当該方向の垂直方向とに従って、いわば格子状に配置されている。固体撮像素子は、たとえば周知のCCDを含む。
ここで、図4を参照して、本実施の形態における信号処理について説明する。図4(A)は、撮像部140により撮影される映像信号に対応する光量の変化を表わす図である。図4(B)は、その光量に応じてCCDイメージセンサ140cから出力される信号の時系列的変化を表わす図である。図4(C)は、CCDイメージセンサ140cから出力される信号に基づいて撮像部140によって取得された信号が復元されることを説明するための図である。
図4(A)に示されるように、撮像部140に対する光量は、時間(t)に対して連続的に変化する。当該光量に対してCCDイメージセンサ140cを駆動して信号を取り出す場合、図4(B)に示されるように、CCDイメージセンサ140cによる処理速度に応じた時間ごとに信号が取得される。この場合、信号の変化は、不連続なものとなる。このようにして取得された信号を用いて当初の光量に応じた信号を復元するための復調処理を実行する場合、図4(C)に示されるように、図4(A)に示される曲線に対応する信号を復元することができる。
すなわち、図4(A)から図4(B)への信号の取得に際し、CCDイメージセンサ140cに対して、電荷を高速で読み出す処理を実行させることにより、取得された信号から光信号への再現性を高めることができる。
次に、図5〜図7を参照して、携帯電話100における信号の転送について説明する。図5は、垂直転送用のCCDが有する複数の電極の構成を概念的に表わす図である。垂直転送用のCCDは、4つの電極φ(1)〜φ(4)を有している。
図6は、図5に示される各電極に与えられるパルスの変化を表わすタイミングチャートである。時刻t(1)において、電極φ(1)と電極φ(4)に対して、電圧を「OFF」にするためのパルスが与えられている。このとき、電極φ(2)と電極φ(3)とは、電圧を「ON」にするためのパルスが与えられている。
その後、時刻t(2)において、電極φ(1)と電極φ(4)に対して、電圧を「ON」にするためのパルスがそれぞれ与えられる。これにより、4つの電極φ(1)〜φ(4)は、全て同じ状態になる。
図7は、図6に示されるタイミングでパルスが各電極に与えられた場合における電荷の転送の状態を表わす図である。
時刻t(1)において、電極φ(1)と電極φ(4)には、信号電荷は保持されていない。この時、電極φ(2)と電極φ(3)に、信号電荷1010a,1010b,1010cが、それぞれ保持されている。
時刻t(2)において、電極φ(1)およびφ(4)の各電圧値は、与えられるパルスが「OFF」から「ON」に変化したことに応答して、変化する。すなわち、電極φ(1)と電極φ(4)は、電荷を蓄積できる状態に切り換わる。その結果、電極φ(1)〜φ(4)に、信号電荷1020が蓄積される。すなわち、信号電荷1020は、信号電荷1010a,1010bおよび1010cを総和したものに相当する。
ここで、垂直転送用のCCDの電位レベルが水平転送用のCCDの電位レベルよりも低い場合、信号電荷1020は、電極φ(1)から電極φ(4)に保持される。
その後、時刻t(3)において、垂直転送用のCCDの電位レベルを水平転送用のCCDの電位レベルよりも高くすると、信号電荷1020は、水平転送用のCCD(図示しない)に移動する。このようにして、垂直転送用のCCDに蓄積されている電荷は、水平転送用のCCDに一斉に転送される。
従来のCCDの駆動方式によれば、電極一つ一つの蓄積された電荷を順番に一つずつ転送して、水平転送用CCDに送っていたが、上記方法によれば、パルス一つで一気に送ることができる。
次に、図8を参照して、電荷の転送の態様についてさらに説明する。図8は、CCDイメージセンサ140cにおける電荷の状態を表わす図である。ここでは、説明を簡単に行なうために、CCDイメージセンサ140cを構成するCCDが4行×4列の配列に従って配置されている場合について説明する。
すなわち、CCDイメージセンサ140cは、行方向及び列方向に従って配列された複数の受光領域の4つの列1100a,1100b,1100c,1100dを含む。各受光領域は、たとえばフォトダイオードその他の光電変換機能を有する素子により実現される。
CCDイメージセンサ140cは、各受光領域の配列の間に配置された垂直転送用のCCDを含む。たとえばCCD1110a,1120a,1130a,1140aは、受光領域の列1100aの配列に含まれる各受光素子(図示しない)により受けられた光信号に基づく電荷をそれぞれ受ける。
CCDイメージセンサ140cは、さらに、垂直転送用のCCDに接続されている水平転送用のCCD1150a,1150b,1150c,1150dを含む。CCD1150aは、トランスファーゲート(図示しない)を介して、増幅部1160に接続されている。CCD1150aと増幅部1160との間に、蓄積部1170が配置されている。蓄積部1170は、たとえばコンデンサである。
図8(A)を参照して、たとえば、電荷1101a,1102a,1103a,1104aは、それぞれ受光領域の列1100aにおいて受けられた光信号に基づく電荷である。各CCDを制御するための信号(たとえばパルス信号)が、CCD1110a,1120a,1130a,1140aに対して与えられると、各CCDと各受光領域との間に配置されたトランスファーゲート(図示しない)が、閉状態から開状態に切り換わる。この切り換わりにより、各受光領域とCCDとは電気的に接続され、各受光領域に蓄積されていた電荷は、各受光領域に対応するCCDにそれぞれ移動する。その結果、図8(A)に示されるように、16個の電荷、すなわち電荷1101a〜1104dの転送が実現される。
その後、図6の時刻t(2)におけるパルスが電極φ(1)〜φ(4)に与えられて、垂直転送用のCCDと水平転送用のCCDとの間のトランスファーゲート(図示しない)が閉状態から開状態に切り換わると、垂直転送用のCCDにおいて蓄積されていた電荷は、それぞれ水平転送用の各CCDに移動する(図8(B))。
ここで、水平転送用の各CCDに関し、隣接するCCD間は、トランスファーゲートによって閉じられている。各トランスファーゲートは、CCD駆動制御回路310からの制御信号に基づいて、各々の閉状態と開状態とを切り換える。
その後、これらのトランスファーゲートが開状態に切り換わると、水平転送用のCCDに蓄積されていた各電荷は、トランスファーゲートを通って、蓄積部1170に移動し(図8(C))、その後、増幅部1160に入力される。増幅部1160は、当該電荷を用いて増幅処理を行ない、処理により生成された信号を出力する。蓄積部1170は、電荷を蓄積するためのコンデンサを有しており、水平転送用のCCDから送られてきた電荷を蓄積し、各電荷の総和を算出する。その後、電荷の総和としての信号は、スイッチ320に転送される。
なお、ここでは、CCDイメージセンサ140cに含まれる全ての受光領域からの電荷を転送する場合について説明したが、本発明の適用は、この場合に限られるものではない。たとえば予め定められた一部の領域に含まれる受光領域からの電荷を転送するものであってもよい。
あるいは、予め定められた1つの受光領域からの電荷を転送するものであってもよい。たとえば、蓄積部1170に最も近い場所に位置するCCD1110aに対する電荷を与えることができる受光領域のみを、光信号を受信するために用いてもよい。このようにすると、他の領域からの電荷の転送を行なう必要がなくなるため、一層の高速処理を実現することができる。
あるいは、受光領域において受けられた光の強度に応じて電荷の転送を切り換えるようにしてもよい。すなわち、入射光の強度が予め定められた強度を下回る場合には、そのような光信号に基づいて情報を取得しても誤った情報が取得される恐れがあるため、当該強度を上回る光を受信した領域からの電荷を転送するようにしてもよい。この場合、制御回路300は、CCDイメージセンサ140cにおける光の強度を検出し、その検出結果に応じてCCD駆動制御回路310に対し、電荷を転送する受光領域あるいはCCDを駆動するように、指示を出力する。
次に、図9を参照して、携帯電話100の制御構造について説明する。図9は、CCD駆動制御回路310が実行する処理の手順を表わすフローチャートである。
ステップS1210にて、CCD駆動制御回路310は、CCDイメージセンサ140cの受光領域に保持されている電荷を、垂直転送用のCCDに一斉に転送させる。ステップS1220にて、CCD駆動制御回路310は、垂直転送用のCCDに保持されているすべての電荷を、水平転送用のCCDに転送させる。具体的には、電極φ(1)〜φ(4)に図6の時刻t(2)におけるパルスを与える制御を行う。この転送により、垂直転送用のCCDのうち1列のCCDに保持されている電荷が水平転送用のCCDに積和され、CCD1150が電荷を蓄積することになる。
ステップS1230にて、CCD駆動制御回路310は、水平転送用のCCDに保持されているすべての電荷を蓄積部1170に転送し、すべての電荷を積和する。
ステップS1240にて、CCD駆動制御回路310は、蓄積部1170に保持されている電荷を読み取り、読み取った電荷を増幅部1160で増幅し、増幅された信号を出力する。
ステップS1250にて、CCD駆動制御回路310は、連続した光通信信号を受信するために、上記の各処理を反復する。
次に、図10および図11を参照して、垂直転送用のCCDから水平転送用のCCDへの電荷の移送について別の実施例を説明する。図10は、図5に示される各電極に与えられるパルスの変化を表わすタイミングチャートである。図11は、各時刻における電荷が蓄積されている状態の変化を表わす図である。
垂直転送用のCCDは、図5に示されるように4つの電極φ(1)〜φ(4)を有している。係る構成において、各電極に対し、図10に示されるタイミングで、電圧値を切り換えるための指令が与えられる。
すなわち、図10を参照して、時刻t(1)において、電極φ(1)と電極φ(4)に対して、正電圧を「OFF」にするためのパルスが与えられる。この時、電極φ(2)と電極φ(3)とに対して、正電圧を「ON」にするためのパルスが与えられる。各電極の電圧値は、これらのパルスに応じて変化する。
その後、時刻t(2)において、電極φ(4)に対して、正電圧を「ON」にするためのパルスが与えられる。他の電極に対しては、時刻t(1)におけるパルスがそのまま与えられている。時刻t(3)〜時刻t(8)においても、同様に、図10に示されるパターンで各電極にパルスが与えられ、各電極の電圧値は、これらのパルスに応じて変化する。このようにして各電極における電圧値が変化すると、各電極に保持されている電荷は、図11に示される態様で移送される。
すなわち、図11を参照して、時刻t(1)において、電極φ(1)と電極φ(4)には、信号電荷は保持されていない。この時、電極φ(2)と電極φ(3)に、信号電荷710a、710b、710cが、それぞれ保持されている。
時刻t(2)において、電極φ(4)の電圧値は、与えられるパルスが「OFF」から「ON」に変化したことに応答して、変化する。すなわち、電極φ(4)は、電荷を蓄積できる状態に切り換わる。その結果、電極φ(2)〜φ(4)に、信号電荷720a,720b,720cがそれぞれ蓄積される。
時刻t(3)において、電極φ(2)の電圧値は、与えられるパルスが「ON」から「OFF」に変化したことに応答して、変化する。すなわち、電極φ(2)は、電荷を蓄積しない状態に切り換わる。その結果、電極φ(3)と電極φ(4)に、信号電荷730a,730b,730cがそれぞれ蓄積される。
時刻t(4)において、電極φ(1)の電圧値は、与えられるパルスが「OFF」から「ON」に変化したことに応答して、変化する。すなわち、電極φ(1)は、電荷を蓄積する状態に切り換わる。その結果、電極φ(1)と電極φ(3)と電極φ(4)に、信号電荷740a〜740dがそれぞれ蓄積される。
時刻t(5)以降においても、各電極に対するパルスの変化に応答して、電荷が蓄積される電極は順次切り換わる。このようにして、各電極に蓄積されている電荷は、順次移送され、信号の転送が実現される。
なお、各電極に与えられるパルスの「ON」および「OFF」と各電極における電荷の蓄積の有無との関係は、上記の説明に示された関係に限られない。少なくとも、各パルスが排他的に、電荷のONおよびOFFに対応していれば良い。
次に、図12を参照して、イメージセンサ140cにおける電荷の転送についてさらに説明する。図12は、4行×4列に配置されたCCDにおける電荷の転送の状態を表わす図である。
図12(A)に示されるように、4列の垂直転送用のCCDに保持されている電荷のうち、1行分のCCDに保持されている電荷1301a,1301b,1301c,1301dは、受光領域の各列1100において受けられた光信号に基づく電荷である。各行のCCDにおいても同様である。図12(B)に示されるように、垂直転送用のCCDに保持されている電荷は、逐次、水平転送用のCCD1150a,1150b,1150c,1150dにそれぞれ転送される。この転送は、CCD駆動制御回路310から図10に示される各電極に与えられるパルスに基づいて実現される。
また、たとえば2行分のCCDに蓄積された電荷を転送する場合には、図10で時刻t(1)からt(8)に示されるパターンのパルスを2サイクル繰り返すことにより、2行分の電荷を転送することができる。この場合、たとえば図12(B)に示されるように、8個(=4列×2行)の電荷が水平転送用のCCDに転送される。このとき、各列の2行分の電荷が、水平転送用のCCD1150a,1150b,1150c,1150dで総和されることになる。
垂直転送用のCCDに保持されていた電荷のうち予め定められた行の電荷がすべて水平転送用のCCDに転送されると、これらの電荷は、蓄積部1170に転送される(図12(C))。水平転送用のCCDに蓄積されていた電荷のうち予め定められた列の電荷が蓄積部1170に転送されると、蓄積部1170における電荷に基づいて、転送された全ての電荷の総和が導出される(図12(D))。
従来のCCDの駆動方式によれば、垂直転送用のCCDに保持された電荷を1行ずつ水平転送用CCDに転送し、水平転送用CCD内で、電荷一つずつを増幅部1160に送って、信号を取り出していた。上記方法によれば、1行、あるいは複数行の電荷を水平転送用CCDに転送する。この間に、水平転送用CCD内での電荷の転送を行わないので、高速に垂直転送用のCCDに保持された電荷を蓄積部1170まで転送することができる。
次に、図13を参照して、本実施の形態に係る携帯電話100の制御構造についてさらに説明する。図13は、CCD駆動制御回路310が実行する処理の手順を表わすフローチャートである。
ステップS1410にて、CCD駆動制御回路310は、CCDイメージセンサ140cに保持されている受光領域の電荷すべてを垂直転送用のCCDに一斉に転送する。ステップS1420にて、CCD駆動制御回路310は、垂直転送用のCCDに保持されている電荷のうち1ライン(すなわち1行分)に相当する電荷を、水平転送用のCCDに転送する。具体的には、図10で時刻t(1)からt(8)に示されるパターンのパルスを各電極に与えることで実現される。
ステップS1430にて、CCD駆動制御回路310は、水平転送用のCCDにmライン分の電荷を転送したか否かを判断する。ここで、mラインは、CCDイメージセンサ140cにおいて、CCDが配列されている行に相当する。mライン分の電荷が転送されている場合には(ステップS1430にてYES)、処理はステップS1440に移される。そうでない場合には(ステップS1430にてNO)、処理はステップS1420に戻される。
ステップS1440にて、CCD駆動制御回路310は、水平転送用のCCDに保持されている電荷を増幅部1160に転送する。ステップS1450にて、CCD駆動制御回路310は、増幅部1160にnライン分の電荷を転送したか否かを判断する。ここでnラインとは、すなわちCCDイメージセンサ140cにおいて形成されているCCDの列の数をいう。nライン分の電荷が転送されている場合には(ステップS1450にてYES)、処理はステップS1460に移される。そうでない場合には(ステップS1450にてNO)、処理はステップS1440に戻される。
ステップS1460にて、CCD駆動制御回路310は、増幅部1160に対して電荷の読み取り指令を出力する。増幅部1160は、その指令に応じて電荷を読み取り、読み取った電荷に基づいて信号を復調し、復調した信号を出力する。
ステップS1490にて、CCD駆動制御回路310は、連続した光通信信号を受信するために、上記の各処理を反復する。
上記方法では、m行×n列の画素列の電荷を読み出したが、全画素の中で、m行×n列の画素列が複数存在する場合、信号の対ノイズ比を上げるために、m行×n列の画素列の電荷の読み出しを複数回、繰り返してもよい。
ここで、図14を参照して、本実施の形態に係る携帯電話100の使用態様について説明する。図14は、鉄道の駅に設置されている掲示板1500により発信される光信号を携帯電話100が受信し、携帯電話100が通信回線1590を介してサーバ2100に接続する態様を表わす図である。ここで通信回線1590は、たとえばインターネットである。あるいは、LAN(Local Area Network)、WAN(Wide Area Network)であってもよい。
掲示板1500は、後述するように予め定められた間隔で光信号を発信可能な行先案内板を構成するLED1600を含む。LED1600は、たとえばLED(Lightening Emitting Diode)により構成されている。携帯電話100の使用者がLED1600の方に携帯電話100を向けて予め定められた撮影操作を実行すると、携帯電話100は、LED1600の画像を取得する。またその使用者が光信号を受信するために予め定められた操作を実行すると、携帯電話100の撮像部140は、LED1600から発信されている光信号を受信する。
使用者が携帯電話100に対して予め定められた接続操作を実行すると、携帯電話100は通信回線1590を介してサーバ2100に接続できる。サーバ2100は、たとえば列車に関する情報を提供するサーバである。
なお、携帯電話100とサーバ2100との間の通信は、周知の通信プロトコルに基づいて実現される。したがって、ここでは、当該通信についての詳細な説明は、繰り返さない。
図15を参照して、掲示板1500の表示態様について説明する。掲示板1500において、LED1600は、列車の発着情報を表示する。この情報は、たとえば図15に示されるように、各々の列車(たとえば列車1510)が出発するホーム、各列車の行先、各列車の発車時刻などを含む。LED1600は、予め定められた表示制御に基づいて時刻に応じた表示を実現する。このとき、LED1600は、通常は図15に示されるような情報を表示する。さらに、LED1600は、予め定められた間隔で人間の目によっては認識できない信号を光信号として送信する。この送信は、LED1600が高速で点滅することにより実現される。
図16を参照して、本発明に係る光信号受信装置に対して光信号を発信する掲示板1500の構成について説明する。図16は、掲示板1500のハードウェア構成を表わすブロック図である。
掲示板1500は、データを格納するメモリ1710と、時刻を計測するタイマ1720と、LED1600と、LED1600における表示を制御するためのシステム制御回路1730とを含む。掲示板1500は、LED1600による発光の状態(色、発光タイミング等)を切り換えることにより、複数の表示を実現する。
システム制御回路1730は、メモリ1710に格納されているデータに基づいてLED1600に表示される情報を生成するための情報生成回路1740と、情報生成回路1740により生成された情報とタイマ1720により計測された時刻とに基づいてLED1600における表示を実行する表示制御回路1750とを含む。メモリ1710は、行先情報を格納する領域1712と、列車に関する情報を提供するサーバ(たとえばサーバ2100)にアクセスするためのアクセス情報を格納する領域1714と、掲示板1500が設置されている場所を表わす現在位置コードが格納されている領域1716とを含む。
ここで、図17を参照して、掲示板1500により発信される光信号の構成について説明する。図17は、LED1600の点滅に応じて出力される光信号の構成を表わす図である。
光信号1800は、信号の先頭を表わす開始ビット1810と、アクセス情報が格納されている領域1820と、現在位置コードが格納されている領域1830と、信号の終わりを表わす終了ビット1840とを含む。
領域1820に格納されている情報は、たとえばメモリ1710の領域1714に格納されているデータである。すなわち情報生成回路1740が領域1714に格納されているデータを読み出し、その読み出されたデータに基づいて光信号1800を生成する際に、そのデータを領域1820に格納する。同様に領域1830に格納されているデータは、メモリ1710の領域1716に格納されているデータに対応する。また開始ビット1810および終了ビット1840については、当業者にとっては容易に理解できるため、ここではその詳細の説明は繰り返さない。
なお、情報の伝達のために送信される光信号1800は、図17に示される項目以外の項目をデータとしてさらに有していてもよい。たとえば、列車の運行状態その他のより具体的な情報が含まれていてもよい。このようにすると、携帯電話100の使用者は、通信回線1590を介して情報を取得することなく、多くの情報を入手することが可能になる。
図18を参照して、本実施の形態に係る掲示板1500の制御構造について説明する。図18は、情報生成回路1740および表示制御回路1750が実行する処理の手順を表わすフローチャートである。
ステップS1910にて、表示制御回路1750は、タイマ1720により計測された時刻を検出する。ステップS1920にて、情報生成回路1740は、メモリ1710から、検出された時刻に応じた行先表示用のデータを読み出す。情報生成回路1740は、その読み出したデータに基づいてLED1600において行先表示を実現するためのデータを生成する。ステップS1930にて、表示制御回路1750は、情報生成回路1740により生成されたデータをLED1600に対して出力する。LED1600は、そのデータに応じて行先の表示(たとえば図15)を実現する。
ステップS1940にて、表示制御回路1750は、タイマ1720からの時刻に基づいて、予め定められた時間が経過したか否かを判断する。予め定められた時間が経過している場合には(ステップS1940にてYES)、処理はステップS1950に移される。そうでない場合には(ステップS1940にてNO)、処理はステップS1910に戻される。
ステップS1950にて、情報生成回路1740は、メモリ1710の領域1714,1716に格納されているデータに基づいて掲示板1500の位置情報の送信用の信号を生成する。生成された信号は、表示制御回路1750に対して送出される。ステップS1960にて、表示制御回路1750は、その信号に基づいてLED1600を発光させる。その結果、LED1600は、人間の目には見えない光信号を発信する。
図19を参照して、携帯電話100の制御構造についてさらに説明する。図19は、携帯電話100の使用者が掲示板1500の表示部、すなわちLED1600に向けて撮影操作を実行した場合に実現される処理の手順を表わすフローチャートである。
ステップS2010にて、携帯電話100の制御回路300は、シャッタボタン(たとえばボタン121)の押下を検知する。ステップS2020にて、制御回路300は、その検出に応答して、通常の撮影処理を実行するために予め定められた信号を、CCD駆動制御回路310に対して送出する。CCD駆動制御回路310は、その信号に基づいてCCDイメージセンサ140cを駆動し、レンズ140aを介して入射された光信号を取得する。
ステップS2040にて、制御回路300は、シャッタボタンの押下後、予め定められた時間経過後に、CCD駆動制御回路310に対してそのタイミングにおける光信号の受信を指示する。CCD駆動制御回路310は、その指示に基づいてCCDイメージセンサ140cに対してそのときに受光されている電荷を保持させる。
ステップS2050にて、制御回路300は、CCD駆動制御回路310に対してCCDイメージセンサ140cにより取得された光信号から情報の読み取り処理を指令する。CCD駆動制御回路310は、その指令に基づいてCCDイメージセンサ140cに対して保持されている電荷を前述の態様で転送する処理を実行させる。
ステップS2060にて、制御回路300は、情報の読み取りが完了したか否かを判断する。この判断は、たとえばCCDイメージセンサ140cにおける電荷の有無に基づいて行なわれる。情報の読み取りが完了している場合には(ステップS2060にてYES)、処理はステップS2070に移される。そうでない場合には(ステップS2060にてNO)、処理はステップS2050に戻される。
ステップS2070にて、制御回路300は、CCD駆動制御回路310に対して撮影の終了を指示する。CCD駆動制御回路310は、その指示に基づいてCCDイメージセンサ140cに対する駆動処理を終了する。ステップS2080にて、制御回路300は、撮影の終了を通知するための音声信号を、スピーカ174に対して出力する。
ここで、図20を参照して、サーバ2100について説明する。図20は、サーバ2100のハードウェア構成を表わすブロック図である。
サーバ2100は、データを格納するメモリ2130と、外部との間で信号を通信するための通信インターフェイス2120と、サーバ2100における処理を制御するためのCPU2110とを含む。メモリ2130は、データを格納する領域2140〜2158を含む。駅を特定するためのデータは、駅名称として領域2140に格納されている。各駅に設置される掲示板を特定するためのデータは、領域2140に格納されている。各掲示板の場所を特定するためのデータは、領域2144に格納されている。
サーバ2100は、たとえば周知のコンピュータシステムが、要求に応じて情報を提供する周知の通信機能を実現するプログラムを実行することにより、実現されるものである。コンピュータシステムのハードウェア構成も周知である。したがって、ここでは、コンピュータシステムについての説明は繰り返さない。
図20を再び参照して、運行される列車を特定するためのデータは、列車番号として領域2150に格納されている。その列車の行先は、領域2152に格納されている。各駅における発車時刻は、領域2154〜領域2158に格納されている。これらのデータは、たとえば図15に示されるように特定の駅(たとえばABC駅)における特定の掲示板(たとえば掲示板1500)に表示されるデータに対応している。
CPU2110は、通信インターフェイス2120を介して入力される情報の送信要求に基づいて、メモリ2130に格納されているデータを読み出し、その要求の発信元に対してそのデータを送信させる。たとえば、携帯電話100が通信回線を介してサーバ2100にアクセスした場合には、CPU2110は、メモリ2130の中から求められている駅および列車についてのデータを読み出し、そのデータを携帯電話100に対して送信する。
ここで、図21を参照して、携帯電話100の制御構造についてさらに説明する。図21は、携帯電話100による撮影処理が終了した後に制御回路300が実行する処理の手順を表わすフローチャートである。
ステップS2202にて、制御回路300は、フラッシュメモリ360に格納されている光信号から取得したURL(Uniform Resource Locator)をメインディスプレイ150に対して表示させる。ステップS2210にて、制御回路300は、入力部120を介した入力に基づいてそのURLにアクセスするための指示が入力されたか否かを判断する。その指示が入力されている場合には(ステップS2110にてYES)、処理はステップS2220に移される。そうでない場合には(ステップS2210にてNO)、処理はステップS2290に移される。
ステップS2220にて、制御回路300は、予め定められた通信処理を実行して、そのURLにアクセスする。ステップS2230にて、制御回路300は、アクセス先のサーバ、すなわちサーバ2100から、掲示板1500に関連する情報を取得する。ステップS2240にて、制御回路300は、その取得した情報をメインディスプレイ150に表示させる。これにより、携帯電話100の使用者は、ABC駅に設置されている掲示板1500の情報をメインディスプレイ150を介して参照することができる。
ステップS2250にて、制御回路300は、入力部120を介した入力に基づいて特定の列車の選択(たとえばその使用者が乗車しようとしている列車)を検知する。ステップS2260にて、制御回路300は、サーバ2100に対してその列車を識別する情報と掲示板1500の位置情報とを送信する(たとえば図17)。サーバ2100は、その情報を取得すると、メモリ2130に格納されているデータを読み出し、たとえば図17に示されるパケット構造と同様の構成を有する信号を生成し、携帯電話100に対して送信する。
ステップS2270にて、制御回路300は、サーバ2100からその列車の情報を取得する。制御回路300は、取得した情報をフラッシュメモリ360において予め確保された領域に格納する。ステップS2280にて、制御回路300は、その取得した情報に基づいて、選択された列車までの道筋をメインディスプレイ150において表示する。あるいは、制御回路300は、フラッシュメモリ360に格納されている音声データとともに、その列車までの道筋を音声ガイドするようにスピーカ174に音声を出力させてもよい。
以上のようにして、本発明に係る光信号受信装置を有する携帯電話100は、光信号を受信すると、その信号に含まれるデータを取得することができる。この取得は、光信号の点滅状態の変化を検知し、データが含まれる光信号を受信したと検知した場合に、通常の画像の表示のために実行する読み取り速度よりも速い速度で電荷を転送する処理を行うことにより、実現される。
このようにすると、光信号を受信するための専用のデバイスを設けることなく、光信号に含めて送信される通信データを取得することができる。これにより、携帯性を維持しつつ光信号に基づく情報通信処理を実現できる光信号受信装置を提供することができる。
また、CCDイメージセンサはレンズを有している場合には、レンズを用いて光を集めることができる。このため、レンズを用いない場合よりも強度の強い光を取得することができる。したがって、たとえば光信号に含まれる情報の検出の精度の低下を防止することができる。
また、レンズがズーム機能を有する場合には、当該機能を用いて被写体、すなわち光信号を送信する装置を絞りこむことができる。したがって、ノイズを取り除いて受光することが可能になるため、光信号からの情報の取得精度の低下を防止することができる。
さらに、CCDイメージセンサが絞りを有している場合には、当該絞りを用いることで、光信号の受光を調節することができる。したがって、たとえば光の強度が強すぎる場合に、受光量を減らすことができるため、受光後の処理を行なうためのデバイスの誤動作その他の不具合の発生を防止することが可能になる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
100 携帯電話、104 第1の筐体104、106 第2の筐体、108 アンテナ、120 入力部、122 カーソル移動キー、124 12キー、130 サブ入力部、130a,130c 移動キー、130b 決定キー、140 メインカメラ、140a レンズ、140b 絞り、140c CCDイメージセンサ、142 サブカメラ、150 メインディスプレイ、160 サブディスプレイ、172 マイク、174 スピーカ、176,1600 LED、300 制御回路、302 音声信号処理回路、304 検出回路、310 CCD駆動制御回路、320 スイッチ、330 画像信号処理回路、340 光通信信号処理回路、350 VRAM、360 フラッシュメモリ、370 切換回路、380 通信回路、1110a,1110b,1110c,1110d,1150a CCD、1160 増幅部、1170 積算部、1500 掲示板、1510 列車、1590 通信回線、1710 メモリ、1720 タイマ、1730 システム制御回路、1740 情報生成回路、1750 表示制御回路、2100 サーバ、2110 CPU、2120 通信IF。