毕业设计(论文)-电工测量复用表设计.doc_第1页
毕业设计(论文)-电工测量复用表设计.doc_第2页
毕业设计(论文)-电工测量复用表设计.doc_第3页
毕业设计(论文)-电工测量复用表设计.doc_第4页
毕业设计(论文)-电工测量复用表设计.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1 引言传统的电工量(电压、电流、频率、功率因数、各种功率、纹波系数等)测量使用各种各样的测量仪表,但计算机技术的发展已经为新型电工测量系统的设计提供了可能。对用户负载的电压、电流进行取样,应用数据采集与数据处理技术可以方便地给出电压(电流)的各次谐波成分的幅度、频率与相位,从而利用计算方式可以一次性地给出前述众多电工量,实现一机多用。1.1 课题研究的背景电学参数测量技术涉及范围广,特别是微电压、微电流、高电压以及待测信号强弱相差极大的情况下,既要保证弱信号的测量精度又要兼顾强信号的测量范围,在技术上有一定的难度。传统的低成本仪表在测量电压、电流时都采用手动选择档位的方法来转换量程。在使用中,当忘记转换档位时,会造成仪表测量精度下降或损坏。 现代电子测量对系统的精度要求越来越高且智能化程度也越来越高。近十几年来,单片机作为微计算机一个很重要的分支,应用广泛,发展迅速,已经对人类社会产生了深远的影响。单片机在生产过程控制、自动检测、数据采集及处理、科技计算、商业管理及办公室自动化等方面获得了广泛的应用。单片机具有体积小、重量轻、耗能省、价格低可靠性和通用灵活性等特点,尤其是美国intel公司生产的mcs-51系列单片机,由于其具有集成度高、处理功能强、可靠性好、结构简单、价格低廉、易于使用等优点,在我国已经得到广泛的应用。由于mcs-51单片机易于学习、掌握、性能价格比高,另外以mcs-51单片机的基本内核为核心的各种扩展型、增强型的单片机不断推出,所以在今后若干年内,mcs-51系列单片机仍是我国在单片机应用领域中首选机型。单片机技术在自动控制领域中有着十分广泛的应用。如汽车、航空、电话、传真、视频等,很多行业设计自动控制情况下,通常会涉及单片机技术。1.2 课题研究的意义电压、电流是基本的物理量,对电压、电流进行测量的要求是普遍存在的,无论在科学研究生产实践,或是在日常生活中,人们都需要对电压进行测量。不仅电量,即使是非电量也常常是借助电压、电流测量的方法来进行研究。本设计的最基本的功能就是实现一定范围内的电压、电流的测量。功率因数是交流电路的重要技术数据之一。功率因数的高低,对于电气设备的利用率和分析、研究电能消耗等问题都有十分重要的意义。因此,在电力系统和工业生产中,功率因数的在线精确检测对电量计算及无功功率补偿计算十分重要。所谓功率因数,是指任意二端网络(与外界有二个接点的电路)两端电压u与其中电流i之间的位相差的余弦。在二端网络中消耗的功率是指平均功率,也称为有功功率,它等于由此可以看出,电路中消耗的功率p,不仅取决于电压v与电流i的大小,还与功率因数有关。电路的功率因数定义为有功功率p与视在功率功率s的比值,即:其中,角表示功率因数角,代表了电压u与电流i之间的夹角。功率因数也就是功率因数角的余弦,因此,测出电压与电流间的相位差,就可以计算出功率因数。功率因数的大小,取决于电路中负载的性质。对于电阻性负载,其电压与电流的位相差为0,因此,电路的功率因数最大();而纯电感电路,电压与电流的位相差为,并且是电压超前电流;在纯电容电路中,电压与电流的位相差则为,即电流超前电压。在后两种电路中,功率因数都为0。对于一般性负载的电路,功率因数就介于0与1之间。功率因素的测量是本课题设计的一个比较重要的功能。在交流电路中,由电源供给负载的电功率有两种:一种是有功功率,一种是无功功率。有功功率是保持用电设备正常运行所需的电功率,也就是将电能转换为其他形式能量(机械能、光能、热能)的电功率。无功功率比较抽象,它是用于电路内电场与磁场的交换,并用来在电气设备中建立和维持磁场的电功率。它不对外做功,而是转变为其他形式的能量。凡是有电磁线圈的电气设备,要建立磁场,就要消耗无功功率。无功功率决不是无用功率,它的用处很大。电动机需要建立和维持旋转磁场,使转子转动,从而带动机械运动,电动机的转子磁场就是靠从电源取得无功功率建立的。变压器也同样需要无功功率,才能使变压器的一次线圈产生磁场,在二次线圈感应出电压。因此,没有无功功率,电动机就不会转动,变压器也不能变压,交流接触器不会吸合。在正常情况下,用电设备不但要从电源取得有功功率,同时还需要从电源取得无功功率。如果电网中的无功功率供不应求,用电设备就没有足够的无功功率来建立正常的电磁场,那么,这些用电设备就不能维持在额定情况下工作,用电设备的端电压就要下降,从而影响用电设备的正常运行。无功功率对供、用电产生一定的不良影响,主要表现在:(1)降低发电机有功功率的输出。(2)降低输、变电设备的供电能力。(3)造成线路电压损失增大和电能损耗的增加。(4)造成低功率因数运行和电压下降,使电气设备容量得不到充分发挥。从发电机和高压输电线供给的无功功率,远远满足不了负荷的需要,所以在电网中要设置一些无功补偿装置来补充无功功率,以保证用户对无功功率的需要,这样用电设备才能在额定电压下工作。这就是电网需要装设无功补偿装置的道理。由此可见通过仪器测量电路中的有用功率和无用功率,从而改变电路中的有用功率和无用功率的比例,对于电器设备的正常工作显得十分的重要。1.3 智能仪表国内外发展概况智能仪器/仪表是计算机技术向测量仪器移植的产物。是含有微计算机或微处理器的测量仪器。由于它拥有对数据的存储、运算、逻辑判断及自动化操作等功能,有着智能的作用(表现为智能的延伸或加强等),因而被称之为智能仪器。这一观点已逐渐被国内外学术界所接受。如我国电磁测量信息处理仪器学会于1988年正式成立“自动测试与智能仪器专业学组”,1986年imeco(internationalm easurementconfederation,国际测量联合会)以“智能仪器”为主题召开了专门的讨论会,ifac (internationalfederation of automatic control,国际自动控制联合会)1988年的理事会正式确立“智能元件及仪器”(in telligentc omponentsa ndi nstruments)(tc25)( c&i)为其系列学术委员会之一。此外,1989年5月在我国武汉召开了第一界测试技术与智能仪器国际学术讨论会(ismt 1189),自从 1971年世界上出现了第一种微处理器(美国intel公司4004型4位微处理器芯片)以来,微计算机技术得到了迅猛的发展。测量仪器在它的影响下有了新的活力,取得了新的进步。电子计算机从过去的庞然大物己经可以在某种特定条件下缩小到可以置于测量仪器之中,作为仪器的控制器、存储器及运算器,并使其具有智能的作用。概括起来说,智能仪器在测量过程自动化、测量结果的数据处理及一机多用(多功能化)等方面己经取得巨大进步。到80年代,可以说,在高准确度、高性能、多功能的测量仪器中已经很少有不采用微计算机技术的了。总的来说,传统仪表的不断的改进,新型仪表也不断的出现,传统的手持式仪表表,在采用了单片微机控制之后,功能更加多样,使用更加方便、可靠,而且准确度大为提高。1.4 本课题的主要工作随着电子技术的飞速发展,以前的机械式的电压、电流、功率因素、有用功率和无用功率测量仪表已经渐渐的被电子仪表所替代。而且现在的电子产品的一个显著的特点是:体积越来越小,功能越来越多元化,性能越来越好。鉴于目前的电子产品的发展趋势,本课题设计一个电工测量复用系统,该系统可以同时完成电压、电流、功率因素角、有用功率、无用功率等物理参数的测量和计算。同时可以通过按键的选择在led数码管上面显示的参数值。本课题的主要工作和设计内容如下:1查阅电工测量仪表的相关资料;2检索复用表资料;3掌握多通道信号的取样与数据采集技术;4掌握各种电工量的概念;5设计完成此复用表;6复用表程序设计;2 总体方案的设计及组成2.1 系统的基本功能一般来说,电子测量仪器的硬件组成包括:模拟信号输入部分、信号处理部分、模数转换部分和人机交互部分。但每一部分的具体实现方法应结合仪器所需完成的功能、成本及相关技术的发展与成熟程度等因素综合考虑。本课题考虑设计一个系统,该系统能完成电压测量、电流测量、功率因素测量、有用功率测量和无用功率测量的要求。主要的设计思路是对用户负载的电压、电流模拟量进行取数字样,应用数据采集与数据处理技术可以方便地给出电压(电流)的各次谐波成分的幅度、频率与相位,通过比较电压、电流的相位差,计算出功率因素角,最后利用计算方式可以得到有用功率和无用功率,从而实现一个仪器测量众多电工量。2.2 设计方案比较根据以上系统所需完成的功能和特点,本设计提出方案1和方案2,并进行比较最后得出方案1比较适合这次的毕业设计。2.2.1 设计方案一在方案1中,电工测量复用表系统设计的核心芯片采用的mcs-51系列单片机。本电工测量系统选用at89c51单片机作为系统的核心。该单片机具有两个外部中断,两个定时中断,方波输入接入其中一个中断,当用低脉冲到来,触发外部中断0,同时定时器0开始计数,通过计算得到功率因素角。模拟数字转换芯片采用的是8位串行ad转换芯片adc0832,利用该芯片实现把电压和电流模拟信号转换为数字信号。通过前面得到的电压、电流和功率因素角等值,然后计算得到有用功率和无用功率,最后通过按键选择显示内容。系统主要分为:电源部分、模拟数字转换部分、方波输入电路、晶振电路、显示电路、复位等电路。图1为基于msc-51单片机的设计框图。图1 基于msc-51单片机设计框图2.2.2 设计方案二在方案2中,电工测量复用表系统设计的核心芯片采用的pic系列单片机。选用pic16c74单片机作为系统的核心。该单片机内置具有8路10 位 a/d转换,3个硬件定时器,方波输入接入其中一个中断,当用低脉冲到来,触发外部中断0,同时定时器0开始计数,通过计算得到功率因素角。外部电压和电流接入到其中的两个ad转换an0和an1。通过前面得到的电压、电流和功率因素角等值,然后计算得到有用功率和无用功率,最后通过按键选择显示内容。系统主要分为:电源部分、电压输入、电流输入、方波输入电路、晶振电路、显示电路、复位等电路。图2为基于pic单片机的设计框图。图2基于pic单片机设计框图2.2.3 方案比较方案1采用的是msc-51系列单片机,该系列单片机没有集成ad转换的功能,所以需要外接一个ad转换芯片,这样硬件电路比较复杂,但是由于msc-51是大多数高校的单片机的入门课程,而且其开发工具也比较多,也有很多人已经自制出一套免费的开发工具,所以开发成本比较低廉,比较适合学生毕业设计选用。方案2采用的是pic系列单片机,该系列单片机集成了8路10位ad转换的功能,不需要外接ad转换芯片,这样硬件电路十分简单,但是由于pic系列单片机的开发工具费用比较昂贵,前期一次性投入比较大,比较适合公司的选用。综合分析,本次毕业设计采用方案1进行设计。2.3 系统的设计原则电工测量复用表是科学研究生产实践,日常生活的重要保证,其功能、测量设备和技术都应遵循以下原则:1. 系统设计满足现行电子仪表技术规范的要求。2. 先进性。系统将在了解国内外发展动态,吸收其经验和成果的基础上进行方案设计,使系统的技术性能和水平具有明显的先进性。3. 可靠性。系统运行安全可靠,性能稳定,可以在恶劣环境下长期工作。4. 通用性。在设计时,应充分考虑其应用对象的共性,使系统具有较强的通用性。5. 扩展性。系统的设计容量要足够大,满足系统今后扩充需要。6. 经济性。系统的造价经济合理,性能价格高。7. 操作维护方便。在软件方面,要求人机界面友好,操作简便;在硬件方面,要求维护检修方便。3 硬件结构与设计电工测量复用表设计分为硬件设计部分和软件设计部分,硬件是软件的基础,软件是硬件的灵魂,下面我们对硬件设计进行简单的描述。3.1 at89c51单片机简介单片机是一个单芯片形态,面向控制对象的嵌入式应用计算机系统。它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。从此,计算机技术在两个重要领域通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。at89c51 是美国 atmel公司生产的低电压,高性能 cmos8位单片机,片内含4 k bytes 的可反复擦写的只读程序存储器(perom)和128bytes的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位中央处理器(cpu)和flash存储单元,支持isp在线下载程序,功能强大at89c51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。 主要性能参数:l 与mcs-51产品指令系统完全兼容l 4k字节可重擦写flash闪速存储器l 1000次擦写周期l 全静态操作:0hz24mhzl 三级加密程序存储器l 1288字节内部raml 32个可编程io口线l 2个16位定时计数器l 6个中断源l 可编程串行uart通道l 低功耗空闲和掉电模式at89c51的引脚图如图3所示,各引脚的主要功能为:图3 at89c51的引脚图l vcc: 提供电源l gnd: 地l p0口:p0 口是一组8 位漏极开路型双向 io 口,也即地址数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个ttl逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在fiash编程时,p0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。l p1口:p1是一个带内部上拉电阻的8位双向io口,p1的输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(ili)。flash 编程和程序校验期间,p1 接收低 8 位地址。l p2口:p2是一个带有内部上拉电阻的8位双向io口,p2的输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(ili)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行movxdptr指令)时,p2口送出高8位地址数据。在访问 8 位地址的外部数据存储器(如执行movxri指令)时,p2 口线上的内容(也即特殊功能寄存器(sfr)区中r2寄存器的内容),在整个访问期间不改变。flash 编程或校验时,p2 亦接收高位地址和其它控制信号。l p3口:p3口是一组带有内部上拉电阻的8位双向io口。p3口输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对p3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的p3 口将用上拉电阻输出电流(ili)。p3 口除了作为一般的 io 口线外,更重要的用途是它的第二功能,如表1所示:表1 p3口的第二功能端口引脚第二功能p3.0rxd(串行输入口)p3.1txd(串行输出口)p3.2int0(外中断0)p3.3int1(外中断1)p3.4t0(定时计数器 0 外部输入)p3.5t1(定时计数器 1 外部输入)p3.6wr(外部数据存储器写选通)p3.7rd(外部数据存储器读选通)p3 口还接收一些用于 flash 闪速存储器编程和程序校验的控制信号。l rst:复位输入。当振荡器工作时,rst引脚出现两个机器周期以上高电平将使单片机复位。l aleprog: 当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ale 仍以时钟振荡频率的 l6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ale脉冲。对flash存储器编程期间,该引脚还用于输入编程脉冲。如有必要,可通过对特殊功能寄存器(sfr)区中的8eh单元的do位置位,可禁止ale操作。该位置位后,只有一条movx和movc指令ale才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ale无效。l ea/vpp:外部访问允许。欲使cpu仅访问外部程序存储器(地址为0000hffffh),ea端必须保持低电平(接地)。需注意的是:如果加密位lb1被编程,复位时内部会锁存ea端状态。如ea端为高电平(接vcc端),cpu则执行内部程序存储器中的指令。flash 存储器编程时,该引脚加上+12v 的编程允许电源 vpp,当然这必须是该器件是使用 12v 编程电压 vpp。l xtal1:振荡器反相放大器的及内部时钟发生器的输入端。l xtal2:振荡器反相放大器的输出端。3.2 电路设计工具选择随着计算机在国内的逐渐普及,eda(electronic design automatic,电路设计自动化)软件在电路行业的应用也越来越广泛,目前国内最为常用的eda软件有:protel、orcad、pspice、ewb和proteus等。protelprotel是portel公司在20世纪80年代末推出的电路行业的cad软件,它当之无愧地排在众多eda软件的前面,是电路设计者的首选软件。它较早在国内使用,普及率也最高,有些高校的电路专业还专门开设了课程来学习它。几乎所有的电路公司都要用到它。早期的protel主要作为印刷板自动布线工具使用,运行在dos环境,对硬件的要求很低,在无硬盘286机的1m内存下就能运行。它的功能较少,只有电原理图绘制与印刷板设计功能,印刷板自动布线的布通率也低。在protel99成为经典至今仍然广泛被人使用之后,现在的protel已发展到proteldxp,是个庞大的eda软件,它包含了电原理图绘制、模拟电路与数字电路混合信号仿真、多层印刷电路板设计(包含印刷电路板自动布线)、可编程逻辑器件设计、图表生成、电路表格生成、支持宏操作等功能,并具有client/server (客户/服务器)体系结构,同时还兼容一些其它设计软件的文件格式,如orcad、pspice、excel等。使用多层印制线路板的自动布线,可实现高密度pcb的100布通率。orcadorcad是由orcad公司于20世纪80年代末推出的eda软件。它是世界上使用最广的eda软件,每天都有上百万的电路工程师在使用它,相对于其它eda软件而言,它的功能也是最强大的,由于orcad软件使用了软件狗防盗版,因此在国内它并不普及,知名度也比不上protel,只有少数的电路设计者使用它。早在工作于dos环境的orcad 4.0,它就集成了电原理图绘制、印制电路板设计、数字电路仿真、可编程逻辑器件设计等功能,而且它的界面友好且直观。它的元器件库也是所有eda软件中最丰富的,在世界上它一直是ead软件中的首选。它集成了电原理图绘制,印刷电路板设计、模拟与数字电路混合仿真等功能。它的电路仿真的元器件库更达到了8500个,收入了几乎所有的通用型电路元器件模块但同时它的售价也不菲。pspicepspice是较早出现的eda软件之一,1985年就由microsim公司推出。在电路仿真方面,它的功能可以说是最为强大,在国内被普遍使用。整个软件由原理图编辑、电路仿真、激励编辑、元器件库编辑、波形图等几个部分组成,使用时是一个整体,但各个部分各有各的窗口。pspice发展至今,已被并入orcad,成为orcadpspice,但pspice仍然单独销售和使用,是功能强大的模拟电路和数字电路混合仿真eda软件。它可以进行各种各样的电路仿真、激励建立、温度与噪声分析、模拟控制、波形输出、数据输出、并在同一个窗口内同时显示模拟与数字的仿真结果。无论对哪种器件哪些电路进行仿真,包括igbt、脉宽调制电路、模数转换、数模转换等,都可以得到精确的仿真结果。对于库中没有的元器件模块,还可以自已编辑。它在internet上的网址与orcad公司一样。 ewbewb(electronics workbench eda)软件是交互图像技术有限公司(interactive image technologies ltd)在20世纪90年代初推出的eda软件,但在国内开始使用却是近几年的事。相对其它eda软件而言,它是个较小巧的软件,功能也比较单一,就是进行模拟电路和数字电路的混合仿真,但你绝对不可小瞧它,它的仿真功能十分强大,几乎100地仿真出真实电路的结果,而且它在桌面上提供了万用表、示波器、信号发生器、扫频仪、逻辑分析仪、数字信号发生器、逻辑转换器等工具,它的器件库中则包含了许多大公司的晶体管元器件、集成电路和数字门电路芯片,器件库中没有的元器件,还可以由外部模块导入。在众多的电路仿真软件中,ewb是最容易上手的,它的工作界面非常直观,原理图和各种工具都在同一个窗口内,未接触过它的人稍加学习就可以很熟练地使用该软件。对于电路设计工作者来说,它是个极好的eda工具,许多电路你无须动用烙铁就可得知它的结果,而且若想更换元器件或改变元器件参数,只须点点鼠标即可,它也可以作为电学知识的辅助教学软件使用,利用它可以直接从屏幕上看到各种电路的输出波形。proteusproteus isis是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,该软件的特点是:1.实现了单片机仿真和spice电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、rs232动态仿真、i2c调试器、spi调试器、键盘和lcd系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。2.支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各种外围芯片。3.提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如keil c51 uvision2等软件。4.具有强大的原理图绘制功能。总之,该软件是一款集单片机和spice分析于一身的仿真软件,功能极其强大。由于本次毕业设计不仅需要原理分析,还需要进行硬件设计和调试,故本次毕业设计采用的比较常用的设计工具protell 99 se。3.3 电源部分对于现在一个电子系统来说,电源部分的设计也越来越重要。对于一个实际的电子系统,要认真的分析它的电源需求。不仅仅是关心输入电压,输出电压和电流,还要仔细考虑到总的功耗,电源实现的效率,电源部分对负载变化的瞬态响应能力,关键器件对电源波动的容忍范围以及相应的允许的电源纹波,还有散热问题等等。本次电工测量复用表设计系统中使用到了+5v的电源,电源设计的原理图如图4,输入是+12v的直流电源。电路中使用到稳压的芯片是7805,7805是5伏的稳压芯片,这种芯片的好处是应用比较的简单,只需要接上几个电容就可以使用了。而且如果前段如果电源有轻微的波动几乎对后面的输出没有影响,这种芯片具有自己调节功能,电路中1n5819的作用是防止电源接反,c1、c2、c3、c4、c5、c6的作用是电源滤波。图4 电源基于msc-51单片机设计框图实现原理图3.4 adc0832模数转换本次毕业设计的电压、电流模拟量的采集是通过串行ad转换芯片来实现。串行ad转换芯片选用adc0832,adc0832是是美国国家半导体公司生产的一种8 位分辨率、双通道a/d转换 芯片。由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎, 其目前已经有很高的普及率。3.4.1 adc0832 具有以下特点1. 8位分辨率;2. 双通道a/d转换;3. 输入输出电平与ttl/cmos相兼容;4. 5v电源供电时输入电压在05v之间;5. 工作频率为250khz,转换时间为32s;6. 一般功耗仅为15mw; 7. 8p、14pdip(双列直插)、picc 多种封装;8. 商用级芯片温宽为0c to +70c,工业级芯片温宽为.40c to +85c;3.4.2 芯片接口说明1. cs_ 片选使能,低电平芯片使能。2. ch0 模拟输入通道0,或作为in+/-使用。3. ch1 模拟输入通道1,或作为in+/-使用。 4. gnd 芯片参考0 电位(地)。5. di 数据信号输入,选择通道控制。6. do 数据信号输出,转换数据输出。7. clk 芯片时钟输入。 8. vcc/ref 电源输入及参考电压输入(复用)。adc0832 为8位分辨率a/d转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05v之间。芯片转换时间仅为32s,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过di 数据输入端,可以轻易的实现通道功能的选择。 3.4.3 单片机对adc0832 的控制原理正常情况下adc0832 与单片机的接口应为4条数据线,分别是cs、clk、do、di。但由于do端与di端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将do和di 并联在一根数据线上使用。当adc0832未工作时其cs输入端应为高电平,此时芯片禁用,clk 和do/di 的电平可任意。当要进行a/d转换时,须先将cs使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端clk 输入时钟脉冲,do/di端则使用di端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前di端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前di端应输入2 位数据用于选择通道功能。图5为adc0832与单片机at89c51的连接电路图。图5 adc0832应用电路图3.5 复位电路随着测量技术的发展和微处理器的广泛应用,单片机系统的电路越来越复杂,而系统的可靠性问题也越来越突出,一般的单片机系统在工业现场等恶劣的环境下容易死机,要求系统在这些场合可靠稳定的工作,就必须外加监视电路。mcs-51的复位是由外部的复位电路来实现的。mcs-51单片机片内复位为,复位引脚rst通过一个斯密特触发器用来抑制噪声,在每个机器周期的s5p2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动复位和按钮复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的。只要vcc的上升时间不超过1ms,就可以实现自动上电复位。除了上电复位外,有时还需要按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过rst端经电阻与电源vcc接通而实现的。按键脉冲复位则是利用rc微分电路产生的正脉冲来实现的,图6兼有上电复位和按钮复位的电路。复位电路软件程序跑飞或者硬件发生错误的时候产生一个复位信号,控制mcs-51单片机从0000h单元开始执行程序,重新执行软件程序。图6 上电复位电路在单片机设计中,若有外部扩展的i/o接口电路需初始复位,如果它们的复位端和mcs-51单片机的复位端相连,复位电路中的r、c参数要受到影响,这时复位电路中的r、c参数要统一考虑以保证可靠的复位。如果单片机mcs-51单片机与外围i/o接口电路的复位电路和复位时间不完全一致,使单片机初始化程序不能正常运行,外围i/o接口电路的复位也可以不和mcs-51单片机复位端相连,仅采用独立的上电复位电路。一般来说,单片机的复位速度比外围i/o快些。若rc上电复位电路接mcs-51单片机和外围电路复位端,则能时系统可靠地同步复位。为保证系统可靠复位,在初始化程序中应用到一定的复位延迟时间。3.6 晶振电路时钟在单片机中非常重要,单片机各功能部件的运行都是以时钟频率为基准。时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种为外部时钟方式。内部时钟方式电路图如下图7所示:图7 内部时钟电路mcs-51单片机内部有一个用与构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚xtal1,输出端为引脚xtal2。这两个引脚接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器电路。电路中的电容c1和c2典型值通常选择为30pf左右。对外接电容的值虽然没有严格的要求,但是电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率的范围通常是在1.2mhz-12mhz之间。晶体的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。为了提高温度稳定性,应采用温度稳定性能好的npo高频电容。mcs-51单片机常选择振荡频率6mhz或12mhz的石英晶体。外部时钟方式:外部时钟方式电路图如下图8所示,外部时钟方式是使用外部振荡脉冲信号,常用于多片mcs-51单片机同时工作,以便于同步。对外部脉冲信号只要求高电平的持续时间大于20us,一般为低于12mhz的方波。外部的时钟源直接接到xtal2端,直接输入到片内的时钟发生器上。由于xtal2的逻辑电平不是ttl的,因此要外接一个4.7k-10k的上拉电阻。图8 外部时钟电路这次的设计采用mcs-51的内部时钟方式。因为外部时钟方式是用外部振荡脉冲信号,用于多片mcs-51单片机同时工作。在这次设计中只用一个mcs-51单片机,不需要振荡脉冲信号。3.7 单片机基本工作电路本设计的核心是单片机电路,考虑到我们需要两个中断输入,存储容量、外部接口对单片机端口的需要以及兼顾到节约成本的原则,我们选用了常用的at89c51单片机。at89c51是低功耗、高性能、经济的8位cmos微处理器,工作频率为0-24mhz,内置4k字节可编程只读闪存,128x8位的内部ram,32位可编程io总线。它采用atmel公司的非易储器制造技术,与mcs51的指令设置和芯片引脚可兼容。at89s51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。at89c51工作的最简单的电路是其外围接一个晶振和一个复位电路,给单片机接上电源和地,单片机就可以工作了。单片机正常工作的条件:1、+5v电源;2、晶振电路;3、复位电路;4、上拉电阻;其最简单的工作原理图如图9:图9 at89s51单片机工作电路3.8 显示电路8段数码管属于led发光器件的一种。led发光器件一般常用的有两类:数码管和点阵。8段数码管又称为8字型数码管,分为8段:a、b、c、d、e、f、g、p。其中p为小数点。数码管常用的有10根管脚,每一段有一根管脚,另外两根管脚为一个数码管的公共端,两根之间相互连通,如图所示:图10 led的管脚和电路原理从电路上,数码管又可分为共阴和共阳两种。用单片机驱动led数码管有很多方法,按显示方式分,有静态显示和动态显示。图11 显示电路静态显示就是显示驱动电路具有输出锁存功能,单片机将所有要显示的数据送出后就不再控制led,直到下一次显示时再传送一次新的显示数据。静态显示的数据稳定,占用的cpu时间少。静态显示中,每一个显示器都要占用单独的具有锁存功能的i/o接口,该接口用于笔划段字型代码。这样单片机只要把要显示的字形代码发送到接口电路,该字段就可以显示发送的字形。要显示新的数据时,单片机在发送新的字形码。另一种方法是动态扫描显示。动态扫描方法是用其接口电路把所有显示器的8个笔画段a-h同名端连在一起,而每一个显示器的公共极com各自独立的受i/o线控制。cpu向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于com段,而这一段是由i/o控制的,由单片机决定何时显示哪一位了。动态扫描用分时的方法轮流控制各个显示器的com端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间极为短暂,但由于人的视觉暂留现象及发光二极管的余晖效应,给人的印象就是一组稳定的显示数据。本次毕业设计需要4个数码管,所以采用动态的显示的方式。3.9 按键电路按键是实现人机对话的比较直观的接口,可以通过按键实现人们想让单片机做的不同的工作。键盘是一组按键的集合,键是一种常开型开关,平时按键的两个触点处于断开状态,按下键是它们闭合。键盘分编码键盘和非编码键盘,案件的识别由专用的硬件译码实现,并能产生键编号或键值的称为编码键盘,而缺少这种键盘编码电路要靠自编软件识别的称为非编码键盘。在单片机组成的电路系统及智能化仪器中,用的更多的是非编码键盘。图12就是一种比较典型的按键电路,在按键没有按下的时候,输出的是高电平,当按键按下去的时候,输出的低电平。图12 按键电路按键消抖:通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号小型如下图。由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,如下图13。抖动时间的长短由按键的机械特性决定,一般为5ms10ms。这是一个很重要的时间参数,在很多场合都要用到。图13 按键过程按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。键抖动会引起一次按键被误读多次。为确保cpu对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。按键的抖动,可用硬件或软件两种方法。 硬件消抖:在键数较少时可用硬件方法消除键抖动。下图所示的rs触发器为常用的硬件去抖。图14 rs触发器图14中两个“与非”门构成一个rs触发器。当按键未按下时,输出为1;当键按下时,输出为0。此时即使用按键的机械性能,使按键因弹性抖动而产生瞬时断开(抖动跳开b),中要按键不返回原始状态a,双稳态电路的状态不改变,输出保持为0,不会产生抖动的波形。也就是说,即使b点的电压波形是抖动的,但经双稳态电路之后,其输出为正规的矩形波。这一点通过分析rs触发器的工作过程很容易得到验证。软件消抖:如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,产生5ms10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms10ms的延时,待后沿抖动消失后才能转入该键的处理程序。4 软件设计4.1 软件设计概述软件设计是一个创造性的过程,对一些设计者来说需要一定的资质,而最后设计通常都是由一些初步设计演变而来的。从书本上学不会设计,只能经过实践,通过对实际系统的研究和实践才能学会。对于高效的软件工程,良好的设计是关键,一个设计得好的软件系统应该是可直接实现和易于维护、易懂和可靠的。设计得不好的系统,尽管可以工作,但很可能维护起来费用昂贵、测试困难和不可靠,因此,设计阶段是软件开发过程中最重要的阶段。直到最近,软件设计在很大程度上仍是一个特定过程。一般用自然语言给定一个需求集,预先作非正式设计,常常用流程图的形式说明,接着开始编码,当系统实现时设计还需修改。当实现阶段完成后,设计往往已与起初形式相去甚远以至于设计的原始文档完全不适合对系统的描述。4.1.1 软件设计的步骤大型的软件设计是一个庞大的系统工程,需要前期的市场调查、需求分析,还需要各个行业的支持。本次毕业设计的程序是一个很简单的过程,所以步骤也相对应的简单了许多。第一步:分析整个系统可以由几个子系统组成,并考虑几个子系统之间的内在的关系。第二步:编写各个子系统的程序,最后组合在一起,得到整个系统。第三步:编译,查错,改错(包括语法错误、逻辑错误)第四步:把编译,看是否得到我们需要的结果,如果得不到结果就回到第三步,直到最后得到我们想要的结果。4.1.2 软件设计任务软件设计主要是针对硬件设计里面的控制部分的,这里指at89c51单片机,一般的单片机均可用汇编语言和c语言进行编程。c语言直观,相对比较的简单,但占用的程序存储器的内存比较大,汇编语言是针对硬件设计的语言,如果想用汇编语言设计的话必须要对硬件有很大的了解,相对c语言就比较的复杂,但是比较的精简,占用的程序存储器的空间比较的小。本次毕业设计采用汇编语言编程,软件部分需要完成的任务:单片机初始化、adc0832电压、电流采样,功率因素角测量、功率因素计算、有用功率计算、无用功率计算、显示参数、按键处理、外部中断、延时程序、定时程序。4.2 单片机编程集成环境keil c51本次毕业所选用keil c51中的编译/连接器软件keil uvision2作为编译器/连接工具,使用万利公司medwin软件作为集成开发环境。medwin是万利电子有限公司的软件,medwin是一个具有microsoft visual studio窗口风格的集成开发环境。支持带语法分析的彩色文本显示、源程序断点设置记忆、实时程序计数器、pc显示、仿真器断电自动重载、自适应连接仿真器等功能,并且支持全空间程序代码和数据空间的模拟仿真、trace buffer跟踪器。keil c51是美国keil software公司出品的51系列兼容单片机c语言软件开发系统,与汇编相比,c语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用c来开发,体会更加深刻。keil c51软件提供丰富的库函数和功能强大的集成开发调试工具,全windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到keil c51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。4.2.1 keil c51单片机软件开发系统的整体结构c51工具包的整体结构,如图所示,其中uvision与ishell分别是c51 for windows和for dos的集成开发环境(ide),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用ide本身或其它编辑器编辑c或汇编源文件。然后分别由c51及a51编译器编译生成目标文件(.obj)。目标文件可由lib51创建生成库文件,也可以与库文件一起经l51连接定位生成绝对目标文件(.abs)。abs文件由oh51转换成标准的hex文件,以供调试器dscope51或tscope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如eprom中。图15 c51工具包整体结构图4.2.2 keil c51功能介绍4.2.2.18051开发工具keilc51标准c编译器为8051微控制器的软件开发提供了c语言环境,同时保留了汇编代码高效,快速的特点。c51编译器的功能不断增强,使你可以更加贴近cpu本身,及其它的衍生产品。c51已被完全集成到uvision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uvision2ide可为它们提供单一而灵活的开发环境。c51v7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,c51v7版本无疑是8051开发用户的最佳选择。5.2.2.2 uvision2集成开发环境项目管理:工程(project)是由源文件、开发工具选项以及编程说明三部分组成的。一个单一的uvision2工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。uvision2包含一个器件数据库(devicedatabase),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extradatapointer)或者加速器(mathaccelerator)的特性。uvision2可以为片外存储器产生必要的连接选项:确定起始地址和规模。 集成功能:uvision2的强大功能有助于用户按期完工。a.集成源极浏览器利用符号数据库使用户可以快速浏览源文件。用详细的符号信息来优化用户变数存储器。b.文件寻找功能:在特定文件中执行全局文件搜索。c.工具菜单:允许在v2集成开发环境下启动用户功能。d.可配置svcs接口:提供对版本控制系统的入口。e.pclint接口:对应用程序代码进行深层语法分析。f.infineon的easycase接口:集成块集代码产生。g.infineon的dave功能:协助用户的cpu和外部程序。dave工程可被直接输入uvision24.2.2.2 编辑器和调试器源代码编辑器:uvision2编辑器包含了所有用户熟悉的特性。彩色语法显像和文件辩识都对c源代码进行和优化。可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序。断点:uvision2允许用户在编辑时设置程序断点(甚至在源代码未经编译和汇编之前)。用户启动v2调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器命令或调试功能即可执行。在属性框(attributescolumn)中可以快速浏览断点设置情况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行

温馨提示

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

评论

0/150

提交评论