基于PIC16F877A单片机的高准确度数字称重系统设计.docx

上传人:李司机 文档编号:1130768 上传时间:2022-06-29 格式:DOCX 页数:7 大小:82.45KB
返回 下载 相关 举报
基于PIC16F877A单片机的高准确度数字称重系统设计.docx_第1页
第1页 / 共7页
基于PIC16F877A单片机的高准确度数字称重系统设计.docx_第2页
第2页 / 共7页
基于PIC16F877A单片机的高准确度数字称重系统设计.docx_第3页
第3页 / 共7页
基于PIC16F877A单片机的高准确度数字称重系统设计.docx_第4页
第4页 / 共7页
基于PIC16F877A单片机的高准确度数字称重系统设计.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《基于PIC16F877A单片机的高准确度数字称重系统设计.docx》由会员分享,可在线阅读,更多相关《基于PIC16F877A单片机的高准确度数字称重系统设计.docx(7页珍藏版)》请在三一办公上搜索。

1、一款基于 PIC16F877A 单片机的高准确度数字称重系统设计关键词:数字称重系统 PIC16F877A 单片机摘要:本文设计了一款高准确度数字称重系统。该设计利PIC16F877A单片机作为微处理器,在称重数据处理中,应用了混合滤波算法,提高了称重系统的稳定性、准确度。测试表明:该称重系统能够实现多通道称重系统的数字化处理,并符合 OIML R76中的 3级衡器的允差要求.另外,在研究有关此课题的报告时,我还查找了其中单片机,射频识别技术,PLC,模电转换等的相关知识以助于研读此报告。引言:称重计量技术的应用颇为广泛,遍布于社会经济的各行各业,在生产过程或贸易结算中,对称量技术的要求越来越

2、高。而在我国,目前大多使用的仍为模拟式的电子称重系统,纯数字式的称重系统由于成本问题,在商业及工业生产中的应用不为广泛,为了解决现有的模拟称重系统存在各类误差补偿困难、稳定性和可靠性低以及难以实现在线监测等诸多问题,且考虑到纯数字式称重系统的成本,本文设计了一种基于 PIC16F877A单片机的高准确度远程数字化称重系统。1 系统总体设计系统主要包括模拟称重传感器部分、数字化部分、通信接口部分及仪表数据处理部分。模拟称重传感器的弹性体在外力的作用下,产生弹性形变,从而使得粘贴在弹性体表面的电阻应变片产生变形,电阻应变片的电阻随之变化,经过惠斯顿电桥电路将力的变化转换为电信号的变化,输出 mV

3、级的信号。该信号经过放大再进行 A/D 转换,然后通过单片机对传感器数据进行各种补偿修正,包括零点、温度、灵敏度、非线性、蠕变等补偿,从而使得称重系统的各项技术指标达到规定的准确度,最后将补偿完的称重数据信号以 RS-232 信号格式输出 1。2 基本硬件电路设计系统处理器采用美国 Microchip 公司生产的 PIC16F877A 单片机,其主频为 20MHz,内部集成了 8k14 位 Flash 程序存储器和 368 字节数据存储器,并拥有 14 个中断源,可以完全满足本项目的需要。文中设计的称重系统称量相对误差在 0.05% 以内,则数据采集电路要保证 A/D 转换器无噪声分辨率输出在

4、21 位或以上,综合考虑多通道高精度-型 A/D 转换器的失调、动态噪声、线性度和温度漂移等技术指标,选用了 24 位多通道高精度 A/D 转换器 AD7718。3软件设计系统采用 PIC16F877A 单片机作为微处理器,整个系统采用模块化设计,由主程序、数据采集、滤波、数据处理、通信及智能称重子程序等构成。单片机上电后先初始化,其中包括寄存器、RAM、串口、定时器及端口的初始化,然后对 RAM、ROM、EEPROM 进行测试,包括 RAM 的读写,ROM 及 EEPROM 的测试,测试不正常则置出错标志。如果测试正常则读取 EEPROM 中的参数到 RAM 中,然后读取AD7718 中出来

5、的 A/D 值。随即进行滤波处理,再判断是否在正常*围之内,如是则进入补偿程序进行补偿,结果输出到数字化模块的屏幕端,并将结果按通讯协议通过 RS232 总线输出到上位机,输出同时判断数据是否有效,如无效则置出出错标志,如果有效则重新读取A/D 值进行下一个数据的处理。电子称重系统在称量过程中由于输出的模拟信号较弱,且称重设备所处环境条件通常不为理想状态,常伴有各种频率的噪声,尽管在本设计中,AD7718 承担了部分的针对高频噪声干扰的滤波功能,但不能排除低频噪声的干扰,为了更好抑制干扰对 A/D 转换结果的影响,本项目采用了数字滤波的方法。考虑到 PIC16F877A 单片机处理速度和RAM

6、空间,本项目采用了移位平均滤波、去极值平均滤波相结合的混合滤波算法来对 A/D转换值进行滤波处理,该算法的实现过程为:首先在 RAM 中建立两个长度为 N(在本项目中,考虑到单片机的能力,取 N=8)的缓冲区,一个用来作为备份队列,另外一个用来实现队列移位。每次采样之前先把备份缓冲区的数据对应调入移位缓冲区,并丢掉队首数据(最早进入队列的那个数据),再做一次向前的移位操作,最后把新采样的数据补充队尾,这样就保证了能够实现滤波对新的采样值的操作,把新生成的队列备份。为了更好抑制脉冲干扰,必须对新的队列排序,剔除新产生队列里的最大值和最小值,然后求余下 N-2 个值的算术平均值就为本次采样 A/D

7、 值的滤波结果。当然为了进一步提高滤波效果,在求余下 N-2 个值的算术平均值之前也可以在增加一次剔除队列里的最大值和最小值。对于称重传感器,由于一般采用全桥工业标准,由温度变化引起的应变输出非线性,在全桥传感器中,己得到补偿。但是,实际使用中称重传感器不可避免的存在零漂和稳漂等问题,且其大小在 uV 级以上。而这一漂移信号叠加到实际信号中,就会造成测量误差。故本文中的补偿子程序主要是指对称重数据进行零点漂移的处理。零点稳定是影响称重系统准确度非常重要的因素,传感器的零漂,即零点漂移,是指当外界温度保持恒定时,传感器未承受载荷却有一个随时间增加而变化的输出。零输入信号时,输出可能不为零,为消除

8、这个零位漂移值,采用零位补偿技术。一般在称重传感器中,零点温度补偿采用了通过串连在桥路上的温度系数大的铜丝等来补偿温度带来的误差,针对本系统的特点,本补偿模块采取了开机清零:系统启动后自动检测称台是否有物体,若有就把此时的值保存在 RAM 中,每次获取物体重量之后由系统自动减去作为显示结果。零位跟踪:在工作状态系统不断监测称重结果是否小于设定的阈值,若小于说明此时状态称台空载,现在为零位,显示结果为零。若工作状态监测称重结果大于设定阈值,操作人员确认此时称台没有被称重物体,可以在此时有操作人员按下置零按键手动置零,并把此时的误差也保存在 RAM 中,待以后的称重过程中在减去这个值。本项目在实现

9、智能称重功能使用了基于RS-232 接口,并编写了基于 PC 机的数据处理软件,来实现数据监控、数据存储、程序设定及系统维护等功能。下位机的智能称重即包含了故障诊断功能,该功能可以通过仪表的自诊断完成,自诊断主要包含以下几个方面:仪表内部存储器检查、显示屏检查、通讯接口检查。整个称重系统部分诊断的主要思路是通过读取下位机的输出,将下位机的输出和系统设定的参数比较来判断系统是否有故障。如下位机各传感器 AD码是否有超出*围的输出(是否有超载或欠载),检查每个传感器的 AD 码重量分配关系是否发生重大变化,是否零点与初始数据发生相对较大的漂移等,如若有以上情况,系统将会给出相关的提示,提示使用人员

10、对相关部进行检查以维护整个系统的正常工作4 实验结果:文中设计的智能数字称重系统,根据OIML-R76非自动衡器国际建议,该系统的 4 路独立称重误差应都能满足级衡器的允差要求。故对由 4 路独立的模拟信号输入的该系统进行测试,每个通道的模拟信号由一个制作完好的秤台中配有的模拟称重传感器产生,其中 ABC 三通道最大秤量为 100kg,D通道最大秤量为 1000kg。测试前先对各独立系统进行 1/2 最大秤量及最大秤量两个秤量点进行标定,然后进行测试,测试数据如表所示。由表可见,该多通道数字称重系统每通道的结果都满足 OIML-R76 中级衡器的允差要求。5 总结文中设计了一种基于 PIC16

11、F877A 单片机的智能数字称重系统,采用了新的硬件电路计,与以往产品相比具有更好的综合性能,该方案已经在*精联电子衡器*得到应用,实验结果表明,该系统测量示值误差及重复性误差较小,能够满足一定的市场需求。其他相关基础知识:1.单片微机是早期 Single Chip Microputer 的直译,它忠实地反映了早期单片微机的形态和本质。单片微型计算机简称单片机( Single Chip Microputer ),又称微控制器(Microputer Unit)。将计算机的基本部件微型化,使之集成在一块芯片上。片内含有CPU、ROM、RAM、并行I/O、串行I/O、定时器/计数器、中断控制、系统时

12、钟及总线等。随后,按照面向对象、突出控制功能,在片内集成了许多外围电路及外设接口,突破了传统意义的计算机结构,发展成microcontroller 的体系结构,目前国外已普遍称之为微控制器MCU(Micro Controller Unit)。2.I/O是input/output的缩写,即输入输出端口。每个设备都会有一个专用的I/O地址,用来处理自己的输入输出信息。CPU与外部设备、存储器的连接和数据交换都需要通过接口设备来实现,前者被称为I/O接口,而后者则被称为存储器接口。存储器通常在CPU的同步控制下工作,接口电路比较简单;而I/O设备品种繁多,其相应的接口电路也各不相同,因此,习惯上说到

13、接口只是指I/O接口。3.继电器:主要作用编辑继电器是具有隔离功能的自动开关元件,广泛应用于遥控、遥测、通讯、自动控制、机电一体化及电力电子设备中,是最重要的控制元件之一。继电器一般都有能反映一定输入变量(如电流、电压、功率、阻抗、频率、温度、压力、速度、光等)的感应机构(输入部分);有能对被控电路实现“通”、“断”控制的执行机构(输出部分);在继电器的输入部分和输出部分之间,还有对输入量进行耦合隔离,功能处理和对输出部分进行驱动的中间机构(驱动部分)。4模电转换:原理编辑简介A/D转换器是用来通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、

14、声音等非电信号。但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。A/D转换后,输出的数字信号可以有8位、10位、12位、14位和16位等。A/D转换器的工作原理主要介绍以下三种方法:逐次逼近法,双积分法,电压频率转换法逐次逼近式A/D是比较常见的一种A/D转换电路,转换的时间为微秒级。采用逐次逼近法的A/D转换器是由一个比较器、D/A转换器、缓冲寄存器及控制逻辑电路组成,如图所示。逐次逼近式AD转换器原理图基本原理是从高位到低位逐位试探比较,好像用天平称物体,从重到轻逐级增减砝码进行试探。逐次逼近法转换过程是:初始化时将逐次逼近寄存器各位清零;转换开始

15、时,先将逐次逼近寄存器最高位置1,送入D/A转换器,经D/A转换后生成的模拟量送入比较器,称为 Vo,与送入比较器的待转换的模拟量Vi进行比较,若VoVi,该位1被保留,否则被清除。然后再置逐次逼近寄存器次高位为1,将寄存器中新的数字量送D/A转换器,输出的 Vo再与Vi比较,若VoVi,该位1被保留,否则被清除。重复此过程,直至逼近寄存器最低位。转换结束后,将逐次逼近寄存器中的数字量送入缓冲寄存器,得到数字量的输出。逐次逼近的操作过程是在一个控制电路的控制下进行的。采用双积分法的A/D转换器由电子开关、积分器、比较器和控制逻辑等部件组成。如下图所示。基本原理是将输入电压变换成与其平均值成正比

16、的时间间隔,再把此时双积分式AD转换器原理图1间间隔转换成数字量,属于间接转换。双积分法A/D转换的过程是:先将开关接通待转换的模拟量Vi,Vi采样输入到积分器,积分器从零开始进行固定时间T的正向积分,时间T到后,开关再接通与Vi极性相反的基准电压VREF,将VREF输入到积分器,进行反向积分,直到输出为0V时停止积分。Vi越大,积分器输出电压越大,反向积分时间也越长。计数器在反向积分时间内所计的数值,就是输入模拟电压Vi所对应的数字量,实现了A/D转换。双积分式AD转换原理图采用电压频率转换法的A/D转换器,由计数器、控制门及一个具有恒定时间的时钟门控制信号组成,如电压频率式AD转换器原理图

17、图4.23所示。它的工作原理是V/F转换电路把输入的模拟电压转换成与模拟电压成正比的脉冲信号。电压频率转换法电压频率转换法的工作过程是:当模拟电压Vi加到V/F的输入端,便产生频率F与Vi成正比的脉冲,在一定的时间内对该脉冲信号计数,时间到,统计到计数器的计数值正比于输入电压Vi,从而完成A/D转换。参考文献1 李银伟 . 电阻应变式数字智能称重变送器设计 D. 硕士学位论文 . 华东交通大学 ,2009,P29.2 关晓丽 . 基于 PIC16F877A 的温室自动控制系统的研究 D. 硕士学位论文 . *理工大学,2003.08,P32-P33.3OIML R76-1:2006(E) Non-automatic weighing instrumentsS.4百度百科

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号