一种基于fpga的小车控制器的设计内容摘要:
PGA 的小车控制系统应运而生。 本设计意在设计一种设计具有较强可移植性的小车控制器,经改进可应用于替代一些单调枯燥简单重复的岗位,如流水线、仓储物流等。 设计功能包括周 期运行、自动避障、遥控运行,这些 功能具有很强的使用意义,正常状态下小车能够自主周期运行完成设定的任务,遇到障碍物能够自行躲避,在一些突发情况下能够人工干预小车的运行。 我校以大工程观为培育理念进行人才培养,旨在培育具有责任意识、实践能力、综合知识、系统观念的工程应用型人才。 本次设计旨在用来检查过去几年对电子专业知识的学习情况,通过综合知识运用锻炼解决问题的能力,通过软硬件设计锻炼实践能力,通过对设计全局的把握培育系统观念。 研究意义 本课题以 FPGA 芯片为控制器设计了智能小车控制系统,意义如下: a. 基于 FPGA 开发的控制器具有运算速度快,体积小,修改方便,集成度高,可靠性高,易扩展等优点。 b. 用 FPGA 实现智能算法可以提高算法的运算速度,满足实时控制的要求。 本文在基于 FPGA 实现复杂的智能算法方面作了一些探索性的工作,为以后进一步嵌入其它复杂算法打下了基础。 c. 搭建了智能小车控制系统的实验平台,为将来进一步研究和开发智能小车控制器做了基础性工作。 d. 对大学期间所学的专业知识进行系统梳理、综合运用。 本科生毕业设计(论文) 第 3 页 共 31 页 2 总体方案说明 设计目标 本课题基于 EDA 技术,使用 Altera 公司的的 EDA 软件开发工具 Quartus II 进行设计准备、设计输入、功能仿真、设计处理、时序仿真和器件编程及测试,以可编辑逻辑器件 FPGA 为核心部件,基于 FPGA 核心开发板进行扩展做出硬件,主要包括以下各项: a. 掌握利用 VHDL 设计智能小车控制器的原理、方法; b. 利用芯片内部时钟进行分段定时周期直线运动; c. 小车外接光电传感器检测障碍物并做出相应反应; d. 人工干预遥控运行; e. 在 FPGA 开发板上,针对 FPGA 芯片的特点进行系统配置并验证功能的实现,并做出扩展硬件; f. 按要求做好毕业设计环节的 所有工作,完成毕业设计论文。 方案比较选择 小车控制器的设计目标是实现周期运动、遥控运行和对传感器检测到信号的快速反应,并发处理,要求处理速度快,并且具有较强的扩展性和可维护性。 本设计使用微处理器编程结合外围扩展电路通过直流电机、传感器等部件进行运动、信号采集和快速反应。 该设计要求使用智能算法以提高算法的运算速度,满足实时控制的要求。 目前较为常见的是基于单片机的小车运行控制方案。 单片机是微电子技术与计算机技术的结晶,现已成为集成电路( Integrated Circuit)大家族中的重要成员。 单片机 是单片微型计算机( Single Chip Microputer)的简称,是在一块芯片上集成了 CPU、 RAM、 ROM(或 EPROM)、时钟、定时 /计数器和多种功能的串行和并行接口。 单片机的特点是它们在一块芯片上集成了一台微机最基本的部分,只要辅以少量的外部电路或外部设备即可构成一个微机系统。 单片机具有体积小、功能强、价格低廉等优点。 可以使用 C 语言或者汇编语言进行编程 [8]。 典型的单片机小车控制器包括路面检测模块、处理模块、电机驱动模块等,外加遥控、显示、测速等外围电路之后也可以实现较多的功能。 源代码编 译完成之后烧写到单片机中永久保存,掉电后不丢失 [9]。 但是基于单片机的小车控制方案有一些局限性。 由于接口数量的限制,单片机的扩展能力有限,对于大量并行信号的处理有很大难度。 单片机的控制程序是烧写在硬件存储装置里的,而存储器有擦写次数限制,故其不能进行频繁的软件升级测试。 每块芯片的接口不同在程序设计时都需要进行单独配置,程序在可移植方面有着很大的不便。 汇编语言在针对不同的控制器时则几乎完全不同,在移植上有很大难度 [9]。 基于以上特点扩展能力极强的 FPGA 芯片和模块化编程的 VHDL 语言成为了实现本次设计要求 的最佳方案。 方案概述 本设计是基于 FPGA 芯片, 采 用 VHDL 语言进行的 EDA 设计, 是软硬件协同设计,本科生毕业设计(论文) 第 4 页 共 31 页 分为软件和硬件设计两部分。 首先进行软件的设计输入、功能仿真、设计处理,然后下载到 FPGA 芯片内配合外围电路进行硬件测试。 其具体功能是实现自主的周期运行,通过光电传感器检测障碍物进行避障运动,除此之外又加入了遥控功能,其原理框图如 图 所示。 光电传感器模块是芯片外接的三个光电传感器,当传感器检测到障碍时其输出电平信号发生变化,输入电平信号经程序处理 后发送到 FPGA 芯片 ,向驱动模块发出相 应的信号 ,使小车 做出适当的规避动作。 遥控模块是 实现遥控运行功能的 模块, 包括硬件的信号接收装置和软件处理模块。 遥控器 以无线 信号 的形式从 发射端发出不同的指令信号,经无线接收 电路 处理之后输出并行信号, FPGA 芯片根据程序 设定 向驱动模块发出信号, 小车 做出相应的动作。 周期运行控制程序存储在 FPGA 芯片中 ,使用状态机进行状态循环,并在不同状态下向驱动模块发送不同的驱动信号 ,使小车 实现周期运行。 驱动模块是接收 FPGA 芯片输出信号进行电机驱动的模块,由驱动程序和外围的驱动芯片两部分构成,在接收以上各模块的输出信号之后 ,进行处理之后输出控制信号驱动直流电机的运行。 以上各模块综合起来实现智能小车控制器的全部功能 , 其流程图如图 所示。 程序按照 此 流程 设计 完成之后下载进 FPGA 芯片中,完成外设电路之后再软硬件联合测试,以实现设计要求。 图 小车控制器原理框图 F P G A 核心板遥控接收模块驱动模块光电传感器模块周期运行避障运行遥控运行本科生毕业设计(论文) 第 5 页 共 31 页 开始模式选择周期运行模式遥控模式 避障模式高速后退 2 S减速前进 2 S停止 1 S减速后退 2 S高速前进 2 S停止 1 S接收信号做出相应动作检测到障碍做出规避动作 直行结束继续继续继续Y e sNoNoNoY e sY e sY e sNo图 小车控 制器流程图 本科生毕业设计(论文) 第 6 页 共 31 页 3 软件设计 小车控制器的软件 程序设计采用 VHDL 语言,利用 Altera 公司的 EDA 开发软件Quartus II 进行设计。 软件部分 由原理图和模块程序两部分组成,包括模式选择模块、分频器模块、电机驱动模块、周期控制模块、障碍检测模块遥控模块。 以及下文将 详细介绍 介绍各个功能块的功能及实 现方法,并给出仿真波形。 VHDL 语言介绍 VHDL 的英文全名是 Very High Speed Integrated Circuit Hardware Description Language,即超高速集成电路硬件描述语言,被认为是标准的硬件描述语言,有专家认为,在新世纪中, VHDL 与 Verilog HDL 语言将承担起几乎全部的数字系统设计任务。 VHDL 主要用于描述数字系统的结构、行为、功能和接口。 除了含有许多具有硬件特征的语句外, VHDL 的语言形式和描述风格与句法十分类似于一般的计算机高级 语言。 VHDL 的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件、一个电路模块或一个系统)分成外部(或称可视部分,即端口)和内部(或称不可视部分),即设计实体的内部功能和算法完成部分。 在对一个设计实体定义了外部界面后,一旦内部开发完成后,其他的设计可以直接调用这个实体。 这种将设计实体分成内外部分的概念是 VHDL 系统设计的基本点 [10, 11]。 VHDL 具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。 它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。 VHDL 支持同 步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。 VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计 [10, 12]。 VHDL 具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路。 而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。 另外, VHDL 支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。 VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建 高层次的系统模型 [11]。 设计人员用 VHDL 进行设计时,不需要首先考虑选择完成设计的器件,就可以集中精力进行设计的优化。 当设计描述完成后,可以用多种不同的器件结构来实现其功能。 VHDL 是一种标准化的硬件描述语言,同一个设计描述可以被不同的工具所支持,使得设计描述的移植成为可能 [13]。 基于以上种种优点, VHDL 作为 IEEE 的工业标准硬件描述语言,得到众多 EDA 公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。 Quartus II 软件介绍 Max+plus II 作为 Altera 的上一代 PLD 设计软件,由于其出色的易用性而得到了广泛的应用。 目前 Altera 已经停止了对 Max+plus II 的更新支持。 Quartus II 是 Altera 公司继 Max+plus II 之后开发的一种针对其公司生产的系列 CPLD/FPGA 器件的综合性开发本科生毕业设计(论文) 第 7 页 共 31 页 软件,它的版本不断升级,目前已经发布了 版本,该软件有如下几个显著的特点: 该软件界面友好,使用便捷,功能强大,是一个完全集成化的可编程逻辑设计环境,是先进的 EDA 工具软件。 该软件具有开放性、与结构无关、多平台、完全集成化、丰富的设计库、模块化工具等特点,支持原 理图、 VHDL、 Verilog HDL 以及 AHDL( Altera Hardware Description Language)等多种设计输入形式,内嵌有综合器以及仿真器,可以完成从设计输入到硬件配置的完整 PLD、 FPGA 设计流程 [11, 13]。 Quartus II 可以在 Windows、 Linux 以及 Unix 上使用,除了可以使用 TCL 脚本完成设计流程外,提供了完善的用户图形界面设计方式。 具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II 支持 Altera 公司的 MAX 3000A 系列、 MAX 7000 系列、 MAX 9000 系列、ACEX 1K 系列、 APEX 20K 系列、 APEX II 系列、 FLEX 6000 系列、 FLEX 10K 系列,支持 MAX7000/MAX3000等乘积项器件。 支持 MAX II CPLD系列、 Cyclone系列、 Cyclone II、 Stratix II 系列、 Stratix GX 系列等。 支持 IP 核,包含了 LPM/Mega Function 宏功能模块库,用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。 此外,Quartus II 通过和 DSP Builder 工具与 Matlab/Simulink相结合,可以方便地实现各种 DSP应用系统;支持 Altera 的片上可编程系统( SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台 [12, 13]。 使用 Quartus II 进行开发流程如图 所示。 图 Quartus II 开发流程 本科生毕业设计(论文) 第 8 页 共 31 页 分频器模块 分频器的功能 在接口电路中,时钟信号的作用至关重要。 一般的 FPGA 开发板或最小系统板附带的晶振频率过高,达到 20MHz 甚至 50MHz,但是这种时钟脉冲不适合直接接入程序工作,所以需要引入时钟分频电路,即 分频器,将晶振输出的脉冲分频。 分频之后的时钟信号适合接入电路工作。 分频器模块就是用软件方法实现分频器的功能。 时钟信号一般有两种功能,计数和选通。 对于周期运行控制模块来说,每个状态都需要进行计时,所以需要接入较低频率的时钟脉冲,便于对计时器赋值。 驱动模块需要进行调速,而小直流电机 需要 通过调节驱动脉冲的占空比进行调速,在调节占空比时就需要进行计数运算,也就需要一个合适的时钟信号 [12, 14]。 障碍检测模块和遥控模块输入的是并行电平信号,在电平突然改变时,由于电平跃变或信号传输的延迟产生竞争冒险现象,在输出端 产生尖脉冲的毛刺,从而产生误操作。 为了解决这一问题,需要接入一个选通控制信号。 竞争冒险一般发生在输入信号变化瞬间,若选通信号在这期间将输出关闭,等到输入信号稳定后再将输出开启,就可以消除竞争险象。 选通信号也是由分频器输出的时钟信号。 分频器的设计 分频器是将较高的频率进行分频,从而得到较低的频率。 需要用到计数器,高频率输入之后,触发计数器进行计数运算同时输出电平保持不变,当计数器到达一个限值时输出电平翻转。 分频系数是输入频率和输出频率之比,计数上限就等于分频系数 除以 2再 减 去 1。 本设计输入晶振频 率是 50MHz,为了方。一种基于fpga的小车控制器的设计
相关推荐
一种全 新的师生关系 ,即由知识的传授者转变为帮助学生发现、组织和管理知识。 信息技术教育应该像信息技术一样走在学科教育的最前列 ,在培养学生的信息素养、培养学生运用信息技术解决问题的方法与策略方面作出有效的探索与实践。 一份信息技术应用于课堂教学的反思报告篇六:高职信息技术课堂教学应用中的问题和反思 高职信息技术课堂教学应用中的问题和反思 作者:郭忠强 来源:《速读中旬》 2020 年第 06
间工业样机试运行,该样机主电路由 18 脉冲电压型逆变器、直流储能电容器、 9 台曲折绕组变压器及系统的连接变压器组成, 18 脉冲逆变器分为 3 相 6 脉冲电压型逆变器 (功率开关为 GTO),系统结构较复杂。 总的来讲,目前我国有源电力滤波技术的工业应用,仍处于试验和攻坚阶段,特别是在既治理谐波又补偿无功功率的 HAPF 系统方面,还有许多基础理论与技术有待于深入研究。
( A)参与受压 ( B)使混凝土密实 ( C)约束了混凝土的横向变形 ( D)使混凝土中不出现微裂缝 12.有关减少混凝土收缩裂缝的措施,下列何项所述正确。 ( A)在浇注混凝土时增设钢丝网 ( B)在混凝土配比中增加水泥用量 ( C)采用高标号水泥 ( D)采用弹性模量小的骨料 13.评定混凝土强 度采用的标准试件尺寸,应为。 ( A) 150mm150mm150mm ( B)
出发设计的控制器往往其可靠性得不到保证,如何结合现在控制理论的发展,采用先进的控制策略,改进控制器的性能 具有一定的理论和工程实际意义。 本文内容安排如下: 第 1 章 : 绪论, 对 交流伺服系统 及其发展 过程 和趋势,以及控制策略 的 作了综述 ,然后介绍了 本文 研究 的目的和意义。 第 2 章 : 介绍了 PMSM 的结构及其各种坐标下的数学模型。 第 3 章
级酒店以及政府办公大楼项目 中,经营作风一贯良好,无 产品质量 发生,较好地履行了与甲方所签订的合同,从而赢得了广大客户的一致好评和社会 的广泛赞誉,取得了骄人的业绩。 : 为确保本 工程的顺利完成和表达我公司的合作诚意,我们承诺:一切从整体利益出发,服从业主的现场统一管理、协调和安排,满足业主提出的各项要求;积极与业主保持联系,加强与其它有关 施工 单位的配合。 苏州市罗曼壁纸布艺有限公司
底水位检测开关 K7 决定 )对排水 进行动态控制。 K7 打开则排水完成,关闭排水阀。 (3)洗涤动作 洗涤动作指的是电机周期性的 “正转 一停止 一反转 一 停止 “。 不 同的洗衣过程 ,控制 电机执行“正转 一停止 一反转 一停止“的时间是不同的,标准洗涤过程可取:正转 4 秒 一停止 2 秒 一反转 4 秒 一停止 2 秒。 对于轻 柔洗涤 过程,这个时间要作相应调整 为 正转 3 秒