毕业设计(论文)-基于FPGA的电梯控制系统设计.pdf_第1页
毕业设计(论文)-基于FPGA的电梯控制系统设计.pdf_第2页
毕业设计(论文)-基于FPGA的电梯控制系统设计.pdf_第3页
毕业设计(论文)-基于FPGA的电梯控制系统设计.pdf_第4页
毕业设计(论文)-基于FPGA的电梯控制系统设计.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文)开题报告 课题名称: 电梯控制系统设计 1本课题所涉及的问题及应用现状综述 随着整体经济的回暖,近两年我国电梯市场展现出快速增长的态势,在用电梯 34.6 多万台,每年还以约 5 万6 万台的速度增长。电梯服务在中国已有 100 多年 历史,我国在用电梯数量的快速增长却发生在改革开放以后,而目前我国电梯技术水 平已与世界同步。尽管电梯行业没有能够摆脱价格竞争的怪圈,但是,电梯市场的需 求,尤其住宅电梯市场的火爆,仍然给电梯行业带来了十分有利的发展机遇。电梯市 场发展至今,出现了许多新的变化:住宅电梯成为电梯市场的主流、电梯价格竞争越 演越烈、电梯技术要求越来越高、电梯部件日趋完善。而电梯将来的发展,电梯群控 系统将更加智能化、超高速电梯速度越来越高、蓝牙技术在电梯上广泛应用、绿色电 梯将普及、电梯产业将网络化、信息化等。 电梯的组成:曳引系统、导向系统、轿厢、门系统、重量平衡系统、电力拖动系 统、电气控制系统、安全保护系统。目前,对于一个中、小型的电梯控制系统,大多 都是利用 plc 控制,而本课题主要是采用 vhdl 语言,主要是练习利用硬件编程语言 vhdl 模拟仿真电梯控制系统设计。同时要对大规模可编程逻辑器件(cpld 或 fpga) 有一定的认识了解。通过对系统进行结构分析,采用层次化的设计方法,给出了控制 器的 vhdl 程序,对其程序进行了仿真,并做出仿真结果。 2本课题需要重点研究的关键问题、解决的思路及实现预期目标的可行 性分析 本课题主要研究 vhdl(即超高速集成电路硬件描述语言)是随着可编程逻辑器件 (pld)发展起来的一种硬件描述语言,主要用于描述数字系统的结构、行为、功能 和接口,是电子设计自动化(eda)的关键技术之一。它采用一种自上而下的设计方法, 即从系统总体要求出发进行设计。以可编程逻辑器件为控制核心,采用 vhdl 语言设 计电梯控制器的方法,并进行了仿真。主要通过软件编程实现,通过调用系统即可实 现。 该控制器可控制电梯完成各层楼的载客服务而且遵循方向优先原则, 并能响应提 前关门和延时关门,并具有超载报警和故障报警;同时指示电梯运行情况和电梯内外 的请求信息。 关键问题:熟悉 quartus软件的环境,了解其编写语言 vhdl,对于 vhdl 的熟 练掌握是极为关键的,详细了解不同功能模块并对此模块进行编程,测试,组合。 3完成本课题的工作方案 前期:查找相关资料,学习 vhdl 语言,熟悉其结构和指令,同时上机学习其开 发平台环境 quartus,掌握编程方法,进行简单的上机练习;同时确定整个系统预 期实现目标,进行前期规划,功能划分; 中期:结合具体内容,对系统中的不同功能模块程序进行编制,对编辑完成的程 序进行 quartus环境下的仿真分析; 后期:进行系统功能调试验证,对实际中暴露的一些问题进行改进,完善系统功 能,论文撰写。 4指导教师审阅意见 指导教师指导教师(签字): 年 月 日 目录目录 摘要. i摘要. i abstract iiabstract ii 第 1 章 绪论 3第 1 章 绪论 3 1.1 电梯控制国内外现状 3 1.1.1 国外现状 . 3 1.1.2 国内现状 . 4 1.2 基于可编程逻辑器件的电梯控制系统 4 第 2 章 基础知识 6第 2 章 基础知识 6 2.1 vhdl 语言简介 . 6 2.2 软件开发工具 8 2.2.1 max+plus简介 . 8 2.2.2 quartus简介 9 第 3 章 电梯控制方案 . 10第 3 章 电梯控制方案 . 10 3.1 设计要求 . 10 3.2 原理框图及简介 . 10 3.3 设计方案介绍 . 11 3.3.1 内部请求优先控制方式方案 . 11 3.3.2 层层停控制方式方案 11 3.3.3 方向优先控制方案 12 第 4 章 电梯控制系统的模块设计 . 13第 4 章 电梯控制系统的模块设计 . 13 4.1 主控制器 fpga 的功能 13 4.2 模块设计. 14 4.2.1 外部数据高速采集模块设计. 14 4.2.2 信号存储模块 14 4.2.3 基于 fpga 的中央处理模块 . 15 4.2.4 信号的输出、显示模块 . 17 4.3 变频器的计算与选择. 17 4.4 电梯铃控制与故障报警. 18 第 5 章 电梯控制系统的实现 . 19第 5 章 电梯控制系统的实现 . 19 5.1 电梯控制系统的实现 . 19 5.2 电梯控制系统的结果与分析 . 23 结 论 29结 论 29 致 谢致 谢 错误!未定义书签。 参考文献 30参考文献 30 附录 . 31附录 . 31 电梯控制系统设计 i 摘要摘要 随着我国经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速 发展,交流变频调速技术已经进入一个崭新的时代,其应用越来越广。而电梯作为现代 高层建筑的垂直交通工具,与人们的生活紧密相关,随着人们对其要求的提高,电梯得 到了快速发展。 针对传统单片机设计的电梯控制器外围电路复杂,性能不稳的缺点,提出了基于 fpga 的电梯控制器设计。控制器以fpga 芯片为核心,各种功能通过在fpga 设计工具 中用vhdl 语言进行描述,在集成软件环境中进行编译、调试及综合,使用专用下载电 缆将程序代码下载到芯片中以实现其功能。 从程序仿真图上可以看出该控制器提供6 个 楼层多用户的载客服务并指示电梯的运行情况。该方法不仅简化了电路设计,提高了控 制器抗干扰性,而且降低了功耗,具有广阔的发展前景。 关键词:vhdl;控制器;fpga;电梯 电梯控制系统设计 ii abstractabstract with the development of the economy, microelectronic technology, computer technology and the automatic theory are developed rapidly, the ac variable frequency technology has been in a new state. its application is becoming more and more widely. but the elevator as an important traffic in skyscraper,it also has developed quickly with the improving requirement of the people . a new fpga-based elevator controller is designed in order to overcome the defects of traditional single-chip microcomputer-based elevator controller, such as the complexity of peripheral circuit and the instability of the performance. the fpga chip is used as the core of the controller, and the corresponding functions of the controller are described in vhdl language. the editing, debugging and combination of the programs are finished in the integrated software environment, and the program codes are downloaded to the chip using specialized cable to implement its functions. simulation diagram shows that the fpga-based controller can offer multi-user operation of six-floor passenger elevator and can also monitor the running status of the elevator. this design not only simplifies the design of the circuit and improves the capability of anti-jamming, but lowers the power consumption as well. thus, it has broad application prospects. key words:vhdl;controller;fpga;elevator 3 第 1 章 绪论第 1 章 绪论 1.1 电梯控制国内外现状1.1 电梯控制国内外现状 在现代社会和经济活动中,电梯作为高层建筑中不可缺少的垂直运输设备, 已成为城市物 质文明的一种标志。电梯的发展主要表现在控制系统的不断优化。80 年代制造的国产电梯, 控制系统复杂,制造技术难度大,而且成本高、功能也少;如今随着计算机、通讯技术的发 展,计算机模拟技术越来越广范地应用于电梯工程中。电梯的控制系统也逐渐向着“智能化” 的方向发展,换句话说就是智能化的调度规则越来越广泛地应用于电梯控制系统,特别是在 电梯的群控管理中表现得尤为突出。 目前,cpld 与 fpga 逻辑器件正向着低电压、低功耗、系统内可重构和高速可预测延时 器件的方向发展,很多生产厂商不断采用多种新技术、新工艺来提高 cpld 与 fpga 逻辑器件 的容量,增强软件的功能。相信在不久的将来,cpld 与 fpga 会成为系统级平台设计的首选, 在通信、自动控制、信息处理等诸多领域发挥更加重要的作用。本设计就是运用现代计算机 模拟技术设计的一种基于可编程逻辑器件 fpga 的 asic,并用超高速硬件描述语言 vhdl 编程 实现的“智能化”电梯控制系统。设计利用最优算法实现了智能化的调度控制,以满足实际 的需要。编程实现了开/关门自动保护、超载提示等以人为本的功能。除此之外利用该项技术 还能实现很多其他的智能化功能,合理利用将会使电梯服务越来越完善。 采用可编程逻辑器件通过对器件内部的设计来实现系统功能,是一种基于芯片的设计方 法.设计者可以根据需要定义器件内部逻辑和引出端,将电路板设计的大部分工作放在芯片的 设计中进行,通过对芯片设计实现数字系统的逻辑功能.灵活的内部功能块组合,引出端定义 等,可大大减轻电路设计和电路板设计的工作量和难度,有效的增强设计的灵活性,提高工作 效率.同时采用可编程逻辑器件,设计人员在实验室可反复编程,修改错误,以期尽快开发产 品,迅速占领市场。基于芯片的设计方法可以减少芯片的数量,缩小系统体积,降低能源消 耗,提高系统性能和可靠性。 采用 fpga 对电梯进行控制,通过合理的选择和设计,提高了电梯的控制水平,并改善了 电梯运行的舒适感,使电梯达到了较为理想的控制效果。 1.1.1 国外现状1.1.1 国外现状 在电梯控制系统方面,目前国外发达国家的电梯正在推广 32 位微机控制系统。他们都采 4 用闭环反馈单微处理机控制系统或多微处理机协调控制系统。在电梯传动系统方面,采用交 流变压变频(vvvf)调速技术,实现电梯从超低速到高速无级调速的高精度运行,具有节能、 对电网污染小、乘坐舒适感佳等优点。 在电梯反馈系统方面,除了采用旋转编码器获得电梯轿厢位置信号外,还有一些厂家采 用绝对值编码器从电梯轿厢上反馈位置信号给系统,对曳引电机进行以距离为原则的控制, 以实现直接平层技术,达到优越的电梯运行效果。 1.1.2 国内现状1.1.2 国内现状 在发展电梯控制新技术方面,在以前,我国已有一些电梯厂和科研单位合作研 究和试验半导体无触点的电梯控制系统和多项电梯制造和控制新技术。但由于国内基础工业 水平低,配套元器件质量差,不能满足电梯的可靠性要求,以及其他主客观因素的影响,收 效甚微。 目前,我国国内的电梯产品,在数量和质量都有了显著的提高。国内的速度控制的运行 方式和理想运行曲线基本上和国外的差不多。考虑到经济性,现有国内的电梯控制系统,通 常采用微机或可编程逻辑控制器对变频器进行多段速控制。在电梯传动系统方面,对于新装 客梯及旧梯改造项目,大多数采用了交流变压变频技术。 1.2 基于可编程逻辑器件的电梯控制系统1.2 基于可编程逻辑器件的电梯控制系统 随着数字集成电路的不断更新和换代,特别是可编程逻辑器件的出现,使得传统的数字 系统设计方法发生了根本的改变。可编程逻辑器件的灵活性使得硬件系统设计师在实验室里 用一台计算机、一套相应的 eda 软件和可编程逻辑芯片就可以完成数字系统设计与生产, 而 其中应用最广泛的可编程逻辑器件当属 fpga 和 cpld。 fpga 和 cpld 都是可编程逻辑器件,它们是在 pal、cal 等逻辑器件的基础上发展起 来的。同以往的 pal、cal 等比较,fpga/cpld 的规模更大,它可以替代几十甚至几千块通 用 ic 芯片。这样的 fpga/cpld 实际上就是一个子系统部件,因此它受到了世界范围内电子 工程设计人员的广泛关注和普遍欢迎。 fpga 是新一代面向用户的可编程逻辑器件它的功能密度远远超过其他 pld 器件,一块 fpga 可以替代(100-200)片标准器件或者(20-40)片 gal 器件,其 i/o 引脚数多达 100 余 5 条。所以一片 fpga 芯片可以替代多个逻辑功能复杂的逻辑部件,或者一个小型数字系统。 自 fpga 问世以来,它已在许多领域获得了广泛的应用。 现代数字技术已进入电子设计自动化 eda 时代,大大改变了现代电子系统设计的理念, 极大的提高了大规模系统电子设计的自动化程度。vhdl(即超高速集成电路硬件描述语言)是 随着可编程逻辑器件(pld)发展起来的一种硬件描述语言,主要用于描述数字系统的结构、 行为、功能和接口,是电子设计自动化(eda)的关键技术之一。它采用一种自上而下的设计方 法,即从系统总体要求出发进行设计。以 altera 公司可编程逻辑器件为控制核心,采用 vhdl 语言设计电梯控制器。 基于 fpga 的电梯控制器能够很好的控制电梯完成 6 层楼的载客服务,可靠性高。只要 稍微改变程序就可以实现更高层的电梯控制,灵活性强,工作效率高,具有广阔的应用前景。 6 第 2 章 基础知识第 2 章 基础知识 2.1 vhdl 语言简介2.1 vhdl 语言简介 电子设计自动化(eda)的关键技术之一是要求用形式化方法来描述数字系统的硬件电 路。vhdl 硬件描述语言在电子设计自动化中扮演着重要的角色,它是 eda 技术研究的重点 之一。 硬件描述语言是 eda 技术的重要组成部分,vhdl 是作为电子设计主流硬件描述语言, vhdl(very high speed integrated circuit hardware description language)于1983年由美国国防 部发起创建,由 ieee 进一步发展并在 1987 年作为 ieee 标准 10760 发布。因此,vhdl 成为硬 件描述语言的业界标准之一。 vhdl 作为 ieee 的工业标准硬件描述语言,得到众多 eda 公司 的支持,在电子工程领域,已成为事实上的通用硬件描述语言。 vhdl 语言具有很强的电路描述 和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了 设计效率和可靠性,使用 vhdl 语言,可以就系统的总体要求出发,自上而下地将设计内容细 化,最后完成系统硬件的整体设计。 vhdl 语言的编译环境有不同的版本,我们应用的是 altera 公司的 maxplus 软件,它的操 作顺序如下:使用 texteditor 编写 vhdl 程序使用 compiler 编译 vhdl 程序;使用 wave2formeditor,simularot 仿真实验;使用 timinganaltzer 进行芯片的时序分析;用 floorplaneditor 锁定芯片管脚位置;使用 programmer 将编译好的 vhdl 程序下载到芯片中。 一个完整的 vhdl 程序包括以下几个基本组成部分:实体(entity),结构体(architecture), 程序包(package),库(library)。其中,实体是一个 vhdl 程序的基本单元,由实体说明和结构体 两部分组成,实体说明用于描述设计系统的外部接口信号;结构体用于描述系统的行为,系统 数据的流程或系统组织结构形式。程序包存放各设计模块能共享的数据类型,常数,子程序 等。库用于存放已编译的实体,机构体,程序包及配置。 * 实体(entity) 在 vhdl 中,实体类似于原理图中的一个部件符号,它可以代表整个系统、1 块电路板、 一个芯片或一个门电路,是一个初级设计单元。在实体中,我们可以定义设计单元的输入输 出引脚和器件的参数。 * 结构体(architecture) 结构体描述一个设计的结构或行为,把一个设计的输入和输出之 7 间的关系建立起来。一个设计实体可以有多个结构体,每个结构体对 应着实体不同的实现方案,各个结构的地位是同等的。结构体对其基 本设计单元的输入输出关系可以用三种方式进行描述,即行为描述、 寄存器传输描述和结构描述。不同的描述方式,只是体现在描述语句 的不同上,而结构体的结构是完全一样的。结构体分为两部分:结构 说明部分和结构语句部分. * 库和程序包 库和程序包是 vhdl 的设计共享资源,一些共用的、经过验证的模块放在程序包中,实现 代码重用。一个或多个程序包可以预编译到一个库中,使用起来更为方便。 * 配置(configuartion) 配置语句一般用来描述层与层之间的连接关系以及实体与结构之间的连接关系。在分层 次的设计中,配置可以用来把特定的设计实体关联到元件实例(componet) ,或把特定的结构 (architecture)关联到一个实体。当一个实体存在多个结构时,可以通过配置语句为其指 定一个结构,若省略配置语句,则 vhdl 编译器将自动为实体选一个最新编译的结构。 vhdl 语言的主要描述语句 顺序语句 vhdl 提供了一系列丰富的顺序语句,用来定义进程、过程或函数的行为。所谓“顺序” , 意味着完全按照程序中出现的顺序执行各条语句,而且还意味着在结构层次中前面语句的执 行结果可能直接影响后面语句的结果。顺序语句包括:wait 语句,变量赋值语句,信号赋值 语句,if 语句,case 语句,loop 语句,next 语句,exit 语句,return 语句,null 语句, 过程调用语句,断言语句,report 语句等。 并行语句 由于硬件语言所描述的实际系统,其许多操作是并行的,所以在对系统进行仿真时,系 统中的元件应该是并行工作的。并行语句就是用来描述这种行为的。并行描述可以是结构性 的也可以是行为性的。而且,并行语句的书写次序并不代表其执行的顺序,信号在并行语句 之间的传递,就犹如连线在电路原理图中元件之间的连接。 vhdl 进行工程设计的优点: (1) 与其他的硬件描述语言相比,vhdl 具有更强的行为描述能力,从而决定了他成为系统 设计领域最佳的硬件描述语言。 (2) vhdl 丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功 能可行性,随时可对设计进行仿真模拟。 (3) vhdl 语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设 计的再利用功能。符合市场需求的大规模系统高效、高速地完成必须有多人甚至多个代发组 共同并行工作才能实现。 8 (4) 对于用 vhdl 完成的一个确定的设计,可以利用 eda 工具进行逻辑综合和优化,并自动 的将 vhdl 描述设计转变成门级网表。 (5) vhdl 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计 实现的目标器件是什么,而进行独立的设计。 (6) 用 vhdl 语言编写的源程序便于文档管理, 用源代码描述来进行复杂控制逻辑的设计, 既灵活方便,又便于设计结果的交流、保存和重用。 2.2 软件开发工具2.2 软件开发工具 在对 cpld 器件进行开发时往往使用的环境是 maxplus和 quartus,我们将对这两种 软件作简要介绍。 2.2.1 max+plus简介2.2.1 max+plus简介 altera 公司针对 cpld 器件推出了相应设计软件, 目前主要是第三代 max+plusii 和第四 代 quartus。max+plusii 提供了与结构无关的设计环境,是一个集成化的可编程逻辑设计环 境,支持 flex、max 和 classic 系列器件。 max+plusii 的设计主要包括如下几个步骤: 1应用 max+plusii 的设计输入工具完成实验设计; max+plusii 设计输入包括: 1)建立一个新项目和建立一个 ahdl 文本输入文件 2)创建一个 vhdl 源文件 3)建立一个新的图形输入文件 4)采用波形输入设计实验 2设计项目的编译; 编译器可以检查项目中的错误并进行逻辑综合,将项目最终设计结果加载到器件中去, 并为仿真和编程输出文件。 3使用时序仿真工具进行功能和时序仿真; 根据所需的信息种类,可进行功能或时序仿真。功能仿真仅测试项目的逻辑功能,时序 仿真包括逻辑功能测试和目标器件最差情况下的时间关系。 9 4可编程逻辑器件芯片编程过程 需要将编译后的文件下载到所选择的器件 2.2.2 quartus简介2.2.2 quartus简介 quartus软件包是 max+plus的升级版本,altera 公司的第四代开发软件。其提供了 一个完整高效的设计环境, 非常适应具体的设计需要。 quartus提供了方便的设计输入方式、 快速的编译和直接易懂的器件编程。能够支持逻辑门数在百万门以上的逻辑器件的开发,并 且为第三方工具提供了无缝接口。quartus软件包的编程器是系统的核心,提供功能强大的 设计处理,设计者可以添加特定的约束条件来提高芯片的利用率。在设计流程的每一步, quartus软件能够引导设计者将注意力放在设计上,而不是软件的使用上。同时,自动的错 误定位、完备的错误和警告信息,使设计修改变得简单容易。另外,quartus可与 matlab 的 simulink 和 dsp builder 结合,是开发 dsp 硬件系统的关键 eda 工具,quartus与 sopc builder 结合,能够开发 sopc(system on a programmable chip)系统,是一款很有发展前 途的 eda 软件。quartus的程序设计过程与 max+plusii 基本一致,这里不再作赘述。 10 第 3 章 电梯控制方案第 3 章 电梯控制方案 3.1 设计要求3.1 设计要求 1)设计一6层电梯控制系统。 2)每层电梯入口设有上下请求开关,电梯内设有乘客到达层次的停站请求开关。 3)设有电梯所处位置指示装置及电梯运行模式(上升或下降)指示装置。 4)电梯每秒升(降)一层楼。 5)电梯到达有停站的请求的楼层后,经过1s电梯门打开,开门指示灯亮,开门4s后,电 梯门关闭(开门指示灯灭),电梯继续运行,直至执行完最后一个请求信号后停在当前层。 6)能记忆电梯内外的所有请求信号,并按照电梯运行规则安顺序响应,每个请求信号执 行后消除。 7)电梯初始状态为一层开门;到达各层时有声音提示;有故障报警。 3.2 原理框图及简介3.2 原理框图及简介 11 设计一个 6 层楼的电梯控制器,该控制器可控制电梯完成 6 层楼的载客服务而且遵循方 向优先原则,并能响应提前关门和延时关门,并具有超载报警和故障报警;同时指示电梯运 行情况和电梯内外的请求信息。 完成 6 个楼层的多用户载客服务控制;电梯内设有乘客到达层数的停站请求开关;每层 电梯外设有上下请求开关,显示乘客的上升和下降请求;乘客可以阻止电梯门的关闭,来等 待其他乘客的进入或是没有人准备搭乘电梯时提前关闭电梯门;电梯运行时,楼内外同时显 示电梯的运行状态和所在的楼层;当电梯到达选择的楼层时,经过 1电梯门打开,开门指 示灯亮,开门 4后,电梯关闭,指示灯灭,电梯继续运行,直至执行完最后一个请求信号 停在 1 层;能记忆电梯外的所有请求信号,按照电梯运行规则次序响应,每个请求信号保留 至执行后消除;响应电梯外的有效请求,到达请求的楼层,电梯自动开门。 3.3 设计方案介绍3.3 设计方案介绍 3.3.1 内部请求优先控制方式方案3.3.1 内部请求优先控制方式方案 当电梯处于上升模式时,只要在电梯内的人有请求上楼的信号,就先将电梯内的人先送 到要前往的楼层,然后再执行电梯外的人的上楼或下楼的信号,当电梯处于下降模式时则与 上升模式相反。在任何情况下,都以电梯内部的请求优先。 3.3.2 层层停控制方式方案3.3.2 层层停控制方式方案 不论电梯在上升或下降模式的情况下,在每一层都停下来,让人进出电梯。 12 3.3.3 方向优先控制方案3.3.3 方向优先控制方案 当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行, 直到最后一个上楼请求执行完毕,如更高层有下楼请求,则直接升到有下楼请求的最高楼层 接客,然后便进入下降模式。先执行完所有的上楼请求再执行下楼请求,抑或先执行完所有 的下楼请求再执行上楼请求。 13 第 4 章 电梯控制系统的模块设计第 4 章 电梯控制系统的模块设计 实现电梯系统的控制系统的设计,就现在的计算机模拟技术来说,可提出以下两个方案: (1)利用单片机技术实现。 (2)利用可编程逻辑器件(fpga)的 asic 设计实现。 虽然目前,单片机的功能已比较强大,集成度日益增高且其设计和控制比较容易。但是 由于在传统的单片机设计系统中必须使用许多分立元件组成单片机的外围电路,如锁存器, 译码器等都需要单独的电路,因此整个系统显得十分复杂,抗干扰性差,在运行过程中容易 死机或进入死循环,可靠性降低,而功耗费用增高。比较而言,基于 fpga 的电梯控制系统的 设计,以可编程逻辑器件为核心,采用 vhdl(超高速硬件描述语言)来实现。使它具有集成 度高、逻辑功能强的特点。一般采用分段式结构,走线灵活,便于复杂功能的实现且具有研 制周期短,设计成本低,设计灵活性高,高性能的特点。 基于对以上各个因素的考虑, 我们觉得用 fpga 来设计电梯控制系统能够提升设计的可行 性。因此,决定选用以 fpga 为核心,用 vhdl 编程来实现智能化的电梯控制系统。 4.1 主控制器 fpga 的功能 4.1 主控制器 fpga 的功能 该设计采用方向优先控制方式方案,方向优先控制是指电梯运行到某一楼层时先考虑 这一楼层是否有请求:有 ,则停止;无,则继续前进。停下来后再启动时的步骤: 图 4-1 电梯控制器系统方框图 14 考虑前方上方或下方是否有请求:有,则继续前进;无,则停止;检测后方是否有 请求,有请求则转向运行,无请求则维持停止状态。这种运作方式下,电梯对用户的请求响 应率为 100%,且响应的时间较短。电梯在维修停止状态的时候可以进入省电模式,又能节省 大量电能。电梯方向优先控制方式控制器系统图如图 4-1 所示。 电梯控制器系统方框图所示,该系统包括外部数据采集模块、信号存储模块、中央处理 模块、显示模块。外部数据采集模块通过按键输入用户请求信号,光敏传感器采集到达楼层 信号,压力传感器采集关门中断和超载信号。信号存贮模块存储电梯内外及各层用户请求信 号。中央处理模块处理电梯运行中的各种状态,在电梯运行过程中,对信号存储模块的用户 请求数据进行比对,从而确定电梯是否停止。显示模块主要显示电梯电梯内外用户的上升或 是下降请求,并显示电梯的当前运动状态。 4.2 模块设计4.2 模块设计 4.2.1 外部数据高速采集模块设计 4.2.1 外部数据高速采集模块设计 对外部信号采集、处理要求电梯控制器对外部请求信号的实时、准确采集;准确、实时 的捕捉楼层到达信号;有效的防止楼层到达信号、外部请求信号的误判。控制器采用 fpga 作 为系统控制的核心,系统时钟频率是 32.0000mhz,完全可以满足实时采集数据的要求。由于 电路中毛刺现象的存在,信号的纯净度降低,单个的毛刺往往被误作为系统状态转换的触发 信号,严重影响电梯的正常工作。可以采用多次检测的方法解决这个问题,对一个信号进行 多次采样以保证信号的可信度。外部请求信号的输入形式为按键输入,到达楼层信号来自光 敏传感器,关门中断信号及超载信号则产生于压力传感器。 4.2.2 信号存储模块4.2.2 信号存储模块 电梯控制器的请求输入信号有 18 个(电梯外有 6 个上升请求和 6 个下降请求的用户输 入端口,电梯内有 6 个请求用户输入端口),由于系统对内、外请求没有设置优先级,各楼 层的内、外请求信号被采集后可先进行运算,再存到存储器内。电梯运行过程中,由于用户 15 的请求信号的输入是离散的,而且系统对请求的响应也是离散的,因此请求信号的存储要求 新的请求信号不能覆盖原来的请求信号,只有响应动作完成后才能清除存储器内对应的请求 信号位。对应某一楼层的请求信号的存储、清除电路如图 4-2 所示。 图 4-2 请求信号操作电路图 4.2.3 基于 fpga 的中央处理模块 4.2.3 基于 fpga 的中央处理模块 clk 时钟信号 16 full 超载 deng 关门中断 quick 提前关门 clr 清除报警信号 c_u1,c_u2,c_u3,c_u4,c_u5 电梯外人的上升请求信号 c_d2,c_d3,c_d4,c_d5,c_d6 电梯外人的下降请求信号 d1,d2,d3,d4,d5,d6 电梯内人的请求信号 g1,g2,g3,g4,g5,g6 到达楼层信号 door 电梯门控制信号 led 电梯所在楼层显示 led_c_u 电梯外人上升请求信号显示 led_c_d 电梯外人下降请求信号显示 led_d 电梯内请求信号显示 wahaha 看门狗报警信号 ud 电梯运动方向显示 alarm 超载警告信号 up,down 电机控制信号和电梯运动 中央处理器对电梯内及电梯外用户的上升和下降请求进行处理,处理结果并置后存入信 号存储模块。电梯在运行过程中,每到达一层将通过中央处理模块,对信号存储模块的存储 指令进行比对,以判断是否需要停止,并通过光敏采集到的信号来判断电梯所到达的楼层, 并通过显示模块进行显示。 中央数据处理模块是系统的核心,通过对存储的数据(含请求、到达楼层等信号)进行 比较、判断以驱动系统状态的流转。电梯工作过程中共有 9 种状态:等待、上升、下降、开 门、关门、停止、休眠、超载报警以及故障报警状态。一般情况下,电梯工作起始点是第一 层,起始状态是等待状态,启动条件是收到上升请求。系统的状态流程图如图 4-3 所示。 图 4-3 系统状态流程图 17 4.2.4 信号的输出、显示模块4.2.4 信号的输出、显示模块 系统的输出信号有两种:一种是电机的升降控制信号(两位)和开门/关门控制信号;另 一种是面向用户的提示信号(含楼层显示、方向显示、已接受请求显示等)。电机的控制信 号一般需要两位,本系统中电机有三种工作状态:正转、反转和停转状态。两位控制信号作 为一个三路开关选通信号,此三路开关选用模拟电子开关。 显示模块是建立在内部系统和观测人之间的桥梁。通过显示模块,人们才能得到想要的 信息,知道当前电梯运行的状态、电梯即将要到达的目的地等。该模块包括两个部分,(1) 用七段显示 led 数码管显示当前楼层,其真值表如表 4-1;(2)直接用发光二极管来显示目 前运行的状态(上楼/下楼)。系统的显示输出包括数码管楼层显示、数码管请求信号显示和表 征运动方向的箭头形指示灯的开关信号。系统具有请求信号显示功能,结合方向显示,可以 减少用户对同一请求的输入次数,这样就延长了电梯按键的使用寿命。假如电梯处于向上运 动状态,初始位置是底层,初始请求是 6 楼,2 楼时进入一人,如果他的目的地是 6 楼,他 看到初始请求是 6 楼,就可以不再按键。同时,电梯外部的人也可以根据请求信号显示(上 升下降请求、无请求),就可以避免没必要的重复请求信号输入。电梯使用时,系统结合相 应的电梯使用规范完全可以满足人们的需要,而且效率比较高。 表 4-1 七段显示 led 数码管译码表 1 1001111 2 0010010 3 0000110 4 1001100 5 0100100 6 0100000 4.3 变频器的计算与选择 4.3 变频器的计算与选择 要把系统提供的频率为 32mhz 的晶振应用于实际中,就必须对该频率做一些处理,简单 地说就是分频。分频为我们所需要的固定频率值再投于应用中。比如系统中的时钟信号,就 是对 clk 进行 16m 的分频。所以频率为: 18 32m hz/ 16m = 2hz 也就是说每秒发出 2 个信号,且占空比为 50% 。应用于电梯的控制系统中为每隔 1/2 秒 进行一次扫描,看是否有请求发出。 4.4 电梯铃控制与故障报警4.4 电梯铃控制与故障报警 电梯中的故障信号和超载信号进行处理。 如果压力传感器连续采集到次关门中断信号, 则启动电梯故障信号,除非人为对故障进行清除,否则电梯将保持开门状态并不进行任何操 作。如果压力传感器采集到电梯超载,电梯将报警,并保持开门状态不进行任何操作,直到 压力传感器采集到电梯不再超载。电梯打开后,如果用户不进行任何操作,电梯 3 秒后将自 动关门,如果用户按提前关门键,电梯将立即响应关门指令。 19 第 5 章 电梯控制系统的实现第 5 章 电梯控制系统的实现 5.15.1电梯控制系统的实现电梯控制系统的实现 quartus软件中的工程由所有设计文件和与设计有关的设置组成。 可以使用 quartus block editor、 text editor、 megawizard plug-in manager (tools 菜单)和 eda 设 计输入工具建立包括 altera 宏功能模块、参数化模块库 (lpm) 函数和知识产权 (ip) 函 数在内的设计。可以使用settings 对话框 (assignments 菜单)和 assignment editor 设 定初始设计约束条件。 使用 new project wizard(file 菜单)或 quartus_map 可执行文件建立新工程。 建立工程后,可以使用 settings 对话框 (assignments 菜单)的add/remove 页 在工 程中添加和删除设计和其它文件。 使用quartus text editor 通过vhdl语言建立设计。 程序代码: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity dianti is port ( clk : in std_logic; -时钟信号(频率为 2hz) full,deng,quick,clr : in std_logic; -超载、关门中断、提前关门清除 报警信号 c_u1,c_u2,c_u3,c_u4,c_u5: in std_logic; -电梯外人的上升请求信号 c_d2,c_d3,c_d4,c_d5,c_d6 : in std_logic; -电梯外人的下降请求信号 d1,d2,d3,d4,d5,d6 : in std_logic; -电梯内人的请求信号 g1,g2,g3,g4,g5,g6 : in std_logic; -到达楼层信号 door : out std_logic_vector(1 downto 0); -电梯门控制信号 led : out std_logic_vector(6 downto 0); -电梯所在楼层显示 led_c_u:out std_logic_vector(5 downto 0); -电梯外人上升请求信号显示 led_c_d:out std_logic_vector(5 downto 0); -电梯外人下降请求信号显示 led_d : out std_logic_vector(5 downto 0); -电梯内请求信号显示 wahaha : out std_logic; -看门狗报警信号 ud,alarm : out std_logic; -电梯运动方向显示,超载警告信号 20 up,down : out std_logic ); -电机控制信号和电梯运动 end dianti; architecture behav of dianti is signal d11,d22,d33,d44,d55,d66:std_logic; -电梯内人请求信号寄存信号 signal c_u11,c_u22,c_u33,c_u44,c_u55:std_logic; -电梯外人上升请求信号寄存信号 signal c_d22,c_d33,c_d44,c_d55,c_d66:std_logic; -电梯外人下降请求信号寄存信号 signal q:integer range 0 to 1; -分频信号 signal q1:integer range 0 to 6; -关门延时计数器 signal q2:integer range 0 to 9; -看门狗计数器 signal dd,cc_u,cc_d,dd_cc:std_logic_vector(5 downto 0); -电梯内外请求信号寄存器 signal opendoor:std_logic; -开门使能信号 signal updown:std_logic; -电梯运动方向信号寄存器 signal en_up,en_dw:std_logic; -预备上升、预备下降预操作使能信 号 begin com:process(clk) begin if clkevent and clk=1 then if clr=1 then q1=3 then door=3 then door=3 then door“000001“ then en_up“000011“ then en_up“000011“ then en_up“000111“ then en_up“000111“ then en_up“001111“ then en_up“001111“ then en_up“011111“ then en_up“011111“ then en_up/qdesigns/tutorial directory. alterarecommends that you create a new directory and copy all the design files (*.v, *.bsf, *.bdf) from the /qdesigns/tutorial directory to the new directory, in order to compile the design flow example. you can run the four commands in figure 10 from a command prompt in the new project directory, or you can store them in a batch file or shell script.these examples assume that the /bin directory (or the / directory on unix or linux workstations, where can be solaris, linux, or hp_ii) is included in your path environment variable. using tcl commands in the quartus ii software, you can run tcl commands or create and run tcl scripts with the quartus ii executables to do the following tasks in a quartus ii project. the tcl api functions include the following categories: project & assignment functions device functions advanced device functions flow functions timing functions advanced timing functions simulator functions report functions timing report functions back-annot

温馨提示

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

评论

0/150

提交评论