论文网首页|会计论文|管理论文|计算机论文|医药学|经济学论文|法学论文|社会学论文|文学论文|教育论文|理学论文|工学论文|艺术论文|哲学论文|文化论文|外语论文|论文格式
中国论文网

用户注册

设为首页

您现在的位置: 中国论文网 >> 计算机论文 >> 通信技术论文 >> 正文 会员中心
 计算机应用论文   计算机理论论文   计算机网络论文   电子商务论文   软件工程论文   操作系统论文   通信技术论文
基于Delphi及串行通信实现的某型地面维护系统

基于delphi及串行通信实现的某型地面维护系统

串行通信作为一种灵活、方便、有效的通信手段,被广泛应用于工业控制。在工业生产实践中,用pc机和单片机或plc工控机组成的系统对工程进行实时监控,完成数据采集、数据处理以及控制信号的产生与传输等功能。此时,pc机要与过程控制的实时信号相联系,就要求能实现对pc机的串行端口进行操作。准确快速地完成这些功能,了解多路串行通信原理是关键。
  论文联盟http://
  1基于windows的串行通信机制
  windows操作系统的机制禁止应用程序直接访问计算机硬件,其通信机制是使用windows提供的串行通信api函数和设备控制块(记录块dcb),用户采用多线程技术来实现多路串行通信。在windows中,操作系统为每个通信设备开辟了用户可定义大小的读/写缓冲区,数据进出通信口均由操作系统后台完成,应用程序只需对读/写缓冲区操作即可。
  它为程序员提供了一系列的标准api函数,屏蔽了对通讯线控制器uart的编程及其它操作,其中几个常用的串行通信操作函数如下:creatfile打开串行口;closehandle关闭串行口;setupcomm设置通信缓冲区的大小;readfile读串口操作;writefile写串口操作;setcommstate设置通信参数;getcommstate获取默认通信参数;clearcommerror清除串口错误并获取当前状态。
  2系统实现
  在某型地面维护系统中,采用军用加固便携式计算机为平台进行开发,利用扩展io板卡、rs422a通讯口及相应接口,通过专门开发的维护软件,进行数字式电子控制器交互式维护,具有良好的接口、功能扩展能力,具有友好的用户界面及完善的即时帮助;以直观、易用的操作模式支持数字式电子监控系统调试、检测,发动机的内、外场联调、试车,数据修改、下载、分析等功能。WwW.11665.COM
  2.1系统硬件结构
  系统由一台上位机(即定制的便携式电脑,其中集成了扩展i/o板卡、rs422a串行通讯口及航空插头),一台电子控制器(含下位机a、下位机b和a/d转换器)及定制的22芯15米屏蔽电缆组成。上位机主要是供用户设置发动机参数,存储、处理控制器发送出来的数据,对数字式电子控制器进行交互式维护;下位机是一台数字式电子控制器,该控制器采用texas instruments公司研制的军档数字信号处理器(dsp)smj320f240芯片,并集成有模拟/数字转换器adc、数字/模拟转换器dac,频率/计数器f/d、数字量输入/输出电路di/do及 rs422串行通讯口等接口电路。系统硬件结构见图1。
  2.2系统软件功能模块
  地面维护软件采用模块化设计的方法,总体功能其划分为9个模块:
  1)用户权限认证、管理模块(csc-1):验证用户身份,防止非授权用户使用该系统,并
  按照用户的使用情况进行分级保护,防止越级操作。
  2)对电子控制器的上电、复位、故障模拟及运行模式设置模块(csc-2):通过虚拟仪器面板上的按钮、开关等控件,控制io板卡输出信号,进行电子控制器的上电、进监控状态、复位、故障模拟、通讯通道切换及运行模式设置。
  3)电子控制器实时通讯、管理模块(csc-3):保证与电子控制器进行可靠快速的数据传输。
  4)实时数据采集、示波、存储模块(csc-4):对控制器当前的各种状态进行直观的显示,其中包括64个控制器运行状态信号、29个开关量输入信号、24个开关量输出信号、8个飞控信号、4个频率量信号和14个模拟量信号,还包括当前控制器的各种技术参数的显示。
  5)电子控制器飞行记录数据下载、存储模块(csc-5):将控制器在飞机飞行过程中记录下来的数据从存储器中下载到地面计算机中,然后可通过维护软件的回放功能查看发动机在飞行过程中的各种状态。6)维护数据检查、修改、固化模块(csc-6):高级用户可对电子控制器当前的各种参数进行查看,并可对参数进行适应性的修改。7)记录数据回放、分析模块(csc-7):地面维护软件提供对保存数据的回放功能,用以重现控制器在飞行过程中的各种状态,使维护人员更准确的判断控制器和发动机的状态。
  8)生成用户维护日志模块(csc-8):由于对控制器参数的修改直接影响到控制器的正常运行,该软件对维护过程中修改的每个参数都做了详细的记录,并生成日志文件,保证操作的可追溯性。
  9)数据转换成通用数据库格式模块(csc-9):将保存下来的发动机参数数据转换为通用数据库的格式,要求将所有参数按规律转存为microsoft excel格式,以便打印及进行数据处理。
  2.3通讯协议设计
  地面维护设备与电子控制器之间通过一路全双工的rs-422a串行总线通道进行通讯。
  2.3.1通讯描述
  当电子控制器上电完成初始化过程和pob后,进入信息交换状态,开始发送/接收数据帧。通讯开始后,电子控制器按照周期50ms的周期向地面维护设备广播式发送74字节长的数据包,当地面维护设备收到电子控制器发来的同步头后,马上向电子控制器按应答方式发送一帧12字节的维护数据,通讯模式如此循环进行。
  2.3.2接口方式
  地面维护设备与电子控制器之间接口采用全双工的rs-422a串行总线接口进行通讯,地面维护软件自动检测出计算机中可用的rs-422a串行总线接口,并设置可用串口为可选项,当计算机中的某个串口不可用时,可以设置成其他可用串口进行通讯,这样大大提高了地面维护软件的灵活性。
  2.3.3通讯速率
  默认通讯的波特率均为115200bps,为了使地面维护软件具有很好的移植性,特将地面维护软件的通讯波特率设置为可选方式,包括可选项19200bps、38400bps、57600bps和115200bps。
  2.3.4通讯周期
  电子控制器向地面维护设备发送数据的通讯周期为50ms。地面维护设备向电子控制器发送数据的通讯周期为50ms。
  2.4软件实现

转贴于论文联盟 http://

 本系统中地面维护程序是使用delphi7开发的windows窗体结构的应用软件,开发平台为windows2003服务器版和win? dows2000专业版。程序中利用第三方控件spcomm实现串口通信。
  地面维护软件实现对控制器传输出的数据进行解读,并以各种适合的方式直观地显示出这些数据代表的信号的状态;另外,对控论文联盟http://制器当前的技术参数进行适应性的维护或修改。要完成这些工作,地面维护软件首先要与控制器建立可靠、快速的通讯,两者之间通过一个全双工的rs422a串行通讯口进行实时数据交互,依靠上述通讯协议来保证通讯的可靠性和实时性,各个接口都正确并且硬件设备连接无误的情况下,两者可进行数据传输。
  地面维护设备与电子控制器之间建立通讯后,维护软件开始监听串口,当接收到控制器输出的数据后进行分析和处理。
  相关部分程序:
  commreceivedata函数:从i/o端口接收数据函数(srs-3.1.1)
  功能:接收和处理数据过程
  输入:从串口接收到的数据
  输出:程序界面上的各种显示(指示灯、波形、数据等)
  procedure commreceivedata(sender: tobject; buffer: pointer; bufferlength: word);
  var
  i,count: integer;
  receivebuffer:pframedata;
  begin
  receivebuffer := buffer;//从控制器缓存中读取数据
  for i:=1 to framelenght do
  begin
  framedata[i] := receivebuffer[i+4];
  savedatabuf[i] := receivebuffer[i+4];
  end;
  setevent(hevt);//设置系统内核事件,触发数据处理线程
  dealdata(framedata);//处理采集数据函数
  inc(pbarnum);
  pbr_runstate.position := pbarnum; //采集状态
  end;
  参数说明:buffer接收数据缓冲区;
  bufferlength接收数据缓冲区长度
  设计说明:采用独立线程设计数据的存储事件,以避免windows系统多任务工作对数据存储的干扰,充分保证保存数据的实时性和准确性。
  procedure tsavethread. savedata;
  begin
  currentindex := 1;//置当前索引号为1
  while not terminated and not application.terminated do
  begin
  waitforsingleobject(hevt,infinite);//阻塞线程
  readcount := readdata;//读数据函数
  if currentindex = 64 then//读满64*62字节则写入数据文件
  begin
  wcount := writeline;//执行写数据函数
  currentindex := 0;
  end;
  currentindex := currentindex + 1;//级链缓冲索引号加1
  end;
  end;
  参数说明:hevt数据保存线程内核事件
  3结束语
  该型地面维护系统已在的某型发动机地面试车、外场试飞、外场维护中都发挥了重要的作用,保存了大量的数据,为该型发动机的研制、调试、改良提供良好的数据保障。
  实践证明在delphi环境开发串口通信的程序具有灵活、方便、高效等特点,可解决该地面维护系统中串口通讯的可靠性和实时性、多线程实现数据的采集和处理、图形图象处理等关键难题,有很强的工程实用性。转贴于论文联盟 http://
  • 上一个计算机论文:
  • 下一个计算机论文:
  •  作者:伍斌 [标签: 串行通信 进程间通信 系统 时间 退出 ]
    姓 名: *
    E-mail:
    评 分: 1分 2分 3分 4分 5分
    评论内容:
    发表评论请遵守中国各项有关法律法规,评论内容只代表网友个人观点,与本网站立场无关。
    课堂教学中的讨论现象—基于群体动力学理论
    基于远程虚拟数字电路实验仿真技术的研究
    基于Si4432的散射式大气低能见度仪设计
    基于AT89C2051倒车防撞超声波报警系统设计
    基于ARM控制的1KW零电压零电流全桥DC/DC变换
    基于AHP的特殊电梯开发项目风险评价
    电网运行基于精细化管理的方式探讨
    基于公平视角的买方垄断市场信任机制实证研
    论基于Intranet技术的计算机通信网络的即时
    中国区域消费价格水平差异研究:基于面板门
    基于项目驱动模式下的“软件工程”教学改革
    基于软件工程开发的企业本体构建研究
    | 设为首页 | 加入收藏 | 联系我们 | 网站地图 | 手机版 | 论文发表

    Copyright 2006-2013 © 毕业论文网 All rights reserved 

     [中国免费论文网]  版权所有