基于STM32的猪舍环境监测与控制系统设计与调试实战

做毕业设计选题的时候,我拿到“基于单片机的猪舍环境监测与控制系统设计”这个题目,第一反应是“这能有什么技术含量”。传感器加单片机加继电器,采集几个环境参数,超过阈值就开风机,听起来就是入门级组合。真正动手之后才发现,这套系统最大的难点不在电路图,而在“你服务的对象是一群不会说话、又对环境极其敏感的生物”。后来我调整思路,把它当成一个完整工程项目来做,而不是一个课程设计,收获完全不一样。这篇文章就从需求、硬件选型、电路设计、软件逻辑、现场调试到复盘,完整记录这个项目从零到能稳定运行的经历,对准备做环境监测类毕业设计或者刚入门单片机的读者应该都有参考价值。

1. 需求拆解:猪舍环境到底难在哪,值得用一套单片机系统去盯

1.1 四个核心环境指标,每一个都是“会呼吸的账”

猪舍环境不是“热了就吹风”这么简单。温度方面,猪只不同生长阶段的最适宜温度区间变化很大,刚断奶的仔猪对低温非常敏感,而中大猪又怕高温暴热。春秋两季尤其棘手,白天夜间温差能到十几度,没有自动控制设备的话,养殖户经常要半夜爬起来去开关风机或者卷帘。湿度方面,南方梅雨季和北方冬季封闭期,舍内湿度很容易长期超过85%,潮湿又会加剧氨气的溶解,让整个环境问题放大。

氨气主要来自粪便和尿液的分解,长期浓度偏高会直接刺激猪只的呼吸系统,还会影响采食量。二氧化碳则是动物呼吸和冬季加热设备燃烧产生的,在通风不良的密闭舍内浓度会慢慢爬升,它也是判断“该不该增加通风”的间接指标。这四个量相互牵连:温度一高,粪便发酵加快,氨气就跟着上来;湿度一大,粉尘和氨气的危害也会加重。所以系统设计不能只围绕一个参数设阈值,得把几个指标统一采集、统一判断、统一联动。

1.2 为什么是单片机,而不是PLC或者树莓派

不少同学一上来就纠结平台选择。PLC确实抗造、稳定,但成本高,梯形图编程对没有接触过工控的人来说学习曲线不算友好,毕设阶段也很难把控制逻辑展示得那么透明。树莓派这类开发板跑个Python写个网页后台确实很炫,但功耗高、对环境要求高,猪舍现场的供电稳定性、防尘防水条件都不理想,还要考虑系统重启后能不能自动恢复。单片机在这类场景里恰好合适:价格便宜,几块钱到几十块钱;外设接口丰富,接传感器、继电器、显示屏都很直接;程序全在自己手里,逻辑一眼能看穿,调试和论文撰写都方便。

当然,这不是说其他方案不行。有个师兄做过一个树莓派版本的猪舍监控,拍摄效果不错,摄像头图像上传做得挺好看,但一台树莓派加摄像头的成本够买我这一整套系统了。在养殖现场,设备一旦坏了,维护的人很难有精力去处理复杂系统。单片机系统坏了一个传感器,换一个继续跑,成本很低,这才是它在这个场景里真正的竞争力。

1.3 系统功能边界:监测、报警、联动、上报

做完需求分析之后,我给系统划定了明确的功能边界,这也是避免“什么都想做,最后什么都做不深”的关键一步。

  • 监测:实时采集温湿度、氨气浓度、二氧化碳浓度,并在本地显示屏上轮播显示。
  • 报警:任一参数超过设定上限时,触发声光报警器,并把报警信息通过通信模块发送给手机端。
  • 联动:根据温湿度与气体浓度自动控制风机、加热器、湿帘水泵等执行设备,让环境始终保持在设定范围内。
  • 上报:通过Wi-Fi模块与手机通信,实现远程查看数据与手动控制。

远程控制很容易变成一个大坑。如果要做云端平台、历史曲线、手机App,工作量会成倍增加,后期维护也复杂。所以我只保留了“串口透传+手机端指令下发”这一层,既满足功能展示,又不把范围扩得太大。

2. 硬件选型:从传感器到执行器,拒绝“堆料式”设计

硬件选型最忌讳的是什么东西贵就上什么。毕业设计要有性价比逻辑,要能扛得住现场环境,还要让后期维护变得简单。我的整体思路是:主控选熟悉且资源够用的,传感器选精度能满足工程要求而不是数据好看的,执行器选驱动电路成熟稳定的。

2.1 主控:STM32F103还是STC89C52

经典51单片机(STC89C52)在不少课程设计里出现过,接口简单,资料多,但做这个项目多少有点吃力。采集四路模拟量、控制多个继电器、还要挂显示模块和Wi-Fi模块,51的IO口要来回复用,定时器和中断资源也比较紧张。我最终选了STM32F103系列,主频72MHz,有3个USART、2个ADC、多个定时器,做这种中小型环境监测系统绰绰有余。开发环境用标准外设库或者HAL库都行,网上例程也多。

这里不是看不起51,而是强调“够用但别太憋屈”。同样的代码,在51上可能需要频繁关中断去抢时间片,在STM32上可以用定时器轻松解决。做毕业设计的时间本来就紧,把精力花在与功能无关的底层优化上不太划算。

2.2 温湿度传感器:DHT11和DHT22怎么选

温湿度采集我用过DHT11也用过DHT22。DHT11便宜、单总线协议简单,精度是±2℃、±5%RH,对猪舍这种环境来说完全够用。DHT22精度更高,价格几乎翻倍,但对于本课题来说没有本质提升。猪舍里面湿度常年偏大,传感器长期工作在有水汽和粉尘的环境里,真正影响精度的往往不是芯片本身,而是探头保护罩的透气性。我最终选了DHT11,同时在探头外面加了一个透气防尘帽,让空气可以流通但又不会让水汽直接凝结在芯片表面。

如果你的课题要求精度更高,DHT22或者SHT30也是好选择,但要注意SHT30是I2C接口,驱动代码会稍微多一点。一个原则:精度够用就行,现场环境才是决定长期稳定性的关键。

2.3 气体传感器:氨气和二氧化碳的选型差异

氨气检测我用的是MQ-137半导体式传感器,它内部有一根加热丝和一个气敏层,加热到一定温度后接触还原性气体时电导率变化,通过分压电路转换成电压信号。这类传感器的优点是便宜、灵敏度高,缺点也很明显:需要预热、受温湿度影响、需要定期校准。MQ-135也可以测氨气,但更偏向空气质量综合检测,选择MQ-137在氨气上的针对性更强。

二氧化碳传感器选择了NDIR非色散红外原理的模块,输出串口或模拟信号。NDIR传感器测量精度高、寿命长,但价格比半导体传感器贵不少。如果预算紧张,也可以只测算一个经验值,通过通风时长间接估算,但效果远不如直接测量。折中方案是:毕业设计阶段把二氧化碳作为重要监测量,选用低成本NDIR模块,现场只需保证通风联动有效率就行,不需要追求实验室级精度。

这里还要提醒一点:气敏传感器的加热电流不小,如果主控板的稳压芯片只有几十毫安余量,传感器一上电系统就可能复位。设计电源的时候一定要给加热丝留够余量。

2.4 执行设备与显示:继电器、风机、加热器

执行设备我选了四路继电器:两路接风机,一路接加热器,一路接湿帘水泵,外留一路备用。选继电器模块时留意两点:一是要带光耦隔离,避免电机启停时的高压反冲打到单片机;二是触点电流要留余量,风机启动电流通常是额定电流的几倍,继电器标称电流最好比实际负载电流大两倍以上。

显示部分用了LCD1602,字符屏虽然过时,但在这个场合非常合适:阳光下可见性好,代码简单,不容易花屏。如果追求视觉效果可以换OLED,但OLED在强光下的可视性反而不如带背光的字符屏。使用体验上的小结论:现场设备不怕功能弱,就怕不可靠。

2.5 电源设计:主控、传感器、执行器要分路供电

整个系统的供电关系要理清楚。220V市电经12V开关电源转成12V,给继电器和水泵控制回路供电;12V再经稳压芯片降到5V,给单片机和显示模块供电;二氧化碳传感器需要3.3V的话,再用一颗AMS1117从5V降压。最好做两级稳压,不要把12V直接降到3.3V,压差大容易发热,稳定性也差。

继电器、风机、水泵这些大功率设备的电源最好不要和单片机共用地线直接耦合,至少要共地但分开走线,避免启动瞬间的大电流把单片机电源拉低。这一点在原理图阶段就要提前规划,后面焊接调试能少很多麻烦。

3. 电路设计与PCB排坑:画图一时爽,焊接火葬场

很多初学者拿到原理图库就开始连导线,连完就觉得万事大吉。实际上,电路设计阶段的每一个细节都会在实物调试的时候加倍找回来。我这里说几个最容易翻车的点。

3.1 单片机最小系统和信号输入电路

STM32的最小系统常用8MHz晶振加两个20pF左右负载电容,复位脚接10kΩ上拉电阻到3.3V,这个基本配置别省。下载调试接口留一个SWD的四针排针,比每次都用串口下载方便得多。ADC采集电路上,每路模拟信号进来之后串一颗100Ω电阻,再接一颗100nF电容到地,做简单的RC滤波,可以显著减少传感器输出信号上的高频干扰。别小看这两个元件,气体传感器输出阻抗高,线稍微长一点就容易耦合噪声,滤波电容是最便宜也最有效的抗干扰手段。

DHT11的数据线需要外接上拉电阻,典型值4.7kΩ到5V或3.3V,线长的情况下上拉可以取小一点,比如2.2kΩ。如果没有上拉或者上拉阻值太大,单总线在长线传输时很容易出现读数为0或通信超时。

3.2 继电器驱动电路的设计要点

继电器模块如果自己画原理图,核心就是三极管开关电路加续流二极管。单片机IO口驱动能力有限,不能直接驱动继电器线圈,中间要加一颗NPN三极管或者MOS管。感性负载断电瞬间会产生反向电动势,线圈两端必须反向并联一颗续流二极管,否则可能在IO口上打出很高的尖峰电压,轻则复位,重则烧芯片。很多成品继电器模块已经集成这些电路,买回来直接接就能用,但你要知道它为什么能这样用,答辩的时候老师一定会问。

另一个容易忽略的问题是继电器动作瞬间产生的电磁干扰。现场使用的时候,继电器和单片机之间要保持至少几厘米的距离,走线不要平行靠近。条件允许就把继电器集成到一个独立小板上,和主控板分开,用一个排线连接,这样干扰会小很多。

3.3 PCB布局与焊接调试的经验

PCB布局我的经验是“强电弱电分区、模拟数字分离”。继电器、接线端子放在板子一侧,单片机、传感器接口放在另一侧。模拟信号线尽量短,不要贴着继电器驱动线走。电源线按载流能力加宽,12V和GND的走线能铺铜就铺铜。板子做好之后先不焊单片机,先把电源部分焊好,通电确认电压正常,再焊传感器电路和驱动电路,最后焊主控。这种分层焊接的方法,可以把问题限制在小范围内排查,不会出现一上电冒烟都不知道哪里的问题。

实物焊接阶段常见的坑我也列一下:

  • 电解电容极性接反,通电瞬间炸裂。
  • 7805或AMS1117散热不足,负载一大就过热保护。
  • 接线端子没锁紧,现场震动导致接触不良。
  • 传感器接口方向插反,模拟量直接被拉到地。

这些坑单看都不大,但在现场一个个试错很耗时间,所以焊接之前一定要对着原理图多核对两遍,尤其是电源部分。

4. 软件逻辑:时间片轮询、滤波与温湿度控制策略

硬件搭好之后,软件决定了系统好不好用。我把程序分成几个层次:采集层、滤波层、控制层、显示与通信层。每一层各司其职,出现问题也好定位。

4.1 主程序结构:定时采集,不阻塞

程序的核心是一个超循环加定时中断。定时器每隔500毫秒触发一次中断,在中断里置一个采集标志位,主循环检测到标志位之后再去读取传感器。这样做的好处是,单片机不用一直等待慢速传感器响应,主循环还能同时处理按键、显示刷新和通信。DHT11这类单总线传感器一次通信要花几十毫秒,如果直接在中断里读取,会让系统卡顿,所以把它放在主循环里处理。

uint8_t sample_flag = 0; void TIM2_IRQHandler(void) { if (TIM_GetITStatus(TIM2, TIM_IT_Update)) { TIM_ClearITPendingBit(TIM2, TIM_IT_Update); sample_flag = 1; } } int main(void) { while (1) { if (sample_flag) { sample_flag = 0; read_sensors(); // 读取温湿度与气体传感器 data_filter(); // 滤波处理 control_logic(); // 阈值与控制 display_update(); // 刷新显示 send_uart_data(); // 串口上报 } } }

4.2 数据滤波:不要直接用ADC的裸读数

初版程序里,气体浓度跳变得特别厉害,风扇一启动,氨气读数就能上下跳几十个单位。原因是传感器本身有波动,供电电压也受风机启动影响。解决方案很简单:连续采集十次,去掉最大值和最小值,再取平均。这在中位值平均滤波,对消除脉冲干扰很有效,实现成本也低。

还要做一次限幅滤波,防止单次采集突变太大导致误动作。比如氨气浓度相邻两次采样变化超过50ppm,就认为本次数据无效,沿用上次值。这种方式工业上叫“变化率限幅”,在很多环境监测设备里都有用。

4.3 温度控制策略:死区控制比精确PV值更重要

温度控制我一开始写成简单的绝对值判断:温度高于25℃就开风机,低于25℃就关风机。结果风机在25℃附近频繁启停,继电器咔咔响,现场人员看着都心疼。后来改成带回差的逻辑:

  • 温度超过上限27℃时启动风机或湿帘;
  • 温度回落到26℃以下时才关闭风机;
  • 加热器的控制同理,低于18℃启动加热,升到20℃停止。

这个“先启动后停止”的差值,就是回差,也叫滞回区间。别小看这个逻辑,它能避免执行机构频繁动作,延长继电器和风机寿命。答辩时老师问“为什么不用PID”,我解释清楚死区控制的必要性和风机这类设备的特点就够了。如果要更精细地控制加热功率,可以用位置式PID输出PWM驱动固态继电器,但这属于进阶优化,不是本系统的必选项。

有条件的同学可以顺手把采样数据写进SD卡存储,这样能做一条温度变化曲线,也能作为系统效果的证明材料。只需要在软件里加一个文件系统模块,定期把数据追加到一个CSV文件里,成本不高但展示效果很好。

4.4 报警联动与远程通信逻辑

报警逻辑我用了一个状态判断:温湿度或气体浓度超过一级阈值时,启动相应执行设备并发送一条报警数据到手机;超过二级阈值时,打开声光报警器,并且每五分钟重复报警直至复位。这里要区分“联动”和“报警”:联动是自动调节环境,报警是提醒人员介入,两者要分开处理,不能混在一个判断分支里。

远程通信我用了一个ESP8266串口Wi-Fi模块,工作在透明传输模式。单片机通过串口把数据帧发给ESP8266,ESP8266再把它发送到手机端;手机端下发控制指令时,反向传输到单片机。协议帧就设计成固定格式:帧头、设备编号、数据长度、负载数据、校验字节。字段虽然简单,但加上校验之后基本不会出现乱码和误操作。注意,公共MQTT服务器和免费物联网平台虽然可以用,但毕业设计阶段容易因为服务器变动导致演示翻车,本地局域网透传是更稳的方案。

5. 现场标定与部署:你的设备正在“恶劣工况”里讨生活

实验室环境干净、温湿度稳定,传感器数据漂漂亮亮。一拿到猪舍现场,环境就完全不同了,粉尘附着、水汽凝结、电源电压波动,每一个都直接影响传感器数据质量。这个章节想说的是:设备能不能长期稳定运行,关键在安装位置和标定流程,而不是代码写得有多精妙。

5.1 传感器的安装高度与位置

传感器不能直接挂在墙根,也不能放在风机直吹的风道上。比较合理的位置是猪舍中部偏通风侧的围栏上,距地面1.2米到1.5米,这个高度接近猪只颈部的呼吸带,又不会被猪直接蹭到。氨气比空气轻,容易积聚在舍内上部,所以探头要略高于猪背,但也不能贴到屋顶。实际安装时还要避开粪沟正上方,那个位置的氨气浓度没有代表性,会让系统误判整个猪舍的环境质量。

传感器外壳要朝下安装,或者加上防滴水的挡板,避免冲洗猪舍时水流直接浇到传感器上。很多传感器标称防尘防水等级不错,但长期被水泡之后,数据一样会漂移。现场用了一两个月之后,建议拆开外壳清理一下探头表面的灰尘和油膜,这比反复校准更管用。

5.2 校准流程:一次完整的标定应该怎么做

传感器出厂值只能保证趋势正确,不能保证绝对准确。我在项目里做了三步校准:

第一,零点校准。把氨气传感器放在通风良好的清洁环境中,通电预热24小时以上,记录稳定后的ADC值作为零点。第二步,用标准浓度的氨气气体来校准,没有条件的话可以用一台经过鉴定的气体检测仪放在旁边对比。第三,温湿度传感器用标准温湿度计在同一个位置同时读数,记录差值作为软件修正偏移量。

校准要定期重复,至少每月一次。气敏传感器的敏感材料会逐渐老化,零点会漂移,这是正常现象。软件里可以预留两个全局变量:偏移量和增益值,校准的时候直接修改这两个值,不用改代码重新烧录。这个设计在现场维护时非常实用,专门在串口调试指令里加了一条校准命令。

5.3 现场供电与防雷防浪涌的底线措施

养殖现场的市电质量谈不上好,附近有大功率电机启停时,电压波动很明显。我在电源入口加了压敏电阻和自恢复保险丝,压敏电阻可以吸收浪涌电压,自恢复保险丝能在短路时自动断开。成本不高,但能挡住大部分意外情况。所有室外走线都套上波纹管,接头处用密封胶固定,这就是现场最实际的防水方案。

冬天系统还会遇到低温启动的问题。传感器电源在环境温度很低时,部分稳压芯片的输出会有偏差,建议设备箱放在靠里的位置,给传感器单独加一个小的加热电阻维持芯片工作温度。这些细节在现场都会变成真实故障,排在预防阶段总比现场守着抢修舒服。

6. 调试实录:三个典型故障的排查过程

这一节挑三个我调试中印象最深的故障写,每一个都花了不少时间才定位到根因,排查思路本身就很值得分享。

6.1 故障一:风机一启动,氨气读数“飞天”

现象是风机正常运行后,LCD上氨气浓度突然飙升到报警值,风扇停一会儿又回落。第一反应以为是传感器坏了,换了新传感器还是同样问题。后来用示波器测传感器供电,发现风机启动瞬间,5V电源上出现了一个大毛刺,直接把传感器输出信号抬高了。根因就是风机和传感器共用电源,大电流启动导致电压跌落和干扰。

解决方法是三条路一起走:传感器供电改用独立稳压芯片单独供电;软件上加强滤波,对气体数据做滑动平均;继电器控制线远离模拟信号线。改完之后,即使风机频繁启停,氨气读数也只是在小范围内波动,不会再误报。这个案例特别典型,也特别适合写进论文的“系统调试”章节。

6.2 故障二:继电器频繁吸合,现场像在打点报时

有一次在现场调试温度控制逻辑,室外温度正好在临界点附近,继电器每隔十几秒就吸合一次,现场声音非常密集,风机还没转起来又被关掉。从现象看这是典型的控制逻辑缺失回差,而不是硬件问题。加上3℃回差后,动作间隔从十几秒拉长到了十几分钟,整个系统忽然就“安静”了。

处理完这个问题我意识到,写环境控制程序的第一原则不是“控制得多准”,而是“不要乱动”。执行机构是有机械寿命的,频繁动作本身就是一种损耗,回差设计是成本最低的保护手段。

6.3 故障三:继电器吸合的瞬间,单片机死机重启

设备装箱后第一次通电,一按继电器按钮,整个单片机就重启。排查过程很典型:先用万用表测电源,没发现明显短路;再用示波器抓继电器动作点的电压波形,看到3.3V电源上出现大幅跌落;最后发现继电器模块和单片机共用了一根很细的电源线,继电器线圈一吸合,电流突然增大,电源线压降过大导致单片机供电不足。

解决方法是给继电器单独拉一路粗导线或独立电源,并在继电器供电端并联一个大容量的电解电容,起缓冲作用。这也印证了前面强调的电源分路原则。提醒一句:集成排线供电虽然方便,但不要把大电流器件和主控板放在同一条细排线上,这是很多新手踩的坑。

7. 系统复盘:落地效果、局限与后续扩展

整套系统从画原理图到现场稳定运行,前后差不多花了两个多月。中间经历了无数次改版、烧录、调试、返工,最后看到它在猪舍里连续跑了一个星期不需要人工干预的时候,还是挺有成就感的。

7.1 实际使用效果

装到现场之后最直观的变化是,养殖户不用半夜去查看温度了。系统自动控制风机和加热器,白天晚上温差再大,舍内也能维持在设定范围内。原来的手动通风完全凭经验,经常出现傍晚忘了关风机导致夜间温度过低的情况。有了自动控制之后,这种现象基本消失。氨气浓度的变送联动也让冬季密闭舍内的空气质量有了保障,通风不再是“有没有做”,而是“做得到不到位”。

7.2 不足与局限

这套系统也不是没有缺点。传感器寿命受现场环境影响很大,尤其是气体传感器,连续工作几个月后需要重新校准。系统的阈值都是手动设置的,不能根据猪只生长阶段自动调整,后期需要人工修改参数。还有,本地报警只能覆盖舍内,如果养殖户不在现场,只能靠手机端查看,没有短信或者电话提醒。这些局限在论文的“不足与改进”部分也如实写了。

7.3 给后续做类似题目的人几个建议

第一,先把传感器数据采出来,能稳定在LCD上显示了,再做控制逻辑。第二,控制逻辑一定要有回差,没有回差的系统到现场一定会出问题。第三,别迷信“大而全”,把监测、显示、联动、报警这四件事做扎实,已经是一个很完整的系统工程课题。

如果还有时间去扩展,可以考虑把多个猪舍做成一个RS485总线网络,集中到一个上位机界面里管理,相当于小规模物联网。再往后可以加一个太阳能供电系统,解决偏远猪场的用电不稳定问题。这些方向任何一个拿来做深入课题都足够,比我当初想象的“传感器加单片机入门组合”要丰富得多。

最后分享一个小感受:养猪场里的设备和实验室设备最大的区别,是它得接受粉尘、水汽、电压波动和长期不关机。做完这个项目,我对“可靠”这两个字的理解比课本上深得多。如果你想在环境监测这个方向写点东西,比起追求花哨的界面,不如多花点时间在电源设计和现场稳定性上,这才是整个系统能不能用的分水岭。

相关新闻

CMOS两级运放设计:从仿真抖动到版图稳定的全链路工程实践

CMOS两级运放设计:从仿真抖动到版图稳定的全链路工程实践

简介:本资源是一份完整的CMOS两级运算放大器课程设计报告,面向微电子、集成电路设计及相关专业高年级本科生与研究生,解决模拟IC设计中核心模块——密勒补偿型两级运放的手工计算、仿真验证与性能评估问题。文档为单文件Word格式(…

2026/10/21 7:11:52 阅读更多 →
动静结合的程序分析:让静态分析缩小战场,动态分析验明告警

动静结合的程序分析:让静态分析缩小战场,动态分析验明告警

做检测工具的人多半经历过这种拉扯:动态分析跑出来的每条报告都有真实执行作为依据,可换个输入就什么都复现不出来;静态分析能在几分钟内把整个代码库里的可疑点全标出来,可仔细一查,大半是误报。我就是在反复被这两者…

2026/10/21 7:11:52 阅读更多 →
PDF儿童发育量表的结构化解析与临床逻辑落地

PDF儿童发育量表的结构化解析与临床逻辑落地

简介:本资源为国家卫生行业标准《WS/T 580—2017 0岁~6岁儿童发育行为评估量表》完整PDF版,面向儿科医生、儿童保健人员、特教教师、康复治疗师及婴幼儿发展研究者,用于科学、标准化地评估0~6岁(未满7周岁&…

2026/10/21 7:11:52 阅读更多 →

最新新闻

垂类大模型成行业生产力:工业与芯片场景的落地路径解析

垂类大模型成行业生产力:工业与芯片场景的落地路径解析

最近圈子里比较有分量的一条消息,是某云厂商直接把工业、芯片两个方向的垂类大模型一起端了出来。标题里那句“不止模型,更是生产力”,在我看来才是真正的信息量所在——行业大模型这两年的叙事,终于从“我能做什么”切换到“我能…

2026/10/21 7:55:10 阅读更多 →
自然语言处理实战:从词向量到Transformer的工程实践解析

自然语言处理实战:从词向量到Transformer的工程实践解析

说句实话,市面上讲自然语言处理的书不少,但真正能让开发者上手把项目跑起来、把代码写进生产环境的并不多。《自然语言处理实战第二版(MEAP)(二)》这本书我从第一版的纸质版一直跟到第二版的早期访问章节&a…

2026/10/21 7:55:10 阅读更多 →
从DOOM到自动化测试:强化学习决策模型的迁移实战

从DOOM到自动化测试:强化学习决策模型的迁移实战

一个 AI Agent 如果只会在模拟环境里刷高分,那它离"能用"还有很远。真正的考验是:把它放进一个没见过的场景,它还能不能根据有限的信息,做出对的决策。我最近把一个原本训练在 DOOM 风格对抗环境上的决策模型 Jev&#…

2026/10/21 7:55:10 阅读更多 →
PostgreSQL底层故障排查:pageinspect工具实战详解

PostgreSQL底层故障排查:pageinspect工具实战详解

前阵子碰到一个挺闹心的故障:某张业务表的容量持续上涨,磁盘告警都触发了,可业务写入量并没有明显增加。跑了一遍VACUUM,空间也纹丝不动。我用常规的pg_stat_user_tables、pg_stat_progress_vacuum查了一圈,都看不出名…

2026/10/21 7:55:10 阅读更多 →
Playwright MCP:AI驱动的浏览器自动化与跨平台测试

Playwright MCP:AI驱动的浏览器自动化与跨平台测试

这两年做Web自动化测试,我从早期的录制回放工具一路换到代码级框架,老实说,真正让我觉得"工具终于跟上人了"的节点,是Playwright MCP这套组合出现之后。以前写一条跨平台测试用例,要先关心浏览器驱动、等待时…

2026/10/21 7:55:10 阅读更多 →
Text-to-Prototype与D2C实战:从一句话到可交互原型的工程化工作流

Text-to-Prototype与D2C实战:从一句话到可交互原型的工程化工作流

一句话丢给 AI,它真能吐出一套能点、能跳转、能填表单的 App 原型?这个问题在过去一年里被问了无数遍,我自己也拿它当正经课题折腾了小半年。Text-to-Prototype,也就是文本生成原型,再到 D2C(Design to Cod…

2026/10/21 7:54:10 阅读更多 →

日新闻

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

2026/10/21 0:00:11 阅读更多 →
AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

1. 从“封号重开”这个行为说起:用户到底在追求什么“封号重开”这四个字,放在任何产品语境里都带着一股决绝的味道。一个账号从零开始积累使用记录、调教偏好、沉淀工作流,背后是大量的时间和精力成本。正常情况下,没有人愿意主动…

2026/10/21 0:00:11 阅读更多 →
ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

1. 为什么在ROS里硬刚YOLOv3不是“炫技”,而是工程落地的必经之路我第一次在某高校机器人实验室看到那台搭载Jetson TX2的移动底盘原地打转、反复识别错垃圾桶时,就意识到:单纯跑通darknet_ros demo和真正让YOLOv3在ROS里“干活”&#xff0c…

2026/10/21 0:00:11 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/21 4:27:17 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →