選擇從頭開始設(shè)計無線物聯(lián)網(wǎng)應(yīng)用的工程師很快就會認識到這項任務(wù)很困難。首先,從頭開始構(gòu)建物聯(lián)網(wǎng)網(wǎng)絡(luò)系統(tǒng)需要了解許多不同的技術(shù),包括無線協(xié)議,嵌入式代碼開發(fā)和設(shè)備驅(qū)動程序開發(fā)。雖然許多經(jīng)驗豐富的工程師可能已經(jīng)熟悉這些技術(shù),但是編寫移動設(shè)備應(yīng)用程序和云代碼開發(fā)以及確保足夠的安全性等其他功能是相對較新的技能。
情況惡化的是,物聯(lián)網(wǎng)新手可能沒有很多基于MCU平臺的硬件開發(fā)背景。 API,編程,硬件和軟件兼容性以及監(jiān)管許可和其他障礙的學(xué)習(xí)曲線可以轉(zhuǎn)化為數(shù)周或數(shù)月的工程工作,只是為了創(chuàng)建功能原型。
因此,附近大多數(shù)物聯(lián)網(wǎng)開發(fā)人員的愿望清單中最重要的是找到一種簡單,快速的方式來指定硬件并生成必要的代碼,以便他們能夠盡快將他們的想法推向市場,這在快速變化的物聯(lián)網(wǎng)領(lǐng)域尤為重要。
幸運的是,模塊可用于幾乎所有無線協(xié)議,包括ZigBee,Z-Wave,藍牙和Wi-Fi。這些模塊可用于縮短無線系統(tǒng)所需的上市時間和認證/認證時間。更重要的是,今天的模塊已經(jīng)發(fā)展到包含強大的處理器,可以通過Linux,C,C ++,Python和Java等常用語言進行編程,以管理整個應(yīng)用程序。它們進一步有助于簡化代碼開發(fā)工作,因為開發(fā)人員可以依賴供應(yīng)商提供的封裝RF堆棧。
評估套件是一種流行的開發(fā)選項,因為它們提供了預(yù)制元件和功能齊全的示例應(yīng)用程序?qū)⑷绾芜\行。開發(fā)套件還已經(jīng)將模塊的芯片正確連接,用于電源,接地以及輸入和輸出信號傳輸。一些更集成的套件選擇還包括開箱即用的云連接,安全保護和FCC批準,以試圖將無線物聯(lián)網(wǎng)連接作為插件類型的練習(xí)。
在此文章我們將詳細研究兩個流行的物聯(lián)網(wǎng)開發(fā)套件,并展示一個常見的典型功能 - 看門狗應(yīng)用程序 - 在每種情況下都能輕松處理。
將ZigBee連接到Internet
無線連接是物聯(lián)網(wǎng)應(yīng)用的關(guān)鍵,通常是混合藍牙和ZigBee等本地網(wǎng)關(guān)與傳統(tǒng)的Wi-Fi網(wǎng)絡(luò)。 ZigBee提供最大的無線250 kbps數(shù)據(jù)速率和高達100米的范圍,已成為工業(yè)系統(tǒng)和傳感器網(wǎng)絡(luò)的流行解決方案。但是,ZigBee對許多應(yīng)用程序缺乏關(guān)鍵要求:連接到Internet所需的本機IP連接。作為回應(yīng),Digi International等供應(yīng)商提供Xbee ZigBee網(wǎng)關(guān),這是一種無線方式,可以讓數(shù)十個ZigBee設(shè)備透明地連接到互聯(lián)網(wǎng)。
設(shè)計工程師可以快速啟動他們的開發(fā)工作,為ZigBee帶來無線互聯(lián)網(wǎng)連接網(wǎng)絡(luò)使用Digi International的Xbee ZigBee Cloud Kit(圖1)。 Xbee ZigBee云套件的指定部件號為XKA2C-Z7T-U,旨在幫助工程師使用基于云的數(shù)據(jù)集構(gòu)建快速原型。該套件包括:用于ZigBee到以太網(wǎng)/Wi-Fi的Xbee網(wǎng)關(guān); Xbee-PRO ZigBee 2.4-GHz模塊;帶面包板的開發(fā)板;電纜和電源;示例Web應(yīng)用程序;可配置的小部件和與Digi Device Cloud的集成 - 該公司的公共平臺,用于連接任何設(shè)備并從任何地方向兩個方向進行通信。
該套件還可通過可自定義的開源儀表板應(yīng)用程序遠程控制設(shè)備和數(shù)據(jù)。基本原型組件包括:LED儀表; 10KΩ電阻;溫度傳感器;電位器;振動電機;和音頻蜂鳴器。
圖1:Digi的Xbee ZigBee Cloud Kit擁有創(chuàng)建云連接無線原型所需的一切。該套件包括原型組件,如電線,LED,繼電器電阻和溫度傳感器。 (圖片由Digi International提供)
該套件以Digi的Xbee ZigBee網(wǎng)關(guān)應(yīng)用程序為基礎(chǔ),允許通過Python腳本語言定制嵌入式邏輯。 XBee Gateway具有標準的Python 2.7發(fā)行版,允許獨立于設(shè)備開發(fā)和測試不依賴于Digi專有接口模塊的應(yīng)用程序。為了滿足不同級別的Python專業(yè)知識和應(yīng)用程序復(fù)雜性的客戶需求,我們支持許多開發(fā)策略,可以根據(jù)開發(fā)人員的需要進行混合和匹配。 Xbee網(wǎng)關(guān)還具有Linux shell界面。雖然Digi ESP for Python旨在作為主編程接口,但此接口可用于某些編程和設(shè)備管理任務(wù)。
現(xiàn)在讓我們來看看Xbee ZigBee Cloud Kit中的示例應(yīng)用程序。通過Xbee看門狗模塊提供的看門狗功能作為安全措施存在。如果存在“必須”定期發(fā)生的關(guān)鍵操作,否則系統(tǒng)將無法挽回地破壞,應(yīng)用程序可以請求建立“監(jiān)視器”。如果應(yīng)用程序線程未在承諾的時間間隔內(nèi)為其監(jiān)視程序提供服務(wù),則整個系統(tǒng)將重新啟動。如有必要,這些軟件看門狗可以更改其間隔,并可以刪除。顯然,使用這種軟件監(jiān)視器是最后的手段。
以下示例程序演示了看門狗功能:(來源:Digi International)
import watchdog(1)
導(dǎo)入時間
w = watchdog.Watchdog('test',20)(2)
for x in xrange(1,6):( 3)
print“Step”,x(4)
time.sleep(10.0)(5)
w.heartbeat()(6)
print“在結(jié)束前的步驟...”(7)
time.sleep(60.0)(8)
print“結(jié)束后的步驟。”(9)
課程筆記(1-9):
監(jiān)視程序模塊包含程序所需的監(jiān)視程序類。
創(chuàng)建一個名為“test”的監(jiān)視程序?qū)ο螅搶ο髮⒃?0秒后過期。
循環(huán)五次(1-5)。
表示我們的迭代......
...每次迭代的睡眠時間少于超時,但總時間超過超時時間。
每次迭代將看門狗定時器重置為20秒,允許完成所有循環(huán)。
指示小循環(huán)已完成。
睡眠的時間間隔比超時長得多。
不應(yīng)執(zhí)行此print語句,因為系統(tǒng)應(yīng)該由于看門狗超時到期而重新啟動。
CC3200MCU LaunchPad?
Texas儀器的SimpleLink?Wi-Fi CC3200MCU LaunchPad(部件CC3200-LAUNCHXL,圖2)是供應(yīng)商CC3200無線微控制器的評估套件。它包括一個溫度傳感器和一個加速度計,通過附加的BoosterPack插件板,它可以集成其他傳感器,幫助開發(fā)人員對其物聯(lián)網(wǎng)應(yīng)用進行原型設(shè)計。 LaunchPad具有驅(qū)動程序支持和軟件開發(fā)工具包(SDK),其中包含40多種Wi-Fi協(xié)議,Internet應(yīng)用程序和MCU外設(shè)示例應(yīng)用程序。
圖2:CC3200 LaunchPad是基于ARM?Cortex?M4F的微控制器的低成本評估平臺。它具有可編程用戶按鈕,用于自定義應(yīng)用程序的RGB LED以及用于調(diào)試的板載仿真。 (圖片來自Texas Instruments)
該板可以直接連接到PC,用于開發(fā)工具,如Code Composer Studio(CCS)云集成開發(fā)環(huán)境(IDE)和IAR(v.7.20) )嵌入式工作臺。 SDK中的所有示例應(yīng)用程序都支持在帶有CCS IDE且無RTOS的集成Cortex-M4處理器上。此外,一些應(yīng)用程序支持Free RTOS和TI RTOS。
免版稅的CC3200嵌入式Wi-Fi Foundation SDK包括兩個主要構(gòu)建模塊:
SimpleLink Library - 托管提供連接功能的API。
< li>外設(shè)驅(qū)動程序庫 - 托管訪問MCU外圍設(shè)備的API。
圖3說明了CC3200 Foundation SDK中的各種軟件組件及其形式。
圖3:CC3200 Foundation SDK提供了一個易于使用的框架,該芯片托管在片上微控制器上,以使用WLAN網(wǎng)絡(luò)服務(wù),以及與外圍設(shè)備接口的驅(qū)動程序的全面列表。微控制器。 (圖片來自Texas Instruments)
3200 LaunchPad開發(fā)套件中的應(yīng)用示例包括:
電子郵件:只需按一下按鈕,或通過CLI通過用戶配置的電子郵件,即可通過SMTP發(fā)送電子郵件。
UART演示應(yīng)用程序:展示UART DriverLib API的用法。該應(yīng)用程序演示了用戶在終端上輸入的任何內(nèi)容的簡單回顯。
I 2 C演示:展示I2CDriverLibAPI的用法。提供用戶界面,用于讀取或?qū)懭隠aunchPad上的I 2 C設(shè)備。
MCU睡眠:練習(xí)MCU的睡眠功能。
PWM演示應(yīng)用:演示通用定時器(GPT)支持的一般16位脈沖寬度調(diào)制(PWM)模式功能。
攝像頭應(yīng)用:演示CC3200上的攝像頭功能(此應(yīng)用需要相機BoosterPack。
天線選擇:提供選擇具有更多信號功能的天線的選項。
功率測量:允許用戶測量各種低功耗的電流消耗-power模式。
看門狗系統(tǒng)演示應(yīng)用程序
讓我們來看看TI開發(fā)工具包如何處理看門狗演示應(yīng)用程序,該應(yīng)用程序探討了看門狗定時器的使用情況( WDT)DriverLib API。正如預(yù)期的那樣,當達到超時值時,WDT演示應(yīng)用程序會生成中斷或重置。與我們之前討論過的Digi International套件一樣,看門狗定時器用于在系統(tǒng)因軟件錯誤或外部設(shè)備無法以預(yù)期方式響應(yīng)而發(fā)生故障時重新獲得控制權(quán)。
該看門狗系統(tǒng)演示應(yīng)用程序在一個帶有MCU和網(wǎng)絡(luò)子系統(tǒng)的完整系統(tǒng)中展示了WDT。同樣,目標是在系統(tǒng)出現(xiàn)故障時恢復(fù)整個系統(tǒng),包括網(wǎng)絡(luò)子系統(tǒng)。退出看門狗復(fù)位后,系統(tǒng)會立即請求休眠一小段時間,并且只有在從休眠狀態(tài)返回后才能恢復(fù)其全部功能。這可確保從任何涉及網(wǎng)絡(luò)子系統(tǒng)的復(fù)雜固定方案中恢復(fù)。
解釋應(yīng)用程序源文件
main - 顯示監(jiān)視程序功能的主文件LED閃爍10次然后保持在ON狀態(tài)。
pinmux - 應(yīng)用程序要求的Pinmux配置。
uart_if - 通用UART接口API
udma_if - 通用uDMA接口API
wdt_if - 通用看門狗接口API
用法
在使用中,您首先要設(shè)置一個串行通信應(yīng)用程序(HyperTerminal/TeraTerm,請參見下面的圖4)并在主機PC上打開一個超級終端,具有以下內(nèi)容設(shè)置:
端口:枚舉COM端口
波特率:115200
<代碼>數(shù)據(jù):8位
奇偶校驗:無
停止:1位
< li> 流程控制:無
接下來,運行t他參考應(yīng)用程序(Flash bin)并觀察UART終端以了解應(yīng)用程序執(zhí)行的操作順序。您將看到以下顯示(圖4):
圖4:CC3200看門狗系統(tǒng)演示(圖片由德州儀器提供)
總結(jié)
從頭開始構(gòu)建物聯(lián)網(wǎng)網(wǎng)絡(luò)系統(tǒng)需要了解許多不同的技術(shù)。為了幫助工程師完成他們的項目,現(xiàn)成的評估工具包提供了一種通過構(gòu)建基本系統(tǒng)來試驗各種配置和測試應(yīng)用程序的好方法。通過提供逐步指導(dǎo),無線模塊供應(yīng)商使工程師能夠快速熟悉無線連接可為其物聯(lián)網(wǎng)解決方案帶來的所有價值,以及這些完整的硬件組件和集成工具包如何讓設(shè)計人員避開漫長的發(fā)展周期的時間和頭痛。
-
互聯(lián)網(wǎng)
+關(guān)注
關(guān)注
54文章
11149瀏覽量
103246 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2909文章
44578瀏覽量
372859 -
無線
+關(guān)注
關(guān)注
31文章
5451瀏覽量
173250 -
ZigBee
+關(guān)注
關(guān)注
158文章
2270瀏覽量
242741
發(fā)布評論請先 登錄
相關(guān)推薦
評論