Sinusoidal Steering

Sinusoidal steeringイベントは、正弦波入力をハンドルに適用した状態で、一定速度での車両の走行をシミュレートします。このイベントは、SAEペーパー840069に説明されているオンセンターステアリングテストをシミュレートするために使用されます。イベントには標準の車両出力が組み込まれています。ボディシステムにはボディ状態変数の出力リクエスト(変位、速度、加速度)が用意され、タイヤシステムにはタイヤの出力が用意されています。結果をプロットするために、プロットテンプレートが用意されています。

Sinusoidal Steering eventを実行して、低周波の正弦波状のハンドル入力に対する車両の応答を判断します。イベントは、0.2Gの横方向のイベントでの車両の性能をシミュレートし、車両が正確に制御される必要のある走行イベントのステアリングフィールを計算するために使用されます。イベントは、中程度の横方向の加速度(0.3G以下)で通常の幹線道路イベントにおける車両のステアリングフィールを予測します。



図 1. Sinusoidal Steeringイベント


図 2. Sinusoidal Steeringの上面図(車両は非常に小さい)

初期車両速度、ステアリング入力の大きさ、およびステアリング入力の頻度の値は、イベントフォームで変更できます。

アタッチメント

イベントは標準のイベントアタッチメントを使用します。Model Wizardを使用してモデルを構築している場合、アタッチメントは自動的に定義されます。アタッチメントには、イベントが解析を実行するために必要な最小限のデータが格納されています。アタッチメントは、大半のイベントで標準です。

参考資料

SAE 840069 – Objective Evaluation of On-Center Handling Performance

正弦波ステアリングの作成

  1. Task WizardをクリックしてSinusoidal steering analysisオプションを選択します。
  2. Nextをクリックします。
  3. Finishをクリックします。
    Projectブラウザに新しいデータが入力され、Car/Small truck - Full vehicle tasksダイアログが開きます。
  4. ダイアログでデータを確認してNextをクリックします。
    Car/Small truck - Full vehicle tasksダイアログに正弦波ステアデータが表示されます。
  5. データを確認してNextをクリックします。
    Car/Small truck - Full vehicle tasksダイアログに駆動トルクコントローラーのデータが表示されます。
  6. Finishをクリックします。
  7. Projectブラウザのsinusoidal steering analysisで、Curvesを展開してLane pathをクリックします。
    Sinusoidal Steering eventには1つのカーブがあります。カーブはイベントでは使用されませんが、経路を走行するイベントに切り替える場合のために組み込まれています。
  8. Projectブラウザのsinusoidal steering analysisで、Data Setsを展開してFull Vehicle Dataをクリックします。
    システム内では1つのデータセットが使用され、そこにはSinusoidal Steering eventを記述するために使用するデータが格納されています。このイベントを使用すると、初期車両速度、車線幅、ステアリング入力の大きさおよびステアリング入力周波数を設定できます。ホイール回転速度および地上の高さ(青色の背景で表示)は計算された値で、変更できません。
  9. Projectブラウザで、Formsを展開してSinusoidal steer dataをクリックします。
    フォームは、Sinusoidal Steering eventを変更する必要のある唯一の場所です。変更可能なパラメータは、車両速度、ステアリング入力の大きさ、およびステアリング入力の頻度です。イベントを長く実行する場合は、イベントテンプレートを編集できます。
  10. Projectブラウザで、Graphicsを展開します。
    イベント内では7個のグラフィックスが定義されています。グラフィックスは、コーンと直線道路のグラフィックスを定義し、ユーザーが入力する必要はありません。
    路面グラフィックスは、走行する経路を示すために用意されており、Sinusoidal steeringフォームのデータを使用してパラメータで定義します。Straight Road Graphicsは、イベントが根本的に変更されないかぎり、編集する必要はありません。


    図 3. コーンのグラフィックス


    図 4. 直線道路のグラフィックス
  11. Projectブラウザで、Jointsを展開してRack Dummy Ballをクリックします。
    Sinusoidal Steering eventにはボールジョイントが1つあります。このジョイントは、ダミーボディをステアリングラックに結合します。このジョイントは、特定のイベントをADAMSで機能させるために含まれています。
  12. モデルを手動で構築する場合は、パネルを使用してダミーボディをステアリングラックに結合します。
  13. Projectブラウザで、Markersを展開します。
    Sinusoidal Steering eventには5つのマーカーがあります。経路の原点は、すべてのグラフィックスの原点で、車体のCGになるようにパラメータで定義されます。マーカーはポイントを指し示し、ポイントにはパラメータのロジックが含まれます。

    経路のアウトラインマーカーは、XYZ位置のPath Outlineポイントを指し示します。これらのマーカーは道路のグラフィックスを定義するために使用されます。どのマーカーにもユーザー入力は必要ありません。

    どのマーカーにもユーザー入力は必要ありません。

  14. Projectブラウザで、Motionsを展開します。
    3つのモーションがイベントに組み込まれています。ステアリングモーションは、車両を操縦するために使用され、ステアリングコラムを車体に繋ぐ回転ジョイントに作用します。ステアリングコラムがモデルに含まれない場合、モーションがステアリングラックの入力シャフトと車体の間のジョイントに作用します。

    前輪と後輪のモーションは、ホイールハブをナックルに結合する、ホイールスピンドルの回転ジョイントに作用します。ホイールがナックルに固定されていることから、当初のこのモーションは0なので、モデルは静的に収束します。静解析の後、動的解析中にタイヤが回転できるように、ホイールロッキングモーションは非アクティブ化されます。

  15. Projectブラウザで、Pointsを展開します。
    15のポイントがイベント内で定義されています。ポイントはすべて、車線のグラフィックスと、車線を示すために使用するコーンのグラフィックスを作成するために使用されます。ポイントには、それらのX、Y、Zの位置を定義するパラメータのロジックが格納されます。ポイントは変更しないでください。
  16. Projectブラウザで、Templatesを展開してSinusoidal steerをクリックします。
    このテンプレートはソルバー固有で、MotionSolveテンプレートのみがドキュメント化されています。テンプレートは、</Model>コマンドの後にソルバーデックに挿入され、イベントの実行を制御します。

    データセット内に見つかった値を使用するよう、テンプレートでステアリングホイールモーションを変更できます。イベント終了時間(デフォルトは6秒)は、テンプレート内で設定されており、完全なオンセンターステアリングテストをシミュレートするよう変更する必要があります。

    このイベントのテンプレートを以下に示します。
    <ResOutput
         angle_type          = "YPR"
      />
      <ResOutput
         mrf_file            = "TRUE"
      />
      <ResOutput
         plt_file            = "TRUE"
      />
      <H3DOutput
         switch_on           = "TRUE"
         increment           = "1"
      />                    
    {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                = "-{ds.str_mag.value}D*SIN(2*PI*{ds.str_freq.value}*TIME)"
      />                                
                                     
     <Simulate
          analysis_type       = "Transient"
          end_time            = "6"
          print_interval      = "0.05"
      />
     
     <Stop/>