色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

構(gòu)建MBD仿真模型和狀態(tài)機

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

1 模型仿真與實際應用之間的區(qū)別

MBD(Model-Based Design,基于模型的設計)是通過模型生成代碼的,所有我們有必要弄清楚模型仿真與實際應用之間的區(qū)別。

仿真模型與實際應用之間的區(qū)別本質(zhì)上是理論實踐之間的差別,其中的差別可以說是兩個完全不同的話題。

這里又給大家更新三篇與電機控制實踐相關(guān)的文章。它們是由NXP工程師編寫的電機控制應用筆記,可以在NXP官網(wǎng)找到,也可以在對話框中回復關(guān)鍵詞“ NXP應用筆記 ”,即可收到相應資源。

這三篇應用筆記分別是:

  • 3-Phase Sensorless PMSM Motor Control Kit with S32K144
  • 3-Phase Sensorless BLDC Motor Control Kit with S32K144
  • 3-phase Sensorless Single-Shunt Current-Sensing PMSM Motor Control Kit with MagniV MC9S12ZVM

圖片

*NXP電機控制應用筆記 * - From autoMBD

前兩篇分別以PMSM和BLDC為主題,介紹如何實現(xiàn)無感FOC控制;第三篇講的是單電阻無感控制方案,實現(xiàn)的也是FOC算法,軟件實現(xiàn)上是有一些區(qū)別的,也要復雜一些。

Tips :第三篇是基于MagniV MC9S12ZVM的,而不是S32K144,參考這篇文章時,主要學習的是單電阻電機控制方案,這個方案也是完全可以移植到S32K1xx系列上的。

無感控制比有感控制要復雜,將無感的方案稍加改造就可以做出有感的控制方案,所以這三篇應用筆記是很有實踐參考價值的。

這三篇應用筆記給的都是 純代碼開發(fā)的方案 ,即介紹了工程實踐中如何從數(shù)學原理一步一步實現(xiàn)電機控制,主要內(nèi)容包括:

  1. 電機控制數(shù)學原理
  2. 電流、電壓采樣輸入和驅(qū)動輸出
  3. MCU模塊資源的使用
  4. 底層驅(qū)動配置和初始化
  5. 電機控制軟件架構(gòu)(狀態(tài)機、電機控制庫、MCAT等)

下面的這個框圖可以較為全面的展示 第1~4點在電機控制中的實際體現(xiàn) :系統(tǒng)從外部硬件(電機、逆變器、預驅(qū)芯片)起,經(jīng)過信號采集,再到MCU的外設模塊(白色方塊),再到底層驅(qū)動(SDK Driver/橙色方塊),然后進入到FOC的軟件算法部分(綠色方塊),而FOC的輸出經(jīng)底層驅(qū)動、再到外設模塊(FTM模塊)輸出到預驅(qū)芯片,從而實現(xiàn)控制。第5點則是調(diào)度上述過程的狀態(tài)機,關(guān)于第5點后文會更一步的講解。

圖片

*NXP電機控制軟硬件框圖 * - From NXP

從這五點我們就能引出我們要討論的問題: 模型仿真與實際應用之間的區(qū)別到底有哪些

簡單的說,模型仿真只能觸及上述的第1點;如果對建模有更深入的研究,第2點也能做仿真,這部分實際上和硬件電路設計有關(guān),所以很少有在模型仿真中考慮這一點;第3、4、5點就是完全的非理論了,與嵌入式編程和芯片有較強的關(guān)聯(lián),是實實在在的實踐過程。

所以,在袁雷的《現(xiàn)代永磁同步電機控制原理及MATLAB仿真》中是完全不包括第2~5點的內(nèi)容的。

電流采樣電阻為例,實際應用場景中,為了測量電流信號的方向,一般會對采樣電阻進行偏置處理。NXP開發(fā)的DEVKIT驅(qū)動板相電流采樣電阻為例,其電路設計如下圖所示:

圖片

*DEVKIT驅(qū)動板相電流采樣電阻 * - From NXP

可以看到,偏置電壓為參考電壓的一半,所以最終輸入到芯片ADC的電壓是以偏置電壓為中心對稱的。

根據(jù)大于偏置電壓還是小于偏置電壓,可以判定電流是正方向還是負方向。所以在信號處理中還需要將這個偏置電壓減去。

關(guān)于電流采樣,還有布置方式的不同,常見的采樣電阻布置方式有以下這些:

  • 三電阻下橋臂采樣/相電流采樣
  • 雙電阻下橋臂采樣/相電流采樣
  • 單電阻母線采樣

Tips :這里列舉了常見采樣電阻布置方式,一般應用中下橋臂采樣較多,相電流采樣多用于高性能、高效率電機控制的場合,而單電阻母線采樣是成本最低,但采樣方式最復雜的。

不同的布置方式,采集的電流是不同的,而控制算法是需要全部的三相電流的。三個采樣電阻可以直接得到三相電流信號,如何通過一個電阻或者兩個電阻得到三相電流數(shù)據(jù),也是有方法的。

雙電阻相對來說較為簡單,根據(jù) 三相電流和為零 ,可以直接求解出第三相電流。單電阻采樣的場景要復雜很多,具體可以參考 上述的第三篇應用筆記

以上關(guān)于電流采樣的所有方法,在模型仿真中都沒有考慮,只是一根信號線連接到控制器 ,這就是理論仿真和實踐的巨大區(qū)別所在,如下圖所示(摘自袁雷的《現(xiàn)代永......仿真》):

圖片

*仿真模型示例 * - From 袁雷

Tips :因為我們要使用MBD的開發(fā)方法,所以這里不再深入詳細展開講其他的區(qū)別,以后有需要的地方再做提示,有興趣的讀者可以自行參閱上述三篇NXP的應用筆記。

當我們了解了所有理論實踐之間的區(qū)別,輔以嵌入式開發(fā)和編程的基礎,一個簡單的電機控制項目就可以實現(xiàn)。

即使是一個產(chǎn)品級的電機控制軟件,也只是再補充通信、故障診斷、功能安全等其他需求的功能。復雜度可能會高很多,但開發(fā)和設計的本質(zhì)框架就是這樣的。

2 MBD拉近模型仿真****與實際應用之間的距離

如果要更加嚴謹?shù)卣f,上面討論的也只是電機控制算法部分的工程實踐。一個完整的產(chǎn)品應用,硬件設計軟件設計 。硬件設計可以交給硬件工程師,我們把重點放在軟件設計上。

上面三篇應用筆記中提到的電機控制實現(xiàn)方案,是屬于軟件設計的一部分。傳統(tǒng)的開發(fā)中,就需要將選定的電機控制方案 轉(zhuǎn)化為一行行的代碼 ,這就又涉及到數(shù)學(理論)到編程語言(實踐)之間的轉(zhuǎn)換。入門門檻高,同時效率也較低。

Tips :以我自己的經(jīng)歷為例,上述應用筆記內(nèi)容的代碼實現(xiàn)過程,我是完整的走過一遍的。我從對嵌入式一無所知,到學習嵌入式的基本模塊和開發(fā)方法,再到能寫一些基本的嵌入式代碼,花費了3個月的時間,然后又花了差不多1個月的時間,才實現(xiàn)了一個簡單的電機控制嵌入式程序。這還是我對電機控制理論有了足夠的基礎之后的開發(fā)效率。

但利用MBD的開發(fā)方法,我們可以大大簡化這一步驟。模型我們是比較容易得到的, 利用模型直接生成代碼,能有效地縮近理論和實踐直接的距離 。更多MBD相關(guān)的內(nèi)容,請參考本公眾號 前面幾期內(nèi)容 ,或者在對話框中回復關(guān)鍵詞“ MBD入門 ”。

圖片

*MBD的開發(fā)流程 * - From ST

如果讀了上述三篇應用筆記,就可以發(fā)現(xiàn),嵌入式軟件設計很多是可以通過建模的方式實現(xiàn)的。這里簡單的把軟件設計分為五類,它的軟硬件層級如下圖所示(軟件為虛線框部分):

圖片

*電機軟硬件層級示例 * - From autoMBD

下面是這五類軟件關(guān)于MBD建模實現(xiàn)的分析:

  • 底層驅(qū)動 ,MCU、硬件電路強相關(guān)

底層驅(qū)動是和芯片和硬件電路設計緊密相關(guān)的,比如硬件引腳(Pin腳、外設、端口等)使用的不一樣,底層驅(qū)動的配置也就不一樣了。

原則上底層驅(qū)動是可以通過芯片廠商提供的MBD硬件支持包來實現(xiàn)的,但從靈活性和效率的角度來說,目前建議通過專門的底層驅(qū)動配置工具來配置底層驅(qū)動,例如NXP適用于S32K1系列的配置工具Processor Expert。

數(shù)字信號處理(Digital Signal Processing,DSP)是將真實世界中的物理量(模擬量,例如電流、電壓等)轉(zhuǎn)換為控制器需要的量的過程。

還是以電流采樣為例,在前文給的電流采樣電路基礎上,ADC讀到的電壓實際上是一個12 bit的整數(shù),需要將其進行偏置消除以及物理量轉(zhuǎn)換等操作,有必要的話會需要進行濾波處理。

可以看到,這個過程和硬件電路設計有一定的聯(lián)系,硬件設計的不一樣,處理的細節(jié)可能存在一定的差異。但基本的信號處理方法是相通的,例如濾波器、積分、微分、移位運算、邏輯運算等。

這一過程是可以通過建模的方式實現(xiàn),并且信號處理越復雜,模型的優(yōu)勢就更明顯,畢竟模型很容易搭建,代碼寫起來就很費勁了。

所以我們可以把軟件設計中的這一部分納入到MBD中,通過建模的方式自動生成代碼。

  • 電機控制算法 ,硬件電路弱相關(guān)

數(shù)據(jù)信號處理后,將得到的數(shù)據(jù)傳遞到電機控制算法中。控制算法中一般包括坐標變換、PI控制器、FOC、SVPWM等環(huán)節(jié)。電機控制算法會得到一個控制輸出量,一般是三相的占空比。

這些環(huán)節(jié)使用Simulink內(nèi)置的模塊,或者使用芯片廠商提供的MBD硬件支持包,是可以很方便快捷的實現(xiàn)的。這部分如果要編寫代碼,對初學者來說,甚至對有一定編程基礎的人來說,都算是不小的挑戰(zhàn)。

此外建模可以很方便地調(diào)整控制算法的結(jié)構(gòu),開發(fā)初期這是很常見的。手寫代碼的話,每一次調(diào)整結(jié)構(gòu)就需要重復工作一遍,效率很低。

因此電機控制算法部分是很適合通過建模生成代碼來實現(xiàn)的。

這里解釋一下電機控制算法****為什么是硬件電路弱相關(guān) 。一般來說,通用的電機控制算法是可以做到與硬件電路無關(guān)的。

但在某些場景下,例如有的芯片具有硬件加速模塊,或者使用一些特殊的控制算法(無感和有感就有硬件上的差異),可能會影響控制算法的執(zhí)行,所以電機控制算法和硬件有一定的關(guān)聯(lián)。

  • 狀態(tài)機 ,與硬件電路無關(guān)

狀態(tài)機是與硬件電路完全無關(guān)的,而且在Simulink中提供的****Stateflow是專門用于狀態(tài)控制建模的工具 ,用它開發(fā)狀態(tài)機效率可以提高一個檔次。所以狀態(tài)機使用MBD來實現(xiàn)也是毫無問題的。

  • 其他軟件 ,例如通信、失效檢查等,暫時我們不考慮這部分內(nèi)容

從上面的分析來看,除開底層驅(qū)動,其他軟件部分均可以通過MBD建模的方式實現(xiàn),并且能大大提高效率。

下圖是較為常見的V型開發(fā)流程,參考這個流程就可以開發(fā)一個基于MBD的電機控制軟件。

圖片

*V型開發(fā)流程 * - From ST

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

    關(guān)注

    2

    文章

    493

    瀏覽量

    27960
  • PMSM
    +關(guān)注

    關(guān)注

    14

    文章

    248

    瀏覽量

    42357
  • BLDC電機
    +關(guān)注

    關(guān)注

    7

    文章

    219

    瀏覽量

    21855
  • MBD
    MBD
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    9115
  • FOC算法
    +關(guān)注

    關(guān)注

    1

    文章

    21

    瀏覽量

    9798
收藏 0人收藏

    評論

    相關(guān)推薦

    SaberRD狀態(tài)機建模工具介紹(一)什么是狀態(tài)機建模

    狀態(tài)機建模是使用狀態(tài)圖和方程式的手段,創(chuàng)建基于混合信號的有限狀態(tài)機模型的一種建模工具。
    的頭像 發(fā)表于 12-05 09:51 ?2099次閱讀
    SaberRD<b class='flag-5'>狀態(tài)機</b>建模工具介紹(一)什么是<b class='flag-5'>狀態(tài)機</b>建模

    Verilog狀態(tài)機+設計實例

    的是有限狀態(tài)機(Finite-State Machine,F(xiàn)SM),簡稱為狀態(tài)機,表示在有限個狀態(tài)以及這些狀態(tài)之間的轉(zhuǎn)移和動作等行為的數(shù)學模型
    的頭像 發(fā)表于 02-12 19:07 ?4894次閱讀
    Verilog<b class='flag-5'>狀態(tài)機</b>+設計實例

    基于有限狀態(tài)機的虛擬訓練過程模型研究

    通過一個基于操作規(guī)程的虛擬訓練系統(tǒng)研究了系統(tǒng)仿真流程,分析了有限狀態(tài)機(FSM)的原理,結(jié)合虛擬仿真訓練的特點,設計出了操作過程模型,并通過Windows 消息機制編程實
    發(fā)表于 12-07 14:23 ?14次下載

    狀態(tài)機舉例

    狀態(tài)機舉例 你可以指定狀態(tài)寄存器和狀態(tài)機狀態(tài)。以下是一個有四種狀態(tài)的普通狀態(tài)機。 // Th
    發(fā)表于 03-28 15:18 ?1056次閱讀

    狀態(tài)機代碼生成工具

    狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具
    發(fā)表于 11-19 15:12 ?9次下載

    狀態(tài)機原理及用法

    狀態(tài)機原理及用法狀態(tài)機原理及用法狀態(tài)機原理及用法
    發(fā)表于 03-15 15:25 ?0次下載

    狀態(tài)機概述 如何理解狀態(tài)機

    本篇文章包括狀態(tài)機的基本概述以及通過簡單的實例理解狀態(tài)機
    的頭像 發(fā)表于 01-02 18:03 ?1.1w次閱讀
    <b class='flag-5'>狀態(tài)機</b>概述  如何理解<b class='flag-5'>狀態(tài)機</b>

    FPGA:狀態(tài)機簡述

    本文目錄 前言 狀態(tài)機簡介 狀態(tài)機分類 Mealy 型狀態(tài)機 Moore 型狀態(tài)機 狀態(tài)機描述 一段式
    的頭像 發(fā)表于 11-05 17:58 ?7776次閱讀
    FPGA:<b class='flag-5'>狀態(tài)機</b>簡述

    使用獨立于內(nèi)核的外設構(gòu)建硬件狀態(tài)機

    狀態(tài)機是邏輯單元、存儲器單元和反饋的組合。狀態(tài)機的輸入與狀態(tài)機的當前狀態(tài)組合在一起,確定下一個狀態(tài)。當出現(xiàn)
    發(fā)表于 03-30 15:58 ?7次下載
    使用獨立于內(nèi)核的外設<b class='flag-5'>構(gòu)建</b>硬件<b class='flag-5'>狀態(tài)機</b>

    什么是狀態(tài)機狀態(tài)機5要素

    玩單片還可以,各個外設也都會驅(qū)動,但是如果讓你完整的寫一套代碼時,卻無邏輯與框架可言。這說明編程還處于比較低的水平,你需要學會一種好的編程框架或者一種編程思想!比如模塊化編程、狀態(tài)機編程、分層思想
    的頭像 發(fā)表于 07-27 11:23 ?2.1w次閱讀
    什么是<b class='flag-5'>狀態(tài)機</b>?<b class='flag-5'>狀態(tài)機</b>5要素

    狀態(tài)模式(狀態(tài)機)

    以前寫狀態(tài)機,比較常用的方式是用 if-else 或 switch-case,高級的一點是函數(shù)指針列表。最近,看了一文章《c語言設計模式–狀態(tài)模式(狀態(tài)機)》(來源:embed linux
    發(fā)表于 12-16 16:53 ?9次下載
    <b class='flag-5'>狀態(tài)</b>模式(<b class='flag-5'>狀態(tài)機</b>)

    如何構(gòu)建基于狀態(tài)機的軟件系統(tǒng)

    模式(Design Pattern)。本文介紹如何構(gòu)建基于狀態(tài)機的軟件系統(tǒng),以及如何利用Linux下的工具來自動生成實用的狀態(tài)機框架。
    的頭像 發(fā)表于 09-14 10:55 ?1712次閱讀

    Verilog狀態(tài)機的類型

    有限狀態(tài)機(Finite-State Machine,F(xiàn)SM),簡稱狀態(tài)機,是表示有限個狀態(tài)以及在這些狀態(tài)之間的轉(zhuǎn)移和動作等行為的數(shù)學模型
    的頭像 發(fā)表于 06-01 15:23 ?2109次閱讀
    Verilog<b class='flag-5'>狀態(tài)機</b>的類型

    如何生成狀態(tài)機框架

    生成狀態(tài)機框架 使用FSME不僅能夠進行可視化的狀態(tài)機建模,更重要的是它還可以根據(jù)得到的模型自動生成用C++或者Python實現(xiàn)的狀態(tài)機框架。首先在FSME界面左邊的樹形列表中選擇"R
    的頭像 發(fā)表于 09-13 16:54 ?1130次閱讀
    如何生成<b class='flag-5'>狀態(tài)機</b>框架

    什么是狀態(tài)機狀態(tài)機的種類與實現(xiàn)

    狀態(tài)機,又稱有限狀態(tài)機(Finite State Machine,F(xiàn)SM)或米利狀態(tài)機(Mealy Machine),是一種描述系統(tǒng)狀態(tài)變化的模型
    的頭像 發(fā)表于 10-19 10:27 ?1.1w次閱讀
    主站蜘蛛池模板: 中文字幕亚洲欧美日韩2o19 | 99re久久热在线播放快 | 久久综合九色综合国产 | 日本久久和电影 | 国产婷婷色一区二区三区在线 | 在线高清电影理论片4399 | 亚洲综合中文 | 韩国女主播内部vip自带氏巾 | 伊人精品在线 | 亚洲精品无码葡京AV天堂 | 超碰高清熟女一区二区 | 免费国产在线观看 | 扒开女人下面使劲桶动态图 | 午夜影视不用充钱的免费 | 亚洲偷偷自拍免费视频在线 | 无码乱人伦一区二区亚洲 | 亚洲电影网址 | 亚洲人日本人jlzzy | 精品日韩欧美一区二区三区 | 精品视频一区二区三三区四区 | 老司机午夜影院试看区 | 国产亚洲福利精品一区 | 亚洲欧洲一级 | 男人一进一出桶女人视频 | 老师xxxx69动漫 | 欧美一道本一区二区三区 | 欧美亚洲色帝国 | 国产精品久久久久精品A片软件 | 摥管专用动态图399期 | 亚洲国产精品久久精品成人网站 | 97视频视频人人碰视频 | 日本无码专区亚洲麻豆 | 日韩做A爰片久久毛片A片毛茸茸 | 又黄又肉到湿的爽文 | 国产超碰人人爱被IOS解锁 | 国产在线观看成人免费视频 | 寂寞护士中文字幕 mp4 | 男女做爽爽爽视频免费软件 | 亚洲视频在线观看 | 国内精品伊人久久久影院 | 99视频免费在线观看 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品