2021-08-12 17:59:59 索煒達(dá)電子 4144
項(xiàng)目編號(hào):E5
文件大小:61M
源碼說(shuō)明:帶中文注釋
開(kāi)發(fā)環(huán)境:C編譯器
簡(jiǎn)要概述:
基于XMC4400F100K512的PMSM無(wú)位置傳感器驅(qū)動(dòng)控制程序
引腳定義
注:Sensorless FOC 不需要使用位置傳感器接口
軟件設(shè)計(jì)
底層驅(qū)動(dòng) :
CCU8 :
生成3路帶死區(qū)的互補(bǔ)的PWM信號(hào)
一路專用的PWM用于觸發(fā)采樣和PWM占空比更新
VADC :
VADC0 G0、G2、G3三組同步采樣(G0主 G2,G3從)
POSIF :
獨(dú)立多通道模式用于保護(hù)封波
USIC :
ASC協(xié)議UART模式,用于和上位機(jī)通信
DAC:
DAC1輸出用于觀測(cè)器和角度的實(shí)時(shí)Debug
主要中斷:
CCU80_0_IRQHandler:
更新下一個(gè)62.5us內(nèi)的PWM信號(hào)占空比
處理初始定位和閉環(huán)I/F啟動(dòng)相關(guān)流程
VADC0_G0_0_IRQHandler:
三相電流重構(gòu)
觀測(cè)器反電勢(shì)估計(jì)
鎖相環(huán)角度估計(jì)與轉(zhuǎn)速估計(jì)
I/F-FOC切換相關(guān)流程
dq軸電流環(huán)運(yùn)算
虛擬示波器Flash存儲(chǔ)
SysTick_Handler:
轉(zhuǎn)速環(huán)運(yùn)算
上位機(jī)顯示
虛擬示波器Flash數(shù)據(jù)顯示
Control_Loop_Mode 1:電流單閉環(huán) 2:轉(zhuǎn)速電流雙閉環(huán)
文件列表:
目錄│文件列表:
├ 1.文檔
│ └ 說(shuō)明.docx
└ 2.源碼
└ sensorless_foc
│ EventRecorderStub.scvd
│ JLinkSettings.ini
│ KEILCLEAN.bat
│ MotorTest.zip
│ PMSM_FOC.uvoptx
│ PMSM_FOC.uvprojx
├ DEBUG
│ │ Agreement.c
│ │ Agreement.h
│ │ DAC.c
│ │ DAC.h
│ │ UART.c
│ └ UART.h
├ FOC_Control
│ │ Call_Functions.c
│ │ Call_Functions.h
│ │ INT_ISR.c
│ │ INT_ISR.h
│ │ Motor_Functions.h
│ │ PI_Control.c
│ │ PI_Control.h
│ └ SVPWM.h
├ Main
│ └ main.c
├ Objects
│ └ PMSM_FOC.hex
├ Readme
│ └ README.txt
├ RTE
│ ├ Device
│ │ ├ XMC4400-F100x512
│ │ │ │ RTE_Device.h
│ │ │ │ startup_XMC4400.s
│ │ │ └ system_XMC4400.c
│ │ └ XMC4400-F64x512
│ │ │ RTE_Device.h
│ │ │ startup_XMC4400.s
│ │ └ system_XMC4400.c
│ └ _Target_1
│ └ RTE_Components.h
├ Sensorless_Lib
│ │ PMSM_FOC.lib
│ └ SVPWM.lib
└ SYS_Init
│ MCU_Initialize.c
│ MCU_Initialize.h
│ VAR_Initialize.c
└ VAR_Initialize.h