当前位置: 首页 > news >正文

LabVIEW与Space Wire配合开发

LabVIEW与Space Wire配合开发

Space Wire是欧洲航天局开发的一种高速、点对点、全双工的串行总线网络,以IEEE1355-1995和LVDS 两个商业标准为基础,汲取了1394技术、ATM技术、以太网技术的优点,同时考虑了空间应用的特点,在故障检测与时间确定性方面做了加强。Space Wire最高速度可以达到400Mbps,是目前在航天领域应用较广泛的高速数据总线,已成功应用于火星探测器“Mars Express”项目、彗星探测器“Rosetta Spacecraft”项目和地球环境遥感卫星“Cryosat”项目等。

Space Wire采用点到点连接的结构,在同一网络中可以同时使用多条总线,其网络拓扑具有很高的自由度。Space Wire得到较广泛的应用不仅是由于它是一种简单、可靠、低功耗数据传输技术,另外他也采用了符合当前数据传输发展方向的包交换技术。相比与CSMA/CD以太网、IEEE1394等总线型数据传输技术中数据速率不可能超过连接性能的情况,其优点是网络中节点的增加不会导致节点可用带宽的降低,为系统的扩展提供了充分的余地。

Space Wire网络是一种正在不断发展、完善中的高速数据传输技术,新的补充协议加入到协议簇中,新的应用产品也不断出现。这种采用交换机制的高速串行全双工技术为载荷数据处理系统向低功耗、可靠、可重用新结构的发展提供了有效的手段。

为了支持使用LabVIEW软件开发环境的客户,开发了LabVIEW库和驱动程序,允许将STAR-Dundee Space Wire接口设备快速集成到EGSE或测试和验证应用程序中。熟悉STAR-Dundee的STAR-SystemAPI套件的客户可以使用包装库来控制和配置Windows任何受支持的Space Wire接口设备。使用NI-VISA驱动程序,用户可以连接LabVIEW支持的任何平台上的STAR-Dundee Space Wire PCI和cPCI板。

Space Wire电子结账和地面支持设备的设计既昂贵又耗时。为了帮助缓解这个问题,提供了许多测试和开发设备,可用于传输和接收Space Wire流量,并在网络上配置和监控设备。用户可以使用提供的强大API编写自己的自定义应用程序。

软件将STAR-Dundee设备与LabVIEW相结合,可提供一种快速开发Space Wire测试应用程序的方法。

作为LabVIEW允许快速开发方式的一个例子,比较选择所需Space Wire设备所需的C代码量,并将其链接速度配置为使用STAR-DundeeVISA驱动程序执行相同操作所需的代码:

提供了两个独立的LabVIEW解决方案:一个LabVIEW封装围绕现有的STAR-系统库,另一个基于本地LabVIEWNI-VISA驱动程序,可用于LabVIEW支持的所有目标。

STAR-System是所有新的和未来的STAR-Dundee接口和路由器设备提供的驱动程序和API系统。STAR-System提供高带宽和低延迟的数据包传输和接收,以及适用于多种设备类型的一致API接口。支持的设备包括Space Wire USB Brick Mk2和Router Mk2s,以及PCI Mk2和PCIe板。

STAR-System LabVIEW封装提供了对STAR-System CAPI导出的每个函数的访问,并包含了许多示例VI,这些VI可实现常见的SpaceWire任务,例如设置路由表、发送和接收时间码以及配置链路速度和状态。还提供了RMAP数据包库以及RMAP目标和发起方的示例实现(如图2所示)。

使用STAR-System封装器,LabVIEW应用程序可以与主机上运行的其他STAR-系统进程共享数据。例如,使用STAR系统设备配置GUI设置的设备名称,可以通过在所有正在运行的进程中进行查看或修改。这可以帮助用户快速识别和选择要使用的所需设备,而无需查找序列号。

CAPI的复杂性已尽可能抽象化。无需手动分配内存即可发送和接收数据包;这由包装器处理,其中的分组数据缓冲器以LabVIEW字节数组形式提供。LabVIEW事件用于实现设备侦器和传输完成事件。

LabVIEW封装器的性能与未包装的STAR-系统性能相比具有优势,在发送和接收长度大于60字节的包时性能数据大致相同。这些数字是针对200Mbit/s的链路速度,表明性能接近最大理论数据速率(160Mbits/s)。

NI VISA在硬件和LabVIEW等开发环境之间提供了标准的编程接口。STAR-Dundee Space Wire NI-VISA驱动程序已作为本地LabVIEW驱动程序实现,为STAR-Dundee PCI系列设备提供支持。为控制这些设备而编写的软件可以部署在任何支持cPCI/PCI和NI-VISA的硬件平台上,包括基于Windows的主机和LabVIEW实时目标,而不需要修改源代码。该软件作为LabVIEW源提供,带有密码保护框图,可让用户针对任何目标进行编译。

该驱动程序允许使用NI MAX工具检测和控制STAR-Dundee Space Wire PCI卡。

该驱动程序设计为直观的LabVIEW用户。例如,设备访问遵循熟悉的“打开,执行操作,关闭”,LabVIEW阵列用于传递SpaceWire数据以发送和接收函数。示例实现软件环回设备:数据包在设备的一个端口上接收,然后从另一个端口环回。通过检查接收到的流量并以某种方式对其进行排列,可以轻松地将此示例扩展为有用的工具,例如在重新传输出另一个端口之前插入或删除时间码或注入错误。

LabVIEW的STAR-System封装器支持当前STAR-System库提供的所有功能。此包装器将不断升级以支持任何新功能,并与新的STAR系统版本同时发布。

NI-VISA驱动程序目前能够发送和接收Space Wire数据包,并配置Space Wire链路。RMAP数据包库 将移植到本地LabVIEW代码,从而可以与LabVIEW RT目标上的NI-VISA驱动程序一起使用。还将添加错误注入支持,允许用户在数据流中的给定字节上注入奇偶校验错误,以及STAR-SystemAPI提供的所有设备配置操作。目前,此驱动程序仅支持cPCI/PCIMk2卡,但可以通过重用现有的顶级API快速开发USB驱动程序。

LabVIEW是一个软件开发平台,可快速开发测试和测量应用程序。STAR-DundeeSpaceWire设备的用户可以使用现构建的Space Wire封装库和驱动程序,从而利用LabVIEW的功能,从而减少开发测试和验证工具的时间和成本。

这是LabVIEW的一个简单应用,更多的开发案例,欢迎登录北京瀚文网星官,,了解更多信息。

http://www.lryc.cn/news/93076.html

相关文章:

  • 开始使用chat-gpt4
  • 算法之贪心算法
  • Maven 基础
  • 算法刷题-哈希表-两数之和
  • kotlin学习(一)基本概念、数据对象类型、控制流程、空值检验、类与接口
  • 【Linux】Docker部署镜像环境 (持续更新ing)
  • Jtti:如何打开云服务器的8082端口
  • 有关 string 类的练习(下)
  • XuperChain搭建+报错+注意事项
  • 【伏羲八卦图】(PythonMatlab实现)
  • ruoyi数据权限学习
  • WPF中实现动态导航
  • day16 | 104.二叉树的最大深度、111.二叉树的最小深度、 222.完全二叉树的节点个数
  • Spring Boot + Vue3前后端分离实战wiki知识库系统<八>--分类管理功能开发二
  • Python入门(十八)类(一)
  • c# 从零到精通-定义一个结构
  • 检信ALLEMOTION非接触式心理情绪测评系统
  • 20道嵌入式经典面试题(附答案)
  • python学习-代码调试器
  • 第十一章 综合推理
  • 嵌入式开发之设置寄存器中指定位
  • 第十章 数学相关
  • 数据结构——串(字符串)
  • Seata服务端的启动过程 学习记录
  • Log4J
  • 【零基础学机器学习 5】机器学习中的分类:什么是分类以及分类模型
  • 目标检测算法:Faster-RCNN论文解读
  • 基于Python的接口自动化-Requests模块
  • Vue框架中监测数组变化的方法
  • PHP isset()函数使用详解,PHP判断变量是否存在