呼吸机的下位机向上位机发送数据的方法和呼吸机技术

技术编号:21468777 阅读:119 留言:0更新日期:2019-06-29 01:15
本发明专利技术公开了一种下位机向上位机发送数据的方法,该方法通过串口发送数据,其特征在于,在下位机设置一个缓冲区,下位机实时或定时的向缓冲区写入数据,下位机每隔时间T2将对缓冲区内的数据进行查询,并通过串口发送至上位机;所述数据的写入为连续写入或间断写入。本发明专利技术可以防止CPU的等待,减少CPU的占用率,并且不会丢失数据。

Method of sending data from lower machine to upper machine of ventilator and ventilator

The invention discloses a method for sending data from a lower computer to a upper computer. The method transmits data through a serial port. The method is characterized in that a buffer is set in the lower computer, and the lower computer writes data to the buffer in real time or at a fixed time. The lower computer inquires the data in the buffer every other time T2, and transmits the data through the serial port. Up to the host computer; the data is written continuously or intermittently. The invention can prevent the waiting of the CPU, reduce the occupancy rate of the CPU, and do not lose data.

【技术实现步骤摘要】
呼吸机的下位机向上位机发送数据的方法和呼吸机
本专利技术属于呼吸机通信控制领域,具体涉及呼吸机的下位机向上位机发送数据的方法和呼吸机。
技术介绍
在现有的呼吸机中经常存在多个单片机外围设备,需要经呼吸机内单片机的串行接口,与呼吸机单片机进行数据通信。例如,氧气流量传感器、空气流量传感器,均需与呼吸机中单片机的串行接口连接,用于用户系统上电读取传感器的内部校验数据,其它单片机外围设备也需要与呼吸机中单片机通过串行接口进行数据传输。申请人曾经就呼吸机的数据传输提出相应的改进方法。在之前,主流的单片机中一般只有两个串行接口,当传感器较多的时候,如果不对串行接口进行扩展,会限制呼吸机功能的实现及扩展。而要满足系统设计要求,就必须对单片机的串行接口进行扩展。专用扩展芯片SP2327/8DP系采用低功耗CMOS工艺设计的多串口扩展芯片,可实现将一个较高波特率单片机串行接口扩展为三个较低波特率串行接口,它主要是为解决目前大多数8位和16位单片机串行接口太少,绝大多数都只有一个,而且为特别设计的,但是成本相对较高。申请人基于此提出了中国专利申请CNCN103893868A的技术方案,该专利技术提出一种呼吸机串行接口扩展装置,实现了呼吸机中单片机控制器的一个串行接口可以与多个单片机外围设备进行数据传输,克服了一个串行接口只能连接一个单片机外围设备的问题,并且装置简单,占用资源少、硬件成本低,无需其他软件操作。该呼吸机串行接口扩展装置,所述装置包括:多组单片机外围设备数据端、开关选择单元、单片机数据端;所述多组单片机外围设备数据端与呼吸机的各单片机外围设备连接,用于从所述各单片机外围设备接收数据或向所述各单片机外围设备发送数据;所述开关选择单元包括多个控制输入端,与所述呼吸机中单片机的空闲串行接口线连接,所述单片机设置多个控制输入端为不同的二进制组合状态,用于从所述多组单片机外围设备数据端中选择一组,与所述单片机数据端进行数据通信;所述单片机数据端与所述呼吸机中单片机的串行接口连接,用于向所述单片机发送数据或从所述单片机接收数据。该专利技术的提出解决了串口数量过少的问题,但是,现实中仍然存在数据量较大时会出现数据丢失的问题。按照本领域技术人员的一般理解,呼吸机分为上位机(显示器)和下位机,其中上位机负责显示数据和波形,下位机负责控制各种阀门,上位机和下位机的通信主要依靠串口进行,由于数据量大并且实时性比较强,如果发送机制出现问题,将会导致数据的丢失。目前,常规的数据通信过程中,一般下位机往上位机发送数据时,会先判断通讯数据线是否为忙状态,如果为忙状态,就要等待,直到数据线为闲时才能发送数据,按照通讯数据的定义,一帧数据为8个字节,每个字节为8位(加上起始位和一位停止位共10位),通讯的波特率选择38400bit/s,所以传送一帧数据的最短时间大约为1/38400*8*10=2.08ms,所以发送前后两帧数据的时间不能低于2.08ms,如果低于该值,第一帧数据还没发送完成就开始发送第二帧数据,如果第二帧数据覆盖第一帧数据就会导致丢数。而呼吸设备和普通的设备存在差异,这意味着不可使用常规的方式进行解决。在中国专利申请CN103138886A中,其公开了一种院前数据传输方法,包括院前急救端数据传输步骤,所述院前急救端数据传输步骤包括:医疗设备的控制模块将获取的需要传输的数据按照预定规则分成不同的优先级别;将同一优先级别的数据添加到与该优先级别对应的传输队列;控制模块将传输队列中的数据按照与该传输队列的优先级别对应的传输策略发送给通讯设备;通讯设备将接收到的数据通过有线或无线网络发送到接收端。在该场景中,由于并不涉及实时的因素,即使存在延迟,只要数据被完整的发送,信息的延迟都是可以被接受的。而呼吸机中在数据发送延迟或者出现错误,就会出现丢包或者丢数的情形,这会导致医务人员对于病人呼吸情况的误判,这在现实中是极力避免出现的情况。本专利技术即是基于此而提出的适用于呼吸机的数据传送方法。
技术实现思路
针对现有技术中呼吸机串口通信过程中存在的缺陷,本专利技术提供了一种解决方案。本专利技术提供了一种下位机向上位机发送数据的方法,该方法通过串口发送数据,所述方法包括:在下位机设置一个缓冲区,下位机实时或定时的向缓冲区写入数据,下位机每隔时间T2将对缓冲区内的数据进行查询,并通过串口发送至上位机;所述数据的写入为连续写入或间断写入。作为上述方法一种更好的选择,所述下位机将要发送的数据保存至缓冲区内进一步包括查询缓冲区中可用的数据大小的步骤,当要发送的数据大小超过了缓冲区的大小时,执行异常处理操作;当要发送的数据大小不超过缓冲区的大小时,将要发送的数据按序保存至缓冲区的队列中。作为上述方法一种更好的选择,所述缓冲区中保存的数据每帧不大于16字节。对于常规的呼吸机而言,保存的每帧数据的长度在8-16字节之间,常规的数据信息包括了数据来源、目标地址、命令码和长度信息。作为上述方法一种更好的选择,所述缓冲区中保存的数据长度不超过20帧。上述方法中,所述的异常处理操作为针对系统发生的异常进行处理的后续操作,如报警或者发送指定的消息至目标计算机。作为上述方法一种更好的选择,所述缓冲区保存下位机要传送的数据队列,所述数据队列中的数据包括数据来源、目标地址、命令码和长度信息。作为上述方法一种更好的选择,下位机查询并发送数据的操作进一步包括:1)检查缓冲区内队列的长度,如果队列的长度低于队列的阈值,则执行步骤2),否则执行步骤5);2)检查队列的长度是否大于0,如果大于0则执行步骤3),否则执行步骤5);3)通过串口向上位机发送队列中的第一帧数据,如果数据发送成功执行步骤5),否则执行步骤4);4)执行异常处理操作;5)退出数据发送操作。作为上述方法一种更好的选择,所述T2不小于下位机发送数据的最大时间。作为上述方法一种更好的选择,所述T2为3ms。本专利技术还提供了采用上述通信方法的呼吸机,其采用了上述的发送数据的方法。本专利技术相对于现有技术具有如下的有益效果:1.由于下位机往内存写数据是不占用时间的,所以向上位机发送数据时需要先写到缓冲区,然后再定时(如3ms)来查询缓冲区是否有数据,有数据就按照队列的先后顺序发送数据,这样就能保证CPU没有任何等待,提高CPU利用率。在传统的通讯中,一般不采用队列机制,也不设置缓冲区,要往上位机发送数据时,CPU会判断当前的通讯线是不是处于忙状态,如果处于忙状态,CPU要等待直到通讯线处于空闲状态,这样就会导致CPU有等待时刻,会减小CPU的利用率。2.采用队列机制发送数据的核心是时间T2的选择,比如排在等待队列里的数据完全发送需要2ms,这时候时间T2的选择一定要大于2ms,这样就能保证在下次发送时通讯线是处于空闲状态,如果T2时刻选择过小,还是和最原始的发送方式一样,CPU在发送数据时要判断通讯线是否处于忙状态3.本专利技术的方法中,通讯线发送一个队列的时间大概为2.08ms,所以T2的时间选择为3ms,这样就能保证每次有数据发送时通讯线都处于空闲状态。具体实施方式如下为本专利技术的实施例,其仅用对本专利技术的解释而并非限制。本专利技术提供了一种下位机向上位机发送数据的方法,该方法通过串口发送数据,所述方法包括:在下位机设置一个缓冲区,下位机实时或定本文档来自技高网
...

【技术保护点】
1.一种下位机向上位机发送数据的方法,该方法通过串口发送数据,其特征在于,所述方法包括:在下位机设置一个缓冲区,下位机实时或定时的向缓冲区写入数据,下位机每隔时间T2将对缓冲区内的数据进行查询,并通过串口发送至上位机;所述数据的写入为连续写入或间断写入。

【技术特征摘要】
1.一种下位机向上位机发送数据的方法,该方法通过串口发送数据,其特征在于,所述方法包括:在下位机设置一个缓冲区,下位机实时或定时的向缓冲区写入数据,下位机每隔时间T2将对缓冲区内的数据进行查询,并通过串口发送至上位机;所述数据的写入为连续写入或间断写入。2.根据权利要求1所述的方法,其特征在于:所述下位机将要发送的数据保存至缓冲区内时,进一步包括查询缓冲区中可用的数据大小的步骤,当要发送的数据大小超过了缓冲区的大小时,执行异常处理操作;当要发送的数据大小不超过缓冲区的大小时,将要发送的数据按序保存至缓冲区的队列中。3.根据权利要求1或2所述的方法,其特征在于...

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

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

1