空気力

基本的なアプローチ

Manfred MitschkeとHenning Wallentowitz 1が提唱する空気力学の概念を以下に示します。

結果として生じる空気力と空力トルクは、4つのホイールの中心にある路面上に配置された基準点Ocに作用すると見なされます。



図 1.

Fa,x = cxL)*P(vr)

Fa,y = cyL)*P(vr)

Fa,z = czL)*P(vr)

Ma,x = cmxL)*l*P(vr)

Ma,y = cmyL)* l*P(vr)

Ma,z = cmzL)* l*P(vr)

ここで、ciは空力係数、τLは相対気流入射角、vrは結果として生じる速度、Pは動圧、およびlはホイールベースです。

上で定義した力とトルクの成分が適用される座標系は、Ocに配置され、車体に固定されます。

速度について

斜め気流によって、車両の前後軸に対する入射角がτLの流速vrが発生します。パラメータのvrとτLはどちらも路面速度ベクトルv(負の車速ベクトル)と風速ベクトルvwの加算で計算できます。

プロパティシートに記載された最大入射角は、空気力が車両に作用する限界です。限界を超えると、空気力は徐々に0に戻ります。


図 2.

P(vr)について

動圧は、空気密度ρ、結果として生じる速度vr、および次の式を使用して計算できます。

P(vr) = 0.5 * ρ * vr2

空気密度は、環境の周辺温度や周辺圧力に依存し、多くの場合は一定と見なされる、空気の理想的な気体定数です。

垂直力とピッチトルク

垂直力Fa,zとピッチトルクMa,yは、cz,fとcz,rを取り込む地表レベルにあるサスペンションの中心点OfとOrに作用する2つの垂直力に置き換えられます。

Fa,zf = cz,fL)*P(vr)

Fa,zr = cz,rL)*P(vr)
空気力と空力モーメントの式のまとめ

Fa,x = 0.5*cxL)* ρ * A* vr2

Fa,y = 0.5*cyL)* ρ * A* vr2

Fa,zf = 0.5*cz,fL)* ρ * A* vr2

Fa,zr = 0.5*cz,rL)* ρ * A* vr2

Ma,x = cmxL)* l* ρ * A* vr2

Ma,z = cmzL)* l* ρ * A* vr2

ここで、Aは車の前面面積です。車両前面面積は、通常、乗用車の場合は1.5 m2 < A < 2.5 m2の範囲、トラックやバスの場合は4 m2 < A < 9 m2の範囲です。

ciの決定方法

非常に大まかな概算として、ciは定数と見なすことができ、空気力を完全に無効にするには、すべてのciを0に設定できます。

一般的に、ciは、τの関数としてなるべく次のような表として定義する必要があります。データは、現時点で、参考文献の表や図で見つかった値を無作為に集めたものです。
  τL =0deg τL =10deg τL =20deg τL =30deg
cx 0.3 0.31 0.32 0.33
cy 0 0.4 0.8 1.2
cz,f 0.1 0.2 0.3 0.4
cz,r 0 0.1 0.2 0.3
cmx 0 0.03 0.06 0.09
cmz 0 0.04 0.08 0.12

この表を使用する場合の制限は、車が30度を超える斜め気流を受ける状況が許可されないことです。このような状態、特に、純粋な横風の状態については、今後のリリースで実装が考慮される予定です。

ci係数は、仮想風洞実験によっても導出できます。このような実験で測定された値が、vrおよびτの関数として、Oc、Orにおける拘束力になります。

プロパティファイル

空力システムでは、ソルバーにすべてのパラメータへのアクセスを提供するために空力プロパティファイル(.aae)が使用されます。.aaeファイルへの参照がsa_aero_paramsソルバー配列内のSolver Stringとしてソルバーに送信されます。

空力プロパティファイルはTeimOrbitフォーマットで記述されます。
TiemOrbitフォーマット
TeimOrbitリーダーは、さまざまなエンティティを解析して、空力プロパティファイルからデータを取得します。これらのエンティティには、属性、ブロック、サブブロック、テーブル、単位、およびコメントが含まれます。
属性
属性は、Driverファイルの最小データメンバーを成します。属性は、実数、整数、文字列またはブーリアン演算式(True/False)であることが可能です。
[BLOCK_NAME]
ATTRIBUTE_1  = 'TRUE'
ATTRIBUTE_2  = 1.0
ATTRIBUTE_3  = 'Wind_velocity'
ATTRIBUTE_4  = 8
属性名:
  • 文字列
  • 大文字小文字を区別しない、など。TAGとtagは同じです。
  • 上記の例では、TAG、SATURATION、LOOK_AHEAD_TIME、DEMAND_FILE、INTEGRATION_STEP_SIZEは属性名です。
属性値:
  • 実数、整数、文字列、ブーリアン演算式
  • 文字列は、‘引用符’ または “二重引用符”に囲まれていなくてはならない
  • 0、0.00、N、NO、FALSE、Fはすべてfalseと表現される
  • 1、1.00、T、TRUE、Y、YESはすべてtrueと表現される
  • 大文字小文字の別が識別される
フォーマット:
ATTRIBUTE_NAME = ATTRIBUTE_VALUE
ブロック
ブロックは、リーダーユーティリティの最も用途の広いデータ構造を成します。ブロックは、ブロックを除くすべてのデータメンバーのコンテナとして機能します。
  • ブロックには、任意の数のサブブロックが含まれることが可能です。
  • ブロックがブロックを含むことはできません。
  • ブロックは、複数のテーブルを含むことができますが、それらを別々のサブブロックに格納することしかできません。
フォーマット:
[BLOCK_NAME]
ATTRIBUTE(s)
SUBBLOCK(s)
TABLE

ブロックは、ファイルの末尾または新しいブロックの先頭で終わります。

サブブロック
サブブロックは構造的にはブロックと同じで、サブブロックまたはブロックを含むことができない点のみが異なります。
  • 1つのサブブロックに複数のテーブルを含むことはできません。
フォーマット:
(SUBBLOCK_NAME)
ATTRIBUTE(s)
TABLE(s)
テーブル
フィールド(行と列)から成るデータ構造。
  • テーブルは、任意の属性を含むことができます。
  • ラベルが与えられていない場合、デフォルトで、0から始まるインデックスとしてラベル付けします。
フォーマット:
{LABEL1       LABEL2      LABEL3}
ATTRIBUTE00   ATTRIBUTE01   ATTRIBUTE02
ATTRIBUTE10   ATTRIBUTE11   ATTRIBUTE12
ATTRIBUTE20   ATTRIBUTE21   ATTRIBUTE22
単位
‘ユニット’は、プロパティファイルのリーダーユニットを伝える特別なブロックです。
  • 各プロパティシートは、必ずユニットブロックを持つ必要があります。
  • ユーザー定義のユニットはテーブル表記。
コメント
‘$’で始まる行に書かれているものはすべて、リーダーユーティリティによって無視されます。
[ENVIRONMENT]
$These are environment conditions for the simulation
GAS_CONSTANT                    	= 287e3
AMBIENT_PRESSURE                	= 0.101325
AMBIENT_TEMPERATURE             	= 298
WIND_VELOCITY		= 'WIND_VELOCITY'
Altairヘッダー
Altairヘッダーブロックは、プロパティファイルの基本情報をソルバーに提供します。
$-----------------------------------------------------------------ALTAIR_HEADER
[ALTAIR_HEADER]
FILE_TYPE 	= 'AAE'
FILE_VERSION 	= 1.0
FILE_FORMAT 	= 'ASCII'
ENTITY_TYPE     	= 'AERODYNAMIC_FORCE'
  タイプ 必須条件

ブロック名

[ALTAIR_HEADER]
文字列 必須
FILE_TYPE 属性-文字列 必須
  • 読み出しおよび抽出情報
  • 複数ファイルフォーマットサポート
FILE_VERSION 属性-実数 必須

FILE_FORMAT

‘ASCII’
属性-文字列

オプション

現時点ではオプション。将来の強化用には必須

ENTITY_TYPE

'AERODYNAMIC_FORCE'
属性-文字列

オプション

プロパティファイルに関連付けられたエンティティに関する情報を提供します。
単位
ソルバーは、空力データや環境データを抽出するためにシミュレーション中にMotionSolveでAAEを解析します。プロパティファイルの解析中に、ソルバーは、単位ブロックを読み取ってプロパティファイル内のデータをSI単位に変換し、それらをさらにシミュレーションで使用します。
単位ブロックは、プロパティファイルに記載されたすべてのデータの単位を指定したものです。単位は、長さ、力、角度、質量、時間、および温度に関して指定されます。
  • 単位は大文字と小文字が区別されません。meter、Meter、METER、またはMeTerはすべて同じものと解釈されます。
  • 単位ブロックは、あらゆる種類のデータファイルに必要です。
$--------------------------------------------------------------------------UNITS
[UNITS]
(BASE)
{length  force      angle       mass    time    temperature}
'mm'   'newton'   'degrees'   'kg'    'sec'     'kelvin'
寸法 オプション SIへの換算係数
長さ

meter、meters または m

foot、feet または ft

mile またはmiles

millimeter、millimeters または mm

inch、inches または in

1.0

0.3048

1609.344

0.001

0.0254
Force

Newton

Dyne

Knewton

Ounce_Force

Kilogram_Force または Kgf

Kpound_Force

Pound_Force または lbf

1.0

0.00001

1000

0.27801

9.80665

4448.2216

4.4482216
Angle

Radian、radians、rad または r

Degrees、degree、deg または d

1.00

0.017453
Mass

Kg、kilogram または kilograms

G、gram または grams

Pound、pounds、lb または lbs

1.0

0.001

0.453592
Time

sec、second または seconds

milliseconds、millisecond、millisec、millisecs または ms

1.0

0.001
Temperature

Kelvinまたはk

注: その他の温度の単位は、今後のバージョンでサポートされる予定です。
1.0
形状プロパティ
このセクションには、車両のジオメトリに関連するデータが含まれています。空気力の計算には、このブロックで指定される車両の前面面積が必要です。
$---------------------------------------------------------------GEOMETRIC_PROPERTIES
[GEOMETRIC_PROPERTIES]
FRONTAL_SECTION_AREA        = 2e6
     

ブロック名

[GEOMETRIC_PROPERTIES]
文字列 必須
FRONTAL_SECTION_AREA 属性-実数

必須

車両の前面面積。

単位 – L2
環境
このセクションには、環境に関連するデータが含まれています。空気力の計算には、このブロックで指定される周辺圧力、周辺温度、および風速が必要です。
$---------------------------------------------------------------ENVIRONMENT
[ENVIRONMENT]
GAS_CONSTANT                    	= 287e3
AMBIENT_PRESSURE                	= 0.101325
AMBIENT_TEMPERATURE             	= 298
WIND_VELOCITY		= 'WIND_VEL_1'
$Wind vel is with respect to global frame
$---------------------------------------------------------------WIND_VELOCITY
[WIND_VEL_1]
$Wind vel is with respect to global frame
VX                    = 1000
VY                    = 0
VZ                    = 0  
  タイプ 必須条件

ブロック名

[ENVIRONMENT]
文字列 必須
GAS_CONSTANT 属性-実数

必須

単位 – FLM-1Temp-1
AMBIENT_PRESSURE 属性-実数

必須

単位 – FL-2
AMBIENT_TEMPERATURE 属性-実数

必須

単位 – Temp

WIND_VELOCITY

 

必須

単位 – LT-1
抗力係数
このセクションには、さまざまな入射角に対する抗力係数のテーブルが含まれています。このテーブルはブロックで示されているようなスプラインとして提供され、補間法が提供されます。
$---------------------------------------------------------------DRAG_COEFFICIENT
[DRAG_COEFFICIENT]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名

[DRAG_COEFFICIENT]
文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値における抗力係数値

横力係数
このセクションには、さまざまな入射角に対する横力係数のテーブルが含まれています。このテーブルはブロックで示されているようなスプラインとして提供され、補間法が提供されます。
$--------------------------------------------------------------- SIDEFORCE_COEFFICIENT	
[SIDEFORCE_COEFFICIENT]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名

[SIDEFORCE_COEFFICIENT]
文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値における横力係数値

フロント揚力係数
このセクションには、さまざまな入射角に対するフロント揚力係数のテーブルが含まれています。このテーブルはブロックで示されているようなスプラインとして提供され、補間法が提供されます。
$--------------------------------------------------------------- LIFT_COEFFICIENT_FRONT
[LIFT_COEFFICIENT_FRONT]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名[LIFT_COEFFICIENT_FRONT]

文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値におけるフロント揚力係数値

リア揚力係数
このセクションには、さまざまな入射角に対するリア揚力係数のテーブルが含まれています。このテーブルはブロックで示されているようなスプラインとして提供され、補間法が提供されます。
$--------------------------------------------------------------- LIFT_COEFFICIENT_REAR
[LIFT_COEFFICIENT_REAR]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名[LIFT_COEFFICIENT_REAR]

文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値におけるリア揚力係数値

ロール係数
このセクションには、さまざまな入射角に対するロール係数のテーブルが含まれています。このテーブルはブロックで示されているようなスプラインとして提供され、補間法が提供されます。
$--------------------------------------------------------------- ROLL_COEFFICIENT
[ROLL_COEFFICIENT]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名[ROLL_COEFFICIENT]

文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値におけるロール係数値

ヨー係数

このセクションには、車両のジオメトリに関連するデータが含まれています。空気力の計算には、このブロックで指定される車両の前面面積が必要です。

$--------------------------------------------------------------- YAW_COEFFICIENT [YAW_COEFFICIENT]
INTERPOLATION = 'AKIMA'
(SPLINE_DATA)
{INCIDENCE_ANGLE    COEFFICIENT}
0.0                 0.3
10.0                0.31
20.0                0.32
30.0                0.33
  タイプ 必須条件

ブロック名[YAW_COEFFICIENT]

文字列 必須
INTERPOLATION 属性-文字列

オプション

存在しない場合:
  • 補間法 = AKIMA
存在する場合:
  • 補間法 = INTERPOLATION.value。
  • オプション - AKIMA、CUBIC、LINEAR、QUINTIC。

これらの補間法は、Altair MotionSolveの補間法に似ています。補間法の詳細については、Altair MotionSolveのドキュメントをご参照ください。

SPLINE_DATA

Attr-Table

INCIDENCE_ANGLEとCOEFFICIENT

必須

さまざまな入射角の値におけるヨー係数値

空力システムを使用した車両モデルの構築

Altair MotionViewでは、Assembly Wizardを使用して事前に定義されたシステムのライブラリからモデルが組み立てられます。Assembly Wizardダイアログは、アセンブリプロセスを示し、ユーザーの選択がコンパチブルであることを確実にします。

注:Event Builderを使用する前に、MBD Vehicle Dynamics Toolsプリファレンスファイルを読み込む必要があります。Altair MotionViewインターフェースで、File > Load > Preference File > MBD Vehicle Dynamics Toolsの順に選択します。
Assembly Wizardの開始
  1. HyperWorksのインストールフォルダーからMotionViewを開始します。
    MotionViewウィンドウが表示されます。


    図 3.
  2. Model > Assembly Wizardをクリックします。


    図 4.

    Car/Small truck - Model Typeダイアログが開きます。

Aerodynamic Forcesを使用したフルビークルモデルの構築
Aerodynamic Forcesを使用してフルビークルモデルを構築する手順を以下に示します。
  1. Model TypeダイアログでFull vehicle with driverオプションを選択し、Nextをクリックします。


    図 5.
  2. 追加のシステムページでAerodynamic Forcesを選択して、モデル選択を完了します。


    図 6.
    注: Aerodynamic Forcesは、現在、1つのシステムとして組み込まれています。
  3. Assembly Wizardを介した空力システム構築などのドライバモデルを含むフルビークルがグラフィックス領域に表示されます。


    図 7.
  4. Assembly Wizardでモデルを構築するために選択したAerodynamic Forcesを含むサブシステムがブラウザに表示されます。


    図 8.

Aerodynamic Forcesグラフィカルユーザーインターフェース

Aerodynamic Forcesグラフィカルユーザーインターフェースの使用方法の概要を以下に示します:
  1. ブラウザでAerodynamic Forcesをクリックすると、パネル領域にAttachmentsセクションが表示されます。


    図 9.
    対応するパネルが表示されます。


    図 10.
    アタッチメント 説明

    Vehicle Body

    *必須
    空力システムの作用力が適用される車体。

    Front wheel center

    *必須
    前車軸のホイール中心点のペア。

    Rear wheel center

    *必須
    後車軸のホイール中心点のペア。

参考資料

  1. Manfred MitschkeおよびHenning Wallentowitz、Dynamik der Kraftfahrzeuge、Auflage、Springer、2004。