电力系统远动实验_第1页
电力系统远动实验_第2页
电力系统远动实验_第3页
电力系统远动实验_第4页
电力系统远动实验_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电力系统远动实验遥测量遥信量采集方案设计姓名:学号:指导老师:日期:2012.12・12一、实验目的设计一个遥测、遥信信号采集系统,同时将采集到的信号通过串口在PC端显示二、实验要求画出信号采集系统的原理图选出主要功能芯片编写关键程序代码三、实验内容芯片选择1.AD0809ADC0809是8位逐次逼近型A/D转换器。它由一个8路模拟开关、一个地址锁存译码器,一个A/D转换器和一个三态输出锁存器组成(见图1)。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。2.C51单片机IH3—2-IN2227Ulkll75一5IH3—2-IN2227Ulkll75一526-IMO1%—425―顺AIH7-524-ADDBSTART-623-ADOCEOC-7鬟一ALEH21OUTPUTENABLI-9?rU*1CLOCK-10IS111811krtSB1£i讪TU12-rfi图1ADC080P管脚图F1.DLJ_VGC140P11匚239-PQO(*D0)Pl.SC336□P0.1(AD1)匚4W1FQ.2(^D2)P1.4匚536ZPa.3IAD3)P1,5C6351P04(*D4)Pi7W□P0.5(XC6)FL7CaS3□ro.6(A.D6)HST匚932Jro.7(AD7)(RXD>P3-.0lLItH31-EAA/PP(TXDJPSJ匚ii3Q二ALE林RKJ(mO)F3.2[Z1229JP5EN(INT1)P3.3Ln2S_R2.7(JklS}(lo)p^r1427-pz.6m何(I1)P3-5CH363PS4[AlJ}jWH)P3.5[ZIS251FS.4(A12)(HD}PJ.7C_1724_R2.3XTAL2C1823JP2.2MK0XTAL1C心22□P2.1啊□HD匚2021ZF2.0〔Afi|图28051芯片管脚图本实验中的核心芯片,MCS-51系列单片机拥有4组I/O口,用于控制A/D采样,遥信量采集,同时与上位机进行串口通讯。3.MAX232MAX232芯片是美信(MAXIM)公司专为RS-232标准串口设计的单电源电平转换芯片。TOPVIEWGl+Vi-Cl-G2+cz-也N11C£153*连MAX2Z0135杪'澎12511rWV二GihDHourHijurTf|N电ow14-5TOPVIEWGl+Vi-Cl-G2+cz-也N11C£153*连MAX2Z0135杪'澎12511rWV二GihDHourHijurTf|N电ow14-5THAW二INPUTSDIP/SODRNCEC1i:224洗.MAX220D047仆褊0混033033MAX2321.0,ii101二1.0MAX232AD.t0.10.1二10.1CAPACIT^NtE(uF)Diagrams4±ontjiiij&dinthefuEldatasheet.TTU'CVA3L:TPUTSV-^'cc-5VTO+10VV'OL~.AC-iEDCUB.E^C2-VO-TAGE3NVE-TER.2日51+5V—{RS-2:<-fINPJTS方案原理遥测量即为0〜5V电压量,为模拟信号,需通过单片机和AD芯片方能转化为数字信号;遥信量仅有0和1两种状态,可直接使用单片机IO口进行采集。本方案展示原理,方便起见,遥信遥测量各采一路。再利用单片机的串口通信功能,借助于驱动电路,与PC端串口进行通讯,上传信息,在PC端界面显示。实验原理图关键代码1.单片机端代码(信息采集与发送)平台:C语言#include<reg51.h>unsignedcharsbuf[4];unsignedinti;unsignedintj;unsignedchargetdata;unsignedinttemp;unsignedinttemp1;unsignedcharcount;unsignedchard;sbitST=P1A1;sbitOE=P1A2;sbitEOC=P1A3;sbitCLK=P3A3;sbityaoxin=P1A。;voidTimeInitial();voidDelay(unsignedinti);//voidTimeInitial(){SCON=0x50;TMOD=0x12;TH1=(65536-200)/256;//定时时间为2us,亦即CLK周期为0.4usTL1=(65536-200)%256;ET1=1;TR1=1;TH2=0xfd;TL2=0xfd;//装入初值串行口初始化波特率9600,定时器0,工作方式2SM0=0;SM1=1;//串行口工作于方式2EA=1;//总中断允许}voidDelay(unsignedinti)//延时函数{unsignedintj;for(;i>0;i--){for(j=0;j<125;j++){;}}}voidsend(){SBUF=77;while(!TI);TI=0;Delay(10);SBUF=yaoxin;while(!TI);TI=0;Delay(10);SBUF=99;while(!TI);TI=0;Delay(10);SBUF=temp;while(!TI);TI=0;}voidmain()//主函数{TimeInitial();while(1){ST=0;//关闭转换OE=0;//关闭输出ST=1;//开启转换ST=0;//关闭转换while(EOC==0);//判断是否转换结束:是则执行以下语句,否则等待OE=1;//开启数据输出允许getdata=P2;//将数据取走,存放在变量getdata中OE=0;//关闭输出temp=getdata*1.0/255*500;//电压值转换,5V作为参考电压,分成256份send();}}voidtl(void)interrupt3using0//定时器1中断服务函数;作用:产生CLK信号{TH1=(65536-200)/256;TL1=(65536-200)%256;CLK=〜CLK;}2.PC端代码(串口接收数据)平台:VBPrivateSubCommand1_Click()'按钮单击事件MSComm1.PortOpen=False'关闭串口UnloadForm1'卸载form1EndSubPrivateSubForm_Load()'窗体载入事件MSComm1.CommPort=1'设置串口为com1MSComm1.Settings="9600,n,8,1"'通讯参数波特率奇偶校验数据位停止位MSComm1.InputMode=comInputModeBinary'二进制接收MSComm1.PortOpen=True'打开串口MSComm1.InBufferCount=0'清空接收缓冲区MSComm1.RThreshold=1缓冲区中接收到一个字符,就产生一次OnComm事件EndSubPrivateSubMSComm1_OnComm()'有数据传送时触发DimindataAsVariant定义变量Dimarr(0)AsByte'定义字节数组PublicselAsVariant定义sel变量用于区分数据类别SelectCaseMSComm1.CommEvent''CommEvent属性:返回最近的通讯事件或错误。通过对它具体属性值的查询,我们就可以获得通讯事件和通讯错误的完整信息。当其值是comEvReceive时表示接收到数据。CasecomEvReceive'有接收事件indata=MSComm1.Input'接收到的数据存放到indata里arr(0)=AscB(indata)'返回indata的值ifarr(0)>5thensel=arr(0)elseifsel==77thenTextl.Text=arr(0)在textl中显示数据77为遥信量发送标志elseifsel==99thenText2.Text=arr(0)在text2中显示数据99为遥测量发送标志EndifMSComm1.InBufferCount=0'清空接收缓冲区EndSel

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论