0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于光电扫描测量网络信号采集模块的设计

电子设计 来源:网络整理 作者:工程师吴畏 2018-06-25 11:35 次阅读

0 引言

基于光电扫描的坐标定位系统是近年来新兴的一种坐标测量方法,具有精确度高、不易受周围环境干扰等优点,因此在日本尼康公司生产的室内GPS(indoor GPS,iGPS)设备、天津大学精密测试技术及仪器实验室研发的工作空间测量定位系统(workspace Measuring and Positioning System,wMPS)中都得到了广泛的应用[1]。然而,基于光电扫描的定位系统对光脉冲信息处理要求的实时性极高,如何迅速并准确地将光脉冲信息转变为电脉冲信息,并从中获得相应光平面的信息,对保证系统的定位精度有着极为重要的意义。

本文基于Xilinx公司推出的Zynq-7000系列全可编程片上系统,采用ARM+FPGA架构的Zynq芯片,提出了一种新型的将光平面信息检测与区分的方法,在FPGA中设计逻辑电路来实现对光平面的电脉冲信息捕获与锁存,并设计基于AXI总线协议的IP核,以此来对光平面信息进行高效的识别、处理与传输。

1 wMPS基本原理及信号采集模块架构

1.1 wMPS工作基本原理

wMPS是一种新型的基于光电扫描的测量系统,其组成如图1所示。

关于光电扫描测量网络信号采集模块的设计

发射站向四周发射两束扫描光以及一束同步光,接收器接收到光脉冲的信息并将其转变为电脉冲,前端处理器接收电脉冲后将其按照周期进行区分,获得其角度信息,并上传给计算机最终完成坐标解算[2]。

关于光电扫描测量网络信号采集模块的设计

关于光电扫描测量网络信号采集模块的设计

当系统由两台及以上的发射站组成时,则可以使用类似经纬仪的测量原理来测量接收器在全局坐标系下的坐标[3]。其测量原理如图3所示。

关于光电扫描测量网络信号采集模块的设计

当空间内某一处的接收器Rx:(x,y,z)能同时接收到两发射站Tx1以及Tx2的光信息时,在计算出接收器在每个发射站坐标系下的水平角α1、α2与垂直角β1、β2后,假设已知发射站的坐标为Tx1:(0,0,0)与Tx2:(x,0,0),则可通过如下公式计算接收器的坐标:

关于光电扫描测量网络信号采集模块的设计

在大型测量网络中,接收器常常会同时接收多个发射站的光信息,其光脉冲示意图如图4所示。为了利用光平面的信息解算出接收器的全局坐标,前端处理器需要记录每一个电脉冲上升沿和下降沿到来的时间,以脉冲宽度来区分出同步光信号与扫描光信号[4],最终精确求解接收器的全局坐标。

关于光电扫描测量网络信号采集模块的设计

1.2 前端处理器总体架构

前端处理器是wMPS测量系统的最重要的组成部分,它是系统安全、稳定、准确运转的重要保证。如何将来自大尺寸空间中发射站的光信息如实地记录与准确地区分,同时具有一定的扩容能力,对于整个wMPS系统是至关重要的。

基于Zynq芯片的wMPS前端处理器主要由两部分组成:可编程逻辑(Programmable Logic,PL)部分和作为ARM控制的处理系统(Processing System,PS)部分。它们之间通过AXI总线进行通信,PL部分擅长做逻辑运算以及并行性强的任务,而PS部分擅长做串行以及控制偏多的任务[5]。因此在PL中设计逻辑电路来实现信号的采集与存储,而PS 部分则负责后续对光平面脉冲的分类与处理,使得整个前端处理器的运算效率达到最大。基于Zynq的前端处理器架构如图5所示。

关于光电扫描测量网络信号采集模块的设计

2 信号采集模块逻辑设计

在PL部分中的信号采集模块划分如下:

(1)光平面信息检测与存储部分。当光电接收单元接收到发射站的同步光信号和扫描光信号时,将转化为相应的电脉冲传递给PL部分,PL部分通过3个状态机将相应脉冲的上升沿、下降沿以及对应的时间记录,并传给FIFO进行保存。

(2)光平面信息传输接口部分。光平面的信息存储在FIFO逻辑电路中,而PL部分与PS部分的通信基于AXI总线协议,因此需要设计相应的逻辑电路来实现信息的读取与传输。

IP核是具有知识产权的集成电路芯核,是经过反复验证的具有特定功能的模块,与芯片制造工艺无关,可移植到不同的半导体工艺中。Xilinx公司提供了许多免费且功能强大的IP核给开发人员使用。在wMPS前端处理的PL部分设计中,也采用了许多Xilinx提供的IP核,这使得开发流程简洁许多,并且正确性与可靠性得到了保证。其中测量同步控制模块采用Xilinx提供的基于AXI总线的GPIO模块,计数器采用Xilinx的二进制模块,以及与上位机交互的通信模块。因此关于这些部分本文不再进行讨论,主要讨论信号捕捉与计时存储模块以及基于AXI总线的FIFO接口模块的IP核设计。

2.1 信号捕捉与计时存储模块

wMPS前端处理器PL部分最核心的工作就是对来自接收器的电脉冲进行捕捉以及锁存时间值,其主要逻辑结构如图6所示。通过3个协同工作的状态机来分别完成捕捉边沿信号、产生标志位以及锁存时间值3个任务。

关于光电扫描测量网络信号采集模块的设计

图7所示为捕捉边沿信号的状态机状态转换图。状态机缓冲来自接收器的电脉冲信号,输出Trig与Trig_n。Trig_En初始时为0,进入IDLE状态。当开始测量时,Trig_En被置1,此时若输入为0(IN=0),则进入REDY状态。当IN为1时,进入上升沿状态(POSEDGE_IN),Trig置1。一个时钟周期后将Trig信号再拉低,进入等待(DELAY)状态。等到IN为0时,再进入下降沿状态(NEGEDGE_IN),此时将Trig_n拉高一个周期。再根据输入IN的状态进行判断进入空闲状态(IDLE)还是上升沿状态(POSEDGE_IN)。

关于光电扫描测量网络信号采集模块的设计

图8所示为脉冲捕捉计时状态机转换图,包含空闲(IDLE)、等待(WAIT)、捕捉(CAPT)3种状态。当脉冲捕捉状态机没有接收到PS部分指令时,处于空闲状态;当收到来自PS部分指令后,且脉冲捕捉状态机处于非复位状态时,跳转至等待状态;当Trig或者Trig_n输出有一个为1时,进行信号捕捉,将FIFO写使能信号置1,同时将30位计数器的时间值记录下来,TP_Capt为计数器捕捉瞬间的时间值,将其写入FIFO存储。在工作状态下(Trig_En=1&&Rst_n=1),每次时钟上升沿到来时,若是Trig或Trig_n中有一个信号有输入,则捕获信号触发的时间值(30位),并写入FIFO,否则处于等待期间。

图9为事件捕捉状态机转换图,包含空闲(IDLE)、等待(WAIT)、上升沿(RIS)、延迟(DELAY)、下降沿(FAL)沿5种状态。当接收到PS指令后,从空闲状态跳转至等待状态,TP_Type保持上一状态的信号。当来自边沿信号捕捉状态机的输出Trig为1时,进入RIS状态,TP_Type被标记为上升沿(01)。下一时钟周期到来时对Trig_n的信号进行判断,若为1,则TP_Type被标记为下降沿(10);否则TP_Type保持住,直到Trig_n信号为1时再标记为下降沿。而当状态机位于下降沿状态时,若下个周期Trig信号为1,则跳转回上升沿状态,TP_Type改变相应标记;否则状态机跳转回等待状态,TP_Type继续保持上一状态。

2.2 基于AXI总线的FIFO接口模块设计

为提高wMPS前端处理器的工作效率,本文基于AXI总线通信协议,定制FIFO的接口模块,利用硬件逻辑控制读取工作,缩短读取时间来提高系统的工作效率。

图10为FIFO接口模块的内部结构,它包括以下几部分:FIFO读取逻辑、AXI总线接口以及多个控制寄存器。其中AXI总线接口是Xilinx公司提供的标准通信协议,该模块在AXI总线与用户逻辑之间提供双向的接口[6]。模块中有3个寄存器,其中寄存器0用来从AXI总线上接收指令,寄存器1与寄存器2分别用来存储FIFO存储的数据与FIFO的标志位数据。使用这样的方式读取FIFO中的数据,仅需2个时钟周期即可完成,极大地提高了前端处理器的工作效率。

关于光电扫描测量网络信号采集模块的设计

3 wMPS前端处理器PL部分逻辑仿真

为了验证前端处理器PL部分的逻辑功能的完整性与可靠性,分别对设计的信号捕捉与计时存储模块以及基于AXI总线的FIFO接口模块进行仿真验证。

3.1 信号捕捉与计时存储模块仿真

使用Vivado提供的仿真器,输入信号为随机产生的宽度随机的脉冲信号,观察dout中读出的数据以及相应的FIFO标志位,验证设计的正确性。仿真波形如图11所示。

关于光电扫描测量网络信号采集模块的设计

由图11可以清晰地观察到,输出的数据dout以及FIFO的标志位FIFO_Flag均在两个时钟周期后跳转,即系统的延迟仅仅为两个时钟周期,满足设计需求。

3.2 FIFO接口模块仿真

由于FIFO接口模块为基于AXI总线定制,若是直接仿真,不易满足时序要求,因此使用Xilinx的ISE,利用总线仿真模型(Bus Function Model,BFM)对FIFO接口模块进行仿真,通过FIFO端口写入数据, 并从寄存器中读取并观察输出信号。基于BFM的FIFO接口模块仿真如图12所示,可以观察到,用户IP可以正确输出读FIFO时序,两个周期就可以读出FIFO中的内容。因此从接收器检测到脉冲信号到PS部分读取电脉冲信息,仅需4个时钟周期,延迟极小,满足系统应用要求。

关于光电扫描测量网络信号采集模块的设计

4 结论

本文提出了一种新型的将电脉冲信息检测并区分的方法,基于Zynq芯片解决了室内定位系统中光脉冲信号难以区分的难题。仿真验证表明,该设计的时钟延迟极小,具有很高的精度,可以满足现有wMPS系统对测量精度的要求,同时在其余基于光电扫描的室内定位系统中应用前景极高。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1592

    文章

    21207

    浏览量

    592142
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8615

    浏览量

    361310
  • 信号采集模块

    关注

    0

    文章

    6

    浏览量

    7105
收藏 人收藏

    评论

    相关推荐

    关于多路信号采集的问题

    最近在做毕业设计,关于ADE7755的集中电能测量系统,采样部分出现了问题,ADE7755只能采集一路电压和电流信号,请问怎么把多路的电流信号
    发表于 05-05 12:12

    关于OCT(光学相干断层扫描)的Libview扫描控制和数据采集

    请问有没有哪位做过关于OCT(光学相干断层扫描)的Libview扫描控制和数据采集,还望不理赐教,多谢多谢
    发表于 03-09 10:41

    激光扫描车身坐标测量数据采集系统的设计

    本文对激光扫描车身坐标测量系统的数据采集部分进行了深入研究,设计了基于“AVR+FIFO+CPLD”的数据采集及处理模块;解决了当多路
    发表于 11-22 14:51 24次下载

    基于高速AD的激光z扫描高频信号幅值测量系统

    基于高速AD的激光z扫描高频信号幅值测量系统 0 引 言   Z扫描是一种应用于光学非线性测量的方法,使用这种方法可以
    发表于 01-14 10:50 840次阅读
    基于高速AD的激光z<b class='flag-5'>扫描</b>高频<b class='flag-5'>信号</b>幅值<b class='flag-5'>测量</b>系统

    多功能信号采集模块应用手册

      多功能信号采集模块(Z7-851)为最多12通道多功能的数据采集模块,每个通道都可以独立、自由设置为
    发表于 09-22 16:45 4次下载
    多功能<b class='flag-5'>信号</b><b class='flag-5'>采集</b><b class='flag-5'>模块</b>应用手册

    模拟量信号采集模块是什么

    工业化生产中,经常需要使用多种工业控制产品,其中信号采集模块的应用也非常广泛。但很多人还是不清楚,什么是信号采集
    发表于 07-23 17:11 1858次阅读

    振弦采集模块测量振弦传感器的流程步骤

    振弦采集模块测量振弦传感器的流程步骤? VM 的测量过程分为激励、采样、计算三个大的步骤。在连续测量模式, 采样
    的头像 发表于 07-01 09:54 868次阅读
    振弦<b class='flag-5'>采集</b><b class='flag-5'>模块</b><b class='flag-5'>测量</b>振弦传感器的流程步骤

    IBF25信号隔离采集模块概述/功能/特点/应用

    IBF25 信号隔离采集模块,可以用来测量5路温度信号
    的头像 发表于 07-07 15:25 986次阅读
    IBF25<b class='flag-5'>信号</b>隔离<b class='flag-5'>采集</b><b class='flag-5'>模块</b>概述/功能/特点/应用

    IBF29信号隔离采集模块概述/功能/特点/应用

    IBF29 信号隔离采集模块,可以用来测量16路电压或电流信号
    的头像 发表于 07-11 13:24 1020次阅读
    IBF29<b class='flag-5'>信号</b>隔离<b class='flag-5'>采集</b><b class='flag-5'>模块</b>概述/功能/特点/应用

    IBF62开关量信号隔离采集模块的简单介绍

    IBF62 开关量信号隔离采集模块,可以用来测量八路开关量信号
    的头像 发表于 07-12 14:13 1388次阅读
    IBF62开关量<b class='flag-5'>信号</b>隔离<b class='flag-5'>采集</b><b class='flag-5'>模块</b>的简单介绍

    关于振弦采集模块采集仪振弦频率值准确率的问题

    关于振弦采集模块采集仪振弦频率值准确率的问题   VM501振弦采集模块 (1)谁的频率更准确
    的头像 发表于 08-08 09:18 679次阅读
    <b class='flag-5'>关于</b>振弦<b class='flag-5'>采集</b><b class='flag-5'>模块</b>及<b class='flag-5'>采集</b>仪振弦频率值准确率的问题

    使用标准信号检测 VM振弦采集模块测量精度(二)

    使用标准信号检测 VM振弦采集模块测量精度(二) 振弦传感器采集读数模块:指针对振弦传感器的特性
    的头像 发表于 09-05 09:43 622次阅读
    使用标准<b class='flag-5'>信号</b>检测 VM振弦<b class='flag-5'>采集</b><b class='flag-5'>模块</b><b class='flag-5'>测量</b>精度(二)

    编码器AB信号输入/球栅尺磁栅尺差分脉冲信号采集模块/测量

    图1 IBF153 模块外观图 ● 光栅尺信号远传到工控机 ● 编码器信号远传到工控
    发表于 11-26 14:25 556次阅读
    编码器AB<b class='flag-5'>信号</b>输入/球栅尺磁栅尺差分脉冲<b class='flag-5'>信号</b><b class='flag-5'>采集</b><b class='flag-5'>模块</b>/<b class='flag-5'>测量</b>

    河北稳控科技VM系列振弦采集模块 测量时长与优化

    均可通过这三种基本激励方法推导得出。 VM系列振弦采集模块 测量时长与优化 (1)单次高压脉冲法 (2)步进式低压扫频法 VM系列振弦采集模块
    的头像 发表于 12-09 09:48 515次阅读
    河北稳控科技VM系列振弦<b class='flag-5'>采集</b><b class='flag-5'>模块</b> <b class='flag-5'>测量</b>时长与优化

    VM系列振弦采集模块的快速测量

    。 具体各寄存器设置如下: VM系列振弦采集模块 快速测量 下图为实际测量“时间-频率” 曲线图,在 5 秒左右时间内,完成了约 50 次振弦传感器频率
    的头像 发表于 12-12 10:05 400次阅读
    VM系列振弦<b class='flag-5'>采集</b><b class='flag-5'>模块</b>的快速<b class='flag-5'>测量</b>