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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MBD的界限和范圍

冬至子 ? 來源:autoMBD ? 作者:autoMBD ? 2023-07-13 14:38 ? 次閱讀

1 什么是基于模型的設計

基于模型的設計(Model-Based Design,MBD)是一種圍繞模型來展開的項目開發(fā)方法,其開發(fā)理念越來越受到關注。

雖然,人的想象力是無窮的,但肉眼可見的模型往往更能讓人理解和接受。

簡單的說,MBD就是對 項目的開發(fā)對象或目標產(chǎn)品進行精確建模 ,項目的需求分析、功能設計、系統(tǒng)框架設計、代碼生成、產(chǎn)品測試驗證等開發(fā)環(huán)節(jié),甚至項目流程管理、項目迭代開發(fā)管理、自動化文檔管理等管理環(huán)節(jié), 部分或全部在所建模型的基礎上展開的一種開發(fā)方式 。

在MBD開發(fā)中,模型是最終產(chǎn)品的高度數(shù)字化具現(xiàn),而最終產(chǎn)品的主要組件或功能都基于搭建的模型進行設計和開發(fā)。

圖片

基于模型的設計

作為對比,傳統(tǒng)的開發(fā)方法是線性展開的。由于傳統(tǒng)的開發(fā)中沒有對開發(fā)對象進行建模,不能形成一個中心點,項目的每一次推進,必須保證前面階段的開發(fā)工作已經(jīng)驗收完成。這種情況下,前期的設計缺陷如果沒能及時發(fā)現(xiàn),到了項目后期,其修復成本就會非常高。

圖片

傳統(tǒng)線性開發(fā)

此外,傳統(tǒng)的開發(fā)方法由于沒有中心模型,非常依賴前期的頂層設計和系統(tǒng)框架設計,這是抽象、不具體的任務,需要依賴以往的經(jīng)驗。

而MBD的具象化可不僅僅體現(xiàn)在產(chǎn)品形態(tài)上,產(chǎn)品的代碼、產(chǎn)品的測試都是可以直接由模型生成和實現(xiàn)的,方便實現(xiàn)產(chǎn)品功能迭代。模型的具象化和可視化能大大提高開發(fā)者的效率。

2 MBD的界限和范圍

對于初學者,弄清楚MBD的界限和范圍(Scope)是有意義的,即要知道MBD能做什么,哪些不是MBD覆蓋的內容。

Tips :在項目中,Scope一詞常用來描述一個事物能做什么,不能做什么,那些內容是屬于它的,那些內容不屬于它。但在中文語境沒有一個含義接近的詞語,因此這里的“界限和范圍”使用的是Scope的直譯。

從大的范圍來說,MBD本質上屬于嵌入式開發(fā)領域,但它不適用于所有的嵌入式項目。MBD適用于具有 控制器 (Controller)和 執(zhí)行器Actuator)的嵌入式電控裝置。

這些應用中一般具有特定的算法、信號處理、控制執(zhí)行、通訊等組成要素。例如無人機、電機控制電池管理系統(tǒng)、機器人等。如下圖所示:

圖片

MBD的界限和范圍

Tips :不適合MBD的應用包括各種穿戴設備、影音設備等,因為它們并不適合建模,MBD也不適合桌面端的軟件開發(fā)。

MBD支持的嵌入式軟件開發(fā),包括DSP、MCUFPGA等不同的芯片。

由于作者能力有限,接觸最多的是在MCU上的MBD開發(fā),文章介紹的也以這種為主。不過不同芯片的MBD本質是相同的,它們更多的體現(xiàn)在工具鏈的使用是不同的。

MBD的核心——模型——便是對控制器和執(zhí)行器進行的建模,有時候還包括執(zhí)行器的運行環(huán)境,所建的模型可以稱為 控制器模型 、 執(zhí)行器模型 (被控對象模型)和 環(huán)境模型 。

控制器、執(zhí)行器和運行環(huán)境之間,以及所建模型和被建模的實際對象之間的界限和范圍,也需要有清晰的定義。

2.1 控制器、執(zhí)行器和運行環(huán)境的界限

首先要弄清楚控制器和執(zhí)行器的界限在哪里。

我認為可以 以MCU為界限 :在MCU中的所有操作都應屬于控制器模型;在MCU以外的所有數(shù)字電路、功率電路、機械結構、電機等都應屬于執(zhí)行器模型。建模時可按照這個界限對控制器和執(zhí)行器分別建模。

以基于MBD的電機控制開發(fā)為例,控制器模型包含ADC采樣、信號處理、FOC算法等,執(zhí)行器包含電源逆變器、電機等。

控制器模型和執(zhí)行器模型的作用是不一樣的:前者搭建的是算法模型、軟件框架模型等,它屬于軟件,可以生成代碼。后者則是實際對象的數(shù)學模型(電機、整流電路、機械結構等),用于算法、功能的測試,是控制器的控制對象。

控制器模型和算法模型通過傳感器信號和控制信號連接起來,如下圖所示:

圖片

控制器模型和執(zhí)行器模型

控制器模型和執(zhí)行器模型是相輔相成的,如果執(zhí)行器增加、減少或改變了功能,控制器也會發(fā)生相應的改變。

相反,如果控制器中的算法得到了優(yōu)化,也可以改進執(zhí)行器的設計(例如改進電路、傳感器的布置等)。

環(huán)境模型即執(zhí)行器運行時所在的環(huán)境,是開發(fā)者不能控制的客觀因素和變量。

一般情況下都可以不用考慮,但在一些特定的應用中,環(huán)境會影響控制器和執(zhí)行器的設計,這時候就需要考慮搭建環(huán)境模型。

例如無人機,它的執(zhí)行器包括電機、螺旋槳等,但環(huán)境因素也是影響飛控算法的重要因素,搭建模型時就需要考慮對環(huán)境建模。

2.2 模型和實際對象的界限

其次要把握好仿真模型和實際對象之間的界限和范圍。實際對象是具體的,仿真模型則是實際對象的數(shù)學描述

控制器模型越準確,模型生成的代碼在真正的MCU中運行時就越符合設計目標;執(zhí)行器模型越準確,就可以對控制器算法、功能等進行更加全面的驗證和測試。所以模型的準確性影響著MBD的實際效果。

但MBD不需要模型和實際對象保持完全一致,也不可能實現(xiàn)完全一致,模型所能覆蓋的范圍是實際對象的子集。

模型可以省略一些不重要的因素,保留核心功能、最能體現(xiàn)實際對象的特征進行建模 。這樣做是有意義的,它可以保證項目功能的開發(fā)以外,還能節(jié)約建模的時間。

例如,很多時候控制器模型中的ADC采樣會被忽略,直接使用執(zhí)行器模型返回的數(shù)據(jù);在執(zhí)行器模型中,往往也會采用簡化的電機模型。

這種簡化不會影響算法實現(xiàn)、軟件框架或執(zhí)行器的功能設計。

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

    關注

    112

    文章

    16103

    瀏覽量

    177071
  • 電池管理系統(tǒng)

    關注

    41

    文章

    493

    瀏覽量

    33267
  • 信號處理器
    +關注

    關注

    1

    文章

    250

    瀏覽量

    25232
  • MBD
    MBD
    +關注

    關注

    0

    文章

    24

    瀏覽量

    8934
  • FOC算法
    +關注

    關注

    1

    文章

    16

    瀏覽量

    9654
收藏 人收藏

    評論

    相關推薦

    MBD(基于模型設計)講義 全英文

    一個關于MBD的講義,不過是全英文的,主要是國內做這個方面的太少,資料都較少
    發(fā)表于 07-07 18:01

    【數(shù)據(jù)采集分享】數(shù)據(jù)采集: 輸入界限

    在NI上面看到的這個問題和大家分享一下!什么是輸入界限?輸入界限對我的數(shù)據(jù)采集卡來講,有什么意義? LabVIEW中用輸入界限來定義你的模擬輸入信號的期望輸入范圍。設定輸入
    發(fā)表于 12-04 10:08

    基于模型的設計(MBD)的深入討論

    討論1:2016-6-14-基于模型的設計(MBD)_討論1主要論述了MBD的自動生成代碼的可用性,以及自動生成代買與手寫代碼的效率討論2:2016-6-14-基于模型的設計(MBD)_討論2深入介紹了基于模型的設計(
    發(fā)表于 06-14 18:30

    MBD設計模式

    機器人開發(fā)設計MBD設計模式(機器人開發(fā),控制系統(tǒng)開發(fā))掌握基于模型設計的六軸機械臂控制系統(tǒng)的開發(fā)方法掌握六軸機械臂的知識和控制器的軟硬件實現(xiàn)MBD設計模式(機器人開發(fā),控制系統(tǒng)開發(fā))MBD是一種
    發(fā)表于 06-28 12:29

    使用MBD進行stm32開發(fā)

    MBD學習之路1——使用MBD進行stm32開發(fā)準備工作準備工作
    發(fā)表于 08-17 07:55

    MBD有哪幾種設計模式?

    MBD有哪幾種設計模式?
    發(fā)表于 10-13 06:35

    如何在stm32芯片上去實現(xiàn)MBD設計呢

    如何在stm32芯片上去實現(xiàn)MBD設計呢?求解答
    發(fā)表于 11-19 06:03

    如何在MBD中實現(xiàn)DAC?

    我正在使用 NXP S32k148 工具箱,我想在我想使用數(shù)模轉換器(即 DAC)的地方構建模型。那么我可以在這里使用哪個工具箱?或者如何在 MBD 中實現(xiàn) DAC(數(shù)模轉換器)。
    發(fā)表于 04-07 12:50

    如何在s32k mbd中使用計時器?

    我想在 s32k mbd 中使用計時器,我必須在其中計算將軸原始值轉換為陀螺儀角度的時間。我如何在 mbd 中使用它?
    發(fā)表于 04-10 09:39

    MBD模型設計的CAN通信步驟和方法

    本篇筆記主要記錄基于MBD模型設計的CAN通信步驟和方法。前期工具箱的安裝不在本文檔討論范圍內。
    的頭像 發(fā)表于 01-20 12:00 ?1135次閱讀
    <b class='flag-5'>MBD</b>模型設計的CAN通信步驟和方法

    MBD模型設計的PWM輸出步驟和方法

    本篇筆記主要記錄基于MBD模型設計的PWM輸出步驟和方法。前期工具箱的安裝不在本文檔討論范圍內。
    的頭像 發(fā)表于 01-20 14:48 ?1412次閱讀
    <b class='flag-5'>MBD</b>模型設計的PWM輸出步驟和方法

    基于MBD模型設計的CAN通信步驟和方法

    本篇筆記主要記錄基于MBD模型設計的CAN通信步驟和方法。前期工具箱的安裝不在本文檔討論范圍內。
    的頭像 發(fā)表于 04-20 14:18 ?890次閱讀
    基于<b class='flag-5'>MBD</b>模型設計的CAN通信步驟和方法

    基于MBD模型設計的PWM輸出步驟和方法

    本篇筆記主要記錄基于MBD模型設計的PWM輸出步驟和方法。前期工具箱的安裝不在本文檔討論范圍內。
    的頭像 發(fā)表于 04-20 14:19 ?986次閱讀
    基于<b class='flag-5'>MBD</b>模型設計的PWM輸出步驟和方法

    初識MBDMBD模型管理

    基于模型的設計( **Model-Based Design,MBD** )是一種圍繞模型搭建展開的一種項目開發(fā)方法。
    的頭像 發(fā)表于 07-13 09:16 ?1996次閱讀
    初識<b class='flag-5'>MBD</b>及<b class='flag-5'>MBD</b>模型管理

    SOLIDWORKS 2024新功能——MBD

    SOLIDWORKS MBD是大家比較熟悉的解決方案了,在2024版本MBD的功能也做了很棒的提升。下面由眾聯(lián)億誠為大家簡單介紹一下。
    的頭像 發(fā)表于 02-02 15:13 ?636次閱讀
    SOLIDWORKS 2024新功能——<b class='flag-5'>MBD</b>