Longitudinal Controller Stanleyブロックについての質問

表題の件について,
Longitudinal Controller Stanleyブロックは,車両の速度制御を行うブロックだと思いますが,
前後方向のみの速度制御のみ可能ですか?
旋回を伴う速度制御の場合,速度は減少していきますか?

 Accepted Answer

Atsushi Ueno
Atsushi Ueno on 4 Oct 2023
Edited: Atsushi Ueno on 4 Oct 2023
Longitudinal Controller Stanley ブロックは一般の制御器と同様です。
>前後方向のみの速度制御のみ可能ですか?
車両の前後制御に適する様なアルゴリズムのブロックですが、これで左右制御する事も不可能ではありませんし、全く関係のない温度制御なんかに使う事も可能です。やり方次第で何でも出来ます。
>旋回を伴う速度制御の場合,速度は減少していきますか?
そんな事はありません。旋回・登坂・風等の「外乱が加わっても速度制御されるか」という意味だと思いますが、適切なパラメータを設定すれば、外乱に影響されずに目標速度に追従・維持する制御が可能です。
「旋回を伴う速度制御」も前後制御(Longitudinal Controll)です。駆動輪を制御するのがLongitudinal Controller、操舵を制御するのがLateral Controllerです。

3 Comments

回答していただきありがとうございます。
シミュレーションで簡易的な旋回区間を設計し,
下図のように,旋回制御を伴う速度制御モデルを作っているのですが,旋回区間に入ったところで速度が減少し,0に近づいていきます。適切なパラメータというのは,具体的にどの部分を変更すればよろしいでしょうか。
車両モデルは,Vehicle Body 3DOF Single Trackブロックを使用しています。下図のVelocityをVehicle Body 3DOF Single Trackブロックの縦方向の外部速度として入力を行っています。
以上,よろしくお願いします。
旋回に伴う走行抵抗の分AccelCmdを増やさなければ速度は維持できませんね。
LongitudinalControllerStanleyブロックのパラメータ(「コントローラ設定」にあるKpとKi)を調整することで、制御性が改善する「かも」しれません。
原理的には、目標速度>車両速度の場合は(Kiが非ゼロならば)積分項が効いて徐々にAccelCmdが上昇しますので、目標速度においつきます。
お試しください。
ありがとうございます。
色々パラメータを変更させて試してみます。

Sign in to comment.

More Answers (0)

Products

Release

R2023a

Asked:

Ren
on 4 Oct 2023

Commented:

Ren
on 6 Oct 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!