99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

分享條件編譯助力Simulink模型平臺化開發(fā)的相關(guān)介紹

MATLAB ? 來源:djl ? 作者:董淑成 ? 2019-09-16 17:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

汽車行業(yè)流行平臺化開發(fā),希望通過一套軟件對付一系列車型,當(dāng)然這一系列車型的軟件基本上一致,不同配置之間可能有很少一點差別,怎么辦?C語言開發(fā)中有條件編譯,同一份源代碼,可以通過設(shè)置不同的參數(shù),讓編譯出來不同的軟件,而無需編譯冗余的軟件。

使用模型開發(fā)算法,
是否也可以讓模型生成的代碼做到這一點呢?

回答是肯定的。

下面我們來看一個例子,例子中我們通過參數(shù)K來選擇編譯不同部分的算法。

分享條件編譯助力Simulink模型平臺化開發(fā)的相關(guān)介紹

雙擊打開Variant Subsystem,往這里面添加幾個Atomic Subsystem,分別命名為Algorithm1、Algorithm2、Algorithm3,如下圖:

分享條件編譯助力Simulink模型平臺化開發(fā)的相關(guān)介紹

Algorithm1、Algorithm2、Algorithm3里面的算法如下:

分享條件編譯助力Simulink模型平臺化開發(fā)的相關(guān)介紹

不同的是Algorithm1、Algorithm2、Algorithm3里面的Gain分別為1、2、3。

在Variant Subsystem模塊上,鼠標(biāo)右鍵,選擇Block Parameters,設(shè)置如下圖所示:

分享條件編譯助力Simulink模型平臺化開發(fā)的相關(guān)介紹

最后,在Base Workspace或者data dictionary里使用參數(shù)類定義參數(shù)對象K,設(shè)置K的Storage Class為Define,同時指定頭文件為my_config.h。

好了,做完上述設(shè)置就可以生成如下的代碼了:

void mymodel_step(void)

{

#if K == 1

y = x;

#elif K == 2

y = 2.0 * x;

#elif K == 3

y = 3.0 * x;

#endif

}

注:假如我們給K賦值為2,模型就會出現(xiàn)最前面兩幅圖片里顯示的那樣,Variant Subsystem最上方的名字是Algorithm2,Variant Subsystem里面的3個Atomic Subsystem中Algorithm2是黑色的,另外兩個是灰色的。

需要注意的是:

代碼生成的時候,在Variant Subsystem模塊上鼠標(biāo)右鍵,選擇Block Parameter,設(shè)置Variant control條件,同時,勾上Analyze all choices during update diagram and generate preprocessorconditionals;

Variant Subsystem內(nèi)部的連接關(guān)系是通過顏色表示的,黑色的就表明已經(jīng)連上了,不要試圖使用鼠標(biāo)把這里的Inport、Outport和某個子系統(tǒng)上的端口硬連接,當(dāng)然,你也是連不上的;

這三部分算法之間的差別非常小,可以使用Variant subsystem的方式實現(xiàn),如果算法差別的部分比較大,建議使用Model Variant實現(xiàn)。

往期 | 老胡專欄

為什么要基于模型設(shè)計?

自動代碼生成五大原則

什么樣的模型算正確的模型?

簡單說說MIL、SIL、PIL和HIL

自動生成的代碼支持哪些硬件平臺?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4710

    瀏覽量

    95399
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70750
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    679

    瀏覽量

    33999
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    ArkUI-X在Android平臺動態(tài)化開發(fā)指南

    本文介紹如何在Android平臺進行ArkUI-X動態(tài)化開發(fā),包括動態(tài)化目錄規(guī)則及約束。 適用場景 動態(tài)化主要包括兩個典型場景: 場景1:框架動態(tài)化,為了降低應(yīng)用ROM體積占用,及滿足動態(tài)升級框架
    發(fā)表于 06-15 23:33

    【「零基礎(chǔ)開發(fā)AI Agent」閱讀體驗】+Agent開發(fā)平臺

    開發(fā)平臺有4大特點 1)技術(shù)集成性 Agent開發(fā)平臺集成了大模型調(diào)用、提示詞工程、插件、線上編程運行環(huán)境、知識庫、工作流、數(shù)據(jù)庫等多種功能
    發(fā)表于 05-13 12:24

    如何實現(xiàn)MC33774IC在Simulink環(huán)境中使用基于模型的設(shè)計?

    我想熟悉如何實現(xiàn)MC33774IC 在 Simulink 環(huán)境中使用基于模型的設(shè)計。 盡管 MATLAB 提供了一些示例文件,但它們似乎是最終版本。要更深入地了解如何配置MC33774,我正在尋找一個教程,該教程解釋了如何從頭開始在 S
    發(fā)表于 04-10 08:05

    機智云推出集成Deepseek和豆包大模型的AIoT開發(fā)平臺

    近日,字節(jié)跳動旗下扣子AI工坊硬件專場活動深圳現(xiàn)場,全球領(lǐng)先的物聯(lián)網(wǎng)解決方案商機智云發(fā)布重要平臺升級,正式推出行業(yè)首個標(biāo)配DeepSeek和豆包大模型的AIoT開發(fā)平臺,深度融合火山引
    的頭像 發(fā)表于 03-04 10:29 ?911次閱讀

    低代碼平臺:數(shù)字化時代的開發(fā)加速器與業(yè)務(wù)創(chuàng)新引擎

    。低代碼平臺憑借其強大的功能和靈活的應(yīng)用場景,正在成為企業(yè)數(shù)字化轉(zhuǎn)型的重要推手。通過簡化開發(fā)流程、提升開發(fā)效率,低代碼平臺助力企業(yè)快速響應(yīng)
    的頭像 發(fā)表于 02-26 16:34 ?327次閱讀
    低代碼<b class='flag-5'>平臺</b>:數(shù)字化時代的<b class='flag-5'>開發(fā)</b>加速器與業(yè)務(wù)創(chuàng)新引擎

    AI開發(fā)平臺模型怎么用

    AI開發(fā)平臺極大地簡化了AI應(yīng)用的開發(fā)流程,從環(huán)境搭建、模型訓(xùn)練到部署集成,每一步都提供了豐富的工具和資源。那么,AI開發(fā)
    的頭像 發(fā)表于 02-11 09:53 ?337次閱讀

    使用OpenVINO?條件編譯功能,壓縮Windows應(yīng)用體積

    cmake -DENABLE_INTEL_GPU=OFF 便可以取消 GPU plugin 庫的編譯。除此以外 OpenVINO 還提供了條件編譯功能,用于針對特定模型進行運行庫壓縮
    的頭像 發(fā)表于 01-13 10:26 ?543次閱讀
    使用OpenVINO?<b class='flag-5'>條件</b><b class='flag-5'>編譯</b>功能,壓縮Windows應(yīng)用體積

    Triton編譯器在機器學(xué)習(xí)中的應(yīng)用

    1. Triton編譯器概述 Triton編譯器是NVIDIA Triton推理服務(wù)平臺的一部分,它負(fù)責(zé)將深度學(xué)習(xí)模型轉(zhuǎn)換為優(yōu)化的格式,以便在NVIDIA GPU上高效運行。Trito
    的頭像 發(fā)表于 12-24 18:13 ?992次閱讀

    Triton編譯器與其他編譯器的比較

    的GPU編程框架,使開發(fā)者能夠編寫出接近手工優(yōu)化的高性能GPU內(nèi)核。 其他編譯器 (如GCC、Clang、MSVC等): 定位:通用編譯器,支持多種編程語言,廣泛應(yīng)用于各種軟件開發(fā)場景
    的頭像 發(fā)表于 12-24 17:25 ?1006次閱讀

    Triton編譯器功能介紹 Triton編譯器使用教程

    。以下是 Triton 編譯器的一些功能介紹和使用教程。 Triton 編譯器功能介紹 多語言支持 :Triton 支持多種編程語言,使得開發(fā)
    的頭像 發(fā)表于 12-24 17:23 ?1686次閱讀

    Simulink模型仿真與分析技巧

    1. 模型構(gòu)建基礎(chǔ) 1.1 理解系統(tǒng)需求 在開始構(gòu)建模型之前,明確系統(tǒng)的需求和目標(biāo)是至關(guān)重要的。這包括了解系統(tǒng)的動態(tài)特性、輸入輸出關(guān)系以及預(yù)期的性能指標(biāo)。 1.2 選擇合適的模塊 Simulink
    的頭像 發(fā)表于 12-12 09:23 ?2467次閱讀

    Simulink自定義模塊開發(fā)教程 Simulink 在控制系統(tǒng)中的應(yīng)用

    在控制系統(tǒng)的設(shè)計和分析中,Simulink 提供了一個強大的工具集,允許工程師通過圖形化界面快速構(gòu)建和測試復(fù)雜的系統(tǒng)模型。然而,Simulink 的標(biāo)準(zhǔn)庫可能不包含所有特定的功能,這時就需要
    的頭像 發(fā)表于 12-12 09:21 ?2199次閱讀

    自動化AI開發(fā)平臺功能介紹

    自動化AI開發(fā)平臺集成了多種算法、工具和框架,旨在幫助開發(fā)者更快速、高效地設(shè)計、訓(xùn)練、部署和管理AI模型。以下,AI部落小編將詳細(xì)介紹自動化
    的頭像 發(fā)表于 11-14 09:29 ?780次閱讀

    Matlab/Simulink/Stateflow建模開發(fā)及仿真測試

    matlab 模擬仿真 熟悉Matlab/Simulink/Stateflow建模開發(fā)及仿真測試,熟悉V模型開發(fā)流程。 熟悉自動代碼生成,能夠編寫或者配置自動代碼生成腳本。
    發(fā)表于 10-24 17:23

    linux開發(fā)板如何編譯curl

    準(zhǔn)備開發(fā)環(huán)境 確保你的開發(fā)板已經(jīng)安裝了編譯 curl 所需的工具,包括 gcc 、 make 和可能的其他庫。如果開發(fā)板是交叉編譯環(huán)境(即
    的頭像 發(fā)表于 08-30 15:33 ?1417次閱讀