TouchScale 电容传导要求——不是所有东西放上去都能读重量
3D Touch 传感器的工作原理
iPhone 3D Touch 屏幕下方有一层电容矩阵——每个像素点旁边都有一个微型电容器。当你手指按屏幕时,手指改变了这个电容器的电容值,系统就能检测到「这里被按了」以及「按得有多用力」。
TouchScale 网页版的原理就是:读取电容变化量 → 换算成压力值 → 换算成克重。
问题来了:只有电容传导材质才能改变电容器的数值。非导体放上去,电容不变化,传感器就当「屏幕上没东西」。
能稳定读取的材质
| 材质 | 例子 | 传导性 | 读数表现 |
|---|---|---|---|
| 金属 | 硬币、螺丝、回形针、钥匙 | 极佳 | 读数稳定,推荐首选 |
| 水(含溶解物) | 饮料、盐水、带汁水的水果 | 良好 | 读数稳定 |
| 潮湿物体 | 带露水的叶子、湿润的泥土 | 良好 | 基本可读 |
| 人体/动物 | 手指、舌头、小虫子(导电体) | 极佳 | 但不推荐 |
| 碳基固体 | 铅笔芯、石墨 | 较好 | 基本可读 |
读不准或读不出的材质
| 材质 | 例子 | 问题 | 解决办法 |
|---|---|---|---|
| 干塑料 | 矿泉水瓶、塑料块 | 传导差或无 | 垫一个硬币(先去皮),把塑料放硬币上 |
| 陶瓷/瓷器 | 茶杯、碗、盘子 | 传导差 | 同上,金属底垫 |
| 泡沫 | 快递泡沫块 | 几乎绝缘 | 金属底垫 + 轻放 |
| 干木头 | 木块、筷子 | 传导差 | 金属底垫 |
| 干燥纸张 | 打印纸、纸巾 | 传导差 | 轻微湿润一下或金属底垫 |
| 玻璃 | 干净干燥的玻璃杯 | 传导差 | 哈气湿润表面后再试 |
| 油类 | 食用油、汽油 | 绝缘 | 无法直接测,装在金属容器里测容器+油,减去容器重量 |
金属底垫法(万能解决方案)
如果你要称的物体不导电,用下面这个方法几乎能解决所有情况:
- 找一个已知重量的金属物体(一元硬币 ≈ 6.05g,五角硬币 ≈ 3.8g)
- 把金属物体放屏幕上
- 点「去皮」——此时读数归零(金属重量被扣除)
- 把要称的不导电物体放在金属物体上面或旁边
- 读数就是不导电物体的重量
原理:金属物体先传导压力,上面的不导电物体压在金属上,金属把压力传递给传感器。
怎么判断某个物体能不能称
最快的测试方法:把物体轻轻放在屏幕上,看读数有没有变化。
- 读数从 0.00g 变成非零值 → 可以称
- 读数一直显示 0.00g → 用金属底垫法
- 读数变成 NOT SUPPORTED → 设备不支持 3D Touch,不是物体的问题
AI 相机不受这个限制
App Store 版的 AI 相机模式不受电容传导限制——它是用摄像头看物体,不管物体导不导电都能估算重量。但精度比硬件压感差,适合对精度要求不高的场景。