以下、本発明の実施形態について図面を参照して詳細に説明する。なお、図面において、同一または同等の要素には同じ符号を付し、重複する説明を省略する。
図1は、本発明の一実施形態に係る走行支援装置を備えた産業車両であるフォークリフトを示す側面図である。図1において、本実施形態に係るフォークリフト1は、バッテリ式のフォークリフトである。フォークリフト1は、走行装置2と、この走行装置2の前側に配置され、荷物Wの揚げ降ろしを行う荷役装置3とを具備している。
走行装置2は、車体4と、この車体4の前部に配置された左右2つの駆動輪である前輪5と、車体4の後部に配置された左右2つの操舵輪である後輪6と、左右の前輪5をそれぞれ独立して回転駆動させる2つの走行モータ7(図2参照)と、後述する油圧駆動ユニット8(図2参照)の油圧ポンプ(図示せず)を回転駆動させる荷役モータ9と、走行モータ7及び荷役モータ9に電力を供給するバッテリ10とを有している。前輪5及び後輪6は、フォークリフト1の車輪である。走行モータ7は、前輪5の駆動源である。
荷役装置3は、車体4の前端部に立設されたマスト11と、このマスト11にリフトブラケット12を介して取り付けられ、荷物Wを保持する昇降可能な左右1対のフォーク13と、このフォーク13を昇降させるリフトシリンダ14と、マスト11を介してフォーク13を傾動させるティルトシリンダ15とを有している。リフトシリンダ14及びティルトシリンダ15は、油圧駆動ユニット8(図2参照)により駆動される。
図2は、本発明の一実施形態の走行支援装置の構成を概略的に示すブロック図である。図2において、本実施形態の走行支援装置20は、フォークリフト1に搭載されている。走行支援装置20は、運転者の手動運転によりフォークリフト1を走行させる際の走行支援を行う。
走行支援装置20は、圧力センサ21と、揚高センサ22と、ティルト角センサ23と、傾斜角センサ24と、加速度センサ25と、角速度センサ26と、進行方向センサ27と、電子制御ユニット30(ECU:Electronic Control Unit)と、警告器28と、表示器29と、上記の走行モータ7と、上記の油圧駆動ユニット8とを備えている。
圧力センサ21は、リフトシリンダ14の圧力を検出するセンサである。揚高センサ22は、フォーク13の高さ位置を検出するセンサである。ティルト角センサ23は、マスト11の傾動角(ティルト角)を検出するセンサである。傾斜角センサ24は、フォークリフト1の傾斜角を検出するセンサである。加速度センサ25は、フォークリフト1の加速度を検出するセンサである。角速度センサ26は、フォークリフト1の角速度を検出するセンサである。進行方向センサ27は、フォークリフト1の進行方向を検出するセンサである。
電子制御ユニット30は、CPU、RAM、ROM及び入出力インターフェース等から構成されている。電子制御ユニット30は、圧力センサ21、揚高センサ22、ティルト角センサ23、傾斜角センサ24、加速度センサ25、角速度センサ26及び進行方向センサ27の検出値を入力し、所定の処理を実行し、警告器28、表示器29、走行モータ7及び油圧駆動ユニット8を制御する。
警告器28は、走行支援に関する警告音を発生させる。表示器29は、走行支援に関する画面表示及び警告表示等を行う。なお、警告器28及び表示器29は、1つの機器から構成されていてもよい。
油圧駆動ユニット8は、特に図示はしないが、リフトシリンダ14及びティルトシリンダ15に作動油を供給する油圧ポンプと、この油圧ポンプとリフトシリンダ14との間に配置されたリフトバルブと、油圧ポンプとティルトシリンダ15との間に配置されたティルトバルブとを有している。
電子制御ユニット30は、重心検知部31と、勾配検知部32と、角度算出部33と、坂路進入判定部34と、警告処理部35と、車速制限処理部36と、接地荷重推定部37と、不安定状態回避処理部38とを有している。
重心検知部31は、圧力センサ21、揚高センサ22及びティルト角センサ23の検出値とフォークリフト1の各構成部品の寸法及び重量等に関するデータとに基づいて、フォークリフト1の重心を検知する。このとき、重心検知部31は、フォークリフト1の前後方向、左右方向及び上下方向の重心位置を検知する。なお、重心検知部31は、圧力センサ21、揚高センサ22及びティルト角センサ23以外のセンサを用いてフォークリフト1の重心を検知してもよい。
勾配検知部32は、傾斜角センサ24の検出値に基づいて、フォークリフト1が走行している走行路40(図4参照)の勾配を検知する。走行路40の勾配は、水平面に対する走行路40の傾きの度合いである。なお、勾配検知部32は、加速度センサ25及び角速度センサ26の検出値に基づいて走行路40の勾配を検知してもよいし、傾斜角センサ24、加速度センサ25及び角速度センサ以外のセンサを用いて、走行路40の勾配を検知してもよい。
角度算出部33は、勾配検知部32により検知された走行路40の勾配に基づいて、フォークリフト1のロール角及びピッチ角を算出する。フォークリフト1のロール角は、図3(a)に示されるように、フォークリフト1の左右方向の回転角度である。つまり、フォークリフト1のロール角は、フォークリフト1の前後方向に平行な軸(X軸)回りの回転角度である。フォークリフト1のピッチ角は、図3(b)に示されるように、フォークリフト1の前後方向の回転角度である。つまり、フォークリフト1のピッチ角は、フォークリフト1の左右方向に平行な軸(Y軸)回りの回転角度である。
坂路進入判定部34は、角度算出部33により算出されたフォークリフト1のロール角及びピッチ角に基づいて、フォークリフト1が坂路41(図4参照)に進入したかどうかを判定する。
フォークリフト1が坂路41に進入するパターンとしては、フォークリフト1が上側平坦路42から坂路41に前進で進入するパターンと、フォークリフト1が上側平坦路42から坂路41に後進で進入するパターンと、フォークリフト1が下側平坦路43から坂路41に前進で進入するパターンと、フォークリフト1が下側平坦路43から坂路41に後進で進入するパターンとがある。
図5は、坂路進入判定部34により実行される坂路進入判定処理の手順の詳細を示すフローチャートである。図5において、坂路進入判定部34は、まず角度算出部33により算出されたフォークリフト1のロール角及びピッチ角のデータを取得する(手順S101)。
そして、坂路進入判定部34は、ロール角またはピッチ角の変化量が予め決められた閾値以上であるかどうかを判断する(手順S102)。坂路進入判定部34は、ロール角またはピッチ角の変化量が閾値以上であると判断したときは、フォークリフト1が坂路41に進入したと判定する(手順S103)。坂路進入判定部34は、ロール角及びピッチ角の変化量が何れも閾値以上でないと判断したときは、フォークリフト1が坂路41に進入していないと判定する(手順S104)。
図2に戻り、警告処理部35は、坂路進入判定部34によりフォークリフト1が坂路41に進入したと判定されたときに、フォークリフト1が坂路41に進入した旨の警告を行うように警告器28及び表示器29を制御する。これにより、フォークリフト1の運転者は、警告器28及び表示器29によってフォークリフト1が坂路41に進入したことを知ることができる。
このとき、警告処理部35は、警告音を発生させるように警告器28を制御すると共に、警告表示とロール角及びピッチ角の画面表示とを行うように表示器29を制御する。警告処理部35は、警告器28及び表示器29と協働して警告部を構成する。
車速制限処理部36は、警告処理部35によりフォークリフト1が坂路41に進入した旨の警告を行った後に、フォークリフト1の車速を制限する処理を実行する。車速制限処理部36は、運転者にフォークリフト1の車速を制限するための案内表示を音声案内と共に行うように表示器29を制御する。これにより、運転者は、表示器29の画面表示を見てアクセル操作を中止し、ブレーキ操作を行うようになる。
接地荷重推定部37は、重心検知部31により検知されたフォークリフト1の重心、勾配検知部32により検知された走行路40の勾配、加速度センサ25及び角速度センサ26の検出値に基づいて、左右の前輪5及び左右の後輪6の接地荷重を推定する。
不安定状態回避処理部38は、車速制限処理部36によりフォークリフト1の車速を制限する処理を実行した後、勾配検知部32によりフォークリフト1に対してロール方向に勾配があるかどうかを判断し、ロール方向の勾配の有無に応じてフォークリフト1の走行が不安定になる状態を回避する処理を実行する。このとき、不安定状態回避処理部38は、フォークリフト1の走行が不安定になる状態を回避するための案内表示を音声案内と共に行うように表示器29を制御する。フォークリフト1の走行が不安定になる状態は、フォークリフト1の転倒につながる可能性が生じる状態である。
図6は、不安定状態回避処理部38により実行される不安定状態回避処理の手順を示すフローチャートである。図6において、不安定状態回避処理部38は、まず角度算出部33により算出されたフォークリフト1のロール角及びピッチ角のデータを取得する(手順S111)。
そして、不安定状態回避処理部38は、フォークリフト1のロール角に基づいて、フォークリフト1に対してロール方向に勾配がないかどうかを判断する(手順S112)。なお、フォークリフト1に対してロール方向に勾配がない状態は、フォークリフト1のロール角が0度に近い所定値以下である状態である。
不安定状態回避処理部38は、フォークリフト1に対してロール方向に勾配がないと判断したときは、フォークリフト1に対してピッチ方向にのみ勾配があるということで、ロール勾配無し用の不安定状態回避処理を実行する(手順S113)。
不安定状態回避処理部38は、フォークリフト1に対してロール方向に勾配があると判断したときは、フォークリフト1に対してロール方向及びピッチ方向に勾配があるということで、ロール勾配有り用の不安定状態回避処理を実行する(手順S114)。
図7は、ロール勾配無し用の不安定状態回避処理の手順の詳細を示すフローチャートである。以下、図7を用いて、ロール勾配無し用の不安定状態回避処理の手順を説明しつつ、フォークリフト1に対してロール方向に勾配がないときの不安定状態の回避動作について説明する。
図7において、不安定状態回避処理部38は、まず加速度センサ25及び進行方向センサ27の検出値に基づいて、フォークリフト1が前進で坂路41を下っている状態またはフォークリフト1が後進で坂路41を上っている状態であるかどうかを判断する(手順S121)。
フォークリフト1が前進で坂路41を下っている状態と、フォークリフト1が後進で坂路41を上っている状態とでは、図8に示されるように、フォーク13の位置が高くなるほどフォークリフト1の前後方向の重心Gが前側に位置する。このとき、フォークリフト1の前後方向の重心Gが前輪5よりも前側に位置すると、フォークリフト1がふらつきやすくなり、フォークリフト1の走行が不安定になることがある。また、その状態でフォーク13が前傾していると、フォークリフト1が更にふらつきやすくなる。
そこで、不安定状態回避処理部38は、フォークリフト1が前進で坂路を下っている状態またはフォークリフト1が後進で坂路を上っている状態であると判断したときは、フォークリフト1を一旦停止させるための操作指示を行う(手順S122)。具体的には、不安定状態回避処理部38は、例えば運転者にブレーキを操作させるための画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、ブレーキを踏むようになる。これにより、フォークリフト1が停止する。
そして、不安定状態回避処理部38は、フォーク13を下降させると共にフォーク13を後傾させるための操作指示を行う(手順S123)。具体的には、不安定状態回避処理部38は、例えば運転者にリフト操作レバー(図示せず)を下降操作させると共にティルト操作レバー(図示せず)を後傾操作させるための画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、リフト操作レバーの下降操作を行うと共にティルト操作レバーの後傾操作を行うようになる。これにより、リフトシリンダ14によりフォーク13が最下位置に達すると共に、ティルトシリンダ15によりフォーク13が後傾位置に達する。
そして、不安定状態回避処理部38は、フォークリフト1の走行を再開させるための操作指示を行う(手順S124)。具体的には、不安定状態回避処理部38は、例えば運転者にアクセルを操作させるための画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、アクセルを踏むようになる。これにより、フォークリフト1が前進で坂路41に進入した場合は、フォークリフト1が再び前進して坂路41を下る。フォークリフト1が後進で坂路41に進入した場合は、フォークリフト1が再び後進して坂路41を上る。
不安定状態回避処理部38は、手順S121でフォークリフト1が前進で坂路41を下っている状態でもないし、フォークリフト1が後進で坂路41を上っている状態でもないと判断したときは、上記の手順S122~S124を実行しない。これにより、フォークリフト1が前進で坂路41を上っている状態またはフォークリフト1が後進で坂路41を下っている状態では、フォーク13を下降させると共にフォーク13を後傾させるための操作指示が実施されることなく、フォークリフト1がそのまま坂路41を走行する。
図9は、ロール勾配有り用の不安定状態回避処理の手順の詳細を示すフローチャートである。以下、図9を用いて、ロール勾配有り用の不安定状態回避処理の手順を説明しつつ、フォークリフト1に対してロール方向に勾配があるときの不安定状態の回避動作について説明する。
図9において、不安定状態回避処理部38は、まず加速度センサ25及び進行方向センサ27の検出値に基づいて、フォークリフト1が前進で坂路41を下っている状態またはフォークリフト1が後進で坂路41を上っている状態であるかどうかを判断する(手順S131)。
不安定状態回避処理部38は、フォークリフト1が前進で坂路41を下っている状態またはフォークリフト1が後進で坂路41を上っている状態であると判断したときは、上記の手順S122と同様に、フォークリフト1を一旦停止させるための操作指示を行う(手順S132)。これにより、運転者がブレーキを踏むことで、フォークリフト1が停止する。
そして、不安定状態回避処理部38は、上記の手順S123と同様に、フォーク13を下降させると共にフォーク13を後傾させるための操作指示を行う(手順S133)。これにより、運転者がリフト操作レバー及びティルト操作レバーを操作することで、フォーク13が最下位置及び後傾位置に達する。
続いて、不安定状態回避処理部38は、フォークリフト1が旋回する際の車速及び操舵角の制限値(最大値)を設定する(手順S134)。車速の制限値は、例えば極低速である。操舵角の制限値は、例えば急旋回とならないような角度である。
続いて、不安定状態回避処理部38は、車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するための操舵指示を行う(手順S135)。具体的には、不安定状態回避処理部38は、例えば旋回方向、進行方向及び操舵角等の画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、ステアリング操作を行う。これにより、フォークリフト1は、微速で走行しながら旋回する。
ここで、図10に示されるように、フォークリフト1が上側平坦路42から坂路41に前進で進入して坂路41を下る場合には、フォークリフト1が前進したまま旋回すると、フォークリフト1が後進しながら旋回する場合に比べてフォークリフト1がふらつきやすくなる。
具体的には、図10(a)に示されるように、右の前輪5が左の前輪5よりも下がっている状態で、フォークリフト1が前進したまま右旋回すると、フォークリフト1が後進しながら旋回する場合に比べてフォークリフト1がふらつきやすい。図10(b)に示されるように、左の前輪5が右の前輪5よりも下がっている状態で、フォークリフト1が前進したまま左旋回すると、フォークリフト1が後進しながら旋回する場合に比べてフォークリフト1がふらつきやすい。
そこで、不安定状態回避処理部38は、図10(a)に示されるように、右の前輪5が左の前輪5よりも下がっている状態では、フォークリフト1が後進しながら左旋回するための操舵指示を行う(図14のNo1参照)。不安定状態回避処理部38は、図10(b)に示されるように、左の前輪5が右の前輪5よりも下がっている状態では、フォークリフト1が後進しながら右旋回するための操舵指示を行う(図14のNo2参照)。
また、図11に示されるように、フォークリフト1が下側平坦路43から坂路41に後進で進入して坂路41を上る場合には、フォークリフト1が後進したまま旋回すると、フォークリフト1が前進しながら旋回する場合に比べてフォークリフト1がふらつきやすくなる。
具体的には、図11(a)に示されるように、右の後輪6が左の後輪6よりも下がっている状態で、フォークリフト1が後進したまま左旋回すると、フォークリフト1が前進しながら旋回する場合に比べてフォークリフト1がふらつきやすい。図11(b)に示されるように、左の後輪6が右の後輪6よりも下がっている状態で、フォークリフト1が後進したまま右旋回すると、フォークリフト1が前進しながら旋回する場合に比べてフォークリフト1がふらつきやすい。
そこで、不安定状態回避処理部38は、図11(a)に示されるように、右の後輪6が左の後輪6よりも下がっている状態では、フォークリフト1が前進しながら右旋回するための操舵指示を行う(図14のNo3参照)。不安定状態回避処理部38は、図11(b)に示されるように、左の後輪6が右の後輪6よりも下がっている状態では、フォークリフト1が前進しながら左旋回するための操舵指示を行う(図14のNo4参照)。
図9に戻り、不安定状態回避処理部38は、手順S135を実行した後、フォークリフト1のロール角がほぼ0度であるかどうかを判断する(手順S136)。不安定状態回避処理部38は、フォークリフト1のロール角がほぼ0度になるまで、手順S135を継続して実行する。なお、ロール角がほぼ0度である状態は、ロール角が0度に近い所定値以下の状態であり、ロール角が完全に0度である状態も含んでいる。
不安定状態回避処理部38は、フォークリフト1のロール角がほぼ0度であると判断したときは、フォークリフト1の操舵角が0度である旨の報知を行う(手順S137)。具体的には、不安定状態回避処理部38は、フォークリフト1の操舵角が0度である旨の画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、ステアリングを戻すように操作する。
そして、不安定状態回避処理部38は、フォークリフト1を直進走行させるための操作指示を行う(手順S138)。具体的には、不安定状態回避処理部38は、例えば運転者にアクセルを操作させるための画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、アクセルを踏むようになる。これにより、フォークリフト1が前進で坂路41に進入した場合は、フォークリフト1が再び前進して坂路41を下る。フォークリフト1が後進で坂路41に進入した場合は、フォークリフト1が再び後進して坂路41を上る。
不安定状態回避処理部38は、手順S131でフォークリフト1が前進で坂路41を下っている状態でもないし、フォークリフト1が後進で坂路41を上っている状態でもないと判断したときは、接地荷重推定部37により推定された左右の前輪5及び左右の後輪6の接地荷重のデータを取得する(手順S139)。
そして、不安定状態回避処理部38は、左右の前輪5及び左右の後輪6の何れかの接地荷重が予め決められた規定値以下であるかどうかを判断する(手順S140)。不安定状態回避処理部38は、左右の前輪5及び左右の後輪6の何れかの接地荷重が規定値以下であると判断したときは、上記の手順S132と同様に、フォークリフト1を一旦停止させるための操作指示を行う(手順S141)。これにより、運転者がブレーキを踏むことで、フォークリフト1が停止する。
そして、不安定状態回避処理部38は、上記の手順S133と同様に、フォーク13を下降させると共にフォーク13を後傾させるための操作指示を行う(手順S142)。これにより、運転者がリフト操作レバー及びティルト操作レバーを操作することで、フォーク13が最下位置及び後傾位置に達する。
続いて、不安定状態回避処理部38は、上記の手順S134と同様に、フォークリフト1が旋回する際の車速及び操舵角の制限値(最大値)を設定する(手順S143)。
続いて、不安定状態回避処理部38は、車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するための操舵指示を行う(手順S144)。具体的には、不安定状態回避処理部38は、例えば旋回方向、進行方向及び操舵角等の画面表示を行うように表示器29を制御する。すると、運転者は、表示器29の画面表示を見て、ステアリング操作を行う。これにより、フォークリフト1は、微速で走行しながら旋回する。
ここで、図12に示されるように、フォークリフト1が下側平坦路43から坂路41に前進で進入して坂路41を上る場合には、フォーク13が下降及び後傾していれば、フォークリフト1が前進したまま旋回しても、フォークリフト1のふらつきが発生しにくい。
そこで、不安定状態回避処理部38は、図12(a)に示されるように、左の前輪5が右の前輪5よりも下がっている状態では、フォークリフト1が前進しながら右旋回するための操舵指示を行う(図14のNo5参照)。不安定状態回避処理部38は、図12(b)に示されるように、右の前輪5が左の前輪5よりも下がっている状態では、フォークリフト1が前進しながら左旋回するための操舵指示を行う(図14のNo6参照)。
また、図13に示されるように、フォークリフト1が上側平坦路42から坂路41に後進で進入して坂路41を下る場合には、フォーク13が下降及び後傾していれば、フォークリフト1が後進したまま旋回しても、フォークリフト1のふらつきが発生しにくい。
そこで、不安定状態回避処理部38は、図13(a)に示されるように、左の後輪6が右の後輪6よりも下がっている状態では、フォークリフト1が後進しながら左旋回するための操舵指示を行う(図14のNo7参照)。不安定状態回避処理部38は、図13(b)に示されるように、右の後輪6が左の後輪6よりも下がっている状態では、フォークリフト1が後進しながら右旋回するための操舵指示を行う(図14のNo8参照)。
図9に戻り、不安定状態回避処理部38は、手順S144を実行した後、フォークリフト1のロール角がほぼ0度であるかどうかを判断する(手順S145)。不安定状態回避処理部38は、フォークリフト1のロール角がほぼ0度になるまで、手順S144を継続して実行する。
不安定状態回避処理部38は、フォークリフト1のロール角がほぼ0度であると判断したときは、上記の手順S137と同様に、フォークリフト1の操舵角が0度である旨の報知を行う(手順S146)。すると、運転者は、表示器29の画面表示を見て、ステアリングを戻すように操作する。
そして、不安定状態回避処理部38は、上記の手順S138と同様に、フォークリフト1を直進走行させるための操作指示を行う(手順S147)。すると、運転者は、表示器29の画面表示を見て、アクセルを踏むようになる。これにより、フォークリフト1が前進で坂路41に進入したときは、フォークリフト1が再び前進して坂路41を上る。フォークリフト1が後進で坂路41に進入したときは、フォークリフト1が再び後進して坂路41を下る。
不安定状態回避処理部38は、手順S140で左右の前輪5及び左右の後輪6の接地荷重が全て規定値よりも高いと判断したときは、上記の手順S141,S142を実行せずに、上記の手順S143~S147を実行する。これにより、フォークリフト1が前進で坂路41に進入したときは、フォークリフト1が一旦停止することなく坂路41を上る。フォークリフト1が後進で坂路41に進入したときは、フォークリフト1が一旦停止することなく坂路41を下る。
以上のように本実施形態にあっては、フォークリフト1が走行している走行路40の勾配が検知され、走行路40の勾配に基づいてフォークリフト1のロール角及びピッチ角が算出される。そして、フォークリフト1のロール角及びピッチ角に基づいて、フォークリフト1が坂路41に進入したかどうかが判定される。そして、フォークリフト1が坂路41に進入したと判定されると、フォークリフト1の車速を制限する処理が実行される。このため、フォークリフト1が坂路41に進入したときには、フォークリフト1の車速が制限される。これにより、坂路41でのフォークリフト1の走行が安定化する。
また、本実施形態では、フォークリフト1が坂路41に進入すると、その旨の警告が行われるため、フォークリフト1の運転者に注意喚起が促される。従って、運転者の運転操作によって、フォークリフト1の車速を制限する処理が効果的に実行される。
また、本実施形態では、フォークリフト1のロール角またはピッチ角の変化量が閾値以上であるときに、フォークリフト1が坂路41に進入したと判定される。このようにロール角またはピッチ角の変化量を閾値と比較するという単純な処理によって、フォークリフト1が坂路41に進入したかどうかの判定が容易に行われる。
また、本実施形態では、フォークリフト1に対してロール方向に勾配があるかどうかが判断され、ロール方向の勾配の有無に応じて、フォークリフト1の走行が不安定になる状態を回避する処理が実行される。従って、フォークリフト1に対するロール方向の勾配の有無に関わらず、坂路41でのフォークリフト1の走行が安定化する。
また、本実施形態では、フォークリフト1に対してロール方向に勾配がないときに、フォークリフト1が前進で坂路41を下る場合またはフォークリフト1が後進で坂路41を上る場合には、フォークリフト1の走行が停止した状態で、フォーク13が下降する。従って、フォークリフト1の安定性が高くなるため、坂路41でのフォークリフト1の走行が更に安定化する。
また、本実施形態では、フォークリフト1に対してロール方向に勾配がないときに、フォークリフト1が前進で坂路41を下る場合またはフォークリフト1が後進で坂路41を上る場合には、フォークリフト1の走行が停止した状態で、フォーク13が下降すると共に後傾する。従って、フォークリフト1の安定性が更に高くなるため、坂路41でのフォークリフト1の走行が一層安定化する。
また、本実施形態では、フォークリフト1に対してロール方向に勾配があるときは、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するように操舵を行う処理が実行される。このため、フォークリフト1のロール角がゼロになったときに、フォークリフト1が坂路41を真っ直ぐに走行することで、フォークリフト1の安定性が確保された状態で、フォークリフト1が坂路41を脱出するようになる。従って、坂路41でのフォークリフト1の走行が更に安定化する。
また、本実施形態では、フォークリフト1に対してロール方向に勾配があるときに、フォークリフト1が前進で坂路41を下る場合またはフォークリフト1が後進で坂路41を上る場合には、フォークリフト1の走行が停止した状態で、フォーク13が下降する。従って、フォークリフト1の安定性が高くなるため、坂路41でのフォークリフト1の走行が一層安定化する。
また、本実施形態では、フォークリフト1に対してロール方向に勾配がある際、フォークリフト1が前進で坂路41を上る場合またはフォークリフト1が後進で坂路41を下る場合に、左右の前輪5及び左右の後輪6の何れかの接地荷重が低いときは、フォークリフト1の走行が停止した状態で、フォーク13が下降するため、フォークリフト1の安定性が高くなる。一方、左右の前輪5及び左右の後輪6の全ての接地荷重が高いときは、フォーク13の下降動作が行われないため、直ちにフォークリフト1の旋回動作に移行することとなる。
また、本実施形態では、フォークリフト1が前進で坂路41を上る場合またはフォークリフト1が後進で坂路41を下る場合に、左右の前輪5及び左右の後輪6の何れかの接地荷重が低いときは、フォークリフト1が停止した状態で、フォーク13が下降すると共に後傾する。従って、フォークリフト1の安定性が更に高くなるため、坂路41でのフォークリフト1の走行が一層安定化する。
また、本実施形態では、左右の前輪5及び左右の後輪6の接地荷重の推定にフォークリフト1の重心が用いられるので、左右の前輪5及び左右の後輪6の接地荷重が高精度に推定される。
図15は、本発明の他の実施形態の走行支援装置の構成を概略的に示すブロック図である。図15において、本実施形態の走行支援装置20Aは、自動運転によりフォークリフト1を走行させる際の走行支援を行う。走行支援装置20Aは、上記の実施形態における走行支援装置20の構成に加え、操舵モータ50を備えている。操舵モータ50は、図16に示されるように、左右の後輪6を転舵させるモータである。
走行支援装置20Aの電子制御ユニット30は、上記の実施形態における不安定状態回避処理部38に代えて、不安定状態回避処理部38Aを有している。不安定状態回避処理部38Aは、走行モータ7、油圧駆動ユニット8及び操舵モータ50を制御することにより、フォークリフト1の走行が不安定になる状態を回避する処理を実行する。
図17は、不安定状態回避処理部38Aにより実行されるロール勾配無し用の不安定状態回避処理の手順の詳細を示すフローチャートであり、図7に対応している。以下、図17を用いて、ロール勾配無し用の不安定状態回避処理の手順を説明しつつ、フォークリフト1に対してロール方向に勾配がないときの不安定状態の回避動作について説明する。
図17において、不安定状態回避処理部38Aは、手順S121でフォークリフト1が前進で坂路41を下っている状態またはフォークリフト1が後進で坂路41を上っている状態であると判断したときは、フォークリフト1を一旦停止させるように走行モータ7を制御する(手順S122A)。これにより、フォークリフト1が自動的に停止する。
そして、不安定状態回避処理部38Aは、フォーク13を下降させるように油圧駆動ユニット8のリフトバルブ(図示せず)を制御すると共に、フォーク13を後傾させるように油圧駆動ユニット8のティルトバルブ(図示せず)を制御する(手順S123A)。これにより、リフトシリンダ14及びティルトシリンダ15が自動的に駆動され、フォーク13が最下位置及び後傾位置に達する。
そして、不安定状態回避処理部38Aは、フォークリフト1の走行を再開させるように走行モータ7を制御する(手順S124A)。これにより、フォークリフト1が前進で坂路41に進入したときは、フォークリフト1が自動的に再び前進して坂路41を下る。フォークリフト1が後進で坂路41に進入したときは、フォークリフト1が自動的に再び後進して坂路41を上る。
不安定状態回避処理部38Aは、手順S121でフォークリフト1が前進で坂路41を下っている状態でもないし、フォークリフト1が後進で坂路41を上っている状態でもないと判断したときは、上記の手順S122A~S124Aを実行しない。
図18は、不安定状態回避処理部38Aにより実行されるロール勾配有り用の不安定状態回避処理の詳細を示すフローチャートであり、図9に対応している。以下、図18を用いて、ロール勾配有り用の不安定状態回避処理の手順を説明しつつ、フォークリフト1に対してロール方向に勾配があるときの不安定状態の回避動作について説明する。
図18において、不安定状態回避処理部38Aは、手順S131でフォークリフト1が前進で坂路41を下っている状態またはフォークリフト1が後進で坂路41を上っている状態であると判断したときは、上記の手順S122Aと同様に、フォークリフト1を一旦停止させるように走行モータ7を制御する(手順S132A)。これにより、フォークリフト1が自動的に停止する。
そして、不安定状態回避処理部38Aは、上記の手順S123Aと同様に、フォーク13を下降させるように油圧駆動ユニット8のリフトバルブを制御すると共に、フォーク13を後傾させるように油圧駆動ユニット8のティルトバルブを制御する(手順S133A)。これにより、フォーク13が自動的に最下位置及び後傾位置に達する。
その後、不安定状態回避処理部38Aは、手順S134で設定された車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するように走行モータ7及び操舵モータ50を制御する(手順S135A)。
不安定状態回避処理部38Aは、図10(a)に示されるように、フォークリフト1が前進で坂路41を下る際に、右の前輪5が左の前輪5よりも下がっている状態では、フォークリフト1が後進しながら左旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo1参照)。不安定状態回避処理部38Aは、図10(b)に示されるように、フォークリフト1が前進で坂路41を下る際に、左の前輪5が右の前輪5よりも下がっている状態では、フォークリフト1が後進しながら右旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo2参照)。
不安定状態回避処理部38Aは、図11(a)に示されるように、フォークリフト1が後進で坂路41を上る際に、右の後輪6が左の後輪6よりも下がっている状態では、フォークリフト1が前進しながら右旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo3参照)。不安定状態回避処理部38Aは、図11(b)に示されるように、フォークリフト1が後進で坂路41を上る際に、左の後輪6が右の後輪6よりも下がっている状態では、フォークリフト1が前進しながら左旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo4参照)。
不安定状態回避処理部38Aは、手順S135Aを実行した後、手順S136でフォークリフト1のロール角がほぼ0度であると判断したときは、フォークリフト1を直進走行させるように走行モータ7を制御する(手順S138A)。これにより、フォークリフト1が前進で坂路41に進入した場合は、フォークリフト1が自動的に再び前進して坂路41を下る。フォークリフト1が後進で坂路41に進入した場合は、フォークリフト1が自動的に再び後進して坂路41を上る。
不安定状態回避処理部38Aは、手順S131でフォークリフト1が前進で坂路41を下っている状態でもないし、フォークリフト1が後進で坂路41を上っている状態でもないと判断したときは、上記の手順S139,S140を実行する。そして、不安定状態回避処理部38Aは、左右の前輪5及び左右の後輪6の何れかの接地荷重が規定値以下であると判断したときは、上記の手順S132Aと同様に、フォークリフト1を一旦停止させるように走行モータ7を制御する(手順S141A)。これにより、フォークリフト1が自動的に停止する。
そして、不安定状態回避処理部38Aは、上記の手順S133Aと同様に、フォーク13が下降するように油圧駆動ユニット8のリフトバルブを制御すると共に、フォーク13が後傾するように油圧駆動ユニット8のティルトバルブを制御する(手順S142A)。これにより、フォーク13が自動的に最下位置及び後傾位置に達する。
その後、不安定状態回避処理部38Aは、手順S143で設定された車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するように走行モータ7及び操舵モータ50を制御する(手順S144A)。
不安定状態回避処理部38Aは、図12(a)に示されるように、フォークリフト1が前進で坂路41を上る際に、左の前輪5が右の前輪5よりも下がっている状態では、フォークリフト1が前進しながら右旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo5参照)。不安定状態回避処理部38Aは、図12(b)に示されるように、フォークリフト1が前進で坂路41を上る際に、右の前輪5が左の前輪5よりも下がっている状態では、フォークリフト1が前進しながら左旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo6参照)。
不安定状態回避処理部38Aは、図13(a)に示されるように、フォークリフト1が後進で坂路41を下る際に、左の後輪6が右の後輪6よりも下がっている状態では、フォークリフト1が後進しながら左旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo7参照)。不安定状態回避処理部38Aは、図13(b)に示されるように、フォークリフト1が後進で坂路41を下る際に、右の後輪6が左の後輪6よりも下がっている状態では、フォークリフト1が後進しながら右旋回するように走行モータ7及び操舵モータ50を制御する(図14のNo8参照)。
不安定状態回避処理部38Aは、手順S144Aを実行した後、手順S145でフォークリフト1のロール角がほぼ0度であると判断したときは、フォークリフト1を直進走行させるように走行モータ7を制御する(手順S147A)。これにより、フォークリフト1が前進で坂路41に進入した場合は、フォークリフト1が自動的に再び前進して坂路41を上る。フォークリフト1が後進で坂路41に進入した場合は、フォークリフト1が自動的に再び後進して坂路41を下る。
不安定状態回避処理部38Aは、手順S140で左右の前輪5及び左右の後輪6の接地荷重が全て規定値よりも高いと判断したときは、上記の手順S141A,142Aを実行せずに、上記の手順S143~147Aを実行する。
以上のような本実施形態では、フォークリフト1が坂路41に進入すると、フォークリフト1の車速を制限する処理が自動的に行われる。これにより、運転者の運転操作の負担を軽減しつつ、坂路41でのフォークリフト1の走行が安定化する。
図19は、図18に示された不安定状態回避処理部38Aにより実行されるロール勾配有り用の不安定状態回避処理の手順の変形例を示すフローチャートである。図19において、不安定状態回避処理部38Aは、手順S134で設定された車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するように走行モータ7及び操舵モータ50を制御すると共に、左右の前輪5のうち旋回側とは反対側の前輪5のトルクが旋回側の前輪5のトルクよりも大きくなるように走行モータ7を制御する(手順S151)。
このとき、不安定状態回避処理部38Aは、フォークリフト1の進行方向に応じて走行モータ7の回転方向を制御すると共に、フォークリフト1の旋回方向に応じて走行モータ7の回転速度(トルク)及び操舵モータ50の回転方向を制御する。
具体的には、不安定状態回避処理部38Aは、フォークリフト1を右旋回させるときは、図20に示されるように、左右の後輪6を右側に転舵させるように操舵モータ50の回転方向を制御すると共に、左側の前輪5のトルクが右側の前輪5のトルクよりも大きくなるように走行モータ7の回転速度を制御する。不安定状態回避処理部38Aは、フォークリフト1を左旋回させるときは、左右の後輪6を左側に転舵させるように操舵モータ50の回転方向を制御すると共に、右側の前輪5のトルクが左側の前輪5のトルクよりも大きくなるように走行モータ7の回転速度を制御する。
また、不安定状態回避処理部38Aは、手順S143で設定された車速及び操舵角の制限値に従って、フォークリフト1のロール角がゼロに近づく方向にフォークリフト1が走行しながら旋回するように走行モータ7及び操舵モータ50を制御すると共に、左右の前輪5のうち旋回側とは反対側の前輪5のトルクが旋回側の前輪5のトルクよりも大きくなるように走行モータ7を制御する(手順S152)。走行モータ7及び操舵モータ50の制御方法は、上記の手順S151と同様である。
このような本変形例では、フォークリフト1の操舵角の制限値(最大値)が小さい場合でも、左右の前輪5のトルクを変えることで、操舵によるフォークリフト1の旋回動作がアシストされるため、フォークリフト1のロール角が十分にゼロに近づくようになる。
なお、本発明は、上記実施形態には限定されない。例えば上記実施形態では、フォークリフト1が前進で坂路41に進入して坂路41を下っている状態のときは、フォークリフト1が後進しながら旋回した後、フォークリフト1を前進で坂路41から脱出させ、フォークリフト1が後進で坂路41に進入して坂路41を上っている状態のときは、フォークリフト1が前進しながら旋回した後、フォークリフト1を後進で坂路41から脱出させているが、特にそのような形態には限られない。フォークリフト1が前進で坂路41に進入して坂路41を下っている状態のときは、フォークリフト1が後進しながら旋回した後、フォークリフト1を後進で坂路41から脱出させ、フォークリフト1が後進で坂路41に進入して坂路41を上っている状態のときは、フォークリフト1が前進しながら旋回した後、フォークリフト1を前進で坂路41から脱出させてもよい。
また、上記実施形態では、フォークリフト1が前進で坂路41を下っている状態のときは、フォークリフト1を後進させながら旋回させ、フォークリフト1が後進で坂路41を上っている状態のときは、フォークリフト1を前進させながら旋回させているが、特にそのような形態には限られない。例えば、左右の前輪5及び左右の後輪6の接地荷重が全て予め決められた規定値よりも高い場合には、フォークリフト1が前進で坂路41を下っている状態でも、フォークリフト1を前進させながら旋回させ、フォークリフト1が後進で坂路41を上っている状態でも、フォークリフト1を後進させながら旋回させてもよい。
また、上記実施形態では、フォークリフト1のロール角またはピッチ角の変化量が閾値以上であるときに、フォークリフト1が坂路41に進入したと判定されているが、特にその形態には限られず、例えば傾斜角センサ24及び加速度センサ25等を用いて、フォークリフト1が坂路41に進入したかどうかを判定してもよい。
また、上記実施形態では、運転者の手動運転によりフォークリフト1を走行させる際の走行支援、または自動運転によりフォークリフト1を走行させる際の走行支援が行われているが、特にその形態には限られず、走行支援の一部の処理を運転者の手動運転により実施し、走行支援の他の処理を自動運転により実施してもよい。
また、上記実施形態は、走行モータ7により駆動輪である前輪5が回転するバッテリ式のフォークリフト1に適用されているが、本発明は、エンジンにより駆動輪が回転するエンジン式のフォークリフトにも適用可能である。
また、上記実施形態は、荷物Wを保持するフォーク13を具備したフォークリフト1に適用されているが、本発明は、例えばクレーン車等のように、坂路に進入したときに走行状態が不安定になることがある他の産業車両にも適用可能である。