赤外線リモコン信号を受信する手段と、前記赤外線リモコン信号のリーダ部分を検知した際、前記赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行う手段と、単位時間内の信号を第一区間と第二区間とに均等に2分割し、前記第一区間が第一レベルであり前記第二区間が第二レベルである信号の波形を第一の理想波形として規定する手段と、前記第一区間及び前記第二区間が共に第二レベルである信号の波形を第二の理想波形として規定する手段と、前記単位時間毎に、サンプリングが行われた信号の波形が、前記第一の理想波形と前記第二の理想波形とのいずれと類似しているか確認する手段と、当該信号の波形が前記第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定する手段と、当該信号の波形が前記第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前記前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定する手段とを具備する赤外線データ通信装置。請求項1に記載の赤外線データ通信装置であって、信号の波形が前記第一の理想波形と類似している場合の類似度を類似度の上限値として規定する手段と、信号の波形が前記第二の理想波形と類似している場合の類似度を類似度の下限値として規定する手段と、前記類似度の上限値と前記類似度の下限値との中間値を類似度の初期値として規定する手段と、所定の値を類似度の変動値として規定する手段と、前記単位時間内に、信号に対してサンプリングを行う毎に、当該サンプリング位置が前記第一区間か前記第二区間か、当該サンプリング位置での信号のレベルが第一レベルであるか第二レベルであるかを確認する手段と、当該サンプリング位置が前記第一区間であり、当該サンプリング位置での信号のレベルが第一レベルである場合、前記類似度に前記変動値を加算する手段と、当該サンプリング位置が前記第一区間であり、当該サンプリング位置での信号のレベルが第二レベルである場合、前記類似度から前記変動値を減算する手段と、当該サンプリング位置が前記第二区間であり、当該サンプリング位置での信号のレベルが第一レベルである場合、前記類似度が前記中間値以上であるか確認する手段と、前記類似度が前記中間値以上である場合、前記類似度に前記変動値を減算する手段と、前記類似度が前記中間値より小さい場合、前記類似度に前記変動値を加算する手段と、当該サンプリング位置が前記第二区間であり、当該サンプリング位置での信号のレベルが第二レベルである場合、前記類似度を維持する手段と、前記単位時間が経過する毎に、前記類似度が前記類似度の上限値と前記類似度の下限値とのいずれに近いか判断する手段と、前記類似度が前記類似度の上限値に近い場合、当該信号の波形が前記第一の理想波形と類似していると判定する手段と、前記類似度が前記類似度の下限値に近い場合、当該信号の波形が前記第二の理想波形と類似していると判定する手段とを更に具備する赤外線データ通信装置。請求項2に記載の赤外線データ通信装置であって、前記赤外線リモコン信号のデータ部分を前半部分と後半部分とに均等に2分割し、前記前半部分をコードとして、前記後半部分を反転コードとして抽出する手段と、前記反転コードをビット反転して再反転コードを生成する手段と、前記コードと前記再反転コードとが一致するか確認する手段と、前記コードと前記再反転コードとが一致する場合、前記赤外線リモコン信号のデータ部分のビットデータとして前記コードのビットデータを採用する手段と、前記コードと前記再反転コードとが一致する場合、受信エラーと判定し、前記赤外線リモコン信号を廃棄する手段とを更に具備する赤外線データ通信装置。請求項2に記載の赤外線データ通信装置であって、前記赤外線リモコン信号のデータ部分を前半部分と後半部分とに均等に2分割し、前記前半部分をコードとして、前記後半部分を反転コードとして抽出する手段と、前記反転コードをビット反転して再反転コードを生成する手段と、前記コードと前記再反転コードとが一致するか確認する手段と、前記コードと前記再反転コードとが一致する場合、前記赤外線リモコン信号のデータ部分のビットデータとして前記コードのビットデータを採用する手段と、前記コードと前記再反転コードとが一致しない場合、前記赤外線リモコン信号に対して、コードの信頼度に基づくデータ値の検証を行う手段と、前記コードの信号の波形の類似度から前記中間値を減算した値の絶対値を、前記コードの信頼度として規定する手段と、前記反転コードの信号の波形の類似度から前記中間値を減算した値の絶対値を、前記反転コードの信頼度として規定する手段と、前記コードの信頼度と前記反転コードの信頼度とを比較する手段と、前記コードの信頼度が前記反転コードの信頼度以上である場合、前記赤外線リモコン信号のデータ部分のビットデータとして前記コードのビットデータを採用する手段と、前記コードの信頼度が前記反転コードの信頼度より小さい場合、前記赤外線リモコン信号のデータ部分のビットデータとして前記再反転コードのビットデータを採用する手段とを更に具備する赤外線データ通信装置。赤外線データ通信が可能な電子機器により実施される赤外線データ通信方法であって、赤外線リモコン信号を受信することと、前記赤外線リモコン信号のリーダ部分を検知した際、前記赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行うことと、単位時間内の信号を第一区間と第二区間とに均等に2分割し、前記第一区間が第一レベルであり前記第二区間が第二レベルである信号の波形を第一の理想波形として規定することと、前記第一区間及び前記第二区間が共に第二レベルである信号の波形を第二の理想波形として規定することと、前記単位時間毎に、サンプリングが行われた信号の波形が、前記第一の理想波形と前記第二の理想波形とのいずれと類似しているか確認することと、当該信号の波形が前記第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定することと、当該信号の波形が前記第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前記前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定することとを含む赤外線データ通信方法。赤外線リモコン信号を受信するステップと、前記赤外線リモコン信号のリーダ部分を検知した際、前記赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行うステップと、単位時間内の信号を第一区間と第二区間とに均等に2分割し、前記第一区間が第一レベルであり前記第二区間が第二レベルである信号の波形を第一の理想波形として規定するステップと、前記第一区間及び前記第二区間が共に第二レベルである信号の波形を第二の理想波形として規定するステップと、前記単位時間毎に、サンプリングが行われた信号の波形が、前記第一の理想波形と前記第二の理想波形とのいずれと類似しているか確認するステップと、当該信号の波形が前記第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定するステップと、当該信号の波形が前記第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前記前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定するステップとを電子機器に実施させるためのプログラム。特許文献1特開平08-070490号公報は、ノイズの1回の発生時間はサンプリング間隔Tを超えないことを前提条件として、サンプリング部が1回のみの移行では本来のHighレベル若しくはLowレベルの移行ではなく、ノイズによる誤移行であると判断しているため、ノイズ除去の可否はサンプリング間隔に依存している。しかし、現実には同じ機器であっても蛍光灯の種類や部屋の広さに依存する反射の影響によってノイズの発生時間が異なるため、ノイズの1回の発生時間はサンプリング間隔を超えないことを保証できず、サンプリング間隔Tより大きい発生時間のノイズが頻発する環境下においては、従来技術ではノイズ除去できないという問題がある。本発明の目的は、受信信号の理想波形を設定し、実際に受信した信号の波形と理想波形との類似度を用いたノイズ除去手段を有する赤外線データ通信方法を提供することである。本発明に係る赤外線データ通信装置は、赤外線リモコン信号を受信する手段と、赤外線リモコン信号のリーダ部分を検知した際、赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行う手段と、単位時間内の信号を第一区間と第二区間とに均等に2分割し、第一区間が第一レベルであり第二区間が第二レベルである信号の波形を第一の理想波形として規定する手段と、第一区間及び第二区間が共に第二レベルである信号の波形を第二の理想波形として規定する手段と、単位時間毎に、サンプリングが行われた信号の波形が、第一の理想波形と第二の理想波形とのいずれと類似しているか確認する手段と、当該信号の波形が第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定する手段と、当該信号の波形が第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定する手段とを具備する。本発明に係る赤外線データ通信方法は、赤外線データ通信が可能な電子機器により実施される赤外線データ通信方法であって、赤外線リモコン信号を受信することと、赤外線リモコン信号のリーダ部分を検知した際、赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行うことと、単位時間内の信号を第一区間と第二区間とに均等に2分割し、第一区間が第一レベルであり第二区間が第二レベルである信号の波形を第一の理想波形として規定することと、第一区間及び第二区間が共に第二レベルである信号の波形を第二の理想波形として規定することと、単位時間毎に、サンプリングが行われた信号の波形が、第一の理想波形と第二の理想波形とのいずれと類似しているか確認することと、当該信号の波形が第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定することと、当該信号の波形が第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定することとを含む。本発明に係るプログラムは、上記の赤外線データ通信方法における処理を、電子機器に実行させるためのプログラムである。なお、本発明に係るプログラムは、記憶装置や記憶媒体に格納することが可能である。第一の理想波形及び第二の理想波形の組合せにより構成される赤外線リモコン信号について、ノイズを含む受信波形が第一の理想波形又は第二の理想波形のいずれに類似するかを判定し、受信波形を第一の理想波形又は第二の理想波形のいずれかに確定し、ノイズを除去することが可能になる。<第1実施形態>以下に、本発明の第1実施形態について添付図面を参照して説明する。[赤外線データ通信システムの構成]図3を参照して、本発明に係る赤外線データ通信システムの構成例について説明する。本発明に係る赤外線データ通信システムは、赤外線リモコン10と、赤外線データ通信装置20を含む。[赤外線リモコン]赤外線リモコン10は、赤外線リモコン信号を出力する送信機である。赤外線リモコンのデータ通信では、赤外線がパルス状の波形断続的にON/OFFを繰り返すような波形で送受信される。赤外線リモコン10の例として、安価な家電用の赤外線リモコンや、赤外線LED赤外線発光ダイオードを有する端末等を想定している。[赤外線データ通信装置]赤外線データ通信装置20は、赤外線リモコン信号を入力する受信機である。赤外線データ通信装置20の例として、赤外線データ通信に対応した電子機器等を想定している。[赤外線データ通信装置の構成]赤外線データ通信装置20は、受信部21と、ノイズ除去部22と、コード解析部23を備える。[受信部]受信部21は、赤外線リモコン信号を受信する。受信部21の例として、赤外線受光モジュールや、赤外線データ通信に対応した通信用インターフェース等を想定している。[ノイズ除去部]ノイズ除去部22は、赤外線リモコン信号に含まれるノイズを除去し、赤外線リモコン信号を本来の波形に近づける。[ノイズ除去部の構成]ノイズ除去部22は、サンプリング処理部221と、信号区間規定部222と、波形検証部223を備える。[サンプリング処理部]サンプリング処理部221は、赤外線リモコン信号のリーダ部分を検知した際、赤外線リモコン信号のデータ部分に対して、一定間隔でのサンプリングを行う。また、サンプリング処理部221は、サンプリング処理に用いられる変数の設定情報を初期化する。[信号区間規定部]信号区間規定部222は、単位時間内の信号を第一区間と第二区間とに均等に2分割し、第一区間が第一レベルであり第二区間が第二レベルである信号の波形を第一の理想波形として規定し、第一区間及び第二区間が共に第二レベルである信号の波形を第二の理想波形として規定する。なお、第一レベルがHighレベルである場合、第二レベルはLowレベルである。反対に、第一レベルがLowレベルである場合、第二レベルはHighレベルである。ここでは、便宜上、Highレベルを第一レベルと規定し、Lowレベルを第二レベルと規定する。但し、実際には、これらの例に限定されない。[波形検証部]波形検証部223は、単位時間毎に、サンプリングが行われた信号の波形が、第一の理想波形と第二の理想波形とのいずれと類似しているか確認する。このとき、波形検証部223は、当該信号の波形が第一の理想波形と類似している場合、当該信号のビットデータを第一のデータ値と判定する。また、波形検証部223は、当該信号の波形が第二の理想波形と類似している場合、前回の信号のビットデータの判定を取り消し、前回の信号と今回の信号との組合せのビットデータを第二のデータ値と判定する。なお、第一のデータ値が0である場合、第二のデータ値は1である。反対に、第一のデータ値が1である場合、第二のデータ値は0である。ここでは、便宜上、第一のデータ値を0と規定し、第二のデータ値を1と規定する。但し、実際には、これらの例に限定されない。[波形検証部の構成]波形検証部223は、類似度規定部2231と、信号解析部2232と、類似度演算処理部2233と、類似波形判定部2234を備える。[類似度規定部]類似度規定部2231は、信号の波形が第一の理想波形と類似している場合の類似度を類似度の上限値として規定する。また、類似度規定部2231は、信号の波形が第二の理想波形と類似している場合の類似度を類似度の下限値として規定する。また、類似度規定部2231は、類似度の上限値と類似度の下限値との中間値を類似度の初期値として規定する。また、類似度規定部2231は、所定の値を類似度の変動値として規定する。ここでは、一例として、類似度の上限値と類似度の下限値との差分を単位時間内のサンプリング回数で除算した値を類似度の変動値として規定する。例えば、類似度の上限値を1.0とし、類似度の下限値を0.0とし、類似度の上限値と類似度の下限値との中間値及び類似度の初期値を0.5としても良い。また、単位時間内の受信信号の波形の最大サンプリング回数を10回とした場合、類似度の変動値は1.0-0.0÷10回=0.1となる。なお、1.0、0.0、0.5は一例に過ぎない。例えば、実際には、類似度の上限値を100、類似度の下限値を0、類似度の中間値及び初期値を50としても良い。[信号解析部]信号解析部2232は、単位時間内に、信号に対してサンプリングを行う毎に、当該サンプリング位置が第一区間か第二区間か、当該サンプリング位置での信号のレベルが第一レベルであるか第二レベルであるかを確認する。[類似度演算処理部]類似度演算処理部2233は、当該サンプリング位置が第一区間であり、当該サンプリング位置での信号のレベルが第一レベルである場合、類似度に変動値を加算する。また、類似度演算処理部2233は、当該サンプリング位置が第一区間であり、当該サンプリング位置での信号のレベルが第二レベルである場合、類似度から変動値を減算する。また、類似度演算処理部2233は、当該サンプリング位置が第二区間であり、当該サンプリング位置での信号のレベルが第一レベルである場合、類似度が中間値以上であるか確認する。すなわち、類似度の中間値及び初期値は、閾値となる。このとき、類似度演算処理部2233は、類似度が中間値以上である場合、類似度に変動値を減算する。また、類似度演算処理部2233は、類似度が中間値より小さい場合、類似度に変動値を加算する。また、類似度演算処理部2233は、当該サンプリング位置が第二区間であり、当該サンプリング位置での信号のレベルが第二レベルである場合、類似度を維持する。[類似波形判定部]類似波形判定部2234は、単位時間が経過する毎に、類似度が類似度の上限値と類似度の下限値とのいずれに近いか判断する。このとき、類似波形判定部2234は、類似度が類似度の上限値に近い場合、当該信号の波形が第一の理想波形と類似していると判定する。また、類似波形判定部2234は、類似度が類似度の下限値に近い場合、当該信号の波形が第二の理想波形と類似していると判定する。[コード解析部]コード解析部23は、ノイズを除去した後の赤外線リモコン信号に含まれるデータのコードを解析し、ビットデータの値として信頼性の高い値を採用する。[コード解析部の構成]コード解析部23は、コード抽出部231と、コード反転部232と、コード比較検証部233を備える。[コード抽出部]コード抽出部231は、赤外線リモコン信号のデータ部分を前半部分と後半部分とに均等に2分割し、前半部分をコードとして、後半部分を反転コードとして抽出する。なお、後半部分の反転コードは、前半部分のコードをビット反転したものである。[コード反転部]コード反転部232は、反転コードをビット反転して再反転コードを生成する。すなわち、再反転コードは、反転コードを再びビット反転して元のコードに戻したものである。[コード比較検証部]コード比較検証部233は、コードと再反転コードとが一致するか確認する。コード比較検証部233は、コードと再反転コードとが一致する場合、赤外線リモコン信号のデータ部分のビットデータとしてコードのビットデータを採用する。また、コード比較検証部233は、コードと再反転コードとが一致しない場合、受信エラーと判定して、当該赤外線リモコン信号を廃棄棄却する。或いは、赤外線リモコン信号に対して、コードの信頼度に基づくデータ値の検証を行う。コードの信頼度に基づくデータ値の検証を行う場合、コード比較検証部233は、コードの信号の波形の類似度から中間値を減算した値の絶対値を、コードの信頼度として規定する。また、コード比較検証部233は、反転コードの信号の波形の類似度から中間値を減算した値の絶対値を、反転コードの信頼度として規定する。その後、コード比較検証部233は、コードの信頼度と反転コードの信頼度とを比較する。このとき、コード比較検証部233は、コードの信頼度が反転コードの信頼度以上である場合、赤外線リモコン信号のデータ部分のビットデータとしてコードのビットデータを採用する。また、コード比較検証部233は、コードの信頼度が反転コードの信頼度より小さい場合、赤外線リモコン信号のデータ部分のビットデータとして再反転コードのビットデータを採用する。[ハードウェアの例示]以下に、ノイズ除去部22及びコード解析部23の各々を実現するための具体的なハードウェアの例について説明する。ノイズ除去部22及びコード解析部23の各々は、プログラムに基づいて駆動し所定の処理を実行するプロセッサと、当該プログラムや各種データを記憶するメモリによって実現される。上記のプロセッサの例として、CPUCentralProcessingUnit、ネットワークプロセッサNP:NetworkProcessor、マイクロプロセッサmicroprocessor、マイクロコントローラ、或いは、専用の機能を有する半導体集積回路LSI:LargeScaleIntegration等が考えられる。上記のメモリの例として、RAMRandomAccessMemory、ROMReadOnlyMemory、EEPROMElectricallyErasableandProgrammableReadOnlyMemoryやフラッシュメモリ等の半導体記憶装置、HDDHardDiskDriveやSSDSolidStateDrive等の補助記憶装置、又は、DVDDigitalVersatileDisk等のリムーバブルディスクや、SDメモリカードSecureDigitalmemorycard等の記憶媒体メディア等が考えられる。また、バッファbufferやレジスタregisterでも良い。或いは、DASDirectAttachedStorage、FC-SANFibreChannel-StorageAreaNetwork、NASNetworkAttachedStorage、IP-SANIP-StorageAreaNetwork等を用いたストレージ装置でも良い。なお、上記のプロセッサ及び上記のメモリは、一体化していても良い。例えば、近年では、マイコン等の1チップ化が進んでいる。したがって、電子機器等に搭載される1チップマイコンが、上記のプロセッサ及び上記のメモリを備えている事例も考えられる。また、ノイズ除去部22及びコード解析部23の各々の構成要素は、モジュールmodule、コンポーネントcomponent、或いは専用デバイス、又はこれらの起動呼出プログラムでも良い。但し、実際には、これらの例に限定されない。[赤外線リモコン信号の波形]図4を参照して、赤外線リモコン信号の波形について説明する。赤外線リモコン信号30は、リーダ部分31と、データ部分32を含む。[リーダ部分]リーダ部分31は、データの先頭を示す信号リーダ信号である。ここでは、リーダ部分31は、赤外線パルスのHighレベル第一レベルとLowレベル第二レベルの比率が2:1の信号波形であるものとする。但し、実際には、この例に限定されない。[データ部分]データ部分32は、16ビット分のデータを示す信号データ信号である。データ部分32の16ビット分の信号のうち、前半8ビットをコード321とし、後半8ビットを反転コード322とする。反転コード322は、コード321をビット反転したものである。なお、16ビット、8ビットは一例に過ぎない。このとき、赤外線データ通信装置20は、リーダ部分31を検出した際にサンプリングを開始することで、初回のサンプリング位置をデータ部分32の先頭と一致させることができる。また、赤外線データ通信装置20は、データ部分32の16ビット分の信号を全て検出した際にサンプリングを終了するようにしても良い。[ビットデータ0及び1の波形]赤外線データ通信では、1ビット分のデータ0は、赤外線パルスのHighレベル第一レベルとLowレベル第二レベルの比率が1:1の信号波形として規定されている。また、1ビット分のデータ1は、赤外線パルスのHighレベル第一レベルとLowレベル第二レベルの比率が1:3の信号波形として規定されている。よって、データ1の波形は、データ0の波形に対し、2倍の長さを持つことになる。[ビットデータ0の波形]ここでは、データ0の波形の長さを、単位時間内の受信信号の波形の長さとする。したがって、データ0の波形は、単位時間内の受信信号の波形である。ここでは、この信号波形を理想波形W1第一の理想波形と規定する。但し、実際には、この例に限定されない。[ビットデータ1の波形の構成]データ1の波形は、前半部分33と、後半部分34とに均等に2分割することができる。[ビットデータ1の波形の前半部分]データ1の波形の前半部分33は、単位時間内の受信信号の波形であり、データ0の波形と同じく、赤外線パルスのHighレベル第一レベルとLowレベル第二レベルの比率が1:1の信号波形となる。ここでは、この信号波形を理想波形W1第一の理想波形と規定する。但し、実際には、この例に限定されない。[ビットデータ1の波形の後半部分]また、データ1の波形の後半部分34は、単位時間内の受信信号の波形であり、Lowレベル第二レベルのみが継続する信号波形となる。ここでは、この信号波形を理想波形W2第二の理想波形と規定する。但し、実際には、この例に限定されない。[2種類の理想波形の詳細]図5を参照して、2種類の理想波形の詳細について説明する。なお、図5のaは、理想波形W1の波形図を示す。また、図5のbは、理想波形W2の波形図を示す。理想波形W1及び理想波形W2のそれぞれについて、単位時間内の受信信号の波形は、A区間第一区間と、B区間第二区間とに均等に2分割することができる。このとき、赤外線データ通信装置20は、リーダ部分31を検出した直後にサンプリングを開始することで、初回のサンプリング位置をデータ部分32の先頭と一致させることができる。単位時間内の受信信号の波形の最大サンプリング回数は、矢印で示すように、A区間第一区間で5回、B区間第二区間で5回の合計10回とする。なお、5回、10回は一例に過ぎない。[類似度の定義]ここでは、信号波形と理想波形との類似度を、以下のように定義する。[類似度の上限値]受信した信号の波形が理想波形W1と一致する場合を、類似度の上限値1.0と定義する。[類似度の下限値]受信した信号の波形が理想波形W2と一致する場合を、類似度の下限値0.0と定義する。[類似度の中間値]理想波形W1及び理想波形W2のいずれに類似しているか特定できない場合を、類似度の中間値0.5と定義する。例えば、類似度の上限値1.0に近いほど、受信した信号の波形が理想波形W1に近いことを示しているため、受信した赤外線リモコン信号の信頼性は高くなる。反対に、類似度の中間値0.5に近いほど、受信した信号の波形が理想波形W1から離れていることを示しているため、受信した赤外線リモコン信号の信頼性は低くなる。また、類似度の下限値0.0に近いほど、受信した信号の波形が理想波形W2に近いことを示しているため、受信した赤外線リモコン信号の信頼性は高くなる。反対に、類似度の中間値0.5に近いほど、受信した信号の波形が理想波形W2から離れていることを示しているため、受信した赤外線リモコン信号の信頼性は低くなる。また、類似度の下限値0.0から上限値1.0の間類似度0.0~1.0間は、受信した赤外線リモコン信号のサンプリングの頻度によって類似度を細分化することができる。ここでは、単位時間内の受信信号の波形の最大サンプリング回数を10回とするため、類似度の下限値0.0から上限値1.0の間類似度0.0~1.0間は、0.1刻みに細分化されるものとする。すなわち、類似度の変動値は、0.1となる。[類似度を計算する手順]図6A、図6Bを参照して、類似度を計算する手順の詳細について説明する。1ステップS101ノイズ除去部22は、類似度とサンプリング回数の値変数等の初期化を行う。ここでは、ノイズ除去部22は、類似度の初期値を0.5に設定し、サンプリング回数を初回1回目に設定する。また、単位時間内の受信信号の波形の最大サンプリング回数を10回に設定する。2ステップS102受信部21は、赤外線リモコン10からの赤外線リモコン信号30を受信する。ノイズ除去部22は、赤外線リモコン信号30のリーダ部分31を検知すると、赤外線リモコン信号30のデータ部分32に対して、一定間隔でのサンプリングを開始する。3ステップS103ノイズ除去部22は、現在のサンプリング位置がA区間第一区間内であるか確認する。サンプリングは一定間隔で行われるため、サンプリング位置は、サンプリング回数により決まる。ここでは、単位時間内の受信信号の波形の最大サンプリング回数を10回としているため、現在のサンプリング回数が初回1回目から5回目までの場合、サンプリング位置はA区間第一区間であると判定する。また、現在のサンプリング回数が6回目から10回目まではB区間第二区間である場合、サンプリング位置はA区間第一区間ではなくB区間第二区間であると判定する。4ステップS104ノイズ除去部22は、現在のサンプリング位置がA区間第一区間内である場合ステップS103でYes、当該サンプリング位置での信号レベルがHighレベル第一レベルであるかどうか確認する。5ステップS105ノイズ除去部22は、A区間第一区間内において、当該サンプリング位置での信号レベルがHighレベル第一レベルである場合ステップS104でYes、類似度に変動値0.1を加算する。このとき、類似度が上限値1.0より小さいか確認し、類似度が上限値1.0より小さければ、類似度が上限値を上回らない範囲で、類似度に変動値0.1を加算するようにすると、なお好適である。6ステップS106ノイズ除去部22は、A区間第一区間内において、当該サンプリング位置での信号レベルがHighレベル第一レベルではなく、Lowレベル第二レベルである場合ステップS104でNo、類似度から変動値0.1を減算する。このとき、類似度が下限値0.0より大きいか確認し、類似度が下限値0.0より大きければ、類似度が下限値を下回らない範囲で、類似度から変動値0.1を減算するようにすると、なお好適である。7ステップS107ノイズ除去部22は、現在のサンプリング位置がA区間第一区間内ではなくB区間第二区間内である場合ステップS103でNo、当該サンプリング位置での信号レベルがHighレベル第一レベルであるか確認する。8ステップS108ノイズ除去部22は、当該サンプリング位置での信号レベルがHighレベル第一レベルである場合ステップS107でYes、類似度が中間値0.5以上かどうか確認する。その理由は、B区間第二区間における類似度の変動方法は、その時点での類似度が中間値以上であるか否かにより変化するからである。そのため、ノイズ除去部22は、現在の類似度が中間値0.5以上かどうか確認する。9ステップS109ノイズ除去部22は、B区間第二区間内において、当該サンプリング位置での信号レベルがHighレベル第一レベルであり、類似度が中間値0.5以上である場合ステップS108でYes、類似度から変動値0.1を減算する。10ステップS110ノイズ除去部22は、B区間第二区間内において、当該サンプリング位置での信号レベルがHighレベル第一レベルであり、類似度が中間値0.5より小さい場合ステップS108でNo、類似度に変動値0.1を加算する。すなわち、B区間第二区間内にノイズが存在する場合は、類似度が中間値0.5に近づくことになる。11ステップS111ノイズ除去部22は、B区間第二区間内において、上記以外の場合、現在の類似度をそのまま維持する。12ステップS112ノイズ除去部22は、現在のサンプリング回数が最大サンプリング回数である10回に到達したか確認する。13ステップS113ノイズ除去部22は、現在のサンプリング回数が最大サンプリング回数である10回に到達していない場合ステップS112でNo、現在のサンプリング回数を1回分加算し、現在のサンプリング位置を1つ進める。14ステップS114ノイズ除去部22は、現在のサンプリング回数が最大サンプリング回数である10回に到達した場合ステップS112でYes、B区間第二区間内のサンプリングが終了したと判断し、当該単位時間内の受信信号の波形の最終的な類似度を確定する。15ステップS115ノイズ除去部22は、データ部分32の16ビット分の信号を全て検出したか確認する。ノイズ除去部22は、データ部分32の16ビット分の信号を全て検出した場合ステップS115でYes、当該類似度の計算処理を終了する。反対に、データ部分32の16ビット分の信号を全て検出していない場合ステップS115でNo、当該類似度の計算処理を継続し、次の単位時間内の受信信号の波形のサンプリングを行うため、再度、類似度とサンプリング回数の値変数等の初期化を行う。すなわち、類似度の初期値を0.5に再設定し、現在のサンプリング回数を初回1回目に再設定する。なお、実際には、当該類似度の計算処理を終了する際にも、類似度とサンプリング回数の値変数等の初期化を行うようにしても良い。なお、実際には、データ部分32の16ビット分の信号を全て検出したか確認する代わりに、当該赤外線リモコン信号30の末尾部分ストップ信号を検出したか確認するようにしても良い。或いは、次回の赤外線リモコン信号30のリーダ部分31を検出したか確認するようにしても良い。これにより、16ビット分のデータ部分を繰り返す連続した受信信号に対しても対応することが可能である。[類似度の計算例]図7を参照して、赤外線データ通信装置20が受信した赤外線リモコン信号がノイズの影響を受けた場合の様々な波形例に対する類似度の計算例について説明する。なお、図7のa~dは、A区間第一区間でのノイズの有無について説明するためのものである。また、図7のe~hは、A区間第一区間にノイズが発生せず、B区間第二区間にノイズが発生する例を説明するためのものである。図7のaは、理想波形W1を受信した場合で、類似度は1.0となる。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがHighレベル第一レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×5回=0.5を加算した値1.0となる。また、B区間第二区間で行われた5回のサンプリング位置の全てにおいて信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度の上限値1.0をそのまま維持する。したがって、B区間第二区間経過時点での類似度は1.0となるため、最終的な類似度は1.0となる。最終的な類似度の上限値1.0は、理想波形W1を示す類似度の上限値1.0と一致するため、当該信号は理想波形W1であると判断できる。図7のbは、本来は信号レベルがHighレベル第一レベルであるべきA区間第一区間内にノイズを含んだ波形を受信した場合で、類似度は0.6となり、信頼性が低下している例である。ここでは、A区間第一区間で行われた5回のサンプリング位置のうち、3回において信号レベルがHighレベル第一レベルであり、2回において信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×3回-0.1×2回=0.1を加算した値0.6となる。また、B区間第二区間で行われた5回のサンプリング位置の全てにおいて信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度0.6をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.6となるため、最終的な類似度は0.6となる。最終的な類似度0.6は、類似度の中間値0.5よりも理想波形W1を示す類似度の上限値1.0に近い値であるため、当該信号は理想波形W1であると判断でき、A区間第一区間内の2回のLowレベル第二レベル信号はノイズと判断できる。図7のcは、本来は信号レベルがLowレベル第二レベルであるべきA区間第一区間内にノイズを含んだ波形を受信した場合で、類似度は0.1となり、信頼性が低下している例である。ここでは、A区間第一区間で行われた5回のサンプリング位置のうち、1回において信号レベルがHighレベル第一レベルであり、4回において信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×1回-0.1×4回=-0.3を加算した値0.2となる。また、B区間第二区間で行われた5回のサンプリング位置の全てにおいて信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度0.2をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.2となるため、最終的な類似度は0.2となる。最終的な類似度0.2は、類似度の中間値0.5よりも理想波形W2を示す類似度の下限値0.0に近い値であるため、当該信号は理想波形W2であると判断でき、A区間第一区間内の1回のHighレベル第一レベル信号はノイズと判断できる。図7のdは、理想波形W2を受信した場合で、類似度は0.0となる。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5から、変動値の合計0.1×5回=0.5を減算した値0.0となる。また、B区間第二区間で行われた5回のサンプリング位置の全てにおいても信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度の下限値0.0をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.0となるため、最終的な類似度は0.0となる。最終的な類似度の下限値0.0は、理想波形W2を示す類似度の下限値0.0と一致するため、当該信号は理想波形W2であると判断できる。図7のeは、本来は信号レベルがLowレベル第二レベルであるべきB区間第二区間内にノイズを含んだ波形を受信した場合で、類似度は0.8となり、信頼性が低下している例である。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがHighレベル第一レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×5回=0.5を加算した値1.0となる。また、B区間第二区間で行われた5回のサンプリング位置のうち、2回において信号レベルがHighレベル第一レベルであるため、この時点での類似度は、A区間第一区間経過時点での類似度の上限値1.0から、変動値の合計0.1×2回=0.2を減算した値0.8となる。その後、3回において信号レベルがLowレベル第二レベルであるため、その時点での類似度0.8をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.8となるため、最終的な類似度は0.8となる。最終的な類似度0.8は、類似度の中間値0.5よりも理想波形W1を示す類似度の上限値1.0に近い値であるため、当該信号は理想波形W1であると判断でき、B区間第二区間内の2回のHighレベル第一レベル信号はノイズと判断できる。図7のfは、本来は信号レベルがLowレベル第二レベルであるべきB区間第二区間内にノイズを含んだ波形を受信した場合で、類似度は0.6となり、信頼性が低下している例である。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがHighレベル第一レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×5回=0.5を加算した値1.0となる。また、B区間第二区間で行われた5回のサンプリング位置のうち、4回において信号レベルがHighレベル第一レベルであるため、この時点での類似度は、A区間第一区間経過時点での類似度の上限値1.0から、変動値の合計0.1×4回=0.4を減算した値0.6となる。その後、1回において信号レベルがLowレベル第二レベルであるため、その時点での類似度0.6をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.6となるため、最終的な類似度は0.6となる。最終的な類似度0.6は、類似度の中間値0.5よりも理想波形W1を示す類似度の上限値1.0に近い値であるため、当該信号は理想波形W1であると判断でき、B区間第二区間内の4回のHighレベル第一レベル信号はノイズと判断できる。図7のgは、本来は信号レベルがLowレベル第二レベルであるべきB区間第二区間内がノイズにより全て信号レベルがHighレベル第一レベルとなった場合で、類似度は0.5となり、最も信頼性が低い例である。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがHighレベル第一レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5に、変動値の合計0.1×5回=0.5を加算した値1.0となる。また、B区間第二区間で行われた5回のサンプリング位置の全てにおいて信号レベルがHighレベル第一レベルであるため、B区間第二区間経過時点での類似度は、A区間第一区間経過時点での類似度の上限値1.0から、変動値の合計0.1×5回=0.5を減算した値0.5となる。したがって、最終的な類似度は0.5となる。最終的な類似度0.5は、類似度の中間値0.5と一致し、理想波形W1を示す類似度の上限値1.0及び理想波形W2を示す類似度の下限値0.0のいずれにも近い値ではないため、当該信号が理想波形W1及び理想波形W2のいずれであるか判断できない。この場合、当該信号は廃棄しても良い。なお、理想波形W1は半分がHighレベル第一レベル信号であり、理想波形W2にはHighレベル第一レベル信号が存在しないため、このように全区間の信号レベルがHighレベル第一レベルであり、最終的な類似度が中間値0.5となる場合、当該信号は理想波形W1であると判断するようにしても良い。すなわち、最終的な類似度が中間値0.5以上であれば、当該信号は理想波形W1であると判断するようにする。図7のhは、本来は信号レベルがLowレベル第二レベルであるべきB区間第二区間内にノイズを含んだ波形を受信した場合で、類似度は0.3となり、信頼性が低下している例である。ここでは、A区間第一区間で行われた5回のサンプリング位置の全てにおいて信号レベルがLowレベル第二レベルであるため、A区間第一区間経過時点での類似度は、類似度の初期値0.5から、変動値の合計0.1×5回=0.5を減算した値0.0となる。また、B区間第二区間で行われた5回のサンプリング位置のうち、最初の1回において信号レベルがLowレベル第二レベルであるため、その時点での類似度の下限値0.0をそのまま維持する。その後、3回において信号レベルがHighレベル第一レベルであるため、この時点での類似度の下限値0.0に、変動値の合計0.1×3回=0.3を加算した値0.3となる。その後、1回において信号レベルがLowレベル第二レベルであるため、その時点での類似度0.3をそのまま維持する。したがって、B区間第二区間経過時点での類似度は0.3となるため、最終的な類似度は0.3となる。最終的な類似度0.3は、類似度の中間値0.5よりも理想波形W2を示す類似度の下限値0.0に近い値であるため、当該信号は理想波形W2であると判断でき、B区間第二区間内の3回のHighレベル第一レベル信号はノイズと判断できる。なお、実際には、A区間第一区間とB区間第二区間の両方の区間でノイズが発生する場合もあるが、そのような場合についても、図7のa~hに示す類似度の計算例の組合せにより、最終的な類似度を計算することが可能である。このように、類似度を計算し、2つの理想波形のいずれに近いかを判定することで、赤外線リモコン信号におけるノイズを除去することが可能になる。[ノイズが含まれる信号の波形]図8を参照して、ノイズが含まれる信号の波形の例について説明する。図8は、受信部21が受信した赤外線リモコン信号にノイズが含まれている例と、その信号波形に対応した類似度を示している。このとき、時刻T1は、理想波形W1の信号を受信しており、類似度は1.0であるものとする。また、時刻T2は、理想波形W2の信号を受信しており、類似度は0.0であるものとする。また、時刻T3は、理想波形W1にノイズCを含んだ信号を受信しており、類似度は0.9であるものとする。また、時刻T4は、理想波形W2にノイズDを含んだ信号を受信しており、類似度は0.3であるものとする。[受信信号のビットデータの値を確定する手順]図9を参照して、赤外線データ通信装置20において、赤外線リモコン信号からノイズ除去を行い、受信信号のビットデータの値を確定する手順について説明する。1ステップS201ノイズ除去部22は、単位時間毎に、単位時間内の受信信号の波形の最終的な類似度が中間値0.5以上であるか確認する。すなわち、ノイズ除去部22は、単位時間内の受信信号の波形の最終的な類似度が中間値0.5以上であるか確認する。2ステップS202ノイズ除去部22は、単位時間内の受信信号の波形の最終的な類似度が中間値0.5以上の場合ステップS201でYes、当該受信信号の波形が理想波形W1に類似していると判断し、当該受信信号のビットデータの値を0と判定する。例えば、図8の時刻T1では類似度が1.0であり、図8の時刻T3では類似度が0.9である。したがって、図8の時刻T1及び時刻T3においては、類似度が中間値0.5以上であるため、当該受信信号の波形が理想波形W1に類似していると判断し、当該受信信号のビットデータの値を0と判定する。3ステップS203ノイズ除去部22は、単位時間内の受信信号の波形の最終的な類似度が中間値0.5未満の場合ステップS201でNo、当該受信信号の波形が理想波形W2に類似していると判断する。例えば、図8の時刻T1では類似度が0.0であり、図8の時刻T3では、類似度が0.3である。したがって、図8の時刻T2及び時刻T4においては、類似度が中間値0.5未満であるため、当該受信信号の波形が理想波形W2に類似していると判断する。4ステップS204ノイズ除去部22は、前回の受信信号の波形が理想波形W1であるか確認する。5ステップS205ノイズ除去部22は、前回の受信信号の波形が理想波形W1である場合ステップS204でYes、前回の受信信号の波形理想波形W1と今回の受信信号の波形理想波形W2を合わせると、データ1を示す波形となるため、前回の受信信号のビットデータの値0を取り消し、前回の受信信号と今回の受信信号を合わせたビットデータの値を1と判定する。例えば、図8の時刻T2では受信信号の波形が類似度の下限値0.0であり、理想波形W2に類似であるため、時刻T1の受信信号の波形と時刻T2の受信信号の波形を合わせると、データ1を示す波形となるため、時刻T1で0と判定したビットデータの値を取り消し、時刻T1の受信信号の波形と時刻T2の受信信号の波形を合わせたビットデータの値を1と判定する。6ステップS206ノイズ除去部22は、前回の受信信号の波形が理想波形W1ではなく理想波形W2である場合ステップS204でNo、受信エラーと判定して、今回の受信信号を廃棄する。なお、実際には、今回の受信信号を含む赤外線リモコン信号全体を廃棄しても良い。7ステップS207ノイズ除去部22は、データ部分32の16ビット分の信号のビットデータの値を全て確定したか確認する。ノイズ除去部22は、データ部分32の16ビット分の信号のビットデータの値を全て確定した場合ステップS207でYes、当該ビットデータ値の確定処理を終了する。反対に、ノイズ除去部22は、データ部分32の16ビット分の信号のビットデータの値を全て確定していない場合ステップS207でNo、全て確定するまで、当該ビットデータ値の確定処理を継続する。なお、実際には、ノイズ除去部22は、図6Aに示す類似度を計算する手順のステップS114において、単位時間内の受信信号の波形の最終的な類似度を確定する毎に、上記の受信信号のビットデータの値を確定する手順を行うようにしても良い。また、ノイズ除去部22は、図6Aに示す類似度を計算する手順のステップS115以降において、データ部分32における各単位時間内の受信信号の波形の最終的な類似度が全て確定した後に、上記の受信信号のビットデータの値を確定する手順を行うようにしても良い。[コード自体のデータ値を確定する手順]図10を参照して、赤外線データ通信装置20において、赤外線リモコン信号に含まれるコード自体のデータ値を確定する手順について説明する。1ステップS301コード解析部23は、当該赤外線リモコン信号30のデータ部分32コード321及び反転コード322の16ビット分の信号の受信が完了したか確認する。当該赤外線リモコン信号30のデータ部分32の16ビット分の信号の受信が完了していない場合ステップS301でNo、16ビット分の受信が完了するまで待機する。なお、実際には、当該赤外線リモコン信号30の末尾部分ストップ信号を受信したか確認するようにし、当該赤外線リモコン信号30の末尾部分ストップ信号を受信するまで上記の処理を繰り返すことにより、16ビット分のデータ部分を繰り返す連続した受信信号に対しても対応することが可能である。2ステップS302コード解析部23は、当該赤外線リモコン信号30のデータ部分32の16ビット分の信号の受信が完了した場合ステップS301でYes、データ部分32の全体16ビットのうち、前半8ビットをコード、後半8ビットを反転コードとして抽出する。ここでは、コードは、コード321に該当する。また、反転コードは、反転コード322に該当する。3ステップS303コード解析部23は、反転コードをビット反転して再反転コードを生成する。4ステップS304コード解析部23は、コードと再反転コードとが一致するか確認する。5ステップS305コード解析部23は、コードと再反転コードとが一致する場合ステップS304でYes、赤外線リモコン信号30のデータ部分32のデータ値としてコードを採用し、確定する。確定した後は、全ての処理を終了する。6ステップS306コード解析部23は、コードと再反転コードとが一致しない場合ステップS304でNo、受信エラーと判定して、当該赤外線リモコン信号を廃棄する。当該赤外線リモコン信号を廃棄した後は、全ての処理を終了する。[第1実施形態のまとめ]本実施形態では、受信部21が実際に受信した赤外線リモコン信号について、単位時間内の受信信号の波形が、理想波形W1又は理想波形W2に対して、どの程度類似しているのかを類似度を用いて表している。具体的には、受信信号の波形が理想波形W1と一致する場合の類似度を1.0、受信信号の波形が理想波形W2と一致する場合の類似度を0.0、初期値及び閾値となる類似度を0.5と規定する。サンプリング位置での信号レベルを基に、類似度の増減の可否を判断する。類似度を増減させる場合、類似度は0.1ずつ変動するものとする。受信信号に対するノイズの影響が少なく、受信信号の波形が理想波形W1に近づくと、類似度は1.0に近づく。また、受信信号に対するノイズの影響が少なく、受信信号の波形が理想波形W2に近づくと、類似度は0.0に近づく。受信信号に対するノイズの影響が大きく、受信信号の波形が理想波形W1とW2のいずれに類似しているのか判断できない場合、類似度は0.5に近づく。類似度が1.0に近い場合類似度が0.6~1.0の間である場合は、理想波形W1にノイズが乗ったものとみなすことができるので、ステップS301により本来受信されるべき信号は理想波形W1と確定する。また、類似度が0.0に近い場合類似度が0.0~0.4の間である場合は、理想波形W2にノイズが乗ったものとみなすことができるので、ステップS302により本来受信されるべき信号は理想波形W2と確定する。このように、受信信号の波形が理想波形W1又は理想波形W2のいずれであるか確定することで、受信信号の各ビットデータが0又は1のいずれであるか確定することができ、ノイズ除去の効果を得ることができる。また、本実施形態では、一定間隔でのサンプリングを実施し、受信信号のA区間第一区間内、B区間第二区間内の各々において、サンプリング位置毎に類似度を求め、最後のサンプリング位置における類似度によって受信信号の類似度を確定するため、例えば、ノイズの幅がサンプリング間隔Tより長い場合であっても、類似度の確定に影響をされることがない。よって、受信信号に発生したノイズの幅に影響されることなく、ノイズ除去の効果を得ることができる。<第2実施形態>以下に、本発明の第2実施形態について説明する。本実施形態では、コード自体のデータ値を確定する手順を一部変更して、コードのデータ値を補正する手順について説明する。具体的には、第1実施形態における図10のステップS304において、コードと再反転コードとが一致しない場合、受信エラーと判定して当該赤外線リモコン信号を廃棄する代わりに、コード等の信頼度を求め、信頼度に応じてデータ補正を行う。[赤外線データ通信システムの構成]本実施形態に係る赤外線データ通信システムについては、第1実施形態と同様である。[信頼度の算出方法]図11を参照して、コード321の2ビット目bit2の類似度が0.6とし、反転コード322の2ビット目bit2の類似度を1.0とした場合について説明する。なお、中間値は0.5である。ここでは、コード及び反転コードの各々の信頼度を、以下のように求める。コードの信頼度は、コードの類似度から中間値を減算した値の絶対値とする。したがって、コード321の2ビット目bit2の信頼度は、|0.6-0.5|=0.1となる。反転コードの信頼度は、反転コードの類似度から中間値を減算した値の絶対値とする。したがって、反転コード322の2ビット目bit2の信頼度は、|1.0-0.5|=0.5となる。[コードのデータ値を補正する手順]図12を参照して、赤外線データ通信装置20において、赤外線リモコン信号に含まれるコードのデータ値を補正する手順について説明する。なお、以下のステップS401~ステップS405は、基本的に、第1実施形態における図10のステップS301~ステップS305と同様である。1ステップS401コード解析部23は、当該赤外線リモコン信号30のデータ部分32コード321及び反転コード322の16ビット分の信号の受信が完了したか確認する。当該赤外線リモコン信号30のデータ部分32の16ビット分の信号の受信が完了していない場合ステップS401でNo、16ビット分の受信が完了するまで、上記の処理を繰り返す。なお、実際には、当該赤外線リモコン信号30の末尾部分ストップ信号を受信したか確認するようにし、当該赤外線リモコン信号30の末尾部分ストップ信号を受信するまで上記の処理を繰り返すことにより、16ビット分のデータ部分を繰り返す連続した受信信号に対しても対応することが可能である。2ステップS402コード解析部23は、当該赤外線リモコン信号30のデータ部分32の16ビット分の信号の受信が完了した場合ステップS401でYes、データ部分32の全体16ビットのうち、前半8ビットをコード、後半8ビットを反転コードとして抽出する。ここでは、コードは、コード321に該当する。また、反転コードは、反転コード322に該当する。3ステップS403コード解析部23は、反転コードをビット反転して再反転コードを生成する。4ステップS404コード解析部23は、コードと再反転コードとが一致するか確認する。5ステップS405コード解析部23は、コードと再反転コードとが一致する場合ステップS404でYes、赤外線リモコン信号30のデータ部分32のデータ値としてコードを採用し、確定する。確定した後は、全ての処理を終了する。6ステップS406コード解析部23は、コードと再反転コードとが一致しない場合ステップS404でNo、コードと反転コードのそれぞれの信頼度を、類似度から求める。信頼度の算出方法については、前述の通りである図11参照。7ステップS407コード解析部23は、コードの信頼度と反転コードの信頼度とを同一ビットで比較し、コードの信頼度が反転コードの信頼度以上であるか確認する。8ステップS408コード解析部23は、コードの信頼度が反転コードの信頼度以上である場合ステップS407でYes、受信データとしてコードを採用し、確定する。確定した後は、全ての処理を終了する。9ステップS409コードの信頼度が反転コードの信頼度よりも低い場合ステップS407でNo、受信データとして反転コードを採用し、確定する。なお、反転コードはコードをビット反転したものであるため、ビットデータとしては反転コードをビット反転した再反転コードのビットデータを採用することになる。確定した後は、全ての処理を終了する。図11の例では、2ビット目bit2を比較した場合、コード321の信頼度0.1が反転コード322の信頼度0.5よりも低いため、受信データの2ビット目bit2として、反転コード322の2ビット目bit2を採用し、確定する。[第2実施形態のまとめ]本発明では、赤外線データ通信装置20は、コード321と反転コード322を同一ビットで比較し、一致を確認することで、受信信号の当該ビットのデータが正しいかどうかを判定している。第1実施形態では、一致する場合に限り、受信信号の当該ビットのデータ値を確定している。一致しない場合は、受信信号をエラーと判定し、廃棄している。第2実施形態では、一致しない場合であっても、コード321と反転コード322のそれぞれについて類似度から信頼度を算出し、コード321と反転コード322のそれぞれの信頼度を比較し、信頼度の高い方の当該ビットのデータを受信データとして確定している。これにより、ノイズの影響でエラーとして廃棄されていた受信信号を受信することが可能になる。<各実施形態の関係>なお、上記の各実施形態は、組み合わせて実施することも可能である。例えば、赤外線データ通信装置20において、本発明の第1実施形態の機能と、第2実施形態の機能とを、設定情報に基づいて切り替えられるようにすることが考えられる。<備考>以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。