新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 基于LabWindows/CVI虚拟仪器编程语言的飞行模拟器

基于LabWindows/CVI虚拟仪器编程语言的飞行模拟器

作者:时间:2012-08-12来源:网络收藏

1)数据采集模块 负责各种标准信号的采集,按通道传送给显示、存储模块,并对输入的波形信号进行同步,其中还包括硬件的初始化和采集参数的设置。

本文引用地址://m.amcfsurvey.com/article/185945.htm

  2)数据存储模块 按照规定的格式将采集到的数据存入数据库。

  3)数据显示模块 根据不同的需要实时显示模拟器航姿、仰角等参数以及波形、轨迹和各种谱图。

  4)数据分析模块 将采集回来的数据进行分析,和预设的数据相比较,进而算出调节量。采用的数据分析方法有:时域分析、频域分析、相关分析、回归分析、数理统计、趋势分析和高级分析等。

  5)仪表驱动模块 将控制数据发送至通道,产生各种调节仪器的控制命令。

  6)文件管理模块 提供数据输出、报表打印以及历史查询。

  7)数据库管理模块 实现对数据库中各类数据进行有效的管理,同时存放检测数据和结论,根据检测内容做出记录表单。

  8)报警模块 系统出现故障时报警,显示故障类型并启动保护措施。

  9)TCP通信模块 完成3D视景系统之间的通信。

  运5操纵负荷系统仿真系统采用该软件进行设计,其流程如图4所示。



  主程序完成初始化后,调用权限操作、采集、视景通信模块、控制(仪表驱动、操作机构、俯仰控制)等模块。并随时响应串口和键盘中断。为防止干扰,采集模块采用多次采集,去掉最大和最小数据,取平均值的方法。经采集所取得的数据经由存储模块和显示模块存入数据库并显示于面板,需要的时候可以通过数据库管理模块和文件管理模块进行查询和打印。另外,根据采集的数据信息便可通过仪表驱动模块完成操纵机构、俯仰控制等功能。

  2.2.2 软件编程中的关键模块

  1)俯仰控制模块 函数int ComWrt(int COMPort,charbuffer[],int count)通过串口COMPort向变频器发送控制命令,命令数据存储在存储器buffer[]中,数据长度为count字节。控制变频器的运行、停止、正/反转。

  函数void CRC_WrtFre(int FRECOM,unsigned int DValue,unsigned FreAdr,int Length_CRC)设定变频器的工作频率。通过串口FRECOM向变频器发送工作频率值Dvalue。

  调用:

  2)操纵机构控制模块 函数double sensor_com(int ID);功能说明:向传感器发送读取数据命令,读取和存储传感器输出的原始数据,并计算出传感器的位移量。计算方法为:

  3)仪表驱动控制模块 函数void da_send(int corn,intkahao,int channel,double da_sendata)用来发送电压表所需的电压值;函数double AD24(int COM,int CardID,int way,double*Val)用来采集电压,对于需要采集的电压进行采集并将其显示在面板上;函数void Relay(int comport,int cardlD,intchanelNum,char ctrldata[17])用来控制继电器的通断状态;函数void YB_High(double sjd_A)根据升降舵的变化来控制高度表和升降速度表的指示,其中YB_High为函数名,sjd_A为升降舵值;函数void YB_Airspeed(double ymg_V)根据油门杆来控制变频器的频率;函数void YB_Qhq(double Value)和void YB_Pq(double Value)分别是汽化器温度表和排气温度表的驱动函数,驱动变量为副翼;函数void YB_Wxdhizh(double Value)用来驱动无线电高度表,其中YB_Wxdhigh是函数名,Value为油门杆位置;函数void YB_Sy(double Value)三用表的驱动,其中YB_Sy为函数名,Value为油门杆位置;函数void YB_Dq(double Value)驱动大气温度表,其中YB_Dq为函数名,Value为油门杆位置。

  4)视景音响控制模块 函数void calculate()根据3个舵面和油门杆的数据计算视点位置的x坐标、y坐标、z坐标、俯仰角、滚转角、偏航角;函数void(*InitNet)(int fig),函数功能:初始化网络。初始化包括IP地址,端口号等信息;函数void(*SendFlightData)(int *)向视景计算机传送数据。

  函数void(*CloseNet)(int fig)用于关闭网络;函数void(*ChangeData)(float viewx,float viewy,float viewz,float thet,float gam,float psi)用于交换数据。将控制系统软件生成的数据FlyData传送到视景软件,实现数据的实时更新交换,这是实时通信的基础所在。

  3 结束语

  该系统以作为软件开发平台,以性能稳定、数据处理能力强大的工控机为硬件系统的核心,数据库技术和模块化相结合,大大缩短了系统开发周期,同时使得系统具有良好的可视性、交互性和扩展性。它能够完成飞行模拟器各个参数的采集、控制,并通过计算机的数据采集、参数控制、实时曲线、事故报警等画面,使操作人员能够了解机载设备的运行情况,及时发现和处理问题,测试功能齐全,防差错能力强,工作运行稳定可靠,用户界面友好,为飞行器装备的技术保障提供强大支持。

tcp/ip相关文章:tcp/ip是什么



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭