文獻(xiàn)標(biāo)識(shí)碼: B
文章編號(hào): 0258-7998(2010)07-0105-04
目前的光電跟蹤伺服系統(tǒng)大都采用PC/104結(jié)構(gòu),,它是通過主控計(jì)算機(jī)完成對(duì)目標(biāo)捕獲跟蹤功能,但是組成實(shí)際應(yīng)用的跟蹤伺服系統(tǒng)還要疊加多塊板卡,,不僅增大了系統(tǒng)體積,,而且精度難以提高,花費(fèi)昂貴[1],。而DSP正以其高速的數(shù)據(jù)處理能力,,豐富的片內(nèi)外資源、方便的開發(fā)環(huán)境,,以及低廉的價(jià)格在越來越多的計(jì)算控制系統(tǒng)中得到應(yīng)用 [2],。總線化是工業(yè)控制系統(tǒng)的一個(gè)發(fā)展方向,,它在可適用范圍,、可擴(kuò)展性、可維護(hù)性以及抗故障能力等方面較集中式控制系統(tǒng)有明顯的優(yōu)越性[3],。因此,,本文結(jié)合光電跟蹤伺服系統(tǒng)的特點(diǎn),提出一種基于DSP與CAN總線結(jié)構(gòu)的伺服控制器,。
在高速光電跟蹤系統(tǒng)中,,對(duì)伺服系統(tǒng)的實(shí)時(shí)性、精確度和穩(wěn)定性都有很高的要求,。實(shí)際應(yīng)用中環(huán)境比較復(fù)雜,,有大量的信息傳遞,并且需要對(duì)電機(jī)轉(zhuǎn)速實(shí)行精確控制,,從而對(duì)伺服控制器的多路通信能力,、快速運(yùn)算能力和抗干擾能力都有較高的要求。由于FPGA具有高度靈活的可配置性和邏輯時(shí)序控制能力[4],,所以這里采用Altera公司Cyclone系列FPGA為輔助處理器,,設(shè)計(jì)了以TI公司的32位定點(diǎn)數(shù)字信號(hào)處理器TMS320F2812為核心, 通過CAN現(xiàn)場(chǎng)總線與上位機(jī)通信的跟蹤伺服控制器,,并綜合闡述了該控制器的功能,、硬件設(shè)計(jì)和軟件流程。該控制器具有兩路雙極性模擬信號(hào)輸入,,兩路單極性模擬信號(hào)輸入,,四路雙極性模擬信號(hào)輸出,可滿足控制兩個(gè)三相IGBT的12路PWM輸出,,一路CAN總線,,三路RS422和一路RS232串行通信口,具有較強(qiáng)的運(yùn)算能力和數(shù)據(jù)通信能力,是良好的數(shù)字控制系統(tǒng)實(shí)驗(yàn)平臺(tái),。
1 總體結(jié)構(gòu)設(shè)計(jì)
TMS320F2812是一款專為電機(jī)控制所設(shè)計(jì)的芯片,,片上集成了豐富的片內(nèi)外設(shè)資源。設(shè)計(jì)時(shí)充分利用了這一特點(diǎn),,簡(jiǎn)化了外圍電路,,降低了系統(tǒng)的功耗。根據(jù)電路中各部分所實(shí)現(xiàn)的功能,,將整個(gè)控制器大體分為三個(gè)部分:處理器部分,、外圍通信接口部分和模擬信號(hào)處理部分,。控制器的總體硬件結(jié)構(gòu)圖如圖1所示,。
圖中,,處理器由DSP和FPGA組成,完成板上主要的信息處理,。上位機(jī)通過CAN總線向控制器發(fā)送指令,,并能及時(shí)獲得工作狀態(tài)等反饋信息。位置信號(hào)與位置增量信號(hào)分別通過三個(gè)RS422通信口傳給DSP,,由DSP作相應(yīng)處理,。兩軸的速度和電流反饋信號(hào)分別由板上的雙極性和單極性模擬電路采樣得到。DSP與FPGA之間通過DSP的系統(tǒng)外部接口(XINTF)進(jìn)行數(shù)據(jù)的讀寫,。D/A轉(zhuǎn)換器的控制是通過FPGA內(nèi)部的D/A轉(zhuǎn)換接口模塊接收DSP輸出的數(shù)字量實(shí)現(xiàn)的,;計(jì)算機(jī)調(diào)試接口采用了一路RS232。
2 硬件電路設(shè)計(jì)
2.1 DSP與FPGA模塊
32位定點(diǎn)數(shù)字信號(hào)處理器TMS320F21812整合了DSP和微控制器的最佳性能,,能夠在一個(gè)周期內(nèi)完成32×32位的乘法運(yùn)算,,或兩個(gè)16×16位乘法累加運(yùn)算,處理速度最高可達(dá)150 MIPS,。它采用高性能靜態(tài)CMOS技術(shù),,內(nèi)核電壓為1.8 V@135 MHz, 1.9 V@150 MHz, I/O端口電壓3.3 V[5,6]。其先進(jìn)的內(nèi)部和外設(shè)結(jié)構(gòu)使得該處理器特別適合電機(jī)及其他運(yùn)動(dòng)控制應(yīng)用,,能夠真正實(shí)現(xiàn)單片控制,為電機(jī)的伺服控制提供良好的控制功能[7],。
FPGA選型時(shí)綜合考慮片上邏輯單元和用戶I/O口數(shù)量,以及功能擴(kuò)展的需要,。這里根據(jù)前期仿真結(jié)果選用Altera公司Cyclone系列的EP1C3T144I7,它具有2 910個(gè)邏輯單元,,104個(gè)用戶I/O和1個(gè)鎖相環(huán),內(nèi)核電壓1.5 V,,具有低成本,、低功耗的特點(diǎn)[8,9]。由于FPGA具有高速并行處理能力,,保證了系統(tǒng)的同步性[10],。它的I/O口支持3.3 V LVTTL電平,與DSP管腳電平兼容,,因此不用進(jìn)行電平轉(zhuǎn)換,,可直接連接,使用方便,。
DSP的功能主要通過軟件實(shí)現(xiàn),,在此主要實(shí)現(xiàn)接收上位機(jī)指令,完成位置環(huán)和速度環(huán)反饋的雙閉環(huán)PID控制算法,,產(chǎn)生PWM輸出,。根據(jù)系統(tǒng)采樣頻率調(diào)整事件管理器的定時(shí)器控制寄存器的控制字來設(shè)定PWM工作方式和頻率,,通過調(diào)整比較寄存器的數(shù)值來改變PWM的占空比,根據(jù)功率驅(qū)動(dòng)電路的驅(qū)動(dòng)芯片設(shè)置死區(qū)控制寄存器的數(shù)值,,以及來調(diào)整死區(qū)時(shí)間,,通過專用的PWM輸出口輸出占空比可調(diào)的帶有死區(qū)的PWM信號(hào)[11]。
DSP與FPGA之間實(shí)時(shí)準(zhǔn)確的數(shù)據(jù)傳遞是系統(tǒng)成功的一個(gè)關(guān)鍵因素,。這里選用DSP上的系統(tǒng)外部接口(XINTF)與FPGA連接,在FGPA內(nèi)部配置一個(gè)與DSP讀寫時(shí)序相對(duì)應(yīng)的數(shù)據(jù)讀寫接口,。實(shí)驗(yàn)證明,,這是一種穩(wěn)定有效的方法。
2.2 CAN總線及其他通信接口模塊
CAN總線具有低成本,、易開發(fā),、實(shí)時(shí)性好以及抗噪聲性能好等優(yōu)點(diǎn),傳輸速率最高為1 Mb/s,,最大傳輸距離為10 km(5 kb/s),。CAN的每幀信息都有CRC校驗(yàn)及其他檢錯(cuò)措施,保證了數(shù)據(jù)出錯(cuò)率低,,同時(shí)降低了應(yīng)用程序的復(fù)雜程度,,從而使通信更加可靠。現(xiàn)在它逐步發(fā)展成為用于工業(yè)領(lǐng)域控制,、通信的現(xiàn)場(chǎng)總線[12],。
由于實(shí)際工作環(huán)境較為復(fù)雜,所以選用了抗干擾能力強(qiáng)的CAN總線作為與上位機(jī)的通信方式,,TMS320F2812內(nèi)部集成了一個(gè)eCAN模塊,,支持標(biāo)準(zhǔn)的CAN2.0B協(xié)議,只需加相應(yīng)的CAN收發(fā)器外圍電路就可以輕松實(shí)現(xiàn),。DSP芯片的CAN總線控制器與CAN物理總線的接口選用PCA82C250驅(qū)動(dòng)器芯片,。為了增強(qiáng)抗干擾能力,保護(hù)CAN控制器,在TMS320F2812與PCA82C250之間加高速光隔。光隔離器采用6N137芯片,,其速度為10 MHz,。硬件電路如圖2所示。
其他通信接口模塊包括一路RS232和三路RS422,。設(shè)計(jì)時(shí)為保證與系統(tǒng)的其他部分匹配,,都采用了通常的工業(yè)標(biāo)準(zhǔn)。
2.3 A/D,、D/A轉(zhuǎn)換模塊
根據(jù)轉(zhuǎn)換通道數(shù),、精度和轉(zhuǎn)換速度,D/A轉(zhuǎn)換芯片選擇BURR-BROWN公司的DAC7614,。它是12位串行數(shù)模轉(zhuǎn)換器,,四路模擬輸出,,功耗只有20 mW,單次轉(zhuǎn)換建立時(shí)間10 μs。使用單極性輸出時(shí),,采用+5 V供電,;雙極性輸出時(shí),采用±5 V供電,。在此需要用到雙極性輸出,,基準(zhǔn)電壓源選用LM336-2.5,負(fù)電壓基準(zhǔn)采用反相放大方式產(chǎn)生,。為避免外電路對(duì)板內(nèi)數(shù)字電路的干擾,,需要對(duì)數(shù)字部分進(jìn)行光電隔離。
A/D轉(zhuǎn)換采用TMS320F2812內(nèi)部集成的12位高速A/D轉(zhuǎn)換器,。由于它的A/D轉(zhuǎn)換通道只能輸入電壓范圍在0~3 V以內(nèi)的模擬信號(hào),,因此需要對(duì)輸入的雙極性電壓信號(hào)進(jìn)行處理,具體電路如圖3所示,。圖中D1和D3兩個(gè)二極管將輸入到DSP的電壓鉗制在0~3.3 V以內(nèi),,這樣有效地保護(hù)了DSP。同時(shí)為了提高A/D的轉(zhuǎn)換精度,,采樣時(shí)還需要進(jìn)行軟件校準(zhǔn),。原理是由于各A/D通道間的誤差很小,所以將其中的兩個(gè)A/D轉(zhuǎn)換通道接在已知的固定電壓信號(hào)上,,在對(duì)信號(hào)采樣前,,先對(duì)這兩個(gè)已知的固定電壓信號(hào)進(jìn)行采樣,從而確定A/D的增益和偏移誤差,。
3 軟件流程
系統(tǒng)上電后自動(dòng)初始化各端口和相關(guān)變量,,同時(shí)檢測(cè)兩個(gè)軸所停的位置和其他狀態(tài)。如果各部分狀態(tài)正常,,則等待接收上位機(jī)開始指令,,接收到開始指令后進(jìn)入準(zhǔn)備狀態(tài)。因?yàn)檎麄€(gè)跟蹤系統(tǒng)需要同步工作才能產(chǎn)生有效的數(shù)據(jù),,所以需要等待外同步脈沖信號(hào),,在這里以外部中斷的形式接收。然后一步步完成控制算法,,當(dāng)收到結(jié)束指令時(shí)完成所有工作,。基本軟件流程圖如圖4所示,。
本文給出了一種基于DSP和CAN總線的光電跟蹤系統(tǒng)伺服控制器的硬件結(jié)構(gòu)和軟件流程,。實(shí)驗(yàn)證明,這種結(jié)構(gòu)緊湊靈活,控制算法完全由控制器完成,,使用CAN總線的方式傳輸上位機(jī)指令,,安全可靠,易于擴(kuò)展,,使計(jì)算機(jī)完全從工作現(xiàn)場(chǎng)解脫出來,,在工程應(yīng)用中有重要意義。
參考文獻(xiàn)
[1] 李興紅,,張淑梅,,續(xù)志軍,等.基于TMS320F2812的跟蹤伺服系統(tǒng)[J].微計(jì)算機(jī)信息, 2007,23(5):147-149.
[2] 陣玉廷,陣長(zhǎng)青,,肖永鵬.基于DSP 的精密電視跟蹤伺服控制單元[J].長(zhǎng)春理工大學(xué)學(xué)報(bào),2004,27(2):121- 123.
[3] 童中華.基于CAN總線的伺服控制系統(tǒng)的研究[D].武漢:武漢科技大學(xué), 2008.
[4] 鄭曉峰,,方凱,黃迎華. 一種基于DSP和FPGA的多軸運(yùn)動(dòng)控制卡的設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2006(4):18-
20.
[5] 徐科軍,, 張瀚,, 陳智淵. TMS320X281x原理與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006:1-3.
[6] Texas Instruments. TMS320F2812 Digital Signal Processers Data Manual[Z]. 2004.
[7] 蘇奎峰,,呂強(qiáng),,耿慶鋒,等.TMS320F2812原理與開發(fā)[M]. 北京:電子工業(yè)出版社,2005:3-5.
[8] Altera Corporation.CycloneⅡ Device handook[Z]. 2007.
[9] 王誠(chéng),吳繼華,,范麗珍,等.Altera FPGA/CPLD設(shè)計(jì)(基礎(chǔ)篇)[M].北京:人民郵電出版社,2005.
[10] 田家林,,陳利學(xué),寇向輝.FPGA在運(yùn)動(dòng)控制系統(tǒng)中的設(shè)計(jì)[J].制造技術(shù)與機(jī)床,2007(4):67-69.
[11] 孟浩然,,王建立,,李洪文.基于TMS320F2812的直流力矩電機(jī)伺服系統(tǒng)[J].電子測(cè)量技術(shù),2007,30(3):63-65.
[12] 孫劍.基于DSP_CAN總線的數(shù)字伺服控制系統(tǒng)設(shè)計(jì)[D].西安:西北工業(yè)大學(xué),2008.