由于人口持续增长、城镇化进程加快及收入增加等因素驱动,中国养殖产品消费量快速增长,中国养殖业在较长时期内一直处于高速发展时期。养殖业快速健康发展有利于促进农业内部结构调整和优化、拓展农业经济增长新渠道、增加农民就业机会和提高农民收入,并在农业和工业之间逐步形成良性循环。畜牧业在养殖业中占有较大比重,畜牧业主要分为圈养和散养,其中散养的牲畜肉质好,能够满足人们对肉类口感和营养的要求;同时,散养牲畜价格高,能够更进一步提升养殖户的收入。
但是由于在中国广大农村, 特别是南方地形地貌, 在山区、丘陵地带的散养养殖户会面临有以下的问题:
1) 牲畜定位难。在空间面积较大、地形错综复杂的区域, 很难获取到牲畜的具置。
3) 牲畜统计数量难。养殖人员难以统计牲畜的具体数量。本文针对散养牲畜的痛点,重点研究了无人机的自动巡航
路径规划算法和数据传输协议、数据预处理算法,设计了基于RFID 和无人机的畜牧定位系统, 使用简单、适用性好, 能够减轻散养管理的难度,减少养殖户的损失。
基于 RFID 和无人机的畜牧定位系统分为数据采集、数据分析处理和数据显示 3 个功能模块。系统组合利用了有源RFID 设备、无人机和移动互联网技术来解决放养牲畜定位过程中要求电池续航能力强、体积小、成本低的问题。
系统的基本原理是利用 RFID, 在一百多米的范围之内发射无线射频信号,带有 RFID 读卡器和手机的无人机在放养范围内自动巡航, 每当扫描到有 RFID 信号时即把 RFID 数据、信号强度,通过蓝牙传输到一个智能手机,手机获取到此时地理位置,经过数据预处理后再通过移动数据网络把数据发射到系统服务器端。服务器端对所采集到的位置和 RFID 数据进行处理和分析。手机客户端 App 可以查看到牲畜的最新位置数据,方便养殖户进行牲畜管理。
养殖户对放养的牲畜进行定位,必须满足使用方便、成本低的需求,同时牲畜定位对位置精度要求不高。将每个牲畜都绑定一个 GPS设备来对其进行定位对于大规模的养殖并不适用。首先,GPS定位设备需要获取经纬度数据并且把数据发送到服务器, 耗电量非常大。一般 GPS 设备, 每天发送几次位置信息, 电池只能续航一周左右。养殖户要经常更换电池,使用非常麻烦。其次,GPS 体积较大, 防水性能较差,价格较高, 不利于大规模使用在牲畜定位。第三,由于 GPS 是主动发送位置信息, 有人偷盗牲畜的情况并不能及时报警, 实用性不强。
本系统使用的有源 RFID 电池续航能力很长, 长达两三年,体积较小,有非常好的防水性能。同时,价格成本低。以500只牲畜的规模计算,GPS 方案总共需要50000 元 (每个 GPS100 元),本系统只需要20000元 (每个RFID30元,无人机和读卡器5000 元), 成本减少60% 。并且本系统在实际中还有以下应用:
1) 安装 RFID 读卡器和手机于牲畜棚, 就可以实现对返回到牲畜棚的牲畜进行计数统计。
2)RFID 读卡器和手机放置在主要公路路边, 一旦有人偷盗牲畜,经过公路时,能实现报警功能。
3) 用户携带配套的 RFID 读卡器和手机, 通过手机 App能查看附近的 RFID 卡,也能发现附近的牲畜。
相比每个牲畜都绑定一个 GPS 进行定位的方案, 此方案使用比较方便、实用性强、价格较低,可以进行实际应用。
1)RFID 电子标签。系统采用433 MHz的有源 RFID 电子标签,读写距离远、功耗低、抗干扰能力强。
2)RFID 阅读器。系统采用433 MHzRFID 配套的带有蓝牙模块的全向读卡器,具有覆盖角度广的优点,方便把读卡数据传输到手机等其他设备的优点。
3) 手机设备。系统使用一般的安卓智能手机实现数据传输功能。手机蓝牙,读取 RFID 读卡器的数据; 手机的计算能力实现对原始数据的初步处理, 经 GPRS/3G/4G 再传输到服务器,减轻服务器的计算负担。
4) 无人机设备。基于文献, 系统采用 Ardupilot带有自动巡航功能的小型无人机牧畜。Ardupilot无人机飞控系统支持对无人机进行固定飞行轨迹的模式和固定飞行高度飞行模式的设定。由于实际使用场景下, 畜牧场所多是高低不平的山区。为使无人机在山区相对地面保持固定的高度,系统对无 人机的地面探测设备进行了改装,将气压传感器替换成激光测距传感器。
对无人机的飞行轨迹规划一般分为在线规划和离线规划两类。参考文献, 针对本系统应用场景的特点和离线路径规划相比在线规划简单、可行性较高的优点,本系统采用子区域划分和螺旋收缩式覆盖的离线路径规划算法。
1)外轮廓较为复杂时,可以把整个区域划分为若干个子区 域。子区域的划分采用双线。用水平和垂直两个直线,水平直线自上而下,垂直直线从左往右, 两根直线会在轮廓边缘相交或者相切,由此可以划分出几个独立的子区域。
图2 双线)子区域内采用 “螺旋收缩式”进行全覆盖。相比 “往返前进式”的覆盖方法,前者比后者留下较小的未覆盖面积, 前者在终点的位置比较固定,一般位于区域重心附近,如图3。
由于采集时间周期短,原始的数据量一般非常大,直接发送到服务器,则不利于数据分析。利用智能手机对此原始数据进行预处理,可以大大减少发送数据量和减小服务端数据处理和分析的难度。如表2,其中t1和t2有重复的 RFID, 可以将其合并。
在同一时间内能扫描到的 RFID 卡设备比较多, 需要对搜集到的 RFID 卡数据进行数据去重和融合。读卡器扫描到的 RFID 原始数据是时间点为元数据组成的数据序列,即 Data={time,longitude,latitude, [{id1,rssi1}, {id2,rssi2}……]}, 原始数据为数据序列 data1、data2、data3… …。从 RFID 读卡器读取数据间隔时间较短 (1 秒), 每秒采集到的数据量比较大。可以把采集的时间间隔延长,把1秒时间间隔增 加为5妙。增加时间周期的方法为:
2) 添加其余每秒的数据到初始数据。合并方法是: 遍历新数据中每个 RFID 数据, 若该 RFID 不存在融合数据中, 则把该 RFID 数据增加到 RFID 列表中。若该 RFID 数据已经存在 RFID 列表中,并且把rssi值最大的元数据的当前位置设置为融合数据的位置和rssi值。
将以按时间划分的元数据,转换为以 RFID 进行划分的数据。数据采集模块采集到的元数据格式 Data1= {t1,long1, lati1,{{rfid1,rssi1}, {rfid2,rssi2}.}}。由于每项数据是以时间为主键进行的划分,不便于后期的数据分析处理,需要把数据转化为以 RFID 号为主键的划分。转化方法为遍历每个rssi和经 纬度数据。转换后格式为 Data= {rfid1, {rssi1,{long1,lati1},{rssi2,{long2,lati2},… …}}}。
数据显示模块包括移动 App 客户端和服务器系统。App客户端除了使用本系统数据处理模块提供的牲畜地理位置数据 外,还使用了谷歌的离线, 用户可以在地图上查看到放养牲畜的地理位置点。利用地理位置数据等信息, 可以有效提高养殖户对牲畜的日常管理效率。
实验结果表明,本文所设计的基于 RFID 和无人机的畜牧定位系统所采集到的养只位置数据在理论位置估计范围内, 定位有较高的可靠性和精确度。
本文针对大规模放养牲畜的需求, 设计实现了基于 RFID和无人机的畜牧定位系统。重点研究了移动机器人的全覆盖路径规划和基于 RSSI的地理位置修正。实验结果表明该定位系统能以较低的成本价格解决养殖户在牲畜放养情况下出现的难以统计和容易走丢等问题,并且使用方便。