(57)【要約】【課題】  目標マーク率となるようビット列のマーク率を制御することによって、ビット列の冗長度が大きくなることを抑制すること。【解決手段】  入力された送信用ビット列に基づいて照射する可視光の輝度を変動させることにより該送信用ビット列を光信号として送信するＬＥＤ１６０を備えた光送信装置１０において、スクランブルデータ列記憶部１４８に互いに異なるマーク率のスクランブルデータ列を複数記憶しておき、記憶されるスクランブルデータ列のうちから選択されるスクランブルデータ列を用いて、前記送信用ビット列に対し可逆なビット演算を施すことにより該送信用ビット列のマーク率を変更した調光用ビット列を生成し、ＬＥＤ１６０に出力することを特徴とする。【選択図】        図４
2006270422.tif 000002
【特許請求の範囲】
【請求項１】
入力された送信用ビット列に基づいて照射する可視光の輝度を変動させることにより該送信用ビット列を光信号として送信する発光素子を備えた光送信装置において、
互いに異なるマーク率の演算用ビット列を複数記憶する演算用ビット列記憶手段と、
前記送信用ビット列に対し、前記演算用ビット列記憶手段に記憶される演算用ビット列のうちから選択される演算用ビット列を用いて可逆なビット演算を施すことにより、該送信用ビット列のマーク率を変更した調光用ビット列を生成する調光用ビット列生成手段と、
前記調光用ビット列生成手段により生成された前記調光用ビット列を前記発光素子に出力するビット列出力手段と、
を含むことを特徴とする光送信装置。
【請求項２】
請求項１に記載の光送信装置において、
前記演算用ビット列記憶手段には、
ｃ＝（ａ−ｂ）／（２ａ−１）（ただし、ａは前記送信用ビット列のマーク率、ｂは前記調光用ビット列のマーク率）
に従って算出されたマーク率ｃの前記演算用ビット列が記憶されている、
ことを特徴とする光送信装置。
【請求項３】
請求項１又は２に記載の光送信装置において、
前記調光用ビット列生成手段のビット演算によりマーク率が変化しないような前記送信用ビット列に対し、予め前記送信用ビット列のマーク率を増減させるマーク率増減手段、
をさらに含むことを特徴とする光送信装置。
【請求項４】
請求項１乃至３のいずれかに記載の光送信装置において、
前記調光用ビット列生成手段は、ビット演算として排他的論理和演算を施す、
ことを特徴とする光送信装置。
【請求項５】
請求項１乃至４のいずれかに記載の光送信装置において、
周囲光を受光する受光素子、をさらに備え、
前記受光素子からの出力に応じて、前記周囲光の変動を打ち消すようなマーク率を有する前記演算用ビット列を、前記演算用ビット列記憶手段から選択する演算用ビット列選択手段と、
をさらに含むことを特徴とする光送信装置。
【請求項６】
請求項１乃至５のいずれかに記載の光送信装置と、
該光送信装置から照射された可視光を受光する受光素子を備え、該可視光に基づき前記光信号を受信する受信手段を含む光受信装置と、
を含んでなる可視光通信システムにおいて、
前記光受信装置は、
当該光受信装置が備える前記受光素子から入力されたビット列に対し、前記光送信装置で選択された前記演算用ビット列と同じ演算用ビット列を用いて可逆なビット演算を施すことにより、前記光信号に応じた受信用ビット列を生成する受信用ビット列生成手段、
をさらに含み、
前記受信手段は、前記生成された受信用ビット列を取得することにより、前記光信号を受信する、
ことを特徴とする可視光通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は光送信装置及び可視光通信システムに関し、例えば送信用データのマーク率を制御するための技術に関する。
【背景技術】
【０００２】
発光素子の輝度の変動により通信を行う可視光通信システムには、通信データであるビット列のマーク率を制御することにより、発光素子の輝度を増加させるようにしているものがある。なお、マーク率とは、ビット列中に「１」が含まれる割合である。
【０００３】
この輝度増加制御の例が特許文献１に記載されている。特許文献１に記載されるＰＰＭ制御では、所定長の送信用ビット列を、より発光素子の輝度が高くなるマーク率の置換用ビット列と置換することにより、ビット列に含める情報量を減らすことなく発光素子の輝度が高くなるようにしている。このＰＰＭ制御の具体的な例を、図１０を参照しながら説明する。
【０００４】
図１０に示すＰＰＭ制御では、送信用ビット列Ｘ１を２ビットずつの所定長ビット列Ｘ２に区切り、各所定長ビット列Ｘ２のビット構成の種類（ここでは「００」，「０１」，「１０」，「１１」）に対応するマーク率２５％の置換用ビット列Ｘ３と置換する。このようにして、マーク率が２５％となるよう送信用ビット列のマーク率を制御している。
【０００５】
このように、ＰＰＭ制御では送信用ビット列は置換用ビット列Ｘ３のマーク率となる。換言すれば、ＰＰＭ制御により目標とするマーク率のビット列を得るためには、該マーク率の置換用ビット列が必要となる。ここで、置換用ビット列が４ビットだとすると、４ビットのうち１ビットが「１」となるようにすれば２５％のマーク率の置換用ビット列を作ることができるが、２０％のマーク率となるような置換用ビット列を作ることができない。一方、置換用ビット列を５ビットとすれば、５ビットのうち１ビットが「１」となるようにすることにより、２０％のマーク率の置換用ビット列を作ることができる。つまり、ＰＰＭ制御では、置換用ビット列の長さは目標となるマーク率に応じて決まる。
【０００６】
また、ビット列に含める情報量を減らすことなく発光素子の輝度が高くなるようにする他の技術として、冗長ビット付加制御が挙げられる。この冗長ビット付加制御の例を、図１１を参照しながら説明する。
【０００７】
図１１に示す冗長ビット付加制御では、送信用ビット列Ｘ１を７ビットずつの所定長ビット列Ｘ４に区切り、各所定長ビット列Ｘ４に冗長ビット「０」を付加している。このようにして冗長ビット付加処理では、ビット列に含める情報量を減らすことなく発光素子の輝度が低くなるようにしている。
【特許文献１】特開２００４−７２３６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
以上のＰＰＭ制御や冗長ビット付加制御では、マーク率を制御することによって、ビット列の冗長度が大きくなってしまっていた。その反面、冗長度が大きくならないようにすると、マーク率制御によって発光素子の輝度の微細な調整（調光）を行うことはできなかった。
【０００９】
本発明は上記課題に鑑みてなされたもので、その目的の一つは、ビット列の冗長度の増大を抑制しつつ、マーク率制御によって発光素子の輝度の微細な調整を行うことを可能にする光送信装置、及び可視光通信システムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するための本発明に係る光送信装置は、入力された送信用ビット列に基づいて照射する可視光の輝度を変動させることにより該送信用ビット列を光信号として送信する発光素子を備えた光送信装置において、互いに異なるマーク率の演算用ビット列を複数記憶する演算用ビット列記憶手段と、前記送信用ビット列に対し、前記演算用ビット列記憶手段に記憶される演算用ビット列のうちから選択される演算用ビット列を用いて可逆なビット演算を施すことにより、該送信用ビット列のマーク率を変更した調光用ビット列を生成する調光用ビット列生成手段と、前記調光用ビット列生成手段により生成された前記調光用ビット列を前記発光素子に出力するビット列出力手段と、を含むことを特徴とする。
【００１１】
ビット演算によりビット列の長さは変化しないので、本発明によれば、マーク率制御によりビット列の冗長度は抑制される。さらに、適切な演算用ビット列を選択することにより、発光素子の輝度の微細な調整を行うことが可能になる。
【００１２】
なお、上記光送信装置において、前記演算用ビット列記憶手段には、ｃ＝（ａ−ｂ）／（２ａ−１）（ただし、ａは前記送信用ビット列のマーク率、ｂは前記調光用ビット列のマーク率）に従って算出されたマーク率ｃの前記演算用ビット列が記憶されている、こととしてもよい。
【００１３】
また、上記光送信装置において、前記調光用ビット列生成手段のビット演算によりマーク率が変化しないような前記送信用ビット列に対し、予め前記送信用ビット列のマーク率を増減させるマーク率増減手段、をさらに含むこととしてもよい。
【００１４】
本発明によれば、前記ビット演算が排他的論理和演算である場合のように、前記ビット演算によるマーク率の変更量に限界があったとしても、より確実に所望のマーク率のビット列となるよう、送信用ビット列に対し前記ビット演算を施すことができる。
【００１５】
また、上記光送信装置において、前記調光用ビット列生成手段は、ビット演算として排他的論理和演算を施すこととしてもよい。
【００１６】
排他的論理和演算には、あるビット列に対して同じビット列を２度排他的論理和演算すると、元のビット列に戻るという可逆演算としての性質がある。また、排他的論理和演算にはマーク率制御演算としての性質もある。マーク率制御演算とは、第１ビット列のビットごとに第２ビット列に含まれる各ビットによる排他的論理和演算を行うと、第１ビット列と第２ビット列のマーク率に応じたマーク率のビット列が得られるというマーク率制御演算である。さらに、ここで得られるビット列のビット長は、第１ビット列と同じビット長となる。このため、ビットごとの排他的論理和演算を前記ビット演算として使用することができる。
【００１７】
また、上記光送信装置において、周囲光を受光する受光素子、をさらに備え、前記受光素子からの出力に応じて、前記周囲光の変動を打ち消すようなマーク率を有する前記演算用ビット列を、前記演算用ビット列記憶手段から選択する演算用ビット列選択手段と、をさらに含むことを特徴とする。
【００１８】
また、本発明に係る可視光通信システムは、上記光送信装置と、該光送信装置から照射された可視光を受光する受光素子を備え、該可視光に基づき前記光信号を受信する受信手段を含む光受信装置と、を含んでなり、前記光受信装置は、当該光受信装置が備える前記受光素子から入力されたビット列に対し、前記光送信装置で選択された前記演算用ビット列と同じ演算用ビット列を用いて可逆なビット演算を施すことにより、前記光信号に応じた受信用ビット列を生成する受信用ビット列生成手段、をさらに含み、前記受信手段は、前記生成された受信用ビット列を取得することにより、前記光信号を受信する、ことを特徴とする。
【発明を実施するための最良の形態】
【００１９】
本発明の実施の形態について、図面を参照しながら説明する。
【００２０】
図１は、本実施の形態に係る可視光通信システム１のシステム構成図である。同図に示すように、本実施の形態に係る可視光通信システム１は、少なくとも１つの光送信装置１０と少なくとも１つの光受信装置２０とを含み、光送信装置１０が光受信装置２０に対して通信信号を送信することにより、可視光を通信媒体とする片方向の可視光通信を行っている。
【００２１】
光送信装置１０は、データ処理部１２と、変調部１４と、発光部１６と、受光部１８と、を含んで構成される可視光通信装置である。発光部１６は発光素子を含んで構成される。なお、この発光部１６には、通常多数の発光素子が配設されている。そして光送信装置１０は、発光部１６に含まれる発光素子の発光を利用して、光受信装置２０との間で通信を行う。
【００２２】
データ処理部１２は、変調部１４に対して、光受信装置２０に対して可視光通信により送信すべき通信信号としての送信用データを出力する。変調部１４は、データ処理部１２から入力された通信信号に基づいて発光部１６から送信すべき信号であるビット列を取得する。そして取得したビット列を発光部１６に対して出力する。
【００２３】
発光部１６は、変調部１４から入力されたビット列に応じて各発光素子の輝度の変更を行う。なお、以下では発光部１６は、変調部１４から入力されたビット列に応じて発光素子の明滅を行うことにより輝度の変更を行うものとして説明する。なお、ここでの輝度の変更には、例えば発光素子の明滅だけでなく、輝度の強弱や、光を遮蔽したりしなかったりすることによる照度の変更も含まれる。
【００２４】
なお、発光素子には、ＬＥＤ(Light Emitting Diode,発光ダイオード)、薄膜トランジスタなど、発光することのできる発光素子を使用することができる。そして、発光素子は通信用として使用されるとともに、照明用や表示用としても使用される。換言すれば、可視光通信システム１は、照明用や表示用として使用される発光素子を、通信用としても使用できるようにしている。
【００２５】
受光部１８は、光センサなどの受光素子を含み、光送信装置１０の環境光（周囲光）としての照明光（例えば蛍光灯光）の照度を取得する。そして、取得した照度を照度データとしてデータ処理部１２に出力する。
【００２６】
光受信装置２０は、データ処理部２２と、復調部２４と、受光部２６と、を含んで構成される可視光通信装置である。受光部２６は光センサなどの受光素子を含んで構成される。なお、この受光部２６にも、通常多数の受光素子が配設されている。
【００２７】
受光部２６は、受光素子において、発光部１６における発光素子の輝度の変動を取得してビット列に変換し復調部２４に出力する。復調部２４は、後述する所定の処理によって、入力されたビット列に基づいて通信信号を取得し、データ処理部２２に出力する。データ処理部２２は、入力された通信信号に応じた所定の処理を行う。
【００２８】
マーク率について説明する。マーク率とは、ビット列中において「１」が含まれる割合で表される値である。発光部１６に含まれる発光素子は、変調部１４から入力された、複数の「０」又は「１」のいずれかのビットから構成されるビット列を取得する。そして、ビット列に含まれるビットを順次取得し、取得されるビットに応じて、順次該発光素子の明滅を行う。このため、マーク率は発光部１６における発光素子の明滅の割合に影響する。すなわち、マーク率の高低に応じて、発光部１６における発光素子の明出力率（出力が「明」である割合）の割合が変化する。
【００２９】
発光部１６における発光素子の明滅の具体的な例を図２に示す。同図は、発光素子の出力と時間との関係を示す図である。また、「０」と「１」の数字は、順次取得されるビットである。同図に示すように光送信装置１０は、「１」のビットが取得された場合には、発光素子の出力を「明」の状態（点灯状態）に、「０」のビットが取得された場合には、発光素子の出力を「滅」の状態（消灯状態）にしている。
【００３０】
次に、マーク率が発光素子の輝度に与える影響について説明する。
【００３１】
図３は、発光素子の出力の移動平均の時間変化を示したものである。発光素子の出力の移動平均は、「明」、「滅」をそれぞれ「１」、「０」として順次算出される。すなわち、発光素子の出力の移動平均は、所定時間内の明出力率を示す数値である。同図に示すように光送信装置１０の発光素子の出力の移動平均は時間によって変化する。具体的には、所定時間内の発光素子の明出力率が高いほど大きくなる。
【００３２】
発光素子の輝度は、当該発光素子の出力の移動平均によって表される。すなわち、輝度は所定時間内の明出力率に応じて変化する。さらには、発光素子の輝度は、該発光素子において送信されるビット列の所定時間内のマーク率に応じて変化する。このため、送信されるビット列のマーク率が大きいほど輝度が大きくなる（明るくなる）。逆に、送信ビット列のマーク率が小さいほど輝度が小さくなる（暗くなる）。このように、発光素子において送信されるビット列のマーク率は、該発光素子の発する光の輝度に影響を与える。
【００３３】
本実施の形態に係る可視光通信システム１では、送信用ビット列をそのまま発光部１６に出力するのではなく、送信用ビット列のマーク率を任意のマーク率に変換してなる調光用ビット列を発光部１６に出力するようにすることにより、発光部１６における発光素子の発光により、受光部１８において受光される環境光のゆらぎを打ち消すことができるようにしている。
【００３４】
以下、本実施の形態における光送信装置１０及び光受信装置２０の構成及び機能について、より詳細に説明する。
【００３５】
図４は、本実施の形態における光送信装置１０の機能ブロックを示す機能ブロック図である。同図に示すように、光送信装置１０は、データ処理部１２においてＣＰＵ１２０、記憶部１２２、送信データ取得部１２４、を含み、さらにＣＰＵ１２０において自己データマーク率取得部１２６及び出力値計算部１２８を含んでいる。また。光送信装置１０は、変調部１４においてフレーム化部１４０、送信データ列取得部１４２、マーク率制御部１４４、ＥＸＯＲ器１４６、スクランブルデータ列記憶部１４８、同期ヘッダスクランブル情報付加部１５０、を含み、発光部１６において発光素子１６０を含み、受光部１８において受光素子１８０を含んで構成されている。
【００３６】
まず、データ処理部１２に含まれる各部の機能について説明する。
【００３７】
ＣＰＵ１２０は、記憶部１２２に記憶されるプログラムを実行するための処理ユニットであり、光送信装置１０の各部を制御するとともに、送信用データの処理も行う。記憶部１２２は、本実施の形態を実施するためのプログラムを記憶している。また、ＣＰＵ１２０のワークメモリとしても動作する。
【００３８】
送信データ取得部１２４は、図示しない通信ネットワークから送信データである送信用データ（ユーザデータ）を取得する。そして、ＣＰＵ１２０の制御に従い、該送信用データを変調部１４に出力する。
【００３９】
自己データマーク率取得部１２６は、マーク率制御部１４４において後述するようにマーク率が変更された後の、送信用ビット列のマーク率を取得する。そして、出力値計算部１２８に出力する。
【００４０】
出力値計算部１２８は、受光素子１８０において受光された環境光である蛍光灯光の照度を取得する。そして、送信用ビット列のマーク率と、環境光の照度と、に基づいて、送信データのマーク率の目標値である目標マーク率を決定する。そして出力値計算部１２８は、送信用ビット列のマーク率と、目標マーク率と、に基づいて後述するスクランブルデータ列のマーク率を決定する。スクランブルデータ列は、目標マーク率と送信用ビット列のマーク率とに応じたマーク率となる。そして、目標マーク率をマーク率制御部１４４に出力するとともに、スクランブルデータ列のマーク率をスクランブルデータ列記憶部１４８に対して出力する。
【００４１】
なお、出力値計算部１２８が蛍光灯光の照度を取得するのは、該蛍光灯光の照度のゆらぎ（蛍光灯の場合には、このような照度のゆらぎはフリッカノイズと称される）を後述する処理により打ち消すためである。このために出力値計算部１２８は、このフリッカノイズが十分に識別できる程度の速さで目標マーク率決定処理を行う。また、受光素子１８０も同様に、フリッカノイズが十分に識別できる程度の速さで蛍光灯光の照度を取得して出力値計算部１２８に対して出力する。
【００４２】
ここで、スクランブルデータ列のマーク率を決定するためのスクランブルデータ列マーク率決定処理について詳細に説明する。ここでは、後述するように、送信用ビット列に対してスクランブルデータ列による排他的論理和演算を行うものとして説明する。送信用ビット列のマーク率をＡ、目標マーク率（調光用ビット列のマーク率）をＢ、スクランブルデータ列のマーク率（演算用ビット列のマーク率）をＣとすると、これらの関係は以下の式（１）で示される。
Ｂ＝｛（１−Ａ）Ｃ｝＋｛Ａ（１−Ｃ）｝  ・・・（１）
【００４３】
式（１）は、送信用ビット列のビットが０かつスクランブルデータ列のビットが１である場合、及び送信用ビット列のビットが１かつスクランブルデータ列のビットが０である場合、排他的論理和演算によって得られるビットは１になる、ことを示している。この式（１）を変形すると、次の式（２）のようになる。
Ｃ＝（Ａ−Ｂ）／（２Ａ−１）  ・・・（２）
【００４４】
このようにして出力値計算部１２８は、スクランブルデータ列のマーク率Ｃを決定することができる。なお、ここで決定されるマーク率Ｃ又は近似的にマーク率Ｃのスクランブルデータ列は、予めスクランブルデータ列記憶部１４８に記憶される。
【００４５】
次に、変調部１４に含まれる各部の機能について説明する。
【００４６】
フレーム化部１４０は、送信データ取得部１２４から順次入力される送信データをフレーム化し、送信データ列取得部１４２に順次出力する。具体的には、送信データを所定長ごとに区切り、さらに必要なヘッダを付加して、順次１つのフレームとする。そして取得したフレームを、送信データ列取得部１４２に順次出力する。
【００４７】
送信データ列取得部１４２は、フレーム化部１４０においてフレーム化された送信データを、「０」又は「１」のビットからなるビット列として順次取得する。そして取得したビット列をマーク率制御部１４４に順次出力する。
【００４８】
マーク率制御部１４４は、送信データ列取得部１４２から入力される所定長のビット列に対して、所定のマーク率変更処理を行う。この処理は、例えば上述のＰＰＭ（パルス位置変調）制御や冗長ビット付加制御などにより行うことができる。例えばＰＰＭ制御では、所定長の送信用ビット列を、所定マーク率の置換用ビット列と置換することにより、送信用ビット列のマーク率を増減する。この置換用ビット列は所定長の送信用ビット列より長くなる。このため、ＰＰＭ制御では、ビット列は、入力された長さよりも長い所定長ビット列として、ＥＸＯＲ器１４６に対して出力される。冗長ビット付加制御でも同様に、入力された長さよりも長い所定長ビット列として、ＥＸＯＲ器１４６に対して出力される。以下では、マーク率制御部１４４はビット列に冗長ビット付加制御を行うことにより、マーク率変更処理を行うものとして説明する。
【００４９】
なお、マーク率制御部１４４は、出力値計算部１２８から入力される目標マーク率に応じたマーク率となるよう、送信用ビット列のマーク率を変更する。すなわち、後述するように排他的論理和演算によるマーク率の変更量には限界がある。このため、目標マーク率に応じたマーク率となるよう、送信用ビット列のマーク率を変更することにより、より確実に目標マーク率の調光用ビット列が得られるようにしている。
【００５０】
スクランブルデータ列記憶部１４８は、スクランブルデータ列を記憶している。スクランブルデータ列とは、所定マーク率の演算用ビット列である。そしてスクランブルデータ列記憶部１４８は、記憶しているスクランブルデータ列から、出力値計算部１２８により入力されたマーク率に対応するスクランブルデータ列を選択し、ＥＸＯＲ器１４６に対して出力する。
【００５１】
スクランブルデータ列記憶部１４８に記憶されるスクランブルデータ列テーブルの例を図５に示す。同図に示すスクランブルデータ列テーブルでは、互いに異なるマーク率の複数のスクランブルデータ列を記憶している。なお、同テーブルではスクランブルデータ列の長さを８０ビットとしているが、この長さはマーク率制御部１４４においてマーク率の変更がなされた後のビット列の長さであることが望ましい。
【００５２】
ＥＸＯＲ器１４６は、マーク率制御部１４４から出力された送信用ビット列に対して、スクランブルデータ列記憶部１４８から出力されたスクランブルデータ列による排他的論理和演算を行う。そして、排他的論理和演算の結果出力される調光用ビット列を、同期ヘッダスクランブル情報付加部１５０に対して出力する。
【００５３】
ＥＸＯＲ器１４６におけるこの処理について、図６を参照しながら説明する。図６は、ＥＸＯＲ器１４６における排他的論理和演算の模式図である。同図に示すように、入力されるスクランブルデータ列と、入力される送信用ビット列と、が１ビットずつ排他的論理和演算される。そして、この演算の結果として、送信用ビット列と同じ長さの調光用ビット列が出力される。このとき出力される調光用ビット列のマーク率は、略目標マーク率となっている。なお、排他的論理和演算では、出力される調光用ビット列のマーク率は、必ずしも目標マーク率ちょうどとはならないが、概ね目標マーク率となる。すなわち、排他的論理和演算によるマーク率の変更は確率的なものであるので、必ずしも目標マーク率ちょうどとはならない一方で、ほぼ確実に目標マーク率となる。
【００５４】
また、排他的論理和演算によるマーク率の変更量には限界がある。すなわち、排他的論理和演算によって得られる調光用ビット列のマーク率は、概ね以下の式（３）を満たす。
【００５５】
｜５０％−入力された送信用ビット列のマーク率｜≧｜５０％−排他的論理和演算によって得られる調光用ビット列のマーク率｜  ・・・（３）
【００５６】
このため、排他的論理和演算によって得られる調光用ビット列のマーク率は、概ね、５０％−｜５０％−入力された送信用ビット列のマーク率｜以上、５０％＋｜５０％−入力された送信用ビット列のマーク率｜以下の値となる。
【００５７】
本実施の形態では、マーク率制御部１４４において、目標マーク率に応じたマーク率となるよう、送信用ビット列のマーク率を変更している。このため、目標マーク率が上記限界範囲に含まれるよう、送信用ビット列のマーク率を変更し、排他的論理和演算により任意の目標マーク率を得ることができるようにしている。
【００５８】
なお、排他的論理和演算に代えて、他の演算を使用することとしてもよい。すなわち、第１ビット列に対し第２ビット列による該演算を施すことにより、第１ビット列と第２ビット列のマーク率に応じたマーク率のビット列であって、第１ビット列と同じビット長のビット列が得られる演算であり、さらに可逆であることを特徴とする演算であれば、どのような演算でも使用することができる。例えば、ＤＳ−ＣＤＭＡ(Direct Sequence-Code Division Multiple Access,直接拡散式符号分割多重)における、送信用ビット列とＰＮ系列の乗算のようなビット列の乗算も、以上の性質を満たすので、本実施の形態における演算として使用することができる。そして、演算によっては上記限界範囲がなく、それゆえに任意のマーク率を得るためにマーク率制御部１４４を設ける必要がない場合もある。
【００５９】
ここで、ＤＳ−ＣＤＭＡにおける送信用ビット列とＰＮ系列の乗算について、具体的に説明する。ＤＳ−ＣＤＭＡにおいては、乗算の前に送信用ビット列及びＰＮ系列に含まれるビット「１」を「−１」に、ビット「０」を「１」にしておく。このようにして、「−１」と「−１」を乗算すると「１」に、「−１」と「１」を乗算すると「−１」に、「１」と「１」を乗算すると「１」になる。この乗算の結果は、「１」と「１」を排他的論理和演算すると「０」に、「１」と「０」を排他的論理和演算すると「１」に、「０」と「０」を排他的論理和演算すると「０」になるのと、同等の結果である。このように、「０」と「１」の組み合わせを「１」と「−１」の組み合わせに代えておくことにより、排他的論理和演算と同等の演算を乗算によって実現することができる。
【００６０】
また、上述したように、出力値計算部１２８は、送信用ビット列のマーク率と、環境光の照度と、に基づいて、送信データのマーク率の目標値である目標マーク率を決定している。また、上述したように、発光素子の輝度は、該発光素子において送信されるビット列のマーク率に応じて変化する。そして出力値計算部１２８は、発光素子の輝度が環境光のフリッカノイズを打ち消すことができるような輝度となるように、目標マーク率を決定している。このため、発光素子１６０の発光によって、フリッカノイズを打ち消すことができる。
【００６１】
この具体的な例を、図７を参照しながら説明する。同図（ａ）は、蛍光灯出力と、発光素子出力と、による照度の時間変化をそれぞれ示したグラフである。同図（ａ）に示されるように、蛍光灯出力は５０Ｈｚ又は６０Ｈｚの周波数で変動している（フリッカノイズ）。そして本実施の形態では、これを打ち消すように、発光素子出力も変動させている。つまり、目標マーク率をフリッカノイズに応じて変動させることにより、発光素子出力も変動している。この２つの光が重畳されると、同図（ｂ）に示すように、フリッカノイズが打ち消され、ほぼ平坦な光出力となる。このようにして、本実施の形態では、環境光のフリッカノイズを相殺している。
【００６２】
次に、同期ヘッダスクランブル情報付加部１５０における処理について説明する。まず同期ヘッダスクランブル情報付加部１５０は、ＥＸＯＲ器１４６において使用されたスクランブルデータ列を示すスクランブル情報（演算用ビット列情報）を取得する。また、同期ヘッダスクランブル情報付加部１５０は、マーク率制御部１４４において付加した冗長ビットを示すビット付加情報を取得する。さらに、光受信装置２０において同期をとるための同期ヘッダを取得する。そして、これらのデータを、ＥＸＯＲ器１４６から出力された調光用ビット列とともに、１つの送信用データとしてまとめ、該送信用データであるビット列を発光部１６に対して出力する。
【００６３】
図８は、送信用データの例を示す図である。同図に示すように、送信用データは同期ヘッダと、スクランブル情報／ビット付加情報と、ＥＸＯＲ器１４６から出力されたビット列である通信ペイロードと、を含むビット列である。同期ヘッダスクランブル情報付加部１５０は、ＥＸＯＲ器１４６から順次出力される調光用ビット列について、順次この送信用データを生成し、発光部１６に対して出力する。
【００６４】
そして発光部１６は、入力されたビット列に応じて、発光素子１６０の明滅を行うことにより、送信用データの送信を行う。
【００６５】
次に、光受信装置２０の構成及び機能について説明する。図９は、本実施の形態における光受信装置２０の機能ブロックを示す機能ブロック図である。同図に示すように、光受信装置２０は、データ処理部２２においてＣＰＵ２２０、記憶部２２２、データ取得部２２４、を含み、復調部２４において同期回路２４０、スクランブルデータ列特定部２４２、ビット付加情報特定部２４４、スクランブルデータ列記憶部２４６、付加ビット除去部２５０、を含み、受光部２６において、光フィルタ２６０、受光素子２６２、等化回路２６４、を含んで構成されている。
【００６６】
まず、データ処理部２２に含まれる各部の機能について説明する。
【００６７】
ＣＰＵ２２０は、記憶部２２２に記憶されるプログラムを実行するための処理ユニットであり、光受信装置２０の各部を制御するとともに、送信用データの処理も行う。記憶部２２２は、本実施の形態を実施するためのプログラムを記憶している。また、ＣＰＵ２２０のワークメモリとしても動作する。
【００６８】
データ取得部２２４は、復調部２４から受信データである送信用データを取得する。そして、ＣＰＵ２２４の制御に従い、所定の通信処理を行う。
【００６９】
次に、受光部２６に含まれる各部の機能について説明する。
【００７０】
まず、光フィルタ２６０は、特定の波長の光のみを通過させるフィルタである。この可視光通信システム１で使用される波長の可視光を通過させるように設定される。波長は可変であってもよい。このようにして特定の波長のみを通過させることにより、受光素子２６２において、特定の色の光のみを受光できるようにしている。
【００７１】
受光素子２６２は、例えば光センサであり、発光素子１６０の明滅の速さ以上の時間分解能で、対応して設けられる光フィルタ２６０を通過する光を受光している。そして、受光した光を電気信号に変えて対応する等化回路２６４に出力する。
【００７２】
等化回路２６４は、受光素子２６２から出力された電気信号の周波数を、復調部２４で取り扱うための周波数に変換する。そして、変換された電気信号を同期回路２４０に対して出力する。
【００７３】
同期回路２４０は、送信用データに含まれる同期ヘッダに基づくタイミングで、送信用データの受信を開始する。そして、受信した送信用データのうち通信ペイロードに含まれるビット列を、ＥＸＯＲ器２４８に出力する。
【００７４】
スクランブルデータ列特定部２４２は、同期回路２４０で受信される送信用データからスクランブル情報を読み出してスクランブルデータ列記憶部２４６に出力する。
【００７５】
スクランブルデータ列記憶部２４６は、少なくともスクランブルデータ列記憶部１４８に記憶されるスクランブルデータ列を記憶している。そしてスクランブルデータ列記憶部２４６は、記憶しているスクランブルデータ列から、スクランブルデータ列特定部２４２により入力されたスクランブル情報により示されるスクランブルデータ列を選択し、ＥＸＯＲ器２４８に対して出力する。
【００７６】
ビット付加情報特定部２４４は、同期回路２４０で受信される送信用データからビット付加情報を読み出して付加ビット除去部２５０に出力する。
【００７７】
ＥＸＯＲ器２４８は、ＥＸＯＲ器１４６で行った排他的論理和演算の逆演算を行う。排他的論理和演算の場合には、逆演算は、ビット列に対して最初の排他的論理和演算で演算した演算用ビット列を、再度演算する処理である。ここでは、同期回路２４０から出力されたビット列に対して、スクランブルデータ列記憶部２４６から入力されたスクランブルデータ列による上記排他的論理和演算を行う。
【００７８】
このようにして、ＥＸＯＲ器２４８において排他的論理和演算を行うと、その結果である出力は光送信装置１０のマーク率制御部１４４の出力ビット列と同じビット列となる。この出力ビット列は、マーク率制御部１４４が、送信用ビット列に対して冗長ビットを付加したものである。そこで、付加ビット除去部２５０は、このＥＸＯＲ器２４８から出力されるビット列の入力を受ける。そして、ビット付加情報特定部２４４から入力されているビット付加情報に基づいて、ＥＸＯＲ器２４８から出力されるビット列から、付加された冗長ビットを除去する。このようにして、付加ビット除去部２５０の出力は、元の送信用データとなる。そして、この送信用データをデータ取得部２２４に対して出力する。
【００７９】
以上説明したように、本発明によれば、ビット列の冗長度の増大を抑制しつつ、マーク率制御によって発光素子の輝度の微細な調整を行うことが可能になる。また、送信用ビット列を任意のマーク率とするために取り扱うべき演算用ビット列は、そのマーク率のみによって区別されるようにすることができる。このため、送信用ビット列のビット配置ごとの演算用ビット列を取り扱うことなく、演算により、送信用ビット列が任意のマーク率となるよう演算することができる。また、この演算には排他的論理和演算を使用することができる。
【００８０】
さらに、送信用ビット列の所定長ごとに演算を行うことができるので、所定長ごとにマーク率を制御することができ、演算後のマーク率の局所的変動を抑制することができる。
【００８１】
また、送信用ビット列のマーク率を目標マーク率に応じた値としているので、演算によるマーク率の変更量に限界があったとしても、より確実に目標マーク率のビット列となるよう、送信用ビット列に対し演算を施すことができる。また、光受信装置では演算用ビット列情報によって演算用ビット列を取得することができるようになる。また、光送信装置及び光受信装置は、送信用ビット列又は受信されるビット列に対して、予め記憶しておいた演算用ビット列の中から選択した演算用ビット列に演算又は逆演算を施すことができる。
【００８２】
さらに、光センサにより感知される光量に応じて、発光素子の輝度の微細な調整を行うことができるので、光センサにより感知される光量に応じて、照明光としての発光素子の輝度を変えることができる。このため、照明光の変動を相殺することができる。
【００８３】
さらに、発光素子の輝度を任意に変更して保持することができるので、照明光としての発光素子の出力を、通信を継続しつつ、照明を使う人が強めたり弱めたりすることができるようになる。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施の形態に係る可視光通信システムのシステム構成図である。
【図２】本発明の実施の形態に係る発光素子の出力と時間との関係を示す図である。
【図３】本発明の実施の形態に係る発光素子の出力の移動平均の時間変化を示す図である。
【図４】本発明の実施の形態に係る光送信装置の機能ブロック図である。
【図５】本発明の実施の形態に係るスクランブルデータ列テーブルを示す図である。
【図６】本発明の実施の形態に係る排他的論理和演算の説明図である。
【図７】（ａ）本発明の実施の形態に係る蛍光灯出力と発光素子出力とによる照度の時間変化をそれぞれ示す図である。（ｂ）本発明の実施の形態に係る蛍光灯出力と発光素子出力を重畳した光による照度の時間変化を示す図である。
【図８】本発明の実施の形態に係る送信用データを示す図である。
【図９】本発明の実施の形態に係る受信装置の機能ブロック図である。
【図１０】本発明の背景技術に係るＰＰＭ制御の説明図である。
【図１１】本発明の背景技術に係る冗長ビット付加制御の説明図である。
【符号の説明】
【００８５】
１  可視光通信システム、１０  光送信装置、１２，２２  データ処理部、１４  変調部、１６  発光部、１８  受光部、２０  光受信装置、２４  復調部、２６  受光部、１２０，２２０  ＣＰＵ、１２２，２２２  記憶部、１２４  送信データ取得部、１２６  自己データマーク率取得部、１２８  出力値計算部、１４０  フレーム化部、１４２  送信データ列取得部、１４４  マーク率制御部、１４６，２４８  ＥＸＯＲ器、１４８，２４６  スクランブルデータ列記憶部、１５０  同期ヘッダスクランブル情報付加部、１６０  発光素子、１８０，２６２  受光素子、２２４  データ取得部、２４０  同期回路、２４２  スクランブルデータ列特定部、２４４  ビット付加情報特定部、２５０  付加ビット除去部、２６０  光フィルタ、２６４  等化回路。
【図１】
2006270422.tif 000003
【図２】
2006270422.tif 000004
【図３】
2006270422.tif 000005
【図４】
2006270422.tif 000006
【図５】
2006270422.tif 000007
【図６】
2006270422.tif 000008
【図７】
2006270422.tif 000009
【図８】
2006270422.tif 000010
【図９】
2006270422.tif 000011
【図１０】
2006270422.tif 000012
【図１１】
2006270422.tif 000013