你永遠(yuǎn)想象不到,用戶把你的產(chǎn)品用在哪了!
具體是這樣的:一個很簡單的串口RS485電路,如下圖所示,用了這個電路后,就不要單獨(dú)信號去管理485芯片的收發(fā)分時了(是不是很方便,我也這么想的)。
問題就是出現(xiàn)在這個電路上,我們做環(huán)境實(shí)驗(yàn)的時候,是在55℃做的一點(diǎn)點(diǎn)問題都木有,該收收,該發(fā)發(fā)。但是一到了用戶那里,工作一小會就掛了,啥也木的了。經(jīng)過本人的現(xiàn)場排查(踩點(diǎn)),你知道用戶放在哪里嗎?他放在一個發(fā)熱量巨大的發(fā)動機(jī)旁邊(我TM,算了客戶是上帝)!
本人親自實(shí)際測了一下周圍環(huán)境溫度都48℃以上,而且為了防塵,我的板卡和一個發(fā)熱巨大的主控放在一個盒子里面,并且還沒有風(fēng)扇,這就導(dǎo)致盒子里面的溫度至少70℃(你們是要搞燒烤嗎)。那個安裝環(huán)境啊,沒法說,還不方便測量,我也很絕望啊!
然后我靈機(jī)一動,就對身后的嵌入式軟件小哥說,是不是你軟件配置有問題,人家ARM高溫了會降頻,你是不是沒有配置好,導(dǎo)致收發(fā)有問題的(因?yàn)闀簳r我也不知道問題所在?。?。
回到公司后,我就用熱風(fēng)槍使勁對著ARM吹,結(jié)果毛事沒有,好家伙,鍋是甩不掉了,剩下的電路一步一步的吹吧,當(dāng)吹到三極管時(圖中Q4),果然沒得數(shù)據(jù)了,看來是三極管的事情。可是禍不單行啊,不吹后,當(dāng)溫度降下來了也沒得數(shù)據(jù)了,難道吹壞了?
仔細(xì)一瞅,嘿!把電阻給吹掉了(F***,在硬件的道路上一帆風(fēng)順是不存在滴),焊上電阻后調(diào)小風(fēng)量,加大熱度繼續(xù)吹,還是出事了,那就目標(biāo)鎖定,測波形吧。
分別測量上圖中所標(biāo)識的1、2、3點(diǎn),其中電路設(shè)計中用的限流電阻為1K,三級管為9013。首先測量在常溫下三個測試點(diǎn)得波形吧,第一點(diǎn)波形為隔離芯片ADuM1201輸出引腳,其波形如下圖所示,輸出電壓幅值為5V(忽略掉背景那個人影)。
第二點(diǎn)波形為9013三級管基極控制電壓,其波形如下圖所示,輸出電壓峰值約為700mV,波動范圍約為200mV,即當(dāng)電平為0.7V時三極管導(dǎo)通,當(dāng)電平為0.5V時三級管關(guān)斷。
第三點(diǎn)波形為9013三級管集電極極電壓,其波形如下圖所示,輸出電壓幅值約為5V。
然后本人吹風(fēng)小能手上線,對著就是一頓猛吹,另一個手還要測波形,幸好沒有燙出泡(不然就算工傷)。重新測量了上述三個測量點(diǎn),第一點(diǎn)的波形如下圖所示,波形和加熱前波形基本一致,所以即加熱并不會改變ADuM1201隔離芯片的輸出電壓特性。
那么繼續(xù)測量第二點(diǎn)吧,當(dāng)繼續(xù)加熱到溫度約為55℃時,第二點(diǎn)波形如下圖所示,其電壓的波動范圍變小約為100mV即高電平減小到0.6V,但是低電平還是約為0.5V。隨著溫度的繼續(xù)升高,當(dāng)溫度到65℃時,第二點(diǎn)電壓基本保持在0.5V,且三極管保持導(dǎo)通狀態(tài),因此RS485無法實(shí)現(xiàn)數(shù)據(jù)的發(fā)送。
好了,第三點(diǎn)上線,當(dāng)加熱到溫度約為55℃時,第三點(diǎn)波形如下圖所示,隨著溫度的升高,第三點(diǎn)出電壓保持為低電平,RS485電路為接受狀態(tài)。
我K這不是坑我嗎,讓我來瞅瞅這三極管的特性吧(誰讓我上學(xué)的時候沒有好好學(xué)習(xí)呢),三級管的物理結(jié)構(gòu)為兩個PN結(jié),其Ube電壓特性如下圖所示,其開啟電壓約為0.7V,而且基極與發(fā)射電壓特性與二極管特性相同。
右下圖可以知道,隨著溫度的升高,Ube的特性曲線整體右移,因此三級管的導(dǎo)通壓降降低,使得控制MAX485芯片的RE引腳一直處于低電平,所以無法發(fā)送數(shù)據(jù)。
既然知道溫度對三極管的影響了,那我改唄,由上面的分析可以知道,最終三極管基極鉗位到0.5V,是因?yàn)?V上拉10K電阻與1K限流電阻分壓后將三極管基極鉗位到0.5V。將限流電阻R65改為0R后波形如下圖所示,可以看出電壓波形在0V到0.7V之間波動。
改為0R限流電阻后,繼續(xù)加熱RS485電路,波形如下圖所示,可以看出波形無明顯變化,且串口可以正常發(fā)送數(shù)據(jù)。但由于三極管的基極將ADuM1201發(fā)送引腳強(qiáng)制拉倒0.7V,增大了ADuM1201的輸出電流,長期運(yùn)行時會對器件壽命有嚴(yán)重影響,不改徹底了不是我的性格(主要是怕日后在找我麻煩)。
為了徹底解決這個問題(一勞永逸),經(jīng)過我苦思冥想(假的),根據(jù)三級管的溫度特性,導(dǎo)致了在高溫運(yùn)行下基極門限電壓降低。若只是將ADuM1201輸出限流,電阻減小,會造成器件壽命減少,影響產(chǎn)品質(zhì)量。因此,現(xiàn)將三極管9013改為MOS管GMS2302,由于MOS管為壓控型器件,其本身不會消耗太多功耗。
MOS管GMS2302常溫下,柵極電壓波形如下圖所示,可以看出波形范圍為0V到5V。
MOS管GMS2302溫度約為80℃下,柵極電壓波形如下圖所示,其電壓波形無變化且串口可以正常發(fā)送數(shù)據(jù)。
所以呢,在設(shè)計中,我要有刨根問底(躲坑)的精神,把問題徹底解決了。
這個案例是我親生經(jīng)歷的一個案件,雖然不大,但很具有借鑒意義——最后得出的結(jié)論就是:可以指導(dǎo)我們在以后硬件設(shè)計過程中,若作為開關(guān)使用最好選擇MOS管,且合理選擇限流電阻。
好了,到此結(jié)束。
作者:叫啥才能不重名呢