以下、図面を参照して本発明に係る回転センサの補正装置の実施の形態について説明する。なお、以下の実施形態では、回転センサが油圧作業機械に搭載されて、回転センサの検出値に基づいて油圧シリンダのストローク位置を計測する場合を想定して説明する。
図1、図2は、実施形態の油圧作業機械の油圧回路を示している。なお、油圧作業機械は、たとえば油圧ショベルなどの建設機械を想定している。
図1は、油圧式の操作レバー装置1から油圧信号Ppが、油圧シリンダ200用の制御弁2に供給されることによって、油圧シリンダ200が駆動される構成を示している。
図2は、電気式の操作レバー装置3から電気信号Stが、制御用コントローラ(メインコントローラ)20に入力され、制御用コントローラ20から制御電気信号iが、油圧シリンダ200用の制御弁4に供給されることによって、油圧シリンダ200が駆動される構成を示している。
まず、図1の構成について説明する。
油圧ショベルには、ブーム、アーム、バケット等の複数の作業機が設けられており、これら複数の作業機は、対応する作業機用油圧シリンダ200が駆動されることにより、それぞれ作動される。なお、実際の油圧ショベルでは、各作業機毎に油圧シリンダ200が設けられるが、図1では説明の便宜上、1つの油圧シリンダ200を図示して他を省略している。
油圧シリンダ200は、たとえば可変容量型の油圧ポンプ5を駆動源として駆動される。油圧ポンプ5は、エンジン6によって駆動される。
油圧ポンプ5の斜板5aは、サーボ機構7によって駆動される。サーボ機構7は、制御用コントローラ20から出力される制御信号(電気信号)に応じて作動して、油圧ポンプ5の斜板5aが制御信号に応じた位置に変化される。また、エンジン6のエンジン駆動機構8(ガバナ、噴射ポンプ、インジェクタ等)は、制御用コントローラ20から出力される制御信号(電気信号)に応じて作動して、エンジン6のシリンダ内に制御信号に応じた量の燃料が、制御信号に応じたタイミングで噴射されるとともに、制御信号に応じた回転数でエンジン6が回転する。
油圧ポンプ5の吐出口は、吐出油路9を介して、制御弁2の入口ポートに連通している。制御弁2の出口ポートは油路11、12を介して油圧シリンダ200の油室204B、204Hに連通している。
油圧ポンプ5から吐出された圧油は、吐出油路9を介して制御弁2に供給され、制御弁2を通過した圧油は、油路11または12を介して油圧シリンダ200の油室204Bまたは油室204Hに供給される。
操作レバー装置1は、たとえば運転室に設けられた操作レバー1aと、操作レバー1aの操作に応じて弁開度が変化される操作レバー用制御弁1bとからなる。操作レバー用制御弁1bの入口ポートは、油路13を介して、例えば定容量型の油圧ポンプ14の吐出口に連通している。油圧ポンプ14はエンジン6によって駆動される。油路13には、油路13内の圧油の圧力を蓄圧するアキュムレータ19が設けられている。油路13には、油路13内の圧力の圧力を検出する圧力センサ15が設けられている。圧力センサ15の検出信号は、計測用コントローラ30に入力される。
操作レバー用制御弁1bの出口ポートは、パイロット油路16a、16bを介して制御弁2のパイロットポート2a、2bに連通している。
操作レバー1aが操作されると、操作レバー1aの操作量に応じて操作レバー用制御弁1bの弁開度が変化され、操作量に応じた圧力の油圧信号Ppが制御弁2のパイロットポート2aまたは2bに供給され、操作量に応じて制御弁2の開口面積が変化される。また、パイロット油路16a、16bのうち、操作レバー1aの操作方向に応じたパイロット油路にパイロット圧油が出力され、それに応じてパイロット圧油が制御弁2のパイロットポート2aまたは2bに供給され、操作レバー1aの操作方向に対応する方向に制御弁2の弁位置が変化される。
このため、操作レバー1aの操作量に応じた流量の圧油が、油路11、12のうち、操作レバー1aの操作方向に対応する油路に対して出力され、油路11または12を介して油圧シリンダ200の油室204Bまたは油室204Hに供給される。このため油圧シリンダ200は、操作レバー1aの操作に応じた方向、速度で駆動され、それに応じた方向、速度で、ブーム、アーム、バケット等が作動される。
バッテリ8(たとえば定格電圧24V)は、計測用コントローラ30、制御用コントローラ20を起動する電源である。
計測用コントローラ30のパワー端子31は、バッテリ8に電気的に接続されている。制御用コントローラ20のパワー端子21は、エンジンキースイッチ9を介してバッテリ8に電気的に接続されている。
エンジンキースイッチ9が、オン操作されると、バッテリ8がエンジン6の始動用モータ(図示せず)に電気的に接続されてエンジン6が始動されるとともに、制御用コントローラ20のパワー端子21にバッテリ8が電気的に接続されて制御用コントローラ20が起動される。エンジンキースイッチ9が、オフ操作されると、制御用コントローラ20のパワー端子21とバッテリ8との電気的な接続が遮断されて、エンジン6が停止されるとともに、制御用コントローラ20が起動停止する。
計測用コントローラ30の制御端子32には、エンジンキースイッチ9のスイッチ状態(オン、オフ)を示すスイッチ状態信号Kが入力される。
計測用コントローラ30内には、主要電源回路33が設けられており、この主要電源回路33にパワー端子31からバッテリ8の電力が供給される。計測用コントローラ30内には、後述するように、ソフトウエアタイマ(内部プログラム)が格納されるか、内部電源回路(ハードタイマ)が組み込まれている。
計測用コントローラ30の制御端子32に入力されるスイッチ状態信号Kがオンである場合には、主要電源回路33の駆動がオンされ、計測用コントローラ30が起動状態となる。スイッチ状態信号Kがオフになった場合には、上記タイマが作動し、タイマの設定時間経過後に、主要電源回路33の駆動がオフされ、計測用コントローラ30は起動停止状態となる。
つぎに、図2の構成ついて説明する。図1と共通する構成については説明を省略する。
操作レバー装置3は、たとえば運転室に設けられた操作レバー3aと、操作レバー3aの操作方向および操作量を示す操作信号Stを検出する検出部3bとからなる。検出部3bで検出された操作信号Stは、制御用コントローラ20に入力される。
制御弁4の電磁ソレノイド4a、4bは電気信号線17を介して制御用コントローラ20に接続されている。
操作レバー3aが操作されると、操作レバー3aの操作信号Stが制御用コントローラ20に入力され、制御用コントローラ20で、操作レバー3aの操作方向、操作量に応じた方向、弁開度で制御弁4を作動させるための制御信号iが生成される。制御信号iは、制御用コントローラ20から電気信号線17を介して制御弁4の電磁ソレノイド4aまたは4bに供給され、操作レバー3aの操作方向に対応する方向に、操作レバー3aの操作量に対応する弁開度となるように、制御弁4の弁位置が変化される。
計測用コントローラ30のパワー端子31、制御用コントローラ20のパワー端子21は、バッテリ8に電気的に接続されている。
制御用コントローラ20の制御端子22には、エンジンキースイッチ9のスイッチ状態(オン、オフ)を示すスイッチ状態信号Kが入力される。
制御用コントローラ20内には、主要電源回路23が設けられており、この主要電源回路23にパワー端子21からバッテリ8の電力が供給される。
計測用コントローラ30の制御端子32には、電気信号線18を介して、制御用コントローラ20から、後述する油圧シリンダ200の作動が可能な状態であるか否かの情報(レベル1、0)を示す信号Jが入力される。
計測用コントローラ30内には、主要電源回路33が設けられており、この主要電源回路33にパワー端子31からバッテリ8の電力が供給される。
計測用コントローラ30の制御端子32に入力される情報信号Jのレベルは、後述するように、ソフトウエアによって監視されており、情報信号Jが「1レベル」である場合には、主要電源回路33の駆動がオンされ、計測用コントローラ30が起動状態となる。情報信号Jが「0レベル」になった場合には、主要電源回路33の駆動がオフされ、計測用コントローラ30は起動停止状態となる。
つぎに、図3を併せ参照して、油圧シリンダ200と計測用コントローラ30と制御用コントローラ20について説明する。
同図3に示すように、ブーム、アーム、バケット毎に、油圧シリンダ200が設けられている。各油圧シリンダ200にはそれぞれ、油圧シリンダ200のストローク量を回転量として検出する回転センサ100と、油圧シリンダ200のストローク位置の原点位置を検出するリセットセンサ300が設けられている。
回転センサ100、リセットセンサ300は、電気信号線(ハーネス)150、ジャンクションボックス42を介して、計測用コントローラ30の入力端子34に電気的に接続されている。
計測用コントローラ30は、A/D変換部35と、後述する記憶テーブル36と、CPU37を備えている。
回転センサ100、リセットセンサ300の検出信号は、電気信号線150、ジャンクションボックス42を介して、計測用コントローラ30の入力端子34に入力され、A/D変換部35でディジタル信号に変換されて、CPU37に入力される。CPU37では、後述するように記憶テーブル36を参照しつつ、回転センサ100、リセットセンサ300の検出信号に基づいて、油圧シリンダ200のストローク位置が計測される。
計測用コントローラ30の出力端子38と、制御用コントローラ20とは、シリアル通信が可能となるように信号線43によって接続されており、車体内ネットワークを構成している。信号線43には、所定のプロトコルのフレーム信号が伝送される。
計測用コントローラ30で計測された油圧シリンダ200のストローク位置のデータは、フレーム信号に記述され、出力端子38から信号線43を介して、制御用コントローラ20に伝送される。
制御用コントローラ20には、油圧シリンダ20の計測ストローク位置のデータが取り込まれ、制御用コントローラ20は、取り込まれた油圧シリンダ20の計測ストローク位置のデータに基づいて制御信号を生成し、制御対象のアクチュエータ(油圧ポンプ5のサーボ機構7、エンジン6の駆動機構8、制御弁4の電磁ソレノイド4a、4b)に対して出力し、油圧ポンプ5、エンジン6、制御弁4を制御する。
なお、本実施例では、制御用コントローラ20を、1つのコントローラで図示しているが、油圧ポンプ5用、エンジン6用、制御弁4用の各コントローラに分割して設けてもよい。
つぎに、油圧シリンダ200に設けられた回転センサ100、リセットセンサ300について説明する。
図4(a)は、油圧シリンダ200と、回転センサ100と、リセットセンサとしての磁力センサ300の位置関係を、シリンダ200の縦断面図で示している。
図4(a)に示すように、油圧シリンダ200の壁であるシリンダチューブ250には、ピストン201が摺動自在に設けられている。ピストン201には、ロッド202が取り付けられている。ロッド202は、シリンダヘッド203に摺動自在に設けられている。シリンダヘッド203とピストン201とシリンダ内壁とによって画成された室が、シリンダヘッド側油室204Hを構成する。ピストン201を介してシリンダヘッド側油室204Hとは反対側の油室がシリンダボトム側油室204Bを構成している。
シリンダヘッド203には、ロッド202との隙間を密封し、塵埃等のコンタミがシリンダヘッド側油室204Hに入り込まないようにするロッドシール205a、ダストシール205bが設けられている。
シリンダチューブ250には、油圧ポート206H、206Bが形成されている。油圧ポート206Hを介して、シリンダヘッド側油室204Hに圧油が供給され、若しくは同油室204Hから油圧ポート206Hを介して圧油が排出される。油圧ポート206Bを介して、シリンダボトム側油室204Bに圧油が供給され、若しくは同油室204Bから油圧ポート206Bを介して圧油が排出される。
シリンダヘッド側油室204Hに圧油が供給され、シリンダボトム側油室204Bから圧油が排出されることによって、ロッド202が縮退し、あるいは、シリンダヘッド側油室204Hから圧油が排出され、シリンダボトム側油室204Bに圧油が供給されることによって、ロッド202が伸張する。すなわち、ロッド202は図中左右方向に直動する。
シリンダヘッド側油室204Hの外部にあって、シリンダヘッド203に密接した場所には、回転センサ100を覆い、内部に収容するケース207が形成されている。ケース207は、シリンダヘッド203にボルト等によって締結等されて、シリンダヘッド203に固定されている。すなわち、ケース207(回転センサ100)は、シリンダチューブ250に簡易に取り付けたり、取り外すことができる。
回転センサ100を構成する後述する回転ローラ110は、その表面がロッド202の表面に接触し、ロッド202の直動に応じて回転自在に設けられている。すなわち、回転ローラ110によって、ロッド202の直線運動が回転運動に変換される。
回転ローラ110は、その回転中心軸110cが、ロッド202の直動方向に対して、直交(紙面の背後方向、看者方向)するように配置されている。ケース207には、ロッド202との隙間を密封し、塵埃等のコンタミが回転ローラ110とロッド202との間に入り込まないようにするダストシール208が設けられている。これにより回転ローラ110とロッド202との間に塵埃等が入り込んで、回転ローラ110が動作不良となるような事態を回避することができる。つまり、回転センサ100は、ケース207に設けられたダストシール208と、シリンダヘッド203に設けられたダストシール205bとによって防塵構造となっている。
回転センサ100は、上述した回転ローラ110と、回転ローラ110の回転量を検出する、後述する回転センサ部130(図5)とを少なくとも備えている。回転センサ部130で検出された回転ローラ110の回転量を示す信号は、電気信号線150を介して、計測用コントローラ30に送られ、この計測用コントローラ30で油圧シリンダ200のロッド202の位置(ストローク)に変換される。
回転センサ100の回転ローラ110とロッド202と間では、微小な滑り(スリップ)が発生することは避けられず、この滑りによって回転センサ100の検出結果から得られるロッド202の計測位置と、ロッド202の実際の位置との間には、誤差(滑りによる累積誤差)が生じる。そこで、この回転センサ100の検出結果から得られる計測位置を、原点位置(基準位置)にリセットするために、シリンダチューブ250の外部には、リセットセンサとしての磁力センサ300が設けられている。
すなわち、ピストン201には、磁力線を生成する磁石350が設けられている。磁石350は、ピストン201、ロッド202の直動方向に対して垂直な図中鉛直方向に、N極、S極が配置されるように、ピストン201に設けられている。なお、磁石350を、ピストン201、ロッド202の直動方向と平行な方向に沿って、N極、S極が配置されるように、ピストン201に設けてもよい。
磁力センサ300は、ピストン201の直動方向に沿って所定距離離間されて配置された2個の磁力センサ301、302からなる。磁力センサ301、302は、既知の原点位置に設けられている。磁力センサ301、302は、磁石350で生成された磁力線を透過して、磁力(磁束密度)を検出し、磁力(磁束密度)に応じた電気信号(電圧)を出力する。磁力センサ301、302で検出された信号は、電気信号線150を介して、計測用コントローラ30に送られ、この計測用コントローラ30では、磁力センサ301、302の検出結果に基づいて、回転センサ100の検出結果から得られる計測位置を、原点位置(基準位置)にリセットする処理が実行される。
また、2個の磁力センサ301、302の検出位置に基づいて、ピストン201、ロッド202の絶対移動距離を計測することができる。たとえば、回転センサ100の回転ローラ110が経年変化によって消耗すると、回転センサ100の検出回転量から得られるロッド202の移動距離は、実際のロッド202の移動距離よりも小さくなるが、ピストン201が2個の磁力センサ301、302間を移動したときに回転センサ100の検出回転量から得られる移動距離L′と、実際の2個の磁力センサ301、302間の距離Lとの比率L/L′に基づいて、回転センサ100の検出回転量から得られる移動距離を補正することができる。
磁力センサ301、302としては、たとえばホールICが使用される。
磁力センサ301、302は、ひさし310に装着されている。ひさし310は、バンド320に装着されている。バンド320は、シリンダチューブ250の外周に固定されている。バンド320は、磁性材料によって構成されている。バンド320の材料としては、一般構造用鉄鋼材等、通常容易に入手できる磁性材料を使用することができる。
図4(b)は、図4(a)のA−A断面図、つまりシリンダチューブ250の横断面図を示している。
バンド320は、シリンダチューブ250の外周に圧接されて固定される。バンド320は、シリンダチューブ250の外径に応じた断面半円弧状のバンド部材320Aと、同じく断面半円弧状のバンド部材320Bとからなり、バンド部材320Aと、バンド部材320Bとは、ボルト321によって締結され、締結されることによりシリンダチューブ250の外周に圧接される。一方のバンド部材320Aには、ひさし310が装着されている。このためシリンダチューブ250にネジ穴を形成したり、シリンダチューブ250の外周を溶接するなどの加工、処理を施すことなくして、シリンダチューブ250の外周に磁力センサ301、302を固定することができる。また、シリンダチューブ250に加工、処理を施す必要がないため、シリンダチューブ250の厚さを、最低限の厚さに維持することができる。すなわち、シリンダチューブ250に加工、処理を施すことにすると、強度を保つために、チューブ自体を厚くしなければならないが、その必要はない。
また、バンド320のシリンダチューブ250への固定位置の変更が容易かつ簡単に行え、磁力センサ301、302を、シリンダチューブ250の長手方向(ピストン201、ロッド202の直動方向)の任意の位置に、容易にかつ簡単に装着することができる。
つぎに、回転センサ100の構成について説明する。
図5(a)に示すように、回転センサ100は、大きくは、前述したように、ロッド202の表面に接触し、ロッド202の変位に応じて回転するように設けられた回転ローラ110と、回転ローラ110をロッド202の表面に押圧する押圧部材120と、回転ローラ110の回転量を検出する回転センサ部130とから構成されている。
押圧部材120は、ホルダ121とバネ122とからなる。ホルダ121は、ケース207に、ロッド202の表面に向かう方向および同表面から離れる方向に摺動自在に、ケース207に嵌装されている。バネ122は、ホルダ121がロッド202の表面に向かう方向にバネ力が付与されるように、両端がそれぞれケース207の内壁とホルダ121との間に配置されている。ホルダ121には、回転ローラ110の回転軸111が、ベアリング123a、123bを介して回転自在に支持されている。なお、図5(b)は、図5(a)のB−B断面を示している。同図5(b)に示すように、ホルダ121には、ピン124が装着されており、ピン124は、ケース207に摺動自在に嵌装されている。
よって、回転ローラ110は、バネ122のバネ力によって、ロッド202の表面に押圧される。
回転センサ部130は、固定部材131と、メインシャフト(回転軸)132と、回転体133と、カバー134と、センサ部材135とからなる。
固定部材131の周囲には、ネジ部136が形成されており、固定部材131はホルダ121に形成されたネジ穴121aにねじ込まれる。更に固定部材131は、Oリング137、ワッシャ138を介してナット140によってホルダ121に締結されている。
メインシャフト132は、固定部材131の挿通孔131a内に、挿通されている。メインシャフト132は、固定部材131にベアリング(ローラベアリング)141、142を介して回転自在に挿通されている。
メインシャフト132は、その中心軸132cが、回転ローラ110の回転中心軸と110cと軸芯を同じくするように、回転ローラ110に連結されている。メインシャフト132は、回転ローラ110と一体に回転するように、継手部143を介して回転ローラ110に連結されている。
図5(c)は、継手部143を図5(a)の断面図で示している。同図5(c)に示すように、継手部143は、回転ローラ110の回転軸111の穴111aに嵌合されたスリーブ144と、メインシャフト132の断面長方形状の先端部132aとからなる。回転ローラ110のスリーブ144に、メインシャフト132の先端部132aがはめ込まれることにより、メインシャフト132は、回転ローラ110に対する相対回転方向の動きが規制されて、メインシャフト132は、回転ローラ110と一体になって回転する。
回転体133は、メインシャフト132の他端に、嵌合されることによって固定されている。回転体133には、検出媒体である磁石145が設けられている。磁石145は、回転体133の回転、つまり回転ローラ110の回転に応じて、回転する。
カバー134は、回転体133を内部に収容するように固定部材131に、かしめによって、Oリング146を介して、固定されている。
センサ部材135は、磁石145によって生成される磁力(磁束密度)を電気信号として検出する磁力センサであり、カバー134に装着されている。センサ部材135は、メインシャフト132の軸方向に沿って、磁石145から所定距離離間された位置に設けられている。
検出媒体である磁石145は、回転体133の一回転、つまり回転ローラ110の一回転を一周期として、センサ部材135で検出される磁力(磁束密度)が周期的に変動するような態様で、回転体133に装着されている。磁石145の着磁面の構成例、センサ部材135の配置例については、後述する。
センサ部材135には、ハーネス150が電気的に接続されている。センサ部材135で検出された電気信号は、ハーネス150を介して、計測用コントローラ30に送られ、この計測用コントローラ30で、センサ部材135の電気信号が、回転ローラ110の回転量、つまりシリンダ200のロッド202の変位量(ストローク位置)に変換される。なお、センサ部材135は、たとえばホールICが使用される。
本実施形態では、検出媒体である磁石145とは、別に一対の磁石147、148が設けられている。
一対の磁石147、148のうち、一方の磁石147は、固定部材131に設けられ、他方の磁石148は、回転体133の磁石147に対面する側に設けられている。なお、検出媒体である磁石145は、回転体133の磁石147が設けられた側とは反対側に設けられている。
一対の磁石147、148は、共に環状に形成されており、磁石の着磁面が、メインシャフト132の中心軸132cに対して直交する平面となるように、配置されている。検出媒体である磁石145は、円板状に形成されており、磁石の着磁面が、メインシャフト132の中心軸132cに対して直交する平面となるように、配置されている。
一対の磁石147、148は、反発力を生じさせる同極同士(N極同士、S極同士)で構成されている。このため回転体133には、同極の磁石147、148同士の反発力が、メインシャフト132の軸方向に作用する。回転体133には、図5(a)中、右方向に、上記反発力が作用する。
回転体133は、磁石147、148同士の反発力に抗して、支持部材としてのベアリング142によって支持されている。
メインシャフト132は、回転ローラ110側の大径部132dと、回転体133側の小径部132eとからなり、小径部132eには、ベアリング(ローラベアリング)142が環装されている。回転体133には、図5(a)中、右方向に、一対の磁石147、148同士の反発力が作用するが、メインシャフト132の大径部132dと小径部132eとの段差がベアリング142に当接されていることによって、回転体133の図中右方向の動きが規制され、回転体133は、定位置に位置決めされる。このため回転体133に設けられた検出媒体の磁石145と、センサ部材135との距離が、一定に保持される。つまり、メインシャフト132と固定部材131との間のガタを無くすことにより、検出媒体としての磁石145とセンサ部材135との距離が一定に保持される。
このように本実施形態によれば、検出媒体としての磁石145とセンサ部材135との距離が一定に保持されるため、センサ部材135の検出精度、つまり回転ローラ110の回転量、ロッド202の変位量の計測精度が向上する。
ところで、本実施形態の回転センサ100は、ロッド202の変位を回転ローラ110の回転量に変換し、その回転量を回転センサ部130で検出することを前提としている。したがって、回転ローラ110は、半径方向に容易に変形したり消耗したりせずに、回転半径が一定値に保持されることが、回転センサ部130の検出精度、ロッド202の変位量(ストローク)の計測精度を高める上で必要である。また、ロッド202の変位が回転ローラ110の回転運動に忠実に変換されスリップしないことが、回転センサ部130の検出精度、ロッド202の変位量(ストローク)の計測精度を高める上で必要である。
そこで、本実施形態では、図5(a)に示すように、回転ローラ110のうち、少なくともロッド2に接触する部分の一部110d(凸部)を、回転ローラ110の回転中心軸110cとロッド202の表面との距離を一定値dに保持することができる程度に硬い材料(たとえばS45C)で構成し、回転ローラ110のうち、少なくともロッド2に接触する部分の他の一部114を、回転ローラ110とロッド202との間で滑りが生じない程度に摩擦係数が高い材料(たとえばNBR等の弾性部材)で構成するようにしている。
いいかえれば、回転ローラ110のうち、少なくともロッド2に接触する部分の一部114は、回転ローラ110の他の接触部分110d(S45C)よりも、摩擦係数が高い材料(NBR等の弾性部材)で構成するようにしている。
すなわち、回転ローラ110の周方向には、円環状の溝112、113が形成されている。溝112と溝113の間は、回転中心軸110cから回転ローラ表面までの距離が、回転ローラ110の回転半径dに設定された凸部110dを構成している。ここで回転半径dとは、ロッド202の表面から回転ローラ110の回転中心軸110cまでの距離とみなされ、回転ローラ110の回転量をロッド202の変位量(ストローク)に変換する指標となるパラメータである。たとえば回転ローラ110が1回転したときのロッド202の直動量は、回転半径dを用いて、2πdとして計算される。
溝112、113には、NBR等を材料とするチューブ状の弾性部材114、114が、全周にわたり嵌装される。回転ローラ110が押圧部材120によってロッド202の表面に押圧されていないフリーの状態では、回転中心軸110cから弾性部材114の最外周面までの距離d1は、回転ローラ110の回転半径dよりも僅かに大きな距離(d1>d)に設定されている。
回転ローラ110は、押圧部材120のバネ122のバネ力によって、ロッド202の表面に押圧される。このため回転ローラ110のうち、ロッド202との接触面では、弾性部材114が変形し撓み、凸部110dがロッド202の表面に接触し回転中心軸110cからロッド202表面までの距離が、回転ローラ110の回転半径dとほぼ同じ距離になる。
回転ローラ110は、バネ力によってロッド202の表面に押圧されているため、弾性部材114がロッド202の表面と接触する面で、バネ力と弾性部材114の摩擦係数に応じた摩擦力が発生する。ここで、弾性部材114は、回転ローラ110(回転ローラ本体)の材質(S45C)よりも摩擦係数が大きいため、スリップを生じることなく、ロッド202の直動運動を、回転ローラ110の回転運動に忠実に変換する。
一方、凸部110dについてもバネ力によってロッド202の表面に接触するが、凸部110dは、回転ローラ110(回転ローラ本体)の材質(S45C)で構成されているため、硬く、直動するロッド表面に押圧されても、半径方向に容易に変形したり、消耗したりすることがない。このため回転中心軸110cから回転ローラ表面までの距離は、一定値d、つまり当初の設計値である回転ローラ110の回転半径dに保持される。
このため回転ローラ110のスリップによる誤差を招くことがなく、また、回転ローラ110が変形したり摩耗したりして実際の回転半径が設計上の回転半径dからずれてしまうことによる演算誤差も生じることない。これによりロッド202の直動量(ストローク)は、極めて精度よく計測される。
つぎに、検出媒体用磁石145の着磁面の構成例、センサ部材135の配置例について説明する。
図6は、検出媒体用の磁石145の着磁面の構成例を示している。図6は、図5(a)で回転体133をZ視方向(図5(a)の右側から見た方向)からみた図である。
同図6(a)、(b)、(c)に示すように、磁石145は、回転体133の回転角度に応じて、N極、S極が交互に入れ替わるように構成されている。図6(a)は、S極、N極が1回、交互に入れ替わる構成例であり、図6(b)は、S極、N極が2回、交互に入れ替わる構成例であり、図6(c)は、S極、N極が3回、交互に入れ替わる構成例である。
図7(a)は、センサ部材135の配置例を示している。図7は、図5(a)でセンサ部材135をZ視方向(図5(a)の右側から見た方向)からみた図である。図7(b)は、図6(a)に示す磁石145を設けた場合のセンサ部材135A、135Bの配置例であり、センサ部材135A、135Bを90゜の位相差だけ位相がずれるように設置している。図6(b)に示す磁石145の場合には、センサ部材135A、135Bを45゜の位相差だけ位相がずれるように設置すればよく、また、図6(c)に示す磁石145の場合には、センサ部材135A、135Bを30゜の位相差だけ位相がずれるように設置すればよい。
図7(a)に示すように、センサ部材135は、回転体133の回転面上において、回転中心軸132cから所定距離離間された位置に、設けられている。
図8(a)は、図7(a)に対応する回転ローラ110の回転角度と、センサ部材135で検出される電気信号(電圧)との関係を例示している。
回転ローラ110が回転し、それに応じて検出媒体用磁石145が装着された回転体133が回転すると、回転角度に応じて、センサ部材135を透過する磁力(磁束密度)が周期的に変化し、電気信号(電圧)が周期的に変化する。
センサ部材135から出力される電圧の大きさから回転ローラ110の回転角度を計測することができる。
図7(b)は、センサ部材135A、135Bを、回転体133の回転面上において、回転中心軸132cから所定距離離間された位置に、所定角度(たとえば90゜)だけ位相をずらして配置した場合を示している。
図8(b)は、図6(a)に示す磁石145を設け、図7(b)に示すセンサ部材135A、135Bを設けた場合に対応する図であり、回転ローラ110の回転角度と、センサ部材135A、135Bで検出される電気信号(電圧)との関係を例示している。
回転ローラ110が回転し、それに応じて検出媒体用磁石145が装着された回転体133が回転すると、回転角度に応じて、センサ部材135A、135Bを透過する磁力(磁束密度)が周期的に変化し、電気信号(電圧)が周期的に変化する。センサ部材135A、Bを2個配置した場合には、各センサ部材135A、135Bの検出信号の位相がずれているため、回転ローラ110の変位量のみならず、回転ローラ110の絶対角度を計測することができる。また、回転ローラ110の回転方向についても計測することができる。
また、図8(c)に示すように、センサ部材135あるいはセンサ部材135A、135Bから出力される電気信号(電圧)の1周期が繰り返される数をカウントすることで、回転ローラ110の回転数を計測することができる。
そして、図8(a)あるいは図8(b)に示す検出信号から得られる回転ローラ110の回転角度と、図8(c)のようにしてカウントされる回転ローラ110の回転数とに基づいて、シリンダ200のロッド202の変位量(ストローク)が計測される。
以下、計測用コントローラ30で行われる処理について説明する。
(第1実施例)
本実施例では、図10(a)に示すように、図8(a)と同様に、回転センサ100から1つの検出信号400Aが出力される場合を想定する。
さて、前述したように、本実施形態では、油圧シリンダ200のストローク量センサを、回転センサ100で構成し、回転センサ100を磁力センサで構成している。この場合、計測ストローク位置に誤差が生じやすくなるという問題がある。特に、油圧ショベルなどの建設機械のように、計測対象の油圧シリンダ200が多数あるシステムに適用した場合には、個々の回転センサ100毎に出力信号の波形が異なる、つまり同じストローク位置にあっても検出電圧値が各回転センサ100で異なる、という問題がある。
すなわち、磁力が検出媒体の場合、検出対象の磁石145の精度や磁石145の取付誤差等に起因して、回転センサ100の検出信号の波形にゆがみが生じやすく、これらゆがみは、個々の回転センサ100毎に異なる。ここで、仮に個々の回転センサ100の検出波形を一義的に正弦波形とみなし、正弦波形の関数式を用いて、回転センサ100の出力電圧を回転角度に工学単位変換したとしても、それによって計測される回転角度は、検出信号の波形のゆがみによって誤差を含むことになる。また、個々の回転センサ100毎に検出信号の波形のゆがみが異なることから、回転角度の計測値がばらつくことになる。
また、磁力センサで検出される検出レベルは、磁石の磁化特性によるものであり、実際には正弦波形ではない。
そこで、本第1実施例では、計測用コントローラ30の記憶テーブル36に、図9(a)に示すように、予め、回転センサ100の出力電圧値VAと回転角度θAとの対応関係をデータテーブル形式で記憶させておき、計測用コントローラ30に、回転センサ100の検出信号(電圧値VA)が入力されると、図9(a)に示す対応関係を参照して、検出された電圧値VAに対応する回転角度θAを求め、求められた回転角度θAに基づいて、油圧シリンダ200のストローク位置を計測するようにしている。
すなわち、図9(a)に示すように、回転センサ100から出力される出力電圧値VAと、回転ローラ110の回転角度θAとの対応関係を予め求めておき、記憶テーブル36に記憶しておく。
この場合、ブーム、アーム、バケットの各油圧シリンダ200に設けられた各回転センサ100毎に、出力電圧値VAと回転角度θAの対応関係を予め求めておき、ブーム、アーム、バケットの各回転センサ100毎に対応関係を記憶させておくようにする。これは、個々の回転センサ100毎に、検出対象の磁石145の精度や磁石145の取付誤差等が異なり、それ故に検出信号400Aの波形が異なるという理由によるものである。
計測用コントローラ30に、図10(a)に示すように、ブーム用油圧シリンダ200に設けられた回転センサ100から検出信号400A(電圧値VA)が入力されると、記憶テーブル36から、図9(a)に示すように、ブームシリンダ200の回転センサ100についての対応関係が選択され、現在の検出電圧値VAに対応する回転角度θAが読み出され、読み出された回転角度θAに基づいて、ブーム用油圧シリンダ200のストローク位置が計測される。
なお、図10(a)に示すように、回転センサ100の検出信号400Aの波形は、正弦波状であるため、回転センサ100の出力電圧値VAに対応する回転角度は、異なる値θA1、θA2の2つが読み出される。この場合には、前回に得られた回転角度θA0と今回の回転角度の候補θA1、θA2を比較して、前回の回転角度θA0に近い方の回転角度(θA1)を選択すればよい。
アーム用油圧シリンダ200、バケット用油圧シリンダ200に設けられた回転センサ100についても同様な処理が実行される。
(第2実施例)
本第2実施例は、図10(b)に示すように、図8(b)と同様に、回転センサ100から、位相が異なる2つの検出信号、つまり第1の検出信号400A、第2の検出信号400Bが出力される場合を想定する。
図9(b)は、記憶テーブル36の記憶内容を示す図である。回転センサ100から出力される第1の検出信号400Aの出力電圧値VAと、回転ローラ110の回転角度θAとの対応関係を予め求めておき、記憶テーブル36に記憶しておく。同様に、回転センサ100から出力される第2の検出信号400Bの出力電圧値VBと、回転ローラ110の回転角度θBとの対応関係を予め求めておき、記憶テーブル36に記憶しておく。
この場合、ブーム、アーム、バケットの各油圧シリンダ200に設けられた各回転センサ100毎に、出力電圧値VAと回転角度θAの対応関係、出力電圧値VBと回転角度θBの対応関係を予め求めておき、ブーム、アーム、バケットの各回転センサ100毎に対応関係を記憶させておくようにする。
計測用コントローラ30に、図10(b)に示すように、ブーム用油圧シリンダ200に設けられた回転センサ100から第1の検出信号400A(電圧値VA)が入力されると、記憶テーブル36から、図9(b)に示すように、ブームシリンダ200の回転センサ100の第1の検出信号400Aについての対応関係が選択され、現在の検出電圧値VAに対応する回転角度(以下、第1の回転角度)θA1、θA2が読み出される。同様に、計測用コントローラ30に、図10(b)に示すように、ブーム用油圧シリンダ200に設けられた回転センサ100から第2の検出信号400B(電圧値VB)が入力されると、記憶テーブル36から、図9(b)に示すように、ブームシリンダ200の回転センサ100の第2の検出信号400Bについての対応関係が選択され、現在の検出電圧値VBに対応する回転角度(以下、第2の回転角度)θB1、θB2が読み出される。
つぎに、第1の回転角度θA1、θA2と、第2の回転角度θB1、θB2との差、つまりθA1−θB1、θA2−θB2、θA1−θB2、θA2−θB1がそれぞれ算出される。
そして、これらの第1および第2の回転角度の組合せの中で、両回転角度の差が最も小さい組合せ(θA2−θB1)が選択される。
つぎに、その選択された第1および第2の回転角度の組合せの差(θA2−θB1)が所定値以下になっているか否か、つまり両回転角度差に異常はないかが判断される。
両回転角度の差が所定値以下になっている場合には、その所定値以下となっている第1の回転角度(θA2)と第2の回転角度(θB1)に基づいて、ブーム用油圧シリンダ200のストローク位置が計測される。たとえば第1の回転角度(θA2)と第2の回転角度(θB1)の平均値を回転ローラ110の現在の回転角度として、ブーム用油圧シリンダ200のストローク位置が計測される。
一方、第1の回転角度と第2の回転角度との差が所定値以下にならない場合、つまり最も差の小さい両回転角度の組合せ(θA2−θB1)についても、その差が所定値以下にならない場合には、ブーム用油圧シリンダ200の回転センサ100で現在、異常が発生していると判断し、計測処理を中止する。
アーム用油圧シリンダ200、バケット用油圧シリンダ200に設けられた回転センサ100についても同様な処理が実行される。
以上のように第1実施例、第2実施例によれば、磁力を検出媒体とする回転センサ100の検出信号をコントローラに入力させて、計測処理を行うに際して、コントローラに入力される個々の回転センサ100の波形が異なっていたとしても、確実かつ簡易な方法で、誤差なく高精度に回転角度を計測できる。
また、第2実施例によれば、回転センサ100から出力される第1および第2の検出信号400A、400Bに基づいて、回転センサ100の異常を判断することができ、計測結果の信頼性を向上させることができる。
なお、第1実施例、第2実施例では、回転センサ100が油圧ショベルなどの建設機械に搭載され油圧シリンダのストローク量を検出する場合を想定して説明したが、本発明としては、回転センサ100が搭載される機械、検出対象は、任意である。
(第3実施例)
ところで、油圧ショベルなどの油圧作業機械は、作業終了後にキースイッチ9をオフにして電源を切った後でも、長時間が経過(たとえば1か月)すれば、バケット等の作業機が自重によって下方に移動し、油圧シリンダ200内に残っていた圧油が徐々に排出され、油圧シリンダ200のストローク位置が変化することがある。
また、油圧作業機械では、作業終了後にキースイッチ9をオフにして電源8を切った後に、オペレータによって油圧シリンダ200の「圧抜き」の操作が行われることがある。
「圧抜き」操作が行われると、電源オフ期間中でも油圧シリンダ200内に残っていた圧油が排出され、油圧シリンダ200のストローク位置が変化することになる。
このように油圧作業機械では、電源オフ(エンジン停止)期間中でも油圧シリンダ200のストローク位置が変化することがある。
一方、回転センサ100の検出信号を計測用コントローラ30に入力させて計測用コントローラ30で油圧シリンダ200のストローク位置を計測しようとする場合には、その位置計測処理は、計測用コントローラ30が起動中、つまり計測用コントローラ30に電源8が投入されているときのみ行われる。
しかし、仮に、計測用コントローラ30の起動中以外の電源オフ期間に、油圧シリンダ200のストローク位置が変化してしまうと、その間は計測用コントローラ30で回転センサ100の検出信号に基づく計測処理が行われないため、電源8が再度オン(エンジン6が稼動)され、再度、計測用コントローラ30で計測処理を開始しようとしても、電源オフ期間中のストローク位置変化量がわからないため、位置計測処理そのものを行えなくなるおそれがある。
そこで、本第3実施例では、電源オフ(エンジン停止)期間中に油圧シリンダ200のストローク位置が変化するような場合であったとしても、計測用コントローラ30で回転センサ100の検出信号に基づき正確なストローク位置を確実に計測できるようにするものである。
図11、図12は、第3実施例の処理手順を示すフローチャートである。また、図13は、電源オフ、オンの前後のストローク位置を説明する図である。図13(a)は図8(c)に対応する図で、時間と、回転角度θ、回転数nとの関係を示す図で、図13(b)は、図13(a)に対応させて、時間とストローク位置Sとの関係を示す図である。
なお、本第3実施例では、第1実施例の図10(a)で説明したように、回転センサ100から1つの検出信号400Aが出力されて、同じ電圧値VAから2つの回転角度θA1、θA2が求められる場合を想定して説明する。
図11(a)のステップ1001に示すように、計測用コントローラ30では、入力されるスイッチ状態信号Kのレベル(オン、オフ)が監視されており、エンジンキースイッチ9がオフ操作されたか否かが判断される(ステップ1001)。
入力されるスイッチ状態信号Kのレベルがオフであり、エンジンキースイッチ9がオフ操作されたと判断されると(ステップ1001の判断YES)、つぎに、油圧シリンダ200の作動が可能な状態であるか否かの情報に基づいて、油圧シリンダ200の作動が可能な状態であるか否かが判断される。「油圧シリンダ200の作動が可能な状態であるか否かの情報」については、ここでは一例を挙げるが、他の各種例については後述する。
たとえば、図1の構成を想定すると、オフのスイッチ状態信号Kが入力されると(ステップ1001の判断YES)、内部のタイマ(ソフトウエアタイマあるいはハードタイマ)が作動し、設定時間まで計時を行う。ここで、タイマの設定時間は、たとえば「圧抜き」操作が可能な時間に設定される。すなわち、電源がオフされ、油圧式の操作レバー装置1に元圧を供給する定容量型ポンプ14が稼動を停止したとしても、電源オフ後の所定時間(たとえば30秒程度)は、アキュムレータ19には、操作レバー装置1を作動させて、油圧信号Ppを制御弁2に供給して制御弁2を駆動させて油圧シリンダ200を作動させるだけの圧力が残っており、その間は「圧抜き」操作は可能だからである(ステップ1002)。
上記タイマによって設定時間の計時が終了すると、油圧シリンダ200の作動が不可能になったと判断される。つまり「圧抜き」操作はもはや不可能であり、「圧抜き」操作によっては油圧シリンダ200のストローク位置は変化しないと判断される(ステップ1002の判断YES)。そして、つぎに、回転センサ100の現在の検出信号400A(現在の電圧値VA)が入力され、第1実施例と同様に、現在の回転角度の候補値θA1′、θA2′が記憶テーブル36から読み出され、これらに基づき現在の回転角度θA0が求められる。この回転角度θA0が旧回転角度、つまり電源オフ時の回転角度θA0としてバックアップメモリに記憶される。また、回転ローラ110の回転数nがカウントされていれば、現在の回転数のカウント値nが、旧回転数、つまり電源オフ時の回転数nとしてバックアップメモリに記憶される(ステップ1003)。
つぎに、計測用コントローラ30の主要電源回路33の駆動がオフされ、計測用コントローラ30は起動停止状態、つまり電源オフ状態となる(ステップ1004)。
スイッチ状態信号Kのレベル(オン、オフ)により、計測用コントローラ30の主要電源回路33が起動される。すなわち、主要電源回路33は、ロジック回路を備えており、エンジンキースイッチ9がオンのとき、またはソフトウェアからの指令信号が「電源オン」を指示しているときには、電源オンとなり、エンジンキースイッチ9がオフで、かつソフトウェアからの指令信号が「電源オン」でないときには、電源オフとなる。
主要電源回路33が起動されると(電源オンされると)(ステップ1101の判断YES)、バックアップメモリから旧回転角度(電源オフ時の回転角度)θA0、旧回転数(電源オフ時の回転数)nが読み出される。
また、回転センサ100の現在の検出信号400A(現在の電圧値VA)が入力され、第2実施例と同様に、現在の回転角度(図13におけるθA1)が求められる(ステップ1102)。
すなわち、図13(a)、(b)に例示するように、電源オフ時のストローク位置SA0から今回の電源オン時のストローク位置の候補値SA1、SA2までのストローク距離が小さくなる方の候補値SA1を、現在のストローク位置SA1として選択し、油圧シリンダ200のストローク位置Sが計測される(ステップ1103)。
ステップ1103のストローク位置計測処理は、図12にサブルーチンで示される。
この位置計測処理は、回転センサ100の回転ローラ110が、旧回転角度θA0から新回転角度θA1になるまでには、半回転〜1回転(180゜+α)以上には回転していないという前提で行われるものである。上述したステップ1002では、回転ローラ110を1回転以上回転させることがある「圧抜き」操作がもはや不可能になったときの回転角度を、旧回転角度θA0としており、つぎに電源がオンされるまでには、回転ローラ110は1回転以上には大きく回転されることはないからである。電源オフからオンまでの間に回転ローラ110が1回転以上回転されてしまうと、その間では計測用コントローラ30で回転数nをカウントする処理が行われないため回転数は不定となり、位置計測処理を行うことはできない。このような状況になることをステップ1002の処理で取り除いたものである。
以下においては、図13における図中右方向の回転方向を正転方向、図中左方向の回転方向を逆転方向とする。
同図12に示すように、まず、新回転角度θA1から旧回転角度θA0を減算した値が0゜以上であるか否か、つまり、
新回転角度(θA1)−旧回転角度(θA0)≧0゜
であるかが判断される(ステップ1201)。
このステップ1201の判断がYESであるとすると、つぎに、新回転角度θA1から旧回転角度θA0を減算した値が180゜+αよりも小さいか否か、つまり、
新回転角度(θA1)−旧回転角度(θA0)<180゜+α
であるかが判断される。ここで、αは、ブーム、アーム、バケットなどの作業機が重力によって落下されるなど、回転ローラ110が正転方向に回転することが予想される場合には、αは、0゜<α<180゜の範囲で設定されておかれ、逆回転が予想される場合には、αは、180゜<α<0゜の範囲で設定されておかれる(ステップ1202)。
このステップ1202の判断がYESであると、回転ローラ110は正転方向に回転したものと判断される(ステップ1203)。
一方、ステップ1202の判断がNOであると、回転ローラ110は逆転方向に回転したものと判断される(ステップ1204)。
ステップ1201の判断がNOであったとすると、つぎに、新回転角度θA1から旧回転角度θA0を減算した値が−(180゜−α)よりも大きいか否か、つまり、
新回転角度(θA1)−旧回転角度(θA0)>−(180゜−α)
であるかが判断される(ステップ1205)。
このステップ1205の判断がYESであると、回転ローラ110は逆転方向に回転したものと判断される(ステップ1206)。
一方、ステップ1205の判断がNOであると、回転ローラ110は正転方向に回転したものと判断される(ステップ1207)。
つぎに、上記の判断の結果、回転ローラ110が正転方向に回転され、かつ新回転角度θA1が180゜よりも小さく(新回転角度(θA1)<180゜)、かつ旧回転角度θA0が180゜よりも大きい(旧回転角度(θA0)>180゜)か否かが判断される(ステップ1208)。
ステップ1208の判断がYESである場合には、旧回転角度θA0から新回転角度θA1に移行するまでの間に、360゜から0゜への切り替わりが発生したものと判断し(図13(a)参照)、旧回転数nを+1だけインクリメントして(正転方向に1回転回転したものとして)、新たな回転数n(n+1→n)とする(ステップ1209)。
一方、ステップ1208の判断がNOである場合には、つぎに、回転ローラ110が逆転方向に回転され、かつ新回転角度θA1が180゜よりも大きく(新回転角度(θA1)>180゜)、かつ旧回転角度θA0が180゜よりも小さい(旧回転角度(θA0)<180゜)か否かが判断される(ステップ1210)。
ステップ1210の判断がYESである場合には、旧回転角度θA0から新回転角度θA1に移行するまでの間に、0゜から360゜への切り替わりが発生したものと判断し、旧回転数nを−1だけインクリメントして(逆転方向に1回転回転したものとして)、新たな回転数n(n−1→n)とする(ステップ1211)。
ステップ1210の判断がNOである場合には、回転数nを更新することなく、つぎのステップ1212に移行する。また、ステップ1209、ステップ1211で回転数nを更新した後に、ステップ1212に移行する。
ステップ1212では、現在の回転ローラ110の回転数n、新回転角度θA1に基づいて、下記演算式によって、油圧シリンダ200のストローク位置Sが演算される。
S=(回転数n+新回転角度(θA1)/360゜)×回転半径d×2π
ここで、回転半径dは、前述したように、ロッド202の表面から回転ローラ110の回転中心軸110cまでの距離のことである(ステップ1212)。
以上のように本第3実施例によれば、電源オフ(エンジン停止)期間中に油圧シリンダ200のストローク位置が変化するような場合であったとしても、油圧シリンダ200の作動が不可能になったときの回転数、回転角度を旧回転角度、旧回転数として、この旧回転数、旧回転数に基づいて、電源が再度オンされたときのストローク位置を計測するようにしたので、回転数が不定になることなくストローク位置の計測を確実に行うことができる。
(第4実施例)
上述した第3実施例では、油圧シリンダ200の作動が不可能になったか否かの情報として、エンジンキースイッチ9がオフ操作されてから設定時間が経過したか否かの情報を用いているが(ステップ1002)、これは一例であり、つぎに掲げるように各種の他の実施が可能である。以下においては、図11、図12のフローチャートについて、ステップ1001、1002、1101に係る部分のみ説明し、他の処理については第3実施例と同様の処理が行われるものとして、詳細な説明は省略する。
(第4実施例の他の実施例1)
図1の構成において、油圧シリンダ200の作動が不可能になったか否かの情報として、圧力センサ15で検出された圧力が所定のしきい値以下になったか否かの情報を用いてもよい。
すなわち、オフのスイッチ状態信号Kが入力されると(ステップ1001の判断YES)、圧力センサ15の検出信号を入力し、検出圧力が所定のしきい値以下になったか否か、つまりアキュムレータ19内の圧力が、「圧抜き」操作が不可能になる圧力にまで低下したか否かが判断される(ステップ1002)。
圧力センサ15で検出された圧力が所定のしきい値以下になったと判断されると、もはや油圧シリンダ200の作動は不可能になったと判断して(ステップ1002の判断YES)、そのときの回転ローラ110の回転角度、回転数を求め、これを旧回転角度、旧回転数として記憶して(ステップ1003)、計測用コントローラ30の電源をオフにする(ステップ1004)。
(第4実施例の他の実施例2)
図2の構成において、制御用コントローラ20から、油圧シリンダ200の作動が不可能になったか否かの情報の信号Jを、計測用コントローラ30に入力させ、計測用コントローラ30において、この入力信号Jに基づいて油圧シリンダ200の作動が不可能になったか否かを判断してもよい。
すなわち、制御用コントローラ20には、スイッチ状態信号Kが入力されており、このスイッチ状態信号Kのレベル(オン、オフ)が常時監視されていて、エンジンキースイッチ9がオン、オフ操作されたか否かが常時判断されている。
制御用コントローラ20で、スイッチ状態信号Kがオフ状態になったと判断されると、このオフ状態から設定時間(操作レバー3aによって「圧抜き」操作が行われる可能性のある時間)が経過したか否かが判断される。また、電気式の操作レバー装置3から入力される操作電気信号Stを監視して、オフ状態になってから操作レバー3aの操作が継続して行われているか否かを判断してもよい。
このように制御用コントローラ20では、エンジンキースイッチ9がオフ操作されてから、油圧シリンダ200の作動が不可能になったか否かの判断がなされ、その判断内容(1レベル、0レベル)の信号Jが生成される。
制御用コントローラ20では、信号Jが1レベルに変化すると、もはや「圧抜き」操作はされないと判断して、制御用コントローラ20の主要電源回路23の駆動がオフにされ、制御用コントローラ20は起動停止状態、つまり電源オフ状態となる。なお、エンジンキースイッチ9がオン状態になっていれば、信号Jは0レベルとなっている。
このように信号Jは、エンジンキースイッチ9のオンオフにかかわらず、油圧シリンダ200の作動が可能な状態、つまり制御電気信号iが制御弁4に供給可能な状態であれば、0レベルであり、エンジンキースイッチ9がオフであって、油圧シリンダ200の作動が不可能な状態、つまり制御電気信号iが制御弁4に供給不可能な状態になると、1レベルとなる。
計測用コントローラ30では、図11(a)のステップ1001、1002の代わりに以下の処理が実行される。
制御用コントローラ20から、油圧シリンダ200の作動が不可能になったか否かを示す信号Jが入力され、入力された信号Jのレベルが1であるか0であるかが判断される(ステップ1001′、1002′)。
信号Jのレベルが1レベルになったと判断されると、油圧シリンダ200の作動は不可能になったと判断して(ステップ1001′、1002′の判断YES)、そのときの回転ローラ110の回転角度、回転数を求め、これを旧回転角度、旧回転数として記憶して(ステップ1003)、計測用コントローラ30の電源をオフにする(ステップ1004)。
計測用コントローラ30では、図11(b)のステップ1101の代わりに以下の処理が実行される。
制御用コントローラ20から、油圧シリンダ200の作動が不可能になったか否かを示す信号Jが入力され、入力された信号Jのレベルが0であるか1であるかが判断される(ステップ1101′)。
入力される信号Jのレベルが0であり、エンジンキースイッチ9がオン操作されたと判断されると(ステップ1101′の判断YES)、つぎのステップ1101に移行して、旧回転角度、旧回転数を読み出すとともに、新回転角度を求める処理が実行される(ステップ1101)。
ところで、油圧ショベル等の油圧作業機械には、通常、作業機が多数(ブーム、アーム、バケット)あり、各作業機をストローク位置センサからの検出信号に基づいて制御しようとすると、多数のストローク位置センサが必要になる。しかも上述した各実施例のように、ストローク位置を、回転センサ100とリセットセンサ300の検出信号に基づいて、計測しようとすると、センサの数は、更に膨大な数となり、演算処理は煩雑かつ多大な時間を要することになる。そして、更に、仮に、これら膨大な数のセンサに基づく煩雑な計測処理を、制御信号を生成する処理も行わなければならない制御用コントローラ20で行わせようとすると、制御用コントローラ20における演算負荷は、膨大なものとなる。このため演算処理能力の高い大容量の制御用コントローラ20を新規に開発しなければならなくなる。そして、演算処理能力の高い大容量の制御用コントローラ20を新規に開発するとなると、車内の制御システムのコストが嵩むという問題が招来する。
この点、本実施例によれば、図3に示すように、制御信号を生成、出力する制御用コントローラ20とは、独立して計測用コントローラ30を設け、この計測用コントローラ30に回転センサ100、リセットセンサ300の検出信号を入力させて、ストローク位置の計測処理を行わせ、計測結果を制御用コントローラ20に送るようにしており、制御用コントローラ20では、ストローク位置計測処理を行う必要がない。
このため、新規に演算処理能力の高い大容量の制御用コントローラ20を開発する必要がなくなり、既存の制御用コントローラ20をそのまま利用することができ、油圧作業機械の車内の制御システムのコストを飛躍的に低減させることができる。
なお、第3実施例、第4実施例では、回転センサ100が油圧ショベルなどの建設機械に搭載され油圧シリンダのストローク量を検出する場合を想定して説明したが、本発明としては、回転センサ100が搭載される機械、検出対象は、任意である。
(第5実施例)
ところで、本実施形態のように回転センサ100を磁力センサで構成したとすると、回転センサ100で検出される信号レベル(電圧値)は、温度や他の磁界発生源(ノイズ)や検出対象の磁石145の取付け誤差、回転ローラ110のガタなどの影響を受け、変動する場合がある。たとえば、図14に示すように、低温から高温に変化するに伴い磁力が弱まり、回転センサ100で検出される信号レベルが低下する。このため回転センサ100の出力電圧Vを、記憶テーブル36のデータにしたがいそのまま回転角度θに変換すると、実際には真の回転角度は同じでありながら、低温時と高温時とで計算上の回転角度が異なってしまい、回転角度の計測値に誤差が生じることになる。
そこで、本第5実施例は、磁力を検出媒体とする回転センサ100の検出信号レベルが温度等によって変動したとしても、確実かつ簡易な方法で、誤差なく高精度に回転角度を計測できるようにするものである。
図21、図22、図23は本第5実施例の処理手順を示すフローチャートであり、図16は図21、図22、図23の説明図で、図10(b)と同様に回転センサ100から出力される互いに位相が異なる第1および第2の検出信号400A、400Bを示している。ただし、図16では、説明の便宜上、図10(b)に示す第1および第2の検出信号400A、400Bを入れ換えて図示している。
本第5実施例では、予め第1および第2の検出信号400A、400Bの最大ピーク電圧値、最小ピーク電圧値の基準値を記憶しておき、回転センサ100から出力される第1および第2の検出信号400A、400Bが1周期変化したときの各電圧値の中から最大ピーク電圧値、最小ピーク電圧値を求め、求められた最大ピーク電圧値、最小ピーク電圧値と、記憶されている最大ピーク基準電圧値、最小ピーク基準電圧値とを比較し、求められた最大ピーク電圧値が記憶されている最大ピーク基準電圧値に一致しかつ求められた最小ピーク電圧値が記憶されている最小ピーク基準電圧値に一致するように、回転センサ400から出力される第1および第2の検出信号400A、400Bを補正する処理が計測用コントローラ30で行われる。
図21、図22、図23、図16を説明するにあたり、演算処理に用いられる符号の意味について以下のように定義する。
A1;第1の検出信号400Aの検出信号レベル(検出電圧値)の最大値が格 納されるアドレス(以下、第1信号最大値変数A1)
A2;第1の検出信号400Aの検出信号レベル(検出電圧値)の最小値が格 納されるアドレス(以下、第1信号最小値変数A2)
B1;第2の検出信号400Bの検出信号レベル(検出電圧値)の最大値が格 納されるアドレス(以下、第2信号最大値変数B1)
B2;第2の検出信号400Bの検出信号レベル(検出電圧値)の最小値が格 納されるアドレス(以下、第2信号最小値変数B2)
posi〔0〕;今回、通過したと判断されたピークのタイプが格納されるアドレ ス(以下、今回ピークタイプposi〔0〕)
posi〔1〕;前回、通過したと判断されたピークのタイプが格納されるアドレ ス(以下、前回ピークタイプposi〔1〕)
posi〔2〕;前々回、通過したと判断されたピークのタイプが格納されるアド レス(以下、前々回ピークタイプposi〔2〕)
AMAX;第1信号最大値変数A1に格納された値が真の最大ピーク値であ ると確定された場合に、その最大ピーク値が格納されるメモリ (以下、第1信号最大ピーク値メモリAMAX)
AMIN;第1信号最小値変数A2に格納された値が真の最小ピーク値であ ると確定された場合に、その最小ピーク値が格納されるメモリ( 以下、第1信号最小ピーク値メモリAMIN)
BMAX;第2信号最大値変数B1に格納された値が真の最大ピーク値であ ると確定された場合に、その最大ピーク値が格納されるメモリ( 以下、第2信号最大ピーク値メモリBMAX)
BMIN;第2信号最小値変数B2に格納された値が真の最小ピーク値であ ると確定された場合に、その最小ピーク値が格納されるメモリ( 以下、第2信号最小ピーク値メモリBMIN)
ここで、ピークタイプとは、ピーク値が最大ピーク値であるか最小ピーク値であるかの別、ピーク値をとった信号が第1の検出信号400Aであるか第2の検出信号400Bであるかの別の識別する符号のことであり、図16に示すように、第2の検出信号400Bが最大ピーク値をとるピークタイプ(2)、第1の検出信号400Aが最大ピーク値をとるピークタイプ(3)、第2の検出信号400Bが最小値をとるピークタイプ(4)、第1の検出信号400Aが最小値をとるピークタイプ(1)がある。
また、各メモリAMAX、AMIN、BMAX、BMINには、回転ローラ110の10回転分のデータが記憶される。
また、第1信号最大値変数A1、第2信号最大値変数B1に格納される値の初期値は、0Vに設定されており、第1信号最小値変数A2、第2信号最小値変数B2に格納される値の初期値は、5Vに設定されている。
また、第1信号最大値変数A1に格納された値が真の最大ピーク値であると確定されると、第1信号最大値変数A1に格納される値は、初期値(0V)にクリアされ、第1信号最小値変数A2に格納された値が真の最小ピーク値であると確定されると、第1信号最小変数A2に格納される値は、初期値(5V)にクリアされる。第2信号最大値変数B1、第2信号最小値変数B2についても同様にしてクリアされる。
図21に示すように、処理が開始されると、第1の検出信号400Aの現在の検出電圧値が、第1信号最大値変数A1の格納値よりも大きいか否かが判断される(ステップ1301)、このステップ1301の判断がYESの場合には、第1信号最大値変数A1の格納値を、第1の検出信号400Aの現在の検出電圧値によって更新して(ステップ1302)、つぎのステップ1303に移行する。ステップ1301の判断がNOの場合にも、ステップ1303に移行する。
ステップ1303では、第2の検出信号400Bの現在の検出電圧値が、第2信号最大値変数B1の格納値よりも大きいか否かが判断される(ステップ1303)、このステップ1303の判断がYESの場合には、第2信号最大値変数B1の格納値を、第2の検出信号400Bの現在の検出電圧値によって更新して(ステップ1304)、つぎのステップ1305に移行する。ステップ1303の判断がNOの場合にも、ステップ1305に移行する。
第1の検出信号400Aの現在の検出電圧値が、第1信号最小値変数A2の格納値よりも小さいか否かが判断される(ステップ1305)、このステップ1305の判断がYESの場合には、第1信号最小値変数A2の格納値を、第1の検出信号400Aの現在の検出電圧値によって更新して(ステップ1306)、つぎのステップ1307に移行する。ステップ1305の判断がNOの場合にも、ステップ1307に移行する。
ステップ1307では、第2の検出信号400Bの現在の検出電圧値が、第2信号最小値変数B2の格納値よりも小さいか否かが判断される(ステップ1307)、このステップ1307の判断がYESの場合には、第2信号最小値変数B2の格納値を、第2の検出信号400Bの現在の検出電圧値によって更新して(ステップ1308)、図22に示すつぎのステップ1309に移行する。ステップ1307の判断がNOの場合にも、ステップ1309に移行する。
ステップ1309では、第1の検出信号400Aの現在の検出電圧値が最小ピーク値であるか否かが判定される。たとえば図16に示すように、第1の検出信号400Aの現在の検出電圧値が、第2の検出信号400Bの現在の検出電圧値よりも小さく、かつ第1の検出信号400Aの現在の検出電圧値がしきい値C1よりも小さいか否かを判断することによって、上記判定がなされる(ステップ1309)。
つぎに、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(2)、(3)、(4)または(4)、(3)、(2)であるか否かが判断される(ステップ1310)。
ステップ1310の判断がYESの場合には、図16に示すように、最大ピーク値(ピークタイプ(3))の前後で、正転((2)→(3)→(4))または逆転((4)→(3)→(2))することで、第1の検出信号400Aが1周期変化したものと判断して、第1信号最大値変数A1に現在格納されている値が、真の最大ピーク値であると確定して、第1信号最大値変数A1の現在の格納値を第1信号最大ピーク値メモリAMAXに記憶させる。また、第1信号最大値変数A1の格納値を真の最大ピーク値であると確定したことに伴い、第1信号最大値変数A1の格納値は、初期値(0V)にクリアされる(ステップ1311)。
つぎに、計測用コントローラ30に電源が投入された直後であるか否かが判断される。あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(3)、(4)または(3)、(2)であるか否かが判断される(ステップ1312)。
計測用コントローラ30に電源が投入された直後であると判断された場合、あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(3)、(4)または(3)、(2)であると判断された場合には、図16に示すように、第1の検出信号400Aの最大ピーク値(ピークタイプ(3))、第2の検出信号400Bの最小ピーク値(ピークタイプ(4))を経由して、第1の検出信号400Aが最小ピーク値(ピークタイプ(1))となったか(正転の場合)、第1の検出信号400Aの最大ピーク値(ピークタイプ(3))、第2の検出信号400Bの最大ピーク値(ピークタイプ(2))を経由して、第1の検出信号400Aが最小ピーク値(ピークタイプ(1))となった(逆転の場合)ものと判断して、今回ピークタイプposi〔0〕の内容を、ピークタイプ(3)に更新する。なお、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕の内容については、それぞれ前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に現在格納されているピークタイプによって更新される(ステップ1313)。
ステップ1313の処理が終了するか、ステップ1309の判断がNOである場合には、ステップ1314に移行する。
ステップ1314では、第2の検出信号400Bの現在の検出電圧値が最小ピーク値であるか否かが判定される。たとえば、第2の検出信号400Bの現在の検出電圧値が、第1の検出信号400Aの現在の検出電圧値よりも小さく、かつ第2の検出信号400Bの現在の検出電圧値がしきい値C1よりも小さいか否かを判断することによって、上記判定がなされる(ステップ1314)。
つぎに、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(1)、(2)、(3)または(3)、(2)、(1)であるか否かが判断される(ステップ1315)。
ステップ1315の判断がYESの場合には、最大ピーク値(ピークタイプ(2))の前後で、正転((1)→(2)→(3))または逆転((3)→(2)→(1))することで、第2の検出信号400Bが1周期変化したものと判断して、第2信号最大値変数B1に現在格納されている値が、真の最大ピーク値であると確定して、第2信号最大値変数B1の現在の格納値を第2信号最大ピーク値メモリBMAXに記憶させる。また、第2信号最大値変数B1の格納値を真の最大ピーク値であると確定したことに伴い、第2信号最大値変数B1の格納値は、初期値(0V)にクリアされる(ステップ1316)。
つぎに、計測用コントローラ30に電源が投入された直後であるか否かが判断される。あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(2)、(3)または(2)、(1)であるか否かが判断される(ステップ1317)。
計測用コントローラ30に電源が投入された直後であると判断された場合、あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(2)、(3)または(2)、(1)であると判断された場合には、第2の検出信号400Bの最大ピーク値(ピークタイプ(2))、第1の検出信号400Aの最大ピーク値(ピークタイプ(3))を経由して、第2の検出信号400Bが最小ピーク値(ピークタイプ(4))となったか(正転の場合)、第2の検出信号400Bの最大ピーク値(ピークタイプ(2))、第1の検出信号400Aの最小ピーク値(ピークタイプ(1))を経由して、第2の検出信号400Bが最小ピーク値(ピークタイプ(4))となった(逆転の場合)ものと判断して、今回ピークタイプposi〔0〕の内容を、ピークタイプ(4)に更新する。なお、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕の内容については、それぞれ前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されている現在のピークタイプによって更新される(ステップ1318)。
ステップ1318の処理が終了するか、ステップ1314の判断がNOである場合には、ステップ1319に移行する。
ステップ1319では、第1の検出信号400Aの現在の検出電圧値が最大ピーク値であるか否かが判定される。たとえば、第1の検出信号400Aの現在の検出電圧値が、第2の検出信号400Aの現在の検出電圧値よりも大きく、かつ第1の検出信号400Aの現在の検出電圧値がしきい値C2よりも大きいか否かを判断することによって、上記判定がなされる(ステップ1319;図16参照)。
つぎに、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(4)、(1)、(2)または(2)、(1)、(4)であるか否かが判断される(ステップ1320)。
ステップ1320の判断がYESの場合には、最小ピーク値(ピークタイプ(1))の前後で、正転((4)→(1)→(2))または逆転((2)→(1)→(4))することで、第1の検出信号400Aが1周期変化したものと判断して、第1信号最小値変数A2に現在格納されている値が、真の最小ピーク値であると確定して、第1信号最小値変数A2の現在の格納値を第1信号最小ピーク値メモリAMINに記憶させる。また、第1信号最小値変数A2の格納値を真の最小ピーク値であると確定したことに伴い、第1信号最小値変数A2の格納値は、初期値(5V)にクリアされる(ステップ1321)。
つぎに、計測用コントローラ30に電源が投入された直後であるか否かが判断される。あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(1)、(2)または(1)、(4)であるか否かが判断される(ステップ1322)。
計測用コントローラ30に電源が投入された直後であると判断された場合、あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(1)、(2)または(1)、(4)であると判断された場合には、第1の検出信号400Aの最小ピーク値(ピークタイプ(1))、第2の検出信号400Bの最大ピーク値(ピークタイプ(2))を経由して、第1の検出信号400Aが最大ピーク値(ピークタイプ(3))となったか(正転の場合)、第1の検出信号400Aの最小ピーク値(ピークタイプ(1))、第2の検出信号400Bの最小ピーク値(ピークタイプ(4))を経由して、第1の検出信号400Aが最大ピーク値(ピークタイプ(3))となった(逆転の場合)ものと判断して、今回ピークタイプposi〔0〕の内容を、ピークタイプ(3)に更新する。なお、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕の内容については、それぞれ前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されている現在のピークタイプによって更新される(ステップ1323)。
ステップ1323の処理が終了するか、ステップ1319の判断がNOである場合には、ステップ1324に移行する。
ステップ1324では、第2の検出信号400Bの現在の検出電圧値が最大ピーク値であるか否かが判定される。たとえば、第2の検出信号400Bの現在の検出電圧値が、第1の検出信号400Aの現在の検出電圧値よりも大きく、かつ第2の検出信号400Bの現在の検出電圧値がしきい値C2よりも大きいか否かを判断することによって、上記判定がなされる(ステップ1324;図16参照)。
つぎに、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(3)、(4)、(1)または(1)、(4)、(3)であるか否かが判断される(ステップ1325)。
ステップ1325の判断がYESの場合には、最小ピーク値(ピークタイプ(4))の前後で、正転((3)→(4)→(1))または逆転((1)→(4)→(3))することで、第2の検出信号400Bが1周期変化したものと判断して、第2信号最小値変数B2に現在格納されている値が、真の最小ピーク値であると確定して、第2信号最小値変数B2の現在の格納値を第2信号最小ピーク値メモリBMINに記憶させる。また、第2信号最小値変数B2の格納値を真の最小ピーク値であると確定したことに伴い、第2信号最小値変数B2の格納値は、初期値(5V)にクリアされる(ステップ1326)。
つぎに、計測用コントローラ30に電源が投入された直後であるか否かが判断される。あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されたピークタイプが読み出され、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(4)、(1)または(4)、(3)であるか否かが判断される(ステップ1327)。
計測用コントローラ30に電源が投入された直後であると判断された場合、あるいは、前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕の内容がそれぞれ、(4)、(1)または(4)、(3)であると判断された場合には、第2の検出信号400Bの最小ピーク値(ピークタイプ(4))、第1の検出信号400Aの最小ピーク値(ピークタイプ(1))を経由して、第2の検出信号400Bが最大ピーク値(ピークタイプ(2))となったか(正転の場合)、第2の検出信号400Bの最小ピーク値(ピークタイプ(4))、第1の検出信号400Aの最大ピーク値(ピークタイプ(3))を経由して、第2の検出信号400Bが最大ピーク値(ピークタイプ(2))となった(逆転の場合)ものと判断して、今回ピークタイプposi〔0〕の内容を、ピークタイプ(2)に更新する。なお、前々回ピークタイプposi〔2〕、前回ピークタイプposi〔1〕の内容については、それぞれ前回ピークタイプposi〔1〕、今回ピークタイプposi〔0〕に格納されている現在のピークタイプによって更新される(ステップ1328)。
つぎに、第1信号最大ピーク値メモリAMAX、第1信号最小ピーク値メモリAMIN、第2信号最大ピーク値メモリBMAX、第2信号最小ピーク値メモリBMINからそれぞれ最近の複数個、たとえば最近の10個(回転ローラ110の最近の10回転分)の記憶ピーク値が読み出される。そして、これら読み出された記憶ピーク値に基づいて、第1の検出信号400Aの最大ピーク値および最小ピーク値、第2の検出信号400Bの最大ピーク値および最小ピーク値が算出される。たとえば、第1信号最大ピーク値メモリAMAXに記憶された最近10個の記憶最大ピーク値を平均する演算処理を行うことで、第1の検出信号400Aの最大ピーク値が求められる。第1の検出信号400Aの最小ピーク値、第2の検出信号400Bの最大ピーク値および最小ピーク値についても同様にして求められる(ステップ1329)。
つぎに、記憶テーブル36に記憶された出力電圧値の最大ピーク値(以下、最大ピーク基準電圧値)、最小ピーク値(以下、最小ピーク基準電圧値)それぞれに、上記ステップ1329で求められた最大ピーク値(以下、入力最大ピーク値)、最小ピーク値(以下、入力最小ピーク値)が一致するように、第1および第2の検出信号400A、400Bの波形が補正される。具体的には、下記の演算式(1)によって、第1および第2の検出信号400A、400Bの出力電圧値Vが、補正演算されて、出力電圧値V′に変換される。
V′=(V−入力最小ピーク値)×(最大ピーク基準値−最小ピーク基準値) /(入力最大ピーク値−入力最小ピーク値)+最小ピーク基準値
…(1)
図14を併せ参照して、第1の検出信号400Aを例にとり説明する。図14における第1の検出信号400A(高温時)の出力電圧値VAを、第1の検出信号400A′(低温時)の出力電圧値VA′に補正することを想定する。低温時に、第1の検出信号400A′の出力電圧値VA′と回転ローラ110の回転角度θAとの対応関係が予め求められ、図9(b)と同様に、記憶テーブル36に記憶されておかれる。
記憶テーブル36に記憶された出力電圧値VA′の中から最大ピーク基準値VAM′、最小ピーク基準値VAN′が読み出される。そして、最大ピーク基準値VAM′、最小ピーク基準値VAN′それぞれに対して、上記ステップ1329で求められた入力最大ピーク値VAM、入力最小ピーク値VANが一致するように、上記(1)式を用いて、第1の検出信号400Aの波形が、400A′に補正される。つまり図14において、高温時の第1の検出信号400Aの波形が、低温時の第1の検出信号400A′の波形に一致するように、スケール変換される。
図15は、上記(1)式における補正前の出力電圧値VAと補正後の出力電圧値VA′との関係を示す。
図15に実線410で示すように、出力電圧値VAは補正出力電圧値VA′に補正される。なお、破線で示す直線420は、補正前の出力電圧値VAと補正後の出力電圧値VA′とが一致している理想的な関係を示している。
第1の検出信号400Aを補正する場合について説明したが、第2の検出信号400Bについても同様にして補正される(ステップ1330)。
以上のようにして、補正出力電圧値VA′、VB′が求められると、記憶テーブル36から、図9(b)(第2実施例)で説明したのと同様にして、補正出力電圧値VA′、VB′(図9(b)ではVA、VBと表記)に対応する回転角度θA、θBが読み出され、この読み出された回転角度θA、θBに基づいて、第2実施例で説明したのと同様にして、油圧シリンダ200のストローク位置が計測される。
以上のように本実施例によれば、低温から高温に変化するに伴い磁力が弱まり、回転センサ100で検出される信号レベルが低下したとしても、回転センサ100の出力電圧値Vが、記憶テーブル36に記憶された出力電圧値V′に一致するように補正しているので、低温時と高温時とで回転角度θが等しく得られ、回転角度θを誤差なく、ひいては油圧シリンダ200のストローク位置を誤差なく計測することができる。このように、本第5実施例によれば、磁力を検出媒体とする回転センサ100の検出信号レベルが温度等によって変動したとしても、確実かつ簡易な方法で、誤差なく高精度に回転角度、ストローク位置を計測することができる。
本第5実施例では、図21、図22、図23に示すアルゴリズムで、回転センサ100から出力される第1および第2の検出信号400A、400Bが1周期変化したときの各電圧値の中から最大ピーク電圧値、最小ピーク電圧値を求めるようにしているが、図21、図22、図23に示すアルゴリズムは一例であり、これに限定されるものではない。たとえば、第1および第2の検出信号400A、400Bの一方の検出信号がゼロクロス点にあるときの他の検出信号の正負状態に応じて、上述したピークタイプが(1)、(2)、(3)、(4)のいずれのタイプであるかを判定しつつ、最大ピーク電圧値、最小ピーク電圧値を求めるようにしてもよい。
また、本第5実施例では、第1および第2の検出信号400A、400Bが1周期変化したときの各電圧値の中からピーク点における電圧値を求め、求められたピーク点における電圧値が、記憶テーブル36に記憶されたピーク点における基準電圧値に一致するように、第1および第2の検出信号400A、400Bの各出力電圧値VA、VBを補正しているが、本実施例の第1および第2の検出信号400A、400Bの「ピーク点」を「クロス点」に置き換えて同様に実施してもよい。
すなわち、図16に示すように、第1および第2の検出信号400A、400Bの各クロス点のうち電圧値が正側のクロス点の電圧値を、正クロス電圧値とし、電圧値が負側のクロス点の電圧値を、負クロス電圧値とすると、予め記憶テーブル36に、正クロス基準電圧値、負クロス基準電圧値を記憶しておき、回転センサ100の第1および第2の検出信号400A、400Bが1周期変化したときの各電圧値の中から、正クロス電圧値、負クロス電圧値を求め、求められた正クロス電圧値、負クロス電圧値と記憶された正クロス基準電圧値、負クロス基準電圧値とをそれぞれ比較し、正クロス電圧値、負クロス電圧値が正クロス基準電圧値、負クロス基準電圧値とそれぞれ一致するように、回転センサ100の第1および第2の検出信号400A、400Bを補正する実施も可能である。
また、本第5実施例では、図10(b)に示すように回転センサ100から位相が異なる第1および第2の検出信号400A、400Bが出力されることを前提としているが、図10(a)に示すように、一種類の検出信号400Aが出力される場合にも本実施例と同様にして補正を行うようにしてもよい。
すなわち、記憶テーブル36に、図9(a)と同様に、予め検出信号400Aの最大ピーク基準電圧値、最小ピーク基準電圧値を記憶しておき、回転センサ100の検出信号400Aが1周期変化したときの各電圧値の中から、最大ピーク電圧値、最小ピーク電圧値を求め、求められた最大ピーク電圧値、最小ピーク電圧値とをそれぞれ比較し、最大ピーク電圧値、最小ピーク電圧値が最大ピーク基準電圧値、最小ピーク基準電圧値とそれぞれ一致するように、回転センサ100の検出信号400Aを補正する実施も可能である。
また、本実施例では、1つのセンサ部材135に対して、1つの記憶テーブルを対応させて、出力電圧値VA、回転角度θAを求めるようにしているが、1つのセンサ部材135に対して、最大ピーク電圧、最小ピーク電圧の大きさに応じた複数の記憶テーブルを対応させてもよく、この場合には、最大ピーク電圧、最小ピーク電圧の大きさに応じて、記憶テーブルが選択されて、出力電圧値VA、回転角度θAが求められる。これにより補正の精度を更に向上させることができる。
また、本第5実施例では、図15に示すように、第1の検出信号400Aの出力電圧値VAと補正出力電圧値VA′との関係が線形であるとして、上記(1)式に示す演算式を用いて、補正しているが、図17(b)に示すように、第1の検出信号400Aの出力電圧値VAと補正出力電圧値VA′との関係が非線形的であるとして、後述する演算式を用いて補正してもよい。
図17(a)、(b)はそれぞれ図14、図15に対応する図である。
図17(a)に示す高温時の第1の検出信号400Aの波形を、低温時の第1の検出信号400A′の波形に補正する場合を想定する。
図17(a) に示す第1の検出信号400Aの最小ピーク点Pmin、最大ピーク点Pmaxにおける補正係数は、以下の演算式(2)、(3)によって求められる。
Pminでの補正係数;αmin=VAN′/VAN …(2)
Pmaxでの補正係数;αmax=VAM′/VAM …(3)
電圧値VAは、上記(2)、(3)式を用いた下記(4)式に示す演算式によって、電圧値VA′に補正される。
VA′=αmin+(αmax−αmin)×(VA−VAN)/(VAM−VAN)
…(4)
第1の検出信号400Aについて説明したが、第2の検出信号400Bについても同様にして補正することができる。
なお、第5実施例では、回転センサ100が油圧ショベルなどの建設機械に搭載され油圧シリンダのストローク量を検出する場合を想定して説明したが、本発明としては、回転センサ100が搭載される機械、検出対象は、任意である。
(第6実施例)
ところで、図18(a)に示すように、位相の異なる2種類の第1および第2の検出信号400A、400Bが出力される回転センサ100を使用する場合には、同じ時刻に、異なる出力電圧値に基づいて、同じ回転角度を得ることができる。
また、第1および第2の検出信号400A、400Bの波形は、正弦状であるため、回転角度θの変化に対して、出力電圧Vの変化が小さく(磁力の変化が小さく)分解能が低い区間と、回転角度θの変化に対して、出力電圧Vの変化が大きく(磁力の変化が大きく)分解能が高い区間とがある。
そこで、本実施例では、各時刻において、位相の異なる2種類の第1および第2の検出信号400A、400Bのうちで分解能が高い区間にある検出信号を選択して、選択した分解能が高い区間にある検出信号に基づいて回転角度θを逐次取得することにより、回転角度θの計測を誤差なく精度よく行おうとするものである。
図18(b)は、分解能が高い区間にある検出信号を選択する処理を説明する図である。
同図18(b)に示すように、第1および第2の検出信号400A、400Bのクロス点であって出力電圧が正の値をとるクロス点の電圧値を、しきい値D1として設定する。
そして、下記のように、第1および第2の検出信号400A、400Bの出力電圧値と、しきい値D1とを比較するとともに、第1の検出信号400Aの出力電圧値と、第2の検出信号400Bの出力電圧値とを比較し、その比較結果に応じて、分解能が高い区間にある検出信号を選択する。
・第2の検出信号400Bの出力電圧値がしきい値D1以上であり、第2の検出信号400Bの出力電圧値が第1の検出信号400Aの出力電圧値以上の区間E1にある場合;第1の検出信号400Aを分解能が高い区間にある検出信号として選択する。
・第1の検出信号400Aの出力電圧値がしきい値D1を超えて、第1の検出信号400Aの出力電圧値が第2の検出信号400Bの出力電圧値を超えた区間E2にある場合;第2の検出信号400Bを分解能が高い区間にある検出信号として選択する。
・第1の検出信号400Aの出力電圧値がしきい値D1以下であり、第1の検出信号400Aの出力電圧値が第2の検出信号400Bの出力電圧値以上の区間E3にある場合;第1の検出信号400Aを分解能が高い区間にある検出信号として選択する。
・第2の検出信号400Bの出力電圧値がしきい値D1を下回り、第2の検出信号400Bの出力電圧値が第1の検出信号400Aの出力電圧値を超えた区間E4にある場合;第2の検出信号400Bを分解能が高い区間にある検出信号として選択する。
以上にようにして選択された検出信号400Aまたは400Bの出力電圧値Vに対応する回転角度θが、図9(b)に示す記憶テーブル36から読み出され、読み出された回転角度θに基づいて油圧シリンダ200のストローク位置が計測される。
(第7実施例)
第6実施例では、各区間E1〜E4毎に、択一的に検出信号を選択するようにしている。このため、一方の検出信号(たとえば第1の検出信号400A)から他方の検出信号(第2の検出信号400B)に選択を切り換える境界(区間E1と区間2の境界)で、回転角度θ、ストローク位置の計測値が不連続に変化することがある。
そこで、検出信号の選択が切り換えられる区間の境界で、回転角度θ、ストローク位置の計測値が不連続に変化せず、滑らかに連続的に変化するように、下記のように境界付近で重み付け処理を行うようにしてもよい。
図19(a)は、図18(b)に対応する図であり、第1および第2の検出信号400A、400Bクロス点であって出力電圧が正の値をとるクロス点の電圧値を、しきい値D1として設定するとともに、出力電圧が負の値をとるクロス点の電圧値を、しきい値D2として設定する
そして、第6実施例と同様にして、第1および第2の検出信号400A、400Bの出力電圧値と、しきい値D1とを比較するとともに、第1の検出信号400Aの出力電圧値と、第2の検出信号400Bの出力電圧値とを比較し、その比較結果に応じて、分解能が高い区間にある検出信号を選択する。
ただし、各区間E1〜E4の境界付近では、以下のように重み付け処理が行われる。
図19(b)は、第1の検出信号400Aに基づいて計測される回転角度θAの変化(これを破線430で示す)と、第2の検出信号400Bに基づいて計測される回転角度θBの変化(これを実線440で示す)とを対比して示している。同図19(b)に両回転角度θA、θBとの間には、ずれがある。
このため、第6実施例のように仮に、たとえば区間E4から区間1に移行するときに、第2の検出信号400Bから第1の検出信号400Bに切り換えたとすると、両回転角度θA、θBとの間のずれによって、回転角度θの計測値が不連続に変化してしまう。
そこで、本実施例では、図19(a)に示すように、しきい値D1の前後に、所定の電圧幅D1−ΔV〜D1+ΔVの遷移領域を設定し、この遷移領域D1−ΔV〜D1+ΔV内で、下記(5)式にしたがい重み付け処理を行い、回転角度θを求めるようにする。
θ=WA・θA+WB・θB …(5)
ただし、
θA;第1の検出信号400Aの出力電圧値VAから得られる回転角度
θB;第2の検出信号400Bの出力電圧値VBから得られる回転角度
WA;第1の検出信号400Aの重み(0%〜100%)
WB;第2の検出信号400Bの重み(0%〜100%)
たとえば区間E4から区間E1に移行する場合のように、第2の検出信号400Bから第1の検出信号400Aに切り換えられる場合について説明する。
第2の検出信号400Bから第1の検出信号400Aに切り換えられる場合、遷移領域D1−ΔV〜D1+ΔVでは、電圧値がD1−ΔVからD1+ΔVに変化するに伴い、第1の検出信号400Aの重みWAは、0%から100%に連続的に変化させる。出力電圧値がD1−ΔVのときには、第1の検出信号400Aの重みWAは、0%となり、出力電圧値がD1(しきい値)のときには、第1の検出信号400Aの重みWAは、50%となり、出力電圧値がD1+ΔVのときには、第1の検出信号400Aの重みWAは、100%となる。一方、第2の検出信号400Bの重みWBは、100%から0%に連続的に変化させる。出力電圧値がD1−ΔVのときには、第2の検出信号400Bの重みWBは、100%となり、出力電圧値がD1(しきい値)のときには、第2の検出信号400Bの重みWBは、50%となり、出力電圧値がD1+ΔVのときには、第2の検出信号400Bの重みWBは、0%となる。
この結果、図19(c)に拡大して示すように、第2の検出信号400Bから第1の検出信号400Aに切り換えられる場合、遷移領域D1−ΔV〜D1+ΔVでは、一点鎖線450で示すように、回転角度θが連続的に変化する。このためストローク位置についても遷移領域で連続的に変化する。
つぎに、たとえば区間E3から区間E4に移行する場合のように、第1の検出信号400Aから第2の検出信号400Bに切り換えられる場合について説明する。
第1の検出信号400Aから第2の検出信号400Bに切り換えられる場合、遷移領域D1−ΔV〜D1+ΔVでは、電圧値がD1−ΔVからD1+ΔVに変化するに伴い、第1の検出信号400Aの重みWAは、100%から0%に連続的に変化させる。出力電圧値がD1−ΔVのときには、第1の検出信号400Aの重みWAは、100%となり、出力電圧値がD1(しきい値)のときには、第1の検出信号400Aの重みWAは、50%となり、出力電圧値がD1+ΔVのときには、第1の検出信号400Aの重みWAは、0%となる。一方、第2の検出信号400Bの重みWBは、0%から100%に連続的に変化させる。出力電圧値がD1−ΔVのときには、第2の検出信号400Bの重みWBは、0%となり、出力電圧値がD1(しきい値)のときには、第2の検出信号400Bの重みWBは、50%となり、出力電圧値がD1+ΔVのときには、第2の検出信号400Bの重みWBは、100%となる。
この結果、図19(d)に拡大して示すように、第1の検出信号400Bから第2の検出信号400Bに切り換えられる場合、遷移領域D1−ΔV〜D1+ΔVでは、一点鎖線460で示すように、回転角度θが、連続的に変化する。このためストローク位置についても遷移領域で連続的に変化する。
(第8実施例)
上述した第7実施例では、一方の検出信号から他方の検出信号に切り換えられる境界付近でのみ、重み付け処理を行い、回転角度θ、ストローク位置の計測値を連続的に変化させるようにしているが、全ての区間において重み付け処理を行うようにしてもよい。
図20(a)、(b)、(c)、(d)は、第1および第2の検出信号400A、400Bそれぞれについて重みの関数wait1、wait2を求める演算処理を説明する図である。なお、以下の説明では、説明の便宜のため、第1の検出信号400Aの出力電圧値をv1、第1の検出信号400Aの最大ピーク電圧値をmaxv1、第1の検出信号400Aの最小ピーク電圧値をminv1、第2の検出信号400Bの出力電圧値をv2、第2の検出信号400Bの最大ピーク電圧値をmaxv2、第2の検出信号400Bの最小ピーク電圧値をminv2とする。
すなわち、図20(a)に示すように、計測用コントローラ30に、第1の検出信号400Aの出力電圧値v1、第2の検出信号400Bの出力電圧値v2が入力されると、下記(6)、(7)式に示す演算処理が行われ、第1および第2の検出信号400A、400Bそれぞれについて、分解能が高い区間の中間値、つまり最大ピーク電圧値〜最小ピーク電圧値間の中間値で、最大レベルとなり、分解能が低い区間の中間値、つまりピーク点で最小レベルとなる、第1および第2の中間信号t1、t2が、図20(b)に示すごとく、求められる。
t1=(maxv1−minv1)/2−abs(v1−(maxv1+minv1)/2)
…(6)
t2=(maxv2−minv2)/2−abs(v2−(maxv2+minv2)/2)
…(7)
つぎに、上記第1および第2の中間信号t1、t2を用いて、下記(8)、(9)式に示す演算処理が行われ、第1および第2の検出信号400A、400Bそれぞれについて、分解能が高い区間の中間値、つまり最大ピーク電圧値〜最小ピーク電圧値間の中間値で、最大レベル1となり、分解能が低い区間の中間値、つまりピーク点で最小レベル0となる、第1および第2の重み信号wait1、wait2が、図20(c)に示すごとく、求められる。第1および第2の重み信号wait1、wait2は、両者を加算して1となるように調整される。
wait1=t1/(t1+t2) …(8)
wait2=t2/(t1+t2) …(9)
そして、第7実施例で説明したのと同様に、下記(10)式にしたがい重み付け処理が行われ、回転角度θが求められる。
θ=wait1・θA+wait2・θB …(10)
ただし、
θA;第1の検出信号400Aの出力電圧値v1から得られる回転角度
θB;第2の検出信号400Bの出力電圧値v2から得られる回転角度
図20(d)に示す実線470は、上記(10)式によって得られた回転角度θの変化を示している。また、同図20(d)に示す破線480は、比較のために、第1の検出信号400Aのみに基づいて得られた回転角度θAの変化を示している。図20(d)の横軸は、基準回転角度、つまり回転角度の真値であり、縦軸は、回転角度θの計測値である。
両者を図20(d)で対比すると、回転角度θAを、第1の検出信号400Aのみに基づいて求めるようにした場合には(破線480)、分解能が低いピーク点付近で、基準回転角度からずれており、回転角度θAに誤差が生じているのに対して、回転角度θを、上記(10)式から求めるようにした場合には(実線470)、全区間にわたり、回転角度θが高精度に計測されていることがわかる。
なお、上述した各実施例では、回転センサ100から電圧値という物理量が検出される場合を例にとり説明したが、回転センサ100の検出物理量は、電圧以外の任意の物理量を用いてもよい。
また、上述した各実施例では、回転センサ100を、回転ローラ110を設けた構成とし、回転センサ100を、その回転ローラ110が油圧シリンダ200のロッド202に押し当てられるように装着して、ロッド202の直動変位を回転量に変換して電圧値として出力する場合を想定して説明したが、本発明としては、回転センサ100の構成、装着態様は任意である。たとえば、回転センサ100を、回転ローラ110などのロッド202に押し当てる際に必要となる部品を省略した構成とし、回転センサ100の回転軸132が、油圧ショベルのブーム、アーム、バケットの回動軸とともに回転するように、回転センサ100を装着して、ブーム、アーム、バケットの回動軸の回転量を直接、電圧値として出力する場合にも本発明は適用可能である。
なお、第3実施例、第4実施例では、検出媒体は磁石(磁力)であることを前提に説明したが、検出媒体は必ずしも磁石(磁力)である必要はなく、油圧シリンダのストローク位置を回転量として検出する回転センサであれば、検出媒体は任意である。たとえば検出媒体を光とし、光センサで光を検出する場合にも第3実施例、第4実施例に係る本発明を適用することができる。
20 制御用コントローラ 30 計測用コントローラ 36 記憶テーブル 100 回転センサ 200 油圧シリンダ 300 301、302 磁力センサ(リセットセンサ)