一种队列序列化式处理数据的方法和装置制造方法及图纸

技术编号:8883238 阅读:164 留言:0更新日期:2013-07-04 02:04
本发明专利技术公开了一种队列序列化式处理数据方法,包括:S1.在通讯口处设置快速缓冲区以及慢速缓冲区;S2.接收输入的原始数据,并按预解析分成快速数据以及慢速数据,并以单向队列结构相应放入所述的快速缓冲区以及慢速缓冲区,形成数据帧;S3.判断所述的数据帧是否合法,如果合法,进入步骤S4,如果不合法,进入步骤S31,将所述的数据帧弃之不用;S4.将所述的数据帧以队列化的方式出队解析并显示。本发明专利技术还公开了队列序列化式处理数据装置。本发明专利技术队列序列化式处理数据方法和装置以队列序列化式来处理数据,数据处理过程较快,提高实时性。

【技术实现步骤摘要】
一种队列序列化式处理数据的方法和装置
本专利技术涉及离散数据处理领域,更具体地说,涉及一种队列序列化式处理数据的方法和装置。
技术介绍
在医疗器械设计领域,随着用户需求的日益增长以及医疗器械一贯的对安全性的严格要求,麻醉机需要实现更多的功能和具备更多的保护措施,也就意味着麻醉机的软硬件要朝着多系统、多单元的方向设计,每个单元完成一定的预期功能。因此,单元之间必然存在一定的数据交换,RS-232串行口是应用比较广泛的一种标准通讯接口,它具备全双工通讯、较高稳定性、较好易用性等特征,所以基于它可以实现多种通讯方式。本专利技术基于RS-232全双工模式的异步通信接口,在应用较为广泛的“握手+校验和型”通讯协议的前提下,实现一种对实时性较高的快速数据,进行优先收发处理的算法。在麻醉机中,以呼吸控制单元(简称:BDU)和用户界面单元(简称:GUI)间的实时性要求和数据载荷最高,这2个单元间,多数厂家会使用串行通讯,如:RS-232、I2C等。而这两者间需要保证实时性的快速数据包括:1-3种量值的实时波形数据、电子流量计(简称:EFM)数据、实时报警数据以及通气模式切换指令等。所谓相对而言的慢速数据,即指监测值数据、状态数据、趋势数据等发送周期较长的数据。本专利技术将以典型的波形显示快速数据(简称:快速数据)和监测值慢速数据(简称:慢速数据)的数据接收、数据解析为例,阐述后续内容。所有快速数据装配、数据发送的过程,与数据接收的原理完全相同。由于是串行通讯,从通讯协议设计的角度,往往不可能为快速数据建立单独的通讯信道,只能标识出哪些数据属于快速数据,这与成本、稳定性等多方面的考虑有关。因此,从现有的通讯硬件上,很难做到对快速数据的优先响应,只能通过软件对数据做后期处理,虚拟出一条快速数据通道,优先提供数据给波形显示等算法。现有的快速数据处理算法存在如下几个典型的缺点:1.数据接收上,能有效将快速数据与慢速数据分离,但没有考虑快速数据更需要缓冲,并且需要对缓冲数据进行序列化,以保证数据在接收时不出现丢失或前后顺序颠倒、覆盖等问题;2.数据接收和数据解析没有并行,接收后立即解析,即接收和解析是串行进行的。相对而言,数据解析由于要取出原始数据并进行必要的数值转换等操作,在实时性要求较高的场合,是相对较慢的。这会造成下一帧快速数据的处理延时,而且此延时会累积,最终造成原始数据被覆盖或丢失,造成错解或漏解;3.由于解析后的数据也没有考虑缓冲机制,这便要求本来就相对最慢的波形显示采样周期缩短,而即使波形显示采样周期缩短到与数据解析周期同步,由于问题2的存在,也不能避免覆盖或丢失数据。由于显示过程提速,导致GUI系统开销激增,而实际显示效果的改善并不明显;GUI波形显示总周期的设计被迫违背预期设计要求,波形显示总周期定义受限等问题接踵而至。
技术实现思路
为了解决以上的问题,本专利技术提供一种队列序列化式处理数据的方法和装置。本专利技术公开了一种队列序列化式处理数据的方法,包括:S1.在通讯口处设置快速缓冲区以及慢速缓冲区;S2.接收输入的原始数据,并按预解析分成快速数据以及慢速数据,并以单向队列结构相应放入所述的快速缓冲区以及慢速缓冲区,形成数据帧;S3.判断所述的数据帧是否合法,如果合法,进入步骤S4,如果不合法,进入步骤S31,将所述的数据帧弃之不用;S4.将所述的数据帧以队系列化的方式出队解析并显示。在本专利技术所述的队列序列化式处理数据的方法中,所述预解析,具体是:采用轮询法周期性主动检测并接收串行口数据,获取数据命令字及长度。在本专利技术所述的队列序列化式处理数据的方法中,所述预解析,具体是:采用中断、事件或消息等机制被动触发接收数据,获取数据命令字及长度。在本专利技术所述的队列序列化式处理数据的方法中,所述通讯口为:RS-232串行口通讯、I2C、SPI、CAN。在本专利技术所述的队列序列化式处理数据的方法中,所述的接收多队列数据时,步骤S2与步骤S4可同时进行。本专利技术公开了一种队列序列化式处理数据的装置,用于实现上述的方法,包括:缓冲区设置单元:用于在通讯口处设置快速缓冲区以及慢速缓冲区;原始数据分离单元:与所述的缓冲区设置单元相连,用于接收输入的原始数据,并按预解析分成快速数据以及慢速数据,并以单向队列结构相应放入所述的快速缓冲区以及慢速缓冲区,形成数据帧;数据帧判断单元:与所述的原始数据分离单元相连,用于判断所述的数据帧是否合法;数据解析单元:与所述的数据帧判断单元相连,用于将所述的数据帧以队系列化的方式出队解析并显示。在本专利技术所述的队列序列化式处理数据的装置中,所述预解析,具体是:采用轮询法周期性主动检测并接收串行口数据,获取数据命令字及长度。在本专利技术所述的队列序列化式处理数据的装置中,所述预解析,具体是:采用中断、事件或消息等机制被动触发接收数据,获取数据命令字及长度。在本专利技术所述的队列序列化式处理数据的装置中,所述通讯口为:RS-232串行口通讯、I2C、SPI、CAN。在本专利技术所述的队列序列化式处理数据的装置中,所述的接收多队列数据时,所述的原始数据分离单元接收数据与所述的数据解析单元解析数据可同步进行。实施本专利技术的队列序列化式处理数据的方法和装置,具有以下有益的技术效果:a)利用队列分别记录快速数据和慢速数据,使数据序列化,不会重叠或覆盖;b)将数据的收发和解析分离,用多线程思想处理解析,并同样保证序列化;c)使用队列特有的特性,使数据的访问控制变得简易、高效;d)数据不丢失,快速数据处理过程加快,提高实时性;e)嵌入式系统或非嵌入式系统均适用。附图说明图1是本专利技术实施例一种队列序列化式处理数据的方法流程图;图2为本专利技术实施例一种队列序列化式处理数据的装置方框图;图3为现有技术串行原始数据序列可能出现的现象图示;图4为本专利技术快慢原始数据分离和序列化示意图;图5为本专利技术单线程数据解析示意图;图6为本专利技术解析数据序列化和显示采样示意图。具体实施方式为详细说明本专利技术的
技术实现思路
、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。针对现有快速数据处理存在的技术问题,本专利技术提出了一种可行的提高快速数据处理实时性,从根本上避免数据丢失,并被优先处理的设计技术方案:针对问题1,本算法利用队列(Queue)结构先进先出,数据序列化等特点,在数据接收、解析环节应用该特点设计数据缓冲,并将快速数据和慢速数据分离,分别放入不同的缓冲,暂不对数据解析,以提高快速数据接收的实时性,保证接收时数据不丢失。针对问题2,数据接收缓冲和数据解析缓冲在机制上都使用队列结构,由于缓冲的存在,微观上接收和解析过程并不完全同步,通过多线程应用和利用队列的易存取性,使相对较慢的解析过程尽可能与接收过程并行完成,从而保证宏观上数据的接收和解析是同步的,也即实现了数据接收和解析的完全分离:下一帧快速数据,不必等上一帧数据解析完成后才能被接收。进一步保证数据在解析后的实时性,仍然不会丢失。针对问题3,一旦数据丢失问题解决,只要BDU(BreathDeliveryUnit,呼吸控制单元)端提供的采样数据足够多,GUI(GraphicalUserInterface,图形用户界面单元)端不但波形显示的效果明显改善,显示总周期定义的灵活度也大大增加:不必考虑显示和解析的本文档来自技高网
...

【技术保护点】
一种队列序列化式处理数据的方法,其特征在于,包括:S1.在通讯口处设置快速缓冲区以及慢速缓冲区;S2.接收输入的原始数据,并按预解析分成快速数据以及慢速数据,并以单向队列结构相应放入所述的快速缓冲区以及慢速缓冲区,形成数据帧;S3.判断所述的数据帧是否合法,如果合法,进入步骤S4,如果不合法,进入步骤S31,将所述的数据帧弃之不用;S4.将所述的数据帧以队系列化的方式出队解析并显示。

【技术特征摘要】
1.一种队列序列化式处理数据的方法,其特征在于,包括:S1.在通讯口处设置快速缓冲区以及慢速缓冲区;S2.接收输入的原始数据,并按预解析分成快速数据以及慢速数据,并以单向队列结构相应放入所述的快速缓冲区以及慢速缓冲区,形成数据帧;S3.判断所述的数据帧是否合法,如果合法,进入步骤S4,如果不合法,进入步骤S31,将所述的数据帧弃之不用;S4.将所述的数据帧以队系列化的方式出队解析并显示。2.根据权利要求1所述的队列序列化式处理数据的方法,其特征在于,所述预解析,具体是:采用轮询法周期性主动检测并接收串行口数据,获取数据命令字及长度。3.根据权利要求1所述的队列序列化式处理数据的方法,其特征在于,所述预解析,具体是:采用中断、事件或消息机制被动触发接收数据,获取数据命令字及长度。4.根据权利要求1所述的队列序列化式处理数据的方法,其特征在于,所述通讯口为:RS-232串行口通讯、I2C、SPI、CAN。5.根据权利要求1所述的队列序列化式处理数据的方法,其特征在于,接收多队列数据时,步骤S2与步骤S4可同时进行。6.一种队列序列化式处理数据的装置,用于实现权利要求1所述的方法,其...

【专利技术属性】
技术研发人员:雷声
申请(专利权)人:北京谊安医疗系统股份有限公司
类型:发明
国别省市:

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

1