數(shù)字示波器具有很多測量參數(shù),如上升時間、下降時間、峰峰值、幅值等。每種參數(shù)的含義在示波器的操作手冊上一般都有說明。但是,如果深究每個參數(shù)底層算法的源頭是什么,答案其實并不簡單。如果能深刻理解示波器的基本算法,這會有助于我們理解使用示波器過程中遇到的諸如示波器測量頻率為什么測不準(zhǔn)?示波器測量不規(guī)則的信號測量上升時間為什么跳變范圍很大?為什么光標(biāo)測量結(jié)果和參數(shù)測量結(jié)果差別很大?等等一些問題。
●確定高電平和低電平是示波器垂直量測量的第一算法
峰-峰值表示所有采樣樣本中的最大樣本值減去最小樣本值,這好理解,在示波器算法中也好實現(xiàn);而幅值表示被測信號“高電平”減去“低電平”。高電平和低電平分別在哪里?這就需要定義算法。這個算法的確定將不只是直接影響到“幅值”這個參數(shù)值,還將影響到絕大多數(shù)水平軸的參數(shù)值,如上升時間、下降時間、寬度、周期等,因為水平軸的參數(shù)要依賴于垂直軸的參數(shù)。
不同示波器廠商給出的“高電平”和“低電平”算法可能不盡相同,但一般會采用公認(rèn)的IEEE定義的算法,如下圖所示。
首先對圖示中“LEFT CURSOR”(左光標(biāo))和“RIGHT CURSOR”(右光標(biāo))時間范圍內(nèi)的波形數(shù)據(jù)樣本向垂直方向做“軌跡直方圖”,從圖中看上去,軌跡直方圖的垂直方向和原始波形的各采樣點在垂直方向的位置一一對應(yīng),水平方向則表示在各位置上采集到的數(shù)據(jù)樣本點的個數(shù)。圖例中有兩個位置的數(shù)據(jù)樣本出現(xiàn)的概率最高,這兩個位置就分別被確定為“高電平(圖示中表示top的位置)”和“低電平(圖示中表示base的位置)”。
在示波器算法中,一般默認(rèn)是根據(jù)屏幕最左邊到最右邊的全部波形數(shù)據(jù)來確定“高電平”和“低電平”,因此,示波器每捕獲一次,僅能得到一個“高電平”和一個“低電平”的參數(shù)值。
在測量正弦波時,在采樣率足夠的情況下,示波器上捕獲盡可能多的波形,測量得到的高電平和低電平更穩(wěn)定、更準(zhǔn)確,相應(yīng)由之影響的水平軸參數(shù)上升時間、下降時間、周期、頻率等也就更準(zhǔn)確。對于正弦波測量,還可利用正弦插值或等效采樣模式來提高待分析的樣本數(shù),測量得到的結(jié)果可能也會更準(zhǔn)確。
在測量一個脈沖方波和測量多個脈沖方波得到的“高電平”和“低電平”的結(jié)果可能是不一樣的,因為統(tǒng)計的樣本數(shù)不一樣,獲得的“軌跡直方圖”就會有些差異。如果信號上有一點點的過沖或下沖就可能影響到直方圖分布的最大概率狀態(tài)的確定,那么很多參數(shù)測量的結(jié)果都會受到影響。
●確定波形中任意一電壓閾值和波形交叉點對應(yīng)的時間軸的位置是示波器水平量測量的第一算法
水平方向上常見的測量參數(shù)如上升時間定義為幅值的10%-90%。在具體算法上,就是先根據(jù)上述的垂直量第一算法,先確定高電平和低電平從而得到幅值,再由幅值的10%得到對應(yīng)的電壓閾值和幅值的90%得到另外一個電壓閾值,計算兩個電壓閾值和波形交叉點對應(yīng)的水平位置之間的時間差就是上升時間。
怎么確定某個電壓閾值和波形交叉位置處對應(yīng)的時間軸的位置?一種比較簡單的算法是,在電壓閾值處劃一條線,以這條線和波形相交處最接近的那個采樣點對應(yīng)的時刻作為時間軸的位置。但是,這種算法帶來的誤差可能會很大,特別是在上升沿一般只包括了幾個數(shù)據(jù)樣本點,采樣率不是特別高的情況下。
另外一種算法如下圖所示,在電壓閾值和波形交叉處相鄰的兩個采樣點之間進(jìn)行立方插值,然后連接最接近交叉點的上、下兩個插值點或采樣點,根據(jù)這兩個確定的點可以獲得y=ax+b這個二元一次方程的a和b,然后再根據(jù)交叉點已知的電壓閾值獲得x,即獲得了水平軸對應(yīng)的位置。這種看起來比較復(fù)雜的算法誤差顯然會小于前一種,但仍然會存在誤差,誤差的大小和采樣率大小及示波器本身的時基穩(wěn)定性有關(guān)。
電壓閾值是由幅值決定的,譬如周期表示上升沿50%到相鄰上升沿50%之間的時間間隔,上升沿的50%這個電壓閾值就是由幅值得來的。因此,垂直量的算法會對水平量的參數(shù)結(jié)果產(chǎn)生影響。