《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》高職全套教學課件_第1頁
《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》高職全套教學課件_第2頁
《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》高職全套教學課件_第3頁
《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》高職全套教學課件_第4頁
《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》高職全套教學課件_第5頁
已閱讀5頁,還剩167頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

《物聯(lián)網(wǎng)組網(wǎng)技術(shù)及應(yīng)用》項目1基于工業(yè)總線的機床溫度管理項目2基于ZigBee的智能家居系統(tǒng)項目3基于Wi-Fi的智能家居聯(lián)動項目4基于LoRa的廠區(qū)環(huán)境監(jiān)測系統(tǒng)項目5基于藍牙4.0的溫度計系統(tǒng)全套可編輯PPT課件

項目一基于工業(yè)總線的機床溫度管理全套可編輯PPT課件

01項目概述項目背景機器溫度管理在工業(yè)生產(chǎn)中,機器溫度管理是非常重要的。如果機器溫度過高,會導(dǎo)致設(shè)備損壞,影響生產(chǎn)效率。因此,需要實現(xiàn)對機器溫度的實時監(jiān)控和管理。RS-485總線通信RS-485總線通信是工業(yè)生產(chǎn)中常用的通信協(xié)議之一,具有傳輸距離遠、傳輸速度快的特點。本項目將基于RS-485總線通信來實現(xiàn)機床的溫度信息檢測功能。工業(yè)自動化隨著工業(yè)生產(chǎn)的自動化程度不斷提高,對生產(chǎn)設(shè)備的監(jiān)控和管理要求也越來越高。本項目的研究背景是工業(yè)自動化,旨在解決工業(yè)生產(chǎn)中的實際問題。030201通過本項目的學習和實踐,掌握總線的基礎(chǔ)知識,包括數(shù)據(jù)總線、地址總線和控制總線等。掌握總線基礎(chǔ)知識通過本項目的學習和實踐,掌握RS-485標準的特性,包括電氣特性、協(xié)議特性等。掌握RS-485標準特性通過本項目的學習和實踐,了解Modbus協(xié)議的基礎(chǔ)知識,包括協(xié)議結(jié)構(gòu)、數(shù)據(jù)格式等。了解Modbus協(xié)議基礎(chǔ)知識項目目標01020302任務(wù)描述與需求任務(wù)實施計劃本節(jié)課我們計劃完成項目的需求分析和設(shè)計,并完成項目的實施和測試。任務(wù)目標本任務(wù)的目標是開發(fā)一種基于RS-485總線通信的機床溫度管理系統(tǒng),以監(jiān)測和控制機床的溫度,確保機床的正常運行。任務(wù)內(nèi)容車間生產(chǎn)設(shè)備因為摩擦會產(chǎn)生熱量,工作時間的增加會導(dǎo)致機床高溫,從而發(fā)生異常,本任務(wù)將采集機床溫度,并通過RS-485總線進行數(shù)據(jù)傳輸。任務(wù)一:建立RS-485通信協(xié)議掌握總線的基礎(chǔ)知識包括總線的基本概念、總線的分類、總線的特點等。掌握RS-485標準的特性包括RS-485標準的電氣特性、信號特性、傳輸特性等。了解Modbus通信協(xié)議的基礎(chǔ)知識包括Modbus通信協(xié)議的基本概念、協(xié)議結(jié)構(gòu)、通信過程等。職業(yè)技能目標需求分析可靠性需求本項目的應(yīng)用場合是工業(yè)現(xiàn)場,因此需要保證系統(tǒng)的可靠性和穩(wěn)定性。數(shù)據(jù)分析需求本項目需要對接收到的數(shù)據(jù)進行分析和處理,因此需要對數(shù)據(jù)分析的方法和算法進行研究。數(shù)據(jù)傳輸需求本項目需要實現(xiàn)數(shù)據(jù)的發(fā)送和接收,因此需要對RS-485總線通信協(xié)議進行詳細的分析和研究。03知識梳理串行通信是一種數(shù)據(jù)通信方式,它按位(bit)進行數(shù)據(jù)傳輸,每次傳輸一位數(shù)據(jù),通過一定的時間間隔,將多位數(shù)據(jù)依次傳輸?shù)侥康牡亍4型ㄐ趴偩€是計算機各種功能部件之間傳送信息的公共通信干線,由導(dǎo)線組成的傳輸線束??偩€按功能和規(guī)范可分為數(shù)據(jù)總線、地址總線、控制總線、擴展總線和局部總線五大類型??偩€總線與串行通信基礎(chǔ)知識總線與串行通信基礎(chǔ)知識RS-485通信屬于串行通信范疇,是計算機與外設(shè)或其它計算機按位傳輸數(shù)據(jù)的通信方式。串行通信串行通信具有傳輸線少、成本低的特點,主要適用于近距離的人機交換、實時監(jiān)控等系統(tǒng)通信工作。在計算機網(wǎng)絡(luò)和分布式工業(yè)控制系統(tǒng)中,設(shè)備之間通常通過標準串行通信接口和通信電纜實現(xiàn)數(shù)據(jù)與信息交換。通信特點串行通信可通過電話網(wǎng)實現(xiàn)遠距離傳輸,因此串行通信接口是計算機系統(tǒng)中的常用接口。遠距離傳輸01020403數(shù)據(jù)交換RS-232接口標準接口信號電平高:RS-232接口標準出現(xiàn)較早,存在不足之處,主要問題是接口信號電平值較高,容易損壞接口電路芯片。邏輯關(guān)系與噪聲容限:RS-232接口為負邏輯關(guān)系,邏輯“1”為-15~-3V,邏輯“0”為3~15V,噪聲容限為2V。數(shù)據(jù)傳輸速率低:RS-232接口在異步傳輸時,數(shù)據(jù)傳輸速率為20000bps,51CPLD開發(fā)板中綜合程序的數(shù)據(jù)傳輸速率只能采用19200bps。共地傳輸與抗噪聲干擾性:RS-232接口使用共地傳輸形式,容易產(chǎn)生共模干擾,抗噪聲干擾性弱。傳輸距離有限:RS-232接口標準的最大傳輸距離約為15m,無法滿足長距離通信的需求。0102030405RS-485工作方式RS-485接口可以聯(lián)網(wǎng)構(gòu)成分布式系統(tǒng),允許最多并聯(lián)32個驅(qū)動器和32個接收器。RS-485接口特點RS-485電氣特性RS-485的電氣特性表現(xiàn)為邏輯“1”以兩線間的電壓差(2~6V)表示,邏輯“0”以兩線間的電壓差(-6~-2V)表示。RS-485采用半雙工工作方式,發(fā)送電路須由使能信號加以控制,可以省掉許多信號線。RS-485串行總線RS-485接口特性RS-485多站能力RS-232-C接口在總線上僅允許連接一個收發(fā)器,具有單站能力;而RS-485接口在總線上允許連接多達128個收發(fā)器,具有多站能力。RS-485接口優(yōu)勢RS-485接口信號電平低,不易損壞接口電路芯片,且與TTL電平兼容。RS-485傳輸速率數(shù)據(jù)的最高傳輸速率為10Mbps,采用平衡驅(qū)動器和差分接收器的組合,抗共模干擾能力強。RS-485最大傳輸距離RS-485接口的最大傳輸距離的標準值約為1219m,實際上可達3000m。04任務(wù)實施開發(fā)板資源Cortex-M3內(nèi)核開發(fā)板引出了STM32F103C8T6單片機的大部分I/O端口資源,用戶可在此基礎(chǔ)上根據(jù)需求開發(fā)完整的系統(tǒng)。Cortex-M3內(nèi)核單片機的主頻可達72MHz,是最早的一款32位單片機,對用戶而言,便于開發(fā),難度系數(shù)較低。硬件選型RS-485模塊電路項目中開發(fā)板引出了RS-485模塊電路,并預(yù)留出串口2,方便用戶使用工業(yè)總線控制,并提供參考示例。串口2與RS-485需要注意的是,串口2和RS-485的功能不可以同時使用,因為只有一路串口。在使用時需要進行選擇。RS485_Init函數(shù)RS485_Init(u32bound)函數(shù)用于實現(xiàn)RS-485接口的初始化,相關(guān)代碼如下。RS485發(fā)函數(shù)和接收函數(shù)voidRS485_Send_Data(u8*buf,u8len)函數(shù)和voidUSART2_IRQHandler(void)函數(shù)通過RS-485實現(xiàn)了串口收發(fā)功能。main函數(shù)main函數(shù)首先對所有需要的硬件進行初始化,包含LED(發(fā)光二極管)、串口1、RS-485接口等,通過板載RS-485與計算機端RS-232接口實現(xiàn)數(shù)據(jù)收發(fā)。代碼解析05任務(wù)二:搭建機床數(shù)據(jù)監(jiān)控系統(tǒng)任務(wù)描述任務(wù)描述與需求車間生產(chǎn)設(shè)備因摩擦產(chǎn)生熱量,工作時間增加導(dǎo)致機床高溫異常,需要采集機床溫度數(shù)據(jù)并通過Modbus通信協(xié)議進行傳輸。掌握傳輸方式需要掌握Modbus通信協(xié)議的傳輸方式,包括串口通信、網(wǎng)絡(luò)通信和無線通信等,以確保數(shù)據(jù)的有效傳輸。0201Modbus通信協(xié)議Modbus概述Modbus通信協(xié)議由Modicon于1979年開發(fā),是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。目前施耐德電氣公司已將所有權(quán)移交給Modbus-IDA組織,該組織的成立為Modbus通信協(xié)議的發(fā)展奠定了基礎(chǔ)。Modbus通訊協(xié)議02電子控制器通用協(xié)議Modbus通信協(xié)議是應(yīng)用于電子控制器上的一種通用協(xié)議,目前已成為通用工業(yè)標準??刂破髦g或控制器與其他設(shè)備之間可通過此協(xié)議經(jīng)由網(wǎng)絡(luò)(如以太網(wǎng))通信。工業(yè)網(wǎng)絡(luò)集中監(jiān)控Modbus通信協(xié)議使不同廠商生產(chǎn)的控制設(shè)備可以構(gòu)成工業(yè)網(wǎng)絡(luò),進行集中監(jiān)控。協(xié)議定義了消息幀結(jié)構(gòu),描述了控制器請求訪問其他設(shè)備的過程、如何響應(yīng)請求,以及如何偵測并記錄錯誤。Modbus通訊協(xié)議02控制器識別消息在Modbus網(wǎng)絡(luò)上通信時,每個控制器必須知道其設(shè)備地址,按地址識別發(fā)來的消息,決定要做何種動作。如果需要響應(yīng),那么控制器將按Modbus消息幀格式生成反饋信息并發(fā)送。應(yīng)用層通信協(xié)議RS-485標準只對接口的電氣特性做出相關(guān)規(guī)定,并未對接插件、電纜和通信協(xié)議等進行標準化,因此用戶需要在RS-485總線網(wǎng)絡(luò)的基礎(chǔ)上制定應(yīng)用層通信協(xié)議。一般來說,各應(yīng)用領(lǐng)域的RS-485通信協(xié)議都是指應(yīng)用層通信協(xié)議。通訊模型02Modbus是一種單主或多從的通信協(xié)議,在同一時間內(nèi)總線上只能有一個主設(shè)備,但可以有一個或多個從設(shè)備。Modbus通信協(xié)議通信總是由主設(shè)備發(fā)起,從設(shè)備沒有收到來自主設(shè)備的請求時,不會主動發(fā)送數(shù)據(jù)。通信模型主設(shè)備發(fā)送的請求報文包括設(shè)備地址、功能碼、數(shù)據(jù)段、差錯檢測區(qū)。請求報文響應(yīng)信息從設(shè)備的響應(yīng)信息也包含設(shè)備地址、功能碼、數(shù)據(jù)段和差錯檢測區(qū),其中設(shè)備地址為本機地址。設(shè)備地址設(shè)備地址是被選中的從設(shè)備的地址,功能碼用于告知被選中的從設(shè)備要執(zhí)行何種功能。數(shù)據(jù)段數(shù)據(jù)段包含從設(shè)備要執(zhí)行的功能的附加信息,差錯檢測區(qū)為從設(shè)備提供數(shù)據(jù)校驗方法。通信模型在Modbus網(wǎng)絡(luò)中,主設(shè)備向從設(shè)備發(fā)送Modbus請求報文的模式有單播模式和廣播模式兩種。主設(shè)備模式通信模型主設(shè)備尋址單個從設(shè)備,從設(shè)備接收并處理完畢后向主設(shè)備返回一個響應(yīng)報文。單播模式主設(shè)備向Modbus網(wǎng)絡(luò)中的所有從設(shè)備發(fā)送請求報文,從設(shè)備接收并處理完畢后不要求返回響應(yīng)報文。廣播模式Modbus通信協(xié)議基于不同的物理鏈路存在不同的通信模式,如串行鏈路的RTU和ASCII模式,以太網(wǎng)鏈路的TCP模式。modbus通信模式三種通信模式的數(shù)據(jù)模型與功能調(diào)用是相同的,唯一的不同之處在于傳輸報文的封裝方式。通信模式的數(shù)據(jù)模型通信模式寄存器寄存器是CPU內(nèi)部的一種存儲單元,用于存儲數(shù)據(jù)和指令。寄存器概述表1-2-1

Modbus寄存器的分類與特性寄存器種類特性說明實際應(yīng)用線圈(Coil)狀態(tài)輸出端口(可讀可寫),相當于PLC的數(shù)字量輸出(DO)LED顯示、電磁閥輸出等離散輸入(DiscreteInput)狀態(tài)輸入端口(只讀),相當于PLC的數(shù)字量輸入(DI)接近開關(guān)、撥碼開關(guān)等保持寄存器(HoldingRegister)輸出參數(shù)或保持參數(shù)(可讀可寫),相當于PLC的模擬量輸出(AO)模擬量輸出設(shè)定值、PID運行參數(shù)、傳感器報警閾值等輸入寄存器(InputRegister)輸入?yún)?shù)(只讀),相當于PLC的模擬量輸入(AI)模擬量輸入值Modbus通信協(xié)議在不同物理鏈路上的消息幀是有差異的,此處主要介紹串行鏈路RTU模式的Modbus消息幀格式。在RTU模式中,消息的發(fā)送與接收以至少3.5個字符時間的停頓間隔為標志。消息幀格式表1-2-2典型的ModbusRTU消息幀格式起始位地址功能碼數(shù)據(jù)CRC結(jié)束符≥3.58位8位n個8位16位≥3.5個字符消息幀格式表1-2-2典型的ModbusRTU消息幀格式起始位地址功能碼數(shù)據(jù)CRC結(jié)束符≥3.58位8位n個8位16位≥3.5個字符消息幀各組成部分及其功能如下。(1)地址域。地址域存儲了Modbus通信幀中的從設(shè)備地址,ModbusRTU消息幀的地址域長度為1字節(jié)。在Modbus網(wǎng)絡(luò)中,主設(shè)備沒有地址,每個從設(shè)備都具有唯一的地址。從設(shè)備的地址范圍為0~247,其中,地址0作為廣播地址,因此從設(shè)備實際的地址范圍是1~247。在下行幀中,地址域表明只有符合地址范圍的從設(shè)備才能接收由主設(shè)備發(fā)送的消息。上行幀中的地址域指明了該消息幀來自哪一設(shè)備。(2)功能碼域。功能碼域指明了消息幀的功能,其取值范圍為1~255(十進制)。(3)數(shù)據(jù)域。數(shù)據(jù)域與功能碼緊密相關(guān),是存儲功能碼需要操作的具體數(shù)據(jù)。數(shù)據(jù)以字節(jié)為單位,長度是可變的。(4)CRC(CyclicalRedundancyCheck,循環(huán)冗余校驗)域。ModbusRTU消息幀的CRC域由2字節(jié)構(gòu)成,其值是通過對全部報文內(nèi)容進行CRC計算得到的,計算對象包括CRC域之前的所有字節(jié)。在CRC域中添加消息幀時,先添加低字節(jié)再添加高字節(jié),因此最后1字節(jié)是CRC域的高字節(jié)。添加代碼包添加濕度傳感器驅(qū)動代碼包添加RS-485總線數(shù)據(jù)收發(fā)的相關(guān)代碼包添加Modbus通信協(xié)議的相關(guān)代碼包核心代碼解析0102u8ModBus_ReadTemp(void){

RS485_Send_Data(readtemp,8);

}u8ModBus_ReadHumi(void){ RS485_Send_Data(readhumi,8);}voidModBus_RecData(void)//表示從設(shè)備發(fā)來的數(shù)據(jù){ if(recflag==1) { if(RS485_RX_BUF[0]==0x01)//地址為1 { switch(RS485_RX_BUF[1])//判斷功能碼 { case4://讀數(shù)據(jù)寄存器 calCRC=CRC_Compute(RS485_RX_BUF,RS485_RX_CNT-2);recCRC=((u16)RS485_RX_BUF[RS485_RX_CNT-2]<<8)|RS485_RX_BUF[RS485_RX_CNT-1];//讀取CRC if(calCRC==recCRC)//表明CRC正確 { if(RS485_RX_BUF[2]==0x02)//讀取2字節(jié) { if(count%2)//濕度humi=(float)((u16)(RS485_RX_BUF[3]<<8)|RS485_RX_BUF[4])/10.0; else//溫度temp=(float)((u16)(RS485_RX_BUF[3]<<8)|RS485_RX_BUF[4])/10.0; } } break; } }項目二基于ZigBee的智能家居系統(tǒng)01建立ZigBee硬件環(huán)境智能家居系統(tǒng)介紹智能家居利用物聯(lián)網(wǎng)技術(shù)將家居設(shè)備互聯(lián)互通,實現(xiàn)智能化控制、遠程監(jiān)控等功能。智能家居定義智能家居系統(tǒng)能提升家居安全性、健康性、舒適性和智能化水平。智能家居生活場景,包括智能窗簾、智能照明、智能安防等。系統(tǒng)帶來的變革智能家居系統(tǒng)能在日常生活中帶來許多便利,如早晨自動播放音樂喚醒,晚上自動調(diào)節(jié)燈光和溫度,遠程監(jiān)控家中安全等。日常生活示例01020403場景設(shè)計并實現(xiàn)一個基于ZigBee技術(shù)的智能家居控制系統(tǒng)。項目目標實現(xiàn)家居設(shè)備的自動化控制、遠程監(jiān)控、數(shù)據(jù)收集與分析等功能。預(yù)期成果完成CC2530的I/O端口控制實驗、完成CC2530的串口通信實驗、完成CC2530的溫濕度采集和串口發(fā)送實驗。任務(wù)需求項目概述010203ZigBee技術(shù)簡介技術(shù)應(yīng)用領(lǐng)域智能家居、工業(yè)自動化、健康監(jiān)測等。ZigBee技術(shù)特點低功耗、高安全性、自組織網(wǎng)絡(luò)、短距離通信等。CC2530芯片概述CC2530芯片是一種片上系統(tǒng)(SoC),支持ZigBee/IEEE802.15.4協(xié)議,包括8051CPU、RF收發(fā)器、內(nèi)存等。ZigBee模塊采用的CC2530是由德州儀器(TI)公司生產(chǎn)的可支持IEEE802.15.4、ZigBee和RF4CE標準的片上系統(tǒng)(SoC)解決方案。CC2530集成了業(yè)界領(lǐng)先的射頻收發(fā)器和增強型8051單片機,運行內(nèi)存為8KB,配備了32KB、64KB、128KB、256KB的閃存塊,還集成了一系列功能強大的外設(shè)。在軟件方面,CC2530支持RemoTI、Z-Stack、SimpliciTI等協(xié)議棧和BasicRF通信協(xié)議,極大地簡化了使用者的開發(fā)流程。CC2530能夠以非常低的總材料清單成本構(gòu)建健壯的網(wǎng)絡(luò)節(jié)點。CC2530芯片特性IAREmbeddedWorkbenchfor8051TI

公司提供的BasicRF軟件包中的示例程序是基于IARSystems公司開發(fā)的IAREmbeddedWorkbenchfor8051集成開發(fā)環(huán)境(IntegratedDevelopmentEnvironment,IDE)建立的。IARSystems公司是全球領(lǐng)先的嵌入式系統(tǒng)開發(fā)工具和服務(wù)的提供商,成立于1983年,其提供的產(chǎn)品和服務(wù)涉及嵌入式系統(tǒng)的設(shè)計、開發(fā)和測試的每個階段,包括C/C++編譯器、調(diào)試器的IDE、實時操作系統(tǒng)、中間件、開發(fā)套件、硬件仿真器及狀態(tài)機建模工具,最著名的產(chǎn)品是IAREmbeddedWorkbenchfor8051,支持ARM、AVR、MSP430等眾多芯片內(nèi)核平臺。安裝與配置步驟(略)安裝IAREmbeddedWorkbenchfor8051CCDebugger調(diào)試器CCDebugger是用于TI公司的低功耗射頻片上系統(tǒng)的小型編程器和調(diào)試器,支持TI公司的多個CC系列產(chǎn)品線。CCDebugger可以與IAREmbeddedWorkbenchfor8051(7.51A

或更高版本)一起使用以進行調(diào)試,還可與SmartRFFlashProgrammer(閃存編程器)一起使用以進行閃存編程。另外,CCDebugger還可用于控制SmartRFStudio中的所選器件。開發(fā)環(huán)境與工具I/O端口控制實驗實驗?zāi)康恼莆誈PIO(通用輸入/輸出)配置和LED(發(fā)光二極管)控制方法。由于LED具有單向?qū)щ娞匦?,即只有在正向電壓(正極接正,負極接負)下才能導(dǎo)通發(fā)光。P1.0接LED(VD1)的負極,所以當P1.0輸出低電平時,VD1點亮;當P1.0輸出高電平時,VD1熄滅。P1.0的相關(guān)寄存器如表2-1-1所示。I/O端口控制實驗P1.0的配置:按照表2-1-1,對P1.0進行配置,當P1.0輸出低電平時,VD1點亮,所以配置如下。I/O端口控制實驗核心代碼講解:下面為核心代碼講解。main函數(shù)作為程序入口,首先實現(xiàn)了LED的初始化,然后進入一個死循環(huán),通過對LED的高、低電平轉(zhuǎn)換和延時實現(xiàn)了LED的閃爍。CC2530的串口通信實驗實驗功能:使用P0_2作為RX(接收端),使用P0_3作為TX(發(fā)送端),將P0_2、P0_3配置為外設(shè)功能。USART0和USART1是串行通信接口,它們能夠分別運行于異步UART(通用異步收發(fā)器)模式或者同步SPI(串行外設(shè)接口)模式,兩個USART(通用同步/異步收發(fā)器)具有同樣的功能.通過實驗掌握CC2530串口的配置與使用,并通過串口調(diào)試助手實現(xiàn)字符串的數(shù)據(jù)收發(fā)。U0CSR(USART0控制和狀態(tài)寄存器)、U0GCR(USART0通用控制寄存器)、U0BAUD(USART0

波特率控制寄存器)、U0DBUF(USART0接收/發(fā)送數(shù)據(jù)緩存寄存器)、UTX0IF(發(fā)送中斷標志寄存器)、CLKCONCMD(時鐘控制命令寄存器)、CLKCONSTA是一個只讀寄存器,用于獲得當前時鐘狀態(tài)寄存器:CC2530的串口通信實驗CC2530配置串口的步驟:配置I/O,使用外設(shè)功能,此處將P0_2和P0_3作為串口UART0。配置相應(yīng)串口的控制和狀態(tài)寄存器。12配置串口工作的波特率。3CC2530的溫濕度采集和串口發(fā)送實驗實驗功能:接收溫濕度傳感器DHT11采集的溫濕度數(shù)據(jù),并通過串口向串口調(diào)試助手發(fā)送數(shù)據(jù)。實驗相關(guān)的寄存器中用到了串口和P0_7,前面已詳細講解了串口相關(guān)寄存器的配置與使用,此處不再贅述。DHT11程序采用模塊化編程的思想,僅需調(diào)用溫度讀取函數(shù)即可,移植到其他平臺也非常容易。02ZigBee的原理及協(xié)議棧通信IEEE802.15.4IEEE802.15.4是一種技術(shù)標準,由IEEE802.15工作組開發(fā)2003年發(fā)布針對物聯(lián)網(wǎng)領(lǐng)域定義了低速無線個域網(wǎng)(LR-WPAN)的物理層和MAC層應(yīng)用于家庭自動化、工業(yè)控制等ZigBee近距離、低功耗、低成本無線通信技術(shù)適用于傳輸速率和距離要求不高的場景,工作頻段:2.4GHz、868MHz、915MHz傳輸速率:最高250kbps,距離10~80mBasicRF由TI公司為CC2530提供,基于IEEE802.15.4或ZigBee包含硬件抽象層、BasicRF層和應(yīng)用層提供簡單的雙向無線收發(fā)協(xié)議和數(shù)據(jù)安全認識IEEE802.15.4、ZigBee和BasicRF三者之間關(guān)系IEEE802.15.4為基礎(chǔ),定義物理層和MAC層ZigBee構(gòu)建于IEEE802.15.4之上,包含網(wǎng)絡(luò)層和應(yīng)用層BasicRF基于IEEE802.15.4,功能相對簡單,主要用于演示,限制和特點:不自動加入網(wǎng)絡(luò),無組網(wǎng)指示;僅支持點對點通信,無網(wǎng)絡(luò)角色定義;傳輸時不完全遵循CSMA-CA協(xié)議;缺少數(shù)據(jù)包重傳機制高安全性數(shù)據(jù)完整性檢查與鑒權(quán)AES加密算法保護靈活的安全屬性配置低成本簡化的協(xié)議減少了對控制器的要求免協(xié)議專利費用內(nèi)存占用?。褐鞴?jié)點32KB,子節(jié)點4KB低時延快速設(shè)備搜索與激活適用于高時延要求的控制領(lǐng)域網(wǎng)絡(luò)容量大高可靠性物理層擴頻技術(shù)抵抗干擾MAC層應(yīng)答重傳與CSMA機制動態(tài)信道切換能力低功耗低傳輸速率與發(fā)射功率支持休眠模式,延長電池壽命設(shè)備續(xù)航可達6個月至2年支持多種網(wǎng)絡(luò)結(jié)構(gòu):星形、簇樹形、網(wǎng)狀可組成包含65000個節(jié)點的大型網(wǎng)絡(luò)ZigBee的特點ZigBee與其他短距離無線通信技術(shù)在物聯(lián)網(wǎng)技術(shù)的應(yīng)用領(lǐng)域中,常見的短距離無線通信技術(shù)除ZigBee外,還有Wi-Fi和藍牙,下面從工作頻率、傳輸速率、典型應(yīng)用等方面對三種通信技術(shù)進行簡單的比較,特征對比下表所示。特征Wi-Fi藍牙ZigBee工作頻率2.4GHz價格貴便宜較便宜通信距離100~300m2~30m50~300m傳輸速率300Mbps3Mbps250kbps功耗高低低設(shè)備連接能力中弱強安全性低高高組網(wǎng)能力較弱節(jié)點多、穩(wěn)定性稍遜于ZigBee節(jié)點多、穩(wěn)定性高典型應(yīng)用無線局域網(wǎng)可穿戴設(shè)備家居智能化Zigbee技術(shù)多領(lǐng)域應(yīng)用在數(shù)字家庭中的應(yīng)用Zigbee技術(shù)可用于智能家居系統(tǒng),實現(xiàn)家電設(shè)備的無線控制和互聯(lián)互通。在工業(yè)領(lǐng)域的應(yīng)用Zigbee技術(shù)可用于工業(yè)自動化控制系統(tǒng),實現(xiàn)設(shè)備間的無線通信和數(shù)據(jù)傳輸。在農(nóng)業(yè)領(lǐng)域的應(yīng)用Zigbee技術(shù)可用于農(nóng)業(yè)物聯(lián)網(wǎng)系統(tǒng),監(jiān)測環(huán)境參數(shù)和控制農(nóng)業(yè)設(shè)備。在醫(yī)療領(lǐng)域的應(yīng)用Zigbee技術(shù)可用于醫(yī)療監(jiān)護系統(tǒng),實時監(jiān)測患者的生理參數(shù)并傳輸數(shù)據(jù)。任務(wù)實施BasicRF無線點燈實驗:通過BasicRF實現(xiàn)無線通信功能,以無線控制LED開關(guān)。1)BasicRF的啟動確保外設(shè)沒有問題。創(chuàng)建一個basicRfCfg_t的數(shù)據(jù)結(jié)構(gòu),并初始化其中的成員。1. typedefstruct{2. uint16myAddr; //16位的短地址(就是節(jié)點的地址)3. uint16panId; //節(jié)點的PAN_ID4. uint8channel; //RF通道(必須在11~26)5. uint8ackRequest; //目標確認時設(shè)置為true6. #ifdefSECURITY_CCM //是否加密,預(yù)定義中取消了加密uint8*securityKey;7. uint8*securityNonce;8. #endif9. }basicRfCfg_t;調(diào)用basicRfInit函數(shù)進行協(xié)議的初始化,具體代碼可以在“basic_rf.h”文件中找到,即uint8basicRfInit(basicRfCfg_t*pRfConfig)。任務(wù)實施2)BasicRF的發(fā)送(1)創(chuàng)建一個buffer,把payload放入其中。payload的最大字節(jié)數(shù)為103。(2)調(diào)用basicRfSendPacket函數(shù)發(fā)送數(shù)據(jù),并查看其返回值,具體代碼可以在“basic_rf.c”文件中找到,即uint8basicRfSendPacket(uint16destAddr,uint8*pPayload,uint8length)。其中,destAddr表示目的地址;pPayload表示指向發(fā)送緩沖區(qū)的指針;length表示發(fā)送數(shù)據(jù)長度。函數(shù)功能:向短地址發(fā)送指定長度的數(shù)據(jù),若發(fā)送成功,則返回SUCCESS;若發(fā)送失敗,則返回FAILED。BasicRF發(fā)送的代碼如圖2-2-4所示。3)BasicRF的接收(1)上層通過basicRfPacketIsReady函數(shù)來檢查是否接收到一個新數(shù)據(jù)包,具體代碼可以在“basic_rf.c”文件中找到,即uint8basicRfPacketIsReady(void)。函數(shù)功能:檢查模塊是否已經(jīng)可以接收下一個數(shù)據(jù),若準備就緒,則返回TRUE。(2)調(diào)用basicRfReceive函數(shù),把接收到的數(shù)據(jù)復(fù)制到buffer中,具體代碼可以在“basic_rf.c”文件中找到,即uint8basicRfReceive(uint8*pRxData,uint8len,int16*pRssi)。函數(shù)功能:接收來自BasicRF層的數(shù)據(jù)包,并為接收的數(shù)據(jù)和RSSI(接收信號強度指示)值配置緩沖區(qū)。任務(wù)實施03設(shè)計Zigbee智能家居的應(yīng)用功能了解智能家居場景的功能了解智能家居場景的功能,包括照明控制、電器控制、安全防范等方面的應(yīng)用,能夠根據(jù)需求設(shè)計出符合實際的智能家居場景。熟悉協(xié)議棧并通過協(xié)議棧搭建應(yīng)用系統(tǒng)熟悉ZigBee協(xié)議棧的結(jié)構(gòu)和特點,掌握通過協(xié)議棧搭建應(yīng)用系統(tǒng)的方法,包括定義應(yīng)用層、創(chuàng)建綁定表、建立安全機制等。職業(yè)技能目標智能家居系統(tǒng)設(shè)計通過協(xié)議棧完成智能家居系統(tǒng)的設(shè)計,實現(xiàn)智能家居功能的場景。無線通信搭建場景通過ZigBee協(xié)議棧完成ZigBee無線組網(wǎng),通過無線通信搭建智能家居場景。任務(wù)描述利用ZigBee技術(shù)實現(xiàn)智能家居系統(tǒng)的無線組網(wǎng),構(gòu)建起一個全新的網(wǎng)絡(luò)結(jié)構(gòu)。ZigBee無線組網(wǎng)通過無線通信技術(shù),將智能家居場景中的各個設(shè)備連接起來,形成一個完整的系統(tǒng)。無線通信搭建場景任務(wù)需求ZigBee的定義無線傳感器網(wǎng)絡(luò)無線傳感器網(wǎng)絡(luò)是大規(guī)模、無線、自組織、多跳、無分區(qū)、無基礎(chǔ)設(shè)施支持的網(wǎng)絡(luò),其中的節(jié)點同構(gòu)且成本較低、體積較小,大部分節(jié)點不移動,隨意分布在工作區(qū)域。ZigBee的定義ZigBee是IEEE802.15.4協(xié)議的代名詞,是一種短距離、低功耗的無線通信技術(shù),特點在于近距離、低復(fù)雜度、自組織、低功耗、低傳輸速率、低成本,主要適用于自動控制和遠程控制領(lǐng)域。物聯(lián)網(wǎng)的定義物聯(lián)網(wǎng)是通過射頻識別、紅外感應(yīng)器、全球定位系統(tǒng)、激光掃描器等信息傳感設(shè)備,按約定的協(xié)議,將任何物體與互聯(lián)網(wǎng)連接,進行信息交換和通信。030201ZigBee的特點ZigBee的特點使其成為嵌入式設(shè)備的理想選擇,可以嵌入各種設(shè)備中實現(xiàn)無線通信功能,為設(shè)備提供更靈活的連接方式,并降低設(shè)備的功耗和成本。ZigBee與其它技術(shù)無線傳感器網(wǎng)絡(luò)可以采用ZigBee、藍牙、Wi-Fi和紅外線等技術(shù),而ZigBee是一種雙向無線通信技術(shù),基于IEEE802.15.4無線標準研制和開發(fā)。ZigBee的定義ZigBee協(xié)議棧建立在IEEE802.15.4的物理層和介質(zhì)訪問控制層的規(guī)范之上,實現(xiàn)了網(wǎng)絡(luò)層和應(yīng)用層。在應(yīng)用層內(nèi)提供了應(yīng)用程序支持子層(APS)和ZigBee設(shè)備對象(ZDO)。ZigBee協(xié)議棧建立規(guī)范ZigBee協(xié)議的體系結(jié)構(gòu)ZigBee設(shè)備對象是特殊的應(yīng)用程序?qū)ο?,在端點0上實現(xiàn)。遠程設(shè)備通過ZigBee設(shè)備對象請求描述符信息,接收到請求時,會調(diào)用配置對象獲取相應(yīng)的描述符值。ZigBee的設(shè)備對象ZigBee應(yīng)用層包括應(yīng)用程序支持子層、ZigBee設(shè)備對象和制造商定義的應(yīng)用程序?qū)ο?。?yīng)用程序支持子層的功能包括維持綁定表、在綁定的設(shè)備之間傳送消息。ZigBee應(yīng)用層功能ZigBee設(shè)備對象功能ZigBee設(shè)備對象的功能包括定義設(shè)備在網(wǎng)絡(luò)中的角色,發(fā)起和響應(yīng)綁定請求,在網(wǎng)絡(luò)設(shè)備之間建立安全機制。ZigBee設(shè)備對象還負責發(fā)現(xiàn)網(wǎng)絡(luò)中的設(shè)備,并提供應(yīng)用服務(wù)。ZigBee應(yīng)用層服務(wù)接口ZigBee應(yīng)用層除提供一些必要的函數(shù)及為網(wǎng)絡(luò)層提供合適的服務(wù)接口外,還有一個重要的功能是定義應(yīng)用程序?qū)ο?。運行在ZigBee協(xié)議棧上的應(yīng)用程序?qū)嶋H上就是廠商自定義的應(yīng)用程序?qū)ο?,并且遵循?guī)范運行在端點1~240上。ZigBee協(xié)議的體系結(jié)構(gòu)ZigBee協(xié)議棧的安裝協(xié)議棧目錄協(xié)議棧目錄包括“Components”、“Documents”、“Projects”和“Tools”等文件夾,分別用于存儲庫代碼、開發(fā)文檔、例子程序和工具。工程文件平臺注意事項從軟件開發(fā)專業(yè)角度建議復(fù)制工程至非中文目錄,避免有些開發(fā)環(huán)境不支持中文路徑的問題。如果文件目錄太長,打開工程時IAR可能會關(guān)閉,只需將工程上移幾層即可。安裝協(xié)議棧雙擊“ZStack-CC2530-2.5.1a.exe”文件進行安裝,可以選擇默認路徑或自定義安裝路徑。030201ZigBee協(xié)議棧驅(qū)動的溫濕度傳感器溫濕度傳感器移植我們在基礎(chǔ)實驗中已經(jīng)完成了溫濕度傳感器的驅(qū)動,現(xiàn)在需要將溫濕度傳感器移植到協(xié)議棧ZStack上。無線溫濕度采集協(xié)議棧應(yīng)用與組網(wǎng)在ZStack點播實驗中,使用點播終端設(shè)備針對性地向指定設(shè)備發(fā)送數(shù)據(jù),而廣播和組播可能會造成數(shù)據(jù)的冗余。打開ZigBee協(xié)議棧,將基礎(chǔ)實驗中的“DHT11.c”和“DHT11.h”文件復(fù)制至“SampleApp”下的“Source”文件夾中。App是應(yīng)用層目錄,是用戶創(chuàng)建各種不同工程的區(qū)域。HAL是硬件層目錄,包含與硬件相關(guān)的配置、驅(qū)動及操作函數(shù)。協(xié)議棧文件結(jié)構(gòu)NWK是網(wǎng)絡(luò)層目錄,包含網(wǎng)絡(luò)層參數(shù)配置文件、網(wǎng)絡(luò)層庫的函數(shù)接口文件及應(yīng)用程序支持子層庫的函數(shù)接口文件。網(wǎng)絡(luò)層與安全層OSAL是協(xié)議棧的操作系統(tǒng)。Profile是應(yīng)用框架層目錄,包含應(yīng)用框架層處理函數(shù)文件。協(xié)議棧操作系統(tǒng)ZigBee協(xié)議棧驅(qū)動的溫濕度傳感器ZigBee實現(xiàn)家居燈光控制系統(tǒng)家居燈光控制系統(tǒng)首先需要檢測家內(nèi)是否有人和家內(nèi)的光照情況,根據(jù)檢測結(jié)果判斷是開燈還是關(guān)燈,然后控制燈的開關(guān),僅在家內(nèi)有人且光照度較低的情況下開燈。整個系統(tǒng)由光照度檢測子系統(tǒng)、人員檢測子系統(tǒng)、數(shù)據(jù)處理節(jié)點和燈開關(guān)控制子系統(tǒng)組成。光照度檢測節(jié)點光照度檢測子系統(tǒng)作為家居光照度信息監(jiān)測的信息采集發(fā)送部分,由光照度檢測節(jié)點完成功能。傳感器獲取數(shù)據(jù)判斷照明條件光照度檢測子系統(tǒng)通過光照度傳感器獲得光照度數(shù)據(jù),并以ADC(模數(shù)轉(zhuǎn)換器)的方式得到2字節(jié)的光照度數(shù)據(jù)。將處理結(jié)果發(fā)送至數(shù)據(jù)處理節(jié)點,由該節(jié)點判斷光照度是否滿足照明條件,確保家居環(huán)境的舒適與安全。人員檢測子系統(tǒng)負責周期性檢測家內(nèi)是否有人,并將檢測結(jié)果發(fā)送至數(shù)據(jù)處理節(jié)點。人體紅外傳感器通過判斷人體紅外傳感器輸出的電平高低得到檢測結(jié)果,有人時返回值為“1”,無人時返回值為“0”。電平判斷根據(jù)讀取的結(jié)果,向數(shù)據(jù)處理節(jié)點發(fā)送檢測結(jié)果,確保系統(tǒng)能夠及時處理數(shù)據(jù)。發(fā)送檢測結(jié)果數(shù)據(jù)處理節(jié)點的工作原理如圖2-3-10所示,數(shù)據(jù)處理節(jié)點通過接收其他節(jié)點的數(shù)據(jù),綜合判斷得到控制命令,并發(fā)送給燈開關(guān)控制節(jié)點。數(shù)據(jù)處理節(jié)點的職責接收光照度檢測節(jié)點和人員檢測節(jié)點的數(shù)據(jù),通過綜合判斷得到開燈或關(guān)燈的控制命令,并將控制命令發(fā)送至燈開關(guān)控制節(jié)點。數(shù)據(jù)處理節(jié)點的實現(xiàn)由ZigBee網(wǎng)絡(luò)中的協(xié)調(diào)器節(jié)點完成,負責詢問網(wǎng)絡(luò)中的節(jié)點角色并記錄地址,接收處理函數(shù)負責接收數(shù)據(jù)并記錄傳感器狀態(tài)。燈開關(guān)控制節(jié)點的職責根據(jù)數(shù)據(jù)處理節(jié)點的控制命令,負責執(zhí)行開燈或關(guān)燈的操作,以確保照明設(shè)備的正常運行和能源的有效管理。數(shù)據(jù)處理節(jié)點燈開關(guān)控制子系統(tǒng):燈開關(guān)控制子系統(tǒng)是智能家居中的重要組成部分,負責接收并執(zhí)行數(shù)據(jù)處理節(jié)點發(fā)送的控制命令,完成對燈開關(guān)的控制。01繼電器控制燈開關(guān):燈開關(guān)控制子系統(tǒng)上有4個可控的繼電器,可以通過發(fā)送1字節(jié)的控制命令來控制這些繼電器,每位對應(yīng)一個繼電器。02燈開關(guān)控制子系統(tǒng)THANKS感謝觀看項目三基于Wi-Fi的智能家居聯(lián)動01智能家居項目通過項目二,我們已經(jīng)完成了ZigBee的無線組網(wǎng),實現(xiàn)了底層的傳感器、控制器、報警器等相關(guān)設(shè)備的無線組網(wǎng),搭建了本地局域網(wǎng)絡(luò),實現(xiàn)了智能家居項目中的底層數(shù)據(jù)匯聚和傳輸。本項目將實現(xiàn)底層數(shù)據(jù)的遠程傳輸和云端傳輸功能,以及數(shù)據(jù)的應(yīng)用層開發(fā)和應(yīng)用。項目介紹基于wifi的智能家居聯(lián)動02任務(wù)一Wi-Fi控制通信了解Wi-Fi無線通信了解Wi-Fi的無線通信原理、特點以及應(yīng)用,熟悉Wi-Fi模塊的AT指令手冊。配置AT指令根據(jù)需求配置AT指令,實現(xiàn)Wi-Fi的配置。職業(yè)技能目標任務(wù)描述與需求通信距離與速度掌握如何通過AT指令設(shè)置Wi-Fi模塊的通信距離和速度,以確保穩(wěn)定的網(wǎng)絡(luò)連接。了解Wi-Fi模塊了解Wi-Fi模塊及其通信時的AT指令,能夠通過AT指令實現(xiàn)Wi-Fi模塊通信。知識梳理了解IEEE802.11系列標準的發(fā)展與演變,包括IEEE802.11-1997、IEEE802.11b、IEEE802.11a等。Wi-Fi標準與特性WLAN是設(shè)備利用射頻技術(shù)在免授權(quán)頻段中進行無線連接,在局部范圍內(nèi)建立的網(wǎng)絡(luò)。WLAN通常由站點、接入點、無線介質(zhì)和分布式系統(tǒng)等部分組成,實現(xiàn)無線網(wǎng)絡(luò)的通信和連接。WLAN與IEEE802.11Wi-Fi技術(shù)是世界上最熱門的WLAN標準,早期專門指代IEEE802.11b,后成為IEEE802.11家族的代名詞。Wi-Fi的發(fā)展01020403WLAN的組成及拓撲結(jié)構(gòu)03Wi-Fi模塊及相關(guān)AT指令ESP8266ESP8266是一款超低功耗的UART-Wi-Fi透傳模塊,擁有業(yè)內(nèi)極富競爭力的封裝尺寸和超低能耗技術(shù)。封裝方式ESP8266有多種封裝方式,天線可支持板載PCB天線、IPEX接口和郵票孔接口三種形式。應(yīng)用領(lǐng)域ESP8266可廣泛應(yīng)用于智能電網(wǎng)、智能交通、智能家居、手持設(shè)備、工業(yè)控制等領(lǐng)域。產(chǎn)品特性支持IEEE802.11b/g/n標準,三種工作模式,內(nèi)置TCP或IP協(xié)議棧,支持多路TCPClient連接。硬件介紹ESP8266硬件接口豐富,可支持UART、I2C、PWM、GPIO、ADC等,適用于各種物聯(lián)網(wǎng)的應(yīng)用場合。工作模式ESP8266支持STA、AP、STA+AP三種工作模式,可兼作應(yīng)用處理器,超低能耗,適合為電池供電。Wi-Fi模塊及相關(guān)AT指令010402050306測試AT語法規(guī)則如表3-1-1所示,確保AT指令能夠正確執(zhí)行。測試ATAT+CWMODE,用于選擇Wi-Fi的應(yīng)用模式選擇Wi-Fi應(yīng)用模式AT+CWLAP,用于列出當前可用的接入點列出當前可用接入點Wi-Fi的AT指令配置Wi-Fi的AT指令配置設(shè)置AP模式下的參數(shù)AT+CWSAP,用于設(shè)置AP模式下的相關(guān)參數(shù)。退出接入點AT+CWQAP,用于退出當前接入的接入點。加入接入點AT+CWJAP,用于加入指定的接入點。AT+CIPSTART,用于建立TCP或UDP連接。建立TCP/UDP連接AT+CIPSTATUS,用于獲取TCP或UDP連接的當前狀態(tài)。獲得TCP/UDP連接狀態(tài)AT+CIPMUX,用于啟動多路連接模式。啟動多路連接模式Wi-Fi的AT指令配置發(fā)送數(shù)據(jù)AT+CIPCLOSE,用于關(guān)閉TCP或UDP連接。關(guān)閉TCP/UDP連接獲取本地IP地址AT+CIFSR,用于獲取本地IP地址,。AT+CIPSEND,用于發(fā)送數(shù)據(jù)。Wi-Fi的AT指令配置Wi-Fi的AT指令配置選擇TCP/IP應(yīng)用模式AT+CIPMODE,用于選擇TCP或IP的應(yīng)用模式。設(shè)置服務(wù)器主動斷開連接的超時時間AT+CIPSTO,用于設(shè)置服務(wù)器主動斷開連接的超時時間。設(shè)置波特率AT+CIOBAUD,用于設(shè)置波特率。發(fā)送AT指令開啟服務(wù)器模式設(shè)置AP模式收發(fā)數(shù)據(jù)發(fā)送AT指令,若使用帶Wi-Fi模塊的接口,則不會有硬件連接錯誤的情況,所以可以不發(fā)送AT指令。開啟服務(wù)器模式。發(fā)送“AT+CIPMUX=1”和“AT+CIPSERVER=1,6666”指令,因為在開啟多路連接模式時才能開啟服務(wù)器模式。發(fā)送“AT+CWMODE=2”或者“AT+CWMODE=3”指令。指令格式為AT+CWMODE=<mode>,其中,<mode>為1(STA模式)、2(AP模式)、3(STA+AP模式)。響應(yīng)返回數(shù)據(jù):OK。設(shè)置AP模式。通過網(wǎng)絡(luò)調(diào)試助手在TCPClient模式,下添加“IP:(模塊默認的IP地址),端口6666(上一步設(shè)置的)”來收發(fā)數(shù)據(jù)。AT指令操作說明04Wi-Fi接收溫度任務(wù)描述與需求職業(yè)技能目標能夠根據(jù)項目需求設(shè)計項目流程。能夠完成CC2530單片機與Wi-Fi模塊的接口程序,并組建Wi-Fi網(wǎng)絡(luò)。任務(wù)描述與需求能夠通過微處理器采集溫度數(shù)據(jù),并將數(shù)據(jù)通過Wi-Fi傳輸至檢測終端。項目實施項目相關(guān)電路圖DS18B20輸出引線:紅色(VCC)、白色(DATA)、黑色(GND)或者為紅色(VCC)、綠色(DATA)、黃色(GND),焊接時DS18B20的白色或綠色引線在接插件3只引腳的中間,將DS18B20的紅色引線插入開發(fā)板P10的3.3V就可以使用了。實驗中用到了串口和P0_7,前面已詳細講解了串口相關(guān)寄存器的配置與使用,此處不再贅述。DS18B20程序采用模塊化編程思想,僅需調(diào)用溫度讀取函數(shù),移植到其他平臺也非常容易。DS18B20接線和實物如圖3-2-1所示。main函數(shù)作為程序的主入口,實現(xiàn)了串口、Wi-Fi模塊、LED、溫度傳感器的初始化,采集數(shù)據(jù)后通過計算機或者手機的Wi-Fi連接至網(wǎng)絡(luò)中運行的服務(wù)器來接收程序,并進行數(shù)據(jù)采集和控制。voidmain(void)Get_DS18B20函數(shù)為溫度傳感器驅(qū)動函數(shù),相關(guān)代碼如下。.charGet_DS18B20(void)向Wi-Fi模塊發(fā)送AT指令來控制Wi-Fi模塊charSendDataToWifi(char*str,intlen)向Wi-Fi模塊發(fā)送AT指令來控制Wi-Fi模塊,檢測Wi-Fi模塊返回的數(shù)據(jù)中有無“OK”。如果沒有“OK”,那么LED1燈閃爍以提示用戶檢查硬件連接。charSendAT(char*string)核心代碼介紹05Wi-Fi環(huán)境采集目標任務(wù)描述職業(yè)技能目標能夠基于協(xié)議棧進行環(huán)境采集。能夠使用Wi-Fi模塊接收協(xié)調(diào)器采集的終端環(huán)境數(shù)據(jù)。任務(wù)描述與需求能夠通過協(xié)調(diào)器和終端進行ZigBee無線組網(wǎng),通過無線組網(wǎng)將ZigBee終端數(shù)據(jù)發(fā)送給協(xié)調(diào)器,協(xié)調(diào)器和Wi-Fi模塊通過串口進行數(shù)據(jù)通信,ZigBee終端與Wi-Fi模塊連接,并接收Wi-Fi模塊發(fā)送的數(shù)據(jù)。CC2530串口功能介紹CC2530芯片具有兩個多功能串口:USART0和USART1。每個串口支持異步UART和同步SPI模式。串口功能可配置在備用I/O引腳上USART0:USART0:位置1:P0_2(RX),P0_3(TX)位置2:P1_4(RX),P1_5(TX)USART1:位置1:P0_5(RX),P0_4(TX)位置2:P1_7(RX),P1_6(TX)數(shù)據(jù)位:支持8位或9位數(shù)據(jù)傳輸。校驗方式:可配置奇校驗、偶校驗或無校驗。起始位和停止位:可配置電平。數(shù)據(jù)發(fā)送順序:可選擇最低有效位或最高有效位優(yōu)先。中斷和DMA:支持獨立接收中斷和DMA觸發(fā)。USART模式的功能特性PERCFG:控制外設(shè)功能。P2DIR:控制端口方向和外設(shè)優(yōu)先級。IEN0:使能中斷。IRCON2:中斷標志。UxCSR/UxUCR/UxGCR:控制USART的工作狀態(tài)。UxBUF:數(shù)據(jù)緩沖。UxBAUD:控制波特率。關(guān)鍵寄存器及其作用1.配置串口備用位置和外設(shè)控制寄存器。2.配置I/O端口,如P0_2和P0_3用于USART0。3.設(shè)置端口外設(shè)優(yōu)先級。4.配置USART0的控制和狀態(tài)寄存器。5.設(shè)置波特率為115200bps。6.清零中斷標志位,配置中斷使能。串口配置流程ESP8266初始化staticuint8InitESP8266(void)函數(shù)用于初始化ESP8266模塊,為其配置相關(guān)的參數(shù)和模式,以確保其能夠正常工作。接收協(xié)調(diào)器數(shù)據(jù)voidSerialApp_SendPeriodicMessage(void)函數(shù)用于接收協(xié)調(diào)器數(shù)據(jù)。Wi-Fi數(shù)據(jù)發(fā)送staticvoidSerialApp_Send(void)函數(shù)用于發(fā)送Wi-Fi數(shù)據(jù),將數(shù)據(jù)通過串口接收并處理,然后通過Wi-Fi網(wǎng)絡(luò)進行傳輸。協(xié)議棧采集數(shù)據(jù)通過Wi-Fi進行傳輸THANKS感謝觀看項目四基于LoRa的廠區(qū)環(huán)境監(jiān)測系統(tǒng)項目四基于LoRa的廠區(qū)環(huán)境監(jiān)測系統(tǒng)01搭建LoRa的廠區(qū)環(huán)境監(jiān)測系統(tǒng)任務(wù)一:搭建LoRa認知及環(huán)境職業(yè)技能目標:任務(wù)需求:了解低功耗廣域技術(shù)和LoRa協(xié)議的相關(guān)內(nèi)容。能夠搭建開發(fā)環(huán)境并完成程序的移植、配置、調(diào)試與下載。任務(wù)描述:城市的發(fā)展對工廠的生產(chǎn)環(huán)境提出了更高的要求,為了滿足這一要求,需要采集大型工廠不同區(qū)域的環(huán)境,實現(xiàn)對工廠環(huán)境的管控。任務(wù)需求:通過本任務(wù)了解低功耗廣域技術(shù),并且能夠搭建開發(fā)環(huán)境,測試開發(fā)功能。低功耗廣域技術(shù)(LPWA)概述LPWA定義:實現(xiàn)低功耗下的遠距離無線信號傳輸技術(shù)對比:BLE、ZigBee、Wi-Fi:短距離、高功耗LPWA:千米級傳輸,鏈路預(yù)算高達160dBm優(yōu)勢:低功耗、長壽命電池使用,推動物聯(lián)網(wǎng)技術(shù)革命應(yīng)用前景:適用于廣泛的物聯(lián)網(wǎng)部署,實現(xiàn)物物互聯(lián)短距離ZigBeeBluetoothWi-Fi長距離蜂窩移動通信技術(shù)低功耗廣域技術(shù)LPWA物聯(lián)網(wǎng)通信技術(shù)LPWAN技術(shù)LPWAN概念:利用LPWA技術(shù)構(gòu)建的無線通信網(wǎng)絡(luò)技術(shù)分類:非授權(quán)頻段技術(shù):LoRa:由Semtech公司提出,全球LoRa聯(lián)盟支持SigFox:法國SigFox公司提出,但在中國未應(yīng)用授權(quán)頻段技術(shù):NB-IoT:基于蜂窩網(wǎng)絡(luò)的物聯(lián)網(wǎng)技術(shù)eMTC(LTEEnhancedMTO):基于LTE的優(yōu)化物聯(lián)網(wǎng)技術(shù)特點:廣覆蓋、低功耗、低成本運營維護支持高速率數(shù)據(jù)傳輸,適應(yīng)多樣化物聯(lián)網(wǎng)應(yīng)用Lora定義與特點Lora是一種基于擴頻技術(shù)的長距離無線通信協(xié)議,具有低功耗、廣覆蓋、大連接等特性。Lora技術(shù)創(chuàng)建及推廣背景隨著物聯(lián)網(wǎng)的快速發(fā)展,對于低功耗、長距離、大規(guī)模的無線通信需求日益增長,Lora技術(shù)應(yīng)運而生并得到廣泛推廣。Lora主要運行頻段Lora主要在非授權(quán)的Sub-GHz頻段運行,如433MHz、863-870MHz等,這些頻段具有較好的傳播特性和較低的功耗。030201Lora技術(shù)簡介2013年8月,Semtech公司發(fā)布LoRa芯片,使用Sub-GHz頻段,具備超長距離和低功耗數(shù)據(jù)傳輸技術(shù)。LoRa芯片的接收靈敏度達到-148dBm,比業(yè)界其他同類產(chǎn)品高20dBm以上,極大提高網(wǎng)絡(luò)連接的可靠性。LoRa芯片使用線性擴頻調(diào)制技術(shù),既保持低功耗特性,又增加通信距離,增強抗干擾性能。LoRa網(wǎng)絡(luò)中的集中器或網(wǎng)關(guān)可并行接收并處理多個LoRa節(jié)點的數(shù)據(jù),因此系統(tǒng)容量大大提高。LoRa的技術(shù)背景LoRa芯片發(fā)布接收靈敏度線性擴頻調(diào)制并行處理傳輸距離遠LoRa技術(shù)具有遠距離傳輸?shù)奶攸c,在市區(qū)城鎮(zhèn)內(nèi)可達2km~5km,在郊區(qū)可達15km及以上。傳輸速率低LoRa技術(shù)的傳輸速率較低,數(shù)千比特/秒到數(shù)萬比特/秒,適用于低速率數(shù)據(jù)傳輸?shù)膽?yīng)用場景。工作頻段免授權(quán)LoRa技術(shù)工作在免授權(quán)的ISM頻段,無需申請頻率使用權(quán),方便快捷。成本低LoRa網(wǎng)關(guān)價格低,企業(yè)可自行組網(wǎng),降低了運營成本,提高了經(jīng)濟效益。低功耗LoRa技術(shù)的功耗較低,電池壽命可達10年,降低了設(shè)備運營成本,提高了設(shè)備的使用壽命。容量大LoRa網(wǎng)關(guān)可連接上萬個節(jié)點,滿足了物聯(lián)網(wǎng)設(shè)備海量連接的需求,提高了網(wǎng)絡(luò)覆蓋和穩(wěn)定性。LoRa的技術(shù)特點010402050306適合的物聯(lián)網(wǎng)應(yīng)用智慧農(nóng)業(yè)智慧城市智慧消防研發(fā)LoRa模塊的企業(yè)應(yīng)用領(lǐng)域LoRa的技術(shù)特點決定了其適合部署在傳輸距離遠、功耗低及容量大的物聯(lián)網(wǎng)應(yīng)用場景,可滿足定位跟蹤的應(yīng)用需求。LoRa可應(yīng)用于智慧城市、智慧消防、智慧農(nóng)業(yè)、智慧醫(yī)療、智慧油田等領(lǐng)域,我國已開展了LoRa網(wǎng)絡(luò)的建設(shè)。據(jù)統(tǒng)計,我國有多家企業(yè)已開展了LoRa模塊的研發(fā)工作,如AUGTEK、普天通達、銳捷網(wǎng)絡(luò)等。利用LoRa技術(shù),可以實時監(jiān)測土壤濕度、溫度、光照等環(huán)境因素,以及動植物的生長情況,為農(nóng)業(yè)生產(chǎn)提供科學依據(jù),實現(xiàn)精準養(yǎng)殖和灌溉,提高農(nóng)業(yè)生產(chǎn)效率。通過部署LoRa網(wǎng)絡(luò),可以有效地解決城市管理中的問題,如人工抄表、井蓋監(jiān)控和垃圾桶管理,提高城市管理的效率和安全性。通過部署智能、無線、獨立式煙感探測器等設(shè)備,監(jiān)測異常情況并上報數(shù)據(jù)至網(wǎng)關(guān),解決消防安全監(jiān)控盲點問題。LoRa的應(yīng)用場景02任務(wù)實施硬件選型LoRa終端節(jié)點架構(gòu)LoRa終端節(jié)點負責將傳感器數(shù)據(jù)上傳至LoRa網(wǎng)關(guān),由傳感器模塊、微處理器模塊、LoRa射頻模塊和電源模塊構(gòu)成。微處理器模塊選型微控制器性能對比微處理器需要能運行LoRaWAN協(xié)議棧,并且具有低功耗、大容量、碰撞處理合理和數(shù)據(jù)使用安全等優(yōu)點。通過對比S78S、STM32L152RET6和ATMEGA328P,最終選取了搭載ATMEGA328P的Arduino開發(fā)板。硬件選型電源模塊ArduinoUNO的電源模塊可以通過計算機的USB接口或直流電源座供電,使用UARTTTL(5V)串行通信與計算機通信。LoRa射頻模塊選型DraginoLoRaShield是一個支持無線LoRa協(xié)議的、用于Arduino的擴展板,可以作為LoRa射頻模塊的選擇之一。ArduinoUNO模塊ArduinoUNO是搭載ATMEGA328P微處理器的Arduino開發(fā)板,有14個輸入/輸出引腳、6個模擬輸入引腳、16MHz晶體濾波器等。030201下載ArduinoIDE選擇BoardsManager添加DraginoBoards信息選擇LoRa模塊添加URL安裝ArduinoIDE從Arduino官方網(wǎng)站下載最新版本的ArduinoIDE,雙擊安裝程序進行安裝。打開ArduinoIDE,選擇“File”→“Preferences”選項,彈出“Preferences”對話框。在“AdditionalBoardsManagerURLs”文本框中添加URL,單擊“OK”按鈕確認。選擇“Tools”→“Boards”→“BoardsManager”選項,彈出“BoardsManager”對話框。在“BoardsManager”對話框中,添加DraginoBoards信息。在ArduinoIDE中添加DraginoBoards信息后,可以看到來自IDEBoard的信息。對于LoRa模塊,應(yīng)該選擇“ArduinoUno-DraginoYun”選項。開發(fā)環(huán)境的搭建——ArduinoIDE庫文件引入程序中定義了一個RH_RF95對象rf95,用于控制RF95無線通信模塊。還定義了一個浮點型變量frequency,用于設(shè)置通信頻率。定義變量定義宏程序通過#define指令定義了BAUDRATE宏,用于設(shè)置串口通信波特率。如果使用DraginoYun網(wǎng)絡(luò)固件,可以取消注釋第15行代碼,將BAUDRATE設(shè)置為250000。程序開始部分通過include指令引入所需的庫文件,如<OneWire.h>、<SPI.h>、<RH_RF95.h>和<Console.h>。實驗核心代碼講解初始化設(shè)置在setup()函數(shù)中,程序首先調(diào)用Bridge.begin()初始化串口通信,然后調(diào)用Console.begin()啟動控制臺輸出。初始化rf95如果rf95初始化失敗,Console.println("initfailed")將打印錯誤消息。成功初始化后,設(shè)置發(fā)射功率為20dBm,工作頻率為868MHz。主循環(huán)函數(shù)在loop()函數(shù)中,程序?qū)⒉粩嘌h(huán)執(zhí)行各種操作,如讀取溫度、濕度等傳感器數(shù)據(jù),并通過串口或無線方式將數(shù)據(jù)發(fā)送給上位機或其它設(shè)備。實驗核心代碼講解010203終端節(jié)點網(wǎng)關(guān)終端節(jié)點通常是各類傳感器,用于數(shù)據(jù)采集、開關(guān)控制等。網(wǎng)關(guān)是LoRaWAN網(wǎng)絡(luò)中的重要實體,負責收集節(jié)點數(shù)據(jù)并進行封裝、轉(zhuǎn)發(fā)。LoRaWAN的網(wǎng)絡(luò)實體網(wǎng)絡(luò)服務(wù)器網(wǎng)絡(luò)服務(wù)器主要負責上、下行數(shù)據(jù)包的完整性校驗,確保數(shù)據(jù)的準確性和完整性。應(yīng)用服務(wù)器應(yīng)用服務(wù)器負責OTAA設(shè)備的入網(wǎng)激活及應(yīng)用數(shù)據(jù)的加密和解密,提供API供用戶發(fā)送數(shù)據(jù)。03LoRa與云服務(wù)器通信硬件實現(xiàn)任務(wù)二:LoRa與云服務(wù)器通信硬件實現(xiàn)職業(yè)技能目標:任務(wù)需求:了解HTTP、RESTfulAPI、MQTT協(xié)議。能夠通過源代碼在HTTP中調(diào)用RESTfulAPI。能夠通過MQTT協(xié)議上傳數(shù)據(jù)。任務(wù)描述:任務(wù)一實現(xiàn)了場景搭建,本任務(wù)對需要采集的溫濕度及光照度數(shù)據(jù)進行匯聚并且實現(xiàn)數(shù)據(jù)的存儲、發(fā)送和控制。任務(wù)需求:基于Arduino開發(fā)板采集傳感器數(shù)據(jù),通過源代碼在HTTP中調(diào)用RESTfulAPI,以實現(xiàn)通過MQTT協(xié)議上傳數(shù)據(jù)。前端與后端分離RESTful規(guī)范RESTfulAPI作為中間接口可以實現(xiàn)不同開發(fā)語言、微處理器、架構(gòu)的標準化轉(zhuǎn)換。多種語言協(xié)同后端負責數(shù)據(jù)采集,前端負責數(shù)據(jù)渲染和呈現(xiàn),調(diào)用指定API獲取數(shù)據(jù)并展示,呈現(xiàn)動態(tài)過程。RESTfulAPI使用HTTP請求GET、PUT、POST、DELETE數(shù)據(jù),用于傳感器與上行平臺通信,后面的設(shè)計通過RESTfulAPI與云服務(wù)器通信,上傳或下載數(shù)據(jù),適用于智能設(shè)備移動端。HTTP與RESTfulAPI下位機通信協(xié)議JSON格式數(shù)據(jù)MQTT協(xié)議運行環(huán)境MQTT協(xié)議優(yōu)勢下位機使用MQTT協(xié)議和JSON格式與上位機通信,MQTT是為硬件性能低、網(wǎng)絡(luò)條件差的遠程設(shè)備設(shè)計的發(fā)布/訂閱消息協(xié)議。JSON是一種輕量級的數(shù)據(jù)交換格式,便于解析和生成,使用sprintf函數(shù)上傳JSON格式的數(shù)據(jù),使用MQTT_PUBLISH函數(shù)為發(fā)布的信息添加主題。MQTT協(xié)議運行在TCP/IP或WebSocket協(xié)議上,并可使用SSL保護傳輸?shù)臄?shù)據(jù),LoRa終端節(jié)點為數(shù)據(jù)發(fā)布者,云服務(wù)器為數(shù)據(jù)訂閱者。MQTT協(xié)議具有低開銷、低功耗、適應(yīng)頻繁網(wǎng)絡(luò)中斷等特點,可以顯著降低網(wǎng)絡(luò)成本,并節(jié)約功耗。MQTT協(xié)議選擇云服務(wù)器云服務(wù)器具有簡單、高效、安全、可靠的特點,相比傳統(tǒng)線下服務(wù)器,在成本和可擴展性上具有明顯優(yōu)勢。如果需要增加服務(wù)器配置,云服務(wù)器可以按需擴展和升級,而傳統(tǒng)的物理服務(wù)器只能重新購買,成本很高。本任務(wù)使用的云服務(wù)器為樂為物聯(lián)云服務(wù)器,它是一個迅速實現(xiàn)物聯(lián)網(wǎng)應(yīng)用的平臺,用戶可以在該平臺上存儲、查詢和分析數(shù)據(jù),還可以創(chuàng)建一個設(shè)備控制器和增加一個傳感器并輸入信息。導(dǎo)入DHT庫在ArduinoIDE中添加DHT庫(dht.h),源代碼基本為Arduino官網(wǎng)提供的開源頭文件。設(shè)置最大超時時間為100s,而且DHTLIB_TIMEOUT的循環(huán)至少需要使用4個時鐘周期,因此最多要執(zhí)行400個循環(huán)導(dǎo)入頭文件DHT庫在HTTP中調(diào)用RESTfulAPI首先將LoRa終端節(jié)點的ArduinoUNO與光照度傳感器Risym、溫濕度傳感器DHT11連接,編寫的程序包括LoRa終端節(jié)點從ArduinoUNO讀取傳感器數(shù)據(jù),并打包發(fā)送給LoRa網(wǎng)關(guān)的MCU(微控制單元)部分,LoRa網(wǎng)關(guān)部分獲取傳感器數(shù)據(jù),并把數(shù)據(jù)發(fā)送給網(wǎng)關(guān)的內(nèi)置Linux端。隨后,LoRa網(wǎng)關(guān)中的Linux部分將傳感器數(shù)據(jù)以RESTfulAPI格式發(fā)送至云服務(wù)器。LoRa終端節(jié)點設(shè)計LoRa終端節(jié)點的傳輸流程如下圖所示。該流程圖充分體現(xiàn)了數(shù)據(jù)采集節(jié)點程序設(shè)計的思路,將溫濕度、光照度傳感器檢測和采集到的信號轉(zhuǎn)換為數(shù)字信號并發(fā)送至LoRa網(wǎng)關(guān)。LoRa網(wǎng)關(guān)節(jié)點設(shè)計LoRa網(wǎng)關(guān)節(jié)點的傳輸流程如圖4-2-3所示。該流程圖展示的是LoRa網(wǎng)關(guān)中的Linux部分將傳感器數(shù)據(jù)以RESTfulAPI格式發(fā)送至云服務(wù)器并向終端節(jié)點回應(yīng)的基本流程。通過MQTT協(xié)議上傳數(shù)據(jù)

基本流程為LoRa終端節(jié)點的Arduino開發(fā)板從傳感器接收數(shù)據(jù)并利用LoRa技術(shù)將數(shù)據(jù)發(fā)送至LoRa網(wǎng)關(guān)。為使網(wǎng)關(guān)的內(nèi)置Linux部分可以分析環(huán)境數(shù)據(jù),LoRa網(wǎng)關(guān)的單片機和無線射頻模塊將從終端節(jié)點發(fā)送來的數(shù)據(jù)通過Bridge庫發(fā)送至Linux部分。Linux部分對發(fā)送來的數(shù)據(jù)進行檢驗,檢驗通過后將數(shù)據(jù)封裝為JSON格式,并通過MQTT協(xié)議發(fā)送至樂為物聯(lián)云服務(wù)器,至此便完成了數(shù)據(jù)的上傳。04LoRa與云服務(wù)器通信任務(wù)三:LoRa與云服務(wù)器通信職業(yè)技能目標:任務(wù)需求:了解云服務(wù)器及其相關(guān)配置。能夠通過云端配置實現(xiàn)LoRa與云服務(wù)器通信。任務(wù)描述:將某工廠采集的數(shù)據(jù)匯聚到云服務(wù)器上,并能通過云服務(wù)器實現(xiàn)環(huán)境管理。任務(wù)需求:根據(jù)任務(wù)二中的Arduino硬件搭建,通過LoRa與云服務(wù)器進行數(shù)據(jù)通信,測試預(yù)警提示,實現(xiàn)智能化管控。硬件部分的準備首先進行硬件配置,LoRa終端節(jié)點將從溫濕度傳感器DHT11和光照度傳感器Risym獲取數(shù)據(jù),這些數(shù)據(jù)將通過LoRa終端節(jié)點無線傳輸至LoRa網(wǎng)關(guān)。LoRa終端節(jié)點如圖所示。LoRa終端節(jié)點網(wǎng)關(guān)的配置LoRa網(wǎng)關(guān)接入互聯(lián)網(wǎng)通過DHCP獲取IP地址。修改RX頻率和測試互聯(lián)網(wǎng)接入如圖4-3-4所示。云服務(wù)器的配置首先,設(shè)定LoRa網(wǎng)關(guān)的頻率與終端節(jié)點的LoRaShield頻率相同,均為433MHz;然后,登錄SSH控制臺來連接LoRa網(wǎng)關(guān)的Linux端,檢查ping通結(jié)果。云服務(wù)器的設(shè)備配置如圖所示。通過HTTP接入云服務(wù)器通過HTTP接入云服務(wù)器的整體流程通過MQTT協(xié)議接入云服務(wù)器數(shù)據(jù)流及處理過程如下。(1)LoRa終端節(jié)點將從傳感器獲取到的數(shù)據(jù)通過LoRa無線發(fā)送至LoRa網(wǎng)關(guān)。(2)LoRa網(wǎng)關(guān)中的LoRa/MCU部分可以獲取到傳感器數(shù)據(jù),并通過LoRa無線將數(shù)據(jù)發(fā)送至Linux端。(3)LoRa網(wǎng)關(guān)的Linux端通過MQTT協(xié)議將傳感器數(shù)據(jù)上傳至樂為物聯(lián)云服務(wù)器。預(yù)警提示功能測試如果當前監(jiān)測的傳感器數(shù)值超過設(shè)定的閾值,那么樂為物聯(lián)云服務(wù)器便通過微信公眾號平臺向綁定的微信賬戶發(fā)送預(yù)警信息,也可以以短信方式向指定聯(lián)系人發(fā)送預(yù)警信息,方便工作人員及時查看并處理。預(yù)警提示功能效果如圖所示。THANKS感謝觀看項目五基于藍牙4.0的溫度計系統(tǒng)01任務(wù)一:建立藍牙4.0硬件環(huán)境智能穿戴設(shè)備的應(yīng)用智能可穿戴設(shè)備在醫(yī)療健康領(lǐng)域的應(yīng)用場景也日趨豐富,如實時采集人體溫度信息等。數(shù)字健康產(chǎn)業(yè)受關(guān)注隨著物聯(lián)網(wǎng)、人工智能等技術(shù)的快速發(fā)展,以智能可穿戴設(shè)備為代表的數(shù)字健康產(chǎn)業(yè)備受關(guān)注。老齡化進程與養(yǎng)生需求我國老齡化進程加快,人民群眾的養(yǎng)生需求與日俱增,對醫(yī)療健康領(lǐng)域的需求也越來越高。項目背景能夠搭建BLE(BluetoothLowEnergy,低功耗藍牙)協(xié)議棧的開發(fā)環(huán)境并完成工程建立、配置、調(diào)試與下載。能夠根據(jù)應(yīng)用需求修改BLE協(xié)議棧,組建BLE通信網(wǎng)絡(luò)。職業(yè)技能目標本任務(wù)要求設(shè)計一個BLE技術(shù)的溫度監(jiān)測儀,并建立BLE通信網(wǎng)絡(luò),完成外設(shè)與集中器的設(shè)備發(fā)現(xiàn)、請求連接、建立連接和終止連接等操作。任務(wù)描述與需求任務(wù)一:建立藍牙4.0硬件環(huán)境藍牙的定義藍牙是愛立信、諾基亞、東芝、國際商業(yè)機器公司以及英特爾等5家公司于1998年5月聯(lián)合發(fā)布的一種無線通信新技術(shù),可以實現(xiàn)固定設(shè)備與移動設(shè)備之間的數(shù)據(jù)交換。藍牙技術(shù)主要包含兩種技術(shù):基本速率(BasicRate,BR)和低功耗(LowEnergy,LE),它們之間是不能互相通信的。BasicRate是傳統(tǒng)藍牙技術(shù),包括可選的增強數(shù)據(jù)速率(EnhancedDataRate,EDR)技術(shù),以及交替使用的MAC層和PHY層擴展(簡稱AMP)。知識梳理藍牙系統(tǒng)的組成知識梳理根據(jù)藍牙核心規(guī)范,藍牙系統(tǒng)的組成如圖所示,藍牙協(xié)議由藍牙核心協(xié)議和藍牙應(yīng)用層協(xié)議構(gòu)成。藍牙核心由兩部分構(gòu)成,分別是主機和控制器??刂破靼ㄖ骺刂破骱投鄠€輔助控制器,負責定義射頻、基帶等硬件規(guī)范,并在此基礎(chǔ)上抽象出通信的邏輯鏈路(LogicalLink)。知識梳理藍牙核心的構(gòu)成藍牙核心由兩部分構(gòu)成,分別是主機和控制器??刂破靼ㄖ骺刂破骱投鄠€輔助控制器,負責定義射頻、基帶等硬件規(guī)范,并在此基礎(chǔ)上抽象出通信的邏輯鏈路(LogicalLink)。藍牙技術(shù)的應(yīng)用主機在邏輯鏈路的基礎(chǔ)上封裝藍牙技術(shù)的細節(jié),以便實現(xiàn)藍牙的應(yīng)用、開發(fā)。在一個藍牙系統(tǒng)中,藍牙核心只能有一個主機,但可以存在一個或多個控制器。藍牙技術(shù)的演練歷程目前,藍牙共發(fā)布了11個版本,從1.1到5.2。每個版本都在前一個版本的基礎(chǔ)上進行了改進和優(yōu)化,以提供更好的性能和更廣泛的應(yīng)用場景。藍牙5.0:2016年發(fā)布,更高速率,更遠距離,大容量廣播,無需配對接收信標數(shù)據(jù)藍牙技術(shù)概覽藍牙1.1/1.2:基礎(chǔ)版,1Mbit/s速率,易受干擾藍牙2.1+EDR:里程碑,2.1Mbit/s速率,多設(shè)備連接,低功耗高速與低功耗藍牙3.0+HS:24Mbit/s速率,802.11PAL集成,Wi-Fi級傳輸藍牙4.x+LE:轉(zhuǎn)向低功耗,4.0版本2010年發(fā)布,4.1/4.2增強安全性與連接性物聯(lián)網(wǎng)優(yōu)化藍牙技術(shù)的演練歷程目前,藍牙共發(fā)布了11個版本,從1.1到5.2。每個版本都在前一個版本的基礎(chǔ)上進行了改進和優(yōu)化,以提供更好的性能和更廣泛的應(yīng)用場景。低功耗藍牙技術(shù)概述低功耗藍牙的應(yīng)用領(lǐng)域主要應(yīng)用于醫(yī)療保健、運動健身、信標、安防、家庭娛樂等領(lǐng)域。低功耗藍牙的核心特點低功耗、低成本、快速連接、長距離通信等。藍牙4.0與低功耗藍牙藍牙4.0是藍牙技術(shù)的一個重要版本,其中就包含了低功耗藍牙(BLE)技術(shù)。ble技術(shù)的特點詳解低功耗藍牙技術(shù)提供了穩(wěn)定的數(shù)據(jù)傳輸,能夠保證數(shù)據(jù)的高可靠性,使得在醫(yī)療保健、安防等領(lǐng)域的應(yīng)用更加可信賴。高可靠性與數(shù)據(jù)傳輸相較于經(jīng)典藍牙,低功耗藍牙顯著降低了功耗和成本,使得更多的設(shè)備能夠采用這項技術(shù),拓寬了其應(yīng)用范圍。低功耗藍牙技術(shù)不僅支持遠距離的數(shù)據(jù)傳輸,還具有良好的抗干擾能力,確保了數(shù)據(jù)傳輸?shù)姆€(wěn)定性和準確性。低成本、低功耗的優(yōu)勢低功耗藍牙技術(shù)能夠快速啟動并瞬間完成設(shè)備間的連接,為用戶提供了流暢的使用體驗??焖賳优c瞬間連接體驗01020403遠距離傳輸與抗干擾能力任務(wù)實施CC2541模塊介紹藍牙4.0模塊采用的CC2541是一款針對低功耗及私有2.4GHz頻段應(yīng)用的功率優(yōu)化的真正片上系統(tǒng)解決方案,結(jié)合了射頻收發(fā)器的出色性能、業(yè)界標準的增強型8051MCU、系統(tǒng)內(nèi)可編程閃存、8KBRAM及很多其他強大功能器件。CC2541提供的外設(shè)CC2541提供了多種外設(shè),包括21個通用I/O引腳、閃存控制器、5個通道的DMA控制器、6個通用定時器、2個串口和1個隨機數(shù)發(fā)生器。硬件選型本項目實現(xiàn)基于藍牙4.0的溫度計系統(tǒng)的設(shè)計,通過藍牙傳輸采集到的溫度數(shù)據(jù),在應(yīng)用開發(fā)之前可以根據(jù)應(yīng)用需求進行硬件選型。030201溫度模塊DS18B20接線方便,封裝后可應(yīng)用于多種場合,如管道式、螺紋式、磁鐵吸附式、不銹鋼封裝式,型號多種多樣。DS18B20的應(yīng)用場合開發(fā)環(huán)境搭建CC2541和CC2530采用的開發(fā)環(huán)境都為IAREmbeddedWorkbenchfor8051,具體開發(fā)環(huán)境搭建可以參考項目二的任務(wù)一。溫度模塊采用常用的數(shù)字溫度傳感器DS18B20,其輸出的是數(shù)字信號,具有體積小、硬件開銷低、抗干擾能力強、精度高的特點。任務(wù)實施BLE協(xié)議棧版本選擇根據(jù)應(yīng)用需求及硬件選型方案,選用TI公司提供的BLE協(xié)議棧,版本號為1.3.2,安裝包名為BLE-CC254x-1.3.2。BLE協(xié)議棧文件結(jié)構(gòu)從TI官方網(wǎng)站下載藍牙安裝包BLE-CC254x-1.3.2后,雙擊即可進行安裝,默認安裝路徑是“C:\TexasInstruments\BLE-CC254x-1.3.2”。任務(wù)實施BLE協(xié)議棧工程文件BLE協(xié)議棧軟件包的文件結(jié)構(gòu)BLE協(xié)議棧軟件包的各文件夾內(nèi)容如下。(1)Accessories:附件,如USB驅(qū)動、Hex文件。(2)Components:組件,此文件夾下有4個二級文件夾,“ble”存儲協(xié)議棧源代碼,“hal”存儲硬件驅(qū)動,“osal”存儲操作系統(tǒng)抽象層源代碼、“services”存儲系統(tǒng)服務(wù)的相關(guān)文件。(3)Documents:說明文檔,如協(xié)議棧API、示例工程說明文檔等。(4)Projects:工程文件。協(xié)議棧示例工程的結(jié)構(gòu)分析工程結(jié)構(gòu)分析以SimpleBLEPeripheral示例工程為例,分析工程結(jié)構(gòu)。在路徑“C:TexasInstrumentsBLE-CC254x-1.3.2ProjectsbleSimpleBLEPeripheralCC2541DB”下雙擊“SimpleBLEPeripheral.eww”,系統(tǒng)將自動使用IAREmbeddedWorkbench軟件打開該示例工程。示例工程分析圖5-1-3中的“Projects/ble”文件夾中可以看到多個示例工程,涉及傳感器的實際應(yīng)用和藍牙系統(tǒng)的角色。協(xié)議棧示例工程的結(jié)構(gòu)分析工程文件夾分組工程文件夾的分組情況如下。(1)APP:包含應(yīng)用程序源代碼和頭文件。(2)HAL:包含硬件抽象層源代碼和頭文件。協(xié)議棧庫文件LIB:包含協(xié)議棧庫文件。NPI:包含網(wǎng)絡(luò)處理器接口文件。OSAL:包含操作系統(tǒng)抽象層源代碼和頭文件。GAP角色與安全PROFILES:包含GAP角色、GAP安全、GATT的源代碼和頭文件。TOOLS:包含buildConfig.cfg、buildComponents.cfg、OnBoard.c和OnBoard.h,用于處理用戶接口。編譯輸出結(jié)果OUTPUT:IAR集成開發(fā)環(huán)境編譯輸出的結(jié)果,如目標文件、庫文件等,便于用戶查看和管理編譯輸出。按照路徑“C:TexasInstrumentsBLE-CC254x-1.3.2ProjectsbleSimpleBLEPeripheralCC2540DB”打開SimpleBLEPeripheral.eww工程。打開工程任務(wù)基于協(xié)議棧的SimpleBLEPeripheral工程進行,打開工程后選擇“CC2540”選項。協(xié)議棧工程打開SimpleBLEPeripheral工程串口初始化配置串口初始化添加串口初始化函數(shù),串口初始化其實就是配置串口號、波特率、流控、校驗位等,具體代碼如下。配置波特率和流控代碼中通過配置uartConfig.baudRate和uartConfig.flowControl來設(shè)置串

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論