基于LoRa和GPRS技术的奶牛行为监测系统设计

2022-12-29 07:31曹海东
湖北农业科学 2022年20期
关键词:低功耗网关奶牛

曹海东,王 钧

(1.大连交通大学电气信息工程学院,辽宁 大连 116028;2.绵阳市农业科学研究院,四川 绵阳 621023)

奶牛的运动行为蕴含着丰富的信息,通过获取奶牛运动中产生的加速度数据,挖掘数据中所包含的运动行为,可作为判断奶牛是否健康的重要依据[1]。因此将信息技术引入奶牛养殖,利用电子传感器获取奶牛行为数据,构建奶牛实时监测系统成为预防奶牛疾病、牧场精细化管理的重要手段。为了获取稳定、有效的加速度数据,在奶牛行为监测中建立一套高效、完整的数据传输模式显得非常重要。相对于有线通信方式,无线通信方式更适合牧场区域这种较复杂的传输环境。综合比较ZigBee、蓝牙、WiFi[2]等无线通信技术发现,这类通信技术传输距离近、设备功耗较大[3],且对各设备节点的供电要求较高,不适合大型奶牛养殖管理。奶牛活动范围较广,分为散养区、食草间等活动范围,需要配备较多的监测设备以及较远的传输距离。为此,本研究综合考虑低功耗且长距离的特点,结合LoRa和GPRS两种远距离无线数据传输模式,设计了一款基于Lo-Ra和GPRS两种通信技术组合的奶牛行为监测系统,搭配改进K-means智能算法,实现奶牛行为的实时监测,为获取奶牛行为信息、预知奶牛健康状况提供一种可靠的技术手段。

1 技术方案

如图1所示,该系统由奶牛行为采集节点、物联网网关和远程监测平台组成[4]。奶牛行为采集节点主要是通过MPU6050传感器采集奶牛加速度数据,并利用LoRa网络将采集节点与物联网网关实现数据的互联互通。网关作为数据的“中转站”,还起到LoRa网络和GPRS网络数据的转发作用。远程监测平台配置数据库、智能算法与显示终端,实现对整个系统的控制,对远程的采集节点下达指令,对节点传上来的原始加速度数据进行解析、显示和存储[5]。

图1 系统框图

2 硬件电路设计

2.1 奶牛行为采集节点电路设计

奶牛行为采集节点的硬件设计主要包括:电源模块、传感器模块、MCU控制器和LoRa模块等(图2)。

图2 奶牛行为采集节点结构

1)MCU控制器设计。在整个奶牛行为监测硬件平台开发过程中,微处理器作为硬件开发的核心,需合理选择MCU的工作条件。而STM32F103C8T6控制器满足低功耗、低电压、优良的工作性能以及良好的运行温度等条件,能够使整个系统低功耗运行。

2)电源模块设计。奶牛行为采集节点设备使用3.7 V锂电池供电,采集节点电路需要用3.3 V电压。本研究选择一款正向低压降稳压器,以达到稳定降压的目的。AMS1117-3.3芯片固定输出3.3 V电压,电压精度可达到3%。

3)LoRa通信模块设计。LoRa通信模块是该系统的核心组成部分,整个模块不仅要考虑低功耗、传输距离和通信可靠性,还要耐用、轻便以及抗干扰能力强。本研究选用Semtech公司的SX1278芯片,是一种低功耗半双工远距离收发器[6]。LoRa扩频调制解调技术相比于传统的FSK或OOK调制方式,具有高灵敏度和功率放大功能。在抗阻塞方面,LoRa调制技术也具有领先水平,既保持了低功耗的特性,又相比于其他调制技术增加通信距离[7]。这不仅提高通信网络的效率,还消除干扰。MCU控制器与SX1278可通过设置SPI模块来切换工作模式。而为更好地进行射频部件的移植,在一块电路板上会将SX1278RF芯片、TCXO和RF_SWITCH组合。TXCO提供精确的时钟,RF_SWITCH切换半双工SX1278的输入或输出状态。其硬件框图如图3所示。

图3 LoRa芯片硬件

4)传感器模块设计。MPU6050是InvenSense公司推出的陀螺运动图像处理系统组件,并且内部含有一个第二代的IIC加速接口,实时与外部进行高速连接[8]。

由于该传感器需佩戴在奶牛右后腿,奶牛运动过程中会产生监测角度的误差影响,而MPU6050传感器内含校正演算技术,极大地提高了奶牛加速度数据的精度。MPU6050原理如图4所示,其中,SCL和SDA是连接MCU的IIC接口,通过IIC接口,MCU与MPU6050之间实现数据信息的交互。

图4 MPU6050原理

2.2 物联网网关电路设计

物联网网关的硬件设计主要包括:电源模块、MCU控制器、GPRS模块和LoRa模块等,如图5所示。由于MCU控制器、LoRa模块与奶牛行为采集节点电路结构相似,本研究不再过多赘述。

图5 物联网网关结构

1)电源模块设计。物联网网关节点采用9 V锂电池供电,由于GPRS模块需要3.7 V工作电压,该系统采用一款高性能稳压芯片LM2596,使其稳定为3.7 V来满足GPRS模块的工作要求。该芯片转换效率高、静态损耗小、最大输出电流3 A。而LoRa等其他硬件模块依然通过由AMS1117-3.3芯片构成的降压电路将3.7 V电压降至3.3 V。

2)GPRS模块设计。GPRS模块是负责网关和远程服务器之间的数据通信。采用的是SIMCOM公司的SIM808芯片作为GPRS模块。SIM808的外围电路原理如图6所示。设计中在芯片电源引脚VBAT并接了100 μF、100 pF的电容和BV05C的稳压二极管,保证SIM808正常稳定的启动工作[9]。电路中电源引脚需要接对地的去耦电容,去耦电容可以消除电源携带的噪声,另外电容还具有存储能量的作用。

图6 SIM808外围电路原理

3 系统软件程序设计

3.1 奶牛行为采集节点程序设计

奶牛活动量采集程序流程如图7所示。它执行的是先发送后接收模式,发送和接收交替进行,发送数据不受接收数据的限制。设备上电后,进行初始化,检测LoRa网络并加入,MPU6050传感器模块开始采集数据,数据包经LoRa无线传输模块从采集终端进行数据下发,网关接收数据包内所有信息。发送成功后,设备开始进入休眠状态,到一定时间后结束休眠,设备重新进入正常工作。

图7 活动量采集程序流程

3.2 物联网网关程序设计

GPRS模块作为物联网网关的重要部分之一,其任务包括无线网络指令的下达、数据的接收与上传等任务,其物联网网关主程序流程如图8所示。MCU控制器初始化上电后,通过读取EEPROM中默认的公网IP数据,开启GPRS服务模式,并与服务器建立TCP连接。连接成功后,进入主程序操作模式,检测各串口缓冲区的数据,启动相关处理程序[10]。GPRS将服务器端发送的、关于获取奶牛加速度传感器信息的指令数据发送到STM32串口。对其进行判断后,单片机将关于获取加速度指令通过LoRa模块进行发送。若中途掉电或者服务器异常关闭,GPRS会自动重新创建连接请求。

图8 物联网网关主程序流程

4 识别算法与界面设计

4.1 改进K-means聚类算法描述

动物识别领域属于模式识别。通过MPU6050传感器采集X、Y、Z三轴方向的运动加速度,利用一种基于KNN思想的改进K-means聚类算法选择最优K值,即奶牛行为分类数[11]。

对于聚类后的效果优劣程度量化公式定义为:类内间的样本距离越小越好、类间的样本距离越大越好,即簇类内的差异值以及簇类间的差异值之比作为聚类好坏的评判标准。

将所有簇类内之和定义为Sin,即每个数据样本到该簇中心的距离值之和,其计算公式为:

式中,n表示总的样本数量,Ci表示第i个簇,x表示在第i簇类聚类点的数值,Zi表示第i个簇类中心点。

通过式(1)可得知,当Sin值越小时,即簇类内样本点越紧凑。将所有簇类间距离值定义为Sout,即每个簇中心之间的距离。其中Sout的计算公式为:

式中,k表示聚类的个数,Ci代表第i个簇中心的值,C代表每个簇中心的平均值。

通过式(2)可得知,Sout的值越大,代表每类之间的相似度小。当Sin以及Sout的比值越小时,聚类效果越好。标准用G来表示,则G值为:

G值的变化规律为先逐渐变小然后再慢慢变大,当G值越小的时候,聚类效果越好,当G达到最小值,此时的聚类效果最佳。首先设定算法的初始分类数,通过选局部最优的K值作为第一个分类数,然后进行训练处理,当G值出现局部最小时,确定K值。算法的具体描述如下:

1)初始化后,运用K-means算法计算在K=1时的G值。

2)保存G值,并且在K++时再次调用K-means算法并记录G'。

3)通过比较,循环得出局部最小的G值,且保留K值。

4)建立对原始W簇初始化操作,该原始簇中包含有所有样本集的S簇,其中K'=1。

5)在W簇集中查找SSE最大的簇,并用KNN思想寻找聚类中心点,进行K-means聚类。

6)在多次判断后,簇类中心不变的簇,添加到W簇集中,并且K'++。

7)直到K'达到K值为止,程序结束,否则重复步骤4至步骤7。

4.2 远程监测平台设计

远程监测平台是用C#语言在Visual Studio 2013软件的编程环境中开发的(图9)。数据库功能采用MySQL数据库实现,MySQL数据库具有开放源代码的优势。该系统通过不断监听端口来获取GPRS连接,一旦连接成功,则建立socket通信。行为的功能展示是通过识别算法对加速度数据进行解析,将数据的接收、显示和存储独立成模块,进而判断相应时间内奶牛行为,并保存处理。

图9 奶牛行为监测系统主界面

5 试验测试

5.1 系统硬件测试

由于该系统包含关键的硬件模块,需对系统硬件进行测试。通过检查整个硬件电路能否导通,来判断各模块是否正常工作,具体测试步骤如下:

1)检查PCB板各线路是否符合设计要求。各元器件是否焊接正确,特别注意电路板中是否有虚焊、虚连现象。

2)进行系统加电测试。通过采用分区隔离供电的方式,检查整个硬件电路能否导通,并观察电压表测量结果。

3)进行系统拷机测试。将各功能区电路模块保持48 h的工作状态,观察各功能区元器件是否工作正常,若发现元器件出现发烫、糊味现象,及时查找原因[12]。

5.2 通信距离与丢包率测试

在基本空旷、有少量厂房遮挡的场地进行通信距离与丢包率测试。该系统上电后,配置好网络相关参数,连接通信端口,测试在2 km左右通信范围内系统数据的采集和传输,并进行长期监测。通信距离与丢包率如表1所示。测试结果表明,该设备在牧场范围中通信丢包率较低,可应用于奶牛行为研究的远程监测。

表1 通信距离与网络丢包率统计表

6 结论

智慧牧场的管理既要改善监测难度,提高监测设备的使用率,又要实现低功耗和远距离的统一。LoRa技术具有低功耗与远距离的优点,GPRS技术也有较高的传输速率与更远的通信距离。而该系统采用性能高、功耗低的单片机和传感器,运行稳定、开发成本低,具有一定应用价值,但该系统还需要不断创新升级,如需综合考量硬件设备供电模块设计,减少电池更换频率;探索更有效的奶牛行为分类算法,使该系统最终改善牧场中奶牛监测难题,为预知奶牛健康状态提供保障。

猜你喜欢
低功耗网关奶牛
乍暖还寒时奶牛注意防冻伤
夏季奶牛如何预防热应激
一种高速低功耗比较器设计
应对气候变化需要打通“网关”
《奶牛的家》
一种实时高效的伺服控制网关设计
基于Zigbee与TCP的物联网网关设计
ADI推出三款超低功耗多通道ADC
IDT针对下一代无线通信推出低功耗IQ调制器
低功耗加权cache替换策略