论文金属探测器

更新时间:2024-05-26 22:54:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

金属探测器 摘 要

金属探测器是专门用来探测金属的仪器。广泛应用于工业生产、安检、娱乐等领域。这里我们设计的是一个基于单片机的手持金属探测器。它可以检测到人随身携带的金属物品,如小刀、钢笔甚至可以检测到香烟盒(内部有铝薄膜)。可随身携带,使用方便。

金属探测是根据电磁感应原理制成的,将一金属置于变化的磁场当中时,根据电磁感应原理就会在金属内部产生涡流,涡流产生的磁场反过来又影响原磁场,这种变化可以转换为电压幅值的变化,供相关电路进行检测。它也可以表现为振荡电路频率的变化,用检测频率的办法进行检测,这里使用的是后者,振荡部分由电容三点式振荡电路组成,产生的正弦波进行放大和脉冲转换电路,再送入单片机,由单片机探测它频率的变化。当遇见金属时由于电磁感应原理原先建立起来的振荡将受到影响,频率将发生变化,单片机探测到这种变化后进行报警。

本次金属探测器的设计还给它添加了接口可以和外围的系统进行通讯,这里实现了与液晶显示,键盘和AT89S52组成的外围数据处理与显示模块的通信,对前端探测到的数据进行再处理和分析,并将结果显示在液晶屏幕上,并可以通过键盘对前端的探测进度进行设置。

关键字:金属探测;电磁感应原理;单片机;涡流;振荡电路

- 1 -

ABSTRACT

Metal detector is an instrument which use for detecting metal specially. it has been extensively used in produce ,Safety inspection, entertainment and so on. Here we designed a handheld metal detectors which based on the MCU. It can detect people carrying metal items such as knives,pens and even boxes of cigarettes (within the aluminum film). Portable, easy to use.

It is made according to principle of electromagnetism induction. when we put an metal object around magnetic field with changing series. there will produce vortex inner metal object. The vortex will create magnetic field too. The new magnetic field will affect the old. The change can be convert into voltage signal for detecting by relative electrocircuit . It can also convert into frequency signal and be detected by frequency detector. Here we use the second method. The oscillation circuit part is composed by Capacitance three-point oscillation circuit. The signal created by the part is magnified first and then convert into impulse signal. Then it can be processed by SCM. SCM detect its frequency ,compare with the base frequency and then determine whether to worn.

We add an interface to the detector. So it can communicate with other SCM system which content a lcd,a keyboard,a SCM. The SCM system can process the data more precisely and then display the result through lcd.the keyboard is used for user who want to set the detecting precision.

KEYWORDS:metaldetector;the principle of electromagnetism

induction;SCM;vortex;oscillationcircuit

- 2 -

目 录

1 引 言............................................................................................................................................. 1 第1章 概述 ..................................................................................................................................... 3

1.1探测器的结构和特点 ......................................................................................................... 3

1.1.1探测器的结构 .......................................................................................................... 3 1.1.2探测器的特点 .......................................................................................................... 4 1.1.3探测器的应用领域 .................................................................................................. 4 1.2探测器工作原理 ................................................................................................................. 5 第2章 当代金属器的基本方法 ..................................................................................................... 6

2.1基于单片机的金属探测器的设计方案 ............................................................................. 6 2.2 MD-898K金属探测器 ....................................................................................................... 7 2.3基于霍尔器件的数字金属探测器 ..................................................................................... 8 第3章 总体设计 ......................................................................................................................... 10

3.1 硬件电路设计 .................................................................................................................. 10 3.2 软件结构设计 .................................................................................................................. 11

3.2.1程序结构设计 ........................................................................................................ 11 3.2.2数据处理与显示程序结构设计 ............................................................................ 11

第4章 单元电路设计 ................................................................................................................. 13

4.1 振荡电路设计 .................................................................................................................. 13 4.2 放大电路和脉冲变换电路 .............................................................................................. 14 4.3 单片机系统 ...................................................................................................................... 16 4.4 外围设置与显示系统 ...................................................................................................... 17 第5章 软件设计 ......................................................................................................................... 19

5.1软件设计 ........................................................................................................................... 19 5.2数据处理与显示模块设计 ............................................................................................... 22 第6章 实现与性能分析 ............................................................................................................. 25

6.1 硬件电路焊接与调试 ...................................................................................................... 25

6.1.1振荡电路的焊接与调试 ........................................................................................ 25 6.1.2 放大电路与脉冲转换电路的焊接与调试 ........................................................... 26 6.1.3 单片机系统的焊接与调试 ................................................................................... 27 6.1.4 外围数据处理与显示模块的焊接与调试 ........................................................... 28 6.2 软件模块的调试与集成 .................................................................................................. 31

6.2.1金属探测模块的调试与集成 ................................................................................ 31 6.2.2 外围数据处理与显示模块的调试与集成 ........................................................... 33 6.3 系统性能分析 .................................................................................................................. 35

6.3.1 基准频率测定方法的优缺点分析 ....................................................................... 35 6.3.2 金属探测的精度 ................................................................................................... 35

总 结 ............................................................................................................................................ 37 致 谢 ............................................................................................................................................ 38 参考文献......................................................................................................................................... 39 附录 ................................................................................................................................................ 40

附录一 系统总体电路图 ..................................................................................................... 40

I

附录二 防抖动键盘处理源程序 ......................................................................................... 42 附录三 前端金属探测部分源程序 ..................................................................................... 45 附录四 外围金属探测精度设置源程序 ............................................................................. 51

II

1 引 言

金属探测器是一中专门用来探测金属的仪器,除了探测有金属外壳或金属部件的地雷以外,还可以用来探测隐蔽在墙壁内部的电线、埋在地下的水管电缆,甚至能够地下探宝,发现埋藏在地下的金属物体。目前还广泛用于各种大型会议中心、汇展场管、体育场管公检法、监狱系统及娱乐场所的安全检查和工厂企业的防偷检查,甚至用于对高考禁带物品的检查。

金属探测器按其功能和市场应用的不同可分为以下几种:通道式金属探测器(简称安检门)、手持式金属探测器、便携式金属探测器、台式金属探测器、工业用金属探测器和水下金属探测器[4]。

世界上第一台金属探测器诞生与1960年,步入工业时代的最初的金属探测器主要用于工矿业,是检查矿产纯度和提高效益的得力助手,随着社会的发展,犯罪案件的上升,1970年金属探测器被引入一个新的应用领域——安全检查,也就是今天所使用的金属探测门的雏形,它的出现意味着人类对安全认识已步入一个新纪元。

20世纪70年代随着航空工业的迅速发展,劫机和危险事件的发生使航空和机场安全逐渐受到重视,于是在机场众多设备中,金属探测门排查违禁物品的重要角色。同样再0世纪70年代,由于金属探测门在机场安检中崭露头角,大型运动会、展览会及政府安全保卫工作中开始启用金属探测门。

20世纪80年代,监狱暴力案件呈直线上升趋势,如何及早预防并阻止暴力案件发生成了监狱管理工作中的重中之重,在依靠警员对囚犯加强管理的同时,金属探测门再次成为了美国、英国、比利时等发达国家监狱管理机构必备的安检设备;与此同时西方兴起的“探宝热”,也使金属探测器取得了长足的发展。

进入20世纪90年代,迅速升温的电子制造业成了这个时代的宠儿,大型的电子公司为了减少产品的流失、结束员工与公司之间的尴尬局面,陆续采用了金属探测门和手持金属探测器,作为管理员工行为、减少产品流失的利刃,于是金属探测器又有了它的新作用产品防盗。

1

“9.11”事件发生后反恐成为国际社会的一个重要的议题。爆炸案、恐怖活动的猖獗使恐怖分子成了各国安全部门重点打击的对象。此时国际社会“安全防范”的认识也提高到了一个新的高度,受“9.11”事件的影响各行各业加强了保安工作的部署,金属探测器也成功渗透到公共娱乐场所等行业。然而此时简单的通道式金属探测门已不能完全满足安检要求,安检人员需要的是一种能准确判定物品藏匿位置的安检产品。于是多区位金属探测技术孕育而生,它的诞生是金属探测器历史上又一次变革,原来单一的磁场分布变成了现在互相叠加而又相对独立的多个磁场,在根据人体工程学把人体分为多个区段使之与人体相对应,相应的区段在金属探测门上形成相对的区域,这样金属探测门便拥有了报警定位功能。

又根据国务院发布<<单位内部治安保卫条例>>,监考人员在高考考又根据国务院发布<<单位内部治安保卫条例>>,监考人员在高考考场里使用金属探测器符合相关规定,它将作为一项常规措施载入我国考试监考制度中[4]。

金属探测器的工作原理简单的讲就是利用电磁感应原理,让交流电通过电感线圈,产生迅速变化的磁场,该磁场能在被检测的金属物体内部产生感生涡流[3]。涡流反过来有影响原来的磁场,引发探测器发声。

金属探测器自诞生至今40多年过去了,金属探测器经历了几代金属探测的变革,从最初的信号模拟技术到连续波技术,再到今天的数字脉冲技术,金属探测器简单的磁场切割原理被引入多种技术成果中。无论是灵敏度、分辨率、探测精度还是在工作性能上都得到了质的飞跃,应用领域也随着产品质量的提高延伸到多个行业。

2

第1章 概述

1.1探测器的结构和特点

随着微处理器、计算机和数字通信技术的飞速发展,探测器已经广泛应用

在所有的工业领域。现代社会要求产品满足各行业需求,由此产生出多品种、多规格、低成本和高质量的产品。

探测器的应用面广、功能强大、使用方便,已经成为当代工业和安全的主要支柱之一。探测器广泛应用在安检和工业机械探伤中,探测器在其他领域,例如在食品药品行业的应用也得到了迅速的发展。 1.1.1探测器的结构

探测器主要由线圈振荡、信号放大、脉冲产生、中央处理和外围设置显示模块组成(见图1-1)。硬件电路的好坏决定着系统的稳定性和可扩展性。

线圈振荡电路 图1-1数字金属探测器设计框图

键盘 放 大 电 路 脉冲变换电路 CPU 报警 液晶显示 1.单片机处理系统

单片机处理系统,是将频率探测、报警和通信几个模块程序组合起来,它

就会按你事先编写好的步骤进行工作。

2.外围设置与显示系统

3

外围设置与显示系统,它有三部分构成:键盘输入、液晶显示和单片机系统。 1.1.2探测器的特点 1.功能强,性能价格比高 2.可靠性高,抗干扰能力强 3.系统的安装、调试工作量少 4.维修工作量少、维修方便 1.1.3探测器的应用领域

在发达国家,在安全方面探测器已经广泛应用于各个部门,随着功能不断地

提高,应用范围也不断扩大。探测器主要以下方面。

1.按功能来划分:

1)全金属探测器:可以检测到铁、不锈钢、铜、铝等所有金属。检测精度和灵敏度都比较高。这种金属探测器通常用于食品日化等工业探测金属异物,食品等行业对金属异物的限制是很严格的。因此,对这种金属探测器的灵敏度要求极高。

2)铁金属探测器:是一种磁感应式金属探测器,顾名思义,这种金属探测器只能检测到铁、钴、镍等可上磁性的金属,俗称检针机。检测铁精度和灵敏度较高,对纯度高的铜铝等非铁金属不检测,因此,这种金属探测器常用于安装了金属辅料(铜钮扣、铜拉链)的检测作业。通常称作“检针机”“验针机”“过针机”,这种原理的金属探测器在国内已经有近二十年的生产历程,大部分的厂家都能做出稳定性能和日本品牌想媲美的产品。

2.按用途来划分:

1)纺织品金属探测器。 2)地下金属探测器。 3)包装食品金属探测器。 4)粉末管道式金属探测器。

4

1.2探测器工作原理

金属探测器利用电磁感应的原理,利用有交流电通过的线圈,产生迅速变化的磁场。这个磁场能在金属物体内部能感生涡电流。涡电流又会产生磁场,倒过来影响原来的磁场,引发探测器发出鸣声。金属探测器的精确性和可靠性取决于电磁发射器频率的稳定性,一般使用从80 to 800 kHz的工作频率。工作频率越低,对铁的检测性能越好;工作频率越高,对高碳钢的检测性能越好。检测器的灵敏度随着检测范围的增大而降低,感应信号大小取决于金属粒子尺寸和导电性能。

5

第2章 当代金属器的基本方法

金属探测器的设计方案根据它的应用的不同而不同,这里引入两种与本次设计应用相进的金属探测设计方案,拿它们与我们的设计方案进行对比,以突显出彼此的优缺。

2.1基于单片机的金属探测器的设计方案

正如综述里所说的数字金属探测器的设计是顺应时代发展,本次设计所要完成的任务是实现一个基于单片机的手持金属探测器。其模型如图2-1所示。可以看出它由四部分组成:高频振荡、信号放大、脉冲转换和信号的处理与报警,下面简单论述以下各个模块的功能。

高频振荡信号放大脉冲转换信号处理与报警电源

图2-1手持数字金属探测器原理框图

1)高频振荡

这一部分是金属探测的基础,金属探测器的原理是:当金属物体置于变化的磁场当中时,金属内部就会产生涡流,而涡流所产生的磁场又会影响原磁场。高频振荡部分的任务首先就是产生变化的磁场,它往往由一LC振荡电路组成。其次,在遇见金属后由于金属内部涡流的存在,它的磁场会影响原有磁场,使原有振荡电路的振幅和周期都发生改变。这种改变经转换后送入单片机,单片机中有相应的程序对其进行分析判断。

2)放大电路

振荡电路所产生的正弦波信号的幅值是比较小的,因此需要放大才能进行再处理。

3)脉冲转换电路

这是本套设计方案所独有的,它是实现本次金属探测数字化的桥梁,单片机只能处理数字脉冲型号,因此振荡电路所产生的信号经放大不能直接送入单片

6

机,这一部分只需要一个TTL门电路对放大电路输出的波形进行转换就行,简单但很重要。

4)信号处理与报警

这一部分是整个电路的大脑,所有的电路都是为它服务,这一部分也是整个探测器实现网络化或其他功能的桥梁。作为整个电路的大脑,它对整个电路所产生的信号做最终的处理,并根据处理的结果决定是否存在金属,是否要发出警报。这一部分处理能力的强弱影响这整个系统的性能。作为与外部进行沟通的桥梁,它可以将金属探测的信息发送给外围模块供他们进行进一步的处理,它同时也接收外围模块传送过来的控制信号,如对金属探测的精度或其他方面进行设置。

2.2 MD-898K金属探测器

图2-2[4]为MD—898K金属探测器的组成模块图,看上去在结构上和本次设计的金属探测器很相近,实际上它们存在本质的差别。首先,两者在设计思想上完全不同,MD—898K金属探测器是模拟信号处理的模拟金属探测器,而此次要实现的金属探测器信号的处理和报警都在数字单片机内完成。其次,在可拓展性方面MD—898K没有可拓展性而言,因为每一部分的单元电路紧密的联系在一起,即使可以扩展也要对整个电路进行从新设计,而且设计的难度相对很大,而本次设计,将频率信号转换为数字信号供数字单片机进行分析,单片机提供了很多I/O口可以很方便的和其他单片机进行通讯,加入串口通信模块后还可以直接和PC机进行通讯,借助于PC机强大存储和网络资源对数据进行再分析在处理,就可以完善金属探测的性能,并且借助于PC机的强大功能可以使探测的精度得到新的改善。

高频振荡器振荡检测器音频振荡器功率放大器电源 图2-2 MD-898K金属探测器原理框图

7

2.3基于霍尔器件的数字金属探测器

图2-3[1]是另一种数字探测器的设计方案,虽然是基于单片机的数字式金属探测器,但是在探测原理上与本次采用的方法存在这很大的差别,它的基本思想是这样的,在电感线圈的中心固定一霍尔器件,用于探测磁场的变化并能将信号转换为电压信号,这样在没有遇见金属物体时送入单片机的电压是一固定值,当遇见金属物体时,由于电磁感应现象磁场强度会发生变化,这时霍尔器件将此变化转换为电压信号供单片机进行判断,霍尔器件产生的是一些连续的电压信号,磁场是周期性变化的因此传出的电压信号也是周期性连续变化的,所以需要波峰检测将其峰值检测出来通过模数转换变为数据信息送入单片机。因此单片机只是根据电压值的变化就能判断有无金属。

它与本次设计方案的不同在于,本次设计方案是检测振荡电路的频率变化来判断金属的有无,而图2-3所示的方案是检测磁场的变化,而且它是通过将磁信号转换为电信号,再通过波峰检测模数转换最后送入单片机,与此相比本此的设计方案就相对简单,不用霍尔器件和A/D转换这些昂贵的芯片,只需将振荡电路产生的正弦波进行放大,再用廉价的门电路对其进行脉冲转换就行。其次,在性能上还要优于图2-3的方案,因为磁场很容易受到外界的影响而发生变化,这样产生的电压信号是很不稳定的,相比之下进行振荡频率的检测就相对稳定。

显示探测线圈霍尔器件放大电路放大电路峰值检波A/D转换CPUAT89S52报警多谐振荡器线圈振荡电路控制电路电源图2-3 基于霍尔器件的数字金属探测器

8

9

第3章 总体设计

总体设计将影响整个项目的实现,对整个项目的开发起着指导性的作用,因此总体设计的好坏影响深远,这里的软硬件方案都是经过再三的比较与分析才确定的,硬件和软件两个互相影响,协同工作实现系统的基本功能。由于硬件系统是基础,是软件系统得以运行的平台,因此将它放在前面,先依据硬件的总体设计方案,完成各个单元电路的设计与实现,接下来再根据软件模块的总体方案设计程序流程,在硬件电路的基础之上进行调试。但在设计之初两个部分都需经过认真的分析,确定总体方案后再分阶段进行实现。

3.1 硬件电路设计

硬件电路设计是进行软件设计的基础,是整个金属探测器中最位重要的部分。它设计的好坏决定着系统的稳定性和可扩展性。本次设计的金属探测器的框图如图3-1所示,包括五大部分:线圈振荡、信号放大、脉冲产生、中央处理和外围设置显示模块。

线圈振荡电路 放 大 电 路 脉冲变换电路 CPU 报警 键盘 液晶显示

图3-1 手持数字金属探测器硬件设计框图

这四部分组合起来构成了一个基于单片机的开环金属探测模型。线圈振荡电路是基础,依靠它来进行金属探测,这一部分可以产生稳定的正弦波,但在遇到金属物体时正弦波的频率和幅度会发生变化。振荡部分产生的正弦波经放大后送入脉冲变换电路产生一定频率的脉冲,然后将其送如单片机。因此在前端振荡电

10

路频率变化时这种变化同时将送入单片机,单片机进行分析判断后进行报警。外围控制模块的作用是,与前端单片机进行通讯,将获得的信息进行分析运算再进行显示并且通过键盘对前端金属探测的精度进行设置。

3.2 软件结构设计

硬件完成信号的产生与处理后,接下来的工作就全部由软件部分完成,软件系统的实现才能真正体现系统的价值,软件结构设计是软件实现的起点,它对整个软件部分的实现起指导作用,同时它也罗列出系统的所有功能。 3.2.1程序结构设计

图3-2就是前端软件的结构图,从图中可以看出前端软件的主要作用是,频率测定、声光报警和通讯。它是整个金属探测模块的大脑,它分析判断前面功能电路传过来的频率信号对它进行分析判断最后决定是否发出检测到金属的警报。

前端软件 基准频率测定 精度设置频率检 测 频率比较 声 光 报 警 通 讯 频率测 定 比 较 图3-2 前端软件设计结构图

3.2.2数据处理与显示程序结构设计

11

外围数据处理与显示 液 晶 显 示 键 盘 接 收 按 键 处 理 通 讯 精度建立设 置 连 接 图3-3 外围数据处理与显示软件结构图

引入外围模块的目的是借助于PC机的强大资源或内置有大容量编程存储器的单片机进行数据分析与处理,从而加强和拓展金属探测器的功能。其次,引入了另一中金属探测的模式,那就是不需要一定去在现场进行金属探测,将这个任务分给在前端进行金属探测的探测小车,探测小车将探测到的信息通过无线模块即时的反馈给后台的处理系统,而这时的分析员只需坐在PC机前就回对前端的情况了如指掌。外围数据处理与显示模块的软件结构图如图3-3所示。

12

第4章 单元电路设计

单元电路设计是在硬件总体设计的指导下完成一个个小的功能电路的设计,在将各个部分组合起来实现一个整体的功能,因此每一个功能电路设计的好坏都将影响系统的整体功能。完成每一个功能电路的设计后,设计阶段才告以段落。这一部分的设计直接与实现紧密联系,器件参数的确定,电路板的焊接与调试,以及到最后的性能分析,都要用到这一部分的设计结果,因此这一部分的设计最有实际价值。

4.1 振荡电路设计

振荡电路部分采用的是电容三点式振荡电路,设计的主旨是在保证产生稳定振荡的前提下,使频率低于300KHz,这样的目的是为了金属探测器在进行工作时不受广播频段的影响。这部分的电路图如图4-1所示。

电路元器件参数是在满足主旨的情况下进行选取的。因此谐振回路中电容C1、C2和电感L的取值分别为0.22μf、0.47μf、500μh。其中电感值只是理论计算的理想值,实际中是用半径0.31mm漆包线绕20圈直径为6cm的线圈而构成的,电感值接近500uf但有一定范围的偏差。偶合电容选用两个10μf的独石电容,旁路电容Cb3选用47μf的铝电解电容。共射极反馈放大电路中的晶体管选用放大倍数超过50倍的cs9014。组装调试后振荡电路的实际频率为33KHz满足我们的要求。

电容三点式振荡电路的工作原理分析,假设将反馈回路断开,同时假如晶体管的基极以(+)极性信号,则BJT的集电极为(-)极性(共射极放大电路的反向放大特性),由于谐振回路的两个电容的一端同时接地,另一端串一电感所以两个电容的极性相反,即反馈端的为(+)极性,因此满足相位平衡条件[15]。电路中晶体管的放大倍数比较大且C1和C2的比值小于0.5,都有利于起振。由于反馈电压是从电容两端去出的对高次谐波的阻抗小,因此可将高次谐波滤除,所以输出的波形好。电容三点式振荡电路的频率为:

f?f0?12?Lc1c2/c1?c213

[15]

(5-1)

使用谐振回路中的电感线圈进行金属探测,当遇见金属是电感L1的Q值将发生变化,由电容三点式振荡电路的频率计算公式可以看出,电感增加时谐振频率减小,电感减小时谐振频率增加。电路的谐振频率同时也影响着检测金属的精度,当谐振频率高时线圈产生磁场的变化率也就越高,根据电磁感应原理在金属内部产生的涡流就越大,同是涡流产生磁场对原磁场的影响也就越大。

图4-1 电容三点式振荡电路

4.2 放大电路和脉冲变换电路

放大电路和脉冲产生电路合起来产生一定频率的脉冲供单片机进行处理。电路原理图如图4-2所示。从振荡回路传过来的正弦波信号经过电压跟随器传送到差分放大电路针对其交流信号进行放大,放大后产生的电压信号送给TTL门电路对其进行整形以产生规则的脉冲波送入单片机。电压跟随器和差分运放均选用LM358。将集成运放的输出端和它的反向输入端相连就构成了电压跟随器,由于它的电压增益为“1”所以叫电压跟随器,它的特点是输入阻抗高输出阻抗低,因此起到隔离的作用,对其后的工作电路如同一个恒压源,又由于它的输入阻抗高就相当与对前级电路开路,这里引入电压跟随器的目的也是为了使振荡信号的

14

产生和处理分开,使其互不影响。

放大部分的作用是对正玄交流信号进行无穷放大,LM358的反向端接受电压跟随器穿过来的电压信号,同向端和反向端接一5K的分压电阻,给与同向端并联的电阻并联一个10μf的电解电容的目的是为了使同向端保持一个稳定的直流分压,这样送往集成运放的差分电压信号就只是交流信号,在交流信号进行无穷次的放大,最终产生的是频率与正弦波频率相同的梯形波。

门电路选用的是74LS08(与门),用史密特触发器替换也可以,它对输入的梯形波进行逻辑运算在以TTL电平出运算结果,因此可以将梯形波转换成适合于单片机进行处理的脉冲波。

图4-2 放大与脉冲转换电路

使用LS08进行波形变换的原理图如图5-2所示,正弦波经过上图的放大模块后变为梯形波,梯形波经过LS08最后变换为标准的方波。

Y梯形波脉冲波T图4-3 波形转换

15

4.3 单片机系统

图5-4就是单片机处理系统,将频率探测、报警和通讯几个模块程序组合起来烧写进去,它就会按你事先编写好的步骤进行工作。

1)复位电路

REST引脚一但变成两个周期以上高电平所有的I/O口都将复位到“1”状态,编程地址计数器复位到000H,针对这一特点在按钮两端并联一10μf的电解电容,正极接电源,这样在按钮按下又释放后由于电容的充电可以在电阻两端维持至少两个时钟周期以上的高电平。

2)蜂鸣器

在给蜂鸣器的正极和负极分别通上高电平和低电平时蜂鸣器就会发声,因此你可以通过给蜂鸣器不同频率的电平来使它发出不同的声音。

3)单片机

单片机选用的是AT89C2051高性能CMOSE8位单片机,内含2K的可反复檫写的FLASH只读存储器和128B的随机存储器。由于本次金属探测器的设计,包括前端金属探测部分和后台数据处理和显示两个部分,因此在前断只需要一个容量不大的单片机进行振荡频率的测量、报警和通信,2K的AT89C2051足以满足需求。2051的“1”号记数器记录由LS08发送过来的脉冲信号,联合“0”号计数器来检测振荡电路的频率。再根据频率的变化激活相应的发光二极管和峰鸣器进行报警。

16

图4-4 前端金属探测部分单片机系统

4.4 外围设置与显示系统

图5-5就是外围设置与显示系统,它有三部分构成:键盘输入、液晶显示和单片机系统。

1)键盘输入

键盘采用的是2×3的按键阵列,如图5-6所示,该阵列键盘的工作原理是,

将两条行线和3条列线接入AT89S52的一组I/O双向接口(比如:P1的低5为),在程序中通过给行线和列线先后输入,高电平低电平、低电平和高电平

来判断是哪个按钮按下。例如给P1的低5位的电平信号为11000,假如现在第2个按钮按下则此时的管脚电平信号为01000,所以判断为第一行。再将P1的低5位置为00111,由于第2个按钮被按下,则此时的管脚电压为00101,所以可以判断是第2列,到此就可以判断是第1行第2列的按钮被按下了[10]。 2)液晶显示

引入液晶显示的目的主要是为了显示频率值、金属类型、精度设置时的一些提示语,其次,有了显示器对键盘的调试将更加方便。液晶显示的要求比较低,1602A内置有基本ASCII字符的显示编码,使用起来比较方便。且价格低廉可以满足需求。

17

3)单片机系统

单片机使用的是有8K容量FLASH的AT89S52,由于在这个模块要引进算法对数据进行再处理,在加上液晶和键盘的驱动程序,所以需要比较大的程序空间。

图4-6 阵列键盘原理图

图4-5 液晶显示器接线图

18

第5章 软件设计

硬件电路要完成的任务是,产生振荡,并将波形变换为能够被单片机处理的方波,接下来进行频率测定、报警、通讯等都要用程序实现最后烧入单片机。以下是各功能模块的软件设计。

软件模块是整个系统的灵魂,软件部分设计的好坏直接影响到系统的精度、可用性、方便性和智能性。好的软件上在实现系统功能的前提下尽可能的友好,方便用户的使用。金属探测器中的程序分为两个部分,前端软件模块和外围数据处理与显示模块,前端软件完成的是一些比较基础的工作,如振荡频率的检测,比较,报警等,它与底层的硬件关系比较密切所以采用汇编语言进行编写,而外围数据处理与显示模块是进行数据的再处理的,是更高一层的分析与判断,它直接处理由前端模块传过来的数据,对其进行处理显示。它的程序量比较大,包括键盘的驱动和液晶的驱动,所以选择模块性比较强的c语言进行编写,两个模块结合起来实现了一个更加方便、智能的数字金属探测器。

5.1软件设计

前端软件负责频率的测定、频率的比较、报警以及与外围模块的通信,程序流程图如图5-1所示。

1)频率获得

获得频率是通过定时器T0和计数器T1两个协同工作而完成的。程序中所使用的频率不论是基准频率还是新探测的频率,都是50ms内所获得的脉冲数。这对此次设计的手持式金属探测器已经足够了,要想提高精度,一是延长获得脉冲的时间,二是减小△PRISE(它是频率波动的范围,如果超出此范围则报警)。

2)获取基准频率

基准频率的获得至关重要,因为它一经获得将作为判断有无金属的基准。其值的可靠性将影响整个程序的健壮性。基准频率的获得是按照如下方法获得的,如图5-2所示。

19

初始化基准频率测定F_FR==1?是探测当前频率否F_COMM==1?是调用精度设置否频率比较否F_COMP==1是F_COMM==1?是发送频率否报警

图5-1 前端金属探测主程序流程图

F_COMM:标志是否进行通讯;F_COMP:标志比较的结果;F_FR:标志基准频率是否成功获得

F_FR:标志是否已经顺利获得基准频率。F_COMM:后台是否发送通信请求。F_OK:标志通讯已建立。F1:新获取的频率。F基准频率。

20

延时R0=10当前频率→F获得当前频率F1是F1-2

返回

图5-2 基准频率测定程序流程图

3)比较模块

比较模块的程序流程图如图6-3所示,比较模块比较重要,程序通过它它来判断是否要发出警报和发出什么样的警报,可以修改传入给它的参数来改变金属探测的精度。 4)精度设置模块

精度设置模块的程序流程图如图6-4所示,精度设置是通过改变传入给比较模块的△PRISEH,△PRISEL的值来改变精度的,如果△PRISEH,△PRISEL的值设置的都比较大则对微小的频率变化系统不会发出警报。

21

(40,41H)+PRISEH→(44,45H)(42,43H)+PRISEL→(46,47H)(44,45H)>(42,43H)?是(44,45H)<(46,47H)?是F_COMP=0否否F_COMP=1 返回

图5-3 频率比较程序流程图

否SET==0?是ADD==0?否DEC==0?是PRISEN+4→PRISEHPRISEL+1→PRISEL是返回DEC==0?否是PRISEN+4→PRISEHPRISEL+1→PRISEL是ADD==0?否

图5-4 精度设置程序流程图

5.2数据处理与显示模块设计

1)液晶显示

液晶显示模块是严格按照产品操作的时序图编写的驱动函数,共分为两大类函数,指令的读写和数据的读写,只要将操作位和数据位按照时序严格的结合在一起就可以完成数据的显示。用户只需要调用封装好的显示函数:DisplayOneChar(显示单个字符)、DisplayListChar(显示一个字符串)、

22

Displayarray(显示一字符数组)。

2)键盘接受

键盘是输入设备,用它来实现人机交互,让机器更好的按人的要求去工作。这里引入键盘的目的是,1进行金属探测精度的设置;2在进行数据通讯时进行控制。由于键盘普遍存在抖动现象,如果抖动现象处理不好,会发生意想不到的结果。为了防止抖动,在程序设计中采用了,一次键位判断,两次键位检测的方法,每一步骤间隔5ms,每次键位确定需要15ms,在检测与接受过程中每一步骤出现错误都将从新开始验证,因此保证了对用户输入的无误接受。键盘接受模块的程序流程图如图5-5所示。

3)键盘处理模块

键盘处理模块在判断是哪个键按下后,就立即引发相关的操作来满足用户的需求。同时键盘处理模块也展现出了系统提供给用户的所有功能。精度设置部分程序流程图如图5-6所示。

是ON/OFF按下?否F_OK==1?SET按下?否是ADD按下?否是DEC按下?否OK按下?否是CANCEL按下?否F_SET==1?否是F_SET==1?否是n_plus=0返回F_SET==1?否是发送设置结果F_SET==1?否是n_plus--是n_plus++是F_SET=~F_SET是F_START=~F_START建立连接否F_SET=0n_plus=0

图5-5 键盘接受处理程序流程图

23

SET=0延时否F_OK==1?是F_OK=0在ADD口发送n_plus个脉冲在DEC口发送-n_plus个脉冲是n_plus>0?否是n_plus<0?否SET=1延时否F_OK==1?是F_OK=0设置成功设置失败返回

图5-6 设置数据与前端单片机的通讯图

24

第6章 实现与性能分析

前面所有的准备都是为这一阶段作准备,这一部分的内容也将是最重要,最烦琐,最能考验人意志的。首先你需要来回奔走于电子市场,去准备器件,一次是绝对不会准备好所有的器件的,因为在调试时时常会发生与你预想的结果不一致的情况,或许在这个阶段你还要进行方案的局部修改,我就是这样。其次,调试工作考验人的细心与耐心,梢有不甚就可能烧毁器件,比如将单片机接反、电解电容接反、电源线接反、器件管脚焊接不对、电路板短路等等一系列由于不细心造成的后果。然而这个阶段也是最锻炼人的阶段,这一部分的经历将最深刻最让人难以忘怀。因为在没有登山之前你绝对体会不到登山的滋味,只有亲自爬一次山你才会体会到什么是爬山,而这个时候任何人对爬山的描述对你来说也都不重要了,这一阶段就好比爬山,道路越艰险,最后的成就感越大。

6.1 硬件电路焊接与调试

硬件电路的调试我分为四个阶段:振荡电路的焊接与调试、脉冲转换电路的焊接与调试、单片机处理系统的焊接与调试和外围单片机系统的焊接与调试。 6.1.1振荡电路的焊接与调试 1)所需器件

面包板一个、三极管(cs9014)一个、10μf偶合电容两个、47μf旁路电容一个、谐振电容0.22μf和0.47μf各一个、自绕电感线圈一扎、33K、20K、1.3K、2K电阻各一个。

2)电感绕制

选用半径为0.31mm的漆包线,绕成半径为3cm的线圈,绕制20圈。在电感测量仪上测量其电感值大约在500μf左右,用手使线圈间距边小,线圈的电感值会相应的增大,最后用胶带纸将线圈缠在一起使它们之间的间距相对固定,这样电感值保持在500μf,误差在10μf以内。

3)调试

所有的器件准备好并焊接在面包板上,按照电路图检查各器件件的连接情况

25

无误后,进行上电调试。振荡电路的起振都没有问题,可以产生幅值越为0.2V、频率接近33KHz的正弦波。

4)出现的问题与解决方法

(1)可以产生稳定的正弦波,频率符合,但是幅值偏小。将C1(0.47μf)、C2(0.22μf)的两个谐振电容进行调换以后,正弦波的幅值明显增加,增为0.5V,频率不变。

(2)信号的直流分量不是一个固定的值而是在2.0V~2.4V之间进行周期性的变化,先从2.4V减到2.0V,再变为2.4V就这样周期性的变化。这个问题是在信号放大部分解决的。

6.1.2 放大电路与脉冲转换电路的焊接与调试

这一部分多为集成电路只需按照放大电路的要求进行连接连接就可以。

1)所需器件

面包板与上面共用,LM358(内置两个放大器)一片、74LS08(内置4个与门)一片、10μf铝电解一个、5K、500K电阻各一个。

2)调试

振荡电路产生的正弦波不能直接进行脉冲波的变换,因为它的幅值太小,所以必须经过放大电路的放大。由于上面出现的电压不稳定问题,因此这里的放大电路只对信号的交流分量进行无穷放大。信号经电压跟随器进入LM358的反向端,同向端与反向端之间接一5K的电阻,而同向端则通过分压器分得与反向端成固定比例的电压。这样可以使同向与反向之间要进行差分放大的部分保持相对不变。在加上在同向端并联一10μf的旁路电容,它可以短路交流信号,因此同向端可以保持一个固定的直流分量,而交流分量通过差分放大器进行无穷次的放大。信经此放大电路后变换为与前面正弦波频率相等的梯形波幅值为3.7V,如图3-1。转换为幅值为3.7V梯形波后,在将其转换为单片机可以处理的脉冲波就相对容易了。简单的处理就是通过一TTL门电路,TTL门电路可以将逻辑运算的结果转换为TTL电平(5V),这里选用的是74LS08(与门),当然史密特出发器,其它的门电路都可以完成这样的转换。将与门的一端接入5V电源另一端接放大电路的输出端。转换的结果如图5-3所示。

26

3)出现的问题与解决方案

如果放大电路不是采用上面的接法,而是将同向端接一电阻接地或是从电源经一分压器得一固定的分压,那么也可以产生梯形波不过它是不稳定的,表现为波峰和波谷之间进行周期性的转换,比如开始波峰占2/3周期波谷占1/3周期,过一会波峰占1/3波谷占2/3,最后到波峰消失,而后又回到初始状态,这种现象对脉冲变换和最后的频率检测都是不利的,更可怕的是会由于波形的不稳定而造成意想不到的结果。比如在没有碰到金属时发出警报。 6.1.3 单片机系统的焊接与调试

单片机系统的焊接与调试往往是放在最后一个环节,这是由于单片机系统的作用是进行控制和数据的处理,因此在对它进行调试之前,被控制的功能电路必须已经调试完毕,并能将信号发送给单片机供单片机进行分析判断,最后将控制信号从I/O口输出。

1)所需器件

AT89C20511个、30pf陶瓷电容两个、12MHz石英晶体振荡器1个用于振荡电路,按钮1个、10μf铝电解1个、10K电1个用于复位电路,1个蜂鸣器、2个发光二极管用于报警。

2)调试

要使单片机系统进行工作,必须要有振荡电路,以提供时钟信号给单片机。这里采用石英晶振,它有6MHz、12MHz、11.059MHz的不同类型,用户可以根据需要进行选择,一旦确定,单片机的主频就确定,机器周期为主频的1/12。这里用到的无论是前端探测的单片机系统还是外围数据处理与显示的单片机系统都选用12MHz的石英晶振。单片机系统的测试与其它电路的测试不同,你需写一段小的测试程序,编译后烧写到单片机的程序存储器中,看其运行情况,这里我做了一个小小的灯光闪烁程序。

3)AT89C2051介绍

AT89C2051是ATMEL公司生产的低电压,高CMOS8位单片机,片内含有2KB的可反复察写的只读程序存储器和128BYTES的随机存取数据存储器 (RAM),15个I/O口线,

27

两个16位定时计数器,一个5向量两极中断结构,一个全双工串行通信口,内置一个精密比较器,片内振荡器及时钟电路。同时,AT89C2051可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容MCS-51指令系统,片内置通用8位中央处理器和flash存储单元。

4)出现的问题与解决方法

要让单片机执行程序存储器内的指令,必须使单片机的EA/Vpp管脚置为高电平。开始没有注意这一点,直接将闪烁程序烧入单片机,发现灯一直亮但不闪烁(复位后个管脚将置4为高电平),开始还以为是延时的问题,但到后来延时已设的很长还是没有闪烁。最终才发现上由于该管脚没有接高电平。该管脚要是接地的话执行的是片外的程序。

6.1.4 外围数据处理与显示模块的焊接与调试

1)所须器件

单片机系统与前面焊接的单片机系统一样,只不过这里的CPU用的是AT89S52,另外还需要型号为SMC1602A,容量为16×2个字符的液晶显示器,和用于输入用户需求的2×3按键阵列。

2)AT89S52介绍

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择

28

节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

3)调试

液晶和键盘的调试都是建立在单片机系统的基础之上的,也就是说它们需要单片机执行程序来进行控制。在保证单片机系统正常运行后首先调试的是液晶,这样是为了调试键盘做准备。液晶显示器的调试主要在于编写的液晶驱动程序,因为不同的液晶显示器它的控制时序和控制字是不同的,因此必须针对不同型号的液晶显示器采用与之匹配的驱动程序。 1602A液晶显示器的操作时序为:

读状态:输入:RS=L,RW=H,E=H, 输出:D0-D7=状态字 写指令:输入:RS=L,RW=L,E=高脉冲H, 输出:无 读数据:输入:RS=H,RW=H,E=H, 输出:D0-D7=数据 写数据:输入:RS=H,RW=L,E=高脉冲, 输出:无 1602A的初始化过程为:

(1)延时15ms;

(2)写指令38H(不检测忙信号); (3)延时5ms;

(4)写指令38H(不检测忙信号); (5)延时5ms;

(6)写指令38H(不检测忙信号以后每次读/写操作之前均要检测忙信号); (7)写指令38H显示模式设置; (8)写指令08H显示关闭; (9)写指令01H显示清屏;

(10)写指令6H显示光标移动设置; (11)写指令0CH显示开及光标设置[11];

液晶显示器的VDD和VO之间接了一个10K的电位器是用来调节对比度用的,在对液晶调试的过程中应尽量使对比度大,也就是使VO端的输出端电压低。其次,液晶显示器在没有给它输入正确的数据的时候,屏幕的一半是黑屏,这不能说液

29

晶显示器坏了,恰恰相反,它说明了液晶显示器是好的你需要检查你的程序。最后液晶显示器的初试化也很重要,应按照datasheet上面所给的初始化顺序和延时时间来严格进行,如有不慎,也会出现半边黑屏的情况。

键盘采用的是2×3的按键阵列,键盘的调试,是在液晶调试完毕后,这样可以借助于液晶来判断键盘按下是否会有响应。一遇到键盘都会涉及到键盘的防抖动问题,键盘的防抖动有两种方法:一种是硬件方法,那就是在硬件电路里加延时来去掉抖动。另一种方法是软件方法,就是在对键盘扫描采用一定的方法和延时来防止抖动。本次设计采用的是软件的方法,将在软件调试中进行详细的论述。

4)出现的问题和解决方法

(1)在一开始调试液晶时发现液晶屏幕上即没有显示的字符,也没有出现半边黑屏的现象,以为是接法不当将液晶显示器给烧了,其实事实不是这样,每个1602的使用电路中都会要求配一个电位器,它是用来调整液晶的偏压的,最后的结果是可以提高或降低液晶的对比度,必须选择适当的偏压,因为偏压过大就会出现刚才所说的现象,偏压过小就会出现“鬼影现象”,两个都不是我们所期望的。但是在一开始调试液晶的时候,建议将偏压调制最小,这样无论如何它会有所显示,当你将液晶全都验证好时再将偏压调制适中。

(2)也是液晶问题,出现黑屏以后,发现无论送给液晶什么数据它都是黑屏,没显示任何字符串,最终决定让它只显示一个字符,但是还是黑屏。检查电路后发现,原来是将P0_9接为P0_10,由于P0_10是管脚EA/VPP它是接电源的,也就是说给液晶显示器第8位数据管脚的电平时刻为高,这样在你将要显示的字符送给液晶显示器时,这个字符很可能就不是ASCII字符,所以无法显示出现黑屏。因此总结出调试液晶时应该注意的问题,首先,若在在调试时液晶出现黑屏,那说明液晶显示器是好的,你应检查你的程序和电路,如果没有出现黑屏,你应该调节电位器使偏压减小以至有所显示。其次,如果出现黑屏你应该检查三点两点,一个是液晶显示器的初始化,看初始化指令字调用的顺序对不对,中间必要的延时加没加。另一个是保证向液晶传入数据的数据端口无误。最后一个是,看你读写的时序和控制字的电平是否严格按照产品说明书上的要求。

30

6.2 软件模块的调试与集成

程序部分的调试采用的是从下到上逐步集成的思想,先将各个小的模块验证成功,在将它们集成为一个大的模块进行验证,最后到整个系统的集成调试。这里进行程序开发所使用的工具是keil第二版。在进行调试时程序要不停的写入单片机进行即时的验证,所以必备烧写程序的工具,这里使用的是TOP2000烧写器和它的配套烧写软件。

6.2.1金属探测模块的调试与集成

程序的作用是对硬件电路传过来的电信号进行分析、处理、判断最后发出控制信号。这一部分软件的主要功能是频率的检测与报警。由于这一部分所用的单片机编程存储空间比较小,且程序的数据来自于底层的电路信号所以选用MCS—51汇编指令来进行变成。

1)频率检测

从示波器上可以看到振荡的频率大约为33KHz,这里的频率探测是以50ms为一个单位,也就是50ms内计数器1所记录的脉冲数。并以此值作为判断有无金属的依据。在程序中将每次获得的频率值存到两个内存单元中,一个存高8位,一个存低8位,使用的时候只需到固定的内存单元中进行读取。

2)频率的分析计算

由于频率值分存在两个内存单元,为16位,因此对它的处理都是另外编写的16位运算,其中包括加法、比较。比较程序的程序流程图详见第二章,比较程序的结果保存在自定义的标记中,主程序中就是根据比较子程序的结果来判断是否有金属。

3)数据通信

外围与前端单片机之间通信的信息多为16位的频率值,在进行数据接受时,使用一标志,用来完整的接受16为数据。串口通讯的方式选择方式2(异步通讯),无奇偶校验。

4)出现的问题与解决方法

31

(1)在用MCS—51编写程序时,立即寻址时,一定要在立即数前加“#”否则的程序将以直接寻址的方式对待,造成不可预料的错误。

(2)频率测定时要不停的使用定时器,因此不停的要引发定时器中断,在编程的过程中曾经出现过定时器中断处理程序只能被引发一次,而后面即使发生中断,也不会执行中断处理程序的现象。结果发现原来是将RETI写为RET的原因,RETI除了执行RET的指令功能外,还清除内部响应的中断状态寄存器因此中断服务子程序必须以RETI为结束指令。

(3)写延时指令时需小心死循环。此次调试过程中曾经出现过这样的情况,开始不知道问题的原因所在,最后在每一步设标志才找出原因。

5)定时计数器的使用介绍

定时器的结构图如图6-1[9]所示,其中TCON用于控制定时/计数器T0和T1的启动和停止,同时包含定时/计数器的状态,它属于特殊功能寄存器其内容靠软件设置,系统复位时寄存器的所有位都被清零。定时计数器的工作方式是在TMOD寄存器中设置的,TMOD

微处理器CPUTH1TL1TH0TL0TCONTCON 图6-1 定时/计数器原理框图

和TCON的格式如图6-2[9]所示,模式设置组合如表7-1[9]由于这里只用到方式1所以对方式1加以说明,方式1的结构如图6-3[7]所示,方式1为计数器THX作为高8位TLX作为低8位,定时时间=(216-T0初值)×时钟周期×12[7],因此要定时50ms需给定时器T0的初值为D8F0H。

TCONTMODTF1GATETR1C/TTF0M1TR0M0IE1GATEIT1C/TIE0M1IT0M0

32

图6-2 定时/计数器的控制字格式

表6-1 模式设置组合

M1 0 0 1 1 M0 0 1 0 1 功能选择 方式0,13位定时/计数器 方式1,16位定时/计数器 方式2常数自动装入寄存器 仅适用于T0,分为两个8位计数器,对T1停止计数

图6-3 T0定时计数器的工作原理图 6.2.2 外围数据处理与显示模块的调试与集成

这一部分的程序是用C语言来写的,原因是这一部分的程序量,大倾向与数据处理而非底层的电路控制。

1)键盘模块的调试

键盘模块包括键盘输入的接收和键盘输入的处理,两个部分相互依赖。键盘接收部分采用了软件防抖动技术其基本原理如图7-4所示。

2)出现的问题

按键在按下的瞬间,它不是产生一个完整的脉冲信号,而是带有无数个毛刺的信号序列,要是不加防抖动处理或是防抖动处理的不好,那么程序接收到的将是按键多次按下,这样会产生意想不到的错误。在外围处理模块有一个精度设置模块,一个精度“加”按钮,一个精度“减”按钮,一开始程序的防抖动是这样

33

的,没有延时,只有行列值确定和一次校验,最后按下“加”键后,液晶上显示的数值从初始值一直往上加,按下减值后数值有一直往下减。最后加二次检验和延时后这种现象消失了。原因是改进后的代码每进行一次键位的确定都要经过3个步骤,每个步骤5ms,这三步骤必须同时满足,才能确定一个键位的按下,要是其中那一步出现了问题都会重新开始,这样就避免了很多干扰和脉冲中的毛刺。

确定行列延时5ms否行列确定成功?是检验一J1=R*3+C延时5ms否检验一通过?是检验二J2=R*3+C延时5ms否检验一通过?是JI==J2?是J=J1=J2J=7否返回

图6-4 防抖动键盘程序流程图

R:表示确定的行值;C表示确定的列值;J:最终确定键值;J1:第一次确定的

34

键值;J2第二次确定的键值;

6.3 系统性能分析

这里主要分析一下影响系统探测精度的因素以及提高探测精度的方法。 6.3.1 基准频率测定方法的优缺点分析

基准频率测定所使用的程序流程图如图6-2所示,由图可知基准频率不是一开始就设定的固定值,而是在系统开始运行时进行即时测定的。当然在振荡电路确定后系统的振荡频率也就固定下来,那么为什么不选用这个固定值作为基准频率?只能说这两个方案各有利弊吧,如果一开始就将基准频率固定,那么系统要做的是“绝对金属的测量”,意思是说,一旦遇见金属使得振荡电路的频率发生改变,用这个变化了的频率与固定的频率进行比较,如果超出了改变的范围则进行报警。但是如果遇见这种情况,在一堆同类型金属中检测别的类型的金属时这种法就不行,那就要用到“相对金属测量”也就是本次所使用的方法,是在系统运行是对频率进行确定。这样基准频率将随着环境的不同而变化,所以它探测金属的情况,是在当前环境中去检测金属的,所以可以辨别不同的金属。 6.3.2 金属探测的精度

金属探测器根据应用的不同,会有不同的精度要求,决定这一点的是金属探测器本身的设计与实现。这里只对本次毕业设计所做的金属探测器的精度进行讨论。对与本次设计的金属探测器影响它精度的有三方面因素,首先是振荡电路的振荡频率与幅值;其次是频率的测量;再次时频率变化范围的确定(这决定频率超过什么范围才进行报警)。振荡电路的频率与幅值,是有振荡电路本身的设计方案决定的,一经实现就无法改变,因此这里只对后两者进行讨论,先说频率的测量,频率测量的问题是说你多长时间的脉冲数作为进行比较判断的频率,这一点很重要,它直接影响着测量的精度,你选择10ms、20ms、和50ms为单位所测的值,对频率变化所反映的程度是不同的,例如10ms和50ms相差5倍,如果遇见某金属使振荡电路的频率增加20,那么用10ms做单位的则探测不到这种变化,而使用50ms的则可以探测到,也就是说所选用的时间段越长探测的精确度越高。下来

35

就是你在程序中设定的频率的变化范围,它用来报警,如果当前的振荡频率高出或低出基准频率某个值,那么就驱动蜂鸣器进行报警,很显然这个值设置的越大则探测的精度越小,用户也是通过这种方法来改变探测的精度的,他在键盘上增加或减小的值就是这个频率的变化范围。

36

本文来源:https://www.bwwdw.com/article/mdp7.html

Top