嵌入式
返回首页

基于RS-232总线的测控系统开发

2016-04-25 来源:eefocus

引言

    在飞机飞控系统地面模拟试验中,常常需要函数信号发生器、动态分析仪等传统仪器给被测系统注入正弦、阶跃和扫频等信号。这些仪器往往存在着操作比较繁琐,容易误操作引起系统损坏等现象,这不仅影响试验的效率,还大大降低了试验的安全性。因此,如果能用相应的软件控制这些传统仪器的话,不仅可以提高工作效率,还可通过软件提示对误操作发出告警信息,使试验的安全性得到保障。RS-232(RecommendedStandard-232,推荐标准)可把这些可编程的传统仪器与计算机紧密地联系起来,通过接口函数,对其进行二次开发,最终实现软件控制仪器的目的。

1 测控系统的硬件平台

    1.1 RS一232总线简介

    RS-232总线是串行数据接口标准,是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS(RecommendedStandard-232)是英文“推荐标准”的缩写,232为标识号,它规定了连接电缆、机械、电气特性、信号功能及传送过程。RS-232总线是PC机及工业通信中应用最广泛的一种串行接口形式。RS-232总线被定义为一种在低速率串行通信中增强通信距离的单端标准。

    1.2 RS-232测控系统构架

    典型RS-232总线测控系统由PC和若干台带有RS-232总线接口的仪器通过RS-232总线连接而成。本文描述的测控系统主要由固纬公司生产的GFG-3015型的函数信号发生器组成。GFG-3015装设一个9个脚位公头的RS-232接头,以便连接计算机或终端机。本机的RS-232接口为一数据终端机设备(Data Terminal Equipment,DTE),从第三脚位(Pin3)传送数据,第二脚位(Pin2)接受数据。其具体接线如图1所示。

    连接的注意事项:

    1)请勿连接一个DTE设备的输出线到另一个设备的输出线。

    2)确定仪器的接地信号连接到外部设备的接地信号。

    3)确定仪器的外壳连接到外部设备的外壳接地。

  

    图1仪器与计算机的接线图

    4)连接到计算机的线统不超过15M。

    5)确定使用在设备上的RS-232设定与使用在计算机终端机上的相同。

    6)的仪器需要在一个或一个以上的输入脚位上接高位准信号。

2 LabWindowsICVI环境下的软件开发

    2.1 GAG-3015型函数发生器二次开发的基础

    GFG公司将GFG-3015面板上的所有键盘功能都以指令的形式向用户开放,用户可根据需要查找相应的指令进行编程,从而实现对仪器的二次开发。若要使指令传送到仪器,必须包含三个基本要素。

    1)命令表头((Command header)

    命令表头以命令树形成一个阶层的构架。最顶层是根命令,根节点(Root node)位于此处。根节点和第二层或更下层形成一个路径可通往最后一层(leaf node)。命令表头是由表头路径和leafnode所架构成的,其构架如图2所示。

    2)参数(Parameter,如果需要的话)

    命令若有参数,必须包含数值。命令的语法所定义的参数以“◇”双箭头符号来表示。如图3命令的语法包含Boolean参数类型。

    3)结束或分偏信息(Message terminator separator)

    由于RS-232总线没有结束信息的信号,因此使用LF(Line Feed, 0 * OA,或ASCII\n)来结束信息。一串的命令被送到仪器时,必须要增加一个LF做为结束信息的判断。至于查询命令,仪器所回复的信息也要加一个LF以便计算机可以判断是否结束信息。

  

    图2 命令表头树构架

  

    图3 含有参数的表头命令
 

    2.2 LabWindows/CVI环境下的RS232库接口

    LabWindows/CVI提供了丰富的RS-232函数库。用户只要将仪器与计算机正确相连,同时开启仪器RS-232的远程控制端(按仪器面板上蓝色的RS-232按钮,仪器会显示ON),无需安装任何驱动函数,便可通过LabWindows/CVI提供的RS-232库函数实现计算机对仪器的控制。

    2.3侧控软件的实现

    函数库中包含了六类函数:打开1关闭串口(Open/Close)函数、串口输入输出(Iuput/Output)函数,调制解调文件传输(XModem),串口控制(Control)函数、串口查询((Status)函数、串口事件处理(Callbacks)函数以及串口扩展事件(Extension)函数。实现串口通讯的步骤如下:

    1)打开发送端和接受端串口,分别对串口参数进行设置。

    2)利用串口接收和发送数据。

    3)关闭串口,结束程序。   

    首先,设置计算机的通信端口、波特率等参数,如“OpenComConfig”)“1,”,9600, 0, 8,1, 512,512),使得计算机通信端口的参数和仪器保持一致。然后,要保证计算机和仪器通讯正常,可将查询命令“*iDN?In”送到仪器,若仪器返回"15MHz, Function Generator, V 1.20”的字符串,表明仪器与计算机已经连接成功。上述两步骤完成后表明仪器已经与计算机正常连接,且之间的通信也正常。接着,可调用各种RS-232的库函数并结合仪器的指令实现软件对仪器的控制,如设置仪器发送三角波功能:

    wave_tyPe[U]=“\0”,

    str(cat(wave_type,":FUNCtion:WAVeform 2\n");

    ComWrt(1, wave_type, strlen(wave-type));

    FlushIaQ{1);//清空物入钧出队列

    FlushOntQ(1);//清空物出输出队列

    Dewy (2);//延迟两秒。保证指令能被仪器执行

    要注意的是由于仪器本身接受指令带要一定的时间,所以每两个输入仪器的指令间必须间隔2s,以保证仪器对指令的响应时间。这样可实现计算机对仪器的控制功能,包括发送正弦、三角波、方波、阶跃信号和扫屏信号等。软件界面如图4所示。

 

图4 软件界面图

3 结论

    本文开发了基于RS-232总线的测控系统,解决了便用传统仪器存在的问题。在试验过程中,该侧控系统人机对话界面友好、操作简单,极大的减轻了试验人员的工作负担,提高了试验的效率。同时,通过控制软件的告苦功能,能进免由于试验人员误操作造成对被侧系统的损坏,充分保障了试验的安全性。目前,该系统广泛应用于飞机飞控系统地面模拟试验及机上地面试验中。

进入嵌入式查看更多内容>>
相关视频
  • PX4固件二次开发课程

  • RISC-V嵌入式系统开发

  • NuttX Workshop 2024

  • 自己动手写操作系统

  • SOC系统级芯片设计实验

  • 自己动手做一台计算机

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • PIC单片机控制的遥控防盗报警器电路

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 如何构建一个触摸传感器电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章