FPGA+STM32导航系统 硕士毕业设计论文.doc

上传人:小小飞 文档编号:3902276 上传时间:2019-10-10 格式:DOC 页数:64 大小:2.52MB
返回 下载 相关 举报
FPGA+STM32导航系统 硕士毕业设计论文.doc_第1页
第1页 / 共64页
FPGA+STM32导航系统 硕士毕业设计论文.doc_第2页
第2页 / 共64页
FPGA+STM32导航系统 硕士毕业设计论文.doc_第3页
第3页 / 共64页
FPGA+STM32导航系统 硕士毕业设计论文.doc_第4页
第4页 / 共64页
FPGA+STM32导航系统 硕士毕业设计论文.doc_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《FPGA+STM32导航系统 硕士毕业设计论文.doc》由会员分享,可在线阅读,更多相关《FPGA+STM32导航系统 硕士毕业设计论文.doc(64页珍藏版)》请在三一文库上搜索。

1、 摘要无陀螺捷联导惯性航导航系统(GFSINS)是指舍弃陀螺仪而直接把加速度计安装在载体上,通过对加速度计输出的比力信号进行解算从而得到导航参数的惯性导航系统。捷联惯导系统同平台式惯导系统相比具有可靠性高、寿命长、节省体积空间等优点。无陀螺捷联惯导系统因为舍弃了陀螺仪,与有陀螺的捷联惯导系统相比具有低成本、低功耗、反应速度快、动态范围大等优点。随着深亚微米技术的出现,现场可编程逻辑门阵列(FPGA)得到了迅猛发展,也使得可编程片上系统(SOPC)成为未来嵌入式系统设计技术发展的必然趋势1。本论文根据以九加速度计为配置方案的无陀螺捷联导航计算机的特点和应用要求,提出了基于FPGA的无陀螺捷联惯性

2、导航系统的硬件设计方案。系统主要包括数据采集模块和数据解算模块两部分。数据采集模块由STM32负责控制两片AD7656将9个加速度计输出的模拟信号转换为数字信号。数据解算模块采用Altera公司的FPGA芯片,利用SOPC技术完成FPGA内部硬件逻辑的构建,核心算法由高性能32位Nios II处理器完成,实现了浮点运算。最后完成了原理图和PCB设计,研制了实验样机,为无陀螺捷联惯性导航系统的进一步研究工作奠定了基础。关键词:GFSINS;导航计算机;FPGA;SOPC;STM32;双口RAMAbstractGyroscope Free Strapdown Inertial Navigation

3、 System(GFSINS) is a kind of Inertial Navigation System, accelerometers are derectly fixed in the carrier without using gyroscope. So acceleration is the exclusive in formation source, we can get all the navigation parameters by computing. Compared with The Platformtype Inertial Navigation System Th

4、e Strapdown Inertial Navigation System is high reliability, longevity, small volume and so on. Compared with Strapdown Inertial Navigation System with gyroscope, GFSINS is low cost, low power, promote reaction, wide dynamic range and so on. With the emergence of submicron technology, FPGA chips have

5、 become more and more popular, thus making the system on a programmable chip (SOPC) design the mainstream technique in embedded system design field.Take the features and application requirements of gyroscope free strapdown inertial navigation system with nine accelerometers into consideration, the t

6、hesis put forward a hardware design scheme of gyroscope free strapdown inertial navigation computer based on FPGA. The system includes data acquisition module and data decoding module two parts. In the data acquisition module, two AD7656 chips will change the analog signals from nine accelerometers

7、into digital signals controlled by STM32. In the data decoding module, the internal hardware logic of FPGA is constructed by SOPC technology. The key algorithm is accomplished by high-performance 32-bit processor Nios II, in which realized the floating point arithmetic. Finally, the principle chart

8、and PCB design is finished, making a test model, laying the foundation for the further research work of GFSINS. Keywords:GFSINS;Navigation computer;FPGA;SOPC;STM32;DPRAM不要删除行尾的分节符,此行不会被打印- II -目录摘要IAbstractII第1章 绪论11.1 惯性导航系统简介11.1.1 惯性导航系统的分类11.1.2 无陀螺捷联惯导系统31.2 导航计算机发展简介31.3 论文的意义和主要内容4第2章 系统总体设计方

9、案62.1 无陀螺捷联惯导系统的工作原理62.2 导航计算机的整体工作流程72.2.1 导航计算机的性能要求82.3 核心器件的选型82.3.1 加速度计选型82.3.2 A/D芯片选型102.3.3 双口RAM IDT 7133132.3.4 微控制器选型152.3.5 FPGA选型162.4 本章小结17第3章 数据采集模块183.1 加速度计硬件连接设计183.2 加速度计调理电路193.2.1 减法电路193.2.2 低通滤波电路203.3 AD7656管脚连接设计213.4 基于双口RAM的双CPU通讯电路243.5 采集系统的供电电源设计方案253.5.1 +5V到-5V电压转换电

10、路263.5.2 +5V到-3.3V电压转换电路273.6 集成开发环境介绍273.6.1 Real View MDK简介273.6.2 Vision IDE283.7 本章小结29第4章 数据解算模块314.1 相关技术介绍314.1.1 Nios II简介314.1.2 SOPC技术324.1.3 Quartus II简介344.1.4 SOPC Builder简介364.2 FPGA内部逻辑资源的设计过程374.3 Nios II 集成开发环境(IDE)434.4 本章小结44第5章 导航计算机系统调试455.1 硬件调试455.2 软件调试455.2.1 数据采集模软件调试455.2.

11、2 数据解算模块软件调试485.3 测试过程中出现的问题及解决的方法495.4 本章小结50结论51参考文献52附录53攻读学位期间发表的学术论文54致谢55索引56个人简历57千万不要删除行尾的分节符,此行不会被打印。在目录上点右键“更新域”,然后“更新整个目录”。打印前,不要忘记把上面“Abstract”这一行后加一空行- IV -第1章 绪论1.1 惯性导航系统简介导航是指如何引导某载体从一个地方到另一个地方的技术或者方法,所以要想对载体成功的导航需要载体实时的导航参数,即位置、速度和姿态,载体包括车辆、导弹、飞机、宇宙飞行器、舰船、潜艇等。导航一般可以分为自主式导航和非自助式导航。惯性

12、导航是20世纪中期才发展起来的一门技术,是根据牛顿惯性定理,利用载体上的惯性敏感元件(陀螺仪、加速度计),测量载体相对惯性空间的线运动和角运动参数,在给定的初始条件下,输出载体的姿态参数和导航定位参数2。惯性导航系统是自主式导航系统,不依赖外界信息,就可以获得相应的导航定位参数,而且也不向外辐射能量,因此隐蔽性比较好,广泛的应用于航天、航空和航海领域中3。惯性导航系统的特点:1 自主性强:惯性导航比较适合军用对全天候和抗磁、电、光的能力的要求。惯性导航不像天文导航要观测天体,也不同于无线电导航和卫星导航需要地面台站,惯性导航可以不依赖地面或天空的任何辅助设备而完成导航任务,适于全球导航。2 提

13、供导航参数多:无线电和天文导航只能提供位置信息,多普勒和卫星导航只能提供速度和位置信息。惯性导航有“中心信息源”之称,可以提供加速度、速度、姿态、航向和位置,全部的导航参数。所以惯性导航广泛的应用于航空、航天、航海领域,也会被用在大地测量、地质勘探等方面的定位、测斜工作。1.1.1 惯性导航系统的分类从结构上区分,惯性导航系统主要分为平台式惯性导航系统和捷联式惯性导航系统两大类。平台式惯性导航系统:将惯性元件陀螺仪和加速度计,通过万向支架角运动隔离系统与运动载物固联的惯性导航系统。陀螺仪可以敏感到平台的角运动,平台通过稳定回路可以跟踪某一给定的坐标系(如地理坐标系),加速度计可以输出某一轴向的

14、比力信息,经过导航计算机的运算可以提取出载体的加速度,进而计算出载体的速度、位置等信息。惯性导航系统早期只有平台式惯导系统,直到20世纪70年代,才出现了捷联式惯性导航系统。图1.1 平台式惯性导航系统原理框图捷联式惯性导航系统:将陀螺仪和加速度计直接安装在运动载体上,利用数学平台对导航参数进行计算的惯性导航系统。图1.2 捷联式惯性导航系统原理框图捷联式惯性导航系统因为省去了机电式的导航平台,从而使整个系统的体积、重量和成本大大的降低;惯性原件更加便于安装和维护;加速度计可以给出载体轴向的线加速度和陀螺仪可以给出角速度。但是也不能说捷联式惯性导航系统就取代了平台式惯性导航系统,平台式惯性导航

15、系统最大的优点就是精度高,高精度的导航系统,如舰船的导航仍然多采用平台式惯性导航系统;捷联式惯性导航系统多用于长时间工作、对系统稳定性要求比较高或者对导航系统体积有要求情况中,还有些时候一个载体上同时使用平台式惯性导航系统和捷联式惯性导航系统,以满足特殊的工作环境和性能要求。1.1.2 无陀螺捷联惯导系统无陀螺捷联惯导系统(GFSINS)就是指惯性原件只有加速度,舍弃陀螺仪,从加速度计测量的比力中解算出载体的角速度信息的系统4。通常情况下,惯性导航系统中都是采用陀螺仪测量载体的角速度信息,采用高性能陀螺仪可以获得很高的导航精度,但是这需要很高的成本,而且当载体具有很大的线加速度或者很大的角速度

16、时,需要陀螺承受很大的冲击,而陀螺仪最大的弱点就是抗冲击能力差。因此无陀螺捷联惯性导航系统相对于有陀螺的捷联惯性导航系统具有动态测量范围大、可靠性高、成本低、使用寿命长、启动时间短等优点。利用加速度计代替陀螺仪实现角速度的测量思想是由国外最先论证的。如何采用加速度计测量角加速度的原理第一次被论述是Victor B.Corey在1962年提出来的,他还提出了一种加速度计简单的编排方案。舍弃陀螺而只采用加速度计测量载体角速度的想法是DiNapoli于1965年在他的硕士论文中提出的。同年,V.Krishna论述了通过安装在以稳定速度旋转的圆盘上的线性加速度计测量载体角速度和线加速度方法的数学原理5

17、。利用线加速度计测量载体旋转运动的想法在1967年被Alfred R.Schuler提出,他还提出了多种加速度计的配置方案。1975年,A.J.Padgaonkar等人提出了9加速度计的力学编排方案。1982年,Shmuel J.Merhav在总结了前几个人的研究结果基础上,研究出了借助于旋转或振动加速度计三元组组成无陀螺的惯性测量组件,并给出了如何从加速度计输出的比力信息中解算出线加速度和角加速度的方法。1991年,MarceloC. Algrain认为要想测量物体的线加速度和角加速度最少需要六个加速度计。1994年Jeng Heng Chen发表了一种新的使用六个加速度的无陀螺惯导设计方案

18、。1999年Lee在Chen的方案的基础上有提出了使用六个加速度计测量物体旋转运动的解法,并将卡尔曼滤波应用在其导航系统中。2001年,Chin Woo给出了一个决定加速度计配置方式是否可行的充分条件。2002年,Lee又对其滤波算法进行了改进6。我国最早关于无陀螺捷联惯导系统的文章是在1997年,如哈尔滨工程大学的马澍田教授撰写的就加速度计无陀螺捷联惯导系统应用于鱼雷制导的研究报告。虽然无陀螺捷联惯性导航系统提出了很多年,但是由于早期的加速度计性能不够好,因此一直没有得到广泛的重视,但随着各种新型加速度计的出现,加速度计的精度也取得了迅猛的发展,目前加速度计的分辨率已经达到了10g,斯坦福大

19、学和耶鲁大学实验室制造的原子干涉加速度计分辨率已经达到了10g,而且随着技术的更新,加速度计的成本也越来越低7。所以无陀螺捷联惯导系统越来越受到国内外专家的重视。1.2 导航计算机发展简介最初的导航计算机的设计方案是采用模拟电路搭建专用计算机,这种导航计算机的体积和功耗都比较大,处理能力也不是十分理想,只能用于一些平台级的惯导系统解算导航参数。然而捷联惯导系统因为舍弃了物理平台所以解算任务要更加庞大,尤其是无陀螺捷联惯导系统对导航计算机的计算能力要求更高。随后很长一段时间采用PC机及其体系结构设计的计算机,虽然可以满足对导航计算机的计算能力的要求,但是存在结构复杂,体积和功耗大等缺点。后来出现

20、了小型的工业计算机,如PC/104,PC/104是采用X86架构处理器在工业控制领域中的典型应用,基于PC/104的导航计算机的电路设计相对比较简单,软件开发也比较便捷,相关应用技术相对也比较成熟,从90年代至今被广泛的应用在导航计算机设计中14。基于PC/104的导航计算机虽然在体积和功耗方面有所改善,但还不够理想,而且通常需要多层扩展板来负责模拟信号的数据采集和接口通信等工作,形状大小一旦确定很难修改,中断响应速度也不够快,综上可以看出,基于PC/104设计导航计算机的方案在微型飞行器的上的应用就受到了很大的局限。近期导航计算机比较主流的设计方案是采用DSP+MCU/FPGA/CPLD的形

21、式,优点是采用嵌入式技术减小了系统的体积和降低了功耗,数据的解算能力比较强,但是存储器的扩展及外围接口的设计比较复杂,主处理器DSP和控制器(MCU/FPGA/CPLD)协调性不够好,耦合不够紧密8。还有一些设计是采用ARM或PowerPC核的处理器,优点是比较擅长数据交换和对外设的控制,但是对导航参数的解算能力不如DSP。本论文中所采取的方案是采用FPGA作为核心芯片,使用SOPC技术可以将导航计算机所需的Nios II处理器(Nios II软核具有超过200DMIP的性能)、外围接口设计、通信等功能集成在一片FPGA芯片内部资源里,很大程度的降低了系统的体积和功耗,节省了设计成本,加快了设

22、计周期,而且出现问题或者升级时可以对FPGA芯片进行重新配置,还提高了系统的可靠性。采用双CPU架构,由ARM核32位微控制器STM32负责对加速度数据的采集工作,可以减轻Nios II处理器的工作量,节省主CPU资源,使其专门负责解算工作。1.3 论文的意义和主要内容虽然无陀螺捷联惯导系统的理论已经提出了近几十年,但是由于受到导航计算机发展及加速度计精度的约束,一直没有受到广泛的重视,目前仍处于理论研究阶段,尚未投入到实际工程应用中去。近年来随着芯片制造工艺、嵌入式技术、数字信号处理技术以及加速度计精度的提高和发展,无陀螺捷联惯导系统越来越受到国内外专家的重视,并且已经取得了一定的研究成果,

23、提出了一些解算方法、加速度计力学编排方案及无陀螺导航计算机的设计方案,但仍然没有实现可以工程应用的产品。本论文在总结了导航计算机发展的需求及各方案的优缺点后,提出了基于FPGA的导航计算机设计方案,并制造出工程样机,为接下来完善并实用化打下基础。本论文开发的硬件平台主要包括数据采集系统和数据处理系统两部分。数据采集系统采用ST公司的基于ARM Cortex-M3内核的STM32系列处理器作为核心芯片构建采集系统,控制两片A/D芯片AD7656将九路加速度计输出的模拟信号转换为数字信号,并将数据缓存在双口RAM IDT7133中。数据解算系统的硬件平台使用Altera DE2开发板,利用开发板中

24、主要资源有CycloneII系列的FPGA、SDRAM、Flash等,采用SOPC技术将Altera NiosII处理器嵌入在FPGA内部逻辑资源中,由NiosII处理器对九路加速度计输出的比力信号解算,进而得到所需的导航信息参数。论文总共分为四章,各章节的概要如下:第一章:绪论。介绍了无陀螺仪捷联惯导系统的相关知识背景,阐述了导航计算机的发展概况,并分析了基于FPGA的导航计算机设计方案的优势及本论文的背景和意义。第二章:系统的总体设计方案。介绍了无陀螺捷联惯性导航系统的工作原理,分析了无陀螺捷联惯导计算机的实际应用需求,介绍了导航计算机的总体结构思想以及论文中主要芯片的选型分析。第三章:导

25、航计算机的数据采集模块。介绍了导航计算机数据采集实现的具体方法和细节,并给出了主要设计部分的相关原理图,最后还介绍了开发过程中所用的的集成开发环境以及如何使用。第四章:导航计算机的数据解算模块。介绍了导航计算机数据解算模块硬件部分的设计思路,详细的描述了FPGA内部逻辑资源的设计过程,最后介绍了Nios II的软件开发平台Nios II IDE。第2章 系统总体设计方案2.1 无陀螺捷联惯导系统的工作原理有陀螺的捷联惯导系统一般安装6个惯性敏感元件用于描述载体在空间的运动状态,3个陀螺仪和3个加速度计,其中3个加速度计用于描述载体质心的平动,3个陀螺仪用于描述载体绕其质心的转动。后来研究人员发

26、现,当载体相对惯性坐标系的牵连运动存在转动时,载体非质心处质点的加速度所测的比力信息中含有角速度信息,这样就提出用3个加速度计代替3个陀螺仪,将这3个加速度计安装在载体的非质心处,便可以从这3个加速度计的比力信息中得到载体的角速度信息,这就是无陀螺捷联惯导系统的理论基础9。图2.1无陀螺捷联惯导系统的工作原理根据无陀螺捷联惯导系统的基本原理可知,无陀螺捷联惯导系统最少需要6个加速度计输出的比力信息,再通过相应的运算处理,才可以得到载体导航需要的全部导航参数。但是目前应用最多的是9个加速度计配置方案,因为6个加速度计的配置方案,在求解角速度信息的时候需要求解三元非线性微分方程,这给导航计算机的运

27、算带来了不小的麻烦。9个加速度计的配置方案通过合理的安装加速度计,可以直接得到角加速度,和6个加速度计配置方案比减轻了导航计算机的运算负担,提高了运算速度,而且增加了3个冗余信息,有了这3个冗余信息,就可以得到载体姿态角速度的部分误差,通过补偿能够提高角速度解算的精度。图2.2 本系统采用的9加速度计配置方式2.2 导航计算机的整体工作流程基于FPGA的导航计算机系统的工作流程如图2.3 所示,惯性原件是9个加速度计传感器,加速度计传感器可以敏感其轴向的载体的加速度,并输出连续的模拟电压信号,导航计算机并不能识别模拟信号,所以模拟信号量要经过A/D转换,转换后的数字信号量才能被导航计算机识别,

28、为了提高采样的精度和去除高频信号的干扰,模拟电压信号首先要经过由减法电路和低通滤波电路组成的调理电路对电压信号进行调理之后才分别送到两片A/D转换芯片中去进行A/D转换,由STM32微控制器的控制A/D芯片的转换工作,并控制将采集后的数字电压信号缓存到双口RAM中,最后由内嵌Nios II核处理器的FPGA芯片读取RAM中的9路加速度计信息,进行导航参数解算,FPGA完成导航参数解算后可以通过液晶屏或者显示器显示。 图2.3导航计算机系统的工作流程2.2.1 导航计算机的性能要求随着计算机产业的发展和普及,各行各业中已经依赖着计算机帮助处理和计算相关事务,计算机的规模也从最开始的巨型、大型、中

29、型、小型、逐渐的发展为微型。根据调查表明,目前嵌入式计算机的种类和数量都远远超过了以往的通用型计算机。嵌入式技术是以某种特殊的应用为核心,以计算机技术为基础,软、硬件可“裁减”,适应对功能、实时性、可靠性、成本、功耗、安全性、体积、重量等方面因素而设计的专用计算机系统。因此,无陀螺捷联惯导计算机实际上就是将嵌入式技术应用到导航计算机的设计中来。无陀螺捷联惯导计算机除了要满足基本的功能要求外,要想达到工程实际应用还必须达到以下性能要求:(1)实时性:导航计算机顾名思义是为航空航天或航海领域的导航设备,因此需要实时的提供高精度的导航参数,因此数据采集和解算的周期一般在几毫秒,导航计算机的实时性影响

30、导航计算机的整体性能。(2)体积小:导航计算机一般嵌入在载体中,如狭窄的机舱,所以它的体积和质量有严格的要求,有时甚至对几何形状都有一定的规定。(3)功耗低:作为嵌入式设备,有些时候需要导航计算机长期稳定的工作,所以导航计算机的整体功耗不能太高,否则会影响使用寿命或稳定性。2.3 核心器件的选型2.3.1 加速度计选型微机电系统(MEMS)技术起源于上世纪80年代末期,最早应用于IC制造工艺,涉及电子、材料、机械、物理学等学科的综合应用技术。微机电系统一般包括微机械传感器、微执行器、控制电路、信号处理电路、通讯接口以及电源等部分组成。目前的加速度计多采用MEMS技术进行设计和制造,MEMS加速

31、度计具有体积小、重量轻、功耗低等优点。2.3.1.1 电容式硅微加速度计的结构和工作原理加速度计包括敏感质量块m和惯性力F的测量元件。牛顿惯性定律可用数学公式描述为:F = ma。如图2.4为单轴电容式硅微加速度计结构示意图,当有加速度产生的时候,会有力作用在质量快上,使质量块发生相对位移,质量块上的横臂的移动会改变电容极板间的距离,从而改变电容的大小,最后可以通过电路输出敏感到的与加速度成比例的电压值。图2.4单轴电容式硅微加速度计结构示意图电容式硅微加速度计具有灵敏度高、噪声低、漂移小、结构简单、低功耗、宽动态范围等优点,所以受到了广泛的应用。不同的应用场合对加速度计精度的要求各不相同,其

32、中导航级应用的要求最高,加速度计需要g(即10g)的分辨率,但目前考虑到价格和技术等因素的考虑,微机械加速度计还很难达到导航级的应用。综上考虑本论文使用的是SILICON DESIGNS公司的Model 1221。它是单轴的电容式微机械加速度计传感器。其中1221L-002型有以下特点:量程:2g低噪声:5g/分辨率:2000mV/g频率响应:0-400Hz内部集成温度传感器4V的差分输出或者0.5V到4.5V的单端输出响应直流或交流加速度完全校准-55到+125工作环境电源:+5V直流电压,8mA内部集成传感器和运放底座封装:LCC或J-Lead贴片式与Model 1210相兼容的管脚排列2

33、0个引脚的功能介绍:AO和AON:加速度信号输出端,均为电压信号VDD:管脚9,11,14接+5V直流电源GND:管脚2,5,6,18,19接地DV:管脚4是偏转电压,通常悬空VR:管脚3 基准电压,接+5V2.5V:管脚17 基准电压,接+2.5VI:管脚8 温度依赖电流源其他管脚无连接2.3.2 A/D芯片选型由于加速度计Model 1221采用差分输出模式工作时零点漂移可以被抑制的很小,可以帮助提高采样进度,而且还可以提高分辨率,所以本系统中采用差分输出,输出的电压信号经过调理放大后加速度计的分辨率可增加至5000mV/g,此时电压信号范围放大至5V。根据本系统要求,加速度计的采样精度要

34、达到10g,由A/D转换器转换精度的计算公式:=,其中U为输入加速度计的最大值,U为输入加速度计信号的最小值,N为A/D转换后的数字量的位数。经计算可知N至少应为14位。加速度计输出信号的频率为0400Hz,根据香农定理,采样频率应该大于800 Hz,所以决定将采样周期设为1ms左右。由于需要对9路加速度计输出的信号进行并行同步A/D转换,所以又需要A/D芯片有多路同步转换的能力。综上分析,本系统决定使用美国模拟器件公司发布的一款高性能ADC芯片AD7656(两片)。AD7656采用iCMOS制造工艺,iCMOS制造工艺是将高电压半导体工艺与亚微米CMOS和互补双极型工艺相结合。采用iCMOS

35、制造工艺可使器件的性能显著的提高,而且还能降低功耗和提高器件承受高电源电压的能力。可以将模拟电路和数字电路集成在一个芯片内部,提升芯片的性能并且降低成本和提升整体性能。AD7656是一款高性能、高分辨率、多通道、高转换速率和低功耗的16位逐次逼近型ADC,单片可以同时对6通道进行同步A/D转换,因为本无陀螺捷联惯导系统采用9加速度计的配置方案,所以需要两片AD7656,每个通道达250kSPS的采样速率,最大采样频率高达8MHz。片内含有2.5V基准电源和基准缓冲器,也可以采用外部基准电源。AD7656的主要特性:(1)采用iCMOS知道工艺(2)独立的的6通道逐次逼近型ADC(3)双极性输入

36、(4)硬/软件可调输入范围:10V或5V(5)高速的数据吞吐率:250kSPS(6)串行输出和高速的并行输出两种输出方式AD7656主要功能引脚:REFCAPA,B,C:退藕电容连接引脚,通过电容接地。CONVST A , B , C:是转换使能逻辑输入,每对有其相关的CONVST信号,用于选择成对转换通道(A ,B ,C各对应两个模拟输入通道) 。V1 V6:6个通道的模拟输入端,模拟信号的变化范围由RANG引脚决定。RANGE:模拟输入范围选择。当该引脚为高时,在BUSY引脚电平下降沿的下一次转换的输入电压范围是2倍的基准电压;当该引脚为低时,在BUSY引脚电平下降沿的下一次转换的输入电压

37、范围是4倍的基准电压。DV:5 V的数字电源。数字电源和模拟电源必须保持电势一致,两者电势差不能超过0.3 V。应退耦接地,引脚接去耦电容。V:逻辑电源输入,输入电压用于确定接口的运行电压,该引脚的电压取决于内部参考电压,应接去耦电容。AGND:模拟地,所有模拟输入和外部参考信号都以此做参考。所有这11个AGND引脚都应接地。DGND:数字地,数字电路部分的参考地。DGND和AGND之间电势差不应超过0.3VAV:模拟电源电压,范围 4. 5 V 到 5. 5 V。为ADC核供电,与DVCC之间电势差不应超过0.3V。:片选信号,低电平有效。:读选通。/REF:写选通/基准使能/非使能。BUS

38、Y:该引脚从转换开始到完成一直保持高电平。REF IN/ REF :片内/片外基准电源选择。SER/:串口/并口选择。DB0DB15:16位数据线RESET:复位信号。VDD:正电源端。VSS:负电源端。STBY:低电平时,芯片进入空闲模式,可以降低功耗。/S SEL:硬件/软件选择控制引脚。当SER/ 为低电平而/S SEL引脚为高电平时由软件操作控制寄存器来控制采样;当SER/引脚和/S SEL都为低电平时,此时设置为硬件控制转换的工作模式,即CONVST A , B , C引脚控制采样。/B:字/字节输出模式的选择。图2.3 AD7656功能框图AD7656工作原理:AD7656是逐次逼

39、近型转换器,主要包括1个A/D转换器、1个逐次逼近寄存器、1个比较器、和1个逻辑控制单元转换中的逐次逼近是按对分原理由控制逻辑电路完成7。转换过程如下:启动转换后,逐次逼近寄存器的其他位都被控制逻辑电路置0只有最高位被置1,逐次逼近寄存器的信号经过A/D转换后得到一个电压值,将这个电压值与输入信号在比较器中进行比较,如果输入信号大于这个电压值则转换后的数字量得最高位为1否则为0,比较器的输出会反馈到A/D转换器,在进行次高位比较之前会对A/D转换器进行修正,在逻辑控制电路的时钟驱动下,逐次逼近寄存器会由高位到低位一位一位的进行比较和移位操作,直到比较结束,A/D转换完成。2.3.3 双口RAM

40、 IDT 7133在双CPU之间的通信常采用以下几种方式:(1)串行通信:串行数据传输时,数据是一位一位的在通信线上传输的,这种方式传输设备相对简单,应用也比较广泛,但一般用于数据量较少、传输速率慢、实时性要求不高的场合。(2)并行通信:一般是利用微控制器的I/O口实现,但是占用比较多的管脚资源,还需要加缓冲器和锁存器等,传输的数据量比较大的时候还会占用过多的CPU时间,影响整体的处理性能。(3)DMA通信:DMA传输方式不占用CPU资源,但是数据传输的时候需要请求使用总线,当出现与CPU同时访问存储器的时候CPU不得不让出总线,进入等待状态,此时就会影响CPU的整体的处理效率,而且有些CPU

41、不支持DMA功能。(4)共享式多端口存储器实现:双口RAM和FIFO(First In First Out)是常用的两种多端口的存储器,双口RAM和FIFO因为具有两组地址线和两组数据线,所以允许两个CPU同时对它们访问,这样就大大提高了通信效率,对CPU的软/硬件设置也没有特殊的要求,比较适合异种CPU之间异步高速系统中。FIFO和双口RAM之间的区别是FIFO存储器必须遵循先进先出原则,所以FIFO没有外部读写地址线,只能顺序地写入数据和顺序读出数据,读写地址的操作由内部指针自动加1完成。本系统中数据的解算工作需要一定的时间,而加速度计输出的采集速率特别快,导航计算机比较重要的要求之一就是

42、实时性,每次进行解算的一组数据一定是刚刚采集到的最新数据,如果使用FIFO存储器做采集到的数据的缓冲存储器,那么就会出现读取不到最新数据的情况,比如:采集数据需要1个时刻,而解算过程需要三个时刻,在1时刻对采集到的第一组数据(0-1时刻采集的数据)进行解算工作,则在4时刻进行下一组数据的解算,理论上此时应该对3-4时刻采集到数据进行解算,但是这段时间实际上一共又采集了3组数据都被存储在FIFO寄存器中,此时却只能读取到1-2这一时间所采集到的那组数据,而读不到3-4时刻的数据。综上,本系统采用双口RAM方案实现STM32和FPGA之间的实时通信。又由于AD7656采集后的加速度数字量是16位的

43、,所以决定使用IDT公司推出的2k16位的DPRAM(Double Port RAM)IDT 7133,由于IDT 7133具有两个操作端口,有两组读写控制线、11根地址线和16根数据线。两侧端口均可独立的对IDT 7133内部存储单元进行访问。为了避免两侧端口同时对同一存储单元进行访问,IDT 7133具有片内仲裁逻辑,仲裁逻辑可以决定哪一侧具有访问权。IDT 7133两侧还各有一个忙标志BUSY引脚,可以解决访问冲突。双口RAM IDT 7133有多种封装形式,在这里使用的是100管脚的TQFP封装。双口RAM具有两组相同的端口,分别加下标L表示左侧和R表示右侧。图2.4 IDT 7133

44、管脚图主要功能引脚:I/O0I/O15:数据线,用来传送数据。A0A10:地址线,用于对内部的存储单元寻址。:片选端口,低电平有效,低电平时芯片的控制逻辑和输入缓冲区是工作状态。高电平时,芯片是低功耗状态。R/:高字节读/写控制端,高电平时为读数据状态,低电平为写状态。R/:低字节读/写控制端,高电平时为读数据状态,低电平为写状态。:输出允许端口,低电平有效。:忙信号。2.3.4 微控制器选型图3.6 STM32模块结构框图AD7656和IDT 7133都没有控制单元,需要微控制器对其工作进行控制,以往设计采集模块,多使用8位的单片机或者DSP等完成,8位的单片机虽然价格便宜、开发方便,但是由

45、于位数低、接口过少、经常遇到处理能力不够、资源不够用等情况,如果是使用16位或32位的高级单片机或者DSP,价格又相对比较高。所以本系统采用目前市场上最流行的基于ARM公司Cortex-M3内核的准32位微控制STM32,基于Cortex-M3内核的STM32微控制器与其他微控制器相比性能更加优越,在相同主频下能处理更多的任务;功耗低,是便携式设备的首选;实时性好;代码密度得到了很大的改善;使用更方便,32位处理器,更简单的编程模型和更便捷的调试系统;成本更低廉,低端的Cortex-M3内核微控制器甚至不到1美元;免费便捷的开发工具。本系统中采用STM32系列中的增强型STM32F103,封装

46、采用TQFP100,最高工作频率为72MHZ,内置高速存储器(高达512K字节的闪存和64K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设,还包含3个12位的ADC,4个通用16位定时器和2个PWM定时器,还包括标准和先进的通信接口:多达2个IC、3个SPI、2个IS、1个SDIO、5个USART、1个USB和1个CAN。2.3.5 FPGA选型FPGA(Field Programmable Gate Array)即现场可编程门阵列,是20世纪80年代中期出现的高密度可编程逻辑器件,它是在PAL、GAL、EPLD等逻辑器件的基础上发展起来的6。FPGA器件及其系统是开发大规

47、模数字集成电路的最新技术。数字集成电路的发展经过了早期的电子管、晶体管、中小型规模集成电路、超大规模集成电路(VLSIC)、专用集成电路(ASIC)、可编程逻辑器件(FPGA/CPLD)。其中可编程逻辑器件具有更高的集成度、体积小、开发周期短、保密性好、性能高、设计灵活(可重复修改)、通用性好等优点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入/输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分7。FPGA内部包含许多基

48、本的可编程逻辑单元,用户用软件设计就可以实现将基本逻辑单元以不同的方式连接起来实现定制的功能和应用,与ASIC相比不仅仅降低了开发成本,而且增加了灵活性。Altera公司生产的FPGA结构是基于SRAM的,每次工作前需要从芯片外部的存储器(如EPROM)加载配置的数据,上电时FPGA芯片内部RAM读取EPROM数据,配置完成后FPGA进入工作状态,掉电后FPGA内部不保存数据,下一次工作之前需要重新配置。而且用户可以控制配置数据的加载过程,在现场修改器件的逻辑功能,所以FPGA被称作现场可编程门阵列。FPGA有四种配置模式:串行模式是使用串行PROM对FPGA编程;并行主模式是使用一片FPGA和一片EPROM的工作方式;主从模式可以用一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1