㈠ 请问一下,压力传感器将信号传给单片机,单片机产生信号控制报警电路的原理是什么最好有电路图。
压力传感器的信号是不能直接传给单片机的,也不是像LS说的直接进行AD转换。因为传感器输出的电信号是微弱的,必须要进行放大。
下面我开始给你详细一点讲。第一,什么是压力传感器,压力传感器是将压力值转换成电信号的设备,也就是说测到一定的压力值,就会输出一定值的电压或者电流信号,一般都会成正比关系,即压力越大输出的电信号越大。第二,压力传感器输出的电信号大都是微弱的,必须用到放大模块,一般可以采用运算放大器设计放大电路,或者仪表放大器(这是一个芯片),如果要求不高直接用运算放大器。第三,放大之后的电信号送给单片机,单片机对应电信号AD转换后的值判断压力大小。第四,根据单片机得到的压力值大小,看看你的压力警戒值是多少,比如气压,你要超过3MPa就属于危险值的话,你就可以写单片机程序,对这个值进行判断,如果超过这个值就进行报警。报警电路通过单片机的IO口连接蜂鸣器或者LED灯闪烁报警都可以。单片机写程序之类的你估计知道概念,我就不多说了。呵呵
㈡ 单片机连接ad芯片读取压力传感器的数值
这个没有现成公式,只能自己去做,告诉你具体方法:
1、找1公斤,5公斤,10公斤的秤砣(不一定是这几个值,根据自己做的的东西确定重量,别把东西压坏了)
2、从轻到重放上去,记录度数,看度数是不是线性的(一般在某个区间都是线性的,不然这芯片就没有市场了),如果是线性的那就好办了,你已经知道三组重量对应多少度数了,用数学的“两点法”能求出直线的斜率,这条直线函数就是你要的换算公式。如果不是线性的那你还需要更多的重物测出更多的数据,用 Matlab 等数学软件拟合出近似的曲线得到函数。
3、把得到的函数写入单片机,读取 AD,通过公式,算出重量,OVER
对第二点补充一下:比如1公斤放上去,测出度数是100,5公斤测出498,10公斤测出1002,可以大致认为1-100,5-500,10-1000,这样你就有了对应关系,度数除以100就是重量。就这样,如果追求精度,那还是老老实实多测几组数据,取个平均,再用 Matlab 算吧
祝你成功,如有不懂,请留言