资源描述
简易涡流探伤装置的设计
一、概述
涡流探伤是涡流检测技术的最主要的应用,它可应用于导电材料表面及近表面缺陷的检测。由于涡流检测是基于电磁感应现象,不仅被检测材料或制件的电、磁性能发生变化会引起检测线圈的响应,而且被检测对象的形状、尺寸的变化也会引起感应磁场和涡流分布的改变,正确、可靠地将缺陷信号从多种干扰因素所产生的“噪声”信号中分离、提取出来时涡流检测的根本目的。对于组成机械的各种金属零部件,它们的质量决定整机的性能,为此需要设计检测装置来完成这项任务。本设计利用涡流原理进行金属零部件质量的检测。如果检测电路设计成LC振荡电路形式,当检测线圈L对工件进行检测时,质量合格与不合格工件将使线圈的阻抗也将改变,也即电路中的振荡频率发生变化。此时如果测量LC振荡电路中的频率并找出频率与金属工件质量之间的关系,即可获金属零部件质量的情况。
二、方案论证
设计一个简易涡流探伤装置,能够实现简单的部件识别。
本课设可分为三个部分进行设计和实验。第一部分是LC振荡电路,此部分运用电感、电容等元器件组成电容三点式振荡电路,以达到产生正弦波的目的;第二部分是整流滤波电路,此部分由555电路以及其它部件组成;第三部分是显示电路,此部分用单片机作为主控部件,用数码管进行显示。
其总体框图为
LC振荡电路
滤波电路
单片机控制电路
频率显示电路
显示电路
图1 总体框图
三、电路设计
1.LC振荡电路
LC振荡器有基本放大器、选频网络和正反馈网络三个部分组成。为了维持震荡,放大器的环路增益应该等于1,而电容三点式振荡器的谐振频率为
在实验中可通过测量周期T来测定谐振频率,即
仿真电路图为
图2 LC振荡电路
图中的振荡频率为
实际测试中显示的周期为
2.整流滤波电路
此部分电路采用LM555CM芯片可以简单的将正选信号滤波成方波信号。
图3 整流滤波电路
3.频率显示电路
此部分电路应用单片机设计,主要功能是显示零部件的频率。
图4 频率显示电路
总体流程图为
否
是
开始
脉冲采集并开始定时
为各位变量赋值并存放到temp变量中
判断比较temp是否在55kHz~65kHz之间
报警且不显示频率
不报警仅显示频率
返回
返回
图5 总体流程图
四、性能的测试
1. LC振荡电路的测试
如下图所示为输出的振荡波形。
图6 振荡波形
2.整流电路测试
如下图所示为输出的整流波形。
图7 整流波形
3.频率显示电路性能测试
当零部件所产生的频率范围在55k-65kHz内时,属于正常部件,无报警,只显示频率此显示结果有少许误差;当零部件所产生的频率范围不在55k-65kHz内时,属于不正常部件,报警,不显示频率,即显示结果为“000000”。
图8 正常显示电路图
图9 非正常显示电路图
五、结论
本课设基本实现了简易涡流探伤装置的设计,用电路仿真零部件引起的涡流变化,对具体的变化频率进行显示,并判断零部件是否满足条件,达到了设计要求。
六、性价比
本次课程设计的电路从总体来看工作稳定,基本符合设计的要求和技术指标。从选取的电路元件来看,个数比较少,且均为常见的电路元件,价格都很便宜,电路实用,易于调试,可以应用到实际中去。
七、课设体会及合理化建议
通过本次课程设计,我对通信电子电路、模拟电子线路以及单片机有了更深入的理解。这段时间我查阅了很多关于信号放大以及谐振回路的知识,感觉到每一项课题都是博大精深的,同时也深知自己的能力有限,需要不断地加强锻炼。以前,我曾用Protel 99SE、Proteus、Mnltisim 10进行过仿真,但对其并不是很了解,通过这次课程设计,对软件有了更多的接触,对其使用方法掌握的比较好,相信这段经历一定会令我受益终身。
两周的时间虽然短暂,但在这两周里我所学到的东西却是很多的。在仿真中不可避免会遇到很多问题,比如电路不能运行,波形严重失真,数据错误等等,经过老师、同学的帮助,仿真电路终于可以正常运行了。我觉得出现错误并不可怕,重要的是要学会改正和排错的过程,在这个过程中,我锻炼了自学的能力并且培养出了坚强的信念,而这些恰恰是我日后工作所需要的。
参考文献
[1]华成英、童诗白,模拟电子技术基础,[M]北京:高等教育出版社,2006年
[2]宋学君主编,模拟电子技术,[M]科学出版社,2006年
[3]李万臣,谢红编著. 模拟电子技术基础实验与课程设计.哈尔滨:哈尔滨工程大学出版社,2001
[4]何希才,新型电子电路应用实例,[M]北京:科学出版社,2005年
[5]张咏梅,陈凌霄编著. 电子测量与电子电路实验. 北京:北京邮电大学出版社,2000
[6]李秀人,电子技术实训指导,[M]北京:国防工业出版社,2006年
[7]张毅刚等编著. MCS-51单片机应用设计. 哈尔滨:哈尔滨工业大学出版社,2003
附录I 总电路图
附录II 元器件清单
序号
编号
名称
型号
数量
1
U1
单片机
AT89C51
1
2
RP
排阻
1KΩ
2
3
C
电容
10u\33p\10p
8
4
R
电阻
10K\1K\5K
7
5
LED
数码管
7SEG
6
6
D
二极管
LED-RED
1
7
J
开关
DIPSW1
1
8
U2
集成运放
LM555
1
附录III 源程序
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sfr16 DPTR=0x82;
bit status_F=1;
uint aa,bb,ge,shi,bai,qian,wan,shiwan;
uchar cout;
unsigned long temp;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(uint z);
void init();
void display(uint shiwan,uint wan,uint qian,uint bai,uint shi,uint ge);
void xtimer0();
void xtimer1();
void xint0();
void main()
{
P0=0XFF;
init();
while(1)
{
if(aa==19)
{
aa=0;
status_F=1;
TR1=0;
delay(46);
TR0=0;
DPL=TL0;
DPH=TH0;
temp=DPTR+cout*65535;
shiwan=temp%1000000/100000;
wan=temp%100000/10000;
qian=temp%10000/1000;
bai=temp%1000/100;
shi=temp%100/10;
ge=temp%10;
}
if(temp<=65000&temp>=55000)
{
display(shiwan,wan,qian,bai,shi,ge);
P1=1;
}
else
{
shiwan=0;
wan=0;
qian=0;
bai=0;
shi=0;
ge=0;
display(shiwan,wan,qian,bai,shi,ge);
P1=0;
}
}
}
void init()
{
temp=0;
aa=0;
cout=0;
IE=0X8A;
TMOD=0x15;
TH1=0x3c;
TL1=0xb0;
TR1=1;
TH0=0;
TL0=0;
TR0=1;
}
void display(uint shiwan,uint wan,uint qian,uint bai,uint shi,uint ge)
{
P0=0xdf;
P2=table[shiwan];
delay(5);
P0=0xef;
P2=table[wan];
delay(3);
P0=0xf7;
P2=table[qian];
delay(3);
P0=0xfb;
P2=table[bai];
delay(3);
P0=0xfd;
P2=table[shi];
delay(3);
P0=0xfe;
P2=table[ge];
delay(3);
}
void xtimer1() interrupt 3
{
TH1=0x3c;
TL1=0xb0;
aa++;
}
void xtimer0() interrupt 1
{
cout++;
}
void delay(uint z)
{
uint i,j;
for(i=0;i<z;i++)
for(j=0;j<110;j++);
}
第13页
展开阅读全文