如图 使用深度传感器+解析版经常经常出现读取数据为很大的负值,项目中使用了继电器控制电机和电磁阀,继电器开启和关闭时经常会导致深度传感器出现上述错误,为了排除继电器触点的浪涌电流已经增加了灭弧器并入触电两端,选择了串联的150欧姆电阻和2.2uF电容,但没有作用。平时使用能够正常读数,但一旦出错后只能通过重新上电才能恢复正常。
看起来是继电器的动作对传感器的采集造成了影响,供电这部分现在是使用什么供电的?可以用示波器看下在继电器动作时5V的波形吗?
解算板在每次重新上电后会把传感器当前的读数标定为串口输出深度的零点。
例如上电时,传感器测量到的深度为1m,则 串口输出的深度值=当前传感器的测量值-1m
所以重新上电后输出的深度信息都是在0m附近。
改善的方法可以尝试下:
继电器线圈并接续流二极管。
单片机供电部分加滤波。
单片机和大功率器件的地线单独接地。
我这里深度传感器是通过单片机本身有的5V输出供电。继电器并接续流二极管了,单片机供电部分滤波具体应该怎么实现?如果单片机和大功率器件地线单独接地,就意味着是需要单独给深度传感器供电吗?
目前的情况就是,继电器的开关无规律的会导致解算板出错,正常情况下解算板的指示灯是闪烁的,出错时指示灯常亮或常灭