一种基于485总线的驱动设备监控方法以及系统的制作方法

文档序号:10569858阅读:354来源:国知局
一种基于485总线的驱动设备监控方法以及系统的制作方法
【专利摘要】一种基于485总线的驱动设备监控方法以及系统,用于实现PC机对多个驱动设备的监控,PC机经由手持操作器及485总线与多个驱动设备连接,方法包括:S1、手持操作器通过串行通讯链路与PC机间进行实时数据和非实时数据交互;S2、手持操作器以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,且在实时数据交互空闲时进行非实时数据交互。本发明增设采用嵌入式控制芯片的手持操作器作为485总线的链路管理者,保证了控制周期的准确性,周期的准确性提高也就提高了总线利用率;而且在保证了周期准确性的前提下,同时将数据进行分类,对于实时数据进行周期性下发,对于非实时数据在实时数据交互空闲时插入,这样使得总线利用率达到最高。
【专利说明】
一种基于485总线的驱动设备监控方法以及系统
技术领域
[0001]本发明涉及基于485总线的驱动设备监控领域,尤其涉及一种基于485总线的驱动设备监控方法以及系统。
【背景技术】
[0002]在驱动设备开发过程或者设备应用运行时,需要监控一些设备运行状态、参数曲线(电流曲线、电压曲线)、故障信息记录等。在工业控制领域里,为了节省成本,大部分都是基于485总线对这些参量进行监控。最常用的做法是使用标准的Modbus协议。PC作为主机,对从设备进行一问一答的通讯方式。PC与设备的连接方式是通过在PC机的外部串口接入一个232转485的转换器与设备相连。PC机把每个时刻访问的数据组织起来,描绘成曲线或者解析相应的状态展示出来。
[0003]485总线没有竞争的机制,一个时刻只能有一个站点发送数据,而基于普通Windows非实时操作系统的PC机,实时性能一般只能控制在几十毫秒内,甚至在任务繁重的时候,任务的调度更无法预知,在使用一问一答的机制下,PC机的这种非实时性的缺陷使得访问的周期就无法精准控制,从而使得采样数据的连续性受到很大的影响,即便驱动设备的采样有很大的缓存,也不能保留百分百的连续性。当数据连续性不能保证时,描绘出来的曲线就失去了真实性。另外,因为数据连续性不能保证,将使得485总线的利用率也非常低,在低波特率通讯时,数据交互量少,加上数据通讯的协议开销,这样只能放弃高采样率,而设置较大的数据的采样周期。

【发明内容】

[0004]本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于485总线的驱动设备监控方法以及系统。
[0005]本发明解决其技术问题所采用的技术方案是:构造一种基于485总线的驱动设备监控方法,用于实现PC机对多个驱动设备的监控,所述PC机经由手持操作器及485总线与多个驱动设备连接,所述方法包括:
[0006]S1、所述手持操作器通过串行通讯链路与PC机间进行实时数据和非实时数据交互;
[0007]S2、所述手持操作器以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。
[0008]在本发明所述的基于485总线的驱动设备监控方法中,所述步骤S2包括:
[0009]S21、手持操作器在进入新的实时数据发送周期时,计算实时数据交互的时间和非实时数据交互的时间;
[0010]S22、根据所述预设时间、实时数据交互的时间计算空闲时间;
[0011]S23、判断所述空闲时间是否大于步骤S21中的所述非实时数据交互的时间,如果是,则在实时数据交互完毕后进行非实时数据交互,如果不是,则等待进入下一个新的实时数据发送周期。
[0012]在本发明所述的基于485总线的驱动设备监控方法中,所述实时数据交互以及非实时数据交互包括:手持操作器下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据。
[0013]在本发明所述的基于485总线的驱动设备监控方法中,所述步骤S21中计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3;
[0014]其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。
[0015]在本发明所述的基于485总线的驱动设备监控方法中,所述手持操作器通过USB接口与所述PC机连接通信。
[0016]本发明还公开了一种基于485总线的驱动设备监控系统,包括:PC机、多个驱动设备和采用嵌入式控制芯片的手持操作器;所述PC机经由手持操作器及485总线与多个驱动设备连接;其中,所述手持操作器包括第一通信单元和第二通信单元,第一通信单元用于通过串行通讯链路与PC机间进行实时数据和非实时数据交互,第二通信单元用于以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。
[0017]在本发明所述的基于485总线的驱动设备监控系统中,所述第二通信单元包括:
[0018]周期启动单元,用于判定是否进入新的实时数据发送周期,并在进入新的实时数据发送周期时,计算实时数据交互的时间和非实时数据交互的时间;
[0019]空闲时间计算单元,用于根据所述预设时间、实时数据交互的时间计算空闲时间;
[0020]实时数据交互单元,用于与驱动设备进行实时数据交互;
[0021]非实时数据插入单元,用于在判断出所述空闲时间是否大于所述非实时数据交互的时间时,在实时数据交互单元的实时数据交互完毕后进行非实时数据交互。
[0022]在本发明所述的基于485总线的驱动设备监控系统中,所述实时数据交互以及非实时数据交互包括:实时数据交互单元/非实时数据插入单元下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据至实时数据交互单元/非实时数据插入单元。
[0023]在本发明所述的基于485总线的驱动设备监控系统中,所述的计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3;
[0024]其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。
[0025]在本发明所述的基于485总线的驱动设备监控系统中,所述手持操作器通过USB接口与所述PC机连接通信。
[0026]实施本发明的基于485总线的驱动设备监控方法以及系统,具有以下有益效果:本发明增设采用嵌入式控制芯片的手持操作器作为485总线的链路管理者,其通过串行通讯链路与PC机间进行实时数据和非实时数据交互,通过485总线与驱动设备交互,由于链路管理者放在基于嵌入式控制芯片的设备下,保证了控制周期的准确性,周期的准确性提高也就提高了总线利用率;而且在保证了周期准确性的前提下,本发明同时将数据进行分类,对于实时数据进行周期性下发,对于非实时数据在实时数据交互空闲时插入,这样使得总线利用率达到最高;进一步的,手持操作器使用USB接口与PC机通讯,增大了数据传输的速率。
【附图说明】
[0027]下面将结合附图及实施例对本发明作进一步说明,附图中:
[0028]图1是本发明基于485总线的驱动设备方法的流程图;
[0029]图2是本发明基于485总线的驱动设备方法的时序图;
[0030]图3是本发明基于485总线的驱动设备监控系统的结构示意图。
【具体实施方式】
[0031]为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的【具体实施方式】。
[0032]参考图1是本发明基于485总线的驱动设备方法的流程图;
[0033]本发明的基于485总线的驱动设备监控方法,用于实现PC机对多个驱动设备的监控,所述PC机经由手持操作器及485总线与多个驱动设备连接,所述方法包括:
[0034]S1、所述手持操作器通过串行通讯链路与PC机间进行实时数据和非实时数据交互;
[0035]S2、所述手持操作器以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。
[0036]本发明增设采用嵌入式控制芯片的手持操作器作为485总线的链路管理者,由于链路管理者放在基于嵌入式控制芯片的设备下,保证了控制周期的准确性,周期的准确性提高也就提高了总线利用率;而且在保证了周期准确性的前提下,本发明同时将数据进行分类,对于实时数据进行周期性下发,对于非实时数据在实时数据交互空闲时插入,这样使得总线利用率达到最高。
[0037]如图2中所示,T表示一个预设时间,Tl表示实时数据交互时间,T2表示空闲时间。本发明即是在空闲时间T2插入非实时数据,但是在插入非实时数据之前必须先判断空闲时间T2是否适合插入非实时数据。这种判断既可以在一个周期发送实时数据之前计算空闲时间T2,也可以在实时数据交互完毕后计算空闲时间T2。
[0038]—般实时数据交互时间不会有太大出入,再加上出于程序设计考虑,优选的在一个周期发送实时数据之前计算空闲时间T2,所以所述步骤S2包括:
[0039]S21、手持操作器在进入新的实时数据发送周期时,计算实时数据交互的时间Tl和非实时数据交互的时间T3;
[0040]S22、根据预设时间T、实时数据交互的时间Tl计算空闲时间T2 ;
[0041]S23、判断步骤S22中计算的空闲时间T2是否大于步骤S21中的计算的非实时数据交互的时间T3,如果是,则在实时数据交互完毕后进行非实时数据交互,如果不是,则等待进入下一个新的实时数据发送周期。
[0042]当然,可以在实时数据交互完毕后计算空闲时间T2,如果选择在实时数据交互完毕后计算空闲时间,则所述步骤S2包括:
[0043]S21’、手持操作器在进入新的实时数据发送周期时发送实时数据,同时计算非实时数据交互的时间T3;
[0044]S22’、在实时数据交互完毕后,利用预设时间T减去实时数据交互的实际时间,SP可计算得到空闲时间T2;
[0045]S23’、判断空闲时间T2是否大于非实时数据交互的时间T3,如果是,则进行非实时数据交互,如果不是,则等待进入下一个新的实时数据发送周期。
[0046]其中,所述实时数据交互以及非实时数据交互包括:手持操作器下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据。
[0047]具体的,所述步骤S21中计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3;
[0048]其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。
[0049]由于在驱动设备监控中,请求命令和响应数据的通信格式都是固定的,所以其数据位流数都是预知的。以实时数据交互的时间计算为例,假设使用的是波特率为115200bps的485通讯,实时数据相关的请求命令的位流数为60,响应数据的位流数为1200,数据响应时间为 0_2ms,则实时数据交互的时间为:(60/115200)s+(1200/115200)s+2ms = llms+2ms=13ms ο
[0050]非实时数据交互的时间计算与实时数据交互的时间计算同理。
[0051]进一步优选的,所述手持操作器通过USB接口与所述PC机连接通信,进而增大了数据传输的速率。
[0052]参考图3是本发明基于485总线的驱动设备监控系统的结构示意图。
[0053]本发明的基于485总线的驱动设备监控系统,包括:PC机、多个驱动设备和采用嵌入式控制芯片的手持操作器;所述PC机经由手持操作器及485总线与多个驱动设备连接;
[0054]其中,所述手持操作器包括第一通信单元和第二通信单元,第一通信单元用于通过串行通讯链路与PC机间进行实时数据和非实时数据交互,第二通信单元用于以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。
[0055]其中,所述第二通信单元包括:
[0056]周期启动单元,用于判定是否进入新的实时数据发送周期,并在进入新的实时数据发送周期时,计算实时数据交互的时间和非实时数据交互的时间;
[0057]空闲时间计算单元,用于根据预设时间、实时数据交互的时间计算空闲时间;
[0058]实时数据交互单元,用于与驱动设备进行实时数据交互;
[0059]非实时数据插入单元,用于在判断出空闲时间是否大于非实时数据交互的时间时,在实时数据交互单元的实时数据交互完毕后进行非实时数据交互。
[0060]具体的,所述实时数据交互以及非实时数据交互包括:实时数据交互单元/非实时数据插入单元下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据至实时数据交互单元/非实时数据插入单元。
[0061]具体的,所述的计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3;
[0062]其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。
[0063]优选的,所述手持操作器通过USB接口与所述PC机连接通信。
[0064]综上所述,实施本发明的基于485总线的驱动设备监控方法以及系统,具有以下有益效果:本发明增设采用嵌入式控制芯片的手持操作器作为485总线的链路管理者,其通过串行通讯链路与PC机间进行实时数据和非实时数据交互,通过485总线与驱动设备交互,由于链路管理者放在基于嵌入式控制芯片的设备下,保证了控制周期的准确性,周期的准确性提高也就提高了总线利用率;而且在保证了周期准确性的前提下,本发明同时将数据进行分类,对于实时数据进行周期性下发,对于非实时数据在实时数据交互空闲时插入,这样使得总线利用率达到最高;进一步的,手持操作器使用USB接口与PC机通讯,增大了数据传输的速率。
[0065]上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的【具体实施方式】,上述的【具体实施方式】仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
【主权项】
1.一种基于485总线的驱动设备监控方法,用于实现PC机对多个驱动设备的监控,其特征在于,所述PC机经由手持操作器及485总线与多个驱动设备连接,所述方法包括: 51、所述手持操作器通过串行通讯链路与PC机间进行实时数据和非实时数据交互; 52、所述手持操作器以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。2.根据权利要求1所述的基于485总线的驱动设备监控方法,其特征在于,所述步骤S2包括: 521、手持操作器在进入新的实时数据发送周期时,计算实时数据交互的时间和非实时数据交互的时间; 522、根据所述预设时间、实时数据交互的时间计算空闲时间; 523、判断所述空闲时间是否大于步骤S21中的所述非实时数据交互的时间,如果是,则在实时数据交互完毕后进行非实时数据交互,如果不是,则等待进入下一个新的实时数据发送周期。3.根据权利要求2所述的基于485总线的驱动设备监控方法,其特征在于,所述实时数据交互以及非实时数据交互包括:手持操作器下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据。4.根据权利要求3所述的基于485总线的驱动设备监控方法,其特征在于,所述步骤S21中计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3; 其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。5.根据权利要求1所述的基于485总线的驱动设备监控方法,其特征在于,所述手持操作器通过USB接口与所述PC机连接通信。6.一种基于485总线的驱动设备监控系统,其特征在于,包括:PC机、多个驱动设备和采用嵌入式控制芯片的手持操作器;所述PC机经由手持操作器及485总线与多个驱动设备连接;其中,所述手持操作器包括第一通信单元和第二通信单元,第一通信单元用于通过串行通讯链路与PC机间进行实时数据和非实时数据交互,第二通信单元用于以预设时间为间隔,周期性的发送实时数据到485总线及从485总线接收实时数据,并在实时数据交互空闲时进行非实时数据交互。7.根据权利要求6所述的基于485总线的驱动设备监控系统,其特征在于,所述第二通信单元包括: 周期启动单元,用于判定是否进入新的实时数据发送周期,并在进入新的实时数据发送周期时,计算实时数据交互的时间和非实时数据交互的时间; 空闲时间计算单元,用于根据所述预设时间、实时数据交互的时间计算空闲时间; 实时数据交互单元,用于与驱动设备进行实时数据交互; 非实时数据插入单元,用于在判断出所述空闲时间是否大于所述非实时数据交互的时间时,在实时数据交互单元的实时数据交互完毕后进行非实时数据交互。8.根据权利要求7所述的基于485总线的驱动设备监控系统,其特征在于,所述实时数据交互以及非实时数据交互包括:实时数据交互单元/非实时数据插入单元下发实时数据/非实时数据相关的请求命令,驱动设备接收到请求命令后在一定的数据响应时间之内上传响应数据至实时数据交互单元/非实时数据插入单元。9.根据权利要求8所述的基于485总线的驱动设备监控系统,其特征在于,所述的计算实时数据交互的时间和非实时数据交互的时间是基于以下公式计算:t = tl+t2+t3; 其中,t表示实时数据/非实时数据交互的时间,tl表示请求命令的传输时间,t2表示数据响应时间的理论最大值,t3表示响应数据的传输时间;传输时间等于数据位流数/波特率。10.根据权利要求6所述的基于485总线的驱动设备监控系统,其特征在于,所述手持操作器通过USB接口与所述PC机连接通信。
【文档编号】G06F13/42GK105930285SQ201610225929
【公开日】2016年9月7日
【申请日】2016年4月12日
【发明人】杨添乐
【申请人】深圳市汇川技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1