当前位置:首页 > 测试测量 > 测试测量
[导读]本文分析和研究了CSDB总线的协议,并介绍了通过计算机的RS-232串口及相应电平转换电路,基于LabVIEW7.1软件开发平台实现的计算机与UUT的双向通信。其中,支持通信的软件实现是关键。     图1 CSDB总线结构  

本文分析和研究了CSDB总线的协议,并介绍了通过计算机的RS-232串口及相应电平转换电路,基于LabVIEW7.1软件开发平台实现的计算机与UUT的双向通信。其中,支持通信的软件实现是关键。

  


 

  图1 CSDB总线结构

  CSDB总线协议简介

  CSDB总线体系结构的物理层规定了总线的机械特性和电气特性;数据链路层给出了数据帧的定义以及数据帧之间的定时要求,并对总线连接的各种航空设备的参数做出了详细的规定。

  物理层

  CSDB是单向广播式异步串行总线标准,它可以构成单信源、多接收器的传输系统。总线数据采用NRZ编码,全双工差分方式传输。CSDB信号的数据格式与RS-232-C标准完全相同,都为异步串行通信格式,即:一个起始位、八个数据位、一个奇偶校验位、一个停止位,其电气标准为RS-422-A。

  数据链路层

  CSDB总线是面向字节的传输协议,固定长度的字节组成消息块,再由一定长度的消息块组合成帧,封装在数据帧中的不同数据通过各自的地址字节加以区别,不同的数据帧之间通过同步消息块分割。CSDB总线数据结构如图1所示。

  在图1中,消息块(Message Block)的第一个字节Byte 0称为标识 (或地址),消息块都是通过标识来区分的。消息块的长度是固定不变的,为6字节。CSDB采用的是异步串行传输方式,通过起始位和停止位完成字节的位同步,因此,在编码中不必带有时钟信息。帧同步通过识别同步消息块6个字节的十六进制“A5”来实现,同步消息块标识了每个数据帧的开始位置。

  其中:t1=帧时间长=1/最大更新率

  t2=消息块间隙时间长(无限制)

  t3=总线空闲时间(最小11bit的时间)

  t4=字节间隙时长(无限制)

  CSDB总线信号测试

  测试原理

  对CSDB总线信号进行测试,是先将CSDB信号电平转换为和计算机适应的RS-232电平,再根据CSDB总线的规则,实现对控制信息的正确发送和实时反馈信息的正确接收,并根据需要,将有用信息提出送测试系统处理,完成对航空机载设备的自动化测试。具体步骤分为信号电气转换、通信同步、LabVIEW实现。

  

 

  图2 CSDB总线信号通信原理框图

  通信配置

  (1)电气转换

  CSDB总线信号经过电气转换芯片后直接与计算机进行串口通信。在进行RS-422-A到RS-232的电气标准转换时,使用MAX488全双工电平转换芯片。

  (2)通信同步

  CSDB总线为异步串行通信,按照串行数据传输的基本原理,实现正确通信的基本条件是保持接收和发送双方时钟一致,以避免发送与接收双方的数据位宽产生累积误差,造成不能正确检测到总线数据。在串行通信中,信息是按位传送的,传送速率用波特率表示,数据的发送和接收受各自的时钟控制,因此,发送方和接收方的波特率应保持一致。经对具体部品测试,CSDB数据总线数据波特率为12.5Kbit/s,为与此同步,要求计算机产生的波特率也应为12.5Kbit/s。

  如图2所示,在计算机中负责串行通信的器件为8250异步通信适配器(UART),或其兼容元器件,程序通过对8250内部的寄存器读写来控制通信模式,8250使用频率为1.8432MHz的基准时钟输入信号作为主数据时钟,通过对8250内部寄存器置位来获得需要的波特率。在异步串行通信中,为防止由于信号畸形、不同步等原因造成对数据的误读,通信适配器规定每读取或发送1bit数据至少要用16个时钟脉冲来控制其波特率,实际应用中波特率时钟是主时钟的1/16或1/(16×N),对于要求的波特率,在写寄存器时用如下公式计算除数因子:

  除数因子=(主数据时钟频率/16)/波特率=115200/波特率

  在算出除数因子后,将相应数据写入8250内部的波特率设置寄存器,即可在串口得到相应波特率的数据。经计算,115200除以12500后不为整数,所以,受到计算机异步通信适配器8250的限制,在波特率设置上不能完全和12.5Kbit/s相同,经计算,当除数因子取9时对应的波特率为12.8Kbit/s,与CSDB总线要求的波特率最为接近,其每bit占据78?S,相对80?S/bit(12.5Kbit/s)误差为0.25%,小于串行通信波特率最大容许误差5%,理论上可实现通信同步,因此在程序上将通信的波特率设置为12.8Kbit/s。

  基于LabVIEW7.1的总线通信

  用LabVIEW7.1编程来实现总线通信时,用户不必对GPIB,RS-232,VXI等硬件有专门的了解,LabVIEW为用户提供了标准的I/O接口函

  数库,在Lab VIEW的Functions→All Functions→Instrument I/O中提供了GPIB、串口通信等各种函数模块,为实现串口通信提供了便捷的实现方法。软件流程如图3所示。

  

 

  图3 串口通信软件流程图

  软件设计中的关键问题及解决方法

  (1) 发送数据帧结构多样化解决方法

  通过对系统中不同部品的实际测试发现,由于其互联情况不同,相应部品控制码的帧结构也不尽相同,同步字后跟1~4个控制消息块不等,而在自动化测试系统中要求此通信软件具有通用性。为此,将发送程序中控制消息块接口设为最大(4个),当程序检测到某一接口有数据输入时就发送此数据,若没有,则以相等长度的延时替代。这样,在保证所有数据帧周期相同的情况下,满足了不同部品控制码的不同要求。

  (2) 接收数据多重校验

  数据接收程序中,LabVIEW要求设置接收数据缓冲长度,程序在接收此长度数据后才能进行后续处理。实际程序运行后发现,如缓冲长度仅为一帧(24×8bit),接收数据有可能误接收。为避免此情况,将缓冲长度设置为一帧字长的4~6倍,在接收到数据后,再根据同步字、标号等多重匹配原则进行验证后将数据取出,再将4~6组数据相比较,如相同,则认为数据可信,如不相同,则认为数据不可信。

  结语

  作CSDB总线数据测试时,可以方便通过界面改变需要发送的数据,接收的数据也可实时显示出来,便于测试分析。把此程序封装成一个子函数模块,可应用于某航空无线电自动测试系统中,基于对CSDB总线的收发控制,成功实现了VIR-32导航接收机、VHF-22 甚高频电台等相关产品的自动测试。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

功率器件是一种专门用于控制、调节和放大电能的电子元件,主要用于处理大功率电信号或驱动高功率负载,如电机、变压器、照明设备等。

关键字: 功率器件 控制 放大电能

NI提供的软件包经济省时,不仅帮助开发人员节省时间,还为创客提供了新的机遇

关键字: LabVIEW 自动化测试系统

机器人是一种集成了机械、电子、控制、传感、人工智能等多学科先进技术的自动化装备,能够模仿或替代人类进行各种任务的设备。

关键字: 人工智能 电子 控制

在这篇文章中,小编将对USB接口的相关内容和情况加以介绍以帮助大家增进对USB接口的了解程度,和小编一起来阅读以下内容吧。

关键字: USB 通用串行总线 总线

伺服电机是一种高精度、高性能的电机,广泛应用于各种自动化控制系统中。控制伺服电机是实现自动化控制的关键环节,不同的控制方式具有不同的特点和适用场景。本文将介绍几种常见的伺服电机控制方式及其特点,并分析在实际应用中应注意的...

关键字: 伺服电机 控制 自动化

今天,小编将在这篇文章中为大家带来嵌入式总线技术的有关报道,通过阅读这篇文章,大家可以对嵌入式总线技术具备清晰的认识,主要内容如下。

关键字: 嵌入式 总线

强大的图形化编程工具使整个测试和测量过程的各个方面实现可视化

关键字: LabVIEW 图形化编程工具

大连2023年9月20日 /美通社/ -- 日前,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(以下简称"TÜV莱茵")受...

关键字: 控制 医疗服务 HEALTH 信息安全

 上海2023年9月7日 /美通社/ -- 近期,“国家卫生健康委国际交流与合作中心·因美纳公共卫生教育奖学金”项目(下称,“公共卫生教育奖学金”)完成首批奖学金颁发。该项目是由国家卫生健康委国际...

关键字: BSP 控制 组网 网络建设

张家港2023年8月25日 /美通社/ -- 对于塔机买家,需求的不仅仅是塔机的功能性,还有塔机的耐用性和残值。在这方面,波坦塔机以其卓越的品质和持久的稳定性,成为了一个值得信赖的选择。 当你在考虑购买二手塔机时,你应...

关键字: BSP 控制 变频调速 应力
关闭
关闭