(57)【特許請求の範囲】
【請求項１】
可動部材の線形位置を求めるための装置であって、
各々が少なくともｎ個のキャラクタを有する一連のデータフィールドを含むコードが表面に配置され、前記コード内において所定の間隔でフレーム同期シンボルが形成された可動部材と、
前記可動部材における少なくとも１個のフレーム同期シンボルとｎ個のキャラクタを有するコードを含む所定部分の前記コードを読み取るように作動可能であり、読み取った前記コードの関数としてデータ信号を送信するように作動可能なセンサーと、
前記データ信号を受信するため前記センサーに連結され、前記データ信号の関数として、前記可動部材の前記線形位置を表わす位置信号を送信するように作動可能な処理装置と、
を備えることを特徴とする装置。
【請求項２】
前記処理装置が、第１のマスクを定め、相関式の関数として、前記可動部材の前記所定部分の前記コードに前記第１のマスクを重ね合わせるように作動可能であることを特徴とする請求項１に記載の装置。
【請求項３】
前記第１のマスクが、前記コードのｎ個のキャラクタのそれぞれの部分を含むことを特徴とする請求項１に記載の装置。
【請求項４】
前記第１のマスクが、前記コードのｎ個のキャラクタのそれぞれの不鮮明な部分を含むことを特徴とする請求項１に記載の装置。
【請求項５】
前記相関式が、
0003943924.tif 000004
であって、ここでｘiは、前記可動部材における前記所定部分の所定区分上の前記マスクの明るさであり、
ｙiは、前記可動部材における前記所定部分の所定区分上で読み取られる前記コードの明るさであることを特徴とする請求項２に記載の装置。
【請求項６】
前記処理装置が、第２のマスクを定め、相関式の関数として、前記可動部材の前記所定部分上の前記コードに前記第２のマスクを重ね合わせるるように作動可能であることを特徴とする請求項１に記載の装置。
【請求項７】
前記第２のマスクが、前記コードのｎ個のキャラクタを有することを特徴とする請求項６に記載の装置。
【請求項８】
前記第２のマスクが、前記コードの不鮮明なｎ個のキャラクタを有することを特徴とする請求項６に記載の装置。
【請求項９】
前記コードの各キャラクタが、前記可動部材の運動方向に所定の幅を有し、前記所定の幅が、第１の色を有する第１の所定部分と第２の色を有する第２の所定部分を備えることを特徴とする請求項１に記載の装置。
【請求項１０】
前記フレーム同期シンボルが、前記可動部材の運動方向に単色の所定の幅を有することを特徴とする請求項１に記載の装置。
【請求項１１】
前記処理装置が、前記可動部材の最終的に分かっている線形位置の関数として、前記第１のマスクを定め、重ね合わせるように作動可能であることを特徴とする、請求項１に記載の装置。
【請求項１２】
少なくともｎ個のキャラクタを有する一連のデータフィールドを含むコードと、前記コード内において所定の間隔で形成されたフレーム同期シンボルとが表面に配置された可動部材の線形位置を求める方法であって、
前記可動部材における少なくとも１つのフレーム同期シンボルとｎ個のキャラクタを有するコードとを含む所定部分の前記コードを読み取り、
相関式の関数として、前記読取りコードに第１のマスクを重ね合せ、
前記相関式が所定の特性を有する時に、前記第１のマスクの前記重ね合わせの関数として、前記可動部材の線形位置を求める、
ことからなることを特徴とする方法。
【請求項１３】
前記第１のマスクが、前記コードのｎ個のキャラクタのそれぞれの部分を含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記第１のマスクが前記コードのｎ個のキャラクタのそれぞれの不鮮明な部分を含むことを特徴とする請求項１２に記載の方法。
【請求項１５】
前記相関式が、
0003943924.tif 000005
であって、ここで、ｘiは、前記可動部材における前記所定部分の所定区分上の前記マスクの明るさであり、
ｙiは、前記可動部材における前記所定部分の所定区分上の読み取られる前記コードの明るさであることを特徴とする請求項１２に記載の方法。
【請求項１６】
相関式の関数として、前記読取りコードに第２のマスクをさらに重ね合わせることを含む請求項１２に記載の方法。
【請求項１７】
前記第２のマスクが、前記コードのｎ個のキャラクタを含むことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記第２のマスクが、前記コードの不鮮明なｎ個のキャラクタを含むことを特徴とする、請求項１６に記載の方法。
【請求項１９】
前記コードの各キャラクタが、前記可動部材の運動方向に所定の幅を有し、前記所定の幅が、第１の色を有する第１の所定部分と第２の色を有する第２の所定部分を含むことを特徴とする請求項１２に記載の方法。
【請求項２０】
前記フレーム同期シンボルが、前記可動部材の運動方向に単色の所定の幅を有することを特徴とする請求項１２に記載の方法。
【請求項２１】
相関式の関数として、前記読取りコードに前記第１のマスクを重ね合わせることが、相関式及び前記可動部材の最終的に分かっている線形位置の関数として、前記読取りコードに前記第１のマスクを重ね合わせることを含むことを特徴とする請求項１２に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般的に可動部材の位置を求めることに関し、より詳細には、可動部材の線形位置を求めることに関する。
【０００２】
【従来の技術】
可動部材の線形位置を求めることには種々の応用がある。例えば、モータグレーダのブレード、又は、ホイールローダ又は掘削機のバケットなどのような、作業機械の作業機具の位置を知るために、ブレード／バケットの位置を制御する油圧シリンダの伸び量が計測されることが多い。これら油圧シリンダは、多くの場合かなり長く、数メートルまでの範囲の長さである。
これまでは、油圧シリンダのロッドに、通常のバーコード形式のマーキングが行われていた。このバーコードを読み取ることにより、シリンダ内のロッドの位置を求めることができる。
【０００３】
【発明が解決しようとする課題】
このシステムの問題の１つは、ロッドの大きな長さに対応させる（十分なコード数を与えるために）、通常は、複合マーキングが必要とされることである。これら複合マーキングは、デコードのため、比較的多量の処理電力を必要とする。複合の少ないコードを用いることにより処理電力を減らすことができるが、この結果は、（コードの組み合わせ自体が尽きるため）通常はコードによりマーク付けされるロッドの長さが短くなる。
【０００４】
【課題を解決するための手段】
本発明は、その上に配列されたコードを有する可動部材の線形位置を求めるための方法及び装置を提供する。このコードは、少なくともｎ個のキャラクタを有するデータフィールドの連続を含み、コードの所定の間隔にフレーム同期シンボルを含む。センサーが、可動部材の所定部分のコードを読み取る。該部材の所定部分は、ｎ個のキャラクタを有するコードと少なくとも１つのフレーム同期シンボルとを含む。センサーは、読取りコードの関数としてデータ信号を送信する。データ信号を受信するため、センサーに処理装置を連結する。処理装置は、データ信号の関数として位置信号を送信し、該位置信号は、可動部材の線形位置を示す。
【０００５】
【発明の実施の形態】
図１は、本発明の一実施形態による、油圧シリンダのロッドなどのような可動部材（図示せず）のマーキングに用いたコードの、種々のキャラクタ１０の図である。各キャラクタ１０は、通常は、所定の幅Ｗ、及び高さＨであり、幅Ｗがロッドの移動軸に平行となるように可動部材に並べられる。
各キャラクタの高さＨは、通常の使用中におけるロッドの回転により、キャラクタ１０がセンサー（図示せず）の視野から外れることのないよう、ロッドの円周を適切に覆うように選択する。高さＨは、ロッドを完全に包囲するのに十分なもの、例えば、円周を取り巻くリングとするか、又は円周の一部を覆っているだけのものとしてもよい。
コードの各キャラクタ１０は、通常は、白などの第１色の、幅Ｗの第１の所定部分、及び黒などの第２色の、幅Ｗの第２の所定部分を含む。他の色を選択することもできる。従って、（フレーム同期キャラクタの場合は例外となることがある）各キャラクタ１０の幅Ｗ内のどこかに、例えば、白から黒への遷移が存在する。
【０００６】
本発明の一実施形態において、３重の（基数３）コードを用いるが、これより多いか又は少ない他の基数を適宜用いることができる。例えば、「ゼロ」である１０ａは、第１の部分（例えばＡ−Ｂ）が白で、残りの部分である第２の部分（例えばＢ−Ｅ）については黒で表わされる。「１」である１０ｂは、第１の部分（例えばＡ−Ｃ）が白で、第２の部分（例えばＣ−Ｅ）については黒で表わされる。「２」である１０ｃは、第１の部分（例えばＡ−Ｄ）が白で、第２の部分（例えばＤ−Ｅ）が黒で表わされる。本発明の別の実施形態では、各キャラクタ１０（基数３のコードの別称「トリット」）の黒及び白の部分を移動させるか、又は他の方法で適当に調整する。
【０００７】
本発明の一実施形態において、各トリット１０の第１の部分（Ａ−Ｂ）は白となり、第２の部分（Ｄ−Ｅ）については黒である。これらの部分はクロック信号として考えることができ、各トリット１０の開始点及び終点を定義する。
本発明の一実施形態において、７個のトリット１０を使用して、データフィールド（図示せず）を定義するが、より多い又は少ない数のトリット１０もまた使用できる。
各データフィールドは、フレーム同期シンボル（「ＦＳＳ」）１２により括られる。フレーム同期シンボル１２は、通常は、トリット１０と同じ幅Ｗ及び高さＨを有し、黒のような単色のものである。
【０００８】
図２は、本発明の一実施形態に係る、マーク付けされたロッド２０である。計測されるロッド２０の長さに、フレーム同期シンボル１２が先行及び／又は後続する形で、連続するデータフィールドをマーク付けする。各データフィールドは、通常は一意的な組み合わせのトリット１０から構成される。
図３は、本発明の一実施形態に係る、ロッド２０の線形位置を求める装置３０である。ロッド２０は、フレーム同期シンボル１２が先行及び／又は後続する形で数個のトリット１０からなる上述のコードがマーク付けされる。
【０００９】
本発明の一実施形態では、光源３２が、ロッド２０のトリット１０をマーク付けした部分上に、光を送る。十分な周辺光がある場合には、光源３２を省略しても良い。センサー３４は、ロッド２０の幅８×Ｗのなどのような所定部分上にあるトリット１０の、明るさの値を読み取る。このことは、通常はセンサー３４が、７個のトリット１０及び１個のフレーム同期シンボル１２を読み取ることを可能にさせる。センサー３４は、読み取るトリット１０の明るさの関数として、データ信号ＤＡＴＡを送信する。
データ信号ＤＡＴＡを受信するために、センサー３４に処理装置３６を接続する。処理装置３６は、例えば、マイクロプロセッサ又はコントローラなどのような、当業者に公知の種々の適当な装置の、どれであっても良い。処理装置３６は、データ信号の関数として、位置信号ＰＯＳを送信する。位置信号は、ロッド２０の線形位置を示すものである。
【００１０】
図１に戻り、本発明の一実施形態により位置信号ＰＯＳを求めるに際して、処理装置３６は、仮想の第１のテンプレート、すなわち、マスク３８を作成する。第１のマスク３８は、通常はｍ個の区分（その１つを図１に示す）を含み、各区分は、トリット１０の区分と一致する１つ又はそれ以上の部分を有する。例えば、トリット１０の各々は、白の部分（Ａ−Ｂ）及び黒の部分（Ｄ−Ｅ）を含むので、第１のマスク３８も同様のものとすることができる。従って、第１のマスク３８は、実効上は、コードのｎ個のキャラクタのそれぞれの部分である。
【００１１】
さらに、第１のマスク３８は、例えば、灰色などのような第３の色、すなわち異なる色の、第３の部分（Ｂ−Ｄ）を含むことができるが、適切であれば他の色を選んでも良い。この第３の部分（Ｂ−Ｄ）は、全てのトリット１０について同一のものとならないトリット１０の部分であり、例えば、「０」については黒となり、「１」については半分が黒で半分が白となり、「２」については全て白となるトリットの部分である。ｍは、通常は、データフィールドのキャラクタ数に１を足した数に等しく、例えば、本例では８であるが、しかしｍは、他の適切な値であっても良い。
【００１２】
実際は、処理装置３６は、第１のマスク３８をコードの読取り部分に重ねる。処理装置３６は、各明るさレベルに対して値を割り当てる。例えば、黒はマイナス１（「−１」）の値、灰色はゼロ（「０」）の値、及び白は１（「１」）の値を有することができる。他の値を選択することもできるが、しかしながら、以下に明らかとなるように、黒及び白の値は、等しい大きさを有するが符号が反対であることから、ゼロの値を灰色の区分に対応させることで最適に作用する。
【００１３】
処理装置３６は、当業者に公知の種々の方法のいずれかを用いて、マスク３８と読取りコードとの間の相関比較を行う。本発明の一実施形態において、処理装置３６は  次のような加算を行う。
0003943924.tif 000002
ここで、ｘiは、読取りコードの所定の区分上におけるマスクの明るさを表わし、ｙiは、所定の区分上における読取りコードの明るさを表わす。このとき、マスクが読取りコードの区分上を段階的に移動し、加算が繰り返される。
【００１４】
上記で割り当てられた値から、マスクの白の部分（Ａ−Ｂ）がトリット１０の白の部分と重なり、マスクの黒の部分（Ｄ−Ｅ）がトリット１０の黒の部分と重なる場合に、加算値は最大値を有する。少し単純化すると、数学的には、加算値は、（１×１）（白の上に白）足す（−１×−１）（黒の上に黒）となる。マスクの白の部分が読取りコードの黒の部分と重なる（又は色に関しその反対の）場合に、加算値は、プラス１のマイナス１倍、又はその反対であり、負の数となる。ゆえに、加算値は、第１のマスク３８の各区分３８ｍがトリット１０の縁と重なったときに最大値を有する。
【００１５】
マスク区分３８ｍの灰色の部分についてゼロの値を使用すると、処理装置３６に、トリット１０のＢ−Ｄの間の部分（トリット１０と同一ではない部分）を無視（無効に）させる。かくして、処理装置３６は、トリットのクロック信号部分（Ａ−Ｂ及びＤ−Ｅ）の位置を定めることになる。
受信した画像に対する第１のマスクの最良の位置を求め、受信した画像とマスクのバージョンとの相関性を比較することにより、各トリットが個々にデコードされるが、このときマスクの灰色部分は、一つのトリットについて、フレーム同期、０、１、又は２に対応するいずれかのパターンに置き換えられ、最大の相関関係を与える値が、最初にそのトリットの、正しいデコードされた値とされる。
【００１６】
読取りコードのトリット１０の値を読み取ることにより、処理装置３６は、１つの問題を除き、ロッド２０の線形位置を知ることができる。処理装置が、読取りコードの７個のトリット１０を、「０１２０１２０」と読み取る場合は、ロッド２０の位置が、データフィールド「０１２０１２０」により特定される位置にあるのか、又は、１つのデータフィールドが「０」で終わり、次のデータフィールドが「１２０１２０」で始まるデータフィールドの位置にあるのか、又は１つのデータフィールドが「０１」で終わり、次のデータフィールドが「２０１２０」で始まる位置にあるのか、などを判断することは容易ではない。しかしながら、読み取りコード内のフレーム同期シンボル１２の位置を求めることにより、この問題を解決できる。この判定は、当業者に公知の方法により行うことができる。
フレーム同期シンボル１２は、上述の相関加算値を減少させるが、しかしながら、読取りコード／マスク比較の各々に１つのフレーム同期シンボル１２が含まれていると仮定すると、この減少は各々の加算について一様となるはずである。
【００１７】
本発明の一実施形態において、ロッド２０の所定部分上の読取りコードに、フレーム同期シンボル１２が検出されない場合は、処理装置３６が、最も可能性の高い位置を選択し、フレーム同期シンボル１２の位置として（強制）処理する。１つ以上のフレーム同期シンボル１２が検出される場合は、そのうちの１つは誤りであり、読み取られたコードの８×Ｗの幅だけが与えられ、上記の例では、８個のキャラクタ毎にフレーム同期シンボル１２が現われる。
【００１８】
現実の世界では、上記の本発明の実施形態においてさらに考慮すべき点がある。例えば、ロッド２０が内部に配置された油圧シリンダは、通常は油圧流体、又は他の媒体で満たされている。この流体は、コードの反射特性を変化させ、多くの場合、センサー３４で受信した画像を不鮮明にする。
【００１９】
本発明の一実施形態では、当業者に公知の種々の方法のいずれかにより、処理装置がマスクを不鮮明にする。図１に戻り、このようにして、マスク部分３８ｍのＢ点における白から黒灰色への明瞭な遷移、及びＤ点における灰色から黒への明瞭な遷移は、段階的な濃淡の変化となる。
段階的な濃淡の変化は、上述の相関加算値に異なる値を割り当てることになる。当業者に公知の、典型的な形式のセンサー３４の１つは、０−４０９５のグレイスケールを有する。従って、相関加算の目的のためには、例えば、暗い灰色の値を−．９、中間の明るさの灰色の値を−．６、そして明るい灰色の値を＋．３とすれば良い。適切であれば、他の値を選択しても良い。
【００２０】
本発明の一実施形態では、センサー３４により受信した明るさのレベルに対し処理装置３６を動的に校正することが望ましい。例えば、シリンダ内の流体が特に暗い色の場合には、トリットの白い部分でさえも、０−４０９５のグレイスケールの６００として読み取ることがある。これを補正する１つの方法は、コードの読取り部分上でセンサーにより受信される明るさの範囲を求め、受信した最も暗いグレイスケール値を「黒」であると、又、最も明るいグレイスケール値を「白」であると任意に決めることである。
【００２１】
さらに、簡単のため、黒がマイナス１の値を持ち、白がプラス１の値を持つと判断するのを容易にするには、最も明るいグレイスケール値と最も暗いグレイスケール値との平均値を差し引くことにより、処理装置が、グレイスケールを（０からＸ）から（−１／２Ｘから１／２Ｘ）に、効果的に移行させるようにする。これにより、マスク区分３８ｍの灰色領域（Ｂ−Ｄ）を、ゼロとすることができる。実際には、この技術は、画像の明るさの直流成分を除去する。当業者に公知の他の技術を用いることもできる。
【００２２】
起こりうる第２の種類の不鮮明さは、ロッド２０の動きによるものである。本発明の一実施形態では、当業者に公知の方法により、処理装置３６が、ロッドの動きによる読取りコードの不鮮明さと一致するよう、マスク３８を不鮮明にすることができる。これは、処理装置３６が、ロッド２０の移動速度の予測を持つことを要求することになり、これは当業者に公知の種々の方法で達成できる。
【００２３】
本発明の一実施形態において、ロッド２０の位置を求めるため、第２のマスク（図示せず）を用いることができる。第２のマスクは、通常は、上述の方法に従いロッド２０の位置を求めた後に用いる。センサー３４によりトリット１０の値を一旦読み取ると、処理装置３６は第２のマスクを作成する。第２のマスクは第１のマスクから成り、各区分３８ｍについて、第１のマスクの灰色（Ｂ−Ｄ）であるところを除き、前記区分のトリット１０からの実際の色が書き込まれる。かくして、より大きいサンプルサイズを使用するため、より良い相関関係が達成される。相関加算は、適切であれば他の方法で、不鮮明さを含む上述の方法と同様にして行われ、繰り返されることはない。
【００２４】
本発明の一実施形態において、ロッド２０の線形位置を求める「手短かな」方法を用いることができる。この手短かな方法は、予め求めたロッド２０の位置に基づいて、所定の比較的小さな範囲内において、ロッド２０の位置を予測できることに依る。このような予測には、予め分かっているロッド２０の位置、速度などに基づき、可能性のある速度、加速度、及び／又は、急加速（加速度の時間微分値）に制限をおく、モデルを用いることができる。
ロッド２０の事前の挙動が分かっている場合には、処理装置３６にとって、ロッド２０があると予想される可能性のある範囲内にある、と予測され／分かっているトリット１０についてのマスク３８を作成し、適切な相関関係が検出されるまでマスク３８の作成を進める。センサー３４の高いサンプリング周波数は、ロッド２０の可能性のある位置を減少させる。
【００２５】
本発明の一実施形態において、ロッド２０の位置が分かっているとみなされる前に、所定の相関度を必要とする。たとえば、求めたロッド２０の位置は、次の条件が成り立たなければ、正確であるとはみなされない。
φ＜２６度  であり、ここで、
0003943924.tif 000003
φの極限値として他の数値を選択しても良い。
【００２６】
【産業上の利用可能性】
ここに記載した発明は、可動部材の線形運動が望まれる、殆どどのようなものにでも使用できる。建設機械及び土工機械の油圧シリンダの位置を求めること、ロボット工学的応用、及び／又は、当業者に公知のその他種々の応用に、本発明を用いることができる。
【００２７】
上記のことから、例示する目的のため種々の実施形態を開示したが、本発明がこれらに限られるものではないことが分かるであろう。したがって、本発明は、添付の特許請求の範囲によるものを除いては、制限を受けない。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る、可動部材にマーキングするため使用するコードの、いくつかのキャラクタの図である。
【図２】本発明の一実施形態に係る、マーク付けしたロッドである。
【図３】本発明の一実施形態に係る、ロッドの線形位置を求める装置である。
【符号の説明】
１０・・・キャラクタ、トリット、１２・・・フレーム同期シンボル、
２０・・・ロッド、３２・・・光源、３４・・・センサー、
３６・・・処理装置、３８・・・第１マスク、
【図１】
0003943924.tif 000006
【図２】
0003943924.tif 000007
【図３】
0003943924.tif 000008