按鍵消抖電路瞬態(tài)設(shè)計(jì)及分析
按鍵是儀器儀表中普遍采用的人機(jī)輸入接口電路。在按鍵電路中必須考慮對(duì)按鍵的抖動(dòng)進(jìn)行軟件消抖和硬件消抖。
消抖具有使用硬件數(shù)量少的優(yōu)點(diǎn),但也具有以下兩個(gè)缺點(diǎn):
(1)在儀器鍵盤電路中,多個(gè)按鍵安裝在儀器面板上,鍵盤的輸出通過排線連接到主控板上,此時(shí)鍵盤導(dǎo)線寄生電感和寄生電容的存在,寄生電感寄生電容和排線電阻將組成二階振蕩系統(tǒng),二階振蕩將形成負(fù)電平脈沖,而負(fù)電平脈沖很容易超出數(shù)字芯片的輸入最大允許電平范圍,導(dǎo)致數(shù)字芯片容易損壞。
(2)按鍵閉合和斷開時(shí),電壓信號(hào)下降沿非常陡峭,劇烈變化的電壓信號(hào)將通過互容傳遞到相鄰導(dǎo)線上。
硬件消抖電路的設(shè)計(jì)主要是要考慮以下三個(gè)因素:
(1)消除信號(hào)的抖動(dòng),確保按鍵電路輸出信號(hào)的平整;
(2)消除信號(hào)的下沖,因?yàn)橄聸_電平超出了后續(xù)數(shù)字芯片的最大輸入電平范圍;
(3)降低信號(hào)變化的速度,避免在鄰線上引起容性串?dāng)_;
(4)不影響按鍵電路的正常功能。
常見的硬件消抖電路包括電容濾波消抖和觸發(fā)器消抖。電容濾波消抖采用電阻和電容組成低通濾波器,具有電路結(jié)構(gòu)簡單可靠的優(yōu)點(diǎn),因此本文將重點(diǎn)闡述該消抖電路。
1 按鍵消抖電路結(jié)構(gòu)與電路模型
圖1為某儀器按鍵電路原理圖,按鍵安裝在儀器面板上,通過導(dǎo)線連接到主控板上,按鍵的一端接上拉電阻并連接后續(xù)電路,按鍵的另一端接地,當(dāng)按鍵沒有按下時(shí),按鍵輸出高電平,當(dāng)按鍵按下 時(shí),按鍵輸出低電平。圖2為加上濾波電容后的按鍵電路。
圖1 某儀器按鍵電路
圖2 按鍵消抖電路
圖3為按鍵消抖電路的電路模型。圖中R0為連接按鍵導(dǎo)線的電阻,L為導(dǎo)線電感,C0為導(dǎo)線對(duì)地電容,Cf為濾波電容,Cp為按鍵后續(xù)電路的輸入電容,Ri為按鍵后續(xù)電路的輸入阻抗,R 為上拉電阻,VCC為電源電壓,U為按鍵消抖電路的輸出電壓。
圖3 按鍵消抖電路的電路模型
當(dāng)按鍵閉合時(shí),其等效電路模型如圖4所示。當(dāng)按鍵斷開時(shí),其等效電路模型如圖5所示。
2 按鍵消抖電路數(shù)學(xué)模型
設(shè)某一時(shí)刻按鍵合上,在此之前按鍵斷開,整個(gè)電路處于穩(wěn)態(tài),即各個(gè)電容和電感上沒有電流流動(dòng)。此時(shí)輸出電壓U =u0 =VCC ×R (R +Ri)。則根據(jù)圖4整個(gè)電路可列出以下微分方程:
圖4 按鍵閉合時(shí)等效電路模型
圖5 按鍵斷開時(shí)等效電路模型
式中:i0為L 所在支路的電流;C 為C0,Cf和 Cp的等效電容,C 為三者之和。
(1)、式(2)進(jìn)行拉普拉斯變換后可得:
將上式運(yùn)用留數(shù)定理分解可得:
設(shè)某一時(shí)刻按鍵斷開,在此之前按鍵閉合,整個(gè)電路處于穩(wěn)態(tài),即各個(gè)電容和電感上沒有電流流動(dòng)。此時(shí)輸出電壓U=u0=VCC × Ri R0 (RRi +R0 Ri +RR0)。根據(jù)圖5可列出以下微分方程:
3 按鍵電路瞬態(tài)分析
對(duì)式(5)進(jìn)行拉普拉斯反變換便可得到按鍵斷開電路處于穩(wěn)態(tài)時(shí)按鍵閉合的輸出電壓u(t)的時(shí)域響應(yīng)。
根據(jù)拉普拉斯變換的初值定理和終值定理,可得到:
對(duì)式(6)進(jìn)行拉普拉斯反變換便可得到按鍵閉合電路處于穩(wěn)態(tài)時(shí)按鍵斷開的輸出電壓u(t)的時(shí)域響應(yīng)。對(duì)式(6)進(jìn)行拉普拉斯反變換便可得到按鍵閉合電路處于穩(wěn)態(tài)時(shí)按鍵斷開的輸出電壓u(t)的時(shí)域響應(yīng)。
式(6)的時(shí)域響應(yīng)為電容充電的時(shí)域響應(yīng),其響應(yīng)過程為單調(diào)上升,其上升時(shí)間為2.2T,充電時(shí)間常數(shù)T等于ReC,Re為Ri和R 的并聯(lián)。
T 越大上升時(shí)間越大,上升時(shí)間過大將影響按鍵的正常使用。按鍵按下一次的持續(xù)時(shí)間約為0.01~0.1 s,因此消抖電路將上升時(shí)間調(diào)整到500 μs以內(nèi)比較適合。
現(xiàn)測(cè)得已連接到單片機(jī)輸入引腳的按鍵電路其導(dǎo)線電阻R0為1.6 Ω,導(dǎo)線電感L為25 nH,導(dǎo)線對(duì)地電容Ci+Cp為9.6 pF,在電路中使用的上拉電阻R 為10 kΩ,單片機(jī)輸入引腳輸入阻抗Re為2 MΩ,使用電源電壓VCC為3.3 V,則不加濾波電容時(shí),按鍵閉合和斷開的瞬態(tài)響應(yīng)分別如圖6 和圖7 所示,由圖6 可見下沖峰值接近2 V,而使用單片機(jī)引腳的最大輸入電壓范圍為-0.3 V~(VCC+0.3 V),該下沖電壓遠(yuǎn)遠(yuǎn)超出該電平范圍。
圖6 實(shí)測(cè)按鍵閉合瞬間的時(shí)域響應(yīng)
4 按鍵消抖電路設(shè)計(jì)
按鍵消抖電路的設(shè)計(jì)主要是利用電容的平滑功能,將毛刺平滑掉,濾波電容越大,信號(hào)越平滑。但是電容的增大會(huì)導(dǎo)致上升時(shí)間過大,電容太小則無法消除毛刺?,F(xiàn)針對(duì)一單片機(jī)按鍵電路為例進(jìn)行闡述。圖8為該電路未進(jìn)行硬件消抖時(shí)使用衰減探頭在示波器上觀察到的毛刺。
圖7 實(shí)測(cè)按鍵斷開瞬間時(shí)域響應(yīng)
圖8 按鍵電路毛刺
現(xiàn)測(cè)得該單片機(jī)按鍵電路寄生電感L 為30 nH,寄生電容C0+Cp為35 pF,導(dǎo)線直流電阻R0為0.2 Ω。查閱單片機(jī)數(shù)據(jù)手冊(cè),計(jì)算得到其輸入引腳輸入阻抗為2 MΩ,上拉電阻R 為10 kΩ。根據(jù)式(6)和式(7)可計(jì)算出未加濾波電容的按鍵電路在按鍵閉合時(shí)其二階系統(tǒng)的ξ為0.004 887,振蕩頻率為155.319 MHz。圖6為在示波器上觀察到的按鍵閉合瞬間的時(shí)域響應(yīng)。由圖可見最大的下沖幅度達(dá)到了-1.66 V,該電平遠(yuǎn)超出單片機(jī)的電壓范圍。
根據(jù)式(9)可計(jì)算得到按鍵斷開時(shí)充電時(shí)間常數(shù)為348.258 7 ns,信號(hào)上升時(shí)間為766.17 ns。圖7為在示波器上觀察到的按鍵斷開瞬間時(shí)域響應(yīng)。為消除按鍵抖動(dòng),濾波電容越大越好,但電容增大將增大信號(hào)的上升時(shí)間。為不影響按鍵電路的正常功能,需將上升時(shí)間控制。在0.5 ms以內(nèi)。為此可得到當(dāng)上拉電阻為10 kΩ時(shí)濾波電容的最大值為22.85 nF,上拉電阻為1 kΩ時(shí)濾波電容的最大值為227.38 nF。
當(dāng)濾波電容為227.38 nF時(shí),ξ值為0.275 9,ξ值小于1,當(dāng)按鍵閉合時(shí)依然會(huì)有衰減振蕩,此時(shí)的衰減振蕩頻率為1.849 8 MHz,下沖峰值約為-1.34 V,下沖持續(xù)時(shí)間約為271 ns,R=1 kΩ,Cf=227.38 nF。
由于下沖持續(xù)時(shí)間較長,危害性也將增大。圖9為R=1 kΩ,濾波電容為227.38 nF時(shí)的按鍵閉合瞬間時(shí)域響應(yīng)波形。圖10為R=1 kΩ,濾波電容為220 nF時(shí)在示波器上觀察到的按鍵閉合瞬間時(shí)域響應(yīng)波形。
圖9 按鍵閉合瞬間仿真波形
圖10 按鍵閉合 瞬間實(shí)測(cè)波形
因此,單靠增加電容來進(jìn)行濾波的方法是行不通的,由式(7)可知,增大R0可以顯著增加ξ,為此可以在按鍵導(dǎo)線上串接電阻。在最終的按鍵消抖電路設(shè)計(jì)中,串接電阻選為100 Ω,濾波電容為8.2 nF。此時(shí)ξ 為26.117 7,徹底消除了振蕩,此時(shí)的充電時(shí)間常數(shù)T 為81.94 μs,上升時(shí)間為180.268 μs。圖11為整個(gè)按鍵消抖電路的按鍵閉合和按鍵斷開瞬間的時(shí)域響應(yīng)波形仿真。圖12為整個(gè)按鍵消抖電路的按鍵閉合和按鍵斷開瞬間的實(shí)測(cè)時(shí)域響應(yīng)波形。圖13為一次按鍵按下實(shí)測(cè)完整波形。圖14為最終的按鍵消抖電路。由圖12可見,按鍵閉合時(shí)沒有過沖,按鍵斷開時(shí)上升時(shí)間小于0.5 ms。由圖13可見,在按鍵按下和松開之間的過程中,抖動(dòng)已被消除,而且完全不影響按鍵電路的正常功能。
圖11 消抖電路按鍵閉合和斷開瞬間的時(shí)域響應(yīng)波形仿真
圖12 消抖電路按鍵閉合和斷開瞬間實(shí)測(cè)時(shí)域響應(yīng)波形
圖13 一次按鍵按下實(shí)測(cè)完整波形
5 結(jié)語
本文分析了軟件消抖電路中存在的不足,指出了軟件消抖存在輸出信號(hào)下沖電平超出后續(xù)數(shù)字芯片輸入電平范圍容易危害數(shù)字芯片,提出了按鍵閉合時(shí)信號(hào)下降速度過快易引起容性串?dāng)_。針對(duì)軟件消抖電路的不足,本文分析了硬件消抖電路,建立了數(shù)學(xué)模型,仿真并實(shí)測(cè)了按鍵消抖電路的時(shí)域響應(yīng)。針對(duì)硬件消抖電路中僅使用濾波電容消除按鍵抖動(dòng)的方法,通過仿真和實(shí)測(cè)闡述了該方法反而會(huì)導(dǎo)致下沖持續(xù)時(shí)間更長,對(duì)后續(xù)電路危害性大。
圖14 按鍵消抖電路圖
針對(duì)該問題,本文分析計(jì)算了在按鍵導(dǎo)線中串接電阻以消除下沖,仿真并實(shí)測(cè)了整個(gè)硬件消抖電路的瞬時(shí)響應(yīng),實(shí)測(cè)了硬件消抖電路按鍵按下和釋放整個(gè)過程的時(shí)域波形,消除了按鍵抖動(dòng)和下沖。