(57)【特許請求の範囲】
【請求項１】
異なる周波数を用いて二値の信号を通信する通信装置であって、
一定のレート周期を規定する第１のタイマと、
前記レート周期に同期した期間として個々の前記レート周期内に設けられる、前記レート周期よりも短い期間を規定する第２のタイマと、
前記第２のタイマにより規定される前記期間内における前記信号のエッジ数をカウントするエッジカウンタと、
前記エッジカウンタがカウントした前記エッジ数に基づいて前記信号の論理を判定する論理判定回路と、
を備え、
前記論理判定回路は、前記第１のタイマにより規定される前記レート周期ごとに前記信号の論理を判定し、
前記レート周期の周波数は前記周波数のうち低い周波数に一致していることを特徴とする通信装置。
【請求項２】
前記第１のタイマおよび前記第２のタイマは、一定周期のクロック信号をカウントする一のタイマ回路を共用して構成されることを特徴とする請求項１記載の通信装置。
【請求項３】
前記第２のタイマは、第１の周波数の１周期分よりも短く、この第１の周波数よりも高い第２の周波数の１．５周期分よりも長い期間を前記期間として規定し、
前記論理判定回路は、前記エッジ数が３つ以上であるか否かに基づいて論理の判定を行うことを特徴とする請求項２記載の通信装置。
【請求項４】
前記論理判定回路は、前記第１の周波数を１２００Ｈｚ、第２の周波数を２２００Ｈｚとしたときに、前記エッジ数が３つ以上の場合は論理「０」であると判定し、３つ未満の場合には論理「１」であると判定することを特徴とする請求項３記載の通信装置。
【請求項５】
前記論理判定回路は、前記エッジ数が「０」のときには前記信号が通信されていないと判定し、前記エッジ数が「０」から「３」に変化したときに前記信号の通信が開始されたと判定することを特徴とする請求項４記載の通信装置。
【請求項６】
前記論理判定回路は、前記第１のタイマにより規定される前記レート周期ごとに前記信号の論理を出力することを特徴とする請求項１乃至〜４の何れか１項に記載の通信装置。
【請求項７】
請求項１乃至６の何れか１項に記載の通信装置を備えたことを特徴とするフィールド機器システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つの異なる周波数を用いて二値の信号の通信を行う通信装置およびこの通信システムを適用したフィールド機器システムに関するものである。
【背景技術】
【０００２】
２つの異なる装置間で信号を通信する方式の１つとしてＨＡＲＴ（Highway Addressable Remote Transducer）通信を用いることができる。ＨＡＲＴ通信では信号の論理を異なる周波数で表現している。一般的な規格としては、論理「０」を示すときには２２００Ｈｚの周波数とし、論理「１」を示すときには１２００Ｈｚの周波数としている。よって、送信側装置は、論理が「０」であるときには２２００Ｈｚ、論理が「１」のときには１２００Ｈｚの信号に変調して信号を送信する。
【０００３】
受信側装置では、送信側装置から送信された信号を受信して、この信号の周波数に基づいて信号を復調する。つまり、信号の周波数が２２００Ｈｚのときには論理「０」とし、１２００Ｈｚのときには論理「１」として復調する。これにより、ＨＡＲＴ通信が行われる。この種の技術としては、特許文献１に開示されている技術がある。
【０００４】
図７は受信側装置を構成する復調部１００の一例を示している。復調部１００は受信側装置から送信された信号を入力信号ｒｘｄとして入力している。この入力信号ｒｘｄを復調して論理を判定し、出力信号ｓｉｇとして出力している。同図に示すように、復調部１００はライズエッジ検出回路１０１（図中ではＲエッジ検出回路）とフォールエッジ検出回路１０２（図中ではＦエッジ検出回路）と第１の論理和回路１０３とタイマ回路１０４と第２の論理和回路１０５とフリップフロップ１０６と第１比較器１０７と第２比較器１０８と第３の論理和回路１０９とを備えている。
【０００５】
ライズエッジ検出回路１０１は入力信号ｒｘｄの立ち上がりエッジ（ライズエッジ）を検出しており、フォールエッジ検出回路１０２は入力信号ｒｘｄの立ち下りエッジ（フォールエッジ）を検出している。第１の論理和回路１０３はライズエッジ検出回路１０１が出力するライズエッジ信号ｒｘｄｒとフォールエッジ検出回路１０２が出力するフォールエッジ信号ｒｘｄｆとの論理和の演算を行っている。
【０００６】
タイマ回路１０４は９ビット（図中ｄａｔａ）のカウンタであり、「０」から開始して「５１１」までカウントを行う。「５１１」までカウントされたときには、９ビットの値は全て「１」になっている。タイマ回路１０４は所定のクロック周波数（ここでは、１．２２８８ＭＨｚ）で動作を行っており、この１クロックの間にカウント値をインクリメントする。そして、タイマ回路１０４のカウント値が「５１１」に到達した後には、「５１１」を固定して出力する（ラップアラウンドしない）。
【０００７】
タイマ回路１０４は第１の論理和回路１０３の出力（図中のｔｒｉｇ）を入力して、これをトリガとして、カウントを開始する。つまり、入力信号ｒｘｄが変化したエッジのタイミングでカウントを開始する。このときには、カウント値をリセット（値を「０」にする）してからカウントを開始する。
【０００８】
タイマ回路１０４はカウントした値をカウント値ｐｒｄｐｒｅとして出力する。また、タイマ回路１０４はカウント値が「５１１」まで到達したときには、その旨を示すパルスをキャリアウト信号ｃａｒｒｙとして出力する。第２の論理和回路１０５は第１の論理和回路１０３の出力ｔｒｉｇとキャリアウト信号ｃａｒｒｙとの論理和の演算を行って、イネーブル信号としてフリップフロップ１０６に出力する。
【０００９】
フリップフロップ１０６はタイマ回路１０４からのカウント値ｐｒｄｐｒｅを入力して、その値を保持する。このとき、第２の論理和回路１０５からイネーブル信号を入力したときに値を保持するようにする。そして、保持した値は次のタイミングでカウント値ｐｒｄとして第１比較器１０７に出力される。
【００１０】
第１比較器１０７はフリップフロップ１０６から出力されたカウント値ｐｒｄの比較を行って、第１出力信号ｐｒｄｈを出力する。カウント値ｐｒｄが「３６１」以上であれば、第１出力信号ｐｒｄｈをハイ（Ｈｉｇｈ）として出力し、「３６１」未満であればロー（Ｌｏｗ）として出力する。同様に、第２比較器１０８はタイマ回路１０４が出力したカウント値ｐｒｄｐｒｅを比較して、第２出力信号ｐｒｄｐｒｅｈを出力する。この第２出力信号ｐｒｄｐｒｅｈは、カウント値が「３６１」以上のときにハイとなり、「３６１」未満のときにローとなる。
【００１１】
第１出力信号ｐｒｄｈはフリップフロップ１０６を経由した信号であり、第２出力信号ｐｒｄｐｒｅｈはフリップフロップ１０６を経由していない信号である。よって、もともとは同じカウント値ｐｒｄｐｒｅである。このため、第１出力信号ｐｒｄｈと第２出力信号ｐｒｄｐｒｅｈは同じ信号であり、且つタイミングがずれたものになる。
【００１２】
第３の論理和回路１０９は第１出力信号ｐｒｄｈと第２出力信号ｐｒｄｐｒｅｈとの論理和の演算を行っている。そして、出力信号ｓｉｇとして後段の信号処理回路に出力している。この出力信号ｓｉｇは送信側装置から送信された信号を復調した信号になる。以上により、ＨＡＲＴ通信による通信が行われて、論理が復元される。
【００１３】
次に、図８のタイミングチャートを用いて動作について説明する。ライズエッジ検出回路１０１、フォールエッジ検出回路１０２で入力信号ｒｘｄのエッジが検出される。タイマ回路１０４はエッジを検出したタイミングでカウント値をゼロから開始し、次にエッジを検出するまでカウントアップを行う。そして、エッジを検出したときにはカウント値をゼロに戻す。
【００１４】
入力信号ｒｘｄは異なる論理を表現するために、１２００Ｈｚの周波数または２２００Ｈｚの周波数になっている。入力信号ｒｘｄが１２００Ｈｚの場合と２２００Ｈｚの場合とでカウント値が異なる。つまり、タイマ回路１０４はエッジとエッジとの間の時間的な間隔を計測しており、入力信号ｒｘｄの周波数によってカウント値は異なる。これにより、論理を表現している。
【００１５】
第１比較器１０７および第２比較器１０８が比較を行う基準となる値「３６１」は入力信号ｒｘｄの周波数の判定の基準となっている。周波数１２００Ｈｚと２２００Ｈｚとの中間値は１７００Ｈｚであり、これを復調部１００のクロック周波数である１．２２８８ＭＨｚを基準とすると、そのカウント値は「７２２」となる。つまり、カウント値「７２２＝１．２２８８ＭＨｚ／１７００Ｈｚ」となる。
【００１６】
入力信号ｒｘｄは１周期の間に１回の立ち上がりと１回の立ち下りとがある。よって、エッジ（ライズエッジまたはフォールエッジ）とエッジ（フォールエッジまたはライズエッジ）との間隔は１周期の半分となる。このため、閾値を「７２２」の半分の「３６１」としている。この「３６１」以上となっているか否かを第１比較器１０７および第２比較器１０８は判定している。
【００１７】
「３６１」未満になっているときは、入力信号ｒｘｄの周波数は高いことが認識される。よって、論理を「０」（つまり、入力信号ｒｘｄの周波数が２２００Ｈｚ）として判定する。一方、「３６１」以上になっているときには、入力信号ｒｘｄの周波数が低いことが認識される。よって、論理を「１」（つまり、入力信号ｒｘｄの周波数が１２００Ｈｚ）として判定する。
【００１８】
従って、「３６１」を閾値として、入力信号ｒｘｄのエッジとエッジとの間の時間をタイマ回路１０４が計測することで、論理の判定を行っている。これにより、入力信号ｒｘｄの論理を判定して復調することができ、出力信号ｓｉｇを出力することができるようになる。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００２−１１１７５２号公報
【発明の概要】
【発明が解決しようとする課題】
【００２０】
従って、論理の判定は、エッジとエッジとの間の間隔（時間：パルス幅）を基準として検出するようにしている。この点は、図７に示した技術でも前述した特許文献１の技術でも同様である。そして、このエッジとエッジとの間隔は、入力信号ｒｘｄの論理が「０」であるか「１」であるかによって異なる。
【００２１】
つまり、ＨＡＲＴ通信では、入力信号ｒｘｄを１２００Ｈｚと２２００Ｈｚとで周波数を異ならせることにより、論理を表現している。このため、エッジが出現するタイミングは論理が「０」（＝２２００Ｈｚ）であるか、論理が「１」（＝１２００Ｈｚ）であるかによって時間軸方向に変化する。従って、信号の論理が変化するタイミングは不定になる。
【００２２】
一方、復調部１００は一定の周波数（レート周期ＣＴの周波数）で出力信号ｓｉｇを生成しており、復調部１００に接続される出力信号ｓｉｇを処理する回路においてレート周期ＣＴの周波数で出力信号ｓｉｇを取得して所定の処理が行われる。このときのレート周期ＣＴはあくまでも復調部１００および後段の回路が動作する一定の周期であり、入力信号ｒｘｄの論理とは無関係になる。
【００２３】
つまり、レート周期ＣＴの周波数と入力信号ｒｘｄの周波数とは同期がされていないことになる。このため、レート周期ＣＴのタイミングと入力信号ｒｘｄの論理が変化するタイミングとが近接すると、レート周期ＣＴの間に本来であれば検出されるエッジが検出されず、或いは本来であれば検出されないエッジが検出されることがある。このため、タイマ回路１０４のカウント値が本来の入力信号ｒｘｄの値と異なるようになり、エッジとエッジとの間隔を正確に検出できなくなる。これにより、入力信号ｒｘｄが示す論理を正確に復調できなくなり、正しい通信を行うことができなくなる。
【００２４】
また、論理を正確に復調できないために、通信の開始を検出することができない。送信側装置から受信側装置に向けて信号の送信を開始したときに、通信の開始が検出されるが、この通信の開始は入力信号ｒｘｄの論理が「０」であることを検出したときに、通信開始を検出する。このときに、前述したように、レート周期ＣＴの周波数と入力信号ｒｘｄの周波数とが同期していないために論理を正確に復調できないとすると、通信の開始も正確に検出することができなくなる。
【００２５】
そこで、本発明は、異なる周波数を用いて信号の値を表現して通信するときに、正確な通信を行うことを目的とする。
【課題を解決するための手段】
【００２６】
以上の課題を解決するため、本発明の通信装置は、異なる周波数を用いて二値の信号を通信する通信装置であって、一定のレート周期を規定する第１のタイマと、前記レート周期に同期した期間として個々の前記レート周期内に設けられる、前記レート周期よりも短い期間を規定する第２のタイマと、前記第２のタイマにより規定される前記期間内における前記信号のエッジ数をカウントするエッジカウンタと、前記エッジカウンタがカウントした前記エッジ数に基づいて前記信号の論理を判定する論理判定回路と、を備え、前記論理判定回路は、前記第１のタイマにより規定される前記レート周期ごとに前記信号の論理を判定し、前記レート周期の周波数は前記周波数のうち低い周波数に一致していることを特徴とする
この通信装置によれば、エッジ間隔ではなく、一定の時間ごとに検出されるエッジ数に基づいて論理を判定しているため、正確な通信を行うことができる。
【００２７】
また、前記第１のタイマおよび前記第２のタイマは、一定周期のクロック信号をカウントする一のタイマ回路を共用して構成されることを特徴とする。
【００２８】
また、前記第２のタイマは、第１の周波数の１周期分よりも短く、この第１の周波数よりも高い第２の周波数の１．５周期分よりも長い期間を前記期間として規定し、前記論理判定回路は、前記エッジ数が３つ以上であるか否かに基づいて論理の判定を行うことを特徴とする。これにより、第１の周波数と第２の周波数とで必ずエッジ数を異ならせることができるため、論理の判定を確実に行うことができ、正確な通信を実現することができる。
【００２９】
また、前記論理判定回路は、前記第１の周波数を１２００Ｈｚ、第２の周波数を２２００Ｈｚとしたときに、前記エッジ数が３つ以上の場合は論理「０」であると判定し、３つ未満の場合には論理「１」であると判定することを特徴とする。これにより、１２００Ｈｚと２２００Ｈｚとの周波数を用いたＨＡＲＴ通信を行うときに、正確に通信を行うことができるようになる。
【００３０】
また、前記論理判定回路は、前記エッジ数が「０」のときには前記信号が通信されていないと判定し、前記エッジ数が「０」から「３」に変化したときに前記信号の通信が開始されたと判定することを特徴とする。これにより、通信の開始を検出することができるようになる。
【００３１】
また、前記論理判定回路は、前記第１のタイマにより規定される前記レート周期ごとに前記信号の論理を出力することを特徴とする。
【００３２】
また、本発明のフィールド機器システムは、前記何れかの通信装置を備えたことを特徴とする。通信装置はフィールド機器システムの上位制御装置とフィールド機器との間の通信に適用することができる。
【発明の効果】
【００３３】
本発明は、異なる２つの周波数により論理を表現する通信を行うときに、信号のエッジ間隔ではなく、一定の判定周期ごとのエッジ数に基づいて論理を判定している。これにより、信号の論理によらず、常に正しい論理を復調でき、正確な通信を行うことができるようになる。
【図面の簡単な説明】
【００３４】
【図１】通信装置の構成を示すブロック図である。
【図２】復調部の構成を示すブロック図である。
【図３】実施形態の復調部の動作を示すフローチャートである。
【図４】図３の続きのフローチャートである。
【図５】実施形態の動作のタイミングを示すタイミングチャートである。
【図６】パルスを喪失した場合のタイミングチャートである。
【図７】従来の復調部の構成を示すブロックである。
【図８】従来の復調部の動作のタイミングを示すタイミングチャートである。
【発明を実施するための形態】
【００３５】
以下、図面を参照して、本発明の実施形態について説明する。本実施形態の通信装置は、例えばフィールド機器システムに適用することができる。フィールド機器システムは、差圧計や流量計、温度計等のセンサ、アクチュエータ、コントローラ等の各種フィールド機器と上位制御装置とを接続する。このときの、フィールド機器と上位制御装置との間で通信を行うときに、以下の通信装置を適用することができる。勿論、フィールド機器システム以外にも任意のシステムに適用してもよい。
【００３６】
また、本実施形態ではＨＡＲＴ（Highway Addressable Remote Transducer）通信により通信を行っている。ＨＡＲＴ通信は、信号の周波数を１２００Ｈｚまたは２２００Ｈｚとすることにより、論理を表現している。以下では、周波数が１２００Ｈｚの場合は論理「１」を示し、２２００Ｈｚの場合は論理「０」を示すものとする。勿論、周波数に対応する論理を逆にしてもよく、また論理を示す周波数を任意に設定してもよい。なお、本実施形態の通信装置であれば、ＨＡＲＴ通信という名称には限定されない。
【００３７】
図１は通信装置１を示している。この通信装置１はＵＡＲＴ送信部２と変調部３とアナログ波形送信回路４とアナログ波形受信回路５と復調部６とＵＡＲＴ受信部７とを備えている。ＵＡＲＴ送信部２は送信する信号（論理が「０」または「１」の信号）を生成して、変調部３に出力する。図１の実施形態において、ＵＡＲＴ送信部２と変調部３とアナログ波形送信回路４とアナログ波形受信回路５と復調部６とでＨＡＲＴ通信を行う。
【００３８】
変調部３は入力した信号の論理によって、送信する信号の周波数を第１の周波数ＦＬと第２の周波数ＦＨ（ＦＨ＞ＦＬ）とに変調する。ここでは、論理が「１」のときには第１の周波数ＦＬ（＝１２００Ｈｚ）に変調し、「０」のときには第２の周波数ＦＨ（＝２２００Ｈｚ）に変調する。
【００３９】
アナログ波形送信回路４は変調部３が変調した後の信号をデジタル信号からアナログ信号に変換する。そして、このアナログ信号を送信する。ＵＡＲＴ送信部２からアナログ波形送信回路４までが送信側回路を構成する。送信側回路としては例えばフィールド機器に設けることができる。
【００４０】
アナログ波形受信回路５はアナログ波形送信回路４が送信したアナログ信号を受信する。そして、受信したアナログ信号をデジタル信号に変換する。このデジタル信号を入力信号ｒｘｄとして復調部６に入力し、復調部６は入力信号ｒｘｄから論理を復元する復調を行う。そして、ＵＡＲＴ受信部７に復調後の信号を出力信号ｓｉｇとして出力する。
【００４１】
ＵＡＲＴ受信部７は一定の周期（レート周期ＣＴ）のタイミングで入力される出力信号ｓｉｇを取得して、所定の信号処理を行う。以上のアナログ波形受信回路５からＵＡＲＴ受信部７までが受信側回路を構成する。例えば、フィールド機器システムにおける上位制御装置に受信側回路を設けることができる。
【００４２】
次に、図２を用いて復調部６について説明する。この復調部６は出力信号ｓｉｇを生成する信号生成部になる。復調部６は、ライズエッジ検出回路１１とフォールエッジ検出回路１２と論理和回路１３と状態判定回路１４とタイマ回路１５とエッジ数カウンタ１６と論理判定回路１７とスタートビット検出回路１８とを備えて構成している。
【００４３】
復調部６は所定のクロック周波数ＣＬＫに基づいて動作を行っている。ここでは、クロック周波数ＣＬＫの周波数は１．２２８８ＭＨｚとする。勿論、クロック周波数ＣＬＫの値はこれに限定されず、任意の周波数とすることができる。
【００４４】
ライズエッジ検出回路（図中ではＲエッジ検出回路）１１はクロック周波数ＣＬＫで動作を行っており、入力信号ｒｘｄの立ち上がりエッジ（ライズエッジ）を検出する。フォールエッジ検出回路（図中ではＦエッジ検出回路）１２はクロック周波数ＣＬＫで動作を行っており、入力信号ｒｘｄの立ち下りエッジ（フォールエッジ）を検出している。
【００４５】
論理和回路１３は、ライズエッジ検出回路１１がライズエッジを検出したことを示すライズエッジ信号ｒｘｄｒおよびフォールエッジ検出回路１２がフォールエッジを検出したことを示すフォールエッジ信号ｒｘｄｆの論理和の演算を行っている。つまり、論理和回路１３は入力信号ｒｘｄのエッジ（ライズエッジおよびフォールエッジ）を検出していることになる。論理和回路１３が出力する信号をエッジ信号ｒｘｄｒｆとする。
【００４６】
状態判定回路１４は入力信号ｒｘｄを受信した受信状態であるか、入力信号ｒｘｄを受信していないアイドル状態であるかを判定している。このために、ライズエッジ信号ｒｘｄｒを入力している。このライズエッジ信号ｒｘｄｒを入力したときに、アイドル状態から受信状態に切り替わったと判定する。そして、受信状態であることを示す状態信号ｓｔａｔを出力する。
【００４７】
タイマ回路１５はクロック周波数ＣＬＫで動作を行うカウンタである。このタイマ回路１５は１０ビットカウンタ（図中のｄａｔａ）としており、カウント値が「０」から「１０２３」までカウントアップ（カウント値のインクリメント）を行う。このタイマ回路１５は状態信号ｓｔａｔを入力しているとき、つまり受信状態であるときに動作を行う。
【００４８】
タイマ回路１５がカウントするカウント値が「０」から開始して、「１０２３」に到達したタイミングでキャリアウト信号ｃａｒｒｙを出力する。そして、キャリアウト信号ｃａｒｒｙを出力するタイミング、つまりカウント値が「１０２３」に到達したタイミングで、タイマ回路１５はカウント値のリセットを行う（カウント値を「０」に戻す）。
【００４９】
このキャリアウト信号ｃａｒｒｙはレート周期ＣＴのタイミングを規定している。このレート周期ＣＴは出力信号ｓｉｇを出力するタイミング、つまりＵＡＲＴ受信部７が出力信号ｓｉｇを取得するタイミングになる。また、タイマ回路１５は制御信号ｃｔｒを出力する。この制御信号ｃｔｒはタイマ回路１５のカウント値が所定の閾値ｔｈ（ここでは、８３７としている）に到達した時点で、その旨を示す信号になる。
【００５０】
エッジ数カウンタ１６は論理和回路１３が出力したエッジ信号ｒｘｄｒｆを入力した回数を計測して、計測した回数をエッジ数として検出する。エッジ数カウンタ１６は初期値を「０」としており、エッジ信号ｒｘｄｒｆを入力するたびに値のインクリメントを行う。このエッジ数カウンタ１６にはキャリアウト信号ｃａｒｒｙが入力されており、キャリアウト信号ｃａｒｒｙを入力したタイミング、つまりレート周期ＣＴのタイミングごとに値のリセットを行う（カウント値を「０」に戻す）。
【００５１】
エッジ数カウンタ１６は計測したエッジ数（カウント値）をエッジ信号ｅｄｇとして出力する。なお、エッジ数カウンタ１６には状態信号ｓｔａｔが入力されており、受信状態のときにエッジ数カウンタ１６は動作を行う。
【００５２】
論理判定回路１７は入力信号ｒｘｄの論理を判定している。論理の判定はエッジ数カウンタ１６が出力するエッジ信号ｅｄｇに基づいて行う。論理判定回路１７は制御信号ｃｔｒを入力しており、制御信号ｃｔｒのタイミング、つまり閾値ｔｈに到達したタイミングでエッジ信号ｅｄｇに基づいて論理の判定を行う。
【００５３】
このときに、エッジ信号ｅｄｇが「３」のときには論理が「０」であると判定し、「３」未満のときには論理が「１」であると判定する。判定した論理はレート周期ＣＴごとに出力信号ｓｉｇとしてＵＡＲＴ受信部７に出力する。このため、タイマ回路１５からキャリアウト信号ｃａｒｒｙを入力して、この信号のタイミング（レート周期ＣＴのタイミング）で出力信号ｓｉｇを出力している。これにより、信号を復元する復調を行う。
【００５４】
スタートビット検出回路１８は通信の開始を検出する。ここでは、入力信号ｒｘｄの論理が最初に「０」を示したときに、通信の開始を検出している。なお、論理が「１」のときに通信の開始を検出してもよい。このために、エッジ数カウンタ１６からエッジ信号ｅｄｇを入力する。そして、制御信号ｃｔｒを入力するタイミング、つまりタイマ回路１５がカウントするカウント値が閾値ｔｈに到達したタイミングでエッジ信号ｅｄｇを入力する。このときに入力したエッジ信号ｅｄｇが「３」のときに、論理が「０」であることを認識して、通信の開始を検出する。
【００５５】
以上の構成における動作について図３、図４のフローチャート並びに図５のタイミングチャートを用いて説明する。まず、状態判定回路１４はライズエッジ信号ｒｘｄｒに基づいて通信状態を検出する（ステップＳ１１）。そして、ライズエッジが検出されているか否かの判定を行う（ステップＳ１２）。
【００５６】
ライズエッジが検出されなければ、アイドル状態となる。よって、ステップＳ１１に戻る動作を繰り返す。一方、ライズエッジが検出されたときには、状態判定回路１４は受信状態となったことを示す状態信号ｓｔａｔを出力する。この状態信号ｓｔａｔを入力することにより、タイマ回路１５は自身のカウント値をリセットして、値を「０」に戻す（ステップＳ１３）。また、エッジ数カウンタ１６の値もリセットして、値を「０」にする（ステップＳ１４）。
【００５７】
そして、タイマ回路１５はカウントアップを開始する（ステップＳ１５）。タイマ回路１５はクロック周波数ＣＬＫに同期したタイミングで動作を行っており、「０」から「１０２３」までカウントを行う。このときのカウントの最大値である「１０２３」はクロック周波数ＣＬＫ（＝１．２２８８ＭＨｚ）をレート周期ＣＴの周波数（＝１２００Ｈｚ）で除算した値（＝１０２４＝１．２２８８ＭＨｚ／１２００Ｈｚ）になる。
【００５８】
ここでは、第１の周波数ＦＬと第２の周波数ＦＨとのうち低い周波数である第１の周波数ＦＬ（＝１２００Ｈｚ）とレート周期ＣＴの周波数とを一致させている。これにより、第１の周波数ＦＬのタイミングで出力信号ｓｉｇを生成して出力している。このレート周期ＣＴの周波数は第１の周波数ＦＬ以外の周波数に設定してもよい。
【００５９】
従って、タイマ回路１５はクロック周波数ＣＬＫの１クロックごとにカウントアップを行う。タイマ回路１５には閾値ｔｈが設定されており、カウント値が閾値ｔｈに到達したか否かを判定する（ステップＳ１６）。到達していない場合には、ステップＳ１５に戻ってカウントアップを続行する。
【００６０】
閾値ｔｈはエッジ数カウンタ１６がエッジ数をカウントするタイミングであり、ここでは閾値ｔｈを「８３７」としている。タイマ回路１５はカウント値が「０」から「８３７」になるまでの間を判定周期ＪＴとして計測している。この判定周期ＪＴはエッジ数カウンタ１６がエッジ数をカウントする周期（つまり、論理を判定するタイミング）を規定している。ここでは、判定周期ＪＴを第２の周波数ＦＨ（＝２２００Ｈｚ）の１．５周期分としている。
【００６１】
レート周期ＣＴの周波数は１２００Ｈｚになっており、タイマ回路１５が「１０２４」カウントすることで、レート周期ＣＴの１周期分を検出している。よって、第２の周波数ＦＨ（＝２２００Ｈｚ）の１．５周期分である判定周期ＪＴを規定する閾値ｔｈは「ｔｈ＝（１２００／２２００）×１０２４×１．５＝８３７」となる。なお、判定周期ＪＴは第２の周波数ＦＨの１．５周期分としなくても、所定条件を満たすことで、任意の値に設定することができる。この点は後述する。タイマ回路１５のカウント値が閾値ｔｈに到達したときには、その旨を制御信号ｃｔｒとして出力する。
【００６２】
エッジ数カウンタ１６は制御信号ｃｔｒを入力するまでにカウントしたエッジ数を検出する（ステップＳ１７）。エッジ数カウンタ１６は初期値としては「０」になっており、論理和回路１３が出力するエッジ信号ｒｘｄｒｆを入力するごとに、その回数を計測している。そして、制御信号ｃｔｒを入力したタイミングのカウント値をエッジ信号ｅｄｇとして出力する。なお、制御信号ｃｔｒを入力したときには、エッジ数カウンタ１６は自身のカウント値を「０」に戻す。
【００６３】
このときのエッジ信号ｅｄｇは入力信号ｒｘｄの論理を示している。図５のタイミングチャートにも示すように、入力信号ｒｘｄが第１の周波数ＦＬであるか第２の周波数ＦＨであるかによって、判定周期ＪＴの間に検出するエッジ数が異なってくる。つまり、第２の周波数ＦＨ（＝２２００Ｈｚ）のときには、判定周期ＪＴの間に検出するエッジ数は「３」になり、第１の周波数ＦＬ（＝１２００Ｈｚ）のときには、判定周期ＪＴの間に検出するエッジ数は「２」（つまり、「３」未満）になる。これは、所定の判定周期ＪＴの時間のエッジ数が高い周波数では多くなり、低い周波数では少なくなるためである。
【００６４】
ここでは、第１の周波数ＦＬと第２の周波数ＦＨとを明確に識別するために、閾値ｔｈを第２の周波数ＦＨの１．５周期分としている。入力信号ｒｘｄが第２の周波数ＦＨであれば、第２の周波数ＦＨの１．５周期の間のエッジ数は３つ（ライズ、フォール、ライズまたはフォール、ライズ、フォール）になる。
【００６５】
一方、第２の周波数ＦＨの１．５周期分は第１の周波数ＦＬの１周期分（カウント値が「１０２４」）よりは少なくなっている。よって、入力信号ｒｘｄが第１の周波数ＦＬであれば、第２の周波数ＦＨの１．５周期分の間にエッジ数は２つ（ライズ、フォールまたはフォール、ライズ）になる。これにより、判定周期ＪＴが第２の周波数ＦＨの１．５周期分となるように閾値ｔｈを設定することにより、第１の周波数ＦＬと第２の周波数ＦＨとで必ずエッジ数が異なるようになる。つまり、論理を確実に判定することができる。
【００６６】
スタートビット検出回路１８は通信の開始を検出したか否かを判定する（ステップＳ１８）。このために、スタートビット検出回路１８はエッジ数カウンタ１６からエッジ信号ｅｄｇを入力している。エッジ信号ｅｄｇが「３」のときには第２の周波数ＦＨであることを示しており、つまり論理が「０」であることが認識される。
【００６７】
よって、スタートビット検出回路１８はエッジ信号ｅｄｇが「３」のときには通信の開始を検出する。一方、エッジ信号ｅｄｇが「３」未満のときには通信の開始を検出しない。この場合には、ステップＳ１３のタイマ回路１５をリセットする処理に戻り、当該処理からフローを開始する。
【００６８】
状態判定回路１４がアイドル状態と判定しているときには、入力信号ｒｘｄのエッジは変化をしていない。つまり、通信を行っていない状態では検出するエッジ信号ｅｄｇが「０」になる。よって、スタートビット検出回路１８はエッジ信号ｅｄｇが「０」から「３」に変化したときに、通信の開始を検出する。
【００６９】
ステップＳ１８において通信の開始を検出したときには、タイマ回路１５はそのままカウントを続行する（タイマフリーラン：ステップＳ１９）。これにより、タイマ回路１５のカウント値が「８３７」に到達した後も、続けて「８３８」からカウントアップを行う。そして、タイマ回路１５はカウント値が「１０２３」に到達したか否か、つまりレート周期ＣＴが終了したか否かを判定する（ステップＳ２０）。カウント値が「１０２３」に到達するまでは、タイマ回路１５はカウントアップを行う。
【００７０】
タイマ回路１５のカウント値が「１０２３」になったときには、１レート周期ＣＴが終了したとして、キャリアウト信号ｃａｒｒｙを出力する。図４に示すように、このキャリアウト信号ｃａｒｒｙを出力したタイミングでタイマ回路１５はカウント値のリセットを行う（ステップＳ２１）。また、エッジ数カウンタ１６はカウント値をリセットする（ステップＳ２２）。
【００７１】
そして、タイマ回路１５はカウントアップを行う（ステップＳ２３）。タイマ回路１５はカウント値が閾値ｔｈ（＝８３７）に到達したか否かの判定を行い（ステップＳ２４）、到達していないと判定した場合には、ステップＳ２３に戻ってカウントアップを続行する。
【００７２】
一方、閾値ｔｈに到達したと判定したときには、タイマ回路１５が制御信号ｃｔｒを出力する。そして、この制御信号ｃｔｒに基づいて、エッジ数カウンタ１６は計測したエッジ数をエッジ信号ｅｄｇとして出力する（ステップＳ２５）。このエッジ信号ｅｄｇが論理判定回路１７に入力される。
【００７３】
論理判定回路１７は入力したエッジ信号ｅｄｇの判定を行う（ステップＳ２６）。エッジ信号ｅｄｇが「３」を示しているときには、前述したように入力信号ｒｘｄが第２の周波数ＦＨであることを認識する。これにより、論理が「０」であることを判定する（ステップＳ２７）。一方、エッジ信号ｅｄｇが「２」であるとき（「３」未満であるとき）には、前述したように入力信号ｒｘｄが第１の周波数ＦＬであることを認識する。これにより、論理が「１」であることを判定する（ステップＳ２８）
【００７４】
閾値ｔｈに到達したタイミング、つまり制御信号ｃｔｒを入力して論理判定回路１７が論理の判定を行うタイミングは、未だレート周期ＣＴが終了していない。よって、タイマ回路１５は閾値ｔｈ（＝８３７）の続きである「８３８」からカウントアップを行う（タイマフリーラン：ステップＳ２９）。
【００７５】
そして、タイマ回路１５のカウント値が「１０２３」に到達したか否か、つまり１レート周期ＣＴが終了したか否かを判定する（ステップＳ３０）。カウント値が「１０２４」に到達していなければ、引き続きステップＳ２９のタイマフリーランを行う。一方、レート周期ＣＴが終了したときには、論理判定回路１７は判定した論理を出力信号ｓｉｇとしてＵＡＲＴ受信部７に出力する。
【００７６】
ＵＡＲＴ受信部７はこのレート周期ＣＴのタイミングごとに出力信号ｓｉｇを入力して、所定の信号処理を行う。このときのＵＡＲＴ受信部７が出力信号ｓｉｇを取得するタイミングは常に一定の周期（レート周期ＣＴ）になっている。このために、論理判定回路１７はキャリアウト信号ｃａｒｒｙを入力したタイミングごとに出力信号ｓｉｇを出力する。そして、全ての通信が終了したか否かを判定し（ステップＳ３１）、終了していないと判定されれば再びステップＳ２１に戻り、終了したと判定されれば処理を終了する。
【００７７】
従って、タイマ回路１５が一定の判定周期ＪＴごとに入力信号ｒｘｄのエッジ数を検出して、このエッジ数に基づいて論理を判定している。つまり、一定の時間を区切って、この時間内における入力信号ｒｘｄのエッジ数に基づいて論理を判定している。
【００７８】
入力信号ｒｘｄの論理は第１の周波数ＦＬと第２の周波数ＦＨとで周波数を異ならせることにより表現している。エッジとエッジとの間隔（時間：パルス幅）を計測して論理を判定する場合には、レート周期ＣＴの間に本来検出されるべきエッジを検出せず、或いは本来検出されるべきではないエッジが検出されることがある。このために、通信された信号の正確性が損なわれる。
【００７９】
この点、本実施形態では、エッジの間隔ではなく一定時間（判定周期ＪＴ）の間のエッジ数を検出して論理の判定を行っている。このため、入力信号ｒｘｄの論理が「０」、「１」の何れであるかによってタイミングが左右されることはなく、一定のレート周期ＣＴの間に常に正しい論理の判定を行うことができる。これにより、正確な通信を行うことができるようになる。
【００８０】
また、本実施形態の動作を実現するために、判定周期ＪＴとレート周期ＣＴとの２つの時間を検出する必要がある。この点、図２に示したように、判定周期ＪＴもレート周期ＣＴも１つのタイマ回路１５がカウントを行っている。つまり、判定周期ＪＴを検出するためのカウンタとレート周期ＣＴを検出するためのカウンタとを別個に設けないで、１つのタイマ回路で実現しているため、回路の単純化を図ることができる。
【００８１】
以上において、通信の開始を行うときには、プリアンブルデータを送信することが望ましい。プリアンブルデータは最初の１ビット目の論理が「０」であり、その後の数ビットは「１」のデータが複数回繰り返されたデータになる（つまり、０１１１１０１１１１のようなデータ）。このプリアンブルデータは通信の開始を示すデータになる。
【００８２】
図６は図５のタイミングチャートについて、最初のパルスを喪失（エッジが出現しない）したものを示している。通信の開始時にはノイズ等により最初のパルスを喪失することがある。このため、図６のように最初の判定周期ＪＴで、本来であればエッジ数は「３」であることを検出すべきであるが、パルスの喪失によりエッジ数は「２」として検出することになる。
【００８３】
この場合には、論理「０」を検出すべきであるが、論理「１」を検出する。よって、通信の開始を検出することができない。このときに、プリアンブルデータを送信するようにする。これにより、最初のパルスを喪失したとしても、次に論理が「０」となるときには、エッジ数は「３」になり、スターとビットとして通信の開始を検出することができるようになる。いずれにしても、エッジ数カウンタ１６が検出するエッジ数が「０」から最初に「３」になったときに、通信の開始を検出する。
【００８４】
また、判定周期ＪＴは第２の周波数ＦＨの１．５周期分としており、これに対応するタイマ回路１５の閾値を「８３７」としているが、判定周期ＪＴは第２の周波数ＦＨの１．５周期分以外の値として設定してもよい。判定周期ＪＴとしては、第２の周波数ＦＨ（＝２２００Ｈｚ）の１．５周期分以上であり、且つ第１の周波数ＦＬ（＝１２００Ｈｚ）の１周期分以下であれば、任意の値としてもよい。例えば、閾値ｔｈを「８３７」ではなく「９００」のように設定してもよい。
【００８５】
これは、判定周期ＪＴの間に、入力信号ｒｘｄが第２の周波数ＦＨ（つまり、論理が「０」）のときにはエッジ数が「３」となるように、且つ入力信号ｒｘｄが第１の周波数ＦＬ（つまり、論理が「１」）のときにはエッジ数が「２」（「３」未満）となるようにしているためである。このため、第２の周波数ＦＨと第１の周波数ＦＬとで、判定周期ＪＴの間に検出するエッジ数が必ず異なるのであれば、判定周期ＪＴ（つまり、閾値ｔｈ）は任意に設定することができる。また、論理「０」のときにはエッジ数が「４」になり、論理「１」のときには「４」未満となるようにしてもよい。
【００８６】
また、レート周期ＣＴの周波数は第１の周波数ＦＬと一致させているが、第１の周波数ＦＬと一致させなくてもよい。ただし、ＵＡＲＴ受信部７が第１の周波数ＦＬに同期したタイミングで出力信号ｓｉｇを取得する場合には、レート周期ＣＴを第１の周波数ＦＬに一致させる。
【符号の説明】
【００８７】
１    通信装置
６    復調部
７    ＵＡＲＴ受信部
１１    ライズエッジ検出回路
１２    フォールエッジ検出回路
１３    論理和回路
１４    状態判定回路
１５    タイマ回路
１６    エッジ数カウンタ
１７    論理判定回路
１８    スタートビット検出回路
【図１】
0005704506.tif 000002
【図２】
0005704506.tif 000003
【図３】
0005704506.tif 000004
【図４】
0005704506.tif 000005
【図５】
0005704506.tif 000006
【図６】
0005704506.tif 000007
【図７】
0005704506.tif 000008
【図８】
0005704506.tif 000009