只需一步,快速开始
热门: 51单片机 | 24小时必答区 | 单片机教程 | 单片机DIY制作 | STM32 | Cortex M3 | 模数电子 | 电子DIY制作 | 音响/功放 | 拆机乐园 | Arduino | 嵌入式OS | 程序设计
随着电子工业的发展,电子元器件急剧增加,电子元器件的适用范围也逐渐广泛起来,在应用中我们常常要测定电阻的大小。因此,设计可靠,安全,便捷的电阻阻值测量电路具有极大的现实必要性。
该电路设计是以单片STC89C52为核心,通过恒流源模块,555多谐振荡电路,LCD显示模块实现了电阻在大范围内测量,并且能在测量量程为 10Ω、1kΩ、10kΩ、1MΩ四档中自由切换。
通常情况下,电路参数的数字化测量是把被测参数传换成直流电压或频率后进行测量。
电阻测量依据产生恒流源的方法分为电位降法、比例运算器法和积分运算器法。比例运算器法测量误差稍大,积分运算器法适用于高电阻的测量。
本次设计是在参考555振荡器基础上拟定的一套自己的设计方案。是尝试用555振荡器将被测参数转化为频率,这里我们将测量电路产生的频率送入AT89S52的计数端,通过定时并且计数可以计算出被测频率再通过该频率计算出各个参数。
设计要求:电阻测量范围10Ω到1MΩ,精度5%,4位显示。
本设计是以555为核心的振荡电路,将被测参数模拟转化为频率,并利用单片机实现计算频率,所以,本次设计需要做好以下工作:
(1)学习单片机原理等资料。
(2)设计测量电阻的振荡电路。
(3)设计LCD电路。
(4)设计测量频率程序,设置程序。
(5)安装和调试,并进行实际测试,记录测试数据和结果。
利用555多谐振荡电路将电阻参数转化为频率,这样就能够把模拟量近似的转换为数字量,而频率f是单片机很容易处理的数字量,一方面测量精度高,另一方面便于使仪表实现自动化,而且单片机构成的应用系统有较大的可靠性。系统扩展、系统配置灵活。容易构成各种规模的应用系统,且应用系统有较高的软、硬件利用系数。单片机具有可编程性,硬件的功能描述可完全在软件上实现,而且设计时间短,成本低,可靠性高。所以,本次设计选定以单片机为核心来进行。
统设计框图如图2-1如下所示
框图各部分说明如下:
1)控制部分:本设计以单片机为核心,采用89C52单片机,利用其管脚的特殊功能以及所具备的中断系统,定时/计数器和LCD显示功能等。在本设计中,采用LCD1602液晶显示。
2)测量电路:RC震荡电路是利用555振荡电路实现被测电阻频率化。
在本设计中,考虑到单片机构成的应用系统有较大的可靠性,容易构成各种规模的应用系统,且应用系统有较高的软、硬件利用系数。还具有可编程性,硬件的功能描述可完全在软件上实现。另外,本设计还需要利用单片机的定时计数器、中断系统、串行接口等等,所以,选择以单片机为核心进行设计具有极大的必要性。在硬件设计中,选用STC89C52单片机,其LED灯、LCD液晶屏等,通过软件进行控制。
本设计中单片机的设计电路如下图3-1所示:
本电路使用单片机内部振荡器,12MHz的晶体谐振器直接接在单片机的时钟端口X1和X2,电路中C2、C3为振荡器的匹配电容。该电路简单,工作可靠 。另外本系统的容阻上电复位,就是利用RC电路的充电过程来给单片机复位。当需要复位时,也可以按下复位按键,进行复位。
定时器555是一种用途很广的集成电路,只需外接少量R、C元件,就可以构成多谐、单稳及施密特触发器。电阻的测量采用“脉冲计数法”,由555电路构成的多谐振荡电路,通过计算振荡输出的频率来计算被测电阻的大小。
555接成多谐振荡器的形式,其振荡周期为:
得出:
即:
其中R16=1KΩ, R17=1KΩ,C11=0.1uF:
电阻测试电路见图3-2所示。
P1.0 R测量程序的选择
在本设计的模块中,模块是以单片机为核心,再通过按键控制测量的被测参数在数码管显示。
按键主流程图如4-1所示。
图4-1按键主程序流程图
本设计频率的计算采用单片机外部中断 ,对外触发电路产生的脉冲频率的测量,再通过对测量数据的校正来完成。
单片机对频率测量的原理如下图4-3所示。
说明:图4-3中t1时刻检测到高电平开定时器1,开始计数;t2时刻等待检测低电平;t3时刻第二次检测到高电平时关定时器停止计数。
利用GATE=1,TR1=1,只有 引脚输入高电平时,T1才允许计数,利用此,将外部输入脉冲经 引脚上输入,等待高电平的到来,当检测到高电平时开定时器开始计数,然后检测低电平,当检测到低电平时已经测得脉冲的脉宽,但我们测得是频率,故在程序中药继续检测等待下一个高电平的到来,此时关定时器停止计数,用此计数值乘以机器的周期数(晶振频率已知),得出触发电路产生的周期,然后再经过数据处理便得到输入信号的频率。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。
(1)测试原理:在系统设计中,以STC89C52单片机为核心的电阻测量电路,将电阻使用对应的振荡电路转化为频率实现各个参数的测量。电阻是采用555多谐振荡电路产生的,将振荡频率送入STC89C52的计数端,通过定时并且计数可以计算出被测频率,再通过该频率计算出被测参数。以Keil51为仿真平台,使用C语言与汇编语言混合编程编写了系统应用软件;包括主程序模块、显示模块、电阻测试模块。
(2)测试方法:在测试时将被测参数通过本系统测量出来的示值与参数的标称值进行对比,进而可以知道本系统的测试精度。
(3)测试仪器:示波器,万用表,稳压电源,计算机。
(4)测试结果:通过按键,实现其按键所对应的功能,并观察测试结果,对设计进一步的进行校正和对实现功能的可靠性的确认,并记录观察结果。
测试结果如下:
a)电阻测试数据如表5-1所示。
表5-1电阻测试数据
标称值
(Ω)
振荡频率
(Hz)
系统测量
(Ω)
相对误差
(%)
330
6929
333
0.9
200
9501
205
2.5
530
4981
528
0.4
4700
5036
4892
4.1
20000
2596
19216
3.9
470000
157
464683
1.1
(4)测试分析:在实际测量中,由于测试环境,测试仪器,测试方法等都对测试值有一定的影响,都会导致测量结果或多或少地偏离被测量的真值。为了减小本设计中误差的大小,主要利用修正的方法来减小本测试仪的测量误差。所谓修正的方法就是在测量前或测量过程中,求取某类系统误差的修正值。在测量的数据处理过程中选取合适的修正值很关键,修正值的获得有三种途径。第一种途径是从相关资料中查取;第二种途径是通过理论推导求取;第三种途径是通过实验求取。
本测试修正值选取主要通过实验求取,对影响测量读数的各种影响因素,如温度、湿度、电源电压等变化引起的系统误差。通过对相同被测参数的多次测量结果和不同被测参数的多次测量选取平均值,最后确定被测参数公式的常数K值,从而达到减小本设计系统误差的目的。由于振荡电路外围器件由电容电阻分立元件搭接而成,所以由振荡电路产生的被测参数对应的频率有一定的误差,所以只能通过多次实验测量,选取合适的修正值来尽可能的减少本测试系统的误差。
本设计的硬件电路图简单,可降低生产成本。采用单片机可提高系统的可靠性和稳定性,缩小系统的体积,调试和维护方便,而且以STC89C5251单片机最小系统为核心的设计能够满足了整个系统的工作需求,555振荡器实现了被测电阻参数的频率化,被测频率通过模拟开关送入单片机计数,再经过显示电路显示被测参数的测量值,软件用C语言编程,根据具体情况控制启动被测参数的相应程序,能灵活控制被测参数的档位切换。经过测试,系统各个模块都能正常共组,成功地达到了设计的硬件要求。
系统的软件部分是系统实现各种工作状态的关键。通过结合硬件电路,在Keil51的平台上,使用C语言与汇编语言混合编程编写了系统应用程序,使程序能够正常运行,实现了设计的要求。
这次实训一次非常好的将理论与实际相结合的机会,通过对电阻测量的课题设计,锻炼了我的实际动手能力,增强了我解决实际工程问题的能力,同时也提高我查阅文献资料、设计规范以及电脑制图等其他专业能力水平。
[1]申忠如,申淼,谭亚丽.MCS-51单片机原理及系统设计.西安交通大学出版社,2008年3月第1版
[2]申忠如,郭福田,丁晖.现代测试技术与系统设计.西安:西安交通大学出版社,2006.2.
[3]付家才.单片机控制工程实践技术[M].北京化学工业出版社,2004
[4]张毅刚.MCS-51单片机应用系统.哈尔滨工业大学出版社,1997
[5]夏继强.单片机实验与实践教程.北京航空航天大学出版社,2001
[6]肖洪兵.跟我学用单片机.北京航空航天大学出版社,2002 [7]付晓光.单片机原理与使用技术.清华大学出版社,ISBN7- 81082- 169- 5TP
[8]李桂安.电子技术实验及课程设计.东南大学出版社,2008
使用道具 举报
本版积分规则 发表回复 回帖后跳转到最后一页
手机版|小黑屋|51黑电子论坛 | 管理员QQ:125739409;技术交流QQ群281945664
Powered by 单片机教程网