林 森, 崔轉(zhuǎn)玲
(1.蘭州交通大學 機電工程學院,甘肅 蘭州 730070; 2.蘭州交通大學 自動化與電氣工程學院,甘肅 蘭州 730070)
基于微處理器的大電流模擬繼電器的設計*
林 森1, 崔轉(zhuǎn)玲2
(1.蘭州交通大學 機電工程學院,甘肅 蘭州 730070; 2.蘭州交通大學 自動化與電氣工程學院,甘肅 蘭州 730070)
由于受到傳統(tǒng)開關器件的限制,大電流開關電源存在功率小、效率低等問題,在對PWM軟開關技術進行分析后,利用AT89C52單片機的中斷方式輸出頻率和占空比可調(diào)的PWM脈沖,控制大功率開關管GT40T101的通斷,從而實現(xiàn)以模擬繼電器的方式控制電路的通斷。通過搭建電路驗證了PWM軟開關在控制大功率電源方面的優(yōu)越性,對于實際的電氣工程應用具有一定的參考價值。
單片機;IGBT;模擬繼電器;人機交互系統(tǒng)
目前開關電源技術主要朝著高效率、高性能、高可靠性的方向發(fā)展。傳統(tǒng)的開關器件通斷速度慢并且在狀態(tài)變換的瞬間電流或電壓都會有急劇的變化,從而造成極大的損耗;因此如何提高開關速度降低開關損耗已成為一個亟待解決的問題[6]。大功率IGBT開關器件通斷速度快,導通電流大極好的符合了這一要求,PWM軟開關技術也為此提供了解決辦法[3]。筆者通過軟件的方法控制單片機使之輸出規(guī)定的PWM波,以電平的方式控制功率管GT40T101的通斷,以模擬繼電器的方式控制電路的接通和斷開。利用掃描鍵盤和1602液晶實現(xiàn)良好的人機交互界面,并通過軟件仿真進行驗證[5]。
此研究的控制對象是一個阻感負載,使其按照一定的頻率接通或斷開。如圖1所示L1即為被控對象,R1為限流電阻,D1為續(xù)流二極管,C1為輸入端濾波電容,Q1為IGBT器件GT40T101,通過控制柵極電流實現(xiàn)電路的導通或關斷。編程使單片機輸出特定的PWM脈沖控制功率管的導通或關斷從而實現(xiàn)電路的通斷[2]。
圖1 電路原理圖
GT40T101是東芝出品的N溝道型絕緣柵雙極性晶體管大電流功率開關,其開啟電壓UGE在3.0 V~6.0 V,上升時間0.6 μs,開通時間為0.7 μs,下降時間0.2 μs,關段時間為0.5 μs。故該晶體管可以滿足電壓和通斷時間的要求。另外單片機I/O口輸出的電壓約5 V,故通過穩(wěn)壓電路可以滿足該管的開啟電壓的要求[1]。GT40T101的最大集電極電流包括額定直流電流IC為40 A,和1 ms脈寬電流80A,故該晶體管可以滿足設計中大電流(50 A)的要求[4]。
系統(tǒng)由主控芯片AT89C52單片機,1602液晶顯示器,按鍵以及部分外圍電路組成,硬件結構圖如圖2所示。
圖2 系統(tǒng)結構硬件圖
2.1 整體硬件設計
單片機和外圍擴展模塊的接口電路圖如圖3所示。
圖3 硬件電路接口原理圖
AT89C52通過P0口與鍵盤組成掃描鍵盤,用以在液晶上顯示0~9十個數(shù)字;通過P2口連接液晶顯示器的數(shù)據(jù)口,鍵盤輸入的數(shù)據(jù)可以通過此口傳送給1602。另有兩個獨立鍵盤,采用外部中斷的方式分別執(zhí)行確定和取消功能74HC245是一個增強I/O驅(qū)動能力的芯片,設計中將芯片的片選控制口OE始終接地保持片選有效;芯片的數(shù)據(jù)傳輸方向控制口DIR接高電平,其數(shù)據(jù)從A端向B段傳送。
2.2 鍵盤硬件設計
如圖4所示,按鍵0~9采用的是掃描式鍵盤。0~3鍵一端接P0.0,4~7鍵一端接P0.1,另一端分別接接P0.4,P0.5,P0.6,P0.7;8~9鍵一端接P0.2,另一端分別接接P0.4,P0.5;獨立按鍵分別接外部中斷0和外部中斷1;掃描時逐次將P0口的低四位置零,檢測高四位的電平狀態(tài),從而確定按鍵按下。
2.3 1602液晶硬件設計
如圖5所示,1602液晶顯示器與單片機通過驅(qū)動芯片74HC245連接,并由P1口的低三位提供控制線,P1.0是數(shù)據(jù)命令選擇口;P1.1是讀寫控制口;P1.2是使能信號控制口。具體組合如表1所列。
圖4 鍵盤接口原理圖
圖5 1602液晶接口原理圖
功能寫命令讀數(shù)據(jù)讀狀態(tài)寫數(shù)據(jù)RS0101RW0110E↑11↑
軟件部分包括主程序、中斷定時程序、液晶顯示程序、鍵盤掃描程序。主程序包括1602液晶初始化程序、掃描鍵盤編碼程序、數(shù)據(jù)傳遞程序。采用模塊化的方式編寫程序使得程序具有較高的安全性和可調(diào)用行,流程圖如圖6所示。
3.1 1602液晶程序
該段程序的作用是為液晶進行顯示做好準備。通過單片機的P2數(shù)據(jù)口向1602寫入若干條命令。具體程序如下:
//初始化
void init_lcd1602()
{e=0;
rw=0;
write_com(0x0f);//開顯示,光標閃爍
write_com(0x38);//雙行顯示,8位數(shù)據(jù)
write_com(0x01);//顯示清屏
write_com(0x0c);//開顯示,光標不閃
write_com(0x06);//指針自動加一,不移屏
write_com(0x80); }//設置初始化數(shù)據(jù)指針
通過上述程序1602進入準備狀態(tài),當主程序執(zhí)行寫數(shù)據(jù)指令之后液晶就會在指定位置顯示指定的字符,或調(diào)用液晶內(nèi)部以固化的RAM字符。
圖6 程序作流程圖
1602的寫命令可以由下面的子程序?qū)崿F(xiàn):
//寫指令或?qū)憯?shù)據(jù)
void write(uchar i,bit j)
{
read_busy();
P2=i;//待寫入數(shù)據(jù)
RS=j;//其中j=0,寫指令;j=1,寫數(shù)據(jù)
RW=0;//寫操作
EN=1;//提供高脈沖
EN=0;}
在程序的后續(xù)操作中,不論是讀寫數(shù)據(jù)還是命令都需要對1602進行判忙操作,即判斷液晶是否處在空閑狀態(tài),如果沒有在空閑狀態(tài),對1602的讀寫操作均為無效。下面就是判忙子程序。
//讀寫允許判斷函數(shù)
void read_busy()
{
P2=0xff;
RS=0;
RW=1;
EN=1;//輸出八位狀態(tài)字
while(P2&0x80);
//P2口最高位位若不為0,停在此處,讀寫禁止;若為0,讀寫允許,進入下一步
EN=0;}
通過上面的子程序,即可對1602做到準確有效的操作。
3.2 鍵盤掃面程序
此設計里的所有按鍵都是一端接P0口的一個低四位,另一端接P0口里的一個高四位。工作時高四位為高電平,低四位逐位拉低,通過檢測高四位的電平狀態(tài)從而判斷出是哪一個鍵按下。不同的P0口狀態(tài)代表了不同的數(shù)據(jù),并對應不同的顯示數(shù)據(jù)。具體的I/O狀態(tài)與數(shù)據(jù)如表2所列。
表2 數(shù)據(jù)對應表
根據(jù)上表的對應關系,可以編寫出鍵盤掃描子程序。具體程序如下:
//鍵盤掃描函數(shù)
unsigned char KeyScan(void)
{unsigned char cord_h,cord_l;
//行列值中間變量
KeyPort=0xf0;//行線輸出全為0
cord_h=KeyPort&0xf0;//讀入列線值
if(cord_h!=0xf0)//先檢測有無按鍵按下
{DelayMs(10); //去抖
if((KeyPort&0xf0)!=0xf0)
{cord_h=KeyPort&0xf0;//讀入列線值
KeyPort=cord_h|0x0f;//輸出當前列線值
cord_l=KeyPort&0x0f;//讀入行線值
while((KeyPort&0x0f)!=0x0f);
//等待松開并輸出
return(cord_h+cord_l);//鍵盤最后組合碼值}
}
return(0xff); }//返回該值
3.3 中斷定時程序
此設計中頻率在1~400Hz,占空比在1%~100%之間連續(xù)可調(diào)。經(jīng)過計算可知輸出高電平時間最短為25 μs,最長為1 s。
設計中采用中斷的方式嚴格準確的定時25 μs,通過計數(shù)的方式準確的使得I/O口輸出規(guī)定的高電平時間。
設計中采用定時器1,利用方式2即8位自動數(shù)據(jù)重裝方式。計數(shù)的數(shù)據(jù)格式采用長整型數(shù)據(jù),以防止數(shù)據(jù)溢出。
//定時器1設置
EA=1; //中斷總控制位,允許中斷
ET1=1; //定時器1中斷允許
TMOD=0x20;//定時器1,軟啟動,方式2
TH1=0xFF; //自動重裝的數(shù)據(jù)(1us中斷)
TL1=0xFF;
TR1=1; //啟動定時器1
另外在中斷子程序中需要給定時器1中自動重裝數(shù)據(jù),為了防止中斷操作影響時序,因此中斷子程序中的命令不宜過長。具體如下。
void tim1() interrupt 1
{TH1=0xFF;
TL1=0xFF;
count1++;}
通過以上程序便可完成設計的目的,即通過I/O口便可輸出頻率占空比可調(diào)的PWM脈沖。通過軟件仿真可以得到合適的波形,效果良好。
利用Proteus7.5搭建最小系統(tǒng)仿真電路。仿真驗證數(shù)據(jù)如表3所列。
表3 仿真數(shù)據(jù)
圖7中四張圖縱向的每一小格代表1V,橫向的每一小格代表5 ms(20 Hz)或1 ms(100 Hz)。從上面圖3或圖4可以看出,100 Hz時下降沿或上升沿有一定的延時,這是因為頻率越高導致周期越短,由于單片機的運算速度有限才導致了有所延遲,所以要想消除延遲應提高處理器的運算速度。
圖7 不同頻率和占空比時輸出的波形圖
針對系統(tǒng)的控制對象,設計出合理的可為電源提供開關信號的單片機系統(tǒng)。系統(tǒng)具有簡單的交互式人機系統(tǒng),可方便的對電源進行控制,通過改進將來可以很好地實現(xiàn)自動控制。
[1] 林 云,管 春.電力電子技術[M].北京:人民郵電出版社,2012.
[2] 李朝春,劉艷玲.單片機原理及接口技術[M].北京:北京航空航天大學出版社,2013.
[3] 蔡宣三,倪本來.開關電源設計與制作基礎[M].北京:電子工業(yè)出版社,2012.
[4] 羅廷芳,孟志強.基于IGBT的固態(tài)高壓脈沖電源的研究與設計[J].電子設計工程,2012,20(5):113-115.
[5] 譚浩強.C程序設計[M].第四版.北京:清華大學出版社,2010.
[6] 賀巖斌,王志鵬,曾旭初.高功率脈沖電源的研制[J].電力電子技術,2011,45(5):78-80.
Design of High Current Analogue Relay Based on SCM
LIN Sen1, CUI Zhuan-ling2
(1.SchoolofMechatronicEngineering,LanzhouJiaotongUniversity,LanzhouGansu730070,China;2.SchoolofAutomation&ElectricalEngineering,LanzhouJiaotongUniversity,LanzhouGansu730070,China)
Due to the limitation of the traditional switch devices, high current switching power supply has small power, low efficiency. After analyzing the PWM soft switching technology, the adjustable frequency and duty ratio of PWM pulse outputs by using AT89C52 microcontroller interrupt, switch or off the large power GT40T101 are controlled, then the control of on-off of the circuit is realized by simulating a relay. By building the circuit,the superiority of PWM in the control of high power soft switching power supply is verified, which has a certain reference value for the practical application of electrical engineering.
SCM;IGBT;analogue relay;human-computer interaction systems
2014-01-13
林 森(1988-),男,陜西渭南人,在讀碩士,研究方向:機械制造及自動化和工業(yè)自動控制。
TP23
A
1007-4414(2014)02-0174-04