基于DSP與FPGA的跟蹤伺服運(yùn)動(dòng)控制
DSP的功能主要通過軟件實(shí)現(xiàn),在此主要實(shí)現(xiàn)接收上位機(jī)指令,完成位置環(huán)和速度環(huán)反饋的雙閉環(huán)控制算法,以及速度的PID調(diào)節(jié),產(chǎn)生PWM輸出。由于實(shí)際工作環(huán)境較為復(fù)雜,所以選用了抗干擾能力強(qiáng)的CAN總線作為與上位機(jī)的通信方式,TMS320F2812內(nèi)部集成了一個(gè)eCAN模塊,只需增加相應(yīng)的CAN收發(fā)器外圍電路就可以實(shí)現(xiàn)通信。根據(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)[7]。
將DSP片上集成的多通道緩沖串口配置成SPI模式,與FPGA內(nèi)部的SPI模塊完成數(shù)據(jù)交換,從而完成DSP對(duì)FPGA的控制。此時(shí)DSP上的Mcbsp為SPI通信的主機(jī),FPGA內(nèi)部的SPI模塊為從機(jī),從FPGA讀取數(shù)據(jù)時(shí),只需向從機(jī)發(fā)送偽數(shù)據(jù)。這種通信方式避免了占用大量的DSP I/O口資源,速度快,出錯(cuò)率小。
由于TMS320F2812內(nèi)部集成的12位高速A/D轉(zhuǎn)換器只能輸入電壓范圍在0~3 V以內(nèi)的模擬信號(hào),因此需要對(duì)輸入的雙極性電壓信號(hào)進(jìn)行處理,具體電路如圖2所示。為了提高A/D采樣精度,需要進(jìn)行軟件校準(zhǔn),基本思想是通過采樣已知電壓信號(hào)來確定偏差。本文引用地址:http://butianyuan.cn/article/151924.htm
2.2 FPGA模塊
FPGA選型時(shí)綜合考慮片上邏輯單元、用戶I/O口數(shù)量以及功能擴(kuò)展的需要,根據(jù)前期仿真結(jié)果選用Altera公司的CycloneⅡ系列的EP2C8Q208C8,它具有8 256個(gè)邏輯單元,138個(gè)用戶I/O,36個(gè)M4KRAM和2個(gè)鎖相環(huán),內(nèi)核電壓只有1.2 V,具有低成本、低功耗的特點(diǎn)[8,9]。由于FPGA具有高速并行處理能力,所以保證了系統(tǒng)的同步性[10]。它的I/O口支持3.3 V LVTTL電平,與DSP管腳電平兼容,因此不用進(jìn)行電平轉(zhuǎn)換,可直接連接,使用方便。
FPGA模塊主要完成伺服控制器的邏輯接口功能,并可以擴(kuò)展通用I/O口數(shù)量,方便功能擴(kuò)展。在此主要實(shí)現(xiàn)4個(gè)模塊:串行通信接口模塊、SPI模塊、D/A接口模塊和中斷控制模塊。其中SPI模塊配置成從機(jī)工作模式,與DSP的Mcbsp配合完成DSP與FPGA的數(shù)據(jù)交換。各模塊獨(dú)立并行工作,并由頂層控制模塊統(tǒng)一協(xié)調(diào)控制,具有速度快、可移植性好的特點(diǎn)。
2.3 D/A轉(zhuǎn)換器模塊
根據(jù)轉(zhuǎn)換通道數(shù)、精度和轉(zhuǎn)換速度,D/A轉(zhuǎn)換芯片選擇BURR-BROWN公司的DAC7614。它是12位串行數(shù)模轉(zhuǎn)換器,4路模擬輸出,功耗只有20 mW,單次轉(zhuǎn)換建立時(shí)間10 μs[10]。
評(píng)論