![信息与通信LXI扫描开关设计_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd1.gif)
![信息与通信LXI扫描开关设计_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd2.gif)
![信息与通信LXI扫描开关设计_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd3.gif)
![信息与通信LXI扫描开关设计_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd4.gif)
![信息与通信LXI扫描开关设计_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd/8aab1c35-6f5c-439c-ad0b-da080fdd9bbd5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要本论文对LXI扫描开关模块进行了研究。LXI扫描开关模块是实现多路信号转换测量的重要模块。LXI总线技术是继VXI、PXI总线技术之后的最新的总线技术,基于以太网的它具有物理尺寸小、系统建立时间短、可互换性行强的特点,而开关类LXI仪器也属于IVI驱动规范中的八大仪器类仪器之一。本课题对LXI扫描开关功能电路板进行了完整的设计,功能电路采用FPGA芯片作为电路的主控制器,实现对继电器开合的直接控制。在继电器使用方面,采用MC1413驱动芯片对继电器进行驱动。课题使用Verilog描述语言对FPGA内的逻辑进行设计,通过逻辑实现控制功能,避开了软件上必须满足程序顺序执行的限制条件,而多个时序
2、模块并行运行的特点为多组继电器同时扫描的功能提供了条件。软件方面,课题设计了基于WEB服务器控制的客户端页面,设计了能够通过该页面调用的CGI程序。同时基于IVI-COM驱动的控制方式,在已开发的该类仪器IVI-COM驱动程序的基础上,实现了命令解析与执行的服务程序的设计。本文最后对整个LXI扫描开关模块的测试流程,测试方法以及测试结果进行了阐述。关键词:LXI;扫描开关;继电器;FPGAAbstractThis thesis givesemphasis on the design of LXI-Scanning Switches. LXI-Scanning Switches is a mod
3、ule that plays an important rolein the automatic test of transforming amongvarious signals. LXI is the lastest bus technology following the VXI, PXI bus technology, based on the Ethernet technogy, it integrates more merits: it is strongly exchangeable with a small footprint, it is also faster and ea
4、sier to build a automatic test system by using LXItechnology. The device of switch is one of the eight devices in the IVI driver standard.In this thesis, the function part of the LXI device is designed. It chooses the chip FPGA as the main component for controlling and all the relays are directly co
5、ntrolled by the FPGA. To gurantee the electric current when relays work, all the relays are drived by the chip MC1413. In the thesis, the logic is designed inVerilog HDL. It is better to achieve the function of controlling in the logic since there is no limit in the process of program which exists i
6、n the software. The characteristic that all the clock modules work parallelly makes it possible for several groups of relays to scan at the same time.In the aspect of the software, both of the client pages based on WEB server and CGI programs which are started by the corresponding pages are designed
7、.Meanwhile, on the basis of the designed IVI-COM driver, the program to analyze and excute commands is developed.At last, the thesisintroduces the the test process, test method and test result for LXI-Scanning Switches module.Keywords:LXI;Scanning Switch;Relay; FPGA目录摘要IAbstractII第1章 绪论11.1 研究的目的和意义
8、11.2 国内外研究现状2 仪器总线技术的发展历程21.2.2 LXI技术现状及特点3 扫描开关技术41.3 主要研究内容51.4 论文结构6第2章 总体设计方案72.1 模块的主要功能和技术指标72.2 模块的总体设计方案72.3 硬件设计方案92.4 软件设计方案10 基于WEB网页控制的软件方案10 基于IVI-COM驱动控制的软件方案112.5 本章总结12第3章 硬件电路设计及逻辑设计133.1 功能板电路设计133.1.1 FPGA与核心板ARM接口设计13 继电器排布设计和继电器与外部接口设计14 继电器驱动电路设计153.2 FPGA芯片内部逻辑设计17 地址译码模块17 参数
9、设置模块18 扫描时钟生成模块19 扫描实现模块203.3 本章小结21第4章 软件设计224.1 基于WEB服务器的控制方式22 网页控制界面224.1.2 CGI编程244.2 基于IVI-COM驱动程序的控制方式264.2.1 IVI-COM驱动26 命令解析与执行服务程序274.3 本章小结29第5章 LXI扫描开关模块测试305.1 测试平台的搭建305.2 功能测试305.3 本章小结33结论34致谢35参考文献36第1章 绪论1.1 研究的目的和意义自动测试系统,无论是在航空航天和国防电子领域,还是在消费类电子产品的生产线测试和质量验证,都有着非常广泛的应用。由于自动测试技术的引
10、入,不仅能够提高测试效率,保证测试的准确性和可信度,减少由于人为原因造成的测量错误和误差,降低生产和测试成本,而且还可以对测试数据和结果进行信息化管理。无论是在整机,元器件或模块的指标和功能测试,老化及可靠性等测试中,自动测试技术都有着广泛的应用。测试总线就像是测试系统的中枢神经,负责控制指令和测试数据的传送。伴随着计算机技术的不断渗透和发展,测试总线主要经历了GPIB(General-Purpose Interface Bus)总线、VXI(VME eXtension for Instrumentation)、PXI(PCI eXtension for Instrumentation)总线等
11、几个阶段1方少森LXI串行通讯模块研制C哈尔滨工业大学硕士学位论文2010:162饶骞LXI测试自动化的未来J电子质量2005,12:123秦红岩,路辉,郎荣玲自动测试系统硬件与软件技术M北京:高等教育出版社,20074 尹洪涛,黄灿杰,付平LXI标准概述M电测与仪表2007,5:16185张曦煌嵌入式WEB系统的研究与实现C南京理工大学工程硕士学位论文20056 杨树青,王欢Linux环境下C编程指南M清华大学出版社2007:23007 夏宇闻Verilog数字系统设计教程M北京航空航天大学出版社2005:17608Jonatban Corbet,Alessandro Rubini,Greg
12、 Kroab-HartmanLinux Device DriverM中国电力出版社,20079John MHarveyIVI-COM Drivers in Visual Basic 6JAgilent Developer Network White Paper2006,11:1810Kirk FertittaIVI Standards TutorialJAgilent Developer Network White Paper2002,11:1511Dewey MIntegrating LXI Devices into Hybrid Test SystemsJLXI ConneXion,Jul
13、y 200612Yu WilsonLXI Instrument Development Platform Based on an Open Embedded Operating SystemJYi Qi Yi Biao Xue Bao2007,2813杨柳,晓虹,赵建LXI仪器的网络规范及网页界面设计M计算机测量与控制200714李思嵌入式Linux Web服务器的实现与应用J仪表技术2008,1:576015IVI-COM Instrument Driver Programming GuideJTest&Measurement Instrument2005,9:1816吴厚航深入浅出
14、玩转FPGAM北京航空航天大学出版社201017杨进才,沈显君,刘蓉C+语言程序设计教程M清华大学出版社200618Joseph EMuellerThe IVI Open Architecture Driver SpecificationsJ2002 IEEE Autotestcon ProceedingsHuntsville,2002:35736619Franklin Paul,Creque Andrew,Reddy RakeshExploring LXIs Advanced CapabilitiesJIEEE Autotestcon,Orlando,FL,United States,200
15、520 郑洪刚基于ARM9和Linux操作系统的嵌入式应用开发C西安电子科技大学工士学位论文2007:11921Fu Minghua,Feng MingdeInvestigation on Distributed Networked Automatic Test System Based on LXIJISTAL2008:11751179。其他的总线技术如通用串行总线(USB)、现场总线(Fieldbus)、1394总线(Firewire)、控制器局域网(CAN)等也被引入自动测试系统1-2。由于被测对象和测试要求的复杂多样性,使得现有的各种测试总线很多情况下难以充分满足用户的测试需求。21世
16、纪初,为了进一步提高测控系统的通用性和灵活性,在已有的测控技术和网络通信技术的推动下,出现了LXI(LAN eXtension for Instrumentation)技术。LXI是以太网技术在测试自动化领域的扩展,其总线技术融合了以太网的高吞吐率、GPIB仪器的高性能、VXI/PXI插卡式仪器的紧凑性,提供多种触发方式,满足仪器领域对同步、冷却、电磁兼容性等的特殊要求,是构建新一代自动测试系统的理想平台。LXI扫描开关模块是LXI总线测试系统的重要组成部分,其在各个领域都有着广泛的应用。融合了LXI设备的灵活性,LXI扫描开关将能够实现便捷地在各种不同区域即插即用进行测量,极大地缩短测量前的
17、准备工作。开发LXI扫描开关模块便显得具有十分重要的实际意义。1.2 国内外研究现状1.2.1 仪器总线技术的发展历程测试仪器系统总线是伴随着自动测试系统(ATS)的出现而提出的,并且与ATS一同成长。ATS需要解决的关键问题是怎样使得开放式互联设备能在电气、功能、机械上兼容,以保证各种命令和测试数据能够在互联设备间准确无误地传递,即要解决程控设备之间的互连协议问题,也就是接口总线问题。随着计算机技术不断地更新与发展,总线技术主要经历了GPIB、VXI、PXI几个几段。第一阶段:GPIB通用接口总线是计算机与仪器间的标准通信协议。GPIB的硬件规格和软件协议已纳入国际标准IEEE488.1和I
18、EEE488.2。它是最早的仪器总线,目前多数仪器都配置了遵循IEEE488的GPIB接口典型的GPIB测试系统:包括一台计算机,一块GPIB接口卡和若干台GPIB仪器。每台GPIB仪器都有单独的地址,由计算机控制操作。系统中的仪器可以增加、减少或者更换,只需对计算机的控制软件做相应的改动。这种概念已被运用于仪器的内部设计。从价格上,GPIB仪器覆盖了从比较便宜的到异常昂贵的仪器,但是GPIB的数据传输速率一般低于500kB/s,不适合于对系统要求较高的应用。第二阶段:VXI即VME总线在仪器领域的扩展,是1987年在VME总线、Eurocard标准(机械结构标准)和IEEE488等的基础上,
19、由主要仪器制造商共同制订的开放性仪器总线标准。VXI系统最多可包含256个装置,主要由主机箱、“0槽”控制器、具有多种功能的模块仪器和驱动软件、系统应用软件等组成。系统中各功能模块可随意更换,即插即用组成新系统。目前国际上有两个VIX总线组织,VXI联盟和VXI即插即用系统联盟,这两套标准组成了VXI标准体系,实现了VXI的模块化、系列化、通用化以及VXI仪器的互换性和互操作性。VXI的价格相对较高,适合于尖端的领域测试。第三阶段:PXI是PCI在仪器领域的扩展,是NI公司于1997年发布的一种新的开放性、模块化仪器总线规范。其核心是CompactPCI结构和Micrisoft Windows
20、软件。PXI实在PCI内核基础上增加了成熟的技术规范和要求形成的。PXI增加了用于多板同步的触发总线和参考时钟、用于精确定时的星形触发总线、以及用于相邻模块间告诉通信的局部总线等,来满足试验和测量用户的要求。PXI兼容CompactPCI机械规范,并增加了主动冷却、环境测试等要求。这样,可保证多厂商产品的互操作性和系统的易集成性3。虽然这些仪器总线得到了广泛的应用,但都或多或少存在着一些不足,例如GPIB仪器体积和重量较大,数据传输速度较慢,其所使用的GPIB卡和电缆的成本也比较高;组建VXI测试系统所必须采用的VXI机箱、零槽控制器以及PCI-1394接口卡的成本也比较高;PXI总线仪器的功
21、能覆盖面相对比较有限,仪器品种比VXI仪器少,通道数和电磁兼容性也不如VXI。因此,研发具备网络化测试能力的新一代仪器就成为必然。安捷伦公司和VXI科技公司共同合作于2004年9月提出一种新型仪器接口规范LXI。它基于著名的工业标准以太网(Ethernet)技术,扩展了仪器需要的语言、命令、协议等内容;它集台式仪器的内置测量技术及PC机标准I/O连通能力和基于插卡框架系统的模块化和小尺寸于一身,构成了一种适用于自动测试系统的新一代模块化仪器平台标准4-5。1.2.2 LXI技术现状及特点LXI是LAN eXtension for Instrumentation的缩写,即局域网在仪器领域的扩展。
22、LXI致力于提高系统速度、降低系统成本、减小系统尺寸、缩短系统组建时间以及改进软件的通用性。它将Ethernet(IEEE-802.3)作为主要通信媒介,借助于计算机领域的众多成果,充分发挥了现有的Ethernet标准、Internet工具、LAN协议、IEC物理尺寸和IVI驱动程序各自的优势,从而使测试系统的互连平台转向更高速的PC标准I/O,无需机箱和昂贵的电缆,并可使用标准的软件。LXI的出现使用户能够快速、经济和高效地创建和重新配置用于研发与制造领域的测试系统,在航空、国防、汽车、工业、医疗和消费类电子产品领域拥有无限的发展潜能。不同于PXI模块需要昂贵的机箱、零槽控制器/MXI卡和电
23、缆在计算机与仪器之间通讯,LXI模块自带处理器、网络连接、电源和触发输入,模块一般是19英寸机柜全宽1U高,或者半宽1U或2U高,信号从模块前面板进出,LAN接口、电源、触发在仪器的后面板,安装在标准19英寸机柜上或堆叠在台面上,在普通计算机上实现按键、旋钮和显示界面。LXI模块在告诉LAN上交换数据,采用IVI-COM驱动,用标准的WEB浏览器显示信息和检查故障。在仪器间的同步与触发方面,LXI具有灵活的触发方式和很高的触发精度。LXI引入了用于分布式仪器间定时协议和IEEE1588精密时间同步协议,利用IEEE1588的亚微秒同步精度,可使仪器实现精确的同步。对于需要传统硬件线触发低抖动特
24、性的应用,LXI还定义了M-LVDS硬件触发总线,它能提供类似于VXI仪器高精度、低时延的触发。在编程控制方面,LXI仪器使用IVI-COM驱动程序,它支持所有现代编程环境,可利用面向对象编程技术及分层的API,给编程人员带来方面的同时,也实现了仪器的互换性。而且LXI仪器采用Web网页作为控制见面,使得对仪器的控制也更加方面。LXI仪器的LAN扩展不仅提供了机架和堆叠式仪器的嵌入式测量技术和PC标准I/O连接能力,还实现了基于插卡式仪器的系统的模块化特点并减少了体积。对于国防、汽车、工业、医疗和消费电子市场开发电子产品的研发和制造工程师来说,LXI紧凑灵活的封装、高速输入/输出和可靠的测量功
25、能有效地满足了他们的需求。VXI总线为所有高密度高速度应用提供了理想的标准,LXI则同时融合了VXI和以太网的优势,为用户提供了一个良好的高性能仪器平台,满足VXI通常没有满足的应用需求。LXI基于LAN的结构为例,为在航空和国防行业中长寿命仪器的实现奠定了基础。LXI没有带宽、软件过计算机底板结构先知。它可以利用日益提高的以太网吞吐量,为面临下一代自动测试系统挑战的工程师提供理想的解决方案。1.2.3 扫描开关技术随着测试技术不断地飞速发展,VXI、PXI、LXI等一代又一代各具特点的测试总线不断推出。大大提高了测试效率、测试精度,减少了测试成本、测试误差,完善了自动化测试的过程。也随着自动
26、测试的功能越来越强大,无论是在日常生活中,还是在工业、军事等以及一些尖端的测试领域,我们能够测量和采集的信号、数据的种类越来越多。这使得我们能够从自然界、生活环境以及一些特殊场合获得更多我们需要的信息,从而能够根据信息对相应的事件作出更准确的判断、选择更合适的处理方法。与此同时,在很多领域和场合,对测量方法的技术要求也不断提高,包括对同一信号的高精度测量、对多路信号的快速测量等等,这就需要开发相应的功能电路模块以实现具体的功能,而扫描开关功能模块就是用以实现多路信号测量的功能。例如现在需要对一个大楼内的温度做一个系统的检测。为了完成这个任务,需要在大楼内部的各个角落置放上百个甚至更多的温度的传
27、感器,并将采集的温度信息传递给PC机进行数据的的采集和处理。在这个过程中,如果对每个传感器都搭配一台PC机进行数据的采集和处理则会十分的浪费资源,同时也对数据的整体解析判断。因此往往就需要将如此之多的温度信息集中传给一台或者少数几台PC处理机。这就需要研究每台处理器对多路信号的采集过程。我们会考虑,一台PC处理机面对四面八方而来的上百个温度信息,如何把它们都采集进来呢?实际中,我们的通用计算机很少有如此多个接口的,而如果手动地把每一路温度信号逐一接到计算机上,那便显得劳民伤财,也相当的没有效率,十分地不合理。而扫描开关模块则致力于解决这一问题。扫描开关模块主要由一个控制器和多个继电器构成。其中
28、每个继电器的闭合端与一个单独的接口相连,用以连接一路外部信号,而每个继电器的公共COM端则连接在一起,并与PC处理机相连。而控制器则用以控制继电器逐一闭合再断开。如此一来,只要将外部的多个数据采集节点与该模块相连,便能通过控制器根据需要将多路信息逐一发送给处理器进行处理。扫描开关模块能够辅助主处理器实现信号采集过程中对多路信号到少数信号的转换,减少了对处理器外部资源的消耗。尽管该过程相当于将把“并行”的数据转换成了“串行”的数据进行传输,略微增加了数据采集的时间,但随着技术的不断提高,扫描频率的不断增加,该问题对实际的影响将会很小。同时从采集和处理过程的角度考虑,这种转换相应地为信号的处理留下
29、了时间,不仅没有浪费时间,反而更加充分地利用了时间。另外在某些特殊的环境和场合下,我们需要对某几路信号实现专门的大量采集,扫描开关模块也为这样的功能实现提供了可操作的平台。1.3 主要研究内容LXI扫描开关模块主要由上位机、LXI核心板、LXI功能板三大部分组成。上位机运行控制应用程序和IVI-COM驱动或者Web网页操作界面。上位机通过局域网LAN与LXI核心板进行通信。LXI核心板中以ARM为核心处理器,ARM内运行Linux操作系统,实现对上位机发来的命令的解析,并根据解析的结果进行相关的操作,例如向功能板FPGA寄存器写入相应的参数。FPGA则根据ARM写入的数据对功能电路板进行相应的
30、控制。综合各方面的分析,本课题的主要研究内容如下:(1)研究扫描开关的工作原理以及设计方法:包括掌握继电器的使用方法,继电器与外部接口连接等;(2)研究并掌握可编程逻辑阵列(FPGA)技术,并应用FPGA开发扫描开关的功能电路,编写FPGA逻辑;(3)使用Protel软件设计LXI功能板,完成LXI功能电路板的原理图和PCB的设计;(4)掌握嵌入式Linux系统下编程软件的使用,编写操作系统下的命令解析和执行服务程序;(5)研究上位机的软面板设计过程及网页控制界面的设计过程。1.4 论文结构本文详细阐述了设计LXI扫描开关模块的研究背景及意义、基本的原理、软硬件设计方案,主要内容分4章展开:第
31、2章论述了LXI扫描开关模块的总体设计方案和软硬件设计方案,结合模块所需实现的功能和所要达到的指标对其整体的软硬件结构进行方案论证;第3章详细论述了LXI扫描开关模块的硬件设计,包括LXI功能板的电路设计,FPGA的逻辑设计;第4章详细论述了LXI串行通讯模块的软件设计,Linux操作系统内的命令解析和执行程序,上位机得操作界面开发;第5章对该模块的功能测试流程以及测试现象和结果进行了描述。第2章 总体设计方案本章首先对LXI扫描开关模块的主要功能和技术指标进行分析,并在此基础上,确定扫描开关的主要功能和技术指标,根据主要功能和技术指标提出扫描开关的软硬件设计方案。2.1 模块的主要功能和技术
32、指标LXI开关扫描模块主要用于测试系统中多路信号的切换,大多与数字多用表及数据采集模块配合使用,适用于隔离要求高、测量精度高、导通电阻小、速度要求不高的场合,是各种测试控制系统中常用的基本模块,该模块具有64路开关量输出,多种扫描模式。模块的主要技术指标如下:(1)64路的开关量输出;(2)具有多种扫描方式可供选择;(3)可控的扫描间隔;(4)可控的扫描次数;(5)控制方式:通过WEB接口的控制和通过IVI-COM驱动控制方式。2.2 模块的总体设计方案LXI扫描开关模块主要由上位机、LXI核心板、LXI功能板三大部分组成。其中上位机具体实现控制命令的发出。它具体包括两种控制方式:一种是基于W
33、EB网络服务器的网页操作界面,另外一种是基于IVI-COM驱动的控制方式,后者可以通过设计软面板实现快捷简易的操作。两者都会将扫描需要的参数以及扫描控制信号通过LAN发送给LXI核心板的ARM进行处理。LXI核心板以型号为AT91RM9200的ARM芯片为处理核心,芯片上运行着Linux操作系统。它通过LAN局域网与上位机进行数据的交互与通信。在上位机通过WEB网页的控制渠道下,ARM内运行能够用过网页直接调用的CGI程序实现对控制命令的解析和执行。在上位机通过IVI-COM驱动的控制渠道下,ARM内运行命令解析和执行服务程序。ARM和功能板的通信则通过EBI总线。在该扫描开关模块中,ARM主
34、要通过向功能板的FPGA内的寄存器中写扫描参数以及控制使能实现对功能板扫描功能的控制。ARM与FPGA的主要通过数据总线、地址总线、读/写控制线以及片选线进行连接。LXI功能板以一块FPGA芯片为控制的核心,它通过获得ARM发来的扫描参数实现对扫描周期、扫描次数、扫描的继电器以及扫描模式的配置,并接收扫描使能信号实现对扫描起始与扫描终止的控制。对于扫描的功能实现,FPGA内通过对寄存器的循环移位操作以控制开关扫描的过程。图2-1模块工作流程图如图2-1所示,上位机以WEB或者IVI-COM驱动的控制方式,通过局域网LAN与微处理器ARM之间实现通信,而微处理器ARM与FPGA通过外部EBI总线
35、实现数据交换,FPGA收到ARM发出的数据后,实现控制逻辑,并通过IO口输出控制继电器的开合。2.3 硬件设计方案由于LXI技术在多种测量模块中都有着广泛的使用,其核心板的开发与使用已经非常的完善。在设计之前已经对LXI核心板中需要使用的模块以及驱动等进行了充分的了解,在设计过程中则充分利用已知的LXI核心板工作原理和功能进行所需的硬件设计。因此,LXI扫描开关模块的硬件设计就主要为功能板的电路设计。图2-2 功能电路硬件结构框图如图2-2所示,LXI核心板与功能板之间通过EBI总线实现通信。在功能板中,FPGA通过IO输出高、低电平,并经过驱动电路实现对模式选择继电器和开关量继电器的控制,其
36、中模式选择继电器能够改变开关量继电器的连接状态,开关量继电器与外部节点和外部系统相接。LXI扫描开关模块的功能电路是实现对继电器断开和闭合的控制的关键模块。其主要负责与嵌入式微处理器ARM的并行通信,接收ARM数据并实现对继电器的控制。本扫描开关模块中,使用FPGA器件作为整个功能电路的主控制器。相比于单片机,这些器件具有充足的IO引脚资源可直接对64路继电器实现控制。而对于整个控制过程,可以在微处理器ARM的Linux操作系统中通过软件来实现控制,也可以通过逻辑设计来实现对继电器的控制。相比之下,采用逻辑设计进行控制,避开了软件上程序必须顺序执行的限制,FPGA内各个时序模块并行运行的特点为
37、多组继电器同时扫描提供了条件。由于扫描开关是一个低速应用的模块,对控制器件的性能要求不高。因此使用Altera的Cyclone I系列成本偏低性能偏低的FPGA便能满足设计的需求,封装使用的是PQFP。2.4 软件设计方案LXI扫描开关模块软件设计主要包括2大部分:ARM内Linux操作系统下的命令解析和执行服务程序,上位机中的IVI-COM驱动程序和网页界面设计、软面板设计。图2-3 软件系统的结构框图如图2-3所示,上位机具有两种途径能够向微处理器ARM发送控制指令及控制参数,一种是通过WEB网页控制,另外一种是通关过IVI-COM驱动程序控制。2.4.1 基于WEB网页控制的软件方案每个
38、LXI仪器都是一个独立的网络设备,所有LXI仪器都必须提供包括产品主要信息在内的欢迎网页及LAN配置网页,A类和B类设备还要具有同步配置网页。此外,仪器还可以提供状态、其他页面,来显示仪器的当前状态和其他信息。这些网页通过HTTP80端口连接到网络,并可以通过标准W3C网络浏览器查看。从Web接口的角度看,LXI仪器类似于一个Web服务器,控制计算机可以像访问Web站点一样访问LXI的仪器,查看仪器的配置或者状态信息,还可以通过Web网页对仪器进行控制。在信息技术和个人电器的迅速发展的背景下,全球的嵌入式操作系统平台也得到快速发展,目前广泛使用的嵌入式OS包括Linux、WinCE、VxWor
39、ks等等,每个系统都有其独特的特长,VxWorks是极好的实时操作系统,在对响应时间有严格要求的系统中是较好的选择,WinCE由Microsoft研发和支持,拥有强大的窗口资源支援,适合在手持式个人电子产品中应用。Linux开放源代码,经过了近20年的发展,已经成为一个健壮的可靠的高性能的操作系统,其最大的优势在于它是一个完全开放和透明的操作系统,用户可以最大限度地控制系统开发的配置、进度和成本。Linux是模块化的操作系统,提供了优秀的可缩放功能,用户可以根据自己的需要,选择特定的功能模块,自主地搭建嵌入式操作系统。这很好地解决了大多数嵌入式系统对于操作系统的大小的敏感。Linux内置网络支
40、持,拥有强大的网络功能,用户可以轻松地使自己的嵌入式具有网络功能。基于Web网页的控制方式,需要在ARM内的Linux操作系统的后台下运行Web服务器。通过上位机的浏览器访问仪器的网络地址可以打开仪器的欢迎界面,并在欢迎界面下可以通过链接转到IP设置、功能控制等相应的界面。网页界面能够调用对应的CGI程序实现对控制命令的解析和执行。2.4.2 基于IVI-COM驱动控制的软件方案LXI规范中规定:LXI设备必须提供IVI规定的驱动程序,并且如果设备符合LXI类规范,其驱动程序必须是类兼容的。IVI规范对仪器驱动程序的结构、功能以及各个方法和属性的实现均做了详细的规定。虽然IVI基金会并没有要求
41、特定的驱动程序实现技术,但在LXI设备中提供统一的IVI驱动程序解决方案能够极大地提高用户效益。IVI驱动的实现普遍有两种方式,一种是通过NI LabVIEW等工具实现的IVI-C驱动程序,它是基于C语言的实现,另一种是在Visual Stdio下实现的IVI-COM驱动程序,IVI-COM指IVI(Interchangeable Virtual Instrumentation)驱动的COM实现。规范推荐使用后一种方式实现,IVI-COM驱动能够获得较好的交互性,而且绝大部分应用程序开发环境都支持微软的COM技术。IVI仪器驱动程序根据API分类的方式可分为IVI-C和IVI-COM,它们分别
42、是ANSI-C和COM技术与虚拟仪器结合的产物。由于IVI-COM驱动程序是以所有主要应用程序开发环境都支持的微软COM技术为基础的,为想要获得互换性的用户提供了极好的工具,LXI标准推荐使用IVI-COM驱动程序。该扫描开关模块属于C类仪器,其驱动程序可直接采用已被开发过的类兼容IVI-COM驱动程序,在此基础上,需要设计Linux操作系统下的命令解析和执行程序以及用以简化操作的软面板。2.5 本章总结本章给出了LXI扫描开关模块的主要技术指标和功能要求,并在此基础上详细介绍了系统的总体设计方案,包括硬件设计方案和软件设计方案。给出了硬件、软件总体的结构框图,对主要的硬件设计方案进行分析,阐
43、述了软件设计的客户需求以及技术要求。第3章 硬件电路设计及逻辑设计LXI扫描开关模块的硬件电路主要为LXI功能板的电路设计,本章将详细阐述整个功能板的电路设计以及其中FPGA芯片的内部逻辑设计。3.1 功能板电路设计LXI的核心板是一块以ARM为处理核心的嵌入式系统,嵌入式微处理器为AT91RM9200,该芯片融合了ARM920T核心并集成了许多标准接口控制器,同时为了提升其开发效率,该处理器还集成了包括JTAG和专用UART调试通道在内的一系列调试功能。嵌入式微处理器与晶振电路、复位电路、存储电路SDRAM和FLASH等组成一个基本的可运行的嵌入式系统。它与扫描开关功能电路通过EBI总线进行
44、。LXI功能电路主要由5大部分组成:FPGA与核心板的ARM接口、主控制器FPGA、模式控制继电器组、开关量继电器组、继电器与外部节点接口。接下来将依据这5个最基本展开具体的电路设计。3.1.1 FPGA与核心板ARM接口设计LXI扫描开关功能板采用标准的96孔插座与LXI的96针插针相连。核心板的微处理器ARM通过该接口实现外部总线EBI与功能板FPGA的通信。其中包括16位地址线、16位数据线、读写控制信号线和片选线。ARM通过EBI总线向FPGA的寄存器中写参数数据或者向FPGA发送使能信号。同时,核心板还能通过该96CON接口向FPGA发送一些额外的功能信号(暂时没有使用),包括硬件复
45、位信号,另外能够向功能板输出5V电压、3.3V电压、地。在核心板上,ARM的外部总线EBI会先接到LCX16245缓冲芯片。由于在ARM不向FPGA写数据或者从FPGA读数据时,需要将EBI总线置为三态,否则将导致ARM在向FPGA内的寄存器写数据或者从寄存器读数据时发生错误。使用LCX16245缓冲芯片,并在ARM内编写控制该芯片的驱动。在ARM需要向FPGA内寄存器写或者读数据之前打开LCX16245芯片。否则则关闭LCX16245芯片,将ARM于FPGA之间的通信总线置为三态,保证不会有错误数据的传输。3.1.2 继电器排布设计和继电器与外部接口设计LXI扫描开关模块一共具有64个开关量
46、继电器。在设计时,一共将它们分为4组,平均每16个继电器为一组。每个继电器的左端或者右端闭合端分别与一路外部节点接口相连。而每一组继电器的所有左端或者右端的公共端则彼此相连,并接至一路外部公共端口。模块的前面板上设有两个标准的78芯插座,用以实现继电器与外部节点和外部数据采集或者信号获取系统的连接。图3-1 继电器连接示意图如图3-1所示,每个继电器具有左端常开(NO)触点Hi和右端常开触点Li,它们分别接至一个外部节点。所有开关量继电器的常闭触点NC端都悬空。图为一组继电器的连接示意图,可以看见改组继电器的所有左端都连至Left-COM,所有右端都连至Right-COM。在使用时,被控制的继
47、电器逐一闭合,则相应继电器相连的外部节点则会逐一将自身的数据传输至公共端口。除了64个开关量继电器,LXI扫描开关模块还具有另外七个继电器用以控制扫描方式的选择。图3-2 扫描方式控制继电器示意图如图3-2所示,这七个扫描方式选择继电器在功能上也大体分为2大类。图3-2上方的继电器示意图表示当该继电器闭合时,会将第一组开关量继电器的左端公共端与第二组开关量继电器的左端公共端相连,由于该七个继电器也属于双刀双掷开关继电器,所以相应的,也会将第一组与第二组开关量继电器的右端公共端相连。同时,相应的另外2个继电器能够实现将第二组和第三组、第三组和第四组的公共端相连。而图3-2下方的继电器示意图则表示
48、当该继电器断开时,会选择将第一组开关量继电器的左端公共端与COM1相连,当该继电器闭合时,会选择将第一组开关量继电器的右端公共端与COM2相连。以此类推,还有另外三个继电器负责此功能分别应用于第二、三、四组继电器。前面板的两个78芯插座分别与64个继电器的128个常闭触点相连,同时与每一组继电器的左端、右端公共端相连,以后4个扫描方式选择继电器的COM1-COM4相连。3.1.3 继电器驱动电路设计继电器在使用时,需要考虑控制电路的电压以及电流。LXI扫描开关模块使用型号为TX-2 5V的继电器。在电压方面,由电路的5V电源直接提供使用电压。在电流方面,如果直接将FPGA的I/O引脚接至继电器
49、控制端口,则作为输出的FPGA I/O引脚的输出电流无法保证对继电器控制端口的驱动,因此需要设计驱动电路来增加驱动电流。MC1413驱动芯片是一款较为普遍的驱动继电器的芯片,它是一个7路地反相缓冲器,它的每个输出端口最多能够提供500mA负载电流,能够满足所使用继电器的驱动要求。如图3-3所示为MC1413芯片一路通过三极管实现电流放大的原理图和该芯片的引脚图。图3-3 MC1413原理图及芯片引脚图设计时,将每一个驱动继电器的FPGA的I/O引脚接至MC1413驱动芯片的一个输入引脚,并将相对应的MC1413输出引脚接至相应的继电器,实现对继电器断开和闭合的可靠控制。3.2 FPGA芯片内部
50、逻辑设计LXI扫描开关模块采用FPGA芯片作为功能电路的主控制器。相比于单片机FPGA具有更加充足的I/O资源来实现对64路继电器的直接控制。同时相比于用软件实现控制过程,采用FPGA进行逻辑控制能够实现对多组继电器的同时扫描,因为软件的程序必须顺序执行,而FPGA内的各个时序模块则能够同时运行。整个控制逻辑设计下来,一共使用了4500个逻辑资源以及91个IO引脚资源。在Cyclone一代系列和PQFP封装的前提下,根据设计需要选择了EP1C6Q240C8该型号FPGA。该型号FPGA具有6000个可用逻辑资源以及185个可用IO引脚资源,都满足本模块的设计需求。图3-4FPGA内部逻辑结构框
51、图图3-4为所示,FPGA内部主要由地址译码模块、参数设置模块、扫描时钟生成模块、扫描实现模块组成,接下来将对每个模块具体的实现过程做详细的描述。3.2.1 地址译码模块地址译码模块专门用以实现对ARM发来的地址信号的识别。FPGA与ARM之间一共有8根地址线相连。FPGA可对ARM内的00H-FFH内存控制进行读写操作。该模块输入为8条地址线、ARM写控制线、片选线,输出为256位控制线,内部通过组合逻辑将输入与输出相联系,实现了8-256的地址译码功能。图3-5地址译码功能实现示意图如图3-5所示,片选信号NCS、写信号nWE、地址信号ADDR通过与运算实现对写入地址的识别。该图表示,当A
52、RM通过地址00H向FPGA发送数据时,“或”逻辑所有输入都为低电平,nWR1信号被置为低电平。3.2.2 参数设置模块对于扫描的控制,不单只有扫描方式这一方面,同时在每一种扫描方式下,每一组继电器都还需要有各自的扫描参数要求:包括起始的扫描节点、终止的扫描节点、整个扫描的循环次数等。这就需要设置相应的寄存器来装载这些扫描参数以实现对这些参数的使用。参数设置模块通过地址译码模块的输出控制线打开相应参数寄存器的被写入功能,然后通过EBI的数据总线相连,实现对该寄存器参数的配置。扫描的起始、终止节点都最大为128号节点,使用8位的数据总线可一次性将需要的参数写入对应的寄存器。整个扫描的循环次数采用
53、16位的寄存器进行设置,对于一次只能传8位数据的数据总线而言需要连续传送2次,而所能够达到的最大的扫描循环次数也就为2的16次方65536次。如图3-6所示,模块中每一个需要由ARM写入数据的寄存器与一个地址相映射。当地址信号到来,通过一级锁存以保证对该信号的可靠采集,然后通过与“与”逻辑来检测写信号的上升沿,当检测到写信号的上升沿时,打开数据寄存器的使能,数据总线的数据被写入相应的寄存器。之后地址信号消失,数据寄存器的使能被关闭。以此方式实现将各个扫描参数配置到相应的寄存器中。图3-6 数据写入寄存器示意图3.2.3 扫描时钟生成模块FPGA所采用的晶振频率往往至少为兆级的,所对应的时间间隔
54、也就至少都是微秒级的,而对于扫描开关模块的扫描间隔最对不能低于毫秒级。因为继电器的闭合与断开都是需要一定时间的,这是硬件器件上必然存在的一个时间。对于普通的继电器,这一动作时间一般在20毫秒左右,而即使性能再好的继电器,该动作时间也不可能小于10毫秒。如何在上一个继电器闭合还没有来得及断开之前就将下一个继电器闭合,则会导致两个节点同时连到公共端COM,很容易引起电路的损坏。整体而言扫描开关模块属于一个应用于低速场合的模块。由于需要对晶振产生的时钟源分频,同时需要能够产生任意毫秒级的时钟频率,所以采用频率不算太高而且有效数字为10的整数倍的20M晶振,使得对扫描时钟的产生简洁化。该模块以计数器的
55、方式实现对时钟源的分频,计数次数由FPGA内相应的寄存器给出。模块内通过地址译码器输出的控制线实现对计数值寄存器写入功能的打开,并通过EBI数据总线向寄存器内写入需要的计数值。采用32位的寄存器对计数值进行配置,最高可实现3分钟的扫描间隔,最低的扫描间隔则由继电器的性能决定,建议扫描间隔不要低于1000毫秒。图3-7 扫描间隔设置模块示意图如图3-7所示,扫描时钟产生模块与参数设置模块类似,最终由数据总线写入寄存器的数据给到计数器,用以对源时钟实现计数分频。3.2.4 扫描实现模块最终扫描功能的实现以通过对寄存器的循环移位操作方式来进行。扫描间隔由扫描时钟生成模块输入,扫描的起始位、终止位和循
56、环次数都由参数设置模块输入。由于有10种扫描方式的要求,10种扫描方式对于继电器的分组上有很大区别。因此在逻辑中,扫描实现模块总共由十部分组成,每一部分对应一种扫描方式的具体控制。包括有的扫描方式需要在扫描过程中改变扫描方式控制继电器的输出,每一种扫描方式对应的扫描组数也不同等等。因此将每一种扫描方式的控制逻辑单独编写,更有利于理清整个扫描的实现过程。十种扫描模式都将自己的开关量继电器以及扫描方式控制继电器的输出传送给总的扫描实现模块。总的扫描实现模块将根据扫描方式的使能来选择将相应的输出输出到FPGA的继电器控制引脚。根据不同的扫描方式,会将继电器分为不同的组数。因为每组方式的扫描设置不同,
57、则采用了双层使能的控制方法:即每一组继电器都有自己的使能,同时又有一个总使能。只有当某一组继电器的两个使能同时开启时继电器才会开始扫描。如图3-8所示,当扫描使能开启后,首先检测扫描时钟的上升沿,保证一个时钟周期对继电器进行一次操作。扫描过程首先判断扫描圈数是否达到设定的扫描圈数,如果达到了,则将改组移位寄存器清零。因为该组扫描结束的时候不能保证别的组也扫描结束,因此此处采用将移位寄存器清零,则继电器不会再有动作。如果仍处于扫描中,则再判断此圈是否已经达到设定的扫描次数,如果达到了,则扫描圈数计数寄存器加一,再重新判断扫描圈数是否达到。如果扫描次数尚未达到,则对寄存器进行移位操作,并将扫描次数
58、计数寄存器加一,再重新回到扫描圈数的判断。图3-8扫描流程图3.3 本章小结本章详细介绍和分析了LXI扫描开关模块的硬件电路设计,包括LXI功能板的电路设计以及FPGA芯片内的逻辑设计。LXI功能板的FPGA作为主控制芯片,能够和LXI核心板的ARM通过EBI总线进行通信,并实现对电路上各个继电器的控制。所有继电器按照一定的分组连接,实现对多路信号的转换功能。第4章 软件设计所有LXI设备都能够通过两种方式实现上位机与LXI核心板的微处理器之间的通信。一种是基于WEB服务器实现控制的方式,另外一种是基于IVI-COM驱动程序进行控制的方式。4.1 基于WEB服务器的控制方式WEB服务器是指在网络中使用,通过WEB网
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安保服务外包合同
- 甲方终止租赁合同范本(2篇)
- 人教版数学七年级下册5.3.2-2《命题、定理、证明2》听评课记录1
- 一年级下数学听评课记录
- 湘师大版道德与法治九年级下册1.2《充满活力的社会主义市场经济》(第1课时)听课评课记录
- 一二年级听评课记录
- 人教版数学八年级下册听评课记录:第18章 矩形(一)
- 湘教版数学八年级上册5.3《二次根式的混合运算》听评课记录2
- 华师大版数学七年级上册《多项式》听评课记录2
- 北师大版历史八年级上册第9课《袁世凯独裁统治与军阀混战》听课评课记录
- 精装修室内施工组织部署
- 农用拖拉机考试题库
- GJB438C模板-软件开发计划(已按标准公文格式校准)
- 2023年政府采购评审专家考试真题及答案
- 云端数据加密与密钥管理解决方案
- 毒麻药品试题答案
- 元明时期左江上思州黄姓土司问题研究
- 传统体育养生学
- DB4401∕T 33-2019 电梯托管标准化管理规范
- 松原市人民政府关于印发松原市招商引资服务公司组建工作实施方案的通知
- 义工财务管理制度范文
评论
0/150
提交评论