来源:网络转载更新时间:2021-06-25 11:02:10点击次数:1871次
0引言
压力是现代工业生产过程中的一个重要参数,在生产过程中经常需要对压力进行检测和监控。压力测量有许多种方法,本文介绍的是一种压电转换装置,压力变化使传感器发生形变,从而使阻抗发生变化,同时输出一个变化的模拟电压信号。该信号经放大电路放大后输出至A/D转换器。使之转换成便于处理的数字信号,该数字信号传送给单片机,最终LED显示压力大小。
1系统概述
本设计是一个基于C8051F410单片机的压力测量系统。本设计由称重传感器,放大电路,A/D转换电路,单片机电路,显示电路,通讯接口电路,稳压电源电路等设计内容组成。当物体放在秤盘上时,压力变化使传感器发生形变,从而使阻抗发生变化,同时输出一个变化的
模拟电压信号。该信号经放大电路放大后输出至A/D转换器。使之转换成便于处理的数字信号,该数字信号传送到CPU。数据经过处理、程序运行后在LED上显示出来。同时该设计是一款测量精度高、支持RS485硬件接口和MODBUS工业现场总线协议的压力控制模块。该压力控制模块能够对压力进行实时采集,采用支持MODBUS工业现场总线协议的RS485串行接口与PC机连接。
2主要电路模块设计
2.1主控电路
C8051F410单片机是整个系统的控制核心。C8051F410基本外围接口电路是保证系统正常工作的辅助电路,包括C8051F410片上系统工作所需要的JATG接口、电源退耦、基准滤波、上电复位等基本外围电路。
2.2称重传感器的设计
称重传感器实际上是一种将质量(压力)信号转变为可测量的电信号输出的装置。称重传感器主要由弹性体、电阻应变片、电缆线等组成,内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出电压正比于应变片发生应变时产生的电阻变化量。
2.3信号采集调理电路
数据采集模块分为3个部分:称重传感器、前级放大器和A/D转换器传感器选用压力传感器,为双孔悬臂梁形式。前级放大器用AD620内部采用差动输入,共模抑制比高,差模输入阻抗大,增益高,精度也非常好,且外部接口简单,且放大器的增益是可以改变的。压力传感器的输出信号输入至AD620同相和反相输入端,AD620可对差模信号进行放大,放大倍数由AD620的1脚与8脚并接了的一个可调电阻RG决定。由于AD620在单极性电源供电时有零点漂移,因此本电路设计采用双极性电源供电,同时在电源两端加上滤波电容,确保供电稳定。选用12位逐次比较式ADC,此方案经小信号放大、调理电路可直接连接单片机,也可以可满足精度要求,而C8051F410单片机的ADC0子系统集成了一个27通道的模拟多路选择器和一个200ksps的12位逐次逼近寄存器型ADC。ADC中集成了跟踪保持电路、可编程窗口检测器和硬件累加器。经过计算满足精度要求。故本设计选用C8051F410单片机内部A/D。
3MODBUS协议
MODBUS通讯系统是一种用于工业通讯的分布式控制系统。该系统可靠性高,适应性强,可以在任何工业领域内控制各种生成过程和作业。其数据通讯系统协议控制着网络内一切设备所共用的语言结构或报文格式。协议是系统操作的关键,协议决定如何建立或中断主从设备之间的关系,如何使发送和接收装置协调一致,如何井然有序地交换报文,如何检测错误。
MODBUS通讯协议有两种消息帧格式:ASCII和RTU帧格式。
ASCII消息以冒号字符开始,以回车换行符结束,其它域使用的传输字符为十六进制;RTU消息则以传递一段空闲时间为开始和结束,这段时间不小于3.5倍的字符发送时间T,一般取4T。本设计在通讯协议中只用了两个命令,03号命令和06号命令。他们都属于公共功能码。03号命令要求发送数据,06号命令代表要求从机原样数据发回作为应答。
4调试处理
数据处理是将A/D采集的数据进行处理,A/D转换所得的值的精确性与很多因素有关,包括A/D元件的精度、电路的焊接情况、环境温度的变化等。这些因素的影响直接导致了A/D转换的数据围绕着某个中心值上下波动。这就需要对采集的数据进行软件滤波。
为了能够使变送器的输出和被测量对应上,要对信号进行归一化处理,也就是标定。具体的做法是使用二次差值法对标准信号进行定标。要实现高的拟合精度,拟合多项式的次数要很高,对于单片机来说,由于速度和存储容量等原因,实现这样的运算很难。这里采用朗格朗日二次插值的方法对信号数据进行处理。
5总结
本设计是基于MODBUS通讯协议的称重仪设计。在设计过程中以压力采集及检测为主要目标,利用电阻应变片阻值随压力变化而变化的性质,对压力进行采集调理经由单片机的控制传出,将采集的压力通过单片机的处理后传输给数码管显示,同时也支持RS-485硬件接口通过MODBUS通讯协议传给上位机。测量压力误差不大于5g。该设计系统具有操作方便、控制灵活、移植性强等优点。
本文源于网络转载,如有侵权,请联系删除
×