匯入 MathWorks Simulink 元件

若要匯入 MathWorks Simulink 元件,請在 Simulink 及 IBM® Rational® Rhapsody® 中執行下列步驟:

在 MathWorks Simulink 中

程序

  1. 建立 MathWorks Simulink 模型,或開啟現有模型,然後將其儲存在工作目錄中(最好儲存在與 Rational Rhapsody 模型相同的工作目錄中)。
  2. 若要產生程式碼,請在 Real‑Time Workshop 中使用下列設定(大部分為預設值)。您可以透過選取工具 > Real-Time Workshop > 選項,來檢視這些設定。
    • 硬體實作->裝置類型 - 未指定(假設為「32 位元一般」)
    • Real-Time Workshop->系統目標檔 - ert.tlc
    • Real-Time Workshop->語言 - C 或 C++(請注意,預設值為 C)
    • Real-Time Workshop->Make 指令 - make_rtw
    • Real-Time Workshop->範本 make 檔 - ert_default_tmf
  3. 為 Simulink 模型產生程式碼(工具 > Real-Time Workshop > 建置模型)。

Rational Rhapsody

程序

  1. 建立 Rational Rhapsody 專案。
  2. 用滑鼠右鍵按一下瀏覽器中的專案名稱,然後選取新增至模型 > 套件
  3. 在「新增至模型」視窗中,導覽至 <Rational Rhapsody installation folder>\Share\Profiles\Simulink,然後在檔案類型欄位中選取套件 (*.sbs)
  4. 如果您使用的是 C,請選取 SimulinkInC.sbs 設定檔;如果您使用的是 C++,請選取 Simulink.sbs。按一下開啟,以將選取的設定檔新增至專案。檢查瀏覽器中的設定檔區段,確定現在顯示的是所選的 Simulink 設定檔。
  5. 在物件模型圖中建立物件,然後將 SimulinkBlock 模板套用該物件(在「特性」視窗中)。
  6. 用滑鼠右鍵按一下該物件,然後選取匯入/同步 Simulink 模型
  7. 在所顯示的視窗中,提供下列資訊:
    • Simulink 模型檔。Simulink 模型檔的位置
    • Simulink 產生的原始碼。Real-Time Workshop 產生的 *.cpp 檔案的位置(請新增除 ert_main.cpp 以外的所有檔案)。
    • Simulink 模型取樣時間。Rational Rhapsody 啟動 Simulink 引擎的間隔(毫秒)。
  8. 按一下匯入/同步,然後等待至 Rational Rhapsody 在區塊中建立流程埠,來代表 Simulink 模型的輸入及輸出。
  9. 一旦建立流程埠,您即可將 Simulink 區塊連接至其他 Rational Rhapsody 區塊上的流程埠。

整合 Simulink 產生的程式碼

關於這項作業

將 Simulink 元件匯入 Rational Rhapsody 模型時,使用 Real-Time Workshop 從 Simulink 模型產生的 .cpp 檔案,將作為原始檔包含在 Rational Rhapsody 產生的 make 檔中。

Rational Rhapsody 產生的程式碼而言,Rational Rhapsody 中的 SimulinkBlock 元素,是基於稱為 OMSimulinkBlock 架構類別的類別。 此超類別會定期呼叫由衍生類別實作的 doStep() 方法。此方法則會起始設定輸入埠、呼叫 Simulink 產生的 .cpp 檔案中的步驟函數,並設定該步驟之後的輸出值。(然後透過輸出流程埠來轉遞輸出。)

一旦您指派具有 Simulink 模型的 SimulinkBlock,並使用匯入/同步 Simulink 模型蹦現功能表指令,即會產生 doStep() 函數。 請注意,此作業需要「內嵌編碼器授權 (ERT)」。

Simulink 模型整合疑難排解

關於這項作業

  • 匯入或與 Simulink 模型同步之後,如果您收到有關遺漏 langeng.dll 檔案的錯誤訊息,請驗證 MATLAB \bin\win32 資料夾是否在您的 PATH 環境變數中。新增該檔案之後,您必須重新啟動 Rational Rhapsody,然後嘗試重新匯入。
  • 如果您遇到有關遺漏併入檔的編譯錯誤,請在 MATLAB 安裝目錄中尋找這些檔案。 找到這些檔案之後,您可以將其新增至 Rational Rhapsody 配置的併入搜尋路徑。

回饋