(57)【要約】【課題】複数のスイッチの開閉状態を、できるだけ少ない信号線数で従来よりも高い信頼性で検出することが可能なスイッチ開閉検出装置を提供する。【解決手段】スイッチ開閉検出装置１は、複数のスイッチＳＷ１〜ＳＷｎと、複数のコンデンサＣ１〜Ｃｎと、抵抗素子Ｒと、信号処理部１０とを備える。複数のスイッチＳＷ１〜ＳＷｎは、第１のノードＮＤ１と接地ノードＧＮＤとの間に互いに並列に設けられる。複数のコンデンサＣ１〜Ｃｎは、複数のスイッチＳＷ１〜ＳＷｎにそれぞれ対応して、対応のスイッチと直列に設けられ、互いに異なる容量値を有する。抵抗素子Ｒは、第１のノードＮＤ１と第２のノードＮＤ２との間に設けられる。信号処理部１０は、第２のノードＮＤ２に電圧を印加し、これによって生じた第１のノードＮＤ１の電圧の変化に基づいて、複数のスイッチＳＷ１〜ＳＷｎの開閉状態を検出する。【選択図】図１
2011070811.tif 000002
【特許請求の範囲】
【請求項１】
第１のノードと接地ノードとの間に互いに並列に設けられた複数のスイッチと、
前記複数のスイッチにそれぞれ対応して設けられ、互いに異なる容量値を有し、各々が、前記第１のノードと前記接地ノードとの間に対応のスイッチと直列に接続された複数のコンデンサと、
前記第１のノードと第２のノードとの間に設けられた抵抗素子と、
前記第２のノードに電圧を印加し、前記印加によって生じた前記第１のノードの電圧の変化に基づいて、前記複数のスイッチの開閉状態を検出する信号処理部とを備え、
前記第１のノードの電圧は、前記複数のスイッチのうち閉状態にある１または複数のスイッチにそれぞれ対応した１または複数のコンデンサの容量値と前記抵抗素子の抵抗値とによって決まる時定数に応じて変化する、スイッチ開閉検出装置。
【請求項２】
前記信号処理部は、前記第２のノードに電圧を印加してから前記第１のノードの電圧が閾値を超えるまでの遅延時間に基づいて、前記複数のスイッチの開閉状態を検出する、請求項１に記載のスイッチ開閉検出装置。
【請求項３】
前記信号処理部は、前記複数のスイッチの開閉操作が行なわれた後、次の開閉操作が行なわれるまでの間に、前記第２のノードにパルス状の電圧を複数回連続して印加し、複数回の前記パルス状の電圧の印加によって得られた複数の前記遅延時間に基づいて前記複数のスイッチの開閉状態を検出する、請求項２に記載のスイッチ開閉検出装置。
【請求項４】
前記信号処理部は、前記複数のスイッチの複数の開閉状態にそれぞれ対応した複数の前記遅延時間を予め測定して記憶し、予め記憶した複数の前記遅延時間と検出した前記遅延時間とを比較することによって前記複数のスイッチの開閉状態を検出する、請求項２に記載のスイッチ開閉検出装置。
【請求項５】
前記複数のコンデンサのうちの任意の第１のコンデンサの容量値は、前記第１のコンデンサを除くいずれの複数のコンデンサの容量値の和によっても表わすことができないような値である、請求項１または２に記載のスイッチ開閉検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数のスイッチの開閉状態を検出するスイッチ開閉検出装置に関する。
【背景技術】
【０００２】
従来から電子機器に用いられるスイッチの開閉を検出する手段として、ダイレクト方式やキーマトリクススキャン方式が知られている。
【０００３】
図６は、ダイレクト方式によるスイッチ開閉検出装置１００の構成を示す図である。図６を参照して、ダイレクト方式ではスイッチＳＷの一端が抵抗素子Ｒを介して電源ノードＶＣＣに接続され、スイッチＳＷの他端が接地ノードＧＮＤに接続される。スイッチＳＷと抵抗素子Ｒとの接続ノード１０１の電圧ＶＩＮをマイクロコンピュータなどによって測定することによってスイッチＳＷの開閉状態を検出することができる。
【０００４】
図７は、キーマトリクススキャン方式によるスイッチ開閉検出装置１１０の構成を示す図である。図７では簡単のために、２行２列に配列された４個のスイッチＳＷ１〜ＳＷ４からなるキーマトリクスが示される。
【０００５】
図７に示すように、列方向に延びる配線１１１，１１２と行方向に延びる配線１１３，１１４の交差点付近にスイッチＳＷ１〜ＳＷ４がそれぞれ設けられる。スイッチＳＷ１はダイオードＤ１とともに配線１１１，１１３間に直列に接続される。スイッチＳＷ２はダイオードＤ２とともに配線１１２，１１３間に直列に接続される。スイッチＳＷ３はダイオードＤ３とともに配線１１１，１１４間に直列に接続される。スイッチＳＷ４はダイオードＤ４とともに配線１１２，１１４間に直列に接続される。
【０００６】
配線１１１，１１２にマイクロコンピュータなどから電圧ＶＯＵＴ１，ＶＯＵＴ２が互いに異なるタイミングで出力される。配線１１１に電圧ＶＯＵＴ１が出力されたときの配線１１３，１１４の電圧ＶＩＮ１，ＶＩＮ２をマイクロコンピュータによって読み取ることによって、スイッチＳＷ１，ＳＷ３の開閉状態を検出することができる。同様に、配線１１２に電圧ＶＯＵＴ２が出力されたときの配線１１３，１１４の電圧ＶＩＮ１，ＶＩＮ２をマイクロコンピュータによってそれぞれ読み取ることによって、スイッチＳＷ２，ＳＷ４の開閉状態を検出することができる。
【０００７】
スイッチの開閉状態を検出するその他の方法として、特開２０００−３０６４５１号公報（特許文献１）や特開２００４−２６０４１８号公報（特許文献２）に開示された技術が知られている。
【０００８】
特開２０００−３０６４５１号公報（特許文献１）では、コンデンサと抵抗素子を用いたＣＲ微分回路を利用してスイッチの開閉状態が検出される。この文献のスイッチ操作検出回路は、複数個のスイッチ接続端子と、複数個のＣＲ微分回路と、１個の出力端子とを備える。複数個のスイッチ接続端子は、操作検出対象となる複数個のスイッチのそれぞれに接続される。複数個のＣＲ微分回路は、複数個のスイッチ接続端子のそれぞれに一対一に対応しかつそれぞれ固有時定数を有する。各ＣＲ微分回路は、対応のスイッチ接続端子に接続されるスイッチの操作に応答して、固有時定数で定まる波形の微分パルスを出力する。１個の出力端子には、複数個のＣＲ微分回路の各微分パルスが共通に出力される。この場合、複数個のスイッチ接続端子のそれぞれに接続された複数のスイッチの１つが操作されるのに応答して、操作されるスイッチに固有な時定数カーブを有する微分パルスが出力端子から送出される。
【０００９】
特開２００４−２６０４１８号公報（特許文献２）も、ＣＲ時定数を利用してスイッチの開閉状態を検出する技術を開示する。この文献に記載された遅延手段は、各々の値が相違する複数個の抵抗と、この各々の抵抗に対応して設けられたスイッチと、これらと接続したコンデンサとを有する。遅延手段は、各スイッチが切り替えられることでそのスイッチに対応した抵抗値とコンデンサとによる時定数により信号の立ち上がり時間に固有の遅延をもたらす。この遅延信号は、信号処理用の集積回路の汎用入出力ポートに入力される。集積回路は、入力された信号が所定値になると“Ｈ”レベルを検出し、別途内蔵カウンタからの一定のパルス信号と比較することで、どのパルスで入力信号が“Ｈ”になったかを検出する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０００−３０６４５１号公報
【特許文献２】特開２００４−２６０４１８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ダイレクト方式で複数個のスイッチの開閉状態を検出する場合には、スイッチごとに端子の電圧変化を検出する必要がある。したがって、たとえばマイクロコンピュータを用いて電圧変化を検出する場合には、マイクロコンピュータの入力ポートの個数およびその入力ポートに接続される信号線の数が、スイッチと同数だけ必要になる。
【００１２】
キーマトリクススキャン方式の場合にも、キーマトリクスに電圧を印加するための信号線数およびスイッチの開閉操作に伴なう電圧変化を検出するための信号線数が、スイッチの個数が増加するほど増加するという欠点がある。ただし、これらの信号線の総数は、キーマトリクスの規模が大きくなるとスイッチの個数よりも少なくなるので、キーマトリクススキャン方式はダイレクト方式よりも信号線の総数を削減することができる。
【００１３】
特開２０００−３０６４５１号公報（特許文献１）および特開２００４−２６０４１８号公報（特許文献２）に開示された技術の場合には、各スイッチの開閉操作に応じた固有の時定数を伴なう電圧変化を１本の信号線によって検出することができる。したがって、ダイレクト方式やキーマトリクススキャン方式に比べると必要な信号線の本数を大幅に削減することができる。
【００１４】
しかしながら、これらの特許文献に記載の技術の場合、スイッチの開閉操作によって生じた電圧変化を検出するので、スイッチの開閉状態を検出できるのはスイッチの開閉操作時のみである。スイッチの開閉操作のタイミングを逃すと開閉状態の検出ができなくなってしまうばかりか、スイッチの開閉操作時に外部からノイズが加わると開閉状態を誤検出するおそれもある。このため、上記の特許文献に記載の技術は、ダイレクト方式やキーマトリクススキャン方式の場合に比べると検出結果の信頼性が劣る。
【００１５】
この発明の目的は、複数のスイッチの開閉状態を、できるだけ少ない信号線数で従来よりも高い信頼性で検出することが可能なスイッチ開閉検出装置を提供することである。
【課題を解決するための手段】
【００１６】
この発明は要約すればスイッチ開閉検出装置であって、複数のスイッチと、複数のコンデンサと、抵抗素子と、信号処理部とを備える。複数のスイッチは、第１のノードと接地ノードとの間に互いに並列に設けられる。複数のコンデンサは、複数のスイッチにそれぞれ対応して設けられ、互いに異なる容量値を有し、各々が、第１のノードと接地ノードとの間に対応のスイッチと直列に接続される。抵抗素子は、第１のノードと第２のノードとの間に設けられる。信号処理部は、第２のノードに電圧を印加し、印加によって生じた第１のノードの電圧の変化に基づいて、複数のスイッチの開閉状態を検出する。ここで、第１のノードの電圧は、複数のスイッチのうち閉状態にある１または複数のスイッチにそれぞれ対応した１または複数のコンデンサの容量値と抵抗素子の抵抗値とによって決まる時定数に応じて変化する。
【００１７】
好ましくは、信号処理部は、第２のノードに電圧を印加してから第１のノードの電圧が閾値を超えるまでの遅延時間に基づいて、複数のスイッチの開閉状態を検出する。
【００１８】
好ましくは、信号処理部は、複数のスイッチの開閉操作が行なわれた後、次の開閉操作が行なわれるまでの間に第２のノードにパルス状の電圧を複数回連続して印加し、複数回のパルス状の電圧の印加によって得られた複数の遅延時間に基づいて複数のスイッチの開閉状態を検出する。
【００１９】
好ましくは、信号処理部は、複数のスイッチの複数の開閉状態にそれぞれ対応した複数の遅延時間を予め測定して記憶し、予め記憶した複数の遅延時間と検出した遅延時間とを比較することによって複数のスイッチの開閉状態を検出する。
【００２０】
好ましくは、複数のコンデンサのうちの任意の第１のコンデンサの容量値は、この第１のコンデンサを除くいずれの複数のコンデンサの容量値の和によっても表わすことができないような値である。
【発明の効果】
【００２１】
この発明によれば、スイッチの開閉操作によって生じた電圧変化ではなく、第２のノードへの電圧の印加によって生じた第１のノードの電圧変化を検出するので、従来よりも高い信頼性でスイッチの開閉状態を検出することができる。さらに、信号処理部に接続される信号線は、第２のノードに電圧を印加するための信号線と、第１のノードの電圧を検出するための信号線との２本である。したがって、ダイレクト方式やキーマトリクススキャン方式に比べると必要な信号線の本数を削減することができる。
【図面の簡単な説明】
【００２２】
【図１】この発明の実施の形態１によるスイッチ開閉検出装置１の構成を示す図である。
【図２】図１の信号処理部１０の入出力波形の一例を示す図である。
【図３】図１のスイッチ開閉検出装置１によるスイッチＳＷの開閉状態の検出手順を示すフローチャートである。
【図４】図１の信号処理部１０の入出力波形の具体例を示す図である。
【図５】図１のスイッチ開閉検出装置１の変形例としてのスイッチ開閉検出装置１Ａの構成を示す図である。
【図６】ダイレクト方式によるスイッチ開閉検出装置１００の構成を示す図である。
【図７】キーマトリクススキャン方式によるスイッチ開閉検出装置１１０の構成を示す図である。
【発明を実施するための形態】
【００２３】
以下、この発明の実施の形態について図面を参照して詳しく説明する。なお、同一または相当する部分には同一の参照符号を付して、その説明を繰返さない。
【００２４】
＜実施の形態１＞
実施の形態１では、複数のスイッチ（図１のＳＷ１〜ＳＷｎ）のうちいずれか１つが閉状態になり、残りのスイッチが開状態の場合に閉状態のスイッチを検出する方法について説明する。複数のスイッチのうちのいずれか複数個が閉状態になったとき、閉状態にある複数個のスイッチを検出する方法については実施の形態２で説明する。
【００２５】
［スイッチ開閉検出装置の構成］
図１は、この発明の実施の形態１によるスイッチ開閉検出装置１の構成を示す図である。図１を参照して、スイッチ開閉検出装置１は、ｎ個（ｎは２以上の整数）のスイッチＳＷ１〜ＳＷｎと、ｎ個のスイッチにそれぞれ対応するｎ個のコンデンサＣ１〜Ｃｎと、１個の抵抗素子Ｒと、信号処理部１０とを含む。
【００２６】
ｎ個のスイッチＳＷ１〜ＳＷｎは、第１のノードＮＤ１と接地ノードＧＮＤとの間に互いに並列に設けられる。第１のノードＮＤ１は、後述する信号処理部１０の入力端子２２と信号線３２を介して接続される。スイッチＳＷ１〜ＳＷｎについて、総称する場合または不特定のものを示す場合にスイッチＳＷと記載する。
【００２７】
ｎ個のコンデンサＣ１〜Ｃｎの各々は、第１のノードＮＤ１と接地ノードＧＮＤとの間に対応のスイッチＳＷと直列に接続される。コンデンサＣ１〜Ｃｎの容量値は互いに異なる値に設定される。コンデンサＣ１〜Ｃｎについても、総称する場合または不特定のものを示す場合にコンデンサＣと記載する。
【００２８】
なお、図１では、ノードＮＤ１にスイッチＳＷが接続され、接地ノードＧＮＤにコンデンサＣが接続されている。これとは逆に、ノードＮＤ１にコンデンサＣが接続され、接地ノードＧＮＤにスイッチＳＷが接続されるようにしてもよい。
【００２９】
抵抗素子Ｒは、一端が第１のノードＮＤ１に接続され、他端が後述する信号処理部１０の出力端子２１に信号線３１を介して接続される。抵抗素子の上記他端が第２のノードＮＤ２に対応する。
【００３０】
信号処理部１０は、マイクロコンピュータによって構成され、中央処理装置１１（ＣＰＵ：Central  Processing  Unit）と、ＲＯＭ（Read  Only  Memory）およびＲＡＭ（Random  Access  Memory）などを有する記憶装置１２と、周辺回路１３と、これら要素１１〜１３を接続するバス１７とを含む。周辺回路１３には、クロック発振器やタイマなどが含まれる。
【００３１】
信号処理部１０は、さらに、バス１７に接続される入出力制御回路１４と、出力ゲート１５としてのスリー・ステート・バッファと、入力ゲート１６としてのＡＮＤ回路と、出力端子２１と、入力端子２２とを含む。これらの要素１４〜１６，２１，２２は、マイクロコンピュータに設けられた汎用のデジタル出力ポートおよびデジタル入力ポートを概略的に示したものである。
【００３２】
入出力制御回路１４はＣＰＵ１１の指令に従って、出力ゲート１５としてのスリー・ステート・バッファの制御電極をハイ（Ｈ）レベルまたはロー（Ｌ）レベルに切替える。制御電極がＨレベルのとき、出力ゲート１５に接続された出力端子２１からの信号出力が可能な状態になる。逆に制御電極をＬレベルにしたとき、出力ゲート１５の出力インピーダンスはハイ・インピーダンス状態になる。
【００３３】
入出力制御回路１４はさらに、ＣＰＵ１１の指令に従って入力ゲート１６としてのＡＮＤ回路の一方の入力ノードをＨレベルまたはＬレベルに切り替える。入力ノードの一方がＨレベルに設定されたとき、入力端子２２で受けた信号を入力ゲート１６を介して入力可能な状態になる。逆にＬレベルに設定されたとき、信号入力は不可能になる。
【００３４】
［スイッチの開閉状態の検出手順］
次に、以上の構成のスイッチ開閉検出装置１によって、スイッチＳＷ１〜ＳＷｎの開閉状態を検出する方法について説明する。以下の説明では、スイッチＳＷ１が開状態の場合と閉状態の場合とを対比して説明する。他のスイッチＳＷ２〜ＳＷｎについては常に開状態であるとする。なお、図１の出力ゲート１５は信号出力が可能な状態に設定され、入力ゲート１６は信号入力が可能な状態に設定されている。
【００３５】
図２は、図１の信号処理部１０の入出力波形の一例を示す図である。図２は、上から順に、図１の出力端子２１から出力される電圧ＶＯＵＴの波形、入力端子２２に入力される電圧ＶＩＮの波形、および入力ゲート１６を介して信号処理部１０が検出した電圧ＶＤＥＴの波形を示す。
【００３６】
入力ゲート１６を含む信号処理部１０はデジタル回路であるので、入力電圧ＶＩＮは２値のデジタルデータとして検出される。すなわち、入力電圧ＶＩＮが閾値電圧ＶＴＨを超えたとき信号処理部１０による検出電圧ＶＤＥＴはＬレベルからＨレベルに変化し、入力電圧が閾値電圧ＶＴＨ以下となったとき検出電圧ＶＤＥＴはＨレベルからＬレベルに変化する。閾値電圧ＶＴＨはＨレベルとＬレベルの中間の値である。
【００３７】
図１、図２を参照して、時刻ｔ３でスイッチＳＷ１が開状態から閉状態に切替えられたとする。
【００３８】
まず、時刻ｔ３より前の時刻ｔ１〜ｔ２に、出力電圧ＶＯＵＴとして、方形のパルス電圧が出力端子２１から出力された場合について説明する。この場合、このパルス電圧は信号線３１を介して抵抗素子Ｒの一端（ノードＮＤ２）に印加され、抵抗素子Ｒの他端（ノードＮＤ１）の電圧が入力電圧ＶＩＮとして検出される。このとき、スイッチＳＷ１〜ＳＷｎが全て開状態であるので、入力電圧ＶＩＮはコンデンサＣ１〜Ｃｎの影響を受けない。したがって、入力電圧ＶＩＮは、出力電圧ＶＯＵＴの立上がりと同じタイミング（時刻ｔ１）で立上がり、出力電圧ＶＯＵＴの立下がりと同じタイミング（時刻ｔ２）で立下がる。この結果、時刻ｔ１に入力電圧ＶＩＮが閾値電圧ＶＴＨを超え、時刻ｔ２に入力電圧ＶＩＮが閾値電圧ＶＴＨ以下となるので、検出電圧ＶＤＥＴも時刻ｔ１にＨレベルになり、時刻ｔ２にＬレベルに戻る。
【００３９】
次に、時刻ｔ３より後の時刻ｔ４〜ｔ６に、出力電圧ＶＯＵＴとして、方形のパルス電圧が出力端子２１から再び出力された場合について説明する。この場合、スイッチＳＷ１が閉状態であるので、電圧変化を直線近似で表わすと、ノードＮＤ１の電圧は、コンデンサＣ１の容量値と抵抗素子Ｒの抵抗値との積で決まる時定数に応じた傾きで変化する。したがって、信号処理部１０で検出される電圧ＶＤＥＴは、入力電圧ＶＩＮが閾値電圧ＶＴＨを超える時刻ｔ５にＨレベルに切替わり、入力電圧ＶＩＮが閾値電圧ＶＴＨ以下となる時刻ｔ７にＬレベルに戻る。時刻ｔ４と時刻ｔ５との時間差すなわち遅延時間ＴＤ１は、信号処理部１０に内蔵されたタイマなどによって検出することができる。
【００４０】
スイッチＳＷ１以外の他のスイッチＳＷが閉状態の場合も上記と同様である。この場合、閉状態のスイッチＳＷに対応したコンデンサＣの容量値と抵抗素子Ｒの抵抗値との積で決まる時定数に応じて入力電圧ＶＩＮが変化し、この入力電圧ＶＩＮの変化に応じた遅延時間が信号処理部１０で検出される。ここで、コンデンサＣ１〜Ｃｎの容量値は互いに異なる値に設定されているので、検出された遅延時間もいずれのスイッチＳＷが閉状態かによって異なる大きさになる。したがって、各スイッチＳＷが閉状態の場合に検出された遅延時間を予め記憶装置１２に記憶しておき、検出した遅延時間と記憶装置１２に予め記憶された遅延時間とを比較するようにすれば、いずれのスイッチＳＷが閉状態にあるかを判定することができる。
【００４１】
図３は、図１のスイッチ開閉検出装置１によるスイッチＳＷの開閉状態の検出手順を示すフローチャートである。図３の検出手順では、信号処理部１０から出力するパルス電圧と同程度の強度のノイズが外部から侵入した場合でもスイッチの開閉状態を正しく検出できるように、パルス電圧が繰り返し連続して出力される。以下では、スイッチの開閉操作から次の開閉操作までの間隔はある決められた周期以上であることを前提とし、パルス電圧が出力される周期はこの開閉操作の周期よりも十分に短い値に設定される。
【００４２】
図１、図３を参照して、ステップＳ１で、信号処理部１０は、出力端子２１からパルス電圧を第２のノードＮＤ２に印加する。実際には、信号処理部１０はパルス電圧を繰り返して出力しており、ステップＳ１はそのうちの１回の出力を意味している。このパルス電圧の印加によって、第１のノードＮＤ１の電圧は、閉状態のスイッチＳＷに対応したコンデンサＣの容量値と抵抗素子Ｒの抵抗値との積で決まる時定数に応じて変化する。
【００４３】
次のステップＳ２で、信号処理部１０は、第１のノードＮＤ１の電圧変化を検出する。この場合、信号処理部１０は、第１のノードＮＤ１の電圧変化を入力ゲート１６を介して２値のデジタルデータとして検出するので、時定数に応じた時間だけ遅延したパルス電圧を検出することになる。
【００４４】
次のステップＳ３で、信号処理部１０は、出力端子２１から出力したパルス電圧に対して、入力端子２２を介して検出したパルス電圧の遅延時間を求める。遅延時間は、立上がりエッジの時間差として求めることができる。
【００４５】
次のステップＳ４で、信号処理部１０は、ステップＳ３で検出した遅延時間が０か否かを判定する。検出した遅延時間が０の場合（ステップＳ４でＹＥＳ）、信号処理部１０は、全てのスイッチＳＷ１〜ＳＷｎが開状態であると判定する（ステップＳ５）。遅延時間が０の場合は、外来ノイズの影響がないと想定されるので直ちに開閉状態の判定ができる。判定後、次のスイッチ操作を検出するために処理がステップＳ１に戻る。
【００４６】
一方、ステップＳ３で検出した遅延時間が０でない場合（ステップＳ４でＮＯ）、処理はステップＳ６に進む。ステップＳ６で、信号処理部１０は、略同一の遅延時間が所定回数（たとえば、３回程度）連続して検出されているか否かを判定する。外部から侵入したノイズによって第１のノードＮＤ１の電圧が変化した場合は誤った遅延時間が検出されることになるので、このような遅延時間の誤検出を避けるため、ステップＳ６で略同一の遅延時間が所定回数連続して検出されているか否かが確認される。
【００４７】
略同一の遅延時間が検出される回数が所定回数に達しない場合は（ステップＳ６でＮＯ）、ステップＳ１に処理が戻って、信号処理部１０は次のパルス電圧を第２のノードＮＤ２に印加する。一方、略同一の遅延時間が検出される回数が所定回数に達した場合は（ステップＳ６でＹＥＳ）、ステップＳ７に処理が進む。
【００４８】
ステップＳ７で、信号処理部１０は、ステップＳ３で検出した遅延時間と、記憶装置１２に予め記憶された遅延時間のデータとを比較する。記憶装置１２には、各スイッチＳＷが閉状態の場合に検出された遅延時間が予め記憶されている。
【００４９】
次にステップＳ８で、信号処理部１０は、ステップＳ７での比較結果に基づいて、スイッチＳＷ１〜ＳＷｎのうちいずれのスイッチＳＷが閉状態にあるかを判定する。具体的には、記憶装置１２に記憶された複数の遅延時間のうちステップＳ３で検出した遅延時間に略一致した遅延時間が遅延時間ＴＤｉであったとすれば、遅延時間ＴＤｉに対応するスイッチＳＷｉが閉状態にあると判定される。判定後、次のスイッチ操作を検出するために処理がステップＳ１に戻る。
【００５０】
［スイッチの開閉状態検出の具体例］
図４は、図１の信号処理部１０の入出力波形の具体例を示す図である。図４には、上から順に、出力端子２１から出力される電圧ＶＯＵＴの波形、入力端子２２に入力される電圧ＶＩＮの波形、スイッチの開閉状態、および開閉状態の判定結果を示す。以下、図１、図４を参照して、図３の検出手順を具体的に説明する。以下の説明では、スイッチＳＷ１が閉状態のときの遅延時間をＴＤ１とし、スイッチＳＷｎが閉状態のときの遅延時間をＴＤｎとする。
【００５１】
図４に示すように、信号処理部１０の出力端子２１からは方形波が出力される（図３のステップＳ１）。時刻ｔ１以前はスイッチＳＷ１〜ＳＷｎが全て開状態である。時刻ｔ１にスイッチＳＷ１のみが閉状態に切替わり、時刻ｔ１〜ｔ８の間、スイッチＳＷ１の閉状態が維持される。この間の時刻ｔ２、ｔ４、ｔ６に出力されたパルス電圧に応答して、入力電圧ＶＩＮがコンデンサＣ１の容量値と抵抗素子Ｒの抵抗値との積である時定数に応じて変化する。この電圧変化に応じた遅延時間ＴＤ１が、時刻ｔ３、ｔ５、ｔ７に信号処理部１０によって検出される（図３のステップＳ３）。信号処理部１０は、時刻ｔ７に所定回数である３回目の遅延時間ＴＤ１を検出すると（図３ステップＳ６でＹＥＳ）、検出した遅延時間ＴＤ１と記憶装置１２に記憶された遅延時間と比較して略一致する遅延時間を検索する（図３のステップＳ７）。信号処理部１０は、検索された遅延時間に対応するスイッチがスイッチＳＷ１であることから、スイッチＳＷ１が閉状態であると判定する（図３のステップＳ８）。
【００５２】
次に、時刻ｔ８にスイッチＳＷ１が開状態に戻り、時刻ｔ８〜ｔ１０の間、スイッチＳＷ１〜ＳＷｎが全て開状態になる。この間の時刻ｔ９に出力されたパルス電圧に応答して、遅延時間無しで入力電圧ＶＩＮが変化する。遅延時間が０の場合、信号処理部１０は直ちにスイッチＳＷ１〜ＳＷｎは全て開状態であると判定する（図３のステップＳ５）。
【００５３】
次に、時刻ｔ１０にスイッチＳＷｎが閉状態になる。時刻ｔ１０以降の時刻ｔ１１、ｔ１３、ｔ１５に出力されたパルス電圧に応答して、入力電圧ＶＩＮがコンデンサＣｎの容量値と抵抗素子Ｒの抵抗値との積である時定数に応じて変化する。この電圧変化に応じた遅延時間ＴＤｎが、時刻ｔ１２、ｔ１４、ｔ１６に信号処理部１０によって検出される（図３のステップＳ３）。信号処理部１０は、時刻ｔ１６に所定回数である３回目の遅延時間ＴＤｎを検出すると（図３のステップＳ６でＹＥＳ）、検出した遅延時間ＴＤｎと記憶装置１２に記憶された遅延時間と比較して略一致する遅延時間を検索する（図３のステップＳ７）。信号処理部１０は、検索された遅延時間に対応するスイッチがスイッチＳＷｎであることから、スイッチＳＷｎが閉状態であると判定する（図３のステップＳ８）。
【００５４】
［まとめ］
以上のとおり、実施の形態１のスイッチ開閉検出装置１によれば、第２のノードＮＤ２にパルス電圧が印加されることによって生じた第１のノードＮＤ１の電圧変化に基づいてスイッチＳＷ１〜ＳＷｎの開閉状態が検出される。このため、スイッチの開閉操作によって生じた電圧変化を検出する従来技術の場合よりも高い信頼性でスイッチＳＷ１〜ＳＷｎの開閉状態を検出することができる。しかも、実施の形態１の場合、信号処理部１０に接続される信号線数は、パルス電圧を出力するための信号線３１と電圧変化を検出するための信号線３２の２本でよい。
【００５５】
また、パルス電圧が印加されたときノードＮＤ１の電圧は、閉状態にあるスイッチＳＷに対応したコンデンサＣの容量値と抵抗素子Ｒの抵抗値との積によって決まる時定数に応じて変化する。この電圧変化は、汎用のデジタルポートで検出したパルス信号の遅延時間として容易に検出することができる。
【００５６】
好ましくは、スイッチＳＷの開閉操作から次の開閉操作までの間に、複数のパルス電圧が連続して第２のノードＮＤ２に印加されるようにする。これによって得られた複数の遅延時間に基づいてスイッチＳＷの開閉状態を判定すれば、ノイズの影響によってスイッチＳＷの開閉状態を誤判定することを防止できる。
【００５７】
［変形例］
以下、実施の形態１のスイッチ開閉検出装置１の変形例について説明する。
【００５８】
実施の形態１ではパルス電圧として方形波が印加される場合を説明したが、遅延時間の検出が可能であるならば方形波に限る必要はない。方形波に限らず三角波など他の形状のパルス電圧を用いてもよい。
【００５９】
実施の形態１では、出力端子２１から出力したパルス電圧の立上がりエッジと、入力端子２２を介して検出したパルス電圧の立上がりエッジとの時間差から遅延時間を求めたが、立下がりエッジを利用して遅延時間を求めてもよい。
【００６０】
実施の形態１のスイッチ開閉検出装置１では、図１に示すように、出力端子２１から入力端子２２に至る１本の信号線に、複数のスイッチＳＷ１〜ＳＷｎが順に接続されていた。しかしながら、スイッチＳＷ１〜ＳＷｎと信号線との接続は図１の場合には限るものでない。
【００６１】
図５は、図１のスイッチ開閉検出装置１の変形例としてのスイッチ開閉検出装置１Ａの構成を示す図である。図５の場合には、ノードＮＤ１から信号線３３，３４が分岐され、信号線３３にスイッチＳＷ１〜ＳＷｐ（ｐは１＜ｐ＜ｎを満たす整数）が接続され、信号線３４にスイッチＳＷｐ＋１〜ＳＷｎが接続される。この場合も、ノードＮＤ１と接地ノードＧＮＤとの間にスイッチＳＷ１〜ＳＷｎが互いに並列に接続されているので、閉状態のスイッチＳＷの容量値と抵抗素子Ｒの抵抗値との積によってノードＮＤ１の電圧変化の時定数が決まる。したがって、図１の場合と同様の方法でスイッチの開閉状態を検出することができる。
【００６２】
より一般的に言えば、各コンデンサＣの容量値や抵抗素子Ｒの抵抗値に比べて信号線の寄生インピーダンスが無視できる場合、すなわち集中定数回路として扱うことができる場合は、ノードＮＤ１と接地ノードとの間にスイッチＳＷが互いに並列接続されている限り、各スイッチＳＷと信号線との接続形態はノードＮＤ１の電圧変化に影響を及ぼさない。
【００６３】
＜実施の形態２＞
実施の形態２では、図１の複数のスイッチＳＷ１〜ＳＷｎのうちのいずれか複数個が閉状態になった場合に、閉状態にあるスイッチを判定する方法について説明する。
【００６４】
実施の形態２のスイッチ開閉検出装置では、コンデンサＣ１〜Ｃｎの容量値の設定が実施の形態１の場合と異なる。具体的に実施の形態２の場合、コンデンサＣ１〜Ｃｎのうちの任意のコンデンサＣｉ（ｉは１≦ｉ≦ｎを満たす整数）の容量値が、コンデンサＣｉを除く残りのコンデンサＣのうちの複数個のコンデンサの容量値の和としては表わせないように設定される。
【００６５】
たとえば、コンデンサＣ１の容量値をコンデンサＣ１〜Ｃｎのうち最も小さな値に設定して、番号順に次第に大きな容量値になるように各コンデンサの容量値を設定したとする。この場合、任意のコンデンサＣｉ（ｉは１≦ｉ≦ｎを満たす整数）の容量値を、コンデンサＣ１〜Ｃｉ−１の容量値の和よりも大きな値となるように設定すればよい。
【００６６】
簡単な例として、コンデンサＣ１の容量値をＸとしたとき、コンデンサＣｉ（ｉは１≦ｉ≦ｎを満たす整数）の容量値を２i-1・Ｘのように設定すれば、上記の関係を満たすことができる。この場合、図１の記憶装置には、コンデンサＣ１〜Ｃｎのうちのいずれか１つが閉状態になったときの遅延時間（合計でｎ個の遅延時間）を予め記憶しておく。たとえば、コンデンサＣ１とコンデンサＣ４とが閉状態のときは、容量値Ｘに対応する遅延時間と容量値８Ｘに対応する遅延時間との和、すなわち容量値９Ｘに対応する遅延時間が検出される。このとき、容量値が９Ｘとなる組合せは容量値Ｘと容量値８Ｘとの組合せ以外にあり得ないので、閉状態にあるコンデンサがコンデンサＣ１，Ｃ４であると判定することができる。
【００６７】
コンデンサの総数が少ない場合には、上記の例に代えてコンデンサＣ１〜Ｃｎの全ての組合せに対応した遅延時間を予め測定して記憶装置１２に記憶しておくようにしてもよい。この場合の記憶装置１２には２n−１個の遅延時間が記憶されていることになる。
【００６８】
コンデンサＣの容量値以外のスイッチ開閉検出装置の構成については実施の形態１の場合と同様であるので説明を繰返さない。
【００６９】
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７０】
１，１Ａ  スイッチ開閉検出装置、１０  信号処理部、２１  出力端子、２２  入力端子、Ｃ１〜Ｃｎ  コンデンサ、ＧＮＤ  接地ノード、ＮＤ１  第１のノード、ＮＤ２  第２のノード、Ｒ  抵抗素子、ＳＷ１〜ＳＷｎ  スイッチ。
【図１】
2011070811.tif 000003
【図２】
2011070811.tif 000004
【図３】
2011070811.tif 000005
【図４】
2011070811.tif 000006
【図５】
2011070811.tif 000007
【図６】
2011070811.tif 000008
【図７】
2011070811.tif 000009