电话:0755-23047613

Banner
首页 > 行业知识 > 内容
基于STC89C52单片机的金属探测器设计
- 2021-03-16-

基于STC89C52单片机的金属探测器设计

金属探测器是日常生活中专门用于探测金属物质的仪器,精探安检设备公司对常规金属探测器进行研究后设计了一款基于STC89C52RC 单片机的智能金属探测器,将振荡电路产生的正弦波经脉冲转换电路送到单片机检测频率的变化。当线圈位置出现金属物质时,由于电磁感应原理,线圈Q值发生改变,原有振荡频率会发生变化,单片机检测到频率变化后报警,能在安检、工业生产等领域得到广泛应用。

金属探测器.png

一、系统方案设计

本次设计采用STC89C52RC单片机作为金属探测器的核心控制处理器件,通过添加晶振电路提供系统工作时钟,通过复位电路实现复位功能[1]。通过电容三点式振荡电路产生正弦波,转换后传递到单片机检测频率的变化。当遇到金属时,电容三点式振荡电路的原振荡会受到影响,频率会发生变化,单片机会检测到这种变化,并在液晶显示器上显示和报警,还可以通过键盘设置探测金属物质的灵敏度。本系统主要由单片机工作系统、电源电路、振荡电路、脉冲变换电路、声光报警电路、键盘电路和显示电路构成。

二、系统硬件设计

1.单片机工作系统

单片机工作系统是指利用电子元件构成的可以独立运行的单片机工作系统。本次设计采用的STC89C52RC型号单片机是由STC 公司生产的低功耗、高性能CMOS8 位微控制器,具有8 kB 系统可编程闪存。在使用灵活性上兼容51 单片机,且性能远远超过51 单片机,具有更快的运行速度以及更加丰富的外设接口电路,同时具有功耗更低的特点。

单片机工作系统的硬件结构非常简单,仅仅需要添加电源电路为整个工作系统提供驱动电压,以及添加复位电路为整个工作系统中的硬件构成提供一个运行的初始状态,并防止系统出现意外中断的情况,方便进行紧急恢复,即当单片机系统受到环境干扰程序跑飞的情况下,就可以按下复位按钮,这样单片机内部的程序会自动从头开始执行,通过添加晶体振荡电路为整个工作系统提供工作时钟,晶振也可以采用不同的振荡频率,如8 MHz 或者11.059 2 MHz,通常情况下,越高频率的晶振,51单片机的处理速度就越快。

2.电源电路设计

选用LM7805 三端稳压芯片,实际应用中,应在LM7805三端稳压芯片上安装足够大的散热器,因为稳压管的稳压性能会随着温度升高而变差,甚至损坏。在本设计中,由于将9V的电池电压变压为设计所需的5V电压,这个过程中功率变化不是很大,因此不必添加散热器。LM7805三端稳压芯片的管脚功能从正面看,1脚是输入,2脚接地,3脚输出,从3脚输出稳定的5 V 电压。

3.振荡电路设计

振荡电路是决定整个金属探测器性能的关键,利用电容三点式振荡电路产生一个频率小于300 kHz 的稳定振荡源,目的是使金属探测器在正常工作时能够不受广播频段的影响。当谐振回路中的电感线圈中存在金属物质时,线圈电感的Q 值将随之发生改变,当线圈电感增加时,电路的谐振频率将减小,反之,线圈电感减小时,电路的谐振频率将增加。

4.脉冲变换电路设计

从谐振回路传过来的正弦波信号传送给电压比较器对其进行整形,以产生规则的方波送入单片机。电压比较器选用LM393,LM393 的反向端接收滑动变阻器上的电压,同向端接收振荡电路产生的正弦波,这样就能把正弦波信号经过电压比较变成单片机能够处理的方波信号。

5.声光报警电路设计

当检测到金属时,系统会发出报警提示,报警电路是为了优化人机交互性,提醒使用者已检测到金属物质,用单片机控制三极管驱动蜂鸣器报警。因单片机直驱能力不够,故采用三极管8550 起到驱动大电流的作用,当三极管输入端为低电平时,此时导通,蜂鸣器接收到控制信号,产生自激振荡,通过内部芯片驱动发出报警声。

6.键盘电路设计

当按下按键时,单芯片引脚和GND 连接到低电平;当松开按键时,线路断开,电流不能通过,此时单片机默认是高电平,可以通过判断单片机IO口的高低电平来判断是否有按键按下。

7.显示电路设计

采用LCD1602液晶显示模块来显示相关信息,可同时显示16×2个字符,即总共可以显示32 个字符。LCD1602液晶显示器的原理是利用液晶的物理特性通过电压来控制显示区域,即可以显示图形。用来显示当前振荡电路的频率值,以及人工设定的报警警戒值。液晶模块的RS、RW、EN 引脚与单片机P25 ~P27管脚相连接,液晶模块的D0~D7数据接口和单片机的P0口连接。

三、软件设计

1.检测频率程序设计

频率的测定是通过定时器T0 和计数器T1 完成的,即计算T0 时间内检测到的脉冲数T1 的个数。为了方便计算,程序中所检测的频率都是在1 s 内统计的脉冲总数,即1 s内检测到多少次脉冲就是多少赫兹,因金属探测器的检测频率较低,所以可以适当延长检测时间,这样系统更加稳定。

2.声光报警程序设计

当检测到金属物质时,主程序对当前频率进行判断,控制声光报警系统工作。声光报警系统包括蜂鸣器和LED 灯。

3.按键检测程序设计

程序每执行一次都要执行一次按键检测操作以判断是否有按键按下,每200 ms 检测一次是否有按键操作,然后改变设置的频率值,并在LCD1602 液晶显示器上显示。

4.显示程序设计

显示是为了优化人机交互性能和体验感,能让人对当前设备状态有清晰的认识。本设计采用LCD1602 液晶显示器显示当前频率和设置的频率,并且能对当前频率进行实时显示。

四、结束语

综上所述,此金属探测器是使用STC89C52RC 单片机作为控制核心,通过三点式振荡电路产生振荡源,利用线圈电感变化影响振荡频率,通过中断检测频率变化,按键设置检测灵敏度,使用LCD1602液晶显示器显示当前频率值。但本次设计的金属检测器也还存在一些不完善的地方,如探测距离不够远,以及定位不够精确,后续工作可以提高线圈功率,使用多组线圈,以提高检测精度以及扩大检测范围。

金属探测仪.png