4、传感器选型与接口设计:光电传感器、接近传感器、称重传感器、编码器;数字/模拟接口设计,信号调理电路
传感器选型,说白了就是给分拣机装上「眼睛」和「手」。
我做了这么多年嵌入式,发现很多项目翻车,不是死在算法上,而是死在传感器选型上。你想想看,传感器信号都读不准,后面再好的控制算法也是白搭。
这一章,咱们就聊聊分拣机里最常见的四类传感器,以及它们背后的接口设计。嗯,这里要注意,我讲的都是实战中踩过的坑。
4.1 光电传感器:分拣机的「眼睛」
光电传感器在分拣机上主要干两件事:检测物体有没有到位,以及区分颜色或材质。
我个人习惯把光电传感器分成三类:
- 对射式:发射器和接收器分开。检测距离远,抗干扰强。我在项目中遇到过,用在长距离传送带上,效果很稳。
- 漫反射式:发射和接收在一起,靠物体反射光。安装方便,但容易受颜色影响。黑色物体经常检测不到,这个坑我踩过。
- 镜面反射式:需要配合反光板。比漫反射稳定,比对射式好安装。折中方案,我经常推荐。
4.2 接近传感器:非接触检测的利器
接近传感器,说白了就是不用碰到物体就能检测到它。分拣机上常用的是电感式和电容式。
电感式接近传感器:只检测金属物体。分拣金属件时首选。我记得有一次,客户非要用电感式检测塑料件,结果死活没信号。后来换了电容式才搞定。
电容式接近传感器:能检测金属、塑料、液体等。但容易受环境影响,湿度大时容易误触发。
| 类型 | 检测对象 | 检测距离 | 抗干扰能力 |
|---|---|---|---|
| 电感式 | 金属 | 1-60mm | 强 |
| 电容式 | 几乎所有材料 | 1-25mm | 中等 |
4.3 称重传感器:分拣机的「手感」
称重传感器,说白了就是测重量。分拣机上常用的是电阻应变式。
它的原理很简单:金属受力变形,电阻值跟着变。但实际用起来,坑不少。
选型要点:
- 量程:选实际称重量的1.5倍。别问我为什么,我曾经选了个刚好够的,结果一冲击就坏了。
- 精度:分拣机一般0.1%就够了。太高了反而容易受振动干扰。
- 防护等级:至少IP65。分拣现场灰尘大,防护不够很快就废了。
4.4 编码器:分拣机的「关节」
编码器用来测位置和速度。分拣机上,电机和传送带都离不开它。
我常用的编码器有两种:
- 增量式编码器:输出脉冲,通过计数算位置。便宜,但断电后位置丢失。每次开机要回零。
- 绝对式编码器:直接输出位置值。贵,但断电不丢位置。分拣机要求高精度定位时,我建议用这个。
接口类型:
- 推挽输出:通用,但长距离传输不行。
- 差分输出(RS-422):抗干扰强,能传100米以上。分拣机现场干扰大,我推荐用这个。
- SSI接口:同步串行接口,适合绝对式编码器。
4.5 数字/模拟接口设计
传感器输出信号,要么是数字的,要么是模拟的。接口设计,说白了就是让MCU能正确读到这些信号。
4.5.1 数字接口
数字接口简单,就是高低电平。但要注意:
- 电平匹配:传感器输出5V,MCU是3.3V,中间要加电平转换。我习惯用TXS0108E,便宜又好用。
- 上拉/下拉电阻:开漏输出的传感器,必须加上拉电阻。一般4.7kΩ到10kΩ。
- 去抖处理:机械触点类的传感器,输出会有抖动。软件里加个10ms的去抖,能省很多麻烦。
4.5.2 模拟接口
模拟接口就复杂多了。称重传感器、部分光电传感器都是模拟输出。
关键参数:
- ADC分辨率:分拣机一般12位就够了。要求高的话用16位。
- 采样率:称重信号变化慢,10Hz就够。编码器信号快,可能要100kHz以上。
- 参考电压:一定要稳定。我见过有人直接用MCU的VDD做参考,结果电压一波动,数据全飘了。
4.6 信号调理电路
信号调理,说白了就是把传感器信号「收拾」一下,让MCU能好好读。
常见的调理电路:
- 放大电路:称重传感器输出只有几mV,必须放大。我常用仪表放大器AD620,增益用电阻调,很方便。
- 滤波电路:分拣机现场有电机、变频器,干扰很大。一阶RC低通滤波,截止频率设到信号频率的10倍左右。
- 电平移位:有些传感器输出有负电压,MCU的ADC只能读正电压。用运放做个加法器,把信号抬到0V以上。
实战电路示例(称重传感器调理):
// 伪代码:称重传感器数据读取
// 使用HX711专用ADC芯片
#include <HX711.h>
HX711 scale;
void setup() {
scale.begin(DOUT_PIN, SCK_PIN);
scale.set_scale(2280.f); // 校准系数,实际标定得到
scale.tare(); // 去皮
}
void loop() {
float weight = scale.get_units(10); // 读10次取平均
// weight单位是克
Serial.println(weight);
}
信号调理的坑:
- 阻抗匹配:传感器输出阻抗高,ADC输入阻抗低,信号会衰减。加个电压跟随器就能解决。
- 噪声抑制:电源上加磁珠和电容。模拟信号用屏蔽线,单端接地。
- 温度漂移:运放和电阻都有温漂。选低温漂的器件,或者软件里做温度补偿。
嗯,传感器选型和接口设计,说到底就是「匹配」两个字。传感器和MCU匹配,信号和电路匹配,成本和性能匹配。我见过太多人,传感器选得挺好,结果接口电路一塌糊涂,最后整个项目重来。
你想想看,分拣机一天要处理几万件货物,传感器要是三天两头出问题,那还怎么玩?所以,这一章的内容,值得你多看几遍。