一种基于RS485网络的实时通信方法与流程

文档序号:11253839阅读:981来源:国知局
一种基于RS485网络的实时通信方法与流程

本发明涉及物联网系统应用,具体涉及一种基于rs485网络的实时通信方法。



背景技术:

现有的rs485网络系统,在实时要求不高的应用场合,普遍采用的是点名轮询模式,这种模式随着网络节点的增加导致各节点延时变长,实时性下降,因此它只适合实时要求不高的小网络,在实时性要求较高的大中型网络应用场合根本无法达到要求。



技术实现要素:

本发明的目的在于克服现有技术存在的以上问题,提供一种基于rs485网络的实时通信方法,用于解决rs485网络多点并发实时通信的问题。

为实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:

一种基于rs485网络的实时通信方法,包括一rs485总线探测电路与rs485总线竞争方法;所述的rs485总线探测电路为闭环调节电路,所述的rs485总线探测电路包括一发送探测引脚与一接收探测引脚;所述的rs485总线探测电路用于监听rs485总线状态;所述的rs485总线竞争方法用于与后台连接的若干终端竞争rs485总线的控制权,所述的总线竞争方法为采用随机离散数学模型结合定时器与终端机器号计算所述的终端的总线竞争时间,所述的终端的总线竞争时间最短的获得rs485总线控制权。

进一步的,所述的一种基于rs485网络的实时通信方法包括以下步骤:

总线监听,监听rs485总线状态,若总线空闲,则发送引脚发送指令至各终端;

竞争响应,接收到总线空闲的各终端按需求响应总线空闲指令,所述的需求包括数据传输、数据处理;

总线竞争,结合定时器、终端机器号与随机离散数学模型计算本次竞争时间最短的终端,获得本次总线竞争的控制权;

总线数据传输,后台数据发送至终端。

进一步的,所述的步骤总线竞争与总线数据传输之间还有包括总线空闲探测,所述的总线空闲探测用于探测获得总线控制权的终端接收数据前后的总线状态。

进一步的,所述的步骤总线竞争与总线数据传输之间还有包括竞争失利,所述的竞争失利用于获得本次总线控制权的终端在下次总线竞争中失利。

进一步的,所述的竞争失利包括增加本次获得本次总线控制权的终端下次竞争时间。

进一步的,所述的增加本次获得本次总线控制权的终端下次竞争时间的方法为增加固定时间延时;所述的固定时间为一自然数值时间。

进一步的,所述的增加本次获得本次总线控制权的终端下次竞争时间的方法为增加竞争平均时间,所述的竞争平均时间为本次参与竞争的各终端竞争时间的平均值。

本发明的有益效果:本发明提供一种基于rs485网络的实时通信方法,包括一rs485总线探测电路与rs485总线竞争方法;所述的rs485总线探测电路为闭环调节电路,所述的rs485总线探测电路包括一发送探测引脚与一接收探测引脚;所述的rs485总线探测电路用于监听rs485总线状态;所述的rs485总线竞争方法用于与后台连接的若干终端竞争rs485总线的控制权,所述的总线竞争方法为采用随机离散数学模型结合定时器与终端机器号计算所述的终端的总线竞争时间,所述的终端的总线竞争时间最短的获得rs485总线控制权。本发明打破传统的rs485总线点名轮询模式,采用新式的总线竞争的方式获得总线控制权,提高了网络系统的实时性,有效防止数据碰撞,从而提高了网络运行效率。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。本发明的具体实施方式由以下实施例及其附图详细给出。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明的一种基于rs485网络的实时通信示意图;

图2是本发明的一种基于rs485网络的实时通信原理示意图;

图3是本发明的一种基于rs485网络的实时通信的硬件实现示意图;

图4是本发明的一种基于rs485网络的实时通信的流程图。

具体实施方式

下面将参考附图并结合实施例,来详细说明本发明。

参照图1-4所示,一种基于rs485网络的实时通信方法,包括一rs485总线探测电路与rs485总线竞争方法;所述的rs485总线探测电路为闭环调节电路,所述的rs485总线探测电路包括一发送探测引脚与一接收探测引脚;所述的rs485总线探测电路用于监听rs485总线状态;所述的rs485总线竞争方法用于与后台连接的若干终端竞争rs485总线的控制权,所述的总线竞争方法为采用随机离散数学模型结合定时器与终端机器号计算所述的终端的总线竞争时间,所述的终端的总线竞争时间最短的获得rs485总线控制权。如图1所示,在本实施例中,pc端相当于后台系统,pc端通过rs485转换器与各终端连接,图中示意终端1-终端4,如图所示,粗线条为pc端往终端发送的数据线,细线条为pc端接收终端的数据线。如图3所示,为rs485总线探测电路,图框中分别为发送探测引脚与接收探测引脚,发送探测引脚接入pc端往终端发送的数据线,接收探测引脚接入pc端接收终端的数据线,形成一闭环网络。

结合图2、图4所示,所述的一种基于rs485网络的实时通信方法包括以下步骤:

总线监听,监听rs485总线状态,若总线空闲,则发送引脚发送指令至各终端,告知各终端总线状态处于空闲,等待接收各终端发送的需求指令;

竞争响应,接收到总线空闲的各终端按需求响应总线空闲指令,所述的需求包括数据传输、数据处理,接收到总线空闲指令的各终端,如终端有数据传输需求或数据处理需求,则发送响应指令通过总线告知后台,后台统计所有有需求的终端,准备进行总线竞争,即获得总线控制权(令牌);

总线竞争,结合定时器、终端机器号与随机离散数学模型计算本次竞争时间最短的终端,获得本次总线竞争的控制权;

总线空闲探测,用于探测获得总线控制权的终端接收数据前后的总线状态;由于总线优先权情况未知,在终端接收数据前后不能保证总线始终处于空闲状态,故需终端接收数据前后的探测总线状态,如探测结果都为空闲状态则,本次传输成功,如非空闲则悬挂本次传输,等待总线空闲再次传输;

竞争失利,用于获得本次总线控制权的终端在下次总线竞争中失利;为防止同一终端多次获得总线控制权,长时间独自占用总线资源,对赢得本次总线竞争的终端设置下次总线竞争时间延时,降低下次总线竞争机会;优选地,所述的增加本次获得本次总线控制权的终端下次竞争时间的方法为增加固定时间延时;所述的固定时间为一自然数值时间;优选地,所述的增加本次获得本次总线控制权的终端下次竞争时间的方法为增加竞争平均时间,所述的竞争平均时间为本次参与竞争的各终端竞争时间的平均值;

总线数据传输,后台数据发送至终端,获得总线控制权(令牌)的终端占用总线资源传输,建立与后台的数据通信。

下面结合一总线竞争实例来详细描述。

如图1所示,终端1-终端4的mac地址为唯一标识,分别为终端1(00:01:6c:06:a6:29)、终端2(03:a1:6f:09:a9:2f)、终端3(40:0f:6d:46:af:a9)、终端4(3a:06:3c:0a:ef:3d),在本次总线空闲时,终端2-4有数据传输需求,利用离散数学模型,随机选择终端mac码的最后2位作为本次总线竞争计算码,并运用软件随机出本次比较标准码,例如3f,设置单次循环时间t,在竞争循环内实现终端末两位与标准码3f比较,不相同则终端末位+1,直至相同,则记录循环次数,但当终端mac出现ff时,终止本终端竞争机会,得出最终竞争所需时间,可得终端2所需竞争时间为16t,终端3所需竞争终止,终端4所需竞争时间为2t;在本次竞争中,终端4获得本次竞争,并把终端4的mac末位置位ff并存储一次至下次竞争使用。应当理解,本实施例中采用mac地址的末两位仅为方便理解而做介绍,并非为所有情况的限定,选用任意两位或一位或多位可根据rs485网络中终端数量而定,一般的,如因单次竞争中,如有终端竞争时间相同,则可随机mac地址中另几位作为一次新的竞争,直至确定唯一的获得总线控制权的终端。

本发明提供一种基于rs485网络的实时通信方法,包括一rs485总线探测电路与rs485总线竞争方法;所述的rs485总线探测电路为闭环调节电路,所述的rs485总线探测电路包括一发送探测引脚与一接收探测引脚;所述的rs485总线探测电路用于监听rs485总线状态;所述的rs485总线竞争方法用于与后台连接的若干终端竞争rs485总线的控制权,所述的总线竞争方法为采用随机离散数学模型结合定时器与终端机器号计算所述的终端的总线竞争时间,所述的终端的总线竞争时间最短的获得rs485总线控制权。本发明打破传统的rs485总线点名轮询模式,采用新式的总线竞争的方式获得总线控制权,提高了网络系统的实时性,有效防止数据碰撞,从而提高了网络运行效率。

以上所述,仅为本发明的较佳实施例而已,并非对本发明作任何形式上的限制;凡本行业的普通技术人员均可按说明书附图所示和以上所述而顺畅地实施本发明;但是,凡熟悉本专业的技术人员在不脱离本发明技术方案范围内,利用以上所揭示的技术内容而做出的些许更动、修饰与演变的等同变化,均为本发明的等效实施例;同时,凡依据本发明的实质技术对以上实施例所作的任何等同变化的更动、修饰与演变等,均仍属于本发明的技术方案的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1