此前寫過一篇文章,分析德州儀器C2000系列DSP移相同C2000系列DSP移相同步功能步功能的一個缺陷,導(dǎo)致在大范圍移相時出現(xiàn)的脈沖丟失問題。
最近,一位西安交大的博士遇到相同的問題,經(jīng)過跟他的討論,發(fā)現(xiàn)在他這種特定應(yīng)用下,是可以規(guī)避脈沖丟失問題的,本文給出了一個簡單的實例,對方法做一個介紹。
上圖為脈沖丟失時刻的波形。
前文中介紹了,出現(xiàn)脈沖丟失問題的原因是移相值與比較值發(fā)生跨越,導(dǎo)致二者在一個周期內(nèi)沒能發(fā)生匹配,所以驅(qū)動信號在這個周期內(nèi)就沒有發(fā)生任何變化,我們看到的現(xiàn)象就是“脈沖丟失”。如下圖:
想避免出現(xiàn)脈沖丟失,可以通過規(guī)避比較值與移相值跨越的情出現(xiàn)。根據(jù)脈沖丟失的原因,當(dāng)移相值在0與CMP(比較值)之間變化或在CMP(比較值)與PRD(周期值)之間變化,是不會出現(xiàn)脈沖丟失問題的,對于大部分應(yīng)用,移相值變化范圍并不會非常大。例如移相全橋的應(yīng)用,就不會出現(xiàn)脈沖丟失問題,也正因為這個原因,C2000移相同步功能的這個缺陷鮮為人知。
關(guān)于這個解決方案,首先我們要針對C2000系列的同步信號傳遞方式做一些介紹。
上圖是280x,2801x,2802x,2803x等DSP的ePWM模塊連接結(jié)構(gòu),手冊中還可以查到2833x的結(jié)構(gòu),本次以上圖為例。其中EPWMxSYNCI是模塊同步信號的輸入端,當(dāng)有脈沖輸入時,將該模塊計數(shù)(CTR)器會被設(shè)定為PHS寄存器的預(yù)設(shè)值。EPWMxSYNCO是模塊同步信號的輸出端,連接到下一個模塊的輸入端,用于同步下一個模塊。SYNCO信號有三種產(chǎn)生的方式如下:
直接透傳SYNCI的信號到下一個模塊,這種方式也是我當(dāng)年的畢業(yè)設(shè)計用應(yīng)用的,這樣可以避免途經(jīng)的模塊移相角對后面的模塊相位的影響。實際應(yīng)用中可能存在一個時鐘的延遲。
CTR=0時產(chǎn)生SYNCO脈沖,即計數(shù)器歸零時產(chǎn)生脈沖,這種方式假設(shè)模塊1與模塊2之間的相位發(fā)生變換,模塊3也會隨之變化,導(dǎo)致模塊之間的移相同步值存在耦合。
CMPB=CTR 時產(chǎn)生同步脈沖這種方法可以在模塊不使用CMPB時獲得比較自由的移相方式。
本文將使用第二種同步脈沖產(chǎn)生方式,解決特定需求下的移相操作。第三種同步脈沖產(chǎn)生方式將會在下一篇文章中講解,當(dāng)不使用CMPB時,這種同步方式也許可以徹底解決在雙向傳輸?shù)碾p有源橋調(diào)制問題,且不會導(dǎo)致脈沖丟失,不過我還需要進一步推導(dǎo)一下。
使用第二種同步方式時,第一個ePWM1模塊并不需要設(shè)置輸入同步信號,該模塊作為同步的主導(dǎo),后面的的同步脈沖均與該模塊有關(guān)。下面以一個需求為例:
任務(wù)描述:獲得2路驅(qū)動脈沖,均為50%占空比,相位關(guān)系在100°-260°之間變化。
50%對應(yīng)的比較值CMP剛好為180°,由于相位PHS的變換范圍正好覆蓋了比較值CMP的位置,因此當(dāng)移相角PHS與占空比CMP發(fā)生跨越時,將會導(dǎo)致脈沖丟失。當(dāng)占空比50% 且移相角范圍超過180°時必然造成比較值與移相值的跨越,導(dǎo)致脈沖丟失。而當(dāng)前應(yīng)用移相角變換范圍為160°,小于180°。如果移相角在0°-180°之間變化,就不會導(dǎo)致比較值與移相值跨越,也就不會因此造成脈沖丟失。
本文的設(shè)計思路是使用ePWM2模塊作為中繼,提供一個固定的移相值90°,ePWM3產(chǎn)生第二路50%占空比的驅(qū)動脈沖,使ePWM2與ePWM3之間的移相角始終在0°-180°之間變化,加上固定的90°移相角,剛好獲得90°-270°移相效果,從而規(guī)避了移相值與比較值的跨越。具體移相方法見下圖:
使用ePWM2模塊產(chǎn)生了一個固定的90°移相角作為中繼,使ePWM1與ePWM3之間的相位可以在大于90°小于270°之間變化,當(dāng)然由于本實例的周期分度比較粗,變化范圍會有所減小,畢竟周期PRD中的一個值要對應(yīng)3.6°了。值得說明的是C2000系列的移相并不是滯后移相,而是超前移相,因此上圖中滯后1/4周期的移相,設(shè)置移相寄存器為超前3/4周期。
本方法的設(shè)計思路就是在需要做大移相角移相時,使用一個ePWM模塊作為中繼,提供一個固定的移相角,從而避免移相值與比較值發(fā)生跨越,進而避免出現(xiàn)脈沖丟失的現(xiàn)象。這個方法為了規(guī)避脈沖丟失的問題,使用了一個額外的ePWM模塊,造成了片上資源的浪費,但從思路上來看,這個方式是有效的,希望這個設(shè)計思路能夠?qū)δ銈兊脑O(shè)計有幫助。
-
dsp
+關(guān)注
關(guān)注
555文章
8141瀏覽量
355113 -
寄存器
+關(guān)注
關(guān)注
31文章
5421瀏覽量
123275 -
德州儀器
+關(guān)注
關(guān)注
123文章
1782瀏覽量
141980 -
脈沖
+關(guān)注
關(guān)注
20文章
901瀏覽量
96710 -
CMP
+關(guān)注
關(guān)注
6文章
152瀏覽量
26490
發(fā)布評論請先 登錄
C2000系列DSP移相同步功能的缺陷



請問c2000或其它的數(shù)字電源芯片的PWM模塊能在使用外部同步時鐘時移相嗎?
如何對DSP C2000系列中的8位數(shù)據(jù)進行讀寫呢
C2000 DSP實驗指導(dǎo)
C2000 DSP實驗箱實驗指導(dǎo)用書
DSP C2000系列中8位數(shù)據(jù)的讀寫

C2000系列DSP移相功能缺陷的分析與解決方法(二)

評論