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

面向LoRa的物聯網平臺研究

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

朱慶華+景妮琴+常瑩

摘要:該文面向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的溫室管理系統的研究與設計
論智能油田的發展趨勢及必要性
主站蜘蛛池模板: 67194亚洲无码| 天堂在线www网亚洲| 91免费观看视频| 亚洲AV电影不卡在线观看| 亚洲性影院| 亚洲中文字幕日产无码2021| 在线色国产| 国产三级毛片| 免费一级大毛片a一观看不卡| 91免费在线看| 亚洲AⅤ综合在线欧美一区| 91精品国产一区| 亚洲日本中文字幕乱码中文| 天天躁狠狠躁| 97se亚洲综合在线韩国专区福利| 免费又黄又爽又猛大片午夜| 国产综合精品日本亚洲777| 天天激情综合| 99精品免费在线| 精品少妇人妻一区二区| yy6080理论大片一级久久| 麻豆a级片| 久久熟女AV| 亚洲天堂视频在线观看免费| AV天堂资源福利在线观看| 久久久久88色偷偷| 搞黄网站免费观看| 亚洲人成日本在线观看| 精品三级在线| 麻豆精品在线播放| 欧美午夜精品| 中国一级特黄大片在线观看| 国产门事件在线| 亚洲视频a| 91亚洲视频下载| 永久天堂网Av| 国产极品粉嫩小泬免费看| 夜夜操国产| 国产99视频精品免费观看9e| 色天天综合久久久久综合片| 国产内射在线观看| 亚洲精品无码成人片在线观看| 亚洲综合经典在线一区二区| …亚洲 欧洲 另类 春色| 久久黄色视频影| 91欧美亚洲国产五月天| 国产在线高清一级毛片| 色婷婷色丁香| 国产精品中文免费福利| 国产精品午夜福利麻豆| 18禁色诱爆乳网站| 欧美高清国产| 亚洲av中文无码乱人伦在线r| 一区二区三区在线不卡免费| 四虎综合网| 久久国产精品无码hdav| 国产成人毛片| 亚洲欧美日本国产综合在线 | 欧美激情福利| 免费无码又爽又刺激高| 97久久免费视频| 91视频日本| 色婷婷电影网| 日本在线免费网站| 国产成人凹凸视频在线| 国产人免费人成免费视频| 亚洲欧美另类日本| 色综合天天娱乐综合网| 国产欧美日韩91| 在线免费无码视频| 国产麻豆精品在线观看| 亚洲第一成年人网站| 麻豆国产在线观看一区二区| 国产不卡网| 69视频国产| 日本一区二区三区精品AⅤ| 国产后式a一视频| 国产亚洲精久久久久久久91| 丁香婷婷久久| www.av男人.com| 成人韩免费网站| 欧美日韩资源|