當今社會人們極大的享受著電子設備帶來的便利,但是任何電子設備都有一個共同的電路--電源電路,直流電源趨向多功能和數字化方向。直流穩壓電源的供電電源大都是交流電源,當交流供電電源的電壓或負載電阻變化時,穩壓器的直流輸出電壓都會保持穩定。 直流穩壓電源隨著電子設備向高精度、高穩定性和高可靠性的方向發展,對電子設備的供電電源提出了高的要求。本文以單片機為核心,構成可同時控制6路正負輸出,具有定點顯示和巡回顯示等功能的數控直流穩壓電源。
1 系統的功能和特點
系統有6路電壓輸出,其中3路為正,3路為負。電壓調節范圍為0~35 V ,最大輸出電流(A )分別為5,2和1,具有過流保護功能。數字顯示有5位,其中1位顯示路號,1位顯示電壓極性,另3位顯示輸出電壓。鍵盤設有16個鍵,數字鍵0~ 9及小數點鍵用于設定電壓輸出路號及幅值;“↑”鍵為逐步增加輸出電壓或路號;“↓”鍵為逐步減少輸出電壓或路號;“C L R ”鍵用于清除錯誤輸入,恢復原先狀態;“# ”鍵用于啟動電壓設定狀態和確認新設定;“@ ”鍵為巡回顯示和定點顯示切換鍵。
本系統設有巡回顯示、定點顯示和電壓設定3種工作狀態。當接通電源時,自動設置為巡回顯示狀態,它將每隔4 s 在顯示器上巡回顯示不同路號和相應電壓。若再按“# ”,則電壓顯示值出現閃爍現象,表示進入電壓設定狀態。如果依次按下“2”,“6”,“·”,“3”,再按“# ”鍵確認,新的電壓26.3 V 為實際輸出,設定完畢。也可以在電壓設定狀態下, 用“↑”鍵和“↓”鍵以0. 1 V 的增量設定電壓。系統設有自動識別功能,將不接受超出使用范圍的電壓設定值。在未按“# ”鍵之前,對誤輸入的電壓可以用“C L R ”鍵清除后重新設定。在定點顯示態,可用數字鍵、“↑”或“↓”鍵選擇監視的電壓路號。同樣地,系統將不接受超出實際范圍的路號設定值。輸出電壓的正負值由系統自動給出,無需用戶輸入。巡回顯示和定點顯示的切換按“@”鍵即可。
系統選用A T 89C 51單片機為控制核心,完全兼容了8031單片機的指令和功能。同時,它還增加了內置4 K B 閃速存儲器,具有128 B 內部R A M ,3個I/O 口,功耗低,體積小巧,不需擴展存儲器就能滿足系統要求。圖1為系統硬件原理圖。
?
2.1 電壓輸出回路
電壓輸出回路原理,如圖2所示。其調整管采用共射極連接方式,與常見的共集極連接方式相比,功耗和紋波系數大為降低。增并調整管,適當增加B G 2 的容量即可擴展功率輸出容量。由于電壓反饋調節采用了比例積分調節器,輸出電壓在正常的工作區能完全地跟蹤控制電壓Uin .經過推導,可得穩態的輸出電壓值Uo = WinRw /Rr .Rb 及B G 3 等構成過流保護電路。理論可以證明,該回路近似為一階控制系統,具有絕對的穩定性。因此,它十分適合于系統的設計要求,詳細的分析說明可參見文獻〔2〕。
2.2 控制電壓給定回路
控制電壓給定回路由單片機、D /A 轉換器和采樣保持器等組成。控制電壓由D /A 提供,
?
系統采用了開環控制方式。一般說來,開環控制的抗干擾能力和精度差〔3 〕。但由于本電壓輸出電路采用了特有的結構,能實現無靜差調節。這樣,可以省去類似文獻〔2〕電路中的A /D 采樣和比較電路,既降低了成本,又簡化了結構。其控制算法簡單,可靠性顯著增強。D /A 輸出一般很穩定,但分辨率有限。按本系統的設計要求,輸出電壓的分辨率必須大于0.1 V .已知穩壓輸出量程為0~3 5V , 若D /A 的量程和參考電壓以5V 計,則D / A 的分辨率B應滿足2B> 35/0.1,B> 8.4.故可采用10或12位的D /A 轉換器。為保證一定裕量,系統采用D A C 1210.本系統具有多路正負輸出,考慮到高位D /A 轉換器價格較高。采樣-保持電路由數據鎖存器74L S 273,以及6塊采樣-保持器L F 398組成。當D A C 1210輸出第N 路(1≤N≤6)控制電壓時,通過74L S 273的第N 位輸出狀態的改變,使相應路的采樣/保持器L F 398由保持狀態變為采樣狀態。然后,再恢復成保持狀態,從而實現對控制電壓的采樣和保持。
2.3 顯示和鍵盤接口電路
考慮到本系統監控軟件的負擔較重,顯示采用了靜態顯示模式〔5 〕。不難發現,電源輸出的極性決定于輸出電壓回路的電路結構,與路號有一一對應的關系。因而,可由軟件自動設置。故兩塊數碼管完全可以共享一組8位顯示數據。這樣5位L E D 只需設4個鎖存器(74L S273)。鍵盤電路設置于P 1 口,為典型的4×4中斷掃描鍵盤。
3 系統軟件設計
本軟件設計通過合理安排中斷和劃分各功能模塊,設置統一的狀態字,有效克服了系統的功能多、狀態轉換復雜給軟件設計帶來的困難。系統軟件流程圖,如圖3所示。
3.1 狀態字設計
狀態字(SB )占用一個字節,有效位為5位。狀態字通道被啟動后,控制指定的設備完成規定的操作,同時,通道在執行對外圍設備控制的過程中,要記錄通道與設備執行情況,為此系統在主存中安排另一個固定單元,用于存放這些被記錄狀態,有
S B .0 = 1,表示處于巡回顯示狀態, SB .0 = 0,無意義;
S B .1 = 1,表示處于定點顯示狀態, SB .0 = 0,無意義;
S B .2 = 1,表示處于電壓設定狀態, SB .0 = 0,無意義;
S B .3 = 1,表示電壓設定值有誤, SB .3 = 0,表示電壓設定值正確;
S B .4 = 1,表示電壓非首次數字設定,SB .4 = 0,表示電壓首次數字設定。
3.2 各功能處理模塊
?
主程序。進行系統初始化設定(I/O 口、定時、中斷、狀態字、各數據緩沖區等初始化),等待中斷。定時中斷服務程序。輸出電壓的穩定性是穩壓器最重要的指標??紤]到采樣-保持器輸出有一緩慢的下降速率(當L F 398保持電容為0.1 μF 時,下降速率約200 V ·m in- 1 ),故需定時對其進行保持和電壓刷新。本服務程序完成各路電壓值刷新和顯示。中斷申請由定時/計數器T 0 提出,每隔130 m s 中斷一次,中斷服務級為最高級。 鍵盤中斷服務程序。根據鍵碼和當前狀態字,跳轉相應的功能處理程序,中斷由IN T 0 引入。 鍵掃描譯碼程序。將0~9、小數點,以及其它按鍵譯成對應00H ~0F H 的十六進制碼。顯示譯碼程序。將鍵碼緩沖區的內容譯成七段碼并存入相應的顯示緩沖區。 D /A 譯碼程序。將鍵碼緩沖區的內容譯成對應的12位D /A 二進制數碼,并存入相應的D /A 數據緩沖區(一路輸出占2 B )。顯示子程序。根據路數,將該路數據緩沖區的內容與屏蔽字相或后,送對應數管。錯程識別序1.在電壓設定狀態,判定鍵入數字碼后,鍵碼緩沖區數據格式的錯誤,恢復鍵入前的狀態并給出相應標志(SB .3)。錯程識別序2.在電壓設定狀態,判定鍵入“↑”鍵、“↓”鍵后,鍵碼緩沖區數據格式的錯誤恢復鍵入前的狀態,并給出相應標志(S B .3)。
3.3 數據緩沖區設定
互方之一定義用于數據交換的底層內存分配機制。另一方總是使用已公布的接口來分配或釋放緩沖區,從而避免潛在的不一致。這種模型需要雙方都堅持一個可能與軟件基本功能無關的編程約定,而且在一般情況下,這個編程約定可能使代碼更加不可重用。
驅動數據交換的那一方將負責管理操作 —— 當該方充當數據提供者時,這是一個相對適當的方案。 然而,當該方充當數據使用者時,事情就變得棘手了。為避免去發現數據大小,數據使用者可以分配一個任意大小的緩沖區。如果該數據緩沖區沒有足夠大,就必須對數據提供者發出多次調用。因此這種方法需要圍繞該交互調用編寫額外的循環代碼,以備多次調用之需。
?。?) D /A 數據緩沖區。存放各路輸出的D /A 值二進制碼,每路占2 B ,共12 B .(2) 鍵碼緩沖區。在電壓設定狀態,存儲鍵入的數值碼(包括小數點),一鍵碼用4位二進制數表示。故每路占2 B ,共12 B .(3) 顯示緩沖區。 存儲各路輸出電壓顯示七段碼(含路數、輸出極性、電壓大?。?,每路占4 B ,共24 B .(4) 鍵碼備份緩沖區。進入電壓設定狀態時,程序將復制當前路鍵碼緩沖區的內容并存入此區,共2 B .(5) 顯示備份緩沖區。進入電壓設定狀態時,程序將復制當前路顯示緩沖區的內容并存入此區,共4 B .
除了上述困難之外,安全性也證明是傳統方法存在的問題:傳統緩沖區管理方案無法容易地防止惡意用戶刻意改寫數據緩沖區,從而導致程序異常??紤]到所有這一切,設計一個適當的數據緩沖區接口就勢在必行!
4 結束語
本文將單片機控制回路與無靜差的電壓輸出回路有機結合,構成一款新式多路數字可調功率直流穩壓電源,非常適合一般教學和科研使用。單片機、D A C 與其它外圍電路獨立供電。D A C 采用高穩定性的基準電源為參考電壓,面板電源開關可設計成僅切斷輸出回路的供電電源。還要注意選擇特性較理想的、功率適當的晶體管,加裝大小適當的散熱片。這樣,一般不需太多調試就能獲得成功。因此,本電源推廣容易,可望獲得廣泛的應用。
評論
查看更多