首页 | 期刊简介 | 编辑部 | 广告部 | 发行部 | 在线投稿 | 联系我们 | 产品信息索取
2024年12月26日星期四
2011年第01期
 
2010年第12期
 
2010年第11期
2010年第11期
 
2010年第10期
2010年第10期
 
2010年第09期
2010年第09期
 
2010年第09期
2010年第08期
 
2010年第07期
2010年第07期
 
2010年第06期
2010年第06期
 
2010年第05期
2010年第05期
 
2010年第04期
2010年第04期
 
2010年第03期
2010年第03期
 
2010年第02期
2010年第02期
 
2010年第01期
2010年第01期
 
2009年第12期
2009年第12期
 
2009年第11期
2009年第11期
 
2009年第10期
2009年第10期
 
2009年第9期
2009年第9期
 
2009年第8期
2009年第8期
 
2009年第7期
2009年第7期
 
2009年第6期
2009年第6期
 
2009年第5期
2009年第5期
 
2009年第4期
2009年第4期
 
2009年第3期
2009年第3期
 
2009年第2期
2009年第2期
 
2009年第1期
2009年第1期
 
2008年第12期
2008年第12期
 
2008年第11期
2008年第11期
 
2008年第10期
2008年第10期
 
2008年第9期
2008年第9期
 
2008年第8期
2008年第8期
 
2008年第7期
2008年第7期
 
2008年第6期
2008年第6期
 
2008年第5期
2008年第5期
 
2008年第4期
2008年第4期
 
2008年第3期
2008年第3期
 
2008年第2期
2008年第2期
 
2008年第1期
2008年第1期
基于PIC16F628单片机的便携式电子秤

Portable Electronic Scale Based on PIC16F628

湖南大学电气与信息工程学院 张海霞 滕召胜


摘 要: 本文介绍了一种基于PIC16F628单片机的便携式电子秤的测量原理,给出了原理框图,重点介绍了传感器单元、单片机单元的硬件电路与重要的软件程序流程图。

关键词: 电子秤 ;电容称重传感器 ;PIC16F628单片机


引 言

目前,台式电子秤在商业贸易中的使用已相当普遍,但存在较大的局限性:体积大、成本高、需要工频交流电源供应、携带不便、应用场所受到制约。现有的便携秤为杆秤或以弹簧、拉伸变形来实现计量的弹簧秤,居民用户使用的基本是杆秤。弹簧盘秤制造工艺要求较高,弹簧的疲劳问题无法彻底解决,一旦超过弹簧弹性限度,弹簧秤就会产生很大误差,以至损坏,影响到称重的准确性和可靠性,只是一种暂时的代用品,也被列入逐渐取消的行列。多年来,人们一直期待测量准确、携带方便、价格低廉的便携式电子秤(袖珍电子秤)投放市场。

基于电子秤的现状,本项目拟研究一种用单片机控制的高精度智能电子秤设计方案。这种高精度智能电子秤体积小、计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。

本项目研究的便携式电子秤主要技术指标为:称量范围0~15kg;分度值0.01kg;精度等级Ⅲ级;电源DC1.5V(一节5号电池供电)。主要功能有自检、去皮、计价、累计、单价设定、计量单位选择、过载报警和弱电压指示等。仪器若不进行称量操作,5分钟后自动进入休眠模式,降低电源消耗。


仪器的测量原理

本文采用电容传感器进行称重,有别于目前市场上使用的应变式称重传感器。应变式称重传感器设计成本很高,难以普及,而电容传感器具有结构简单、灵敏度高、动态特性好、无接触测量、分辨力强、适应性强和抗干扰力强等优点,最大特点是价格便宜,但它的主要缺点是电容量一般很小,仅几十至几百皮法,甚至只有几个皮法,环境变化将影响电容量发生变化,因而应用受到一定程度的限制。在电子称重技术的应用中,可将电子线路紧靠传感器的极板以减小电缆分布电容的影响,利用微处理技术对电容式传感器的温度特性和非线性特性进行补偿。

本文采用变极距式电容传感器,它由一对距离可变的平行极板构成。两板以弹性元件相连,当向一活动板施加拉力时,两极板距离发生变化,从而改变了平板电容器的电容量。经电容-频率转换电路后,电路输出频率与电容成正比。被测物重量与电容量改变成正比,频率的改变即频差与在传感器上所加重物的重量成正比,因而变极距式电容传感器有良好的线性度。测质量时只须测出电容的变化量。然而,电容值的直接测量非常困难。因此,系统将不易测量的电容变化量转换成易于测量的频率信号的变化量,并采用高稳定参考电容生成参考频率信号,消除系统误差,实现高精度测量。电容-频率转换框图如图1所示。两路频率分别送入后级处理电路,经过数据选择、带通滤波传入单片机系统。

图1 电容频率转换框图(略)


硬件电路设计

仪器的构成

本文研究的便携式电子秤硬件系统由电源、电容传感器、高稳定参考电容、ICM7556定时器、MAX325多路开关、PIC16F628单片机系统、控制键盘、LCD显示等组成。测量系统硬件电路框图如图2所示。

图2 仪器结构框图(略)

PIC16F628的主要功能特点

PIC16F628单片机是Microchip公司的PIC系列单片机之一。PIC 8位单片机系列是该公司推出采用RISC(Reduced Instruction Set Computer)结构的嵌入式控制器,具有执行速度高、功耗低、体积小巧、工作电压低、驱动能力强、品种丰富等优越性能。其总线结构采取数据总线和指令线分离独立的哈佛(Harvard)结构,具有很高的流水处理速度。与同类8位单片机相比,程序存储器可节省一半,指令运行速度可以提高4倍左右。此外,PIC系列单片机集成了一系列外部功能模块,例如:上电复位电路、I/O引脚上拉电路、看门狗定时器等。这样,在组成系统时,就可以最大限度的简化电路、降低成本,提高系统的可靠性。

PIC16F628单片机具有直接驱动液晶显示器的能力。输入端口具有跳变中断能力,能方便地接收按键输入,另有多级外部及内部中断,可通过程序禁止主晶振振荡而使单片机进入低功耗状态,适合用于以电池作能源、需液晶驱动的应用场合。

PIC16F628单片机的工作电压范围为3.0V~5.5V,时钟频率为DC~20MHz,内部具有1K 14(位)片内程序存储器,224字节通用RAM,128字节EEPROM,15根双向I/O线和10个中断源,并带有一个16位定时器/计数器(TMR1)和一个8位定时器/计数器(TMR0)。

PIC16F628的精简指令集仅有35条指令,除了地址分支跳转指令(GOTO、CALL)为双周期指令外,其余皆为单周期指令,执行速度可调范围宽(DC~200ns),具有8级硬件堆栈,3种寻址方式(直接、间接、相对)。

PIC16F628的15个I/O口均是独立双向可编程的,并可直接驱动LED数码管,最大拉电流和灌电流分别为25mA和20mA。TMR0带有8位可编程预分频器,可进行1~256分频。

PIC16F628信息处理单元电路的设计

PIC16F628是整个系统的信息处理核心。它需要完成键盘输入检测、采样通道选择、信号分析处理、信息显示、欠电报警和过载报警等多种智能功能。单片机信息处理单元电路如图3所示。图中采用的MAX325是MAXIM公司生产的精密单电源SPST(single-pole single-throw)模拟开关,它由一个常开型开关和一个常闭型开关组成,具有低功耗、低导通电阻等特点。该芯片两控制端(IN1、IN2)均连接CPU的RB3引脚,系统两路频率信号输入通道的选择由CPU控制。低电压检测信号通过芯片6脚(INT)输入,低压时产生外部中断。键盘检测信号与芯片10~12脚(RB4~RB6)相连,有键按下,就产生RB口电平变换中断,在中断服务程序中,扫描键盘,取得键值。显示缓冲区的写入依靠芯片中通用同步/异步收发器(USART),显示器LCD的数据端和时钟端分别与芯片的7脚(DT)、8脚(CK)相接。

图3 信息处理单元电路(略)

软件设计

作为便携式仪器,系统在整个设计过程中遵循简化硬件电路,以软件设计代替硬件的设计原则,最大限度的减小仪器的体积和重量,因而系统的软件实现功能丰富。软件设计采用模块化结构,主要有人工校正模块、欠电报警模块、键盘检测模块、采样通道切换模块和数据处理模块。

系统主程序

系统主程序控制单片机系统按预定的操作方式运行,它是单片机系统程序的框架。系统上电后,对系统进行初始化。初始化程序主要完成对单片机内专用寄存器的设定,单片机工作方式及各端口的工作状态的规定。系统初始化之后,进行计数器读取、零点校正、过载检测等工作。主程序流程图如图4所示。

图4 系统主程序流程图(略)

中断服务程序设计

系统程序设计中,键盘检测产生外部中断,采样通道产生内部定时中断。在中断优先级的问题上,因为PIC16F628单片机只有一个中断入口地址0004h,每种中断都要由此进入中断程序,所以中断程序开始现场保护后,要进行各种中断标志位的顺序检测和判断。当判断到中断标志位时,转到相应的中断服务子程序中,根据检测标志位的顺序,定义中断优先级,先判断定时中断优先级最高,其次是键盘检测中断。中断服务程序流程图如图5所示。

采样通道切换模块,系统传感器单元含有两个电容-频率转换电路,两个电路输出信号的获取均通过单片机PIC16F628的计数器1实现。利用定时器0的定时中断功能,每隔0.1s切换一次振荡工作电路及模拟开关MAX325通道。定时器0中断服务程序流程图如图6所示。

图6 定时器0中断服务程序流程图(略)

键盘检测模块,系统中按键组合成键盘后排列成3 5矩阵形式,采用RB口中断的方式检测键盘中有无按键。对各列线都送以低电平(称为"全扫描"),若有键按下,则产生中断。进入中断程序后,通过"逐列扫描"(逐列送低电平),查看各行线电平值来鉴别被按下的键,返回键值。对按键的具体处理由主程序中键盘处理子程序完成。键盘检测中断服务程序流程图如图7所示。

图7 键盘中断服务程序流程图(略)

软件抗干扰设计

测量算法采用数字滤波、曲线拟合两种数据处理方法。数字滤波(软件滤波)复用性好、可实现超低频滤波且修改方便。因此,在硬件滤波设计基础上,系统通过软件滤波进一步滤除有害干扰信号。同时,曲线拟合使系统对测量曲线进行不失真跟踪处理,也保证了测量计算的准确性。

PIC16F628片内带有看门狗定时器(WDT),它是一个拥有独立的RC 时钟信号源、计时周期约为18ms的CPU片内自激式RC振荡计时器。在烧写程序时借助程序烧写器启用WDT,一旦程序跑飞,WDT将立即强迫程序返回到复位向量处(在复位向量处安排了一段出错程序),即可将系统纳入正轨。

软件低功耗设计

因为系统功耗正比于CPU的工作时间,所以尽量缩短CPU的运行时间应是低功耗软件设计的一条重要准则。

(1) 使用单片机睡眠方式

PIC16F628设有低功耗模式,即睡眠方式(SLEEP)。便携式电子秤作为随身携带的手持式称量器具,一定不是常处在工作状态。在未关断电源的情况下,当器具闲置了预定的一段时间后,单片机将自动进入SLEEP模式,在"睡眠"方式,耗电小于1 A。

(2) 使用单片机的中断功能

系统软件设计应用了三个中断:RB口中断(用于检测键盘输入)、外部中断(用于低电压检测)、定时器0中断(用于切换频率量输入通道)。中断的使用有效地减少了CPU的运行时间,从而降低功耗。

本系统中,严格选用低功耗的CMOS器件,硬件上的配合简单而有效,软件上的设计周密而层次分明,整个系统能真正的实现低功耗工作。


结束语

本文设计研究的准确度等级Ⅲ级、最大称量15kg并集多种智能功能于一体的便携式电子秤,技术指标参考了目前国内市场上使用最多、国内外产量最大的电子衡器的技术指标,由此可预见产品投放市场后将有极大的竞争力。

         
版权所有《世界电子元器件》杂志社
地址:北京市海淀区上地东路35号颐泉汇 邮编:100085
电话:010-62985649
E-mail:dongmei@eccn.com