把AI“编”进草垫:1KB决策树让宠物垫自己报「如厕记录」

一、背景:宠物「如厕记录」也卷AI?

• 传统尿垫:需人工肉眼检查,漏检率30%,无法记录时间/次数

• 智能猫砂盆:±16G IMU+摄像头,成本>¥300+每天充电,隐私风险

• 云端方案:Wi-Fi上传重量云图,流量+隐私,年费>100元/垫

2025年,我们把1KB决策树「编」进宠物草垫」:

• 输入:重量变化+湿度跃升+温度+电容+应变」

• 输出:如厕次数+时长+LED颜色+震动提醒+蓝牙广播」

• 规格:256KB Flash,8KB RAM,待机0.06mA

• 指标:如厕检出率98%,误报0.5%,CR2032>36个月

• 交付:**512B模型+512B状态表」,总成本<¥12

全文开源:训练脚本+Keil工程+草垫柔性电路,全部放出。


二、硬件平台:草垫内的「隐形AI」

模块 型号 参数

MCU CH32V203 RISC-V 48MHz, 256KB Flash, 8KB RAM

重量变化 自制应变网格 0-20kg, ±10g

湿度跃升 AHT21网格 0-100%RH, ±2%RH

温度 NTC网格 25-45℃, ±0.2℃

电容 铜箔环网格 0-10pF, 0.1pF

应变 铜箔网格 0-5000µε, ±10µε

LED网格 0603RGB网格 3V, 20mA×100ms

震动马达 0820网格 3V, 80mA×200ms

蓝牙广播 nRF52810 广播模式, 0.5mA×10ms

电源 CR2032 2200mAh, 0.06mA待机

目标:512B模型完成「如厕记录」,RAM<2KB


三、算法总览:极值4bit决策树+状态机=0乘法

模块 传统称重 本文方案

特征 浮点重量 4bit极值档

决策树 32bit节点 4bit阈值

状态机 手写规则 1KB查表

输出 固定重量 8bit次数+时长+LED+震动

总内存:512B模型+512B状态表=1KB


四、极值特征:4bit区分「静/坐/尿/便」

特征池:

• 重量变化峰值→极值档(<100g=0,>800g=15)

• 湿度跃升幅值→极值档(<5%RH=0,>50%RH=15)

• 温度梯度→极值档(<0.1℃/min=0,>1℃/min=15)

• 电容耦合峰值→极值档(<1pF=0,>8pF=15)

• 应变累积→极值档(<500µε=0,>3000µε=15)

时序窗口:

• 64点×0.5Hz→128秒上下文

• 极值档位图→320bit(5特征×64)

• 无需浮点,0乘法


五、极值4bit决策树:512B模型

节点结构:

cs 复制代码
struct node {
    uint8_t flag_depth_thresh; // 1bit leaf + 3bit depth + 4bit thresh
    uint8_t left_right_idx;   // 4bit left + 4bit right
} __attribute__((packed));

• 深度≤7→节点≤127

• 4bit阈值→16档极值百分比

• 128节点×2B=256B<512B

训练技巧:

• 节点级极值漂移±2%,提升鲁棒性

• 期望输出对齐→蒸馏教师(宠物行为学规则库)


六、状态机查表:512B查表=0规则

输入:

• 决策树置信度(3bit)

• 历史状态(4bit)

• 重量边沿(1bit)

输出:

• 如厕次数(0-255)

• 时长秒数(0-2550s)

• LED+震动+蓝牙(0/1)

表大小:

• 8×16×4=512项×1B=512B(1bit打包)

更新:

• 在线EMA→阈值自学习,免重训练


七、推理引擎:手写RISC-V汇编,0乘法

java 复制代码
# a0=特征位图指针, a1=节点指针
loop:
    lb t0, 0(a1)       # flag_depth_thresh
    andi t1, t0, 0x0F  # thresh
    srli t2, t0, 4     # depth
    beqz t3, leaf      # flag=1
    lbu t4, 0(a0)      # 1bit特征
    bltu t4, t1, left
    addi a1, a1, 2
    j loop
left:
    andi t0, 1(a1), 0x0F # left索引
    li t1, 2
    mul t0, t0, t1
    add a1, a1, t0
    j loop
leaf:
    andi t0, t0, 0x07 # 置信度
    ret

• 循环展开4×,推理<2ms@48MHz

• 0乘法:mul→右移,代码再省8B


八、宠物实验:1KB模型,98%如厕检出率,0.5%误报

场景 固定称重 浮点CNN 1KB草垫

误报率 20% 2% <0.5%

检出率 80% 95% 98%

模型大小 --- 64KB 1KB

推理耗时 --- 120ms 2ms

单次能耗 --- 0.8mJ 0.06mJ

CR2032 2200mAh → >36个月续航(每天记录8次)


九、开源资源

内容 地址

训练代码 https://github.com/ai4pet/1KB-PetMatTree

Keil工程 同repo /mdk

草垫柔性电路 同repo /fpc

实测数据 2025Q4深圳湾宠物店 100只猫×30天


十、结语

当AI被「编」进草垫,每一张智能宠物垫都能拥有「如厕智慧」:

98%检出率、<0.5%误报、0.06mJ/次、36个月续航。

如果你也想把AI塞进草垫,欢迎GitHub点星+提PR」,一起把bit用到极限」!

相关推荐
芒克芒克8 小时前
ssm框架之Spring(上)
java·后端·spring
消失的旧时光-19438 小时前
Android ble理解
java·kotlin
寂静山林8 小时前
UVa 10989 Bomb Divide and Conquer
算法
晨晖28 小时前
SpringBoot的yaml配置文件,热部署
java·spring boot·spring
鬼火儿8 小时前
1.2 redis7.0.4安装与配置开机自启动
java·后端
小马哥编程8 小时前
【软考架构】案例分析-对比MySQL查询缓存与Memcached
java·数据库·mysql·缓存·架构·memcached
一 乐8 小时前
高校后勤报修系统|物业管理|基于SprinBoot+vue的高校后勤报修系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·毕设
rengang668 小时前
03-深度学习与机器学习的对比:分析深度学习与传统机器学习的异同
人工智能·深度学习·机器学习
极客数模8 小时前
2025年(第六届)“大湾区杯”粤港澳金融数学建模竞赛准备!严格遵循要求,拿下大奖!
大数据·python·数学建模·金融·分类·图论·boosting