(57)【特許請求の範囲】
【請求項１】
ドアを開閉駆動するモータと、
上記ドアの移動量に比例したパルスを出力するパルス出力部と、
該パルス出力部から出力されるパルスに基づいて上記ドアの位置と速度とを算出し、上記モータを制御する制御部とを、
備えた自動ドア装置において、
上記制御部は、所定のドアの位置に設けられた低速域における目標ドア速度と、上記ドアの速度とを、一致させるために必要な上記モータへの印加電圧を算出するモータ電圧制御手段を有し、このモータ電圧制御手段により算出された印加電圧が所定の電圧値を越えたと判断されたときに、上記ドアが開端または閉端に到達したことを検出する自動ドア装置の開閉端検出装置。
【請求項２】
請求項１記載の自動ドア装置の開閉端検出装置であって、
上記制御部は、上記パルスをカウントすることによって求められる現在のドア位置が予め記憶したドアの開位置または閉位置と一致したことを判断する位置判断手段を有し、
上記モータ電圧制御手段により算出された印加電圧が所定の電圧値を超えたと判断され、かつ、上記位置判断手段により上記ドア位置が開位置または閉位置と一致したと判断されたときに、上記ドアが開端または閉端に到達したことを検出する自動ドア装置の開閉端検出装置。
【請求項３】
請求項１記載の自動ドア装置の開閉端検出装置であって、
上記制御部は、上記パルスの周期が所定の周期よりも長くなったときに上記ドアが停止したと判断する停止判断手段を有し、
上記モータ電圧制御手段により算出された印加電圧が所定の電圧値を超えたと判断され、かつ、上記停止判断手段により上記ドアが停止したと判断されたときに、上記ドアが開端または閉端に到達したことを検出する自動ドア装置の開閉端検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば引き戸（スライドドア）式や開き戸（スイングドア）式等の各種自動ドア装置において、ドアの開閉時に、ドアがその開閉端に到達したことを検出する開閉端検出装置に関するものである。
【０００２】
【従来の技術】
自動ドア装置には、モータの駆動力によりドアを開閉移動させるものがある。このような自動ドア装置では、近年、モータの回転数、即ちドアの移動速度（移動量）に比例した周波数（数）のパルスを発生する手段を設け、このパルスからドア位置等を割り出し、これに基づいてモータを制御するものが主流となっている。
【０００３】
例えば、予め、ドアを一旦低速度にて自動的に開閉移動させて、ドアの全移動範囲（ストローク）における上記パルスの発生数をカウントし、これによりドアの全ストロークを自動測定する。そして、ドアの全ストロークの一端、即ち開端又は閉端を基点として、そこから上記パルスの発生数をカウントすることによりドア位置を割り出し、この割り出したドア位置が上記全ストロークのどこに位置するのかに応じて、モータの回転、即ちドア速度を制御している。
【０００４】
このような制御を実現するには、ドアの全ストロークを測定する際、及び上記基点を設定する際に、ドアが開端及び閉端に到達したことを検出する必要がある。また、このような制御においては、上記パルスに外部からノイズが影響したり、また引き戸式の自動ドア装置においてはモータとドアとを結ぶベルトがスリップする等により、上記パルスの発生数が変化することがあり、これにより上記パルス数から割り出した全ストロークの両端位置と、実際の開閉端との間に差異が生じてしまうことがある。よって、上記全ストロークを測定するときや上記基点を設定するとき以外の通常動作においても、ドアを完全に開端及び閉端まで移動させるために、上記パルス数によりドアの開閉位置を割り出すのとは別の手段によって、ドアが開閉端に到達したことを検出する必要がある。
【０００５】
そこで、ドアの開閉端を検出する装置として、従来、例えば特公平２−２８６７０号公報に開示されたものがある。この装置は、ドアの移動量に比例した計測用パルスを検出し、この計測用パルスの１サイクル（周期）中に基準発振器から発振される基準パルス数Ｎ1 と、ドアが使用最低速度よりも遅く略停止したと見なされるときの計測用パルスの１サイクル中に基準発振器から発振される基準パルス数Ｎ2 とを、比較している。そして、上記各基準パルス数Ｎ1 、Ｎ2 の関係が、Ｎ1 ＞Ｎ2 となったときに、ドアが開閉端（ストロークエンド）に到達したことを検出するものである。
【０００６】
即ち、ドアが開端又は閉端に到達してドアが停止すると、計測用パルスが出力されなくなり、見かけ上、計測用パルスの周期が永遠に長くなるのと等価な状態になる。これにより、上記基準発振器から発振される基準パルス数Ｎ1 が無限大（∞）となって、ドアが略停止したと見なされるときの上記基準パルス数Ｎ2 よりも大きくなる（Ｎ1 ＞Ｎ2 ）。よって、ドアが開閉端に到達したことを検出することができる。
【０００７】
【発明が解決しようとする課題】
ところで、上記のようにドアの全ストロークを測定する際、及び上記基点を設定する際には、ドアが開閉端に到達（衝突）するときの衝撃を極力抑えるために、通常、ドアは低速度で移動させられる。ところが、このようにドアが低速度で移動しているときは、例えばドアに向かって吹く風の風圧や、ドアの移動を案内するガイドローラやレール等の磨耗、及びレールに溜まったゴミ等によるドア抵抗の影響を受け易く、これによりドアが開閉端に到達する以前にドアが停止する場合がある。この場合、上記従来技術によれば、ドアの開閉端を誤って検出してしまうことになるので、正確なドアの全ストロークを測定することができない、或いは上記基点を正確に設定できないという問題がある。このように、ドアの全ストロークを正確に測定できないままの状態、或いは上記基点を正確に設定できないままの状態で通常動作を行うと、ドアが開閉端まで完全に到達しなかったり（ドアが完全に開き切らない、又は閉じ切らない）、ドアが高速で開閉端に衝突してドアを破損したりする等の不具合を生じ、ドアを快適かつ安全にコントロールできなくなってしまう。この問題は、ドアが開き戸式の場合に、特に上記風圧の影響を非常に受け易いので、より顕著となる。
【０００８】
また、上記従来技術によれば、上記全ストロークの測定時及び上記基点の設定時以外の通常動作においても、例えば次のような問題を生じる。即ち、ドアは、通常、開動作時においては、開端付近で上記全ストロークの測定時及び上記基点の設定時と同程度の速度で低速移動し、閉動作時においては、閉端付近で上記全ストロークの測定時及び上記基点の設定時と同程度の速度で低速移動させられることが知られている。よって、この低速移動時においても、上記と同様にドア抵抗の影響を受けてドアが開閉端に到達する以前にドアが停止してしまうことがあり、この場合も、上記と同様にドアが開閉端に到達したと誤検出してしまう。
【０００９】
そこで、本発明は、ドアを快適かつ安全にコントロールするために、ドアが開端又は閉端に到達したことを確実に検出することのできる開閉端検出装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上述した目的を達成するために、本発明のうちで請求項１に記載の発明は、ドアを開閉駆動するモータと、上記ドアの移動量に比例したパルスを出力するパルス出力部と、該パルス出力部から出力されるパルスに基づいて上記ドアの位置と速度とを算出し、上記モータを制御する制御部とを、備えた自動ドア装置において、上記制御部は、所定のドアの位置に設けられた低速域における目標ドア速度と、上記ドアの速度とを、一致させるために必要な上記モータへの印加電圧を算出するモータ電圧制御手段を有し、このモータ電圧制御手段により算出された印加電圧が所定の電圧値を越えたと判断されたときに、上記ドアが開端または閉端に到達したことを検出するものである。
【００１１】
即ち、ドアが開閉端に到達して停止すると、モータに掛かる負荷が増大するので、モータ電圧制御手段によるモータへの印加電圧が上昇する。そして、このモータの印加電圧が、所定の電圧値を越えたと判断されたときに、ドアが開閉端に到達したことを検出する。なお、ここでいう所定の電圧値とは、例えば上述した風圧や、ドアの移動を案内するガイドローラやレール等の磨耗、及びレールに溜まったゴミ等によりドア抵抗が増加したり、或いは上記レール上に小石等の比較的に小さい障害物が存在する等により、モータに掛かる負荷が増大しても、これらの負荷を十分に駆動し得る程度（即ち、ドアを開閉端まで確実に移動させ得る程度）の電圧値とする。
【００１２】
従って、本請求項１に記載の発明によれば、モータ電圧制御手段が、上記所定の電圧値を越えるまでドアの速度を目標速度に一致させるための印加電圧をモータに供給しているので、ドアは、上記ドア抵抗や小さい障害物等により停止すること無く、開閉端まで到達できる。よって、上述した従来技術よりも、正確にドアの開閉端を検出できる。この技術は、例えばドアの全ストロークを自動測定するときや、上記基点を自動設定する際に、特に有効である。
【００１３】
請求項２に記載の発明は、請求項１記載の自動ドア装置の開閉端検出装置であって、上記制御部は、上記パルスをカウントすることによって求められる現在のドア位置が予め記憶したドアの開位置または閉位置と一致したことを判断する位置判断手段を有し、上記モータ電圧制御手段により算出された印加電圧が所定の電圧値を超えたと判断され、かつ、上記位置判断手段により上記ドア位置が開位置または閉位置と一致したと判断されたときに、上記ドアが開端または閉端に到達したことを検出するものである。
【００１４】
即ち、上記請求項１に記載の発明と同様に、モータ電圧制御手段によるモータへの印加電圧が、所定の電圧値を越えたか否かを判断する。これに加えて、位置判断手段により、上記パルスをカウントして求められる現在のドア位置が予め記憶したドアの開位置又は閉位置と一致しているか否かを判断する。そして、上記モータの印加電圧が所定の電圧値を越えたと判断され、かつドア位置が上記開位置又は閉位置と一致したと判断されたときに初めて、ドアが開端又は閉端に到達したことを検出する。
【００１５】
従って、本請求項２に記載の発明によれば、モータ電圧制御手段が、上記所定の電圧値を越えるまでドアの速度を目標速度に一致させるための印加電圧をモータに供給しているので、ドアは、上記ドア抵抗や小さい障害物等により停止すること無く、開閉端まで到達できる。また、例えばドアの移動経路上に比較的に大きい障害物が存在し、これによりドアの移動が妨げられて、ドアが開閉端に到達する以前に停止しても、位置判断手段により、ドア位置が開位置又は閉位置と一致したと判断されない限り、ドアが開端又は閉端に到達したと見なされないので、より正確にドアの開端及び閉端を検出できる。
【００１６】
請求項３に記載の発明は、請求項１に記載の自動ドア装置の開閉端検出装置であって、上記制御部は、上記パルスの周期が所定の周期よりも長くなったときに上記ドアが停止したと判断する停止判断手段を有し、上記モータ電圧制御手段により算出された印加電圧が所定の電圧値を超えたと判断され、かつ、上記停止判断手段により上記ドアが停止したと判断されたときに、上記ドアが開端または閉端に到達したことを検出するものである。
【００１７】
即ち、ドアが移動している状態においては、上記パルス出力部から上記パルスが出力されるが、ドアが開閉端に到達してドアが停止すると、上記パルスは出力されなくなり、見かけ上、上記パルスの周期が永遠に長くなるのと等価な状態になる。停止判断手段は、このパルスの周期が、上記所定の周期よりも長くなった時点で、ドアが停止したと判断する。これに加えて、上記請求項１に記載の発明と同様に、モータ電圧制御手段によるモータへの印加電圧が、所定の電圧値を越えたか否かを判断しており、このモータの印加電圧が所定の電圧値を越えたと判断され、かつ上記停止判断手段によりドアが停止したと判断されたときに初めて、ドアが開端又は閉端に到達したことを検出する。なお、上記所定の周期とは、例えばドアが瞬間的に停止するのではなく、完全に停止したと見なされる程度の比較的に長い時間である。
【００１８】
従って、本請求項３に記載の発明によれば、モータ電圧制御手段が、上記所定の電圧値を越えるまでドアの速度を目標速度に一致させるための印加電圧をモータに供給しているので、ドアは、上記ドア抵抗や小さい障害物等により停止すること無く、開閉端まで到達できる。また、何らかの原因により、モータの印加電圧が上記所定の電圧値を越えたとしても、停止判断手段によりドアが完全に停止したと判断されない限り、ドアが開閉端に到達したと見なされないので、より正確にドアの開閉端を検出できる。この技術は、例えばドアの全ストロークを自動測定するときや、上記基点を自動設定する際に、特に有効である。
【００２４】
【発明の実施の形態】
本発明に係る開閉端検出装置の実施の形態を、例えば引き戸式の自動ドア装置に応用したものについて、図１から図２２を参照して説明する。なお、本発明は、引き戸式の自動ドア装置に限らず、例えば開き戸式等の引き戸式以外の自動ドア装置にも適用できる。
【００２５】
自動ドア装置の概略説明
まず、本発明に係る開閉端検出装置を応用した引き戸式の自動ドア装置について、その概略を説明する。図２に、自動ドア装置全体の概略構成図を示す。同図において、２ａ、２ｂは、ドア本体で、これらドア２ａ、２ｂは、同図に示すようにドア開口を完全に閉じた閉端と、ドア２ａ、２ｂが両側に開いてドア開口を通行者が通行できるように完全に開いた開端との間を、図示しない例えば直線状のガイドレールに沿ってスライディング運動する。ドア２ａは、例えばベルト３の上部に結合されており、ドア２ｂは、ベルト３の下部に結合されている。ベルト３は、上記ガイドレールと平行を成して、従動プーリ５ａと駆動プーリとの間に掛けられており、駆動プーリ５ｂは、モータ、例えば直流モータ４によって回転駆動される。この回転駆動によって、ドア２ａ、２ｂが、閉位置と開位置との間を互いに反対方向へ直線的に移動させられる。
【００２６】
上記モータ４の制御は、制御部１によって行われる。制御部１は、例えば中央演算処理装置（以下、ＣＰＵと称す。）１４を内蔵している。このＣＰＵ１４には、制御部１の外部、例えばドア開口の無目（図示せず）等に設けられたセンサ１２から、このセンサ１２がドア２ａ、２ｂの近辺に通行人等の物体が近づいたことを検知したときに出力する物体検知信号が、入出力インターフェースユニット（以下、Ｉ／Ｏユニットと称す。）１３を介して供給されている。また、ＣＰＵ１４には、モータ４に取り付けられたエンコーダ６から出力されるエンコーダパルス（以下、単にパルスと称す。）も、Ｉ／Ｏユニット７を介して供給されている。このエンコーダ６から出力されるパルスは、モータ４の回転数、即ちドア２ａ、２ｂの移動速度（移動量）に比例した周波数（数）のパルスで、本実施の形態においては、Ａ相及びＢ相という互いに９０度位相の異なる２つのパルスが出力されている。ＣＰＵ１４は、上記物体検知信号により、ドア２ａ、２ｂ近辺における通行人等の存在を検知すると共に、上記パルスにより、ドア２ａ、２ｂの移動速度や移動方向、及び位置等を割り出し、これらの情報に基づいて、Ｉ／Ｏユニット１１を介してモータドライブユニット１０を制御している。そして、モータドライブユニット１０が、ＣＰＵ１４による制御に応じて、上記モータ４を回転させている。
【００２７】
本実施の形態においては、モータ４は、例えばパルス幅変調（ＰＷＭ）制御されている。即ち、上記モータドライブユニット１０には、ＣＰＵ１４からＩ／Ｏユニット１１を介して、例えば図３に示すようなＰＷＭ制御信号が供給されている。モータドライブユニット１０は、上記ＰＷＭ制御信号に応じて、モータ４を駆動する状態と、制動する状態とに、交互に切り換えている。例えば、ＰＷＭ制御信号がＨレベルのとき、モータ４は駆動され、ＰＷＭ制御信号がＬレベルのとき、モータ４は制動される。従って、ＰＷＭ制御信号の１周期ＷにおけるＨレベル（またはＬレベル）の期間を調整することによって、モータ４を駆動する期間と制動する期間とが調整され、これによりモータ４の回転数、ひいてはドア２ａ、２ｂの移動速度が調整される。なお、ＰＷＭ制御信号の１周期Ｗに対するＨレベルの期間の比率をデューティＤU という。
【００２８】
また、モータドライブユニット１０には、上記ＰＷＭ制御信号の他に、方向信号が、Ｉ／Ｏユニット１１を介してＣＰＵ１４から供給されている。この方向信号には、正方向信号と逆方向信号とがある。モータドライブユニット１０は、正方向信号がＨレベルのとき、例えばドア２ａ、２ｂを開く方向に移動（開動作）させるようにモータ４を回転させる。また、モータドライブユニット１０は、逆方向信号がＨレベルのとき、ドア２ａ、２ｂを閉じる方向に移動（閉動作）させるようにモータ４を回転させる。
【００２９】
上記モータ４の制御により、ドア２ａ、２ｂは、ドア位置（ストローク）に対して、例えば図４（ａ）に示すような関係で速度を変化させながら閉位置ＣＰと開位置ＯＰとの間を移動する。即ち、ドア２ａ、２ｂは、閉位置ＣＰから開動作するとき、まず所定の速度ｖOHに達するまで加速された後、この速度ｖOHで一定に移動する。そして、ドア２ａ、２ｂが、所定のブレーキ・ポイント（ＯＢＰ）に到達すると、ここから予め定めたクッション・スタート・ポイント（ＯＣＳ）までの間に、上記速度ｖOHよりもかなり遅い速度ｖOCにまで減速され、その後、この速度ｖOCで開位置ＯＰまで移動する。閉動作のときも同様に、図４（ｂ）に示すように、ドア２ａ、２ｂは、開位置ＯＰから所定の速度ｖCHに達するまで加速された後、この速度ｖCHで一定に移動する。そして、ドア２ａ、２ｂが、所定のブレーキ・ポイント（ＣＢＰ）に到達すると、ここから予め定めたクッション・スタート・ポイント（ＣＣＳ）までの間に、上記速度ｖCHよりもかなり遅い速度ｖCCにまで減速され、その後、この速度ｖCCで閉位置ＣＰまで移動する。
【００３０】
なお、ここでは、閉位置ＣＰから開位置ＯＰまでの間で、ドア２ａ、２ｂが加速される領域を加速域（ＳＡ）、一定の高速度ｖＯＨ、ｖＣＨで移動する領域を高速域（ＨＡ）、減速される領域を減速域（ＢＡ）、及び一定の低速度ｖＯＣ、ｖＣＣで移動する領域を低速域（ＣＡ）と、それぞれ定義している。また、高速域におけるドア速度ｖＯＨ、ｖＣＨについては、開動作時の速度ｖＯＨよりも閉動作時の速度ｖＣＨが遅くなるように設定されている。
【００３１】
ところで、ＣＰＵ１４は、上記のようなドア位置に対するドア速度の制御（モータ４の制御）を、エンコーダ６から出力されるパルスに基づいてフィードバック制御している。即ち、予め、ドア２ａ、２ｂを閉位置ＣＰと開位置ＯＰとの間を移動させて、このときエンコーダ６から出力されるパルス数をカウントし、これによりドア２ａ、２ｂの全移動範囲（全ストローク）に対応するパルス数Ｎを測定する。また、この全ストロークに対応するパルス数Ｎに応じて、上記ブレーキ・ポイントとクッション・スタート・ポイントを設定しておく（詳しくは、開位置ＯＰ又は閉位置ＣＰからクッション・スタート・ポイントまでの距離に対応するパルス数ＮC と、このクッション・スタート・ポイントからブレーキ・ポイントまでの距離に対応するパルス数ＮB と、を設定する）。そして、開位置ＯＰ及び閉位置ＣＰの一方、例えば閉位置ＣＰを基点として、そこから上記パルスの発生数ＮX をカウントすることによりドア位置を割り出し、この割り出したドア位置ＮX が全ストロークＮのどこに位置するのかに応じて、ドア速度を制御している。
【００３２】
なお、上記全ストロークに対応するパルス数Ｎの測定は、未だドア２ａ、２ｂの開閉端が未知の状態にあるとき、例えばこの自動ドア装置の施工時に行う。即ち、まず、ドア２ａ、２ｂを例えば手動により開端まで移動させる。次に、後述するハンディターミナル（設定装置）１６により、制御部１のＣＰＵ１４に対して、上記パルス数Ｎを測定する旨の指令を与える。これにより、ＣＰＵ１４は、現在のドア位置、即ち上記開端を開位置ＯＰとして認識する。そして、ドア２ａ、２ｂを、例えば図５に示すように、自動的に低速で、例えば上述した閉動作時の低速域におけるドア速度ｖCCと同じ速度で、閉端まで移動させると共に、エンコーダ６から出力されるパルスのカウントを開始する。そして、ドア２ａ、２ｂが閉端に到達した時点で、ドア２ａ、２ｂの移動を停止させて、この位置を閉位置ＣＰであると認識すると共に、このときまでカウントしたパルス数を上記パルス数Ｎとして、例えばＥＥＰＲＯＭにより形成されたメモリユニット１８に記憶する。
【００３３】
このパルス数Ｎを測定した後は、ＣＰＵ１４は、上述したように閉位置ＣＰを基点としてパルスをカウントするが、この基点は、自動ドア装置に電源が投入される毎に設定しなおされる。これは、例えば自動ドア装置の電源がＯＦＦ状態にあるとき、ドア２ａ、２ｂが不意に移動したり、或いは手動で動かされたりすることにより、上記基点が移動してしまうからである。この基点の設定は、次のように行われる。即ち、例えば図６に示すように、電源投入時に、ドア２ａ、２ｂが、閉位置ＣＰ及び開位置ＯＰのいずれにも位置せず、例えばこれらの間に位置しているとする。そこで、電源投入直後に、ドア２ａ、２ｂは、閉端及び開端のいずれか、例えば閉端まで、自動的に低速で、例えば上述した閉動作時の低速域におけるドア速度ｖCCと同じ速度で、移動される。そして、ドア２ａ、２ｂが閉端に到達した時点で、ドア２ａ、２ｂの移動を停止させて、この位置を閉位置ＣＰであると認識すると共に、この閉位置ＣＰを上記基点としてメモリユニット１８に記憶する。なお、ここで、閉位置ＣＰを基点とするのは、この基点を設定した後、直ぐに自動ドア装置の通常動作を開始できるからである。
【００３４】
上記ＣＰＵ１４の一連の動作は、メモリユニット１８に記憶されたプログラムに従って実行され、ＣＰＵ１４は、基準パルス発振器２０から出力される基準パルスに従って動作する。また、上述したハンディターミナル１６は、Ｉ／Ｏユニット１７を介して、ＣＰＵ１４に接続されている。そして、このハンディターミナル１６により、上述した全ストロークの測定開始指令の他に、上記基点を開位置ＯＰ及び閉位置ＣＰのどちらにするのか、自動ドア装置の通常動作時におけるドア速度ｖＯＨ、ｖＯＣ、ｖＣＨ及びｖＣＣや、ブレーキ・ポイント及びクッション・スタート・ポイント等、ドア２ａ、２ｂを動作させる際に必要な種々のパラメータ（条件）をＣＰＵ１４に設定する。なお、ハンディターミナル１６は、制御部１の外部に設けられ、自動ドア装置の施工時や上記各パラメータの設定時以外の通常動作中には、制御部１から外される。
【００３５】
上記のように全ストロークに対応するパルス数Ｎを測定する際、及び閉位置ＣＰを上記基点として設定するには、ドア２ａ、２ｂが開端及び閉端に到達したことを検出する必要がある。また、エンコーダ６のパルスは、一般に、外部ノイズの影響を受け易いことが知られている。従って、自動ドア装置の通常動作中においても、上記外部ノイズの影響によりパルスのカウント数が増減し、これによりＣＰＵ１４が認識しているドア位置と実際のドア位置との間に、差異が生じることがある。また、本実施の形態のような引き戸式の自動ドア装置においては、プーリ５ａ、５ｂ間に掛けられたベルト３がスリップする（通常は、ベルト３として歯付きベルトを用いるので、歯飛びすることを意味する。）等によっても、上記パルス数が変化することがある。よって、自動ドア装置の通常動作においても、ドア２ａ、２ｂを完全に開端及び閉端まで移動させるために、上記パルス数によりドア２ａ、２ｂの開閉位置を割り出すのとは別の手段によって、ドア２ａ、２ｂが開閉端に到達したことを検出する必要がある。そこで、ドア２ａ、２ｂが開閉端に到達したことを確実に検出することのできる本実施の形態について、以下に説明する。
【００３６】
開閉端検出装置の概念説明
まず、本発明に係る開閉端検出装置による開閉端検出技術の概念について説明する。この開閉端検出装置は、上述した制御部１により構成されている。そして、ドア２ａ、２ｂが開閉端に到達したことを、例えばモータ４の駆動電圧を監視することにより検出したり（モータ電圧リミット判断）、或いは、このモータ４の駆動電圧と、エンコーダ６から出力されるパルス（停止判断）、及びＣＰＵ１４が認識しているドア位置（位置判断）を、それぞれ監視し、これらを組み合わせることにより上記開閉端を検出するものである。以下、各検出技術について、その概念を説明する。
【００３７】
モータ電圧リミット判断について
ドア２ａ、２ｂが開閉端に到達すると、ドア２ａ、２ｂが停止し、これによりモータ４に掛かる負荷が増大し、モータ４の駆動電圧が上昇する。このモータ４の駆動電圧が、所定の電圧値を越えたと判断したときに、ドア２ａ、２ｂが開閉端に到達したことを検出するのが、本モータ電圧値判断である。なお、ここでは、モータ４をＰＷＭ制御しているので、駆動電圧値を監視するのではなくて、上述したデューティＤU を監視する。
【００３８】
図１に、ドア速度とモータ４のデューティＤU との関係を示す。なお、上述したように、開閉端を検出する際は、ドア２ａ、２ｂは、通常動作時における低速域のドア速度ｖOC、ｖCCと同じ速度で移動する。即ち、図１に示すように、ドア２ａ、２ｂが上記速度ｖOC又はｖCC一定で移動しているとき、ドア２ａ、２ｂが開端又は閉端に到達すると、ドア２ａ、２ｂは停止し、その時点からモータ４のデューティＤU が上昇する。このデューティＤU が、所定の上限値ＤL よりも大きくったときに、ドア２ａ、２ｂが開端又は閉端に到達したことを検出する。
【００３９】
なお、ここでいうデューティＤU の上限値ＤL とは、例えば上述した風圧や、ドア２ａ、２ｂの移動を案内するガイドローラやレール等の磨耗、及びレールに溜まったゴミ等によりドア抵抗が増加したり、或いは上記レール上に小石等の比較的に小さい障害物が存在する等により、モータ４に掛かる負荷が増大しても、これらの負荷を十分に駆動し得る程度（即ち、ドア２ａ、２ｂを開閉端まで確実に移動させ得る程度）のデューティＤU とする。
【００４０】
また、上記デューティ比Ｄｕが上限値ＤＬよりも大きくなったと言うことについては、後述の図１６に示すモータ電圧制御プログラムに従って、ＣＰＵ１４が判断する。そして、上記上限値ＤＬについては、上述したハンディターミナル１６により設定される。また、このモータ電圧リミット判断は、ＰＷＭ制御以外の制御方法により駆動されるモータについても適用できる。
【００４１】
停止判断について
ドア２ａ、２ｂが開端又は閉端に到達すると、ドア２ａ、２ｂは停止し、エンコーダ６からパルスが出力されなくなる。これにより、上記パルスは、見かけ上、周期が永遠に長くなるのと等価な状態になる。このパルスの周期が、所定の周期よりも長くなった時点で、ドア２ａ、２ｂが停止したと判断するのが、本停止判断である。なお、本実施の形態においては、上記パルスのエッジ（立ち上がり、立ち下がり）間を計時して、その計時時間が所定の規定時間よりも長くなったときに、ドア２ａ、２ｂが停止したと判断する。なお、上記所定の規定時間とは、例えばドア２ａ、２ｂが瞬間的に停止するのではなく、完全に停止したと見なされる程度の比較的に長い時間である。
【００４２】
即ち、上述したように、エンコーダ６からはＡ相及びＢ相という互いに９０°位相のずれた２つのパルスが出力されている。よって、Ａ相及びＢ相の各パルスのエッジ間（周期）を計時するのではなく、図７に示すように、双方のエッジのうち、互いに隣接するエッジ間を計時する。このエッジ間隔の計時については、基準パルス発振器２０から出力される基準パルスが、上記エッジ間に何個出力されるかをカウントすることにより行っている。従って、上記エッジ間隔中にカウントした基準パルス数ｎが、予め定めた基準パルス数ｎｔよりも大きくなったとき（ｎ＞ｎｔ）に、ドア２ａ、２ｂが停止したと判断している。
【００４３】
なお、この停止判断は、後述の図１８に示す停止判断プログラムに従って、ＣＰＵ１４が判断する。また、ドア２ａ、２ｂが停止したと見なされる基準となる上記基準パルス数ｎt は、上述したハンディターミナル１６により設定される。なお、エンコーダ６から出力されるＡ相及びＢ相のそれぞれのパルスのエッジ間隔を別々に計時することによっても、本停止判断を実現できるが、上記のようにＡ相及びＢ相の双方のエッジのうち、互いに隣接するエッジ間を計時することにより、Ａ相及びＢ相それぞれの各エッジ間を計時するよりも速く停止判断を実現することができる。
【００４４】
位置判断について
上述したように、ＣＰＵ１４は、エンコーダ６から出力されるパルス数をカウントすることにより、ドア位置を認識している。よって、このパルス数から得られるドア位置により、ドア２ａ、２ｂが開端又は閉端に位置することを、若しくは開端及び閉端近辺に位置することを確認することができる。なお、この開端及び閉端近辺という許容範囲があるのは、上述したように、エンコーダ６が外部ノイズの影響を受け易いこと、及びベルト３がスリップする等により、上記パルス数が変化し、これによりＣＰＵ１４が認識しているドア位置と実際のドア位置との間に、差異が生じる場合があることによる。よって、この差異を吸収する（影響を受けないようにする）ためには、ドア２ａ、２ｂが開端又は閉端に位置すると見なされる許容範囲を設定する必要がある。
【００４５】
即ち、図８に示すように、ＣＰＵ１４が認識している開位置ＯＰに対して、所定の許容範囲±αを設定する。そして、ドア２ａ、２ｂが開動作する場合、ドア２ａ、２ｂが開端に到達するまでの間にカウントされたパルス数ＮX と、予め測定した全ストロークに対応するパルス数Ｎとの間に、差異が生じても、実際にカウントした上記パルス数ＮX が、全ストロークに対応するパルス数Ｎに対して上記許容範囲±α内であれば（〔Ｎ−α〕≦ＮX ≦〔Ｎ＋α〕）、ドア２ａ、２ｂは、開端に位置すると見なされる。これと同様に、図９に示すように、ＣＰＵ１４が認識している閉位置ＣＰに対しても、上記許容範囲±αを設定する。そして、ドア２ａ、２ｂが閉動作する場合、ドア２ａ、２ｂが閉端に到達するまでの間にカウントされたパルス数ＮX と、全ストロークに対応するパルス数Ｎとの間に、差異が生じても、実際にカウントした上記パルス数ＮX が、全ストロークに対応するパルス数Ｎに対して上記許容範囲±α内であれば（〔Ｎ−α〕≦ＮX ≦〔Ｎ＋α〕）、ドア２ａ、２ｂは、閉端に位置すると見なされる。
【００４６】
なお、上記許容範囲±αについては、エンコーダ６のパルスが若干の外部ノイズの影響を受けたり、またベルト３が若干スリップした程度に相当する例えば数ｍｍ程度に相当する値（数パルス程度）とし、例えばα＝８パルス程度とする。また、本実施の形態においては、上記パルス数ＮX のカウントは、ドア２ａ、２ｂの開動作時に加算され、閉動作時には減算される。そして、上記のように実際にカウントしたパルス数ＮX と全ストロークに対応するパルス数Ｎとの間に差異が生じても、本実施の形態においては、ドア２ａ、２ｂが閉端に到達する毎に、上記パルス数ＮX をリセットしている（例えばＮX ＝０にする）。これにより、上記差異が蓄積されるのを防止している。
【００４７】
ところで、上記のようにパルス数ＮX とパルスＮとの間に差異が生じる原因として、次のようなものが考えられる。
【００４８】
例えば、ドア２ａ、２ｂが開動作の状態にあるとき、図１０に示すように、ガイドレール４０上に小石５０が存在し、これによりドア２ａ、２ｂが開端、例えばストッパ３０までに到達しない場合である。この場合、実際にカウントしたパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも小さい値となる（パルス数ＮX が、外部ノイズの影響やベルト３のスリップ等により増減していない場合。）。但し、上記パルス数ＮX が、パルス数Ｎの許容範囲−α内の値であれば、ドア２ａ、２ｂは、開端に到達したと見なされる。
【００４９】
また、実際のパルス数ＮX が、外部ノイズの影響やベルト３のスリップ等により増加したときは、例えば図１１に示すようになる。即ち、ドア２ａ、２ｂが、ストッパ３０に到達した時点でのパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも大きい値となる。但し、上記パルス数ＮX が、パルス数Ｎの許容範囲＋α内の値であれば、ドア２ａ、２ｂは、開端に到達したと見なされる。
【００５０】
更に、例えば図１２に示すように、ドア２ａ、２ｂの衝突により、ストッパ３０がずれた場合、実際のパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも大きい値となる（パルス数ＮX が、外部ノイズの影響やベルト３のスリップ等により増減していない場合。）。但し、この場合も、上記パルス数ＮX が、パルス数Ｎの許容範囲＋α内の値であれば、ドア２ａ、２ｂは、開端に到達したと見なされる。
【００５１】
そして、実際のパルス数ＮX が、何らかの影響により減少したときは、例えば図１３に示すようになる。即ち、ドア２ａ、２ｂが、ストッパ３０に到達した時点でのパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも小さい値となる。但し、この場合も、上記パルス数ＮX が、パルス数Ｎの許容範囲−α内の値であれば、ドア２ａ、２ｂは、開端に到達したと見なされる。
【００５２】
一方、ドア２ａ、２ｂが閉動作の状態にあるときも、上記開動作時と同様である。例えば、実際のパルス数ＮX が、外部ノイズの影響やベルト３のスリップ等により増加したときは、図１４に示すようになる。即ち、ドア２ａ、２ｂが、閉端、例えば立枠６０に到達した時点でのパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも大きい値となる。但し、上記パルス数ＮX が、パルス数Ｎの許容範囲＋α内の値であれば、ドア２ａ、２ｂは、閉端に到達したと見なされる。
【００５３】
また、実際のパルス数ＮX が、何らかの影響により減少したときは、例えば図１５に示すようになる。即ち、ドア２ａ、２ｂが、立枠６０に到達した時点でのパルス数ＮX は、全ストロークに対応するパルス数Ｎよりも小さい値となる。但し、この場合も、上記パルス数ＮX が、パルス数Ｎの許容範囲−α内の値であれば、ドア２ａ、２ｂは、閉端に到達したと見なされる。
【００５４】
プログラムについて
次に、上記開閉端検出を実現するために、ＣＰＵ１４が実行するプログラムについて説明する。なお、ＣＰＵ１４は、例えば図１６に示すモータ電圧制御プログラム、及び図１７、図１９、図２０にそれぞれ示すドア開閉端検出プログラム（１）、（２）、（３）のうちのいずれかにより、ドア２ａ、２ｂが開端又は閉端に到達したことを検出する。なお、図１９及び図２０に示すドア開閉端検出プログラムにおいては、図１８に示す停止判断プログラムをサブルーチンとして使用している。また、ＣＰＵ１４は、これらのプログラムを、自動ドア装置を制御するための他のプログラムと同時に実行する。以下、各プログラムについて、各図を参照して個々に説明する。
【００５５】
モータ電圧制御プログラムについて
このプログラムは、モータ４に印加する駆動電圧の制御するためのもので、ＣＰＵ１４は、図１６に示すフローチャートに従って動作する。
【００５６】
即ち、ＣＰＵ１４は、まず、ドア２ａ、２ｂが、低速動作中か否かを判断する（ステップＳ２）。ここで、低速動作中でない（Ｎｏ）場合は、本開閉端検出装置（自動ドア装置）が開閉端を検出する状態に無い、例えばドア２ａ、２ｂが停止状態にあるか、若しくは上述した加速域、高速域、減速域のいずれかに位置していると判断し、このモータ電圧制御プログラムを抜けて、他のプログラムの処理を実行する。
【００５７】
上記ステップＳ２において、低速動作中である（Ｙｅｓ）と判断された場合は、次に、エンコーダ６のパルスから現在のドア速度を算出し（ステップＳ４）、この算出したドア速度と目標とする速度（即ち、ｖOC又はｖCC）とを比較する（ステップＳ６）。そして、このステップＳ６において、現在のドア速度が目標とする速度（即ち、ｖOC又はｖCC）と略等しいと判断した場合、ＣＰＵ１４は、ドア２ａ、２ｂが目標速度で正常に移動しているものと見なし、このモータ電圧制御プログラムを抜けて、他のプログラムの処理を実行する。また、上記ステップＳ６において、現在のドア速度が目標とする速度よりも大きいと判断した場合、ＣＰＵ１４は、ドア速度が現在の速度よりも遅くなるように、モータ４を制御するＰＷＭ制御信号のデューティＤU を下げた後（ステップＳ８）、このモータ電圧制御プログラムを抜ける。更に、ステップＳ６において、現在のドア速度が目標とする速度よりも小さいと判断した場合、ＣＰＵ１４は、ドア速度が目標速度に近づくように、ＰＷＭ制御信号のデューティＤU を上げた後（ステップＳ１０）、ステップＳ１２へと進む。
【００５８】
ステップＳ１２においては、上記デューティＤU が、上述した上限値ＤL よりも大きいか否かを判断する。ここで、現在のデューティＤU が上限値ＤL 以下の場合（Ｎｏ）には、このモータ電圧制御プログラムを抜ける。一方、デューティＤU が、上限値ＤL を越えると（Ｙｅｓ）、モータ４に印加する駆動電圧が、ドア２ａ、２ｂを十分に移動させ得る限界値を越えたと判断し（ステップＳ１４）、これによりドア２ａ、２ｂが開閉端に到達したことを検出する。
【００５９】
このように、本プログラムによれば、ＣＰＵ１４は、デューティＤU の上限値ＤL を越えるまでドア速度を目標速度に一致させるための印加電圧をモータ４に供給し続ける。従って、ドア２ａ、２ｂは、上述した風圧やゴミ等によるドア抵抗や小さい障害物等によって停止すること無く、開閉端まで到達できる。よって、上述した従来技術よりも、正確にドア２ａ、２ｂの開閉端を検出できる。なお、本プログラムによる開閉端検出は、例えばドア２ａ、２ｂの全ストロークを自動測定するときや、上述した基点（閉位置ＣＰ）を自動設定する際に、特に有効である。
【００６０】
開閉端検出プログラム（１）について
本プログラムは、上記モータ電圧制御プログラムに加えて、エンコーダ６のパルスから得られるドア位置を確認することにより、ドア２ａ、２ｂが開端又は閉端に到達したことを検出するものである。
【００６１】
即ち、ＣＰＵ１４は、エンコーダ６のパルスにより、現在のドア位置ＮX を計算する（ステップＳ２２）。そして、この計算により得た現在のドア位置ＮX が、ＣＰＵ１４自体が認識している開位置ＯＰ及び閉位置ＣＰのいずれかの一致したか否かを判断する（ステップＳ２４、Ｓ２６）。ここで、ドア位置ＮX が、開位置ＯＰ及び閉位置ＣＰのいずれとも一致していない場合（Ｎｏ）は、ＣＰＵ１４は、ドア２ａ、２ｂが開端及び閉端のいずれにも到達していないものと見なし、この開閉端検出プログラムを抜けて、他のプログラムの処理を実行する。
【００６２】
一方、上記ステップＳ２４において、現在のドア位置ＮＸが、開位置ＯＰと一致したと判断された場合（Ｙｅｓ）は、次に、上述したモータ電圧リミット判断があったか否かを確認する（ステップＳ２８）。このステップＳ２８において、モータ電圧リミット判断が無いと判断された場合（Ｎｏ）は、ドア２ａ、２ｂが開端に到達していないと見なされるので、ＣＰＵ１４は、この開閉端検出プログラムを抜ける。これとは反対に、モータ電圧リミット判断があったと判断された場合（Ｙｅｓ）は、ＣＰＵ１４は、ドア２ａ、２ｂが開端に到達したと判断し、即ち開端を検出する（ステップＳ３０）。
【００６３】
また、上記ステップＳ２４において、現在のドア位置ＮＸが、開位置ＯＰと一致したと判断されなくても、次のステップＳ２６において、ドア位置ＮＸが閉位置ＣＰと一致したと判断された場合（Ｙｅｓ）は、ステップＳ３２へと進む。そして、このステップＳ３２において、上述したモータ電圧リミット判断があったか否かを確認し、モータ電圧リミット判断が無いと判断された場合（Ｎｏ）は、ドア２ａ、２ｂが閉端に到達していないと見なされるので、ＣＰＵ１４は、この開閉端検出プログラムを抜ける。これとは反対に、モータ電圧リミット判断があったと判断された場合（Ｙｅｓ）は、ＣＰＵ１４は、ドア２ａ、２ｂが閉端に到達したと判断し、即ち閉端を検出する（ステップＳ３４）。
【００６４】
上記のように、本プログラムよれば、モータ電圧リミット判断が成され、かつドア位置が開位置ＯＰ又は閉位置ＣＰと一致したと判断されたときに初めて、ドア２ａ、２ｂが開端又は閉端に到達したことを検出する。従って、上述したモータ電圧制御プログラムを実行した場合と同様に、ドア２ａ、２ｂは、上述した風圧やゴミ等によるドア抵抗や小さい障害物等によって停止すること無く、開閉端まで到達できる。また、例えばドア２ａ、２ｂの移動経路上に比較的に大きい障害物が存在し、これによりドア２ａ、２ｂが開閉端に到達する以前に停止しても、ドア位置が開位置ＯＰ又は閉位置ＣＰと一致したと判断されない限り、ドアが開端又は閉端に到達したと見なされないので、より正確にドア２ａ、２ｂの開端及び閉端を検出できる。
【００６５】
なお、本プログラムによる開閉端検出は、例えば通常動作時に、特に有効である。また、ステップＳ２４、Ｓ２６において、開位置ＯＰ及び閉位置ＣＰに、それぞれ所定の許容範囲±αを持たせてもよい。即ち、ステップＳ２４、Ｓ２６を、「現在のドア位置ＮＸが、開位置ＯＰ、閉位置ＣＰと一致したか」ではなく、「現在のドア位置ＮＸが開位置ＯＰの許容範囲±α内、閉位置ＣＰの許容範囲±α内に位置するか」としてもよい。
【００６６】
開閉端検出プログラム（２）について
本プログラムは、上記モータ電圧制御プログラムに加えて、例えば図１８に示すような停止判断プログラムも同時に実行し、これら２つのプログラムによりドア２ａ、２ｂが略完全に停止したことを確認することにより、開閉端を検出するものである。
【００６７】
まず、上記停止判断プログラムについて、図１８を参照して説明する。例えば、今、ドア２ａ、２ｂが或る領域を移動中であるとする。この状態で、この停止判断プログラムが実行されると、まず、ＣＰＵ１４は、Ａ相またはＢ相が立ち上がったか立ち下がったかを判断することにより、Ａ相及びＢ相に関係なく、またパルスの立ち上がり及び立ち下がりに関係なく、エンコーダ６からのパルスのエッジが入力されたか否かを判断する（ステップＳ４２）。ここで、上記パルスのエッジが入力された場合（Ｙｅｓ）、現在カウントしている基準パルス数ｎをリセットした後（ステップＳ４４）、この基準パルスｎのカウントを再び開始して、この停止判断プログラムを抜ける。
【００６８】
一方、上記ステップＳ４２において、エンコーダ６からのパルスのエッジが入力されていないと判断された場合は（Ｎｏ）、ステップＳ４８に進み、ここで、現在カウントされている基準パルス数ｎが、上述した所定値ｎt よりも大きいか否かを判断する。このステップＳ４８において、上記基準パルス数ｎが、所定値ｎt よりも小さい場合は（Ｎｏ）、この停止判断プログラムを抜けて次の処理へと進む。一方、上記基準パルス数ｎが、上記所定値ｎt よりも大きいとされた場合は（Ｙｅｓ）、ＣＰＵ１４は、ドア２ａ、２ｂが略停止したと見なし、停止判断を下す（ステップＳ５０）。
【００６９】
上記のように構成された停止判断プログラムをサブルーチンとして、本開閉端検出プログラムは、図１９に示すように構成されている。
【００７０】
即ち、ＣＰＵ１４は、まず、ドア２ａ、２ｂが、低速動作中か否かを判断する（ステップＳ６２）。ここで、低速動作中でない（Ｎｏ）場合は、本開閉端検出装置（自動ドア装置）が開閉端を検出する状態に無い、例えばドア２ａ、２ｂが停止状態にあるか、若しくは上述した加速域、高速域、減速域のいずれかに位置していると判断し、この開閉端検出プログラムを抜けて、他のプログラムの処理を実行する。
【００７１】
上記ステップＳ６２において、低速動作中である（Ｙｅｓ）と判断された場合は、次に、現在のドア２ａ、２ｂの移動方向を記憶する（ステップＳ６４）。なお、このドア２ａ、２ｂの移動方向については、上述したＣＰＵ１４からモータドライブユニット１０に供給される方向信号に基づいて判断される。そして、エンコーダ６のパルスから現在のドア速度を算出し（ステップＳ６６）、この算出したドア速度と目標とする速度（即ち、ｖＯＣ又はｖＣＣ）とを比較する（ステップＳ６８）。
【００７２】
このステップＳ６８において、現在のドア速度が目標とする速度（即ち、ｖOC又はｖCC）と略等しいと判断した場合、ＣＰＵ１４は、ドア２ａ、２ｂが目標速度で正常に移動しているものと見なし、このモータ電圧制御プログラムを抜けて、他のプログラムの処理を実行する。また、上記ステップＳ６８において、現在のドア速度が目標とする速度よりも大きいと判断した場合、ＣＰＵ１４は、ドア速度が現在の速度よりも遅くなるように、モータ４を制御するＰＷＭ制御信号のデューティＤU を下げた後（ステップＳ７０）、このモータ電圧制御プログラムを抜ける。更に、ステップＳ６８において、現在のドア速度が目標とする速度よりも小さいと判断した場合、ＣＰＵ１４は、ドア速度が目標速度に近づくように、ＰＷＭ制御信号のデューティＤU を上げた後（ステップＳ７２）、ステップＳ７４へと進む。
【００７３】
ステップＳ７４においては、上記デューティＤU が、上述した上限値ＤL よりも大きいか否かを判断する。ここで、現在のデューティＤU が上限値ＤL 以下の場合（Ｎｏ）には、このモータ電圧制御プログラムを抜ける。一方、デューティＤU が、上限値ＤL を越えると（Ｙｅｓ）、モータ４に印加する駆動電圧が、ドア２ａ、２ｂを十分に移動させ得る限界値を越えたと判断し（ステップＳ７６）、次のステップＳ７８へと進む。
【００７４】
ステップＳ７８においては、上述の停止判断プログラムにより、停止判断が成されたか否かを判断する。ここで、停止判断が成されていないと判断された場合は（Ｎｏ）、ＣＰＵ１４は、ドア２ａ、２ｂが完全に停止した状態ではないと見なし、この開閉端検出プログラムを抜ける。一方、停止判断が成されたと判断された場合には（Ｙｅｓ）、ＣＰＵ１４は、ドア２ａ、２ｂが完全に停止したと見なし、上記ステップＳ６４で記憶したドア２ａ、２ｂの移動方向を確認する（ステップＳ８０）。ここで、ドア２ａ、２ｂが、開動作中であると判断されることにより、ドア２ａ、２ｂが開端に到達したことを検出し、閉動作中であると判断されることにより、ドア２ａ、２ｂが閉端に到達したことを検出する。
【００７５】
上記のように、本プログラムによれば、モータ電圧リミット判断が成され、かつ停止判断が成されたときに初めて、ドア２ａ、２ｂが開端又は閉端に到達したことを検出する。従って、ドア２ａ、２ｂは、上述した風圧やゴミ等によるドア抵抗や小さい障害物等によって停止すること無く、開閉端まで確実に到達でき、即ちより確実な開閉端検出を実現できる。
【００７６】
開閉端検出プログラム（３）について
本プログラムは、上記停止判断プログラムに加えて、上述したエンコーダ６のパルスから得られるドア位置を確認することにより、ドア２ａ、２ｂが開端又は閉端に到達したことを検出するものである。
【００７７】
即ち、ＣＰＵ１４は、エンコーダ６のパルスにより、現在のドア位置ＮX を計算する（ステップＳ９２）。そして、この計算により得た現在のドア位置ＮX が、ＣＰＵ１４自体が認識している開位置ＯＰ及び閉位置ＣＰのいずれかの許容範囲（Ｎ±α）にあるか否かを判断する（ステップＳ９４、Ｓ９６）。ここで、ドア位置ＮX が、開位置ＯＰ及び閉位置ＣＰのいずれの許容範囲内に位置しない場合（Ｎｏ）は、ＣＰＵ１４は、ドア２ａ、２ｂが開端及び閉端のいずれにも到達していないものと見なし、この開閉端検出プログラムを抜けて、他のプログラムの処理を実行する。
【００７８】
一方、上記ステップＳ９４において、現在のドア位置ＮＸが、開位置ＯＰの許容範囲内にあると判断された場合は、上述した停止判断があったか否かを確認する（ステップＳ９８）。このステップＳ９８において、停止判断が無いと判断された場合（Ｎｏ）は、ドア２ａ、２ｂが停止していない、即ち開端に到達していないと見なされるので、ＣＰＵ１４は、この開閉端検出プログラムを抜ける。これとは反対に、停止判断があったと判断された場合（Ｙｅｓ）は、ＣＰＵ１４は、ドア２ａ、２ｂが開端に到達したと判断し、即ち開端を検出する（ステップＳ１００）。
【００７９】
また、上記ステップＳ９４において、現在のドア位置ＮＸが、開位置ＯＰの許容範囲内にあると判断されなくても、次のステップＳ９６において、ドア位置ＮＸが閉位置ＣＰの許容範囲内にあるされた場合は、ステップＳ１０２へと進む。そして、このステップＳ１０２において、上述した停止判断があったか否かを確認し、停止判断が無いと判断された場合（Ｎｏ）は、ドア２ａ、２ｂが停止していない、即ち閉端に到達していないと見なされるので、ＣＰＵ１４は、この開閉端検出プログラムを抜ける。これとは反対に、停止判断があったと判断された場合（Ｙｅｓ）は、ＣＰＵ１４は、ドア２ａ、２ｂが閉端に到達したと判断し、即ち閉端を検出する（ステップＳ１０４）。
【００８０】
上記のように、本プログラムよれば、停止判断が成され、かつドア位置が開位置ＯＰ又は閉位置ＣＰと一致したと判断されたときに初めて、ドア２ａ、２ｂが開端又は閉端に到達したことを検出する。従って、例えばドア２ａ、２ｂの移動経路上に比較的に大きい障害物が存在し、これによりドア２ａ、２ｂが開閉端に到達する以前に停止しても、ドア位置が開位置ＯＰ又は閉位置ＣＰと一致したと判断されない限り、ドアが開端又は閉端に到達したと見なされないので、より正確にドア２ａ、２ｂの開端及び閉端を検出できる。
【００８１】
なお、ステップＳ９４、Ｓ９６において、開位置ＯＰ及び閉位置ＣＰに、それぞれ所定の許容範囲±αを持たせない場合は、各ステップＳ９４、Ｓ９６を、例えば「現在のドア位置ＮX が開位置ＯＰの許容範囲±α内、閉位置ＣＰの許容範囲±α内か」ではなく、「現在のドア位置ＮX が、開位置ＯＰ、閉位置ＣＰと一致したか」とする。
【００８２】
【発明の効果】
以上のように、本発明によれば、上述した従来技術よりも、ドアが開閉端に到達したことを確実に検出することができるという効果がある。従って、ドアの全ストロークを正確に測定でき、またパルスをカウントする基点についても正確に設定でき、更にドアを開閉端まで確実に到達させる（ドアを完全に開き切り、完全に閉じ切る）ことができる。よって、ドアを高速で開閉端に衝突させ、これによりドアを破損してしまうというような事故も防止できる。即ち、本発明の開閉端検出装置を自動ドア装置に適用することによって、ドアを快適かつ安全にコントロールすることができるという効果がある。
【図面の簡単な説明】
【図１】本発明に係る開閉端検出装置の一実施の形態の示す図で、モータ電圧によりドアの開閉端を検出するという概念を説明するための図である。
【図２】同実施の形態の開閉端検出装置を応用した自動ドア装置の全体の概略構成を示す図である。
【図３】同実施の形態において、モータを制御するためのＰＷＭ制御信号のタイミングチャートである。
【図４】同実施の形態の開閉端検出装置を応用した自動ドア装置において、ドアのストロークに対するドア速度の関係を示すストローク線図、及びストロークに対するエンコーダパルスのカウント数の関係を示す図で、（ａ）は、開動作時、（ｂ）は、閉動作時の図である。
【図５】同実施の形態の開閉端検出装置を応用した自動ドア装置において、本自動ドア装置の施工直時にストロークを自動計測する際のストローク線図である。
【図６】同実施の形態の開閉端検出装置を応用した自動ドア装置において、本自動ドア装置に電源を投入した直後のドアの動作を示すストローク線図である。
【図７】同実施の形態における停止判断の概略を説明するための基準パルスとエンコーダパルスとのタイミングチャートである。
【図８】同実施の形態において、ドアの全ストロークに対する開位置の許容範囲を示す図である。
【図９】同実施の形態において、ドアの全ストロークに対する閉位置の許容範囲を示す図である。
【図１０】同実施の形態において、実際のドア位置と、制御部が認識している開位置とが、一致していない状態を示す図である。
【図１１】図１０と同様の状態を示す図である。
【図１２】図１０及び図１１と同様の状態を示す図である。
【図１３】図１０乃至図１２と同様の状態を示す図である。
【図１４】同実施の形態において、実際のドア位置と、制御部が認識している閉位置とが、一致していない状態を示す図である。
【図１５】図１４と同様の状態を示す図である。
【図１６】同実施の形態におけるモータ電圧制御プログラムのフローチャートである。
【図１７】同実施の形態において、ドア位置とモータ電圧とによりドアの開閉端を検出するプログラムのフローチャートである。
【図１８】同実施の形態における停止判断プログラムのフローチャートである。
【図１９】同実施の形態において、モータ電圧とドアの停止判断とによりドアの開閉端を検出するプログラムのフローチャートである。
【図２０】同実施の形態において、ドア位置とドアの停止判断とによりドアの開閉端を検出するプログラムのフローチャートである。
【符号の説明】
１  制御部
２ａ、２ｂ  ドア
４  直流モータ
６  エンコーダ（パルス出力手段）
１０  モータドライブユニット
１２  センサ
１４  中央演算処理装置（ＣＰＵ）
１６  ハンディターミナル
２０  基準パルス発生器
【図１】
0003698817.tif 000002
【図３】
0003698817.tif 000003
【図２】
0003698817.tif 000004
【図４】
0003698817.tif 000005
【図５】
0003698817.tif 000006
【図６】
0003698817.tif 000007
【図７】
0003698817.tif 000008
【図８】
0003698817.tif 000009
【図９】
0003698817.tif 000010
【図１０】
0003698817.tif 000011
【図１１】
0003698817.tif 000012
【図１２】
0003698817.tif 000013
【図１３】
0003698817.tif 000014
【図１４】
0003698817.tif 000015
【図１５】
0003698817.tif 000016
【図１６】
0003698817.tif 000017
【図１７】
0003698817.tif 000018
【図１８】
0003698817.tif 000019
【図１９】
0003698817.tif 000020
【図２０】
0003698817.tif 000021