Altair Driverファイルブロック
Altair Driverファイルは、ヘッダー、単位、車両の初期条件、Driverの出力標準、および運転操作リストに記載された運転操作に分解した解析またはイベントで構成されます。
この運転操作は、該当のコントローラーセクションで定義します。各コントローラーセクションには、コントローラー設定およびそのコントローラーセクションで指定する要求信号(要求経路や要求速度など)が記述されています。
$--------------------------------------------------ALTAIR_HEADER
[ALTAIR_HEADER]
FILE_TYPE = 'ADF'
FILE_VERSION = 1.0
FILE_FORMAT = 'ASCII'
$-----------------------------------------------------------------UNITS
[UNITS]
(BASE)
{ length force angle mass time }
'mm' 'newton' 'radians' 'kg' 'sec'
$-----------------------------------------------------VEHICLE_IC
[VEHICLE_INITIAL_CONDITIONS]
$These are wrt marker attached to the driver analysis - Vehicle IC reference marker
$Default Global Frame
VX0 = -2683.33
VY0 = 0.0
VZ0 = 0.0
ENGINE_INIT_SPEED = 300
$-----------------------------------------------------STEERING_STANDARD
[STEER_STANDARD]
MAX_VALUE = 9.4248
MIN_VALUE = -9.4248
SMOOTHING_FREQUENCY = 10
INITIAL_VALUE = 0
$------------------------------------------------------THROTTLE_STANDARD
[THROTTLE_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
SMOOTHING_FREQUENCY = 10
INITIAL_VALUE = 0
$------------------------------------------------------BRAKING_STANDARD
[BRAKE_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
SMOOTHING_FREQUENCY = 10
INITIAL_VALUE = 0
$------------------------------------------------------GEAR_STANDARD
[GEAR_STANDARD]
MAX_VALUE = 6
MIN_VALUE = 1
SMOOTHING_FREQUENCY = 10
INITIAL_VALUE = 1
$-----------------------------------------------------CLUTCH_STANDARD
[CLUTCH_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
SMOOTHING_FREQUENCY = 10
INITIAL_VALUE = 0
$--------------------------------------------------------MANEUVERS_LIST
[MANEUVERS_LIST]
{ name simulation_time h_max print_interval}
'MANEUVER_1' 12 0.01 0.05
$----------------------------------------------------------------MANEUVER_1
[MANEUVER_1]
TASK = 'STANDARD'
(CONTROLLERS)
{DRIVER_SIGNAL PRIMARY_CONTROLLER ADDITIONAL_CONTROLLER}
STEER OL_STEER_0 NONE
THROTTLE FF_TRACTION_CONTROLLER NONE
BRAKE FF_TRACTION_CONTROLLER NONE
GEAR GEAR_CLUTCH_CONTROL NONE
CLUTCH GEAR_CLUTCH_CONTROL NONE
$---------------------------------------------------------OL_STEER_0
[OL_STEER_0]
TAG = 'OPENLOOP'
TYPE = 'CONSTANT'
VALUE = 0
$-----------------------------------------------------------FF_TRACTION_CONTROLLER
[FF_TRACTION_CONTROLLER]
TAG = 'FEEDFORWARD'
TYPE = 'FOLLOW_VELOCITY'
LOOK_AHEAD_TIME = 0.5
DEMAND_SIGNAL = 'DEMAND_VEL'
$-----------------------------------------------------------DEMAND_VEL
[DEMAND_VEL]
TYPE = 'CONSTANT'
VALUE = 2683.33
$-----------------------------------------------------------GEAR_CLUTCH_CONTROL
$Used in case of models with IC Engine
[GEAR_CLUTCH_CONTROL]
TAG = 'ENGINE_SPEED'
(GEAR_SHIFT_MAP)
{G US DS CT CRT TFD TFT CFT TRD TRT}
1 650 125 0.45 0.05 0.1 0.1 0.05 0.05 0.05
2 650 125 0.45 0.05 0.1 0.1 0.05 0.05 0.05
3 650 125 0.45 0.05 0.1 0.1 0.05 0.05 0.05
4 650 125 0.45 0.05 0.1 0.1 0.05 0.05 0.05
5 650 125 0.45 0.05 0.1 0.1 0.05 0.05 0.05
上記は、単一の運転操作においてステアリング角がゼロで車両速度が一定のイベントを記述したサンプルADFです。
Altairヘッダー
Altairヘッダーブロックは、ADFの基本情報をソルバーのAltair Driverファイルに提供します。
$-------------------------ALTAIR_HEADER
[ALTAIR_HEADER]
FILE_TYPE = 'ADF'
FILE_VERSION = 1.0
FILE_FORMAT = 'ASCII'
型 | 必須条件 | |
---|---|---|
ブロック名 [ALTAIR_HEADER] |
文字列 | 必須 |
FILE_TYPE | 属性-文字列 | 必須
|
FILE_VERSION | 属性-実数 | 必須 = 1.0 |
FILE_FORMAT | 属性-文字列 | オプション 現時点ではオプション。将来の強化用には必須 |
Units
ADFには、SLCでのセグメントの長さ、経路の座標、要求速度、ステアリング角などのパラメータが記述されています。シミュレーションの際に、Altair DriverによってMotionSolveでADFが解析され、イベントデータが抽出されます。ADFの解析では、Altair Driverで単位ブロックを読み取り、ADFに記述されたデータをSI単位に変換します。そのデータを以降のシミュレーションで使用します。
- 単位は、大文字小文字を区別しない – meter、Meter、METER、MeTerはいずれも同じと解釈される
- Unitsブロックは、全てのタイプのデータファイルがドライバーによって読み出されるために必要
$---------------------------------------------UNITS
[UNITS]
(BASE)
{length force angle mass time}
'meter' 'newton' 'radians' 'kg' 'sec'
寸法 | オプション | SIへの変換係数 |
---|---|---|
Length | 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 |
車両の初期条件
このブロックで車両の初期条件を指定します。この条件は、車両のICマーカー(Altair Driverの添付ファイルにあります)の3つの軸方向車両速度と、ICエンジンを備えたモデルの場合に使用するエンジンの初期回転速度で構成します。
Altair Driverでは、初期条件を使用して、モデルに存在するすべてのボディのICが設定されます。
車両の正面方向は、MotionViewライブラリモデルでのX軸の負方向です。
$--------------------------------------------------------------VEHICLE_IC
[VEHICLE_INITIAL_CONDITIONS]
$These are wrt marker attached to the driver analysis - Vehicle IC reference marker
$Default Global Frame
VX0 = -2683.33
VY0 = 0.0
VZ0 = 0.0
ENGINE_INIT_SPEED = 300
型 | 必須条件 | |
---|---|---|
ブロック名 [VEHICLE_INTIAL_CONDITIONS] |
文字列 | 必須 |
VX0 | 属性-実数 | 必須 車両ICマーカーを基準にしたX方向の初期速度。 |
VY0 | 属性-実数 | 必須 車両ICマーカーを基準にしたY方向の初期速度。 |
VZ0 | 属性-実数 | 必須 車両ICマーカーを基準にしたZ方向の初期速度。 |
ENGINE_INIT_SPEED | 属性-実数 | オプション ICエンジンモデルで使用するエンジンの初期角速度。 |
出力標準
出力標準ブロックには、Altair Driver出力の出力設定(Steering、Throttle、Brake、Gear、およびClutch)が記述されます。
出力設定は、出力信号の最大値、最小値、スムージング周波数、および初期値で構成されます。
$---------------------------STEERING_STANDARD
[STEER_STANDARD]
MAX_VALUE = 6.28
MIN_VALUE = -6.28
SMOOTHING_FREQUENCY = 5
INITIAL_VALUE = 0.0
$----------------------------THROTTLE_STANDARD
[THROTTLE_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
SMOOTHING_FREQUENCY = 5
INITIAL_VALUE = 0.0
$----------------------------BRAKING_STANDARD
[BRAKE_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
SMOOTHING_FREQUENCY = 5
INITIAL_VALUE = 0.0
$----------------------------GEAR_STANDARD
[GEAR_STANDARD]
MAX_VALUE = 6
MIN_VALUE = 1
INITIAL_VALUE = 1
$----------------------------CLUTCH_STANDARD
[CLUTCH_STANDARD]
MAX_VALUE = 1
MIN_VALUE = 0
INITIAL_VALUE = 0.0
型 | 必須条件 & コメント | |
---|---|---|
ブロック名 [STEERING_STANDARD] |
オプション | |
BLOCK NAME | 文字列 | 必須 ステアリング出力上のグローバル設定 |
MAX_VALUE | 属性-実数 | オプション 上限値。 |
MIN_VALUE | 属性-実数 | オプション 上限値。 |
SMOOTHING_FREQUENCY | 属性-実数 | オプション この周波数を上回る信号の変化が遮断されます(ローパスフィルタ)。 |
必須条件 & コメント | |
---|---|
[THROTTLE_STANDARD] | オプション STEERING_STANDARDブロックと同様のパラメータ。 |
[BRAKE_STANDARD] | オプション STEERING_STANDARDブロックと同様のパラメータ。 |
[CLUTCH_STANDARD] | オプション STEERING_STANDARDブロックと同様のパラメータ。 |
[GEAR_STANDARD] | オプション STEERING_STANDARDブロックと同様のパラメータ。 例外: GEAR_STANDARDには、SCALING_FACTOR、SMOOTHING、およびFEEDBACK_FREQUENCYの各属性がありません。 |
MANEUVERS_LIST
イベントは簡潔な運転操作に分解され、Altair Driverで1つずつ実行されます。
MANEUVER_LISTブロックには、イベントのすべての運転操作のリストが記述されています。各運転操作の記述は、運転操作のブロック名、シミュレーション時間、ステップサイズ、および出力間隔で構成されます。
$------------------------------------------MANEUVERS_LIST
[MANEUVERS_LIST]
{name simulation_time h_max print_interval}
'GO_STRAIGHT' 2.0 0.001 0.01
'LEFT_TURN' 12.0 0.001 0.001
'RIGHT_TURN' 10.0 0.001 0.001
型 | 必須条件 & コメント | |
---|---|---|
ブロック名 [MANEUVERS_LIST] |
必須 | |
BLOCK NAME | 文字列 | 必須 <MANEUVERS_LIST> |
MANEUVERS_TABLE | テーブル | 必須 運転操作の数 * 4 |
MANEUVERS_TABLE | ||
COLUMN 1 | 属性-文字列 | 必須 <name> 運転操作情報のブロック名のリスト。 |
COLUMN 2 | 属性-実数 | 必須 <simulation_time> 運転操作の移行が行われる際のシミュレーション時間。終了条件のいずれも真ではない、もしくは、終了条件が定義されていない場合。 |
COLUMN 3 | 属性-実数 | 必須 <h_max> 運転操作についての最大ソルバーステップサイズ |
COLUMN 4 | 属性-実数 | 必須 <print_interval> 運転操作についての出力間隔 |
運転操作
運転操作は、すべてのDriver出力のコントローラーブロック名(Steer、Throttle、Brake、Gear、およびClutch)と運転操作の終了条件で構成されます。これは、Driver信号とそれに割り当てるコントローラーとのマッピングです。
[LEFT_TURN]
TASK = 'STANDARD'
(CONTROLLERS)
{DRIVER_SIGNAL PRIMARY_CONTROLLER ADDITIONAL_CONTROLLER}
STEER OL_LEFT_STEER NONE
THROTTLE FEED_FORWARD_TRACTION NONE
BRAKE FEED_FORWARD_TRACTION NONE
(END_CONDITIONS)
{SIGNAL GROUP ABS OPERATOR VALUE TOLERANCE WATCH_TIME}
ROLL_ANGLE 0 Y SS 0 0.05 0.5
TIME 0 N GT 12 0.001 0.0
STEER 1 Y GT 6.0 0.001 0.0
$------------------------------------------------------------------------
型 | 必須条件 & コメント | |
---|---|---|
BLOCK NAME | 文字列 | 必須 運転操作リストテーブルで指定した値。 |
TASK | 属性-文字列 | オプション 異なる運転操作のタイプについて将来の開発のためのプレースホルダー |
(CONTROLLERS) | サブブロック | 必須 運転操作に必要なコントローラーのリストを有したテーブルを含む |
{DRIVER_SIGNAL PRIMARY_CONTROLLER ADDITIONAL_CONTROLLER} |
テーブル | 必須 |
COLUMN 1 | 属性-文字列 | <DRIVER_SIGNAL> アクティブなドライバー出力信号のリスト。リストは下記を含んでいる必要あり: 必須のプライマリ信号
オプションのプライマリ信号 (マニュアルトランスミッションにのみ必須)
|
COLUMN 2 | 属性-実数 | <PRIMARY_CONTROLLER > プライマリコントローラーのブロック名。 プライマリコントローラーは、ドライバー信号出力の投入を担当。 |
COLUMN 3 | 属性-実数 | <ADDITIONAL_CONTROLLER > 追加のコントローラーのブロック名。 *すべてのコントローラーが追加のコントローラーとして追加できるわけではない。 *例:フィードフォワードトラクションコントローラーによるPID。 |
END_CONDITIONS | サブブロック | 必須 |
SUB_BLOCK_NAME | 文字列 | 必須 名前は“END_CONDITIONS”にする必要があります。 |
TABLE | 文字列 | 必須 運転操作の終了条件 |
COLUMN1 | 文字列 | 必須 <SIGNAL> 信号名のキーワード |
COLUMN2 | 整数 | 必須 <GROUP> そのグループの固有の番号。同じグループ信号はOR結合され、異なるグループ番号の信号はAND結合される。 |
COLUMN3 | ブール | 必須 <ABS> 絶対値。 真の場合、信号の絶対値が比較される。 |
COLUMN4 | 文字列 | 必須 <OPERATOR>
|
COLUMN5 | 実数 | 必須 <VALUE> 比較値 |
COLUMN6 | 実数 | 必須 <TOLERANCE> 比較の許容値 |
COLUMN7 | 実数 | 必須 <WATCH TIME> 条件が初めて真となると直ちに、この指定時間の値について全てのセンサーが観察される。観察時間について条件が連続的に真となると、センサーは作動される。 |
$Example ADF end conditions block
(END_CONDITIONS)
{SIGNAL GROUP ABS OPERATOR VALUE TOLERANCE WATCH_TIME}
LONG_VEL 0 Y LT 15.0 0.001 0.50
ROLL_ANGLE 1 Y SS 0.0 0.0001 1.50
PITCH_ANGLE 1 Y ET 0.0 0.0001 2.0
TIME 2 N GT 3.0 0.001 0.00
$-----------------------------------------------------------------------
終了条件は、さまざまな信号に適用できます。以下の表は、終了条件テーブルで使用可能な信号名を示しています。
信号名 | 意味 | コメント | 成分 |
---|---|---|---|
TIME | シミュレーション時間 | NA | NA |
DIS | 移動距離 | Driver出力 | F2 |
LONG_VEL | 縦方向の速度 | Driver入力(2) | F2 |
LAT_VEL | 横方向の速度 | Driver入力(2) | F3 |
LONG_ACC | 横方向の加速度 | Driver入力(3) | F2 |
LAT_ACC | 横方向加速度 | Driver入力(3) | F3 |
YAW_RATE | ヨーレート | Driver入力(2) | F4 |
ROLL_RATE | ロールレート | Driver入力(2) | F6 |
PITCH_RATE | ピッチレート | Driver入力(2) | F7 |
CG_X | 車両重心位置 X | Driver Inputs (1) | F2 |
CG_Y | 車両重心位置 Y | Driver Inputs (1) | F3 |
CG_Z | 車両重心位置 Z | Driver Inputs (1) | F4 |
ROLL_ANGLE | ロール角 | Driver Inputs (1) | F6 |
YAW_ANGLE | ヨー角 | Driver Inputs (1) | F4 |
PITCH_ANGLE | ピッチ角 | Driver入力(1) | F7 |
ENG_SPD | エンジン回転数 | Driver入力(2) | F8 |
STEER | ステア角 | Driver出力 | F2 |
THROTTLE | スロットル信号 | Driver出力 | F3 |
BRAKE | ブレーキ信号 | Driver出力 | F4 |
GEAR | ギア信号 | Driver出力 | F6 |
CLUTCH | クラッチ信号 | Driver出力 | F7 |