女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

立功科技基于S32K324的TMS方案介紹

CHANBAEK ? 來源:Auto FAE進階之路 ? 作者: Yingming ? 2023-11-22 11:37 ? 次閱讀

1前言

最近和一些做汽車水泵/風機的客戶交流時,都提到要預研TMS(熱管理域控制器)方案。希望使用一個高性能的車規MCU,同時控制三個無刷電機(水泵/風扇)、多個有刷電機(空調風門)和多個步進電機(空調出風口/進氣格柵/電子膨脹閥)。

NXP主推的S32K3系列中的雙核MCU---S32K324(主頻160MHz * 2)能夠符合該要求,正好筆者手上有一套立功科技的基于S32K324的TMS方案評估板---S32K3_TriMotor,所以記錄下使用的過程,方便申請了該評估板的讀者快速上手。

2立功科技的TMS方案介紹

2.1 介紹資料

關于立功科技的TMS方案的特點和演示視頻,如下兩篇文章介紹的比較詳細,推薦閱讀。

2.2 簡要介紹

對立功科技的TMS方案進行下簡要介紹。

  • 整體的方案框圖如下:

圖片

  • 功能特性:
    • 支持三個BLDC的無感FOC速度電流雙閉環控制;
    • 針對熱管理系統支持多路溫度、電壓電流采集;
    • 支持多路直流有刷電機有感位置控制;
    • 支持多路步進電機微步控制;
    • 支持多路High Side閥門控制;
    • 完善的保護功能,過壓欠壓,過流、限流、堵轉、過溫、缺相保護等;
    • 上位機FreeMASTER已適配,三電機獨立配置界面。
  • 優勢亮點:
    • 控制效率高,極大提高熱量的能量利用效率;
    • 器件集成化,極大精簡電子系統布局;
    • 大幅減少MCU、線束等數量,降低車輛生產成本;
    • 多個系統集成,方便系統管理;
    • 響應速度快,增強安全性。

3S32K3_TriMotor評估板測試

立功科技的S32K3_TriMotor有兩種配套程序,

  • 一套用于客戶前期評估,基于NXP官方的S32K324三電機例程進行移植(主要是適配外圍的三相驅動),簽訂保密協議后免費提供。
  • 一套用于客戶量產使用,需要付費購買。

3.1 環境搭建

使用S32K3_TriMotor對應的免費例程需要準備的環境如下:

  • IDE:S32 Design Studio for S32 Platform 3.4 或 3.5
  • 軟件包:RTD 2.0.0
  • 調試器:Jlink(推薦安裝下J-Flash V7.70a) 或 multilink
  • 調試工具:Freemaster 3.2

推薦使用S32DS 3.5 + RTD 2.0.0,但是筆者在S32DS 3.5已經安裝了RTD 3.0.0,如果安裝RTD 2.0.0會導致原本基于RTD 3.0.0的工程不可用。所以后文使用S32DS 3.4 + RTD 2.0.0進行演示,S32DS 3.5 + RTD 2.0.0類似。

S32 Design Studio for S32 Platform 3.4安裝

  1. S32DS 3.4下載地址為: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=S32DS-3-4 ,瀏覽器打開并登錄NXP賬號,選擇如下版本:

圖片

  1. 點擊Previous選擇S32DS3.4版本。圖片
  2. 選擇windows版本的安裝包并下載。圖片
  3. 點擊 License Keys ,在彈出的界面找到激活碼并保存好,在安裝時會用上。(一個激活碼最多使用101臺機器)圖片
  4. 點擊安裝包進行安裝,安裝過程中需要輸入激活碼時使用前面保存的激活碼即可,并選擇online激活的方式。

RTD 2.0.0安裝

  1. 打開S32DS 3.4,選擇好workspace,并勾選作為默認工作區。圖片
  2. 等待S32DS 3.4檢查更新。
  3. 更新檢查完之后,會彈出可更新以及已安裝的組件。勾選S32K3 RTD AUTOSAR 4.4 Version 2.0.0,點擊install/update。同時去掉always show的勾選,這樣就不會每次打開彈出更新檢查的界面。圖片
  4. 所有相關的組件都會自動加入更新列表,點擊next,再點擊finish進行更新。圖片
  5. 更新完之后重啟下S32DS 3.4,點擊Help->S32DS Extensions and Updates圖片
  6. 點擊Installed,查看已安裝的組件是否齊全。圖片

Freemaster 3.2

Freemaster 3.2的下載地址如下, https://www.nxp.com/design/software/development-software/freemaster-run-time-debugging-tool:FREEMASTER ,選擇3.2版本即可(筆者試過2.5版本打開例程的.pmpx文件會有問題)。圖片

3.2 例程測試

  1. 解壓立功科技提供的例程,名稱為:
  • MCTPTX1AK324_Triple_PMSM_RDB_230526a.zip
  1. 將解壓后的文件夾復制到S32DS 3.4的workspace,并復制其所在的路徑。
  2. 打開S32DS 3.4,按下圖方式打開例程。圖片
  3. 兩個工程分別是內核0和內核1的工程,依次選擇兩個工程并點擊Debug Flash,如果工程ok,會在控制臺看到編譯生成的elf文件。圖片

圖片

  1. 雙擊打開S32K_PMSM_Sensorless.pmpx文件(如果無法打開,可以先打開freemaster,再選擇File->Open Project,選擇對應的工程),整體界面如下:

圖片

立功科技提供的免費例程用于驅動三個參數相同的電機,只需要在MCAT界面輸入對應的電機參數、電流環參數、速度環參數等,在Output File界面就可以更新/生成工程需要的PMSM_appconfig.h文件。

圖片

關于MCAT界面的參數,NXP官網有一份應用筆記AN4642詳細介紹如何使用和修改。鏈接為:*https://www.nxp.com/webapp/Download?colCode=AN4642&location=null*

關于電機本體參數的測試方法,可以參考NXP官網的AN4680應用筆記,鏈接為:*https://www.nxp.com/webapp/Download?colCode=AN4680&location=null*

3.3 例程適配

目前筆者手上有兩個參數不同的電機,需要對立功科技提供的例程進行一些適配工作才能正常運轉。具體適配工作如下:

  1. 結合兩個電機M1、M2的參數,使用MCAT工具配置生成對應的文件,分別為M1_PMSM_appconfig.hM1_PMSM_appconfig.h ,并添加到內核0工程下的src/config文件夾下:圖片
  2. 然后將M1_PMSM_appconfig.hM1_PMSM_appconfig.h中的宏定義分別加上M1和M2前綴,方便后續調用。圖片
  3. 整個例程中需要用到MCAT生成的參數有如下四個函數,都在mianc.c中定義的:
static tBool CalcOpenLoop(openLoopPospe_t *openLoop, tFloat speedReqRamp);
static void M1_MCAT_Init(motorControl_t *pMC);
static void M2_MCAT_Init(motorControl_t *pMC);
static void M3_MCAT_Init(motorControl_t *pMC);
  1. MCAT初始化函數改起來比較方便,只需要將內部的賦值宏定義加上M1或者M2的前綴即可。

圖片
M1_MCAT_Init函數修改

圖片
M2_MCAT_Init函數修改

  1. CalcOpenLoop函數實現如下所示,里面調用了WEL_MAX變量,但是因為三個電機的狀態機中都使用了該函數,但是函數參數中沒有和WEL_MAX參數相關的,無法實現每個電機的狀態機調用的是匹配自己的WEL_MAX。
static tBool CalcOpenLoop(openLoopPospe_t *openLoop, tFloat speedReqRamp)
{
    openLoop- >wRotEl = speedReqRamp;
    openLoop- >thRotEl = MLIB_Mul(MLIB_ConvertPU_FLTF32(GFLIB_IntegratorTR_F32(MLIB_ConvertPU_F32FLT(MLIB_Div(speedReqRamp, WEL_MAX)),
                                                                              &(openLoop- >integ))),
                                 FLOAT_PI);

    return (true);
}
  1. 所以需要修改下CalcOpenLoop函數,同時調用該函數的地方也需要做相應的修改。整個的調用關系如下圖:圖片
  2. 同時在MCAT初始化函數的最后進行對應電機的WEL_MAX參數賦值以及增加結構體的成員:
static void M1_MCAT_Init(motorControl_t *pMC)
{
......
    pMC- >MotorParamInof.Wel_Max = M1_WEL_MAX; //增加
}

static void M1_MCAT_Init(motorControl_t *pMC)
{
......
    pMC- >MotorParamInof.Wel_Max = M2_WEL_MAX; //增加
}

圖片

  1. 然后保存編譯,生成新的內核0的elf文件。圖片

3.4 雙核燒錄

  1. 將使用jlink連接PC和demo板,打開j-flash,選擇S32K324,如下圖。圖片
  2. 點擊Open data file,選擇M0內核的elf文件。圖片
  3. 等待M0內核的elf加載完之后,選擇Merge data file,選擇M1內核的elf文件。圖片
  4. 兩個elf合并成功會在log窗口有提示,接著點擊connect,成功之后按F7燒錄即可。圖片

3.5 測試

將demo板連接上M1和M2電機,注意代碼中的M1,M2電機參數要和實際硬件連接的匹配上,然后按如下步驟進行測試。

  1. 使用freemaster打開pmp文件;
  2. 選擇剛剛編譯的內核0的elf文件;
  3. 將PC和評估板通過USB-TypeC線連接上,并在freemaster界面選擇對應的COM口(如果只顯示為串行設備,沒有XR的字樣,需要裝一下驅動);
  4. 忽略彈出的警告,并點擊Go按鈕連接評估板;
  5. 設置兩個電機的目標速度,并打開電機,運行一段時間之后的界面如下圖:圖片
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17824

    瀏覽量

    360180
  • 步進電機
    +關注

    關注

    152

    文章

    3155

    瀏覽量

    149112
  • 熱管理
    +關注

    關注

    11

    文章

    468

    瀏覽量

    22281
  • 無刷電機
    +關注

    關注

    60

    文章

    876

    瀏覽量

    47071
  • 立功科技
    +關注

    關注

    0

    文章

    30

    瀏覽量

    6260
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    s32k324使用HSE進行AES加密遇到的疑問求解

    我們目前正在使用 s32k324 板。 我們正在使用 HSE 進行 AES 加密。 我在想我是否需要刷新板上的 HSE 固件才能使用板上的 HSE。 如果沒有,我想知道即使我不刷新 hse 固件,我
    發表于 03-17 08:17

    s32k324調試時出現MemManage和HardFault怎么解決?

    我目前正在使用 s32k324 板。 我正在運行一個簡單的示例代碼,但在調試時收到以下兩個錯誤 MemManage:處理器嘗試從不允許執行的位置獲取指令。 HardFault:故障已升級為硬故障。 您能告訴我解決方案嗎?
    發表于 04-04 08:16

    Lockstep core in S32K344即使有2個內核也不能同時處理雙重任務?

    我對解耦核心(S32K324)和鎖步核心(S32K344)有疑問Lockstep core in S32K344 即使有2個內核也不能同時處理雙重任務? 如果我的應用程序需要性能和較低的安全性,那么
    發表于 03-14 08:37

    S32K324中的ADC可以用于兩個不同的模擬輸入嗎?

    S32K324中,我從參考手冊中了解到有 72 個 ADC 通道(標準和精度)。我附上相關部分的截圖。 在 S32K324 的信號表 excel 中,我可以看到一些 ADC 被分配到兩個不同的引腳
    發表于 03-14 09:52

    S32K324如何從gpio讀取數據?

    對于 S32K324,如何從gpio讀取數據?
    發表于 03-17 06:14

    如何獲得s32k324 gpio引腳配置?

    我可以獲得 s32k324 gpio 引腳配置嗎?它不在參考手冊中。無法理解用戶按鈕和 LED。請幫忙
    發表于 03-20 07:20

    如何在S32DS中設置以太網VLAN ID?

    我想在 S32K324 上設置以太網 VLAN ID,但在LWIP 示例和 S32DS 外設 UI中找不到任何信息。是否有關于如何設置以太網 VLAN ID 的示例或文檔?
    發表于 03-20 06:49

    S32DS 3.4版本配置工具生成代碼錯誤是怎么回事?如何修改?

    S32DS版本是3.4,安裝了Update3,RTD是2.0.1版本,芯片使用的S32K324,創建新的工程,工程本身編譯正常,但是打開配置工具,外設部分報錯,提示代碼生成失敗,工程完全新建,無其他修改
    發表于 04-03 06:42

    S32k324 DMA S/G模式能否繼續?

    S32k324在測試DMA scatter-gather 功能時,我發現dma 不能循環移動數據。DMA 將在第一次工作,然后 CSR_ESG 將變為 0,并且 dma 將不會循環回到第一個元素地址
    發表于 04-04 07:43

    S32K3xx中哪些情況會導致adc自檢算法返回失敗?

    我正在測試 S32K324 芯片上的 ADC 自檢功能。為了測試ADC出錯時能檢測到ADC,在硬件電路上人為將ADC Reference high voltage設置為0來模擬ADC故障,但是ADC
    發表于 04-04 08:33

    請問有沒有S32K324內核間中斷通信的demo?

    請問有沒有S32K324內核間中斷通信的demo。
    發表于 05-18 07:43

    S32DSV3.5能否從IPCF V3.7.0導入適用于S32K324的IPCF例程?

    S32DSV3.5能否從IPCF V3.7.0導入適用于S32K324的IPCF例程?
    發表于 05-19 07:07

    S32K324重置失敗和緩存問題如何處理?

    最近在用S32K324開發ECU時遇到了兩個問題。 1. 在用PEmicro和S32DS調試軟件時,通過上位機(CAN協議)發送報文復位程序。無論我使用哪種復位方法(API
    發表于 06-01 06:47

    s32k324控制器PWM輸出占空比顯示出2.7到3%的差異是什么原因造成的?

    嗨,我正在研究 nxp s32k324 控制器。PWM 輸出占空比顯示出 2.7 到 3% 的差異。當我們給出 0x4000 時,我們期望一個占空比為 50% 的 PWM 輸出,但我們得到一個占空比
    發表于 06-09 06:32

    立功科技汽車防盜方案介紹

    汽車防盜產品多種多樣,目前主流的汽車防盜系統之一是PEPS(Passive Entry Passive Start)系統,車主無需掏出鑰匙就能直接進入車輛和啟動引擎,極大方便了車主的操作。同時,防盜芯片種類繁多,應用場景也多樣化。本文將從不同的應用場景出發,介紹立功科技的
    的頭像 發表于 11-25 15:44 ?1159次閱讀
    <b class='flag-5'>立功</b>科技汽車防盜<b class='flag-5'>方案</b><b class='flag-5'>介紹</b>