一种数据缓冲方法和系统技术方案

技术编号:7996275 阅读:217 留言:0更新日期:2012-11-22 05:06
本发明专利技术公开了一种数据缓冲方法和系统,所述方法包括:主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区;通讯扩展板每隔预设时间查询下级模块数据并刷新至缓冲区;主控装置查询下级模块数据,通讯扩展板将缓冲的模块数据反馈至主控装置。本发明专利技术的能够减少内存,且实时性高,主控装置对通信扩展板的查询数据与通信扩展板对模块的查询数据相互独立,节省通信时长。

【技术实现步骤摘要】

本专利技术涉及数据通讯
,尤其涉及一种数据缓冲方法和系统
技术介绍
缓冲技术是为了协调数据流量速度相差很大的设备之 间数据传送的工作。在数据到达与离去速度不匹配的地方,就应该使用缓冲技术。现有的缓冲技术包括双缓冲,解决两台外设、打印机和终端之间的并行操作问题的办法是设置双缓冲。有了两个缓冲器之后,CPU可把输出到打印机的数据放入其中一个缓冲器(区)、让打印机慢慢打印;然后,它又可以从另一个为终端设置的缓冲器(区)中读取所需要的输入数据。多缓冲,是把多个缓冲区连接起来组成两部分,一部分专门用于输入,另一部分专门用于输出的缓冲结构。缓冲池,把多个缓冲区连接起来统一管理,既可用于输入又可用于输出的缓冲结构。而对于通信扩展板的CPU中缓存有限的情形,上述几种缓冲技术并不适用,需要一种占用内存空间尽可能少的缓冲机制。
技术实现思路
本专利技术的目的在于提出一种数据缓冲方法和系统,能够减少内存,且实时性高,主控装置对通信扩展板的查询数据与通信扩展板对模块的查询数据相互独立,节省通信时长。为达此目的,本专利技术采用以下技术方案一种数据缓冲方法,用于铁路信号电源监控模块,该方法包括主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区;通讯扩展板每隔预设时间查询下级模块数据并刷新至缓冲区;主控装置查询下级模块数据,通讯扩展板将缓冲的模块数据反馈至主控装置,此时缓冲区中读写指针相互独立。所述初始化缓冲区包括初始化各模块的数据结构并将缓冲区的读写指针指向O0所述通信扩展板查询下级模块数据进一步包括通信扩展板下发查询命令至模块,同时打开所述模块的通讯定时器;若通信扩展板已收集完整的模块数据,则关闭所述模块的通讯定时器并刷新缓冲区中所述模块的数据;若通信扩展板下发获取告警命令,则所述模块的数据更新完毕并开始查询下一个模块,否则通讯扩展板继续下发查询命令。若通信扩展板未收集完整的模块数据,则进一步包括关闭所述模块的系列定时器并将错误数NWl;若错误数N大于3,则通讯扩展板发出中断告警并开始查询下一个模块,否则通讯扩展板继续下发查询命令。若主控装置查询的下级模块中包括通信扩展板正在查询的模块,则通讯扩展板反馈的模块数据中不包括所述通讯扩展板正在查询的模块。一种数据缓冲系统,用于铁路信号电源监控模块,所述系统包括主控装置,通信扩展板和下级模块,所述主控装置通过CAN总线与通信扩展板连接,通信扩展板通过RS485总线与下级模块连接;所述主控装置用于主控装置下发配置信息至通信 扩展板以及查询和接收下级模块数据;所述通信扩展板,用于提供缓冲区,定期查询下级模块数据并刷新至缓冲区,当主控装置查询下级模块数据,将缓冲的模块数据反馈至主控装置。根据权利要求I所述的系统,所述通信扩展板利用分配的内存空间作为系统的缓冲区,缓冲区中的读写指针相互独立。根据权利要求I所述的系统,包括至少两个通信扩展板,每个通信扩展板通过RS485总线下挂至少一个下级模块。采用本专利技术的技术方案,能够减少内存,且实时性高,主控装置对通信扩展板的查询数据与通信扩展板对模块的查询数据相互独立,节省通信时长,采用模块结构分配方式,减少了主控装置与通信扩展板之间CAN通信时打包字节个数,简化了主控装置解析流程。附图说明图I是本专利技术实施例提供的数据缓冲方法的流程示意图。图2是本专利技术实施例中缓冲区初始化示意图。图3是本专利技术实施例中数据查询与回应的示意图。图4是本专利技术实施例中缓冲区在读写状态下的示意图。图5是本专利技术实施例提供的数据缓冲系统的结构示意图。具体实施例方式本专利技术实施例中新架构的铁路信号电源系统中的监控单元主控装置和通信扩展板通过CAN总线通信,通信扩展板将采集到的下级模块的数据暂存,等待主控装置的查询数据命令,再将数据上传。根据此需求,特提出在新架构的监控单元通信扩展板中采用本专利技术实施例中单缓冲的通信缓冲技术来实现。单缓冲,在主控装置和通信扩展板之间设置一个缓冲区,即在通信扩展板中开辟一块缓冲区来存储更新的数据。主控装置向通信扩展板交换数据时,先把被交换数据写入缓冲区,然后需要数据的主控装置或通讯扩展板从缓冲区取定数据。设置的单缓冲能够满足本专利技术实施例中新架构铁路信号电源监控模块的要求,程序简单容易实现。下面结合附图并通过具体实施方式来进一步说明本专利技术的技术方案。图I是本专利技术实施例提供的数据缓冲方法的流程示意图,该方法包括S101,主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区。主控装置可根据客户需求来配置通信扩展板需要采集的下级模块的数量,并将配置信息下发至通信扩展板,主控装置与通信扩展板之间采用的是CAN总线通信。通信扩展板接收到数据后,保存所有的配置信息。根据配置信息确定有多少个模块,为每个模块分配一定的内存空间,内存分配情况如下表所示权利要求1.一种数据缓冲方法,用于铁路信号电源监控模块,其特征在于,该方法包括 主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区; 通讯扩展板每隔预设时间查询下级模块数据并刷新至缓冲区; 主控装置查询下级模块数据,通讯扩展板将缓冲的模块数据反馈至主控装置,此时缓冲区中读写指针相互独立。2.根据权利要求I所述的方法,其特征在于,所述初始化缓冲区包括初始化各模块的数据结构并将缓冲区的读写指针指向O。3.根据权利要求I所述的方法,其特征在于,所述通信扩展板查询下级模块数据进一步包括 通信扩展板下发查询命令至模块,同时打开所述模块的通讯定时器; 若通信扩展板已收集完整的模块数据,则关闭所述模块的通讯定时器并刷新缓冲区中所述模块的数据; 若通信扩展板下发获取告警命令,则所述模块的数据更新完毕并开始查询下一个模块,否则通讯扩展板继续下发查询命令。4.根据权利要求3所述的方法,其特征在于,若通信扩展板未收集完整的模块数据,则进一步包括 关闭所述模块的系列定时器并将错误数N加I ; 若错误数N大于3,则通讯扩展板发出中断告警并开始查询下一个模块,否则通讯扩展板继续下发查询命令。5.根据权利要求I所述的方法,其特征在于,若主控装置查询的下级模块中包括通信扩展板正在查询的模块,则通讯扩展板反馈的模块数据中不包括所述通讯扩展板正在查询的模块。6.一种数据缓冲系统,用于铁路信号电源监控模块,其特征在于,所述系统包括主控装置,通信扩展板和下级模块,所述主控装置通过CAN总线与通信扩展板连接,通信扩展板通过RS485总线与下级模块连接; 所述主控装置用于主控装置下发配置信息至通信扩展板以及查询和接收下级模块数据; 所述通信扩展板,用于提供缓冲区,定期查询下级模块数据并刷新至缓冲区,当主控装置查询下级模块数据,将缓冲的模块数据反馈至主控装置。7.根据权利要求I所述的系统,其特征在于,所述通信扩展板利用分配的内存空间作为系统的缓冲区,缓冲区中的读写指针相互独立。8.根据权利要求I所述的系统,其特征在于,包括至少两个通信扩展板,每个通信扩展板通过RS485总线下挂至少一个下级模块。全文摘要本专利技术公开了一种数据缓冲方法和系统,所述方法包括主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区;通讯扩展板每本文档来自技高网...

【技术保护点】
一种数据缓冲方法,用于铁路信号电源监控模块,其特征在于,该方法包括:主控装置下发配置信息至通信扩展板,通讯扩展板根据配置信息确定下级模块个数并初始化缓冲区;通讯扩展板每隔预设时间查询下级模块数据并刷新至缓冲区;主控装置查询下级模块数据,通讯扩展板将缓冲的模块数据反馈至主控装置,此时缓冲区中读写指针相互独立。

【技术特征摘要】

【专利技术属性】
技术研发人员:王娟
申请(专利权)人:北京鼎汉技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1