DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1941|回复: 0
打印 上一主题 下一主题

[待整理] 时域反射仪的硬件设计与实现----系统总体方案

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-27 23:35:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
2.1硬件总体设计
          本设计以FPGA、CPLD和ARM7为核心,基于示波器原理,将时域反射测量合并到示波器之中。脉冲信号产生单元是时域反射仪的核心关键部件之一,脉冲信号的产生为时域测量提供了基础;数据采集部分对脉冲信号进行高速采集,为时域测t提供了保障,将模拟信号转化为数字信号,经ARM7处理之后就可以显示在液晶屏上。FPGA的可编程和数据存储特点以及ARM7的数据处理能力对系统进行控制,完成了对低压脉冲信号采集、控制、存储、处理、显示等功能。硬件总体设计方案如图3一1所示。
         
       
         
        从FPGA内部产生的窄脉冲信号,经放大、分离后分别送到测量通道和参考通道,同时送往测量通道的脉冲信号也被送到被测电缆。不论是发射信号还是反射信号,都经过了信号调理通道,分别进入A/D模数转换器,数字信号被送到FPGA的内部,经过处理后放到FPGA内部RAM进行存储,等待处理器A刊M7的读取。
       
        ARM7将读到的数据通过CPLD转存入显示存储芯片SRAM中,CPLD则周期性的将要显示的数据送到LCD显示。同时设计上也增强了万用表模块的整体性能,可以进行电阻、交直流电压、二极管和通断测试。仪器也可以通过UA丑T转USB的桥接电路和上位机进行通讯,实现数据和波形存储。
       
        硬件总体方案从功能模块来划分,包括以下几个部分:脉冲信号产生、放大及送出部分;信号调理通道部分;高速数据采集部分;显示控制部分;便携电源和开关机电路;以及改进的数字万用表和接口电路。
       
        2.1.1脉冲产生和送出
          产生合理的脉冲信号是进行时域测量的必须条件,它由FPGA内部的数字电路来产生。为了便于观察和测量,将脉冲的宽度与时基相结合(采用1-2-5步进),以及最大测量长度的考虑,将脉冲分成6个不同的档次供选择,分别为ZOns、50ns、100ns、ZO0ns、500ns、lus,脉冲宽度的控制通过计数器的方式来调节。比如用sns的频标来计数,计满4个时钟后,即可产生宽度为20ns的脉冲信号,同理计满200个时钟后,可以产生lus的脉冲信号。当用户选择一种宽度的脉冲后,ARM就会送给FPGA一个计数常数,该计数值决定脉冲信号的宽度。
       
        从FPGA的FO口送出的脉冲信号,幅度和驱动电流都不能满足测试要求,必须经过放大处理后才能作为测量用脉冲信号,可以采用高性能放大器来对脉冲信号做放大处理,使脉冲信号幅度尽量加大,同时还要具有一定的驱动电流。处理后的脉冲信号要被分别送到测量通道和参考通道,因此为了使脉冲放大、分离电路不对通道的正常测试造成影响,同时还要保证脉冲信号被合理的送到两个通道上,在脉冲送出电路上增加了隔离电路的设计,即在进行示波器模式测量时,时域反射部分电路不影响仪器的正常工作。
       
        2.1.2测量和参考通道
          测量通道和参考通道与常用的数字示波器的结构基本相同,它具有常用的粗衰减电路,阻抗变换电路,信号放大电路,增益控制电路以及差分变换电路等,
       
        同时为了观察的需要,也要求脉冲信号能够在屏幕上可以上下移动。一般示波器具有触发的功能,而时域反射测量下,触发的控制不需要模拟电路,而是直接在FPGA内部进行数字触发。该方式与示波器模式下的触发并不相冲突。
       
        由于测t用信号都由脉冲信号组成,特别是在使用较窄的矩形脉冲时,脉冲信号中包含的高频成分比较多,为了保证信号的完整性,在通道设计上参考了手持数字示波器的通道设计方案,并在此基础上进行了一定的修改,使通道具有更大的带宽,以减小波形失真。
       
        2.1.3数据采集和存储
          本设计是以数字示波器技术为基础,因此也拥有标准的数据采集系统,可以正常的测量各种波形。在示波器功能状态下,其时基变化范围按照1、2、5步进的原理,从5ns/div~5s/div,而数据采集系统的ADC的最高采样率为250MSPS,既每隔4ns采一个点,对应屏幕上的一大格(25*4ns/div)为IO0ns/div,因此在低速时基档位下:100ns/div~5s/div,25OMSPS的速度完全足够将采集到的数据对应到屏幕上进行显示,该显示方法称为实时采样。在高速时基档位下:50ns/div~5na/div时,在示波器功能下仍然采用25OMSPS的采样率,通过计算我们可以得知,采集到的点数不足以对应屏幕上的像素点,如在50ns/div情况下,每个像素点对应的时间间隔为2ns,而采样间隔仍为4ns,也就是说如果要进行正常的显示,则屏幕上每相邻2个点中,只有一个点是通过采集而来的,而另外一个点则需要通过软件插值的方式来获取。
       
        在时域反射测量功能下,同样也具有可变的时基。根据第二章我们推算出电磁波在同轴电缆的传播速度约为200m/us,假定我们测量范围达到最大10O0m,由式(2-4)可以推算出时间间隔约为10us,如果此时时基在1us/div的档位下,则整个屏幕(水平12大格)刚好可以将发射脉冲和反射脉冲显示出来。为了提高最小分辨率,在测t比较短的电缆时,时基逐渐向ns级变化,而由前面所述,在100ns/div时,已经达到了采样率的最高极限,如果此时时基在50ns/div~5ns/div之间,还采用正弦插值的方式,则显示出来的波形会有不同程度的失真,必然会影响测量结果。在此我们选择了等效采样的方式[22],以固定的采样速率,通过对被测波形的多次采样,达到高速采样的目的,其等效采样率随时基变化而变化。该方法是区别与示波器采样方式中随机等效采样的一种顺序时间等效采样。该方法实现更简单,电路设计也没有那么复杂,用在时域反射测量上效果显著。表3-1给出了在各种时基情况下,示波器模式和时域测量模式在采样率、采样显示上的不同。
         
         
        无论是通过高速实时采样,还是通过峰值检测所采集到的数据,都被暂时存储到FPGA内部的RAM存储区内,当一个周期的采集结束以后,由ARM将数据读取出来,当所有数据被读完以后,采集系统又进入下一次数据采集和存储状态。
       
        本系统采用的FPGA是Altera公司CycloneⅡ系列,型号为EP2C8Q208C8的产品,这个型号的FPGA内部有两个锁相环资源,165888bits的RAM,138个可用I/O口,8256个逻辑单元(LE),且价格较为低廉,具有较高的性价比。FPGA的功能主要用于实现脉冲产生与等效步进延时、峰值检测、数据缓冲、时基控制电路、通道控制、预触发控制、万用表控制等功能。
       
        2.1.4液晶显示与控制本设计的波形是在一块TFT液晶屏上进行显示的,而液晶的显示驱动,并没有采用由微控制器来实现。因为本设计的控制器采用的是ARM7系列的单片机,该处理器并没有ARMg或者高端DSP所具有的液晶驱动显示接口(PPD,因此液晶的驱动显示以及显示控制都由cPLD来完成。
       
        CPLD选用了Alt.滋公司的性能比较低的MAXn系列的CPLD器件EPM127oT144CS,在系统中的主要作用是液晶屏显示时序控制、显示数据的存储和读出、液晶屏的背景光亮度的调节、按键识别等功能,因此所需要的资源比较少,速度要求也不算很高。
       
        2.1.5电源及开关电路
          电源和开关电路是手持式产品一个非常重要的部分,它决定了产品的工作稳定性,工作时间以及安全性能。本系统的各个部分需要不同的工作电压,如模拟部分需要+5V和-5V,数字部分需要+3.3v和+l.2v,液晶的数字部分和背光驱动还需要+3.3v和+22v的电压,而所有的电源所需要的电量都由板上的一块可充电的高容量锂(Li)电池提供。为了使系统的工作时间最长,工作最稳定,因此电池的充放电管理十分重要;同时电源的开关控制对系统的整体工作也很关键,这是因为电源的开关控制还与系统的软件处理相联系,即处理器要对开关控制信号做出相应的响应,比如控制信号以及状态的存储等。
       
        2.2软件总体设计
          仪器仪表的设计仅靠良好的硬件支持还不够,良好的软件平台也十分重要。
         
        本系统的软件设计是采用PHILIPS公司的基于ARM7TDMI-S核、单电源供电和LQFP64封装的32位ARM嵌入式数字处理芯片LPC2138,可以JTAG仿真调试和IAP编程,具有价格低廉,性能优良等特点,广泛应用于小型系统,如POS机、通信网关、协议转换、声音识别、低端成像、工业控制和医疗系统等[23l. LPcZ138是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-S的微控制器,具有以下特性:
           

           
  •                 32kB片内静态RAM,64/512kB片内Flash程序存储器。128位宽度接口/加速器实现高达60MHz的操作频率。        
  •                 片内Boot装载程序实现在系统编程(LsP)和在应用中编程(LAP)。Flash编程时间:lms可编程256字节,扇区擦除或整片擦除只需400ms.        
  •                 EmbeddedICE-RT和嵌入式跟踪接口可实时调试(利用片内Real Monitor软件)和高速跟踪执行代码。        
  •                 2个8路10位A/D转换器共包含16个模拟输入。        
  •                 2个32位定时器(带4路捕获和4路比较通道)、PWM单元(6路输出)和看门狗。        
  •                 多个串行接口,包括2个16C550工业标准UART、2个高速I2C接口(400kb/s)、SPI和SSP(具有缓冲功能,数据长度可变)。        
  •                          
  •                 向量中断控制器。可配置优先级和向量地址。        
  •                 多达47个5V的通用I/O口(LQFP64封装),9个边沿或电平触发的外部中断通过片内PLL可实现最大为60MHz的CPU操作频率。        
  •                 可通过个别使能/禁止外部功能和降低外部时钟来优化功耗。        
  •                 单个电源供电,含有上电复位(POR)和掉电检测(BOD)电路。CPU操作电压范围:3.0-3.6V.
           
          嵌入式处理器的开发必须有一定的开发环境,本系统的软件设计的开发环境是ARM公司推出的ARM核微控制器集成开发工具,英文全称为ARMDevel叩er Sulte成熟版本为ADsl.2.它支持ARM10之前的所有ARM系列微控制器,支持软件调试及JTAG硬件仿真调试,支持汇编、C、C什源程序;具有编译效率高、系统库功能强等特点;可以在windows98、windows2000、windowsXP以及RedHatLinux上运行。
       
        ARM处理器在系统中起到中心枢纽的角色,完成了许多重要的功能。通道校准、响应按键处理、数据读取、算法处理、地址运算、参数测量、开关机响应、护C读取万用表测量值、响应上位机控制等。
       
        软件的总体设计采用前后台系统的方式,系统初始化模块与键处理模块作为前台系统,键消息处理模块、各个控制模块、数据测量处理分析模块以及显示处理模块作为后台系统。软件的整体设计框图如图3一2所示:
         
       
         
        系统上电以后,会自动将存储在FLASH的软件程序读出到内部RAM中运行。
       
        用户主程序首先会调用一个加载函数,将保存在FLASH中的上一次关机时的设置信息和波形信息读回,初始化系统设置结构体,之后显示人机画面。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-16 10:34 , 耗时 0.148103 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表