工業(yè)級(jí)特性在嵌入式處理中至關(guān)重要
許多通用信號(hào)處理器具有良好的計(jì)算性能和基本連接特性,因而能為工業(yè)應(yīng)用所接受。另一方面,有些重要的外設(shè)增強(qiáng)功能可以顯著改進(jìn)處理器的能力,使其適合要求更高的工業(yè)系統(tǒng)。本文將就網(wǎng)絡(luò)和電機(jī)控制應(yīng)用討論兩個(gè)增強(qiáng)功能的例子。
本文引用地址:http://www.ex-cimer.com/article/148764.htm以太網(wǎng)接口
對于傳統(tǒng)工業(yè)應(yīng)用,以太網(wǎng)控制器可提供基本網(wǎng)絡(luò)連接??刂破?MAC)與處理器通常位于同一芯片上。它一般與一個(gè)外部PHY芯片配合使用,構(gòu)成完整的接口。
也可以使用外部MAC/PHY芯片,常常將這種芯片直接連到處理器的異步存儲(chǔ)器接口。雖然以太網(wǎng)MAC/PHY組合芯片的價(jià)格持續(xù)下降,已達(dá)到幾乎與獨(dú)立PHY芯片相當(dāng)?shù)某潭?,但其傳輸速率無法與集成MAC加外部PHY解決方案相比。這是因?yàn)椋瑑?nèi)部MAC通常與系統(tǒng)DMA通道相連,可以設(shè)置為發(fā)送或接收數(shù)據(jù),與內(nèi)核處理器的交互極少。內(nèi)部MAC控制器一般可以實(shí)現(xiàn)接近于線路速度的性能,具體取決于協(xié)議。
性能的另一個(gè)重要方面是實(shí)現(xiàn)給定吞吐速率所需的處理器負(fù)荷。這是整體性能的一部分,也是內(nèi)部MAC解決方案與外部MAC解決方案的最大不同之處。
在工業(yè)型網(wǎng)絡(luò)中,以太網(wǎng)可利用網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)提供基本系統(tǒng)時(shí)間。對于基于NTP的系統(tǒng),整個(gè)受控網(wǎng)絡(luò)的同步通過“人機(jī)接口”時(shí)間尺度衡量。雖然該協(xié)議適合一般系統(tǒng)定時(shí)信息,但它不夠精確,不適合許多要求更精密同步的工業(yè)控制系統(tǒng)。
為改善精度,業(yè)界制定了IEEE 1588精密時(shí)間協(xié)議(PTP)標(biāo)準(zhǔn),與以太網(wǎng)控制器和網(wǎng)絡(luò)堆棧配合使用,以利用主時(shí)鐘同步網(wǎng)絡(luò)上的“本地”時(shí)鐘。也就是,各處理或控制節(jié)點(diǎn)與驅(qū)動(dòng)系統(tǒng)的主參考時(shí)間同步。
通過使整個(gè)工業(yè)網(wǎng)絡(luò)保持精密定時(shí)關(guān)系,時(shí)間事件便可以同步到亞毫秒水平。時(shí)間事件包括:模擬/數(shù)字轉(zhuǎn)換器何時(shí)采樣,何時(shí)驅(qū)動(dòng)數(shù)字/模擬轉(zhuǎn)換器,以及何時(shí)激活I(lǐng)/O線路以執(zhí)行系統(tǒng)控制等。
IEEE 1588 PTP要求交換特定數(shù)據(jù)包,以便從兩個(gè)節(jié)點(diǎn)提供時(shí)間信息。這些數(shù)據(jù)包用于計(jì)算各節(jié)點(diǎn)時(shí)鐘之間的時(shí)間和頻率差。此外,該協(xié)議提供一種連續(xù)調(diào)整時(shí)鐘的途徑,使各時(shí)鐘保持同步。
IEEE 1588 PTP協(xié)議既可以完全通過軟件實(shí)現(xiàn),也可以通過硬件與軟件的組合實(shí)現(xiàn)?;谟布慕鉀Q方案可提供最佳精度,因而節(jié)點(diǎn)之間可實(shí)現(xiàn)最佳同步。采用硬件解決方案時(shí),數(shù)據(jù)包的時(shí)間戳可以盡可能靠近它與PHY的交互點(diǎn)。這樣,節(jié)點(diǎn)之間的抖動(dòng)更低。
PWM單元
微處理器和DSP的一個(gè)標(biāo)準(zhǔn)外設(shè)是通用定時(shí)器,它基于芯片內(nèi)部或外部的一個(gè)或多個(gè)時(shí)鐘參考提供標(biāo)準(zhǔn)定時(shí)器功能。在引腳接口上,它也可提供寬度捕捉或脈沖計(jì)數(shù)功能,以及單端脈沖寬度調(diào)制(PWM)輸出波形。這些PWM輸出通常具有可編程脈沖寬度和周期,可以用在許多任務(wù)業(yè)控制應(yīng)用中,包括直流電平產(chǎn)生和抗噪模擬信號(hào)傳輸(利用適當(dāng)?shù)牡屯V波)。
然而,為使其真正能夠用于交流電機(jī)控制,需要從幾個(gè)方面對基本PWM功能進(jìn)行升級(jí)。圖1顯示了電機(jī)控制示意框圖,其中來自處理器的PWM輸出以差分方式驅(qū)動(dòng)高端和低端電源器件,從而調(diào)節(jié)電機(jī)的扭矩和速度。ADC用于向處理器提供電流測量反饋,這樣就可以在具有時(shí)序緊密的閉環(huán)系統(tǒng)中管理PWM占空比,以便控制電機(jī)。
圖1:電機(jī)控制信號(hào)鏈?zhǔn)疽鈭D。
與通用處理器的PWM模塊相比,用于電機(jī)控制的PWM單元具有多項(xiàng)增強(qiáng)功能。如上文所述,電機(jī)控制PWM成對使用,以便在給定電機(jī)相位交替驅(qū)動(dòng)高端和低端電源開關(guān)。對于三相交流電機(jī),需要采用3對PWM單元。
如圖1所示,在處理器的PWM控制單元與功率晶體管的柵極驅(qū)動(dòng)器件之間一般必須提供隔離。這種隔離通常利用光耦合器或脈沖變壓器實(shí)現(xiàn)。因此,一些PWM單元提供柵極驅(qū)動(dòng)單元,便于輸出與高頻斬波信號(hào)混合,從而連接到脈沖變壓器;同時(shí)還配有引腳驅(qū)動(dòng)器,以足夠的源電流和吸電流驅(qū)動(dòng)大多數(shù)光耦合器。
重要的是,電機(jī)控制PWM必須在一個(gè)電源器件聲明結(jié)束與另一個(gè)互補(bǔ)的電源器件聲明開始之間提供一定的保證“死區(qū)”。否則,電源開關(guān)可能發(fā)生直流短路。
此外,必須始終存在能夠立即異步禁用PWM輸出的途徑,避免發(fā)生多個(gè)輸出相位同時(shí)啟動(dòng)的錯(cuò)誤狀況。這種“PWM跳變”特性允許利用外部異步信號(hào)禁用所有PWM輸出,無論處理器時(shí)鐘處于何種狀態(tài)。
最后,雖然讓通用定時(shí)器同步啟動(dòng)是常見做法,但PWM定時(shí)器同步對于電機(jī)控制具有更重要的意義??梢岳脙?nèi)部或外部施加的“PWM同步”信號(hào)產(chǎn)生一個(gè)中斷(有時(shí)每個(gè)周期不止一次),以便處理器能夠根據(jù)控制算法調(diào)整占空比,并且ADC能夠獲取和傳輸下一個(gè)電流測量結(jié)果。
至此,顯而易見,雖然許多任務(wù)業(yè)應(yīng)用可能會(huì)選用具有通用外設(shè)集的處理器,但首先考慮哪些“工業(yè)升級(jí)”對當(dāng)前應(yīng)用有利是明智之舉。本文中,我們只選擇討論了網(wǎng)絡(luò)連接和PWM功能兩個(gè)例子,但同樣的道理也適用于其它許多子系統(tǒng),包括存儲(chǔ)器結(jié)構(gòu)和數(shù)據(jù)轉(zhuǎn)換接口。利用擴(kuò)增外設(shè)和系統(tǒng)模塊帶來的增值,可以提高工業(yè)產(chǎn)品的穩(wěn)定性和系統(tǒng)控制能力。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論