摘要
本篇筆記主要記錄基于恩智浦MPC5744P的電機FOC控制中電流的采樣。
準備工作
ADC
恩智浦的MPC5744P,含有的ADC子模塊有四個,我們使用ADC0的通道0,和ADC1的通道0來做電流的同步采樣,通過PWM觸發CTU,CTU事件觸發ADC電流采樣,在CTU的中斷中去獲取電流的ADC值,經過濾波后就可以做電流算法的閉環控制,這個芯片的ADC 有兩種模式。
我們使用電機控制模式,使用內部集成的CTU去觸發ADC轉換。也可以采用etimer去觸發ADC,這次我們采用CTU觸發,配置ADC,CTU時鐘為80M.
CTU
CTU的利用可以減少CPU的負擔,具體的描述可以參考手冊下面的描述
CTU框圖
因為做電機控制,電流的同步采樣非常關鍵,根據這個框圖可以看到,PWM的重裝載可以作為觸發CTU,CTU產生ADC命令請求去ADC轉換。CTU操作的模式有觸發模式和順序模式。我們采用觸發模式。
這里需要注意的是CTU的FIFO是不同的,0和1用來做快速采樣,而2和3用來配置作為低速采樣。
配置和開發
在S32DS開發環境中配置CTU和ADC,
ADC配置
更多參數的配置請參考收據手冊,這個需要認真閱讀手冊配置,可以參考例程。配置完成后,生成驅動,如果沒有錯的話,我們這里需要完成CTU的中斷去獲取ADC值。
驅動添加
需要初始化ADC和CTU,添加相應的代碼,使用生成的配置結構體
然后還需要完成CTU的中斷,
轉換結果的獲取有兩種API, 可以根據自己需要選擇,第一種API
/ FUNCTION *********************************************************************
- Function Name : CTU_DRV_GetConvData
- Description : This function returns the conversion data result aligned according
- to the alignment parameter.
- Implements : CTU_DRV_GetConvData_Activity
- END**************************************************************************/
uint16_t CTU_DRV_GetConvData (const uint32_t instance, const uint32_t fifoIdx, ctu_data_align_t alignment)
第二種API
/ FUNCTION *********************************************************************
- Function Name : CTU_DRV_GetConvResult
- Description : This function gets the full conversion result information, with
- the conversion data aligned according to the alignment parameter.
- Implements : CTU_DRV_GetConvResult_Activity
- END**************************************************************************/
void CTU_DRV_GetConvResult (const uint32_t instance, const uint32_t fifoIdx, const ctu_data_align_t alignment, ctu_conv_result_t * const result)
兩種都可以正確獲取到ADC值,獲取到原始值以后還需要做一些濾波來處理,這些流給大家去實現,因為你的應用不一樣,可能采取的濾波算法也不一樣。有時候還需要采用多種濾波算法實現對不同干擾的抗擾能力。
測試
添加完代碼,沒有問題后就可以編譯下載到板子上調試觀察,可以看到,正確實現了電流的多路采樣,可以采集多組值,測量下這里就給大家簡單觀察下打斷點采集到的結果。
同時CTU還有其他一些觸發源,大家也可以實驗一下,也可以軟件觸發。但在電機控制中,為了達到同步和快速的電流采樣,都是用觸發同步采樣,提供給算法實施閉環控制。有興趣的可以多研究研究。
-
恩智浦
+關注
關注
14文章
5830瀏覽量
106709 -
adc
+關注
關注
98文章
6438瀏覽量
544113 -
電機
+關注
關注
142文章
8935瀏覽量
145109 -
FOC
+關注
關注
20文章
318瀏覽量
42665 -
MPC5744P
+關注
關注
1文章
9瀏覽量
8147
發布評論請先 登錄
相關推薦
評論