(58)【調査した分野】(Int.Cl.,DB名)
前記第1制御部は、前記第1トルク指令値と前記実走行速度とから、前記第1トルク指令値又は前記第2トルク指令値とのいずれに基づいて前記電動機を制御するかの判定に用いる判定速度を求め、
前記判定速度が前記速度指令値以下である場合、前記第2制御部が前記第1トルク指令値に基づいて前記電動機を制御し、前記判定速度が前記速度指令値よりも大きい場合、前記第2制御部が前記第2トルク指令値に基づいて前記電動機を制御すると判定する、請求項3から5のいずれか1項に記載の作業車両。
【発明を実施するための形態】
【0015】
本発明を実施するための形態(実施形態)につき、図面を参照しつつ詳細に説明する。
【0016】
図1は、本実施形態に係る作業車両を左側から見た状態を示した側面図である。
図2は、本実施形態に係る作業車両を左後方斜め上側から見た状態を示した斜視図である。本実施形態においては、電動機によって走行する作業車両として、バッテリ式フォークリフト1を例として説明するが、作業車両はこれに限定されない。例えば、作業車両は、バッテリからの電力又はエンジン等によって駆動される発電機から得られた電力で駆動されるホイールローダ、油圧ショベル等であってもよい。
【0017】
以下において、バッテリ式フォークリフト1は、フォーク13が設けられている側が前方Fであり、カウンタウエイト20が設けられている側が後方Bである。作業車両がバッテリ式フォークリフトでない場合、運転席34から操作装置としてのハンドル36に向かう側が前方Fであり、ハンドル36から運転席34に向かう側が後方Bである。操作装置としては、作業車両の操舵に用いるハンドル36の他、油圧ショベル又はホイールローダ等においては作業機を操作するための操作レバーも含まれる。
【0018】
本実施形態においては、左右とは前方Fに対する左右をいうものとする。左右方向は、作業車両の本体としての車体10の幅方向である。上方Uは、前輪11及び後輪12のうち少なくとも3個と接触する平面(接地平面)に直交し、かつ接地平面から前輪11及び後輪12の回転中心軸に向かう側である。下方Dは、前輪11及び後輪12の回転中心軸から接地平面に向かう側である。車体10の前後方向に向かい、かつ車体10の幅方向中心を通る軸を前後軸といい、前後軸に直交し、かつ車体10の左右方向に向かう軸を左右軸という。車体10の上下方向に向かう軸を上下軸という。上下軸は、前後軸と左右軸との両方に直交する。以下において、平面視とは、上方Uから見た状態をいうものとする。
【0019】
<バッテリ式フォークリフト1の全体構成>
バッテリ式フォークリフト1は、車体10の前方の隅部にそれぞれ前輪11を備え、車体10の後方の隅部にそれぞれ後輪12を備える。バッテリ式フォークリフト1は、前輪11の後方に設けられた走行用の電動機(走行用電動機)50によって前輪11が駆動されることにより走行する。より具体的には、走行用電動機50の出力は、減速機能を有する動力伝達装置51を介して両方の前輪11、11に伝達されて、これらを駆動する。
【0020】
本実施形態において、走行用電動機50には、例えば、PM(Permanent Magnet)型、すなわちローターが永久磁石を有する形式の電動機を用いることができる。PM型の電動機が走行用電動機50として用いられる場合、SPM(Surface Permanent Magnet)型であってもよいし、IPM(Interior Permanent Magnet)型であってもよい。
【0021】
車体10の前方Fには、荷物の積み降ろし又は移動を行うためのフォーク13が設けられている。フォーク13は、上下方向に沿って設けられたマスト14に支持されている。フォーク13は、マスト14との間に設けたマストシリンダ15の駆動により、マスト14に沿って昇降する。図には明示していないが、マスト14は、その下端部において左右軸回りに回転可能に車体10に取り付けられている。さらに、マスト14は、車体10との間に、図示しないチルトシリンダを備えている。マスト14は、チルトシリンダの駆動により、車体10に対して前傾姿勢又は後傾姿勢をとることが可能である。
【0022】
車体10の後端部には、カウンタウエイト20が設けられている。このように、バッテリ式フォークリフト1は、カウンタバランス型のフォークリフトであるが、これに限定されるものではない。カウンタウエイト20は、フォーク13が荷物を支持した場合に釣り合いをとるためのウエイトである。カウンタウエイト20は、例えば、金属が用いられるがこれに限定されるものではない。カウンタウエイト20は、車体10において後輪12の上方となる部位から後端にわたる部位に配設してある。
【0023】
図2に示すように、カウンタウエイト20は、上面に前後方向に開放した凹部を有するように形成してある。具体的には、上面が平坦となるウエイト本体21の両側に上方に向けて一対の柱状部材22が突設されることにより、上面に凹部を有したカウンタウエイト20が形成される。柱状部材22は、ウエイト本体21の両側において互いに対向する部位から上方U及び車体10の前方Fに向けて突出し、車体10の前後方向に沿って相互に平行となるガイド面を有した凸状部分であり、ウエイト本体21と一体に成形してある。なお、カウンタウエイト20の後面は、樹脂製のウエイトカバー23によって覆われている。
【0024】
図1に示すように、車体10の中央部には、電源となるバッテリ30が搭載してある。バッテリ30は、上面が開口した直方体状を成すバッテリケース31の内部に複数のバッテリセルを収容し、バッテリセルが開放された開放式のものである。バッテリ30は、このような開放式のものに限定されない。バッテリケース31は、車体10の幅方向に沿った寸法が、一対の柱状部材22の相互間距離よりもわずかに小さくなっている。このような構造により、バッテリケース31は、一対の柱状部材22の相互間を通過することが可能である。バッテリ30は、
図1に示すように、車体10においてウエイト本体21の前面21Fよりも前方F、かつウエイト本体21の上面21aよりも下方Dに設定されたバッテリ載置面24に搭載してある。バッテリ載置面24は、バッテリ30が搭載された場合、バッテリ30の後端上方部が相互の柱状部材22の間に介在し、カウンタウエイト20と重なった状態となるようにその位置が設定してある。
【0025】
バッテリ載置面24に搭載されたバッテリ30の上方Uには、バッテリフード33が配設してあり、さらにバッテリフード33の上面に運転席34が配設してある。バッテリフード33は、バッテリケース31の上面を覆うために十分な大きさを有したもので、その前端縁部が車体10の左右方向に沿った支持軸33aを介して車体10の支持ブラケット35に支持させてある。バッテリフード33を支持する支持ブラケット35は、バッテリ載置面24の前端に位置する部位から上方Uに立設したものである。バッテリフード33は、支持軸33aの軸心回りに回転させることで、バッテリ30の上方Uを覆う水平位置と、後端縁を上方Uに跳ね上げてバッテリ30の上方Uを開放した前傾位置とに移動させることが可能である。
【0026】
バッテリ30を交換する場合、バッテリフード33を移動させ、バッテリ30の上方Uを開放した前傾位置とした状態とする。この状態で、バッテリ30は車体10の上方Uに吊り上げられ、かつ後方Bに引き出されて取り出される。充電されたバッテリ30は、吊り下げられた状態で車体10の後方Bからバッテリ載置面24の上方Uまで移動されて、バッテリ載置面24に搭載される。
【0027】
車体10の上方Uには、
図1に示すように、天板40が設けてある。天板40は、
図2に示すように、運転席34の上方Uを覆う大きさを有した略矩形の枠体41に複数の桟42を配置したもので、車体10の幅方向に沿った寸法が車体10よりも小さくなっている。この天板40は、一対のフロントステー43及び一対のリヤステー44を介して車体10に取り付けられる。
【0028】
フロントステー43は、
図1に示すように、天板40の前端隅部から下方Dに向けて前方Fに傾斜するように延在し、個々の下端部が車体10の前端部に固定してある。フロントステー43の相互間隔は、全長にわたってほぼ同一である。リヤステー44は、天板40の後端隅部から下方Dに向けて漸次互いに離れるように側方に向けて直線状に突出した拡開部44aと、拡開部44aの下端部からほぼ下方に向けて延在し、個々の下端部が車体10の後端部に固定されたステー本体部44bとを有している。
【0029】
リヤステー44において互いに平行に配設されるステー本体部44bの相互間隔は、柱状部材22の相互間隔とほぼ同一であり、バッテリケース31及びバッテリフード33を通過させることが可能である。ステー本体部44bと拡開部44aとが交わる位置は、水平位置にあるバッテリフード33を前傾位置に移動させた場合にもリヤステー44と干渉せず、かつバッテリ30をバッテリ移載位置に配置した場合にもバッテリケース31と干渉しないように、できるだけ高い位置に設定してある。
【0030】
バッテリ式フォークリフト1は、アクセルペダル37、ブレーキペダル38、進行方向切替レバー39を備えている。アクセルペダル37は、走行用電動機50の出力及び回転方向を制御する操作用の部材である。ブレーキペダル38は、バッテリ式フォークリフト1を停止させるための操作用の部材である。進行方向切替レバー39は、バッテリ式フォークリフト1の進行方向を前方F又は後方Bのいずれか一方に切り替えるための操作用の部材である。
【0031】
図2に示すように、バッテリ式フォークリフト1は、ハンドル36の前方Fに、操作パネル52を備えている。操作パネル52は、バッテリ式フォークリフト1に対して様々な設定をするための入力部と、バッテリ式フォークリフト1の状態等に関する情報を表示する表示部とを有している。バッテリ式フォークリフト1のオペレータは、操作パネル52を介して、バッテリ式フォークリフト1に対して様々な設定をする。操作パネル52の表示部に表示されるバッテリ式フォークリフト1の状態等に関する情報としては、例えば、バッテリ30の状態又はマストシリンダ15等に供給される作動油の油圧等であり、作動油は後述する荷役用電動機55により駆動される油圧ポンプから供給される。
【0032】
<走行用電動機の制御システム>
図3は、本実施形態に係るバッテリ式フォークリフトが備える走行用電動機の制御システムを示す模式図である。走行用電動機50の制御システム2は、第1制御部101と、インバータ54に備えられた第2制御部102とを有している。インバータ54と第2制御部102とは別体であってもよい。第1制御部101、第2制御部102及びインバータ54は、DC/DCコンバータ53を介してバッテリ30から電力が供給される。DC/DCコンバータ53は、バッテリ30の電圧を、第1制御部101と、第2制御部102と、インバータ54とがそれぞれ必要とする電圧に変換してこれらに印加する。
【0033】
第1制御部101及び第2制御部102は、CPU(Central Processing Unit)及びメモリを備えるコンピュータである。インバータ54は、第2制御部102からの指令に基づき、走行用電動機50及び油圧ポンプ56を駆動する荷役用電動機55に駆動電流を供給する。第1制御部101と第2制御部102とは、通信線110を介して接続されている。通信線110は、車内通信回線であってもよい。
【0034】
第1制御部101と第2制御部102とは、通信線110を介して互いに信号又は情報を送受信する。第1制御部101は、例えば、第2制御部102に対して走行用電動機50に発生させるトルクの指令値としての第1トルク指令値Tcf及び速度指令値としての速度リミット指Vlim等を送信する。第2制御部102は、例えば、走行用電動機50から取得した走行用電動機50の回転速度(単位時間当たりの回転数、以下、電動機回転数ともいう)Nを第1制御部101に対して送信する。
【0035】
第1制御部101には、アクセル開度センサ37C、進行方向切替レバー39及び操作パネル52が接続されている。アクセル開度センサ37Cは、アクセルペダル37の開度を検出し、検出した開度を電気信号に変換して出力する。進行方向切替レバー39は、例えば、前進、中立、後進のポジションに応じた指令値を出力する。操作パネル52は、例えば、バッテリ式フォークリフト1の設定を変更する際に、変更後の新たな設定値を出力する。
【0036】
<第1制御部101及び第2制御部102>
図4は、第1制御部及び第2制御部を示す模式図である。第1制御部101は、第1トルク指令値生成部103と、速度指令値生成部104とを有している。第2制御部102は、第2トルク指令値生成部105と、トルク指令値生成部106とを有している。第2トルク指令値生成部105は、減算部107と、乗算部108とを有している。
【0037】
本実施形態において、第1制御部101の第1トルク指令値生成部103は、アクセル開度ACoと、進行方向指令値DRと、設定値USTと、電動機回転数Nとが入力される。これらの入力に基づき、第1トルク指令値生成部103は、第1トルク指令値Tcfを生成する。速度指令値生成部104は、アクセル開度ACoと、設定値USTと、電動機回転数Nと、第1トルク指令値Tcfとが入力される。これらの入力に基づき、速度指令値生成部104は、速度指令値としての速度リミット指令Vlimを生成する。
【0038】
アクセル開度ACoは、
図3に示すアクセル開度センサ37Cが出力した信号であり、アクセルペダル37の開度に対応した値となる。進行方向指令値DRは、進行方向切替レバー39が出力した信号であり、バッテリ式フォークリフト1の進行方向を規定する信号である。設定値USTは、操作パネル52が出力した信号であり、バッテリ式フォークリフト1の様々な設定値に対応している。電動機回転数Nは、走行用電動機50に取り付けられた回転速度検出用センサ50Rが出力した信号であり、走行用電動機50の回転速度に対応した値となる。回転速度検出用センサ50Rは、例えば、レゾルバ等が用いられる。電動機回転数Nは、バッテリ式フォークリフト1が走行する実際の速度(実走行速度)Vrに変換できる。すなわち、電動機回転数Nは、
図1に示す動力伝達装置51の減速比と、前輪11の半径(より具体的には、前輪11の回転中心から接地面までの半径)とを用いて、走行速度に変換される。
【0039】
第2制御部102の第2トルク指令値生成部105が有する減算部107は、速度指令値生成部104が生成した速度リミット指令Vlimと、回転速度検出用センサ50Rが検出して出力した電動機回転数Nとが入力される。減算部107は、速度リミット指令Vlimと電動機回転数Nとの差分ΔVを演算して出力する。このとき、第2制御部102は、電動機回転数Nを実走行速度Vrに変換して減算部107に入力する。乗算部108は、差分ΔVに係数αを乗算し、その結果であるα×ΔVを第2トルク指令値Tcsとして、トルク指令値生成部106に出力する。
【0040】
トルク指令値生成部106は、第1トルク指令値生成部103が生成した第1トルク指令値Tcfと、第2トルク指令値生成部105が生成した第2トルク指令値Tcsとが入力される。トルク指令値生成部106は、入力された第1トルク指令値Tcf又は第2トルク指令値Tcsのいずれか一方を、走行用電動機50に発生させるトルクの指令値(実トルク指令値)としてインバータ54に出力する。トルク指令値生成部106が出力するトルク指令値を、適宜第3トルク指令値Tciという。
【0041】
第2制御部102のトルク指令値生成部106が生成した第3トルク指令値Tciは、インバータ54に入力される。インバータ54は、走行用電動機50が第3トルク指令値Tciに対応したトルクを発生するために必要な電流を、駆動電流Imとして走行用電動機50に供給してこれを駆動する。
【0042】
<第1制御部101及び第2制御部102による走行用電動機50の制御>
図5は、第1制御部及び第2制御部が走行用電動機の制御に用いる制御マップの一例を示す概念図である。
図6は、第1制御部及び第2制御部が走行用電動機を制御する際の手順の一例を示すフローチャートである。本実施形態において、第1制御部101は、制御マップMPに従って第1トルク指令値Tcfを生成する(ステップS11)。第2制御部102は、速度リミット指令Vlimと実走行速度Vrとに基づき第2トルク指令値Tcsを生成し(ステップS12)、かつ第1トルク指令値Tcf又は第2トルク指令値Tcsのいずれか一方を第3トルク指令値Tciとしてインバータ54に出力する。制御マップMPは、トルク指令値Tcを縦軸、走行速度Vを横軸とした直交座標系に記述されている。前述したように、第1トルク指令値Tcfは第1制御部101によって生成され、第2トルク指令値Tcsは、第2制御部102によって生成される。
図5に示す制御マップMPは、例えば、第1制御部101の記憶部に記憶されている。
【0043】
制御マップMPの第1象限S1には、バッテリ式フォークリフト1が前進かつ力行するときの走行速度Vとトルク指令値Tcとの関係が記述されている。第2象限S2には、バッテリ式フォークリフト1が後進かつ回生するときの走行速度Vとトルク指令値Tcとの関係が記述されている。第3象限S3には、バッテリ式フォークリフト1が後進かつ力行するときの走行速度Vとトルク指令値Tcとの関係が記述されている。第4象限S4には、バッテリ式フォークリフト1が前進かつ回生するときの走行速度Vとトルク指令値Tcとの関係が記述されている。
【0044】
図4に示す第1制御部101の第1トルク指令値生成部103は、走行用電動機50に発生させるトルクの指令値であるトルク指令値Tcとバッテリ式フォークリフト1の走行速度Vとの関係(以下、適宜トルク指令曲線という)Ctに、バッテリ式フォークリフト1の実際の走行速度(以下、適宜実走行速度という)Vrを与えて第1トルク指令値Tcfを生成する(ステップS11)。トルク指令曲線Ctは、バッテリ式フォークリフト1の走行速度Vとトルク指令値Tcとの関係であり、走行速度Vに対してトルク指令値Tcが一義的に決定される。本実施形態において、トルク指令曲線Ctは、例えば、走行用電動機50の牽引力曲線又は制動力曲線として設定されている。トルク指令曲線Ctは、アクセル開度ACoの大きさに対応して複数設定されている。例えば、制御マップMPの第1象限S1及び第3象限S3、すなわち力行時において、複数のトルク指令曲線Ctは、同一の走行速度Vに対してトルク指令値Tcの絶対値がより大きくなる方が、アクセル開度ACoは大きくなるように設定されている。第1象限S1において、トルク指令曲線Ct1よりもトルク指令曲線Ct2の方がアクセル開度ACoは大きい。第1トルク指令値Tcfは、第1トルク指令値生成部103が、アクセル開度ACoに応じたトルク指令曲線Ct(例えば、トルク指令曲線Ct1)に実走行速度Vrを与えたときにおける、制御マップMPの縦軸の値(トルク指令値Tc)である。このように、トルク指令曲線Ctは、アクセル開度ACoによって変化する。
【0045】
図4に示す第1制御部101の速度指令値生成部104は、速度リミット指令Vlimを生成する。速度リミット指令Vlimは、走行用電動機50を制御するために用いられる。速度リミット指令Vlimは、バッテリ式フォークリフト1の走行状態によって変化する。速度リミット指令Vlimの詳細は後述する。
【0046】
本実施形態において、第2制御部102の第2トルク指令値生成部105は、速度リミット指令Vlimと実走行速度Vrとに基づいて、第2トルク指令値Tcsを生成する(ステップS12)。具体的には、前述したように、第2トルク指令値生成部105は、速度リミット指令Vlimと実走行速度Vrとの差分ΔVに係数αを乗算して、第2トルク指令値Tcsであるα×ΔVを生成する。
図5に示すように、係数αは、速度リミット指令Vlimを通る直線(速度リミット線)Lvの傾きである。第2トルク指令値生成部105は、係数αを複数有して、バッテリ式フォークリフト1の走行条件又は設定等に応じて係数αを変更してもよい。係数αが一定である場合、第2トルク指令値Tcsは、実走行速度Vr及び速度リミット指令Vlimが変化することによって、速度リミット線Lvに沿って変化する。
図5の制御マップMPには、説明の便宜上、速度リミット指令Vlim及び速度リミット線Lvも記述したが、これらは第2トルク指令値Tcsの生成に関するものなので、実際には制御マップMPに記述されていない。
【0047】
図4に示す第2制御部102のトルク指令値生成部106は、バッテリ式フォークリフト1の走行状態に応じて、第1トルク指令値Tcfと第2トルク指令値Tcsとの一方を選択して、第3トルク指令値Tciとして出力する。本実施形態において、トルク指令値生成部106は、バッテリ式フォークリフト1が前進しているときには(ステップS13、Yes)、第1トルク指令値Tcfと第2トルク指令値Tcsとのうち小さい方を第3トルク指令値Tciとして用いて走行用電動機50を制御する(ステップS14)。バッテリ式フォークリフト1が後進しているときには(ステップS13、No)、トルク指令値生成部106は、第1トルク指令値Tcfと第2トルク指令値Tcsとのうち大きい方を第3トルク指令値Tciとして用いて走行用電動機50を制御する(ステップS15)。
【0048】
制御マップMPのトルク指令値Tcu又は−Tcuを通り、かつ横軸に平行な点線の直線は、バッテリ式フォークリフト1のオペレータによって設定される、スイッチバック回生力(制動力)USTtである。スイッチバック回生力(制動力)USTtが設定されると、第1トルク指令値Tcfは、スイッチバック回生力(制動力)USTtが上限となる。例えば、第1トルク指令値Tcfは、トルク指令曲線Ctに関わらず、スイッチバック回生力(制動力)USTtが上限とされる。このため、スイッチバック回生力(制動力)USTtに基づいて第3トルク指令値Tciが生成されると、走行用電動機50は、スイッチバック回生力(制動力)USTtに対応するトルク指令値Tcuよりも大きなトルクは出力しない。その結果、バッテリ式フォークリフト1の実走行速度Vrは、走行用電動機50がトルク指令値Tcuに対応するトルクを出力したときの速度に制限される。
【0049】
図7は、本実施形態に係る走行用電動機の制御例を示すフローチャートである。本実施形態において、第1制御部101は、バッテリ式フォークリフト1の走行状態(停止も含む)に応じて、坂道制御とスイッチバック制御と力行制御とを切り替えて、走行用電動機50を制御する。例えば、第1制御部101は、バッテリ式フォークリフト1の実際の進行方向と、バッテリ式フォークリフト1の進行方向を規定する進行方向指令値DRとに基づいて速度リミット指令Vlimを決定することにより、坂道制御及びスイッチバック制御を実行する。坂道制御は、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが異なった場合であって、実走行速度Vrが進行方向指令と逆向きに増加した場合に、実走行速度Vrの急激な増加を抑制する制御である。主に、バッテリ式フォークリフト1が坂道で停止したときに実行される。スイッチバック制御は、バッテリ式フォークリフト1がスイッチバック動作をするときの制御である。スイッチバック動作とは、バッテリ式フォークリフト1の実際の進行方向と、進行方向指令値DRが規定する進行方向とが相違する場合におけるバッテリ式フォークリフト1の動作である。例えば、
図1、
図2に示すアクセルペダル37を踏み、かつ進行方向切替レバー39を前進としてバッテリ式フォークリフト1を前進させている状態で、進行方向切替レバー39を後進に切り替えたとき等の動作がスイッチバック動作である。力行制御は、バッテリ式フォークリフト1が力行しているとき、すなわち、走行用電動機50に駆動電流Imが供給されているときに実行される制御である。
【0050】
第1制御部101及び第2制御部102が走行用電動機50の動作を制御するにあたり、ステップS101において、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DR(進行方向切替レバー39の指示)とが相違する場合(ステップS101、Yes)、第1制御部101及び第2制御部102は、ステップS102で坂道制御又はスイッチバック制御を実行する。ステップS103において、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが同一である場合、第1制御部101及び第2制御部102は、ステップS103で力行制御を実行する。次に、それぞれの制御の詳細を説明する。
【0051】
<坂道制御>
図8は、坂道制御及びスイッチバック制御における速度リミット指令と実走行速度との関係を示す図である。
図9は、バッテリ式フォークリフトが上り坂にいる状態を示す図である。
図10は、坂道制御における第3トルク指令値及びバッテリ式フォークリフトの動作を説明するための図である。
【0052】
坂道制御においては、
図8に示すように、速度リミット指令Vlimは、実走行速度Vrに関わらず一定値β又は−βである(
図8の実線Lsl)。速度リミット指令Vlimが−βとなる場合は、
図9に示すようにバッテリ式フォークリフト1が上り坂SLuにいるときである。速度リミット指令Vlimがβとなる場合は、
図13に示すようにバッテリ式フォークリフト1が下り坂SLdにいるときである。βは一定値であれば0であってもよいが、本実施形態においては、例えば、0.5km/h程度としている。
【0053】
図9に示すように、バッテリ式フォークリフト1が上り坂SLuにいる場合において、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが相違する場合、
図4に示す第1制御部101及び第2制御部102は坂道制御を実行する。坂道制御は、主として、バッテリ式フォークリフト1の実際の進行方向が切り替わることにより開始される。この場合、第1制御部101の第1トルク指令値生成部103は、アクセル開度ACo=0であることから、
図10に示すように、第1トルク指令値Tcf=0とする。第1制御部101の速度指令値生成部104は、速度リミット指令Vlimを0以外の値、具体的には
図8に示すように−βとする。実走行速度がVr1である場合、すなわち、上り坂SLuでバッテリ式フォークリフト1がVr1で後進している場合、第2制御部102の第2トルク指令値生成部105は、第2トルク指令値Tcs1を求める。第2トルク指令値Tcs1は、上述した通り、α×ΔV=α×(Vlim−Vr1)である。
【0054】
この例は、バッテリ式フォークリフト1が実走行速度Vr1で後進しているので、第2制御部102のトルク指令値生成部106は、第1トルク指令値Tcfと第2トルク指令値Tcs1との大きい方を第3トルク指令値Tciとする。具体的には、
図10に示すように、第3トルク指令値Tci=Tcf=0となる。このため、バッテリ式フォークリフト1は、徐々に増速しながら後進する。
【0055】
アクセル開度ACo=0の状態で、バッテリ式フォークリフト1が増速しながら上り坂SLuを後進し、実走行速度Vrが速度リミット指令Vlimを超えてVr2になったとする。第1制御部101及び第2制御部102は、第1トルク指令値Tcf、速度リミット指令Vlim及び実走行速度Vr2から、第3トルク指令値Tciを生成する。この場合、
図10に示すように、第3トルク指令値Tci=Tcs2>0となる。走行用電動機50の回生に対応する第2象限S2において第3トルク指令値Tci>0なので、走行用電動機50は電力を回生している。第3トルク指令値Tciに基づき走行用電動機50は、電力の回生によって上り坂SLuを上る方向のトルクを発生するので、バッテリ式フォークリフト1が上り坂SLuを後進する速度は小さくなる。
【0056】
図11は、バッテリ式フォークリフトが上り坂にいて、アクセルが踏まれている状態を示す図である。
図12は、
図11に示す状態での第3トルク指令値及びバッテリ式フォークリフトの動作を説明するための図である。
図11に示すように、実走行速度がVr2の状態で、アクセルが踏まれることにより、アクセル開度ACo>0となると、駆動輪としての前輪11は、第3トルク指令値Tciに基づいて駆動される走行用電動機50によって、トルクTwを発生している。このとき、第1制御部101は、実走行速度Vr2及び第2象限S1のトルク指令曲線Ct2から第1トルク指令値Tcf2を生成する。第2制御部102は、速度リミット指令Vlim及び実走行速度Vr2から、第2トルク指令値Tcs2を生成する。この場合、
図12に示すように、第3トルク指令値Tci=Tcs2>Tcf2>0となる。
【0057】
アクセル開度ACoが大きくなると、第1制御部101は、実走行速度Vr2及び第2象限S1のトルク指令曲線Ct3から第1トルク指令値Tcf3を生成する。トルク指令曲線Ct3は、実走行速度Vrが同一である場合、トルク指令値Ct2よりも大きくなる。したがって、トルク指令曲線Ct3から生成された第1トルク指令値Tcf3は、トルク指令曲線Ct2から生成された第1トルク指令値Tcf2よりも大きくなる。本例では、トルク指令曲線Ct3から生成された第1トルク指令値Tcf3は、速度リミット指令Vlim及び実走行速度Vr2から第2制御部102によって生成された第2トルク指令値Tcs2よりも大きくなっている。この場合、
図12に示すように、第3トルク指令値Tci=Tcf3>Tcs2>0となる。第3トルク指令値Tciが、上り坂SLuをバッテリ式フォークリフト1が後進するときの走行抵抗に打ち勝った場合、バッテリ式フォークリフト1は減速する。減速後、実走行速度Vrの方向反転により後述する力行制御へと移行し、バッテリ式フォークリフト1は、上り坂SLuを上る。次に、バッテリ式フォークリフト1が下り坂にいる場合を説明する。
【0058】
図13は、バッテリ式フォークリフトが下り坂にいる状態を示す図である。
図14は、坂道制御における第3トルク指令値及びバッテリ式フォークリフトの動作を説明するための図である。
図13に示すように、バッテリ式フォークリフト1が下り坂SLdを実走行速度Vr3で前進している場合、第1制御部101の第1トルク指令値生成部103は、アクセル開度ACo=0であることから、第1トルク指令値Tcf=0とする。第1制御部101の速度指令値生成部104は、速度リミット指令Vlimを0以外の値、具体的には
図8に示すようにβとする。
図14に示すように、実走行速度がVr3である場合、すなわち、下り坂SLdでバッテリ式フォークリフト1が実走行速度Vr3で前進している場合、第2制御部102の第2トルク指令値生成部105は、第2トルク指令値Tcs3を求める。第2トルク指令値Tcs3は、上述した通り、α×ΔV=α×(Vlim−Vr3)である。
【0059】
この例は、バッテリ式フォークリフト1が実走行速度Vr3で前進しているので、第2制御部102のトルク指令値生成部106は、第1トルク指令値Tcfと第2トルク指令値Tcs3との小さい方を第3トルク指令値Tciとする。具体的には、
図14に示すように、第3トルク指令値Tci=Tcf=0となる。このため、バッテリ式フォークリフト1は、徐々に増速しながら前進する。
【0060】
アクセル開度ACo=0の状態で、バッテリ式フォークリフト1が増速しながら下り坂SLdを前進し、実走行速度が速度リミット指令Vlimを超えてVr4になったとする。第1制御部101及び第2制御部102は、第1トルク指令値Tcf、速度リミット指令Vlim及び実走行速度Vr4から、第3トルク指令値Tciを生成する。この場合、
図14に示すように、第3トルク指令値Tci=Tcs4<0となる。走行用電動機50の回生に対応する第4象限S4において第3トルク指令値Tci<0なので、走行用電動機50は電力を回生している。第3トルク指令値Tciに基づき走行用電動機50は、回生によって下り坂SLdを上る方向のトルクを発生するので、バッテリ式フォークリフト1が下り坂SLdを前進する速度は小さくなる。
【0061】
本実施形態に係る坂道制御は、第1制御部101が、アクセル開度ACoと、実走行速度Vrとに基づいて速度リミット指令Vlimを決定する。そして、本実施形態に係る坂道制御は、第2制御部102が、バッテリ式フォークリフト1の前進時には第1トルク指令値Tcfと第2トルク指令値Tcsとのうち小さい方を用いて走行用電動機50を制御し、後進時には第1トルク指令値Tcfと第2トルク指令値Tcsとのうち大きい方を用いて電動機を制御する。第1制御部101は、バッテリ式フォークリフト1の実際の進行方向と、バッテリ式フォークリフト1の進行方向を規定する進行方向指令値DRとに基づいて速度リミット指令Vlimを決定することにより、坂道制御を実行する。すなわち、第1制御部101は、坂道制御において、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが相違することを条件として、速度リミット指令Vlimを+β又は−β(|β|)に決定する。このようにすることで、バッテリ式フォークリフト1が坂道を下る方向に進む速度の増加を抑制することができる。
【0062】
本実施形態に係る坂道制御は、前述のような処理によって、バッテリ式フォークリフト1が坂道を徐々に下るようにすることができる。このため、バッテリ式フォークリフト1のオペレータに、バッテリ式フォークリフト1が坂道にいることを確実に認識させることができる。走行用電動機50にPM型の電動機を用いる場合、走行用電動機50が励磁された状態で停止すると、ローターに取り付けられた永久磁石は発熱して保持力の低下を招く可能性がある。本実施形態に係る坂道制御は、坂道においてバッテリ式フォークリフト1を徐々に移動させるので、走行用電動機50が励磁されているときに回転している状態を継続することができる。その結果、ローターに取り付けられた永久磁石の発熱及び保持力の低下を抑制できる。
【0063】
速度リミット指令Vlimを0とすると、実走行速度Vrが0近傍である場合には、第1トルク指令値Tcfと第2トルク指令値Tcsとの大きさが近接するので、ハンチングを起こしやすくなる可能性がある。このため、本実施形態に係る坂道制御は、実走行速度Vrが0から変化した場合、速度リミット指令Vlimを0以外の値、すなわち絶対値が0よりも大きい値(本実施形態では|β|)とすることが好ましい。このようにすることで、坂道制御を実行しているときのハンチングを抑制することができる。なお、本実施形態に係る坂道制御は、進行方向切替レバー39のポジション、すなわち、進行方向指令値DRと、バッテリ式フォークリフト1の実際の進行方向とが相違する場合には、アクセル開度ACoに関係なく実行される。次に、スイッチバック制御について説明する。
【0064】
図15は、スイッチバック動作の一例を示す図である。例えば、バッテリ式フォークリフト1が荷物PKに向かって前進(進行方向指令値DR=Fw)して接近しているときのあるタイミングで、オペレータが進行方向切替レバー39を前進から後進(進行方向指令値DR=Bk)に切り替える。すると、フォーク13が荷物PKの下に差し込まれ、フォーク13に荷物PKが載置されたタイミングでバッテリ式フォークリフト1は後進を開始する。このような動作がスイッチバック動作の一例である。
【0065】
図16は、バッテリ式フォークリフトが力行かつ前進している状態を示す図である。
図17は、バッテリ式フォークリフトが力行かつ前進している状態のトルク指令値を説明するための図である。バッテリ式フォークリフト1は、スイッチバック動作に入る前に、例えば、
図16に示すように、実走行速度Vrで力行し、前進している。このとき、駆動輪としての前輪11は、第3トルク指令値Tciに基づいて駆動される走行用電動機50によって、トルクTwを発生している。アクセル開度ACoは0より大きく、進行方向指令値DRは前進を示すFwである。
【0066】
バッテリ式フォークリフト1が力行かつ前進しているので、第1トルク指令値Tcfは、第1象限S1のトルク指令曲線Ctと実走行速度Vrとから、第1制御部101によって生成される。このときの速度リミット指令Vlimは、後述する力行制御によって決定されている。第2トルク指令値Tcsは、速度リミット指令Vlimと実走行速度Vrとから、第2制御部102によって生成される。バッテリ式フォークリフト1が前進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの小さい方、この例では、第1トルク指令値Tcfを第3トルク指令値Tciとする。走行用電動機50は、第1トルク指令値Tcfを発生するように、
図4に示すインバータ54によって駆動される。次に、スイッチバック制御について説明する。
【0067】
図18は、バッテリ式フォークリフトがスイッチバック動作になったことを示す図である。
図19は、バッテリ式フォークリフトがスイッチバック動作になったときのトルク指令値を説明するための図である。スイッチバック制御は、坂道制御と同様に、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが相違する場合に実行される。スイッチバック制御は、主として、進行方向指令値DRが変化した場合に実行される。進行方向指令値DRは、例えば、バッテリ式フォークリフト1のオペレータが進行方向切替レバー39を操作することにより変化する。スイッチバック制御は、
図4に示す第1制御部101及び第2制御部102が実行する。
【0068】
図18に示すバッテリ式フォークリフト1は、アクセルペダル37が踏まれた(開かれた)状態(ACo>0)で、進行方向切替レバー39が前進から後進に切り替えられている。このため、バッテリ式フォークリフト1は、実際の進行方向が前方Fであるが、進行方向指令値DRは後進を示すBkになっている。すなわち、バッテリ式フォークリフト1は、実際の進行方向と進行方向指令値DRとが異なっている。駆動輪としての前輪11は、第3トルク指令値Tciに基づいて駆動される走行用電動機50によって、トルクTwを発生している。このときのトルクTwは、バッテリ式フォークリフト1を制動する方向に発生しており、バッテリ式フォークリフト1を前進させる方向とは反対方向である。
【0069】
進行方向切替レバー39が前進から後進に切り替えられた直後は、バッテリ式フォークリフト1は実走行速度Vrで前進している。バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとに相違(以下、適宜、進行方向の相違という)が発生しているため、第1制御部101及び第2制御部102は、スイッチバック制御を実行する。スイッチバック制御において、第1制御部101の第1トルク指令値生成部103は、力行制御で用いた、牽引力曲線に基づく第1象限S1のトルク指令曲線Ctに代えて、制動力曲線に基づく第4象限S4のトルク指令曲線Ctを用いて第1トルク指令値Tcfを生成する。
図19から明らかなように、第1トルク指令値Tcfは負の値である。
【0070】
スイッチバック制御において、速度リミット指令Vlimを、バッテリ式フォークリフト1に進行方向の相違が発生した時点における実走行速度Vr絶対値よりも大きい値とする。本実施形態において、第1制御部101の速度指令値生成部104は、
図19、
図8に示すように、バッテリ式フォークリフト1に進行方向の相違が発生した時点の実走行速度Vr(Vsb1)に、任意の速度vを加算した値を、速度リミット指令Vlim(Vlim1)とする。第2制御部102は、速度リミット指令Vlim(Vlim1)と実走行速度Vr(Vsb1)とから、第2トルク指令値Tcsを生成する。バッテリ式フォークリフト1が前進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの小さい方、この例では、第1トルク指令値Tcfを第3トルク指令値Tciとする。走行用電動機50は、第1トルク指令値Tcfを発生するように、
図4に示すインバータ54によって駆動される。
【0071】
図20は、スイッチバック動作中のバッテリ式フォークリフトを示す図である。
図21は、スイッチバック動作中のトルク指令値を説明するための図である。
図20に示すバッテリ式フォークリフト1は、前輪11が発生するトルクTw、すなわち回生制動トルクによって、徐々に減速する。回生制動トルクは、バッテリ式フォークリフト1を、現在の進行方向とは反対方向に進ませようとするトルクである。前進方向の実走行速度Vrが減少している場合、アクセル開度ACo>0、進行方向指令値DRは後進を表すBkになっている。
【0072】
進行方向切替レバー39が後進、かつアクセル開度ACo>0の状態でバッテリ式フォークリフト1が減速しているときも、第1制御部101の第1トルク指令値生成部103は、制動力曲線に基づく第4象限S4のトルク指令曲線Ctを用いて第1トルク指令値Tcfを生成する。本実施形態において、第1制御部101の速度指令値生成部104は、
図21、
図7に示すように、実走行速度Vr(Vsb2)が、バッテリ式フォークリフト1に進行方向の相違が発生した時点の実走行速度Vr(Vsb1)よりも小さくなった場合、速度リミット指令Vlimを、進行方向の相違が発生した時点の速度リミット指令Vlim1よりも小さくし、Vlim2とする。これは、実走行速度Vrが0に近づくにしたがって、速度リミット指令Vlimを小さくすることを意味する。この場合、速度リミット指令Vlim2と実走行速度Vsb2との差は、
図21、
図7に示すように速度vである。すなわち、本実施形態において、実走行速度Vrが減少する場合、速度リミット指令Vlimは、実走行速度Vrよりも速度vだけ大きい値で実走行速度Vrに追従する。速度vは0であってもよいが、vを絶対値が0よりも大きい値とすることで、スイッチバック制御においてハンチングの発生を抑制できるので好ましい。
【0073】
このように、本実施形態において、第1制御部101は、速度リミット指令Vlimを、バッテリ式フォークリフト1に進行方向の相違が発生したときに生成した値よりも大きくしない。すなわち、速度リミット指令Vlimは、本実施形態においては、
図8に示す実線Llv1に沿って減少する方向にのみ変化する。このようにすることで、バッテリ式フォークリフト1が一旦減速した後に再加速することを抑制することができる。
【0074】
第2制御部102は、速度リミット指令Vlim(Vlim2)と実走行速度Vr(Vsb2)とから、第2トルク指令値Tcsを生成する。バッテリ式フォークリフト1が前進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの小さい方、この例では、第1トルク指令値Tcfを第3トルク指令値Tciとする。走行用電動機50は、第1トルク指令値Tcfを発生するように、
図4に示すインバータ54によって駆動される。
【0075】
図22は、減速によって進行方向が反転したバッテリ式フォークリフトを示す図である。
図23は、減速によって進行方向が反転した場合におけるトルク指令値を説明するための図である。
図22に示すバッテリ式フォークリフト1は、前輪11が発生するトルクTw、すなわち回生制動トルクによって徐々に減速し、進行方向が前進から後進に切り替わっている。このため、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが同一になっている。アクセル開度ACo>0、進行方向指令値DRは後進を表すBkになっている。
【0076】
進行方向切替レバー39が後進、かつアクセル開度ACo>0の状態でバッテリ式フォークリフト1が実走行速度Vrで後進しているとき、第1制御部101及び第2制御部102は、後進の力行制御によって走行用電動機50を制御する。第1制御部101の第1トルク指令値生成部103は、スイッチバック制御で用いた、制動力曲線に基づく第4象限S4のトルク指令曲線Ctに代えて、牽引力曲線に基づく第3象限S3のトルク指令曲線Ctを用いて第1トルク指令値Tcfを生成する。
図23から明らかなように、第1トルク指令値Tcfは負の値である。
【0077】
第1制御部101の速度指令値生成部104は、後進の力行制御に基づいて速度リミット指令Vlimを生成する。第2制御部102は、速度リミット指令Vlimと実走行速度Vrとから、第2トルク指令値Tcsを生成する。バッテリ式フォークリフト1が後進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの大きい方、この例では、第2トルク指令値Tcsを第3トルク指令値Tciとする。走行用電動機50は、第2トルク指令値Tcsを発生するように、
図4に示すインバータ54によって駆動される。前述した説明においては、アクセル開度ACo>0である場合を例としたが、スイッチバック制御は、アクセル開度ACoに関わらず、坂道制御と同様に、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが相違する場合に実行される(以下同様)。次に、
図24、
図25に示すスイッチバック制御に入った後、バッテリ式フォークリフト1が下り坂を走行する例を説明する。
【0078】
図24は、スイッチバック制御に入った後に下り坂を走行するバッテリ式フォークリフトを示す図である。
図25は、スイッチバック制御に入った後、下り坂を走行する場合におけるトルク指令値を説明するための図である。
図24に示すバッテリ式フォークリフト1は、アクセルペダル37が踏まれた状態(ACo>0)で、進行方向切替レバー39が前進から後進に切り替えられている(DR=Bk)。このため、第1制御部101及び第2制御部102は、スイッチバック制御を実行している。バッテリ式フォークリフト1は、下り坂を走行するため、実走行速度Vrが増加することになる。
【0079】
実走行速度Vrが増加した場合、
図25及び
図8の直線Llv2に示すように、第1制御部101の速度指令値生成部104は、速度リミット指令Vlimは変更しない。すなわち、本実施形態において、速度指令値生成部104は、バッテリ式フォークリフト1に進行方向の相違が発生してスイッチバック制御に移行した時点に生成した速度リミット指令Vlim1よりも速度リミット指令Vlimを大きくしない。このようにすることで、第3トルク指令値Tciが不足することに起因する実走行速度Vrの増加を抑制することができる。第3トルク指令値Tciは、例えば、アクセル開度ACoが不足している、坂が急傾斜である又は
図5に示すスイッチバック回生力(制動力)USTtがユーザー毎に異なる等によって不足する可能性がある。
【0080】
本実施形態に係るスイッチバック制御は、実走行速度Vrが少なくとも速度リミット指令Vlimを超えるまでは、第1トルク指令値Tcfが第3トルク指令値Tciとなるため、走行用電動機50が発生するトルクの急変は抑制される。さらに、速度リミット指令Vlimを通る傾きがαの直線は、第4象限S4のトルク指令曲線Ctと交差するので、第1トルク指令値Tcfと第2トルク指令値Tcsとの切り替わりも滑らかになる。このため、走行用電動機50が発生するトルクの急変は抑制される。第1トルク指令値Tcf、第2トルク指令値Tcs及び第3トルク指令値Tciの生成は、上述した通りなので説明を省略する。
【0081】
図8の点線Llv3に示すように、速度指令値生成部104は、速度リミット指令Vlimが少なくなる方向に変更されたら、変更後の速度リミット指令Vlim(
図8に示す例ではVlim2)よりも速度リミット指令Vlimを大きくしないようにしてもよい。このようにすると、バッテリ式フォークリフト1が一旦減速した後に再加速することを抑制することができる。次に、前述した坂道制御中にスイッチバック制御へ移行する例を説明する。
【0082】
図26は、バッテリ式フォークリフトが下り坂にいるときにアクセルを開き後進する状態を示す図である。
図27は、バッテリ式フォークリフトが下り坂にいるときにアクセルを開き後進する状態におけるトルク指令値を説明するための図である。前述した
図13に示すように、バッテリ式フォークリフト1が進行方向切替レバー39を前進として、下り坂SLdにいるときに
図14に示すような坂道制御が実行されている場合を考える。この状態では、バッテリ式フォークリフト1は、下り坂SLdを徐々に前進して下っている状態である。このとき、オペレータが、進行方向切替レバー39を後進、すなわち現在の進行方向とは反対に切り替え、かつアクセルペダル37を開いたとする。すると、
図26に示すように、バッテリ式フォークリフト1は実走行速度Vrで前進しているが、進行方向指令値DRはFwからBkに切り替わる。この場合は、進行方向指令値DRが切り替わることにより、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとが相違するので、スイッチバック制御が実行される。
【0083】
バッテリ式フォークリフト1に進行方向の相違が発生するので、第1制御部101及び第2制御部102は、スイッチバック制御を実行する。スイッチバック制御を実行するにあたり、第1制御部101の第1トルク指令値生成部103は、制動力曲線に基づく第4象限S4のトルク指令曲線Ctを用いて第1トルク指令値Tcfを生成する。第1制御部101の速度指令値生成部104は、
図27に示すように、バッテリ式フォークリフト1に進行方向の相違が発生した時点の実走行速度Vrに速度vを加算した値を、速度リミット指令Vlimとする。第2制御部102は、速度リミット指令Vlimと実走行速度Vrとから、第2トルク指令値Tcsを生成する。バッテリ式フォークリフト1が前進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの小さい方、この例では、第1トルク指令値Tcfを第3トルク指令値Tciとする。
図4に示すインバータ54は、走行用電動機50が第1トルク指令値Tcfを発生するように制御する。
【0084】
本実施形態に係るスイッチバック制御は、バッテリ式フォークリフト1に進行方向の相違が発生した時点の実走行速度Vrに速度vを加算した値を、速度リミット指令Vlimとする。このようにすることで、
図27に示すように、制動力曲線等に基づく第1トルク指令値Tcfが第3トルク指令値Tciとなるので、走行用電動機50は、アクセルペダル37の操作に応じた加速感をオペレータに与えることができる。
【0085】
図28は、バッテリ式フォークリフトが下り坂にいるときにスイッチバック制御が実行されている状態を示す図である。
図29は、バッテリ式フォークリフトが下り坂にいるときのスイッチバック制御におけるトルク指令値を説明するための図である。坂道制御からスイッチバック制御に切り替わると、バッテリ式フォークリフト1が前進する実走行速度Vrは徐々に小さくなる。実走行速度Vrが小さくなった場合、第1制御部101の速度指令値生成部104は、前述したように、速度リミット指令Vlimを前回値よりも小さくする。実走行速度Vrが正、すなわちバッテリ式フォークリフト1が前進しているので、第2制御部102は、第1トルク指令値Tcfと第2トルク指令値Tcsとの小さい方、この例では、第1トルク指令値Tcfを第3トルク指令値Tciとする。
図4に示すインバータ54は、走行用電動機50が第1トルク指令値Tcfを発生するように制御する。バッテリ式フォークリフト1の実走行速度Vrが0になり、進行方向が反転すると、進行方向指令値DRはBkからFwに切り替わる。すると、バッテリ式フォークリフト1の実際の進行方向と進行方向指令値DRとは同一になるので、第1制御部101及び第2制御部102は、力行制御によって走行用電動機50を制御する。
【0086】
本実施形態において、第1制御部101は、アクセル開度ACoと、実走行速度Vrと、バッテリ式フォークリフト1の実際の進行方向とに基づいて速度リミット指令Vlimを決定する。例えば、本実施形態に係るスイッチバック制御は、進行方向指令値DRと、バッテリ式フォークリフト1の実際の進行方向(実走行速度Vrの方向)とが異なった瞬間の実走行速度Vrよりも絶対値が大きい速度又はこの実走行速度Vrを速度リミット指令Vlimとすることで、坂道制御から速やかにスイッチバック制御へ移行することができる。また、移行時における加速度の急変も抑制することができる。
【0087】
本実施形態において、前述した坂道制御とスイッチバック制御とは、バッテリ式フォークリフト1の実際の進行方向と、進行方向指令値DRが規定する進行方向とが相違することを条件としている。そして、バッテリ式フォークリフト1の実際の進行方向が変化することにより前述した相違が発生した場合には坂道制御が実行され、進行方向指令値DRが変化することにより前述した相違が発生した場合にはスイッチバック制御が実行される。本実施形態は、このような制御のロジックとすることで、スイッチバック制御と坂道制御とを明確に切り分けることができるので、両者の両立を図ることができる。また、本実施形態に係るスイッチバック制御の実行中は、速度リミット指令Vlimを実走行速度Vrの絶対値が小さくなる場合に限って追従させることで、スイッチバック制御中に坂道に入った場合であってもバッテリ式フォークリフト1の増速を抑制して、スイッチバック制御と坂道制御との両立を図ることができる。その結果、バッテリ式フォークリフト1が、発泡スチロール等の密度が低いために荷こぼれし易い搬送物を荷役する場合において、荷物を不安定にすることを抑制できる。
【0088】
<力行制御>
力行制御において、
図4に示す第1制御部101の速度指令値生成部104は、時間の経過に応じて速度リミット指令Vlimを変更する。このようにすることで、バッテリ式フォークリフト1が発進する際において、実走行速度Vrの急激な変化を抑制することができる。バッテリ式フォークリフト1が発進した後、ある程度の時間が経過した後は、第1トルク指令値生成部103が生成した第1トルク指令値Tcf、すなわち、牽引力曲線又は制動力曲線に基づいて決定される第1トルク指令値Tcfによってバッテリ式フォークリフト1が制御される。
【0089】
図30は、第1制御部が備える速度指令値生成部の制御ブロック図である。速度指令値生成部104は、走行速度制限部104Aと、加速制限部104Bと、選択処理部104Cとを有する。走行速度制限部104Aは、バッテリ式フォークリフト1の実走行速度Vrの上限を制限する機能を有している。走行速度制限部104Aは、例えば、バッテリ式フォークリフト1の実走行速度Vを制限するための速度制限設定値UST_Bを有しており、これを第1速度リミット指令Vaとして出力する。走行速度制限部104Aには、設定値USTが入力される。設定値USTの入力により、走行速度制限部104Aの内容、例えば、速度制限設定値UST_Bの値が書き換えられる。その結果、走行速度制限部104Aは、異なる値の第1速度リミット指令Vaを出力することができる。
【0090】
加速制限部104Bは、シフト量決定部104Baと、速度指令値シフト処理部104Bbとを有する。シフト量決定部104Baは、アクセル開度ACoが入力される。シフト量決定部104Baは、入力されたアクセル開度ACoに基づいて、速度リミット指令Vlimの時間の経過に応じた変化量、すなわちシフト量STを決定する。速度指令値生成部104が生成して出力する速度リミット指令Vlimは、走行速度制限部104Aによる制限がない場合、加速制限部104Bの速度指令値シフト処理部104Bbが生成して出力する第2速度リミット指令Vbと等しくなる。シフト量決定部104Baは、設定値UST_Aが入力される。設定値UST_Aに応じて、速度リミット指令Vlimの時間の経過に応じた変化の特性が変更される。
【0091】
速度指令値シフト処理部104Bbは、実走行速度Vrと、第1制御部101の第1トルク指令値生成部103が生成した第1トルク指令値Tcfと、シフト量決定部104Baが決定したシフト量STとが入力される。実走行速度Vrは、走行用電動機50の電動機回転数Nに相当する。速度指令値シフト処理部104Bbは、実走行速度Vrと第1トルク指令値Tcfとシフト量STとに基づいて、第2速度リミット指令Vbを生成し、出力する。本実施形態において、第2速度リミット指令Vbの初期値は、
図8に示したβ又は−βである。実走行速度Vrが入力されたとき、その方向が正(前進)であれば、第2速度リミット指令Vbの初期値はβとなり、その方向が負(後進)であれば、第2速度リミット指令Vbの初期値は−βとなる。
【0092】
選択処理部104Cは、第1速度リミット指令Vaと第2速度リミット指令Vbとが入力される。選択処理部104Cは、実走行速度Vrが正の場合、すなわちバッテリ式フォークリフト1が前進しているときには第1速度リミット指令Vaと第2速度リミット指令Vbとの小さい方を選択して速度リミット指令Vlimとして出力する。選択処理部104Cは、実走行速度Vrが負の場合、すなわちバッテリ式フォークリフト1が後進しているときには第1速度リミット指令Vaと第2速度リミット指令Vbとの大きい方を選択して速度リミット指令Vlimとして出力する。選択処理部104Cは、第1速度リミット指令Vaと第2速度リミット指令Vbとのうち、絶対値の小さい方を選択する。
【0093】
図31は、シフト量決定部が決定する速度リミット指令のシフト量を説明するための図である。
図32は、シフト量に基づいて速度リミット指令を変化させた場合の一例を示す図である。速度リミット指令Vlimのシフト量STは、所定時間における速度リミット指令Vlimの変化量であり、単位は、例えば、km/h/msecである。すなわち、1msecあたりに変化する速度リミット指令Vlimの大きさを表している。
【0094】
図31に示すように、本実施形態において、シフト量STは、速度リミット指令Vlimの大きさによって異なっている。本実施形態では、速度リミット指令Vlimが大きいほど、シフト量STは小さくなっている。これに限定されず、シフト量STは、速度リミット指令Vlimが大きいほど大きくなってもよいし、ある速度リミット指令Vlimの値で極大値又は極小値を持つように変化してもよい。速度指令値生成部104は、シフト量STに基づき、制御サイクル毎に速度リミット指令Vlimを変更することにより、速度リミット指令Vlimを時間の経過に従って変化させることができる。その結果、第1制御部101及び第2制御部102は、バッテリ式フォークリフト1が走行する際の加速度の制限を規定することができる。
【0095】
また、
図31には、4種類のシフト特性SP1、SP2、SP3、SP4が記載してある。シフト特性SP1、SP2、SP3、SP4は、この順に、同じ速度リミット指令Vlimにおけるシフト量STが小さくなっている。シフト特性SP1、SP2、SP3、SP4は、アクセル開度ACoによって選択される。本実施形態では、アクセル開度ACoが大きくなるにしたがって、シフト特性は、SP4、SP3、SP2、SP1の順に変化する。シフト量STを速度リミット指令Vlimに基づいて変化させることにより、外乱の影響等により、実走行速度Vrが速度リミット指令Vlimを超えた場合に、バッテリ式フォークリフト1の実際の加速度が、規定した加速度を超えてしまうことを回避できる。
【0096】
速度指令値生成部104が、シフト特性SP1、SP2等に基づいて速度リミット指令Vlimを変化させると、例えば、
図32に示すように、時間tに対して速度リミット指令Vlimが変化する。本実施形態では、時間tの経過に応じて速度リミット指令Vlimの絶対値が大きくなっている。
図32の実線で示すSP1、SP2は、それぞれシフト特性SP1、SP2に基づいて速度リミット指令Vlimを変化させた結果である。実線で示すSP1、SP2は、バッテリ式フォークリフト1がある実走行速度Vr(速度リミット指令Vlimに対応)に到達するまでに要する最短の時間を示している。
【0097】
本実施形態において、速度指令値生成部104は、第2制御部102の制御状態に応じて、速度リミット指令Vlimを増速方向に変化させるか、減速方向に変化させるかを決定する。第2制御部102の制御状態とは、第3トルク指令値Tciを生成するための制御の状態である。具体的には、牽引力曲線等に基づく第1トルク指令値Tcf又は速度リミット指令Vlimに基づく第2トルク指令値Tcsのいずれに従って第3トルク指令値Tciを生成するかという第2制御部102の処理の状態である。
【0098】
図33〜
図35は、第1制御部の速度指令値生成部が第2制御部の制御状態を判定する手法の一例を説明するための図である。
図36は、第2制御部が第1トルク指令値に従って走行用電動機を制御しているときにおける速度リミット指令の変更例を示す図である。第1制御部101の速度指令値生成部104、より具体的には、速度指令値シフト処理部104Bbは、第1トルク指令値Tcfと実走行速度Vrとに基づいて、判定用の速度(判定速度)Vjを求める。判定速度Vjは、
図33から、係数αと、第1トルク指令値Tcfと、実走行速度Vrとを用いて式(1)のように表すことができる。係数αは、速度リミット指令Vlimに基づいて第2トルク指令値Tcsを生成する際に使用したものである。
Vj=Tcf/α+Vr・・・(1)
【0099】
速度指令値シフト処理部104Bbは、判定速度Vjを求めたら、判定速度Vjと現在の制御サイクルにおける速度リミット指令Vlimとを比較する。
図34に示すように、判定速度Vj<速度リミット指令Vlimである場合、第2制御部102は、第1制御部101が生成した第1トルク指令値Tcfを第3トルク指令値Tciとして、走行用電動機50を制御していると判定する。
図35に示すように、判定速度Vj>速度リミット指令Vlimである場合、第2制御部102は、速度リミット指令Vlimに基づいて生成した第2トルク指令値Tcsを第3トルク指令値Tciとして、走行用電動機50を制御していると判定する。なお、速度指令値シフト処理部104Bbは、
図3に示す通信線110を介して第2制御部102の制御状態を直接取得してもよい。
【0100】
判定の結果、第2制御部102が第2トルク指令値Tcsに従って走行用電動機50を制御している場合、速度指令値シフト処理部104Bbは、シフト量決定部104Baが決定したシフト量ST分、第2速度リミット指令Vb(速度リミット指令Vlim)を、絶対値が増加する方向に変化させる。このようにすることで、第1制御部101及び第2制御部102は、シフト量STのシフト特性SP1、SP2等によって規定される加速度で、バッテリ式フォークリフト1を加速させることができる。
【0101】
判定の結果、第2制御部102が第1トルク指令値Tcfに従って走行用電動機50を制御している場合、速度リミット指令Vlimと現在の実走行速度Vrとの差(Vlim−Vr)が大きくなると、バッテリ式フォークリフト1のオペレータは、期待している加速が得られないと認識して、アクセルペダル37の踏み込みを増加させることがある。その結果、バッテリ式フォークリフト1の急加速を招く可能性がある。バッテリ式フォークリフト1の走行抵抗が大きい場合、十分な加速度が得られず、(Vlim−Vr)が大きくなることがある。
【0102】
このような場合、速度指令値シフト処理部104Bbは、次のように制御する。
図36に示すように、速度リミット指令Vlimと現在の実走行速度Vrとの差(Vlim−Vr)が所定の閾値(例えば、速度vc)以上になった場合、速度指令値シフト処理部104Bbは、速度リミット指令Vlimの絶対値を小さくする。このようにすると、速度リミット指令Vlimと現在の実走行速度Vrとの差が小さくなる。
【0103】
バッテリ式フォークリフト1が前進している場合、第1トルク指令値Tcfと第2トルク指令値Tcsとのうち小さい方に基づいて走行用電動機50が制御される。速度リミット指令Vlimと現在の実走行速度Vrとの差が小さくなると、速度リミット指令Vlimと実走行速度Vrとに基づく第2トルク指令値Tcsも小さくなる。このため、例えば、オペレータがアクセルペダル37の踏み込みを増加させた場合、牽引力曲線等に基づく第1トルク指令値Tcfは急激に増加するが、速度リミット指令Vlimに基づく第2トルク指令値Tcsの増加は抑えられるので、後者が選択される傾向が高くなる。その結果、速度リミット指令Vlimに基づく第2トルク指令値Tcsによる力行制御が実行され、かつ第2トルク指令値Tcsも急激には増加しないので、バッテリ式フォークリフト1の急加速が抑制される。
【0104】
図37は、バッテリ式フォークリフトが下り坂にいるときにアクセルペダルを開いた状態を示す図である。
図38は、バッテリ式フォークリフトが下り坂にいるときにアクセルペダルを開いた場合のおけるトルク指令値を説明するための図である。前述した坂道制御の実行中(
図13、
図14参照)、アクセルペダル37を踏み込んで開くことにより(ACo>0)、力行制御によって走行用電動機50が制御される。
【0105】
第1制御部101及び第2制御部102は、本実施形態に係る力行制御を実行するにあたり、
図37に示すような、速度リミット指令Vlimよりも実走行速度Vrが大きい場合、速度リミット指令Vlimに基づいて走行用電動機50を制御し、かつ時間の経過とともに速度リミット指令Vlimの絶対値が大きくなるようにする。このようにすることで、バッテリ式フォークリフト1に下り坂SLdを前進させるため、坂道制御において負のトルク(下り坂SLdを後進する方向のトルク)を発生していた走行用電動機50及び前輪11に正のトルクTwを発生させる。このとき、時間の経過とともに速度リミット指令Vlimの絶対値が大きくなるようにするので、走行用電動機50及び前輪11が発生するトルクの急激な反転が抑制される。その結果、本実施形態に係る力行制御は、バッテリ式フォークリフト1が下り坂SLdを力行して前進する場合の急加速を抑制することができる。
【0106】
本実施形態に係る力行制御は、アクセル開度ACoが0よりも大きいときには、時間の経過に応じて速度リミット指令Vlimを変更、より具体的には、時間の経過とともに絶対値が大きくなるようにする。このようにすることで、バッテリ式フォークリフト1の発進直後は、速度リミット指令Vlimに基づく第2トルク指令値Tcsによって走行用電動機50のトルクが制御されるので、急なトルクの上昇が抑制される。その結果、バッテリ式フォークリフト1が、発泡スチロール等の密度が低いために荷こぼれし易い搬送物を荷役する場合において、荷物を不安定にすることを抑制できる。また、時間の経過に応じて速度リミット指令Vlimが大きくなるので、バッテリ式フォークリフト1の発進後、ある程度時間が経過すれば、牽引力曲線等に基づく第1トルク指令値Tcfにより走行用電動機50のトルクが制御される。その結果、アクセルペダル37の操作に対する反応が向上するので、ドライバビリティが向上する。
【0107】
第2制御部102が速度リミット指令Vlimに基づいて第2トルク指令値Tcsを生成する場合、係数αを大きくすると、実走行速度Vrの変化が小さくても第2トルク指令値Tcsが急激に立ち上がるので、応答性が向上し、かつ設定された走行速度を実現しやすくなる。また、本実施形態は、通信線110で第1制御部101と第2制御部102とを接続し、第2制御部102内で第2トルク指令値Tcsを生成している。第1制御部101が速度リミット指令Vlimに基づいて第1トルク指令Tcfを生成する場合、第1制御部101からの指令に基づき走行用電動機50が出力されるまでには通信遅れが発生する。この場合、係数αを大きくすると、実走行速度Vrの変化が大きい場合には、第1制御部101の指令に基づき走行用電動機50から発生するトルク出力と、実際に出力したいトルクとの乖離が発生し、ハンチングを発生する可能性がある。このため、第1制御部101からの第1トルク指令Tcfは、通信の遅れによるハンチングを抑制するため、係数αを小さくする必要がある。これに対し、本実施形態は、第2制御部102内で第2トルク指令値Tcsを生成しているため、前述した通信の遅れを考慮する必要がない。その結果、係数αを大きくすることができる。
【0108】
以上、本実施形態を説明したが、上述した内容により本実施形態が限定されるものではない。また、上述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、上述した構成要素は適宜組み合わせることが可能である。さらに、本実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。