ANSYS SCADE Suite建模基礎
-
【作 者】荊華 沈軼燁
【I S B N 】978-7-5170-6803-7
【責任編輯】張玉玲
【適用讀者群】本專通用
【出版時間】2018-08-31
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】376
【千字數】582
【印 張】23.5
【定 價】¥82
【叢 書】萬水ANSYS技術叢書
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
SCADE產品模塊眾多,適用于安全關鍵領域的嵌入式系統和軟件的研制,涵蓋功能安全分析、系統架構設計、控制算法設計、人機界面設計、多學科仿真應用等多個方面。本書主要講解其中的控制算法設計軟件SCADE Suite,并重點圍繞三個角度進行編寫:從初學者的角度出發,循序漸進地安排內容結構和知識點分布;從使用者的角度出發,介紹SCADE的基本使用方法和常用操作技巧;從工程人員的角度出發,講述有代表性的實例、介紹通用的行業經驗。
本書收錄了大量有較強代表性的示例,示例中的模型都力求準確無誤,可以在PC環境下仿真運行。
本書可作為理工科高校計算機類研究生、航空宇航類研究生、導航制導與控制類研究生以及高年級本科生的教學用書,也可供相關領域的師生、科研和工程技術人員參考。
業內首本關于ANSYS SCADE Suite產品使用的中文書籍。
主要遵循機載軟件適航標準DO-178C/DO-331介紹產品的應用。
結合多年課堂教學與工程使用的經驗,合理安排章節內容和知識點分布。
概念講解力求簡單明了、通俗易懂,符合初學者的要求。
使用操作都配以詳細的步驟和截圖,循序漸進、深入淺出。
本書案例詳實豐富、通用性強,方便工程技術人員參考查閱。
本書案例和習題參考答案可在出版社網站下載。
SCADE誕生于20世紀80年代的法國,從歐洲的航空業與核能業的工程應用起步,經過30多年的發展,逐漸成為在航空航天、國防軍工、軌道交通、核能重工、汽車電子等行業具有廣泛應用的商業產品。
由于SCADE專注于流程規范、標準嚴苛的安全關鍵行業,行業的特性使得其多應用于研制具有相當密級的、高難度的重大項目,因此SCADE在國內仍處于“養在深閨人未識”的狀況。時至今日,市場上鮮有中文版的SCADE書籍可供大家參考學習,SCADE的推廣應用也就有些“高處不勝寒”了。
在業內眾多基于模型的研制工具中,作為唯一在多個安全關鍵行業中以開發工具形式通過最高等級鑒定的產品,SCADE的獨特優勢逐漸被越來越多的國內企業認可。隨著SCADE在包括C919大型客機、高鐵列控系統、第三代核電儀控系統、軍工先進戰機等重大高端裝備項目中的開展應用,業界亟需SCADE的相關培訓教程。
“要寫怎樣的一本SCADE書使它更適合于初學者呢?”
這是我們寫作本書時反復問自己的一個問題。SCADE產品模塊眾多,適用于安全關鍵領域的嵌入式系統和軟件的研制,涵蓋功能安全分析、系統架構設計、控制算法設計、人機界面設計、多學科仿真應用等多個方面。本書主要介紹控制算法設計軟件SCADE Suite,并重點圍繞三個角度進行講解:
從初學者的角度出發,循序漸進地安排內容結構和知識點分布。
從使用者的角度出發,介紹SCADE的基本使用方法和常用操作技巧。
從工程人員的角度出發,講述有代表性的實例,介紹通用的行業經驗。
本書收錄了大量有較強代表性的示例,示例中的模型都力求準確無誤,可以在PC環境下仿真運行。
作為ANSYS公司SCADE產品的高校合作計劃伙伴之一,我們電子科技大學不揣冒昧,在已經做過三年課堂教學的基礎上,結合業內多家SCADE用戶的經驗,編寫了這本SCADE軟件基礎教程。希望借此拋磚引玉,吸引更多的專家學者加入到推廣這款優秀產品的隊伍中來。
本書可作為理工科高校計算機類研究生、航空宇航類研究生、導航制導與控制類研究生以及高年級本科生的教學用書,也可供相關領域的師生、科研和工程技術人員參考。
本書章節介紹
讀者可以按部就班地順序閱讀全書章節,系統地學習SCADE Suite。有使用經驗的讀者,也可以根據目錄直接到相應章節查詢相關內容。
第1章主要介紹SCADE產品的背景、特點和未來的發展方向。本章包含一個簡單的Getting Start案例,讓讀者快速上手。
第2章主要介紹SCADE Suite的界面布局、基本語法和常用建模操作。學習完本章內容后,可進行以數據流為基礎的建模操作。
第3章主要介紹SCADE Suite中的狀態機建模操作。SCADE的狀態機又稱安全狀態機(Safe State Machine,SSM),適用于精確描述具有搶占、并發、同步等復雜遷移轉換特性的控制流。
第4章主要介紹SCADE Suite的高級建模操作,主要包括數組建模操作、結構體建模操作、迭代器建模操作、條件激活操作、多態建模操作。
第5章主要介紹基于SCADE Suite模型的驗證,闡述使用SCADE模型后對機載軟件驗證流程的簡化及對應的活動項,內容包括模型仿真、模型覆蓋分析、認證級測試環境、形式化驗證和編譯器驗證。
第6章主要介紹SCADE Suite代碼與其他目標的生成,包括模型生成代碼的配置、生成代碼在PC平臺的集成、可結合其他第三方工具的文件生成與模型對應的詳細設計文檔的生成。
第7章主要介紹SCADE Suite模型的優化操作,包括模型優化的目標、基準和推薦方法,并介紹如何使用AbsInt工具進行優化結果分析。
第8章主要介紹SCADE Suite模型開發中的項目管理,包括項目組織、配置管理、追蹤管理和建模規范。
第9章綜合案例,描述取中位數的算法。
附錄是SCADE Suite關于DO-178C/DO-331目標的符合性矩陣。
致謝
任何一部書的成功出版都離不開多方面的努力。感謝參與本書編寫的陳小平、張程灝、邢多慶、邱曉晗、吳丹楊、楊坤、王喆、毛偉、王文杰、姜強等人,他們為本書的模型示例設計、章節校對等工作耗費了很多業余時間;感謝合作伙伴ANSYS公司大中國區系統事業部的馬金梭、董如怡、傅金泉、楊瑾婧、應中偉、侯東、姜平、許周文、周霄、孫曉晗、王文全,在多次的交流討論中,他們從工程應用角度出發,結合不同行業客戶的使用經驗與常見問題,給出了許多有益的建議;感謝中國水利水電出版社楊元泓編輯的傾力協助,她為本書的順利出版傾注了極大的心血;感謝電子科技大學航空航天學院的劉強、須玥、曾艷、梁偉等人在本書撰寫過程中給予的關懷、鼓勵與支持,他們的堅定支持是我們能完成本書的最大動力。最后,由衷地感謝所有參與過本書撰寫和審閱的各位朋友。
由于寫作團隊水平有限及時間倉促,書中紕漏錯誤之處在所難免,望各位讀者不吝賜教,以便再版時我們采納讀者的寶貴建議修正不足,我們的電子郵箱是ScadeBasicTextBook@126.com。
1.1 背景概念簡介 1
1.1.1 嵌入式系統 1
1.1.2 安全關鍵系統 1
1.1.3 機載軟件的適航標準 2
1.1.4 基于模型的開發與驗證 6
1.2 SCADE介紹 8
1.2.1 同步語言介紹 8
1.2.2 SCADE產品的演進 11
1.2.3 SCADE Suite的特點 14
1.2.4 SCADE產品未來發展的路線圖 17
1.3 SCADE快速入門 18
1.3.1 SCADE的適用環境和安裝步驟 18
1.3.2 創建SCADE Suite工程 23
1.3.3 SCADE Suite 操作符和輸入輸出
的創建 26
1.3.4 飛機滾轉角示例 27
練習題 35
第2章 SCADE Suite建模基礎 36
2.1 SCADE Suite集成開發環境常見操作 36
2.2 SCADE數據類型 38
2.2.1 預定義數據類型 38
2.2.2 自定義數據類型 38
2.3 常量 46
2.3.1 常量的定義 46
2.3.2 常量的使用 47
2.4 操作符 48
2.4.1 預定義操作符 49
2.4.2 自定義操作符 63
2.5 條件模塊 64
2.5.1 條件模塊的概念 64
2.5.2 條件模塊的創建與編輯 65
2.5.3 條件模塊中變量的隱式賦值 68
2.6 導入元素 70
2.6.1 導入常量 71
2.6.2 外部引用變量(Sensor) 72
2.6.3 導入操作符 73
2.6.4 導入靜態庫 79
練習題 81
第3章 SCADE Suite安全狀態機 82
3.1 安全狀態機 82
3.1.1 狀態機的組成 82
3.1.2 狀態機的創建 84
3.2 狀態的設置 85
3.2.1 狀態 85
3.2.2 初始狀態和終止狀態 85
3.2.3 狀態的編輯 86
3.3 遷移的設置 89
3.3.1 遷移 89
3.3.2 遷移的條件和行為 89
3.3.3 遷移的觸發 91
3.3.4 遷移和初始狀態 91
3.3.5 遷移的編輯 91
3.4 狀態機中變量的隱式賦值 98
3.4.1 變量的隱式賦值 98
3.4.2 定義變量的Last值 99
3.4.3 定義變量的Default值 100
3.4.4 同時定義變量的Last值和
Default值 101
3.4.5 同時不定義變量的Last值和
Default值 102
3.5 Signal(信號量) 104
練習題 105
第4章 SCADE Suite高級建模設計 106
4.1 數組操作 106
4.1.1 數組的創建 106
4.1.2 數組元素的獲取 108
4.1.3 數組操作 110
4.2 結構體操作 112
4.2.1 Data Structure操作符 112
4.2.2 Make操作符 113
4.2.3 Flatter操作符 113
4.2.4 Project操作符 114
4.3 迭代器建模 114
4.3.1 迭代器的創建和循環次數設置 115
4.3.2 map迭代器 116
4.3.3 fold迭代器 117
4.3.4 mapfold迭代器 117
4.3.5 mapi 迭代器 122
4.3.6 foldi迭代器 124
4.3.7 mapw迭代器 125
4.3.8 foldw迭代器 126
4.3.9 mapwi迭代器 128
4.3.10 foldwi迭代器 130
4.3.11 mapfoldi迭代器 131
4.3.12 mapfoldw迭代器 133
4.3.13 mapfoldwi迭代器 135
4.4 條件激活操作 136
4.4.1 條件激活操作符的創建 137
4.4.2 Boolean Activate操作符 137
4.4.3 Restart操作符 140
4.5 多態建模 141
4.5.1 數組大小的參數化 141
4.5.2 變量類型的參數化 142
4.5.3 操作符行為的參數化 143
4.6 仿真相關的設置 146
4.6.1 Assume和Guarantee 146
4.6.2 精度的設置 147
練習題 148
第5章 SCADE Suite基于模型的驗證 149
5.1 基于SCADE Suite模型的驗證流程 149
5.1.1 DO-178C的傳統驗證手段 149
5.1.2 基于SCADE Suite模型的驗證工作 152
5.2 基礎驗證活動 156
5.2.1 SCADE模型檢查器 156
5.2.2 SCADE模型仿真 157
5.2.3 SCADE覆蓋分析 167
5.3 認證級測試環境QTE 182
5.3.1 SCADE QTE的工作流 182
5.3.2 創建測試工程 183
5.3.3 設計仿真用例和仿真規程 184
5.3.4 QTE在主機上的功能測試 193
5.3.5 QTE在主機上的模型覆蓋分析 197
5.3.6 QTE在主機上的代碼覆蓋分析 201
5.3.7 QTE在目標機上的測試 203
5.3.8 QTE下多操作符驗證的注意事項 205
5.3.9 仿真結果的評審 208
5.4 SCADE的形式化驗證 208
5.4.1 安全屬性 208
5.4.2 形式化驗證的工作流 208
5.4.3 形式化驗證工具Design Verifier 209
5.4.4 形式化驗證實例 210
5.5 SCADE編譯器驗證套件 218
5.5.1 編譯器的驗證 218
5.5.2 C語言安全子集 219
5.5.3 CVK的內容與使用方法 220
5.5.4 使用SCADE CVK的注意事項 222
練習題 223
第6章 代碼和其他目標的生成 224
6.1 代碼生成 224
6.1.1 代碼生成的配置 224
6.1.2 單個操作符的代碼生成配置 240
6.1.3 創建并保存自定義配置 242
6.2 代碼集成 242
6.2.1 代碼生成步驟 242
6.2.2 生成代碼的集成 243
6.2.3 代碼集成的其他考慮 245
6.3 Simulink的S函數生成 245
6.4 NI VeriStand生成 247
6.5 FMU生成 249
6.5.1 Modelica協會與統一建模語言 249
6.5.2 FMI標準與FMU文件 249
6.5.3 Suite生成FMU文件 250
6.6 Adaptor生成 252
6.7 設計文檔生成 253
練習題 258
第7章 SCADE Suite模型的優化 259
7.1 模型優化的目標和基準 259
7.1.1 安全關鍵系統的軟件規模在增長 259
7.1.2 MBDV方法的優勢 261
7.1.3 模型優化的目標和準則 261
7.2 布局格式優化 264
7.2.1 布局格式的推薦規范 264
7.2.2 編輯技巧 267
7.2.3 自定義樣式 276
7.3 模型優化 280
7.3.1 模型優化的內容和要點 280
7.3.2 模型優化示例 281
7.4 最壞運行時間與堆棧分析 290
7.4.1 TSO介紹 290
7.4.2 TSO使用方法 291
7.5 性能優化案例 296
7.5.1 算法一:基于過程的傳統C語言
編程的思維 296
7.5.2 算法二:優化的基于過程的思維 299
7.5.3 算法三:選擇恰當的迭代子 301
7.5.4 算法四:關注數據的SCADE Suite
建模最佳方式 303
7.5.5 WCET分析結果 305
7.5.6 堆棧分析結果 305
練習題 306
第8章 項目管理 307
8.1 項目組織 307
8.1.1 命名規則 307
8.1.2 工程管理 307
8.1.3 文件管理 311
8.2 追蹤管理 312
8.2.1 DO-178C中追蹤管理的要求 312
8.2.2 SCADE RM Gateway 313
8.2.3 普通文本類型文件的追蹤 318
8.2.4 SCADE文件的追蹤 333
8.2.5 驗證相關文檔的追蹤 335
8.2.6 生成快照 338
8.2.7 生成追蹤矩陣 339
8.3 配置管理 341
8.4 建模規范 343
練習題 343
第9章 綜合案例 344
9.1 目標 344
9.2 中位數計算設計實例 344
9.2.1 Torben算法求中位數簡述 344
9.2.2 實例創建步驟 345
附錄1 縮略詞匯總和常用詞定義 358
附錄2 SCADE Suite關于DO-178C/DO-331目標的符合性矩陣 360
參考文獻 367
- 輸水管線工程風險管理 [張勇 黨亥生 著]
- 民用航空飛機標準線路施工 [主編 王志敏 陳明]
- 不息的水脈—大運河講談錄 [趙珩 著]
- 實用運籌學 [主編 邢育紅 于晉臣]
- 三峽梯級電站水資源決策支持系統研究與開發 [姚華明 潘紅忠 湯正]
- 海南黎族民俗文化鑒賞 [龐國華 著]
- 石墨烯在太赫茲及中紅外頻段電磁器件設計中的應用 [李艷秀 莊華偉 著]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- 辦公自動化高級應用 [陳萍 朱曉玉]
- 信息處理技術員考試32小時通關 [薛大龍]
- 電子產品設計案例教程(微課版)—基于嘉立創EDA(專業版) [王靜 莫志宏 陳學昌 丁紅]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- Web技術開發教程(基于.NET開源MVC框架) [王合闖 韓紅玲 王青正 陳海蕊]
- 商務英語翻譯教程(筆譯)(第四版) [主編 王軍平]
- 智慧零售技術與應用 [洪旭 著]
- 建設工程法規實務 [主編 余瀅]
- 商務秘書理論與實務(第三版) [主編 張同欽]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 信息系統項目管理師章節習題與考點特訓(第二版) [主編 薛大龍]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- HCIA-Datacom認證題庫分類精講 [主 編 韓立剛]
- SwiftUI完全開發 [李智威 著]
- 網絡規劃設計師備考一本通 [夏杰 編著]
- ANSYS Workbench在壓力容器分析中的應
- 基于ANSYS的復合材料有限元分析和應用
- ANSYS AQWA進階應用
- ANSYS SCADE Suite建模基礎
- ANSYS AQWA軟件入門與提高
- ANSYS APDL參數化有限元分析技術及其應
- ANSYS解讀ASME分析設計規范與開孔補強
- 基于ANSYS的復合材料有限元分析和應用
- ANSYS Icepak進階應用導航案例
- ANSYS SpaceClaim直接建模指南與CAE前
- 電磁兼容原理分析與設計技術
- ANSYS Workbench結構工程高級應用
- ANSYS結構有限元高級分析方法與范例應
- 基于Simplorer場路耦合多物理域聯合仿
- ANSYS APDL參數化有限元分析技術及其應
- ANSYS Workbench基礎教程與實例詳解(