單片機協(xié)處理器在電力系統中的應用
摘要:單片機協(xié)處理器能分擔主處理器的部分工作,使電力測控系統在運行速度、功能需求等性能上有明顯的改善。 關(guān)鍵詞:單片機協(xié)處理器 硬件略圖 軟件 前言 在電力測量及保護系統中,通常是由單片機構成數個(gè)乃至數十個(gè)前端處理器。它們通過(guò)串行通信與微機構成的中央處理器相連接,形成一個(gè)完整的系統,以實(shí)現對電力系統的遙測、遙信、遙調、遙控等功能。 前端處理器的核心就是單片機,從目前的情況來(lái)看,以Intel公司的16位單片機80C196系列(KB、KC等)應用最廣。單片機要處理的問(wèn)題很多。如 I/O量、A/D模數轉換、鍵盤(pán)、通信、顯示等,處理一圈所花費的時(shí)間常稱(chēng)之為前端處理器的運行周期。在整個(gè)系統中,前端處理器的數量較多,中央處理器對其進(jìn)行巡檢時(shí)會(huì )花去較多的時(shí)間。若能將前端處理器的運行周期縮短,毫無(wú)疑問(wèn)能提高整個(gè)系統的運行及處理速度,使系統的性能得以改善。
本文引用地址:http://dyxdggzs.com/article/201610/307600.htm
被處理的各量中,以模擬量的處理較為復雜且耗時(shí)較長(cháng)。模擬量的處理內容較多,如模擬量周期(即工頻)的測定、模擬通道的選擇(多個(gè)模擬量同一時(shí)刻選通一個(gè))、A/D轉換及存儲等,有時(shí)還須采樣/保持控制等。如能將模擬量交給一個(gè)協(xié)處理器去處理,勢必會(huì )減輕主處理器的負擔,縮短主處理器的運行周期,同時(shí)還能為增強某些功能需求創(chuàng )造條件。模擬量的計算通常是用傅氏算法,其精度又與模擬信號一周期內采樣點(diǎn)的多少有關(guān)。采樣點(diǎn)多,精度就高,但耗費的時(shí)間也多。若前端處理器采用單一的CPU,由于受到時(shí)間和模擬通道數量的限制,采樣點(diǎn)大約在12~24點(diǎn)。若采用協(xié)處理器,采樣點(diǎn)可多至30~36點(diǎn),模擬通道多至 16個(gè),也同樣可正常工作。由于主處理器與協(xié)處理器的軟件各自獨立,使得在編制軟件思想清晰,容易理順。 一、硬件 圖1給出了前端處理器中采用協(xié)處理器的硬件略圖(只畫(huà)出有關(guān)部分)。它的主處理器仍采用了當前流行的16位單片機80C196KB(IC6),協(xié)處理器采用了W78E51單片機(IC3)。W78E51的指令及性能同89C51,只是它的工作頻率可以達到40MHz。由于有兩個(gè)CPU同時(shí)運行,而且它們之間還有數據交換,如何去協(xié)調它們的工作是至關(guān)重要的,這需要通過(guò)硬件和軟件的設計來(lái)加強保證。 圖1中,IC1是8選1的模擬通道芯片MAX338,若通道數量超過(guò)8,可選用MAX306,其通道數量可達16個(gè)。IC2為12位帶采樣保持功能的 A/D模數變換芯片AD1674。IC4為地址鎖存片74LS373,IC5為RAM存儲芯片6264,它們附屬于IC3,作為IC3的片外數據存儲器。

硬件的工作過(guò)程是:工頻電壓或電流經(jīng)處理后(經(jīng)傳感器或者電壓/電流互感器、放大器、濾波器等處理)變?yōu)橄鄳哪M信號,分別從CI1的8個(gè)輸入端(IN1~IN8)輸入,具體選通哪路則取決于A(yíng)0~A2的二進(jìn)制數。而A0~A2又是由IC3的P10~P12決定。被選中通道的模擬量由IC1的 OUT輸出,經(jīng)跟隨器后進(jìn)入IC2進(jìn)行A/D變換,由R/C、A0控制變換的過(guò)程,STA給出變換結束的信號,它們分別由IC3的P15~P17實(shí)施控制和測試。變換完成的數字量為12位,分兩次輸出,第一次為高8位(DB11~DB4),第二次為低8位(DB3~DB0,后加4個(gè)0)。這些數據經(jīng)整理后依次存入數據存儲器IC5中。IC3的P14是IC2的片選信號,P33是IC4、IC5的片選信號,通常為高電平,選不中。當進(jìn)行A/D變換時(shí),須先將 P14置低電平,選中該片,變換完成后,再置加高電平。當向IC5存、取數據時(shí),須通過(guò)P33進(jìn)行控制,過(guò)程同上。這樣,可以防止A/D變換、IC5存取數據、IC3通過(guò)P0口向IC6傳送數據這三者之間的相互交叉干擾。 周期值的測量是由一模擬通道提供工頻信號,經(jīng)斯密特觸發(fā)器至IC3的P13進(jìn)行。P13相鄰兩次電平下降的時(shí)間隔即可周期值。 IC3的P30、P31與IC6的P10、P11構成握手信號,將存放IC5中的各量依次取出,由IC3的P0口傳至IC6的P0口,并存入指定的區間,再進(jìn)行傅氏運算、處理和控制。IC5中存儲的數據個(gè)數是1周期內各采樣點(diǎn)的、各通道測得的數據個(gè)數的總和。設采樣點(diǎn)為Rn,通道數為Rm,再加上前述的周期值(各量均為2字節),總的字節數C=2RnRm+2。當Rn=32,Rm=8,則C=2%26;#215;32%26;#215;8+2=514字節。當少于200字節時(shí),也即采樣點(diǎn)、通道數較少時(shí),如Rn=16,Rm=6,IC3可用W78E52代替。W78E52可以利用片內的256個(gè)RAM來(lái)存儲數據而省去片外的數據存儲器,在硬件上更為簡(jiǎn)潔。 二、軟件 圖2是協(xié)處理器主程序軟件框圖。首先對有關(guān)的量進(jìn)行說(shuō)明:T0和T1是W78E51片內的兩個(gè)定時(shí)器。T、Ta和Tb均為2字節寄存器,T用來(lái)存儲測量出的周期值;

Ta存儲兩相鄰采樣點(diǎn)的時(shí)間間隔,因本例中采樣點(diǎn)為32,將T右移5位即得Ta值;Tb是Ta對應的溢出值,用來(lái)產(chǎn)生T0中斷。注意:以上諸量都須機器周期來(lái)表示,本例中采用24MHz晶振,一個(gè)機器周期的時(shí)間為0.5μs。Rm是模擬通道數,范圍是1~8。Rn是采樣點(diǎn)數,范圍是1~32。 工作過(guò)程簡(jiǎn)述如下:當P13電位下跌時(shí),周期測試開(kāi)始,到第二次P13下跌時(shí),周期測試結束(區間為AA~AD)。兩次下跌的時(shí)間間隔即為工頻的周期,具有準確的跟蹤特性。在周期測試開(kāi)始后4μs,T0溢出產(chǎn)生中斷,執行中斷子程序,總共32次。中斷子程序都是在A(yíng)D~AC間執行的,也即在第一周期內所有需要測量的量都已測出。從AD往后便是第二周期,主要用來(lái)計算Ta、Tb的值,并將IC5內的數據傳送出去。由此可見(jiàn),協(xié)處理器的運行為2個(gè)周期,約 40ms。應說(shuō)明的是:在上電的第一個(gè)周期內,因周期值還未測出,故須對Tb值先行設置。圖3是中斷子程序軟件框圖。 8個(gè)通道的A/D轉換數據是先存入片內的RAM。這樣來(lái)得快,以減少通道之間的相差(鄰近通道之間的相差約為0.4%26;#176;),之后,再一次性地由片內RAM轉存于片外RAM。執行一次T0中斷子程序的時(shí)間約為256μs。當采樣點(diǎn)為32時(shí),時(shí)間間隔為625μs,綽綽有余。若將采樣點(diǎn)增至 36,通道增至16個(gè),則采樣點(diǎn)間隔約為555μs,執行中斷子程序的時(shí)間約為445μs,仍有足夠的余量。 軟件可以用匯編語(yǔ)言ASM51編寫(xiě),也可以用對應的高級語(yǔ)言PL/M51或C51編寫(xiě),但前者代碼率高一些。 結束語(yǔ) 以上是協(xié)處理器的一般用法,在此基礎上是否能進(jìn)一步縮短運行周期和提高測量精度,是一個(gè)值得研究的課題。提高主處理器IC6和協(xié)處理器IC3的工作頻率(如IC6采用16MHz,IC3采用36MHz)可以提高CPU的運行速度,以達到縮短運行周期的目的。但有兩點(diǎn)需要注意:一是CPU的外圍芯片的速度必須跟得上;二是頻率提高后,輻射增強,交叉干擾變得明顯。因面,在印刷電路板的設計上須謹慎處理。 提高測量精度可以從3個(gè)方面著(zhù)手。一是提高A/D轉換精度,采用14位A/D變換芯片。不過(guò),位數越多,變換所需的時(shí)間也越長(cháng)。這在單一CPU中因時(shí)間限制,效果不好,而在協(xié)處理器中卻容易實(shí)現。這里還有一個(gè)附帶的問(wèn)題,目前大都采用開(kāi)關(guān)式穩壓電源,耗電量省,但工作頻率高,噪波大,通常有5~10mV, 這無(wú)疑限制了精度的提高。因而,必須有一套優(yōu)良的電源濾波系統,將噪波濾到1mV以下。有時(shí)這部分的電源干擾采用串聯(lián)式穩壓電源,其噪波可以做到 0.5mV以下。 二是采用同時(shí)式采樣保持電路。在前述電路中,8個(gè)模擬通道的采樣并不是同時(shí)進(jìn)行而是按序進(jìn)行的,后面的通道對前面的通道而言有一個(gè)時(shí)間上的滯后,這會(huì )給測量帶來(lái)某些誤差。常用的方法是將各模擬量的位置進(jìn)行調整,將關(guān)系密切的量逐個(gè)緊排,以減少滯后帶來(lái)的影響。當然,提高協(xié)處理器的速度和采用高速A/D變換器也有助于滯后的減小(可做到0.2%26;#176;以?xún)?。然而,最終解決這個(gè)問(wèn)題的辦法是采用同時(shí)式采樣保持電路,也即在圖1的IC1前加入8片采樣保持芯片,并由IC3實(shí)施控制。 三是各模擬量輸入通道(包括傳感器或電壓/電流互感器、放大器、濾波電路等)均會(huì )形成一定的附加相移。若各通道的附加相移相等,則對測量的精度不會(huì )有影響。輸入工頻三相電A,B,C,各相相差應為120%26;#176;,由于附加相移不相等,顯然會(huì )給測量帶來(lái)影響,尤以測功率時(shí)明顯。因而,應對各模擬通道的附加相移進(jìn)行測量調整,使其盡可能相等。
評論