24小時聯系電話:18217114652、13661815404
中文
技術專題
為什么要在嵌入式系統中加入數字輸入采樣
為什么要在嵌入式系統中加入數字輸入采樣
在電子產品中,采樣所帶來的意義不同于悠閑地吃各種零食。在嵌入式系統中,數字輸入信號在告訴系統下一步行動的過程中起著重要作用。我意識到,當我正在維修的停車機器決定在豪華車通過前撞掉自動障礙物時,數字輸入采樣是多么重要。這是您可以使用數字輸入采樣來避免必須處理此類情況的方式。
什么是輸入采樣及其重要性
從理論上講,數字信號被轉換為邏輯1和0。在嵌入式系統中,它們通常由電壓值表示。如果微控制器以3.3V工作,則邏輯1將為3.3V,邏輯0將為0V。在紙上,這些邏輯電平看起來像一條完美的水平線,它連續不斷地運行直到邏輯狀態改變為止。實際上,這些信號通常會被電噪聲打斷,從而引起電壓電平的突然尖峰或下降。
在自動付款停車系統中,指定停車區的入口和出口處均設有自動障礙物。駕駛員通常通過從機器上取票或刷一張感應卡來進入這些區域。保護入口和出口的停車機配備了車輛檢測器。這些檢測器使用邏輯電平來指示車輛在其感應區域中的存在。
在自動障礙物降落在豪華車上的情況下,當車輛通過時,系統會錯誤地檢測到來自入口檢測器的負信號。車輛在障礙物下方時,它關閉了障礙物。當此事件在幾個不同的地方再次發生時,我要求調查機器的固件。我驚駭地意識到,關閉障礙物的決定是通過評估車輛檢測器信號的單個實例而做出的。
如何在嵌入式系統中對數字輸入進行采樣
通常,數字采樣涉及以特定間隔捕獲信號值并將其存儲在循環緩沖區中。循環緩沖區是在微控制器中進行緩沖的一種方法。值作為變量數組存儲在靜態隨機存取存儲器(SRAM)中,當值到達末尾時,它將在開始時覆蓋。根據應用的不同,樣本數量可能在5到10之間變化,采樣周期為1毫秒。
使用這種方法,微控制器具有多個值,以根據其邏輯算法執行下一步操作。對于車輛檢測器中的電子噪聲,微控制器可能會從10個樣本中讀取一個錯誤值,并防止在汽車通過之前關閉自動屏障。在關鍵應用中,程序員可以對評估樣品提出更嚴格的要求。通過要求所有樣本在執行算法之前都具有相同的邏輯來完成此操作。
在固件中實施數字采樣很容易,并且它們可以有效地穩定系統。
在停車系統的情況下,我對包含此簡單采樣方法的固件進行了快速修復。這樣一來,有問題的停車系統就不會對其他車輛造成更大的破壞。部署更新的固件后,停車機會意外地停止關閉障礙物。當然,不用說,如果PCB本身在設計時沒有考慮信號完整性,固件中的數字采樣效率可能會降低。