您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關物聯網項目為什么選擇編程語言,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
要選擇物聯網項目使用的語言,您首先必須了解物聯網生態系統。這一點非常重要,因為不同級別的軟件和固件所使用的處理器架構和資源相差很大。
首先,對用于軟件開發的物聯網設備進行一個簡單的分類。
位于底部的是邊緣設備。這些設備和周圍的世界互動,代表了可穿戴和其他互聯設備。這些設備采集并創造數據,通過致動器與世界互動。
中間的級別是網關。這些設備屬于中間設備,用于將數據傳輸到其它系統,以進行處理。網關也可以從許多邊緣設備中收集數據,提供一條連接終端設備的控制路徑。
位于頂部的是云。云是一系列可擴展計算、網絡和存儲資源,能夠對終端設備和網關收集的數據進行存儲、分析和可視化處理。
3個級別的示例包括面向終端設備的英特爾Galileo開發板和英特爾Curie計算模塊、網關級別的英特爾物聯網網關和云級別的WindRiver*Helix*LabCloud。
由于物聯網生態系統分為多個層面,現在讓我們來了解每個級別所使用的語言。
以可穿戴設備為代表的終端設備,由于受到空間和功率的限制,通常采用資源受限的嵌入式系統。如圖2所示,英特爾Curie模塊和紐扣差不多大,由硬幣大小的小型電池供電。由于英特爾Curie模塊資源極少,適合它的常用語言包括匯編語言和C語言。盡管C語言是嵌入式固件開發的通用語言,但有時仍需將盡可能多的指令寫入設備。在這種情況下,匯編語言是一個絕佳的選擇。其缺點是需要較長的開發時間,時間長短取決于您對該語言的熟練程度。
英特爾Edison開發板是終端設備的另一個例子(見圖3),您可以將它用于可穿戴設備或通用物聯網產品中。和集成了一臺微控制器的英特爾Curie模塊不同,英特爾Edison開發板采用雙核英特爾凌動處理器,計算能力顯著增強(和SD卡一樣大)。由于英特爾Edison開發板運行Linux*,C語言是比較理想的選擇,但是您也可以使用其它語言,包括Python*和Node.js*。Python*適合快速構建原型和產品部署,但是性能低于本地編譯的C語言。如果您使用英特爾XDK,可以利用Node-RED*運行Node.js*(Java*)。Node-RED*幫助您輕松構建和運行數據流,提供了一種圖形開發方法。運用Java*語言知識能使該環境變得更強大。
在網關級別,來源于各種設備的數據通過若干總線傳輸至網關,進行數據傳送和分析,因此,網關的計算能力顯著提升。由于計算性能卓越,網關可以運行更強大的語言或解釋性語言,進一步提升性能。
選擇項目的編程語言需要考慮目標環境(包括處理器)和可用的資源。由于可用資源規模龐大,在云內部開發軟件具有許多可能性,但是針對小型微控制器開發嵌入式固件時,需要更有效地控制,盡量減少指令數量,最大限度地提高執行速度、強化資源管理。
看完上述內容,你們對物聯網項目為什么選擇編程語言有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。