一种基于RS485管理器的管理系统及方法与流程

文档序号:21887727发布日期:2020-08-18 17:29阅读:615来源:国知局
一种基于RS485管理器的管理系统及方法与流程

本发明涉及通讯技术领域,具体而言,特别涉及一种基于rs485管理器的管理系统及方法。



背景技术:

rs485是隶属于osi模型物理层的电气特性规定为:2线、半双工、平衡传输线多点通信的标准。rs485使用缆线两端的电压差值来表示传递信号,不同的电压差分别标识为逻辑1及逻辑0。两端的电压差最小为0.2v以上时有效,任何不大于12v或者不小于-7v的差值对接受端都被认为是正确的。

rs485的master-slave架构:在master-slave网络架构中,会有一台设备做为master,引导所有网络活动,多半会由这一台来提供rs4485的偏置电路,其他slave设备就不需偏置电路。在此配置下,master设备一般会在rs485网络中的中间点,而由网络最末端的两台slave提供终接电阻。

mqtt通讯:mqtt(messagequeuingtelemetrytransport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于tcp/ip协议上,由ibm在1999年发布。mqtt最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

队列:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

rs485接口组成的半双工网络,如图1所示,一般是两线制,多采用屏蔽双绞线传输,这种接线方式为总线式拓扑结构,在同一总线上最多可以挂接256个结点。工控领域使用485通讯的接口通讯的应用有很多,而且多采用master-slave架构。

在使用中存在以下问题:

1)单个应用长时间占用485接口,导致其他应用无法正常工作。

2)不同应用如果没有交互,该应用不知道其他应用使用485通讯的收发状态,会导致数据乱序。



技术实现要素:

为了弥补现有技术的不足,系统需要一个统一管理rs485通讯的服务,本发明提供了一种基于rs485管理器的管理系统及方法。

本发明是通过如下技术方案实现的:一种基于rs485管理器的管理系统,其中,包括rs485管理器和队列,所述rs485管理器使用mqtt通讯和使用rs485通讯的应用程序通讯,所述队列存储转发数据存。

作为优选方案,队列采用先到先得原则,由系统中所有使用rs485接口的程序的数据收发。

一种基于rs485管理器的管理系统的方法,具体包括以下步骤:

步骤(1):打开系统中的rs485接口,为每个rs485接口建立一个收发线程。

步骤(2):初始化mqtt通讯、注册、订阅应用注册、注销、各个rs485接口的通讯主题,等待应用程序注册。

步骤(3):rs485管理器在收到报文后判断数据有效性,记录注册信息,根据注册方发送的主题记录注册应用的名称。

步骤(4):rs485管理器接收到应用转发到设备的数据,先判断当前应用是否已经注册,合法性校验通过后将数据存储到对应的rs485接口的转发队列中;判断要使用的rs485接口的配置是否和应用程序一致,转发数据到rs485设备;

步骤(5):根据应用设置的等待返回时间,等待设备返回数据,如果在规定时间内收到设备返回的数据,将数据转发到应用程序;

步骤(6):检测应用注册后空闲时间,如果超过规定时间,删除应用注册信息。

步骤(7):在接收到应用程序注销报文后,rs485管理器根据存储的应用的信息进行匹配,匹配成功后删除信息。

作为优选方案,步骤(2)中的应用程序注册其注册报文包括:rs485接口名称、串口配置、等待数据返回时间。

进一步地,串口配置包括波特率、数据位、停止位、奇偶校验、流控。

本发明由于采用了以上技术方案,与现有技术相比使其具有以下有益效果:1、本程序通过对硬件抽象,实现用户程序和底层驱动的隔离,用户程序不再需要直接调用驱动。2、用户在使用485通讯时不再需要关注485接口的收发状态,不用担心因为多个程序竞争485资源而导致数据错乱。

本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为rs485半双工一主多从通讯流程示意图;

图2为本发明的流程示意图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

下面结合图2对本发明的实施例的rs485管理器进行具体说明。

如图2所示,本发明提出了一种基于rs485管理器的管理系统,其中,包括rs485管理器和队列,所述rs485管理器使用mqtt通讯和使用rs485通讯的应用程序通讯,所述队列存储转发数据存,队列采用先到先得原则,由系统中所有使用rs485接口的程序的数据收发。

一种基于rs485管理器的管理系统的方法,具体包括以下步骤:

步骤(1):打开系统中的rs485接口,为每个rs485接口建立一个收发线程。

步骤(2):初始化mqtt通讯、注册、订阅应用注册、注销、各个rs485接口的通讯主题,等待应用程序注册。应用程序注册其注册报文包括:rs485接口名称、串口配置、等待数据返回时间。串口配置包括波特率、数据位、停止位、奇偶校验、流控。

步骤(3):rs485管理器在收到报文后判断数据有效性,记录注册信息,根据注册方发送的主题记录注册应用的名称。

步骤(4):rs485管理器接收到应用转发到设备的数据,先判断当前应用是否已经注册,合法性校验通过后将数据存储到对应的rs485接口的转发队列中;判断要使用的rs485接口的配置是否和应用程序一致,转发数据到rs485设备;

步骤(5):根据应用设置的等待返回时间,等待设备返回数据,如果在规定时间内收到设备返回的数据,将数据转发到应用程序;

步骤(6):检测应用注册后空闲时间,如果超过规定时间,删除应用注册信息。

步骤(7):在接收到应用程序注销报文后,rs485管理器根据存储的应用的信息进行匹配,匹配成功后删除信息。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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