巧用示波器探查4G移動通信模塊供電問題

前不久,由我親自操刀設計的4G移動通信模塊終於小批量製作了幾十片樣品。

該4G模塊主要是跟現有的 採用WiFi連接的中文可編程控制器系列產品對接,提供更加便捷、穩定而且免維護的遠程連接方式。

一如研發的其它產品,我對樣品作了詳細的電性能測試,‘

主要側重於電源相關電氣性能的測試;

同時,根據測試例做了完整的軟件軟件;

軟件測試比較簡單,控制器通過UART接口與4G模塊對接,再與雲服務器上的TCP服務端建立TCP長鏈接。

在服務器上用poython創建了一個TCP客戶端,隨機發送測試的數據給4G模塊,由4G模塊轉發給控制器,控制做出應答,由4G模塊發送給TCP服務端,由TCP服務器轉給python編寫的TCP客戶端。

由python腳本統計數據收發的延時、丟包率、長期工作穩定性等等。

之後,就是採用高低溫箱的一些環境試驗,一切都很順利。

最後的試驗是由移動網絡切換到電信網絡的測試;

當把流量卡由移動改為電信時,出現了問題:

4G模塊概率性重啟,模塊重啟不外乎以下幾種情況:

1)瞬間工作電流大,電源發生了跌落,瞬間降至其工作電壓3.4V以下。

2)串入了干擾信號,使得模塊發生了復位。

3)程序有bug,發生了訪問越界,非法訪問,除零等錯誤;

試驗時的空間環境應該比較純淨,附件也沒有什麼大的電器工作,應該不至於有干擾信號使得4G模塊復位。

雖然我並沒有選擇通過AT指令控制的4G模塊,而是選用支持二次開發的版本並做了複雜的二次開發,把所有聯網功能的代碼都實現在了模塊上。

但是,程序已經通過了長時間的自動測試,沒有出現問題,而且從trace的log來看,沒有看到程序崩潰的現象。

於是,我聚焦到了第一個可能性上。

4G模塊的供電電路是這樣的:


巧用示波器探查4G移動通信模塊供電問題

4G模塊供電電路

最大電流為2A的DC-DC經過2A的LDO輸出4.0V的電壓給4G模塊供電。

為了保證在發射信號時提供足夠的burst電容,C32特意選了比較大的電容。

難道是因為控制板上的5v到4G模塊的導線比較細長,導致5V的DC-DC給LDO供電的阻抗比較高。

不能及時給模塊供電?

那為什麼移動網絡沒有問題,而電信網絡剛開始測試就碰到問題?

難道是因為電信網絡的信號比較差,導致4G模塊發射信號的功率增加,所需要的電流更大?

在我的大腦的高速運算之後,我拿出了電子工程師必備的利器-示波器。

第一步,測試4V和5V電源的紋波,將通道設置為交流耦合,幅度調整到mV級。

看到如下的波形,並沒有看到明顯會引起模塊復位的波形,所看到尖端應該是示波器探頭所引入的干擾。


巧用示波器探查4G移動通信模塊供電問題

4.0V電源的紋波

第二步,利用示波器非常重要的功能-觸發功能捕捉跌落的電平。


巧用示波器探查4G移動通信模塊供電問題

示波器觸發功能的設置


1) 觸發的信源設置為測試所用的通道(比如CH1);

2) 觸發電平調節到3.5V左右;

3) 斜率設置為“下降沿”;

4) 觸發方式設置為“正常”。

啟用python的TCP客戶端,每隔幾秒向控制器發送查詢命令,使得4G模塊定時發送數據。

最後,泡上一杯小茶,慢慢等待兇手的出現。

不一會,果然抓到了兇手,示波器捕捉下了如下的波形,4V的電源突然發生了跌落,並且跌落至模塊工作電壓3.4V 以下,導致了復位。

巧用示波器探查4G移動通信模塊供電問題

4V電壓跌落波形

我把4V電源的儲能電容C32再一步增加,藥到病除,示波器不再捕捉到異常跌落的波形。

生活又恢復了往日的寧靜,

4G模塊又開始通過電信網絡歡快地閃爍著通信正常的指示燈向服務器發送數據,

我又投身到了其它新產品的研發。


分享到:


相關文章: