说明书正文HJB课设.pdf

上传人:wj 文档编号:14655949 上传时间:2023-06-25 格式:PDF 页数:27 大小:1.21MB
下载 相关 举报
说明书正文HJB课设.pdf_第1页
第1页 / 共27页
说明书正文HJB课设.pdf_第2页
第2页 / 共27页
说明书正文HJB课设.pdf_第3页
第3页 / 共27页
说明书正文HJB课设.pdf_第4页
第4页 / 共27页
说明书正文HJB课设.pdf_第5页
第5页 / 共27页
说明书正文HJB课设.pdf_第6页
第6页 / 共27页
说明书正文HJB课设.pdf_第7页
第7页 / 共27页
说明书正文HJB课设.pdf_第8页
第8页 / 共27页
说明书正文HJB课设.pdf_第9页
第9页 / 共27页
说明书正文HJB课设.pdf_第10页
第10页 / 共27页
说明书正文HJB课设.pdf_第11页
第11页 / 共27页
说明书正文HJB课设.pdf_第12页
第12页 / 共27页
说明书正文HJB课设.pdf_第13页
第13页 / 共27页
说明书正文HJB课设.pdf_第14页
第14页 / 共27页
说明书正文HJB课设.pdf_第15页
第15页 / 共27页
说明书正文HJB课设.pdf_第16页
第16页 / 共27页
说明书正文HJB课设.pdf_第17页
第17页 / 共27页
说明书正文HJB课设.pdf_第18页
第18页 / 共27页
说明书正文HJB课设.pdf_第19页
第19页 / 共27页
说明书正文HJB课设.pdf_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

说明书正文HJB课设.pdf

《说明书正文HJB课设.pdf》由会员分享,可在线阅读,更多相关《说明书正文HJB课设.pdf(27页珍藏版)》请在冰点文库上搜索。

说明书正文HJB课设.pdf

武汉理工大学智能仪器课程设计说明书11绪论绪论数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。

传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,其精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。

本系统用单片机AT89S51构成智能化数据采集和电压监控系统,具有精度高、速度快、性能稳定和电路简单且工作可靠等特点,具有很好的使用价值。

目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。

本课设用ADS7825制成数字电压表可以测量05V的输入电压值,ADS7825进行模数转换然后送给单片机处理,用数码显示器进行测量结果的显示。

以便于与其它设备进行数据交换,便于实现智能化控制。

该系统以单片机为核心具有如下功能:

1)能对2-4v范围变化的模拟信号进行连续采样(模拟信号中有尖峰脉冲干扰和50Hz工频干扰)和实时数字显示,采样频率为10Hz,保存最近的50个连续采样值;2)当采样值小于2v时第1个报警灯闪烁,大于4v时第2个报警灯闪烁;3)能对存在的系统误差进行线性插值校正;4)能和上位机进行串行通信,根据上位机的要求随时将采样数据上传;5)能产生占空比为20%幅度为5v的50Hz脉冲波供外设用。

本章重点对它的硬件和软件部分进行详细介绍2方案设计方案设计2.1A/D采样模块的选择采样模块的选择方案一:

利用ADS7825芯片来进行A/D转换,它是4通道,16位模数转换器,由单一5V电源供电,数据采样及转换时间不超过25us,它的最大优点就是数据可以并行输出,又可串行输出,所以转换速度比较快,使用也很方便。

方案二:

MAX197是一种单电源,工作电压为5V,并行12位A/D转换器,其采样速率可以达到100ksps,采样有效动态范围可增至16位。

具有8个采集通道,可独立设置多种输入范围:

10V、5V、0V至10V或0V至5V,且任何通道的故障都不影响其他通道的变换结果。

由于该芯片在片内已有采样跟踪保持电路,内部时钟电路和内部参考电压源,所以在应用时,所需外围元件极少,因此,用MAX197构成的数据采集系统具有硬件结构简单、体积小和可扩展功能多的优点。

经比较,为了更好实现电路要求、采集精度适合,AD采样模块采用方案一。

2.2显示模块的选择显示模块的选择方案一:

采用液晶1602显示,它属于工业字符型液晶,能够同时显示16x02即32个字符。

1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。

它由若干个5X7或者5X11等点阵字符位组成,武汉理工大学智能仪器课程设计说明书2每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。

但它微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。

方案二:

采用数码管显示,数码管是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。

LED数码管常用段数一般为7段有的另加一点,它在单片机里可以用作静态显示和动态显示,只要我们输入段码和位码,我们就可以在相应的数码管显示我们想要的数值,不断的循环移位显示,并且保证间隔时间很短,就可以动态显示了。

根据性价比和编程方便的需要,综合考虑我选择方案二2.3总设计方案与系统框图总设计方案与系统框图根据设计要求,该系统采用51内核的8位机作为控制核心,A/D转换器采用ADS7825,它是16位转换,因为要求电压显示精度要1mv,所以8位转换明显不够,所以就采用了16位转换的,数字量经过CPU处理后,转化为十进制数,这就是我们要显示出来的电压值,我们采用动态显示,把4位数字量循环显示出来,同时我们还可以利用51的定时器在P3.6引脚输出满足条件的方波,利用RS232端口可以实现单片机与PC机之间的串口通信,把单片机采集到的50个数据进行实时传送和显示。

输入AD转换的模拟信号,50hz工频干扰利用带阻滤波器消除,脉冲干扰信号采用数字滤波用软件编程加以去除,零点误差和增益误差利用软件编程进行校正。

本设计的系统框图如下图2-1所示:

图2-1系统总设计框图3硬件部分设计硬件部分设计3.1单片机系统介绍以及报警显示方波输出单片机系统介绍以及报警显示方波输出本设计采用的单片机芯片为AT89C51,提供以下标准功能:

4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

模拟量输入通道AD转换单片机LED数码显示方波输出RS232串口PC上位机显示报警显示滤波电路武汉理工大学智能仪器课程设计说明书3同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

由于我们平时学习已经对它有很深的了解,所以在这里我就不对它的各个引脚功能进行详细说明。

如下图3.3所示,我们把P0口做为数码显示通道,把P1口作为A/D转换后的数字量输入通道,P3.0和P3.1作为上位机串口通信的接收发送通道,P3.2和P3.3作为报警LED灯亮灭通道,P3.6作为所需方波输出通道,P2口作为数码管位选通道以及AD芯片的控制信号。

工作原理工作原理:

A/D转换后的数字量从P1口输入,由于AD为16位转换,所以数字量分高8位和低8位进行接收,在芯片中进行处理后把模拟量电压的段码从P0口输出给数码管,其中P2.0P2.3作为数码管的位选信号端,就可以实现动态显示。

P3.2和P3.3口我们可以用软件编程来实现报警灯的亮灭,当电压值小于2.000V时我们让P3.2口置1,这时报警灯1亮,当电压值大于4.000V时,我们让P3.3口置1,这时报警灯2亮。

要想输出符合要求的方波,我们可以编程来实现,同时还需要硬件电路实现,当P3.6口为高电平时,光电耦合器不工作,这时通过上拉电阻得到电压值5V,当P3.6口为低电平时,光耦合导通,这时输出电压为0,占空比为20%,周期为50HZ,只要利用单片机的定时器和中断编程就可以得到。

1243px1px2px3px4TXD1AD0AD1AD2AD3AD4AD5AD6AD7BYTEBUSYRCRXD1XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C130pfC230pfX1CRYSTALFREQ=11.0592MHzR11kC322ufVCCD2LED-REDR210R310D1LED-GREENABCD1264U5MOC3022+5VR730K+4VR810k图图3.1单片机芯片及电路图单片机芯片及电路图3.2滤除工频干扰的滤波电路设计滤除工频干扰的滤波电路设计滤除50HZ工频干扰的滤波电路设计,采用具有滤波,放大,反馈,调节功能的可调Q值双有源带阻滤波电路,在有源带阻滤波电路基础上,又增加了具武汉理工大学智能仪器课程设计说明书4有反馈功能的运算放大器U2:

A和具有调节功能的电位器RW。

其中,电位器RW具有调节电路的品质因数Q的作用,Q值越大,阻带宽度越窄,选频特性越好滤除50HZ工频干扰的滤波电路如图3.2所示,在带阻滤波电路设计中,带阻滤波器的中心频率f01/2RC,所以令C4C50.01uF,则R4=R5318.4K,C110.02uF,R6159.2K调整电位器RW,使阻带中心频率在50HZ处,并且阻带带宽在以内,以达到在输出电压V0中完全滤除50HZ工频信号及其二次谐波干扰的目的C40.01uFC50.01uFC110.02uFR4318.4kR5318.4kR6159.2k321411U2:

ALM324567411U2:

BLM32450%RV2300k+5V-5V-5V+5V50HZ工频干扰信号陷波电路工频干扰信号陷波电路图图3.250HZ工频干扰滤波电路工频干扰滤波电路3.3系统系统A/D转换电路介绍转换电路介绍由于设计要求规定电压分辨率要达到1mv,因为8位AD的分辨率为1/28大于0.001,所以不满足条件,所以我选择16位的AD转换器ADS7825,分辨率为1/216小于0.001下面对这个芯片做介绍ADS7825是美国B-B公司生产的4通道,16位模数转换器。

它由单一5V电源供电,数据采样及转换时间不超过25s,可输入-10.010.0V的模拟电压。

AD转换后的数据既可并行输出,也可串行输出,数据转换模式还可设置为4通道间连续循环转换,使用极其方便。

下面对该芯片引脚做详细说明,如下图3.1所示:

AIN0AIN3:

4个模拟通道,可接受-10.010.0V的模拟输入电压。

PAR/SER:

该管脚为高电平时,数据在D0D7脚并行输出;为低电平时,数据在SDATA脚串行输出。

BYTE:

并行数据输出选择位,仅在数据作并行输出时使用。

BYTE=1时,输出低8位D0D7,BYTE=0时,输出高8位D0D7。

R/C:

读数/启动转换,该管脚被一下降沿触发将保持前次的采样并启动下一次模数转换;上升沿触发,则允许读数。

BUSY:

状态标志位,只读管脚。

在AD转换过程中,该管脚输出始终保持低电武汉理工大学智能仪器课程设计说明书5平。

转换结束,数据锁存到输出寄存器后,该管脚输出高电平。

当数据作并行输出时,必须使BUSY=1,才可读数。

CONTC:

选择转换模式。

CONTC=0时,必须用CS及R/C来逐次启动AD转换;CONTC=1时,采样和读取数据在4个通道之间自动循环进行。

SYNC:

串行数据输出帧同步信号。

SYNC为输出管脚,仅在数据作串行输出时使用。

输出正脉冲时,其后沿标志着一帧数据的最高位开始输出。

TAG:

该脚仅在多个ADS7825联合工作、数据作串行输出且用外部时钟工作时才起作用。

当电路中使用单个ADS7825时,可在TAG脚接低电平。

当电路中ADS7825联合工作时,可将前一级ADS7825的SDATA脚接至后一级ADS7825的TAG脚。

第一级ADS7825的TAG脚接地,最后一级ADS7825的SDATA脚输出数据,这样,最后一级ADS7825的SDATA脚将由后级至前级依次输出各个ADS7825的转换数据。

AD0AD1AD2AD3AD4AD5AD6AD7BYTEBUSYRCAT89C51AIN02AIN13AIN24AIN35REF7CAP6AGND11AGND28D017D116D215D313D412D511D610D79A019A118PAR/SER20BYTE21R/C22CS23BUSY24CONTC25PWRD26VA27U3ADS782559%RV11kVCCVCCC922uFA/D转换器图图3.3ADS7825芯片模数转换电路芯片模数转换电路3.4零点误差和增益误差校正电路零点误差和增益误差校正电路如右图所示,它是八通道的模拟输入开关,我们利用CPU对它的控制可以进行通道输入的设置,分别在输入端接入零位电压和标准电源E,测出滤波器后的电压分别为y0和y1,得到两个方程,表示为:

0=b1y0+b0E=b1y1+b0把这两个方程联立后解得b1=E/(y1-y0)b0=E/(1-y1/y0)于是经过校正后的实际模拟电压输入量X=E(y-y0)/(y1-y0)图3.4多路模拟开关INPUTX013X114X215X312X41X55X62X74A11B10C9INH6X3U54051VCCX013X114X215X312X41X55X62X74A11B10C9INH6X3U54051VCCGND武汉理工大学智能仪器课程设计说明书6自动增益校正原理如下所示:

图3.4.2增益自动校正原理图3.5数码显示部分设计数码显示部分设计数码管就采用共阴极的,由单片机P0口输给它段码,高电平有效,每个数码管显示所要的数字,另外由单片机P2.0P2.3口来作为数码管的位选通,低电平有效,位不断的循环选通,且延时时间很短就形成了动态显示图3.5数码显示器3.6上位机通信电路设计上位机通信电路设计上位机通讯电路本设计采用MAX232芯片进行电平转换,MAX232芯片是美信公司专门为电脑的RS232标准串口设计的接口电路,使用+5V单电源供电,它的作用就是完成TTL电平与RS232电平的转换,即是一种把电脑的串行口RS232信号电平(-10,+10v)转换为单片机所用到的TTL信号点平(0,+5)的芯片。

MAX232引脚分布如图3.6所示,各引脚标号,作用如下:

1载波检测DCD2接收数据RXD3发送数据TXD4数据终端准备好DTR5信号地SG6数据准备好DSR7请求发送RTS8清除发送CTS9振铃提示RIAA/D转换器微处理器px1px2px3px4VCCSEVEN-MPX4-CC-BLUE234567891RP1武汉理工大学智能仪器课程设计说明书7TXDRXDTXDRXDT1IN11R1OUT12T2IN10R2OUT9T1OUT14R1IN13T2OUT7R2IN8C2+4C2-5C1+1C1-3VS+2VS-6U2MAX232C40.1ufC50.1ufC60.1ufC70.1ufERRORTXD3RXD2CTS8RTS7DSR6DTR4DCD1RI9P1COMPIMVCCGNDT1IN11R1OUT12T2IN10R2OUT9T1OUT14R1IN13T2OUT7R2IN8C2+4C2-5C1+1C1-3VS+2VS-6U2MAX232C40.1ufC50.1ufC60.1ufC70.1ufERRORTXD3RXD2CTS8RTS7DSR6DTR4DCD1RI9P1COMPIMVCCGND图图3.6RS232串口通信电路串口通信电路4系统软件部分设计系统软件部分设计4.1A/D转换子程序转换子程序unsignedintGetAdsvalue()unsignedintDianYa1=0,DianYa2=0,DianYa=0;Delay(10);CS_7825=0;/芯片选通使能RC_7825=0;RC_7825=1;/相当于给了一个高电平脉冲启动转换nop();nop();nop();nop();while(BUSY_7825=1);/等待转换结束BYTE_7825=1;Delay(10);DianYa1=ADS_Data;/返回电压寄存器中低八位的值BYTE_7825=0;Delay(10);DianYa2=ADS_Data;/返回电压寄存器中高八位的值DianYa=DianYa2*100+DianYa1;CS_7825=1;武汉理工大学智能仪器课程设计说明书8returnDianYa;/返回电压寄存器中的值4.2数码显示以及报警灯子程序数码显示以及报警灯子程序voidDisVoltage(unsignedintV_0804)doubleVoltage0=(double)V_0804;unsignedcharGe=0;/用于存取个位数值unsignedcharXiao1=0;/用于存取小数点后第一位数值unsignedcharXiao2=0;/用于存取小数点后第二位数值unsignedcharXiao3=0;/用于存取小数点后第三位数值LED1=0;LED2=0;Voltage0=(60.9365619412*(Voltage0/65535)*1000;/电压值已经转换并且*1000用于提取小数点后三位if(Voltage04000)LED2=1;/提取每一位的数值Ge=(unsignedint)Voltage0)/1000%10;Xiao1=(unsignedint)Voltage0)/100%10;Xiao2=(unsignedint)Voltage0)/10%10;Xiao3=(unsignedint)Voltage0)%10;/显示SMG_WData=0xff;/消隐SMG_DData=SMG_DcodeGe|0x80;/段码SMG_WData=SMG_Wcode0;/位码Delay(4);SMG_WData=0xff;/消隐SMG_DData=SMG_DcodeXiao1;/段码SMG_WData=SMG_Wcode1;/位码Delay(4);SMG_WData=0xff;/消隐SMG_DData=SMG_DcodeXiao2;/段码SMG_WData=SMG_Wcode2;/位码Delay(4);SMG_WData=0xff;/消隐SMG_DData=SMG_DcodeXiao3;/段码SMG_WData=SMG_Wcode3;/位码Delay(4);SMG_WData=0xff;武汉理工大学智能仪器课程设计说明书94.3方波输出子程序方波输出子程序voidTimer0(void)interrupt1using1OUT=0;/输出端为0TR0=0;/关闭计时器0TH0=0xF1;TL0=0x9A;/T0重新装入计数初值voidTimer1(void)interrupt3using2OUT=1;/输出端为1TR0=1;/启动计时器0TH1=0xB8;/T1重新装入计数初值TL1=0x00;voidmain()OUT=0;TMOD=0x11;/定时器设置工作方式EA=1;/开总中断ET0=1;/开中断允许标志位ET1=1;TH1=0xB8;/T1置计数初值TL1=0x00;TH0=0xF1;TL0=0x9A;/T0置计数初值TR0=1;/启动计数器TR1=1;while

(1)DisVoltage(GetAdsvalue();武汉理工大学智能仪器课程设计说明书104.4各单元流程图各单元流程图图图4.4.2数码显示与报警流程图数码显示与报警流程图图图4.4.1A/D转换流程图转换流程图选通ADS7825芯片启动A/D转换延时等待BYTE置1,返回电压寄存器低八位BYTE置0,返回电压寄存器高八位合并成16位数字量转换结束即BUSY=1?

开始返回16进制数字量转换为10进制数LED1报警灯亮LED2报警灯亮提取要显示的个位,十百千分位位选通0,输入个位段码,延时位选通1,输入十分位段码,延时位选通2,输入百分位段码,延时位选通3,输入千分位段码,延时小于2000?

大于4000?

开始武汉理工大学智能仪器课程设计说明书11图图4.4.3方波产生流程图方波产生流程图定时器T0,T1设置工作方式1置T0计数初值为0F19AH置T1计数初值为0B800H开中断允许位ET0和ET1开总中断EA启动计数器T0和T1在主程序运行等待中断开始输出端P3.6=0输出端P3.6=1开启T0计时,TR=1关闭T0计时,TR0=0T0重新装入初值T1重新装入初值T0计时4ms后进入中断服务子程序1T1计时20ms后进入中断服务子程序2返回返回武汉理工大学智能仪器课程设计说明书12图图4.4.4RS232串口通信流程图串口通信流程图设定定时器3工作设定波特率设定串行口工作方式启动定时器3是否被应答?

发送完毕?

发送数据发送请求等待计数变量+1开始结束武汉理工大学智能仪器课程设计说明书135仿真结果仿真结果图图5.1电压刚低于电压刚低于4V显示图显示图图图5.2电压刚大于电压刚大于2V显示图显示图武汉理工大学智能仪器课程设计说明书14图图5.3电压低于电压低于2V时报警图时报警图图图5.4电压高于电压高于4V时报警图时报警图武汉理工大学智能仪器课程设计说明书15图图5.5方波输出图方波输出图6课设总结课设总结作为一名测控专业的大三学生,我觉得做智能仪器课程设计是十分有意义的,而且是十分必要的。

在已度过的大学时间里,我们大多数接触的是专业课。

我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?

如何把我们所学的专业基础课理论知识运用到实践中去呢?

我想做类似的课程设计就为我们提供了良好的实践平台。

在这次课程设计中,我们运用到了以前所学的专业课知识,如:

Protel制图、汇编语言、模拟和数字电路知识等。

在学习的过程中带着问题去学,我发现效率很高,这是我做这次课程设计的一大收获。

同时,我认识到,要做好一个课程设计,就必须做到:

在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。

两周的课程设计结束了,但是从中学到的知识会让我受益终身。

发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。

最后还要在这里感谢牟新刚老师对我们细心指导!

武汉理工大学智能仪器课程设计说明书16【参考文献】【参考文献】1史健芳智能仪器设计基础(第二版)电子工业出版社2012,92张毅刚,彭喜元等新编MS-51单片机应用设计(第三版)哈尔滨工业大学出版社,2008,43徐爱钧.智能化测量控制仪表原理与设计(第二版)M.北京:

北京航空航天大学出版社,2004.4吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用M.北京:

清华大学出版社,2002.5张国勋,缩短ICL7135A/D采样程序时间的一种方法J.电子技术应用,1993,第一期.武汉理工大学智能仪器课程设计说明书17附录一程序清单/*系统晶振:

12MHz*/#includereg52.h#includeintrins.h#definenop()_nop_()/引脚定义sbitCS_7825=P27;sbitBYTE_7825=P24;sbitBUSY_7825=P25;sbitRC_7825=P26;sbi

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2