基于FPGA 的六层电梯控制系统
基于FPGA 的六层电梯控制系统
摘 要
本设计是基于电子设计自动化(EDA)技术中的甚高速集成电路硬件描述语言(VHDL)语言,运用FPGA所开发的四层电梯控制程序,采用Quartus II软件仿真。运用有限状态机的设计方法,设计了两个进程相互配合,状态机进程作为主要进程,信号灯控制进程作为辅助进程。在主进程中定义了7个状态,在电梯时钟的触发下,通过当前状态和信号灯信号判定下一状态。信号灯控制进程中,信号灯存储按键请求情况,它的熄灭是由状态机进程中传出的信号来控制。
通过程序调试及运行仿真,结果表明,本程序可以完成电梯运行所在楼层显示、电梯运行方向指示、关门延时设置等。
关键词:电梯控制器 VHDL 状态机 FPGA
Ⅰ
基于FPGA 的六层电梯控制系统
1概述
1.1课题背景及意义
随高层楼宇的增加,电梯越来越多的走进了人们的生活,对人们的生活的影响越来越大。为了让电梯更好的服务人们,各种电梯新技术不断地发展起来。随着人们生活水平的不断提高,经济的快速发展和生产生活的需要,城市高层建筑如雨后春笋拔地而起。与此相应,作为一种可以垂直升降运输的工具一电梯也得到迅猛的发展。现在,电梯已完全融入我们的生活、工作及学习中,人们越来越离不开它。因此,它的安全可靠性、迅速准确性、舒适性,对人们来说都是非常重要的。为了确保电梯正常运行、安全使用,一般电梯都有专业的维修管理人员。他们必须对电梯原理、性能、特点、控制、运行要全面认识和掌握,才能做到对电梯的正确使用、管理及维护。根据我国有关部门的规定,电梯作业属于特种作业,其作业人员必须经过专门培训,并经理论考试和实践考核合格后,发给《特种作业操作证》方可上岗操作。同时,对电梯操作人员定期考核,让他们定期参加安全技术学习,扎扎实实地做好电梯维护和保养工作,才能使人们平安长久的使用电梯。
电梯控制系统是一个相当复杂的逻辑控制系统.系统要同时对几百个信号进行接收、处理。由于用户对电梯功能的要求不断提高.其相应控制方式也在不断发生变化。随着EDA技术的快速发展.基于FPGA的微机化控制已广泛应用于电梯电路设计与控制的各个方面。
在经济不断发展,科学技术日新月异的今天,楼的高度已和经济发展同样的速度成长起来。作为建筑的中枢神经,电梯起着不可或缺的作用,电梯作为建筑物内的主要运输工具,像其他的交通工具一样,已经成为我们日常生活的一个不可缺少的组成部分。一个国家的电梯需求总量,主要受其经济增长速度、城市化水平、人口密度及数量、国家产业结构等综合因素的影响。在全球经济持续低迷的情况下,我国国民经济仍然以较高的速度持续增长,城市化水平不断提高。这从客观上导致了我国电梯行业的空前繁荣景象,我国已经成为全球最大的电梯市场。上世纪80年代以来,随着经济建设的持续高速发展,我国电梯需求量越来越大。总趋势是上升的,电梯行业进入了“第三次浪潮”。如此庞大的市场需求为我国电梯行业的发展创造了广阔的舞台!
1.2 EDA技术及实现方法概述
1
基于FPGA 的六层电梯控制系统
1.2.1 EDA技术简介
EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。
1.“自顶向下”的设计方法,10年前,电子设计的基本思路还是选用标准集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、成本高而且容易出错。
高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。
2.ASIC设计现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题。解决这一问题的有效方法就是采用ASIC芯片进行设计。ASIC按照设计方法的不同可分为全定制ASIC、半定制ASIC和可编程ASIC(也称为可编程逻辑器件)。
设计全定制ASIC芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺规则,最后将设计结果交由IC厂家去进行掩模制造,做出产品。这种设计方法的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺点是开发周期长,费用高,只适合大批量产品开发。
半定制ASIC芯片的版图设计方法分为门阵列设计法和标准单元设计法,这两种方法都是约束性的设计方法,其主要目的就是简化设计,以牺牲芯片性能为代价来缩短开发时间可编程逻辑芯片与上述掩模ASIC的不同之处在于:设计人员完成版图设计后,在实验室内就可以烧制出自己的芯片,无须IC厂家的参与,大大缩短了开发周期。
2
基于FPGA 的六层电梯控制系统
可编程逻辑器件自70年代以来,经历了PAL、GAL、CPLD、FPGA几个发展阶段,其中CPLD/FPGA属高密度可编程逻辑器件,目前集成度已高达200万门/片,它将掩模ASIC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转由掩模ASIC实现,因此开发风险也大为降低。
上述ASIC芯片,尤其是CPLD/FPGA器件,已成为现代高层次电子设计方法的实现载体
1.2.2 FPGA简介
目前以硬件描述语言(Verilog或 VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可
编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。 系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。
FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。另外一种方法是用CPLD(复杂可编程逻辑器件备)。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程
3
基于FPGA 的六层电梯控制系统
数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。 1.2.3 VHDL语言介绍
VHDL 的英文全名是 Very-High-Speed Integrated Circuit Hardware Description Language,诞生于 1982 年。1987 年底,VHDL被 IEEE 和美国国防部确认为标准硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。VHDL支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。
VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路 , 也可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。
VHDL 语言很强的移植能力主要体现在: 对于同一个硬件电路的 VHDL 语言描述 , 它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。
采用 VHDL 语言描述硬件电路时, 设计人员并不需要首先考虑选择进行设计的器件。这样做的好处是可以使设计人员集中精力进行电路设计的优化, 而不需要考虑其他的问题。当硬件电路的设计描述完成以后 ,VHDL 语言允许采用
4