版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
三相BLDC無刷直流電機(jī)的無傳感器控制我想買阿莫的調(diào)試板做上面的試驗(yàn),MCU用ATMEL的,看了幾天PIC關(guān)于這個(gè)問題的實(shí)現(xiàn)方法,楞沒看懂,也不敢買調(diào)試板了。有大哥指點(diǎn)下嗎?先謝了。BEMF過零點(diǎn)檢測實(shí)現(xiàn)方法,電壓開環(huán)PWM控制電機(jī)速度,啟動(dòng)制動(dòng)平穩(wěn),母線電壓48V。就這么簡單。附件是DSPIC對(duì)于直流無刷BLDC無傳感器電機(jī)控制的應(yīng)用筆記(中文)和源代碼:點(diǎn)擊此處打開armok01104153.pdf點(diǎn)擊此處下載armok01104154.zipBEMF是經(jīng)典的設(shè)計(jì),一般控制有電壓環(huán),也有電流環(huán),多半是使用開環(huán)來預(yù)轉(zhuǎn),先算出轉(zhuǎn)子位置,然后使用閉環(huán)PI來做速度調(diào)節(jié),有些會(huì)有PID來控制。要做BLDC最好PWM是六路的,有死區(qū)控制的,帶上下橋臂輸出。我現(xiàn)在有幾個(gè)這樣的客戶我在搞技術(shù)支持,不過使用的是ST7MC,也有用dsPIC4011,不過我ST7MC用的多寫。主要是用于BLDC的變頻控制。我有Microchip的dsPIC做的變頻空調(diào)應(yīng)用筆記,可惜,我暫時(shí)不能放出來。阿莫的調(diào)試板用ATMEL的MCU看你用的是那個(gè)型號(hào)了,我記得AVR有個(gè)專門用來做電機(jī)控制的MCU可以,可惜要自己寫PI,比較累。ST的你可以在他的網(wǎng)站上下載全部的代碼。還有dsp也可以做,你可到Freescale上找到BLDC的變頻控制筆記和代碼這是ST三相BLDC的變頻控制PI算法;/****************(c)2005STMicroelectronicsPROJECT:ST7MCdemokitCOMPILER:ST7METROWERKSC(HIWARE)/COSMICMODULE:regul.cLIBRARYVERSION:2.0CREATIONDATE:07.2003AUTHOR:FlorentCOSTE/MicrocontrollerApplicationLab/STHongKongDESCRIPTION:routineforclosedLOOPoperation******************************************************************************THESOFTWAREINCLUDEDINTHISFILEISFORGUIDANCEONLY.STMICROELECTRONICSSHALLNOTBEHELDLIABLEFORANYDIRECT,INDIRECTORCONSEQUENTIALDAMAGESWITHRESPECTTOANYCLAIMSARISINGFROMUSEOFTHISSOFTWARE.““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““******************************************************************************“““““““““““““““““““““““““““““““““““““““******************************************************************************/#include"version.h"#include"lib.h"#include"mtc.h"#include"regul.h"#include"ST7MC_hr.h"#include"it_ST7MC.h"#include"LinSCI.h"#include"MTC_Settings_Sensorless.h#defineError_slip_MAX(s16)2048#defineError_slip_MIN(s16)-2048#defineMTIM_MAX_FREQMTC_CLOCK/8//16Mhz/8->2Mhz// //Variables// statics32VoltageIntegralTerm;staticBOOLMaxPiOut,MinPiOut;volatileStep_sStep_Z[STEP_Z_BUFFER_SIZE];//bufferfilledwiththelast12Zsteptimes/* Mainprogram *//* ROUTINEName:Period_To_FrequencyDescription: ConvertStep_Zbufferinformation(electricalperiod)intoelectricalfrequency.Input/Output: none/u16(electricalfrequency,0.1Hzresolution)Comments: None */u16Period_To_Frequency(void){u32result;u16MZ_Temp;u8Ratio_Min,i;/**********************ComputeaverageMotorZStepPeriod************************““““““““/********///F=Fmtc/(MZREG.2Aratio)T=(MZREG.2Aratio)/FmtcRatio_Min=RATIO_MAX;//initRatio_MinwithmaxratioMZ_Temp=0;for(i=0;i<=STEP_Z_BUFFER_SIZE-1;i++)//checkmaxratioofbuffer{if(Step_Z[i].Ratio<Ratio_Min)Ratio_Min=Step_Z[i].Ratio;}//Ratio_MincontainsnowtheminratioofstoredvaluesinStep_Zbufferfor(i=0;i<=STEP_Z_BUFFER_SIZE-1;i++)//Computeaverageperiod{if(Step_Z[i].Ratio==Ratio_Min)MZ_Temp+=(u8)(Step_Z[i].StepTime);elseMZ_Temp+=((Step_Z[i].StepTime)vv((u8)(Step_Z[i].Ratio-Ratio_Min)));}/*****Convertperiodtofrequency*****/result=(10*MTIM_MAX_FREQ)/MZ_Temp;result>>=(u8)(Ratio_Min);//divideby2Aratioreturn((u16)(result));}/*InitialisationofIntegraltermofPI*/voidInit_PI(void){#if(DRIVING_MODE==VOLTAGE_MODE)VoltageIntegralTerm=(((ramp_MCPUH<<8)+ramp_MCPUL)>>3)*65536;VoltageIntegralTerm/=PWM_FREQUENCY;#elseVoltageIntegralTerm=(((ramp_MCPVH<<8)+ramp_MCPVL)>>3)*65536;VoltageIntegralTerm/=PWM_FREQUENCY;#endif}/* ROUTINEName:regul_PIDescription: ComputePIoutput(0(PImin)to1023(PImax))accordingtoKi,Kp,samplingtime,andtargetelectricalfrequency.Input/Output: u16/u16(PIoutput(10bitsvalue)/targetelectricalfrequency,0.1Hzresolution)Comments: None */u16regul_PI(u16Target_Freq)//return10bitsvalue{s32Voltage_slip_s32,DeltaVoltage_slip_s32,Newpi_32;s16NewPIoutput,Error_slip,Error;u16output;/““““““““““““““““““““““,~1 iTATii“““““““““““““““““““““““““““““““““““““““//**********************ComputePIoutnut***************************************/Freq_Motor=(u16)Period_To_Frequency();Error=(s16)(Target_Freq-Freq_Motor);//Freq_Motorisactuallythesteptimebetween6Zeventsif(Error>(s16)(Error_slip_MAX)){Error_slip=Error_slip_MAX;}elseif(Error<(s16)(Error_slip_MIN)){Error_slip=Error_slip_MIN;}elseError_slip=(s16)Error;/““““““““““““““““““““““,~1 1I1 J?11““““““““““““““““““““““““““““““““//**********************computeProportionalterm********************************/Voltage_slip_s32=Kp*(s32)Error_slip;/““““““““““““““““““““““,~1 jT1i““““““““““““““““““““““““““““““““““““/,**********************computeIntegralterm************************************///Ifmodulationismaximum,integraltermmustbe"frozen"DeltaVoltage_slip_s32=(Ki*SAMPLING_TIME*(s32)Error_slip)/256;if(((Error_slip>0)&&!MaxPiOut)II((Error_slip<0)&&!MinPiOut)){if((VOltageIntegralTerm>=0)&&(DeltaVOltage_slip_s32>=0)){if(((u32)VOltageIntegralTerm+(u32)DeltaVOltage_slip_s32)>S32_MAX)VoltageIntegralTerm=S32_MAX;//AvoidIntTermOverflowelseVoltageIntegralTerm+=DeltaMltage_slip_s32;//"integral"output}elseif((VoltageIntegralTerm<0)&&(DeltaV?ltage_slip_s32<0)){if(((u32)VoltageIntegralTerm+(u32)DeltaV)ltage_slip_s32)<=S32_MAX)VoltageIntegralTerm=S32_MIN;//AvoidIntTermOverflowelseVoltageIntegralTerm+=DeltaV?ltage_slip_s32;//"integral"output}elseVoltageIntegralTerm+=DeltaV?ltage_slip_s32;//"integral"output}if((VoltageIntegralTerm>=0)&&(V)ltage_slip_s32>=0)){if(((u32)VoltageIntegralTerm+(u32)Voltage_slip_s32)>S32_MAX)Newpi_32=S32_MAX;//AvoidIntTermOverflowelseNewpi_32=(VoltageIntegralTerm+V)ltage_slip_s32);//output}elseif((VoltageIntegralTerm<0)&&(Mltage_slip_s32<0)){if(((u32)VoltageIntegralTerm+(u32)V)ltage_slip_s32)<=S32_MAX)Newpi_32=S32_MIN;//AvoidIntTermOverflowelseNewpi_32=(VoltageIntegralTerm+V)ltage_slip_s32);//output}elseNewpi_32=(VoltageIntegralTerm+Voltage_slip_s32);//output#if(DRIVING_MODE==VOLTAGE_MODE)NewPIoutput=(s16)(Newpi_32/64);#elseNewPIoutput=(s16)(Newpi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《研究生英語精讀教程》課后翻譯題答案
- 藥用碘市場分析及投資價(jià)值研究報(bào)告
- 防曬制劑項(xiàng)目運(yùn)營指導(dǎo)方案
- 記事本細(xì)分市場深度研究報(bào)告
- 角形飲水器細(xì)分市場深度研究報(bào)告
- 蒸汽掛燙機(jī)商業(yè)機(jī)會(huì)挖掘與戰(zhàn)略布局策略研究報(bào)告
- 2024國際專有技術(shù)轉(zhuǎn)讓許可證合同范本
- 產(chǎn)品設(shè)計(jì)畢設(shè)計(jì)劃書
- 彩剛合同書范本
- 北京市租房合同法
- 聲樂課教學(xué)課件
- 新課標(biāo)下初中歷史教學(xué)中學(xué)生歷史素養(yǎng)的培養(yǎng)
- 供應(yīng)商變更申請表
- VMware虛擬化平臺(tái)巡檢報(bào)告模版
- 山東省濰坊市2023年八年級(jí)上學(xué)期期中數(shù)學(xué)試題(附答案)
- 醫(yī)學(xué)微生物學(xué)課程思政改革的實(shí)踐與思考
- 干部任免審批表填寫樣板
- 江蘇某消防指揮中心工程監(jiān)理大綱
- 損失索賠函格式(九篇)
- 妊娠期高血壓疾病診治指南2020完整版
- 全國民用爆炸物品信息管理系統(tǒng)-新剖析課件
評(píng)論
0/150
提交評(píng)論