引 言
由于人口持續(xù)增長、城鎮(zhèn)化進程加快及收入增加等因素驅(qū)動,中國養(yǎng)殖產(chǎn)品消費量快速增長,中國養(yǎng)殖業(yè)在較長時期內(nèi)一直處于高速發(fā)展時期。養(yǎng)殖業(yè)快速健康發(fā)展有利于促進農(nóng)業(yè)內(nèi)部結(jié)構(gòu)調(diào)整和優(yōu)化、拓展農(nóng)業(yè)經(jīng)濟增長新渠道、增加農(nóng)民就業(yè)機會和提高農(nóng)民收入,并在農(nóng)業(yè)和工業(yè)之間逐步形成良性循環(huán)。畜牧業(yè)在養(yǎng)殖業(yè)中占有較大比重,畜牧業(yè)主要分為圈養(yǎng)和散養(yǎng),其中散養(yǎng)的牲畜肉質(zhì)好,能夠滿足人們對肉類口感和營養(yǎng)的要求;同時,散養(yǎng)牲畜價格高,能夠更進一步提升養(yǎng)殖戶的收入。
但是由于在中國廣大農(nóng)村, 特別是南方地形地貌, 在山區(qū)、丘陵地帶的散養(yǎng)養(yǎng)殖戶會面臨有以下的問題:
1) 牲畜定位難。在空間面積較大、地形錯綜復(fù)雜的區(qū)域, 很難獲取到牲畜的具體位置。
2) 牲畜容易丟。容易被盜或者自己走丟。
3) 牲畜統(tǒng)計數(shù)量難。養(yǎng)殖人員難以統(tǒng)計牲畜的具體數(shù)量。本文針對散養(yǎng)牲畜的痛點,重點研究了無人機的自動巡航
路徑規(guī)劃算法和數(shù)據(jù)傳輸協(xié)議、數(shù)據(jù)預(yù)處理算法,設(shè)計了基于RFID 和無人機的畜牧定位系統(tǒng), 使用簡單、適用性好, 能夠減輕散養(yǎng)管理的難度,減少養(yǎng)殖戶的損失。
1 系統(tǒng)總體方案
1.1 系統(tǒng)方案設(shè)計
基于 RFID 和無人機的畜牧定位系統(tǒng)分為數(shù)據(jù)采集、數(shù)據(jù)分析處理和數(shù)據(jù)顯示 3 個功能模塊。系統(tǒng)組合利用了有源RFID 設(shè)備、無人機和移動互聯(lián)網(wǎng)技術(shù)來解決放養(yǎng)牲畜定位過程中要求電池續(xù)航能力強、體積小、成本低的問題。
系統(tǒng)的基本原理是利用 RFID, 在一百多米的范圍之內(nèi)發(fā)射無線射頻信號,帶有 RFID 讀卡器和手機的無人機在放養(yǎng)范圍內(nèi)自動巡航, 每當掃描到有 RFID 信號時即把 RFID 數(shù)據(jù)、信號強度,通過藍牙傳輸?shù)揭粋€智能手機,手機獲取到此時地理位置,經(jīng)過數(shù)據(jù)預(yù)處理后再通過移動數(shù)據(jù)網(wǎng)絡(luò)把數(shù)據(jù)發(fā)射到系統(tǒng)服務(wù)器端。服務(wù)器端對所采集到的位置和 RFID 數(shù)據(jù)進行處理和分析。手機客戶端 App 可以查看到牲畜的最新位置數(shù)據(jù),方便養(yǎng)殖戶進行牲畜管理。
圖1 畜牧定位系統(tǒng)
1.2 與 GPS定位方案對比
養(yǎng)殖戶對放養(yǎng)的牲畜進行定位,必須滿足使用方便、成本低的需求,同時牲畜定位對位置精度要求不高。將每個牲畜都綁定一個 GPS設(shè)備來對其進行定位對于大規(guī)模的養(yǎng)殖并不適用。首先,GPS定位設(shè)備需要獲取經(jīng)緯度數(shù)據(jù)并且把數(shù)據(jù)發(fā)送到服務(wù)器, 耗電量非常大。一般 GPS 設(shè)備, 每天發(fā)送幾次位置信息, 電池只能續(xù)航一周左右。養(yǎng)殖戶要經(jīng)常更換電池,使用非常麻煩。其次,GPS 體積較大, 防水性能較差,價格較高, 不利于大規(guī)模使用在牲畜定位。第三,由于 GPS 是主動發(fā)送位置信息, 有人偷盜牲畜的情況并不能及時報警, 實用性不強。
本系統(tǒng)使用的有源 RFID 電池續(xù)航能力很長, 長達兩三年,體積較小,有非常好的防水性能。同時,價格成本低。以500只牲畜的規(guī)模計算,GPS 方案總共需要50000 元 (每個 GPS100 元),本系統(tǒng)只需要20000元 (每個RFID30元,無人機和讀卡器5000 元), 成本減少60% 。并且本系統(tǒng)在實際中還有以下應(yīng)用:
1) 安裝 RFID 讀卡器和手機于牲畜棚, 就可以實現(xiàn)對返回到牲畜棚的牲畜進行計數(shù)統(tǒng)計。
2)RFID 讀卡器和手機放置在主要公路路邊, 一旦有人偷盜牲畜,經(jīng)過公路時,能實現(xiàn)報警功能。
3) 用戶攜帶配套的 RFID 讀卡器和手機, 通過手機 App能查看附近的 RFID 卡,也能發(fā)現(xiàn)附近的牲畜。
相比每個牲畜都綁定一個 GPS 進行定位的方案, 此方案使用比較方便、實用性強、價格較低,可以進行實際應(yīng)用。
2 數(shù)據(jù)采集模塊設(shè)計
2.1 硬件設(shè)計
1)RFID 電子標簽。系統(tǒng)采用433 MHz的有源 RFID 電子標簽,讀寫距離遠、功耗低、抗干擾能力強。
2)RFID 閱讀器。系統(tǒng)采用433 MHzRFID 配套的帶有藍牙模塊的全向讀卡器,具有覆蓋角度廣的優(yōu)點,方便把讀卡數(shù)據(jù)傳輸?shù)绞謾C等其他設(shè)備的優(yōu)點。
3) 手機設(shè)備。系統(tǒng)使用一般的安卓智能手機實現(xiàn)數(shù)據(jù)傳輸功能。手機藍牙,讀取 RFID 讀卡器的數(shù)據(jù); 手機的計算能力實現(xiàn)對原始數(shù)據(jù)的初步處理, 經(jīng) GPRS/3G/4G 再傳輸?shù)椒?wù)器,減輕服務(wù)器的計算負擔(dān)。
4) 無人機設(shè)備。基于文獻, 系統(tǒng)采用 Ardupilot帶有自動巡航功能的小型無人機。Ardupilot無人機飛控系統(tǒng)支持對無人機進行固定飛行軌跡的模式和固定飛行高度飛行模式的設(shè)定。由于實際使用場景下, 畜牧場所多是高低不平的山區(qū)。為使無人機在山區(qū)相對地面保持固定的高度,系統(tǒng)對無 人機的地面探測設(shè)備進行了改裝,將氣壓傳感器替換成激光測距傳感器。
2.2 飛行軌跡規(guī)劃
對無人機的飛行軌跡規(guī)劃一般分為在線規(guī)劃和離線規(guī)劃兩類。參考文獻, 針對本系統(tǒng)應(yīng)用場景的特點和離線路徑規(guī)劃相比在線規(guī)劃簡單、可行性較高的優(yōu)點,本系統(tǒng)采用子區(qū)域劃分和螺旋收縮式覆蓋的離線路徑規(guī)劃算法。
子區(qū)域分割的螺旋式掃描方法步驟為:
1)外輪廓較為復(fù)雜時,可以把整個區(qū)域劃分為若干個子區(qū) 域。子區(qū)域的劃分采用雙線掃法, 如圖2。用水平和垂直兩個直線,水平直線自上而下,垂直直線從左往右, 兩根直線會在輪廓邊緣相交或者相切,由此可以劃分出幾個獨立的子區(qū)域。
圖2 雙線掃法劃分子區(qū)域
2)子區(qū)域內(nèi)采用 “螺旋收縮式”進行全覆蓋。相比 “往返前進式”的覆蓋方法,前者比后者留下較小的未覆蓋面積, 前者在終點的位置比較固定,一般位于區(qū)域重心附近,如圖3。
圖3 螺旋式覆蓋和往返前進式覆蓋
2.3 數(shù)據(jù)預(yù)處理算法
無人機在養(yǎng)殖范圍內(nèi)自動巡航,RFID 讀卡器每隔一定時間間隔 T (默認1秒) 掃描區(qū)域內(nèi)的 RFID 標簽, 同一時間可能掃描到有多個 RFID 標簽和多個信號強度, 組成 RFID 標簽集合。RFID 標簽集合和當前手機通過 GPS定位獲取到的經(jīng)緯度數(shù)據(jù),組成原始數(shù)據(jù),格式如表1。
由于采集時間周期短,原始的數(shù)據(jù)量一般非常大,直接發(fā)送到服務(wù)器,則不利于數(shù)據(jù)分析。利用智能手機對此原始數(shù)據(jù)進行預(yù)處理,可以大大減少發(fā)送數(shù)據(jù)量和減小服務(wù)端數(shù)據(jù)處理和分析的難度。如表2,其中t1和t2有重復(fù)的 RFID, 可以將其合并。
在同一時間內(nèi)能掃描到的 RFID 卡設(shè)備比較多, 需要對搜集到的 RFID 卡數(shù)據(jù)進行數(shù)據(jù)去重和融合。讀卡器掃描到的 RFID 原始數(shù)據(jù)是時間點為元數(shù)據(jù)組成的數(shù)據(jù)序列,即 Data={time,longitude,latitude, [{id1,rssi1}, {id2,rssi2}……]}, 原始數(shù)據(jù)為數(shù)據(jù)序列 data1、data2、data3… …。從 RFID 讀卡器讀取數(shù)據(jù)間隔時間較短 (1 秒), 每秒采集到的數(shù)據(jù)量比較大。可以把采集的時間間隔延長,把1秒時間間隔增 加為5妙。增加時間周期的方法為:
1) 以5秒時間周期內(nèi)的第一秒數(shù)據(jù)為初始的融合數(shù)據(jù)。
2) 添加其余每秒的數(shù)據(jù)到初始數(shù)據(jù)。合并方法是: 遍歷新數(shù)據(jù)中每個 RFID 數(shù)據(jù), 若該 RFID 不存在融合數(shù)據(jù)中, 則把該 RFID 數(shù)據(jù)增加到 RFID 列表中。若該 RFID 數(shù)據(jù)已經(jīng)存在 RFID 列表中,并且把rssi值最大的元數(shù)據(jù)的當前位置設(shè)置為融合數(shù)據(jù)的位置和rssi值。
算法偽代碼為:
經(jīng)過數(shù)據(jù)預(yù)處理之后,從手機端發(fā)送到服務(wù)器的數(shù)據(jù)如表3所示。
3 數(shù)據(jù)處理模塊
3.1 數(shù)據(jù)轉(zhuǎn)換
將以按時間劃分的元數(shù)據(jù),轉(zhuǎn)換為以 RFID 進行劃分的數(shù)據(jù)。數(shù)據(jù)采集模塊采集到的元數(shù)據(jù)格式 Data1= {t1,long1, lati1,{{rfid1,rssi1}, {rfid2,rssi2}。}}。由于每項數(shù)據(jù)是以時間為主鍵進行的劃分,不便于后期的數(shù)據(jù)分析處理,需要把數(shù)據(jù)轉(zhuǎn)化為以 RFID 號為主鍵的劃分。轉(zhuǎn)化方法為遍歷每個rssi和經(jīng) 緯度數(shù)據(jù)。轉(zhuǎn)換后格式為 Data= {rfid1, {rssi1,{long1,lati1},{rssi2,{long2,lati2},… …}}}。
3.2 根據(jù)信號強度修正地理位置
裝載于無人機上的 RFID 讀卡器在一百多米的范圍內(nèi)掃描
RFID 卡,掃描范圍R,掃描距離在地面的投影距離 L 和飛行高度高度 H 的關(guān)系是:
(1)
假設(shè)無人機的飛行高度為 30 米, 讀卡器的讀卡范圍是
150米,計算得到地面上的覆蓋高度是146米。
由于 RFID 讀卡器讀卡距離過長, 定位精度不高。若采用縮短 RFID 讀卡器讀卡距離的方法提高精度, 則需要無人機在同一區(qū)域內(nèi)掃描的路徑更為密集。本系統(tǒng)使用信號強度 (RS- SI) 修正目標位置范圍的方法來提高位置精度。
根據(jù) RSSI和距離的公式:
(2)
則
(3)
其中:n 代表信號傳播常量,d 代表距發(fā)射器間的距離; A 代表距離 1 m 時的接收信號強度。RSSI值會隨著距離的增加按如式 (2) 遞減。即RSSI的值越高,采集的位置數(shù)據(jù)越精確。于是對地理位置的作如下糾正:
1) 在每個 RFID 對應(yīng)的所有經(jīng)緯度數(shù)據(jù)中選擇 RSSI值最大的經(jīng)緯度作為采集經(jīng)緯度。
2) 根據(jù)公式 (3),使用RSSI值計算真實經(jīng)緯度與采集經(jīng)緯度的偏移距離。
牲畜定位位置為經(jīng)緯度加偏移距離。即牲畜位于以經(jīng)緯度位置點為圓心,以偏移距離為半徑的圓范圍內(nèi)。
4 數(shù)據(jù)顯示模塊
數(shù)據(jù)顯示模塊包括移動 App 客戶端和服務(wù)器系統(tǒng)。App客戶端除了使用本系統(tǒng)數(shù)據(jù)處理模塊提供的牲畜地理位置數(shù)據(jù) 外,還使用了谷歌的離線數(shù)字地圖。如圖4, 用戶可以在地圖上查看到放養(yǎng)牲畜的地理位置點。利用地理位置數(shù)據(jù)等信息, 可以有效提高養(yǎng)殖戶對牲畜的日常管理效率。
App客戶端提供的功能包括:
1) 每個牲畜最新位置展示。
App提供的基本功能是請求保存在服務(wù)器端的牲畜位置數(shù)據(jù)。
2) 牲畜位置導(dǎo)航。
App配合藍牙讀卡器對牲畜進行精確定位。養(yǎng)殖人員攜帶手機 App和 RFID 閱讀器,RFID 閱讀器接收到附近的 RFID 標簽信號,通過藍牙在手機 APP 上顯示, 從而提示使用者該RFID 的距離遠近,使用者可以根據(jù)此提示方便找到目標位置。
圖4 牧畜管理APP客戶端
3) 基于位置數(shù)據(jù)的數(shù)據(jù)分析和查詢服務(wù)。
提供每個牲畜和 RFID 設(shè)備間的綁定和解除綁定, 能夠添加對應(yīng)牲畜的種類、性別、生日等基本數(shù)據(jù)。
5 系統(tǒng)實驗
5.1 實驗方法
利用本系統(tǒng)對安徽省合肥市肥西縣一大型養(yǎng)殖場散養(yǎng)的其中五十頭羊進行定位實驗。假定使用 GPS 測量的地理位置為實際位置。采用多次無人機巡航測量得到測量位置和 GPS 設(shè)備測量的位置作對比, 并分別求出誤差值, 最終得出平均誤差。
5.2 實驗步驟
1) 把 RFID 讀卡器、一個安卓手機綁在無人機上, 并設(shè)置好手機通過藍牙可以連接 RFID 讀卡器。
2)把每個 RFID 設(shè)備系在選定的羊的脖子上。
3) 把 GPS 設(shè)備同時系在帶有 RFID 設(shè)備的那幾只羊脖 子上;
把幾只帶有 RFID 的羊放回到羊群, 開啟無人機執(zhí)行預(yù)定軌道的巡航,無人機上的讀卡器掃描到 RFID 設(shè)備, 通過藍牙傳輸?shù)綗o人機上的手機,手機通過4G 移動網(wǎng)絡(luò)傳輸?shù)胶笈_服務(wù)器。
4) 無人機巡航幾次求得當次待測羊群的測量位置值。
5) 把之前帶測量的羊群設(shè)備換到另外一批羊群上, 重復(fù)做無人機巡航測量。
5.3 實驗結(jié)果和分析
以下為無人機飛行一次測量值和實際值,數(shù)據(jù)全部使用東經(jīng)和北緯。
通過5論測試之后, 得到通過本論文方法的測量誤差為8.24 M。此誤差對于放養(yǎng)牛羊等牲畜的定位, 具有實際使用價值。
實驗結(jié)果表明,本文所設(shè)計的基于RFID 和無人機的畜牧定位系統(tǒng)所采集到的養(yǎng)只位置數(shù)據(jù)在理論位置估計范圍內(nèi), 定位有較高的可靠性和精確度。
6 結(jié) 語
本文針對大規(guī)模放養(yǎng)牲畜的需求, 設(shè)計實現(xiàn)了基于 RFID和無人機的畜牧定位系統(tǒng)。重點研究了移動機器人的全覆蓋路徑規(guī)劃和基于 RSSI的地理位置修正。實驗結(jié)果表明該定位系統(tǒng)能以較低的成本價格解決養(yǎng)殖戶在牲畜放養(yǎng)情況下出現(xiàn)的難以統(tǒng)計和容易走丟等問題,并且使用方便。
責(zé)任編輯:gt
評論
查看更多