基于机器人的生猪健康养殖智能监控系统设计*
2021-09-13刘艳昌赵海生李泽旭张志霞左现刚李国厚
刘艳昌,赵海生,李泽旭,张志霞,左现刚,李国厚
(河南科技学院信息工程学院,河南新乡,453003)
0 引言
随着生猪养殖规模的扩大,传统人工巡检方式对生猪生活环境、健康状态和日常行为进行采样、监视、识别与诊断,不仅管理控制效率低,而且由于饲养员的时间精力限制很容易忽视养殖过程中的一些异常环境和异常行为表现,导致生猪发病率和死亡率较高,同时过多人畜接触不仅会使生猪发生应激反应、打乱生猪日常的生活状态而且还造成人畜疾病交叉感染,一旦出现疫情失控,会给整个养殖企业带来严重经济损失[1-4]。
为了提高生猪养殖企业的智能化和精准化管理水平,王辉明等[5]设计一种基于ZigBee和组态王软件的养猪场环境监控系统,采用模糊算法对被控参数进行优化,控制精度小于4%;谭辉磊等[6]提出一种基于轮廓的猪只饮水行为识别方法,能够正确地识别猪只饮水行为,但识别效率还待提高;王传哲等[7]提出了一种基于姿态角的生猪行为识别方法,采用微惯性传感器和BP神经网络训练模型对生猪站、走、卧、趟4类姿态进行识别,整体生猪行为识别准确率为92.6%;吴世海等[8]设计一种基于机器视觉技术的猪只行为活动无接触识别系统,仅通过单一CCD相机采集视频图像信息对猪的运动、呼吸和排泄等行为活动进行识别,准确率在94%以上,但在综合利用多感知信息诊断生猪健康行为识别与异常行为评估与处理方面研究较少。黎煊等[9]采用基于猪场环境猪连续咳嗽声识别的方法,构建了基于连续语音识别技术的BLSTM-CTC猪咳嗽声识别模型,总识别率达到94.29%。
综上所述,现有多数研究者仅对猪舍内固定位置生猪生长环境和猪只日常行为进行检测,难以从多个角度实现对生猪生长异常环境精准调控和异常行为准确识别、疾病诊断与疫情预警。为此,本文设计了一种以轨道式移动机器人为采集终端,以FPGA、STM32控制器,两级联动采样装置、射频和WiFi传输模块为硬件核心,以C#监控软件为开发平台,采用多感知传感技术和DT-SVM[10]猪只姿态分类识别算法实现对生猪养殖环境和猪只行为特征信息的自动采集,结合管理人员、养殖专家经验和大数据技术实现对生猪异常环境及时调控、异常行为快速识别、疾病诊断与疫情预警功能,提高了生猪养殖过程的智能化管理水平。
1 系统整体结构与工作原理
系统主要由移动终端监测平台,执行机构平台和行为监测平台组成,其结构如图1所示。
图1 系统硬件结构图Fig.1 Hardware block diagram of system
系统在手动控制下,管理人员利用摄像头、现场触摸屏、PC或APP监控界面上操作按钮控制机器人沿猪舍正上方轨道进行巡检,借助采集执行终端全局和局部监测装置对异常环境和猪只行为进行采集,经FPGA控制器数据融合处理后传至PC,以便管理人员对异常信息进行分析、判断,及时对异常情况进行处理。
系统在自动控制下,机器人按照管理人员在监控室PC或APP上预先设定路径进行巡检,当安装在图2(a)采集移动终端底盘前半部分中间位置的采集站点定位读卡器检测到猪舍标签信息后,电机停止转动,同时安装在猪舍轨道两侧上的限位开关打开,确保巡检机器人停在猪舍中间正上方位置,借助图2(b)采集执行终端的全局监测装置对猪舍环境和猪只行为进行监测,若有异常情况,图2(b)采集执行终端上的局部监测装置将驱动底座旋转机构、机械臂及转轴向异常处靠近,结合局部摄像机和执行末端感知传感器从多角度对异常环境和猪只行为进行详细采集和观察,并以无线方式将异常信息、猪舍位置和猪只身份传至行为监测平台,结合大数据、养殖专家和饲养技术人员经验对异常情况进行综合诊断,及时确定生猪健康/疫情状况变化规律,为饲养人员及早发现养殖过程中的异常状况和科学决策提供科学依据。生猪健康养殖智能采样装置如图2所示。
(a)采集移动终端
2 系统硬件设计
2.1 环境采集电路设计
猪舍温湿度采集采用单总线通信方式的AM2320检测模块,为提高数据传输抗干扰能力,确保总线空闲时为高电平,在SDA引脚上外接1K的上拉电阻;猪舍二氧化碳、氨气和硫化氢有害气体含量检测分别采用低功耗S8-0053型红外CO2检测模块、MQ-137型NH3检测模块和MQ-136型H2S检测模块;猪舍粉尘含量采用激光粉尘检测模块SDS011,可测量舍内PM2.5和PM10粉尘浓度。检测环境参数检测电路如图3所示。
图3 环境参数检测电路图Fig.3 Environmental parameter detection circuit diagram
2.2 运动与体特征采集电路设计
猪只运动行为采用I2C通信方式的ADXL345型三轴加速度传感器实现姿态识别;猪只体温和心率分别采用单总线和I2C通信方式的DS18B20和MAX30102型传感器实现体特征参数检测;采集数据通过WiFi模块HC-05传至FPGA控制器数据处理中心进行数据融合。运动和体特征采集检测电路如图4所示。
图4 运动和体特征采集电路图Fig.4 Motion and body feature acquisition circuit diagram
2.3 移动执行终端电路设计
机器人移动底盘安装JY-L8800型读卡器与猪舍轨道标签配合实现定位识别功能,通过MAX232实现RS232电平与TLL电平转换,并传至FPGA控制器进行数据处理;为提高FPGA控制器的驱动能力,在输出端口通过反相器74HC06接到驱动电路输入端;为避免驱动电路对FPGA控制器输出信号的干扰,在FPGA控制器和电机驱动电路LN298间通过TLP521实现光电连接;为消除电机在启停、制动及换向时产生的反电动势对驱动电路损坏,采用8个1N5822(D1~D8)高速大电流肖特基二极管构成驱动器保护电路[11]。机器人巡检速度控制通过FPGA控制器端口Pin_42和Pin_43输出的PWM脉冲占空比来实现。机器人移动终端控制电路如图5所示。
图5 机器人移动终端控制电路图Fig.5 Robot mobile terminal control circuit
3 系统软件设计
3.1 模糊PID控制器设计
为实现移动机器人沿预定轨道准确、快速自主循迹和数据采集功能,该系统结合移动底盘读卡器、猪舍轨道上安装的RFID感应卡和限位开关实现采集站点准确定位。采用模糊PID控制算法[12-13]对机器人底盘主动轮电机进行差速控制,实现对全向导引和定位性能优化。模糊PID控制器如图6所示。
图6 模糊PID控制器Fig.6 Fuzzy PID controller
为提高PID控制器的鲁棒性和减少FPGA控制器运算能力,PID控制器采用增量式PID控制,其表达式[14-15]为
u(k)=u(k-1)+KP[e(k)-e(k-1)]+
KIe(k)+KD[e(k)-2e(k-1)+e(k-2)]
(1)
e(k)=r(k)-y(k)
(2)
式中:u(k)——PID控制器的输出;
r(k)——给定的期望位置;
y(k)——机器人实际停靠位置;
e(k)——偏差信号。
根据模糊PID控制原理,构建机器人巡检和定位功能的模糊控制器需要以下3个步骤。
1)根据机器人巡检与定位控制特点,该系统采用二维输入三维输出的模糊控制方法。结合环境参数和猪只行为采集实际情况、定位偏差经验,确定输入输出变量的各参数论域见表1。为提高系统控制器的灵敏度和稳定性,各模糊语言变量的隶属度函数选择三角函数。
表1 输入输出变量关系表Tab.1 Input and output variable relation table
2)根据饲养员对机器人的控制经验和定位偏差,结合输入输出量的模糊子集,建立PID系数增量ΔKP、ΔKI、ΔKD的模糊控制规则见表2。
表2 ΔKP、ΔKI、ΔKD的模糊控制规则表Tab.2 ΔKP、ΔKI、ΔKD fuzzy control rule table
3)为实现巡检机器人电机差速控制,必须把模糊量精确化。为了达到系统控制精度、灵敏性要求,这里采用加权平均法作为精确化方式,其计算公式
(3)
式中:uo——精确控制量;
ui——论域中的第i个元素;
μ(ui)——对应的隶属度。
再经量化因子运算后,得出参数变化量ΔKP、ΔKI、ΔKD的值,最后将最佳控制参数KP=KP0+ΔKP;KI=KI0+ΔKI;KD=KD0+ΔKD代入式(1),控制电机驱动模块输出不同占空比PWM波控制主动轮电机转速,结合射频读卡器、定位标签和限位开关实现巡检机器人快速、精准、停靠定位功能。
3.2 下位机软件设计
基于Quartus II 15.0开发环境,采用verilog HDL语言对机器人采集终端和现场各执行机构驱动电路进行模块化编程,结合巡检路径规划算法、模糊PID电机调速控制算法和视频处理技术实现巡检机器人的准确停靠、环境参数精准调控和异常情况快速采集与诊断等功能。采集站点控制程序流程如图7所示。
图7 采集站点控制程序流程图Fig.7 Collection site control program flow chart
3.3 无线传输网络软件设计
打开PC或APP端监控软件,WiFi与机器人采集站点和执行机构的IP和端口号连接成功后,采集站点将采集的猪只声音、编号、体温、心率和姿态数据进行融合,并通过WiFi传输模块HC-05传至监控中心,结合WiFi视频传输模块RT5305F上传的视频图像对猪只健康状态进行诊断、评估,对环境调控执行机构进行控制。采集站点网络传输流程如图8所示。
图8 采集站点网络传输设计流程图Fig.8 Flow chart of network transmission design of collection site
3.4 上位机软件设计
监控室PC通过Visual Studio2016开发平台[16]对系统进行搭建,采用.NET Framework4.0框架对系统进行配置,采用C#语言、SQL Server数据库等工具设计了一种基于机器人的生猪健康养殖智能监控系统。自动模式下,饲养人员借助PC监控界面或手机APP实现对生猪养殖环境、日常行为的远程实时监测、信息查询和执行机构控制等功能;手动模式下,当Wi-Fi连接成功后,输入采集机器人对应IP地址和端口号,点击连接网络按钮连接成功后,饲养人员可以对机器人巡检路径、采集站点、延时时间、车速等参数和运行状态进行控制。图9为生猪养殖采样站点调控界面,图9中饲养人员按正序巡检路径对采集站点进行设置,若采样机器人到达设置停靠站点2、4、6、8时对应站点上红色指示灯闪烁,当采样延时时间结束时变为绿色,然后按照预先设定路径继续行走与采样。
图9 生猪养殖采样站点调控界面Fig.9 Control interface of pig breeding sampling station
为了获取准确的异常信息,监控PC结合采集站点位置,借助局部监测装置携带高清摄像机、环境感知传感器、智能耳标(体温、心率、运动检测传感器)和云台操作按钮控制360°旋转底座和180°二级机械臂旋转机构实现对局部异常环境采集、异常猪只图片抓取和异常行为录像等功能。监控PC机结合多感知信息融合技术和模糊PID控制算法实现对异常环境精准调控,结合猪只行为特征、饲养人员、养殖专家经验和大数据分析技术实现对猪只异常行为的分析、诊断、评估与预警功能。同时饲养人员也可以结合猪只行为和生长态势施行科学养殖管理和疾病预防,克服传统人工巡检效率低、经验不足,错过最佳预防、治疗时期,减少疾病对生猪品质和产量的影响,提高生猪异常识别的实时性和准确性,为生猪养殖业健康养殖和疾病预防提供科学依据。生猪健康养殖智能化监控界面如图10所示。
图10 生猪健康养殖智能化监控界面Fig.10 Intelligent monitoring interface for healthy pig breeding
4 试验与结果分析
为验证该系统的稳定性和可靠性,以某养殖基地为测试现场,随机选取12个保育猪舍并以生长环境温湿度、光照强度、CO2、NH3和H2S浓度参数为试验对象,分析自动控制模式下,系统精准调控效果。各保育猪舍内环境参数设置为:温度23 ℃,湿度65% RH,光照强度1 200 lx,CO2浓度1 000 mg/m3,NH3浓度10 mg/m3,H2S浓度7 mg/m3。表3为24 h内保育猪舍空气环境参数变化情况,其中随机采集保育猪舍号时间间隔为2 h。
由表3试验采集数据与猪舍设定参数值对比可知:24 h内样本采集的温度、湿度和光照强度平均值分别为23.008 ℃、65.2 %RH和1 202.08 lx,其温度、湿度和光照强度偏差分别控制在±0.8 ℃、±2.5 % RH和±30 lx范围内;24 h内采集CO2最大浓度值为876 mg/m3,NH3最大浓度值为8.0 mg/m3,H2S最大浓度值为5.6 mg/m3,均低于国家规定保育猪舍有害气体CO2浓度为1 300 mg/m3,NH3浓度为20 mg/m3,H2S浓度为8 mg/m3的行业标准。为克服每天早晚7:00左右对猪舍进行清粪造成短时间内NH3、H2S浓度过大问题,系统结合环境调控融合算法适当加大舍内通风量,保证猪只长期处于最适应生长环境。
表3 24 h内保育猪舍空气质量参数变化情况Tab.3 Variation of air quality parameters of nursery piggery in 24 hours
为验证模糊PID控制算法对导轨式移动机器人采集猪舍样本的定位精度,系统设有高、中和低三种速度运行模式,若相邻采集站号与当前采集站号进行比较,当差值大于等于4站、等于2站或3站和等于1站时分别启动高速(0.5 m/s)、中速(0.25 m/s)和低速(0.1 m/s)运行模式。试验过程中,随机抽取10次机器人实际停车中心位置和定位地标(射频标签)位置偏差进行测量、记录,且每次测量完后均返回初始站点。表4为不同速度模式下的停车定位精度。
由表4可知高速(0.5 m/s)、中速(0.25 m/s)和低速(0.1 m/s)运行模式下停车定位误差分别控制在3≤|ΔSH|≤12 mm、|ΔSM|≤6 mm、|ΔSL|≤3 mm范围内,测试过程中机器人底盘中心位置携带读卡器能够准确识别定位标签信息,并能结合导轨上限位开关快速、平稳做出停车动作,且没有发生脱轨、卡轨道现象,整体定位误差控制在±12 mm范围内,因此,系统采用模糊PID控制算法能够满足猪舍样本采集站的停车定位精度,为快速、准确获取猪舍环境参数、猪只个体特征和异常行为状态信息提供保障。
表4 不同速度模式下的停车定位精度Tab.4 Precision of parking location under different speed mode
为验证DT-SVM融合算法对猪只行为分类可行性,将系统得到的咳嗽、饮食、站立等8种行为特征向量送入Matlab仿真平台,利用LibSVM工具箱对特征向量进行计算,并将分类结果转化数据见表5所示。
由表5可知,侧卧和犬坐两种行为识别准确率较高,主要原因是生猪运动波动小容易识别;站立、饥饿两种行为识别准确率较低,主要原因是生猪站立、饥饿、正卧运动行为对应三轴加速度数据特征值较为接近导致。系统平均猪只运动行为辨识准确率为93.5%,达到猪只行为分类辨识目的。
表5 猪只行为识别分类结果Tab.5 Classification results of pig behavior recognition
为快速、准确显示猪只日常行为,行为监测平台结合猪只姿态辨识结果和猪只体表特征参数将当天猪只姿态持续时间与相邻前七天更新统计数据进行比较[17],当猪只体温和心率均为正常时,数据相对差为20%以内为正常,相对差为20%~40%为一般,相对差为40%~60%为异常,相对差为60%以上为严重异常;当猪只体温或心率参数不正常时,猪只行为至少为异常。同时后台数据库对异常猪只行为进行醒目标注,以便提醒饲养技术人员对异常猪只及时处理,为疾病预防提供科学依据。猪只行为评价数据见表6所示。
表6 猪只行为识别评价数据Tab.6 Pig behavior evaluation data
5 结论
1)开发基于机器人的生猪健康养殖智能监控系统能够借助监控PC或手机APP设定巡检路径依次对生猪生长过程和行为特征实时在线监测。随机抽取12个样本对温湿度、光照、CO2、NH3和H2S浓度环境参数进行测试,温湿度、光照误差分别控制在±0.8 ℃、±2.5% RH、±30 lx范围内,参数波动范围较小,CO2、NH3和H2S有害气体浓度分别控制在876 mg/m3、8.0 mg/m3和5.6 mg/m3范围内,能够为生猪健康提供适宜的生长环境。
2)结合导轨、RFID定位和模糊PID控制算法设计一种基于导轨式移动机器人二级联动采集装置,能够实现机器人沿设定路径准确、快速自主采样功能。随机抽取10个样本采集点分别以高速(0.5 m/s)、中速(0.25 m/s)和低速(0.1 m/s)三种运行模式对导轨式移动机器人的定位精度和稳定性进行测试,定位误差分别控制在3≤|ΔSH|≤12 mm、|ΔSM|≤6 mm、|ΔSL|≤3 mm范围内,整体定位误差控制在±12 mm范围内,且整个试验过程中没有发生跑偏、卡轨道现象,为快速、准确获取生猪生长环境和行为特征信息提供保障。
3)融入音频、运动传感器三轴姿态采集特征数据,采用猪只行为识别TD-SVM融合分类算法,并结合猪只体特征(体温、心率)和环境感知多源融合算法实现猪只站立、咳嗽等8种行为姿态识别,整体识别正确率为93.5%,可为饲养人员进一步分析生猪健康状况提供数据支持。