CANoe 開發從入門到精通

楊金升、張可晨、唐新宇

  • 出版商: 清華大學
  • 出版日期: 2019-05-01
  • 定價: $534
  • 售價: 8.5$454
  • 語言: 簡體中文
  • ISBN: 7302522898
  • ISBN-13: 9787302522898
  • 下單後立即進貨 (約4週~6週)

  • CANoe 開發從入門到精通-preview-1
  • CANoe 開發從入門到精通-preview-2
  • CANoe 開發從入門到精通-preview-3
CANoe 開發從入門到精通-preview-1

買這商品的人也買了...

商品描述

本書遵循由淺入深的原則,將內容分為三篇。基礎篇首先介紹車載網絡的相關知識,接著介紹CANoe開發環境和常見功能的使用,以便初學者掌握使用CANoe進行一般的總線模擬、測試和分析的方法;入門篇首先介紹CANoe開發總線模擬的基礎知識,接著結合實例重點介紹總線數據庫創建、面板設計,以及CAPL語言設計;進階篇結合廣大開發工程師可能面臨的技術難題,由簡單到復雜地介紹一些典型實例,以提高讀者的實戰技術。

目錄大綱

基礎篇
第1章車載網絡概述3 
1.1車載網絡起源3 
1.2 CAN總線概述4 
1.2.1 CAN總線簡史4 
1.2.2 CAN總線特點4 
1.2.3 CAN總線主要應用5 
1.2.4 CAN-FD協議簡介6 
1.3 LIN總線概述6 
1.3.1 LIN總線簡史6 
1.3.2 LIN總線特點7 
1.3.3 LIN總線主要應用7 
1.4目前典型車載網絡架構7 
1.4.1緊湊型8 
1.4.2豪華型8 
1.5主要的車載網絡9 
1.6車載網絡發展趨勢11 
第2章CANoe概述12 
2.1關於Vector公司12 
2.2 CANoe簡介13 
2.3 CANoe在ECU項目開發中的作用13 
2.3.1第一階段:全仿真網絡系統13 
2.3.2第二階段:真實節點和部分仿真節點共存14 
2.3.3第三階段:全真實節點的網絡系統14 
2.4 CANoe不同版本的區別15 
2.4.1 CANoe pex版本15 
2.4.2 CANoe run版本15 
2.4.3 CANoe full版本16 
2.4.4關於Demo版本CANoe 16
2.4.5關於64bit版本CANoe 17 
2.5 CANoe安裝17 
2.5.1系統配置要求17 
2.5.2常見硬件接口卡18 
2.5.3安裝過程18 
2.6 CANoe常見的總線授權選項23 
2.7 CANoe的授權管理24 
2.8 CANoe的硬件配置25 
2.8.1硬件信息查看25 
2.8.2硬件配置27 
2.8.3通道數量設置28 
第3章CANoe開發環境29 
3.1 CANoe主界面29 
3.2 CANoe選項卡和功能區30 
3.2.1 File菜單30 
3.2 .2 Home功能區31 
3.2.3 Analysis功能區32 
3.2.4 Simulation功能區33 
3.2.5 Test功能區34 
3.2.6 Diagnostics功能區35 
3.2.7 Environment功能區36 
3.2.8 Hardware功能區37 
3.2. 9 Tools功能區38 
3.2.10 Layout功能區39 
3.3常用仿真窗口40 
3.3.1 Simulation Setup窗口40 
3.3.2 Start Values窗口40 
3.4常見診斷窗口41
3.4.1 Diagnostic Console窗口41 
3.4.2 Diagnostic Session Control窗口42 
3.4.3 Fault Memory窗口42 
3.5常見測試窗口43 
3.5.1 Test Unit窗口43 
3.5.2 Test Module窗口45 
第4章CANoe總線測量和分析46 
4.1 CANoe總線測量和分析概述46 
4.2 Measurement Setup窗口47 
4.2.1主要功能48 
4.2.2插入分析窗口或數據記錄模塊48 
4.2.3插入功能模塊49 
4.3常見分析窗口49 
4.3.1 Write窗口49 
4.3. 2 Trace窗口51 
4.3.3 Graphic窗口52 
4.3.4 State Tracker窗口52 
4.3.5 Data窗口53 
4.3.6 Statistics窗口53 
4.3.7 Scope窗口54 
4.3.8 Video窗口55 
4.3.9 GPS窗口55 
4.4測量數據記錄設置及處理56 
4.4.1 Logging文件設置56 
4.4.2 Logging文件格式57 
4.4.3 Filter設置57
4.4.4 Trigger設置58 
4.4.5 Trace導入和導出60 
4.4.6 Trace查看和編輯63 
4.4.7 Trace回放64 
4.5離線分析67 
4.6發生器模塊68 
4.6.1 CAN IG模塊68 
4.6.2 IG模塊69 
第5章CANoe仿真工程配置及運行71 
5.1配置仿真工程71 
5.1.1物理通道分配問題71 
5.1.2波特率設置問題71 
5.1.3授權或相關選項缺失問題74 
5.1.4虛擬通道設置問題75 
5.1.5硬件連接問題76 
5.2不同版本工程文件之間的兼容性處理76 
5.3仿真工程個性化設置78 
5.3.1添加/修改的Desktop設置78 
5.3.2保存不同的工程配置文件78 
5.4仿真工程文件夾的命名習慣79 
  入門篇
第6章車載總線仿真基礎83 
6.1 ECU硬件/軟件架構介紹83 
6.1.1硬件架構83 
6.1.2軟件架構84 
6.2開發仿真工程的必要性85 
6.2.1軟件開發的V模型86 
6.2.2仿真工程的必要性86 
6.3 CANoe仿真工程架構87
第7章開發第一個CANoe仿真工程88 
7.1創建第一個仿真工程88 
7.2添加CAN數據庫89 
7.2.1新建CAN數據庫89 
7.2.2添加報文和信號89 
7.2.3添加數據庫到工程中91 
7.3定義系統變量91 
7.4創建仿真面板92 
7.4.1創建開關面板92 
7.4.2創建指示燈面板93 
7.5創建網絡節點93 
7.5.1添加網絡節點93 
7.5.2添加Hello World代碼95 
7.5.3添加Switch代碼95 
7.5.4添加Light代碼96 
7.6工程運行測試96 
7.7查看Trace信息97 
第8章總線數據庫設計98 
8.1總線數據庫概述98 
8.2 CANdb Editor 98 
8.2.1 File菜單99 
8.2.2工具欄100 
8.3在X- Vehicle項目中創建CAN總線數據庫100 
8.3.1基於模板新建總線數據庫100 
8.3.2 Networks 101 
8.3.3 ECUs 102 
8.3.4 Network Nodes 102 
8.3.5 Messages 103
8.3.6 Signals 105 
8.3.7 Environment Variable 109 
8.3.8 Attribute 110 
8.3.9 Value Table 113 
8.3.10 Byte Order 114 
8.4導入數據庫文件116 
8.5 LIN總線數據庫編輯器LDF Explorer 117 
第9章Panel設計118 
9.1 Panel概述118 
9.2 Panel設計環境介紹119 
9.2.1 File菜單119 
9.2.2 Home功能區120 
9.2.3 Panel功能區121 
9.2.4 Properties功能區122 
9.2.5 Toolbox窗口122 
9.2.6 Symbol Explorer窗口122 
9.2. 7 Working Area窗口123 
9.2.8 Properties窗口124 
9.2.9 Output Window 124 
9.3控件介紹125 
9.3.1 Switch/Indicator控件126 
9.3.2 LED Control控件127 
9.3.3 Input/Output Box控件128 
9.3.4 Hex/ Text Editor控件130 
9.3.5 Analog Gauge控件131
9.3.6 Meter控件132 
9.4多幀圖片簡介133 
9.5系統變量簡介134 
9.6在X-Vehicle項目中創建仿真Panel 136 
9.6.1添加Control面板136 
9.6.2添加Display面板140 
9.6.3創建一個Desktop 143 
第10章CAPL語言設計145 
10.1 CAPL概述145 
 10.1.1 CAPL主要用途145 
 10.1.2 CAPL的特點146 
10.2 CAPL開發環境—— CAPL瀏覽器簡介146 
 10.2.1 File菜單147 
 10.2.2功能區147 
 10.2.3導航區和編輯區150 
 10.2.4函數瀏覽區150 
 10.2.5對象瀏覽區150 
 10.2.6輸出窗口151 
10.3 CAPL基礎——數據類型151 
 10.3.1變量的聲明與定義152 
 10.3.2簡單變量153 
 10.3 .3複合類型154 
 10.3.4特殊類型155 
10.4 CAPL基礎——常見運算157 
10.5 CAPL基礎——流程控制158 
 10.5.1 if條件語句158 
 10.5.2 switch語句158
 10.5.3 while循環語句159 
 10.5.4 for循環語句160 
 10.5.5 break語句160 
 10.5.6 return語句161 
10.6 CAPL基礎——程序結構161 
 10.6.1頭文件161 
 10.6.2全局變量聲明162 
 10.6.3事件處理162 
 10.6.4自定義函數169 
10.7 CAPL基礎——常用函數庫簡介170 
 10.7.1通用函數170 
 10.7.2計算函數172 
 10.7.3字符串函數172 
 10.7.4 CAN總線函數173 
 10.7.5 LIN總線函數174 
 10.7.6診斷函數174 
10.8 CAPL基礎——總線數據庫的使用175 
10.9 CAPL基礎——變量和信號的訪問175 
 10.9.1 CAPL中訪問信號175 
10.9.2 CAPL中訪問系統變量176 
10.9.3 CAPL中訪問環境變量176 
10.10在X-Vehicle項目中添加CAPL程序177 
10.10.1創建節點Engine的CAPL程序178 
10.10.2創建節點Door的CAPL程序178 
10.10.3創建節點Display的CAPL程序180
10.11工程運行測試181 
第11章仿真工程編譯和調試182 
11.1 CAPL程序編譯182 
 11.1.1條件編譯182 
 11.1.2編譯CAPL程序183 
11.2 CAPL程序的Debug功能調試184 
 11.2.1設置Debug Mode 184 
 11.2.2 Debugger工具欄185 
 11.2.3設置調試斷點185 
 11.2.4變量查看186 
 11.2.5斷點查看187 
11.3使用Write窗口調試CAPL程序187 
第12章仿真工程開發入門—— CAN仿真190 
12.1總線仿真工程概述190 
12.2總線仿真工程開發流程及策略190 
 12.2.1開發流程190 
 12.2.2仿真工程開發策略191 
12.3工程實例簡介192 
 12.3.1網絡拓撲圖192 
 12.3.2實現功能193 
12.4工程實現193 
 12.4.1創建仿真工程194 
 12.4.2 DBC文件設計與導入194 
 12.4.3系統變量197 
 12.4.4面板設計198 
 12.4.5 CAPL代碼實現207
 12.4.6 Automation Sequences 217 
 12.4.7分析窗口設置218 
 12.4.8 Trace窗口與Logging 220 
 12.4.9 Desktop佈局221 
12.5工程運行測試223 
  進階篇
第13章仿真工程開發進階I —— CAN LIN仿真227 
13.1工程實例簡介227 
 13.1.1網絡拓撲圖227 
 13.1.2實現功能228 
13.2工程實現229 
 13.2.1添加LIN總線支持229 
 13.2.2數據庫LDF文件設計與導入230 
 13.2.3添加環境變量236 
 13.2.4面板設計237 
 13.2.5 CAPL實現248 
 13.2.6 Trace窗口與Logging 256 
 13.2.7設置Desktop佈局257 
13.3工程運行測試257 
13.4擴展話題——關於網絡管理258 
第14章仿真工程開發進階II——仿真測試260 
14.1基於CANoe的自動化測試系統簡介260 
14.2 Test Feature Set功能簡介261 
 14.2.1約束和條件設置函數261 
 14.2.2信號測試函數261
 14.2.3等待指示函數262 
 14.2.4測試控制函數263 
 14.2.5故障注入函數263 
 14.2.6測試判別函數264 
 14.2.7測試架構函數264 
 14.2.8測試報告函數265 
14.3 Test Service Library功能簡介265 
 14.3 .1檢測函數266 
 14.3.2狀態報告函數268 
 14.3.3激勵函數269 
 14.3.4檢測控制函數270 
14.4測試單元與測試模塊簡介270 
 14.4.1測試單元與測試模塊的區別271 
 14.4.2測試模塊架構271 
14.5工程實例簡介272 
14.6工程實現272 
 14.6.1添加CAPL測試模塊272 
 14.6.2測試方法分析274 
 14.6.3 CAPL測試用例276 
 14.6.4 CAPL測試模塊282 
14.7工程運行測試283 
 14.7.1測試執行283 
 14.7.2測試報告285 
14.8擴展話題——關於vTESTstudio 286 
第15章仿真工程開發進階III ——仿真診斷288 
15.1汽車診斷技術概述288
 15.1.1診斷術語289 
 15.1.2 OBD診斷與增強型診斷289 
 15.1.3診斷協議289 
 15.1.4診斷接口290 
 15.1.5診斷週期291 
 15.1.6 UDS診斷服務291 
 15.1.7 Vector診斷工具簡介292 
15.2 CANoe診斷功能簡介293 
 15.2.1診斷描述文件294 
 15.2.2安全訪問服務294 
 15.2.3診斷測試窗口295 
15.3 CANoe常見診斷函數295 
 15.3.1通信/設定功能函數295 
 15.3.2安全訪問函數296 
 15.3 .3對象訪問函數296 
 15.3.4參數訪問函數297 
 15.3.5診斷測試函數298 
15.4工程實例簡介299 
15.5工程實現299 
 15.5.1 CDD文件導入299 
 15.5.2 Security DLL文件配置301 
 15.5.3診斷控制台301 
 15.5.4診斷測試面板302 
 15.5.5添加Tester節點314 
 15.5.6虛擬診斷響應317 
 15.5.7自動化診斷測試方法分析318
 15.5.8 CAPL診斷測試模塊實現319 
 15.5.9製作GenerateKey.dll 332 
15.6工程運行測試332 
 15.6.1手動診斷測試面板332 
 15.6.2自動化診斷測試模塊333 
15.7擴展話題——VT System在測試中的應用335 
第16章CANoe高級編程—— COM Server技術336 
16.1 COM接口技術簡介336 
16.2 CANoe COM Server簡介及設置336 
16.3工程實例簡介337 
16.4開發實現—— CANoe工程338 
 16.4.1 CANoe工程中供調用的系統變量338 
 16.4.2 CANoe工程中供調用的總線信號339 
 16.4.3新建CANoe CAPL函數340 
16.5開發實現——VB.NET工程342 
 16.5.1新建VB.NET工程342 
 16.5.2添加CANoe相關引用342 
 16.5 .3界面設計344 
 16.5.4全局變量定義348 
 16.5.5 CANoe應用和Measurement對象控制348 
 16.5.6 CANoe事件處理349 
 16.5.7系統變量操作349 
 16.5.8總線信號操作350
 16.5.9 CAPL函數調用350 
 16.5.10完整代碼351 
16.6工程運行測試362 
16.7擴展話題—— Python腳本調用COM Server 362 
第17章CANoe高級編程—— CAPL DLL技術363 
17.1 CAPL DLL技術概述363 
 17.1.1 CAPL DLL函數列表364 
 17.1.2 CAPL回調函數365 
17.2工程實例簡介366 
17.3工程實現—— VC.NET開發CAPL DLL 366 
 17.3.1創建用戶自定義函數—— CRC算法函數366 
 17.3.2創建用戶自定義函數——讀取MAC地址函數369 
17.4工程實現—— CANoe調用CAPL DLL 371 
 17.4.1如何添加CAPL DLL 371 
 17.4.2 DLL路徑搜索順序372 
 17.4.3添加系統變量372 
 17.4.4添加一個測試面板372 
 17.4.5添加CAPL代碼375 
17.5工程運行測試378 
17.6擴展話題—— CANoe仿真工程代碼保護379 
 17.6.1編譯後刪除源代碼379 
 17.6.2加密後刪除源代碼380 
 17.6.3加密保護與硬件綁定380
第18章CANoe高級編程—— C Library API技術381 
18.1 CCL庫文件概述381 
18.2常用CCL接口函數介紹381 
18.3工程實例簡介383 
18.4工程實現—— VC.NET開發CCL 384 
 18.4.1如何創建一個CCL庫文件384 
 18.4.2 CCL代碼實現386 
18.5工程實現—— CANoe調用CCL 389 
 18.5.1如何調用CCL API 389 
 18.5.2添加系統變量390 
 18.5.3添加測試面板390 
 18.5.4添加IG模塊392 
18.6工程運行測試392 
第19章CANoe高級編程——自定義菜單插件394 
19.1自定義菜單插件概述394 
19.2工程實例簡介394 
19.3開發自定義菜單插件394 
 19.3.1創建和配置工程395 
 19.3.2代碼實現396 
19.4在CANoe中配置自定義菜單插件401 
19.5工程運行測試401 
19.6擴展話題——關於C#語言402 
第20章CANoe高級編程—— .NET測試模塊開發403 
20.1 .NET測試模塊開發概述403 
20.2 .NET測試環境設定404
 20.2.1配置CANoe的.NET文件編輯器404 
 20.2.2配置Visual C#項目開發模板405 
20.3工程實例簡介406 
20.4工程實現—— .NET測試模塊406 
 20.4.1添加.NET測試模塊406 
 20.4.2調用CAPL測試庫中的測試用例407 
 20.4.3新建C#測試模塊工程409 
 20.4.4數據庫和系統變量的訪問方法409 
 20.4.5 .NET測試模塊開發410 
 20.4.6 .NET測試模塊配置和編譯414 
20.5工程運行測試415 
20.6擴展話題—— XML測試模塊416 
第21章CANoe高級編程—— TCP/IP通信編程419 
21.1網絡傳輸協議簡介419 
 21.1.1網際層420 
 21.1.2傳輸層420 
 21.1.3 Socket編程簡介421 
21.2 .NET編程中TCP/IP相關類的簡介421 
21.3 CAPL中TCP/IP相關函數的簡介424 
21.4工程實例簡介426 
21.5工程實現—— C# TCP/IP服務器端開發427 
 21.5.1新建一個工程427 
 21.5.2界面設計427 
 21.5.3 C#代碼實現429
21.6工程實現—— CANoe TCP/IP客戶端開發434 
 21.6.1創建仿真工程434 
 21.6.2新建系統變量434 
 21.6.3 Panel設計435 
 21.6.4 CAPL實現438 
21.7工程運行測試446 
21.8擴展話題—— UDP Socket通信447 
第22章CANoe高級編程—— FDX協議與HIL系統通信449 
22.1 FDX協議449 
 22.1.1 Datagram 450 
 22.1.2創建Data Groups和Items 454 
 22.1.3 FreeRunning模式455 
22.2工程實例簡介455 
22.3工程實現—— CANoe項目456 
 22.3.1創建FDX Description文件456 
 22.3.2配置FDX 457 
22.4工程實現—— VC.NET項目458 
 22.4.1 VC.NET中FDX相關類簡介458 
 22.4.2 Datagram結構體定義459 
 22.4 .3界面設計461 
 22.4.4代碼實現463 
22.5工程運行測試480 
22.6擴展話題——硬件在環481 
第23章CANoe高級編程——調用LabVIEW 482
23.1 LabVIEW Integration系統設置要求482 
23.2工程實例簡介482 
23.3工程實現—— LabVIEW 483 
 23.3.1創建共享變量483 
 23.3.2創建DemoVI 484 
23.4工程實現—— CANoe 485 
 23.4.1啟用LabVIEW Integration設置485 
 23.4.2設置Signal Generators 486 
 23.4.3 CAPL調用LabVIEW共享變量487 
 23.4.4添加一個Desktop佈局488 
23.5工程運行測試488 
23.6擴展話題—— LabVIEW調用CANoe 490 
附錄A英文縮寫對照表491 
參考文獻494