给万头养猪场做了套自动环控系统,老板说死猪率降了一半——风机水帘暖风机全联动的PLC项目实录

工业通风系统

说实话,接到这个活的时候我第一反应是想笑——我一个搞工厂自动化的,让我去给养猪场做PLC?

但笑归笑,这活钱不少。一个朋友介绍的,说是他亲戚的一个万头规模的自繁自养猪场,想上自动化环境控制系统。老板姓郑,四十出头,退伍回来养猪养了七八年,从几百头干到了一万多头,算是我见过的最懂科技的养猪人了。

过去聊了一次,郑老板说他的痛点很简单:

“去年夏天热死了一百多头母猪,加上应激导致流产的,损失十几万。冬天氨气浓度高了不知道,小猪呼吸道疾病一波接一波。我现在全靠老员工凭经验,但年轻人根本不愿意干这活,臭烘烘的。”

我一听就明白了——这跟工厂里的环境监控没本质区别,无非就是温度、湿度、氨气浓度、CO₂浓度这几个参数,控制对象是风机、水帘泵、暖风机、卷帘机。

那就干吧。

现场情况

这个场是典型的密闭式猪舍,一栋一栋的,每栋长约80米,宽12米,分成十几个栏。每栋设计了6台1.1kW的大风机,4台水帘水泵,还有4台25kW的热风炉(冬天用)。

以前的控制方式就是人工:气温高了就开几个风机,热得受不了了再开水帘泵,冬天冷了让人去点热风炉。全靠感觉和经验。问题是晚上呢?人总得睡觉吧?半夜气温降了或者升了,猪圈里的猪就遭殃了。

郑老板这次的想法是,把5栋怀孕母猪舍和产房先改造,后面再推广到全部15栋舍。

农场建筑

方案设计

我的方案是这样的:每栋舍装一个西门子S7-1200作为主控制器,用分布式IO模块采集各栏的信号。每栋内部署:

  • 2个温湿度传感器(舍内两端各一个)
  • 2个氨气传感器(关键!装在猪只活动区域高度)
  • 1个CO₂传感器
  • 1个室外温湿度传感器
  • 6个风机启停状态检测
  • 4个水帘泵状态

5栋舍的S7-1200通过以太网连到中控室的一台工控机,上面跑WinCC做集中监控。

控制策略分三种模式:

  • 夏季模式: 温度>28℃,风机自动排级启动,水温超过32℃时启动水帘泵
  • 过渡季模式: 温度18~28℃,只开风机不开水帘,根据氨气和CO₂浓度决定最小通风量
  • 冬季模式: 温度<18℃,开暖风机+最小通风量,氨气浓度超过15ppm时加大通风

最大体会——养猪场的数据很不一样

以前做工厂项目,温度控制讲究的是精准,误差±0.5℃以内。但养猪场不是这么回事——猪舍需要的不是”精准”而是”平稳”。

举个例子:如果舍内温度是26℃,设定目标是25℃。工厂的PID会快速响应,让风机全开,很快降到25℃然后停。但在猪舍里这样做,温度忽高忽低,猪反而容易生病。所以我的PID参数设得非常保守:

  • 比例增益P=1.2(工厂项目我习惯用2.0~4.0)
  • 积分时间I=300秒(工厂我一般设30~60秒)
  • 微分关闭D=0

效果就是温度变化非常缓慢,1小时内变化不超过2℃。猪舒服,人也省心。

另一个教训是氨气传感器的安装高度。第一版我装在离地面2米的位置(跟人在走廊走的高度差不多),结果读数一直偏低,冬天关门后猪栏里的氨气其实很高。后来挪到离地面40厘米——猪鼻子活动的高度——数据才真实。

这个错误导致我在调试阶段浪费了三天。后来想想觉得特蠢——你测猪呼吸的空气,装在人的高度干什么?

调试中最难的部分

最折磨人的是过渡季模式的逻辑。春天和秋天,白天可能25℃需要降温,晚上降到12℃又需要保温。传统的PID在这种工况下反复切换,风机启停太频繁。

我后来加了一个滞回区间——温度在22~26℃之间,保持当前运行状态不动作,温度超过26.5℃才增加通风,低于21.5℃才启动供暖。这个2℃的滞回区间直接让风机的动作频率从每小时十几次降到了三四次。

代码片段大概是这样的(STL写的,贴一部分在下面):

// 温度滞回控制 - 夏季模式通风
L     #Temp_Actual        // 实际温度
L     2.650000e+001       // 26.5℃ 开启阈值
>=R   
JCN   ColdDown            // 温度低于26.5℃,跳到降温检查

L     #Vent_Stage         // 当前风机级数
L     6                   // 最高6级
<I    
JCN   ColdDown
T     #Vent_Stage_Req     // 请求增加一级

ColdDown: 
L     #Temp_Actual
L     2.200000e+001       // 22.0℃ 关闭阈值
<R    
JCN   Done
L     #Vent_Stage
L     0
>I    
JCN   Done
L     #Vent_Stage_Req
LOOP  1                   // 减少一级
T     #Vent_Stage_Req

看着简单,但这个逻辑让我来回调了三天。因为实际温度波动时,如果单纯用比较指令,风机在阈值附近会频繁启停。加滞回区间和延时确认以后才算稳下来。

最后的效果

项目从去年10月开始做设计,11月到12月施工安装,今年1月份正式投运。到现在跑了快半年,郑老板给的数据:

  • 夏季热应激死亡率:从之前的3%降到不到0.5%
  • 冬季呼吸道疾病用药量:同比减少约40%
  • 人工成本:原来每栋舍需要一个值班人员,现在降到每班两个人巡视5栋

上个月郑老板把剩下10栋的合同也签了,不过这次他提了一个新要求——要加视频监控和AI识别,能自动识别猪的异常行为,比如趴着不动太久可能是病了。

养猪场都开始上AI了。我们搞工控的,再不学点新东西真要跟不上了。

几点避坑经验

第一,养殖场的传感器防护等级要够。IP65是底线,能上IP67最好。因为猪舍要冲洗消毒,水枪压力很大的。我第一批买的普通工业传感器,清洗了一次就坏了一半。

第二,氨气传感器要买电化学式的,不要买半导体式的。半导体式便宜但漂移严重,三个月就不准了。电化学式贵一倍多,但一年校准一次就够了。我用的是英国CITY的氨气传感器探头,单颗成本七百多,但数据可靠。

第三,预留手动旁路!这个非常重要。PLC或者电脑出故障的时候,工人要能手动启动风机和暖风机。我加了一套”自动/手动”切换开关柜,手动模式直接用工频启动,跟PLC无关。这是跟消防学的——关键设备一定要有后备手段。

第四,猪场里腐蚀性气体多,铜排、端子、继电器触点最好选镀金或者不锈钢的。我在一套控制柜里发现端子氧化发绿了,三个月就换了一批全套的不锈钢端子。

第五,也是最重要的——设计的时候一定要争取去现场多待几天。猪场和工厂的工况差别太大了。我在工厂干了十几年都没碰到过的”传感器被猪拱了”这种问题,在猪场里是家常便饭。

写这些是想跟兄弟们说,不要觉得养猪场low。现在的规模化养殖场,自动化程度不比一般工厂低,而且这行的改造需求才刚刚开始释放。搞PLC的去农业赛道卷一卷,也是个出路。

上一篇 万用表测不出来的软故障,示波器一上就现了原形——37kW变频器不定时过流排查亲历记
下一篇 设备还没到,程序先用AI数字孪生跑了三个月——一个虚实联调项目的真实记录