孟水仙,翟春奇,尹 良
(1.內蒙古自治區(qū)無線電監(jiān)測站,內蒙古 呼和浩特 010090;2.北京郵電大學 信息與通信工程學院,北京 100876)
隨著物聯網的蓬勃發(fā)展,越來越多的設備和傳感器被連接到互聯網上,可以自動收集、分析和共享數據,幫助提高生產效率,改善用戶體驗。物聯網信號應用非常廣泛,涉及許多領域和應用場景[1]。
遠距離無線電(Long Range Radio, LoRa)信號,作為物聯網信號的一種,以長距離、低功耗的特點被廣泛應用于各領域、各場景,比如智慧城市[2]、智慧停車[3]中的設備互聯與數據收集、工業(yè)與農業(yè)物聯網[4-5]中低成本監(jiān)測控制、能源管理[6]中各儀表的數據收集與遠程監(jiān)測。隨著物聯網技術的不斷發(fā)展,其應用領域還將不斷擴大。
無線電監(jiān)測是指對無線電信號進行實時監(jiān)測和分析,在物聯網應用中,信號監(jiān)測可以保證數據傳輸的可靠性、提高網絡效率,對物聯網應用的正常運行和安全性具有重要意義[7]。信號檢測是無線電監(jiān)測中關鍵的一步,可以通過特定的算法判斷信號的有無,以了解其使用情況、干擾情況和可用性。信號模板匹配[8]作為一種信號檢測方法,可用于在接收到的信號中檢測和定位特定的信號模式,其算法簡單、直觀、易于實現,在很多領域得到了廣泛應用,例如雷達信號處理、音頻信號處理和圖像識別等[9-11]。
林肖輝等[12]對第二代自動鏈路建立信號(2G-ALE)提出了一種基于頻譜模板匹配的2G-ALE信號自動識別方法。王琨鵬等[13]對基于模板匹配的雷達輻射源信號識別進行了研究。李靖超等[14]使用基于聚類算法的模板匹配識別多類調制方式。李璐[15]使用模板匹配濾波技術檢測微弱地震信號。李琰等[16]提出了一種基于圖像分割和模板匹配的短波跳頻信號盲檢測算法。目前使用信號模板匹配算法做特定信號識別的實例比較多,也有學者對特定信號檢測運用信號模板匹配算法,但是使用模板匹配對物聯網信號進行檢測識別的研究較少。
本文基于信號模板匹配算法,對物聯網信號中的典型信號——LoRa進行了智能檢測。首先介紹了LoRa信號的相關理論,包括特定帶寬與擴頻因子(Spreading Factor,SF)等,其次闡述了模板匹配中的相關算法,最后基于采集到的信號數據,運用特定LoRa信號模板對復雜電磁環(huán)境中的LoRa信號做智能檢測,給出了檢測結果和具體信號定位信息。
LoRa遠距離無線電是一種無線通信協(xié)議,特別適用于低功率和長距離的應用。LoRa物理層采用線性調頻擴頻(Chirp Spread Spectrum,CSS)調制,而CSS調制的核心是Chirp調制,以此實現在低功耗和長傳輸距離條件下的高可靠性數據傳輸。
LoRa通信中,Chirp調制采用的是線性掃頻,也稱為線性調頻(Linear Frequency Modulation,LFM)。頻率線性掃描的一個Chirp信號頻率變化如圖1所示??梢钥闯?在一個掃頻周期內,信號頻率f隨時間呈線性變化。
圖1 中心頻率在fRF的線性掃頻信號Fig.1 Linear sweep signal with center frequency at fRF
在圖1所示的Chirp調制中,無論頻率掃描方式如何,都不包含變化的信號,無法直接用來傳遞信息。LoRa在Chirp調制的基礎上采用了CSS技術,通過改變掃頻的初始頻率,來實現不同信息的傳遞。
傳遞了3個符號(symbol)的頻率線性掃描波形如圖2所示??梢钥闯?傳遞3個符號使用不同的起始頻率,當頻率隨時間線性增長到達頻率上限時,此時CSS調制規(guī)定,在時間連續(xù)的前提下,后續(xù)的頻率以頻率下限為起點重新線性增長,使用不同的起始頻率來傳遞不同的符號信息。
圖2 CSS調制線性掃頻Fig.2 CSS modulation linear sweep frequency
為了明確無線傳輸中每個符號與傳輸比特數的關系,LoRa定義了SF,表示每個符號中包含的信息比特數,也就是將每個符號擴頻到2SF碼片上進行傳輸,同時也將不同的符號映射到了不同的CSS調制初始頻率。
Ncode=2SF,
(1)
式中:Ncode為碼片數量。
同時,協(xié)議對LoRa信號帶寬有著明確規(guī)定,發(fā)射LoRa信號時帶寬要遵守協(xié)議規(guī)定[17]。
不同的信號帶寬與SF可以組合成多種不同類型的LoRa信號來傳遞不同信息量的信息。
信號模板匹配算法是一種常用的信號處理方法,用于在一個信號中找到與一個預定義模板最相似的部分?;舅悸肥菍⒛0逍盘柵c待匹配信號進行比較,計算二者特征向量的歐氏距離來衡量它們之間的相似程度,最小歐氏距離對應的模板即為最佳匹配模板,輸出該模板得到匹配結果。
以8位灰度圖像為例,m×n大小的模板T疊放在W×H大小的被搜索圖S上平移,模板覆蓋被搜索圖的區(qū)域稱為子圖Sij,i,j為子圖左上角在被搜索圖S上的坐標,搜索范圍1≤i≤W-n,1≤j≤H-m。假設有M個類別的信號模板T1,T2,…,TM,第k個模板Tk的特征向量為n維特征,如式(2)所示:
Tk=(tk1,tk2,tk3,…,tkn)T。
(2)
Sij的特征向量Sij與Tk同維度:
Sij=(sij1,sij2,sij3,…,sijn)T。
(3)
使用式(4)所示的歐氏距離的大小來衡量Tk和Sij的相似性,差值越小,距離越近,匹配效果越好:
(4)
計算所有M個類別的信號模板與子圖Sij的歐氏距離后,若存在某一個p,使得:
d(Tp,Sij) (5) 即第p個信號模板距離子圖Sij最近,則判定Tp為最佳匹配信號模板。 為了衡量信號模板與子圖的相關程度,引入歸一化相關系數的概念如式(6)所示,相關系數R(i,j)越接近于1,匹配效果越好,當模板和子圖一致時,相關系數R(i,j)計算結果等于1。在被搜索圖S中完成全部搜索后,找出R(i,j)的最大值,其對應的子圖即為匹配目標,同時輸出R(i,j)最大時子圖所在位置的坐標,進而進行精確定位[18]。 R(i,j)= (6) 采用信號模板匹配算法對復雜電磁環(huán)境中的LoRa信號進行檢測和信號定位。LoRa信號匹配模板由矢量信號發(fā)生器N5182A結合Keysight的IoT 2023物聯網信號生成軟件根據不同的LoRa信號帶寬和SF生成,用于匹配的信號由Keysight的N9917A頻譜儀采集,處理成熒光譜圖后使用機器視覺圖像處理的方法進行匹配與檢測。數據導入到Matlab軟件中,使用模板匹配算法,計算各模板與被檢測信號的歐氏距離與歸一化相關系數,找到相關系數最大的坐標,輸出匹配結果與定位信息。系統(tǒng)模型如圖3所示。 圖3 LoRa信號模板匹配系統(tǒng)模型Fig.3 LoRa signal template matching system model LoRa信號匹配模板由矢量信號發(fā)生器N5182A結合Keysight的IoT 2023物聯網信號生成軟件根據不同的LoRa信號帶寬和SF生成,根據LoRa協(xié)議規(guī)定以及IoT 2023軟件中的帶寬要求,可以生成的LoRa信號帶寬如表1所示,LoRa信號SF如表2所示。 表1 LoRa信號帶寬Tab.1 LoRa signal bandwidth 單位:kHz 由于大帶寬可以提供更高的信號傳輸速率,相同時間內可以傳輸更多的信息量,同時大帶寬在SF固定的情況下可以帶來更高的符號傳輸速率,所以使用矢量信號發(fā)生器主要生成大帶寬下的不同SF的LoRa信號匹配模板。帶寬選擇為表1中的500、812.5、1 625 kHz;SF選擇表2中全部8種,最終生成的LoRa信號匹配模板如圖4所示,從左到右從上到下SF依次為SF5~SF12。 (a)500 kHz LoRa信號模板 (b)812.5 kHz LoRa信號模板 (c)1 625 kHz LoRa信號模板 模板匹配是一種最原始、最基本的模式識別方法,研究某一特定對象物的圖案位于圖像的什么地方,進而識別對象物,這是一個匹配問題。它是圖像處理中最基本、最常用的匹配方法。 模板匹配具有自身的局限性,主要表現在只能進行平行移動,若原圖像中的匹配目標發(fā)生旋轉或大小變化,該算法無效。本研究對于采集的信號處理成熒光譜圖后再進行模板匹配,信號熒光譜圖不會發(fā)生圖片旋轉扭曲的情況,將模板匹配應用到信號熒光譜圖中檢測信號無需考慮上述劣勢;信號熒光譜圖除了顯示頻譜形狀外,還可以將不用的顏色來表示不同信號出現的概率,有顏色信息,相較于頻譜圖只顯示信號譜線,熒光譜圖會包含更多的信號信息。大帶寬的LoRa信號頂部平整,相較于其他環(huán)境中基本帶有毛刺的信號,使用模板匹配檢測信號的準確度更高,更容易與其他信號區(qū)分開,因此該方法應用于熒光譜圖是十分合理的。具體算法流程如下: ① 數據預處理,待檢測數據處理成信號熒光譜圖,隨后進行灰度圖像轉化。由于信號熒光譜圖是衡量信號強度隨頻率變化的圖表,同時帶有概率信息,做灰度圖像轉換,對信號強度和頻率都不會有影響。不同概率的不同顏色處理后會轉換成不同程度的灰度,信息都不會損失,而且做灰度圖像處理后,三維圖像降維成二維灰度圖像,數據量減小為1/3,使得相關算法的速度加快很多,灰度圖像轉換是非常有必要的[19]。 ② 確定相關參數。確定子圖大小與待檢測信號大小,確定粗檢測步長,準備檢測。 ③ 開始檢測,遍歷信號模板數據庫,分粗檢測與細檢測2步。粗檢測中,左右遍歷步長為模板列向量數量,上下遍歷步長為模板行向量數量,分別計算模板與子圖的相關系數,這樣可以用最小的計算量遍歷整個待檢測信號。找到相關系數最大的位置,以該位置為中心點向四周分別擴散一個模板大小作為細檢測區(qū)域。細檢測中,以粗檢測輸出的檢測區(qū)域為基礎,左右步長與上下步長分別為一個像素點,遍歷整個細檢測區(qū)域,計算歐氏距離與歸一化相關系數。 ④ 輸出檢測結果。細檢測結束后,找到歐氏距離最小或是歸一化相關系數最大的位置作為目標位置,設置檢測閾值,超過該閾值的檢測為“有”,并且根據輸出的歸一化相關系數矩陣確定相關系數最大的位置的坐標,同時結合模板大小,將目標位置標注在待檢測信號中,完成信號定位。 上述提出的信號模板智能匹配算法是對原始模板匹配算法的一種改進,結合了對智能算法的思考,引進了粗估計與細檢測的思想,可以在較大程度上減少算法的運算量,降低復雜度,提高數據處理效率,在處理數據庫容量比較大、待檢測信號信息量比較大的檢測問題上效果尤為突出。 2.2.1 仿真結果 為了檢測不同干擾情況下的算法識別精準度,根據LoRa信號的不同位置,設置LoRa信號分別在無干擾、大帶寬低信噪比、小帶寬高信噪比3種情況下進行檢測。設置最大相關系數檢測閾值為0.5,運行Matlab代碼,程序結果如圖5~圖7所示。 (a)500 kHz帶寬 (b)1 625 kHz帶寬 (c)812.5 kHz帶寬 (a)500 kHz帶寬 (b)1 625 kHz帶寬 (c)812.5 kHz帶寬 (a)500 kHz帶寬 (b)1 625 kHz帶寬 (c)812.5 kHz帶寬 對3種情況下3種不同帶寬的LoRa信號的檢測結果,繪制如圖8所示的連線散點圖。 圖8 3種情況下3種帶寬LoRa信號檢測結果Fig.8 LoRa signal detection results of three bandwidths in three cases 2.2.2 仿真結果分析 對于無干擾情況,LoRa信號與模板信號基本相同,相關系數比較高,可以很容易檢測出LoRa信號,500、812.5 kHz兩種帶寬的LoRa信號相關系數基本超過0.9,1 625 kHz LoRa信號相關系數較低,但是也在0.8以上,檢測結果較好。 對于大帶寬低信噪比情況,由于信號疊加的影響,疊加后的信號與原始LoRa模板形狀有些許差距,檢測結果較無干擾情況略差,相關系數為0.75~0.8,3種帶寬的LoRa信號檢測效果基本相同。 對于小帶寬高信噪比情況,由于小帶寬高信噪比對原始信號產生的干擾更強,會破壞原始頻譜形狀,對于3種不同帶寬的LoRa信號,帶寬越大,對整體頻譜形狀產生的影響越大,檢測效果從高到低依次為500、812.5、1 625 kHz,總體相關系數為0.7~0.88。 2.2.3仿真結論 由于大帶寬LoRa信號的獨特頻譜形狀,以及模板匹配方法的劣勢在頻譜圖上不再存在的原因,由仿真結果可以看出,無論是無干擾、大帶寬低信噪比還是小帶寬高信噪比情況,最后的相關系數都能達到0.7以上。信號檢測問題的關鍵是判斷“有”和“無”,設置歸一化相關系數檢測閾值0.5,超過閾值即可判斷為待檢測信號中有目標信號。3種情況下的仿真結果中最大歸一化相關系數都超過了 0.7,成功檢測到目標信號,并且可以智能地給出模板數據庫中相關性最大的LoRa模板?;谛盘柲0迤ヅ涞腖oRa信號智能檢測是可行的。 由于電磁環(huán)境日益復雜,信號種類和頻譜形狀也越來越多,對于高強度信號,如果LoRa信號在附近或者重疊,會對LoRa信號本身的比較規(guī)則的頻譜形狀產生干擾,對檢測結果會產生消極影響。此時需要從信號本身的結構特點出發(fā),找出LoRa信號與其他信號在信號本身本質上的區(qū)別。例如同樣使用模板匹配算法,算法的輸入可以是原始信號頻譜數據而不是頻譜圖或者熒光譜圖,亦或是在信號預處理部分,提取信號的某個或某些特征重組為一個特征矩陣,以該特征矩陣作為模板匹配算法的輸入,例如雷達信號可以估計并提取脈寬、脈沖重復間隔、脈內和脈間調制方式等特征。除此之外,也可以考慮重新挑選衡量相似度的標準,比如計算歐氏距離可以考慮更換為馬氏距離、夾角余弦距離等,不同的相似度衡量標準下的檢測結果也不盡相同,可以綜合考慮以實現對LoRa信號的高準確度檢測。 本文選取物聯網信號中的LoRa信號作為研究對象,使用計算機視覺圖像處理領域的模板匹配算法,結合信號處理領域的熒光譜圖,對LoRa信號進行檢測。由于大帶寬LoRa信號頻譜形狀的獨特性與熒光譜圖自身不會旋轉扭曲的特點,使得模板匹配算法在LoRa信號的檢測中得以發(fā)揮作用。對傳統(tǒng)模板匹配算法進行了智能改進,引進了粗估計與細檢測的想法,很大程度上降低了運算復雜度,提高了數據處理效率。從仿真結果來看,檢測結果較好,使用信號模板匹配算法對LoRa信號進行智能檢測是可行的。最后分析出影響該方法準確度的一些因素,并且基于信號自身特點與相似度衡量標準給出了高準確度LoRa信號檢測的一些算法方向。2 基于信號模板匹配的LoRa信號檢測
2.1 LoRa信號匹配模板生成
2.2 信號模板匹配算法Matlab仿真
3 結束語