999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向LoRa的物聯網平臺研究

2018-02-02 05:51:09朱慶華景妮琴?,?/span>
電腦知識與技術 2018年1期
關鍵詞:物聯網

朱慶華+景妮琴+?,?/p>

摘要:該文面向LoRa的物聯網平臺,將平臺分解為用戶節點終端、LoRa網關、LoRa服務器、管理平臺四個模塊。其中,傳感器和傳輸節點之間通過串口通信傳輸數據,節點接收數據之后通過LoRa調制方式發送給網關,服務器為所用設備公司提供的遠程服務器,在PC端編寫數據讀取窗口讀取服務器上接收的網關數據。最后對LoRa物聯網平臺進行了功能測試和性能測試。

關鍵詞:物聯網;LoRa;短距離通信

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2018)01-0075-03

1 概述

1.1 技術的提出

2013年8月,Semtech公司向業界發布了一種新型的,基于1GHz以下的超長距低功耗數據傳輸技術(簡稱LoRa)的芯片。其接受靈敏度達到了驚人的-148dbm,LoRa是由升特公司(Semtech)發布的一種專用于無線電調制解調的技術,它與其他如FSK(頻移鍵控)、GMSK(高斯最小頻移鍵控)、BPSK(二進制相移鍵控)及其派生的調制方案形成競爭關系。

LoRa融合了數字擴頻、數字信號處理和前向糾錯編碼技術,擁有前所未有的性能。此前,只有那些高等級的工業無線電通信會融合這些技術,而隨著LoRa的引入,嵌入式無線通信領域的局面發生了徹底的改變。

1.2LoRa技術優勢

LoRa技術最突出的兩個優點就是長距離和低功耗。

LoRa技術的第一個優點就是傳輸距離長。在郊區環境下,LoRa技術的傳輸距離可以達到10~15km;在城市環境下,傳輸距離也能達到3~5km。這樣的傳輸距離相比Wi-Fi、2G、3G、4G等要遠很多。LoRa技術能有這么遠的傳輸距離,得益于它工作的頻率范圍比較低,頻率低的信號波長較大,在城市中眾多建筑包圍之下產生的衰落就比較小,所以傳輸距離遠。

LoRa技術另一個優點就是低功耗。LoRa技術之所以能夠低功耗,首先是因為其發射頻率低,信號波長比較長,在傳播過程中所產生的衰落比較小,因而可以采用低功率發射;其次,LoRa采用擴頻技術,能使信號的抗多徑、抗衰落能力比較強,所以對發射功率的要求不高;最后,為達到省電的目的, 業界廣泛應用WOR(Wake on Radio) 方式—芯片周期性地進入接收模式以判斷有沒有喚醒信號(比如前導),其他時間處于Sleep模式,通過對比,采用WOR方式可以使電池壽命相比功耗同樣不高的FSK調制提高3倍以上。

1.3 LoRa WAN1.0

LoRaWAN1.0是有LoRa聯盟提出的LoRa技術規范,它定義了LoRa網絡的通信協議和系統結構。通信協議和系統結構對LoRa網絡的節點電池壽命、網絡容量、服務質量、安全性和服務的多樣性有著重要影響。

如圖1所示,LoRaWAN網絡架構是一個典型的星形拓撲結構,在這個網絡架構中,LoRa網關是一個透明的中繼,連接前端終端設備和后端中央服務器。網關與服務器通過標準IP連接,而終端設備采用單跳與一個或多個網關通信,所有的節點均是雙向通信。

LoRaWAN的終端設備服務于不同的應用,有著不同的要求。為了優化各類終端應用程序配置文件,LoRaWAN利用不同的設備類權衡網絡下行通信延遲與電池壽命。在控制或執行器類型的應用程序,所述下行鏈路通信延遲是一個重要的因素。

2 面向LoRa的物聯網平臺設計

2.1 設計原則

物聯網平臺的設計應該支持多種業務需求,既要滿足不同業務的共性需求,同時又能夠支持不同業務的個性化需求。除此之外,平臺的系統設計還應該遵循以下幾個原則:安全性原則、實用性原則、標準性原則和可擴充性原則。

2.2 面向LoRa的物聯網平臺網絡結構

如圖2所示,整個LoRa物聯網平臺分為用戶節點終端、LoRa網關、LoRa服務器、管理平臺四個模塊。其中,用戶節點終端由測試節點與數據采集傳感器相連接,用戶節點終端部署在教學樓、學生公寓及行政樓等分散的多個位置,采用星型網絡布局;LoRa網關放在網絡中心機房內,用于接收測試節點發送的數據并轉發至服務器;LoRa服務器采用設備商提供的遠程云服務器;管理平臺通過登錄遠程云服務器獲取LoRa網關的數據,并能通過平臺向節點發送消息。

3 面向LoRa的物聯網平臺實現

平臺實現的用戶終端模塊由檢測儀、測試節點和移動電源組成,用于測試LoRa網絡覆蓋質量,傳輸溫度、濕度和空氣質量數據,同時,用戶也可以通過檢測儀了解到節點位置的溫度、濕度和空氣質量情況。

3.1 檢測儀

檢測儀上的各個傳感器都是通過串口通信傳輸數據,因而整個檢測儀的數據采用串口方式傳輸,采用TTL-USB接口將檢測儀連接到PC端,通過PC端的串口調試軟件測試數據傳輸是否正常。根據檢測儀的說明書,檢測儀上傳的數據間隔為1秒,波特率9600,數據位8位,停止位1位,無校驗位。

測試結果從串口調試軟件串口數據接收獲取,根據讀取的數據,計算如下:溫度=28.0℃;濕度=31RH%;PM2.5=0μg/m3;PM10=0μg/m3;計算結果與檢測儀屏幕顯示結果完全相符。測試結果說明檢測儀串口數據上傳沒有問題。

3.2 測試節點

測試節點為基于LoRa物聯網平臺中的重要部分,它的主要功能有:通過串口與檢測儀通信;OLED顯示屏,可根據需要顯示數據;通過編程中的邏輯修改,實現LoRaMAC、PHYMAC、低功耗三個模式直接的切換;向LoRa網關發送上行數據;接收LoRa網關的下行數據;測試LoRa網絡覆蓋質量。

節點編程實現:

1) 串口驅動程序

其中核心代碼如下:endprint

串口初始化函數:void UART_Init(void)

該函數的作用為初始化串口設置,在對測試節點進行燒寫編程時對串口的波特率、數據位數、有無停止位、有無校驗位等參數進行設置,若想修改這些參數,需要對測試節點進行重新燒寫。根據檢測儀的串口參數需求,編寫代碼:

UartHandle.Instance = USARTx;

UartHandle.Init.BaudRate = 9600;

UartHandle.Init.WordLength = UART_WordLENGTH_8B;

UartHandle.Init.StopBits = UART_STOPBITS_1;

UartHandle.Init.Parity = UART_PARITY_NONE;

UartHandle.Init.HwFlowCtl = UART_HWCONTROL_NONE;

UartHandle.Init.Mode = UART_MODE_TX_RX;

串口發送函數的關鍵語句為:

uint16_t i = 0 ;

for(i = 0;i

{ USART1→TDR = (uint8_t)(str[i]);

while( HAL_USART_GET_FLAG(USART1,UART_FLAG_TC)== RESET);}

2) 屏幕驅動程序

其中的核心函數如下:

void OLED_Init(void)

此函數為OLED的初始化函數,用于配置OLED引腳,設置對比度、掃描方向、亮度的參數。若想對OLED的基本參數進行改動,需修改此函數中的內容并重新燒寫。

void OLED_DrawPoint(u8 x,u8 y,u8 t)

void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size,u8 mode) //單個字符顯示

此函數的功能為控制OLED顯示屏在(x,y)坐標的位置顯示一個字符。核心代碼如下:

for(t=0;t

{ if(size==12)temp=asc2_1206[chr][t]; // Font 1206

else if(size==16)temp=asc2_1608[chr][t]; // Font 1206

else if(size==24)temp=asc2_2412[chr][t]; // Font 1206

else return; //Not word stock

for(t1=0;t1<8;t1++)

{ if(temp&0x80)OLED_DrawPoint(x,y,mode);

else OLED_DrawPoint(x,y,!mode);

temp<<=1;

y++;

if((y-y0)==size)

{ y=y0;

x++;

break;}}

void OLED_ShowString(u8 x,u8 y,const u8 *p,u8 size) //顯示需要的數據

{ while((*p<='~')&&(*p>=' ')) //Determine whether illegal

{ if(x>(128-(size/2))){x=0;y+=size;}

if(y>(64-size)){y=x=0;OLED_Clear();}

OLED_ShowChar(x,y,*p,size,1);

x+=size/2;

p++;} }

3) LoRa頻點、信道設置

測試節點支持LoRaMAC工作模式,LoRaMAC工作模式又分為LoRa調制和FSK調制兩種,本次所建的LoRa物聯網平臺采用LoRa調制。實現LoRaMAC工作模式設置的程序寫在app_oasl.c文件中,其核心代碼如下:

//設置LoRaMAC工作模式(LoRa調制)

//設置信道1

g_macData.channels[0].Frequency = 779500000;//頻點

//速率范圍:((最高速率<<4丨最低速率))

g_macData.channels[0].DrRange.Value = ( ( DR_5 << 4 ) | DR_0 );

g_macData.channels[0].Band = 0;

4) 串口數據讀取

串口數據讀取的程序語句如下:

switch(step)

{ case 0:

if(ch == 0xFF)

{ step++;

uart1_Rxcount= 0;

memset(uart1_rxBuf,0,80);//????????

uart1_rxBuf[uart1_Rxcount] = ch;

uart1_Rxcount++;}

break;

case 1:

uart1_rxBuf[uart1_Rxcount++] = ch;

if(uart1_rxBuf[8]==0x79)//跳過無用幀

step=0;

if(uart1_Rxcount==12)

……

for(uint8_t i=0;i<13;i++)

{ sprintf((char*)temp_buf+len,"%X",uart1_rxBuf[i]);//bandwidth

len=strlen((char*)temp_buf);}

OLED_ShowString(0,24,(u8*)temp_buf,12);

OLED_Refresh_Gram();

5) 串口數據發送

串口數據讀取完畢后,調用osal_set_event函數啟動發包程序。由于檢測儀上傳串口數據的頻率固定為1秒1幀,而測試節點采用LoRa模式發送數據的頻率遠遠低于檢測儀上傳串口數據的頻率。為保證測試節點不出現死機的情況,設置為可以丟包但是不會死機的工作模式,以保證測試節點正常工作。

3.3 用戶節點終端模塊整體測試

用戶節點終端模塊由檢測儀和測試節點組成,在完成對檢測儀和測試節點的編程、調試工作后,需對用戶節點終端模塊整體進行測試。

將測試節點上的4PIN串口數據線按照GND-GND,5V-5V,TX-RX,RX-TX的順序連接。串口數據線連接完成后,將移動電源的Micro-USB口連接至檢測儀,打開移動電源和檢測儀的開關,測試節點已經正確地讀取到了檢測儀上傳的串口數據。由此可得,用戶節點終端模塊工作正常。

3.4 LoRa 網關

為了方便管理和調試LoRa網關,網關上設有USB-B型接口,通過使用USB打印線可以將網關和PC相連接。PC終端與LoRa網關連接成功后,首先在PC 終端的設備管理器中查詢到PC終端與LoRa網關連接的串口號。連接后采用的調試軟件為Putty。設置相應參數進行連接管理。

常用指令gw info顯示LoRa網關的基本信息,包括ID,DTU版本,GWM 版本(硬件/軟件),地理位置信息。指令gw ip顯示LoRa網關的IP 信息,包括網絡連接類型,IP 地址,子網掩碼,默認網關。指令gw ping測試LoRa網關與服務器的連接情況。

3.5 LoRa服務器

基于LoRa的物聯網平臺使用的遠程云服務器主要功能有:實現中心網管平臺功能;實現LoRaWAN MAC部分;負責Gateway網關及配置工作,Mote配置及OTA與應用服務器數據交互。

3.6 管理平臺

管理平臺對網絡中各個用戶的節點終端進行管理。面向LoRa物聯網網絡的需求,管理平臺具有以下功能:

1) 服務器安全驗證

管理平臺所有功能的前提是登錄LoRa遠程云服務器,為保證數據安全,管理平臺登錄服務器時應驗證登錄信息并反饋。根據上一節內容,CS需要間隔60秒向AS發送登錄信息,這樣就確保了信息的安全。

2) 測試節點管理功能

管理平臺中應當對所有通過LoRa網關接入服務器的測試節點進行列表管理。通過選中測試節點,可以實現查看測試節點所發數據、向測試節點發送數據的功能。為了測試LoRa網絡的覆蓋質量,測試節點在發送數據時會將頻點、帶寬、碼率等信息一起發送到LoRa網關。服務器也應該具有讀取這些數據的功能,以方便和用戶節點終端進行對比,進而檢測LoRa網絡的覆蓋質量。

3) 對測試節點所發數據的處理功能

測試節點所攜帶的有效數據,根據上文所述,是一串HEX編碼的十六進制數據幀。為了更直觀地在管理平臺展示溫度、濕度和空氣質量這些數據,管理平臺需要對數據幀進行處理。通過上文所述的計算方法,管理平臺可以正確地顯示實際的數據。

4) 根據測試節點ID進行篩選

由于一個LoRa服務器可以接入很多的LoRa網關,一個網關又支持上千個測試節點接入,所以在服務器端會有很多的測試節點。服務器辨別各個測試節點的依據就是每個測試節點獨一無二的ID,根據測試節點ID選擇某個位置的測試節點比較繁瑣。為了解決這個問題,管理平臺應該具有根據節點ID進行篩選的功能,方便管理員通過按鈕直接訪問特定的測試節點。

4 結束語

本文進行了LoRa物聯網平臺的需求分析,針對需求,對物理網平臺進行了總體設計,將平臺分解為用戶節點終端、LoRa網關、LoRa服務器、管理平臺四個模塊。其中,傳感器和傳輸節點之間通過串口通信傳輸數據,節點接收數據之后通過LoRa調制方式發送給網關,服務器為所用設備公司提供的遠程服務器,在PC端編寫數據讀取窗口讀取服務器上接收的網關數據。

參考文獻:

[1] 劉琛,邵震,夏瑩瑩. 低功耗廣域LoRa技術分析與應用建議[J]. 電信技術,2016(5).

[2] 龔天平. LORA技術實現遠距離、低功耗無線數據傳輸[J]. 電子世界,2016(10).

[3] 胡江波,顏歡. 基于物聯網的無線傳感網絡平臺[J]. 電腦知識與技術,2015,11(6).

[4] 夏瑩瑩,劉琛,邵震. LPWA,物聯網產業發展的新機遇[J]. 通信企業管理,2015(10).endprint

猜你喜歡
物聯網
基于物聯網的無線測溫模塊設計
軟件導刊(2016年9期)2016-11-07 21:56:29
基于物聯網ZigBee技術的智能家居監控系統 
軟件導刊(2016年9期)2016-11-07 21:32:45
物聯網監測技術在G15W112邊坡的應用
基于物聯網的健康管理服務模式
基于物聯網的煤礦智能倉儲與物流運輸管理系統設計與應用
基于高職院校物聯網技術應用人才培養的思考分析
如何在高校架設學生洗衣服務系統
科技視界(2016年22期)2016-10-18 17:23:30
基于無線組網的智慧公交站點信息系統研究與實踐
基于LABVIEW的溫室管理系統的研究與設計
論智能油田的發展趨勢及必要性
主站蜘蛛池模板: 777国产精品永久免费观看| 丰满人妻被猛烈进入无码| 又黄又湿又爽的视频| 国产地址二永久伊甸园| vvvv98国产成人综合青青| 国产一区二区福利| 日韩天堂网| 亚洲综合婷婷激情| 中文字幕在线不卡视频| 国产女人爽到高潮的免费视频| 亚洲无码高清视频在线观看| 亚洲无码免费黄色网址| 国产精品不卡永久免费| AV在线天堂进入| 91午夜福利在线观看| 国产浮力第一页永久地址| 国产国产人在线成免费视频狼人色| 深夜福利视频一区二区| 波多野结衣中文字幕久久| 国产原创自拍不卡第一页| 亚洲精品图区| 亚洲首页国产精品丝袜| 在线色国产| 国产成人午夜福利免费无码r| 亚洲中文字幕97久久精品少妇| 77777亚洲午夜久久多人| 911亚洲精品| 欧美午夜在线观看| 欧美日韩国产综合视频在线观看| 暴力调教一区二区三区| 国产乱人免费视频| 日韩一级二级三级| 久久人妻xunleige无码| 美女毛片在线| 天天综合天天综合| 国产成人啪视频一区二区三区 | 亚洲成人动漫在线| 亚洲综合极品香蕉久久网| 最新国产你懂的在线网址| 欧美亚洲日韩不卡在线在线观看| 国产精品嫩草影院av| 国产视频入口| 试看120秒男女啪啪免费| 国产一区二区三区在线精品专区| 亚洲成A人V欧美综合| 精品少妇人妻一区二区| 亚洲综合国产一区二区三区| 国产成人AV男人的天堂| 国产美女自慰在线观看| 99久久精品视香蕉蕉| 国产精品真实对白精彩久久| 日本不卡视频在线| 国产在线一区视频| 国产精品成| 国产精品毛片一区视频播| 天天做天天爱夜夜爽毛片毛片| 国产精品毛片一区视频播| 成色7777精品在线| 99久久国产综合精品女同| 国产黑丝视频在线观看| 国产精品99久久久| 国产老女人精品免费视频| 国产另类视频| 亚洲第一成年人网站| 久久中文字幕2021精品| 亚洲综合色吧| 青青网在线国产| 国产在线观看91精品亚瑟| 欧美色亚洲| 欧美亚洲欧美区| 人人91人人澡人人妻人人爽| 国产精品久久久久久久伊一| 亚洲天堂精品视频| 人妻精品全国免费视频| 在线综合亚洲欧美网站| 成人欧美在线观看| 亚洲欧美成人网| 亚洲第一天堂无码专区| 亚洲IV视频免费在线光看| 日韩毛片在线视频| 97国产一区二区精品久久呦| 亚洲日韩每日更新|