单片机与CPCI总线的脉冲信号检测系统设计

2012-03-20 02:32赵思阳董杰
单片机与嵌入式系统应用 2012年6期
关键词:双口客户机电平

赵思阳,董杰

(北京空间飞行器总体设计部,北京100094)

引 言

在工业控制领域,通常有大量的脉冲信号用于控制其他设备或部件的开关或者工作状态切换。这些脉冲信号除了常规计算机系统采用的+5V接口电平外,还有+12V、+30V,乃至更高幅度的接口电平,通常为功率型电流驱动信号。本文提出了一种两级测试系统的设计思路,给出了在较宽的范围内兼容不同接口电平的脉冲信号检测系统的设计方案,采用标准CPCI总线接口设计,具有良好的兼容性和扩展性,适用于产品功能测试或系统集成测试。

1 测试系统架构

如图1所示,测试系统采用二级(主控机、下位机)结构设计,由主控计算机(即主控机)、测试客户机(即下位机)、局域网、电缆及运行于各设备中的测试软件共同构成。主控计算机属主控机一级,控制测试客户机,测试任务由主控计算机控制完成。测试客户机控制其对应的测试设备可独立完成设备级的功能测试。整个测试系统通过对被测设备施加激励信号并检测其响应输出的方式,实现对被测设备的闭环测试。

脉冲信号检测板是工作于测试客户机中的测试板卡,其主要功能是接收80路外部脉冲信号,测量并记录每路脉冲信号的脉冲宽度及收到脉冲的时间。

2 脉冲信号检测板实现方案

2.1 总体设计

图1 测试系统架构

脉冲信号特性为:脉冲持续时间为80~500ms,偏差为±10ms;驱动电流不小于200mA。在产品功能测试及系统集成测试阶段,主要考核脉冲信号功能的正确性,故脉冲信号检测板用于检测脉冲信号的发生时间及脉冲持续宽度,要求测量误差不大于±1ms。

如图2所示,脉冲信号检测板的核心部分包括光耦接口电路、接口处理FPGA、单片机系统和PCI接口电路。板卡采用标准的6U尺寸CPCI板卡设计,兼容标准6U尺寸的CPCI工控机。

图2 脉冲信号检测板功能框图

检测板内部主要数据流向及处理流程为:80路脉冲信号通过光电耦合器(光耦)进行隔离变换,转换成检测板内部5V电平信号;接口处理FPGA对信号进行采样,并将80路脉冲采样数据组帧缓存;单片机读取FPGA中的采样数据,并判断是否检测到有效脉冲信号,将检测到的脉冲信号打上当前时间标签后发送给双口RAM;工控机软件通过CPCI总线定期访问双口RAM,读取数据。

2.2 脉冲信号接口

被测脉冲信号为功率驱动信号,用于驱动功率负载,驱动电流通常为几mA至几百mA,采用集电极开路门(OC)形式输出,通常为+12~+30V信号。为了兼容多种信号电平,并能隔离功率型信号与普通基带电平信号,实现较好的电磁兼容性,本系统采用光电耦合器作为信号隔离与电平转换的接口器件。

TLP121是东芝公司生产的光电耦合器,隔离阻抗为MΩ级,其前向驱动电流(IF)最大为20mA,后端开关开启和闭合时间均为μs级,可以满足本系统对测量误差不大于1ms的要求。输入接口电阻设为可调电阻,可适应不同输入电压。

脉冲信号接口电路如图3所示。脉冲信号正线和回线连接至光耦的前端(图3中TLP121的1、3引脚),后端(图3中TLP121的4、6引脚)采用板内5V电源上拉,通过施密特电路74HC14整形后发送至接口处理FPGA。当脉冲信号有效时,光耦前端有电流流过,接口电路输出高电平“1”;脉冲信号无效时,接口电路输出低电平“0”。

图3 脉冲信号接口电路

2.3 接口处理FPGA

由于需要对80路脉冲信号进行检测,采用单片机无法满足并行处理的需求,因此选用FPGA完成脉冲采样功能。接口处理FPGA采用Altera公司的FLEX10K50,工作主频为6MHz,存储芯片采用EPC1PC8。

其主要功能有三部分:分频定时器、采样数据缓存、外围控制逻辑。FPGA对主时钟进行分频,形成周期为1ms的时钟信号。FPGA每ms对80路脉冲信号完成并行采集一次,将数据存放在寄存器中,同时向单片机发出中断信号,通知单片机发起数据搬移,以及单片机内部的时间计数器自增。采样数据缓存模块用于将80路脉冲信号同时锁存至内部寄存器,单片机每ms全部读取一次。外围控制逻辑用于单片机外围各控制信号的译码,包括控制寄存器、各芯片控制信号译码,以及其他辅助功能的实现。

2.4 单片机系统

单片机系统采用Atmel公司的AT89C51,配合32 KB外部SRAM 62256以及4KB双口数据RAM IDT71342。其中,CPCI总线访问双口数据RAM的L端口,8051访问R端口。

单片机工作主频设计为20MHz。单片机P0口和P2口作为通用的数据线和地址线使用,配合地址锁存器74HC373工作;P1口不使用;P3口中仅使用了P3.2用于接收外部中断,即来自接口处理FPGA的中断。FPGA内部定时器每ms产生一个中断脉冲,用于单片机软件计时器的激励时钟,同时通知单片机读取脉冲信号接口采样数据。

单片机的外部地址空间划分如表1所列。

表1 单片机外部地址空间划分

单片机产生的脉冲信号数据帧格式如图4所示。每个数据帧包含14个字节数据,时间码为4个字节,加电后从0开始计时,单位为ms;采样脉冲数据共10个字节,对应80路脉冲信号。

图4 脉冲信号数据帧格式

2.5 PCI总线接口

板卡采用CPCI接口方式,接口芯片采用PLX公司的PLX9052,与配置EEPROM芯片93CS46配合使用。板卡在PCI总线中工作在从模式下。接口芯片对部数据总线选择低8位数据线与双口RAM连接,测试客户机定期查询每块测试板卡中双口RAM的工作模式,不使用本地中断信号。

3 软件设计

脉冲信号检测板单片机软件主要完成脉冲采样数据的处理,剔除FPGA产生的采样数据中的无效数据,将检测到的脉冲有效数据打上时间标签后存储到双口数据RAM中。双口RAM中循环存储256组脉冲信号数据,测试客户机定期访问双口RAM,读取检测数据。单片机软件流程如图5所示。

图5中寄存器0x8FFD为配置寄存器,由测试客户机软件写入,用于初始化双口RAM中的数据。

结 语

本文提出的两级测试系统的设计思路和基于单片机与CPCI总线的脉冲信号检测系统设计方案,可以适应较宽电压幅度范围的接口电平信号。系统采用标准的CPCI总线接口,具有良好的兼容性和扩展性,能较好地满足对脉冲信号的功能测试。如需要提高测量精度,可缩短FPGA采样间隔来实现。

图5 单片机软件流程

目前,该方案已经大量应用于产品测试和系统集成测试中。

[1]Toshiba.TLP121Datasheet,1998.

[2]Atmel.AT89C51Datasheet.Rev0265G-02/00,2000-02.

[3]Altera.FLEX10KEmbedded Programmable Logic Family Datasheet.Ver4.01,1999.

[4]PLX.PCI 9052Data Book.Ver 2.0,2001.

猜你喜欢
双口客户机电平
双口RAM在航天伺服系统中的应用
Matching mechanism analysis on an adaptive cycle engine
NPC五电平Z源逆变器的设计研究
基于三电平光伏并网逆变器控制系统的研究与实践
基于NPC三电平变换器的STATCOM研究
双口RAM读写正确性自动测试的有限状态机控制器设计方法
双口RAM在无人机三余度飞控计算机数据交换中的应用
一种多电平逆变器及其并网策略
瘦客户机:安全与便捷的选择
升腾瘦客户机借神码翱翔“云端”