IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オカド・イノベーション・リミテッドの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-01-12
(54)【発明の名称】モーションデバイスの動き制御
(51)【国際特許分類】
   G05D 1/43 20240101AFI20240104BHJP
【FI】
G05D1/02 H
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023539009
(86)(22)【出願日】2021-12-21
(85)【翻訳文提出日】2023-08-08
(86)【国際出願番号】 EP2021087125
(87)【国際公開番号】W WO2022136454
(87)【国際公開日】2022-06-30
(31)【優先権主張番号】2020668.6
(32)【優先日】2020-12-24
(33)【優先権主張国・地域又は機関】GB
(31)【優先権主張番号】2020680.1
(32)【優先日】2020-12-24
(33)【優先権主張国・地域又は機関】GB
(31)【優先権主張番号】2020681.9
(32)【優先日】2020-12-24
(33)【優先権主張国・地域又は機関】GB
(31)【優先権主張番号】2020684.3
(32)【優先日】2020-12-24
(33)【優先権主張国・地域又は機関】GB
(81)【指定国・地域】
(71)【出願人】
【識別番号】515134368
【氏名又は名称】オカド・イノベーション・リミテッド
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ホルヘ、ティアゴ・ミゲンス・リホ・ブランコ
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301AA02
5H301AA09
5H301BB05
5H301CC03
5H301CC06
5H301CC10
5H301DD07
5H301EE02
5H301FF11
5H301GG12
5H301KK02
5H301KK03
5H301KK08
5H301KK09
5H301KK18
5H301KK19
(57)【要約】
モーションデバイスの移動を制御するために軌道を生成する方法であって、i)軌道の指定を受信することと、指定は、指令位置を備える、ii)少なくとも1つのジャーク制約を受信することと、iii)1つまたは複数の軌道セグメントのシーケンスを生成するために少なくとも1つのジャーク制約を使用することと、軌道セグメントの1つまたは複数の各々は、ジャークリファレンス、加速度リファレンス、速度リファレンス、および位置リファレンスを時間の関数として規定する上記の軌道のそれぞれの部分である、を備え、軌道セグメントのシーケンスのうちの1つまたは複数の軌道セグメントは、目標関数の根を求めるための求根アルゴリズムを用いてパラメータの値を予測することに基づいて生成され、目標関数は、速度リファレンスおよび加速度リファレンスが実質的にゼロであるときの位置リファレンスの大きさの指令位置からの位置偏差の量であり、根は、指令位置からの位置偏差が所定の閾値未満となるパラメータの値に対応する、方法。
【選択図】図15
【特許請求の範囲】
【請求項1】
モーションデバイスの移動を制御するために軌道を生成する方法であって、
i)前記軌道の指定を受信することと、ここで、前記指定は、指令位置を含み、
ii)少なくとも1つのジャーク制約を受信することと、
iii)1つ又は複数の軌道セグメントのシーケンスを生成するために前記少なくとも1つのジャーク制約を使用することと、ここで、軌道セグメントの前記1つ又は複数の各々は、ジャークリファレンス、加速度リファレンス、速度リファレンス、及び位置リファレンスを時間の関数として規定する前記軌道のそれぞれの部分であり、
を備え、
前記軌道セグメントのシーケンスのうちの前記1つ又は複数の軌道セグメントは、目標関数の根を求めるための求根アルゴリズムを用いてパラメータの値を予測することに基づいて生成され、前記目標関数は、前記速度リファレンス及び前記加速度リファレンスが実質的にゼロであるときの前記位置リファレンスの大きさの前記指令位置からの位置偏差の量であり、前記目標関数の根は、前記指令位置からの前記位置偏差が所定の閾値未満となる前記パラメータの値に対応する、方法。
【請求項2】
前記方法は、少なくとも1つの速度制約、少なくとも1つの加速度制約、及び/又は少なくとも1つの減速度制約を受信するステップをさらに備え、前記少なくとも1つの速度制約、前記少なくとも1つの加速度制約、前記少なくとも1つの減速度制約、及び前記少なくとも1つのジャーク制約は、1つ又は複数の軌道セグメントのシーケンスを生成するための複数の制約を定義する、請求項1に記載の方法。
【請求項3】
前記複数の制約のうちの少なくとも1つの値は、前記荷役装置の総質量の関数である、請求項2に記載の方法。
【請求項4】
前記少なくとも1つの速度制約、前記少なくとも1つの加速度制約、及び/又は前記少なくとも1つの減速度制約のうちのいずれか1つの値は、前記荷役装置の前記総質量に反比例する、請求項3に記載の方法。
【請求項5】
前記パラメータは、実質的に前記速度制約以下の値を有する前記速度リファレンスに対応する、請求項2から4のいずれか一項に記載の方法。
【請求項6】
前記軌道セグメントのシーケンスの1つ又は複数の軌道セグメントは、所与の時間の前記1つ又は複数の軌道セグメントの前記速度リファレンスの大きさを所望の最終速度リファレンスまで移動させることを含む速度遷移アルゴリズムを適用することによって生成され、前記所望の最終速度リファレンスと前記速度リファレンスとの間の差は、デルタVを定義し、
前記速度遷移アルゴリズムは、前記デルタVの関数である大きさを有するピーク加速度を計算することを備える、請求項5に記載の方法。
【請求項7】
前記1つ又は複数の軌道セグメントの各々は、開始点及び終端点を備え、前記1つ又は複数の軌道セグメントの各々の開始点は、初期位置リファレンスと、初期速度リファレンスと、初期加速度リファレンスとを備え、前記1つ又は複数の軌道セグメントの各々の終端点は、終端点位置リファレンスと、終端点速度リファレンスと、終端点加速度リファレンスとを備え、前記パラメータは、所望の最適な速度リファレンスを有する前記速度リファレンスの軌道点に基づく、請求項6に記載の方法。
【請求項8】
前記デルタVは、前記所望の最終速度リファレンスと前記1つ又は複数の軌道セグメントの前記初期速度リファレンス又は前記終端点速度リファレンスのいずれかとの間の差に基づく、請求項7に記載の方法。
【請求項9】
前記1つ又は複数の軌道セグメントを生成することは、
i)前記軌道の前記加速度リファレンスの大きさが前記計算されたピーク加速度と実質的に等しいかどうか、
ii)前記計算されたピーク加速度が実質的に前記加速度制約以下であるかどうか、及び/又は
iii)前記計算されたピーク加速度が前記加速度制約を超えるかどうか
に基づく、請求項7又は8に記載の方法。
【請求項10】
前記1つ又は複数の軌道セグメントは、前記所望の最終速度リファレンスが実質的にゼロとなるように前記少なくとも1つのジャーク制約を適用することによって生成される、請求項9に記載の方法。
【請求項11】
前記加速度リファレンスが前記計算されたピーク加速度と実質的に等しいことに応答して、前記1つ又は複数の軌道セグメントを生成することは、
i)前記1つ又は複数の軌道セグメントの前記初期加速度リファレンスが、前記計算されたピーク加速度と実質的に等しい大きさを有し、前記1つ又は複数の軌道セグメントのそれぞれの終端点加速度が、ゼロに実質的に等しい大きさを有し、前記終端点速度リファレンスが、前記所望の最終速度リファレンスと実質的に等しくなるように前記少なくとも1つのジャーク制約を適用するステップを備える、請求項9又は10に記載の方法。
【請求項12】
前記計算されたピーク加速度が前記加速度制約以下であることに応答して、1つ又は複数の軌道セグメントを生成することは、
i)第1の軌道セグメントの終端点加速度リファレンスが前記ピーク加速度に実質的に等しい大きさを有するように前記少なくとも1つのジャーク制約を適用することによって前記第1の軌道セグメントを生成するステップと、
ii)前記第1の軌道セグメントの終端点が第2の軌道セグメントの開始点に割り当てられ、前記第2の軌道セグメントの終端点加速度の大きさがゼロに実質的に等しく、前記第2の軌道セグメントの終端点速度リファレンスが前記所望の最終速度リファレンスと実質的に等しくなるように前記少なくとも1つのジャーク制約を適用することによって前記第2の軌道セグメントを生成するステップと
を備える、請求項9から11のいずれか一項に記載の方法。
【請求項13】
前記ピーク加速度の大きさが前記加速度制約を超えることに応答して、1つ又は複数の軌道セグメントを生成することは、
i)前記第1の軌道セグメントの前記終端点加速度リファレンスが前記加速度制約に実質的に等しい大きさを有するように少なくとも1つのジャーク制約を適用することによって前記第1の軌道セグメントを生成するステップと、
ii)前記第1の軌道セグメントの前記終端点が前記第2の軌道セグメントの前記開始点に割り当てられ、前記第2の軌道セグメントの前記終端点加速度リファレンスの大きさが前記加速度制約に実質的に等しくなるように実質的にゼロの大きさを有する前記少なくとも1つのジャーク制約を適用することによって前記第2の軌道セグメントを生成するステップと、
iii)前記第2の軌道セグメントの前記終端点が第3の軌道セグメントの開始点に割り当てられ、前記第3の軌道セグメントの終端点加速度リファレンスの大きさがゼロに実質的に等しく、前記第3の軌道セグメントの終端点速度リファレンスが前記所望の最終速度リファレンスと実質的に等しくなるように前記少なくとも1つのジャーク制約を適用することによって第3の軌道セグメントを生成するステップと
を備える、請求項9から12のいずれか一項に記載の方法。
【請求項14】
前記1つ又は複数の軌道セグメントは、前記軌道加速度リファレンスの大きさが実質的に前記加速度制約未満であることに応答して生成される、請求項13に記載の方法。
【請求項15】
前記ピーク加速度の大きさが前記加速度制約を超えることに応答して、1つ又は複数の軌道セグメントを生成することは、
i)前記第1の軌道セグメントの前記終端点加速度リファレンスが前記加速度制約に実質的に等しい大きさを有するように実質的にゼロの大きさを有する前記少なくとも1つのジャーク制約を適用することによって第1の軌道セグメントを生成するステップと、
ii)前記第1の軌道セグメントの前記終端点が前記第2の軌道セグメントの前記開始点に割り当てられ、前記第2の軌道セグメントの前記終端点加速度の大きさがゼロに実質的に等しく、前記第2の軌道セグメントの前記終端点速度が前記所望の最終速度リファレンスと実質的に等しくなるように前記少なくとも1つのジャーク制約を適用することによって前記第2の軌道セグメントを生成するステップと
を備える、請求項9から14のいずれか一項に記載の方法。
【請求項16】
前記1つ又は複数の軌道セグメントは、前記軌道加速度リファレンスの大きさが前記加速度制約に実質的に等しいことに応答して生成される、請求項15に記載の方法。
【請求項17】
前記速度遷移アルゴリズムを適用することは、
i)前記加速度リファレンスの大きさが前記加速度制約を超えること、及び/又は
ii)前記軌道が前記所望の最終速度リファレンスの値から遠ざかるように加速していること、及び/又は
iii)前記軌道が前記所望の最終速度リファレンスの値をオーバシュートすること
に応答して1つ又は複数の軌道セグメントを生成するステップをさらに備える、請求項7から16のいずれか一項に記載の方法。
【請求項18】
前記軌道加速度リファレンスの大きさが前記加速度制約を超えることに応答して、1つ又は複数の軌道セグメントを生成することは、前記1つ又は複数の軌道セグメントの終端点加速度リファレンスが前記加速度制約の大きさに実質的に等しい大きさを有するように前記少なくとも1つのジャーク制約を適用するステップを備える、請求項17に記載の方法。
【請求項19】
i)前記デルタVの大きさがゼロに実質的に等しく、前記軌道加速度リファレンスの大きさがゼロに実質的に等しくないかどうかを決定するステップ、及び/又は
ii)前記デルタVの大きさと前記軌道加速度リファレンスの大きさの積が実質的にゼロ未満であるかどうかを決定するステップ
によって前記軌道が前記所望の最終速度リファレンスの値から遠ざかるように加速しているかどうかを決定するステップと、
ステップ(i)又は(ii)のいずれかがイエスである場合に、前記1つ又は複数の軌道セグメントの前記終端点加速度リファレンスがゼロに実質的に等しい大きさを有するように前記少なくとも1つのジャーク制約を適用することによって1つ又は複数の軌道セグメントを生成するステップと
をさらに備える、請求項17又は18に記載の方法。
【請求項20】
前記軌道が前記所望の最終速度をオーバシュートすることに応答して、1つ又は複数の軌道セグメントを生成することは、
i)仮の軌道セグメントの終端点加速度リファレンスの大きさが実質的にゼロになるように前記少なくとも1つのジャーク制約を適用することによって前記仮の軌道セグメントを計算するステップ、ここで、前記仮の軌道セグメントは、初期位置リファレンス、初期速度リファレンス、及び初期加速度リファレンスを備える開始点と、終端点位置リファレンス、終端点速度リファレンス、及び前記終端点加速度リファレンスを備える終端点とを備え、
ii)前記所望の最終速度リファレンスと前記仮の軌道セグメントの前記終端点速度リファレンスとの間の差に対応する補助デルタVを計算するステップ、及び
iii)前記デルタVと前記補助デルタVの積が実質的にゼロ未満である場合には前記仮の軌道セグメントを軌道セグメントの前記シーケンスに組み込み、そうでない場合には前記仮の軌道セグメントを無視するステップ
を備える、請求項17から19のいずれか一項に記載の方法。
【請求項21】
前記加速度リファレンスは、減速度リファレンスをさらに含み、前記加速度制約は、上側減速度制約及び下側減速度制約を有する減速度制約をさらに含み、軌道セグメントの前記シーケンス中の前記1つ又は複数の軌道セグメントは、前記減速度制約の前記上側制約及び前記下側制約内の、又は前記減速度制約の前記上側制約又は前記下側制約のいずれかに等しい、時間の関数としての少なくとも1つの減速度リファレンスをさらに規定するようになっている、請求項7から20のいずれか一項に記載の方法。
【請求項22】
前記少なくとも1つのジャーク制約は、
i)前記加速度リファレンスの大きさを増加させるための第1のジャーク制約と、
ii)前記加速度リファレンスの大きさを減少させるための第2のジャーク制約と、
iii)前記減速度リファレンスの大きさを増加させるための第3のジャーク制約と、
iv)前記減速度リファレンスの大きさを減少させるための第4のジャーク制約と
を含む、請求項21に記載の方法。
【請求項23】
i)前記1つ又は複数の軌道セグメントの前記終端点減速度リファレンスがゼロに実質的に等しい大きさを有するように、前記軌道速度の大きさが増加することに応答して前記少なくとも1つのジャーク制約を適用することによって1つ又は複数の軌道セグメントを生成するステップ、及び/又は
ii)前記1つ又は複数の軌道セグメントの前記終端点減速度リファレンスが上側減速度制約に実質的に等しい大きさを有するように、前記減速度リファレンスの大きさが前記上側減速度制約より実質的に大きいことに応答して前記少なくとも1つのジャーク制約を適用することによって1つ又は複数の軌道セグメントを生成するステップ
によって前記軌道に強制減速アルゴリズムを適用するステップをさらに備える、請求項21又は22に記載の方法。
【請求項24】
前記方法は、
i)前記1つ又は複数の軌道セグメントの前記終端点加速度リファレンスの大きさがゼロに実質的に等しく、前記1つ又は複数の軌道セグメントの前記終端点速度リファレンスが前記所望の最終速度リファレンスに実質的に等しくなるように、前記上側減速度制約に実質的に等しい大きさを有する前記減速度制約に基づいて1つ又は複数の軌道セグメントを生成するために前記速度遷移アルゴリズムを提供するステップ
をさらに備える、請求項21から23のいずれか一項に記載の方法。
【請求項25】
i)対応する終端点減速度リファレンスの大きさがゼロに実質的に等しく、対応する終端点速度リファレンスが前記所望の最終速度リファレンスに実質的に等しいときに、前記1つ又は複数の軌道セグメントの終端点位置リファレンスが前記指令位置をオーバシュートするかどうかを決定するステップと、
ii)前記軌道が前記指令位置をオーバシュートすることに応答して、前記指令位置において前記終端点加速度リファレンスの大きさがゼロに実質的に等しく、前記1つ又は複数の軌道セグメントの前記終端点速度リファレンスが前記所望の最終速度リファレンスに実質的に等しくなるように前記1つ又は複数の軌道セグメントを生成するために前記速度遷移アルゴリズムを適用することによって、前記軌道を前記指令位置に戻すための1つ又は複数の軌道セグメントを生成するために「逆進」を適用するステップと
をさらに備える、請求項24に記載の方法。
【請求項26】
i)前記1つ又は複数の軌道セグメントの対応する終端点減速度リファレンスの大きさが実質的にゼロであり、対応する終端点速度リファレンスが前記所望の最終速度リファレンスに実質的に等しいときに、前記軌道の前記1つ又は複数の軌道セグメントの終端点位置リファレンスが前記指令位置をアンダーシュートするかどうかを決定するステップと、
ii)前記軌道が前記指令位置をアンダーシュートすることに応答して、前記下側減速度制約に実質的に等しい大きさを有する減速度制約に基づいて前記1つ又は複数の軌道セグメントを生成するために前記速度遷移アルゴリズムを適用するステップと
によって1つ又は複数の軌道セグメントを生成するステップをさらに備える、請求項21から25のいずれか一項に記載の方法。
【請求項27】
i)前記求根アルゴリズムを用いて前記上側強制減速制約と前記下側強制減速制約との間の値を有する最適な強制減速制約に対応するパラメータを予測するステップと、
ii)前記1つ又は複数の軌道セグメントの前記終端点位置リファレンスの前記指令位置からの前記位置偏差の大きさが前記所定の閾値未満であるときに前記終端点加速度リファレンスの大きさがゼロに実質的に等しく、前記1つ又は複数の軌道セグメントの前記終端点速度リファレンスが前記所望の最終速度リファレンスに実質的に等しくなるように、前記最適な強制減速制約に実質的に等しい減速度制約を用いて前記1つ又は複数の軌道セグメントを生成するために前記速度遷移アルゴリズムを適用するステップと
によって1つ又は複数の軌道セグメントを生成するステップをさらに備える、請求項21から26のいずれか一項に記載の方法。
【請求項28】
前記速度遷移アルゴリズムは、前記速度遷移アルゴリズムが前記求根アルゴリズムによって予測される連続したパラメータの各々について1つ又は複数の軌道セグメントを生成するように、前記求根アルゴリズム内に入れ子にされる、請求項7から27のいずれか一項に記載の方法。
【請求項29】
前記1つ又は複数の軌道セグメントの前記終端点位置リファレンス、前記終端点速度リファレンス、及び前記終端点加速度リファレンスが前記シーケンス中の1つ又は複数の後続の軌道セグメントの初期位置リファレンス、初期速度リファレンス、及び初期加速度リファレンスにそれぞれ割り当てられるように前記1つ又は複数の軌道セグメントの各々の終端点を前記シーケンス中の前記1つ又は複数の後続の軌道セグメントの開始点に割り当てるステップをさらに備える、請求項7から28のいずれか一項に記載の方法。
【請求項30】
前記1つ又は複数の軌道セグメントがS曲線の数式を用いて生成されるように、前記軌道はS字型である、請求項1から29のいずれか一項に記載の方法。
【請求項31】
前記少なくとも1つのジャーク制約を適用することによって前記1つ又は複数の軌道セグメントを生成することにより、軌道セグメントの前記シーケンス中の前記1つ又は複数の軌道セグメントについて時間の関数として連続的に変化する加速度リファレンスを定義する軌道を生成する、請求項1から30のいずれか一項に記載の方法。
【請求項32】
モーションデバイスの移動を制御するために軌道を生成する軌道生成器であって、
i)メモリと、
ii)メモリ上に記憶されたコンピュータ実行可能命令を実行するように構成されたプロセッサと、ここで、前記プロセッサは、指令位置を受信すると、請求項1から31のいずれか一項に記載の方法によって動き制御プロファイルを生成するように構成される、
を備える、軌道生成器。
【請求項33】
第1の車輪対及び第2の車輪対を備える車輪アセンブリと、前記車輪アセンブリを駆動するための駆動機構と、請求項1から31のいずれか一項に記載の方法によって生成される動き制御プロファイルに従って前記車輪アセンブリを駆動するように命令される前記駆動機構に接続された制御装置とを備える、荷役装置。
【請求項34】
実行に応答してコンピュータシステムに請求項1から31のいずれか一項に記載の動作を実行させるコンピュータ実行可能命令を記憶している、非一時的コンピュータ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビンまたは容器のスタックがグリッドフレームワーク構造内に配置される保管またはフルフィルメントシステムの分野に関し、さらに詳細には、保管またはフルフィルメントシステムに保管された1つまたは複数の容器を移動させるように動作可能な荷役装置の動きの生成および制御に関する。
【背景技術】
【0002】
その中で保管容器/ビンが互いに上下に積み重ねられる3次元保管グリッド構造を備える保管システムは周知である。PCT公開第WO2015/185628A号(Ocado)には、ビンまたは容器のスタックがグリッドフレームワーク構造内に配置される既知の保管およびフルフィルメントシステムが記載されている。ビンまたは容器は、グリッドフレームワーク構造の最上部に位置するトラック上で動作可能な荷役装置(ボットとも呼ばれる)によってアクセスされる。このタイプのシステムが、添付の図面のうちの図1から図3に概略的に示されている。
【0003】
図1および図2に示されるように、保管容器またはトートもしくはビン10と呼ばれる積み重ね可能な容器が互いに上下に積み重ねられて、スタック12を形成する。スタック12は、入庫または製造環境においてグリッドフレームワーク構造14内に配置される。グリッドフレームワーク構造は、複数の保管列またはグリッド列で構成される。グリッドフレームワーク構造の各グリッドは、容器のスタックの保管のために少なくとも1つのグリッド列を有する。図1は、グリッドフレームワーク構造14の概略斜視図であり、図2は、フレームワーク構造14内に配置されたビン10のスタック12を示す上面図である。各ビン10は、通常は、複数の製品品目(図示せず)を保持し、ビン10内の製品項目は、同じであることもあるし、適用業務によっては異なる製品タイプであることもある。
【0004】
グリッドフレームワーク構造14は、水平部材18、20を支持する複数の直立部材16を備える。第1のセットの平行水平グリッド部材18は、グリッドパターンで第2のセットの平行水平部材20と直交するように配置されて、直立部材16によって支持される複数の水平グリッド構造15を構成する。部材16、18、20は、通常は金属で製造される。ビン10は、グリッドフレームワーク構造14の部材16、18,20の間に積み重ねられるので、グリッドフレームワーク構造14は、ビン10のスタック12の水平移動を防止し、ビン10の垂直移動を案内する。
【0005】
グリッドフレームワーク構造14の最上レベルは、スタック12の上部を横切ってグリッドパターンで配置されたレール22を含むグリッドまたはグリッド構造15を備える。さらに図3を参照すると、レールまたはトラック22は、複数の荷役装置30を案内する。第1のセット22aの平行レール22は、グリッドフレームワーク構造14の上部を横切る第1の方向(たとえばX方向)のロボット荷役装置30の移動を案内し、第1のセット22aに対して直交して配置された第2のセット22bの平行レール22は、第1の方向に直交する第2の方向(たとえばY方向)のロボット荷役装置30の移動を案内する。このようにして、レール22は、ロボット荷役装置30が水平なX-Y平面内で2つの方向に横方向に移動することを可能にするので、荷役装置30は、任意のスタック12の上方の適所に移動させることができる。
【0006】
車両本体32を備える図4および図5に示される既知の荷役装置30は、参照により本明細書に組み込まれるPCT特許公開第WO2015/019055(Ocado)に記載されており、ここでは、各荷役装置30は、グリッドフレームワーク構造14の1つのグリッドスペースしかカバーしない。ここで、荷役装置30は、デバイスの第1の方向の移動を案内するために第1のセットのレールまたはトラックと係合する、車両本体32の前部の車輪の対および車両本体32の後部の車輪34の対からなる第1のセットの車輪34と、デバイスの第2の方向の移動を案内するために第2のセットのレールまたはトラックと係合する、車両本体32の各側の車輪36の対からなる第2のセットの車輪36とを備える車輪アセンブリを備える。車輪のセットの各々は、レールに沿ってそれぞれX方向およびY方向の車両の移動を可能にするように駆動される。車輪の各セットをそれぞれのレールから持ち上げることによって車両がグリッド上で所望の方向に移動できるようにするために、一方または両方の車輪のセットを垂直に動かすことができる。
【0007】
荷役装置30は、保管容器を上から持ち上げるために昇降装置またはクレーン機構を備える。クレーン機構は、スプールまたはリール(図示せず)に巻き付けられたウィンチテザーまたはケーブル38と、掴みデバイス39とを備える。昇降装置は、保管容器10と解除可能に接続するための掴みデバイス(掴みデバイスの4隅の各々の付近に1本のテザー)と呼ばれる、昇降フレーム39の4隅またはその付近に接続された、垂直方向に延びる吊り上げテザー38のセットを備える。掴みデバイス39は、保管容器10の上部を解除可能に把持して、図1および図2に示されるタイプの保管システム内の容器のスタックから保管容器を持ち上げるように構成される。1つまたは複数のモータは昇降装置に電力を供給するために使用され得る。
【0008】
車輪34、36は、下側部分の容器受け凹部または容器受けスペース40と呼ばれる空洞または凹部の周りに配置される。この凹部は、図5(aおよびb)に示されるように、容器10がクレーン機構によって持ち上げられたときに容器10を収容するようなサイズになっている。凹部内にあるときには、容器は下にあるレールから持ち上げられているので、車両は横方向に異なる位置に移動することができる。たとえば別のスタック、保管システム内のアクセス点、またはコンベヤベルトなどの目標位置に到達したら、ビンまたは容器を容器受け部分から降下させて、掴みデバイスから解放することができる。
【0009】
通常は、グリッド構造上で遠隔操作可能な1つまたは複数の荷役装置は、グリッドフレームワーク構造内の特定の保管位置から保管容器を取り出すためにマスタ制御装置から命令を受信するように構成される。マスタ制御装置から1つまたは複数の基地局を経由してグリッド構造上で動作可能な1つまたは複数の荷役装置までの通信インフラストラクチャを提供するために、ワイヤレス通信およびネットワークが使用され得る。荷役装置内の制御装置は、命令を受信したのに応答して、荷役装置の移動を制御するために様々な駆動機構を制御するように構成される。たとえば、荷役装置は、グリッド構造上の特定の位置にある保管列から容器を取り出すように命令されることがある。命令は、グリッド構造上のX-Y方向の様々な移動を含むことができる。保管列に着いたら、次いで昇降機構が、保管容器を掴み、保管容器を持ち上げて荷役装置の本体内の容器受けスペースに入れるように操作され、ここで、その後にグリッド構造上のドロップオフポートと一般に呼ばれる別の位置に輸送される。保管容器は、保管容器からの品目の取出しを可能にするように適当なピッキングステーションまで降下される。グリッド構造上の荷役装置の移動は、荷役装置が、通常はグリッド構造の周辺部に位置する充電ステーションまで移動するように命令されることも含む。
【0010】
制御装置がグリッド構造に対する荷役装置の位置を突き止めることを可能にするために、各荷役装置は、1つまたは複数のRFIDタグリーダまたはスキャナを備えることがあり、複数のRFIDタグが、グリッド構造の上部にわたって設けられることがある。RFIDタグは、グリッド構造上の一連の参照点を提供するように、グリッド構造に対して相対的に固定されることがある。荷役装置がグリッド構造を横切って移動すると、荷役装置それぞれのRFIDタグリーダがグリッド構造上の様々な位置に固定されたRFIDタグのうちの1つまたは複数からの信号を読み取る。通常は、RFIDタグは、各グリッドセルにおけるトラックの接合部または交差点に固定される。
【0011】
荷役装置をグリッド構造上で1つの行き先から別の行き先まで操縦するために、各荷役装置は、荷役装置の車輪を駆動するためのモータを備える。車輪の回転は、車輪に接続された1つまたは複数のベルトによって駆動されることもあるし、あるいは車輪に一体化されたモータによって個別に駆動されることもある。通常は、荷役装置の設置面積が1つのグリッドセルを占める単一セル荷役装置では、車両本体内のスペースの可用性が限られているので、車輪を駆動するためのモータは車輪に一体化される。単一セル荷役装置の車輪は、ハブモータによって駆動される。各ハブモータは、内側ステータを構成するコイルを備える車輪ハブの周りで回転するように配置された複数の永久磁石を備える外側ロータを備える。
【0012】
単一セル荷役装置の主な欠点のうちの1つは、特にトラック上の荷役装置の加速/減速中に問題を呈する、トラック上を移動するときの荷役装置の安定性である。トラック上での高い加速度または減速度は、グリッド構造上での荷役装置の振動または転倒を引き起こすこともある。通常は、荷役装置の車輪の回転は、荷役装置がその所期のコースから偏揺れまたは逸脱せずにトラック上を直線状に駆動されるように、個別に制御される。
【0013】
車輪は同じサイズであるので、車輪は、一般に荷役装置がトラック上を移動するときに同じスピードで回転する。しかし、トラック上の荷役装置の移動の滑らかさに影響を及ぼし得、荷役装置がオフリード(off-lead)角で偏揺れする、または駆動される可能性を高くし得るいくつかの要因がある。このような要因は、1つまたは複数の車輪のスリップ、車輪のうちの1つまたは複数の滑走および/または装荷が異なることを含み得、これらが全て、車輪のうちの1つまたは複数が異なるスピードで回転する一因となる。さらに、ジャーク(jerk:加加速度)とも呼ばれるトラック上の荷役装置の突然の加速度変化も、トラック上の荷役装置の移動の滑らかさに影響を及ぼす。食料品など、傷みやすい、または損傷しやすい品目を搬送するときには、加速または減速するときのこの荷役装置の突然の動きにより、品目が保管容器内でまき散らされる可能性がある。
【0014】
EP3535633(Autostore Technology AS)は、開始位置から停止位置までのロボットの移動を制御するための方法および制御装置を教示しており、このロボットは、ローカル制御装置によって制御される駆動手段を有する車輪の対を有する。ここで、マスタ制御装置は、各車輪の現在のスピードおよび角位置、ロボットの現在の大域的位置、ならびにロボットの開始位置および停止位置に基づいて車輪の対について個別のスピード駆動シーケンスを設定するように構成される。スピード駆動シーケンスは、車輪の対を制御するローカル制御装置に送信され、それにより個々の駆動手段を介する各車輪の加速および減速を制御する。EP3535633(Autostore Technology AS)では、ローカル制御装置は、車輪の対のスピードが同期状態に保たれることを保証する。このように、EP3535633(Autostore Technology AS)の教示は、車輪の個々のスピードを制御し、車輪の対のスピードが同期していることを保証することに非常に注目している。
【0015】
したがって、本発明の目的は、グリッド構造上で異なるスピード間で遷移するときに荷役装置の滑らかな移動を保証することを目的として開始位置から停止位置までの荷役装置の移動を制御するための方法およびデバイスを提供することである。
【0016】
本願は、参照によりその内容が本明細書に組み込まれる、全て2020年12月24日に出願されたGB出願GB2020680.1、GB2020668.6、GB2020681.9、およびGB2020684.3の優先権を主張する。
【発明の概要】
【0017】
本発明は、制約に基づく時間最適な動き制御プロファイル、さらに詳細には時間最適な2点間移動を実現するために制御システム内でリアルタイムで生成される動き制御プロファイルを効率的に生成するためのシステムおよび方法を提供することによって、上記の問題を緩和した。滑らかで正確な2点間移動を実現するために、本発明は、S曲線プロファイルに基づいて軌道または動き制御プロファイルを計算する軌道生成器または動き制御生成器を提供する。軌道生成器は、動き制御プロファイルの少なくとも1つの加速または減速セグメントについての経時的に連続したジャークリファレンスを有するプロファイルを生成する。時間変化するジャークリファレンスを含む動き制御プロファイルを計算することにより、本発明の軌道生成器は、滑らかで安定した動きを生じることができる。
【0018】
さらに詳細には、本発明は、モーションデバイスの移動を制御するために軌道を生成する方法であって、
i)軌道の指定を受信することと、指定は、指令位置を備える、
ii)少なくとも1つのジャーク制約を受信することと、
iii)1つまたは複数の軌道セグメントのシーケンスを生成するために少なくとも1つのジャーク制約を使用することと、1つまたは複数の軌道セグメントの各々は、ジャークリファレンス、加速度リファレンス、速度リファレンス、および位置リファレンスを時間の関数として規定する上記の軌道のそれぞれの部分である、
を備え、
軌道セグメントのシーケンスのうちの1つまたは複数の軌道セグメントは、目標関数の根を求めるための求根アルゴリズムを用いてパラメータの値を予測することに基づいて生成され、目標関数は、速度リファレンスおよび加速度リファレンスが実質的にゼロであるときの位置リファレンスの大きさの指令位置からの位置偏差の量であり、根は、指令位置からの位置偏差が所定の閾値未満となるパラメータの値に対応する、方法を提供する。
【0019】
好ましくは、この方法は、少なくとも1つの速度制約、少なくとも1つの加速度制約、および/または少なくとも1つの減速度制約を受信するステップをさらに備え、前記少なくとも1つの速度制約、少なくとも1つの加速度制約、少なくとも1つの減速度制約、および少なくとも1つのジャーク制約は、1つまたは複数の軌道セグメントのシーケンスを生成するための複数の制約を定義する。
【0020】
任意選択で、複数の制約のうちの少なくとも1つの値は、荷役装置の総質量の関数である。
【0021】
任意選択で、少なくとも1つの速度制約、少なくとも1つの加速度制約、および/または少なくとも1つの減速度制約のうちのいずれか1つの値は、荷役装置の総質量に反比例する。
【0022】
好ましくは、求根方法は、ニュートンの求根法、セカントの求根法、二分求根法、補間による求根法、逆補間による求根法、ブレントの求根法、ブダン-フーリエによる求根法、およびストラムチェーン(Strum-chain)による求根法のうちの1つである。
【0023】
本発明では、「位置リファレンス」および「位置」という用語は、同じ特徴を意味するものとして入れ替え可能に使用されている。同様に、「速度リファレンス」および「速度」という用語も同じ特徴を意味するものとして入れ替え可能に使用されており、「加速度リファレンス」および「加速度」という用語も同じ特徴を意味するものとして入れ替え可能に使用されており、「ジャークリファレンス」および「ジャーク」という用語も同じ特徴を意味するものとして入れ替え可能に使用されている。好ましくは、所定の閾値は、たとえば指令位置において実質的にゼロである。
【0024】
好ましくは、1つまたは複数の軌道セグメントの各々は、開始点および終端点を備え、1つまたは複数の軌道セグメントの各々の開始点は、初期位置リファレンスと、初期速度リファレンスと、初期加速度リファレンスとを備え、1つまたは複数の軌道セグメントの各々の終端点は、終端点位置リファレンスと、終端点速度リファレンスと、終端点加速度リファレンスとを備え、パラメータは、所望の最適な速度リファレンスの値を有する速度リファレンスの軌道点に基づく。
【0025】
任意の点における軌道の値である軌道点は、開始点または終端点における軌道の点とすることができる。したがって、パラメータは、初期速度リファレンスまたは終端点リファレンスとすることができる。求根アルゴリズムは、軌道が指令位置にぴったり到達することができるように最適なパラメータを発見するために利用される。本発明では、指令位置上に「ぴったり到達する」、または指令位置「に」「ぴったり到達する」は、指令位置からの位置偏差が5mm未満、さらに好ましくは1mm未満、さらに好ましくは0.5mm未満となる軌道の位置リファレンスをカバーする。
【0026】
さらに好ましくは、パラメータは、実質的に速度制約以下の値を有する速度リファレンスに対応する。
【0027】
最適な速度リファレンスは、軌道の制約内で軌道を指令位置まで下げることができるような大きさを有する速度リファレンスを表す。
【0028】
好ましくは、軌道セグメントのシーケンスの1つまたは複数の軌道セグメントは、所与の時間の1つまたは複数の軌道セグメントの速度リファレンスの大きさを所望の最終速度リファレンスまで移動させることを備える速度遷移アルゴリズムを適用することによって生成され、所望の最終速度リファレンスと速度リファレンスとの間の差は、デルタVを定義し、
速度遷移アルゴリズムは、デルタVの関数である大きさを有するピーク加速度を計算することを備える。
【0029】
本発明では、「移動させる」という用語は、「フィッティングする」をカバーする。有限ジャーク(S曲線)軌道を生成するプロセスは、本発明で速度遷移アルゴリズムと呼ばれるものを解くことに大きく依拠する。軌道は、S曲線の数式を用いて複数の制約に基づいて生成される。軌道を生成するときに1つまたは複数の軌道セグメントを生成するプロセスは、S曲線の軌道の数式を適用することを含む。軌道加速度の大きさと、軌道が指令位置をオーバシュートまたはアンダーシュートするかどうかとを考慮しながら2点間移動についての動き制御プロファイルまたは軌道プロファイルを考案して、本発明は、初期軌道点から所望の最終速度vfに到達し、軌道加速度の大きさが実質的にゼロになる点まで軌道をもっていくために必要な軌道セグメントを決定するための速度遷移アルゴリズムを考案した。所望の最終速度vfに到達するためには、軌道加速度の大きさは、実質的にゼロにもっていかれる必要があり、そうでなければ、軌道は所望の最終速度vfから遠ざかるように加速することになる。速度遷移アルゴリズムの重要な特徴は、所望の最終速度リファレンスvfと初期速度リファレンスv0の大きさの間の差、すなわちΔv=vf-v0を表すあるデルタVのそれである。速度リファレンスの値は、軌道に沿った任意の点で評価されることが可能であり、速度遷移アルゴリズムが適用される軌道中の点によって決まる。たとえば、最初に軌道の始点では、速度リファレンスv0は、初期速度リファレンスとすることができ、あるいは所望の最終速度vfに移行する前に1つまたは複数の軌道セグメントが生成されることが必要である(すなわちi)過剰な加速度、ii)軌道が所望の最終速度リファレンスvfから離れるように加速すること、iii)軌道が所望の最終速度リファレンスvfをオーバシュートすること、に対処する)場合には、デルタVvの決定における速度リファレンスは、所望の最終速度リファレンスvfに移行する時の最後または直前の軌道セグメントにおける終端点速度リファレンスvEである。
【0030】
したがって、デルタV Δvの値は、本発明による速度遷移アルゴリズムが軌道中のどこで適用されているかによって変化する可能性がある。好ましくは、デルタVは、所望の最終速度リファレンスと1つまたは複数の軌道セグメントの初期速度リファレンスまたは終端点速度リファレンスのいずれかとの間の差に基づく。
【0031】
本発明では、デルタV Δvがピーク加速度apeakと関係していることを認識している。ピーク加速度は、初期加速度リファレンスa0から実質的にゼロの加速度までの仮想三角形加速度軌道から決定される。すなわち、
【0032】
【数1】
【0033】
であり、ここで、
peakは、ピーク加速度であり、
incは、加速度の大きさを増加させるためのジャーク制約の値であり、
decは、加速度の大きさを減少させるためのジャーク制約の値であり、
Δvは、デルタVである。
【0034】
計算されるピーク加速度の大きさがデルタVから決定されるようにすることにより、初期速度リファレンスv0から所望の速度リファレンスvfまで遷移するために必要な軌道セグメントが決定されることが可能である。所望の最終速度vfは、軌道を速度v0から所望の最終速度vfまで移動させるための任意の値とすることができる。
【0035】
たとえば、2点間移動では、速度遷移アルゴリズムは、複数の所望の最終速度リファレンスvfに遷移するために複数回利用されることもある。本発明では、「移動させる」という用語は、「フィッティングする」をカバーする。有限ジャーク(S曲線)軌道を生成するプロセスは、本発明で速度遷移アルゴリズムと呼ばれるものを解くことに大きく依拠する。これは、ゼロ速度に遷移する前に所望のピーク速度vpeakに遷移すること、すなわち連続した速度遷移を含むことがある。所与の移動の最後の速度遷移は、軌道を停止させるためにvf=0を有することになる。本発明では、「対応する」という用語は、「比例する」も包含する。
【0036】
好ましくは、この方法は、
i)軌道の加速度リファレンスの大きさが計算されたピーク加速度と実質的に等しいかどうか、
ii)計算されたピーク加速度が実質的に加速度制約以下であるかどうか、および/あるいは
iii)計算されたピーク加速度が実質的に加速度制約を超えるかどうか
に基づいて1つまたは複数の軌道セグメントを生成するステップを備える。
【0037】
ピーク加速度apeakの大きさが計算されたら、好ましくは、1つまたは複数の軌道セグメントが、所望の最終速度リファレンスの大きさに到達するように少なくとも1つのジャーク制約を適用することによって生成される。任意選択で、所望の最終速度リファレンスvfは、実質的にゼロである。ただし、上記に定義された3つの可能性のうちの1つが真であることがある。これら3つの可能性に対処するために、1つまたは複数の軌道セグメントを生成するために以下のステップが計算される。
【0038】
軌道加速度リファレンスの大きさがピーク加速度の大きさに実質的に等しい、すなわち|a0|=|apeak|である場合には、軌道は既にピーク加速度であるので、軌道速度リファレンスの大きさが所望の最終速度vfに到達するためには、軌道加速度の大きさをゼロまで下げるだけでよい。軌道の加速度リファレンスの大きさが計算されたピーク加速度に実質的に等しいことに対処するためには、好ましくは、
i)1つまたは複数の軌道セグメントの初期加速度リファレンスが、計算されたピーク加速度と実質的に等しい大きさを有し、1つまたは複数の軌道セグメントのそれぞれの終端点加速度が、ゼロに実質的に等しい大きさを有し、終端点速度リファレンスが、所望の最終速度リファレンスと実質的に等しくなるように少なくとも1つのジャーク制約を適用するステップ
によって1つまたは複数の軌道セグメントが生成される。
【0039】
ピーク加速度の大きさが実質的に加速度制約の大きさ以下である、すなわち|apeak|≦amaxである場合には、軌道加速度の大きさは、依然として|apeak|まで増加させることができ、その後実質的にゼロまで下げる必要があり、この点で、所望の最終速度vfが満たされる。軌道セグメントのシーケンスの1つまたは複数の軌道セグメントの計算されたピーク加速度が加速度制約以下であることに対処するために、任意選択で、この方法は、
i)第1の軌道セグメントの終端点加速度リファレンスがピーク加速度に実質的に等しい大きさを有するように少なくとも1つのジャーク制約を適用することによって第1の軌道セグメントを生成するステップと、
ii)第1の軌道セグメントの終端点が第2の軌道セグメントの開始点に割り当てられ、第2の軌道セグメントの終端点加速度の大きさがゼロに実質的に等しく、第2の軌道セグメントの終端点速度リファレンスが所望の最終速度リファレンスと実質的に等しくなるように少なくとも1つのジャーク制約を適用することによって第2の軌道セグメントを生成するステップと
によって1つまたは複数の軌道セグメントを生成するステップをさらに備える。
【0040】
計算されたピーク加速度が加速度制約の大きさより大きい場合には、軌道加速度の大きさを加速度制約いっぱいまで増加させなければならない。軌道加速度の大きさは、ある程度の時間にわたって加速度制約に維持しなければならず、その後、最終的に所望の最終速度vfを満たすために実質的にゼロまで下げる必要がある。この場合には、軌道加速度リファレンスの大きさが加速度制約に等しいとみなされるかどうか、または軌道加速度リファレンスの大きさが加速度制約amax未満であるかどうかに応じて、少なくとも1つのジャーク制約を適用することによって2つまたは3つの軌道セグメントが生成され得る。軌道加速度リファレンスの大きさが加速度制約未満であるとみなされる場合には、軌道をamax(加速度制約)いっぱいまで増加させなければならず、ある程度の時間にわたってamaxに維持しなければならず、その後、最終的には所定の時間に所望の最終速度vfを満たすためにゼロまで下げる必要があるので、軌道加速度は、台形のような見た目となる。計算されたピーク加速度が加速度制約を実質的に超えることに対処するために、軌道加速度リファレンスの大きさが実質的に加速度制約未満である場合には、好ましくは、1つまたは複数の軌道セグメントは、
i)第1の軌道セグメントの終端点加速度リファレンスが加速度制約に実質的に等しい大きさを有するように少なくとも1つのジャーク制約を適用することによって第1の軌道セグメントを生成するステップと、
ii)第1の軌道セグメントの終端点が第2の軌道セグメントの開始点に割り当てられ、第2の軌道セグメントの終端点加速度の大きさが加速度制約に実質的に等しくなるように実質的にゼロの大きさを有する少なくとも1つのジャーク制約を適用することによって第2の軌道セグメントを生成するステップと、
iii)第2の軌道セグメントの終端点が第3の軌道セグメントの開始点に割り当てられ、第3の軌道セグメントの終端点加速度リファレンスの大きさがゼロに実質的に等しく、第3の軌道セグメントの終端点速度リファレンスが所望の最終速度リファレンスと実質的に等しくなるように少なくとも1つのジャーク制約を適用することによって第3の軌道セグメントを生成するステップと
によって生成される。
【0041】
軌道加速度の大きさが加速度制約amaxに実質的に等しい場合に、計算されたピーク加速度が加速度制約を超えることに対処するために、好ましくは、1つまたは複数の軌道セグメントは、
i)第1の軌道セグメントの終端点加速度リファレンスが加速度制約の大きさに実質的に等しい大きさを有するように実質的にゼロの大きさを有する少なくとも1つのジャーク制約を適用することによって第1の軌道セグメントを生成するステップと、
ii)第1の軌道セグメントの終端点が第2の軌道セグメントの開始点に割り当てられ、第2の軌道セグメントの終端点加速度リファレンスの大きさがゼロに実質的に等しく、第2の軌道セグメントの終端点速度が所望の最終速度リファレンスと実質的に等しくなるように少なくとも1つのジャーク制約を適用することによって第2の軌道セグメントを生成するステップと
によって生成される。
【0042】
デルタV Δvを計算するために使用される速度リファレンスはシーケンス中に生成される連続した軌道セグメントの各々で変化するので、シーケンス中の1つまたは複数の軌道セグメントを生成するために速度遷移アルゴリズムが適用されるたびに、デルタV Δvの値は変化する。たとえば、軌道加速度が加速度制約以下である問題を解決するときには、所望の最終速度リファレンスvfに到達するまで、生成される軌道セグメントによって、次または後続の問題の速度リファレンスが変化する。
【0043】
本発明によれば、速度遷移アルゴリズムの適用は、
a)軌道加速度の大きさが加速度制約より大きい、すなわち|a0|>|amax|であるという意味で軌道加速度の大きさが過剰である、
b)軌道が所望の最終速度vfから遠ざかるように加速している、
c)軌道が所望の最終速度vfをオーバシュートしている
という問題を克服することを含む。
【0044】
条件(a)から(c)のいずれかが真である場合には、ピーク加速度を計算することができるようになる前に、これらの問題を解決するために補正措置が実行される必要がある。
【0045】
速度遷移アルゴリズムを適用する前に、軌道加速度の大きさが加速度制約より大きい、すなわち|a0|>|amax|であるという意味で軌道加速度リファレンスの大きさが過剰である場合には、軌道加速度リファレンスの大きさは、加速度制約まで低減される必要がある。好ましくは、軌道加速度リファレンスの大きさが加速度制約を超えることに応答して、1つまたは複数の軌道セグメントを生成することは、1つまたは複数の軌道セグメントの終端点加速度リファレンスが加速度制約の大きさに実質的に等しい大きさを有するように少なくとも1つのジャーク制約を適用するステップを備える。
【0046】
その後、軌道加速度リファレンスが、所望の最終速度vfから遠ざかるように加速していることが分かった場合には、apeakを計算する前に、軌道加速度の大きさが実質的にゼロまで低減される必要がある。好ましくは、この方法は、
i)デルタVの大きさがゼロに実質的に等しく、軌道加速度リファレンスの大きさがゼロに実質的に等しくないかどうかを決定するステップ、および/または
ii)デルタVの大きさと軌道加速度リファレンスの大きさの積が実質的にゼロ未満であるかどうかを決定するステップ
によって軌道が所望の最終速度リファレンスの値から遠ざかるように加速しているかどうかを決定するステップと、
ステップ(i)または(ii)のいずれかがイエスである場合に、1つまたは複数の軌道セグメントの終端点加速度リファレンスがゼロに実質的に等しい大きさを有するように少なくとも1つのジャーク制約を適用することによって1つまたは複数の軌道セグメントを生成するステップと
をさらに備える。
【0047】
軌道速度の大きさが所望の最終速度vfを実質的にオーバシュートする場合には、加速度リファレンスの大きさを実質的にゼロまで下げるために1つまたは複数の軌道セグメントが生成されなければならない。好ましくは、軌道が所望の最終速度をオーバシュートすることに応答して、1つまたは複数の軌道セグメントを生成することは、
i)仮の軌道セグメントの終端点加速度リファレンスの大きさが実質的にゼロになるように少なくとも1つのジャーク制約を適用することによって仮の軌道セグメントを計算するステップ、ここにおいて、仮の軌道セグメントは、初期位置リファレンス、初期速度リファレンス、および初期加速度リファレンスを備える開始点と、終端点位置リファレンス、終端点速度リファレンス、および終端点加速度リファレンスを備える終端点とを備える、
ii)所望の最終速度リファレンスと仮の軌道セグメントの終端点速度リファレンスとの間の差に対応する補助デルタVを計算するステップ、ならびに
iii)デルタVと補助デルタVの積が実質的にゼロ未満である場合には仮の軌道セグメントを軌道セグメントのシーケンスに組み込み、そうでない場合には仮の軌道セグメントを無視するステップ
を備える。
【0048】
仮の軌道セグメントが所望の最終速度vfの大きさをオーバシュートしない、すなわちデルタVと補助デルタVの積が実質的にゼロ以上である場合には、仮の軌道セグメントを生成するステップは無視される。
【0049】
上述の問題(a)から(c)を解決するための方法ステップは、新たな軌道セグメントが生成されることにつながり、軌道セグメントのシーケンス中でさらに多くの軌道セグメントが生成されるにつれて初期速度リファレンスおよび終端点速度リファレンスが変化するので、各々の新たな軌道セグメントが生成されることによってデルタV Δvも新たな値になり、これが、その後にapeakの決定で使用される。本発明による速度遷移アルゴリズムを適用するときには、この方法は、軌道セグメントのシーケンス中の1つまたは複数の軌道セグメントの各々の終端点をシーケンス中の1つまたは複数の後続の軌道セグメントの開始点に割り当てるステップをさらに備える。したがって、1つまたは複数の軌道セグメントのシーケンスにおいて、ある軌道セグメントの終端点は、シーケンス中の後続の軌道セグメントの開始点に割り当てられる。これが、次のサブ問題を扱うときのシーケンスの基礎となる。これにより、シーケンス中の最後に生成された軌道セグメントの開始点が変化するので、連続的に変化するデルタV Δvが得られる。たとえば、第1の軌道セグメントの終端点は、第2の軌道セグメントの開始点に割り当てられる、すなわち(p0、v0、a0←pE、vE、aE)である。問題(i)から(iii)を解決するときに計算されるデルタV Δvは、次いで、ピーク加速度の計算に適用される。
【0050】
好ましくは、加速度リファレンスは、減速度リファレンスをさらに備え、加速度制約は、上側減速度制約および下側減速度制約を有する減速度制約をさらに備え、軌道セグメントのシーケンス中の1つまたは複数の軌道セグメントは、減速度制約の上側制約および下側制約内の、あるいは減速度制約の上側制約または下側制約のいずれかに等しい時間の関数としての少なくとも1つの減速度リファレンスをさらに規定するようになっている。
【0051】
軌道が上側制約および下側制約内の、あるいは上側制約または下側制約のいずれかに等しい減速度リファレンスをさらに規定するように、複数の制約は、上側制約および下側制約を有する減速度制約をさらに導入する。加速度リファレンスは、定義上の加速である速度リファレンスを増加させることだけでなく、速度リファレンスを減少させた結果の減速度リファレンスをさらに備える。速度リファレンスが減少する速さは、上側減速度制約および下側減速度制約の適用によって決定される。
【0052】
好ましくは、少なくとも1つのジャーク制約は、
i)加速度リファレンスの大きさを増加させるための第1のジャーク制約と、
ii)加速度リファレンスの大きさを減少させるための第2のジャーク制約と、
iii)減速度リファレンスの大きさを増加させるための第3のジャーク制約と、
iv)減速度リファレンスの大きさを減少させるための第4のジャーク制約と
を備える。
【0053】
本発明の別の態様では、軌道を静止状態にもっていくために、すなわち軌道速度が実質的にゼロになるように、強制減速アルゴリズムが軌道に適用される。強制減速アルゴリズムは、指令位置が変化した、すなわち近づいた状況で適用されることがある。ただし、速度リファレンスの大きさが増加している場合、および/または加速度リファレンスの大きさが減速度制約より大きいほどに過剰である場合には、強制減速アルゴリズムを適用することはできない。
【0054】
好ましくは、この方法は、
i)1つまたは複数の軌道セグメントの終端点減速度リファレンスがゼロに実質的に等しい大きさを有するように、軌道速度の大きさが増加することに応答して少なくとも1つのジャーク制約を適用することによって1つまたは複数の軌道セグメントを生成するステップ、および/あるいは
ii)1つまたは複数の軌道セグメントの終端点減速度リファレンスが上側減速度制約に実質的に等しい大きさを有するように、減速度リファレンスの大きさが上側減速度制約より実質的に大きいことに応答して少なくとも1つのジャーク制約を適用することによって1つまたは複数の軌道セグメントを生成するステップ
をさらに備える。
【0055】
軌道のスピードが増加しなくなったら、または軌道が減速度制約を超える過剰な減速度も有するようになったら、また有していなくなったら、終端点軌道速度が指令位置においてゼロに実質的に等しい大きさを有するように軌道速度の大きさを開始点から終端点まで遷移させるために速度遷移アルゴリズムが適用されることが可能である。任意選択で、この方法は、
i)1つまたは複数の軌道セグメントの終端点加速度リファレンスの大きさがゼロに実質的に等しく、1つまたは複数の軌道セグメントの終端点速度リファレンスが所望の最終速度リファレンスに実質的に等しくなるように、上側減速度制約に実質的に等しい大きさを有する減速度制約に基づいて1つまたは複数の軌道セグメントを生成するために速度遷移アルゴリズムを適用するステップ
をさらに備える。理想的には、終端点速度リファレンスが指令位置において所望の最終速度に等しい。
【0056】
ただし、速度遷移アルゴリズムにおいて上側減速度制約を使用すると、生成された1つまたは複数の軌道セグメントが指令位置をオーバシュートする、すなわち終端点位置の大きさが指令位置をオーバシュートする場合には、速度遷移アルゴリズムを適用して位置リファレンスに指令位置をオーバシュートさせる1つまたは複数の軌道セグメントを生成することに加えて、追加または第2の速度遷移アルゴリズムを適用して、1つまたは複数の軌道セグメントの終端点加速度リファレンスの大きさがゼロに実質的に等しく、第2の速度遷移アルゴリズムの適用の結果として生成される1つまたは複数の軌道セグメントの終端点速度リファレンスが指令位置において所望の最終速度リファレンスに実質的に等しくなるようにオーバシュート位置から軌道を逆進させる。
【0057】
好ましくは、この方法は、
i)対応する終端点減速度リファレンスがゼロに実質的に等しく、対応する終端点速度リファレンスが所望の最終速度リファレンスに実質的に等しいときに、1つまたは複数の軌道セグメントの終端点位置リファレンスが指令位置をオーバシュートするかどうかを決定するステップと、
ii)軌道が指令位置をオーバシュートすることに応答して、指令位置において終端点加速度リファレンスの大きさがゼロに実質的に等しく、1つまたは複数の軌道セグメントの終端点速度リファレンスが所望の最終速度リファレンスに実質的に等しくなるように1つまたは複数の軌道セグメントを生成するために速度遷移アルゴリズムを適用することによって、軌道を指令位置に戻すための1つまたは複数の軌道セグメントを生成するために「逆進」を適用するステップと
によって、強制減速アルゴリズムを適用して1つまたは複数の軌道セグメント生成するステップをさらに備える。
【0058】
本発明では、「逆進」は、位置の大きさが指令位置より大きいという意味で位置リファレンスの大きさが指令位置をオーバシュートするときに適用される。その結果、速度遷移は、指令位置において加速度リファレンスの大きさがゼロに実質的に等しく、速度リファレンスの大きさが所望の最終速度リファレンスに実質的に等しくなるように逆方向に適用される。
【0059】
ただし、上側減速度制約を用いて速度遷移アルゴリズムを適用すると、強すぎる減速になり、計算された位置リファレンスが指令位置未満であるという意味で生成された軌道が指令位置をアンダーシュートする場合には、弱めの減速を使用することができる。好ましくは、この方法は、
i)1つまたは複数の軌道セグメントの対応する終端点減速度リファレンスの大きさが実質的にゼロであり、対応する終端点速度リファレンスが所望の最終速度リファレンスに実質的に等しいときに、軌道の1つまたは複数の軌道セグメントの終端点位置リファレンスが指令位置をアンダーシュートするかどうかを決定するステップと、
ii)軌道が指令位置をアンダーシュートすることに応答して、下側減速度制約に実質的に等しい大きさを有する減速度制約に基づいて1つまたは複数の軌道セグメントを生成するために速度遷移アルゴリズムを適用するステップと
によって1つまたは複数の軌道セグメントを生成するステップをさらに備える。
【0060】
下側減速度制約を用いて速度遷移アルゴリズムを適用したときに、軌道が依然として指令位置をアンダーシュートする場合には、これは、軌道を静止状態にもっていくために達成することができる最低減速度であると考えられる。しかし、速度遷移アルゴリズムを適用するときに上側減速度制約を使用すると強すぎて軌道が指令位置をアンダーシュートするが、下側減速度制約を使用すると軌道が指令位置をオーバシュートする場合には、終端点速度リファレンスの大きさが指令位置において実質的にゼロになるように、すなわち所望の最終速度リファレンスが実質的にゼロになるように1つまたは複数の軌道セグメントを生成するために、速度遷移アルゴリズムにおいて上側減速度制約と下側減速度制約との間の減速度制約が使用されることが可能である。
【0061】
好ましくは、この方法は、
i)求根アルゴリズムを用いて上側強制減速制約と下側強制減速制約との間の値を有する最適な強制減速制約に対応するパラメータを予測するステップと、
ii)1つまたは複数の軌道セグメントの終端点リファレンスの指令位置からの位置偏差の大きさが所定の閾値未満であるときに終端点加速度リファレンスの大きさがゼロに実質的に等しく、1つまたは複数の軌道セグメントの終端点速度リファレンスが所望の最終速度リファレンスに実質的に等しくなるように、最適な強制減速制約に実質的に等しい減速度制約を用いて1つまたは複数の軌道セグメントを生成するために速度遷移アルゴリズムを適用するステップと
によって1つまたは複数の軌道セグメントを生成するステップをさらに備える。
【0062】
求根アルゴリズムの使用により、最適な強制減速制約を用いて速度遷移アルゴリズムが適用されたときに、1つまたは複数の軌道セグメントの終端点位置リファレンスの指令位置からの位置偏差の大きさが所定の閾値未満であるときに1つまたは複数の軌道セグメントの終端点加速度リファレンスおよび終端点速度リファレンスの大きさが実質的にゼロになるように、最適な強制減速制約が計算されることが可能である。
【0063】
所定の閾値は、1つまたは複数の軌道セグメントの終端点加速度リファレンスおよび終端点速度リファレンスの大きさが指令位置において実質的にゼロになるように、実質的にゼロである。速度遷移アルゴリズムを適用するときの所望の最終速度リファレンスは、ゼロに実質的に等しい。
【0064】
好ましくは、速度遷移アルゴリズムは、速度遷移アルゴリズムが求根アルゴリズムによって予測される連続したパラメータの各々について1つまたは複数の軌道セグメントを生成するように、求根アルゴリズム内に入れ子にされる。
【0065】
好ましくは、軌道は、S字型または有限ジャークの軌道プロファイルである。好ましくは、軌道は、1つまたは複数の軌道セグメントがS曲線の数式を用いて生成されるように、S字型である。
【0066】
さらに好ましくは、少なくとも1つのジャーク制約を適用することによって1つまたは複数の軌道セグメントを生成することにより、軌道セグメントのシーケンス中の1つまたは複数の軌道セグメントについて時間の関数として連続的に変化する加速度リファレンスを定義する軌道を生成する。
【0067】
本発明は、モーションデバイスの移動を制御するために軌道を生成する軌道生成器であって、
i)メモリと、
ii)メモリ上に記憶されたコンピュータ実行可能命令を実行するように構成されたプロセッサと、プロセッサは、指令位置を受信すると、本発明による方法によって動き制御プロファイルを生成するように構成される、
を備える、軌道生成器をさらに提供する。
【0068】
好ましくは、動力デバイスは、第1の車輪対および第2の車輪対を備える車輪アセンブリと、車輪アセンブリを駆動するための駆動機構と、本発明の方法によって生成される動き制御プロファイルに従って車輪アセンブリを駆動するように命令される駆動機構に接続された制御装置とを備える、荷役装置である。
【0069】
本発明は、実行に応答してコンピュータシステムに本発明による動作を実行させるコンピュータ実行可能命令を記憶している、非一時的コンピュータ媒体を提供する。
【0070】
本発明のさらなる特徴および態様は、図面を参照して行われる以下の例示的な実施形態の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0071】
図1】既知のシステムによるグリッドフレームワーク構造の概略図。
図2図1のフレームワーク構造内に配列されたビンのスタックを示す上面図を示す概略図。
図3】グリッドフレームワーク構造上で動作可能な荷役装置を示す既知の保管システムの概略図。
図4】容器を上から把持する昇降装置を示す荷役装置の概略斜視図。
図5】(a)荷役装置の容器受けスペース内に収容された容器、および(b)荷役装置の容器受けスペースを示す、図4の荷役装置の概略斜視切欠き図。
図6】本発明の実施形態によるグリッド構造の一部分の上の荷役装置の概略斜視図。
図7】本発明の実施形態による中心回転軸を示す荷役装置の車輪の概略斜視図。
図8】本発明の実施形態による中心回転軸の周りで車輪を駆動するために使用されるハブモータの展開図。
図9】本発明の実施形態による車輪アセンブリ制御およびインターフェースアーキテクチャ。
図10】本発明の実施形態によるネットワークを介した荷役装置とマスタ制御装置との間の通信の概略図。
図11】(a)-(c)台形軌道プロファイルの概略図。
図12】(a)-(d)S曲線軌道プロファイルの概略図。
図13】本発明の実施形態による軌道または動きプロファイル生成器を備える動き制御システムのブロック図。
図14】本発明の実施形態による位置センサを備えるロボット荷役装置の斜視図。
図15】本発明の実施形態による軌道プロファイルを生成するための方法の例の流れ図。
図16】本発明の実施形態による例示的な動きプロファイル生成器の入力および出力を示すブロック図。
図17】本発明の実施形態による例示的な位置制御装置の入力および出力を示すブロック図。
図18】本発明の実施形態による軌道プロファイルを生成するための方法の例の流れ図。
図19図18の強制減速のステップ。
図20図18の加速度の大きさを指令加速度まで下げる是正ステップ。
図21図18の速度の大きさを実質的にゼロまで下げる是正ステップ。
図22図18のオーバシュートからの逆進を適用する是正ステップ。
図23図18の加速度の大きさを実質的にゼロまで下げ、オーバシュートからの逆進を適用する是正ステップ。
図24】指令速度より大きい軌道加速度の大きさの是正ステップ。
図25】指令速度と実質的に等しい現在の軌道速度の大きさの是正ステップ。
図26】現在の軌道速度を指令速度まで増加させる是正ステップ。
図27-1】本発明の実施形態による第1の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図27-2】本発明の実施形態による第1の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図27-3】本発明の実施形態による第1の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図28-1】本発明の実施形態による第2の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図28-2】本発明の実施形態による第2の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図28-3】本発明の実施形態による第2の速度遷移サブアルゴリズムの例示的な方法の流れ図。
図29】本発明の実施形態による連続した速度遷移を示す、軌道加速度の大きさの概略的な仮想三角形。
図30】本発明の実施形態による複数の速度遷移を示す、軌道加速度の大きさの概略的な仮想台形。
図31(a)】本発明の実施形態による異なる所望の速度vfについて速度遷移アルゴリズムを適用したときの軌道プロファイル。
図31(b)】本発明の実施形態による異なる所望の速度vfについて速度遷移アルゴリズムを適用したときの軌道プロファイル。
図31(c)】本発明の実施形態による異なる所望の速度vfについて速度遷移アルゴリズムを適用したときの軌道プロファイル。
図31(d)】本発明の実施形態による異なる所望の速度vfについて速度遷移アルゴリズムを適用したときの軌道プロファイル。
図32(a)】本発明の実施形態による異なるピーク速度vpeakについて速度遷移アルゴリズムと併せて求根アルゴリズムを適用したときの軌道プロファイル。
図32(b)】本発明の実施形態による異なるピーク速度vpeakについて速度遷移アルゴリズムと併せて求根アルゴリズムを適用したときの軌道プロファイル。
図32(c)】本発明の実施形態による異なるピーク速度vpeakについて速度遷移アルゴリズムと併せて求根アルゴリズムを適用したときの軌道プロファイル。
図33】本発明の実施形態による図32の異なるピーク速度に対する求根アルゴリズムの目標関数のプロット。
図34-1】本発明の実施形態による強制減速アルゴリズムの例示的な方法の流れ図。
図34-2】本発明の実施形態による強制減速アルゴリズムの例示的な方法の流れ図。
図35(a)】軌道プロファイルの例の概略図。
図35(b)】軌道プロファイルの例の概略図。
図35(c)】軌道プロファイルの例の概略図。
図36】ホイストモータの平均電流がモータによってホイストされる保管容器の内容物の質量とともにどのように変化するかを示すプロット。
【発明を実施するための形態】
【0072】
図1から図5を参照して上述したグリッドフレームワーク構造および荷役装置などの保管システムの既知の特徴を背景にして、本発明は考案されている。本発明は、グリッド構造上の荷役装置または「ボット」の動きを制御するための方法およびシステムによって定義される。
【0073】
荷役装置130は、トートとも呼ばれる保管容器またはビンを下方から持ち上げるためのウィンチまたはクレーン機構を備える昇降機構(図示せず)を備える車両本体132を備える。クレーン機構は、スプールまたはリールに巻き付けられたウィンチケーブルと、掴みデバイスとを備える。掴みデバイスは、図4および図5に示されるタイプの保管システム内の容器のスタックから容器を持ち上げるために容器の上部を把持するように構成されている。
【0074】
車両本体132は、上側部分と下側部分とを備える。下側部分は、保管システムのグリッドフレームワーク構造の上部のレール上を走る2セットの車輪134、136を備える車輪アセンブリを備える。本発明の説明のために、この2セットの車輪を、第1の車輪セット134および第2の車輪セット136と定義する。第1の車輪セット134および第2の車輪セット136は、荷役装置130の周縁部の周りに配置される。第1の車輪セット134および第2の車輪セット136の各々は、車両本体132の下側部分の対向する側面に配置され、車両本体の対向する側面に一対の車輪を備える。すなわち、第1の車輪セットおよび第2の車輪セットの各々は、合計で4つの車輪を備える。図6に示される本発明の特定の実施形態では、第1の車輪セット134および第2の車輪セットの各々は、トラックまたはレールに沿ってそれぞれX方向およびY方向に荷役装置を移動させることを可能にするように、車両本体132の下側部分の車両フレームに回転可能に装着される。本発明のこの特定の実施形態では、車両本体の対向する側面に装着された車輪の対を示しているが、本発明は、車両本体の各側に装着された車輪の対を備える荷役装置に限定されない。車両の対向する側面に一対の車輪が装着される代わりに、車両本体の対向する側に少なくとも1つの車輪が互いに斜向かいに配置されることによっても、荷役装置の安定性は達成されることが可能である。したがって、第1の車輪セットおよび第2の車輪セットは、各々が、互いに斜向かいになるように車両本体の対向する側面に装着された少なくとも1つの車輪を備える。
【0075】
本発明のこの特定の実施形態では、第1の車輪セット134および第2の車輪セット136は、下側部分(図4および図5参照)の容器受け凹部と呼ばれる空洞または凹部の周縁部の周りに配置される。この凹部は、図5(aおよびb)に示されるように、保管容器または容器10がクレーン機構によって持ち上げられたときに保管容器または容器10を収容するようなサイズになっている。この特定の実施形態では、たとえばWO2015/019055号(Ocado Innovation Limited)に記載されるような車両本体内に配置された容器受けスペースについて述べるが、車両本体は、WO2019/238702号(Autostore Technology AS)に教示されるカンチレバーを備えることもあり、その場合には、容器受けスペースは、荷役装置のカンチレバーの下方に位置する。この場合には、掴みデバイスが容器と係合してスタックから持ち上げてカンチレバーの下方の容器受けスペースに入れることができるように、掴みデバイスはカンチレバーによってホイストされる。
【0076】
車両本体132の上側部分は、荷役装置のかさばる構成要素の大部分を収容し得る。通常は、車両の上側部分は、昇降機構を駆動するための駆動機構を、駆動機構及び昇降機構に電力を供給する搭載型充電式電源と共に収容する。充電式電源は、限定されるわけではないがリチウムバッテリまたはコンデンサなど、任意の適当なバッテリとすることができる。
【0077】
図6に示されるように、グリッド構造115は、複数のセルを備えるグリッドパターンで配置された、第1の方向に延びる第1のセットの平行グリッド部材と、第2の方向に延びる第2のセットのグリッド部材とを備える。本発明の説明を容易にするために、水平面内の第1の方向の荷役装置の移動は、X方向の移動を表し、第2の方向の移動は、グリッド構造におけるY方向の移動を表す。1つまたは複数の荷役装置がグリッド構造上で進行できるようにするために、第1のセットのグリッド部材は、第1のセットのトラック122aを備え、第2のセットのグリッド部材は、第2のセットのトラック122bを備える。任意選択で、第1のセットのグリッド部材は、第1のセットのトラック支持体(図示せず)を備え、第2のセットのグリッド部材は、第2のセットのトラック支持体(図示せず)を備える。任意選択で、第1のセットのトラック122aは、第1のセットのトラック支持体にスナップ嵌めされ、第2のセットのトラック122bは、第2のセットのトラック支持体にスナップ嵌めされる。グリッド構造のグリッド部材がトラックとトラック支持体の両方を備えるように複数のトラック122a、122bが第1および第2のセットのトラック支持体と一体化されることが可能であるということは、本発明にも同様に当てはまる。
【0078】
グリッド構造上で方向を変えることによって車両または荷役装置が直交する方向に移動できるようにするために、第1の車輪セット134および第2の車輪セット136の各々は、それぞれのトラックまたはレールから持ち上がるように垂直方向に移動されるように構成される。たとえば、グリッド構造115上で方向を変える(たとえばX方向の移動からY方向の移動に変化する)ためには、第1の車輪セット134が第1のセットのグリッド部材またはトラック122aから持ち上げられ、第2の車輪セット136が第2のセットのグリッド部材またはトラック122bと係合する。モータなどの駆動機構(図示せず)が、第1の車輪セット134または第2の車輪セット136のいずれかをグリッド構造115上でX方向またはY方向に駆動する。本発明のこの特定の実施形態では、車両本体132の下側部分の第1の車輪セット134および第2の車輪セット136の各車輪はハブモータによって個別に駆動され、グリッド構造115上で荷役装置130の四輪駆動能力を提供する。言い換えれば、第1の車輪セットおよび第2の車輪セットの全ての車輪が、個別のハブモータによって駆動される。これは、セット134、136の車輪のいずれかがレールまたはトラック上でスリップしても、荷役装置がグリッド構造115上をレールまたはトラック122a、122bに沿って進行できるようにするためである。図7および図8は、本発明の実施形態による荷役装置130の車輪150を示す斜視図である。
【0079】
詳細には、図7および図8に示されるハブモータ160は、ハブモータ160のステータを備える車輪ハブまたは内側ハブ166の周りで回転するように構成された、グリッド構造(たとえばトラック)と係合するように構成された外側表面と環状永久磁石164を備える内側表面とを備える外側ロータ162を備える。通常は、ステータは、ハブモータのコイルを備える。第1または第2の車輪セットの各車輪150を駆動し、それにより荷役装置をグリッド構造上で第1の方向または第2の方向に移動させるために、ハブモータ160の外側ロータ162は、それぞれの車輪の中心軸に対応する回転軸A-Aの周りで回転するように構成される。ロータ162の外側表面は、任意選択で、トラックまたはレールと係合するためのタイヤ168を備えることができる。図8に示されるこの特定の実施形態では、ハブモータ160は、軸受(図示せず)上でその回転軸の周りで回転し、永久磁石164がその内側表面に接合された外側ロータ162を備える。車輪150の各々は、外側ロータ162が車輪ハブ166に対して回転できるようにするようにハブモータのステータを備える内側ハブまたはハブ166を車両本体に結合することによって、荷役装置の車両本体に結合される。この特定の実施形態では、第1の車輪セット134および第2の車輪セット136の各車輪150の駆動機構がハブモータを備えるものとして述べているが、本発明では、車輪を回転可能に駆動するための他の手段も適用可能である。たとえば、荷役装置の前部および後部ならびに各側の車輪の対が、適当なプーリまたは歯車機構に接続された1つまたは複数のモータによって駆動されることも可能である。
【0080】
図9に示される車輪アセンブリのブロック図では、第1の車輪セット134および第2の車輪セット136の車輪の各対は、制御モジュールまたは制御装置170によって、それぞれの回転軸の周りで回転するように命令される。制御モジュール170は、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行されたときに、その1つまたは複数のプロセッサに、第1の車輪セットまたは第2の車輪セットにそれぞれの回転軸の周りで同期して回転するように命令させる命令を記憶したメモリとを備える、コンピュータシステムを備えることができる。メモリは、当技術分野で一般に既知の任意の記憶デバイスとすることができ、限定されるわけではないが、データを記憶するために使用されることが可能であり、プロセッサによりアクセスされることが可能な、RAM、コンピュータ可読媒体、磁気記憶媒体、光学記憶媒体、または他の電子記憶媒体を含み得る。この1つまたは複数の処理デバイスは、当技術分野で既知の任意の処理デバイスとすることができる。代表例は、限定されるわけではないが、マイクロプロセッサを含む。駆動機構と、第1の車輪セット134および第2の車輪セット136の各車輪の車輪位置決めとは、任意の適当な通信インターフェースユニット172を介して制御モジュールに通信可能に結合される。これらは、限定されるわけではないが、当技術分野で既知の任意の有線またはワイヤレスの通信を含む。
【0081】
制御装置170は、制御命令を制御命令に従って車輪モータへの適当な駆動電流出力信号に変換する駆動機構に、制御命令を送り、トラック上の荷役装置の制御された移動を容易にする。制御信号は、車輪モータ、または車輪モータに送達される電力を変化させることによって車輪モータのスピードと方向とを制御するモータドライブに直接提供されることが可能である。制御装置170が、駆動機構は荷役装置を現在の位置から新たな位置に移動させなければならない、またはその速度を変化させなければならないと決定したときに、制御装置170は、動き制御プロファイルとも呼ばれる軌道を生成し、この軌道が、荷役装置を駆動機構を介して現在の位置または速度から目標の位置または指令停止位置まで駆動するための適当な制御信号に変換される。動き制御プロファイルは、荷役装置が現在の位置から指令停止位置まで移動する際の経時的な速度、加速度、および/または位置などの荷役装置の運動力学的状態を定義する。現在の位置は、グリッド構造上で停止または休止した状態からであってもよく、その場合には、荷役装置の初期速度と初期加速度は両方とも実質的にゼロであるが、あるいは荷役装置が動いている間であってもよく、その場合には、荷役装置は、ゼロを超える初期速度を有する。指令位置は、たとえば保管容器を取り出したり配置したりするときには、グリッド構造上の所望の保管位置またはグリッドセルであることがある。あるいは、たとえば荷役装置が充電式電源を充電するように命令された場合には、指令位置は、1つまたは複数の充電ポイントの近くのグリッド構造上の位置またはグリッドセルであることもある。通常は、充電ポイントは、グリッド構造の周縁部の周りに位置する。
【0082】
この動き制御プロファイルが生成されると、制御装置は、動き制御プロファイルを、動き制御プロファイルによって定義される軌道によって荷役装置を移動させるための適当な制御信号に変換する。動き制御プロファイルの様々なセグメント(またはステージ)は、駆動機構の機械的制限に対応する1つまたは複数の所定の制約に基づいて計算される。1つまたは複数の所定の制約は、限定されるわけではないが、最大速度、最大加速度、および最大減速度を含む。たとえば、本発明の実施形態による荷役装置は、最大4m/sのスピードで進行し、2m/s2で加速することが期待される。これらの制約および所望の指令位置を前提として、制御装置は、所望の動きを実行するための動き制御プロファイルを計算することになる。所望の動きは、グリッド構造上のX方向およびY方向の複数の位置を含むことがあり、これらは、荷役装置が所望の保管列に到達するために混合されることもあるし、順番に実行されることもある。この複数の位置の各々は、グリッド構造上のX方向またはY方向のいずれかの単一の動きを備えることができる。本発明では、「指令速度」という用語と「速度制約」という用語は、同じ機能を意味するために入れ替え可能に使用されている。同様に、「指令加速度」という用語と「加速度制約」という用語は、同じ機能を意味するために入れ替え可能に使用されている。
【0083】
本発明は、グリッド構造上の荷役装置の2点間移動のための制約に基づく時間最適な動き制御プロファイルの生成に関する。本発明の文脈における2点間移動とは、開始位置から指令停止位置までの移動を指す。最終加速度および最終速度は、荷役装置がプログラムされた行き先または指令停止位置に到着する瞬間にゼロになる。本発明の特定の実施形態では、制御装置への入力は、マスタ制御装置174を介して受信される。制御装置は、図10に示されるようにネットワーク176を介してマスタ制御装置174に結合されることがある。制御装置は、図10では、荷役装置130に組み込まれた状態で示されている。ネットワーク176は、特にLAN(ローカルエリアネットワーク)、WAN(広域ネットワーク)、インターネット、またはイントラネットなど、様々なタイプのうちのいずれであってもよい。1つまたは複数の基地局(図示せず)が、入力情報を制御装置に送信することができる。本発明の特定の実施形態では、入力は、1つまたは複数の制約と、グリッド構造上の指令位置または目標位置とを含むことができる。1つまたは複数の制約は、指令位置から独立して受信されることもある。たとえば、マスタ制御装置174は、指令位置と1つまたは複数の制約とを、別個に荷役装置130の制御装置内に記憶された動き制御プロファイルまたは軌道生成器に通信することもある。
【0084】
動き制御プロファイルは、1つまたは複数の制約、およびグリッド構造上の所望の保管位置であることも充電位置であることもあるグリッド構造上の所望の位置に対応する指令位置の受信に基づいて(たとえば制御装置によって自動的に)生成または計算される。本発明によれば、動き制御プロファイルまたは軌道は、位置、スピード、および加速度、ならびに/またはジャークの信号の集合を含む。軌道は、指令位置に達し、残りの信号(スピード、加速度、ジャーク)が正確にゼロになった時に終端する(または終端点に到達する)。
【0085】
得られる動き制御プロファイルは、制御装置が生成するように構成されるプロファイルのタイプの関数である。これらは、S曲線プロファイル、およびそれを単純化した台形プロファイルである。
【0086】
1.0 台形およびS曲線軌道プロファイル
2点間移動の状況では、台形プロファイルは、通常は、三角形の動きプロファイルをした3つの異なる動きのフェーズからなる。台形プロファイルのもっとも単純な形態が、図11(aからc)に示されており、一定の加速度で最大速度に達する期間と、それに続く一定の減速度でゼロ速度に戻る期間とからなる。正の加速度の期間は、「加速フェーズ」と呼ばれ、負の加速度の期間は、「減速フェーズ」と呼ばれる。図11cの加速セグメントに示されるように、加速度および減速度は、ほとんど一瞬で増加および減少する。これらの位置では、加速度の変化率(da/dt)は、不定であり、無限大に等しいとみなされる。時間に対する加速度変化率は、j=da/dtで、ジャーク(jerk、加加速度)と名付けられており、高スループットの適用分野では、不定のジャークは、衝撃負荷、グリッド構造上の荷役装置の振動、および場合によっては可聴雑音を引き起こす。時間の関数として生成された動き制御プロファイルは、(i)加速度リファレンス(図11c)、(ii)速度リファレンス(図11b)、および位置リファレンス(図11a)の集合を含む。その結果として、図11(aからc)に示される台形軌道は、位置、速度、および加速度に関係する信号からなる。台形プロファイルに基づく動き制御プロファイルの生成における主要な入力は、(i)指令位置(軌道の終端で到達されるべき位置)、(ii)指令速度(許容最大速度)、および(iii)指令加速度(許容最大加速度)である。指令速度および指令加速度は、台形プロファイルに基づく動き制御プロファイルの生成における1つまたは複数の制約を表す。したがって、台形プロファイルにおける速度リファレンスは、加速度リファレンスを操作することによって制御される。
【0087】
時間t=0における初期条件、速度v(t)=v0、および位置p(t)=p0を仮定し、操作対象変数である加速度リファレンスaを一定に保つ(時間t≧t(0)の間)と、台形軌道プロファイルについて、時間の関数である速度リファレンスおよび位置リファレンスは、以下の数式で与えられる。
【0088】
【数2】
【0089】
操作対象変数の値(加速度)が変化する任意の時点τにおいて、数式(1)および(2)は、単純にたとえばv0←v(τ)、p0←p(τ)など時間τにおける軌道点の値を初期条件にし、時間を(t-τ)にリセットすることによって、再度適用されることが可能である。軌道点とは、特定の時間における加速度リファレンス、速度リファレンス、位置リファレンスの点の値を指し、これは、以下で説明するように、開始点または軌道セグメントの終端点であってもよい。
【0090】
ここでの「操作対象変数」とは、その値が制御システムによって設定される変数を意味する。台形プロファイルでは、操作対象変数は加速度であるので、加速度の値が、制御システムによって設定される。操作対象変数ではない他の変数(位置および速度)は、上記の数式によって操作対象変数の値から計算される。
【0091】
図12(aからd)に示されるS曲線加速度プロファイルは、従来の台形プロファイルの代替であり、通常は7個の異なる動きのフェーズからなる。この加速度プロファイルは、大きく分けて、加速フェーズ(フェーズI、II、およびIII)、一定速度フェーズ(フェーズIV)、および減速フェーズ(フェーズV、VI、およびVII)の3つの部分に分割されることが可能である。S曲線プロファイルの加速フェーズ、一定速度フェーズ、および減速フェーズは、図11(aからc)を参照して上述した台形プロファイルの加速フェーズ、一定速度フェーズ、および減速フェーズと等価であるが、ジャークの適用によりプロファイルがより複雑になるので、軌道を完全に記述するために加速フェーズおよび減速フェーズの細分化が必要になる。フェーズIでは、荷役装置が最大加速度に到達するまで、荷役装置を正のジャークの値を有する加速フェーズで休止状態または始動位置から移動させ始める。フェーズIIでは、プロファイルは、最大速度に近づいて低下し始めなければならなくなるまで、その最大加速率で加速する。図12cに示される軌道プロファイルでは、軌道は、フェーズIIの間にゼロジャークに移行する。フェーズIIIでは、加速度はゼロに到達するまで減少する、すなわちジャークが、所望の速度でゼロ加速度に到達するまで負のジャークの値に移行する。フェーズIV、すなわち一定速度フェーズでは、所望の速度は一定であり、加速度とジャークは両方ともゼロである。フェーズV、VI、およびVIIは、フェーズI、II、およびIIIと対称にプロファイルが減速する減速フェーズである。減速フェーズでは、S曲線プロファイルは、フェーズVで負のジャークの値を適用することから始まり、フェーズVIでゼロジャークを適用し、最後にフェーズVIIでゼロ速度に到達するまで軌道を減速させるためにジャークを正の値に増加させる。
【0092】
台形プロファイルに基づく動き制御プロファイルの生成とは対照的に、S曲線プロファイルに基づく動き制御プロファイルの生成における主要な入力は、(i)指令位置(軌道の終端で到達されるべき位置)、(ii)指令速度(許容最大速度vmax)、(iii)指令加速度(許容最大加速度amax)、および(iv)指令ジャークである。したがって、動き制御プロファイルの生成における1つまたは複数の制約は、指令速度、指令加速度、および指令ジャークを含む。指令加速度は、加速フェーズの最大正加速度と、減速フェーズの最大負加速度とを含むことができる。あるいは、加速フェーズにおける加速度と減速フェーズにおける加速度とを区別するために、加速に関係する制約が、指令加速度と指令減速度に分類されることが可能である場合には、異なる用語が使用されることも可能である。本発明の説明では、指令速度という用語と速度制約という用語は、同じ機能を意味するものとして入れ替え可能に使用され、指令加速度という用語と加速度制約という用語も、同様に同じ機能を意味している。時間の関数として生成される動き制御プロファイルは、(i)ジャークリファレンス、(ii)加速度リファレンス、(iii)速度リファレンス、および(iv)位置リファレンスの集合を含む。その結果として、図12に示されるS曲線軌道は、位置、速度、加速度、およびジャークに関係する信号からなる。
【0093】
一定速度と加速との間の移行が急激である台形プロファイルとは異なり、S曲線の動きプロファイル中の1つまたは複数の指令ジャークによって提供される速度プロファイルの縁部または「コーナ」は滑らかになっているので、加速度の急激な変化が低減され、それによりグリッド構造上の荷役装置の動きが滑らかになっている。すなわち、S曲線プロファイルでは、接続機構および荷役装置の貨物に与える振動エネルギーが劇的に少なくなる。これは、特に、車輪アセンブリを駆動するための駆動機構がサーボモータまたはステッパモータである場合に当てはまる。台形プロファイルと比較すると、S曲線プロファイルは、一定加速度フェーズに対するプロファイルの移行フェーズの比率を調整することによって、荷役装置内で振動を打ち消すための制御機構を提供する。ジャークに関しては、ジャークが高くなるほど、生成される不要な振動エネルギーの量が増え、振動エネルギーの周波数帯も広くなる。これは、加速度の変化が急激になるほど、振動が強くなることを意味する。ジャークを低減することにより、速度プロファイルの縁部または「コーナ」において加速度が一定加速度に移行する領域における加速度の急激な変化が低減される。これは、速度プロファイルの縁部または「コーナ」を滑らかにすることによって明らかになる。
【0094】
加速度が操作対象変数である台形プロファイルと比較して、S曲線プロファイルにおける位置、速度、および加速度は全て、1つまたは複数のジャーク値を操作することによって制御される。操作対象変数の値が変化する時間を移行時間(または移行)と呼ぶとすると、操作対象変数の値が変化する少なくとも4つの移行がある。簡単に言うと、操作対象変数は、各対の連続する移行の間で一定のままである。台形軌道の場合には、操作対象変数は加速度であり、S曲線軌道の場合には、操作対象変数はジャークである。移行における軌道の値は、移行点と呼ばれる。台形プロファイルとS曲線プロファイルの両方の用語として、軌道セグメントは、操作対象変数(台形プロファイルでは加速度、S曲線プロファイルではジャーク)が一定のままであるプロファイルの一区画である。言い換えれば、軌道セグメントは、移行点で開始し、移行点で終端する。図11および図12を参照した上記の台形軌道およびS曲線軌道の説明では、台形軌道の3つのフェーズと、S曲線軌道の7つのフェーズとが、軌道セグメントとも呼ばれ得る。本発明の説明のために、軌道セグメントは、軌道点(p0、v0、a0)および終端点(pE、vE、aE)によって与えられる開始点を有し、p0、v0、およびa0は、それぞれ初期位置リファレンスa0、初期速度リファレンスv0、および初期加速度リファレンスa0であり、pE、vE、およびaEは、それぞれ終端点位置リファレンスpE、終端点速度リファレンスvE、および終端点加速度リファレンスaEである。動き制御プロファイルまたは軌道は、操作対象変数に変更を加えた結果のこのような軌道セグメントの集合または連続である。
【0095】
t=0における初期条件、ならびに開始加速度a(t)=a0、開始速度v(t)=v0、および開始位置p(t)=p0を仮定し、操作対象変数であるジャークjを時間t≧0の間一定に保つと、S曲線軌道プロファイルについて、時間の関数としてのジャークリファレンスと、加速度リファレンスと、速度リファレンスと、位置リファレンスとの間の関係は、以下の数式で与えられる。
【0096】
【数3】
【0097】
台形プロファイルの場合と同様に、操作対象変数の値が変化する任意の時点τにおいて、数式(3)から(5)は、単純にたとえばa0←a(τ)、v0←v(τ)、p0←p(τ)など時間τにおける軌道点の値を初期条件にし、時間を(t-τ)にリセットすることによって、再度適用されることが可能である。
【0098】
図11および図12の軌道プロファイルは、台形軌道の場合には、位置の二階微分すなわち加速度において不連続性が生じ、S曲線軌道の場合には、位置の三階微分すなわちジャークにおいて不連続性が生じることを示している。台形軌道は、系の動きの十分に良好な近似を提供し、数学的な(したがってソフトウェア実装の)複雑さがより軽いので、S曲線軌道の代わりに使用されることが多い。ただし、台形プロファイルに従って生成された動き制御プロファイルは、荷役装置の安定性のために、グリッド構造上の荷役装置の運動力学を制御するのに理想的ではない。軌道の生成を実現するために、台形軌道では、操作対象変数である加速度は、不連続に変化することが許容される。台形プロファイルと異なり、S曲線軌道では、操作対象変数であるジャークが、不連続に変化することが許容される。移行時間とも呼ばれる操作対象変数の値が変化する時点は、グリッド構造上の荷役装置の滑らかさに影響を及ぼす。加速度の変化はグリッド構造上の荷役装置の乗り心地の滑らかさに影響を及ぼすので、台形プロファイルにおける操作対象変数の移行時間は急激すぎ、グリッド構造上の荷役装置の振動をもたらす、すなわち加速度が不連続に変化する。S曲線プロファイルでは操作対象変数ジャークが不連続に変化することを許容することにより、加速度をより連続的に変化させることができ、より滑らかな乗り心地を可能にする。
【0099】
本発明のこの特定の実施形態では、S曲線プロファイルを参照して、動き制御プロファイルの生成について説明する。
【0100】
2.0 軌道生成器の構成要素
上述のように、グリッド構造上の荷役装置の車輪アセンブリの駆動機構を制御するために使用される動き制御プロファイルの生成または計算は、グリッド構造上の軌道(指令位置)の1つまたは複数の制約および所望の指定をマスタ制御装置から受信したのに応答して、大部分は荷役装置内の制御装置によって実行される。図13は、グリッド構造上の荷役装置の2点間移動のための動きプロファイルを生成することができる例示的な非限定的な動き制御プロファイル生成システム180のブロック図である。この動き制御システムは、動き制御信号を生成するための動きプロファイル生成器または軌道生成器182と、動き制御信号を本発明の1つまたは複数の実施形態による駆動機構186を駆動するための適当なトルク信号に変換する位置制御装置184とを備える。本明細書では、「動きプロファイル生成器」という用語と「軌道生成器」という用語は、入れ替え可能に使用される。
【0101】
動きプロファイル生成器182は、たとえば、荷役装置の駆動機構を監視および制御するプログラマブル論理制御装置(PLC)または他のそのような制御装置とすることができる。この例では、動きプロファイル生成器は、制御装置のオペレーティングシステム、および/あるいは制御装置内にある1つまたは複数のプロセッサによって実行される制御ソフトウェアの機能構成要素とすることができる。動きプロファイル生成器182は、制御装置の他の機能要素とデータを交換する回路基板または集積回路など、制御装置内にあるハードウェア構成要素であってもよい。動き制御プロファイルの他の適当な実装も、本発明の範囲内である。図13では動きプロファイル生成器182は、制御装置または制御システムの一体化された構成要素として示されているが、動きプロファイル生成器182は、制御装置とは別個の構成要素であることもある。そのような構成では、動きプロファイル生成器は、限定されるわけではないが、有線またはワイヤレスのネットワーキング、ハードワイヤードデータリンク、または他の適当な通信リンクなど任意の適当な通信手段を介して、動き制御生成システムの制御装置または他の構成要素とデータを交換することができる。本発明のこの特定の実施形態では、制御装置は、したがって動きプロファイル生成器は、荷役装置内にある。
【0102】
生成された動きプロファイルは、現在の状態(第1の位置)または速度から指令位置(第2の位置)までの荷役装置の動きを制御するための軌道または動き制御プロファイルを定義し、ここで、動き制御プロファイルは、時間を関数とする位置リファレンス、速度リファレンス、加速度リファレンス、およびジャークリファレンス(S曲線プロファイルの場合)のうちの1つまたは複数に関して定義される。指令位置にあるとき、荷役装置は、指令位置から所定の閾値距離のところにあってもよい。1つまたは複数の軌道セグメントの終端点加速度リファレンスおよび終端点速度リファレンスの大きさが指令位置で実質的にゼロになるように、好ましくは、所定の閾値は、実質的に5mm未満であり、より好ましくは1mm未満であり、さらに好ましくは0.5mm未満である。好ましくは、所定の閾値は、実質的にゼロである、すなわち指令位置である。
【0103】
図15は、動きプロファイル生成器182において動き制約188を位置に基づく移動に適応させ、動き制御プロファイルを、荷役装置の移行を実現するために駆動機構に送られる制御信号に変換する際の主要な段階を示す流れ図200である。この動作は、軌道生成器が、荷役装置130が現在の位置から指令位置まで、この場合には特定の保管列またはグリッドセルまで進行するための命令を受信する(204)ことによって開始する。軌道生成器182は、定義された制約および指令位置を前提として、軌道または動き制御プロファイルを生成する(206)。本発明のこの特定の実施形態では、軌道生成器182は、荷役装置130を駆動するために車輪の動きトルク需要を計算するために、定期的にこの動きプロフィルを進めされる(208)。
【0104】
図13に戻って、動作時には、行き先位置190は、マスタ制御装置174により、任意選択で動きマネージャ192を介して、動きプロファイル生成器182に提供される。行き先位置190は、グリッド構造上の荷役装置の現在の位置または状態から指令位置まで進行するコマンドを備える。荷役装置の現在の状態は、グリッド構造上の荷役装置の休止位置であってもよいし、グリッド構造上の荷役装置の現在の運動力学的状態(たとえば速度)であってもよい。グリッド構造上の荷役装置の現在の状態から、動きプロファイル生成器182は、駆動機構186の機械的制約または動き制約188あるいは駆動機構の動作に関するユーザの好みを表すことができる1つまたは複数の動き制約の関数として、動き制御プロファイルを計算する。図16に示されるように、動きプロファイル生成器182は、制約188のセットの入力を受信する。これらの制約は、速度の上限188a、加速度の上限188b、減速度の上限188c、およびジャークの上限188dを含む。これらの制約188は、動きプロファイル生成器の配備中に一度設定されることもあるし、グリッド構造上で荷役装置が動くたびに再設定されることもある。たとえば、動きプロファイル生成器182は、新たな指令位置を受信したとき、または他の制約のうちの1つについて異なる値を受信したときに、更新されることも可能である。動きプロファイル生成器は、非対称な加速度および減速度を有する動き制御プロファイルに対応するために加速度および減速度の限界を個別に設定することを可能にする。指令位置を受信したのに応答して、動きプロファイル生成器は、荷役装置を現在の位置から指令位置まで移動させるための軌道を定義する制約に基づく時間最適な動き制御プロファイル194を計算する。
【0105】
図15に示されるように、動き制御プロファイルの生成は、動き制御プロファイルの加速フェーズおよび減速フェーズにおいて加速度を連続的に増加および/または減少させるために、S曲線プロファイルの場合にはジャークである操作対象変数を適用する(206)ことを含む。図12および図16に示されるように、動き制御プロファイルは、1つまたは複数のジャークリファレンス、加速度リファレンス、速度リファレンス、および位置リファレンスを備える。これらの参照は、数学における時間に関する微分として互いに関係している。ジャークリファレンスは加速度の微分であり、加速度は速度の微分であり、速度は位置の微分である。動きプロファイル生成器は、動き制御プロファイルの異なる軌道セグメントの各々について1つまたは複数のジャークリファレンス、加速度リファレンス、速度リファレンス、および位置リファレンスを計算することによって、定期的に動き制御プロファイルを進行させる。通常は、図12を参照して上述したように、S曲線動きプロファイルでは最大で7つの異なるステージがある。動き制御プロファイル生成器は、これらの参照を、動き制御プロファイルの定義された動きプロファイルステージのセットのうちの各々について時間の関数として定義する。本発明は、S曲線動きプロファイルの7つの異なるステージに限定されず、最少で4つのステージから7つを超えるステージまで、任意数のステージとすることができる。たとえば、ステージが4つの条件下では、フェーズIIIの一定速度ステージはなくてもよく、荷役装置は、最大速度制約に到達しない。同様に、1つまたは複数の制約または指令位置の変化の結果としての変化が軌道中に少なくとも1つある場合には、ステージの数は7を超えてもよい。本発明の実施形態による動き制御プロファイルの生成については、次のセクション(セクション3.0)でさらに詳細に後述する。本発明では、「動き制御プロファイル」という用語と、「動きプロファイル」という用語と、「軌道」という用語は、同じ特徴を意味するものとして入れ替え可能に使用されている。
【0106】
図14に示されるように、グリッド構造に対する荷役装置の位置は、1つまたは複数の位置センサ198a、198bによって測定される。本発明のこの特定の実施形態では、位置センサ198a、198bは、いわゆる「第5」の車輪を備える。これは、本実施形態の第1の車輪セットおよび第2の車輪セットの各々が、荷役装置の前部の一対と後部の一対とで4つの車輪からなるので、位置センサの車輪は「第5」の車輪であるという意味である。追加の「第5」の車輪は、グリッド構造上の荷役装置の第1の方向および第2の方向の位置をそれぞれ監視する第1の車輪セットと第2の車輪セットの間に存在する。図14に示されるように、第1の「第5」の車輪198aは、第1の車輪セットのうちの1つに隣接して装着され、第2の「第5」の車輪198bは、第2の車輪セットのうちの1つに隣接して装着される。第1の位置センサに対応する第1の「第5」の車輪198aは、第1の「第5」の車輪の回転が、荷役装置の進行の位置および方向の時間に関する指標となるように、荷役装置が第1の方向に進行しているときにトラックと係合するように構成される。同様に、第2の位置センサに対応する第2の「第5」の車輪198bは、第2の「第5」の車輪の回転が、第2の方向の荷役装置の進行の位置および方向の時間に関する指標となるように、荷役装置が第2の方向に進行しているときにトラックと係合するように構成される。第1の方向および第2の方向は、それぞれトラックに沿ったX方向およびY方向とすることができる。本発明のこの特定の実施形態では、この1つまたは複数の位置センサは、「第5」の車輪が回転したときにグリッド構造に対する荷役装置の変位に変換されることが可能な回転の位置および方向を示すパルスを生成する回転式電気機械デバイスを備えるインクリメンタルエンコーダを備える。「第5」の車輪は、アーム上に装着し、トラックと係合するように下向きに偏移させることができる。1つまたは複数の位置センサ(たとえば「第5」の車輪)からの測定値に加えて、マスタ制御装置174で定義されたグリッド構造上の所望の指令位置が、動きマネージャ192に通信され、ここで、この位置が動きマネージャ192によって関連する位置単位に変換された後で、動き制御プロファイルの生成を実施するために動きプロファイル生成器に通信される。たとえば、動きマネージャ192は、荷役装置がグリッド構造上で移動するように命令されたグリッドセルの数として表現されるマスタ制御装置からの指令位置を、制御装置または動きプロファイル生成器が理解している、1つまたは複数の位置センサ198(「第5」の車輪)からの読みに対応する「位置単位」に変換する。制御装置または動きプロファイル生成器182は、その後に、マスタ制御装置からの要求された指令位置を、「第5」の車輪または1つもしくは複数の位置センサからの位置の読み、あるいは動き制御プロファイルによって提供される位置リファレンスと相関付けることができる。グリッド構造上の荷役装置の2点間移動の動き制御プロファイルまたは軌道の生成については、以下でさらに詳細に述べる。
【0107】
動き制御プロファイルが生成されると、位置制御装置184は、動き制御プロファイル194に関連するデータを、荷役装置の指令位置への移行を実施するために駆動機構186に直接送られることが可能な制御信号に変換する。上述のように、位置制御装置184は、制御装置または制御システムが軌道生成器182および位置制御装置184に関係する機能構成要素を備えるという点で、荷役装置の制御装置または制御システム170の一部を構成することができる。図13は、本発明の実施形態による例示的な位置制御装置の入力および出力を示すブロック図である。軌道生成器によって生成された動き制御プロファイルデータは、位置制御装置184に通信され、ここで、車輪アセンブリの車輪を駆動するための制御信号に変換される。動き制御プロファイルに従って、位置制御装置184は、グリッド構造に対する荷役装置の速度を変化させるために駆動機構への電力を変化させる。動き制御生成器と同様に、位置制御装置184は、制御装置内に存在する機能構成要素であってもよいし、あるいはそれ自体の制御システムを有する動きプロファイル生成器とは別個の構成要素であってもよい。たとえば、車輪アセンブリの車輪対は、ローカルな制御装置に接続されることが可能であり、動きプロファイル生成器からの動き制御信号を変換するように構成される。動き制御信号の変換は、限定されるわけではないが、動き制御データを、車輪の駆動機構またはモータを駆動するための適当なトルク制御信号に変換することを含む。
【0108】
上述し、図16に示すように、動き制御プロファイルは、位置リファレンス、速度リファレンス、加速度リファレンス、およびジャークリファレンス(S曲線プロファイルの場合)に関して、経時的なグリッド構造に対する荷役装置の2点間移動の軌道を定義する。これらの参照は、所与の2点間移動について駆動機構のそれぞれの動き属性がどのように時間の関数として制御されるかを定義する軌道生成器による関数計算を表す。これらの参照は、微分として互いに数学的に関係している。荷役装置に動き制御プロファイルに従って所望の2点間移動を実行するように命令する制御信号への動き制御プロファイルの変換は、位置制御装置が動き制御プロファイルからフィードフォワード信号を生成すること、より具体的には動き制御プロファイルから導出される加速度リファレンスを生成することを含む。
【0109】
図17は、軌道または動きプロファイル生成器から荷役装置の駆動機構への信号を変換するための位置制御装置のアーキテクチャを示す、例示的な位置制御装置184である。荷役装置の質量が分かっているので、フィードフォワード信号210(図17ではFFsとして示されている)は、動き制御プロファイルから導出された加速度リファレンスに比例する、より具体的には速度リファレンスの微分に比例する、計算されたトルク需要を表す。フィードフォワード信号210は、車輪アセンブリの車輪を駆動するための適当な信号に変換されることが可能である。ただし、グリッド構造上の荷役装置の2点間移動が動き制御プロファイルの軌道セグメントと整列することを保証するために、計算されたフィードフォワード信号210は、グリッド構造に対する荷役装置の実際の運動力学的状態を示すフィードバック信号212(図17ではFBsとして示されている)によって補償されている。グリッド構造上の荷役装置の運動力学的状態は、限定されるわけではないが、グリッド構造に対する荷役装置の位置と、荷役装置の速度とを含むことができる。荷役装置の速度は、1つまたは複数の位置センサ198からの位置測定値の時間に関する一階微分から導出されることが可能である。
【0110】
フィードバック信号212に基づいて、位置制御装置184は、荷役装置が可能な限り忠実に動き制御プロファイルに従って移動することを保証するために必要な1つまたは複数の位置センサ198からの制御信号を調節または補償することになる。本発明のこの特定の実施形態では、グリッド構造に対する荷役装置の真の状態を反映するために、1つまたは複数の位置センサからのフィードバック信号212が位置制御装置にフィードバックされる。1つまたは複数の位置センサからデータ信号を受信したのに応答して、位置制御装置は、荷役装置がアンダーシュートまたはオーバシュートせずに指令位置に到着する、すなわち加速度および速度がゼロになった時に指令位置に到着することを保証するように操作対象変数であるジャークを変化させることによって動き制御プロファイルの1つまたは複数の軌道セグメントを再生成するように命令されることが可能である。
【0111】
本発明の特定の実施形態では、1つまたは複数の位置センサからのフィードバック信号212は、車輪または車輪を駆動する駆動機構の総トルク需要を生成するためにフィードフォワード信号210と結合される。動き制御プロファイルから導出される軌道位置と1つまたは複数の位置センサからの測定された位置とが比較される。この比較は、位置誤差、すなわち軌道位置リファレンスと測定された位置との間の差を時間の関数として表す。位置誤差は、PIDまたはPIに基づいて動き制御プロファイルによって表される設定点に位置を補正するPID(比例、積分、および微分)制御装置またはPI制御装置214に供給される。PIDまたはPI214からの出力は、適用されたときに位置誤差を補正して、荷役装置の実際の軌道を動き制御プロファイルと一致した状態に戻す補正トルクである。フィードフォワード信号210は、軌道生成器によって求められる速度/加速度を満たすために必要なトルクを表す。PIDまたはPI214からの補正トルクは、総トルク需要を生成するためにフィードフォワード信号210のトルク需要と結合される。図17で通信経路に示されるように、「加速度フィードフォワード」信号と「速度フィードフォワード」信号の両方がフィードフォワード計算で結合され、ルックアップテーブルに記憶されることがある。実際には、加速度フィードフォワードトルク需要項と速度フィードフォワードトルク需要項とが、一定値(符号はsign(軌道速度))である定数トルク需要項、すなわちゼロ次トルク需要と合計される。加速度フィーフォワードトルク需要項および速度フィードフォワードトルク需要項の大きさは、それぞれ生成された動き制御プロファイルまたは軌道の加速度および速度から決定される。
【0112】
一例では、総トルク需要は、以下のように計算される。
【0113】
総トルク需要=フィードフォワードトルク需要+フィードバックトルク需要
ここで、
フィードフォワードトルク需要=加速度フィードフォワードトルク需要+速度フィードフォワードトルク需要+ゼロ次トルク需要値
ここで、
加速度フィードフォワードトルク需要=軌道加速度×加速度フィードフォワード利得
速度フィードフォワードトルク需要=軌道速度×速度フィードフォワード利得
ゼロ次フィードフォワードトルク需要=sign(軌道速度)×ゼロ次トルク需要値
ここで、以下の3つの値は、経験的に決定されている。
【0114】
加速度フィードフォワード利得は、荷役装置が搬送する容器が重くなるほど利得値が高くなるように、容器およびその内容物を含めた荷役装置の推定総質量に依存する値である。
【0115】
速度フィードフォワード利得も、荷役装置の推定総質量に依存する。
【0116】
ゼロ次トルク需要値は、荷役装置を一定のゼロに近い速度で移動させ続けるためだけに必要とされる総トルク需要の値である、すなわち比例因子である。
【0117】
これらの3つの構成要素、すなわち加速度フィードフォワードトルク需要項、速度フィードフォワードトルク需要項、およびゼロ次トルク需要値は、合計されてフィードフォワードトルク需要となり、ルックアップテーブルに記憶される。計算されたフィードフォワードトルク需要をフィードバックトルク信号で補償するときには、制御装置は、ルックアップテーブルからフィードフォワードトルク需要を取り出して、フィードバックトルク測定値と結合する。
【0118】
あるいは、加速度フィードフォワード利得、速度フィードフォワード利得、およびゼロ次トルク需要の値は、経験的に決定されるのではなく計算されることもある。
【0119】
加速度フィードフォワードトルク需要項は、荷役装置が軌道の求められる加速度と一致することを可能にするトルクを提供する、総トルク需要のうちの構成要素である。求められる加速度を満たすために必要な推進力は、求められる加速度に、保管容器および内容物を含めた荷役装置の総質量を乗算することによって計算されることが可能である。この推進力は、車輪半径を乗算することによってトルク需要に変換されることが可能である(トルク=力×半径)。荷役装置の総質量が既知である例では、加速度フィードフォワード利得は、経験的に決定されるのではなく計算されることが可能である。
【0120】
加速度フィードフォワード利得=荷役装置の総質量×車輪半径
速度フィードフォワードトルク需要項およびゼロ次トルク需要項は、荷役装置が抗力を克服することを可能にするトルクを提供する、総トルク需要のうちの構成要素である。当技術分野では、速度に比例する構成要素、速度の二乗に比例する構成要素、および定数の構成要素を有することがある、抗力を計算する様々な異なるモデルが既知である。抗力は、空気抵抗、トラック上の車輪の転がり抵抗、および/またはトラックが完全な水平でない場合の勾配抵抗によることがあり得る。この適用分野では、抗力のうち速度の二乗の項は重要でなく、トルク需要の計算をより高速にし、計算負荷を軽くするために省略され得る可能性が高い。
【0121】
転がり抵抗を克服するために必要な推進力は、法線力(保管容器および内容物を含む荷役装置の総重量)と、車輪およびトラックの性質である転がり抵抗係数とを乗算することによって計算されることが可能である。この推進力の項は、車両半径を乗算することによってトルク需要に変換されることが可能である(トルク=力×半径)。荷役装置の総質量が既知であり、トラック上の車輪の転がり抵抗係数が既知である例では、速度フィードフォワード利得は、経験的に決定されるのではなく計算されることが可能である。
【0122】
速度フィードフォワード利得=荷役装置の総質量×重力による加速度×転がり抵抗係数×車輪半径
実際には、計算するよりも、速度フィードフォワード利得およびゼロ次トルク係数を経験的に決定する方が容易であることがある。
【0123】
荷役装置の総質量の決定は、任意の保管容器および内容物の質量が考慮されなければならなので、困難である可能性がある。通常は、荷役装置は、マスタ制御装置から、グリッドフレームワーク構造内の特定の保管位置から保管容器を取り出すために命令を受信するように構成される。いくつかの例では、マスタ制御装置は、グリッドフレームワーク構造内の全ての保管容器の位置および内容物についてのデータを記憶するためにデータベースを使用し、したがって各保管容器の質量についての情報を既に有している。荷役装置がグリッドフレームワーク構造から保管容器をピックアップしたときには、マスタ制御装置は、その保管容器の質量を荷役装置上の制御装置に通信するので、この質量が、荷役装置の総質量の計算で使用されることが可能である。同様に、荷役装置がグリッドフレームワーク構造に保管容器を戻したときには、マスタ制御装置は、考慮すべき保管容器の質量はないことを荷役装置上の制御装置に通信する。マスタ制御装置は、各保管容器および内容物の質量を常に把握し、常に(たとえば顧客の注文に応えるために品目が保管容器から取り出されたときに)更新しなければならない。こうして、荷役装置によって搬送される任意の保管容器および内容物の質量が、総質量を計算するために荷役装置自体の質量に加算されることが可能となる。
【0124】
保管容器およびその内容物の質量を決定する代替の方法は、昇降装置を動作させ、保管容器をホイストして荷役装置の容器受けスペースに入れるために使用されるモータの電流引き込みを測定することである。電流引き込みは、保管容器の質量に対してほぼ線形に変化するので、これは、質量を決定するための簡単で便利な方法を提供し、マスタ制御システムが1つ1つの保管容器の質量を常に把握して、この情報を荷役装置上の制御装置に通信する必要がないという利点を有する。図36は、保管容器の内容物の質量に対してプロットされたホイストモータの測定された平均電流引き込みをプロットしたグラフである。データ点が直線に収まることが分かる。切片は、空の保管容器を持ち上げるために必要な電流(約6kA)を表している。データ点が直線に収まるので、電流引き込みと保管容器の質量との間の関係を捉えるために線形フィットが使用されることが可能であるので、測定された電流は、容器およびその内容物の質量を容易に正確に推定するために使用されることが可能である。
【0125】
上述のトルク需要の計算は、トルク需要を計算することができる方法の一例である。当業者なら、加速力および抗力を計算、推定、または測定する他の方法も本発明に適用されることが可能であることを理解するであろう。
【0126】
いくつかの例では、速度、加速度、および/またはジャークの制約は、保管容器および内容物の質量に応じて変更されることが可能である。
【0127】
加速度フィードフォワードトルク需要は軌道加速度と加速度フィードフォワード利得の積であり、加速度フィードフォワード利得は荷役装置の総質量(任意の保管容器および内容物を含む)に比例するので、荷役装置およびその貨物の総質量の変化は、加速度フィードフォワードトルク需要の変化をもたらす。いくつかの例における加速度フィードフォワードトルク需要は、総トルク需要のうちの最も有意な構成要素である。車輪モータは所与の最大トルクを提供するような定格になっているので、特に重い荷重を搬送する荷役装置は、車輪モータが提供することができるより多くのトルクを車輪モータに求めることになるので、荷役装置が指令加速度を維持することができなくなる、または車輪モータが定格トルクを超えるトルクで動作することによってオーバヒートするリスクにさらされることになる。あるいは、車輪モータがこの問題を克服するために高めの定格になっている場合には、車輪モータの全トルク容量はたまにしか使用されないので、車輪モータは適用業務に対して事実上過剰設計されており、したがって必要以上に重くなり、高価になることになる。
【0128】
この問題を克服するために、いくつかの例では、加速度制約を、荷役装置およびその貨物の総質量に依存するようにすることができる。たとえば、加速度制約の値が荷役装置およびその貨物の総質量に反比例する場合には、加速度フィードフォワードトルク需要は、実質的に一定となり、荷役装置によって搬送されるいかなる保管容器および内容物の質量からも実質的に独立することになる。このことは、車輪モータのトルク定格が、予想される加速度フィードフォワードトルク需要に一致するように選ばれることが可能であり、トルク需要が実質的に質量によって変化しないという利点を有する。
【0129】
同様に、速度フィードフォワードトルク需要は軌道速度と速度フィードフォワード利得の積であり、速度フィードフォワード利得は荷役装置の総質量(任意の保管容器および内容物を含む)に比例するので、荷役装置およびその貨物の総質量の変化は、速度フィードフォワードトルク需要の変化をもたらす。加速度制約と同様に、速度制約が(たとえば)荷役装置およびその貨物の総質量に反比例する場合には、速度フィードフォワードトルク需要は、実質的に一定となり、荷役装置によって搬送されるいかなる保管容器および内容物の質量からも実質的に独立することになる。加速度制約と速度制約の両方を荷役装置の総質量に依存させる(たとえば反比例させる)ことは、フィードフォワードトルク需要の式の3つの項がいずれも質量に依存しないことを意味するので、トルク需要は、荷役装置およびその貨物の質量に対して実質的に一定である。
【0130】
いくつかの例では、ジャーク制約の値は、荷役装置、ならびに荷役装置の容器受けスペース内に位置する任意の保管容器および内容物の総質量に依存することができる。たとえば、重い保管容器を搬送する荷役装置は、重心が低くなるのでより安定することがあり、そのため、荷役装置がグリッド上で転倒するリスクなくより大きなジャークの値を許容することができる。ジャーク制約の絶対値は、連続関数または離散値の集合として、荷役装置の総積載質量の関数として定義されることが可能である。
【0131】
他の例では、ジャーク制約の値は、保管容器の内容物に依存することができる。たとえば、荷役装置が、デリケートな、または壊れやすい品目を収容した保管容器をその容器受けスペースに入れて搬送するときには、より小さいジャークの値を使用することで可能である。荷役装置が、より頑丈な品目、または転がって容器の側面にぶつかる可能性が低い品目を収容した保管容器をその容器受けスペースに入れて搬送するときには、より大きいジャークの値を使用することが可能である。
【0132】
ジャーク制約の値を決定するために使用することが可能な1つの方法は、荷役装置に台形プロファイル(理論的に無限大のジャーク)を適用し、指令位置を達成するのにかかる時間を測定し、荷役装置の実際の動きのジャークを測定することである。その後に、S曲線プロファイルを、測定されたジャークの周辺のジャーク値の範囲と、台形プロファイルと比較したときの位置誤差および指令位置に到達するのにかかる総時間に対する影響の評価とを用いてランさせることができる。
【0133】
ここでは、どのようにしてジャーク制約、加速度制約、および速度制約を荷役装置の質量に関して変化させることができるかという具体例について述べたが、本発明の範囲は他の変化も包含し、ジャーク制約、加速度制約、および/または速度制約の他の値または数が適用され得ることは理解されるであろう。
【0134】
計算された総トルク需要は、車輪を駆動するための適当な制御信号に変換される。本発明のこの特定の実施形態では、総トルク需要は、第1の車輪セットがグリッド構造またはトラックと係合しているか、あるいは第2の車輪セットがグリッド構造と係合しているかに応じて、第1の車輪セットまたは第2の車輪セットの間で共有される。本発明のこの特定の実施形態では、上述のように、第1の車輪セットおよび第2の車輪セットの各車輪は、ハブモータ220によって個別に駆動される。第1の車輪セットは、荷役装置の本体の前部の車輪対と、荷役装置の本体の後部の車輪対とを備える。第2の車輪セットについても、同様の車輪対、すなわち第1の車輪対と第2の車輪対が荷役装置の本体の両側にある。動作時には、車輪対は、「仮想または想像」の車軸で駆動されているかのように同期して駆動される。たとえば、前部の車輪対は、同じ車軸で駆動されているかのように同期して駆動され、後部の車輪対も、同じ車軸で駆動されているかのように同期して駆動される。個別のハブモータによって駆動されてはいるが、同じ原理が、第2の車輪セットにも当てはまる。本発明では、第1の車輪セットの4つの車輪全てが同期して駆動される場合も同様に適用可能である。同様に、第2の車輪セットの4つの車輪全てが同期して駆動されることもある。車輪アセンブリの車輪をハブモータによって個別に駆動することの利点は、車輪へのトルクを車輪ごとに変化させて分配することができることであり、これは、車輪のスリップ時には特に重要である。
【0135】
モータ制御プロファイルから導出されるトルク、または補償された総トルク需要は、偏移機構216によって車輪アセンブリの車輪の間で分配される。偏移機構216は、グリッド構造上の荷役装置の任意の重量転移を考慮するために、総トルク需要を前部「車軸」と後部「車軸」との間で「分割」または分配する。たとえば、荷役装置がグリッド構造上で加速しているときには、計算された総トルク需要のうちのより大きな割合が前部「車軸」に伝達される。逆に、荷役装置がグリッド構造上で減速しているときには、総トルク需要は、後部「車軸」により多く伝達される。このように、偏移機構は、グリッド構造上で加速または減速しているときにそれに応じて荷役装置の前部部分と後部部分との間で荷役装置の重量を転移させるために、前部の「車軸」および後部「車軸」へのトルク需要の量を変化させる。
【0136】
偏移機構216は、動き制御プロファイルの軌道加速度リファレンスに従って、車輪に、より詳細には車輪を駆動するモータに、差動トルク需要を印加する。動き制御プロファイルの軌道加速度リファレンスおよび/または軌道速度リファレンスは、荷役装置がグリッド構造上で加速しているか減速しているかについての指標または参照点を提供する。言い換えれば、車輪に印加される差動トルクは、動き制御プロファイルの軌道加速度リファレンスに従う、すなわち、車両へのトルクの分配と動き制御プロファイルの軌道加速度リファレンスとの間には比例関係がある。加速するように指示する動き制御プロファイル生成器からの信号に応答して、偏移機構は、計算された総トルク需要のうちのより多くを前部車軸に伝達し、逆に減速するように命令されたときには、総トルク需要のうちのより多くが後部車軸にシフトされる、または「制動」力を提供するために総トルク需要が低減される。同様に、グリッド構造上で定速移動しているときには、総トルク需要は、前部「車軸」と後部「車軸」との間で実質的に等しく分割される。
【0137】
前部「車軸」および後部「車軸」に印加される差動トルクだけなく、車輪モータへのトルク需要も、グリッド構造上の荷役装置の偏揺れまたは転回を制御するために荷役装置の本体のいずれかの側で制御されることが可能である。たとえば、グリッド構造上の荷役装置の進行方向に応じて、左または右の車輪セットへの速度を制御し、それによりグリッド構造上の荷役装置の偏揺れ角または転回角を制御するために、トルク需要が使用されることが可能である。理想的には、グリッド部材は、直交する方向、すなわちX方向およびY方向に延びるように配列され、左の車輪および右の車輪への差動トルクは、荷役装置がトラック上で偏揺れまたは転回するのを防止するように、すなわち荷役装置が実質的に直線状に進行するように制御される。
【0138】
動き制御プロファイルを駆動機構を駆動するための制御信号に変換するだけでなく、偏移機構216は、トラック上の車輪のスリップを制御し、荷役装置に装着された1つまたは複数の位置センサおよび/あるいは1つまたは複数の位置追跡センサから位置信号を受信するのに応答して定期的に動き制御プロファイルを補償するように構成されることも可能である。1つまたは複数の位置センサは、トラック上の第1の車輪および第2の車輪のうちのいずれか1つのスリップを決定するために使用されることも可能である。これは、図17に、位置制御装置内の分離したスリップ構成要素218として示されている。車輪のスリップは、車輪のうちのいずれかの回転スピードがグリッド構造上の荷役装置の運動力学的状態より大きいときに発生する。グリッド構造上の荷役装置の運動力学的状態は、1つまたは複数の位置センサによる位置の時間に関する一階微分から、たとえば荷役装置が第1の方向に進行しているか第2の方向に進行しているかに応じて第1または第2の「第5」の車輪の回転スピードから決定または導出されることが可能である。第1の車輪セットおよび第2の車輪セットの各車輪の個々の回転スピードは、各車輪に隣接して配置された1つまたは複数の車輪エンコーダによって決定される。1つまたは複数の車輪エンコーダは、車輪の回転スピードを示すパルスを生成する回転式電気機械デバイスを備えるインクリメンタルエンコーダとすることができる。本発明のこの特定の実施形態では、スリップ制御マネージャは、車輪の回転スピードを、グリッド構造上の荷役装置の進行方向に応じて第1の「第5」の車輪または第2の「第5」の車輪から決定されるグリッド構造上の荷役装置の運動力学的状態と個別に比較することによって、車輪アセンブリの各車輪のスリップを管理する。本発明のこの特定の実施形態では、スリップ制御マネージャは、図17の位置制御装置の概略ブロック図に示されるように、位置制御装置内にある。
【0139】
車輪のうちのいずれか1つの回転スピードがグリッド構造上の荷役装置の運動力学的状態より大きい場合には、スリップ制御マネージャは、その車輪の回転スピードが荷役装置の運動力学的状態に追いつくまでその車輪に対するトルク需要の偏移を制御することによってその車輪へのトルクを除去または低減する。たとえば、位置制御装置は、偏移機構を介して、スリップしている車輪の回転スピードを低下させる、すなわちその車輪の回転を弱めるように、スリップしている車輪のトルク需要を変化させる、すなわちトルク需要を低減することができ、あるいはその車輪のトルク需要を完全に除去することもできる。あるいは、スリップ制御マネージャは、グリッド構造上の荷役装置の運動力学的状態に一致するように車輪アセンブリの車輪のスピードのバランスを取るように、スリップしている車輪から他の車輪にトルクを再分配することもできる。
【0140】
図17に示されるアーキテクチャは、例示のみが意図されており、位置制御装置の構成要素の他の配列も本発明の範囲内であることを理解されたい。たとえば、位置制御装置は、動き制御プロファイルまたは軌道を生成するための制御装置に一体化されることもあるし、あるいは別個の制御装置であることもある。
【0141】
3.0 軌道の生成
軌道または動き制御プロファイルの生成は、軌道セグメントが「ステッチング」されたときに加速度および速度が指令位置において実質的にゼロになるように軌道セグメントの数および持続時間を制御することを含む。本発明によれば、軌道セグメントの生成は、軌道中の1つまたは複数の状況、あるいは軌道の1つまたは複数の条件が満たされることの識別に依存する1つまたは複数のジャークリファレンスを適用することに依拠する。これらの状況は、制約のうちの1つまたは複数、および/あるいは指令位置の変化であってもよい。軌道を生成する際には、軌道生成器は、軌道が現在点から開始してその終端点に到達するためにはどの軌道セグメントが必要かを決定することができなければならない。これらの状況を識別する際には、生成器は、その入力(それに限るわけではないが、とりわけ指令位置)が任意の時点で変化し得るので、現在の軌道点に関わらずこの決定プロセスを実行する(すなわち軌道を生成する)ことができなければならない。たとえば、指令位置は、一般に、第5の車輪および/またはグリッドセンサからのフィードバックに基づいてグリッドセルの通過中に修正される。
【0142】
軌道が終端してもまだ進行中であっても、その最も単純な形態では、生成器に(例えば、その入力を修正することによって)軌道を再生成するように依頼した結果は、1つまたは複数の軌道セグメントを生成することを含み、軌道セグメントの各々は、
・この点以降に適用される操作対象変数の値と、
・操作された値を適用する時間の長さ(すなわち軌道セグメントの持続時間、移行時間)と、
・そのセグメントの終端点(キャッシュするのに有用な情報であるため)と
を備える。
【0143】
その結果として、既に進行中の軌道セグメントは、軌道が終端した場合に、再生成された軌道セグメントに取って代わられ、またはその他の様式で進行中の軌道セグメントになる。
【0144】
操作対象変数の値は、軌道を再生成する要求の前の値に関わらず、(以下に述べる規則内で)任意の値をとり得る。無限ジャーク軌道(S曲線軌道)の場合には、軌道セグメントの数は、動き制御プロファイルの異なるステージ中に加速度の大きさを増加または減少させるために1つまたは複数のジャーク制約を適用することによって制御される。本発明の説明を容易にするために、ジャーク制約は、加速フェーズ(正の加速度)および減速フェーズ(負の加速度)で適用される。加速フェーズは、軌道速度リファレンスが増加している軌道に対応する。逆に、減速フェーズは、軌道速度リファレンスが減少している軌道に対応する。したがって、加速フェーズで加速度を変化させるためのジャーク制約のセットと、減速フェーズのジャーク制約のセットとがある。これらは、以下のように要約される。
【0145】
加速フェーズ
ジャーク1-速度を増加させたいときに加速度の大きさを増加させる。
【0146】
ジャーク2-速度を増加させたいときに加速度の大きさを減少させる。
【0147】
減速フェーズ
ジャーク3-速度を減少させたいときに加速度の大きさを増加させる。
【0148】
ジャーク4-速度を減少させたいときに加速度の大きさを減少させる。
【0149】
ジャーク1、ジャーク2、ジャーク3、およびジャーク4は、それぞれJ1、J2、J3、およびJ4と呼ばれることもある。本発明のこの特定の実施形態では、4つの非ゼロのジャーク制約が使用される。ジャーク1およびジャーク2は、それぞれ加速フェーズにおける加速度を増加および減少させるために使用され、ジャーク3およびジャーク4は、それぞれ減速フェーズにおける加速度の大きさ(減速度)を増加および減少させるために使用される。本発明のこの特定の実施形態では、動き制御生成器は、加速フェーズの軌道セグメントの数および持続時間を制御するために、1つまたは複数の切換えパターンでジャーク1とジャーク2とを切り換え、軌道が可能な限り最短の時間で指令位置に到達し、加速度および速度が所望の指令位置で実質的にゼロに到達することを目的として動き制御プロファイル中の軌道セグメントの数および持続時間を制御するために、1つまたは複数の切換えパターンでジャーク3とジャーク4とを切り換えるように構成される。ジャーク制約のゼロ値は、加速フェーズで所望の加速度を維持したいとき、または減速フェーズで所望の減速度を維持したいときに使用される。
【0150】
本発明のこの特定の実施形態では、ジャーク制約1、2、3、および4の絶対値は等しく、動き制御生成器は、加速フェーズにおいて加速度大きさを増加または減少させたいときに符号S(+または-)を切り換えるように構成される。正符号「+」は、加速度の大きさを増加させたいときに使用され、負符号「-」は、加速度の大きさを減少させたいときに使用される。選ばれるジャーク1、2、3、および4の絶対値は、グリッド構造上の荷役装置の安定性に依存する、グリッド構造上で傾いたり転倒したりすることなく加速度の突然の変化を許容する荷役装置の能力に依存する。比較的低い重心を有する非常に安定した荷役装置では、荷役装置は、比較的安定性の低い荷役装置と比較してはるかに大きなジャークを許容することができる。グリッドセル1つ分の設置面積を有する荷役装置の場合には、ジャークの絶対値は、制約によって定義された最大速度まで荷役装置が傾いたり転倒したりすることなく、ある割合で加速することができるように選ばれる。本発明のこの特定の実施形態では、ジャークの絶対値は、20m/s3である。したがって、ジャーク1およびジャーク2は、それぞれ+20m/s3および-20m/s3の値を有することになる。同様に、ジャーク3およびジャーク4も、それぞれ+20m/s3および-20m/s3の値を有することになる。ただし、軌道セグメントの数を制御するためにジャーク1、2、3、および4が同じ値を有することは、必要というわけではない。ジャーク制約は、異なる絶対値を有することもできる。あるいは、ジャーク制約は、加速フェーズと減速フェーズの両方において加速度の大きさを増加または減少させるためにそれぞれ使用される2つの値であってもよい。
【0151】
上述のように、いくつかの例では、ジャーク制約の値は、荷役装置、ならびに荷役装置の容器受けスペース内に位置する任意の保管容器および内容物の総質量に依存することがある。
【0152】
動き制御プロファイルの生成では、ジャークの値は、軌道を再生成する要求の前の値に関わらず、上述のジャーク制約のいずれかの間で切り替わることができる。たとえば、軌道が加速フェーズにあり(すなわち指令速度に向かって速度を上げており)、指令位置が修正されて開始位置に戻された場合には、生成器は、軌道を減速させる(すなわちスピードをゼロに向かって下げる)ように見える新たな軌道セグメントを直ちに生成しなければならず、軌道が加速フェーズにあったという事実は、軌道を減速させる新たな軌道セグメントを生成する決定とは全く関わりを持たない。
【0153】
別の例として、軌道速度は既に指令速度限界であるが、軌道位置はまだ指令位置から遠い場合、「可能な限り最短の時間」の要件を満たすために、指令速度または制約速度(の絶対値)が増大され、軌道生成器の入力の制約の他の全てが不変のままである場合には、軌道生成器は、指令位置の新たな値によっては、場合によっては新たな指令速度いっぱいまで軌道速度を増加させ始めなければならない。速度制約または指令速度を増加させる命令の前まで軌道が一定速度フェーズであったという事実は、この決定とかかわりを持たない。
【0154】
軌道を生成することは、所与の時間における軌道のステータスまたは状態を確立することと、軌道が現在点から開始して所望の行き先(指令位置であることもある)に到達することができるようにその時点における軌道の状況に応じて1つまたは複数の軌道セグメントを生成することとを含む。軌道は、まとまって軌道または動き制御プロファイルを表す複数の軌道セグメントを備えることがあり、各軌道セグメントはそれぞれの軌道セグメント終端点を有する。本発明では、「終端点」という用語は、所与の軌道セグメントの終端の軌道点を反映する。
【0155】
所与の時間における軌道のステータスを確立するプロセスは、新たな生成器の入力値に対応するためにはどのような方針が取られるべきかを回答のうちの1つが明らかにするまで一連の疑問が特定の順序で制御装置または制御システムに対して提出または問合せされる消去法による決定プロセスによって行われる。上記の第1の例では、明らかな方針は、1つまたは複数の軌道セグメントを生成することによって速度をゼロまで下げ始めることである。これは、それが行われるのにかかる時間が長くなるほど、軌道が所望の位置から遠ざかることになるからである。第2の例では、明らかな方針は、速度を増加させることである。これは、それを行わないと(すなわち同じ速度のままでいると)軌道が所望の位置に到達するのにかかる時間が長くなるからである。
【0156】
軌道を生成するプロセスでは、生成器は、複数の軌道セグメントを生成することがあり、その場合には、最初の軌道セグメントを使用し、その他の軌道セグメントは後に使用するためにキャッシュすることができる。複数の軌道セグメントの各々は、1つまたは複数の速度遷移を表すことができる。簡単に言えば、ジャーク制約を用いて軌道方程式を適用することによって軌道を開始点(p0、v0、a0)から終端点(pe、ve、ae)までもっていくために1つの軌道セグメントを生成しても、十分ではないことがある。これは、軌道は、指令位置から遠ざかりながら加速していることもあり、その軌道を指令位置に向かうコースに戻すためには軌道セグメントが必要とされるという理由、および/または軌道は、その軌道をオーバシュートせずに指令位置に戻すために過度に加速していることがあるという理由による。所望の最終速度値vfに移行するときには、これらの条件の全てが考慮されなければならず、これは、複数の軌道セグメントを生成することを含むことがある。所望の最終速度値vfは、軌道が指令位置までの2点間移動であり、制御システムは指令位置における最終速度値が実質的にゼロになるようにその2点間移動の軌道を生成するように命令されるという点で、実質的にゼロであることがある。軌道を再生成する新たな要求が生じる(この場合も生成器の入力の変化の結果として)と、生成器は、全てのキャッシュされた軌道セグメントを消去しなければならない。これは、新たな生成器の入力の下ではそれらが無効である可能性があるからである。軌道を再生成するアクションは、それだけなら、新たな軌道セグメントを再計算することである。
【0157】
以下のセクションでは、図18に示される流れ図300と合わせて、本発明の実施形態による有限ジャーク軌道の生成に関連する決定プロセスを概説する。各セクションは、回答を生成するために実行される論理チェックを表す一連の質問(太字)、および疑問に対する回答に応じて取られなければならない方針という形態で構成されている。各方針は、図19から図26に示される流れ図で表される。各質問は、方針を適用する前に現在の軌道のステータスを確立することを目的としている。軌道の生成における一連の質問は、以下の通りである。
【0158】
A)強制減速が進行中(または現在要求されているか)か(302)?
強制減速は、たとえば指令位置に変化があり、軌道が更新された指令位置に到達するためには異なる軌道セグメントが生成される必要がある、すなわち軌道がより早く終端するように求められる状況で適用される。このプロセスは、更新された指令位置に到達するための減速軌道セグメントを発見するために、すなわち更新された指令位置で加速度および速度が実質的にゼロになるように、以下でさらに述べる強制減速アルゴリズムを使用する。軌道がオーバシュートせずに更新された指令位置に到達するように減速軌道を選び、指令減速度を越えないためには、制御システムは、より強力な軌道の減速を可能にするために、限定されるわけではないが減速度の新たな制約を含む新たな入力を生成する必要があることがある。以下の強制減速で述べられる方法は、強制減速制約を軌道に適用することを含む。いくつかの場合には、軌道の適当な減速制約を決定するために、アルゴリズム、さらに詳細には求根アルゴリズムが適用されることがある。目標関数は、選ばれた減速制約の下で減速が実行された場合に軌道で生じる更新された指令位置からのオーバシュートの程度であり、根は、目標関数が実質的にゼロとなる減速度である。このアルゴリズムは、根に対するより正確な近似をうまく生成し、これは、軌道が更新された指令位置にぴったり到達することができる減速度値に対応する。たとえば、減速フェーズの軌道は、以前に要求された指令位置よりも近い新たな指令位置に到達するように要求される可能性がある。強制減速アルゴリズムを適用するときには、速度リファレンスを初期開始点から実質的にゼロの大きさを有する所望の最終速度vfまで遷移させるために、本発明による速度遷移アルゴリズムが実行されることがある。速度の大きさを初期値からこの場合には実質的にゼロである所望の最終速度vfまで遷移させることは、軌道の開始点のステータスまたは現在のステータスに応じて1つまたは複数の軌道セグメントを生成することを含むことがある。
【0159】
質問Aに対する回答がイエスである場合(303)には、図34に示される以下の強制減速のセクションに記載される方法に従って、軌道を指令位置にもっていくのに必要な軌道セグメントを生成する。そうではなく、この軌道の状況が存在しない(すなわち強制減速が進行中ではなく、要求されてもいない)場合には、制御システムは、次の質問に進む。
【0160】
B)現在の軌道加速度(の絶対値)が指令加速度を超えるか(304)?
この状況では、現在の軌道加速度の絶対値が、指令加速度(加速度制約)と比較される。現在の軌道加速度の絶対値が指令加速度より大きい場合には、軌道加速度の大きさが指令加速度まで低減されるように、新たな軌道セグメントが計算される必要がある。この状況では、軌道加速度(図20参照)を低減するように、すなわち加速度リファレンスの終端点が指令加速度と等価な低減された終端点加速度を有するように、1つまたは複数のジャーク値が軌道に適用される。軌道加速度の大きさは、軌道加速度が指令加速度まで低減されるまでジャークが軌道に適用されるたびに、指令加速度と比較される。これは、以下の開始点(p0、v0、a0)および終端点(pe、ve、ae)を有する軌道セグメント生成によって例示される。
【0161】
・使用される操作対象変数(ジャーク)の値は、J=J2(軌道加速度リファレンスを低減する)。
【0162】
・軌道セグメントの持続時間は、
【0163】
【数4】
【0164】
によって与えられる。
【0165】
・終端点加速度ae、終端点速度ve、および終端点位置peは、開始点(p0、v0、a0)、J2、およびセグメントの持続時間Tを用いた軌道方程式3、4、および5の直接の適用によって得らえる。
【0166】
状況が、現在の軌道加速度が指令加速度を超えないというものである場合には、制御システムは、次の質問に進む。
【0167】
C)軌道が今から静止位置(ゼロ速度およびゼロ加速度)までもっていかれるものとして、その静止位置は、
a)指令位置と基本的に等しい(すなわち0.5位置単位以内まで)か(306)?
b)軌道の現在の位置から見て指令位置の反対側にあるか(すなわちオーバシュートするか)(308)?
c)軌道の現在の位置よりも指令位置から遠くにあるか(すなわち今現在指令位置から遠ざかるように移動しているか)(310)?
軌道加速度の大きさが指令加速度を超えないことが分かっているので、制御システムは、軌道が停止された場合に軌道が指令位置にあるかどうかをチェックする。これにより、軌道が指令位置からどれくらい遠いか、または軌道が指令位置をオーバシュートすることになるかどうかについての指標も得られる。一連の質問が制御システムに与えられ、消去法によって、現在の状態の軌道のステータスが確立されることが可能であり、軌道がその2点間移動のコース上にあることを保証するために所要の対応策が軌道に適用される。
【0168】
質問(a)に対する回答がイエスである場合には、制御システムは、現在の軌道点(p0、v0、a0)から終端点加速度aeおよび終端点速度veが指令位置において実質的にゼロとなる終端点までの1つまたは複数の軌道セグメントを生成することによって、指令位置において軌道が静止位置になるようにゼロ速度まで下げるための必要なステップを実行する(図21参照)。これは、以下の開始点(p0、v0、a0)および終端点(pe、ve、ae)を有する1つの軌道セグメントの生成によって例示される。
【0169】
・使用される操作対象変数(ジャーク)の値は、J=J2(軌道加速度リファレンスを低減する)。
【0170】
・軌道セグメントの持続時間は、
【0171】
【数5】
【0172】
によって与えられる。
【0173】
・終端点加速度aeおよび終端点速度veは実質的にゼロであり、終端点peは、開始点(p0、v0、a0)、J2、およびセグメントの持続時間Tを用いた軌道方程式3、4、および5の直接の適用によって得らえる。
【0174】
ただし、回答が質問(a)に対しては「ノー」であるが、最後の2つの質問(b)および(c)のいずれかに対してはイエスである場合(308、310)(図22および図23参照)には、状況は、軌道が指令位置をオーバシュートしているというものである。この場合には、是正アクションは、軌道が指令位置に向かって「戻る」ことによって回復することができるように、軌道速度を「逆」の値にすることとなる。指令位置に向かう順方向軌道と同様に、1つまたは複数の逆方向軌道セグメントは、逆に動作する荷役装置などの動力デバイスが指令位置に向かって進行するように1つまたは複数のジャーク値を適用することによって提供される。逆方向軌道セグメントの持続時間または長さは、指令位置からのオーバシュートの程度によって決まる。たとえば、オーバシュートの程度が大きい場合には、軌道は、指令位置でゼロ速度まで下がる前に、指令速度に到達するのに十分な時間を有することになる。逆に、オーバシュートの程度が短い場合には、軌道速度は、指令速度に到達しないこともあり、したがって逆の軌道が可能な限り最短の時間で指令位置に到達することを可能にする所望のピーク速度vpeakが必要となる。どちらの場合も、速度の大きさを初期または現在の値から最終速度vfの値まで遷移させるために、「速度遷移アルゴリズム」が適用される。速度遷移アルゴリズムについては、以下でさらに詳細に述べる。基本的には、軌道を初期(現在)の状態または軌道点から所望のピーク速度vpeakに対応する初歩の軌道セグメントの終端点速度vEに到達する軌道点までもっていくためには、第1の速度遷移アルゴリズムが使用される。その際には、初期軌道点(p0、v0、a0)、終端点速度(vE)、指令加速度(amax)、および軌道加速度リファレンスの大きさを増加または減少させるためのジャーク制約の特定の値が与えられる。第1の速度遷移アルゴリズムの終端点(pE、vE、aE)を開始点(p0、v0、a0)に割り当てることにより、第2の速度遷移アルゴリズムは、速度リファレンスの大きさを、所望のピーク速度vpeakに対応する初期速度v0から、実質的にゼロの値を有する、所望の最終速度vfに対応する新たな終端点速度vE、および実質的にゼロに対応する終端点加速度aEにもっていく。速度遷移アルゴリズムについては、以下でさらに詳細に述べる。軌道が指令位置から遠ざかるように移動している場合には、速度遷移アルゴリズムを指令位置において所望の最終速度vfに適用する前に、現在の軌道加速度の大きさを実質的にゼロまで下げる必要がある。図23に示される流れ図に示されるように、軌道加速度の大きさは、指令位置における実質的にゼロの所望の最終速度vfに逆転を適用する前に、実質的にゼロまで下げられる。
【0175】
ただし、3つの質問全てに対する回答が「ノー」である場合には、状況は、今すぐにゼロ速度に下げることによって、軌道を指令位置をアンダーシュートさせるというものであるはずである。この状況では、制御システムは、軌道生成の次のステージを確立するために次の質問に進む。
【0176】
D)軌道速度が指令速度を超えるか(312)?
本発明の実施形態によれば、動き制御プロファイルの生成は、荷役装置が、荷役装置を指令位置をオーバシュートさせることなくグリッド構造上で加速フェーズ中に最大可能速度を達成することができることに依存する。逆に、速度が低すぎると、荷役装置を指令位置をアンダーシュートさせることになる。ただし、荷役装置が進行することができるピークまたは最大速度は、上述の最大速度制限制約のうちの1つまたは指令速度によって定義されるものに非常に限定される。駆動機構の指令速度により近いピーク速度vpeakに到達する能力は、グリッド構造上の進行長さによって決まる。進行長さが長い場合には、減速フェーズに入る前に速度が指令速度に到達するのに十分な時間がある。進行長さが短い場合には、減速フェーズに入る前に指令位置をオーバシュートすることなく速度が指令速度に到達するのに十分な時間がないことになる。
【0177】
制御装置は、常に、2点間移動を完了する可能な限り最短の時間を実現するように、制約によって定義される指令速度に到達することを目標とする。指令速度の到達は、進行長さが短すぎる場合には実現不可能であることもある。荷役装置が指令速度に到達することになっている状況では、荷役装置は、指令位置をオーバシュートすることになる。したがって、荷役装置が可能な限り最短の時間で軌道を完了することを可能にする、指令速度と初期速度v0との間で荷役装置が到達することができる最適ピーク速度vpeakを選ぶことが必要とされる。
【0178】
この特定の状況では、制御システムは、軌道速度が指令速度を超えるかどうかを決定する。質問D)に対する回答がイエスである場合(313)(図24参照)には、制御システムは、軌道セグメントの終端点が指令速度に対応するように1つまたは複数の軌道セグメントを生成することによって軌道速度リファレンスを指令速度まで下げるために速度遷移アルゴリズムを実行し、そうでない場合には、制御システムは、次の質問に進む。以下でさらに述べるように、速度遷移アルゴリズムの原理は、軌道を開始点から、速度の大きさが最終速度vfであり、終端点加速度が実質的にゼロである軌道点までもっていくために必要な1つまたは複数の軌道セグメントを生成することである。
【0179】
軌道が指令位置をオーバシュートまたはアンダーシュートすることなく到達し得る所望のピーク速度vpeakを発見するために、求根アルゴリズムが使用される。本発明の実施形態による速度遷移アルゴリズムは、速度の大きさをピーク速度vpeakまで遷移させ、次いで実質的にゼロまで戻すように遷移させるために必要な軌道セグメントを生成する。目標関数は、オーバシュートまたはアンダーシュートの程度であり、根は、目標関数が実質的にゼロとなる所望のピーク速度である。
【0180】
E)現在の軌道速度の大きさは指令速度と同じか(314)?
質問E)に対する回答がノーである場合には、次の質問Fに進む。イエスである場合(315)(図25参照)には、状況は、現在の軌道速度の大きさが指令速度と同じであるというものであり、制御システムは、一定速度フェーズの残りについて1つまたは複数の軌道セグメントを計算することになる。一定速度フェーズまたは定速移動フェーズの残りについて1つまたは複数の軌道セグメントを計算するためには、軌道がゼロ速度に向かって下がり始めるときに軌道が進行している距離が計算される必要がある。これは、通常は、上記の質問のうちの1つ、特に上記の質問Cに回答した結果として計算されることになる。
【0181】
一定速度フェーズの残りについての1つまたは複数の軌道セグメントの持続時間、したがって軌道が一定速度フェーズの間にまだカバーすることができる距離は、現在の残りの距離からゼロ速度に向かって下がり始めるときに軌道が進行している距離を引くことによって決定される。これは、以下のように説明することができる。
【0182】
(1)軌道は、ある時間Tにわたって指令速度のままでいることができ、それにより軌道位置はΔpcruiseだけ前進することになる。
【0183】
(2)時間Tの後で、指令速度からゼロ速度(すなわちvf=0)への速度遷移アルゴリズムを適用することによって軌道は速度遷移を実行しなければならず、これにより軌道位置はさらにΔpdecelだけ前進することになる。
【0184】
(3)したがって、残りの距離=Δpcruise+Δpdecel
【0185】
軌道が現在の位置にある場合は、残りの距離は、指令位置-現在位置(p0)から計算される。
【0186】
Δpcruise、Δpdecel、およびTの値は、以下のように制御システムによって計算される。
【0187】
Δpdecel:速度遷移(2)が実行されるときに軌道が進行している距離。これは、軌道セグメント+進行した距離という通常の出力を生成する速度遷移アルゴリズムによって実行される。この距離は、減速フェーズ(指令速度からゼロ速度まで)の間にどれだけ軌道が進行するか、すなわちΔpdecelと等価である。
【0188】
(3)によって、制御システムは、Δpcruise=残りの距離―Δpdecelを計算することができる。
【0189】
最後に、定速移動フェーズの軌道セグメントの持続時間Tは、
【0190】
【数6】
【0191】
から決定される。
【0192】
ここで、
Δpcruiseは、一定の指令速度である間に進行した距離である。
【0193】
maxは、指令速度である。
【0194】
一定速度フェーズの軌道セグメントの持続時間は、距離Δpcruiseの絶対値を指令速度vmaxで割ることによって得られる。一定速度フェーズの軌道セグメントの操作対象変数ジャークの値は、ゼロである。一定速度フェーズのセグメントの間には軌道速度は一定であるので、制御システムは、この点において軌道加速度の大きさがゼロであると表明し、そうでない場合には、上記の質問(C)(「速度オーバシュート」)によって実行される対処が正しく実行されず、この計算は、質問(C)の計算のチェックとして使用されることが可能である。
【0195】
上記の質問(A)から(E)が全て偽である場合には、軌道速度を増加させることができると結論付けることができる。
【0196】
消去法により、軌道の状況は、静止位置にもっていかれれば軌道はオーバシュートしない、軌道は現在は指令速度または指令加速度のいずれも超えていない、そして軌道はまだ指令速度で進行していないと結論付けることができる。したがって、状況は、速度の大きさを増加させることができるというものであるはずである。質問をこの順序で構築することにより、2点間移動の可能な限り最短の時間が実現される。
【0197】
F)軌道速度の大きさを指令速度まで増加させることができるか(316)?
この状況では、消去法により、軌道速度の大きさは、指令速度まで増加させることができるという状態にある。ここで、制御システムは、軌道速度の大きさを指令速度にもっていくために第1の速度遷移アルゴリズムを適用し、その直後に、軌道を静止位置にもっていくために、すなわち速度の大きさが実質的にゼロになるように、第2の速度遷移アルゴリズムを適用する。2回の連続した速度遷移によって得られる軌道位置が指令位置をオーバシュートしない場合には、この質問に対する回答はイエスであり(316)(図26参照)、この場合には、第1の速度遷移計算の一部として生成される軌道セグメントが、当面の解決策として採用される。
【0198】
しかし、指令位置をオーバシュートすることなく軌道速度を指令速度まで増加させることができない場合には、ピーク速度vpeakに対応する所望の最終速度vfが必要となり、この場合には、その後に第2の速度遷移が行われることで軌道速度が指令位置において静止位置にもっていかれるように、軌道速度を増加させることができる。本発明によれば、これは、最適なピーク速度vpeakの探索において目標問題に求根アルゴリズムを適用することによって解決され、ここで、候補ピーク速度が横軸であり、オーバシュート距離の程度が縦軸である。したがって、目標関数f(t)は、指令位置からの偏差とも呼ばれるオーバシュートまたはアンダーシュートの程度である。根は、指令速度vmaxと初期速度v0との間のピーク速度vpeakであり、ここで、指令位置からの偏差は、実質的にゼロである、すなわちf(t)=0である。この求根アルゴリズムは、最終ピーク速度vpeakの1回または複数回の初期推測と、速度遷移アルゴリズムを適用することによって最終ピーク速度vpeakまでの速度遷移を実現するのに必要な軌道セグメントを決定することとによって開始する。指令位置からの偏差またはオーバシュートは、軌道方程式(3から5)を適用することによって決定される。これは、求根アルゴリズムを適用するときに選ばれる各ピーク速度vpeakごとに繰り返される。求根アルゴリズムを繰返すたびに、生成される根に対する近似は次第に正確になっていく。この反復は、一連の数、この場合には選ばれるピーク速度が根に対して収束するまで、すなわち根の目標関数が実質的にゼロに等しくなるまで繰り返される。選ばれるピーク速度vpeakの明白な候補は、
・初期軌道速度の大きさ、
・指令速度、
・上記2つの重み付けされた組合せ
である。
【0199】
求根アルゴリズムの適用についてのさらなる詳細は、以下のセクション5.0で述べる。求根アルゴリズムは、ニュートンの求根法、セカントの求根法、二分求根法、補間による求根法、逆補間による求根法、ブレントの求根法、ブダン-フーリエによる求根法、およびストラムチェーン(Strum-chain)による求根法のうちの任意の1つとすることができる。速度遷移(現在の速度から解決策の最上位の速度まで)によって得られる軌道セグメントは保持される。
【0200】
軌道または動き制御プロファイルの生成の最終ステージにおいて、速度の大きさが指令速度または速度制約まで増加させる必要がない場合には、軌道を指令位置でゼロ速度にもっていくように速度遷移アルゴリズム318が適用される。
【0201】
4.0 速度遷移アルゴリズム
有限ジャーク(「S曲線」)軌道を生成するプロセスは、本発明で速度遷移アルゴリズムと呼ばれるものを解くことに大きく依拠している。速度遷移アルゴリズムは、軌道を、位置p0、速度v0、および加速度a0の初期軌道点から、最終加速度の大きさを実質的にゼロとする所望の最終速度vfにもっていくのに必要とされる軌道セグメントを決定することを中心とする。最終速度vfは、所望の任意の値とすることができる。たとえば、荷役装置が停止状態にもっていかれるように命令される必要があるときには、vfは、実質的にゼロに設定されることが可能であり、速度遷移アルゴリズムは、軌道を現在の軌道点から停止状態にもっていくのに必要な軌道セグメントを実行することになる。これは、指令加速度(amax)、指令速度(vmax)、および1つまたは複数のジャーク制約J1、J2、J3、J4の制約を受ける。速度遷移アルゴリズムの説明および理解を容易にするために、1つまたは複数のジャーク制約は、加速度の大きさを増加させるときにはJincと呼ばれ、加速度の大きさを減少させるときにはJdecと呼ばれる。
【0202】
速度遷移アルゴリズムは、サブアルゴリズム、すなわち第1の速度遷移サブアルゴリズムおよび第2の速度遷移サブアルゴリズムに分解され、本発明による速度遷移アルゴリズムを完了するには、両方が実行される必要がある。第1の速度遷移サブアルゴリズムは、軌道の妥当性または状態と、第2の速度遷移サブアルゴリズムを正しく適用するためには1つまたは複数の軌道セグメントが必要かどうかとをチェックする。第2の速度遷移サブアルゴリズムは、所望の最終速度vfの値に関わらずvfまでの(速度)遷移を実際に実行するアルゴリズムである。疑問を避けるために、「速度」という用語と「速度リファレンス」という用語は、同じ機能を意味するものとして入れ替え可能に使用されている。同様に、「加速度」という用語と「加速度リファレンス」という用語も、同じ機能を意味するものとして入れ替え可能に使用されている。
【0203】
第2の速度遷移サブアルゴリズムを適用するときには、i)軌道加速度が過剰でないことを保証すること、ii)最終速度vfから遠ざかるように加速する軌道に対処すること、およびiii)最終速度vfのオーバシュートに対処することが不可欠である。これらの条件のうちのいずれかが満たされない場合には、制御システムは、第2の速度遷移サブアルゴリズムに進む前に、これらの異常または状況に対処するための1つまたは複数の軌道セグメントを生成するために第1の速度遷移サブアルゴリズムを適用する。言い換えれば、速度遷移アルゴリズムの一般的なケースに対処するためには、制御システムは、最初にこれら3つのチェック、すなわち過剰な加速度、誤った方向の加速、および軌道速度の所望の最終速度vfのオーバシュートのチェックを実行する必要がある。これらの是正ステップを設ける、または軌道中でこれらのサブ問題が生じた場合にこれらのサブ問題に対処するための軌道セグメントを生成することにより、問題は、第2の速度遷移サブアルゴリズムが解決することができる単純な問題に単純化される。
【0204】
図28は、第2の速度遷移サブアルゴリズムの適用と、第2の速度遷移サブアルゴリズムが実施されるために必須のチェックとを詳述する流れ図である。
【0205】
1つまたは複数の軌道セグメントを生成する際の出力変数は、ジャーク値J、および軌道セグメントの時間持続時間Tである。速度遷移アルゴリズムを説明するために、所望の最終速度vfと所与の時点の速度v0の間の差Δv=vf-v0として定義されるデルタV Δvが、軌道のステータスを評価する際に使用される。速度またはデルタV Δvの値は、軌道中のどこで本発明による速度遷移アルゴリズムが適用されているかによって変化する可能性がある。これは、速度リファレンスv(t)が、軌道中のどこで速度リファレンスがとられたか、すなわち軌道点における速度軌道の値に依存するからである。好ましくは、デルタVは、所望の最終速度リファレンスと、1つまたは複数の軌道セグメントの初期または終端点速度リファレンスのいずれかとの間の差に基づく。
【0206】
このプロセスは、軌道セグメントの出力リストを初期化し、条件が速度遷移アルゴリズムを開始するのに適正であるかどうかを決定することから開始する。
【0207】
4.1 第1の速度遷移サブアルゴリズムの適用
しかし、特定の条件が満たされなければ、あるいは軌道中に対処される必要がある異常または状態があるときには、第2の速度遷移サブアルゴリズムは開始することができない。第2の速度遷移サブアルゴリズムの有効な開始のための条件は、以下のうちの1つである。
【0208】
a)軌道が、ゼロ軌道加速度a0から開始して、既に所望の最終速度vfである。数学的には、これは次の条件で与えられる。
【0209】
【数7】
【0210】
b)軌道がまだ所望の最終速度vfではなく、軌道がvfに向かって加速しているが、軌道加速度が指令加速度の制約を超えていない、または初期加速度がゼロである。数学的には、これは次の条件で与えられる。
【0211】
【数8】
【0212】
c)軌道がまだ所望の最終速度vfではなく、初期加速度a0がゼロである。数学的には、これは次の条件で与えられる。
【0213】
【数9】
【0214】
これらの条件は、図28では、決定ブロック504、506、508、および510として示されている。第2の速度遷移サブアルゴリズムの条件を満たすときとは対照的に、第2の速度遷移サブアルゴリズムは、軌道加速度が過剰であるなど軌道中の特定の異常または状態が対処される必要がなければ、実行することができない。これらのサブ問題は、第1の速度遷移サブアルゴリズムによって対処される。これらの異常または状態に対処しなければ、第2の速度遷移サブアルゴリズムは、速度を所望の最終速度vfに遷移させることができない。これらは、無効開始状態と呼ばれ、図28の流れ図では「無効開始状態」512と記されている枠で示されており、以下を含む。
【0215】
a)軌道が既に所望の最終速度vfであるが、初期加速度a0がゼロではない。言い換えれば、軌道は、所望の最終速度vfから遠ざかるように加速している。この異常を補正するためには、3つまたは4つの軌道が必要とされる。1つは、軌道加速度の大きさをゼロにもっていくためのものであり、その後に、速度遷移サブアルゴリズムは、軌道速度の大きさを所望の最終速度vfに戻すための2つまたは3つの軌道セグメントをさらに生成することができる。数学的には、この無効開始状態の条件は、以下によって与えられる。
【0216】
【数10】
【0217】
b)軌道が、所望の最終速度vfから遠ざかるように加速している。この場合には、Δvおよびa0は、反対の符号を有し(すなわちΔvが正で、a0が負であるか、またはΔvが負で、a0が正である)、3つまたは4つの軌道セグメントが必要とされる。1つは、軌道加速度の大きさをゼロにもっていくためのものであり、その後に、速度遷移サブアルゴリズムは、軌道速度の大きさを所望の最終速度vfに戻すための2つまたは3つの軌道セグメントをさらに生成することができる。数学的には、この無効条件は、以下によって与えられる。
【0218】
【数11】
【0219】
c)初期加速度a0が、制約最大または指令加速度amaxを超える。軌道加速度を指令加速度amaxにもっていくために、1つまたは複数の軌道セグメントが必要とされる。数学的には、この無効条件は、以下によって与えられる。
【0220】
【数12】
【0221】
速度遷移アルゴリズムを完了する前に、軌道を第2の速度遷移サブアルゴリズムを適用できる状態にするために、これらの条件を満たさない、または第2の速度遷移サブアルゴリズムの適用に必須の軌道中の異常が最初に論じられる。これらの状態は、第1の速度遷移サブアルゴリズムによって対処され、図27に示される流れ図400に記されるように特定の順序で対処される必要があるサブ問題と呼ばれる。これらの異常に対処することにより、速度遷移アルゴリズムの解となる1つから5つの一連の軌道セグメントを生成する。
【0222】
サブ問題に対処し、1つまたは複数の軌道セグメントを生成する際に、いくつかの例では、表1に示されるように、JincおよびJdecに加えて、プリエンプティブジャーク値Jredが入力402に導入される。
【0223】
【表1】
【0224】
表1:第1の速度遷移サブアルゴリズムの適用における入力および出力
redは、プリエンプティブジャークJredは、Jdecとは異なり、加速度の大きさを実質的にゼロに低減させるために必要とされるという点で、Jdecとは異なる。言い換えれば、Jredは、Jdecとは異なる速さで加速度の大きさを低減し、以下で述べる2つの初期チェック(過剰な加速度、および最終速度から遠ざかるような加速)を扱うときに必要とされる。したがって、過剰な加速がある、または軌道が所望の最終速度vfから遠ざかるように加速しているときには、制御システムは、加速度を実質的にゼロまで低減するために、プリエンプティブジャークJredを適用する。上記の説明は、JredとJdecが異なる値を有する例に当てはまる。他の例では、JredとJdecの値は同じであってもよい。
【0225】
以下で詳細に述べる図27に示される流れ図400は、第1の速度遷移サブアルゴリズムのサブ問題の解と、軌道を生成するために本発明による第2の速度遷移サブアルゴリズムが適用される前にそれらが対処される順序とを詳細に示している。これらのサブ問題は、1つまたは複数のブロックに分解され、その1つまたは複数のブロックの各々が、第1の速度遷移サブアルゴリズムによって対処されるサブ問題の解を表す。サブ問題の各解は、出力リストに記入される1つまたは複数の軌道セグメントを生成する。最初は、軌道セグメントの出力リストは空である。速度遷移アルゴリズムの説明のために、この文脈における「統合する」という用語は、「セグメントの終端点に到達するために軌道方程式3、4、および5(開始点、軌道セグメントジャーク、およびセグメント持続時間を用いる)を適用する」を意味する。
【0226】
A)過剰な加速度の対処
決定プロセスにおいて、本発明の第2の速度遷移サブアルゴリズムを適用する前に、制御システムは、初期加速度の大きさ|a0|が制約指令加速度amaxより大きいかどうかを決定する。これは、図27では決定ブロック404によって表される。回答が肯定である場合には、制御システムは、軌道セグメント406を出力リストに追加する。この新たな軌道セグメントは、第2の速度遷移サブアルゴリズムを解こうと試みる前に軌道加速度をamaxまで低減し、この場合には軌道セグメントが生成されなければならず、この軌道セグメントについては、
・使用される操作対象変数ジャークは、J=-sign(a0)×Jredである。負符号は、加速度を初期加速度a0から低減するために必要である。
【0227】
・軌道セグメント持続時間は、T1=|amax-|a0||/Jredで与えられる。
【0228】
・操作対象変数ジャークJを適用することにより、終端点軌道加速度aE1は、aE1=sign(a0)×amaxで与えられる。
【0229】
・初期位置p0および初期速度v0から開始して、終端点速度vE1および終端点位置pE1は、開始点(a0、v0、p0)、ジャークJ、および軌道セグメント持続時間T1を用いて軌道方程式3、4、および5を直接適用することによって得られる。これは、流れ図では、得られる速度vE1および加速度aE1を計算するために出力リスト上の全てのセグメントを用いて開始点(v0、a0)からの軌道を統合する(408)、として示されている。
【0230】
軌道セグメントがこのステップで生成される場合には、その終端点が、次のサブ問題の初期軌道点となる、すなわち(a0、v0、p0)←(aE1、vE1、pE1)であり、デルタVがΔv←vf-vE1によって再計算される(412)。言い換えれば、生成された軌道セグメントの終端点が、後続の軌道セグメントの開始点に割り当てられる。これは、図27ではブロック410によって表される。
【0231】
しかし、過剰な加速度をamaxまで下げるために新たな軌道セグメントを生成するステップは、初期加速度a0の大きさがamax以下である場合には不要であり、制御システムは次のサブ問題に進む。
【0232】
決定ブロック404の結果(すなわち加速度a0の大きさがamaxより大きいか否か)はどのようなものであれ、アルゴリズムは、ステップ408および410に進む。ステップ408は、出力リスト中の全ての軌道セグメントを含めて開始点からの軌道全体を統合する。加速度が過剰であり、新たな軌道セグメントがステップ406で生成されている場合には、このセグメントも統合される。加速度が過剰ではなく、新たな軌道セグメントが生成されていない場合には、軌道セグメントの出力リストは空であり、408の統合ステップは依然として進行するが、いかなる影響も有さないので、得られる速度vE1および加速度aE1は、初期速度v0および初期加速度a0と同じとなる。
【0233】
ステップ408と同様に、ステップ420および436で軌道を統合する後のステップは、以前の決定ブロックの結果に関わらず適用される。統合するステップは、以前のステップで新たな軌道セグメントが出力リストに追加されているか否かに関わらず、開始点からの軌道全体に適用される。
【0234】
B)所望の最終速度vfから遠ざかるように加速している軌道の対処
これは、図27では、決定ブロック414および416によって表される。制御システムは、速度の大きさがvfであるが、vfから遠ざかるように加速している異常414、および/または速度がvfでなく、vfから遠ざかるように加速している異常(状態)416に対処するために、決定プロセスを適用する。前者の異常414では、制御システムは、デルタV Δvがゼロに等しい、すなわちΔv=0であり、初期加速度a0の大きさがゼロに等しくない、すなわちa0≠0であるかどうかを決定する。これらの状態が両方とも存在する場合には、これは、軌道が所望の最終速度vfから遠ざかるように加速しているという指標である。これらの状態が両方とも存在しない場合には、制御システムは、決定ブロック416に進み、軌道がvfから遠ざかるように加速しているかどうかを決定する。そのようになっているかどうかを決定するために、制御システムは、初期加速度a0の大きさとデルタV Δvの積が負である(Δv×a0<0)かどうかを決定する(416)。この積が負である場合には、これは、軌道が所望の最終速度vfから遠ざかるように加速している、すなわち反対方向に移動しているという指標である。積Δv×a0は、加速度a0の符号がデルタV Δvの符号の反対である場合、すなわち軌道が最終速度に到達するために必要な方向と反対の方向に加速している場合に負となる。
【0235】
決定ブロック414および416のいずれかにおいて、軌道が所望の最終速度vfから遠ざかるように加速しているという意味で両方の状態が肯定である場合には、第2の速度遷移サブアルゴリズムを適用することができるようになる前に、軌道加速度をゼロまで低減することによってこの異常を是正するために、軌道セグメント418が生成されなければならない。この新たな軌道セグメント418については、
・使用される操作対象変数ジャークは、J=-sign(a0)×Jredである。負符号は、加速度を実質的にゼロに低減するために必要である。
【0236】
・軌道セグメント持続時間は、
【0237】
【数13】
【0238】
で与えられる。
【0239】
・終端点加速度の大きさは、ゼロである(aE2=0)。初期位置a0および初期速度v0から開始して、終端点速度vE2および終端点位置pE2は、開始点(a0、v0、p0)、ジャークJ、および軌道セグメント持続時間T2を用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。これは、流れ図では、終端点速度vE2および終端点加速度aE2を計算するために出力リスト上の全てのセグメントを用いて開始点(v0、a0)からの軌道を統合する(420)、として示されている。
【0240】
このような軌道セグメントがこのステップで生成される場合には、その終端点が、次のサブ問題の初期軌道点となる、すなわち(a0、v0、p0)←(aE2、vE2、pE2)となり、デルタVがΔv←vf-vE2によって再計算される、すなわち値が割り当てし直される(420、422)。
【0241】
ただし、決定ブロック414および416のいずれかにおいて両方の状態が肯定でない場合には、軌道がvfであり、加速度が実質的にゼロであるか、軌道がvfに向かって加速しているかのいずれかであり、制御システムは、初期軌道点(a0、v0、p0)のステータスをそのまま維持し、次のサブ問題に進む。
【0242】
C)軌道の最終速度のオーバシュートの対処
この第3のチェックは、図27では決定ブロック424によって表される。ステップA)の第1のチェックでは、軌道加速度が過剰でないことを保証し、ステップB)の第2のチェックでは、軌道が「間違った」方向に加速していないことを保証した。そのため、この点までに、軌道加速度aはゼロとなる(この場合には、その時点で軌道が実際には加速していないので、第3のチェックは何も行わない)、または軌道は所望の最終速度vfに向かって加速している(オーバシュートすることもある)。このシナリオでは、第2の速度遷移サブアルゴリズムを適用する前に、制御システムは、最終チェックとして、軌道が所望の最終速度vfをオーバシュートしているかどうかを決定する。この決定プロセスは、決定ブロック424において、初期軌道加速度a0が実質的にゼロに等しいかどうかをチェックすることから開始する。初期軌道加速度a0の大きさが実質的にゼロに等しい場合には、これは、状態が第2の速度遷移サブアルゴリズムを適用するのに有効であるという指標である。しかし、軌道加速度が実質的にゼロに等しくない場合には、軌道速度が依然として上向きの軌道上にある可能性があり、所望の最終速度vfをオーバシュートする可能性があるというリスクがある。このチェックは、第3のチェックが適用されるときにこのシナリオを捉える助けとなり、それを行う際に、軌道速度が所望の最終速度vfと交差してそこから遠ざかり続ける場合にのみ、加速度の大きさをゼロに低減する軌道セグメントを適用する。
【0243】
軌道速度が所望の最終速度vfと交差してこれを超える場合には、第2の速度遷移サブアルゴリズムを適用する前に、以下の是正アクションが行われる。最初に、適用されるジャークが以前の2つのチェックで用いられたJredではなくJ=Jdecである仮の軌道セグメントが計算されるが、この仮の軌道セグメントは、出力リストには追加されない。Jdecは後に第2のサブアルゴリズムで速度を所望の最終速度vfに遷移させるときに適用されるので、第3のチェックにおいて同じジャーク値Jdecを用い続けるのは、軌道がやはり所望の最終速度vfに向かって前進しており、オーバシュートする可能性があることから理に適っている。軌道速度がvfをオーバシュートする可能性がある(第3のチェックでオーバシュートすると決定した場合)からといって、軌道がvfをオーバシュートせずにvfにぴったり到達することができる場合に使用されるはずのジャークと同じ値が用いられなくなるということはない。プリエンプティブジャークJ=Jredは、軌道加速度が過剰である、および/または軌道が間違った方向に加速しており、戻される必要がある特殊な状況で使用される。
【0244】
ステップ426で、荷役装置が仮の軌道セグメントの終端で実現するはずの、結果としての速度vauxを計算するために、軌道が仮の軌道セグメントを用いて統合される。この速度は、次のステップにおいて、軌道が最終速度vfをオーバシュートしたかどうかを計算するために必要となる。
【0245】
決定ブロック432において軌道速度が最終速度vfをオーバシュートしたかどうかを決定する際には、
・直前のチェックにおける初期速度v0から所望の最終速度vfへの速度遷移を表すデルタV Δv428が計算される。したがって、Δvは、初期速度v0の所望の最終速度vfからのオーバシュートの程度を表す。
【0246】
・デルタV Δvaux430は、ステップ426で計算された仮の軌道セグメントの終端点速度vauxから所望の最終速度vfへの速度遷移を表す。したがって、デルタΔvauxは、現在計算されているvauxの所望の最終速度vfからのオーバシュートの程度を表す。
【0247】
最終チェックにおいて軌道セグメントがオーバシュートする場合には、積Δv×Δvauxは、ゼロ未満すなわち負となる(Δv×Δvaux<0)、すなわちデルタV ΔvまたはΔvauxのうちの1つが負となり(図27の決定ブロック432参照)、(Δv×Δvaux<0)である場合、これは軌道セグメントが所望の最終速度vfをオーバシュートするという明白な指標である。この場合には、ステップ434において、制御システムは、加速度の大きさを実質的にゼロにもっていくために、以前に計算された仮の軌道セグメントを出力リストに追加する。この新たな軌道セグメント(この段階ではもはや仮ではない)については、
用いられる操作対象変数ジャーク値は、プリエンプティブジャークJredではなくJdecである。したがって、適用されるジャークは、J=-sign(a0)である。負符号は、加速度を実質的にゼロまで低減するのに必要である、すなわち減速を示している。
【0248】
・軌道セグメント持続時間は、T3=|a0|/Jdecで与えられる。
【0249】
・終端点加速度は、ゼロである(aE3=0)。初期位置a0および初期速度v0から開始して、終端点速度vE3および終端点位置pE3は、開始点(a0、v0、p0)、ジャークJ、および軌道セグメント持続時間T3を用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。これは、流れ図では、得られる速度vE3および加速度aE3を計算するために出力リスト上の全てのセグメントを用いて開始点(v0、a0)からの軌道を統合する(436)、として示されている。終端点速度vE3は、vauxに等しい。
【0250】
このように、第3のチェックは、加速度リファレンスaが実質的にゼロまで下げられ、所望の最終速度vfからさらに遠ざかるように加速することが防止されることを保証する。軌道セグメントが所望の最終速度vfをオーバシュートする場合には、加速度リファレンスaがゼロまで下げられたときに、この状態が受け入れられる。第3のチェックの目的は、軌道が所望の最終速度vfから遠ざかるように加速することを防止し、それにより加速度リファレンスを実質的にゼロまで下げる必要が生じないようにすることである。この場合も、終端点は、速度遷移アルゴリズムの初期軌道点となる、すなわち(a0、v0、p0)←(aE3、vE3、pE3)となり(438)、スピードまたはデルタVは、Δv=vf-vE3によって再計算される。その後、更新された軌道点は、次のサブ問題の初期軌道点となる。
【0251】
この軌道セグメントが所望の最終速度vfをオーバシュートしない場合には、この軌道セグメントは完全に無視される、すなわち初期軌道点またはデルタV Δvに修正は必要ない。
【0252】
第1の速度遷移サブアルゴリズムにおいて1つまたは複数の軌道セグメントを生成することを含むことがある軌道状態の設定が行われる(たとえば加速度の大きさが実質的にゼロにもっていかれる)と、制御システムは、速度の大きさを所望の最終速度に遷移させるために、速度遷移アルゴリズムの次のステージ、すなわち第2の速度遷移サブアルゴリズムに進む(440)。最後に、第1の速度遷移サブアルゴリズムを適用することによって進んだ総距離Δpが、全ての生成された軌道セグメントを統合することによって決定されることが可能である(442)。第2の速度遷移サブアルゴリズムの適用については、以下のセクション4.2でさらに述べる。
【0253】
例1
入力値が以下である場合を例にとる。
【0254】
初期軌道加速度a0=1.0
指令加速度amax=2.0
初期速度v0=1.0
所望の最終速度vf=1.1
【0255】
【数14】
【0256】
ジャーク値Jred=Jinc=Jdec=0.1
A)第1の質問:加速度は過剰か?ノー。|a0|=1.0、および|amax|=2.0であるので、開始加速度a0は過剰ではない。
【0257】
B)第2の質問:軌道はvfから遠ざかるように加速しているか?ノー。Δv=0.1は正の値であり、a0も正の値であるので、軌道はvfに向かって加速している。
【0258】
C)第3の質問:加速度が直ちに開始してゼロまで下げられても軌道はvfをオーバシュートすることになるか?イエス。
【0259】
0.1のジャーク値Jdecを用いると、a0をゼロまで下げるのに、t=|a0|/J=1.0/0.1=10時間単位かかる。加速度がゼロまで下げられる間に、軌道速度は、10*1.0/2=5.0(底辺=10時間単位、高さをa0=1.0とする直角三角形の面積)だけ増加することになる。したがって、制御システムが軌道加速度をゼロまで下げようとしても、軌道速度は、依然としてv0=1.0から6.0まで変化し、したがってvf=1.1をオーバシュートすることになる。
【0260】
この例では、最初の2つのチェックでは、いかなるアクションも生じない(アクションは不要である)が、第3のチェックは、vfのオーバシュートに対処するために確かに存在する必要があり、存在しなければ、第2の速度遷移サブアルゴリズムを呼び出すことができない(無効な開始状態)。
【0261】
例2
指令加速度amax=2.0
初期加速度a0=-3.0
初期速度v0=1.0
所望の最終速度vf=3.0
【0262】
【数15】
【0263】
A)第1の質問:加速度は過剰か?イエス。|a0|=3.0はamaxより大きいので、制御システムは、持続時間がT=|amax-|a0||/Jred=1.0/1.0=1.0である、J=+Jred=+1.0を有する軌道セグメントを作成しなければならない。
【0264】
→このセグメントの終端点は、aE(終端点加速度)=-2.0、vE(終端点速度)=0.5である。
【0265】
→加速度が依然として負であるのは、このステップで行うのは、過剰(すなわちamax超)でなくなるように加速度の大きさを低減することだけであるからであることに留意されたい。
【0266】
→Δv=vf-vE=3.0-(-0.5)=2.5を再計算する。
【0267】
→a0=-2.0およびv0=0.5を割り当てし直す。
【0268】
B)第2の質問:軌道はvfから遠ざかるように加速しているか?イエス。Δv=2.5(正の値)、およびa0=-2.0(負の値)であり、したがって軌道はvfから遠ざかるように加速している。したがって、持続時間がT=|a0|/Jred=2.0/1.0=2.0である、J=+Jred=+1.0を有する軌道セグメントを作成しなければならない。
【0269】
→このセグメントの終端点は、加速度aE=0、vE=-1.5である。
【0270】
→Δv=vf-vE=3.0-(-1.5)=4.5を再計算する。
【0271】
→a0=0およびv0=-1.5を割り当てし直す。
【0272】
C)第3の質問:加速度が直ちに開始してゼロまで下げられても軌道はvfをオーバシュートすることになるか?加速度は現在すでにゼロであるので、ノー。
【0273】
例2では、最初の2つのチェックでは、アクションを生じた(各々で1つの軌道セグメントが生成された)が、第3のチェックでは、いかなるアクションも生じなかった(アクションは不要であった)。以前の3つの照会から、軌道は、現在では、a0=0、v0=-1.5、およびvf=3.0の初期軌道点を有する第2の速度遷移サブアルゴリズムに進むための有効な状態になっている、すなわち加速度は実質的にゼロまで下げられている。第2の速度遷移サブアルゴリズムの適用により、軌道速度をvfに(そして加速度をゼロに)もっていくように、さらに2つの軌道セグメントを作成することになる(apeakがamaxより小さい1.5であることが判明したため)。apeakの計算は、第2の速度遷移サブアルゴリズムの適用に不可欠である。
【0274】
4.2 第2の速度遷移サブアルゴリズムの適用
第2の速度遷移サブアルゴリズムの入力および出力は、以下の表2に示されている。上述した以前のサブ問題が第1の速度遷移サブアルゴリズムによって対処されると、制御システムは、第2の速度遷移サブアルゴリズムを呼び出すことができる。第2の速度遷移サブアルゴリズムは、vfの値に関わらずvfへの(速度)遷移を実際に実行するアルゴリズムである。第2の速度遷移サブアルゴリズムは、上述した特定の具体的な開始状態が対処されたときにのみ、呼び出される。これらは、限定されるわけではないが、軌道が過剰な加速度を有していること、および/または軌道が所望の最終速度から遠ざかるように加速していることを含む。これらのチェックは、図28ではブロック504、506、508、および510で実行されるものであり、上記で説明した。速度遷移アルゴリズムの目的は、選択された速度vfに到達する軌道セグメントを生成することである。最終速度vfは、速度制約を受ける任意の選択された速度であってよい。ただし、速度またはスピードデルタΔvが実質的にゼロである場合には、軌道速度v0の大きさがすでに所望の最終速度vfであり、加速度a0の大きさが実質的にゼロであり、その場合には、軌道は所望の最終速度vfから遠ざかるように加速しておらず、状態は、すでに所望の最終速度となるのに理想的である。これは、第2の速度遷移サブアルゴリズムでは、決定ブロック506から流れ図(図28)の最後までの経路によって示される。
【0275】
本発明によれば、第2の速度遷移サブアルゴリズムのために有用な概念は、所望の最終速度vfと初期速度v0との間の差として定義されるデルタV Δvの概念であることが分かった。初期速度v0の値は、上述の第1の速度遷移サブアルゴリズムで初期速度v0に割り当てられた終端点速度リファレンスvEによって決まる。図28に示される流れ図500を参照すると、ピーク軌道加速度apeakの値が計算され(514)、これは、Δvで与えられる面積を有し、(ゼロ加速度から遠ざかる)加速度の増加速度Jincと(ゼロ加速度に向かう)加速度の減少速度Jdecとによって定義される辺を有する仮想三角形の頂点で加速度値を表す(図29参照)。言い換えれば、apeakは、その形状の面積がΔvに対応する、またはΔvと等価になるように加速度の大きさの増加速度Jincと加速度の大きさの減少速度Jdecとを用いて描かれることが可能な三角形に見える形状の頂点の加速度値である。枠514に到達するには、決定枠504、508、および510の条件が満たされること、すなわち有効開始条件である(i)Δv≠0、(ii)Δv×a0≧0、および|A0|≦Amaxであることが必須である。軌道は既に第1の速度遷移サブアルゴリズムを経ているので、過剰な加速度および/または最終速度から遠ざかるように加速する軌道という以上は全て軌道セグメントを出力リストに追加することによって対処されているはずであるので、これらの条件は満たされているはずである。
【0276】
【表2】
【0277】
詳細には、初期加速度a0と、初期速度v0(第1の速度遷移サブアルゴリズムの出力によって定義される)と、所望の最終速度vfと、デルタV Δv=vf-v0と、軌道加速度の大きさを増加(Jinc)および減少(Jdec)させるジャークの特定の値とを仮定すると、a0の右側の面積がΔvと等価となる仮想「三角形加速度軌道」(図29参照)を描くことができる。言い換えれば、加速度信号のこのような三角形の変化を実行すると、(軌道セグメントの数に関わらず)v0をvfにもっていき、それにより第2の速度遷移サブアルゴリズムを解くことになる。第1の原理から、仮想三角形加速度軌道の下の面積をデルタ速度Δvと等価であるとすると、
【0278】
【数16】
【0279】
となり、ここで、A0、A1、およびA2は、図29に示される面積である。apeakを、この仮想三角形の頂点の加速度の値であるとする。この三角形の下の総面積のうちΔvに対応する部分は、それより小さい3つの面積の和として、すなわちΔv=A0+A1+Aとして表現することができる。ここで、
【0280】
【数17】
【0281】
である。
【0282】
【数18】
【0283】
について解くと、
【0284】
【数19】
【0285】
となる。
【0286】
したがって、ピーク加速度の大きさ
【0287】
【数20】
【0288】
は、以下の平方根をとることによって得ることができる。
【0289】
【数21】
【0290】
ピーク加速度apeakの大きさが数式21から計算されると、以下で各々について詳細に述べる3つの相互に排他的な可能性のうちの1つが真となることがある。
【0291】
A)初期加速度の大きさa0がピーク加速度apeakの大きさと一致する。
【0292】
初期加速度の大きさがピーク加速度と等しい(516)、すなわち|a0|=|apeak|である場合には、軌道は既にピーク加速度であるので、所望の最終速度vfに到達するためには、加速度をゼロまで下げる(減速する)だけでよい。
【0293】
この場合には、1つの軌道セグメントが生成され(518)、この軌道セグメントについては、
i)加速度を下げるためには、操作対象変数(ジャーク)の値は、J=-sign(a0)×Jdecであり、
ii)軌道セグメント持続時間は、
【0294】
【数22】
【0295】
で与えられ、
iii)終端点加速度はゼロであり(aE4=0)、終端点速度はvE4=vfであり、終端点位置pE4は、開始点(a0、v0、p0)、ジャークJdec、およびセグメント持続時間Tを用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0296】
B)ピーク加速度の大きさapeakが、最大加速度amax(指令加速度)の大きさ以下である。
【0297】
ピーク加速度の大きさが最大加速度の大きさより小さい(526)、すなわち|apeak|<amaxである場合には、軌道加速度の大きさは、依然として|apeak|まで増加させることができ、その後に減少させて、所望の最終速度vfが満たされるゼロまで戻す必要がある。
【0298】
したがって、この場合には、2つの軌道セグメント528、530が生成される必要があり、これらは、ピーク加速度までの第1の軌道セグメント528bと実質的にゼロまで下がる第2の軌道セグメント530bとを示す図29の仮想三角形で説明されることが可能である。
【0299】
第1の軌道セグメント528bについては、
・用いられる操作対象変数(ジャーク)の値は、J=S×Jincである。符号Sは、初期加速度a0=0か正であるか負であるかによって決まる。流れ図に示されるように、初期加速度a0が実質的にゼロに等しい場合には、符号Sは、軌道セグメントは、最終速度vfに到達するためには軌道速度の方向に応じて軌道加速度を上げる、または下げる必要があるので、初期速度v0と同じ符号となる。ただし、初期加速度a0がゼロに等しくない場合には、符号Sは、速度の大きさが最終速度vfに到達するために軌道加速度を上げる、または下げるために、初期加速度の符号と同じとなる。
【0300】
・第1の軌道セグメントの持続時間は、T=|apeak-a0|/Jincである。
【0301】
・終端点加速度は、ピーク加速度であり(aE5=apeak)、終端点速度vE5および終端点位置pE5は、開始点a0、v0、p0、ジャークJ=Jinc、およびセグメント持続時間Tを用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0302】
・その終端点を第2の軌道セグメントの生成のための初期軌道点に割り当てし直す、すなわち(a0、v0、p0)←(aE5、vE5、pE5)とする。
【0303】
第2の軌道セグメント530bについては、
・操作対象変数(ジャーク)の値は、J=S×Jdecである。
【0304】
・第2の軌道セグメントの持続時間は、T=|apeak|/Jdecである。
【0305】
・終端点加速度は、実質的にゼロであり(aE6=0)、終端点速度vE6および終端点位置pE6は、初期軌道点aE5、vE5、pE5、ジャークJ=Jdec、およびセグメント持続時間Tを用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0306】
C)ピーク加速度の大きさは、最大加速度amaxの大きさより大きい。
【0307】
|apeak|<amaxが成立しないときには、|apeak|はamaxより大きいはずである、ということになる。ピーク加速度の大きさが最大加速度の大きさより大きい、すなわちapeak>amaxである場合には、軌道加速度の大きさは、amaxいっぱいまで増加させなければならず、その後、ある程度の時間にわたってamaxに維持しなければならず、最終的には所望の最終速度vfを満たすためにゼロまで下げる必要がある。言い換えれば、加速度軌道は、台形のような見た目となる。したがって、この場合には、軌道加速度の大きさが既にamaxと等しいかどうか、または軌道加速度の大きさがまだamax未満であるかどうかに応じて、2つまたは3つの軌道セグメントが生成され得る。
【0308】
maxからゼロまでの加速度の低下による速度の変動の値は、最初に
【0309】
【数23】
【0310】
を得るために数式21にapeak=a0=amaxを代入することによって計算される。
【0311】
これについては、図30にTconstとして示される一定加速度フェーズの(時間の)長さも、次のように計算されることが可能である。
【0312】
【数24】
【0313】
ここで、|Δv|は、一定加速度フェーズの開始時の初期速度v0から所望の最終速度vfまでの速度遷移の大きさである。図30に示される一定加速度フェーズおよび加速度低下の軌道セグメント540および542の下の総面積A2+A3は、デルタV Δv=v0-vfである(ここで、v0は、一定加速度フェーズの開始時の速度)。加速度低下セグメント542の下の面積A3は、数式22で計算されるΔvdecである。面積A2は、総面積から面積A3を引くことによって計算されることが可能であるので、A2=Δv-Δvdecである。数式23と同様に、面積A2から、この面積を加速度amaxで割ることによって、持続時間Tconstは計算されることが可能である。
【0314】
|a0|<amaxである場合には、3つの軌道セグメントが生成されなければならない。これは、図28では、決定ブロック532と、図28において軌道セグメント540および542に加えて生成される追加の軌道セグメント534とによって示されており、図30では仮想台形によって説明される。
【0315】
図30の持続時間T1にわたる第1の軌道セグメント534については、
・用いられる操作対象変数(ジャーク)の値は、J=S×Jincである。
【0316】
・軌道セグメントの持続時間は、
【0317】
【数25】
【0318】
で与えられる。
【0319】
・終端点加速度は、最大加速度であり(aE7=sign(a0)×|amax|)、終端点速度vE7および終端点位置pE7は、開始点a0、v0、p0、ジャークJinc、およびセグメント持続時間T1を用いて軌道方程式(3、4、および5)を直接適用することによって得られる。
【0320】
・その終端点を第2の軌道セグメントの生成のための初期軌道点に割り当てし直す、すなわち(a0、v0、p0)←(aE7、vE7、pE7)とする。
【0321】
図30のTconstとして示される持続時間T2にわたる第2の軌道セグメント540については、
・用いられる操作対象変数(ジャーク)の値は、ゼロである。
【0322】
・セグメントの持続時間は、数式23によりT2=Tconstで与えられる。
【0323】
・終端点加速度は、最大加速度であり(aE8=a0)(a0=以前の計算のaE7であることに留意されたい)、終端点速度vE8および終端点位置pE8は、開始点aE7、vE7、pE7、ゼロジャーク、およびセグメント持続時間T2=Tconstを用いて軌道方程式を直接適用することによって得られる。
【0324】
・その終端点を第2の軌道セグメントの生成のための初期軌道点に割り当てし直す、すなわち(a0、v0、p0)←(aE8、vE8、pE8)とする。
【0325】
図30の持続時間T3にわたる第3の軌道セグメント542については、
・用いられる操作対象変数(ジャーク)の値は、J=-S×Jdecである。
【0326】
・軌道セグメントの持続時間は、
【0327】
【数26】
【0328】
で与えられる。
【0329】
・終端点加速度は、ゼロであり(aE9=0)、終端点速度はvE9=vfであり終端点位置pE9は、開始点aE8、vE8、pE8、ジャークJdec、およびセグメント持続時間T3を用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0330】
しかし、第1の速度遷移サブアルゴリズムからa0=amaxである場合には、2つの軌道セグメント540および542、すなわち時間Tconstにわたるamaにおける第1の軌道セグメントおよび加速度をamaxからゼロに下げる第2の軌道セグメントのみが生成されればよい。これは、この軌道では、流れ図中の決定ブロック532(|a0|<amax)からの「ノー」の決定分岐として示され、追加されるこの2つの軌道セグメントは、図28および図30ではブロック540および542によって表されている。これは、|a0|<amaxが「ノー」である場合には、速度遷移アルゴリズムを適用するときの上述の3つのチェックのうちの1つが、初期加速度の大きさがamaxより大きい、すなわち|a0|>amaxである、すなわち過剰な加速度であるかどうかということであり、a0をamaxにもっていくために、|a0|=amaxが明らかに選ばれることになるからである(図27のブロック406参照)。
【0331】
|a0|=amaxでは、最大加速度amaxまでの増大は図30では無視され、軌道加速度の大きさは、既に最大加速度amaxである。
【0332】
持続時間Tconstにわたる第1の軌道セグメント540については、
・用いられる操作対象変数(ジャーク)の値は、ゼロである。
【0333】
・セグメントの持続時間は、T2=Tconstで与えられる。
【0334】
・終端点加速度は、ピーク加速度であり(aE8=a0)、終端点速度vE8および終端点位置pE8は、開始点a0、v0、p0、ゼロジャーク、およびセグメント持続時間T2を用いて軌道方程式を直接適用することによって得られる。
【0335】
持続時間T3にわたる第2の軌道セグメント542については、
・用いられる操作対象変数(ジャーク)の値は、j=-S×jdecである。
【0336】
・軌道セグメントの持続時間は、
【0337】
【数27】
【0338】
で与えられる。
【0339】
・終端点加速度は、ゼロであり(aE9=a0)、終端点速度はvE9=vfであり、位置pE9は、開始点aE8、vE8、pE8、ジャークjdec、およびセグメント持続時間T3を用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0340】
本発明による第2の速度遷移サブアルゴリズムは、所望の最終速度vfに到達したときに終了する。所望の最終速度vfは、たとえば指令位置で停止するように移動するように命令されたときには実質的にゼロになるなど、任意の値を有することができる。
【0341】

図31(aからd)は、-34.052から18.167までの範囲の様々な最終速度vfに遷移するときに本発明による速度遷移アルゴリズムを適用したときに生成される様々な軌道または動き制御プロファイルを示している。生成される全てのプロファイルは、同じ開始点(p0、v0、a0)を共有する。図31(a)では、異なる最終速度vfに遷移すると、異なる進行長さになり、したがって異なる位置リファレンスになり、これにより指令位置からの偏差も異なることがはっきり分かる。軌道の生成における軌道セグメントの数は、最終速度vfの値によって決まるが、生成される軌道セグメントは最大で4つである(図31d参照)。軌道または動き制御プロファイルは、上記のセクション2.0で述べたフィードフォワードトルク需要を生成または計算するために制御装置によって使用される。
【0342】
5.0 求根アルゴリズム
軌道または動き制御プロファイルを生成するときには、軌道がアンダーシュートまたはオーバシュートせずに、可能な限り最短の時間で、指令位置にぴったり到達するように、軌道速度が制御されることが不可欠である。たとえば、軌道距離が比較的短く、荷役装置が指令速度vmaxに到達するための時間がほとんどない状況では、軌道は、アンダーシュートまたはオーバシュートすることなく正確に指令位置に到達するように初期開始位置から軌道全体を通していくつかの速度遷移を受ける必要があることになる。これは、軌道が軌道中でピーク速度vpeakまで進行し、次いで所望の最終速度vfまで下がることを含む。
【0343】
荷役装置が可能な限り最短の時間で軌道を完了することができるように、指令速度vmaxに向かって、ただし指令速度vmaxを超えないように進行するための所望のピーク速度vpeakを発見することは、難題である。本発明の実施形態によれば、初期速度v0と最大速度制約vmaxとの間の「スイートスポット」速度(根)を予測するために、求根アルゴリズムが利用され、ここで、目標関数は、軌道の、指令位置、すなわち終端点軌道加速度および終端点速度が実質的にゼロとなる軌道点からの偏差を表す。求根アルゴリズムの使用は、軌道が動き制御プロファイルの始点にあるときのみに制限されない。たとえば1つまたは複数の制約または指令位置など、軌道の1つまたは複数の状況によっては、動きプロファイル生成器は、1つまたは複数の状況が初期の1つまたは複数の状況のうちのいずれか1つと異なるのに応答して、動き制御プロファイルを再生成することができる。この動き制御プロファイルの再生成は、動き制御プロファイルの加速フェーズおよび/または減速フェーズにある間に命令されることが可能である。この場合には、求根アルゴリズムは、指令位置までに進行すべき残りの距離についての「スイートスポット」速度の予測における動き制御プロファイルの再生成ステージで適用されることが可能である。
【0344】
求根アルゴリズムの使用は、軌道速度のみに制限されるわけではなく、求根アルゴリズムは、軌道の様々なパラメータに適用されることが可能である。たとえば、求根アルゴリズムは、可能な限り最短の時間で、および/またはオーバシュートすることなく指令位置に到達するための理想的な軌道加速度または減速度の発見に適用されることも可能である。
【0345】
パラメータが軌道速度である場合には、求根アルゴリズムは、様々な軌道速度に到達するための軌道セグメントが生成される様々なピーク速度vpeakを推定するために、上述の速度遷移アルゴリズムと併せて適用される。求根アルゴリズムは、指令位置からのオーバシュートまたはアンダーシュートの程度を決定するために、速度遷移アルゴリズムによって生成される軌道セグメントの結果を使用することになる。そのため、たとえば、「ピーク速度探索」問題では、これは、求根アルゴリズムが、「所望のピーク速度」vpeakの様々な値を試し、速度遷移アルゴリズムも適用してオーバシュートが実質的にゼロとなるvpeakの値を探索するということになる。本発明によれば、求根アルゴリズムは、所望の最終速度vfが指令速度vmaxの限度内であり、指令速度まで増加させることができる状況で、速度遷移アルゴリズムを呼び出すことになる。
【0346】
求根アルゴリズムによって速度遷移アルゴリズムが呼び出されるたびに、速度の大きさを所望のピーク速度vpeakまで変化させて、再び所望の最終速度vfまで戻すための1つまたは複数の軌道セグメントが生成される。
【0347】
初期位置p0から最終速度vfおよび加速度が実質的にゼロとなる指令位置まで進行するための所望のピーク速度vpeakが必要とされる、図32に示される例をとる。一番上のプロファイル(図32a)は、位置リファレンスの大きさを時間の関数として表し、真ん中のプロファイル(図32b)は、速度リファレンスの大きさを時間の関数として表し、一番下のプロファイル(図32c)は、加速度リファレンスの大きさを時間の関数として表す。図32は、比較的低いピーク速度vAから比較的大きいピーク速度vCの間の様々な「選択された」ピーク速度での複数の速度軌道プロファイルを示している。求根アルゴリズムは、軌道がオーバシュートまたはアンダーシュートすることなく所与の初期開始点から所与の終端点までの2点間移動を完了するように、指令速度vmaxに対応する上限と下限v0との間で理想的なピーク速度vpeakを発見するために利用される(図32b参照)。本発明の説明では、指令位置からの「偏差」という用語は、軌道が指令位置をアンダーシュートまたはオーバシュートすることをカバーするものとして広範に解釈される。図32に示される例では、各候補ピーク速度vpeakについて、以下の2回の速度遷移が起きることになる。
【0348】
1)初期速度v0から所望のピーク速度(たとえばvA)までの第1の速度遷移。
【0349】
2)初期速度vA(ピーク速度vAが初期速度に割り当てし直される)から実質的にゼロに対応する所望の最終速度vfまでの第2の速度遷移。
【0350】
求根アルゴリズムの各反復において、指令位置からの偏差の程度を決定するために第1および第2の速度遷移を適用することによって軌道セグメントが生成される、すなわち累積終端点位置pEを生成するために軌道方程式(3、4、および5)を適用することによって軌道セグメントが統合される。速度ピークの連続した値についての累積終端点の指令位置からの偏差は、指令位置からのアンダーシュートまたはオーバシュートの程度、すなわち偏差を表す。したがって、速度遷移アルゴリズムの適用を伴う求根アルゴリズムを反復するたびに、生成される根、この場合には所望のピーク速度vpeakの近似は次第に正確になっていく。これについての別の見方は、求根アルゴリズムの各反復に1つまたは複数の速度遷移アルゴリズムが入れ子されているというものである。求根アルゴリズムの各反復において、少なくとも1つの速度遷移アルゴリズムが適用されて、ピーク速度vpeakに遷移するために必要な軌道セグメントが計算され、したがって、指令位置からの偏差の程度が計算される。図33の速度に対する偏差のプロットに示される「スイートスポット」速度は、初期速度の大きさと偏差が実質的にゼロとなる指令速度の大きさとの間の所望のピーク速度vpeakを示している。図33に示される特定の例では、目標関数が実質的にゼロとなる「スイートスポット」速度は、29.63である。
【0351】
最終速度vfが指令位置において実質的にゼロとなるように「根」速度まで遷移するときに速度遷移アルゴリズムによって生成される軌道セグメントを構成する軌道または動き制御プロファイルは、最適動き制御プロファイルまたは最適軌道と呼ばれる。求根アルゴリズムの適用は、最適ピーク速度の発見のみに制限されず、求根アルゴリズムは、本発明の実施形態では、上述の速度遷移アルゴリズムを適用するときに軌道が指令位置にぴったり到達するように効果的に減速することができるように最適減速制約を発見するためにも呼び出される。最適減速制約を発見するための求根アルゴリズムの適用については、以下のセクション7.0でさらに詳細に述べる。
【0352】
6.0 逆進
軌道が指令位置をオーバシュートする状況もあり得る。これは、指令位置が突然変化した、または荷役装置に近づけられた、あるいは指令位置までの進行距離が短かったために、所望の最終速度vfに到達するのにかかる時間が長過ぎてオーバシュートを引き起こす可能性があるような軌道セグメントの持続時間になっているという可能性がある。所望のピーク速度vpeakまで遷移し、所望のピーク速度vpeakから実質的にゼロと等しい大きさを有する最終速度vfまで遷移するときの軌道セグメントが生成されるように、すなわち軌道が指令位置まで逆進するように所望のピーク速度vpeakを決定するために速度遷移アルゴリズムと併せて求根アルゴリズムが使用されるという点で、指令位置までの逆進のための軌道の生成は、指令位置に向かって移動するときの軌道の生成と非常によく似ている。指令位置からのオーバシュートが長い場合には、指令位置に向かって下げる前に、軌道速度の大きさを最大速度制約vmaxいっぱいまで増加させることができる。どちらのオーバシュートの場合でも、速度遷移アルゴリズムは、指令位置に戻るために適用される。
【0353】
7.0 強制減速
軌道の入力は、制御システムによって定期的に再考され、たとえば異なる行き先またはグリッドセルを訪れる、あるいはグリッド構造上に障害があるなど、軌道の変化があったかどうかに応じて、制約のうちの1つまたは複数が更新されることがある。これらの変化のうちの1つまたは複数は、指令位置を含むことがあり、軌道生成器に更新された指令位置に基づいて軌道を再生成させることがある。更新された指令位置は、当初予想されていたよりも近くで終端する軌道を生じることもある。こうして、軌道の速度および加速度が更新された指令位置で実質的にゼロとなるように、減速軌道が必要となる。この減速により、制御装置または制御システムは、荷役装置を更新された指令位置に向かって減速させるために必要なトルク需要、すなわち制動力を印加することが可能になる。本発明の特定の実施形態では、強制減速アルゴリズムは、速度を現在または初期速度から実質的にゼロの最終速度vfまで遷移させるために上述の速度遷移アルゴリズムの使用を伴う軌道に適用される。これは、軌道の加速度および速度が更新された指令位置において実質的にゼロとなるように軌道の減速を強制するために指令加速度の代わりに強制減速FD制約を用いて1つまたは複数の軌道セグメントを生成することを含むことがある。
【0354】
強制減速アルゴリズムの入力を、以下の表3に示す。
【0355】
【表3】
【0356】
FD上限FDmaxの値は、指令加速度と異なっている可能性もあるし、実質的に同じである可能性もあり、モータの許容差によって決まる。荷役装置の場合には、FDmaxは、車輪アセンブリの駆動機構の許容差、および/またはグリッド構造上の荷役装置の安定性によって決まる。制御システムは、速度遷移アルゴリズムを適用するときに追加の軌道セグメントを生成するために上限の強制減速度FDmaxが使用されているか下限の強制減速度FDminが使用されているかに応じて軌道が更新された指令位置をアンダーシュートするかオーバシュートするかを、計算された終端点位置pEから決定することになる。
【0357】
強制減速の適用は、図34に示される流れ図600に要約されている。入力制約602の後で、プロセスは、求根アルゴリズムの適用によって適切な減速制約を計算する前にFDmaxまたはFDminのいずれかを用いて軌道を強制的に減速させることができるかどうかを決定するために、1つまたは複数の決定プロセスを実行することから開始する。強制減速アルゴリズムの最初の2つの決定プロセスは、軌道速度の大きさを実質的にゼロにもっていく、すなわちvf=0にするために速度遷移アルゴリズムを適用するための状態に軌道を持っていくことを必要とする。流れ図に示されている順番では、第1のチェック604は、速度が増加されているかどうかの決定プロセスを含む。軌道速度が増加している場合には、制御システムは、速度のそれ以上の増加を防止するために加速度a0を実質的にゼロまで下げるための1つの軌道セグメント606を生成するために適当なジャーク制約J4を適用する。たとえば、1つの軌道セグメントは、以下のように生成される。
【0358】
・用いられる操作対象変数(ジャーク)の値は、J=J4である。
【0359】
・セグメント持続時間は、
【0360】
【数28】
【0361】
で与えられる。
【0362】
・終端点加速度は、ピーク加速度であり(aE1=0)、終端点速度vE1および終端点位置pE1は、開始点a0、v0、p0、ジャークJ=J4、およびセグメント持続時間Tを用いて軌道方程式(数式3、4、および5)を直接適用することによって得られる。
【0363】
・この軌道セグメントの終端点が、次の軌道セグメントの開始点に割り当てし直される(a0、v0、p0←aE1、vE1、pE1)。
【0364】
軌道速度が増加していない場合には、制御システムは、軌道加速度の大きさが強制減速最大値制約より大きいかどうか、すなわち|a0|>FDmaxであるかどうかを決定することによって初期減速度が過剰であるかどうかを決定するために次の決定プロセス610に進む。加速度の大きさが過剰である場合には、制御システムは、加速度の大きさを強制減速制約FDmaxと実質的に一致するように下げるための1つの軌道セグメント612を生成する。
【0365】
たとえば、1つの軌道セグメントは、以下のように生成される。
【0366】
・用いられる操作対象変数(ジャーク)の値は、J=J4である。
【0367】
・セグメント持続時間は、
【0368】
【数29】
【0369】
で与えられる。
【0370】
・終端点加速度は、ピーク加速度であり(aE2=FDmax)、終端点速度vE2および終端点位置pE2は、開始点a0、v0、p0、ジャークJ=J4、およびセグメント持続時間Tを用いて軌道方程式を直接適用することによって得られる。
【0371】
・この軌道セグメントの終端点が、次の軌道セグメントの開始点に割り当てし直される(a0、v0、p0←aE2、vE2、pE2)(614)。
【0372】
次の3つの決定プロセス616、620、および624は、軌道加速度が増加されておらず、過剰な加速度を有していないので、速度を所望の最終速度vf、すなわち所望の最終速度vfに実質的に等しい大きさを有する終端点速度まで遷移させるために速度遷移アルゴリズムを適用することを含む。この決定プロセスは、強制減速制約FDmaxを用いて速度遷移アルゴリズムを適用すると軌道を指令位置にぴったり到達させることになるかどうかの決定(616)に進む。肯定である場合には、速度の大きさを初期速度v0から実質的にゼロに等しい所望の最終速度vf(加速度制約はFDmaxに等しい)まで遷移させるために速度遷移アルゴリズム618を用いてΔvを決定することによって、1つまたは複数の軌道セグメントが生成される。否定である場合には、強制減速FDmaxは、十分でないこともあるし、あるいは強すぎる場合もある。強制減速FDmaxを軌道に適用しても十分ではないと考えられ、依然として軌道に更新された指令位置をオーバシュートさせることになる場合には(620)、唯一の選択肢は、オーバシュートから回復し、それにより更新された指令位置にぴったり到達するために制御システムがセクション6.0に記載した「逆進」622を適用する必要があるということになる。軌道加速度の大きさをFDmaxに低減するために、軌道セグメントが生成される。次いで、連続した速度遷移アルゴリズムを適用することによってΔvを決定することによってオーバシュートから回復するために、1つまたは複数の軌道セグメントが生成される。これは、速度の大きさを初期速度v0から所望のピーク速度vpeakおよび終端点位置pEに遷移させるために第1の速度遷移アルゴリズムを適用することを含む。次いで、第2の速度遷移を適用したときの終端点位置pEが指令位置となるようにピーク速度vpeakから下げるために、第2の速度遷移アルゴリズムが適用される。
【0373】
しかし、最大強制減速FDmaxを用いて速度遷移アルゴリズムを適用したときに軌道位置がアンダーシュートする場合には、最大強制減速FDmaxが強すぎると考えられ得る。この場合には、より穏やかな強制減速制約FDminが軌道に適用される必要がある、すなわちFDminを指令加速度として用いて速度遷移アルゴリズムを適用する必要がある。下限の強制減速FDminを用いて速度遷移アルゴリズムを適用すると軌道位置が更新された指令位置をアンダーシュートする、またはぴったり到達する場合(624)には、FDminを用いて速度遷移アルゴリズムが適用される(軌道加速度の大きさはFDminまで低減される)(626)。FDminを用いると軌道がアンダーシュートする場合には、軌道速度の大きさは、FDminを用いることで更新された指令位置にぴったり到達できるという下限に既に到達している、すなわち所望の最終速度vfは、指令位置の前の終端点で実質的にゼロに到達する。
【0374】
速度遷移アルゴリズムを適用するときに、上限の強制減速FDmaxでは軌道が指令位置をアンダーシュートするが、下限の強制減速FDminを適用すると軌道が指令位置をオーバシュートする場合には、FDmaxとFDminの間に、軌道を指令位置にぴったり到達させるために適用することができる強制減速制約FDがある。この状況では、制御システムは、vfが実質的にゼロになるときに軌道が最終位置にぴったり到達することを可能にするために強制減速制約FDを決定するために求根アルゴリズムに進む(628)。求根アルゴリズムは、強制減速の限界の間、すなわち上限のFDmaxと下限のFDminの間で適用される。目標関数は、強制減速制約の上限と下限の間で選択された強制減速制約が適用されたときの最終位置からの位置偏差の程度である。求根アルゴリズムの連続した反復の各々において、速度遷移アルゴリズムを適用して、選択された強制減速制約を用いて軌道を初期開始点から実質的にゼロである所望の最終速度vfまで遷移させ、出力リスト上の全てのセグメントを用いて累積終端点位置pEを決定する、すなわち初期位置p0からの軌道を統合して、解によって進む総距離ΔPを計算する。終端点位置pEは、最終速度vfが実質的にゼロとなるときの指令位置からの「偏差」の指標を提供する。求根アルゴリズムを反復するたびに、この場合は強制減速FDである生成される根の近似が次第に正確になっていく。軌道速度を最終速度vfまで遷移させるための速度遷移アルゴリズムと併用される求根アルゴリズムを用いて正確な強制減速FDを決定する責任は、制御システムにある。根が決定されたら、速度を初期開始点からvfが実質的にゼロに等しくなる終端点まで遷移させるために、強制減速FDが適用される。
【0375】
上述の特定の実施形態はグリッド構造上で動作可能なロボット荷役装置に関するが、この軌道または動き制御プロファイルの生成は、原動力となる動きを必要とする他の動力デバイスまたはロボットデバイスにも適用可能である可能性があることは理解されるであろう。たとえば、生成される軌道は、ロボットアームの2点間の動きを制御するために使用されることが可能である。
【0376】
一部のブロックは図示され本明細書に記載される順序とは異なる順序で行われる、および/または他のブロックと同時に行われるので、図示して上述した方法は、ブロックの順序によって限定されないことは理解されるであろう。同じ結果をもたらす様々な他の分岐、流れの経路、およびブロックの順序も実施され得ることも理解され得る。
【0377】
速度遷移アルゴリズムの適用の例
本発明による速度遷移アルゴリズムの適用は、図35(aからc)に示される軌道のプロットによって説明することができる。この軌道は、初期速度リファレンスv0から所望の最終速度リファレンスvfまでの遷移を表す。図35cの速度プロットに示される本発明の特定の例では、速度遷移は、+18の初期速度リファレンスv0から-16の所望の最終速度vfまでである。説明を容易にするために、この軌道は、指令位置で所望の最終速度vfに到達する。プロットは、速度リファレンスを所望の最終速度vfまで遷移させるために必要な異なる軌道セグメントを表すために、ステージ0、1、2、および3に分解される。
【0378】
最初は、加速度の大きさは+veであり、したがって、軌道は所望の最終速度vfから遠ざかるように、すなわち反対方向に加速している(所望の最終速度が負であることに留意されたい)。以下のように第1の速度遷移サブアルゴリズムを適用する。
【0379】
A)第1の質問:加速度は過剰か?ノー。
【0380】
B)第2の質問:軌道はvfから遠ざかるように加速しているか?イエス。
【0381】
第2の質問に対処するために、軌道プロット中にステージ0で表される第1の速度遷移サブアルゴリズムの適用の第1のステージは、軌道が所望の最終速度vfから遠ざかるように加速することを防止するために軌道加速度の大きさをゼロまで下げるための軌道の生成である。これは、図35aに示される加速度プロットで示される。初期デルタVは、図35cの速度プロットに示されるΔv0で与えられる。
【0382】
このステージ中に軌道セグメントが生成され、こうして生成された軌道セグメントの終端点が、次のサブ問題の初期軌道点となる、すなわち(a0、v0、p0)←(aE、vE、pE)となり、それに応じてデルタVが計算され、Δv1←(vf-vE)となる。
【0383】
C)第3の質問:加速度が直ちに開始してゼロまで下げられても軌道がvfをオーバシュートすることになるか?以前の質問に応答して適用された軌道セグメントによって加速度が既にゼロまで下げられているので、ノー。
【0384】
第1の速度遷移サブアルゴリズムが適用されると、軌道は、第2の速度遷移サブアルゴリズムを適用するための状態になる。軌道プロット中に示されるステージ(1)、(2)、および(3)は、第2の速度遷移サブアルゴリズムの適用における軌道セグメントの生成を表す。
【0385】
第2の速度遷移サブアルゴリズムの適用は、初期速度リファレンスを仮定した数式(21)からのピーク加速度apeakの計算を含む。この特定の例では、ピーク加速度apeakは、最大加速度より大きい。その結果として、第2の速度遷移サブアルゴリズムの適用は、加速度をamaxいっぱいまで増加させることを含み、加速度は、ある程度の時間にわたってamaxに維持されなければならず、その後、最終的に、所望の最終速度vfを満たすためにゼロまで下げられる必要がある。言い換えれば、3つの軌道セグメント1、2、および3によってカバーされる軌道のこの部分は、台形のような見た目である。
【0386】
図35aで(1)によって表される第1の軌道セグメントは、ジャーク値を適用することによって加速度を最大指令加速度amaxいっぱいまで増加させることを含む。これにより、デルタVΔv2←(vf-vE)が得られ、軌道セグメントの終端点は、次のサブ問題の初期軌道点となる、すなわち(a0、v0、p0)←(aE、vE、pE)となる。
【0387】
(2)によって表される第2の軌道セグメントは、ジャーク値をゼロに等しくすることによって加速度を最大加速度amaxに維持することを含む。その結果として、加速度が最大加速度amaxである時間持続時間にわたって速度は線形に変化し、この点で、軌道が最終ステージ(3)に入った時に加速度が低減される。これにより、デルタVΔv3←(vf-vE)が得られ、軌道セグメントの終端点は、次のサブ問題の初期軌道点に割り当てられる、すなわち(a0、v0、p0)←(aE、vE、pE)となる。
【0388】
(3)によって表される第3の、最終軌道セグメントは、所望の最終速度vfを満たすために加速度の大きさを低減するためにジャーク値を適用することを含む。最終軌道セグメントは、所望の最終速度vfに到達するまで速度リファレンスを低減させる。これは、図35cに、所望の最終速度vfまでの滑らかな傾斜によって示されている。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27-1】
図27-2】
図27-3】
図28-1】
図28-2】
図28-3】
図29
図30
図31(a)】
図31(b)】
図31(c)】
図31(d)】
図32(a)】
図32(b)】
図32(c)】
図33
図34-1】
図34-2】
図35(a)】
図35(b)】
図35(c)】
図36
【国際調査報告】