基于USB 2.0的便携式红外目标跟踪系统设计与实现
时间:12-25
来源:互联网
点击:
2.1 USB固件程序设计
固件程序是指运行在USB微控制器上的程序,本系统采用的USB微控制器为Cypress公司FX2LP系列中的CY7C68013A,他提供了对USB 2.0的完整解决方案。其内部集成了USB 2.O收发器、USB接口引擎、工作在48 MHz的增强型8051内核并带有2个通用异步收发器(uART)以及可编程接口控制逻辑。从端点F1FO可提供与众多通用接口如:ATA,UTOPIA,EPP,PCMCIA,DSP以及通用处理器的无缝连接。
USB微控制器是实现USB通信的核心,同时也是系统的内部通信中心。USB微控制器不仅要负责实时信息处理机与主机USB通信,同时还要负责与伺服转台、热像仪、预留扩展接口等的通信。为了实现稳定闭环跟踪,实时信息处理机处理结果中包含的目标脱靶量必须以50 f/s的速率实时地传送给伺服转台,此传输不能受主控计算机与实时信息处理机USB通信的影响。由于windows操作系统本身多进程与USB传输的主从式工作原理,主控计算机之间的USB传输常被其他进程打断,导致USB传输速率下降,无法保证当前图像与目标信息以50 f/s的恒定速率实时传输给主控计算机显示。本系统中USB微控制器利用内部集成的强型805l内核通过对其可编程接口控制逻辑的合理设计和芯片内部F1FO的有效运用,根据本系统各种数据传输对时间、速率和可靠性的不同要求灵活运用控制传输、中断传输和批量传输,保证上述各种通信过程互不影响,有效地保证伺服转台的闭环跟踪性能。其固件程序流程图如图2所示。

2.2 USB驱动程序设计
USB总线的驱动程序是运行在便携式计算机上并实现对其内嵌的LISB控制器进行控制,USB总线的驱动程序由USB主机控制器驱动,USB协议栈(包括总线管理、设备管理、多主机控制器管理等工作),USB设备驱动程序(实现对特定类设备的配置管理、数据传输管理)3部分组成。Microsoft提供的一组驱动程序占据了系统软件的底部。这些驱动程序包括主控制器驱动程序(OPENHCI.SYS或者UHCD.SYS)、HUB驱动程序(USBHUB.SYS)和一个类驱动程序(USBD.SYS),由控制器驱动程序使用。把USBD下面的所有驱动程序看成一个整体,本系统设计的设备驱动程序主要与这个整体进行交互,占据系统软件的顶部,管理着硬件连接和管道通信。设备驱动程序的工作就是把客户软件的请求翻译成USBD能执行的事务。
本系统的驱动程序的功能就是在固件程序的配合下完成USB控制、数据传输、电源管理和固件加载。具体而言,设备功能驱动程序需要完成的工作分别为:初始化;创建和删除设备;处理win32打开和关闭文件句柄的请求;处理控制传输的请求;处理中断传输的请求;处理批量传输的请求;固件加载;处理一个可热插拔设备被添加或删除的情况;处理电源管理的请求。
3 实时信息处理机硬件设计
实时信息处理机是红外自动目标检测跟踪系统的关键部分,他实现对红外热像仪数据的获取,对图像中的目标进行实时检测,并将目标信息如脱靶量等传递给伺服控制系统及外部扩展接口。同时,该分系统还负责热像仪、伺服控制分系统、主控计算机及扩展接口之间的通信。 热像仪图像大小为320×256,帧频为50帧/s,通过对目标检测跟踪算法的分析可知:其数据量大且图像处理算法运算量大,而系统对实时性的要求高。以上这些特点对硬件平台的设计提出了很高的要求。国内一些同行在实时图像处理机的设计中采用了DSP阵列结构[3.4],用多块
DSP协同工作来提高处理
机的实时处理能力。由于本文设计的便携式红外目标自动检测与跟踪系统实时信息处理机的体积和功耗受到严格限制,在对各方面因素进行综合考虑的基础上,结合处理算法的动态可变和可重构特点,根据目标信息处理的基本流程设计了基于单片DSP+FPGA的实时信息处理机硬件平台,发挥DSP和FPGA各自的优势,合理划分处理任务,使得效率和灵活性得到充分提高。其结构框图如图3所示:
其结构框图如图3所示:
来自热像仪的14位差分数字图像经过电平转化,通过FPGA进行自适应偏置校正和增益校正拉伸处理后,缓存入FIFO中。当FIFO存满一帧图像时中断DSP,DSP将图像数据读入内部RAM空间进行处理。处理完成后,DSP将处理结果以及图像数据通过USB总线传送至主控计算机分系统。同时,通过扩展串口与伺服控制分系统、扩展上报接口、激光测距机及惯导陀螺仪接口等外部接口通信。
根据信息处理数据量及处理速度的要求,分系统中的DSP采用TI公司的TMS320C6416T,他是专门针对图像处理的一款高速定点处理器,其内部有8个并行的处理单元,体系结构采用超长指令字结构(VL1w),芯片的工作主频可以达到1 GHz,当片内8个单元同时运行时其最大处理能力可以达到8000 MIPS;FPGA采用Xilinx公司的Virtex一Ⅱ系列,是业界先进的适合数字信号处理应用的FPGA。其强大的可编程功能和内置硬件乘法器为完成一些较复杂的图像处理操作提供了强大的资源和结构支持,外部大量的I/O管脚使之能够提供多套数据和地址总线,利用该资源可以完成数据获取中边读边运算边存储的功能,从而大大节省数据访问的时问。
图4左侧为实时信息处理板实物照片,信息处理板尺寸仅为1lO mm×8l mm,内置于右侧热像仪机壳中。

在实时信息处理机中,DSP软件需要完成3项任务:从FIFO中导人图像数据、按照算法流程对图像进行处理、将处理结果通过L7SB微控制器传送给伺服控制及主控计算机如图5所示。此3项任务具有一定的独立性,需要妥善处理以下2个同步问题:

首先,来自热像仪的图像帧频为固定的50帧/s,即相邻两帧图像之间的时间间隔为20 ms。DSP对图像的处理时间因目标类型以及背景复杂度不同而略有变化。通常在背景非常复杂、虚警干扰过多的情况下,DSP处理一帧图像的时间会偶尔超过20 ms。这种情况出现的时候,系统的稳定性不应受到影响。
另外,此类问题还存在于DSP处理结果及目标图像与主控计算机的传输中,Windows操作系统的结构和工作方式决定了其实时性较差,在该系统中表现为,主控计算机端软件通过LISB总线从图像处理板读取一帧数据的时间无法确定。经测试,读取一帧数据的耗时最快可小于8 ms,最慢可大于200 ms。因此,在DSP软件中必须采取措施隔离图像处理进程与USB传输进程,使USB传输超时不会影响图像处理帧频。除了解决2个协同问题之外,还必须采取诸多优化手段保证DSP对图像的处理速度。只有经过良好优化的DSP代码才能有效利用DSP具有的各种资源,充分发挥DSP特有的优势,最大限度地满足系统实时性的要求。
固件程序是指运行在USB微控制器上的程序,本系统采用的USB微控制器为Cypress公司FX2LP系列中的CY7C68013A,他提供了对USB 2.0的完整解决方案。其内部集成了USB 2.O收发器、USB接口引擎、工作在48 MHz的增强型8051内核并带有2个通用异步收发器(uART)以及可编程接口控制逻辑。从端点F1FO可提供与众多通用接口如:ATA,UTOPIA,EPP,PCMCIA,DSP以及通用处理器的无缝连接。
USB微控制器是实现USB通信的核心,同时也是系统的内部通信中心。USB微控制器不仅要负责实时信息处理机与主机USB通信,同时还要负责与伺服转台、热像仪、预留扩展接口等的通信。为了实现稳定闭环跟踪,实时信息处理机处理结果中包含的目标脱靶量必须以50 f/s的速率实时地传送给伺服转台,此传输不能受主控计算机与实时信息处理机USB通信的影响。由于windows操作系统本身多进程与USB传输的主从式工作原理,主控计算机之间的USB传输常被其他进程打断,导致USB传输速率下降,无法保证当前图像与目标信息以50 f/s的恒定速率实时传输给主控计算机显示。本系统中USB微控制器利用内部集成的强型805l内核通过对其可编程接口控制逻辑的合理设计和芯片内部F1FO的有效运用,根据本系统各种数据传输对时间、速率和可靠性的不同要求灵活运用控制传输、中断传输和批量传输,保证上述各种通信过程互不影响,有效地保证伺服转台的闭环跟踪性能。其固件程序流程图如图2所示。

2.2 USB驱动程序设计
USB总线的驱动程序是运行在便携式计算机上并实现对其内嵌的LISB控制器进行控制,USB总线的驱动程序由USB主机控制器驱动,USB协议栈(包括总线管理、设备管理、多主机控制器管理等工作),USB设备驱动程序(实现对特定类设备的配置管理、数据传输管理)3部分组成。Microsoft提供的一组驱动程序占据了系统软件的底部。这些驱动程序包括主控制器驱动程序(OPENHCI.SYS或者UHCD.SYS)、HUB驱动程序(USBHUB.SYS)和一个类驱动程序(USBD.SYS),由控制器驱动程序使用。把USBD下面的所有驱动程序看成一个整体,本系统设计的设备驱动程序主要与这个整体进行交互,占据系统软件的顶部,管理着硬件连接和管道通信。设备驱动程序的工作就是把客户软件的请求翻译成USBD能执行的事务。
本系统的驱动程序的功能就是在固件程序的配合下完成USB控制、数据传输、电源管理和固件加载。具体而言,设备功能驱动程序需要完成的工作分别为:初始化;创建和删除设备;处理win32打开和关闭文件句柄的请求;处理控制传输的请求;处理中断传输的请求;处理批量传输的请求;固件加载;处理一个可热插拔设备被添加或删除的情况;处理电源管理的请求。
3 实时信息处理机硬件设计
实时信息处理机是红外自动目标检测跟踪系统的关键部分,他实现对红外热像仪数据的获取,对图像中的目标进行实时检测,并将目标信息如脱靶量等传递给伺服控制系统及外部扩展接口。同时,该分系统还负责热像仪、伺服控制分系统、主控计算机及扩展接口之间的通信。 热像仪图像大小为320×256,帧频为50帧/s,通过对目标检测跟踪算法的分析可知:其数据量大且图像处理算法运算量大,而系统对实时性的要求高。以上这些特点对硬件平台的设计提出了很高的要求。国内一些同行在实时图像处理机的设计中采用了DSP阵列结构[3.4],用多块
DSP协同工作来提高处理
机的实时处理能力。由于本文设计的便携式红外目标自动检测与跟踪系统实时信息处理机的体积和功耗受到严格限制,在对各方面因素进行综合考虑的基础上,结合处理算法的动态可变和可重构特点,根据目标信息处理的基本流程设计了基于单片DSP+FPGA的实时信息处理机硬件平台,发挥DSP和FPGA各自的优势,合理划分处理任务,使得效率和灵活性得到充分提高。其结构框图如图3所示:
其结构框图如图3所示:
来自热像仪的14位差分数字图像经过电平转化,通过FPGA进行自适应偏置校正和增益校正拉伸处理后,缓存入FIFO中。当FIFO存满一帧图像时中断DSP,DSP将图像数据读入内部RAM空间进行处理。处理完成后,DSP将处理结果以及图像数据通过USB总线传送至主控计算机分系统。同时,通过扩展串口与伺服控制分系统、扩展上报接口、激光测距机及惯导陀螺仪接口等外部接口通信。
根据信息处理数据量及处理速度的要求,分系统中的DSP采用TI公司的TMS320C6416T,他是专门针对图像处理的一款高速定点处理器,其内部有8个并行的处理单元,体系结构采用超长指令字结构(VL1w),芯片的工作主频可以达到1 GHz,当片内8个单元同时运行时其最大处理能力可以达到8000 MIPS;FPGA采用Xilinx公司的Virtex一Ⅱ系列,是业界先进的适合数字信号处理应用的FPGA。其强大的可编程功能和内置硬件乘法器为完成一些较复杂的图像处理操作提供了强大的资源和结构支持,外部大量的I/O管脚使之能够提供多套数据和地址总线,利用该资源可以完成数据获取中边读边运算边存储的功能,从而大大节省数据访问的时问。
图4左侧为实时信息处理板实物照片,信息处理板尺寸仅为1lO mm×8l mm,内置于右侧热像仪机壳中。

在实时信息处理机中,DSP软件需要完成3项任务:从FIFO中导人图像数据、按照算法流程对图像进行处理、将处理结果通过L7SB微控制器传送给伺服控制及主控计算机如图5所示。此3项任务具有一定的独立性,需要妥善处理以下2个同步问题:

首先,来自热像仪的图像帧频为固定的50帧/s,即相邻两帧图像之间的时间间隔为20 ms。DSP对图像的处理时间因目标类型以及背景复杂度不同而略有变化。通常在背景非常复杂、虚警干扰过多的情况下,DSP处理一帧图像的时间会偶尔超过20 ms。这种情况出现的时候,系统的稳定性不应受到影响。
另外,此类问题还存在于DSP处理结果及目标图像与主控计算机的传输中,Windows操作系统的结构和工作方式决定了其实时性较差,在该系统中表现为,主控计算机端软件通过LISB总线从图像处理板读取一帧数据的时间无法确定。经测试,读取一帧数据的耗时最快可小于8 ms,最慢可大于200 ms。因此,在DSP软件中必须采取措施隔离图像处理进程与USB传输进程,使USB传输超时不会影响图像处理帧频。除了解决2个协同问题之外,还必须采取诸多优化手段保证DSP对图像的处理速度。只有经过良好优化的DSP代码才能有效利用DSP具有的各种资源,充分发挥DSP特有的优势,最大限度地满足系统实时性的要求。
红外 电子 传感器 陀螺仪 GPS USB Cypress 收发器 DSP 总线 电源管理 FPGA MIPS Xilinx 相关文章:
- 一种新型防伪读码器的设计(01-01)
- 新型锁相环芯片全面提升红外无线麦克风产品性能(05-04)
- 2009视频监控:网络化及其推动的几大趋势(06-03)
- 红外摄像机夜视监控系统的四项问题(06-16)
- lns构架智能小区安防及关键技术应用研究(06-09)
- 英国试图利用路灯建城市监控无线网络(07-27)
