![[毕业设计 论文 精品]基于CPLD的变频器故障保护和显示电路_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/0cc45157-e134-4bb9-aeea-362f267deea8/0cc45157-e134-4bb9-aeea-362f267deea81.gif)
![[毕业设计 论文 精品]基于CPLD的变频器故障保护和显示电路_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/0cc45157-e134-4bb9-aeea-362f267deea8/0cc45157-e134-4bb9-aeea-362f267deea82.gif)
![[毕业设计 论文 精品]基于CPLD的变频器故障保护和显示电路_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/0cc45157-e134-4bb9-aeea-362f267deea8/0cc45157-e134-4bb9-aeea-362f267deea83.gif)
![[毕业设计 论文 精品]基于CPLD的变频器故障保护和显示电路_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/0cc45157-e134-4bb9-aeea-362f267deea8/0cc45157-e134-4bb9-aeea-362f267deea84.gif)
![[毕业设计 论文 精品]基于CPLD的变频器故障保护和显示电路_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/0cc45157-e134-4bb9-aeea-362f267deea8/0cc45157-e134-4bb9-aeea-362f267deea85.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于cpld的变频器故障保护和显示电路摘要:变频器故障保护电路和显示电路的应用非常广泛,一般可采用电子元件构成,也可采用单片机,但都比较复杂,而且存在调试难、不稳定等情况,而本论文是采用新的设计方法,即采用electronic design automation (eda)技术来通过软件的方法来实现设计,基于cpld/fpga的设计用vhdl语言来设计保护电路,运用自顶向下的设计思想并用vhdl语言编程对各个功能模块进行实现,验证保护电路的正确性和实用性而显示电路采用简单的led来显示.关键词:变频器;保护电路;vhdl;cpldbased on the cplds inverter circ
2、uit fault protection and displayabstract:inverter fault protection circuit and display circuit is very widely used. in general, it can be constituted by electronic components, it also can be constituted by single-chip. but they are more complex and difficult to debug and control, etc. this paper is
3、based on a new design methods, namely, the use of electronic design automation (eda). in other words, use software technology to achieve the design. based on cpld / fpga design, using vhdl language to design the protection circuit, using the top-down design ideas and vhdl programming language to ach
4、ieve each function module. thereby,verifying the correctness and practicality of the protection circuit. as for the displaying of circuit, using a simple led.keywords:inverters;protection circuit;vhdl;cpld目录1绪论12.eda与应用软件等方面的基本概况322eda技术与前景42.3 fpga/cpld的基本知识42.3.1 fpga/cpld的概况介绍42.3.2 pfga/cpld的区别与
5、联系52.3.3 逻辑电路概念62. 4 vhdl语言62.4.1 vhdl语言编程格式62.4.2用vhdl语言对fpga和cpld器件进行开发时应注意的事项:72. 5 quartusii软件的概况93基于eda技术的变频器故障保护1031设计要求以及总体方案:10311设计要求10312总体方案和设计框图1032 基于eda技术的变频器故障保护设计11321 信号合成和延时电路模块mand 设计11322 故障记忆和复位模块 ff 设计13323三态门控制模块gate8的设计14324死区时间设置模块dead设计15325变频器故障保护顶层模块protect设计164 外部显示电路设计1
6、85 设计总结19致 谢20参考文献21附录22基于cpld的变频器故障保护和显示电路05自动化 徐建华指导老师:宁宇 副教授1绪论1.1课题的背景与意义人类社会已进入到高度发达的信息化社会,信息社会的发展离不开电子产品的进步。 现代电子产品在性能提高、复杂度增大的同时,价格却一直呈下降趋势,而且产品更新换代的步伐也越来越快,实现这种进步的主要原因就是生产制造技术和电子设计技术的发展。前者以微细加工技术为代表,目前已进展到深亚微米阶段,可以在几平方厘米的芯片上集成数千万个晶体管;后者的核心就是eda技术。eda是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术最新成果而研制成的
7、电子cad通用软件包,主要能辅助进行三方面的设计工作:ic设计,电子电路设计以及pcb设计。eda技术的支持,想要完成上述超大规模集成电路的设计制造是不可想象的,反过来,生产制造技术的不断进步又必将对eda技术提出新的要求。 由智能功率模块(ipm)构成的变频器本身具有自动保护功能.保护电路可以实现控制电压欠压保护、过热保护、过流保护和短路保护。如果ipm模块中有一种保护电路动作,igbt栅极驱动单元就会关断门极电流并输出一个故障信号(f0即ipmf)。各种保护功能具体如下:(1)控制电压欠压保护(uv):ipm使用单一的+15v供电,若供电电压低于125v,且时间超过toff=loms,发生
8、欠压保护,封锁门极驱动电路,输出故障信号。(2)过温保护(ot):在靠近igbt芯片的绝缘基板上安装了一个温度传感器,当ipm温度传感器测出其基板的温度超过温度值时,发生过温保护,封锁门极驱动电路,输出故障信号。(3)过流保护(oc):若流过igbt的电流值超过过流动作电流,且时间超过t。 ,则发生过流保护,封锁门极驱动电路,输出故障信号。(4)短路保护(sc):若负载发生短路或控制系统故障导致短路,流过igbt的电流值超过短路动作电流,则立刻发生短路保护,封锁门极驱动电路,输出故障信号。当ipm发生uv、oc、ot、sc中任一故障时,其故障输出信号持续时间fm为18ms(sc持续时间会长一些
9、),此时间内ipm会封锁门极驱动,关断ipm;故障输出信号持续时间结束后,ipm内部自动复位,门极驱动通道开放。但是,ipm自身产生的故障信号是非保持性的,如果故障源仍旧没有排除,ipm就会重复自动保护的过程,反复动作。过流、短路、过热保护动作都是非常恶劣的运行状况,应避免其反复动作,因此仅靠ipm 内部保护电路还不能完全实现器件的自我保护。要使系统真正安全、可靠运行,需要辅助的外围保护电路。1.2本课题的研究方法eda代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照自顶向下的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成 电路(asic)实现
10、,然后采用硬件描述语言(vhdl)完成系统行为级设计,最后通过综合器和适配 器生成最终的目标器件。这样的设计方法被称为高层次的电子设计方法,下面介绍与eda有关的几种方法:(1)自顶向下的设计方法 以前,进行电子设计的基本思路还是选择标准集成电路自底向上(bottom-up)地构 造出一个新的系统,这样的设计方法就如同一砖一瓦地建造金字塔,不仅效率低、成本高而且还容易出错。 而高层次设计给我们提供了一种自顶向下(top-down)的全新的设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统
11、一级进行验证。然后用综合优化工具 生成具体门电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要 仿真和调试过程是在高层次上完成的,这不仅有利于早期发现结构设计上的错误,避免设计工作的 浪费,而且也减少了逻辑功能仿真的工作量,提高了设计的一次成功率。(2)系统级设计 进入90年代以来,电子信息类产品的开发出现了两个明显的特点:一是产品的复杂程度加深,二是产品的上市时限紧迫。然而电路级设计本质上是基于门级描述的单层次设计,设计的 所有工作(包括设计输入,仿真和分析,设计修改等)都是在基本逻辑门这一层次上进行的,显然 这种设计方法不能适应新的形势,为此引入了一种高层次的电子
12、设计方法,也称为系统级的设计方 法。 - 高层次设计是一种概念驱动式设计,设计人员无须通过门级原理图描述电路,而是 针对设计目标进行功能描述,由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的概 念构思与方案上,一旦这些概念构思以高层次描述的形式输入计算机后,eda系统就能以规则驱动 的方式自动完成整个设计。这样,新的概念得以迅速有效的成为产品,大大缩短了产品的研制周 期。不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,在厂家综合库的支持 下,利用综合优化工具可以将高层次描述转换成针对某种工艺优化的网表,工艺转化变得轻松容易。1.3本设计的主要内容vhdl语言的基本结构
13、,介绍了quartusii并用它进行本文的设计,讨论了变频器故障保护电路和显示电路设计思路、示意图,结构图,流程图及程序仿真图。并用vhdl语言编程对各个功能模块进行实现。将设计在eda工具quartusii下进行时序仿真,得到了仿真结果,验证变频器故障保护电路和显示电路设计的正确性和实用性。2.eda与应用软件等方面的基本概况2.1 eda的发展回顾近30年电子设计技术的发展历程,可将eda技术分为三个阶段。(1) 七十年代为cad阶段,这一阶段人们开始用计算机辅助进行ic版图编辑和pcb布局布 线,取代了手工操作,产生了计算机辅助设计的概念。(2)八十年代为cae阶段,与cad相比,除了纯
14、粹的图形绘制功能外,又增加了电路功能设 计和结构设计,并且通过电气连接网络表将两者结合在一起,以实现工程设计,这就是计算机辅助 工程的概念。cae的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,pcb后分 析。(3)九十年代为eda阶段。尽管cad/cae技术取得了巨大的成功,但并没有把人从繁重的 设计工作中彻底解放出来。在整个设计过程中,自动化和智能化程度还不高,各种eda软件界面千 差万别,学习使用困难,并且互不兼容,直接影响到设计环节间的衔接。基于以上不足,人们开始 追求贯彻整个设计过程的自动化,这就是eda即电子系统设计自动化。2。22eda技术与前景eda技术是在电子ca
15、d技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。利用eda工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出ic版图或pcb版图的整个过程在计算机上自动处理完成。 现在对eda的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有eda的应用。目前eda 技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都
16、可能涉及到eda技术。本文所指的eda技术,主要针对电子电路设计、pcb设计和ic设计。eda 设计可分为系统级、电路级和物理实现级。eda技术是电子设计领域的一场革命,目前正处于高速发展阶段,每年都有新的eda工 具问世,我国eda技术的应用水平长期落后于发达国家,因此,广大电子工程人员应该尽早掌握这 一先进技术,这不仅是提高设计效率的需要,更是我国电子工业在世界市场上生存、竟争与发展的 需要。2.3 fpga/cpld的基本知识2.3.1 fpga/cpld的概况介绍cpld(complex programmable logic device,复杂可编程逻辑器件)和fpga(field p
17、rogrammable gates array,现场可编程门阵列)都是可编程逻辑器件,它们是在pal、gal等逻辑器件基础上发展起来的。同以往的pal、gal相比,fpga/cpld的规模比较大,适合于时序、组合等逻辑电路的应用。它可以替代几十甚至上百块通用ic芯片。这种芯片具有可编程和实现方案容易改动等特点。由于芯片内部硬件连接关系的描述可以存放在磁盘、rom、prom、或eprom中,因而在可编程门阵列芯片及外围电路保持不动的情况下,换一块eprom芯片,就能实现一种新的功能。它具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及实时在检验等优点,因此,可广泛应
18、用于产品的原理设计和产品生产之中。几乎所有应用门阵列、pld和中小规模通用数字集成电路的场合均可应用fpga和cpld器件。2.3.2 pfga/cpld的区别与联系项目fpgacpld备注结构工艺多为lut加寄存器结构,实现工艺多为sram,也包含flash,anti-fuse等工艺多为乘积项,工艺多为e2cmos,也包含eeprom,flash,anti-fuse等不同工艺触发器数量多少fpga更适合实现时序逻辑,cpld多用于组合逻辑pin to pin延时不可预测固定对fpga而言,时序约束和仿真非常重要规模与逻辑复杂度规模大,逻辑复杂度高,新型器件高达千万门级规模小,逻辑复杂度低成本
19、与价格成本高,价格高成本低,价格低编程与配置一般包含2种,外挂bootrom和通过mcu或dsp等在线编程。多数基本属于ram型。掉电后程序丢失有两种编程方式,一种是通过编程器烧写rom,另一种较方便的方式是通过isp模式。一般为rom型,掉电后程序不丢失。fpga掉电后一般将丢失原有逻辑配置,而反熔丝工艺的fpga,如actel的某些器件族和目前内嵌flash或eecmos的fpga,如lattice的xp器件族,可以实现非易失配置方式保密性一般保密性较差好一般的fpga不容易实现加密,但是目前的一些采用flash加sram工艺的新型器件(如littice的xp系列等)在内部嵌入了加载fla
20、sh,能提供更高的保密性互联结构,连线资源分布式,丰富的布线资源集总式,相对布线资源有限fpga布线灵活,但是时序更难规划,一般需要通过时序约束,静态时序分析,时序仿真等手段提高并验证时序性能适用的设计类型复杂的时序功能简单的逻辑功能2.3.3 逻辑电路概念组合逻辑:电路的输出信号只与该时刻输入信号有关,而与电路原来所处的状态无关。时序逻辑:任何一个时刻的输出状态不仅取决于当时的输入信号,还与原电路的状态有关。时序电路的特点是具有记忆元件(最常见的是触发器),具有反馈通道。包括各类触发器,寄存器,各类计数器和顺序脉冲发生器,各类存储器。2. 4 vhdl语言2.4.1 vhdl语言编程格式(1
21、)一个完整的vhdl程序是以下五部分组成的:库(library):储存预先已经写好的程序和数据的集合程序包(package):声明在设计中将用到的常数、数据类型、元件及子程序实体(entity):声明到其他实体或其他设计的接口,即定义本定义的输入输出端口构造体(architectur):定义实体的实现,电路的具体描述配置(configuration):一个实体可以有多个构造体,可以通过配置来为实体选择其中一个构造体。(2)实体实体(entity)是vhdl设计中最其本的组成部分之一(另一个是结构体),vhdl表达的所有设计均与实体有关。实体类似于原理图中的一个部件符号,它并不描述设计的具体功能
22、,只是定义所需的全部输入/输出信号。实体格式如下:entity实体名isgeneric(常数名:数据类型:设定值)类属说明port端口说明(端口信号名1:模式类型;端口信号名2:模式类型;端口信号名3:模式类型;端口信号名4:模式类型);type语句或常量定义实体申明并行语句实体语句end实体名;(3)结构体所有能被仿真的实体都由结构体(architecture)描述,即结构体描述实体的结构或行为,一个实体可以有多个结构体,每个结构体分别代表该实体功能的不同实现方案。结构体格式:architecture结构体名of实体名is定义语句(元件例化);begin并行处理语句;end结构体名;2.4.
23、2用vhdl语言对fpga和cpld器件进行开发时应注意的事项:1 毛刺问题的处理 在eda环境中,毛刺是系统设计是否成功的关键。毛刺(竞争 冒险)现象是长期困绕电子工程师的问题之一。由于毛刺的存在,使的系统存在许多不稳定因素,经常会造成对脉冲上下沿敏感的电路产生误动作。毛刺主要是由门电路延时及路径延时造成的,采用传统设计方法时,毛刺必须在硬件测试时才有机会发现。但在现代数字系统设计时,通过eda软件,完全可以找出毛刺产生的原因及产生的位置,并且非常准确和接近实际情况。 目前常使用三种方法消除毛刺,它们分别为延时法、选通法和修改逻辑设计法。其中,修改逻辑设计能从根本上消除毛刺,但该方法要求使用
24、者掌握电路的工作状态及其转换,有时需要多路输出,使用起来有一定的复杂性。2 fpga及cpld器件的选择 现场可编程门阵列fpga(fieldprogrammablegatearray)和复杂可编程逻辑器件cpld(complexprogrammablelogicdevice)均是目前大量使用的可编程大规模集成电路。可编程器件的使用,大大缩短了电子 产品的设计周期,减少了设计费用及风险,是电子产品领域的一场革命。fpga器件将逻辑功能块排列为阵列,并由可编程的内部连线连接这些功能块来实现相应的逻辑功能fpga器件的内部可以分成三个组成部分,分别是可构造的输入偷 出模块iob(inputoutp
25、utblock)、可构造逻辑块clb(configurablelogicblocks)和可编程内部连线资源pia(programmableinterconnectarray)。 cpld器件将多个可编程阵列器件(pal)集成到一个芯片内,一般包含三个部分,分别为可编程逻辑功能块(fb)、可编程io单元以及可编程内部连线,有些cpld器件还集成ram、双口ram和fifo等。尽管fpga和cpld均为可编程器件,有很多共同的特点,但由于结构上的差异,在使用时,必须注意以下几 点: (1)cpld器件编程时采用e2prom或fastflash技术,使用时无需外部存储芯片,系统断电时,编程信息不丢失
26、;而fpga器件必须使用外部存储器存储编程的信息。由于采用sram存储技术,fpga编 程信息在系统断电时丢失,每次上电时,必须将编程信息重新写入sram中,但其编程次数没有限制,可以随时改变编程信息 j。 (2)cpld器件的速度比fpga快,保密性能好,但功耗大,而且这一特点随集成度的提高,愈加明显。 (3)fpga的集成度比cpld高,但其时序延迟不可预测,而cpld器件由于采用边续布线结构,决定了它的时序延迟是均匀的,可预测的。 尽管采用fpga和cpld器件均可完成相同的电路设计,但在实际使用时,应注意到对于复杂的组合电路设计,宜采用cpld器件,而在电路设计时,如果用到较多的触发器
27、,则宜采用fpga器件。 3 fpga和cpld器件管脚使用和选择时应注意的问题 要保证器件所有的电源正端和接地端可靠连接,每一对电源正端和地线之间并联一个01uf的电容,以便滤波和去耦。由于可编程器件使用时,编程信息易于修改,应对内部的逻辑单元和外部的引脚留有一定的余量,以便系统的修改和扩充。时序电路一定要使用 “上电复位”电路,以保证系统上电后,便处于初始状态。合理进行引脚锁定,以避免管脚位置的变化导致的电路设计失败,因为管脚的位置变化,往往会引起指定功能块组合的变化,造成芯 片内部资源的不足。 4 在使用vhdl语言编程时,应合理选择信号、变量以及数据类型 因为vhdl语言是一种硬件描述
28、语言,信号、变量均具有一定的硬件性质,并占有相应的内部资源。变量具有局部特性,只在一个进程或一个子程序中有效,但对于它的赋值是立即生效的。信号则不同,它具有全局特性,对信号的赋值不是立即生效的。一般情况下,往往在进程中使用变量传递数据,然后利用信号将数据带出进程。无论是变量还是信号,一定要在定义完类型后,根据实际的需要确定数据的范围,否则将大大占用内部 资源。不同的数据类型不能直接进行运算,即使数据类型相同,位长不同时,也不能直接带入。寄存器的引入往往是通过wait和if语句测试敏感信号边沿来实现的,禁止在一个进程中同时存在两个或两个以上的寄存器描述,即一个进程中只能有一个wait和if语句。
29、一般情况下,不要将产生寄存器的赋值语句放在 if语句的else分支上,但可以放在elseif语句上2. 5 quartusii软件的概况altera公司的quartusii软件提供了可编程片上系统(sopc)设计的一个综合开发环境。quartus ii 开发工具人机界面友好、易于使用、性能优良,并自带编译、仿真功能。quartusii软件支持vhdl和verilog硬件描述语言的设计输入、基于图形的设计输入方式以及集成系统级设计工具。quartusii软件可以将设计、综合、布局和布线以及系统的验证全部都整合到一个无缝的环境之中,其中也包括和第三方eda工具的接口。quartusii设计软件根据
30、设计者需要提供了一个完整的多平台开发环境,它包含整个fpga和cpld设计阶段的解决方案。在实际应用设计中,对程序原理性及可执行性的验证主要集中在程序修改阶段,尤其在处理的数据复杂、繁多时,quartus ii自带的波形输入仿真就很难实现程序的验证,而且输出的数据不能方便的以波形图示直观的呈现,给程序设计者在校验程序阶段带来了很多的不便。再有,在很多数字电路设计中,考虑成本的问题,fpga实现的往往是设计的核心部分,而很多的外围电路如a/d转换器、d/a转换器等仍然使用传统的接口芯片来实现。而quartusii 设计只是针对数字信号,并不支持模拟量的输入。而仅仅为了便于程序的验证而用fpga实
31、现这些外围电路,不但会大大延长程序的开发周期,更会增大开发的成本。而matlab具有强大的运算功能,可以容易的实现a/d、d/a转换等外围电路功能,并能以波形形式将结果直观地呈现,极大地方便了程序设计人员设计应用系统。3基于eda技术的变频器故障保护31设计要求以及总体方案:311设计要求 从dsp过来的可调脉宽调制(pwm)信号,首先经过三态门控制。三态门的控制信号即由故障信号驱动。当发生故障时,为1,输出高阻状态,中止pwm信号;正常时,en为0,开放pwm信号。en信号从触发器的输出端q来。触发器为故障记忆电路。0,。信号由与非门经延时电路来。此延时电路是为抗干扰而设置的。当然触发器电路
32、的清零信号就是故障复位信号。注意这里的复位电路仅是示意图,实际电路应加上去抖动电路。就是电路参数在实际调试中设置。与非门的输入信号即为ipmf,hv,lv,hi,break。此后,还须经过死区设置电路才能输出到ipm的高速光电隔离驱动电路。312总体方案和设计框图 本设计是运用altera公司的cyclone ii系列中的ep2c8t144c8芯片,该芯片价格低,性能高,反应速度快。在整个系统当中,以外部接入的12mhz晶振作为全局时钟,主要考虑到设计中延时部分对频率要求比较高,在频率越高的情况下,精确度越高。整个系统是运用自顶向下的思想来进行模块的分割,首先将整个系统分开成各个不同的模块,再
33、对各个模块独立编程仿真,最后再对所有模块进行综合,将各个模块连接起来进行总体仿真。运用这种方法使的本来较复杂的系统变的简单了,而且能够快速的找出错误的地方。三 态 门 控 制 电 路死 区 时 间 设 置 电 路故障记忆和复位电路去 光 电 隔 离 电 路延 时 电 路信 号 合 成 和 去 光 电 隔 离 电 路图 1 总体设计框图32 基于eda技术的变频器故障保护设计321 信号合成和延时电路模块mand 设计 信号合成部分其实就是一个简单的与非门,将由去光电隔离电路分离出来的信号:ipmf:ipm综合故障信号。从ipm模块来。它集成了控制电压欠压保护(uv) 过温保护(ot)过流保护(
34、oc) 短路保护(sc)信号。hv:直流母线过电压信号。从过电压保护电路来。lv:直流母线欠电压信号。从低电压保护电路来。hi:交流电流过电流信号。从电流检测电路及过流保护电路来。它与ipm的过流保护值并不相同。因ipm的过流保护是保护ipm器件的。而这里是保护电动机的。实际电动机的最大电流大多情况下都低于ipm允许的最大电流值。也就是hi电流保护动作值比ipm动作值小,因而保护动作早。可保护电动机不在过流情况下运行。break:这为逆变器供电的电动机作制动时的信号。但本电路中没有用到。此端口为预留。这五个信号均用0表示故障信号,1表示正常信号。这五个信号合成一个信号后,再经由延时电路,进行1
35、0的延时,主要是为了抗干扰,使电路不会出现误动作。同时延时电路是运用计数器的原理,当时钟clock信号的上升边沿信号来时检查综合信号是否为1,如为1则计数器启动,当计数结束后,最终输出结果才为1。最终达到了信号综合和延时的结果。j为本模块最后输出。图 2 信号合成和延时电路模块外部接口图其仿真图如下: 图 3 模块mand仿真波形图由以上仿真波形图分析可以看出,ipmf,hv,lv,hi,break五个信号都为 1 时,即此时是正常状态,输出j也为 0 ,当五个信号中的任一个为 0 时,输出经过延时后马上输出为 1 。这里的延时实际上就是一个去抖电路,延时时间的选取主要是考虑硬件本身的质量,还
36、有就是去光电隔离电路的延时效应,而这种情况下一般去抖电路都会选取10 ms左右,固这里选取10 ms的死去时间。在上图当中标记的为延时时间以及效果。322 故障记忆和复位模块 ff 设计故障记忆和复位模块实质上就是一个带有复位的jk触发器,但是只运用到三个状态,就是保持状态、置1状态和复位状态,在这里输入端k接地,是为了保持输入为0,输入端j 是由上一模块传送过来的信号,当j输入为0时为保持上一状态,即输出en 为0;当输入端j的输入为1时候,输出端en则为1,即使输入端j的输入变为0,输出端en仍然输出为1,当只有复位端clr的输入为0时,输出端en才变为0,从而达到了记忆和复位的作用。其中
37、复位是采用不同步复位, 由外部电路的一个按键和一个电容组成。在这里时钟信号clk是为了在每一个脉冲的上升沿到来时都会检查输入端j的输入是否为1,以达到快速的改变信号端en的置1输出。图 4 故障记忆和复位模块ff外部借口图其仿真图如下: 图5 模块ff仿真波形图观察以上仿真波形图可知:开始时,在时钟信号下,输入j为0时,输出保持为上一输出结果,即为0,当输入变为1时,输出en马上由0变为1,此输出为1状态一直到复位clr输入为0时才使输出端en的输出为0。显然达到了要求的结果。323三态门控制模块gate8的设计 这个8输入8输出的三态门模块可以有8个单独的简单三态门模块组成,这个模块的8个输
38、入是有外部的dsp发送过来的pwm波形信号,8个输出是由上一个模块传送过来的信号en控制。当控制信号en为0时,8个输出信号跟随8个输入信号;当为1时,8个输出信号不再跟随8个输入信号,而且8个输出都为0。图 6 三态门控制模块gate8的外部接口图其仿真波形图如下: 图 7 模块gate8仿真波形图观察波形图可知:当en端为0时,输出跟随输入;当en端变为1时,输出马上做出反应,不再跟随输入,而且输出为0;再次当en端为0时,输出又马上跟随输入。故达到了实时性和准确性的要求。324死区时间设置模块dead设计 dead模块主要是由时钟信号来控制,内部其实就是有一个简单的计数器。dead模块主
39、要是为了两路pwm信号不同时为高,使两路信号有共同的一个死区时间,从而避免避免同侧对管导通而将管子烧坏。一般igbt器件的死去时间为36,为了能够确保上下管子的导通,用延时方法实现10的死区延时因为是利用clk时钟上升脉冲来检查信号再进行计数,故不能够准确的达到10的延时,肯定大于10,但最多不超过一个时钟周期,所以选用越高频率的时钟信号就越靠近10的延时。在这里死区计数器采和饱和计数器,饱和计数器的特性类似于电容的充放电过程,规则为:(1)当输入为0时,如果计数值等于0,则计数值保持不变,否则作减1计数;(2)当输入为1时,如果计数值等于max,则计数值保持不变,否则作加1计数;(3)当输入
40、为1且死区计数器数值为max时,上桥臂导通;(4)当输入为0且死区计数器数值为0时,下桥臂导通;(5)当死区计数器数值在0max之间时,上下桥臂都截止,形成一个共同的死区。其中,max等于预先设置的死区时间的数值。图 8 死区时间设置模块dead的外部接口图其仿真波形图如下: 图 9 模块dead仿真波形图观察波形图知道,当脉冲信号上升沿来时候检查输入的pwm信号是否为1,如为1则进行计数,当计数器达到满时,输出才为1。其中死去时间如图上标记部分。325变频器故障保护顶层模块protect设计由模块电路总体设计图1,经过vhdl编程,得到各模块的vhdl设计实体,然后对各模块的设计实体在qua
41、rtusii中进行仿真,验证各模块的正确性。最后再设计一个顶层文件把各模块按图1连接起来,便构成了一个变频器故障保护的cpld内部硬件电路。图 10 顶层模块protect外部接口图图 11 变频器故障保护顶层文件原理图 其仿真波形如下: 图12 顶层模块protect仿真波形观察图11可知:在控制信号输入全为1时,输出的pwm信号的上升沿比输入的pwm信号的上升沿延迟了10,同时下降沿没有延时;当输入的控制信号任何一个出现为0时,输出的pwm信号都为0;当且谨当复位信号clr的输入为0时,输出的pwm信号的情况才恢复正常。仿真结果与期望结果一致。至此,本设计得到成功验证。4 外部显示电路设计
42、 外部显示电路主要是有发光二极管和电阻构成,电阻主要是为了保护发光二极管,防止电流过大烧坏发光二极管。其结构图如下 图 13 故障显示电路5 设计总结变频器故障保护系统的设计已全部完成,能按预期的效果进行ipm综合故障、直流母线过电压、直流母线欠电压、交流电流过电流等故障保护,同时还可以逆变器供电的电动机作制动等功能,并利用简单的发光二极管来显示故障信号,使使用者能够快速掌握故障信息。而在传统的设计中,一般是运用在市场上随时可买到的电子元件组成电路,但其结构较复杂,而且各个元件之间本身存在一定的误差以及一些不确定因素,以至于很难实现以上的功能。在这个设计中运用了vhdl语言,简明的代码描述复杂
43、控制逻辑设计,减少了误差以及不确定因素,而且在速度、准确性、实时性上体现了利用cpld设计的优越性。致 谢很高兴能完成这篇论文,虽然完成得比较急,很知识点还没有完全地搞懂弄明白,在好多环节上碰壁不少,曾在死区设计模块上久攻不下,最终在老师的帮助下完成了。特别要感谢宁宇老师,正因为老师对我们的信任让我放手大胆去做,在没有任何负担压力下,最终把所有的任务完成参考文献1.黄正谨 ,徐 坚,章小丽,熊明珍。cpld系统设计技术入门与应用m电子工业出版社. 2002年3月。2.求是科技。cpld/fpga应用开发技术与工程实践(第1版)m人民邮电出版社. 2005年1月。3.侯伯亨,故 新vhdl硬件描
44、述语言与数字逻辑电路设计m西 安:西安电子科技大学出版社,19994.吴晨光,彭安金,王奔svpwm信号发生器的vhdl实现j电子设计应用,2006(1);6971。5.张昌凡,等.可编程逻辑器件及vhdl设计技术m.广州:华南理工大学出版社,20016.贺昱曜. spwm变频器信号延迟特性分析及计算j电工技术学报, 1996,(3) : 27231.7.梁中华,肖丹,杨霞.一种基于cpld的spwm 控制波形生成方法j沈阳工业大学学报,2005(4)第27卷第2期8.毛惠丰,陈增禄.cpld在mspwm逆变器中对死区时间控制的应用j西安工程科技学院学报,2002(12)第16卷第4期(总64
45、期),附录信号合成和延时电路模块mand :library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mand is - -定义一个mand实体port(ipmf,hv,lv,hi,break,clk :in std_logic;- -输入控制信号j :out std_logic - -输出控制使能);end mand;architecture shiftrl of mand isconstant deadtime :integer :=125000; - -定义整数型常数deadtime=”
46、125000”signal count:integer range 0 to deadtime ;- -定义一个信号,以保存计数值signal q:std_logic;- -定义一个信号作为延时和与非门之间的传递信号beginq=not(ipmf and hv and lv and hi and break) ;- -对5个输入信号进行与非并赋值给信号qprocess(clk) - -以时钟信号作为敏感信号beginif(clkevent and clk=1) thenif(q=0) thenj=0;count=0; - -对计数器清零elsif(q=1 and count/= deadtim
47、e) thencount=count+1;- -计数没完自动加1j=0;- -计数没完,输出为零elsif (q=1 and count= deadtime) thenj=1;- -计数完成,输出变为1end if;end if;end process;end shiftrl;*故障记忆和复位模块ff:library ieee;use ieee.std_logic_1164.all;entity ff isport(j,k,clk,clr:in std_logic;en :buffer std_logic); - -定义en为输入输出端口end ff;architecture arch of
48、ff issignal temp :std_logic;- -定义一个信号,用以存贮前一个输出状态beginprocess(clk,clr)begintemp=en;if clr=0 then - -当按下复位键则异步复位en=0;elsif clk=1 and clkevent thenen=(j and (not temp)or (not k) and temp);-只考虑两个状态,因为k端接地end if;end process;end arch;*三态门控制模块gate8 :library ieee;use ieee.std_logic_1164.all;entity gate8 is
49、port(pwm1,pwm3,pwm4,pwm6,pwm5,pwm2,pwm7,pwm8:in std_logic;en :in std_logic;- -使能控制输入pwm10,pwm30,pwm40,pwm60,pwm50,pwm20,pwm70,pwm80 :out std_logic);end gate8;architecture arch of gate8 isbeginprocess(pwm1,pwm2,pwm3,pwm4,pwm5,pwm6,pwm7,pwm8,en)beginif en=1 then - -使能端为1时输出都为0pwm10=0;pwm20=0;pwm30=0;p
50、wm40=0;pwm50=0;pwm60=0;pwm70=0;pwm80=0;else - -否则输出信号都跟随输入信号pwm10=pwm1;pwm20=pwm2;pwm30=pwm3;pwm40=pwm4;pwm50=pwm5;pwm60=pwm6;pwm70=pwm7;pwm80=pwm8;end if;end process;end arch;*死区时间设置模块dead :library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity dead isport(pwm10,pwm30,pwm40
51、,pwm60,pwm50,pwm20,pwm70,pwm80 :in std_logic;clk :in std_logic;- -12mhz的时钟信号输入pwm1000,pwm3000,pwm4000,pwm6000,pwm5000,pwm2000,pwm7000,pwm8000 :out std_logic);end dead;architecture dead_time of dead isconstant deadtime:integer:=120;- -定义一整数型常数deadtime=120signal t1,t2,t3,t4,t5,t6,t7,t8:integer range 0
52、 to deadtime ;- -定义8个计数器信号来对输入信号计数beginprocess(clk)beginif(clkevent and clk=1 ) thenif(pwm10=1 and t1/=deadtime)then - -输入信号为1且计数未满t1=t1+1;- -计数器自动加1pwm1000=0;- -输出信号为0elsif(pwm10=0 and t1/=0)then - -输入信号为0且计数值不为0t1=t1-1; - -计数器自动减1pwm1000=0;- -输出信号为0end if;if(pwm10=1 and t1=deadtime)then - -输入信号为1且已计数满pwm1000=1;- -输出信号为1end if;if(pwm10=0 and t1=0)then - -输入信号为0且计数器为0pwm1000=0;- -输出信号为0end if;end if;end process;process(clk)beginif(clkevent and clk=1 ) thenif(pwm20=1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵州铜仁松桃县2025年初三下期2月化学试题试卷含解析
- 贵州省兴义市鲁屯镇中学2024届七年级英语第二学期期末统考试题含答案
- 热继电器产品相关项目建议书
- 生瓜子产品相关项目建议书
- 贵州省铜仁市松桃县2024-2025学年初三5月模拟考数学试题含解析
- 幼儿园半日活动设计
- 贵州省黔西南州黔西市2023-2024学年数学三下期末学业水平测试模拟试题含解析
- 以病人为中心的健康照顾
- 一、工程概况二、工程技术难点与新技术推广应用情况三
- 2024-2034年全球及中国陶瓷泡沫行业市场发展分析及前景趋势与投资发展研究报告
- 质量月”质量知识竞赛试题(带答案)
- 采购部岗位等级晋升标准表
- JOIN-IN四年级上册单词表(全)
- (完整版)10KV配电室安装工程施工方案
- 数独比赛“六宫”练习题(96道)练习
- 法律法规获取、更新控制程序
- 起重吊装施工安全专项方案
- 欧曼汽车典型疑难故障分析与排除方法汇总
- 悬臂梁在均布荷载作用下有限元分析
- 医院专业技术职务聘任管理办法(共22页)
- 一、供曼扎准备事宜
评论
0/150
提交评论