《基于单片机的高压断路器故障检测系统设计与实现》14000字(论文)_第1页
《基于单片机的高压断路器故障检测系统设计与实现》14000字(论文)_第2页
《基于单片机的高压断路器故障检测系统设计与实现》14000字(论文)_第3页
《基于单片机的高压断路器故障检测系统设计与实现》14000字(论文)_第4页
《基于单片机的高压断路器故障检测系统设计与实现》14000字(论文)_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

。方案二:LCD液晶显示器。采用LCD液晶显示器作为系统的显示器。常见的LCD显示器有双行可显示的LCD1602液晶显示器和多行可显示的LCD12864,LCD液晶显示器能够显示数字,普通汉字,甚至一些复杂汉字。显示的内容空间较大,拥有部分集成的字库在其自身ROM中,通过函数便能调用起来,比较方便,但是一般LCD液晶显示器不具备彩色显示的功能,只能通过调光电位器进行灰黑调色,不利用远处观望显示,占用的IO资源适中,能够通过I2C协议减少IO资源的使用。方案三:OLED显示屏。采用OLED液晶显示屏作为系统的显示器,一般在简单系统开发当中会采用9.6寸OLED液晶显示屏作为显示器,这种OLED显示屏,显示的字体较小,但是具备有色显示,清晰度很高,暂用的IO资源很少,一般主要由信号控制线和时钟线以及电源线和接电线组成,显示的行数和内容空间非常丰富,是许多开发者青睐的显示器。综合考虑以上三种选择,虽然数码管器件价格并且显示的穿透力强,但是系统需要对两路电压值等数值进行显示,在该情况下数码管电路如果要完全显示电压值状态则需要大量的占用单片机大量的IO资源,并且编程难度较大,时间成本较高;其二,OLED液晶屏显示的内容太小并且成本较高,而LCD1602液晶显示模块的显示区间完全能够满足实现,并且线路不复杂、成本比OLED液晶显示器低。因此选择LCD1602作为系统的显示模块。2.3.4电信号传感器选型由于系统通过Proteus仿真软件仿真,仿真系统无法通过具体模块对电路电压信息进行采集,但是滑动变阻器能够简单模拟实际用电系统用负载的场景,满足电信号变化的要求,因此在Proteus仿真系统中,使用滑动变阻器来模拟电信号传感器,满足系统中采集电流信号和电压信号的数值。2.3.5按键模块器件选型方案一:独立式按键,每个独立式按键都匹配一条输入线,接入主控系统的I/O管理。这种按键具有硬件与软件相对简单的特点,是直接由I/O线组成的单个按键,一个按键占用一个单独的I/O口。这种按键的缺点是每个独立按键都需要一个I/O口,毕竟单片机系统的I/O口有限,当需要的按键数量较多时,对单片机系统的消耗大,所以这种独立式按键只适用于按键少的系统。方案二:矩阵式按键,矩阵式按键是单片机外部设备中所使用的排布类似于矩阵的键盘,由行线和列线组成,按钮位于行线和列线的交叉点处。当系统需要的按键较多时,这种矩阵式按键可以节省很多I/O口从而提高I/O口的利用率,适用于需要八个以上按键的系统使用。但是这种矩阵式按键的软件编程较为复杂,识别也要相对复杂一些。由于系统只需要3个独立按键便可以按成阈值设定,同时独立按键比矩阵价格便宜,所以选用方案2独立式按键。2.3.6系统报警模块选型方案1:MP3_TF语音播报模块。MP3_TF语音播报模块采用DC5V作为供电电源,与单片机元器件的供电电源系统的电压范围一致,具备9个触发端口,结合单片机GPIO口能够实现31首MP3歌曲播放,同时其支持16G内存TF卡,支持MP3、WAV两种播放格式,支持多8kHz、11.025kHz、12kHz等多种工作采样频率[12],支持FAT16/FAT32文件系统,音量可调,通过低电平触发,支持0-2W且4-8欧喇叭负载,具备标准3.5音频接口,支持音响、功放连接,具备有源音响接口、喇叭接口、MICRO_TF接口,无需编程控制,可以直接可实现语音播放。方案二:有源蜂鸣器。有源蜂鸣器内置振荡源,无需通过脉冲频率信号对其进行驱动,该报警蜂鸣器适配电压为DC3V~DC12V直流源,能够接收到有效脉冲控制信号后,直接驱动内部振荡源进行鸣叫,进行达到报警的效果,由于单片机的电流驱动能力较弱,为了提高其蜂鸣器报警的效果,需要配置PNP或者NPN三极管和限流电阻实现对蜂鸣器报警的高电流驱动作用。综上两种方案,我们系统需要低成本、易开发、具备报警功能的器件,虽然MP3_TF语音播报模块报警功能更强一些,但是有源蜂鸣器在价格和开发难度上均比前者强,报警强度也完全达到系统的要求,因此选择有源蜂鸣器作为报警模块。

3系统硬件设计3.1系统主控部分电路设计AT89C51芯片需要设计晶振电路提供工作频率,且一般设计复位电路用于初始化系统状态。AT89C51是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。相当于增强型的8051是在8051的基础上扩展了内部存储器和定时器而来的,可以说51系列的加强版。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。AT89C51的电路图如图3-1所示。图3-1AT89C51芯片原理图AT89C51单片机内部并没有集成可供其工作的时钟电路,根据AT89C51的引脚定义可知,芯片的18、19脚为时钟频率的输入端,所以系统设计并联型谐振电路,将时钟信号输出端接至18、19脚。AT89C51单片机的晶振频率一般使用12Mhz或者11.0592Mhz进行设计,使用12Mhz晶振进行设计的目的是便于计算每一条语句所执行的时间,但如果需要使用串口进行通讯时,12Mhz晶振在产生波特率时会产生微小的误差,影响数据传输的正确性,所以在有串口通讯功能设计时,使用12Mhz晶振进行晶振电路的设计,本系统所使用的模块需要进行串口通讯,所以系统使用12Mhz晶振进行设计,电路如图3-1所示图3-2晶振电路复位电路对于AT89C51单片机同样重要,虽然该单片机内置看门狗定时器复位功能,但该功能需要对程序进行设计,所以具有一定的不便性,而利用其RST端低电平有效复位的功能,可以进行复位,能够有效地帮助开发人员进行系统的调试,加快系统开发的进程,单片机RST引脚需要持续2个时钟周期以上的低电平时间进而完成复位功能,复位后的单片机会初始化所有寄存器,同时将代码从头运行,本次设计采用电容充电效应进行设计,当引脚被置低后,利用电容的充电效应实现复位功能,电路如图3-3所示。图3-3复位电路3.2模数转换组件电路设计采用ADC0832芯片作为系统的模数转换芯片,该模数转换组件由断路器(通过独立按键和继电器模拟)和ADC0832芯片组成,芯片主要负责采集系统的电压模拟量信号值,并转换为数字量数据输出至单片机进行显示。该模块采用DC5V的电源给单片机进行稳压供电,电源范围与单片机电量需求范围相适配,该模块的外接管脚主要由供电管脚VCC、信号地管脚GND、AD芯片使能管脚/CS、时钟输入管脚CLK、数据输出管脚DO、数据接收管脚DI以及选通管脚CH0和CH1组成,由于系统设计中只需要采集两路电压信号,因此在电路设计中,将直接将CH0、CH1分别接在对应的滑动变阻器的电压输出端进行电压信号采集,将AD芯片使能管脚/CS、时钟输入管脚CLK分别与单片机的P3.4管脚、P1.1管脚相连接,将数据输出管脚DO、数据接收管脚DI串接后接入单片机P3.5管脚,因为该DI/DO一个是输出一个输入,工作不冲突,因此能按上述电路进行连接,将模拟继电器拒动的按键端与单片机的P3.6引脚,完成系统功能设计。其系统电路连接如图3-5所示。图3-4模数转换芯片电路连接设计3.3显示器模块的电路设计该系统采用LCD1602液晶显示模块作为系统的显示器模块,该显示器模块主要负责显示电压值等信息,该模块与单片机之间的通信采用并行数据通信的方式,为标准的14脚硬件接口,采用DC5V的直流稳压电源进行供电,与单片机的供电系统电源相适配,该显示的电路外接管脚由VSS电源地管脚、VDD电源管脚、VEE液晶显示器灰度调整管脚、RS数据/指令寄存器管脚、RW读/写信号管脚、E使能管脚、DB0~DB7双向数据管脚。在硬件电路连接设计中,分别将该LCD1602液晶显示器的VSS电源管脚、供电管脚VDD与单片机VCC管脚、DC5V供电管脚相连接,将显示器对比度管脚VEE与接入系统电源正负极形成有效回路,将RS数据/指令寄存器管脚、RW读/写信号管脚、E使能管脚分别与单片机P2.5管脚、P2.6管脚、P2.7管脚相连接,分别将LCD1602液晶显示器的DB0管脚~DB7管脚与单片机的P0.0~P0.7管脚相连接并串接上拉电阻,将LCD1602液晶显示器的VEE背光调节管脚直接与单片机主控芯片的GND引脚相连接,该LCD1602液晶显示器模块电路连接设计如图3-5所示。图3-5液晶显示器电路连接设计3.4电信号传感器电路设计 系统通过滑动变阻器模拟电信号传感器直接将两路电信号传感器接入模数转换芯片的CH0、CH1通道。具体如图3-6所示。图3-6液晶显示器电路连接设计其中电阻RV1和RV12分别模拟电压互感器和电流互感器,电压互感器的电路如图3-7所示,电流互感器的电路如图3-8所示。图3-7电压互感器电路连接设计图3-7电流互感器电路连接设计3.5系统按键模块电路设计系统采用3个轻触式开关按键,系统3个轻触按键采用共地的接法,按键S1、按键S2、按键S3分别代表功能设置按键、数字加1按键、数字减1按键。按键模块通过轻触实现按键的电平信号输入,当按键按下时按键输入低电平,低电平为有效信号;松开按键时则系统内部管脚拉高,处于高阻状态。在电路设计中,分别将四个轻触式开关按键的一端采用共地接法,并接到单片机主控制板的GND上,分别将另一端的信号管脚与单片机主控制板的PA8管脚、PA9管脚、PA10管脚、PA11管脚相连接,按键模块的具体硬件电路连接设计如图3-7所示。图3-7按键模块硬件电路连接设计3.6系统报警模块电路设计系统报警模块由蜂鸣器、驱动三极管和1kΩ限流电阻构成,该报警组件主要负责当系统的检测值超出阈值时则进行报警,实现告警功能,系统通过低电平对该组件进行有效控制,单片机通过IO口以低电平的方式进行驱动报警,在系统电路设计中,分别将蜂鸣器的正极端与三极管的发射极直接连接,将蜂鸣器的负极直接与系统的信号低GND引脚相连接,将该蜂鸣器组件的控制端引脚与单片机的P2.3引脚相连接,将报警模块与单片机电路连接设计如图3-8所示。图3-8蜂鸣器硬件电路连接设计3.7继电器模块的电路设计采用继电器磁件、三极管、一个1KΩ电阻、通断指示灯组成系统的继电器组件,该组件负责模拟系统的断路器,电信号值正常则连通,反之则断开。在电路设计中,将该继电器模块的信号输入控制端分别与单片机的信号控制端P2.4管脚相连接,将继电器的一端接在单片机主控制器DC5VVCC端,将另一端接在三极管的集电极,将三极管的基机与单片机控制器的GND管脚相连接,形成继电器报警组件。当主控制器通过将信号控制管脚的电平信号拉低,输出低电平后,三极管发射极导通,处于放大区工作模式,电流放大,提高继电器的驱动能力,单片机通过控制继电器的吸合直接指示灯亮,反之,信号控制管脚输出高电平,使其不吸合,指示灯不亮,其电路连接设计如图3-9所示。图3-9继电器模块程序设计流程图4系统软件设计4.1软件设计准备工作软件设计筹备工作阶段是软件设计必经过程,也是保障系统开发的顺利推进。一般系统开发,首先需要确定系统开发需求,并且根据开发需求确认工作细节和时间节点,但一些复杂系统的开发需要先采用MATLAB建立模型进行仿真,仿真通过后才确定后续工作时间节点,不过本系统采用模块化设计,不属于复杂系统,因此可以直接对功能需求确认后即可安排工作时间节点。本系统的软件设计采用KEIL软件搭载C语言对该系统进行开发,KEIL搭载C语言开发系统前期需要注意一下事项,第一,在建立系统工程时,需要以英文名作为系统的工程文件名称,否则无法顺利生成编译文件;第二,建立主函数文件时,需要以.c作为文件尾缀,否则KEIL软件不但不能给该主文件程序进行高亮显示,并且也无法使其能够生成编译文件;第三,若无国产芯片百分百吻合的情况下,则需要在软件中选择单片机型号与系统主控硬件实物一致的芯片,否则编译无法正确执行,导致编译出错;第四,确定上述问题无误后,则对该系统需要使用的库函数进行确定,并更根据开发需求决定是否将新版本的库函数包进行加载,但在该加载工作前需要确认系统加载是否兼容现有版本的程序,在不影响的情况完成库函数包的升级,完成该工作后,则开进行程序开发工作。1.系统编程之初。在采购模块设备时,需要寻找该模块设备的规格说明书,从规格书中明确该模块的对接协议、驱动方式,对无法确定功能协议的模块可以通过网络串口助手工具通过发送规格书中的协议,查看报文的反馈是否与规格书标注一致,通过协议一致性,确定协议功能。另外,如果需要简单测试功能模块,也可以通过使用PROTUES仿真软件对程序算法和功能模块进行功能测试和验证。2.语句注释和模块化编程。在系统程序开发过程中,能够对编程函数功能和程序语句进行注释,可以提高编程效率,能够将复杂系统变得直接可视化,尤其在多人参与一个系统开发或者需要对系统进行功能维护时,该语句注释作用显得尤为重要,其能够帮助系统中不同模块开发功能的人员对其他编程人员编写的代码快速解读,实现工作的高效率。另外,模块化编程同样重要,编程的模块,能够提高系统的移植能力,并且能够给与程序维护人员清晰的功能逻辑思路,达到快速维护的效果,也能够让系统框架性能更加稳定。4.2系统的主程序设计系统主程序设计流程如下:步骤一:系统初始化,初始化单片机的定时器、控制状态标志位等,对显示器模块进行清屏操作,对模数转换芯片ADC0832芯片进行标志位的设置。步骤二:按键阈值设置,利用按键设置系统采样电压数值和电流的阈值大小。步骤二:启动ADC0832进行信号采集。步骤三:单片机采样ADC0832的转换数据并处理。步骤三:显示器模块显示当前电压数据值。步骤四:系统判断采样数值是否超出阈值,如果有超出则驱动蜂鸣器进行报警,继电器断开(模拟断路器断开),反之则不进行报警、继电器保持吸合。至此,系统进入轮循状态。系统主程序设计流程图如下图4-1所示。开始开始初始化初始化按键设置阈值按键设置阈值启动启动ADC0832单片机采样ADC0832的转换数据并处理单片机采样ADC0832的转换数据并处理显示器模块显示显示器模块显示当前电压数据值不报警且继电器吸合N数据变化?不报警且继电器吸合N数据变化?YY启动报警且继电器断开启动报警且继电器断开图4-1系统主程序流程图4.3系统模数转换芯片系统模数转换芯片ADC0832对CH0、CH1的程序设计流程步骤主要为以下几步:(1)单片机向通过P1.2指令/数据管脚对ADC0832的AD使能管脚/CS进行拉低操作(注:/CS管脚的低电平状态需要持续到单片机读取完转换数据后再拉为高电平禁用芯片状态),同时对P1.1时钟管脚CLK进行拉高操作,此时开始进行AD转换。该信号为ADC0832的启动采样模拟量信号。(2)单片机开始向ADC0832的时钟信号管脚输出时钟脉冲信号,同时单片机对ADC0832的DO/DI管脚发送信号,进行CH0、CH1通道进行选择,选择方法为,首先,单片机将时钟信号管脚的电平置为高电平(步骤1,已设置,表示启始信号),并在第2、3个脉冲下沉之前,单片机向ADC0832的DI端发送两位数据,辅助完成对CH0、CH1的通道选择。(3)ADC0832的模数转换开始。单片机向ADC0832的脉冲第四个脉冲下沉开始,DO输出转换的最高位DATA7,并在每一个脉冲下沉时,DO输出下一位数据,从高7位到低0位,直到第十一个脉冲时下沉时输出DATA0,此时ADC0832完成一个字节的数据输出。(4)拉高使能/CS管脚,拉低时钟CLK管脚,单片机完成一帧数据的采样。开始开始模块初始化模块初始化单片机拉低CS、单片机拉高CLK单片机拉低CS、单片机拉高CLK模拟量采样通道选择模拟量采样通道选择单片机采样完转换数据?N单片机采样完转换数据?NYY单片机拉高CS、单片机拉低CLK,ADC0832芯片返回数据DATA单片机拉高CS、单片机拉低CLK,ADC0832芯片返回数据DATA图4-3AD转换程序流程图4.4显示模块程序设计LCD1602液晶可以直观的显示电压数值和电流数值以及阈值调整过程内容,是实现人机交互的主要部分,液晶显示控制程序主要为端口的初始化和对寄存器的读指令和写指令,通过单片机读写数据,将要显示的内容在液晶上显示出来。LCD1602程序设计流程主要有如下步骤:系统上电,单片机向LCD1602进行初始化操作。(1)单片机向LCD1602进行读状态操作。(2)单片机向LCD1602进行写命令操作。(3)单片机向LCD1602进行读数据操作。(4)单片机向LCD1602进行写数据操作。(5)CD1602将数据进行显示,并重回开始状态继续扫描。LCD1602显示程序流程图如下图4-4所示。开始开始初始化初始化读状态读状态写命令写命令读数据读数据写数据写数据数据显示数据显示返回返回图4-4LCD1602显示程序流程图

4.5报警模块程序设计系统报警模块程序设计步骤如下:步骤1:模块初始化,控制器发送对模块发送初始化状态标志位;步骤2:判断是否超出阈值,控制器对当前系统进行判断,判断是否超出设定值,如果超出设定值则输出低电平,驱动声光报警器进行报警,反之则输出高电平,不驱动声光报警器报警;该模块程序设计流程如图4-5所示。开始开始模块初始化模块初始化输出高电平,报警器不报警N超出阈值?输出高电平,报警器不报警N超出阈值?YY输出低电平,报警器报警输出低电平,报警器报警图4-5报警器模块程序设计流程

4.6按键模块程序设计系统通过按键完成阈值加1减1以及设置操作,按键模块程序设计流程如下:步骤一:按键模块初始化,单片机初始化按键模块的脉冲输入标志位;步骤二:判断是否有低电平输入,如果有则说明有按键按下,反之则继续判断;步骤三:单片机识别脉冲输入的键值。步骤四:单片机判断是否有高电平输入,如果有则说明按键松开,反之则继续判断;步骤五:按键有效并执行键值对应工作。该按键模块的程序设计流程如图4-6所示。开始开始模块初始化模块初始化NN低电平输入?低电平输入?YY判断有按键按下判断有按键按下识别键值识别键值N高电平输入?N高电平输入?YY按键动作有效按键动作有效执行对应键值功能执行对应键值功能图4-6按键模块程序设计流程图

4.7继电器的程序设计系统继电器模块的程序设计步骤如下:步骤1:模块初始化,控制器发送对模块发送初始化状态标志位;步骤2:单片机判断电压值和电流值是否超出阈值,如果超出则单片机向继电器模块的信号接口端输出高电平使该继电器断开,并熄灭工作指示灯;反之则导通,并亮起工作指示灯。该模块程序设计流程如图4-7所示。开始开始系统初始化系统初始化N单片机输出高电平并不启动继电器N是否按键按下?N单片机输出高电平并不启动继电器N是否按键按下?YY单片机输出低电平并吸合继电器启动且指示灯亮起单片机输出低电平并吸合继电器启动且指示灯亮起图4-7继电器模块程序设计流程4.8仿真部分功能设计整个系统由主控模块、模数转换芯片、电源模块、显示器模块、继电器模块组成,因此在系统功能测试过程中,不能单一对一个模块进行功能测试,系统的测试需要在模块完成Protues软件搭建后进行,这样能够提高系统测试的效率,以便对系统测试的故障问题进行分析解决。组成如图5-1所示。图5-1系统仿真功能图 由上图可知系统,各个模块的仿真功能均正常,单片机最小系统能够实现准确计算、复位按键能够实现系统复位功能、ADC0832芯片能够准确采集CH0、CH1两路电压电信号并正确显示显示在LCD1602液晶显示器上,由此可见系统各模块的软件设计功能正常。 该系统的软件设计采用KEIL软件搭配C语言开发单片机,利用C进行编程设计,利用KEIL软件编译生成.hex文件,利用Protues进行仿真,实现系统从设计到开发再到最终系统功能的完成。

总结本题按照任务书要求,完成高压断路器故障检测系统的设计,实现以下各项功能:(1)通过知网、万方、维普等多个文献资料库寻找高压断路器故障检测系统的关联资料和设计方案以及实现方法;(2)对功能器件进行选型分析并采购;(3)完成单片机最小系统的设计、完成两路电压信号的采集、完成两路电压信号值的显示功能、完成阈值设定功能、完成超阈值报警功能、完成超阈值系统模拟自动断路功能、完成高压断路器故障检测系统程序与Proteus仿真的软件联调设计、;(4)实现系统的硬件设计和软件功能联调,完成高压断路器故障检测系统的各项功能要求,符合设计要求;本系统通过上述各个功能模块完成对应功能的设计以及联调,并熟悉KEIL的

温馨提示

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

评论

0/150

提交评论