本ドキュメントでは、FRI3D プロジェクトにプラントデータをインポートする際(Import_PLANTX_XLS を使用)、および開いている FRI3D プロジェクトからプラントデータをエクスポートする際(FireEngine API の ExportPlantToPlantXXls を使用)に用いられる Excel(.xlsx)フォーマットについて説明します。このフォーマットのファイルはツール間で交換でき、FRI3D に再インポートすることが可能です。
概要
- ファイル形式: Microsoft Excel Open XML(.xlsx)。
- 構造: 複数のワークシートを含む 1 つのワークブック。各ワークシートはヘッダー行(1 行目)とデータ行(2 行目以降)で構成されます。空の行はインポート時にスキップされる場合があります。
- シート名: 正確な名前が必要です(大文字・小文字を区別)。下表を参照してください。
ワークシート名と用途
| ワークシート名 | 用途 |
|---|
| Zones | ゾーン(区画)の定義 |
| ZonesTo | ゾーンから他のアイテムへのリンク |
| Raceways | レースウェイ/トレイ/コンジットの定義 |
| RacewaysTo | レースウェイから他のアイテムへのリンク |
| Components | 機器(コンポーネント)の定義 |
| ComponentsTo | 機器から他のアイテムへのリンク |
| Cables | ケーブルの定義 |
| CablesTo | ケーブルから他のアイテムへのリンク |
| BasicEvents | 基事象の定義 |
| SpuriousBasicEvents | 誤作動(スプリアス)基事象(確率はオプション) |
| Scenarios | シナリオの定義(PRA/火災シナリオ) |
| ScenariosTo | シナリオからゾーン/アイテムへのリンク |
| Sources | 火源(ソース)の定義 |
| SourcesTo | 火源から他のアイテムへのリンク |
| ItemTypes | オプションのルックアップ。空でも構いません |
| CableTypes | オプションのケーブル種別ルックアップ(名前) |
エンティティワークシート(列)
Zones
| 列 | 説明 |
|---|
| Zone | 一意のゾーン名(必須)。 |
| description | ゾーンの説明。 |
| CADData | オプション。CAD やジオメトリのメタデータなど(JSON またはテキストとして保存)。 |
Raceways
| 列 | 説明 |
|---|
| Raceway | 一意のレースウェイ名(必須)。 |
| description | レースウェイの説明。 |
| type | 次のいずれか: CONDUIT、TRAY、OTHER。 |
| inPRA | PRA に含まれるかどうか: TRUE / FALSE(または 1/0、Y/N)。 |
Components
| 列 | 説明 |
|---|
| Component | 一意の機器名(必須)。 |
| description | 機器の説明。 |
| (column 3) | 未使用/予約済み。 |
| inPRA | PRA に含まれるかどうか: TRUE / FALSE(または 1/0、Y/N)。 |
Cables
| 列 | 説明 |
|---|
| Cable | 一意のケーブル名(必須)。 |
| description | ケーブルの説明。 |
| type | ケーブル種別の識別子(例: CableTypes シートの名前またはケーブル仕様)。 |
| inPRA | PRA に含まれるかどうか: TRUE / FALSE(または 1/0、Y/N)。 |
BasicEvents
| 列 | 説明 |
|---|
| BasicEvent | 一意の基事象名(必須)。 |
| description | 基事象の説明。 |
SpuriousBasicEvents
| 列 | 説明 |
|---|
| SpuriousBasicEvent | 一意の名前(必須)。 |
| description | 説明。 |
| prob | オプションの数値確率(小数)。 |
Scenarios
| 列 | 説明 |
|---|
| Scenario | 一意のシナリオ名(必須)。 |
| description | シナリオの説明。 |
| igf | 着火頻度(数値)。 |
| severityFactor | シビリティファクタ(数値)。 |
| nsp | 非鎮火確率(数値)。 |
| document | オプションの文書参照。 |
| notes | オプションの注記。 |
Sources
| 列 | 説明 |
|---|
| Source | 一意の火源名(必須)。 |
| description | 火源の説明。 |
リン クワークシート(XxxTo)
各 XxxTo シートは、あるエンティティ種別から他のアイテムへのリンクを定義します。すべてのリンクシートは同じ列パターンを使用します。
| 列 | 説明 |
|---|
| (1) | リンク元アイテムの名前(Zone、Raceway、Component、Cable、Scenario、または Source)。対応するエンティティシート内の名前と一致している必要があります。 |
| toItem | リンク先アイテムの名前。 |
| toItemType | リンク先アイテムの種別(下記の許容値を参照)。 |
許容される toItemType 値
これらの値はインポート時に大文字・小文字を区別しません。
| toItemType | 意味 |
|---|
| ZONE | ゾーン |
| RACEWAY | レースウェイ |
| COMPONENT | 機器(コンポーネント) |
| CABLE | ケーブル |
| BE | 基事象 |
| SPURIOUSBE | 誤作動(スプリアス)基事象 |
| SOURCE | 火源(火災/シミュレーションソース) |
| Scenarios | シナリオ(ScenariosTo で使用) |
例:
- ZonesTo: ゾーンの行は、レースウェイ(
toItemType = RACEWAY)やケーブル(CABLE)などにリンクできます。
- ScenariosTo: シナリオの行は、ゾーン(ZONE)や、そのシナリオに含まれる他のアイテムにリンクできます。
オプションのルックアップシート
- ItemTypes: ヘッダー行のみ、または 1 列(例: "ItemType")にオプションのルックアップ値を持ちます。参照用であり、空でも構いません。
- CableTypes: ケーブル種別の名前を列挙します(例: 1 行に 1 件)。値は Cables シートの type 列から参照できます。
規約
- 名前: アイテム名(Zone、Raceway、Cable など)は、それぞれの種別内で一意でなければならず、リンクシートで使用する際は完全に一致している必要があります。
- ヘッダー行: 1 行目には上記の列ヘッダーを記載する必要があります。インポート時にはヘッダーの文字列(例: "Zone"、"description"、"toItem"、"toItemType")によって列が照合されます。
- inPRA:
TRUE、true、1、Y、y は true として扱われます。それ以外はすべて false です。
- リンク: リンクはどちらの方向でも指定できます(例: Zone → Raceway または Raceway → Zone)。必要なのは一方向のみです。重複するリンクは通常、インポート時に統合されます。
使用方法
インポート(コマンドライン)
Import_PLANTX_XLS.exe <path-to.xlsx> <path-to.fri3d> [options]
オプションには --AddItems、--AddLinks、--UpdateLinks、--UpdateInfo、--ReplaceProject、--ClearPRALinks があります。完全な使用方法は --help を参照してください。
エクスポート(API)
OpenProject(projectPath, ...) でプロジェクトを開いた後、以下を呼び出します。
- C# / FireEngineLib:
Export.ExportPlantToPlantXXls(filePath)
- DLL:
ExportPlantToPlantXXls(filePath)(FireEngineDll からエクスポート)
ファイルの書き込みに成功した場合は true を返します。
実装リファレンス
- インポート:
CustomImportProjects/Import_PLANTX_XLS/XLSImport.cs(このフォーマットを読み込みます)。
- エクスポート:
FireEngineLib/XLSExport.cs(開いている FRI3D データベースからこのフォーマットを書き出します)。
次のステップ
プラントデータのインポートまたはエクスポート後の手順は以下のとおりです。
- CAD モデルのインポート - プラント機器を可視化するために 3D ジオメトリをインポートします
- 火災シナリオの設定 - 火源と解析パラメータを設定します
- 火災シミュレーションの実行 - インポートした基事象とシナリオをリスク評価に使用します
- CAFTA へのエクスポート - PRA 統合のためにプラントデータとシナリオをエクスポートします