ESP32-C6 + Zigbee 直连 Home Assistant:低功耗本地化空气质量监测方案
1. 为什么我最终选了ESP32-C6加Zigbee这条路线去年冬天我在书房里折腾空气质量监测前后换了三套方案最后才落到ESP32-C6加Zigbee直连Home Assistant这条路上。前两套方案分别是Wi-Fi直连和蓝牙网关中转各有各的难受Wi-Fi方案功耗高、路由器上挂一堆设备心里不踏实蓝牙方案延迟大、断连之后要手动重连。折腾到第三套我才算真正把稳定、低功耗、本地化这三个需求同时满足。ESP32-C6这颗芯片值得单独说一下。它是乐鑫在ESP32-C3之后推出的又一款RISC-V架构芯片最大的特点是同时支持Wi-Fi 6、蓝牙5和IEEE 802.15.4。这个802.15.4就是Zigbee、Thread这些低功耗网状网络的物理层基础。换句话说一颗芯片把三种无线能力都塞进去了对于做智能家居传感器来说等于省掉了一颗独立的Zigbee射频芯片BOM成本和PCB面积都能压下来。那为什么不用更常见的ESP32加CC2530组合我实际对比过。ESP32加CC2530的方案两颗芯片之间要走串口通信固件要维护两套调试的时候串口日志和Zigbee抓包要分开看出了问题定位链路长。ESP32-C6单芯片方案Zigbee协议栈直接跑在芯片内部应用层代码和网络层代码在同一个工程里调试体验完全是两个量级。再说Home Assistant这边。HA对Zigbee的支持已经非常成熟ZHA和Zigbee2MQTT两条路都走得通。我选的是ZHA原因是它原生集成在HA里不需要额外跑一个MQTT broker和转换器容器对于我这种只想安安静静看数据的人来说少一层就少一个故障点。ESP32-C6烧录好固件之后在ZHA里点添加设备几十秒就能配对成功之后传感器数据直接以实体形式出现在HA面板上。这套方案适合谁我觉得适合三类人一是已经有Home Assistant、想加空气质量监测但不想再拉Wi-Fi设备的人二是对本地化有执念、不希望数据经过云端的人三是想入门Zigbee设备开发、拿一个完整项目练手的人。如果你属于这三类中的任何一类往下看应该会有收获。提示本文所有操作基于公开的ESP-IDF开发框架和Zigbee协议栈示例不涉及任何特定厂商的私有云服务。文中提到的元器件型号仅为技术选型参考读者可根据实际采购情况替换。2. 元器件选型与硬件搭建中那些容易忽略的细节2.1 主控与传感器怎么搭主控我用的是一块ESP32-C6-DevKitC开发板板载USB转串口、复位按键和Boot按键拿来打样最省事。如果你要自己做PCB核心模组选ESP32-C6-WROOM-1就行它把芯片、晶振、射频匹配和天线都集成好了外围只需要加电源和几个去耦电容。传感器方面我选的是Sensirion的SEN66模组。这个模组把PM1/PM2.5/PM4/PM10、温度、湿度、VOC指数、NOx指数全部集成在一个17×17×3毫米的封装里走I2C或UART输出。选它的理由很直接一颗顶过去四五颗省掉了我自己标定和融合多路数据的麻烦。如果你预算有限也可以拆成PM2.5用GP2Y1010、温湿度用SHT31、VOC用SGP41但那样代码量和标定工作量会成倍增加。接线其实不复杂但有几个点我踩过坑。SEN66的供电是3.3V峰值电流能到几十毫安如果你从开发板的3.3V引脚直接取电最好并一颗100微法以上的电解电容在传感器电源脚附近否则风扇启动瞬间可能把电压拉低导致I2C通信失败。我第一次调试时数据时不时丢包查了半天才发现是电源纹波的问题。I2C的SCL和SDA我接在GPIO6和GPIO7上这两脚在ESP32-C6上默认可以做I2C而且离射频部分远干扰小。上拉电阻用4.7k接在3.3V上。如果你用UART模式接SEN66记得把传感器的TX接到ESP32-C6的RXRX接到TX别接反了。2.2 电源方案的选择逻辑Zigbee终端设备的一个核心优势就是低功耗但前提是你的电源设计跟得上。我一开始想用两节AA电池供电后来算了一下账SEN66的风扇和激光颗粒物传感器是耗电大户持续工作电流在20毫安以上两节AA电池撑不过一周。所以最终我改成了USB 5V供电通过一颗低压差稳压器降到3.3V。如果你确实想做电池供电思路要变不能让传感器持续工作得用间歇采样策略。比如每5分钟唤醒一次风扇转10秒采完数据就断电其余时间ESP32-C6进深度睡眠。这样平均电流能压到几百微安两节AA电池撑几个月是有可能的。但代价是数据不是实时的PM2.5这种需要连续采样的指标精度会打折扣。我个人的建议是如果你只是放在家里固定位置监测USB供电最省心如果你要放到阳台或者车里做移动监测再考虑电池加间歇采样。别为了低功耗而低功耗最后数据不准反而得不偿失。2.3 天线与外壳的配合ESP32-C6-WROOM-1模组自带PCB天线但如果你把它塞进金属外壳里信号会惨不忍睹。我试过一个铝合金外壳Zigbee信号强度直接掉了20dBm配对都困难。后来换成ABS塑料外壳开孔位置避开天线正前方信号就正常了。如果你要用外置天线模组上有IPEX接口的版本可选配一根2.4GHz的棒状天线增益3dBi左右就够用。天线尽量远离电源电路和传感器尤其是SEN66的风扇电机电机换向时产生的电磁噪声会耦合到天线上。外壳的进气设计也有讲究。PM2.5传感器需要空气流通才能测准但你不能让风扇直接对着传感器吹那样会把大颗粒物也吸进来。我的做法是在外壳侧面开一排直径2毫米的小孔让空气自然扩散进去同时在传感器进气口前面加一层无纺布做预过滤。实测下来这样测出的PM2.5数值和旁边一台商用检测仪对比偏差在10%以内。3. Zigbee固件开发从零跑通一个终端设备3.1 开发环境搭建与工程结构开发环境我用的是ESP-IDF v5.1这是目前对ESP32-C6支持最完善的版本。安装步骤官方文档写得很清楚这里只说几个容易卡住的点。第一Python版本建议用3.8到3.11之间太新的版本某些依赖包可能编译不过。第二安装完成后记得运行install.shLinux/macOS或install.batWindows来下载工具链光装IDF本身是不够的。第三环境变量要source对每次开新终端都要重新source一次嫌麻烦可以写进shell配置文件。工程结构我参考的是ESP-IDF自带的zigbee_thermostat示例但做了大幅精简。核心目录结构是这样的air_quality_sensor/ ├── main/ │ ├── app_main.c // 主入口 │ ├── zigbee_task.c // Zigbee协议栈初始化与事件处理 │ ├── sensor_task.c // 传感器采集任务 │ └── zcl_attr.c // ZCL属性定义与上报 ├── components/ │ └── sen66/ // SEN66驱动 ├── CMakeLists.txt └── sdkconfig.defaultssdkconfig.defaults里要改几个关键配置。CONFIG_ZIGBEE_ENABLEDy打开Zigbee支持CONFIG_ZIGBEE_ROLE_END_DEVICEy设成终端设备角色CONFIG_ZIGBEE_DEVICE_TYPE_SLEEPY_END_DEVICE根据你是否用电池供电来选。还有一个容易漏的CONFIG_ESP_COEX_SW_COEXIST_ENABLEy这个打开Wi-Fi和Zigbee的共存管理虽然我们只用Zigbee但底层射频还是共享的打开更稳。3.2 ZCL属性定义让Home Assistant认识你的设备Zigbee设备跟Home Assistant通信靠的是ZCLZigbee Cluster Library定义的簇和属性。你要让HA知道这是一个空气质量传感器就得实现对应的簇。我用了三个簇Temperature Measurement簇0x0402上报温度属性是MeasuredValue单位0.01摄氏度。Relative Humidity簇0x0405上报湿度属性也是MeasuredValue单位0.01%。Analog Input簇0x000C这个簇比较通用我拿它来上报PM2.5和VOC指数每个指标用一个独立的Analog Input实例。为什么PM2.5不用专门的簇因为ZCL标准里没有专门针对PM2.5的簇用Analog Input是最省事的做法。HA的ZHA集成能自动识别Analog Input并生成对应的传感器实体你只需要在HA里给实体改个名字就行。属性定义在zcl_attr.c里核心代码大概长这样static esp_zb_attribute_list_t *create_temp_cluster(void) { esp_zb_temperature_meas_cluster_cfg_t cfg { .measured_value 0xFFFF, // 初始值无效 .min_value -4000, // -40摄氏度 .max_value 12500, // 125摄氏度 }; return esp_zb_temperature_meas_cluster_create(cfg); }注意measured_value初始值设成0xFFFF这是ZCL规定的无效值表示设备还没采到数据。等第一次采样完成后再更新成真实值并上报。3.3 配网流程与事件处理Zigbee终端设备的配网流程是这样的设备上电后先尝试加入之前记录的网络如果失败就进入配网模式等待协调器也就是你的ZHA网关来分配网络地址。ESP-IDF的Zigbee协议栈用事件回调的方式处理这些状态变化。我在zigbee_task.c里注册了一个事件处理函数重点处理三个事件static void zb_event_handler(esp_zb_core_action_callback_id_t callback_id, const void *message) { switch (callback_id) { case ESP_ZB_CORE_CMD_REPORT_ATTR_CB_ID: // 属性上报成功 break; case ESP_ZB_CORE_CMD_READ_ATTR_CB_ID: // 协调器读取属性返回当前值 break; case ESP_ZB_CORE_CMD_DEFAULT_RSP_CB_ID: // 默认响应 break; default: break; } }配网触发我用了开发板上的Boot按键。长按Boot键3秒调用esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_STEERING)启动配网。这个设计的好处是设备正常运行时不会误触发配网只有你主动按键才进入配网模式。配网成功后设备会拿到一个16位的短地址这个地址在ZHA里能看到。如果之后网络环境变化导致断连设备会自动尝试重新加入不需要你再按按键。但如果协调器换了或者网络密钥变了就得重新配网。注意Zigbee网络密钥在配网时由协调器下发设备端不存储明文密钥。如果你在调试时抓包看到的是加密后的数据这是正常的安全机制。3.4 低功耗策略的实际取舍前面说过我用USB供电所以低功耗不是首要目标。但即使如此我还是做了一些优化。比如传感器采样周期设成30秒一次而不是连续采样Zigbee上报周期设成60秒一次而不是每次采样都上报。这样既保证了数据的时效性又避免了射频频繁工作带来的功耗和干扰。如果你确实要做电池供电CONFIG_ZIGBEE_DEVICE_TYPE_SLEEPY_END_DEVICE要打开然后配合esp_zb_sleep_enable(true)和esp_zb_sleep_now()来管理睡眠。但要注意睡眠期间设备无法接收协调器的指令只能靠定时唤醒或者外部中断唤醒。如果你的应用场景需要实时响应控制指令那就不适合用睡眠终端设备。我实测过睡眠模式下的电流ESP32-C6在深度睡眠时电流大约7微安加上SEN66断电后的漏电流整体在10微安左右。按这个算两节2000毫安时的AA电池理论上能撑20万小时当然实际有自放电和唤醒开销打个对折也有10万小时也就是十几年。但这是理想值实际中传感器每次唤醒要预热、风扇要转这些才是耗电大头。4. Home Assistant侧的配置与数据呈现4.1 ZHA集成添加设备HA这边我假设你已经装好了ZHA集成并且有一个Zigbee协调器比如Sonoff Zigbee 3.0 USB Dongle Plus或者Conbee II。添加设备的步骤很简单在HA侧边栏进配置→设备与服务→ZHA→添加设备然后给ESP32-C6上电并长按Boot键触发配网。正常情况下十几秒内HA就会弹出发现新设备的提示。如果一直发现不了先检查协调器固件版本。我遇到过旧版协调器固件对Zigbee 3.0设备支持不好的情况刷到最新版就好了。另外配网时设备离协调器不要太远最好在同一个房间配网成功后再移到最终位置。设备添加成功后ZHA会自动识别出温度、湿度、模拟输入这几个实体。你可以在设备页面看到它们每个实体都有一个默认名称比如Temperature、Humidity、Analog Input 1。点进去可以改名字和图标我一般改成书房温度、书房湿度、书房PM2.5这种一眼能看懂的名字。4.2 实体命名与单位换算这里有个细节要注意ZCL上报的温度值单位是0.01摄氏度比如2350表示23.5摄氏度。ZHA会自动做这个换算你在HA里看到的直接就是23.5。但Analog Input簇上报的值ZHA不会自动换算需要你自己在配置里处理。我的做法是在HA的configuration.yaml里加一个模板传感器把Analog Input的原始值换算成PM2.5的微克每立方米template: - sensor: - name: 书房PM2.5 unit_of_measurement: µg/m³ state: {{ states(sensor.analog_input_1) | float(0) }} device_class: pm25VOC指数同理不过VOC指数本身是无量纲的直接显示原始值就行不需要换算。4.3 自动化与告警设置数据进了HA接下来就是怎么用。我设了三条自动化规则第一条PM2.5超过35微克每立方米时手机推送通知提醒开窗通风或者开净化器。35这个阈值参考的是空气质量良的上限你可以根据自己的敏感程度调整。第二条VOC指数连续10分钟超过200时触发一个智能插座打开空气净化器。200这个值是我实测下来的经验值做饭之后厨房VOC能飙到500以上但书房一般稳定在50以下超过200说明有异常污染源。第三条每天早晚各一次把当前空气质量数据通过HA的TTS服务播报出来。这个纯粹是图个方便早上出门前听一耳朵知道今天要不要戴口罩。自动化规则的写法在HA里很灵活可以用图形界面也可以用YAML。我建议先用图形界面搭出框架再切到YAML微调这样不容易写错语法。4.4 数据持久化与历史曲线HA默认会把实体状态历史保存10天对于空气质量监测来说够用了。如果你想长期保存可以接InfluxDB加Grafana把数据写到外部数据库里然后做更精细的可视化。我自己的做法是用HA自带的History面板看短期趋势用InfluxDB存长期数据。InfluxDB的配置在configuration.yaml里加一段influxdb: host: localhost port: 8086 database: homeassistant username: ha password: your_password max_retries: 3 measurement_attr: unit_of_measurement这样每个传感器的数据都会按时间序列存进去之后用Grafana画曲线能看出PM2.5的日变化规律。我观察了两个月发现书房PM2.5在晚上8点到10点有个小高峰后来查出来是楼下做饭的油烟飘上来了。这种规律不看长期曲线是发现不了的。5. 调试过程中踩过的坑与排查思路5.1 配网失败从抓包到定位配网失败是我遇到的第一个大坑。现象是设备上电后串口日志显示Network steering started然后就卡住了HA那边一直发现不了设备。我一开始怀疑是天线问题换了外置天线还是不行。后来我用了一根Zigbee抓包棒配合Wireshark看空口数据。发现设备确实在发Beacon Request但协调器没有回应Beacon。这说明问题不在设备端而在协调器端。查了协调器的日志发现它的网络里已经有一个相同短地址的设备了地址冲突导致新设备加不进去。解决办法是先把协调器里那个僵尸设备删掉再重新配网。这个坑的教训是Zigbee网络里的短地址是协调器分配的如果之前配过同一个设备但没清理干净重新配网时可能撞地址。养成习惯设备不用了就在HA里删掉别留着占坑。5.2 数据丢包电源和射频的联合排查第二个坑是数据丢包。现象是HA里PM2.5的曲线时不时断一截有时候几分钟没数据有时候又正常。我先查了Zigbee信号强度显示-65dBm不算差。又查了传感器I2C通信用逻辑分析仪抓了一下发现偶尔有NACK。顺着NACK查下去发现是电源问题。SEN66的风扇启动瞬间电流突增把3.3V轨拉低到2.9V以下导致I2C电平不达标。我在传感器电源脚并了一颗220微法的电解电容问题就解决了。这个坑的教训是别小看传感器的瞬态电流尤其是带电机和激光器的传感器电源设计要留足余量。5.3 上报周期与网络容量的平衡第三个坑比较隐蔽。我一开始把上报周期设成10秒一次觉得数据越实时越好。结果跑了半天发现HA里数据开始延迟有时候要等一两分钟才更新。查了协调器的日志发现网络里还有其他Zigbee设备我的设备上报太频繁把网络带宽占满了。Zigbee网络的实际吞吐量有限尤其是在有多个终端设备的网络里。我把上报周期改成60秒延迟问题就消失了。这个坑的教训是Zigbee不是Wi-Fi别拿Wi-Fi的思维来用Zigbee。低功耗网络的设计初衷就是低频次、小数据量你要尊重这个设计前提。5.4 固件升级后的配网丢失第四个坑是固件升级导致的。我改了一版代码重新烧录发现设备配网信息丢了要重新配网。查了ESP-IDF的文档发现Zigbee的配网信息默认存在NVS非易失性存储里但如果你烧录时执行了erase_flashNVS就被清空了。解决办法是烧录时不要整片擦除只烧录app分区。用idf.py flash默认就不会擦NVS除非你手动加了erase-flash参数。如果你确实需要整片擦除那就要做好重新配网的准备。6. 这套方案还能怎么扩展6.1 增加CO2和甲醛监测SEN66本身不带CO2和甲醛但你可以通过I2C再挂一颗SCD41测CO2挂一颗SFA30测甲醛。ESP32-C6的I2C总线可以挂多个从设备只要地址不冲突就行。SCD41的地址是0x62SFA30的地址是0x5DSEN66的地址是0x6B三者不冲突可以挂在同一条总线上。代码上只需要在sensor_task.c里增加对应的读取逻辑然后在ZCL属性里增加两个Analog Input实例。HA那边会自动发现新实体你改个名字就能用。6.2 用ESP32-C6的Wi-Fi做备用通道ESP32-C6同时支持Wi-Fi和Zigbee虽然我们主要用Zigbee但Wi-Fi可以作为备用通道。比如Zigbee网络出问题时设备可以切到Wi-Fi直连HA的API把数据推过去。这个切换逻辑需要你自己写但底层射频是现成的不用额外加硬件。不过要注意Wi-Fi和Zigbee共享射频同时工作时需要协调。ESP-IDF的 coex 机制会自动处理但你得在sdkconfig里打开CONFIG_ESP_COEX_SW_COEXIST_ENABLE。实测下来同时开Wi-Fi和Zigbee时Zigbee的延迟会略有增加但数据完整性没问题。6.3 做成多房间组网一个ESP32-C6就是一个Zigbee终端节点你可以做多个分别放在不同房间。Zigbee是网状网络终端节点之间可以通过路由器节点中继覆盖范围比Wi-Fi广。如果你家里Zigbee设备多网络会自动形成 mesh信号弱的地方也能覆盖到。多房间组网的好处是你可以对比不同房间的空气质量。比如客厅和卧室的PM2.5可能差很多尤其是做饭的时候。我在HA里做了一个对比卡片把几个房间的PM2.5画在同一张图上一眼就能看出哪个房间空气最差。6.4 固件OTA升级的可行性Zigbee终端设备支持OTA升级但ESP-IDF的Zigbee OTA需要协调器端也支持。ZHA目前对Zigbee OTA的支持还在完善中不是所有设备都能顺利OTA。我的建议是调试阶段用USB烧录等固件稳定了再考虑OTA。如果你确实需要OTA可以考虑用Wi-Fi通道做固件下载Zigbee只负责数据传输这样更稳妥。我个人在实际操作中的体会是这套方案最大的价值不在于硬件多便宜或者代码多优雅而在于它把本地化和低功耗这两个看似矛盾的需求捏到了一起。Zigbee的网状网络让设备可以分散部署ESP32-C6的单芯片方案让开发门槛降到了一个人就能搞定的程度Home Assistant的ZHA集成让数据呈现变得几乎零配置。如果你也在找一条不依赖云端、不折腾路由器、安安静静看数据的路这套方案值得一试。

相关新闻

Windows服务提权实战:从web.config泄露到SYSTEM权限

Windows服务提权实战:从web.config泄露到SYSTEM权限

1. 项目概述:一次典型的Windows靶机渗透实战解析“Ethereal”是Hack The Box平台上一道中等难度的Windows靶机,编号No.78。它不是那种靠爆破或默认口令就能速通的入门题,也不像某些高阶靶机那样依赖冷门0day或复杂链式提权——它的设计逻辑非…

2026/10/14 16:25:37 阅读更多 →
51单片机Proteus仿真交通灯:状态机与定时器中断实战

51单片机Proteus仿真交通灯:状态机与定时器中断实战

简介:面向电子工程与嵌入式学习初学者的51单片机Proteus交通灯仿真资源,适合用于单片机课程设计、毕业设计或入门实践,重点解决定时器、中断、I/O端口控制以及Proteus仿真验证等问题,帮助读者掌握从电路搭建、程序编写到在线调试的…

2026/10/14 16:25:37 阅读更多 →
Linux下Modbus TCP服务端实战:寄存器规划与数据采集指南

Linux下Modbus TCP服务端实战:寄存器规划与数据采集指南

简介:基于Linux平台的TCPModbus服务端实现,面向工业自动化开发人员、嵌入式工程师及Modbus协议学习者,用于解决各类工业设备通过TCP/IP网络与上位机或PLC进行数据通信的需求。服务端覆盖输入寄存器(0x04)、离散输入&am…

2026/10/14 16:24:36 阅读更多 →

最新新闻

华为智慧园区通用场景解决方案:集成商视角的架构与落地指南

华为智慧园区通用场景解决方案:集成商视角的架构与落地指南

简介:PDF版《华为智慧园区通用场景解决方案》以“平台生态”为核心,面向园区管理者、智慧城市与产业园区规划人员,系统说明如何借助数字化手段重构园区运营与服务模式。内容从智能世界发展趋势切入,先梳理智慧园区作为城市落脚点的…

2026/10/14 17:07:25 阅读更多 →
从0到1实现无人自助拼豆系统 核心功能开发与落地部署实战指南

从0到1实现无人自助拼豆系统 核心功能开发与落地部署实战指南

随着线下DIY娱乐场景的爆发,拼豆作为低门槛、高趣味性的手工项目广受年轻用户欢迎,传统拼豆门店依赖人工收银、物料管理、工位调度,人力成本高且营业时间受限。无人自助拼豆系统通过软硬件一体化的设计,实现24小时无人值守&#x…

2026/10/14 17:07:25 阅读更多 →
eve Agent 的行为契约:深入剖析 eve Chat Template 的 agent/instructions.md

eve Agent 的行为契约:深入剖析 eve Chat Template 的 agent/instructions.md

人工智能AI AgentAgent 框架后端工具调用 【免费下载链接】eve The Open Framework for Building Agents 项目地址: https://gitcode.com/gh_mirrors/eve28/eve 点击查看 免费下载 本篇以 eve 开源仓库中 eve Chat Template(Next.js 聊天应用模板&#…

2026/10/14 17:07:25 阅读更多 →
CSV大文件分割工具:按行切分、编码处理与性能优化实践

CSV大文件分割工具:按行切分、编码处理与性能优化实践

简介:面向数据分析师、大数据工程师及日常处理海量表格的办公人员,这款CSV大文件分割工具主要解决超过百万行的大型CSV文件无法用常规编辑器或Excel顺畅打开的问题。工具支持按行数、文件大小或指定列值等条件灵活拆分,可将大表切成多个易于管…

2026/10/14 17:07:25 阅读更多 →
数据收集不是第一步,而是机器学习最危险的承重墙

数据收集不是第一步,而是机器学习最危险的承重墙

1. 项目概述:为什么“数据收集”不是第一步,而是最危险的一步很多人看到“机器学习应用程序构建流程”这个标题,第一反应是:哦,这是讲怎么搭模型、调参数、画ROC曲线的。但真正带过三个以上落地项目的人都清楚——80%的…

2026/10/14 17:07:25 阅读更多 →
上海中山公园壁挂炉维修|LG壁挂炉上门维修|温度传感器NTC故障排查|欧米到家咨询热线

上海中山公园壁挂炉维修|LG壁挂炉上门维修|温度传感器NTC故障排查|欧米到家咨询热线

🔥 壁挂炉是家庭中冬季24小时不间断供暖与供热水的核心设备,一旦突发不点火、不加热、漏水异响或显示屏报错,全家取暖和热水往往立刻受影响。上海家庭使用的壁挂炉品牌繁多,电控逻辑和燃烧结构差异较大。本文系统梳理上海地区壁挂…

2026/10/14 17:06:23 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 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/13 22:01:27 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/14 7:53:34 阅读更多 →