案例描述:
想做一个单片机控制、LCD1602显示车速的东西,原计划是:在车轴上设置4个磁粒,用霍尔检测,用单片机外部中断计数来计算获取速度,程序已经写好,基本功能已经实现。 但介于在车半轴上磁粒不方便安装 且 从车外到驾驶室走线不太方便,所以决定使用车内仪表盘上的速度信号。 因为本人不会CAN协议编程,所以无法从车载ECU获取速度信息。只能在仪表盘上找到了车速传感器的信号线。经测,车轮每转1周,该信号线有4个脉冲输出,低电平电压为0.0V,高电平电压6.5V左右。 本人将该车速信号线直接连在了89C51单片机的外部中断引脚(P3.2口)上,单片机的5V供电是来自车载的12V降压模块,所以地线都是共通的。单片机的中断触发是上升沿触发。接上车速信号后的现象是: 1、在信号输出为0V时,也就是一直低电平时,单片机上的速度显示不稳定,理论应该速度为0,但它有时候1,3,5、0无规律的跳动,感觉是车速输出的信号不稳定,有波动或者干扰,但是万用表测的电压一直是0,也有可能是小的波动或者干扰电压测不到影响到了中断信号的采集。 2、当车行驶起来单片机测到的车速比实际车速快,不知道是不是现象1造成的。 3、车速线接上单片机后,在行驶中车的公里表有时候数字会突然增大,不知道什么原因。
个人想法:
鉴于以上现象及本人臆想,感觉造成这些现象的原因可能是:1、车速电压过高。正常单片机工作的电压理论上不超过5.5V,但这个车速信号高电平达到了6.5V。 2、信号波动或者干扰大,有可能是单片机和车体共用地线或者其它原因造成的吧,这个实在不懂,水平有限。 通过上述的想法,本人想采用一个光耦隔离电平转换的电路,不知道能不能解决上述现象,实现基本功能。
提问问题:
1、如果采用光耦,应该选用什么型号的光耦器件?(信号转换频率按120km/h算,轮周长按1.7m,轮转1周是4个脉冲,频率约为每秒78,不知道这样算对不,反正相对于20KHz小多了)。 2、光耦电路中的电阻的阻值怎么计算? 3、最好给画一个简单的电路图。 4、请试分析讨论一下上述现象的原因及利弊。
最后感谢大家。
|