AUTOMATIONDESK · DEMOS & TUTORIAL

AutomationDesk
範例詳細說明

AutomationDesk 提供兩類範例:8 課的互動式 Tutorial(含每課對照 demo 專案),以及依存取程式庫分類的自動化 demo 專案(ControlDesk、ModelDesk、MATLAB、診斷、Real-Time Testing 等)。本頁逐一詳解其內容與使用方式。

Tutorial(8 課) Python Control-Flow / Signal-Based Release 2024-B

AutomationDesk 是用於組織與建立自動化測試任務的軟體,提供圖形化編輯器描述 control-flow-based 與 signal-based 自動化,並以可擴充的程式庫提供豐富的自動化功能。其範例分為兩大類:Tutorial 教學範例(每課附對照 demo)與存取程式庫 demo 專案。本頁內容整理自 dSPACE 原廠 AutomationDesk Tutorial 與各 Accessing 手冊(RLS2024-B)。

1. 範例類型總覽

Tutorial 教學範例

以「做中學」引導的 8 課教學,涵蓋建立專案、參數化、執行與報告、自訂程式庫、Python、控制流與訊號式測試。每課附一個對照 demo 專案(位於 Tutorial Demos 資料夾)。

存取程式庫 demo 專案

示範如何以 AutomationDesk 存取其他 dSPACE 工具(ControlDesk、ModelDesk、MotionDesk、MATLAB、MC/診斷系統、Real-Time Testing),各自附獨立 demo 專案。

2. Tutorial 的三個 Example Tasks

Tutorial 以三個逐步進階的範例任務貫穿,展示 AutomationDesk 的典型應用領域:

A

基本元素

把自動化任務轉為 AutomationDesk 專案與 sequence(控制流)。不需平台存取。

B

使用 Python

以自己或他人提供的 Python 程式碼擴充 AutomationDesk。不需即時硬體。

C

實作測試

依測試策略(控制流式/訊號式)實作測試。需存取平台(即時硬體或 VEOS)。

完成整個 Tutorial 約需 4 小時。

3. 如何取得與使用範例

  • 複製 demo開啟 demo 前,須先以 AutomationDesk Options 對話框 → User Settings 頁 → Copy Demos 指令將 demo 專案複製到 Documents 資料夾。
  • 每課對照 demo每課結尾可用 <DocumentsFolder>\Tutorial Demos 內對應的 demo 專案核對結果;因名稱不同,可與自己的專案同時開啟比對。
  • 作為起點只想做某一課時,可開啟對應 demo、另存新名(保留原檔),再從該課開始。

4. Tutorial 八課詳解

課程主題與內容
1建立第一個專案:建立/結構化專案、建立與編輯 sequence、導覽、存檔與關閉。
2參數化自動化 sequence:修改 automation block 屬性、以值/參考參數化、經 _AD_ 別名存取 data object 值。
3執行 sequence:執行、指定報告參數、產生報告(report)。
4建立自訂程式庫(僅程式庫開發者需要):建立 block/subsequence/sequence 範本,並提供給他人。
5使用自訂程式庫:以 block 範本、subsequence 範本、sequence 範本組建自動化 sequence。
6使用 Python 腳本:以 Python 擴充功能(含只用區域變數、及存取專案 data object 的情境)。
7模擬平台上的控制流式測試:以代表控制流的 sequence 實作,經 XIL API Convenience 程式庫的 automation blocks 存取平台。
8模擬平台上的訊號式測試:以 Signal-Based Testing 程式庫的 sequence 範本實例實作標準化測試場景,經訊號描述設定刺激/擷取,可指定參考訊號並評估結果。

5. 第一個自動化任務詳解(基本元素)

Tutorial 的第一個任務是一個簡單程式:在迴圈中讀取資料並依條件印出訊息。

  • 假設有一電子裝置具 8 個數位輸出,分為 2 組、每組 4 個 bit。
  • 各輸出依輸入產生 TTL 訊號(high/low = 1/0),所有輸出的 setpoint 為 1。
  • 為簡化,不直接讀硬體,而以 2×4 資料陣列模擬輸出值。
  • 以 兩層 For 迴圈(外層對組、內層對 bit)逐一分析,依 bit 值印訊息;全部讀完印結束訊息。

此任務貫穿 Lesson 1–5:建立專案 → 參數化 → 執行並產生報告 →(開發者)建立自訂程式庫 → 使用自訂程式庫。

6. 兩種測試策略

控制流式測試(Lesson 7)

將測試視為演算法,先依控制流實作、再以 data object 參數化後執行。彈性高,可依需求客製;經 XIL API Convenience 程式庫存取平台。

訊號式測試(Lesson 8)

將測試場景視為由輸入訊號刺激、以輸出訊號擷取反應,並與參考訊號比較評估。以 Signal-Based Testing 程式庫的 sequence/block 範本實作,主要透過訊號描述設定,內含結果評估與報告。

7. 存取程式庫 Demo 專案一覽

各存取程式庫皆附獨立 demo 專案,示範如何從 AutomationDesk 自動化對應工具:

Demo 專案示範內容位置
ControlDesk Access經 API 自動化存取 ControlDesk。<Documents>\ControlDesk Access
ModelDesk Access讀寫 ASM 模型參數、控制 maneuver。<Documents>\ModelDesk Access
MotionDesk Access開關專案/實驗、控制動畫場景。<Documents>\MotionDesk Access
MATLAB Access讀寫 MATLAB 資料、資料型別對應。MATLAB Access 手冊範例
Remote Calibration (COM)經 COM/DCOM 存取 MC 系統做校正/量測。Remote Calibration (COM) ControlDesk.zip
Remote Diagnostics (COM)以 ASAM-MCD 3 D 標準存取診斷工具。<Documents>\Remote Diagnostics (COM)
Real-Time Testing自動化 RTT 專案(產生 BCG、初始化、執行)。<Documents>\RealTimeTesting
ExtensionExample以原始碼、自訂程式庫的 automation block 與專案示範擴充 API。Accessing ControlDesk 手冊

另有模擬平台存取(XIL API Convenience)與模擬電氣錯誤(FIU)等相關範例,見對應 Accessing 手冊。

8. 存取範例的共通模式

  • Automation Blocks + Data Objects各存取範例以 sequence 中的 automation blocks 搭配 data objects 完成「開啟工具 → 執行操作 → 關閉工具」的流程。
  • 亦可經 Exec block 呼叫 Python各 Access 程式庫提供同名 Python 模組(如 audmodeldeskaccess、audmotiondeskaccess),方法名與 block 相同,可於 Exec block 直接呼叫。
  • custom library 形式Access 程式庫以自訂程式庫實作,可如一般程式庫般開啟/關閉/匯入/匯出,並可閱讀其 Python 原始碼。

原始文件出處(dSPACE RLS2024-B)

文件檔名
AutomationDesk Tutorial(Example Tasks、Lesson 1–8)AutomationDeskTutorial.pdf
AutomationDesk Accessing ControlDesk / ModelDesk / MotionDesk / MATLABAutomationDeskAccessing*.pdf
AutomationDesk Accessing RCCOM / RDCOM / Real-Time Testing / Simulation PlatformsAutomationDeskAccessing*.pdf
範例專案(Copy Demos 後位於 Documents 各資料夾)Tutorial Demos\ · <工具> Access\ …

路徑前綴:C:\Users\Public\Acolada\Cobrili\HelpSetStorage\dSPACEPDF\RLS2024-B\en\