基于DSP芯片TMS320F240的步進(jìn)電機(jī)調(diào)焦系統(tǒng)設(shè)計
{ flag++; //數(shù)組行標(biāo)志加1
steptotal=0; //電機(jī)轉(zhuǎn)動步數(shù)清零
step=table[++j]; //更新電機(jī)運行步數(shù)數(shù)據(jù)
*T1PR=table[++j]; //更新定時器定時周期
everystep=table[++j]; //更新需要進(jìn)入定時器中斷次數(shù)
*T1CNT=0; } //從零開始計時,啟動定時器
i++; //循環(huán)標(biāo)志位加1
if(i==1) *PADATDIR=0xff05; // 提供下降沿,正轉(zhuǎn),不脫機(jī)
else{ if (i==everystep)
{ i=0;
steptotal++; } //電機(jī)每轉(zhuǎn)一步標(biāo)志位加1
else
*PADATDIR=0xff04; //CP腳為高電平為產(chǎn)生下降沿準(zhǔn)備,正轉(zhuǎn),不脫機(jī)
}
*IMR=0x02; //開定時器中斷
enable(); //開啟F240總中斷
}
}
4 實驗結(jié)果及其注意事項
電機(jī)轉(zhuǎn)動的步數(shù)和時間坐標(biāo)都是由主機(jī)端通過MATLAB仿真取得的,因此實際調(diào)焦曲線的與理想曲線的擬合程度大大提高了;步進(jìn)電機(jī)控制器采用四相八拍運行 方式,并且由DSP進(jìn)行控制,步進(jìn)機(jī)精確地按照步進(jìn)角(0.9度)轉(zhuǎn)動。實際應(yīng)用該調(diào)焦系統(tǒng)調(diào)整攝影鏡頭,拍攝運動軌跡已知的目標(biāo),達(dá)到了滿意的效果。
定時器時間的準(zhǔn)確計算對高精度地測量一些物理量是非常重要的。當(dāng)需要定時器計算的時間比較長時,定時器計數(shù)還不夠,這時就需要利用定時器自身的中斷,即短時間定時一到就進(jìn)入定時器中斷服務(wù)子程序,利用進(jìn)入的次數(shù)來達(dá)到計時的目的。
5 結(jié)束語
本文對基于DSPTMS320F240利用步進(jìn)驅(qū)動器UP-4HB03M控制步進(jìn)電機(jī)進(jìn)行了研究,改進(jìn)了傳統(tǒng)的工程中調(diào)焦方式,精度大大提高, 經(jīng)測試系統(tǒng)運行穩(wěn)定,由于DSP操作方便,而且采用C語言方式編寫,易于日后的代碼修改和程序移植。
評論