傳感器的數量在整個地球表面和人們生活周遭空間激增,提供世界各種數據訊息。這些價格親民的傳感器是物聯網發展和我們的社會正面臨數字化革命背后的驅動力,然而連接和獲取來自傳感器的數據并不總是直線前進或那么容易。本文將介紹傳感器技術指標、5大設計技巧及代工企業。
首先技術指標是表征一個產品性能優劣的客觀依據。看懂技術指標,有助于正確選型和使用該產品。傳感器的技術指標分為靜態指標和動態指標兩類:靜態指標主要考核被測靜止不變條件下傳感器的性能,具體包括分辨力、重復性、靈敏度、線性度、回程誤差、閾值、蠕變、穩定性等;動態指標主要考察被測量在快速變化條件下傳感器的性能,主要包括頻率響應和階躍響應等。
由于傳感器的技術指標眾多,各種資料文獻敘述角度不同,使得不同人有不同的理解,甚至產生誤解和歧義。
傳感器的設計要點
1、一般所測得的物理量是非常小的,通常還帶有作為傳感器物理轉換元件固有的轉換噪聲。比如傳感器在1被放大倍率下的信號強度為0.1~1uV,此時的背景噪聲信號也有這么大的水平,甚至于將其湮滅。如何將有用信號盡量取出并且壓低噪聲是傳感器設計的首要解決的問題。
2、傳感器電路一定要簡單精煉。設想具有3級放大電路的,帶有2級有源濾波器的放大回路,放大了信號的同時也將噪聲放大了,如果噪聲不是明顯偏離有用信號頻譜,則無論怎樣濾波兩者同時放大,結果信噪比沒有提高。因此傳感器電路一定要精煉簡約。能省1只電阻或電容就一定要將它去掉。這一點是許多設計傳感器的工程師們容易忽略的問題。已知的情況是,傳感器電路隨著噪聲的問題困擾,電路越修改越復雜,成為怪圈。
3、功耗問題。傳感器通常在后續電路的前端,有可能需要較長的引線連接。當傳感器功耗較大時引線的連接將會所有的無謂噪聲以及電源噪聲引入使得后續電路愈發難以設計。在夠用的情況小如何降低功耗也是一個不小的考驗。
4、元器件的選用和電源回路。元器件的選用一定要夠用為好,只要器件指標在需要的范圍之內就可以了,余下的就是電路設計問題。電源是傳感器電路設計過程一定要遇到的難題,不要追求無法達到的電源指標,而選擇一款帶有較好的共模抑制比的運放,采用差分放大電路設計可能最普通的開關電源以及器件就能滿足你的要求。
傳感器五大設計技巧
1、先從總線工具開始
第一步,工程師應當采取首次介接到傳感器時,是透過一個總線工具的方式以限制未知。一個總線工具連接一臺個人計算機(PC),然后到傳感器的I2C、 SPI或其他可讓傳感器可以“說話”的協議。與總線工具相關的PC應用程序,提供了一個已知與工作來源用以發送和接收數據,且不是未知、未經認證的嵌入式微控制器(MCU)驅動程序。在總線工具的工作環境下,開發人員可以傳送和接收訊息以得到該部分如何運作的理解,在試圖于嵌入式等級操作之前。
一旦開發者已嘗試使用總線工具的傳感器,下一步就是為傳感器編寫應用程序代碼。并非直接跳到微控制器的代碼,而是在Python編寫應用程序代碼。許多總線 工具在編寫腳本(writing scripts)配置了插件(plug-in)和范例碼,Python通常是隨著。NET中可用的語言之一。在Python編寫應用程序是快速且容易的, 其并提供一個方法已在應用程序中測試傳感器,這個方式并未如同在嵌入式環境測試的復雜。擁有高層級的代碼,將使非嵌入式工程師易于挖掘傳感器的腳本及測 試,而不需要一個嵌入式軟件工程師的照看。
3、以Micro Python測試傳感器
在Python寫下第一段應用程序代碼的其中一個優勢是,透過調用Micro Python,應用程序調用到總線工具應用程序編程接口(API)可易于進行更換。Micro Python運作在實時嵌入式軟件內,其中有許多傳感器可供工程師來了解其價值,Micro Python運作在一個Cortex-M4處理器,且其是一個很好的環境,以從中為應用程序代碼除錯。不僅是簡單的,這里也不需要去寫I2C 或SPI驅動程序,因為它們已被涵蓋在Micro Python的函式庫中。
4、利用傳感器供貨商代碼
任 何可以從傳感器制造商“搜括”到的范例碼,工程師需要走一段很長的路才能了解傳感器如何工作的原理。不幸的是,許多傳感器供貨商并非嵌入式軟件設計的專家,因此不要期待可以發現一個可投入生產的漂亮架構和優雅的例子。就使用供貨商代碼,學習這部分如何運作,之后重構的挫折感將出現,直到它可以被干凈利索地整合到嵌入式軟件。它可能如“意大利面條般(spaghetti)”開始,但利用制造商對其傳感器如何運作的理解,在產品推出之前,將有助于減少許多得 被毀掉的周末時間。
5、使用一個傳感器融合函式庫
機會是,傳感器的傳輸接口并不是太新,且先前沒有人這么做過。已知的所有函式庫,如由許多芯片制造商提供的“傳感器融合函式庫”,以協助開發人員快速掌握、 甚至更好,更可避免他們陷入重新開發或大幅修改產品架構的輪回。許多傳感器可以被整合至一般類型或類別,而這些類型或類別將使驅動程序順利被開發,若處理得當,幾乎是普遍或是少可重復使用。尋找這些傳感器融合函式庫,并學習它們的優點和短處。
感測器被整合至嵌入式系統時,有許多方式可以幫助提高設計時程和易用性。開發者在開始設計時,透過一個高層次抽象概念,以及在把傳感器整合進一個較低等級的 系統之前,學習傳感器如何運作,就絕對不會“走錯路”。今天存在的眾多資源將可協助開發人員“旗開得勝”,而無須從頭開始。