首页 等精度频率计的设计

等精度频率计的设计

举报
开通vip

等精度频率计的设计等精度频率计的设计 前言 随着微电子技术和计算机技术的迅速发展,特别是单片微机的出现和发展,使传统的电 子测量仪器在原理、功能、精度及自动化水平等方面都发生了巨大的变化,形成一种完全突 破传统概念的新一代测量仪器。频率计广泛采用了高速集成电路和大规模集成电路,使仪器 在小型化、耗电、可靠性等方面都发生了重大的变化。传统的频率计测量误差较大,等精度 频率计以其测量准确、精度高、方便等优势将得到广泛的应用。 传统的测频方法有直接测频法和测周法[1],在一定的闸门时间内计数,门控信号和被测 信号不同步,计数值会产生...

等精度频率计的设计
等精度频率计的设计 前言 随着微电子技术和计算机技术的迅速发展,特别是单片微机的出现和发展,使传统的电 子测量仪器在原理、功能、精度及自动化水平等方面都发生了巨大的变化,形成一种完全突 破传统概念的新一代测量仪器。频率计广泛采用了高速集成电路和大规模集成电路,使仪器 在小型化、耗电、可靠性等方面都发生了重大的变化。传统的频率计测量误差较大,等精度 频率计以其测量准确、精度高、方便等优势将得到广泛的应用。 传统的测频方法有直接测频法和测周法[1],在一定的闸门时间内计数,门控信号和被测 信号不同步,计数值会产生一个脉冲的误差。等精度测频法采用门控信号和被测信号同步, 消除对被测信号计数产生的一个脉冲的误差。等精度频率测量方法消除了量化误差,可以在 整个测试频段内保持高精度不变,其精度不会因被测信号频率的高低而发生变化。采用单片 机作为控制核心的等精度频率计,可以充分利用单片机软件编程技术实现等精度测频。通过 单片机对同步门的控制,使被测信号和标准信号在闸门时间内同步测量,为了提高精度,将 电子计数功能转为测周期,采用多周期同步测量技术,实现等精度测量。 1 一( 等精度频率计的测量原理 1.1等精度频率计的测量原理 基于传统测频原理的频率计的测量精度将随被测信号频率的变化而变化。传统的直接测 频法其测量精度将随被测信号频率的降低而降低,测周法的测量精度将随被测信号频率的升 高而降低,在实用中有较大的局限性,而等精度频率计不但具有较高的测量精度,而且在整 个频率区域能保持恒定的测试精度。 等精度频率的测量原理图1 所示[2]。频率为fx 的被测信号经通道滤波、放大、整形后 输入到同步门控制电路和主门1(闸门),晶体振荡器的输出信号作为标准信号(时基信号) 输入到主门2。被测信号在同步控制门的作用下,产生一个与被测信号同步的闸门信号,被 测信号与标准信号(时基信号)在同步门控制信号的控制下。在同步门打开时通过同步门分 别输入到事件计数器和时间计数器的信号输入端,计数器开始计数。同步门关闭时信号不能 2 通过主门,计数器停止计数,单片机发出命令读入计数器的数值,并进行数据处理,将处理 后的结果送显示。 等精度频率测量方法是采用多周期同步测量。如图1的测量原理图所示由单片机发出预 置门控信号GATE,GATE的时间宽度对测频精度影响较少,可以在较大的范围内选择,即 在高频段时,闸门时间较短;低频时闸门时间较长。实现了全范围等精度测量,减少了低频 测量的误差。 在同步门的控制下,一方面保证了被测信号和时基信号的同步测量;另一方面在同步门 打开后计数器并不是马上计数,而是在被测信号的下一个上升沿开始计数,同步门关闭后计 数器也不是马上停止计数,而是在被测信号的下一个上升沿停止计数。即在实际闸门时间计 数,从而提高了测量精度。 由于采用D 触发器实现的同步门的同步作用,事件计数器所记录的Nx 值已不存在误差 的影响,但由于时钟信号与闸门的开和关无确定的相位关系,时间计数器所记录的N0 的值 仍存在?1 误差的影响,只是由于时钟频率很高,误差的影响很小。所以在全频段的测量精 度是均衡的,从而实现等精度频率测量。 1(2 等精度频率计计数测量误差 由上述测量原理可知,公式 fx=f0×Nx/N0 成立。设所测频率的准确值为f x0。在一次测量 中,由于fx 计数的起停时间是由该信号的上升沿控制的,因此,在T 时间内对fx 的计数NX 无误差。在此时间内f0 的计数N0 最多相差一个脉冲,即?N0 ??l,则下式成立: fx/Nx = f0/N0 (1) fx0/NX = f0/(N0+?N0) (2) 由此可分别推得: fx= (f0/N0)×Nx (3) fx0=[f0/(N0+?N0)]×Nx (4) 根据相对误差公式有: ?f x0/f x0=,f x0-fx,/f x0 (5) 将式(3)和式(4)代人式(5)整理后可得:?f x0/f x0=,?N0,/N0 (6) 因为 ,?N0,?l (7) 所以 ,?N0,/N0?1/N0 (8) 3 即相对误差: , δ f,=?f x0/f x0?1/N0 (9) 其中: N0 = T×f0 (10) 由此可知, 增大Tp 或提高fx,可以增大Nx,减少测量误差,提高测量精度;相对测量 误差与被测信号频率的大小无关,仅与取样时间及时基信号(标准信号)频率有关,可以实 现被测频带内的等精度测量;取样时间越长,时基信号频率越高,分辨率越高。 二( 等精度测频的硬件电路设计及测量过程 2(1 硬件电路设计 等精度测频的硬件电路如图2 所示[3] [4],其主要由以下几部分组成:单片机控制部分、 同步门控制电路、计数和键盘与显示电路。单片机控制部分主要完成测量过程的控制、测量 结果的处理和显示。单片机选用AT89C52,其中P1.0 用于控制同步门D 触发器74LS74 产 生同步的闸门信号,P1.2 用于对74LS393 组成的计数器清零,一次计数完成后单片机通过 控制两片74LS244 读取被测信号与标准信号的低8 位计数值,高位计数值在单片机的T0、 T1 中。然后单片机对计数值进行运算处理,并送出显示。AT89C52 P1.3、 P1.4、 P1.5 和 P1.6 用于和串行接口8 位LED 数码管及键盘控制芯片HD7279A 的连接,控制和管理键盘及显 示。同步门控制电路主要由D 触发器74LS74(同步门控制)、六反相器74LS04 和二输入或 非门74LS02 组成(主门1、主门2)。主门1 控制被测信号fx 的通过,主门2 控制时钟信号 f0 的通过,两门的启闭都由同步门控制电路控制。计数器包括事件计数器和时间计数器两 部分,它们是两组完全相同的计数电路。分别由前后两级组成。前级由双4 位异步计数器 74LS393 级联构成八位二进制计数器;后级由AT89C52 单片机内的定时/计数器构成十六位 二进制计数器。标准信号部分采用10MHz 石英晶体振荡器来提供测量所需要的标准脉冲信 4 号。键盘与数码显示部分采用串行接口方式8 位LED 数码管及64 键键盘管理芯片HD7279A 与单片机连接,驱动八位LED 共阴极数码管和键盘接口,键盘与数码显示部分主要完成测 量功能的选择和测量频率的数据显示。 2(2 测量过程 AT89C52 单片机的P1.3 引脚发出复位信号,使两个计数器清零,同时P1.1 也发出复位 信号,使同步门控制器的Q端为低电平,则主门1 和主门2 都关闭。这时P1.0 的初始状态 为“1”,使D 触发器的D 端为高电平。根据D 触发器的功能,Q端与D 端的逻辑状态不同, 触发器处于闭锁状态,这时被测信号即使到达CK 端,也不能使其触发翻转,保证了同步门 可靠关闭。AT89C52 单片机的P1.0 从高电平跳到低电平,使D 触发器的D 端为“0”,这样Q 端与D 端的逻辑状态相同,触发器解除闭锁,这时被测信号一旦到达CK 端,触发器立即翻 转,Q由“0”变为“1”,于是同步门被打开,被测信号和时间信号分别进入到相应的计数 器进行计数。P1.0 从高电平跳到低电平的同时,也启动了计时系统开始计量闸门时间。当 预定的闸门时间结束时,使P1.0 又从低电平恢复到高电平,D 触发器再次解除闭锁。随后 紧跟而来的被测信号再次触发D 触发器使之翻转,Q端由高电平转为低电平,使同步门关 闭,计数器停止计数。 5 6 三(软件设计 3.1 单片机等精度频率计程序 系统软件的设计主要是和硬件电路相结合,正确地实现等精度测量。整个系统软件的设 计采用了自顶向下的模块化的结构方式,将各个功能分成独立模块,由系统的程序统一管理 执行。它主要完成各种功能,如测量、 数据运算、显示等。如图3 所示为频率测量主程序 流程图,在计数前对计数器清零。然后,发出命令打开闸门进入闸门时间,计数器在闸门时 间内计数。延时子程序结束后,发出命令关闭闸门使计数器停止计数;单片机再依照程序读 取计数器的值,并与单片机内部计数器所计的值合并在一起。由公式(1),即被测频率 fx=f0×Nx/N0 来进行运算,由于精度要求,Nx 和N0 都由24 位二进制数来计数。因此,要在单 片机内部进行多字节无符号二进制数的 乘法 99乘法表99乘法表打印九九乘法表a4打印九九乘法表免费下载大九九乘法表免费打印 和除法运算,并将运算结果转换成BCD 码,显示 运算结果。 //-----------------------函数声明,变量定义----------------------------- #include sbit GATE=P3^0; //预制门限 sbit CLR =P3^1; //请零 sbit RGATE=P3^2; //实际门限 7 sbit SEL0=P3^4; //数据选择位0 sbit SEL1=P3^5; //数据选择位1 sbit SEL2=P3^6; //数据选择位2 #define data_in P1 unsigned char Nx[4]; //待测频率计数值 unsigned char Ns[4]; //标准频率计数值 unsigned char GATE_time=1; //门限时间,预定义为1S unsigned char time_count; bit PRE_judge=1; //-----------------------变量声明--------------------------------------- void system_init(void ); //初始化,设置定时器0的工作方式,供主程序调用 void TIMER0_SCANkey(); //定时器0中断处理函数 //----------------------------------------------------------------------- // 函数名称: system_init() // 函数功能: 初始化设置 // 设定INT0的工作方式 //----------------------------------------------------------------------- void system_init(void ) { TMOD=0x01; //定时器0工作在方式1 ET0=1; //定时器0中断允许 TH0=-5000/256; //12M时钟时,定时0.01秒 TL0=-5000%256; TR0=1; //定时器0开始计数 EA=1; //系统中断允许 } //--------------------------------------------------------------------- // 函数名称: read_result // 函数功能: 将计数值读出到Nx、Ns //-------------------------------------------------------------------- void read_result() { GATE=0; while(RGATE); //等待实际门限的结束 SEL0=0; SEL1=0; SEL2=0; Nx[0]=data_in; //SEL=000 SEL0=1; Nx[1]=data_in; //001 SEL1=1; Nx[3]=data_in; //011 SEL0=0; Nx[2]=data_in; //010 8 SEL0=0; SEL1=0; SEL2=1; Ns[0]=data_in; //100 SEL0=1; Ns[1]=data_in; //101 SEL1=1; Ns[3]=data_in; //111 SEL0=0; Ns[2]=data_in; //110 } //----------------------------------------------------------------------- // 函数名称: judge_Prage // 函数功能: 判断频率范围, // 大于1M 即Nx>0x00 0F 42 40, GATE=1 // 小于1M大于1k即0x00 00 03 E8=1000 then qq<=q1*10000; --根据q1的大小来 判断小数点的位置 if qqq=10000 then alarm0<='1'; --超量程显示 else data1<=data0; end if; elsif q1>=100 then qq<=q1*100000; if qqq=10000 then data1<=1000;dian<="0000"; else data1<=data0;dian<="0010"; end if; elsif q1>=10 then qq<=q1*1000000; if qqq=10000 then data1<=1000;dian<="0010"; else data1<=data0;dian<="0100"; end if; elsif q1>=1 then qq<=q1*10000000; if qqq=10000 then data1<=1000;dian<="0100"; else data1<=data0;dian<="1000"; end if; end if; elsif q2>19999 then alarm1<='1'; --欠量程显示 else alarm1<='0'; 13 end if; end if; end process; end behav; 四( 心得体会 进行系统设计的时候遇到了很多的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,一个是硬件电路的系统设计,在掌握了主要的思想之后,只设计了整体电路的框架,还有一些小的方面总是存在问题,在查了课本和参考书后还有写问题没有解决,在同学的帮助下解决了很多问题;其次就是程序了,在程序中,主要的问题不是实现功能,而是地址的分配,地址能分配好,那么写出来的程序错误就比较少,即使有,差错也是很容易的,但是要是地址出错了,检查错误的工作量就很大了,所以首先就是要把地址分配好。 过程虽然是艰难的,但是收获也是很大的,作为电信专业的一名学生,通过这次工程训练可以检验出理论知识有很多的东西都没有掌握,其中包括有很多重要的,在设计电路图时发现对单片机的串行口工作方式还不是很懂,对ISE中程序生成电路图以及画图还不是很熟,因此在使用时遇到的困难可想而知,尽管在设计电路图和写程序时遇到了很多的问题,但是觉得这样也好,对以前的知识有了个重新的复习,这样可以捡起了很多重要的东西,对以后的帮助也是很大的。 从这次大作业中暴露的自己的许多不足之处,知道自己对以前所学过的知识理解得不够深刻,掌握得不够牢固以及灵活解决问题的能力还不够强,在以后的学习和工作中要努力端正自己的学习态度,从而更加努力的学习。只有这样我们才能真正的去掌握它,而不是只懂得一点皮毛。 总体来说,这次大作业我还是受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,特别有趣,培养了我的设计思维,增加了实际操作能力。在让我体会到了设计电路的艰辛的同时,更让我体会到成功的喜悦和快乐。在这里,我也非常感谢各位老师的耐心辅导以及同学们的热心帮助。 14 五(参考资料 1(凌玉华等(《单片机原理与应用系统设计》(中南大学出版社,2006 2(《单片机实验及课程设计指导书》(综合部分),李志民编著,2005 3(杨欣荣(《智能仪器原理、设计与发展》(中南大学出版社,2003 4(李广弟等(《单片机基础》修订本(北京航空航天大学出版社,2001 5(王福瑞等(《单片微机测控系统设计大全》(北京航空航天大学出版社,1999 6(徐仁贵等(《单片微型计算机应用技术》(机械工业出版社,2001 7(先锋工作室编(《单片机程序设计实例》(清华大学出版社,2003 8(孙传友等(《感测技术基础》( 电子工业出版社,2001 9(石玉等编,电力电子技术题例与电路设计指导,机械工业出版社,1998 10(王兆安等编,电力电子技术 (第四版) ,机械工业出版社,2000 11(Jai P Agrawai,电力电子系统,理论与设计,清华大学出版社, 2001 12(科技期刊:《单片机与嵌入式系统应用》、《实用测试技术》、《自动化仪表》、《传感 器世界》、《测控技术》、《电子技术应用》、《仪表技术与传感器》、《自动化与仪器仪 表》等2003年以后各期。 15
本文档为【等精度频率计的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_270070
暂无简介~
格式:doc
大小:98KB
软件:Word
页数:18
分类:互联网
上传时间:2017-10-13
浏览量:30