分享好友 方案首页 频道列表

基于VC++的机车数据监控系统———基于VC++的机车数据监控系统

2012-04-15

摘 要:机车数据监控系统运用VC++实现了对一内燃机车运行数据的实时监控。通过计算机的串口传输内燃机车数据仪中采集到的各种数据,如机车型号、机车类型、累计运行时间等等,监控机车的运行状态以实现对机车的控制。设计的重点在于系统管理的软件方面,具体来说是系统上位机的设计。以MFC (Microsoft Foundation Class Library)思路用类来实现串行通信和多线程编程, 并辅助以开放式数据接口(ODBC)在应用程序中实现数据库功能。

关键词:监控系统;串行通信;多线程;ODBC; MFC

Abstract: The Diesel Monitor System effects the real-time monitoring on the diesel with vc++6.0, which regulates data flow by correspondencing between two serial ports. All kinds of data acquired by data graphic instrument e.g. locomotive ID, locomotive type and cumulative run-time etc. is transmitted for monitoring and control the diesel. The important point in this design is developing upper machine. Using the conception of Class in MFC (Microsoft Foundation Class Library) to effect multi-thread and serial communication, and with auxiliary to ODBC (Open Database Connectivity) the application program can have database.

Key Words: Monitor system; Serial Communication; Multi-thread; ODBC; MFC

1 引言

  随着铁路信息化数字化的发展,提出了机车的在线实时监控,要求对车载设备的相关数据进行实时采集和存储。这对为技术人员提供及时准确的机车信息,保证列车运行的安全有着重要的意义。

  本文介绍一种基于VC++的机车实时监控系统,是由后台控制监控系统和前台采集系统所组成的一个分布式集成网络。当控制监控系统与内燃机车进行通讯,则后台控制监控系统显示计算机显示的就是机车数据记录仪采集到的各种机车数据。

2 功能分析

  2.1 上位机的软件功能主要有以下几点:

  1)与下位机(机车数据仪)进行通信,完成对下位机的读写;

  2)能够对数据进行有效的识别,提取数据中的有用信息(如机车型号,机车编号,机车标称功率等);

  3)对有效数据进行处理,能够以曲线或图表形式显示车辆运行状况;

  4)为数据的查找与定位提供方便的手段,便于局部数据分析;

  5)具有存档、打印功能。

  2.2 上位机主控程序功能划分:

 


3 软件实现

  3.1 通讯协议

  所谓通讯协议就是通讯双方为了达到正确传送和接收数据而达成的一组通讯规定。它包括发送/接收数据的格式、数据编写与解读方法以及通讯参数的设定。在通讯协议中,通讯参数的设定是通讯的前提,包括串口的选取,波特率设定,有无奇偶校验,数据位的位数,以及停止位的位数。下面介绍一下数据的格式和数据传送。

  数据格式: 定位数据从0开始。第0-第3字节=0x57, 0x77, 0x44, 0x4C为当量里程记录仪转储数据文件类型标识头;累计数据共176字节,占数据文件中的第24字节到第199字节;瞬时数据从第256字节开始,一直到结束,数据长度=瞬时数据的数据帧数×数据帧长;瞬时数据帧长包含帧校验码。文件尾占3字节=0x45, 0x4e, 0x44。

  数据传送:累积数据每176个字节数据为一个数据块;瞬时数据的数据长度=瞬时数据的数据帧数×数据帧长;瞬时数据帧长包含帧校验码。

  下位机每发送一个数据块,随即就发该数据块的校验和,如果检验和有误,就重发该数据块;如果数据未读完,重复本操作,直到数据读完。 命令中的校验占一个字节,[校验]=([命令]+[目标代码]+[数据].字节1+…+[数据].字节n)mod 0x100。执行结果返回值中的校验也占一个字节,[校验]=([执行结果代码]+[数据].字节1+…+[数据].字节n)mod 0x100。

  3.2 通讯流程

  监控系统与下位机(机车数据记录仪)的通讯只需用到以下几条命令:查询下位机硬件工作状态、查询下位机数据纪录状态、读累计数据、读瞬时数据、写数据。在上位机发出命令之前,下位机处于等待状态;当命令发出之后,下位机探测所发出的命令并判断该命令是否对自己操作。如果是,则按命令要求返回所要求的数据;如果不是,则不回应;下位机收到采集系统送过来的数据以后,对它进行分析和数据转换,然后进行显示和保存。

  将上位机的各种命令独立地建立一个类MasterCommand,就用来处理上位机向下位机发送的命令。以下是对这个类的定义。

  //命令码,命令码长度,命令显示字串,获取的数据长度/最大长度,数据放置起始位置,数据标识定义位置

  MasterCommand(ch ar *comCode, const int &comCodeLen, CString comDispStr, const int &getDataLen, const int &dataPos, const int &dataSignPos)

  {

  init(comCode, comCodeLen, comDispStr, getDataLen, dataPos, dataSignPos);

  }

  3.2.1 查询

  A. 查询下位机硬件工作状态

  用户通过串口发送命令,如果命令正确执行,则返回硬件的工作状态,根据数据交换

  命令集可以判断硬件工作得是否正常。程序将将硬件工作状态显示在用户界面上,让用户可以很方便地了解硬件的工作状态,如果发现硬件有工作不正常的状态,就可以对硬件进行相应的处理。

  B. 查询下位机数据纪录状态

  用户通过串口发送命令,如果命令正确执行,则返回下位机数

  据记录状态,根据数据交换命令集可以判断数据记录是否正常。如果数据记录不正常,用户也可以在界面上看到是哪方面出了问题,可以进行相应的处理。

  3.2.2 读数据

  A. 读累计数据

  用户在上位机发送读累计数据的命令,下位机收到命令后向上位机返回执行结果。执行结果返回值:[执行结果代码] [数据] [校验]。

  其中: [执行结果代码] 和 [校验] 均占一个字节。当命令校验失败或执行失败时,下位机只返回 [执行结果代码] 和 [校验] 码。累计数据一共占176个字节,在当量仪数据存储格式中对每一个字节都有详细的定义。在程序中按照格式将数据取出来,并在用户界面显示出来。在所有数据正确接收后用户可以选择保存数据,以供以后进一步地查看,对数据进行分析。

  B. 读瞬时数据

  瞬时数据从第256字节开始,数据长度=瞬时数据的数据帧数×数据帧长;瞬时数据帧长包含帧校验码。

  3.2.3 写数据

  主机下送数据到从机,写当量记录仪中的所有累计数据。执行正确时返回上位机要求写入的数据(二进制表示)。便于上位机校验。

4. 界面设计

  控制系统的界面共有四个,它们是主界面、累计数据显示界面、选择写入下位机数据界面。

  ⑴ 主界面

  主界面是系统运行的主要界面,它的作用向下位机是发送各种命令和对串口通讯的参数进行设置,通过各种命令才会实现系统采集实时数据和进行监控的功能。也只有在发送各种命令时才会调用和显示其他功能界面(如累计数据显示界面等),也就是说主界面是其他功能界面的联系纽带。

  在主界面的设计中采用了组合框、树形视图、列表框等控件,在界面下方的列表框中可以显示运行的程序、出错报告及系统的状态等。

  (2)累计数据显示界面

  此界面的作用是当上位机完成了采集下位机的累计数据时,可以由用户选择是否显示采集的累计数据。用户检查了机车的累计数据后,可以在界面对累计数据进行更改,然后就将数据进行保存,以便将来对数据进行管理。

  (3) 选择写入下位机数据界面

反对
收藏
神州普惠试验检验管理解决方案
试验检验管理系统TCM紧紧围绕产品生产试验检验的全过程进行系统规范的监控和管理,有力的监管了整个试验检验过程、协调组织了试验检验工作的开展、规范了试验检验过程的管理,同时还以方便高效的手段,整理和收集了全部试验检验过程的信息数据。

0评论2014-03-24

宏电工业级TD无线路由器应用于交警局电子警察项目
“电子警察”是高科技的交通管理手段,也是道路交通技术监控系统的重要环节,是智能交通系统建设的重要组成部分。它以其无人值守、自动记录、容量大、无需当场处罚、便于管理等优点成为交通管理工作中必不可少的装备。

0评论2013-02-27

领邦公布新型全自动检测方案:弹丸尺寸的快速检测
近日,北京领邦仪器技术有限公司(后文简称“领邦”)公布了一套新型的全自动检测方案——弹丸尺寸检测系统。该系统是一套在线全自动终检设备,采用激光扫描的方式,在计算机中还原炮弹外形,能够实现炮弹外形尺寸和形位公差的快速检测,满足大批量产品的在线自动化检测,避免人为检测造成的误差,同时保证数据的可靠性以及提高数据管理方便性。

0评论2012-08-31

仪器总线技术的回顾与展望
在测试测量领域,仪器总线技术的发展历来是工程师和科学家们最为关心的部分。从上世纪60年代推出的专用于仪器控制的GPIB总线,到现在被广泛使用的 USB、VXI、PXI和最新推出的LXI、PXI Express,不断涌现的新型总线技术在帮助我们的工程师更快捷高效的完成测量任务的同时,也引起了行业内专家们的广泛争论,究竟哪一种总线将会主宰未 来的测试测量领域呢?

0评论2012-05-28

加固电源典型应用方案
美国北大西洋(NAII)公司为军工和航空领域的嵌入式市场所提供的加固电源,类型齐全,无论是标准型产品还是定制型产品,都应有尽有。在国内外航空、航海、舰船等应用中占有及其重要的地位。

0评论2012-05-03

倾角传感器在无人机上的应用
无人驾驶飞机简称无人机,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。机上无驾驶舱,但安装有自动驾驶仪、程

0评论2012-04-13

倾角传感器在移动通讯车平衡系统上的应用
移动通信基站车是移动通信领域中用于应急通信信道建立的系统集成车辆。主要的功能一般包括GSM、CDMA、3G基站信道的建立、无线计

0评论2012-04-13

倾角传感器在水平平台测量上的应用
在仪器仪表、精密工具、机械制件的检验等行业经常会使用到水平平台,而大理石平台可以作为一个理想的选择,因为大理石的平台是一

0评论2012-04-13

SST倾角传感器在阳光追踪系统上的应用
随着能源的匮乏,人类越来越注重利用新型能源来代替现有的煤、石油原料,利用太阳能获得能源就是一个非常好的办法。阳光追踪器

0评论2012-04-13