您需要先了解物聯網是什么,然后才能開始設計附加設備的過程。
物聯網炒作機器已經全面展開了幾年,這是可以理解的——一個擁有數十億智能聯網設備的世界所呈現的潛力很難完全理解。傳感器制造的改進,包括新材料、納米技術和微機電系統 (MEMS),呈現出前所未有的新傳感和監測能力。使用 14 納米晶體管(節點)在半導體制造方面的進步正在允許生產更小、更快的處理器和組件,這些處理器和組件的能耗要低得多,而且價格也更便宜。
目前尚未回答的一個問題是,對未來幾年部署的數十億物聯網設備的廣泛預測是否實用、負擔得起,并且對于設備制造商而言是否有利可圖。讓我們看看您在構建物聯網設備時可能面臨的一些要求和設計決策。
云計算徹底顛覆了我們看待數據處理和使用的方式。可擴展、可擴展的 IT 架構的可用性促使人們假設網絡可以(并且應該)100% 可靠,并且網絡故障是可接受和可管理的。
電子行業預計在未來五到十年內將部署數十億臺低成本的互聯網設備。但是這些低成本設備的設計和生產成本必須在一個合理的商業案例范圍內。畢竟,我們生活在一個資本主義世界。如果我們的產品不盈利,我們就不應該生產它們!
關于物聯網有很多錯誤的想法。有些人認為通過網絡發送數據的傳感器構成物聯網。這是物聯網的一部分——很小的一部分,但不是全部。其他人可能會認為,僅僅因為智能手機用于遠程控制設備或查看數據就構成了物聯網,事實并非如此。智能手機只是物聯網系統的一個組成部分,甚至不是強制性的。
讓我們看看最小的物聯網設備的設計,一個傳感器,它監控一個物理變量,例如溫度或壓力。這個小型傳感設備需要什么設備和軟件?它需要一個測量類比變量的電子元件。它需要一個數模轉換器,或者內置在傳感器本身中,或者通過一個單獨的芯片(這是一個通常集成到微處理器中的功能)。
設備可能需要在傳輸傳感器數據之前對其進行預處理。這種設備中的處理器可以非常簡單,通常是 8 位或 16 位處理器。在此處理器上運行的軟件通常會使用裸機方法編寫。它將是一個單線程應用程序,一個超級循環。
性能要求通常很低,以至于這種設備可以使用紐扣電池運行數年。而且該設備的成本相當低,通常每臺不到一美元。
這正是我們一直在尋找的——一種低成本、低功耗的設備,我們可以制造數十億美元,這樣我們就可以覆蓋整個地球!游戲結束!事實上,這場比賽還遠沒有結束。這正是事情開始變得有趣的地方。首先,處理器的成本與它所包含的內置閃存和 RAM 的數量密切相關。內存越多,芯片就越大,即使是 14 nm 制造的芯片也是如此。但物聯網設備的設計要求越來越多地導致代碼量更大,因此需要具有更多 RAM 的芯片。
第二個問題是時間和成本。新功能使物聯網設備更復雜,更復雜需要更多的開發時間。即使開源軟件的流行使管理者(錯誤地)相信軟件是免費的,軟件工程師的時間肯定不是。
電源管理注意事項
電池供電的設備通常使用某種電源管理軟件。這并不總是一件容易實現的事情。一些微控制器用戶手冊有 400 多頁描述了芯片的所有不同電源模式。要利用所有這些模式,您的應用程序開發必須更加智能,并且設備測試變得更加復雜,從而增加了開發項目的成本。
現在傳感器設備中的數據可用,我們需要傳輸它。這就是傳感器網絡 (SN) 和無線傳感器網絡 (WSN) 發揮作用的地方。例如,使用 ZigBee 和 6LowPAN,設備(節點)運行這些協議棧所需的代碼量約為 100 KB 到 120 KB,具體取決于節點是終端設備還是協調器/路由器。協議棧需要額外的 6 KB 到 8 KB RAM,具體取決于所使用的緩沖區策略。
當今的某些 8 位/16 位處理器可以滿足此代碼和 RAM 空間要求。由于對閃存和 RAM 的需求較高,因此此類處理器的成本較高。數據吞吐量和頻率傳輸總是假設的,并且在 WSN 上通常很低。
請記住,物聯網中的 I 代表互聯網。這意味著,在系統中的某個點,涉及到 Internet 協議;可能不是公共 Internet(網絡),但肯定是私有 IP 網絡(Intranet)。
傳感器網絡代碼的目的是通過本地網絡移動傳感器數據。要將數據傳輸到私有 IP 網絡(或 Internet),我們需要一個額外的設備——邊緣節點或網關。該設備將傳感器網絡橋接到 IP 網絡。它需要用于 TCP/IP 和協議棧的以太網控制器和以太網連接器,或具有適當協議棧的 Wi-Fi 無線電。
完全符合 IETF RFC 的 TCP/IP 堆棧需要大約 100 KB 的代碼空間。單個以太網緩沖區需要 1.5 KB。如果性能不是問題,您的設備只需幾千字節的傳輸/接收緩沖區即可。如果需要更好的性能,則至少需要 30 KB 到 60 KB。這不包括協議棧內部數據結構的內存。
支持 IP 的設備相對較高的內存需求要求增加硬件要求。有兩種方法可以處理這些要求:
使用外部模塊處理以太網/Wi-Fi 通信
在您的設備中使用更強大(也更昂貴)的 32 位處理器
任一種選擇都會對設備的功耗和制造成本產生影響。
使用兩個處理器進行設計是一個很好的解決方案,尤其是當您可以將一個或兩個處理器置于深度睡眠模式以節省電力時。但通信處理器必須是 32 位芯片。
考慮到 TCP/IP 堆棧所需的內存在代碼大小上可能介于 50 KB 和 100 KB 之間,而 Wi-Fi 堆棧是 TCP/IP 堆棧加上 Wi-Fi 網絡管理、身份驗證和加密的總和代碼,它與 TCP/IP 堆棧一樣大。這使得 Wi-Fi 堆棧的大小是 TCP/IP 堆棧的兩倍。因此,如果需要良好的性能,您將需要一個快速的處理器和相當數量的 RAM。
可以以單線程和輪詢方式運行復雜的協議棧(例如 TCP/IP),但這對 CPU 的效率不是很高。如果除了運行協議棧之外,通信處理器還有更多任務,那么實時內核是比單線程超級循環更好的選擇。這樣,用于通信處理器的軟件可以具有可擴展性、模塊化和可靠性,同時可以更輕松地進行團隊開發、產品支持和維護。
IPv4/IPv6 協議
我們已經知道,IPv4 無法提供足夠數量的公共 IP 地址來維持未來幾年的互聯網增長和預測的物聯網設備數量。IoT 設備必須開始使用 IPv6。盡管最早的物聯網系統正在使用并且可以繼續使用 IPv4,但為了持續增長,IPv6 是強制性的。
Google 正在保持有關 Internet 中 IPv6 使用情況的最新統計數據。這意味著物聯網設備在可預見的未來需要同時運行 IPv4 和 IPv6。雙協議棧增加了硬件設計的代碼大小和 RAM 要求。測試兩種協議會增加設備設計和測試階段的時間,最終導致更高的成本。
物聯網設備觸及我們在工業和家庭中的生活。但物聯網沒有得到足夠重視的一個方面是安全性,無論是對您的設備還是對您客戶的數據而言。關于物聯網中對安全性和保密性的需求已經寫了很多,但提出的解決方案相對較少。
數據加密
第一層保護是數據加密,這在數據傳輸到遠程服務器或移動設備時至關重要。數據加密是一個眾所周知的過程。每次我們使用安全連接進行網上銀行或購物時都會這樣做。相同的技術可以應用于物聯網設備。
加密發生在 TCP/IP 堆棧中的 SSL/TLS(安全套接層/傳輸層安全)層中。加密算法是復雜的數學方程,可以獲取數據并對其進行加密。SSL/TLS 層的代碼大小可以在 30 KB 到 50 KB 左右,所需的 RAM 大小甚至更大。安全性適用于每個套接字。在 PC、筆記本電腦、智能手機和平板電腦上,每個插槽通常使用多達 100 KB 的 RAM。在精心設計的嵌入式 SSL/TLS 堆棧上,每個套接字可以減少到大約 45 KB。另一種減少每個 IP 套接字 RAM 要求的方法是在設備和云服務器上使用專有密碼協議,假設客戶端(設備)和服務器之間的客戶協議協商已經到位。
您可以通過使用芯片內置的硬連線加密外圍設備來減少 SSL/TLS 的一些代碼開銷。加密的執行效率更高,但額外的成本從軟件轉移到了硬件,并且需要一些定制軟件工作以使 SSL/TLS 堆棧適應硬件外圍設備。
您如何確保物聯網設備本身不是您網絡上的脆弱點?入侵物聯網設備的技術可以包括:
獲得未經授權的訪問
對設備進行逆向工程,以復制、竊取或破壞商業優勢
通過注入代碼來破壞設備的完整性。此類代碼本身可能不是惡意的,但它可能會非法增強程序的功能,或以其他方式顛覆程序,使其執行所有者或用戶不會批準的新的和未公開的功能
防篡改技術不僅僅是防止盜版;在物聯網中,對于策略執行(即確保設備始終執行其應做的事情)更為重要。有很多防篡改保護機制,包括加密包裝、代碼混淆、保護和水印/指紋。此外,還有許多硬件技術。
當多種保護技術結合使用時,軟件得到最好的保護。這就是可信執行環境 (TEE) 等防篡改方法發揮作用的地方。并且一些廠商提供了自己的專有技術,例如 Intel 的 TXT(可信執行技術)、AMD 的 SVM(安全虛擬機)和 ARM 的 TrustZone。
其他芯片供應商提供基于管理程序的 TEE,或使用 ISO 標準,例如可信平臺模塊 (TPM),這些標準被設計為具有預定義功能集的固定功能設備。不幸的是,所有這些功能都需要更多的晶體管和更多的軟件,從而導致更大的芯片和更高的軟件開發成本。
安全啟動
安全啟動是設備驗證和加載受信任軟件的能力。它是防篡改功能的重要組成部分。通過安全啟動,設備的固件被加密。在啟動時,固件被解密、加載到閃存或 RAM 中并執行。如果固件解密或加載步驟失敗,系統將回滾到已知安全的以前版本的固件。當然,要同時存儲加密和解密的固件,系統需要更多的非易失性存儲器以及用于解密步驟和引導加載程序的附加軟件和 RAM。
遠程固件升級是安全啟動功能的擴展。此功能通常稱為 FOTA(Firmware Over The Air)。當有新版本的固件可用時,設備必須要么接收來自服務器的推送通知,要么輪詢服務器本身以獲取固件更新。一旦設備知道有新的固件更新可用,它必須下載、存儲并執行與上述步驟類似的步驟以實現安全啟動。
除了存儲新固件所需的額外非易失性存儲器外,設備還必須實現必要的通信堆棧和物理層以連接到網絡和后端服務。甚至需要更多的軟件來管理安全的固件升級過程。
安全關鍵認證
許多行業已經對產品實施了某種程度的安全關鍵認證。執行認證以滿足某些國際標準,例如工業控制軟件的 IEC 61508 和醫療設備軟件的 IEC 62304。
為安全關鍵行業構建產品意味著創建一個嚴格的開發流程,在該流程中可以測量、記錄和跟蹤每個可交付成果。軟件/固件可能不會更大,但開發成本肯定會更高。
包括消費產品在內的所有行業現在都在關注由宇宙輻射引起的內存故障。這種由雜散輻射粒子引起的損傷稱為單粒子擾動。這種現象是飛機、衛星和航天器的一個問題,因為高空飛行器更容易受到宇宙射線的影響。這些產品中使用的硅 IC 需要進行抗輻射處理,以防止單事件擾動。
這種現象也可能發生在地面上,但由于地球表面附近的大氣層較厚,發生這種事件的概率相當低。隨著預計將在未來十年內部署的物聯網設備的突然涌現,這種情況即將改變。有數十億個有源設備,單個事件擾亂的可能性增加。
為了防止這個問題,行業開始實施IEC 60730,這是家用電器電子控制的安全標準。遵循此標準的設備必須能夠檢測內存故障,并安全地停止設備,或以其他方式糾正問題。同樣,為這個問題投入更多的晶體管和更多的軟件會增加產品開發的成本。
設備生命周期管理
生命周期管理是另一個可以增加開發過程復雜性的功能。您的設備需要配合產品制造商或系統用戶制定的任何設備生命周期要求。需要明確的是,設備生命周期管理包括:
注冊設備(授權其在系統中的操作)
配置設備(設置操作參數和產品選項)
自動報告問題和故障
更新設備的固件以解決錯誤或提供功能增強
為計費目的提供數據(和其他使用統計)
沒有現有的設備生命周期管理標準。存在多種解決方案,但它們都是專有的。不用說,我們不是在談論輕量級軟件。即使它會降低運營成本,實施生命周期管理也會增加任何系統設計的開發和維護成本。
在某些行業,例如消費市場,標準仍在努力出現。相反,這些行業正遭受標準碎片化的困擾。消費市場正在提出多種標準。例如,Apple 正在提議其專有的 HomeKit;谷歌在收購 NEST 后,正在開發一種叫做 Thread 的東西。英特爾成立了開放互連聯盟(OIC);高通將其 AllJoyn 計劃剝離為 AllSeen。
如果您是消費品制造商,您可能必須決定您的業務和產品要與哪個專有標準保持一致。在某些情況下,您可能需要使用多個標準。例如,必須能夠連接到來自多個供應商的設備的網關可能需要支持任何或所有這些標準。
如您所見,物聯網并不是一種萬能的技術。它更像是一盒樂高積木,其中的積木代表本地和無線網絡、傳感器、能量收集、電池、微控制器、互聯網協議、網絡技術、數據庫、分析、3G/4G 智能手機、平板電腦等。這些部件可以以各種方式使用。
為了滿足對未來十年部署的數十億物聯網設備的預測,每臺設備的成本必須在一個能夠產生有利可圖的商業案例的范圍內。否則,它永遠不會發生。然而與此同時,消費者要求更堅固、更安全和更靈活的設備。這些額外的要求不能是事后的想法。物聯網是真實的,但這些苛刻的限制可能會減緩其采用和實施。數十億臺設備將會出現,但可能需要十年以上的時間。
審核編輯:郭婷
-
傳感器
+關注
關注
2576文章
55041瀏覽量
791375 -
物聯網
+關注
關注
2945文章
47820瀏覽量
415053
發布評論請先 登錄
揭秘芯片測試:如何驗證數十億個晶體管
數十年堅“芯“路,未來都是星辰大海——專訪中電辰星創始人唐棟梁先生
云天勵飛出席GAIR 2025 AI算力新十年專場
深耕藍牙物聯網十年:北京桂花網 2015-2025 發展大事件全景
十年·NDI在中國|影像志:見證視頻IP化的成長與未來
NDI 十年:誕生 · 愿景 · 發展 · 未來— 獨家專訪 NDI 創始人 Andrew Cross博士
TMC2300步進驅動IC深度解析:從靜音到節能,超小尺寸賦能物聯網
十年積淀,DPVR AI眼鏡將正式亮相
如何選擇合適的物聯網藍牙模塊?
物聯網的應用范圍有哪些?
物聯網未來發展趨勢如何?
十年磨一劍,百頻通萬物:國產無線通信突圍之路
未來十年數十億的物聯網設備可能是白日夢
評論