色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何幫助設計人員避免漫長的物聯網開發過程

工程師兵營 ? 來源:互聯網 ? 作者:佚名 ? 2018-07-16 09:40 ? 次閱讀

物聯網 (IoT) 應用中,用戶將能夠即時訪問有關健康、環境和機器的詳細信息。但是,對于開發人員而言,物聯網提出了眾多要求,涉及到多個專業,包括無線傳感器設計、安全通信和基于云的軟件開發。

隨著需求的快速變化和新機會的不斷出現,開發人員面臨的挑戰更加嚴峻,用于將概念轉化為實際物聯網應用的時間越來越短。

本文將討論物聯網應用的設計。本文還將闡述 Renesas 物聯網沙箱和 Renesas Synergy S3A7 物聯網快速原型開發套件組成的全面的平臺如何幫助設計人員避免漫長的物聯網開發過程。

物聯網應用要求

物聯網應用向設計人員提出了極其多樣化的苛刻要求。與傳統的嵌入式設計或后端軟件系統不同,物聯網應用需要涵蓋各個系統和服務的復雜層級結構的專業知識(圖 1)。

圖 1: 物聯網應用是基于復雜層級架構來構建的,這種架構是將從多個可信來源獲取的數據轉化為有意義信息所必需的。然后,這些信息可以直接提供給用戶,或者在企業中進一步使用。(圖片來源: Microsoft Corp。)

在外圍,開發人員需要從眾多傳感器節點收集數據,實現高度精確的傳感器數據采集,這些節點可能包括利用合適的客戶端軟件升級的現有設備、僅依賴電池電源長期工作的定制設備。很多情況下,系統架構師使用中間網關到達終端節點,該網關設計用于聚合數據,特別是來自物聯網設備的數據,采用了短程無線技術。

物聯網節點和網關使用標準通信協議,需要安全、快速、可靠地將數據有效負載傳輸到應用。如圖 1 所示,物聯網開發人員需要協調大量基于云的服務以處理基本任務,例如調配新設備和服務、驗證授權設備的身份、維護數據流、存儲數據等。最后,用于數據分析和機器學習的特定應用服務幫助軟件工程師將原始數據轉換為對最終用戶有意義的信息。

快速物聯網開發

雖然物聯網開發人員可以快速找到實施復雜分層物聯網架構的各個部件,但對于新開發人員而言,要將物聯網的所有這些部件集成在一起,仍然是一項令人生畏的任務,即便對于經驗豐富的工程師,也要消耗大量時間。Renesas 物聯網沙箱的設計目的是簡化物聯網開發,它提供了一整套軟件組件,這些組件是將數據從終端節點移動至云、再將信息提供給最終用戶所必需的。

物聯網沙箱可與 Renesas Synergy S3A7 物聯網快速原型開發套件配合使用,它提供了完整的端到端開發平臺,讓開發人員能夠快速部署物聯網原型,而只需少量開發工作。開發人員可使用一系列菜單來配置沙箱,通過基于云的處理服務來傳輸傳感器數據,這些服務能夠快速響應事件,與其他云服務交互,提供詳細分析,并且支持用戶的移動設備(圖 2)。

圖 2: Renesas 物聯網快速原型開發套件和物聯網沙箱配合使用,提供完整的開發平臺,用于物聯網應用的快速原型開發。(圖片來源: Medium One)

Renesas Synergy S3A7 物聯網快速原型開發套件是一種高性能的實時平臺,基于 Renesas R7FS3A77C MCU,用于設計和評估物聯網無線傳感器節點設計。S3A7 MCU 板包括 32 MB 閃存、2.4 GHz Wi-Fi 模塊 (802.11a/b/g/n)、LCD 顯示屏、LED 以及用于簡單交互的用戶按鈕。S3A7 內核處理單元基于 32 位 ARM Cortex-M4 內核。MCU 集成了片上閃存、192 KB SRAM、14 位模數轉換器 (ADC)、12 位數模轉換器 (DAC),還提供多個連接選項和多種安全功能,包括片上加密。

S3A7 MCU 板提供 4 個 Pmod 連接器和 4 個 Grove 連接器(圖 3),讓開發人員能夠在添加擴展板時輕松進行配置。此外,這個物聯網快速原型開發套件附帶兩個 Pmod 傳感器模塊,一個是 6 軸運動傳感器模塊,另一個是環境模塊,包括光照、濕度/溫度、空氣質量、顏色/接近傳感器。除了 S3A7 MCU 板和 Pmod 傳感器之外,這個物聯網快速原型開發套件還包括了功能全面的軟件應用程序,旨在演示使用物聯網沙箱的整個物聯網流程。

圖 3: 除了 32 位 MCU、32 MB 閃存、Wi-Fi 和 LCD 之外,S3A7 MCU 板還包括 4 個 Pmod 連接器(底部的一行黑色連接器)和 4 個 Grove 連接器(Pmod 連接器上方的白色連接器)。(圖片來源: Renesas)

物聯網沙箱

Renesas 物聯網沙箱使用簡單的 Web 連接協議,提供必不可少的服務,包括安全、數據處理、分析、實時傳感器的圖形化顯示。同時,開發人員可以基于樣例應用程序進行開發,以便通過一系列菜單快速配置這些服務,而只需很少的編程工作。

開始使用物聯網沙箱時,開發人員通過物聯網沙箱的 Web 界面,手動創建 API 密鑰和授權用戶。API 密鑰和 API 基本用戶身份用于為沙箱的后續事務處理進行授權。

在開發新物聯網應用的過程中,最初的事務之一可能包括將樣本數據包發送至云。這個簡單操作既可展示連接協議,又為物聯網沙箱中的后續數據處理奠定基礎。

物聯網器件(例如 S3A7 MCU 板)使用 JSON 格式將事件數據發送至物聯網沙箱。每個事件的數據有效負載包括事件發生時間的鍵值對 (observed_at),以及數據集本身的鍵值對 (event_data),此外還可能有多個鍵值對。例如,在特定時間發現的某個事件具有兩個關聯值,它們將使用 JSON 格式進行傳輸,如下所示:

{"observed_at":"2017-01-01T12:00:00.0-0600", "event_data": {"force_strength":67, "level":"apprentice"}}

對于數據流式傳輸和其他交互,物聯網沙箱支持兩個簡單的連接協議。設備使用 MQTT(消息隊列遙測傳輸)或 REST 操作,與物聯網沙箱進行通信。基于 TCP/IP 開發的 MQTT 是一種 ISO 標準輕量級協議,用于定序的無損消息傳輸。MQTT 基于靈活的發布/訂閱模式開發,可以使用很簡短的代碼實施。因此,對于存儲器空間或帶寬有限的物聯網設備而言,MQTT 尤其具有吸引力,但它需要可靠的數據通信。

MQTT 需要中間的消息代理,用于協調它的發布/訂閱模式。作為其服務的一部分,物聯網沙箱提供了代理,另外提供 Python 庫,設備使用該庫將數據發送至云。與其他沙箱 API 調用相同,MQTT 庫將數據發布抽象為基本調用。例如,通過沙箱 MQTT 代理,將以上所示的數據有效負載發布至某些特定設備非常簡單:

MQTT.publish_event_to_client(device, payload)

另外,開發人員可以使用受支持的 REST API,以任何語言為交互編程。在這一方面,程序員使用他們熟悉的 Web 協議,例如 GET、PUT 和 POST,將數據傳輸到沙箱(代碼列表 1),或者從沙箱接收數據(代碼列表 2)。正如這些代碼列表所示,每個會話都從一個使用 API 密鑰、API 用戶 ID 和密碼的登錄事務開始。后續的寫入或讀取使用基本的 http POST 方法來發送數據有效負載,或使用 GET 方法來接收數據有效負載,數據為 JSON 格式。

import requests

import json

headers = {'Content-Type': 'application/json', 'Accept': 'application/json'}

data = {'login_id': 'john.doe@renesas.com', 'password': '12345', 'api_key': 'ABCDEFGHIJKLmnopabcdefghijklmnop1234567890'}

session = requests.session()

response = session.post('https://api-renesas-na-sandbox.mediumone.comv2/login', data=json.dumps(data), headers=headers)

url = 'https://api-renesas-na-sandbox.mediumone.com/v2/events/raw/john.doe@renesas.com'

data = {'observed_at': '2015-01-10T00:00:00.000-0800', 'event_data': {'sensor1' : 38.6}}

response = session.post(url=url, data=json.dumps(data), headers=headers)

列表 1: Renesas 物聯網沙箱 API 在“Medium One”云上提供專門端點,用于會話登錄,還用于將數據添加到特定用戶的“原始”數據流(使用標準 http POST 方法)。(代碼來源: Renesas/Medium One)

import requests

import json

headers = {'Content-Type': 'application/json', 'Accept': 'application/json'}

data = {'login_id': 'john.doe@renesas.com', 'password': '12345', 'api_key': 'ABCDEFGHIJKLmnopabcdefghijklmnop1234567890'}

# Login

session = requests.session()

response = session.post('https://api-renesas-na-sandbox.mediumone.com/v2/login', data=json.dumps(data), headers=headers)

url = 'https://api-renesas-na-sandbox.mediumone.com/v2/events/raw/john.doe@renesas.com'

headers = {'Accept': 'application/json'}

params = {"since":"2015-01-10T00:00:00.000-0800", "until":"2015-01-17T00:00:00.000-0800", "limit":100, "include":"$.event_data.tagname"}

# GET

response = session.get(url=url, params=params, headers=headers)

列表 2: 開發人員使用大多數編程語言都支持的標準 http 庫(例如此處所示的 Python),執行簡單的 GET 事務,從“原始”數據流拉取具有請求的特征的 JSON 格式數據。(代碼來源: Renesas/Medium One)

云處理

對于原始數據流,物聯網沙箱首先建立處理步驟,稱為“工作流”,它們圍繞名為“標記”的鍵建立,這些標記在數據流內部的數據有效負載中定義。工作流代表了基本的數據處理步驟,例如篩選、轉換或對數據流執行的其他操作。

使用比較傳統的方法,開發人員經常需要識別和維護在代碼中使用的參數與來自外部設備的一組特定數據流之間的綁定。相反,物聯網沙箱則可自動識別標記,并允許開發人員將標記用作工作流的輸入,工作流對與每個標記關聯的數據值執行代碼。例如,如果開發人員發送了數據有效負載,例如上文描述的有效負載,系統將自動識別關聯的數據類型(例如數字或字符串),并且建立數據流,其中包含這些標記的時序數據。開發人員使用物聯網沙箱的 Web 界面,確認或修改沙箱自動生成的架構(圖 4)。

物聯網沙箱自動識別數據類型的圖片(單擊查看全尺寸圖片)

圖 4: 物聯網沙箱自動識別新有效負載內部的數據類型,從而為開發人員提供了創建新物聯網處理流的簡單專用方法。(圖片來源: Renesas/Medium One)

此外,沙箱還為開發人員使用直觀的圖形化方法,用于將標記綁定到代碼參數。在上例中,開發人員使用沙箱提供的基于 Web 的 Workflow Studio,為工作流代碼生成輸入和輸出。在輸入端,開發人員使用 Workflow Studio,將來自從外部設備接收的“原始”數據流的標記值拖放至代碼模塊的特定輸入參數。同樣,他們還將工作流代碼的輸出連接到“已處理”數據流(圖 5)。

圖 5: 使用物聯網沙箱提供的基于 Web 的 Workflow Studio,開發人員能夠通過圖形化方式,將標記(例如 raw.force_strength)拖放至工作流,并連接每個標記作為命名輸入參數(例如 in1),以便在與每個工作流關聯的代碼模塊內部使用。(圖片來源: Renesas/Medium One)

在工作流的代碼模塊中,物聯網沙箱的內置 IONode 模塊提供了幾個簡單的類方法,用于獲取和設置標記值。例如,IONode.get_input('in1') 返回一個 Python 字典(鍵和值的關聯陣列,類似 JSON 有效負載),其中包含值和元數據(屬于從 in1 輸入到代碼模塊的數據的當前實例)。使用這種方法,開發人員能夠將輸出值 (out1) 設置為輸入變量的一些經過處理的組合(代碼列表 3)。

new_strength = IONode.get_input('in1')['event_data']['value'] + 100

new_level = "expert"

output = IONode.set_output('out1', {'new_strength': new_strength, 'new_level': new_level})

列表 3: Renesas 物聯網沙箱提供了多個高級別庫,例如內置的 IONode Python 模塊,它可將工作流 I/O 精簡為簡單方法,以便讀取 (get_input) 和寫入 (set_output) 數據。(代碼來源: Renesas/Medium One)

經過處理的數據流可以進一步連接到一個或多個后續工作流,以實施復雜的信號處理、分析或業務邏輯。例如,開發人員可以使用單獨的工作流來監控數據流。如果發生嚴重事件,來自主工作流的輸出會被定向到第二個工作流,后者使用物聯網沙箱 Python 模塊,向用戶發送 SMS 警報。每次當工作流在原始數據流中查找新事件時,它會自動啟動和執行其代碼包。因此,它能夠接近實時地對數據流進行自動處理。開發人員可在不同工作流之間共享輸出和輸出,以構建包含多個連續和并發處理步驟的復雜處理流。

但是,對于任何物聯網應用,都有一個重要目標:向用戶呈現經過處理的數據流的結果。物聯網沙箱提供了一系列連接到數據流的圖形化小工具,從而簡化了這種開發要求。使用物聯網沙箱的 Web 界面,開發人員能夠將相應小工具放置在儀表板上,以創建易于理解的物聯網結果快照。例如,物聯網沙箱實時儀表小工具可以顯示特定標記的當前值,從而自動更新該值及其最小值/最大值范圍。開發人員可以使用多個儀表來構建儀表板,采用簡潔的格式呈現來自多個數據源的結果(圖 6)。

圖 6: 物聯網沙箱提供了圖形化儀表,用于顯示原始數據流或已處理數據流的當前值和趨勢。(圖片來源: Renesas/Medium One)

Renesas Synergy S3A7 物聯網快速原型開發套件附帶了 Renesas Smart Chef 物聯網演示,利用該套件附帶的全套傳感器,演示端到端物聯網應用。Renesas 還提供其他多個樣例應用程序,用于演示其他使用場景,包括使用低功耗藍牙Lora 的連接。開發人員只需通過 MCU 板的 JLink 連接器,將以 srec (S record) 格式提供的鏡像刷入S3A7 MCU 板。開發人員可以使用 Renesas e2 Studio 軟件開發環境,來擴展這些樣例應用程序,或者從頭開始構建新應用程序,使用 J-Link 閃存實用工具加載最終 srec 鏡像。

總結

物聯網應用開發需要依賴于多種不同的技術和方法來進行數據采集和通信,通過云處理從傳感器硬件采集的數據,并將數據發送至用戶的移動設備。因此,開發人員發現他們面臨著兩難處境,既要滿足眾多開發要求,又承受著更快速交付物聯網設計的壓力。

為了幫助加快開發速度,Renesas Synergy S3A7 物聯網快速原型開發工具和 Renesas 物聯網沙箱的組合提供了完整的端到端開發環境。開發人員能夠使用基于 Web 的界面來配置物聯網沙箱,以支持基于云的處理流,且只需很少的額外編程工作。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2912

    文章

    44912

    瀏覽量

    375873
  • Renesas
    +關注

    關注

    0

    文章

    1758

    瀏覽量

    22868
  • Synergy平臺
    +關注

    關注

    0

    文章

    2

    瀏覽量

    2199
收藏 人收藏

    評論

    相關推薦

    克服基于云的聯網開發挑戰

    由于現有的工作人員有限和可能借鑒的先前專知微乎其微,聯網實施對工程團隊構成的挑戰是相當大的。因此,工程師們希望利用有助于簡化開發進程的一切。當然,任何物
    發表于 11-01 08:58

    嵌入式聯網的硬件設計挑戰

    ,嵌入式系統設計人員開發嵌入式聯網系統時面臨著幾個靈活性方面的問題,例如:確保新服務順利整合的問題;難以適應新環境;硬件和軟件設施經常變化;小尺寸芯片的封裝和集成問題,重量輕,功耗
    發表于 08-16 14:28

    【DFRobot TinkerNode NB-IoT 聯網開發板試用連載】基于NB Iot的聯網測試

    Iot大展拳腳的時候,我們應該抓住這個機會,學習聯網產品開發和應用的基本方法和手段。項目計劃①根據文檔,學習DFRobot TinkerNode的基本使用,入門②通過學習DFRobot
    發表于 07-13 10:09

    怎么處理聯網設備的原型方案設計轉換?

    現有設計來連接到聯網。可以通過采用軟件編程領域公認的技術高效完成這項任務,從而簡化和加速開發過程。 那么應該怎么處理聯網設備的原型方案設
    發表于 03-05 08:05

    開發人員和嵌入式系統設計人員如何使用JWT關閉聯網設備的安全漏洞?

    本文將介紹聯網設備安全威脅,并介紹目前用于應對該威脅的設備。它將確定安全漏洞以及開發人員和嵌入式系統設計人員如何使用JWT關閉它們。
    發表于 06-16 06:17

    用于聯網開發的java

    具有巨大的互操作性,因此自然而然地,它是復雜物聯網項目的優秀選擇。聯網程序員傾向于Java,因為它的多功能性和靈活性。開發人員認為它是
    發表于 12-24 14:12

    基于PPC8270的BSP開發過程

    本文通過對目標機硬件環境初始化過程和硬件驅動開發過程的描述,詳細介紹了基于PPC8270的BSP開發過程。在該開發實例中,該BSP軟件能夠在目標機模塊上穩定運行,并為上層操作系統及
    發表于 07-23 10:32 ?2769次閱讀
    基于PPC8270的BSP<b class='flag-5'>開發過程</b>

    基于DSPs的系統開發過程

    本內容詳細介紹了基于DSPs的系統開發過程
    發表于 09-29 17:28 ?136次下載
    基于DSPs的系統<b class='flag-5'>開發過程</b>

    e絡盟推出聯網功耗計算器 幫助開發人員預測電池壽命

    [中國—2017年5月11日] 全球領先的電子元器件與開發服務分銷商 e絡盟 日前宣布,開發了一款聯網(IoT)功耗計算器,不僅可幫助
    發表于 05-11 14:12 ?1150次閱讀

    Unity推出的AR Foundation能幫助使用者解決AR開發過程中遇到的難題

    Unity開發了一個多平臺API和實用程序,幫助解決你在AR開發過程中遇到的眾多難題,他們將其稱之為 AR Foundation。
    發表于 09-11 09:51 ?5403次閱讀

    如何幫助開發人員快速開展聯網應用

    。Silicon Labs亞太區區域營銷高級經理陳雄基先生也在與會的“消費聯網分論壇”中,針對各種聯網無線協議的應用優勢和設計技巧進行專題演講,并特別著重在受到中國市場矚目的藍牙網
    的頭像 發表于 12-22 13:49 ?3585次閱讀

    未來的網站開發要靠聯網

    隨著聯網逐漸普及,網站開發過程將變得更加復雜。
    發表于 09-10 16:55 ?771次閱讀

    聯網參考設計開發人員如何縮短設計周期

    滿足對速度的需求Ignion的開發環境也有助于聯網參考設計人員開發人員和最終的制造商縮短其設計周期。借助于Ignion的技術,從數千種潛
    的頭像 發表于 11-01 10:14 ?2353次閱讀

    Android校園應用開發過程

    電子發燒友網站提供《Android校園應用開發過程.pdf》資料免費下載
    發表于 10-19 11:36 ?0次下載
    Android校園應用<b class='flag-5'>開發過程</b>

    ASIC芯片開發過程

    電子發燒友網站提供《ASIC芯片開發過程.ppt》資料免費下載
    發表于 12-25 10:04 ?1次下載
    主站蜘蛛池模板: 国外色幼网| 色老99九久精品偷偷鲁 | 色噜噜噜噜亚洲第一 | 国产Av影片麻豆精品传媒 | 在线精彩视频在线观看免费 | 人妻插B视频一区二区三区 人妻 中文无码 中出 | 杨幂视频1分11未删减在线观看 | 婷婷射精AV这里只有精品 | 野花香HD免费高清版6高清版 | 污污内射在线观看一区二区少妇 | 久久国产精品永久网站 | 好大好爽好深舒服死了 | 亚洲 日韩 色 图网站 | 天天靠天天擦天天摸 | 超碰在线vip| 黄页网站18以下勿看免费 | 99久久99久久久精品齐齐鬼色 | 国产黄片毛片 | 亚洲国产精品一区二区久久第 | 国产精品毛片在线视频 | 纯肉巨黄H爆粗口男男分卷阅读 | 中文字幕无码A片久久 | 高清一区二区亚洲欧美日韩 | 趁老师睡着吃她的奶水 | 视频一区亚洲视频无码 | AV国产乱码一区二区三视频 | 日韩精品卡1卡2三卡四卡乱码 | 男生脱美女内裤内衣动态图 | 蜜臀AV久久国产午夜福利软件 | 久久精品综合网中文字幕 | 胸大的姑娘中文字幕视频 | 激情内射亚州一区二区三区爱妻 | 青青热久久综合网伊人 | 男人免费网站 | 蜜桃TV成人网站免费打开 | 色一欲一性一乱一区二区三区 | 国产亚洲精品久久久久久久 | 天堂精品国产自在自线 | 欧美性最猛xxxx在线观看视频 | 伊人久久大香线蕉影院95 | 99视频免费在线 |