當攝影鏡頭拍攝運動的物體時,如果運動軌跡已知,攝影鏡頭必須對焦距進行調(diào)節(jié),從而調(diào)整目標的像點的位置,使得目標始終位于焦點上,達到實時拍攝的 目標,傳統(tǒng)變焦大多是利用機械裝置完成的,比如凸輪機構(gòu),齒條機構(gòu);但是由于機械加工工藝復雜,其精度、平穩(wěn)性和靈活性都難以滿足要求,為此本系統(tǒng)利用步進電機帶動攝像機完成變焦,由于步進點機精確地按照步進角轉(zhuǎn)動,并且由DSP進行控制,從而滿足了以上機械裝置無法完成地性能要求。實驗結(jié)果表明,本系統(tǒng) 調(diào)焦曲線與理想曲線擬合度較好,拍攝已知運動軌跡的目標,達到了滿意效果。
1 調(diào)焦系統(tǒng)設(shè)計思想
在光學系統(tǒng)中,采用一組物鏡,調(diào)節(jié)軸向位移,物鏡光學系統(tǒng)物象關(guān)系是:
X′=f2 / X
其中 X′—— 像距(目標像平面到主焦平面的距離);
X —— 物距(目標距離);
f —— 光學系統(tǒng)焦距 f=常量,像距X′與物距X成反比關(guān)系。
利用已知的攝影調(diào)焦曲線確定步進電機轉(zhuǎn)動所需的步數(shù)和時間坐標關(guān)系,存入F240數(shù)據(jù)存儲器中,利用F240運算速度快、片載FLASH存儲器大 (16K字)的特點,準確控制步進電機控制器驅(qū)動步進電機運轉(zhuǎn),通過機械裝置實現(xiàn)攝影鏡頭焦距按照規(guī)定的曲線變化,從而實現(xiàn)實時拍攝運動物體的功能。
2 硬件設(shè)計部分
2.1步進驅(qū)動器UP-4HB03M簡介
UP-4HB03M是北京聯(lián)太工貿(mào)有限公司生產(chǎn)的專用步進電機驅(qū)動器,4HBO3M適用于兩相六出頭混合式及四相混合式步進電機,PWM恒流控制方 式;可選擇半步(四相八拍)或者16細分兩種工作方式;驅(qū)動電流為0.3A連續(xù)可調(diào),并且具有自動半流鎖定功能;脫機控制及其相位檢測功能;所有控制信號 與功率驅(qū)動部分光電隔離;散熱外殼與驅(qū)動器內(nèi)部完全電絕緣。
2.2 TMS320F240簡介
TMS320F240(以下簡稱F240)由DSP內(nèi)核和片內(nèi)外設(shè)組成。由于DSP內(nèi)核具有較快的計算和響應處理速度,可以應付高速應用的要 求,同時也為控制軟件的設(shè)計提供了更加有力的支持,使控制系統(tǒng)能夠完成更加復雜的功能、實現(xiàn)更好的控制效果。同時TMS320F240具有豐富的片內(nèi)外 設(shè),包括16路10位A/D轉(zhuǎn)換器、多個可編程的多路復用I/O引腳、硬件UART以及SPI總線等。特別是TMS320F240片內(nèi)設(shè)置了一個事件管理 器(EPA),可以提供6路全比較PWM通道,能方便地實現(xiàn)各種PWM波形的發(fā)生。這里使用F240主要是考慮F240速度快以及有豐富的I/O引腳資 源;程序燒寫方便,利于更新曲線坐標以及修改程序;性價比較高等因素。
2.3 硬件設(shè)計
本系統(tǒng)的硬件接口電路如圖1所示,74ls14為反相器,接到DSP的I/O口以提高其驅(qū)動能力,CH1是一個八腳的插頭,用于外接步進機的各項繞 組。步進電機以及攝影鏡頭部分從略。工作過程如下:首先獲得攝影調(diào)焦曲線,利用MATLAB軟件,得出時間位移坐標,再換算成步進電機轉(zhuǎn)動所需的步數(shù)時間 坐標,以數(shù)組的行式保存下來。在F240的數(shù)據(jù)存儲器中開辟空間存儲步數(shù)時間數(shù)組,利用F240定時器完成計時,I/O口輸出相應寬度的脈沖信號,驅(qū)動步 進電機驅(qū)動器UP-4HB03M,其中CP為步進脈沖輸入端;FREE為脫機端,高電平有效,F(xiàn)REE=1時,電機處于釋放狀態(tài);V/D為方向控制端,高 低電平分別控制電機正反轉(zhuǎn)。
圖1 硬件接口電路圖
3 軟件設(shè)計:
由于電機的運行和轉(zhuǎn)動步數(shù)以及兩步之間間隔時間有關(guān)系,故采用計時器計時的方法來計算時間,F(xiàn)240初始化程序如下:
void Initcpu(void) //初始化F240程序
*CKCR1=0x69; // 外部輸入晶振為20MHZ,F(xiàn)240工作在20MHZ;
*CKCR0=0xc3; // 系統(tǒng)時鐘為10MHZ;
*SYSCR=0x4000; } // F240輸出頻率CLKOUT=IOPC1(I/O管腳);
F240初始化后,計時器的基本計時時間為0.1?s,考慮到F240定時器是16位計數(shù)器,這難以滿足計算長時間的需求,所以采用通 過計算進入定時器中斷的次數(shù)來計算長時間的方法。例如設(shè)置定時器周期寄存器值為800即*T1PR=800,那么進一次定時器中斷時間為800*0.1= 80?s如果計時為1s的話,則只需進12500次中斷即可,以此類推;故定義的數(shù)組內(nèi)容表示如下:
int table[ ]= { 25,800,255, //第1行
。 . 。 . 。 . } //第n行
其中25為電機步數(shù);800為定時器周期寄存器值;255每兩步間所要進入定時器中斷的次數(shù)。實現(xiàn)準確地控制步進電機控制器關(guān)鍵在于由F240 I/O口產(chǎn)生規(guī)定的脈沖信號,提供給步進電機控制器從而驅(qū)動步進電機正確轉(zhuǎn)動,程序中包括F240初始化、電機正轉(zhuǎn)、等待、電機反轉(zhuǎn)幾個程序模塊。程序流 程圖如圖2所示:
圖2 程序流程圖
以下是實現(xiàn)電機正轉(zhuǎn)的程序。程序中變量解釋:step:用于存儲數(shù)組中電機步數(shù);every step:用于存儲數(shù)組中每兩步間所要進定時中斷的次數(shù);flag:數(shù)組行數(shù)標志(程序假設(shè)需正轉(zhuǎn)36組)。
void interrupt INT2_ISR()
{ while (*EVIVRA==0x0027) //是否是定時器中斷
{ if(flag<36) //用來完成正轉(zhuǎn)
{
if (steptotal==step) //是否走完數(shù)組每行規(guī)定的步數(shù)
{ flag++; //數(shù)組行標志加1
steptotal=0; //電機轉(zhuǎn)動步數(shù)清零
step=table[++j]; //更新電機運行步數(shù)數(shù)據(jù)
*T1PR=table[++j]; //更新定時器定時周期
everystep=table[++j]; //更新需要進入定時器中斷次數(shù)
*T1CNT=0; } //從零開始計時,啟動定時器
i++; //循環(huán)標志位加1
if(i==1) *PADATDIR=0xff05; // 提供下降沿,正轉(zhuǎn),不脫機
else{ if (i==everystep)
{ i=0;
steptotal++; } //電機每轉(zhuǎn)一步標志位加1
else
*PADATDIR=0xff04; //CP腳為高電平為產(chǎn)生下降沿準備,正轉(zhuǎn),不脫機
}
*IMR=0x02; //開定時器中斷
enable(); //開啟F240總中斷
}
}
4 實驗結(jié)果及其注意事項
電機轉(zhuǎn)動的步數(shù)和時間坐標都是由主機端通過MATLAB仿真取得的,因此實際調(diào)焦曲線的與理想曲線的擬合程度大大提高了;步進電機控制器采用四相八拍運行 方式,并且由DSP進行控制,步進機精確地按照步進角(0.9度)轉(zhuǎn)動。實際應用該調(diào)焦系統(tǒng)調(diào)整攝影鏡頭,拍攝運動軌跡已知的目標,達到了滿意的效果。
定時器時間的準確計算對高精度地測量一些物理量是非常重要的。當需要定時器計算的時間比較長時,定時器計數(shù)還不夠,這時就需要利用定時器自身的中斷,即短時間定時一到就進入定時器中斷服務(wù)子程序,利用進入的次數(shù)來達到計時的目的。
5 結(jié)束語
本文對基于DSPTMS320F240利用步進驅(qū)動器UP-4HB03M控制步進電機進行了研究,改進了傳統(tǒng)的工程中調(diào)焦方式,精度大大提高, 經(jīng)測試系統(tǒng)運行穩(wěn)定,由于DSP操作方便,而且采用C語言方式編寫,易于日后的代碼修改和程序移植。
-
驅(qū)動器
+關(guān)注
關(guān)注
53文章
8306瀏覽量
147255 -
攝像機
+關(guān)注
關(guān)注
3文章
1629瀏覽量
60406 -
步進電機
+關(guān)注
關(guān)注
152文章
3121瀏覽量
147956
發(fā)布評論請先 登錄
相關(guān)推薦
網(wǎng)絡(luò)攝像機是什么意思
網(wǎng)絡(luò)攝像機是什么?
攝像機同步方式
PWM電流驅(qū)動的雙極低功耗步進電機驅(qū)動器BD60223FP
礦用攝像機嵌入式CAN總線遠程控制有什么用?
網(wǎng)絡(luò)攝像機與模擬攝像機的區(qū)別是什么
MS41908M 網(wǎng)絡(luò)攝像機·監(jiān)控攝像機用鏡頭驅(qū)動芯片(內(nèi)置光圈控制)
5V攝像機鏡頭驅(qū)動,小云臺驅(qū)動,低噪步進電機驅(qū)動芯片GC6209,應用于攝像機 機器人等產(chǎn)品中
基于TMS320F240控制步進電機的調(diào)焦系統(tǒng)設(shè)計
利用單片機實現(xiàn)嵌入式攝像機二進制命令配置系統(tǒng)的設(shè)計
![<b class='flag-5'>利用</b>單片<b class='flag-5'>機</b><b class='flag-5'>實現(xiàn)</b>嵌入式<b class='flag-5'>攝像機</b>二進制命令配置<b class='flag-5'>系統(tǒng)</b>的設(shè)計](https://file.elecfans.com/web1/M00/9E/B0/o4YBAF0-VOCAWAm3AABennl3MRQ499.jpg)
將步進電機驅(qū)動器應用在監(jiān)控攝像機中
![將<b class='flag-5'>步進</b>電機<b class='flag-5'>驅(qū)動器</b>應用在監(jiān)控<b class='flag-5'>攝像機</b>中](https://file.elecfans.com/web1/M00/85/FA/o4YBAFx4kHOAX-BLAAA5OeqoHYY279.jpg)
基于DSP和UP-4HB03M驅(qū)動器實現(xiàn)步進電機調(diào)焦系統(tǒng)的設(shè)計
![基于DSP和UP-4HB03M<b class='flag-5'>驅(qū)動器</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>步進</b>電機<b class='flag-5'>調(diào)焦</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計](https://file.elecfans.com/web1/M00/BB/65/pIYBAF6jl8-ANLaBAADC1yA1H_Y605.png)
ADDI9023:CCD攝像機數(shù)據(jù)表的垂直驅(qū)動器
![ADDI9023:CCD<b class='flag-5'>攝像機</b>數(shù)據(jù)表的垂直<b class='flag-5'>驅(qū)動器</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
MS41908M—網(wǎng)絡(luò)攝像機·監(jiān)控攝像機用鏡頭驅(qū)動芯片(內(nèi)置光圈控制)
![MS41908M—網(wǎng)絡(luò)<b class='flag-5'>攝像機</b>·監(jiān)控<b class='flag-5'>攝像機</b>用鏡頭<b class='flag-5'>驅(qū)動</b>芯片(內(nèi)置光圈控制)](https://file.elecfans.com/web2/M00/A6/00/pYYBAGRiEoSATrJjAAGJ7z5F9io035.png)
MS41908M應用于網(wǎng)絡(luò)攝像機·監(jiān)控攝像機用鏡頭驅(qū)動芯片
![MS41908M應用于網(wǎng)絡(luò)<b class='flag-5'>攝像機</b>·監(jiān)控<b class='flag-5'>攝像機</b>用鏡頭<b class='flag-5'>驅(qū)動</b>芯片](https://file1.elecfans.com/web2/M00/8D/D7/wKgaomTAsDyAYWr2AAEEwWbOWhA741.png)
評論