Single Lane Change
Single Lane Change eventでは、定義された車線のセンターラインをたどるように、シングルレーンチェンジを経て車両を運転します。レーンチェンジの速度および車線の寸法を定義できます。経路に沿って走行するためにステアリングコントローラーが使用され、イベント全体を通して速度を維持するためにトルクコントローラーが使用されます。イベントでは、左右のレーンチェンジがサポートされます。結果をプロットするために、プロットテンプレートが用意されています。



イベントは、道路の初期直線セクション、移行セクション、およびリカバリーの直線セクションで構成されています。初期直線セクションでは、車両は定常状態になります。移行セクションでは、実際のレーンチェンジを行います。車両は最後の直線セクションに戻り、シミュレーションは終了します。車両はイベント中一定の速度を保ちます(トルクコントローラーにより)。車両のステアリングコントローラーは、経路上でボディのCGを道路のセンターラインに維持するように設計されています。
初期速度、コーンの縦方向および横方向の間隔、および車線のグラフィックスは、イベントフォームを介して変更できます。地上Z座標は計算値であり(青色の背景は計算値を示します)、左フロントタイヤ重心のZ位置から左フロントタイヤの転がり半径を減算することで算出します。
テストモデルは、このシミュレーションを60秒で実行します。約0.5の横Gが、テスト車両モデルおよびデフォルトのレーンチェンジパラメータによって発生します。速度とコーンの横方向の間隔を増やすと、車両によって発生する横フォースが増加します。車両が操縦の限界に近づくと、モデルは大幅に進路からそれるか、レーンチェンジを完了できません。Could not Find Ideal SWA in 20 Iterationsというエラーがログファイルに表示される場合があります。これは、ステアリングコントローラーが定義された経路に従えないことを示します。

コーンの間隔(横方向および縦方向)および車線の幅は、車両の速度と合わせて変更できます。これらのパラメータを変更するには、イベントフォームを使用します。
アタッチメント

変数 | ラベル | 説明 |
---|---|---|
sys | System | マスターシステム。この場合は“Model”。 |
b_frnt_whl | mot_frnt_wheel | 前輪のボディペア。 |
b_rear_whl | mot_rear_wheel | 後輪のボディペア。 |
J_frnt_whl | Front Wheel Joint | 前輪をナックルに結合する回転ジョイント。 |
J_rear_whl | Rear Wheel Joint | 後輪をナックルに結合する回転ジョイント。 |
J_st_wheel | Steering Wheel Joint | ステアリングコラムが含まれない場合に、ハンドルをボディに、またはギアインプットシャフトをボディに結合する回転ジョイント。 |
B_body | Vehicle Body | 車体。 |
Drive_joint | Drive Joint | 車両の走行に使用されるジョイント。ドライブトレインに応じて異なります。通常は、エンジンに最も近いドライブトレインの回転ジョイントです。 |
J_clamp_1_body | Vehicle Body Joint 1 | 車体のクランプ1。静的シミュレーション中に車両を固定させるために使用される2つのクランプのうちの1つ。 |
J_clamp_2_body | Vehicle Body Joint 2 | 車体のクランプ2。静的シミュレーション中に車両を固定させるために使用される2つ目のクランプ。 |
b_str_dummy | Steering Dummy Body | ラック&ピニオン式ステアリングシステムのラック。Parallelogramステアリングシステムではリレーロッドです。 |
J_rackfix_att | Joint Fixed Rack-Body | ラック&ピニオン式ステアリングステアリングシステムのラックダミー方向ジョイント。ParallelogramステアリングシステムではIdler Armの球ジョイント。 |
J_ball_att | Joint Pitman | ラック&ピニオン式ステアリングステアリングシステムのピニオンジョイント。Parallelogramステアリングシステムではピットマンアームの球ジョイント。 |
Tire_dataset | Tire Data | タイヤシステムからの情報を含むデータセット。 |
b_str_dummy_racksteer | Steering Dummy Body Rack Pinion | Parallelogramおよびラック&ピニオン式ステアリングステアリングシステムの両方のステアリングダミーボディ。 |
参考資料
ISO 3888-2-2011 Passenger cars — Test track for a severe lane-change maneuver
NATO Allied Vehicle Testing Publication AVTP: 03-160 Sep. 1991
Single Lane Changeイベントの作成
- Task WizardをクリックしてSingle lane change analysisオプションを選択します。
- Nextをクリックします。
-
Finishをクリックします。
モデルブラウザに新しいデータが入力され、Car/Small truck - Full vehicle tasksダイアログが開きます。
-
ダイアログでデータを確認してNextをクリックします。
Car/Small truck - Full vehicle tasksダイアログにステアコントローラーのデータが表示されます。
-
データを確認してNextをクリックします。
Car/Small truck - Full vehicle tasksダイアログに駆動トルクコントローラーのデータが表示されます。
- Finishをクリックします。
-
モデルブラウザのSingle lane change analysisで、Data Setsを展開してFull Vehicle
Dataをクリックします。
データセットには、レーンチェンジの記述に使用するデータが収められています。データセットの上部に白色の背景で表示される4つのパラメータを変更することによって、Single Lane Changeフォームを使用するイベントを修正できます。データセットの下部にある6つのパラメータは、計算されるパラメータであり、変更してはいけません。青色の背景は、計算されたパラメータであることを示します。ユーザー入力は必要ありません。
図 6. -
モデルブラウザで、Formsを展開してSingle lane change dataをクリックします。
フォームは、レーンチェンジイベントを変更する必要のある唯一の場所です。変更可能なパラメータは、車両の速度とレーンチェンジの形状です。すべてのレーンチェンジデータと車両経路のグラフィックスは、この4つの入力を使用してパラメータで定義します。地上Z座標は計算値(青色の背景で示されています)であり、タイヤデータフォームの左フロントホイール重心のZ位置とタイヤ転がり半径を使用して計算されます。
-
モデルブラウザで、Graphicsを展開します。
路面グラフィックスは、走行する経路を示すために用意されており、シングルレーンチェンジフォームのデータを使用してパラメータで定義します。道路のグラフィックスはすべて車線の寸法を示すために使用されますが、タイヤ力の計算に使用される、実際の道路の車線寸法ではありません。道路のグラフィックスは、イベントが根本的に変更されないかぎり、編集する必要はありません。タイヤ力の計算に使用する道路は、道路のグラフィックスと同じ高さにあり、タイヤシステムで道路のファイル(.rdf)に定義します。車両ライブラリ内のデフォルトの平坦な道路のファイルは、摩擦係数が1.0の無限の大きさの平坦な道路です。道路のファイルはASCIIファイルで、編集可能です。
図 7. コーンのグラフィックス
図 8. 道路のグラフィックス
-
モデルブラウザで、Jointsを展開してRack Dummy Ballをクリックします。
Single lane changeイベントには、球ジョイントが1つ組み込まれています。このジョイントは、ダミーボディをステアリングラックに結合します。このジョイントは、特定のイベントをADAMSで機能させるために含まれています。モデルを手動で構築する場合は、ダミーボディをステアリングラックに結合します。
- モデルを手動で構築する場合は、パネルを使用してダミーボディをステアリングラックに結合します。
-
モデルブラウザで、Markersを展開します。
Single Lane Change eventには9つのマーカーがあります。マーカーを使用して、車線のグラフィックスを定義できます(コーンおよび車線の路面)。
経路のアウトラインマーカーは、XYZ位置のPath Outlineポイントを指し示します。ポイントは、イベント入力データを使用してパラメータで定義されます。経路の原点は、すべてのレーンチェンジグラフィックスの原点であり、車体の重心になるようにパラメータで定義します。
どのマーカーにもユーザー入力は必要ありません。
-
モデルブラウザで、Motionsを展開します。
3つのモーションがイベントに組み込まれています。車両に対するステアリングモーションは、ステアコントローラーによって提供され、ステアリングコラムを車体に接合する回転ジョイントに作用します。モデルにステアリングコラムがない場合、このジョイントはステアリングラック入力軸と車体の間で機能します。
- Steering Wheel Motion
-
ハンドルのジョイントに回転モーションを適用します。モーションは値0のlinearタイプに初期設定されますが、イベントテンプレートを使用して式に変更できます。
- Front Wheel Motion
- 前輪のスピンドルに適用され、タイプはlinearで値は0になります。
- Rear Wheel Motion
- 後輪のスピンドルに適用され、タイプはlinearで値は0になります。
前輪と後輪のモーションは、ホイールハブをナックルに結合する、ホイールスピンドルの回転ジョイントに作用します。ホイールがナックルに固定されていることから、当初のこのモーションは0なので、モデルは静的に収束します。動解析中にタイヤが回転できるように、静的平衡解析の後、モーションは非アクティブ化されます。
-
モデルブラウザで、Pointsを展開します。
17のポイントがイベント内で定義されています。ポイントはすべて、車線のグラフィックスと、車線を示すために使用するコーンのグラフィックスを作成するために使用されます。ポイントには、それらのX、Y、Zの位置を定義するパラメータのロジックが格納されます。ポイントは変更しないでください。
- Path Origin
- 車両の出発地点である経路の原点を示すポイント。これはパラメータで車体のCG位置に設定されます。
- Path Outline1
- 経路のグラフィックスに使用されるポイント。モデルからの様々なデータを使用してパラメータで定義されます。
- Path Outline2-N
- 経路のグラフィックスに使用される追加のポイント。Path Outline 1と同様の方式によりパラメータで定義されます。
- Cone1
- コーンのグラフィックスを定義するために使用されるポイント。道路を図示するための経路に沿って道路の端に位置するようパラメータで定義されます。
- Cone2-N
- コーンのグラフィックスを定義するために使用される追加のポイント。道路を図示するための経路に沿って道路の端に位置するようパラメータで定義されます。
-
モデルブラウザで、Solver
Variablesを展開します。
Single Lane Change eventには1つのソルバー変数があります。Steer Path変数は、ユーザー作成のサブルーチン呼び出しであり、目的の経路をたどるためにハンドルに適用する必要がある角度を返します。ハンドルのモーションは、レーンチェンジテンプレートでこの変数に設定されます。Steer Path変数のどの部分も編集しないでください。ソルバー変数USERサブルーチン呼び出しの番号は次のとおりです。
- 5010
- ブランチID。5010はSingle lane changeイベントです。
- 70000000
- ドライバーモデルコントローラーデータを記述したソルバー配列のID。この配列は、ステアコントローラーシステムにあります。
- 70000100
- 車両情報を含む車両データ配列のID。この配列は、ステアコントローラーシステムにあります。
- 30.5
- レーンチェンジの移行セクションの長さ(m単位)です。
- 3.66
- レーンチェンジの幅(m単位)です。
-
モデルブラウザで、Templatesを展開してSingle Lane Change
eventをクリックします。
このテンプレートはソルバー固有で、MotionSolveテンプレートのみがドキュメント化されています。テンプレートは、</Model>コマンドの後にソルバーデックに挿入され、イベントの実行を制御します。
if (tire_dataset.opt_omega.ival)ロジックは、オメガ方式のタイヤ回転を使用していたレガシーモデルを扱うために組み込まれています。この方式は現在ではサポートされていないため、値は必ず1に等しくなります。このロジックは、将来のリリースでは削除される予定です。
最初の4つの非アクティブ化コマンドは、車輪とナックルとの間のモーションを非アクティブにし、それらを回転可能にします。最後の2つの非アクティブ化コマンドは、ボディクランプをオフにします。ボディクランプは、静解析時にボディの剛性を維持します。
Motion_Jointコマンドは、0からステアリングコントローラーによって算出された値までの範囲で、ハンドルのジョイントの値を再度割り当てます。基本的には、ステアリングコントローラーをオンにします。
Simulate過渡応答解析コマンドは、過渡応答解析シミュレーションを開始し、出力時間ステップとシミュレーションの終了時刻を確立します。このデータを編集して、イベントを変更することができます。このソリューションを拡張するために、その他のXMLコマンドを追加可能です。コマンドに関しては、MotionSolveリファレンスガイドのCommand Statementsを参照してください。
このイベントのテンプレートを以下に示します。テンプレートには、生成される出力ファイル、実行される一連のイベント用のコマンドと、Pulse Steerイベントシーケンスの作成に使用されるフォース、ジョイント、およびモーション用の実行時コマンドがあります。<ResOutput angle_type = "YPR" /> <ResOutput mrf_file = "TRUE" /> <ResOutput plt_file = "TRUE" /> <H3DOutput switch_on = "TRUE" increment = "1" /> <ResOutput abf_file = "TRUE" /> {if (tire_dataset.opt_omega.ival ==1)} <!--Initial static analysis --> <Simulate analysis_type = "Static" end_time = "0.0" /> {endif} <Deactivate element_type = "MOTION" element_id = "{mot_frnt_wheel.l.idstring}" /> <Deactivate element_type = "MOTION" element_id = "{mot_frnt_wheel.r.idstring}" /> <Deactivate element_type = "MOTION" element_id = "{mot_rear_wheel.l.idstring}" /> <Deactivate element_type = "MOTION" element_id = "{mot_rear_wheel.r.idstring}" /> {if (tire_dataset.opt_omega.ival ==2)} <!--Initial static analysis --> <Simulate analysis_type = "Static" end_time = "0.0" /> {endif} <Deactivate element_type = "JPRIM" element_id = "{j_clamp_1_body.idstring}" /> <Deactivate element_type = "JPRIM" element_id = "{j_clamp_2_body.idstring}" /> <Motion_Joint id = "{wh_motion.idstring}" expr = "VARVAL({sv_path.idstring})" /> <Simulate analysis_type = "Transient" end_time = "6" print_interval = "0.05" /> <Stop/>