新闻中心

EEPW首页 > 测试测量 > 设计应用 > 基于以太网的桥梁健康监测系统的软件设计

基于以太网的桥梁健康监测系统的软件设计

作者:时间:2009-11-06来源:网络收藏

2 基于的桥梁
2.1 需求分析
现场监测仪将采集到的信号通过传送到上位机PC,在PC机上实时显示、保存、分析采集数据信息,既能够充分利用了DSP在现场高速采集处理数据的能力,又能够充分利用了上位PC机在绘制图像和保存数据方面的优势。因此,一个完整的桥梁在中央监控部分应该完成以下几个功能:
(1)每台监测仪IP地址、MAC地址、Port端口等网络地址信息、运行模式以及采样时间的设定;
(2)监测仪8个通道的采样频率、放大倍数、采样保存时间的设定以及每个通道对应传感器类型的选择;
(3)动态实时显示数据曲线。数据的显示可以以原始数据和FFT两种格式,并且可以调整采样时间设定一帧采集的数据量的大小;
(4)八个通道数据采集数据的长度、采集的时间能够同步实时显示在中央控制机上;
(5)越限报警。当采集到的数据出现异常,超出正常的数据范围的时候,能够向中央控制单元报警,便于工作人员及时查找出现的故障和损伤;
(6)能够对采集到的数据进行实时分析。
2.2 软件系统整体设计和流程
核心部分主要有两个,一个是中央控制单元向监测仪发送命令参数,另一个是中央控制单元接收监测仪发送回来的采集数据信息。PC机接收到采集的数据信息后,还需要根据系统要求绘制出数据曲线图,便于对采集到的数据进行分析,同时为了历史数据信息的查阅,还必须将采集到的数据保存到Excel文件,其流程图如图2所示。根据软件设计的整体设计和流程,采用了四个线程:
线程1:UINT SendCMDToDSP(LPVOID IParam),完成向DSP发送在主程序设定的命令参数;
线程2:UINT、RecieveData(LPVOID IParam),完成接收采集的数据信息;
线程3:UINT DrawCurve(LPVOID IParam),将采集到的数据绘制成曲线图像;
线程4:UINT StoreToExcel(LPVOID IParam),将采集到的数据保存到Excel文件,便于查阅分析历史数据。
其中,由于PC是被动接收监测仪采集的数据,为了保证在接收数据时没有数据丢失,要把RecieveData线程的优先级设为最高。
Windows本身采用的是消息驱动机制,当一个线程发出一条消息时,操作系统首先接收到该消息,然后把该消息转发给目标线程。所以可以自定义消息,然后通过操作系统来实现一个线程向另一个线程发送消息。

本文引用地址:http://www.eepw.com.cn/article/195686.htm

首先SendCMDToDSP线程发送参数命令给监测仪主板核心器件DSP,DSP收到参数命令后,按参数命令的要求向PC发送数据,RecieveData线程监听到DSP开始发送采集数据后,开始接收数据。由于Recie-veData线程优先级别高于SendCMDToDSP线程,所以当接收数据时发送命令参数,SendCMDToDSP线程则需要等待RecieveData线程接收完数据才能开始发送命令参数,这样就不会造成命令参数的覆盖。在PC机内存区域开辟一块缓冲区用于接收数据,RecieveData开始接收数据,当内存缓冲区满的时候,RecieveData线程PostThreadMessage一个消息给DrawCurve线程,将缓冲区指针和大小作为消息参数传递过去,然后释放缓冲区,再等待接收数据;DrawCurve线程接收到消息后,分配另一块内存保存数据,绘完采集数据的曲线图像后,DrawCurve线程PostThreadMessage一个消息给StoreToExcel线程,将新的内存指针和大小作为消息参数传递过去,然后把数据缓冲区释放,再继续等待消息;StoreToExcel线程获取消息后,同样分配另一块内存保存数据,将采集的数据保存到Excel文件,然后把缓冲区释放,再继续等待消息。
2.3 通信模块设计
PC与DSP的数据通信采用的是以太网通信,上位PC机向DSP发送设定好的命令参数,DSP则按照接收到的命令参数采集数据,然后向PC机发送采集到的数据。以太网通信部分采用的是套接口Socket编程,套接口Socket提供了许多函数,利用这些函数,程序员就可以实现DSP和上位PC机的以太网通信。



评论


相关推荐

技术专区

关闭