原文:how to be strategic about building your iot prototype翻譯:安翔
審校:蘇宓
建立物聯網(iot)原型對於工程師來說是具有成就感,有時卻令人沮喪的過程之一。你接通 iot 原型裝置的電源,開啟電源開關,這一次信心滿滿,心想「這一次應該可以正常工作了」。然而,卻看到裝置**,燒焦,一片狼藉;或者更多的時候系統是沒有任何反應的。
這次到底又是**出錯了呢?
事實上,建立物聯網(iot)原型對於工程師來說是具有成就感,有時卻令人沮喪的過程之一。
這是有益的,因為創造性的思想,物聯網為我們提供最新和最前沿的機會與世界各地互動,同時提供一種新穎的方式讓世界與我們互動。
這是充滿挑戰的,因為物聯網產品雖然表面上看起來比較簡單,實際上它是乙個跨越了多個不同學科的非常先進的工程專案,它包含了電氣工程、韌體開發、機械整合、無線網路、移動應用開發、伺服器和資料庫設計以及雲處理。
當你完成產品構想之後,就準備開始正式構建原型了。無論你的想法是寫在餐巾紙背面還是有詳細的pds(產品設計規範),直接構建乙個立即推入市場的產品都是充滿風險的。
很多東西都充滿未知:你的客戶最關心哪些功能?裝置中的哪些功能點客戶不關心?哪些功能是客戶需要但是你還沒有考慮到的?設計中最昂貴和最困難的部分是什麼?
你或許會嘗試通過自己的經驗和調研進行猜測,但事實是有些東西你很難進行準確定位。此外,如果針對 iot 硬體產品的猜測出現誤差,那麼想要扭轉局面將會比純軟體產品代價高得多,因為「重新編譯」(設計、開發、生產)電子裝置所需的時間相比軟體來說更加漫長。
理想的方案是先建立原型設計,根據反饋資訊並測試自己的一些假設,然後再開始將原型進行產品化,但是現實中資本和時間通常不允許你耗費太長的時間在原型階段。基於這樣的情況,解決該難題的方案也就應運而生,它就是:戰略原型。
原型開發的前期準備將決定最後的原型產品化過程是否順利、快速、滿足需求;如果原型設計不到位,產品化過程將耗費漫長的時間,並且讓你不斷觸碰物聯網硬體開發的種種壁壘。
本系列文章的目標是為你配備工具 ,以便你的iot原型設計取得成功。
目前市面上有很強大的工具用於開發聯網裝置(更多的細節將在本系列的第二部分介紹),你不必自己做太多的開發工作。
然而,對於每個產品開發過程,必須有乙個優秀的專案把控者,他需要了解專案的方方面面,使用的工具,以及如何構建原型,並盡可能地節省開發時間。
接下來,我們將解釋和分析你的 iot 開發需求,以確定原型為主要目標,了解約束條件,並將設計思路轉化為功能點。
乙個 iot 原型將至少有兩個,通常有三個整合介面:
開發 iot 原型充滿挑戰的乙個關鍵原因是,為硬體裝置建立聯網程式所需的技能集合與開發和維護 web 伺服器所需的技能集合有很大的差異,反之亦然。
因為即便是很熟練的軟體工程師可能也看不懂硬體原理圖,而電子工程師則對用於控制裝置的行業標準 ios 移動應用的開發知之甚少。
鑑於現狀,我們開發了一種方法,用於剖析乙個 iot 原型路線圖,我們稱之為:目標 - 約束- 模組 [gcm] 圖。
下面我們將分解 gcm 圖的各個部分。雖然它最初可能看起來有點複雜,但它確實是乙個非常有用的工具,可以快速構建戰略原型開發路線圖,並且可以幫助我們識別原型的關鍵部分,並選擇合適的工具來正確地構建裝置。
我們的原型方法的第一步是簡潔地在架構層面定義你的原型及其目的。這是 gcm 圖表的「 目標 」部分。
你正在建立乙個iot原型,事實上大多數這樣的原型是不存在或者不太容易實現的。你的裝置如何使它變得特別?它有什麼作用?它是如何工作的?我們將其稱為原型的「目標」,其主要目的是對映出各層級裝置和資訊流的關係。
事實證明,即使iot原型很複雜,你也可以很簡單地表示資訊架構 - 「目標」。以下是三個示例,顯示三種不同的iot原型的目標。
以下是為原型設定目標的方法。檢視原型的每個部分以及物理裝置。它的目的是什麼?它在做什麼?它如何與移動應用程式或 web 應用程式通訊?對於移動應用和 web 應用也需要做同樣的思考。
充分了解裝置的目標是為你的原型設計展示資訊流的關鍵途徑。
目標設定了原型的整體規劃,接下來重要的是了解你的原型製作過程以及原型本身存在的約束和限制。這是 gcm 圖的「約束」部分。
上圖中提到的內容是 iot 原型的常見約束,但是,通過提出以下問題可以確定特定原型的進一步約束:
原型的目標是什麼 - 是做現場測試來證明這個想法嗎?是用來展示給你的經理或者董事會從而獲得他們進一步的支援?是從投資人那裡獲得投資嗎?或者,原型本身就是目的?
了解原型的關鍵約束、次要約束、無約束,有助於確定一條清晰的原型開發規劃圖。
既然已經為原型定義了目標和約束條件,接下來就通過各個功能部件構建原型 - 這將為原型選擇合適的工具和硬體提供明確的選擇。這是 gcm 圖的「模組」部分。
任何 iot 產品至少需要以下模組中的乙個:
此外,大多數 iot 產品還會具有以下各種模組:
接下來我們詳細看看這些模組,了解一下哪些模組適合自己的原型。
通訊模組
資訊將如何從你的裝置傳輸到網際網路?這可以通過無線或有線連線實現。
常見的無線通訊模組有:
ble 功耗非常低,沒有月租,並且能夠直接與移動裝置通訊。ble 的缺點是它的通訊範圍有限 - 最大100英呎;頻寬有限(實際上小於100 kbps)。然而,覆蓋範圍問題通常可以使用 ble-wifi 或 ble-cell 無線閘道器集線器來解決。
wifi 提供其覆蓋範圍內的任何裝置直接接入網際網路的功能。wifi 在 iot 裝置上的配置需要一點挑戰,但是一旦配置成功,它將提供相對於 ble 來說高得多的資料傳輸速率。wifi 比 ble 具有更高的功耗,但資料傳輸速率也更高。
蜂窩網路的優勢在於它提供比 ble 和 wifi 更廣泛的覆蓋範圍;在任何蜂窩網路覆蓋到的地方,你的 iot 原型都可以直接接入網際網路。它的缺點是需要每個月向網路運營商上交資料流量費用。我們建議盡量避免使用2g,因為它在美國已經日薄西山了,推薦使用3g或者即將推出的以 iot 為中心的 4g-m 解決方案。
其他一些小眾的通訊模組:
處理器模組
處理器是原型的大腦 - iot裝置處理器通常是低功耗微控制器。
選擇處理器時需要考慮如下三個因素:
處理器的記憶體是否滿足需求
微控制器的開發環境是什麼?是否容易使用和免費?
處理器的硬體功能和介面能力 - 它是否具有合適的通訊介面
常用於 iot 原型的處理器平台有:
電源模組
iot 裝置功耗通常是很低的,但它仍然需要供電。市面上有多種電源方案,參考 gcm圖中的約束限制條件選擇適合你原型的方案。
常用的 iot 裝置的電源模組有:
使用者輸入、輸出模組
有多個現成的模組提供使用者與裝置之間的互動。
使用者互動模組示例如下:
感測器模組
感測器模組用於裝置收集周圍的環境資訊。
常用的環境互動模組有:
執行模組
執行模組用於改變裝置及其周邊物件的狀態。
常用的執行模組有:
原型開發是物聯網產品開發的關鍵一環。然而,如果沒有正確定義 iot 原型的目標、約束和模組,那麼就很難細化原型的開發過程。
使用 gcm 流程預定義你的 iot 原型的所有路徑可以讓目標更為清晰和明確,並可以作為選擇合適工具的指南,以便快速啟動乙個有益的且無障礙的原型開發過程。
如何建立物聯網平台
為了了解物聯網平台為什麼是物聯網所必需的,我們需要先知道什麼是物聯網,以及為什麼公司和消費者能從中受益。物聯網是一種架構,而不是單一的技術。也就是說,物聯網需要以一種特定的方式連線現有技術和裝置,使人們和公司能夠完成全新的事情,並且通過這種方式,為他們創造價值。由於可以創造如此眾多價值,許多公司都想...
使用 AWS 雲平台構建物聯網應用
當我們沒有足夠的能力或者時間去開發一些物聯網雲平台的時候,使用一些現有的成熟的雲平台是乙個很好的選擇。通常來說,這些平台可以為我們帶來更快的開發速度和更簡單的解決方案,並且可以讓我們集中於實現上的業務邏輯。我們只需連線上我們的裝置 上傳我們的資料,就可以在地球的另一端觀察這些資料的變化。在這些物聯網...
構建物聯網雲平台 「搞活」資料價值
物聯網很火,火在晶元 火在裝置 火在連線,但是卻很少能讓這些物聯網裝置產生的資料真正活起來,產生更多的價值。江波龍通過與ibm攜手建立物空 wukoon 雲資料服務系統,通過高效能 標準化及規模化的模組應用,將裝置連線至雲系統進行管理 資料的儲存 查詢 分析與挖掘,以及提供人工智慧方面的應用等,從而...