fpga的小车转弯运动控制设计
目录
摘要 I
ABSTRACT II
第一章 绪论 1
1.1 课题研究的背景和意义 1
1.2 FPGA发展历史和现状 1
第二章 系统总体设计 3
2.1 智能小车硬件总体设计 3
2.2 智能小车软件总体设计 4
第三章 基于CortexA9的Zrobot智能小车硬件电路设计 5
3.1 zynq7000片内的资源 5
3.1.1 ARM Cortex A9 处理器 5
3.1.2侦听控制单元(Snoop Control Unit,SCU) 6
3.1.3 L2高速缓存 6
3.1.4 APU接口与PL协处理接口 6
3.2 GPIO接口电路设计 6
3.2.1 可动态编程的通用IO接口 6
3.2.2 H桥驱动芯片原理 7
*景先生毕设|www.jxszl.com +Q: ^351916072*
3.2.3 电机驱动模块的设计 8
3.2.4 电源模块与时钟电路设计 8
3.3 通信模块电路设计 10
3.3.1 双UART串口 10
3.3.2 PL与PS之间的总线级别通信 11
3.3.3 PL与PS之间EMIO级别通信 13
3.3.4 88E1518千兆以太网芯片的测试 13
3.4 存储系统的设计 14
3.4.1 DDR3存储单元 14
3.4.2 SD卡的简介 15
第四章 软件实现 16
4.1 Vivado套件的操作 16
4.2 IP核的设计 19
4.3 Uboot、内核、File system 20
4.4 系统启动流程的分析 20
4.4.1 阶段一的启动流程 21
4.4.2 阶段一与阶段二的流程 23
4.4 PWM驱动 24
4.5智能车的转向角度与PWM输出占空比的关系 24
第五章 课题总结与展望 28
5.1课题总结 28
5.3 展望 28
致谢 29
参考文献 30
附录一(部分关键程序) 32
附录二(外文翻译) 36
第一章 绪论
1.1 课题研究的背景和意义
当前,智能控制领域是科学研究的一个热门话题,我们的工业生产和日常生活都离不开智能控制。比如,在世界激烈的竞争中,无人陆地战车已经成为两国军事力量的斗争焦点,在恶劣的作战环境中,先进的人工控制只能陆地战车减少了大量不必要的伤亡。再比如,无人控制领域已经深入到抢险救灾的各个领域,当发生火灾时,我们可以用无人控制的智能灭火机器人深入到火场中进行灭火,或者当核电站泄漏时,我们就可以让机器人潜入到核电站内进行故障的排查,这些都大大减少了财产和生命的损失。所以说,研究智能控制以及智能控制下的无人操作能够为我们的生活带来巨大的便利。
本课题采用的是Xilinx公司生产的,基于Zynq7000的智能小车。该小车搭载了丰富的外设,可以实现非常多的功能。此课题通过运用Zynq7000处理器来驱动LM298P的电机驱动,并且通过采用不同的PWM波,实现小车的差速运动,从而实现小车的直线、转弯运动,接着我们就可以灵活的控制小车的运动,小车就能够在我们的控制下完成相应的任务。本课题的研究意义在于,智能小车也只有能够灵活的被人控制,才能向目的地行径,也只有这样才能在无人控制的环境下完成人们想要完成的任务,所以说直线、转弯运动是整个智能小车运动的基石,无论小车的超声波避障,还是小车的实时视频传输,都需要小车的运动作为载体。
1.2 FPGA发展历史和现状
1985年,全球的第一款FPGA[1]产品诞生了,它就是Xilinx公司推出的XC2046。当时的门数量不到1000个,晶体管也只有85000个。而如今FPGA门数量已经达到千万级别,晶体管的数量已经超过10亿个。同时各个厂商还在继续不断的优化,开发有更多逻辑单元,性能更高,成本更低,功耗更小的产品。目前FPGA的产品已经渗透到各行各业,比如汽车电子、工业控制、消费电子等等。目前FPGA目前朝着两个趋势方向发展:
1.采用先进的工艺使产品的性能得到提高,并且不断降低产品的成本;
2.IP核越来越丰富,既包括通用的IP核又包括为用户私人定制的IP核。
目前FPGA的三大厂商有Altera、Xilinx、Lattice。Xilinx是FPGA的老大,它的主要产品有Spartan系列、Virtex系列等等。而Altera的主要产品有Cyclone系列、Stratix系列等等。我们市场上有五分之三的产品都是这两家公司生产的,也就是说,这两家公司领导这FPGA的发展。
第二章 系统总体设计
2.1 智能小车硬件总体设计
Xilinx公司最新的产品是7系列,7系列的构架统一,同时FPGA内硬件例化模块也是同一的,这样的目的能够提高用户的设计速度。比起之前的两个重要产品Virtex和Spartan系列,减少了开发人员在不同平台切换,修改代码的不便之处,加快了项目开发的速度。7系列FPGA采用28nm工艺,其优势主要表现为:低功耗,小型化,低成本,更高的信号处理能力。
7系列FPGA的关键技术介绍:
1.硅片堆叠技术:这种技术使用由许多个逻辑区域组成内插层,然后采用先进的制造工艺技术,这样使得在一个FPGA上集成超过10000个SLR连接,同时FPGA具有低功耗和低延迟的特点。
2.逻辑资源:该系列FPGA的LUT有两种配置方式,分别为一个6输入1输出的LUT和两个5输入具有相同地址或者逻辑输入的独立输出的LUT。
3.时钟管理:具有24个时钟通道,一个锁相环和一个混合模式时钟管理器组成一个时钟模块。为解决高扇出、低抖动、短传输延迟等不同需求,7系列FPGA提供六种不同种类的时钟线,分别为BUFR、BUFG、BUFH、BUFIO、BUFMER以及高性能时钟。
4.块存储器(BRAM):7系列FPGA拥有的双端口BRAM数有30到1880个,每一个可以存储大小为36KB数据,其中每个BRAM有两个独立端口,这两个端口只能共享数据。
5.吉比特收发器:业内第一个实现400G数据吞吐的低功耗单芯片。
原文链接:http://www.jxszl.com/dzxx/dzkxyjs/48141.html