JP3879212B2 - 産業車両における電磁弁のディザ制御装置及び産業車両 - Google Patents
産業車両における電磁弁のディザ制御装置及び産業車両 Download PDFInfo
- Publication number
- JP3879212B2 JP3879212B2 JP34529397A JP34529397A JP3879212B2 JP 3879212 B2 JP3879212 B2 JP 3879212B2 JP 34529397 A JP34529397 A JP 34529397A JP 34529397 A JP34529397 A JP 34529397A JP 3879212 B2 JP3879212 B2 JP 3879212B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- dither
- current
- amplitude
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Forklifts And Lifting Vehicles (AREA)
- Servomotors (AREA)
- Control Of Electrical Variables (AREA)
Description
【発明の属する技術分野】
本発明は産業車両に設けられた荷役機器を駆動する油圧シリンダの油路に設けた電磁弁の応答性を高めるためにスプールを微小振動させるディザ制御を行う産業車両における電磁弁のディザ制御装置及び産業車両に関するものである。
【0002】
【従来の技術】
従来、フォークリフトに備えられたリフトシリンダやティルトシリンダの油路上に設けられた電磁弁をコントローラに制御させることで、作業者による荷役レバーの操作に独立して、フォークを所定状態で停止させる停止制御や、マストの速度制御を行う装置が開示されている(例えば特開平7−61792号公報等)。
【0003】
コントローラによる電磁弁の電流値制御は通常次のように行われていた。コントローラは車両に設けられた各種センサからの検出値から決まる電磁弁の開度に応じた電流指令値(目標電流値)をソレノイド駆動回路に指令する。バッテリと電磁弁との間に設けられたソレノイド駆動回路内のスイッチング素子が電流指令値に基づいてオンオフすることで、電磁弁のソレノイドに流れる電流が制御される。
【0004】
ところで、バッテリ電圧は満充電のときと空充電に近くなったときとで大きく変動する。また、電磁弁のソレノイド抵抗は、油温上昇や電流の通電による発熱などによるソレノイド温度の上昇に伴い変動する。これらの変動が外乱要因になって、スイッチング素子が電流指令値通りにオンオフしても、ソレノイドに流れる電流が目標値からずれる事態が起こり得る。電流値の目標値からのずれは電磁弁の開度のばらつきをもたらし、荷役機器に動作上の不具合をもたらす原因となる。このため、従来、電磁弁の電流値制御はフィードバック制御により行われていた。
【0005】
従来は、フィードバック制御をハードウェアで行っていた。ハードウェアで行う場合、三角波発生回路、デューティ発生回路、電流検出回路、フィードバック回路などの多くの回路が必要であった。すなわち、三角波信号を生成するための三角波発生回路。CPUから入力した目標電流値に相当する指令値(電圧信号V1)と三角波信号とを入力して指令値に応じたデューティ値(%)のPWM信号を生成するためのデューティ発生回路。電磁弁のソレノイドに流れる電流を検出するための電流検出回路。さらにCPUが出力した指令値(電圧信号V1)と、電流検出回路からの電流検出値(電圧信号V2)との差に比例した信号(電圧;a(V1−V2))を出力して、デューティ発生回路に入力される入力電圧を電流検出値に応じて補正するためのフィードバック回路である。
【0006】
つまり、CPUはソレノイドに流す必要がある目標電流値に相当する指令値を指令すれば、あとはハードウェアを構成する各回路がその指令値通りの電流がソレノイドに流れるように、スイッチング素子に入力されるPWM信号のデューティ値(%)を補正するようになっていた。こうしてバッテリ電圧やソレノイド抵抗の変動などの外乱要因があっても、ソレノイドに目標電流値通りの電流が流れる。
【0007】
しかしながら、フィードバック制御をハードウェアで行う構成では、前述した多くの回路が必要なため、複雑な回路構成になり、しかも電子部品の部品点数が多くなるという問題があった。また、このことが装置コストを引き上げる原因にもなっていた。
【0008】
【発明が解決しようとする課題】
そこで、本願出願人は、ハードウェアの回路数を低減してその簡素化を図るため、フィードバック制御をCPUによりソフトウェアで行うことを提案している。つまり、ソレノイド電流を検出する電流検出回路からの電流検出値をCPUに入力する。そして、CPUがPWM信号のデューティ値(%)を決めるために指令しているデューティ出力値Doutを、電流検出値が目標電流値に近づくようにプログラムデータに基づいて補正する方法である。
【0009】
ところで、電磁弁の応答性を上げるための制御として、スプールを微小振動させるディザ制御が一般に行われている。ハードウェアによるフィードバック制御では、CPUがスプールを微小振動させられるような波形を描くように電流指令値を指令すれば、あとはハードウェアが電流指令値通りの電流が流れるように電流指令値を補正してくれるので、スプールの微小な振幅は外乱要因によらずいつも一定に保持される。制御としては目標電流値にディザ振幅分の補正を加えることでディザ制御の波形に乗るような電流指令値を割込処理で複数点決めてやり、これを順次指令する。
【0010】
ソフトウェアによるフィードバック制御でも、この方法を踏襲し、電流指令値にディザ振幅分の補正を加えることでディザ制御の波形に乗るような電流指令値を割込処理で複数点決めてやり、これを順次指令することでディザ制御を行うことはできる。
【0011】
しかし、ディザ振幅分の補正量であるディザ振幅値をハードウェアでのフィードバック制御の場合と同様に一定値とすると、前述したバッテリ電圧やソレノイド抵抗値の変動などの外乱要因によって、ソレノイドに流れる電流の振幅がばらつくことになる。
【0012】
すなわち、図21に示すように、バッテリ電圧大,ソレノイド抵抗小になるに連れてA線に示すようにソレノイド電流の振幅が所望する電流波形Iの振幅よりも大きくなり過ぎ、スプールが過大に振幅するようになる。また、バッテリ電圧小,ソレノイド抵抗大になるに連れてB線に示すようにソレノイド電流の振幅が所望する電流波形Iの振幅よりも小さくなり過ぎ、スプールの振幅が過小になる。
【0013】
スプールの振幅が大きくなり過ぎると、閉弁すべきときに電磁弁が僅かに開弁してしまう不具合を招いたり、ディザ制御による電磁弁の開度の変動が荷役機器の動作に影響するほどになり、荷役機器が動作中に微小な振動を起こすなどの不具合が起こりかねない。また、スプールの微小な振幅が小さくなり過ぎると、スプールの始動時の摩擦抵抗の低減効果が不十分となって電磁弁の応答性が低下し、ディザ制御を採用した意味があまりなくなってしまう。
【0014】
本発明は前記の問題点に鑑みてなされたものであって、その第1の目的は、産業車両に設けられた電磁弁の電流値制御をソフトウェアで行う構成において、ディザ制御により微小振動する電磁弁のスプールの振幅を、電源電圧やソレノイド抵抗の変動などの外乱要因によらずいつも所望する一定に確保し、スプールの振幅のばらつきに起因する不具合を防止できる産業車両における電磁弁のディザ制御装置及び産業車両を提供することにある。第2の目的は、フィードバック制御の際に使用するデータをディザ制御に利用できるようにすることにある。第3の目的は、フィードバック制御で使用する電流検出値を利用し、少なくとも電流が定常状態にあるときにスプールの振幅を適正に得ることにある。第4の目的は、フィードバック制御で使用する外乱要因の測定値を利用し、電流の過渡域と定常域ともに、スプールの振幅を適正に得ることにある。第5の目的は、外乱要因の測定値を使用するフィードフォワード制御であっても、電流の過渡域と定常域ともに、スプールの振幅を適正に得ることにある。第6の目的は、簡単な演算でディザ振幅値を決められることにある。第7の目的は、目標電流値と電流指令値を使った簡単な演算でディザ振幅値を決められることにある。第8の目的は、目標電流値と電流指令値を使ってディザ振幅値を決める場合、電流の過渡域にスプールの振幅が異常な値になることを回避することにある。第9の目的は、電流指令値と電流検出値を使った簡単な演算でディザ振幅値を決められることにある。第10目的は、電流検出値をほぼリアルタイムに得ることで、制御の応答性を損なわないことにある。
【0015】
【課題を解決するための手段】
前記第1の目的を達成するため請求項1に記載の発明では、荷役機器を駆動する油圧シリンダの油路上に設けられた電磁弁と、前記電磁弁のソレノイドに流すべき目標電流値を記憶する記憶手段と、前記ソレノイドに流れる電流を目標電流値とするための制御に使うデータを得るのに必要な測定値を測定するための測定手段と、前記ソレノイドに流れる電流を制御するための電流指令値を、その電流を目標電流値に近づけ得るように前記測定手段の測定値から得た前記データを使って補正する補正処理をプログラムデータに基づいて実行する制御手段と、前記電磁弁のスプールを微小振動させるディザ制御のため、前記電流指令値に加える振幅分のディザ振幅値を、所望する電流振幅が得られるように前記測定値を使って得たデータを用いて決めるとともに、該ディザ振幅値を前記電流指令値に加えたディザ指令値を指令するディザ制御手段とを備えている。
【0016】
請求項2に記載の発明では、請求項1に記載の発明において、前記ディザ制御手段は、前記制御手段が補正処理を1回実行する毎に、前記電流指令値を中心に所定周期で振幅する波形上の値をとるようにその波形の1周期のうちに前記ディザ指令値を割込処理で複数決めて指令することをその要旨とする。
【0017】
第2の目的を達成するため請求項3に記載の発明では、請求項2に記載の発明において、前記電磁弁のソレノイドに流れる電流を検出する電流検出手段が設けられ、前記制御手段が実行する前記補正処理は、前記電流検出手段の検出信号から定まる電流検出値と前記目標電流値との差が許容範囲内に収まるように前記電流指令値を補正するフィードバック制御であり、前記ディザ制御手段は、該フィードバック制御で使用した前記測定値を使って得たデータを用いて前記ディザ振幅値を決めていることをその要旨とする。
【0018】
第3の目的を達成するため請求項4に記載の発明では、請求項3に記載の発明において、前記測定手段は前記電流検出手段であり、前記ディザ制御手段は、前記制御手段がフィードバック制御で使用した前記電流検出値を使って得たデータを用いて前記ディザ振幅値を決めていることをその要旨とする。
【0019】
第4の目的を達成するため請求項5に記載の発明では、請求項3に記載の発明において、前記測定手段は前記ソレノイドに流れる電流に影響を与える外乱要因を測定する外乱要因測定手段であり、前記ディザ制御手段は、前記制御手段がフィードバック制御で使用した前記外乱要因の測定値を使って得たデータを用いて前記ディザ振幅値を決めていることをその要旨とする。
【0020】
第5の目的を達成するため請求項6に記載の発明では、請求項1又は請求項2に記載の発明において、前記測定手段は前記ソレノイドに流れる電流に影響を与える外乱要因を測定する外乱要因測定手段であり、前記制御手段が実行する前記補正処理は、外乱要因測定手段の測定値を用いて外乱要因を考慮して目標電流値から決めた電流指令値を指令するフィードフォワード制御であり、前記ディザ制御手段は、前記外乱要因測定手段の測定値を使って得たデータを用いて前記ディザ振幅値を決めていることをその要旨とする。
【0021】
第6の目的を達成するため請求項7に記載の発明では、請求項1〜請求項6のいずれか一項に記載の発明において、前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記ディザ振幅値を決めるために前記測定値を使って得たデータと、前記外乱要因が基準状態にあるとの仮定の下で決まるそのデータと同じ次元の基準データとの比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めていることをその要旨とする。
【0022】
第7の目的を達成するため請求項8に記載の発明では、請求項3〜請求項5のいずれか一項に記載の発明において、前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記目標電流値と前記電流指令値とを前記外乱要因が基準状態にあるとの仮定の下で同じ次元で比較した比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めていることをその要旨とする。
【0023】
第8の目的を達成するため請求項9に記載の発明では、請求項8に記載の発明において、前記制御手段は積分型制御のフィードバック制御を行い、前記ディザ制御手段は、前記ディザ振幅基準値を補正して得られた前記ディザ振幅値が所定範囲内にあるか否かを判定するための判定手段と、該判定手段により該ディザ振幅値が所定範囲内にないと判定された際には、ディザ振幅値を所定範囲の上限値または下限値に制限する振幅値制限手段とを備えている。
【0024】
第9の目的を達成するため請求項10に記載の発明では、請求項3〜請求項5のいずれか一項に記載の発明において、前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記電流指令値と前記電流検出値とを前記外乱要因が基準状態にあるとの仮定の下で同じ次元で比較した比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めていることをその要旨とする。
【0025】
第10の目的を達成するため請求項11に記載の発明では、請求項1〜請求項10のいずれか一項に記載の発明において、前記制御手段が前記電流検出手段から入力する検出信号は所定周期で振幅する信号であって、前記制御手段は該検出信号に対して所定周期の自然数倍の一定時間当たりに、1周期につき2回以上サンプリングされるよう合計偶数回のサンプリングを行い、この偶数個のサンプリング値を平均して前記電流検出値を算出する検出値算出手段を備えている。
【0026】
請求項12に記載の発明では、請求項1〜請求項11のいずれか一項に記載の発明において、産業車両には請求項1〜請求項11のいずれか一項に記載の前記電磁弁のディザ制御装置が備えられている。
【0027】
(作用)
従って、請求項1に記載の発明によれば、荷役機器を駆動する油圧シリンダの油路上に設けられた電磁弁が制御手段により電流値制御されることで、荷役機器の速度制御や停止制御などの制御が行われる。ソレノイドに流れる電流を目標電流値とするための制御に必要なデータが測定手段により測定される。制御手段はソレノイドに流れる電流を制御するための電流指令値を、測定手段が測定した測定値から得たデータを使って補正する補正処理をプログラムデータに基づいて実行する。ディザ制御手段は、測定手段の測定値を使って得たデータを用いてディザ振幅値を決め、制御手段が決めた電流指令値にディザ振幅値を加えて決まるディザ指令値を指令する。このため、電源電圧やソレノイド抵抗の変動などの外乱要因に拘わらず、ソレノイドには所望する電流振幅で振幅する目標電流値通りの電流が流れる。この結果、スプールがいつも所望する振幅で微小振動することになる。従って、スプールの振幅が過大になって閉弁すべきときに僅かに開弁してしまったり、荷役機器の振動となって現れるなどの不具合の発生や、スプールの振幅が過小になることによる電磁弁の応答性の低下が防止される。
【0028】
請求項2に記載の発明によれば、ディザ制御手段は、制御手段が補正処理を1回実行する毎に、制御手段が決めた電流指令値を中心に所定周期で振幅する波形上の値をとるようにディザ指令値をその波形の1周期に複数回の割込処理で決めて指令する。この結果、ソレノイドに流れる電流は所定周期の所望する電流振幅で振幅する。
【0029】
請求項3に記載の発明によれば、電磁弁のソレノイドに流れる電流が電流検出手段により検出される。制御手段は電流検出手段の検出信号から定まる電流検出値と目標電流値との差が許容範囲内に収まるように電流指令値を補正するフィードバック制御を実行する。ディザ制御手段は、フィードバック制御で使用した測定値を使って得たデータを用いてディザ振幅値を決める。
【0030】
請求項4に記載の発明によれば、制御手段がフィードバック制御で使用した電流検出値を使って得たデータを用いてディザ振幅値がディザ制御手段により決められる。
【0031】
請求項5に記載の発明によれば、ソレノイドに流れる電流に影響を与える外乱要因が外乱要因測定手段により測定される。制御手段がフィードバック制御で使用した外乱要因の測定値を使って得たデータを用いてディザ振幅値がディザ制御手段により決められる。
【0032】
請求項6に記載の発明によれば、ソレノイドに流れる電流に影響を与える外乱要因が外乱要因測定手段により測定される。制御手段は外乱要因測定手段の測定値を用いることにより外乱要因が考慮された電流指令値を目標電流値から決めて指令するフィードフォワード制御を実行する。外乱要因測定手段の測定値を使って得たデータを用いてディザ振幅値がディザ制御手段により決められる。
【0033】
請求項7に記載の発明によれば、外乱要因が基準状態にあるとの仮定の下で所望する電流振幅が得られるようなディザ振幅基準値が予め設定される。ディザ制御手段は、測定手段の測定値を使って得たデータと、外乱要因が基準状態にあるとの仮定の下で決まるそのデータと同じ次元の基準データとの比に応じて、ディザ振幅基準値を補正することでディザ振幅値を決める。
【0034】
請求項8に記載の発明によれば、外乱要因が基準状態にあるとの仮定の下で所望する電流振幅が得られるようなディザ振幅基準値が予め設定される。ディザ制御手段は、外乱要因が基準状態にあるとの仮定の下で、制御手段がフィードバック制御で使用した目標電流値と電流指令値とを同じ次元で比較した比に応じて、ディザ振幅基準値を補正することでディザ振幅値を決める。
【0035】
請求項9に記載の発明によれば、制御手段は積分型制御のフィードバック制御を実行する。ディザ制御手段は、ディザ振幅基準値を目標電流値と電流指令値との同じ次元での比に応じて補正して決めたディザ振幅値が所定範囲内にあるか否かを判定手段により判定する。積分型制御のフィードバック制御では電流が目標電流値に達するまでの過渡域において、電流指令値が目標電流値よりも小さめの値に決まるため、目標電流値と電流指令値との同じ次元での比が外乱要因の影響を正確に反映しなくなる。しかし、判定手段によりそのディザ振幅値が所定範囲内にない判定されれば、ディザ振幅値が所定範囲内に収まるように上限値または下限値に制限されるので、電流が目標電流値に安定するまで過渡域においても、スプールの振幅が異常に過大もしくは過小になることが回避される。
【0036】
請求項10に記載の発明によれば、外乱要因が基準状態にあるとの仮定の下で所望する電流振幅が得られるようなディザ振幅基準値が予め設定される。ディザ制御手段は、制御手段がフィードバック制御で使用した電流指令値と電流検出値とを外乱要因が基準状態にあるとの仮定の下で同じ次元で比較した比に応じて、ディザ振幅基準値を補正することでディザ振幅値を決める。
【0037】
請求項11に記載の発明によれば、制御手段は所定周期で振幅する検出信号を電流検出手段から入力する。制御手段に備えられた検出値算出手段は、検出信号の周期の自然数倍の一定時間当たりに、その1周期につき2回以上サンプリングするよう合計偶数回のサンプリングを行い、この偶数個のサンプリング値を平均して電流検出値を算出する。
【0038】
請求項12に記載の発明によれば、産業車両には、請求項1〜請求項11のいずれか一項に記載のディザ制御装置が備えられているので、請求項1〜請求項11のいずれか一項に記載の発明と同様の作用が得られる。
【0039】
【発明の実施の形態】
(第1実施形態)
以下、本発明を具体化した第1実施形態を図1〜図12に従って説明する。
【0040】
図11に示すように、産業車両としてのフォークリフト1には、荷役機器としてのフォーク2を昇降させるためのリフトシリンダ3と、フォーク2が昇降可能に支持されるマスト4を傾動させるための油圧シリンダとしてのティルトシリンダ5が設けられている。運転室6にはリフトシリンダ3を伸縮駆動させるために操作するリフトレバー7と、ティルトシリンダ5を伸縮駆動させるために操作するティルトレバー8が装備されている。フォークリフト1の車体1aには、リフトシリンダ3及びティルトシリンダ5を駆動するための図12に示す油圧回路が設けられている。
【0041】
油圧回路は次のように構成される。
図12に示すように、オイルタンク10から作動油を汲み上げて吐出する油圧ポンプ11は、エンジン12(図11に示す)により駆動される。油圧ポンプ11から管路13を通って吐出された作動油は、フローディバイダ14で所定圧以上に昇圧されてから、荷役系の油圧回路と、ステアリング系のステアリングバルブ15とに分流される。
【0042】
フローディバイダ14から荷役系に分流された圧油が通る作動油供給用管路16は、オイルタンク10に戻る戻り管路17に接続されており、リフト用手動切換弁18とティルト用手動切換弁19は、この作動油供給用管路16上に直列に配設されている。
【0043】
リフト用手動切換弁18は3位置切換弁であり、リフトレバー7を上昇・中立・下降操作することによりa,b,cの3つの状態に切換可能となっている。リフト用手動切換弁18が3つの状態に切換えられることで、リフトシリンダ3のボトム室3aに繋がる管路20と、分岐管路16a及び戻り管路17との間が連通・遮断状態に切換えられる。
【0044】
油圧ポンプ11の吐出圧は管路13に接続された圧力伝達管路21に伝達されるようになっている。圧力伝達管路21上には減圧弁22が、その下流側における油圧を所定のパイロット設定圧に調整するために設けられている。
【0045】
ティルト用手動切換弁19は3位置切換弁であり、ティルトレバー8を後傾・中立・前傾操作することによりa,b,cの3つの状態に切換可能となっている。ティルト用手動切換弁19が3つの状態に切換えられることで、ティルトシリンダ5のロッド室5aに繋がる管路23aとボトム室5bに繋がる管路23bが、分岐管路16bと排出管路24との間で連通・遮断状態に切換えられる。ティルトシリンダ5は、ティルトレバー8を後傾操作した(a状態)ときに収縮駆動し、ティルトレバー8を前傾操作した(c状態)ときに伸長駆動する。
【0046】
本実施形態では、ティルトレバー8の操作に独立してマスト4の停止制御や速度制御を行うため、ティルト系の油路にティルト用手動切換弁19と直列に配置されるように管路23a上に電磁弁25を設けている。電磁弁25は、管路23a上に設けられた制御弁26と、制御弁26のスプールを駆動するパイロット圧を調節するために圧力伝達管路21上に設けられた比例ソレノイド弁27とから構成される。ティルトシリンダ5は、電磁弁25のソレノイド25aに流れる電流の電流値制御により速度制御及び停止制御される。
【0047】
リリーフ弁28は、リフト用手動切換弁18がa状態(上昇位置)に切換えられた際に、リフト系の油路が所定圧(リフト設定圧)になるように管路29を介して余分な作動油を逃がすためのものである。また、リリーフ弁30は、ティルト用手動切換弁19がa状態(後傾位置)とc状態(前傾位置)とのいずれかに切換えられた際に、ティルト系の油路が所定圧(ティルト設定圧)になるように管路31を介して余分な作動油を逃がすためのものである。また、チェック弁32,33,34は作動油の逆流を阻止するためのもの、フィルタ35は電磁弁25に油中のゴミが流れないように除去するためのものである。なお、管路16b,23a,23b,24によりティルト系の油路が構成される。
【0048】
本実施形態では、図8に示すコントローラ40が電磁弁25を電流値制御してその開度を制御することで、マスト4の速度制御や停止制御などのティルト制御が行われる。フォークリフト1にはティルト制御を行うために必要な制御情報を検出値として得るためのセンサ類として、揚高センサ41,ティルト角センサ42,圧力センサ43,前傾スイッチ44,後傾スイッチ45及び操作スイッチ46が設けられている。なお、これらセンサ類41〜46により検出手段が構成される。
【0049】
揚高センサ41はアウタマスト4aの上部に設けられ、フォーク2が所定高さ以上にある高揚高のときにオンし、フォーク2が所定高さ未満の低揚高のときにオフするようになっている。揚高センサ41は例えば近接センサからなる。また、ティルト角センサ42はティルトシリンダ5の姿勢角を検出してマスト4の傾斜角(ティルト角)を間接的に検出するためのもので、マスト4の傾斜角に応じた検出信号を出力するようになっている。ティルト角センサ42は例えばポテンショメータからなる。また、圧力センサ43はリフトシリンダ3のボトム室3aの油圧を検出するためのもので、フォーク2に積載された荷の重量(積載荷重)に応じた検出信号を出力する。
【0050】
前傾スイッチ44はティルトレバー8が前傾操作されたことを検知するためのもの、後傾スイッチ45はティルトレバー8が後傾操作されたことを検知するためのものである。両スイッチ44,45は例えばマイクロスイッチからなる。また、操作スイッチ46はティルトレバー8のノブ8aに設けられ、フォーク2を水平姿勢で自動停止させたいときに操作者がティルトレバー8の操作の際に操作するためのものである。
【0051】
次に、フォークリフト1に備えられたティルト制御装置の電気的構成を図6,図8に基づいて説明する。
コントローラ40は、マイクロコンピュータ50、ソレノイド駆動回路51、電流検出回路52及びローパスフィルタ(RCローパスフィルタ)53を備えている。マイクロコンピュータ50は、制御手段及びディザ制御手段を構成するとともに判定手段、振幅値制限手段及び検出値算出手段としての中央処理装置(以下CPUという)54、制御手段及びディザ制御手段を構成するとともに記憶手段としての読み出し専用メモリ(ROM)55、EEPROM(Electorical Erasable Programmable ROM)56、読出し及び書替え可能なメモリ(RAM)57を備える。なお、電流検出回路52及びローパスフィルタ53により測定手段及び電流検出手段が構成される
CPU54には、揚高センサ41、前傾スイッチ44、後傾スイッチ45及び操作スイッチ46が入力インタフェイス(図示せず)を介して接続されるとともに、ティルト角センサ42及び圧力センサ43がA/D変換回路(図示せず)及び入力インタフェイスを介して接続されている。CPU54に出力インタフェイス(図示せず)を介して接続されたソレノイド駆動回路51には、電源としてのバッテリ58のプラス端子が接続されるとともに、ソレノイド25aの第1端部が接続されている。ソレノイド25aの第2端部は電流検出回路52に接続されており、ソレノイド25aを流れた電流が電流検出回路52により検出されるようになっている。電流検出回路52が検出した検出信号(検出電圧)S1を入力するローパスフィルタ53から出力される検出信号S2がCPU54に入力される。
【0052】
図6に示すように、CPU54はPWMポート59を備える。PWMポート59は、CPU54が実行する後述する電流値制御処理(図1)及びディザ制御処理(図2)で決定されたディザ指令値としてのデューティ出力値Doutが書き込まれると、そのデューティ出力値Doutをデューティ値(%)とする2kHzのPWM信号を生成して出力する(但し、Dout値は実際にはビットデータ)。
【0053】
ソレノイド駆動回路51には、PWM信号がベースに入力されるように接続されたトランジスタ60が内蔵されている。このトランジスタ60はコレクタがバッテリ58のプラス端子に接続され、そのエミッタがソレノイド25aの第1端部に接続されている。トランジスタ60がPWM信号に基づいてオンオフ動作することで、ソレノイド25aに流れる電流はデューティ制御される。
【0054】
電流検出回路52は、ソレノイド25aと直列に接続された抵抗R4を備え、この抵抗R4の両端に印加された電圧を増幅器61を介して増幅した検出信号S1を出力する。ローパスフィルタ53は、検出信号S1から2kHzのリプルを取り除くためのものである。その帯域制限周波数(カットオフ周波数)は例えば500Hzに設定されている。CPU54は検出信号S2をA/Dポート62から入力する。
【0055】
また、CPU54にはカウンタ63が備えられている。カウンタ63は、後述するディザ制御処理が割込処理で実行される際の割込時間の計時のために使用されるものである。
【0056】
ROM55には、PWM信号のデューティ値(%)を決めるための電流指令値としてのデューティ出力中心値Dcentを決定するための図1に示す電流値制御処理のプログラムデータが記憶されている。電流値制御処理のプログラムデータは、検出信号S2から定まる後述する電流検出値を目標電流値に近づけるべくデューティ出力中心値Dcentを補正するフィードバック制御を行うためのもので、CPU54により10ミリ秒毎に実行されるものである。
【0057】
本実施形態では、電磁弁25のスプールを微小振動させてその動作開始時の摩擦抵抗を小さくしてその応答性を向上させるディザ制御を採用している。ソレノイド25aに流れる電流をディザ制御のために例えば100Hzで微小振幅させられるデューティ出力値Dout(%)の指令する。このためにデューティ出力値Doutを、10ミリ秒毎に決まるデューティ出力中心値Dcentからこの値を中心に100Hzで振幅するサイン波上の値として8回/10ミリ秒の割込処理で決めるようにしている。ROM55にはこの割込処理を実行するための図2に示すディザ制御処理のプログラムデータが記憶されている。CPU54によるPWMポート59へのデューティ出力値Doutの書き込みが8回/10ミリ秒で行われることで、PWMポート59からはデューティ出力中心値Dcentを中心とする100Hzのサイン波上の値に相当するデューティ値(%)のPWM信号が出力されることになる。
【0058】
本実施形態では、デューティ出力値Doutを、デューティ出力中心値Dcentにディザ振幅分の補正を加えることで求めている。つまり、式 Dout=Dcent+Ddizz により計算する。ここで、Ddizzはディザ制御のための振幅分の補正量に相当するサイン波上の値をとるディザ振幅値である。Ddizz値はサイン波上の値をとることから割込処理が8回のうち何回目であるかによって変化する。ROM55にはこのディザ振幅値Ddizzを決めるために図3に示すディザ振幅基準値D[cnt]のデータが記憶されている。このデータは、バッテリ電圧VBが基準電圧Vbase(例えば満充電時の90%)、かつ電磁弁25のソレノイド抵抗Rsolが基準温度のときの基準抵抗値Rbase(例えば常温時の抵抗値)となる基準状態にあるとの仮定の下で設定されている。ディザ振幅基準値D[cnt]は、ディザ制御に必要な電流振幅Idizz(図4,図5を参照)を得るのに必要なディザ振幅値(%)を、割込回数を計数するカウント値「cnt」に対して設定したものである。そのため、バッテリ電圧VBおよびソレノイド抵抗値Rsolが基準状態からずれた状態のときは、ディザ振幅基準値D[cnt]を適宜補正してディザ振幅値Ddizzを決めるようにしている。
【0059】
ディザ振幅基準値D[cnt]は1周期当たりの割込回数を「n」とすれば、一般にD[cnt]=sin((cnt/n)・2π)(cnt=0,1,2,…,n)で表わされる。本実施形態では1周期当たりの割込回数n=8を採用しており、D[0]=0,D[1]=Dmax/√2,D[2]=Dmax,D[3]=Dmax/√2,D[4]=0,D[5]=−Dmax/√2,D[6]=−Dmax,D[7]=−Dmax/√2をデータとして有している。ここで、Dmaxはデューティ値の振幅である。
【0060】
図5は目標電流値Iaimとデューティ値(%)との関係を示すグラフである。このグラフで基準線Lは、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)を仮定したとき、目標電流値Iaimの電流を流すために必要なデューティ出力中心値Dcent(%)をプロットしたラインである。基準状態の下ではディザ制御に必要な電流振幅Idizzを得るために必要なデューティ値の振幅はこの基準線LからわかるようにDmax(%)になる。
【0061】
図5のグラフに示すように、目標電流値Iaimを得るために必要なデューティ出力中心値Dcentは、バッテリ電圧小、ソレノイド抵抗大になるに連れて基準線Lに対して傾きが大きくなる方向にシフトし、バッテリ電圧大、ソレノイド抵抗小になるに連れて基準線Lに対して傾きが小さくなる方向にシフトする。このため、電流振幅Idizzを得るために必要な振幅分のデューティ値(%)は、ラインDcentの傾きの変化に応じて変化することになる。図2のディザ制御処理では、バッテリ電圧VBやソレノイド抵抗Rsolの基準状態からの変動の程度に応じ、適切なディザ振幅値Ddizzを得られるように、ディザ振幅基準値D[cnt]を補正する処理を行う。
【0062】
本実施形態ではディザ制御のため、電流検出回路52からは図7(a)に示すように2kHzと100Hzのリプルが乗った検出信号S1が出力される。ローパスフィルタ53からは、検出信号S1から2kHzのリプルだけが取り除かれた図7(b)に示す100Hzのサイン波を描く検出信号S2が出力される。CPU54はA/Dポート63から入力した検出信号S2から100Hzのリプルをカットするためのフィルタ処理を行う。すなわち、CPU54は図7(c)に示すように検出信号S2の1サイクルに偶数回(本実施形態では同図の黒点部の4回)のサンプリングを割込処理で実行し、1サイクル分の偶数個のサンプリング値を得る度にこれを平均して検出信号S2の振幅中心を計算し、これを電流検出値Idetとする。なお、検出信号S2の1サイクル当たりのサンプリング回数は、2回以上の偶数回であれば足りる。また、ローパスフィルタ53において、100Hzのリプルを取り除かないのは、ローパスフィルタ53を通過する際の信号の遅延を極力なくし、電流検出値Idetを位相遅れのできるだけ少ないリアルタイムに近い状態で得るためである。
【0063】
次に電流値制御処理及びディザ制御処理の各プログラムデータについて説明する。まず図1を用いて電流値制御処理について説明する。
ステップ10は、必要なデータを読み込むためのデータ読込処理である。この処理では、目標電流値Iaim,電流検出値Idet,前回のデューティ出力中心値Dcentを読み込む。ここで、目標電流値Iaimとは、ソレノイド25aに流すべき目標とする電流値であり、ROM55に記憶された後述するデータ等(例えば図9)を用いてセンサ類41〜46からの検出信号(検出値)に基づいて決まる値である。
【0064】
ステップ20は、目標電流値Iaimが「0アンペア」であるか否かを判断するための処理である。
ステップ30は、目標電流値Iaimと電流検出値Idetとの差ΔIを求めるための処理である。差ΔIは、式 ΔI=Iaim−Idet により計算される。
【0065】
ステップ40は、デューティ出力中心値Dcentを計算する処理である。デューティ出力中心値Dcentは、前回のデューティ出力中心値Dcentを差ΔIに比例する補正量ΔI・Gで補正して決められ、式 Dcent=Dcent+G・ΔI により計算される。ここで、本実施形態におけるフィードバック制御は前回のデューティ出力中心値Dcentに対して差ΔIに比例する補正量を加えていく積分型制御に相当する。ゲインGは、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)を仮定して、この積分型制御の伝達関数からその制御系の安定性を考慮して決まるゲインである。制御系の安定性とは、電流の過渡域でのオーバシュートを抑制し、しかも高い即応性を確保し得る設計条件を満たすことである。
【0066】
ステップ50は、目標電流値Iaimが「0アンペア」のときに、デューティ出力中心値Dcent=0(%)を設定する処理である。
ステップ60は、次回の処理に使用するために今回(現在)のデューティ出力中心値Dcentを記憶(保存)する処理である。このデューティ出力中心値DcentはRAM57の所定領域に記憶される。
【0067】
次にディザ制御処理について図2に従って説明する。
ステップ210は、必要なデータを読み込むためのデータ読込処理である。この処理では、目標電流値Iaim,デューティ出力中心値Dcentを読み込む。
【0068】
ステップ220は、目標電流値Iaimからデューティ基準値Dbaseを求める処理である。デューティ基準値Dbaseは、式 Dbase=K・Iaim より計算される。ここで、「K」は、基準状態の仮定の下で目標電流値Iaimをデューティ値(%)に換算するための変換係数であり、図5の基準線Lの傾きに相当する値である。
【0069】
ステップ230は、目標電流値Iaimが「0アンペア」であるか否かを判断する処理である。
ステップ240〜ステップ260は、採用するディザ振幅基準値D[cnt]を決めるためのカウント値cntを決めるカウンタ処理である。ステップ240は、カウンタ63のカウント値cntが「7」以上の値であるか否かを判断する処理である。ステップ250は、カウント値cntが「7」未満のときに、カウント値cntをインクリメントするための処理である。ステップ260は、カウント値cntが「7」以上の値であるときにカウント値cntを「0」にリセットする処理である。
【0070】
ステップ270は、ディザ振幅値Ddizzを計算する処理である。ディザ振幅値Ddizzは、ディザ振幅基準値D[cnt]にデューティ出力中心値Dcentとデューティ基準値Dbaseとの比「Dcent/Dbase」を乗じて計算される(Ddizz=D[cnt]・Dcent/Dbase)。
【0071】
ステップ280〜ステップ310は、ディザ振幅値Ddizzを上限値と下限値との間に収めるための処理である。ステップ280及びステップ290は、ディザ振幅値Ddizzを上限値以下に収めるための処理、ステップ300及びステップ310は、ディザ振幅値Ddizzを下限値以上に収めるための処理である。ディザ振幅値Ddizzの上限は、ステップ280においてディザ振幅値Ddizzがディザ基準値D[cnt]の2倍を超えれば、ステップ290において上限値「2D[cnt]」に決まる。ディザ振幅値Ddizzの下限は、ステップ300においてディザ振幅値Ddizzがディザ基準値D[cnt]の2分の1未満になると、ステップ310において下限値「D[cnt]/2」に決まる。
【0072】
ステップ320は、デューティ出力値Doutを計算する処理である。デューティ出力値Doutは、デューティ出力中心値Dcentにディザ振幅値Ddizzを加算して求められる(Dout=Dcent+Ddizz)。なお、デューティ出力値Doutとして制御上不適切な値、すなわち0%〜100%の範囲外の値が算出されたときは、100%を超えるときには「100%」に、0%未満のときには「0%」に修されるように設定されている。
【0073】
ステップ330は、目標電流値Iaimが「0アンペア」のときにデューティ出力値Dout=0に設定する処理である。
ステップ340は、デューティ出力値DoutをPWMポート59に書き込む処理である。この書き込み処理がディザ指令値の指令に相当する。
【0074】
ROM55には、電流値制御処理及びディザ制御処理のプログラムデータの他、電磁弁25の電流値制御によって行われるマスト4のティルト制御、すなわち前傾規制制御、自動水平停止制御、後傾速度制御、ショックレス制御等のためのプログラムデータが記憶されている。CPU54はセンサ類41〜46から入力する検出信号に基づいてティルト制御のうちどの制御を実行すべきであるかを判断し、これをティルトモードとして管理する。そして、現在のティルトモードに応じて目標電流値Iaimを決める。
【0075】
次にティルト制御について説明する。
前傾規制制御とは、マスト4を前傾させた際に車両重心が前方に移り過ぎて後輪が浮き上がるなどの不安定状態を招かないように、マスト4の前傾角度をその時々の揚高と積載荷重に応じて規制する制御である。本実施形態では、揚高センサ41がオンした高揚高のときに限りこの制御を実施し、その時の積載荷重Mに応じてマスト4の最大許容前傾角度θkを図10に示すマップを用いて決めるようにしている。このマップはEEPROM57に記憶されている。ティルトレバー8の前傾操作中であっても、高揚高で積載荷重がMo以上ではマップから決まる最大許容前傾角度θkでマスト4は強制停止される。
【0076】
自動水平停止制御とは、操作スイッチ46を押しながらティルトレバー8が操作されたときに、ティルト角を監視し、フォーク2が水平姿勢となった時点でマスト4を自動停止させる停止制御である。また、後傾速度制御とは、マスト4の後傾速度を揚高に応じて段階的(本実施形態では2段階)に切換え、高揚高のときのマスト4の後傾速度を制限する速度制御である。
【0077】
ショックレス制御とは、マスト4を停止制御のために停止させる際にその手前で予め減速させることで、マスト4の停止時の衝撃を緩和させる制御である。このショックレス制御は、前傾規制制御,自動水平停止制御,後傾マニュアル操作時におけるマスト停止時に実行される。EEPROM57にはショックレス制御のための必要データとして、マスト4の停止角(詳しくは前傾規制角θk,水平設定角,後傾エンド角)θsとその際の減速度とから減速開始角θoを決めるためのデータが記憶されている(図9を参照)。なお、EEPROM57のデータは、車両機種別、車両用途別、機器精度のばらつき等を考慮して、設定操作部(図示せず)を操作することで機台毎に個々に設定できるようになっている。
【0078】
また、ROM55には、目標電流値Iaimが各種ティルトモードに応じて図9に示すように設定されている。ティルトレバー8の操作時にマスト4が定速で傾動するティルトモード(前傾マニュアル,後傾マニュアル,前傾自動水平,後傾自動水平)での目標電流値Iaimには、基本的に制御で通常使用される電流範囲の最大電流値Inが設定されている。但し、高揚高後傾時のみは、マスト後傾速度を制限する必要から中間電流値Imが設定されている。また、ショックレスモードでの目標電流値Iaimは、減速開始角度θoでの電流値(通常InまたはIm)から停止角θsで電磁弁25を閉弁させる閉弁電流Icloseに達するまで一定の傾きで減少するように設定されている。なお、ティルトレバー8を操作していないティルトオフモードと、マスト4の傾動が禁止されるティルト禁止モードでは、目標電流値Iaimに「0アンペア」が設定されている。
【0079】
次に、このティルト制御装置の動作を説明する。
キ−オンされると、エンジン12が始動され、油圧ポンプ11の駆動が開始される。エンジン始動後、圧力伝達管路21の油圧はパイロット設定圧に達する。油圧ポンプ11から吐出された作動油はフローディバイダ14において所定圧に昇圧された後、荷役系とステアリング系に分流される。
【0080】
キーオン中、CPU54は例えば10ミリ秒毎に図1に示す電流値制御処理を実行する。CPU54は、各センサ41〜43及びスイッチ44〜46からの入力信号に基づいて現在実行すべき制御に応じたティルトモード(前傾マニュアル,後傾マニュアル,前傾自動水平,後傾自動水平,ショックレスモード等)を認知し、そのティルトモードに応じた目標電流値Iaimを得る。
【0081】
CPU54は、電流検出回路25aが検出した検出信号S1(図7(a))からローパスフィルタ53を通ることで2kHzのリプルが除去された検出信号S2(図7(b))をA/Dポート62から入力する。CPU54は入力する検出信号S2に対し、図7(c)に示すように1サイクルに偶数回(4回)のサンプリングを割込み処理で実行し、1サイクル分の偶数個のサンプリング値を得る度にこれを平均するフィルタ処理を行って電流検出値Idetを得る。100Hzのリプルの除去がフィルタ処理によって行われるので、位相遅れの極めて少ないリアルタイムに近い状態で電流検出値Idetが得られる。
【0082】
例えばティルトレバー8が操作されていないときは、ティルトオフモードの目標電流値Iaim「0アンペア」に決まる。目標電流値Iaim=0のときは、CPU54はデューティ出力中心値Dcent=0を設定するとともに(S50)、そのデータをRAM57に保存し(S60)、このプログラムを終了する。そして、8回/10ミリ秒毎のディザ制御処理の割込処理で毎回Dout=0(%)がPWMポート59に書き込まれる(S330,S340)。このように目標電流値Iaim=0のときはDcent値の補正をせずにデューティ出力値Doutが強制的に0%に設定されるので、0%であるはずがDcentを補正してDout>0を招いたために電磁弁25が僅かに開弁してしまう不具合が防止される。
【0083】
ティルトレバー8を操作すると、目標電流値Iaimが通常InまたはImに決まる。CPU54は各種データIaim,Idet,前回のDcentを読み込むと、差ΔIを計算する。ティルトレバー8の操作開始時の最初の処理では、ソレノイド25aの通電前で電流検出値Idetが「0」であるため、ΔI=Iaimと算出される(S30)。そして、CPU54は今回のデューティ出力中心値Dcent=Dcent+G・ΔIを計算し(S40)、次回の処理で使用するためRAM57の所定記憶領域に保存する(S60)。
【0084】
ティルトレバー8の操作開始時の最初の処理では、通常前回のDcent=0なのでデューティ出力中心値Dcentの初期値Dcent=G・Iaimが決まる。以下、10ミリ秒毎に実行される電流値制御処理において、前回のDcentに差ΔI(=Iaim−Idet)にゲインGを乗じた補正量(=G・ΔI)を加算するフィードバック制御(積分型制御)により、10ミリ秒毎にデューティ出力中心値Dcentが逐次決まることになる。
【0085】
CPU54は10ミリ秒毎にデューティ出力中心値Dcentが決まる度に、ディザ制御処理(図2)を8回/10ミリ秒の割込処理で実行する。ディザ制御処理は図2に基づいて次のように実行される。
【0086】
CPU54は最初に目標電流値Iaim,デューティ出力中心値Dcentを読み込むと(S210)、目標電流値Iaimからデューティ基準値Dbase=K・Iaimを計算する。ティルトレバー8の操作開始後では目標電流値Iaimが「0アンペア」ではないので、CPU54はカウンタ63のカウンタ処理を行う(S240〜S260)。第1回目の割込処理ではカウンタ63のカウント値cntが「7」になっており、まずカウンタ63がリセットされる(S260)。そして、カウント値cntに応じたディザ振幅基準値D[cnt]とデューティ出力中心値Dcentとが用いられ、ディザ振幅値Ddizz=D「cnt]・Dcent/Dbaseが計算される(S270)。つまり、その時々のバッテリ電圧VBおよびソレノイド抵抗Rsolに応じてディザ振幅基準値D[cnt]が補正された適切なディザ振幅値Ddizzが決定される。
【0087】
ディザ振幅値DdizzがD[cnt]/2≦Ddizz≦2D[cnt]の範囲にあれば(S280,S300)、その値が採用される。またディザ振幅値DdizzがDdizz>2D[cnt]の値であれば(S280)、Ddizzが上限値2D[cnt]に、ディザ振幅値DdizzがDdizz<D[cnt]の値であれば(S300)、Ddizzが下限値D[cnt]/2にそれぞれ決定される。ディザ振幅値Ddizzが決まると、これをデューティ出力中心値Dcentに加えてデューティ出力値Dout=Dcent+Ddizzが計算される(S320)。そして、必要に応じて0〜100%の範囲内の値に修正された後、デューティ出力値Dout(%)がPWMポート59に書き込まれる。
【0088】
こうして第1回目の割込処理を終えると、以下順次、所定時間(1.25ミリ秒)間隔で第2回目以降の割込処理が行われる。そして、第2回目以降の割込処理ではカウント値cntが順次cnt=1,2,…,7とされ、カウント値cntに応じて決まるディザ振幅基準値D[cnt](cnt=1,2,…,7)に比(Dcent/Dbase)を乗じることでディザ振幅値Ddizzが決まる。そして、このディザ振幅値Ddizzをデューティ出力中心値Dcentに加算して、2回目以降の割込処理においてもデューティ出力値Dout=Dcent+Ddizz(=Dcent+D[cnt]・Dcent/Dbase(但し、cnt=1,2,…,7))が計算される。そして、Ddizz>2D[cnt]あるいはDdizz<D[cnt]のときは、Ddizzをそれぞれ上限値2D[cnt]または下限値D[cnt]/2としてデューティ出力値Doutが決められ、この割込処理の度に決まる必要に応じて0〜100%の範囲内の値に修正されたデューティ出力値Dout(%)が毎回PWMポート59に書き込まれる。
【0089】
こうしてデューティ出力中心値Dcentの10ミリ秒毎の決定の度にディザ制御処理で決まるデューティ出力値DoutがPWMポート59に8回/10ミリ秒の割りで書き込まれることで、PWMポート59からはデューティ値(%)がDcent値を中心に100Hzで微小振幅するPWM信号が出力される。そして、トランジスタ60がこのPWM信号に基づいてオンオフ制御されることで、ソレノイド25aには100Hzで微小振幅する電流が流れることになる。
【0090】
ソレノイド25aに流れる電流が目標電流値Iaimに落ち着いた定常域では、その時々のバッテリ電圧およびソレノイド抵抗などの変動などの外乱要因に応じたデューティ出力中心値Dcentに最終的に落ち着くことになる。このときのデューティ出力中心値Dcentを目標電流値Iaimに対してプロットしたラインは、図5に示すようにバッテリ電圧小,ソレノイド抵抗大になるに連れて基準線Lより傾きが大きくなる方向にシフトし、バッテリ電圧大,ソレノイド抵抗小になるに連れて基準線Lより傾きが小さくなる方向にシフトする。このとき、電流の振幅を決めるためのディザ振幅値Ddizzは一定の基準値D[cnt]をそのまま用いるのではなく、そのときの外乱要因を反映した値をとるDcent値を利用し、基準値D[cnt]に比「Dcent/Dbase」を乗じた外乱要因が考慮された適切な値がディザ振幅値Ddizzとして用いられる。
【0091】
例えば図5に示すようにバッテリ電圧小,ソレノイド抵抗大のときは比(Dcent/Dbase)>1となるので、Dmaxより大きな振幅を有する同図のサイン波Sxを描くようにPWM信号のデューティ値が決められる。また、バッテリ電圧大,ソレノイド抵抗小のときは比(Dcent/Dbase)<1となるので、Dmaxより小さな振幅を有する同図のサイン波Syを描くようにPWM信号のデューティ値が決められる。このため、バッテリ電圧やソレノイド抵抗の変動による外乱要因によらず、ソレノイド25aに流れる電流はいつも必要な一定の振幅Idizzで振幅し、電磁弁25のスプール(詳しくは比例ソレノイド弁27のスプール)は常に一定の振幅で微小振動する(但し、閉弁時を除く)。
【0092】
このため、電磁弁25のスプールの動作開始時の摩擦抵抗が小さくなってスプールの動きだしがスムーズになって電磁弁25の応答性がよくなる。よって、電磁弁25のスプールの振幅が過小になって電磁弁25の応答性が低下したり、電磁弁25のスプールの振幅が過大になって開弁してはならない時に間違って電磁弁25が僅かにでも開弁する不具合の発生が防止される。この結果、電磁弁25の良好な応答性から、ティルトレバー操作時のマスト4の良好な応答性が確保される。また、電磁弁25のスプールが過大に振幅することに起因するマスト4の傾動動作時における微小な振動や、傾動動作停止時にマスト4が微小に変位するなどの不具合が発生しない。
【0093】
また、電流の過渡域では、デューティ出力中心値Dcentが最終的に収束する値よりも小さな値をとる。この場合、比(Dcent/Dbase)は外乱要因の影響を正確に反映しておらず、比(Dcent/Dbase)を使って得たディザ振幅値Ddizzを採用すると、電流の振幅が過大になることが心配される。しかし、ステップ280〜ステップ310において、ディザ振幅値DdizzがD[cnt]/2≦Ddizz≦2D[cnt]の範囲から外れれば、Ddizz値が上限値2D[cnt]あるいは下限値D[cnt]/2に制限されるので、電流の過渡域において電流の振幅が異常に過大になることが防止される。よって、電流の過渡域においてマスト4ががたついたりする不具合が発生しない。
【0094】
以上詳述した本実施形態によれば、以下の効果が得られる。
(1)ディザ振幅値Ddizzについてもバッテリ電圧やソレノイド抵抗の変動による外乱要因を反映するDcent値とDbase値の比を使って外乱要因が考慮された値に決まるようにしたので、この種の外乱要因に影響されることなく電磁弁25のスプールを必要な一定振幅で微小振動させることができる。従って、電磁弁25のスプールの振幅が小さ過ぎてマスト4の始動時の応答性を悪化させる問題や、スプールの振幅が大き過ぎることに起因するマスト4の傾動時の微小な振動や、電磁弁25が閉弁すべきときに極く僅かに開弁してマスト4が微視的に変位するなどの不具合を確実に防止することができる。
【0095】
(2)電流の立ち上がり時などの過渡域であってデューティ出力中心値Dcentから決まる比(Dcent/Dbase)が外乱要因の影響を正確に反映しないときでも、ディザ振幅値Ddizzを所定範囲(D[cnt]/2≦Ddizz≦2D[cnt])に制限したので、安定な制御を実現させ易い積分型制御のフィードバック制御を採用しても、電磁弁25のスプールの振幅が異常なほど大きくなることを制限できる。従って、電流の過渡域においてスプールの振幅が過大になることに起因するマスト4の振動を防止することができる。
【0096】
(3)ディザ振幅値Ddizzを決めるのにフィードバック制御のための電流値を決めるためのデューティ出力中心値Dcentのデータを利用しているので、ディザ振幅値Ddizzを決めるだけのためのデータ取得処理が不要である。
【0097】
(4)バッテリ59とソレノイド25aの間に比較的高価なレギュレータを設けずに、外乱要因によらずソレノイド電流を安定に制御できる。
(5)2kHzのリプルだけをローパスフィルタ53で取り除き、100HzのリプルはCPU54によるフィルタ処理で除去するようにしてローパスフィルタ53での信号の遅延を極力抑えるようにしたので、電流検出値Idetをほぼリアルタイムに近い状態で得ることができる。そのため、十分即応性の高いフィードバック制御を実現できる。
【0098】
(6)CPU54によるソフトウェアでフィードバック制御を行うので、ローパスフィルタ53が付加されるものの、ハードウェアによるフィードバック制御をする従来装置において必要であった三角波発生回路,デューティ発生回路及びフィードバック回路を省略でき、フィードバック制御のために必要なハードウェア部分を簡素化できる。
【0099】
(第2実施形態)
次に本発明を具体化した第2実施形態を図13〜図15に従って説明する。
この実施形態では、ソレノイド25aに流れる電流に変動をもたらす主な外乱要因の一つであるバッテリ電圧VBを測定して監視し、このバッテリ電圧VBの測定値を使ってデューティ出力中心値Dcentおよびディザ振幅値Ddizzを決めるようにした例である。電流値制御処理のプログラムデータが第1実施形態と異なるのみで、ディザ制御処理をはじめとする他の処理は第1実施形態と同じである。また、装置の構成についても、バッテリ電圧検出用の回路が加わった以外は、第1実施形態と同じ構成である。このため以下、特に異なる部分についてのみ説明する。
【0100】
図15は電気構成概略図を示す。CPU54のA/Dポート64には電源としてのバッテリ58のプラス端子が測定手段及び外乱要因測定手段としての抵抗Rbを介して接続されている。CPU54はバッテリ電圧VBが抵抗Rb,Rcにより降圧された電圧信号をA/Dポート64から入力し、この電圧信号からバッテリ電圧検出値Vbattを得る。
【0101】
ROM55には第1実施形態と同様に図3に示す1周期当たりのディザの振幅基準値D[cnt]とカウント値cntとの関係を示すデータが記憶されている。すなわち、D[0]=0,D[1]=Dmax/√2,D[2]=Dmax,D[3]=Dmax/√2,D[4]=0,D[5]=−Dmax/√2,D[6]=−Dmax,D[7]=−Dmax/√2となっている。但し、Dmaxはディザ制御のためのデューティ値の振幅(%)である。
【0102】
ROM55には図13に示す電流値制御処理のプログラムデータと、図14に示すディザ制御処理のプログラムデータが記憶されている。ディザ制御処理は電流値制御処理の度に8回/10ミリ秒の割込処理で実行される。また、CPU54は、検出信号S2の振幅中心値を得るために第1実施形態と同様にサンプリング値を平均して電流検出値Idetを計算するフィルタ処理を実行する。
【0103】
以下、電流値制御処理及びディザ制御処理の各プログラムデータについて説明する。まず図13を用いて電流値制御処理について説明する。
ステップ510は、必要なデータを読み込むためのデータ読込処理である。この処理では、目標電流値Iaim,電流検出値Idet,バッテリ電圧検出値Vbatt,前回のデューティ出力中心値Dcentを読み込む。
【0104】
ステップ520は、目標電流値Iaimが「0アンペア」であるか否かを判断するための処理である。
ステップ530は、目標電流値Iaimと電流検出値Idetとの差ΔIを求めるための処理である。差ΔIは、式 ΔI=Iaim−Idet により算出される。
【0105】
ステップ540及びステップ550は、ゲインの下限を決めるための処理、ステップ560及びステップ570は、ゲインの上限を決めるための処理である。ゲインの下限は、ステップ540においてバッテリ電圧検出値Vbattが基準電圧Vbaseの2倍を超えれば、ステップ550においてその下限値「Go/2」に決まる。ゲインの上限は、ステップ560においてバッテリ電圧検出値Vbattが基準電圧Vbaseの1/2未満ならば、ステップ570においてその上限値「2Go」に決まる。
【0106】
ここで、本実施形態におけるフィードバック制御も第1実施形態と同様に前回のデューティ出力中心値Dcentに対して差ΔIに比例する補正量を加えていく積分型制御に相当する。基準ゲインGoとは、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)の仮定の下で、この積分型制御の伝達関数からその制御系の安定性を考慮して決められたゲイン(比例定数)である。なお、制御系の安定性とは、電流の過渡域でのオーバシュートを抑制し、しかも高い即応性を確保し得る設計条件を満たすことである。
【0107】
ステップ580は、そのときのバッテリ電圧VBに応じたゲインGを計算する処理である。ゲインGは、基準ゲインGoをバッテリ電圧検出値Vbattに応じて補正することで求められ、式 G=Go・Vbase/Vbatt により計算される。つまり、ゲインGは基準ゲインGoを外乱要因の主要因の1つであるバッテリ電圧VBを考慮した補正をすることで決められる。
【0108】
ステップ590は、デューティ出力中心値Dcentを計算する処理である。デューティ出力中心値Dcentは、前回のデューティ出力中心値Dcentに補正量G・ΔIを加えて決められ、式 Dcent=Dcent+G・ΔI により計算される。
【0109】
ステップ600は、目標電流値Iaimが「0アンペア」のときに、デューティ出力中心値Dcent=0(%)を設定する処理である。
ステップ610は、次回の処理に使用するために現在のデューティ出力中心値Dcentを記憶(保存)する処理である。このデューティ出力中心値DcentはRAM57の所定領域に記憶される。
【0110】
次にディザ制御処理について図14に従って説明する。
ステップ710は、必要なデータを読み込むためのデータ読込処理である。この処理では、目標電流値Iaim,バッテリ電圧検出値Vbatt,デューティ出力中心値Dcentを読み込む。
【0111】
ステップ720は、目標電流値Iaimが「0アンペア」であるか否かを判断する処理である。
ステップ730〜ステップ750は、ディザ振幅基準値を決めるカウント値cntのカウンタ処理であり、第1実施形態におけるS230〜S250と同じ処理である。
【0112】
ステップ760は、ディザ振幅値Ddizzを計算する処理である。ディザ振幅値Ddizzは、ディザ振幅基準値D[cnt]にバッテリ電圧検出値Vbattと基準電圧Vbaseとの比「Vbase/Vbatt」を乗じて求められ、式 Ddizz=D[cnt]・Vbase/Vbatt により計算される。
【0113】
ステップ770は、デューティ出力値Doutを計算する処理である。デューティ出力値Doutは、デューティ出力中心値Dcentにディザ振幅値Ddizzを加算して求められる(Dout=Dcent+Ddizz)。
【0114】
ステップ780〜ステップ810は、算出されたデューティ出力値Doutを0〜100%の範囲に収めるための処理であり、第1実施形態における図2のフローチャートで図示を省略した処理である。ステップ780においてDout<0であれば、ステップ790においてDout値を「0%」に修正する。ステップ800においてDout>100%であれば、ステップ810においてDout値を「100%」に修正する。ステップ790の処理は目標電流値Iaimが「0アンペア」のときにデューティ出力値Dout=0(%)に設定する処理も兼ねている。
【0115】
ステップ820は、デューティ出力値DoutをPWMポート59に書き込む処理である。
次に、このティルト制御装置の動作を説明する。
【0116】
キーオン中、CPU54は例えば10ミリ秒毎に図13に示す電流値制御処理を実行し、デューティ出力中心値Dcentを決定する。目標電流値Iaimはセンサ類41〜46からの入力信号に基づいて決まるティルトモードに応じて決まり、電流検出値IdetはCPU54がA/Dポート63から入力する検出信号S2に対して偶数回のサンプリングを行って平均するフィルタ処理により得られる。CPU54はA/Dポート64からバッテリ電圧VBに比例する電圧信号を入力してバッテリ電圧検出値Vbattを得る。
【0117】
CPU54は、10ミリ秒毎に必要なデータIaim,Idet,Vbatt,前回のDcentを読込む。例えばティルトレバー8が操作されていないときは、電流値制御処理においてデューティ出力中心値Dcent=0が毎回RAM57に保存され(S600,S610)、8回/10ミリ秒の割りのディザ制御処理の割込処理で毎回Dout=0(%)がPWMポート59に書き込まれる(S790,S820)。
【0118】
ティルトレバー8を操作すると、目標電流値Iaimが0以外の値になり(S520)、電流検出値Idetを目標電流値Iaimに近づけるようにデューティ出力中心値Dcentを補正するフィードバック制御が行われる。このとき、デューティ出力中心値Dcentを決めるために採用するゲインGはS540〜S580の処理でそのときのバッテリ電圧検出値Vbattに応じて決定される。
【0119】
ゲインGは次のように特定される。バッテリ電圧検出値VbattがVbase/2≦Vbatt≦2Vbaseを満たす多くの場合は、ゲインGは式 Go・Vbase/Vbattにより計算される(S580)。Vbatt>2Vbaseを満たすときは、ゲインGは下限値「Go/2」に設定される(S540,S550)。また、Vbatt<Vbase/2を満たすときは、ゲインGは上限値「2Go」に設定される(S560,S570)。
【0120】
ゲインGが決まると、このゲインGを用いて前回のDcentに差ΔI=Iaim−Idetに比例する補正量G・ΔIをその都度加えることで今回のデューティ出力中心値Dcent=Dcent+G・ΔIが計算により決められる(S590)。この今回のデューティ出力中心値Dcentは、次回の処理で使用するためRAM57の所定記憶領域に保存される(S610)。
【0121】
ティルトレバー8の操作開始されると、10ミリ秒毎の電流値制御処理の度に前回のDcentにそのときのバッテリ電圧検出値Vbattから決まるゲインG(=Go・Vbase/Vbatt)を用いて決まる補正量(=G・ΔI)を加算する積分型制御のフィードバック制御が実行され、逐次デューティ出力中心値Dcentが決まることになる。
【0122】
CPU54はデューティ出力中心値Dcentが決まる度に、10ミリ秒に8回の割りでディザ制御処理(図14)を割込処理で実行する。ティルトレバー8の操作中は、CPU54は最初に目標電流値Iaim,バッテリ電圧検出値Vbatt,デューティ出力中心値Dcentを読み込み(S710)、カウンタ処理(S730〜S750)で決まるカウント値cntに応じたディザ振幅基準値D[cnt]を用いて、ディザ振幅値Ddizz=D「cnt]・Vbase/Vbattを計算する(S760)。
【0123】
このとき、電流の過渡域と定常域のいずれの場合でも、比(Vbase/Vbatt)が主な外乱要因であるバッテリ電圧VBの影響を表現した値になっているので、第1実施形態のようにディザ振幅値Ddizzを上限・下限の範囲内に制限する処理は行っていない。こうして決まったディザ振幅値Ddizzを用いてデューティ出力値Dout=Dcent+Ddizzが計算される(S770)。
【0124】
そして、必要に応じて0〜100%の範囲内の値に修正されたデューティ出力値Dout(%)がPWMポート59に書き込まれる(S780〜S820)。
こうしてPWMポート59からはデューティ値(%)がデューティ出力中心値Dcent(%)を中心に100Hzで微小振幅するようなPWM信号が出力されることになる。このPWM信号のデューティ値(%)に応じてトランジスタ61のオン時間が制御され、ソレノイド25aに電流が100Hzで微小振幅しながら流れることになる。
【0125】
そのため、そのときのバッテリ電圧VBが基準電圧Vbaseからどの程度ずれていても、電流は常にディザ制御に必要なほぼ一定の振幅Idizzで振幅しながら、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)のときに基準ゲインGoが採用されたときとほぼ同じ履歴をとるように立ち上がることになる。
【0126】
そのため、電磁弁25のスプールは閉弁時以外は常に一定の振幅で微小振動する。従って、電磁弁25のスプールの振幅が過小になって電磁弁25の応答性が低下したり、電磁弁25のスプールの振幅が過大になって開弁してはならない時に間違って電磁弁25が僅かにでも開弁する不具合の発生が確実に防止される。よって、電磁弁25のスプールの応答性が常に良好になり、ティルトレバー8の操作開始時におけるマスト4の応答性が常に良好になるうえ、マスト4が電磁弁25のスプールの振幅の過大に起因し、傾動時に微小にがたつくことも起こらない。
【0127】
また、電流の立ち上がり履歴がいつも基準状態のときに基準ゲインGoが採用されたときとほぼ同じになるので、ティルトレバー8を操作したときのマスト4の動きだし時に電流のオーバシュートに起因するショックが発生することがなく、荷崩れの心配がない。また、ソレノイド抵抗を常温時の抵抗値にあるものとし、ソレノイド抵抗の変動を考慮せずにディザ振幅値Ddizzを決めているが、バッテリ電圧VBの変動に比べてソレノイド抵抗の変動が少なければほとんど問題なくいつも必要な振幅で電磁弁25のスプールを微小振動させることはできる。なお、ソレノイド抵抗の変動による外乱要因が考慮されなくても、CPU54によるフィードバック制御により、ソレノイド25aに目標電流値Iaim通りの電流が流れることになるので、マスト4はソレノイド抵抗の変動によらずいつも設定通りの一定速度で傾動する。このため、マスト4の高揚高後傾時にも設定通りにその後傾速度が速度制限されるので、この場合も荷崩れの心配がない。
【0128】
さらにバッテリ電圧検出値Vbattが過大もしくは過小の値をとるときはゲインGが上限値(=2Vbase)と下限値(=Vbase/2)にそれぞれ制限される。このため、例えば検出異常等が原因でバッテリ電圧検出値Vbattが過大あるいは過小な値に検出されても、電流の例えば立ち上がり勾配が異常なほど過大もしくは過小になる事態が回避される。
【0129】
以上詳述した本実施形態によれば、以下の効果が得られる。
(1)ディザ振幅値Ddizzについてもバッテリ電圧検出値Vbattを考慮して決めるようにしたので、そのときのバッテリ電圧によらず電磁弁25のスプールをいつも必要なほぼ一定の振幅で微小振動させることができる。従って、スプールの振幅の過小による電磁弁25の応答性を悪化や、スプールの振幅の過大による電磁弁25の閉弁すべきときの僅かな開弁を確実に防止することができる。よって、電磁弁25のスプールの振幅が小さ過ぎてマスト4の始動時の応答性を悪化させる問題や、スプールの振幅が大き過ぎることに起因するマスト4の傾動時の微小な振動や、電磁弁25が閉弁すべきときに極く僅かに開弁してマスト4が微視的に変位するなどの不具合を確実に防止することができる。
【0130】
(2)比Vbase/Vbattは電流の過渡域と定常域とを問わず常に外乱要因に見立てたバッテリ電圧の影響を表現した値になっているので、ディザ振幅値Ddizzを上限と下限の範囲に制限する第1実施形態では必要であった処理を不要にでき、しかも電流の過渡域におけるスプールの振幅精度を高めることもできる。
【0131】
(3)ディザ振幅値Ddizzを決めるのにフィードバック制御の際の電流値を決めるためのバッテリ電圧検出値Vbattのデータを利用しているので、ディザ振幅値Ddizzを決めるだけのためのデータ取得処理が不要である。
【0132】
(4)バッテリ電圧検出値Vbattを考慮して基準ゲインGoを補正することでゲインGを決めるようにしたので、バッテリ電圧VBの変動に拘わらずいつもソレノイド電流を設定通りの立ち上がり率で立ち上げることができる。従って、電流の過渡域でのオーバシュートに起因するマスト4の動きだし時のショックが原因で起こり得る荷崩れの心配がなく、しかもバッテリ電圧が低くなったことによるマスト4の応答性の悪化を招くこともない。
【0133】
(5)外乱要因の一つであるソレノイド抵抗を考慮しないものの、ソレノイド抵抗の変動による外乱要因も考慮されてフィードバック制御がされるので、ソレノイド25aに目標電流値Iaim通りの電流を流すことができる。従って、例えばマスト4の高揚高後傾時の後傾速度が確実に設定通りに速度制限され、高揚高後傾時におけるマスト4のエンド停止時のショックが小さく抑えられるので、荷崩れの発生をほぼ確実に防止することができる。
【0134】
(6)バッテリ電圧検出値Vbattが過大または過小な値に検出されたときは、ゲインGを上限値または下限値に制限したので、検出異常等の異常発生時でもソレノイド25aに問題になるほどの異常電流が流れることを回避することができる。
【0135】
その他、第1実施形態と同様に、比較的高価なレギュレータ不要の効果、フィルタ処理の採用によるフィードバック制御の即応性を高める効果、CPU54によるソフトウェアでのフィードバック制御の採用によるフィードバック制御のために必要なハードウェア部分を簡素化できる効果を得ることができる。
【0136】
(第3実施形態)
次に本発明を具体化した第3実施形態を図16,図17に従って説明する。
本実施形態は、バッテリ電圧検出値Vbattを利用するフィードフォワード制御に応用した例である。電流値制御処理のプログラムデータが第2実施形態と異なるのみで、ディザ制御処理のプログラムデータをはじめとする他
のデータは第2実施形態と同じである。また、装置の構成についても、電流検出が不要なため回路の一部が削除されている他は、第1実施形態と同じ構成である。このため以下、共通部分については同じ符号を使用して説明を省略し、特に異なる部分についてのみ説明する。
【0137】
図17に示すように、フィードフォワード制御であって電流検出が不要であるため、第2実施形態のコントローラ40から電流検出回路52及びローパスフィルタ53を省いた構成になっている。すなわち、ソレノイド駆動回路51に内蔵されたトランジスタ60のエミッタに第1端部が接続されたソレノイド25aの第2端部は接地されている。CPU54は測定手段及び外乱要因測定手段としての抵抗Rbを介してA/Dポート64から入力する電圧信号からバッテリ電圧検出値Vbattを得る。CPU54はトランジスタ61のオン時間を制御するためPWMポート59から出力されるPWM信号のデューティ値(%)を決めるために必要なデータDcent,Doutを、ROM55に記憶された電流値制御処理(図16)及びディザ制御処理(図14)のプログラムデータに基づいて決定する。
【0138】
電流制御処理のプログラムデータについて図16に従って説明する。
ステップ910は、必要なデータを読み込むデータ読込処理である。目標電流値Iaim及びバッテリ電圧検出値Vbattを読み込む。
【0139】
ステップ920は、デューティ出力中心値Dcentを計算する処理である。式 Dcent=(Iaim・Rbase/Vbatt)×100 により算出される。ここで、Rbaseは、基準抵抗値(本実施形態では常温のときのソレノイド抵抗値)であり定数である。目標電流値Iaimの電流を流すにはIaim・Rbaseに等しい平均電圧をかけられるようにデューティ値(%)をきめればよいので、デューティ出力中心値Dcentはバッテリ電圧検出値Vbattを用いて上式のように表わされる。なお、上式により計算されたDcent値が仮に0〜100%の範囲にないときは、下限0%、上限100%になるように修正されたDcentが採用される。また、この実施形態では上式中の電圧Iaim・Rbaseが基準データに相当する。
【0140】
コントローラ40による電磁弁25の電流値制御は、図16及び図14のフローチャートに従って次のように行われる。
10ミリ秒毎に実行する電流値制御処理では、まず目標電流値Iaim及びバッテリ電圧検出値Vbattを読み込み(S910)、デューティ出力中心値Dcent=(Iaim・Rbase/Vbatt)×100を計算する(S920)。
【0141】
8回/10ミリ秒の割込みで実行されるディザ制御処理では、このデューティ出力中心値Dcentを使用して決まるデューティ出力値Dout(=Dcent+D[cnt]・Vbase/Vbatt)がPWMポート59に書き込まれる。この結果、バッテリ電圧の変動に拘わらずいつもソレノイド25aに流れる電流はディザ制御に必要なほぼ一定の振幅Idizzで振幅しながら、ほぼ目標電流値Iaim通りに流れるように調整される。
【0142】
また、電流検出用の回路52,53が不要であるので、前記各実施形態に比べてハードウェア部分の構成を一層簡素化できる。しかもフィードバック制御のための補正処理が不要になるので、前記各実施形態に比べCPU54の負担も軽減できる。また、ディザ振幅値Ddizzを決めるのにフィードフォワード制御のためのデューティ出力中心値Dcentを決めるために用いたバッテリ電圧検出値Vbattのデータを利用しているので、ディザ振幅値Ddizzを決めるだけのためのデータ取得処理が不要である。その他、前記各実施形態で述べたレギュレータを不要にできる効果を同様に得ることができる。
【0143】
(第4実施形態)
次に本発明を具体化した第4実施形態を図18〜図20に従って説明する。
本実施形態は、第1実施形態の変形例である。第1実施形態ではディザ振幅値Ddizzを決めるためのデータとしてデューティ出力中心値Dcentを利用したが、この実施形態では電流検出値Idetを利用している。ディザ制御処理のプログラムデータなどの一部のデータが第1実施形態と異なるのみで、電流値制御処理のプログラムデータをはじめとする他のデータは第1実施形態と同じである。また、装置の構成は第1実施形態と同じである。このため以下、特に異なる部分についてのみ説明する。
【0144】
ROM55には図1に示す電流値制御処理のプログラムデータと、図19,図20に示すディザ制御処理のプログラムデータが記憶されている。
図18は電流検出値Idetとデューティ出力中心値Dcentとの関係を示すグラフである。グラフ中の基準線Mは、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)のとき、デューティ出力中心値Dcentを中心に振幅するデューティ値のPWM信号が指令された場合、CPU54により検出されるはずの電流検出値Idet(以下、電流基準検出値Ibaseと記す)をプロットしたラインである。
【0145】
デューティ出力中心値Dcentに対して得られるはずの電流検出値Idetをプロットしたラインは、バッテリ電圧小,ソレノイド抵抗大になるに連れて同図のX線のように基準線Mより傾きが大きくなる方向にシフトし、バッテリ電圧大,ソレノイド抵抗小になるに連れて同図のY線のように基準線Mより傾きが小さくなる方向にシフトする。例えばDcent=Dzのときに基準状態であればIdet=Izが得られるはずであるが、そのときの外乱要因に応じてX線のようにシフトしていればIdet=Ix、Y線のようにシフトしていればIdet=Iyが得られる。つまり、外乱要因によって電流検出値Idetが電流基準検出値Ibaseに対してシフトし、比(Ibase/Idet)が外乱要因を反映した値になる。このことを利用し、ディザ振幅値Ddizz=D[cnt]・Ibase/Idetの計算式のようにディザ振幅基準値D[cnt]にその比(Ibase/Idet)を乗じて補正することで、外乱要因が考慮されたディザ振幅値Ddizzを得るようにしたのが、図19,図20に示すディザ制御処理のプログラムデータである。
【0146】
以下、このディザ制御処理のプログラムデータについて図19,図20に基づいて説明する。
ステップ1010は、必要なデータを読込むデータ読込処理である。目標電流値Iaim,電流検出値Idet,今回と前回のデューティ出力中心値Dcentを読込む。
【0147】
ステップ1020は、前回のデューティ出力中心値Dcentから電流基準検出値Ibaseを計算する処理である。ここで、電流基準検出値Ibaseは、前回のDcentに基づいてPWM信号のデューティ値(%)が決められたときに、基準状態(バッテリ電圧VB=Vbaseかつソレノイド抵抗Rsol=Rbase)にあるとの仮定の下で検出されるはずの電流検出値Idetに相当する値である。電流基準検出値Ibaseは式 Ibase=h・Dcent により計算される。「h」はDcentをIbaseに変換するための変換係数であり、図18の基準線Mの傾きに相当する値である。
【0148】
ステップ1030〜ステップ1060は、第1実施形態におけるS230〜S260に相当する処理である。
ステップ1070〜ステップ1110は、ディザ振幅値Ddizzを決めるための処理である。ステップ1070,1080は、ディザ振幅値Ddizzを下限値以上に収めるための処理、ステップ1090,1100は、ディザ振幅値Ddizzを上限値以下に収めるための処理である。
【0149】
ステップ1070は、電流検出値Idetが電流基準検出値Ibaseの2倍を超えるか否かを判断する処理で、この条件Idet>2Ibaseを満たせば、ステップ1080においてディザ振幅値Ddizzは下限値「D[cnt]/2」に決まる。また、ステップ1090は、電流検出値Idetが電流基準検出値Ibaseの1/2未満であるか否かを判断する処理で、この条件Idet<Ibase/2を満たせば、ステップ1100においてディザ振幅値Ddizzは上限値「2D[cnt]」に決まる。
【0150】
ステップ1110は、電流検出値IdetがIbase/2≦Idet≦2Ibaseを満たすときに、ディザ振幅値Ddizzを計算する処理である。ディザ振幅値Ddizzは、ディザ振幅基準値D[cnt]に電流検出値Idetと電流基準検出値との比「Ibase/Idet」を乗じて求められ、式 Ddizz=D[cnt]・Ibase/Idet により計算される。
【0151】
ステップ1120は、デューティ出力値Doutを計算する処理である。デューティ出力値Doutは、デューティ出力中心値Dcentにディザ振幅値Ddizzを加算して求められる(Dout=Dcent+Ddizz)。
【0152】
ステップ1130〜ステップ1160は、算出されたデューティ出力値Doutを0〜100%の範囲に収めるための処理であり、第2実施形態におけるS780〜S810の処理に相当する処理である。ステップ1140の処理は目標電流値Iaimが「0アンペア」のときにデューティ出力値Dout=0(%)に設定する処理も兼ねている。ステップ1170は、デューティ出力値DoutをPWMポート59に書き込む処理である。
【0153】
次に、このティルト制御装置の動作を説明する。
目標電流値Iaimはセンサ類41〜46からの入力信号に基づいて決まるティルトモードに応じて決まり、電流検出値IdetはCPU54が実行するフィルタ処理により得られる。CPU54は例えば10ミリ秒毎に図1に示す電流値制御処理を実行し、デューティ出力中心値Dcentを決定する。
【0154】
CPU54はデューティ出力中心値Dcentを決定する度に、8回/10ミリ秒の割りで図19に示すディザ制御処理を割込処理で実行する。まず必要なデータIaim,Idet,今回と前回のDcentを読込む。ティルトレバー8の操作開始後では、目標電流値Iaimが0以外の値になる。
【0155】
CPU54は前回のDcentを用いて電流基準検出値Ibase=h・Dcentを計算する。カウンタ処理(S1040〜S1060)で決まるカウント値cntに応じたディザ振幅基準値D[cnt]を用いて、ディザ振幅値Ddizzを決める。すなわち、このとき電流検出値Idetが考慮され、Idet>2IbaseのときはDdizz=D[cnt]/2に決まり、Idet<Ibase/2のときはDdizz=2D[cnt]/2に決まる。Idet値がこれら2つの条件を満たさないとき、つまりIbase/2≦Idet≦2Ibaseを満たすときは、Ddizz=D「cnt]・Ibase/Idetを計算する(S1070〜S1110)。
【0156】
こうして決まったディザ振幅値Ddizzを用いてデューティ出力値Dout=Dcent+Ddizzが計算される(S1120)。そして、必要に応じて0〜100%の範囲内の値に修正されたデューティ出力値Dout(%)がPWMポート59に書き込まれる(S1130〜S1170)。
【0157】
こうしてPWMポート59からはデューティ値(%)がデューティ出力中心値Dcent(%)を中心に100Hzで微小振幅するようなPWM信号が出力され、ソレノイド25aに電流が100Hzで微小振幅しながら流れることになる。
【0158】
この実施形態で採用する比(Ibase/Idet)は、実測電流を基準にするために外乱要因を正確に表現した値をとるので、スプールの振幅精度を高めることができる。また、ディザ振幅値Ddizzを決めるのにフィードバック制御で使用したデータIdet,前回のDcentを利用しているので、ディザ振幅値Ddizzを決めるだけのためのデータ取得処理が不要である。その他、第1実施形態の効果で述べた(1),(4)〜(6)の効果を同様に得ることができる。
【0159】
(第5実施形態)
前記第2および第3実施形態では、主な外乱要因としてバッテリ電圧を測定してDcent値およびDdizz値の決定にバッテリ電圧だけを反映させたが、本実施形態は、外乱要因の主要因の1つであるソレノイド抵抗をもDcent値およびDdizz値の決定に反映させている。CPU54はフィードバック制御やフィードフォワード制御で使用したデータを使ってソレノイド抵抗を計算する。従って、本実施形態ではCPU54が外乱要因測定手段を構成する。
【0160】
ソレノイド抵抗値Rsolは、前回のバッテリ電圧検出値Vbatt,電流検出値Idet,デューティ出力中心値Dcentを使用して式 Rsol=(Dcent/100)・Vbatt/Idet により計算される。このソレノイド抵抗値Rsolをバッテリ電圧検出値Vbattと同様に今回のデューティ出力中心値Dcentを決定するときに考慮する。すなわち、バッテリ電圧検出値Vbattとソレノイド抵抗値Rsolを共に外乱要因として考慮したときの補正係数αは、α=(Vbase/Vbatt)・(Rsol/Rbase)=β・(Rsol/Vbatt)で与えられる。但し、Vbaseは基準電圧,Rbaseは基準抵抗値であり,βはβ=Vbase/Rbaseで定数である。
【0161】
第2実施形態でソレノイド抵抗をも考慮する場合、まずソレノイド抵抗値Rsol=(Dcent/100)・Vbatt/Idetを計算し、電流値制御処理でゲインGを式 G=Go・β・(Rsol/Vbatt) により計算すればよい。また、ディザ制御処理でディザ振幅値Ddizzを式 Ddizz=D[cnt]・β・(Rsol/Vbatt)
により計算する。
【0162】
また、第3実施形態でソレノイド抵抗をも考慮する場合、まずソレノイド抵抗値Rsol=(Dcent/100)・Vbatt/Idetを計算し、電流値制御処理でデューティ出力中心値Dcentを式 Dcent=Ddef・β・(Rsol/Vbatt) により計算すればよい。また、ディザ制御処理でディザ振幅値Ddizzを式 Ddizz=D[cnt]・β・(Rsol/Vbatt) により計算する。
【0163】
これらの構成によれば、バッテリ電圧とソレノイド抵抗の変動との主な2つの外乱要因に対応でき、電流の過渡域での安定性を確保し、電流のオーバシュートに起因するマスト4の動きだし時のショックを一層低減でき、ソレノイド温度上昇によるソレノイド抵抗値の増加が原因で起こり得る電流の立ち上がり遅れに起因するマスト4の応答性の悪化を防止できる。
【0164】
また、ディザ制御処理のディザ振幅値Ddizzを決定するときにバッテリ電圧検出値Vbattとソレノイド抵抗値Rsolの両方の外乱要因を考慮してディザ振幅値Ddizz(=D[cnt]・β・(Rsol/Vbatt))が決定されるので、ソレノイド温度上昇によるソレノイド抵抗値の増加が原因で起こり得る電磁弁25のスプールの振幅の変動までを防止でき、電磁弁25のスプールを一層確実に必要な振幅で微小振動させることができる。
【0165】
特に、ソレノイド抵抗値はキーオン中に変化する外乱要因なので、ソレノイド抵抗の変動を考慮することで、キーオン中に亘ってマスト4を安定にしかも応答性よく動作させることができる。
【0166】
なお、前記各実施形態に限定されず、例えば次のように実施してもよい。
(n)ディザ振幅値を得るために利用するデータは、外乱要因の影響を反映するデータであればどんなデータでも採用してよい。例えばデューティ出力中心値Dcentを基準状態の仮定の下で電流値に換算した換算値Icentと、目標電流値Iaimとの比(Icent/Iaim)をディザ振幅基準値D[cnt]に乗じて、ディザ振幅値Ddizzを式 Ddizz=D[cnt]・(Icent/Iaim) により計算することもできる。また、第4実施形態において、電流検出値Idetを基準状態の仮定の下でデューティ値に換算した換算値Ddetと、デューティ出力中心値Dcentとの比(Dcent/Ddet)をディザ振幅基準値D[cnt]に乗じて、ディザ振幅値Ddizzを式 Ddizz=D[cnt]・Dcent/Ddet により計算することもできる。
さらに電流指令値を決めるために使用したデータ以外のデータを採用することもでき、例えば第1及び第4実施形態において、バッテリ電圧検出値Vbattやソレノイド抵抗Rsolを計測可能な装置構成とし、ディザ振幅値Ddizzの決定にVbattやRsolのデータを利用するようにしてもよい。
【0167】
(m)第2および第3実施形態において、バッテリ電圧とソレノイド抵抗値以外の外乱要因を測定し、その測定値に応じて電流指令値としてのデューティ出力中心値Dcentを補正するようにしてもよい。
【0168】
(k)第2および第3実施形態において、外乱要因を直接測定するのではなく間接的に測定するようにしてもよい。例えばソレノイド周辺の油温を温度センサ等の検出器を用いて測定し、その検出温度から推定されるソレノイド温度から間接的にソレノイド抵抗値を測定する方法を採用することもできる。
【0169】
(g)電流値制御処理1回に対するディザ制御処理の割込回数は適宜設定することができる。例えばディザ振幅の最大値(Dmax)と最小値(−Dmax)を指令するだけの2回の割込みとしてもよい。また、電流値制御処理1回につきディザ制御を2サイクル以上の波形を指令する処理としてもよい。
【0170】
(f)CPU54による電流値制御方法はPWM制御に限定されない。CPUからの出力信号に基づいてソレノイドに流れる電流を制御できる構成であればよい。
【0171】
(h)検出信号S2のサンプリング回数は1サイクルに偶数回に限定されない。ディザ制御の周期(例えば100Hz)を自然数倍した一定時間当たりに、1サイクル当たりに2回以上サンプリングされるよう合計偶数回のサンプリングを行い、この偶数個のサンプリング値の平均を電流検出値として算出することもできる。例えば2サイクル当たりに6回のサンプリングをし、この6個の値の平均を電流検出値としてもよい。
【0172】
(p)ローパスフィルタ53のカットオフ周波数を100Hzのリプルも取り除けるように設定し、A/Dポート62から一定電圧の電流検出値Idetが入力されるようにしてもよい。ローパスフィルタを通過する際の信号の遅延時間が許容範囲である制御について採用する場合には特に問題はない。この構成では、CPU54によるフィルタ処理を無くし、CPU54の負担を軽減できる。
【0173】
(r)CPU54による電流値制御方法はPWM制御に限定されない。CPUからの出力信号に基づいてソレノイドに流れる電流を制御できる構成であればよい。
【0174】
(q)フィードバック制御は差ΔIに比例する補正量で前回のDcent値を補正する積分型制御に限定されない。目標電流値Iaimを換算した電流指令値を初期に指令し、差ΔIを小さくするように例えば一定量ずつ補正する制御方法を採用することもできる。
【0175】
(u)電磁弁25はパイロット制御方式に限定されず、例えば直動式のものを採用してもよい。
(s)前記各実施形態では、レバー操作で切換えられる手動切換弁と直列に電磁弁を設けた構成に実施したが、このような手動切換弁に代え、荷役レバー操作を検知してコントローラにより切換制御される電磁切換弁を備えたフォークリフト(例えば特開平7−61792号公報等)において、電磁切換弁もしくは他の電磁弁(例えば特開平7−61792号公報における速度調整用の電磁弁)の電流値制御において実施してよい。
【0176】
(t)リフトシリンダの油路に設けた電磁弁の電流値制御において実施してもよい。もちろん、リーチ式フォークリフトにおけるリーチシリンダや、フォークを車幅方向にスライドさせるサイドシリンダ等の他の油圧シリンダの油路に設けた電磁弁の電流値制御において実施してもよい。これらの構成でも同様に、電磁弁の応答性の確保、スプールの振幅の過大に起因する開度への悪影響の防止を期待できる。
【0177】
(v)エンジンフォークリフトに限らず、バッテリフォークリフトにおいて実施してもよい。
(w)フォークリフト以外の産業車両において実施してもよい。例えば、パワーショベルや高所作業車において油圧シリンダの油路に設けた電磁弁の電流値制御において実施することもできる。ここで、本発明における荷役機器とは、土砂や作業者などを扱うためのショベルや作業台をも含む概念と定義する。
【0178】
前記各実施形態及び変更例から把握される請求項に係る発明以外の技術的思想(発明)を、その効果とともに以下に記載する。
(イ)請求項5又は請求項6に係る発明において、前記外乱要因の基準状態とは少なくとも前記ソレノイドに電流を供給する電源の電圧が基準電圧にある状態であり、前記外乱要因測定手段は、前記電源の電圧を前記外乱要因として測定する電源電圧測定手段を備えている。この構成によれば、電源電圧の変動によっても、電流の過渡域と定常域ともに適正なディザ振幅を得られる。
【0179】
(ロ)請求項5又は請求項6に係る発明において、前記外乱要因の基準状態とは少なくとも前記ソレノイドの抵抗が基準抵抗値にある状態であり、前記外乱要因測定手段は、前記ソレノイドの抵抗値を前記外乱要因として測定する抵抗値測定手段を備えている。この構成によれば、ソレノイド抵抗値の変動によらず、電流の過渡域と定常域ともに適正なディザ振幅を得られる。
【0180】
(ハ)請求項3〜請求項5のいずれか一項に係る発明において、前記制御手段は、前記電流検出値と前記目標電流値との差に比例する補正量で前記電流指令値を補正する積分型制御のフィードバック制御を行い、前記補正量を決めるための比例定数は、積分型制御の伝達関数からその制御系の安定性を考慮して決められたゲインである。この構成によれば、安定な電流値制御を実現できる。
【0181】
(ニ)前記(ハ)において、前記制御手段は、測定手段の測定値から得られるデータを用いて前記ゲインを補正する。この構成によれば、電流の過渡特性の安定を図ることができる。
【0182】
(ホ)請求項1〜請求項10のいずれか一項に係る発明において、前記制御手段が前記電流検出手段から入力する検出信号は所定周期で振幅する信号であって、該検出信号の振幅中心を前記電流検出値として算出する検出値算出手段を備えている。この構成によれば、簡単な処理で検出信号の振幅中心値を得ることができる。
【0183】
(ヘ)請求項1〜請求項12のいずれか一項に係る発明において、前記電磁弁は、荷役機器を操作部の操作に独立して駆動するため、前記油圧シリンダの油路上に操作部の操作に応じて切換えられる手動切換弁と直列に設けられてたものである。この構成によれば、荷役機器の安定動作を確保できるうえ、手動切換弁が固着(スティック)しても操作部を操作する力の加減次第で固着を解消でき、弁の固着に起因する不具合の発生を低減できる。なお、前記各実施形態において、ティルトレバー8が操作部を、ティルト用手動切換弁19が手動切換弁をそれぞれ構成する。
【0184】
(ト)請求項1〜請求項12のいずれか一項に係る発明において、前記制御手段は、前記荷役機器の動作を制御するうえで必要な検出値を得るために車両に設けられた検出手段からの検出値に応じて前記補正処理に使用する前記目標電流値を決める。この構成によれば、荷役機器の動作を制御するうえで必要な検出値に応じて目標電流値を決めて荷役機器の駆動制御を行う際に、荷役機器の動作を安定に制御できる。なお、前記各実施形態において、揚高センサ41,ティルト角センサ42,圧力センサ43,前傾スイッチ44,後傾スイッチ45及び操作スイッチ46が検出手段を構成する。
【0185】
(チ)請求項1〜請求項12のいずれか一項に係る発明において、前記制御手段が指令する前記電流指令値は、電源と前記ソレノイドとの間に設けられたスイッチング手段のオン時間を制御するためのPWM信号のデューティ値を決めるためのものである。この構成によれば、デューティ制御による電磁弁の電流値制御を実現できる。
【0186】
(リ)請求項1〜請求項12のいずれか一項に係る発明において、前記油圧シリンダは、前記荷役機器を昇降可能に支持するマストを傾動させるためのものである。この構成によれば、マストの傾動動作の安定化が図られる。
【0187】
【発明の効果】
以上詳述したように請求項1、請求項2及び請求項12に記載の発明によれば、電磁弁のソレノイドに流れる電流を目標電流値とする制御のための電流指令値を決める際に使用した測定手段の測定値を使って得たデータを用いてディザ振幅値を決めるようにしたので、電源電圧やソレノイド抵抗の変動などの電流に影響を与える外乱要因に拘わらず、電流をディザ制御で所望する電流振幅で振幅させることができる。従って、電磁弁のスプールをいつも所望する振幅で微小振動させられるので、スプールの過小な振幅による電磁弁の応答性の低下、スプールの過大な振幅による開度への悪影響などのスプールの振幅のばらつきに起因する不具合を防止できる。その結果、ディザ制御の効果を十分発揮して荷役機器の応答性を良好に維持でき、しかも荷役機器の動作の安定性を維持できる。
【0188】
請求項3及び請求項12に記載の発明によれば、フィードバック制御で使用した測定値を使って得たデータを用いてディザ振幅値を決めるので、フィードバック制御で使用したデータをディザ制御に利用することができる。
【0189】
請求項4及び請求項12に記載の発明によれば、フィードバック制御で使用した電流検出値をディザ制御に利用でき、しかも少なくとも電流が定常域にあるときに常にスプールを所望する振幅で微小振動させることができる。
【0190】
請求項5及び請求項12に記載の発明によれば、フィードバック制御で使用した外乱要因の測定値をディザ制御に利用でき、しかも電流が過渡域と定常域とのいずれにあるときにも常にスプールを所望する振幅で微小振動させることができる。
【0191】
請求項6及び請求項12に記載の発明によれば、フィードフォワード制御で使用した外乱要因のの測定値をディザ制御に利用でき、しかも電流が過渡域と定常域とのいずれにあるときにも常にスプールを所望する振幅で微小振動させることができる。
【0192】
請求項7及び請求項12に記載の発明によれば、ディザ振幅値を決める際、測定手段の測定値を使って得たデータと、外乱要因が基準状態にあるとの仮定の下で決まるそのデータと同じ次元の基準データとの比に応じて、外乱要因が基準状態にあるとの仮定の下で所望の電流振幅が得られるように設定されたディザ振幅基準値を補正するので、簡単な演算でディザ振幅値を決めることができる。
【0193】
請求項8及び請求項12に記載の発明によれば、ディザ振幅値を決める際、外乱要因が基準状態にあるとの仮定の下でフィードバック制御で使用した目標電流値と電流指令値とを同じ次元で比較した比に応じて、外乱要因が基準状態にあるとの仮定の下で所望の電流振幅が得られるように設定されたディザ振幅基準値を補正するので、目標電流値と電流指令値を使った簡単な演算でディザ振幅値を決めることができる。
【0194】
請求項9及び請求項12に記載の発明によれば、積分型制御のフィードバック制御で使用した目標電流値と電流指令値との同じ次元での比に応じてディザ振幅基準値を補正してディザ振幅値を決める構成において、ディザ振幅値が所定範囲内にないときにはディザ振幅値をその範囲の上限値または下限値に制限するので、電流の過渡域にスプールが過大に振幅することを防止できる。
【0195】
請求項10及び請求項12に記載の発明によれば、ディザ振幅値を決める際、外乱要因が基準状態にあるとの仮定の下でフィードバック制御で使用した電流指令値と電流検出値とを同じ次元で比較した比に応じて、外乱要因が基準状態にあるとの仮定の下で所望の電流振幅が得られるように設定されたディザ振幅基準値を補正するので、電流指令値と電流検出値を使った簡単な演算でディザ振幅値を決めることができ、しかも電流が過渡域と定常域とのいずれにあるときにも常にスプールを所望する振幅で微小振動させることができる。
【0196】
請求項11及び請求項12に記載の発明によれば、電流検出手段からの所定周期で振幅する検出信号の周期の自然数倍の一定時間当たりに、その1周期につき2回以上サンプリングするよう合計偶数回のサンプリングを行い、この偶数個のサンプリング値を平均して電流検出値を算出するので、電流検出値をほぼリアルタイムで得ることができ、制御の応答性を損なわない。
【図面の簡単な説明】
【図1】第1実施形態における電流値制御処理のフローチャート。
【図2】ディザ制御処理のフローチャート。
【図3】ディザ振幅基準値を説明するグラフ。
【図4】ソレノイド電流の時間変化を示すグラフ。
【図5】電流値とデューティ値との関係を示すグラフ。
【図6】電磁弁の電流値制御装置の電気回路図。
【図7】ソレノイドの電流検出値を求める方法を説明する信号波形図。
【図8】ティルト制御装置の電気構成ブロック図。
【図9】ティルト角と目標電流値との関係を示すグラフ。
【図10】揚高と積載荷重から最大許容前傾角を求めるためのマップ図。
【図11】フォークリフトの側面図。
【図12】フォークリフトの油圧制御回路図。
【図13】第2実施形態における電流値制御処理のフローチャート。
【図14】ディザ制御処理のフローチャート。
【図15】電磁弁の電流値制御装置の電気回路図。
【図16】第3実施形態における電流値制御処理のフローチャート。
【図17】電磁弁の電流値制御装置の電気回路図。
【図18】第4実施形態における電流検出値とデューティ出力中心値との関係を示すグラフ。
【図19】ディザ制御処理のフローチャート。
【図20】同じくフローチャート。
【図21】従来技術におけるソレノイド電流の時間変化を示すグラフ。
【符号の説明】
1…産業車両としてのフォークリフト、2…荷役機器としてのフォーク、4…マスト、5…油圧シリンダとしてのティルトシリンダ、25…電磁弁、25a…ソレノイド、52…測定手段及び電流検出手段を構成する電流検出回路、53…測定手段及び電流検出手段を構成するローパスフィルタ、54…制御手段及びディザ制御手段を構成するとともに判定手段、振幅値制限手段及び検出値算出手段としてのCPU、55…制御手段及びディザ制御手段を構成するとともに記憶手段としてのROM、58…電源としてのバッテリ、Iaim…目標電流値、Idet…電流検出値、Dcent…電流指令値としてのデューティ出力中心値、Dout…ディザ指令値としてのデューティ出力値、Ddizz…ディザ振幅値、D[cnt]…ディザ振幅基準値、Idizz…電流振幅、Rb…測定手段及び外乱要因測定手段としての抵抗。
Claims (12)
- 荷役機器を駆動する油圧シリンダの油路上に設けられた電磁弁と、
前記電磁弁のソレノイドに流すべき目標電流値を記憶する記憶手段と、
前記ソレノイドに流れる電流を目標電流値とするための制御に使うデータを得るのに必要な測定値を測定するための測定手段と、
前記ソレノイドに流れる電流を制御するための電流指令値を、その電流を目標電流値に近づけ得るように前記測定手段の測定値から得た前記データを使って補正する補正処理をプログラムデータに基づいて実行する制御手段と、
前記電磁弁のスプールを微小振動させるディザ制御のため、前記電流指令値に加える振幅分のディザ振幅値を、所望する電流振幅が得られるように前記測定値を使って得たデータを用いて決めるとともに、該ディザ振幅値を前記電流指令値に加えたディザ指令値を指令するディザ制御手段と
を備えている産業車両における電磁弁のディザ制御装置。 - 前記ディザ制御手段は、前記制御手段が補正処理を1回実行する毎に、前記電流指令値を中心に所定周期で振幅する波形上の値をとるようにその波形の1周期のうちに前記ディザ指令値を割込処理で複数決めて指令する請求項1に記載の産業車両における電磁弁のディザ制御装置。
- 前記電磁弁のソレノイドに流れる電流を検出する電流検出手段が設けられ、前記制御手段が実行する前記補正処理は、前記電流検出手段の検出信号から定まる電流検出値と前記目標電流値との差が許容範囲内に収まるように前記電流指令値を補正するフィードバック制御であり、
前記ディザ制御手段は、該フィードバック制御で使用した前記測定値を使って得たデータを用いて前記ディザ振幅値を決めている請求項1又は請求項2に記載の産業車両における電磁弁のディザ制御装置。 - 前記測定手段は前記電流検出手段であり、前記ディザ制御手段は、前記制御手段がフィードバック制御で使用した前記電流検出値を使って得たデータを用いて前記ディザ振幅値を決めている請求項3に記載の産業車両における電磁弁のディザ制御装置。
- 前記測定手段は前記ソレノイドに流れる電流に影響を与える外乱要因を測定する外乱要因測定手段であり、前記ディザ制御手段は、前記制御手段がフィードバック制御で使用した前記外乱要因の測定値を使って得たデータを用いて前記ディザ振幅値を決めている請求項3に記載の産業車両における電磁弁のディザ制御装置。
- 前記測定手段は前記ソレノイドに流れる電流に影響を与える外乱要因を測定する外乱要因測定手段であり、前記制御手段が実行する前記補正処理は、外乱要因測定手段の測定値を用いて外乱要因を考慮して目標電流値から決めた電流指令値を指令するフィードフォワード制御であり、
前記ディザ制御手段は、前記外乱要因測定手段の測定値を使って得たデータを用いて前記ディザ振幅値を決めている請求項1又は請求項2に記載の産業車両における電磁弁のディザ制御装置。 - 前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記ディザ振幅値を決めるために前記測定値を使って得たデータと、前記外乱要因が基準状態にあるとの仮定の下で決まるそのデータと同じ次元の基準データとの比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めている請求項1〜請求項6のいずれか一項に記載の産業車両における電磁弁のディザ制御装置。
- 前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記目標電流値と前記電流指令値とを前記外乱要因が基準状態にあるとの仮定の下で同じ次元で比較した比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めている請求項3〜請求項5のいずれか一項に記載の産業車両における電磁弁のディザ制御装置。
- 前記制御手段は積分型制御のフィードバック制御を行い、前記ディザ制御手段は、前記ディザ振幅基準値を補正して得られた前記ディザ振幅値が所定範囲内にあるか否かを判定するための判定手段と、該判定手段により該ディザ振幅値が所定範囲内にないと判定された際には、ディザ振幅値を所定範囲の上限値または下限値に制限する振幅値制限手段とを備えている請求項8に記載の産業車両における電磁弁のディザ制御装置。
- 前記ディザ制御手段は、前記ソレノイドに流れる電流に影響を与える外乱要因が基準状態にあるとの仮定の下で前記所望する電流振幅が得られるように予めディザ振幅基準値が設定されており、前記電流指令値と前記電流検出値とを前記外乱要因が基準状態にあるとの仮定の下で同じ次元で比較した比に応じて前記ディザ振幅基準値を補正して前記ディザ振幅値を決めている請求項3〜請求項5のいずれか一項に記載の産業車両における電磁弁のディザ制御装置。
- 前記制御手段が前記電流検出手段から入力する検出信号は所定周期で振幅する信号であって、前記制御手段は該検出信号に対して所定周期の自然数倍の一定時間当たりに、1周期につき2回以上サンプリングされるよう合計偶数回のサンプリングを行い、この偶数個のサンプリング値を平均して前記電流検出値を算出する検出値算出手段を備えている請求項1〜請求項10のいずれか一項に記載の産業車両における電磁弁のディザ制御装置。
- 請求項1〜請求項11のいずれか一項に記載の前記電磁弁のディザ制御装置を備えている産業車両。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34529397A JP3879212B2 (ja) | 1997-12-15 | 1997-12-15 | 産業車両における電磁弁のディザ制御装置及び産業車両 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34529397A JP3879212B2 (ja) | 1997-12-15 | 1997-12-15 | 産業車両における電磁弁のディザ制御装置及び産業車両 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11171497A JPH11171497A (ja) | 1999-06-29 |
JP3879212B2 true JP3879212B2 (ja) | 2007-02-07 |
Family
ID=18375617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34529397A Expired - Fee Related JP3879212B2 (ja) | 1997-12-15 | 1997-12-15 | 産業車両における電磁弁のディザ制御装置及び産業車両 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3879212B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3363766A1 (de) * | 2017-02-15 | 2018-08-22 | Jungheinrich Aktiengesellschaft | Flurförderzeug mit einem hubgerüst |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7928670B2 (en) * | 2008-06-30 | 2011-04-19 | Iwatt Inc. | LED driver with multiple feedback loops |
WO2013176003A1 (ja) * | 2012-05-23 | 2013-11-28 | 株式会社 島津製作所 | 荷役制御装置 |
CN112879368B (zh) * | 2021-01-08 | 2023-03-14 | 长沙九方湾流智能科技有限公司 | 一种电液驱动方法、驱动装置及工程车辆 |
-
1997
- 1997-12-15 JP JP34529397A patent/JP3879212B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3363766A1 (de) * | 2017-02-15 | 2018-08-22 | Jungheinrich Aktiengesellschaft | Flurförderzeug mit einem hubgerüst |
Also Published As
Publication number | Publication date |
---|---|
JPH11171497A (ja) | 1999-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1757810B1 (en) | Method for correcting tilt control signal, tilt controller and construction machine | |
US6308516B1 (en) | Control device for hydraulically-operated equipment | |
JPH11171492A (ja) | 産業車両におけるデータ設定装置及び産業車両 | |
JP2008215611A (ja) | 閉ループパルス幅変調弁伝達制御システムのモード選択およびスイッチングロジック | |
JP3879212B2 (ja) | 産業車両における電磁弁のディザ制御装置及び産業車両 | |
EP0260138A2 (en) | Servo control system | |
JP2013040487A (ja) | 作業機械 | |
KR20020001516A (ko) | 유압굴삭차량의 유압제어장치 | |
JPH10252521A (ja) | 建設機械のエンジン及び油圧ポンプ制御装置 | |
JPH11171499A (ja) | 産業車両の油圧回路における電磁弁制御装置 | |
JP3074896B2 (ja) | フォークリフトにおけるティルトシリンダの油圧制御装置 | |
JPH10198431A (ja) | 比例電磁弁の制御方法及び装置 | |
JPH11171495A (ja) | 産業車両の油圧回路における電磁弁制御装置 | |
JPH11171498A (ja) | 産業車両の油圧回路における電磁弁制御装置 | |
JP2011147201A (ja) | 電動機制御装置 | |
JPH11171496A (ja) | 産業車両の油圧回路における電磁弁制御装置 | |
JP2005021139A (ja) | 農用作業車 | |
JP4922963B2 (ja) | 油圧作業機のポンプ傾転制御装置 | |
JP2007177635A (ja) | 傾転制御信号の補正方法、傾転制御装置、建設機械および傾転制御信号補正用プログラム | |
JP3356250B2 (ja) | 建設機械のハンチング防止回路 | |
JP2020133726A (ja) | 作業機械の油圧制御回路 | |
JP3173447B2 (ja) | 産業車両における油圧回路の電磁弁制御装置 | |
JP3156629B2 (ja) | 産業車両のマストの後傾速度制御用電流値の設定方法及び制御装置 | |
JP3565871B2 (ja) | 油圧ポンプ駆動用エンジンの制御方法 | |
US20240110364A1 (en) | Hydraulic work machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061030 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121117 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121117 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131117 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |