一种通讯方法及其系统与流程

文档序号:12131962阅读:243来源:国知局
一种通讯方法及其系统与流程

本发明涉及控制器间通讯技术领域,特别是涉及一种通讯方法和一种通讯系统。



背景技术:

目前控制器间通讯(如MCU与MPU间通讯)采用单通道通讯,通讯方式比较单一。若在通讯过程出现通道异常(比如:通讯链路损坏,通讯收发设备损坏,通讯软件不可恢复故障等),通讯将被迫中止,通讯没办法得到保障。

因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何在控制器间的通讯链路出现异常时,重新恢复正常的通讯。



技术实现要素:

本发明实施例所要解决的技术问题是提供一种通讯方法,使得在控制器间的通讯链路出现异常时,重新恢复正常的通讯。

相应的,本发明实施例还提供了一种控制器以及一种通讯系统,用以保证上述方法的实现及应用。

为了解决上述问题,本发明公开了一种通讯方法,应用于至少两个控制器之间,所述方法包括:

按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道至少适用两种不同的通讯协议;

当所述至少两个控制器中的任一控制器检测到通讯异常时,开启其他任一通讯通道,并向与所述检测到通讯异常的控制器通讯的控制器发送切换通道请求信息;

基于接收的通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

优选地,所述基于接收的通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输的步骤,包括:

基于接收的通讯通道的切换确认信息,恢复当前的通讯现场数据,得到第一通讯现场数据,并将所述第一通讯现场数据发送给与所述检测到通讯异常的控制器通讯的控制器;

基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道。

优选地,所述基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道的步骤之后,还包括:

记录通讯通道异常数据。

本发明还公开了一种通讯方法,应用于至少两个控制器之间,所述方法包括:

按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道至少适用两种不同的通讯协议;

基于接收的切换通道请求信息,确认通讯通道的切换,生成通讯通道的切换确认信息,并将所述通讯通道的切换确认信息发送给检测到通讯异常的控制器;

基于所述通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

优选地,所述基于所述通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输的步骤,包括:

基于接收的切换通道请求信息,保存当前的通讯现场数据,得到第二通讯现场数据;

基于接收的第一通讯现场数据与所述第二通讯现场数据,对所述第一通讯现场数据与第二通讯现场数据进行对比确认,找到数据传输开始发生错误的点后,生成现场数据确认信息,并发送给检测到通讯异常的控制器;

基于所述现场数据确认信息,整理新的通讯现场数据;

基于所述现场数据确认信息,确认通道切换成功,将默认通讯通道更新为开启的其他任一通讯通道。

优选地,所述基于接现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道的步骤之后,还包括:

记录通讯通道异常数据。

本发明还公开了一种控制器,所述控制器与其他至少一个控制器之间进行通讯,所述控制器包括:

第一通讯通道建立模块,用于按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道上至少适用两种不同的通讯协议;

检测处理模块,用于当检测到通讯异常时,开启其他任一通讯通道,并向与所述控制器通讯的其他至少一个控制器发送切换通道请求信息;

第一通道切换模块,用于基于接收的通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

优选地,所述第一通道切换模块包括:

现场数据恢复单元,用于基于接收的通讯通道的切换确认信息,恢复当前的通讯现场数据,得到第一通讯现场数据,并将所述第一通讯现场数据发送给与所述检测到通讯异常的控制器通讯的控制器;

第一通道切换成功确认单元,用于基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道。

优选地,所述控制器还包括:

第二通讯通道建立模块,用于按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道上至少适用两种不同的通讯协议;

通道切换确认模块,用于基于接收的切换通道请求信息,确认通讯通道的切换,生成通讯通道的切换确认信息,并将所述通讯通道的切换确认信息发送给检测到通讯异常的控制器;

第二通道切换模块,用于基于所述通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

本发明还公开了一种通讯系统,包括至少两个如上所述的控制器。

与现有技术相比,本发明实施例包括以下优点:

本发明实施例提供的一种通讯方法及其系统在相互通讯的控制器间包括多个独立的适用于不同通讯协议的通讯通道,当其中一个控制器检测到通讯异常时,请求切换到其他正常的通讯通道,待接收到通讯通道的切换确认信息后,进行通讯通道的切换,保证了控制器间的正常通讯。

附图说明

图1是本发明的一种通讯方法实施例一的步骤流程图;

图2是本发明的一种通讯方法实施例二的步骤流程图;

图3是本发明的一种通讯方法实施例三的步骤流程图;

图4是本发明的一种通讯系统实施例的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

本发明实施例的核心构思之一在于,在进行通讯的控制器之间建立了多个独立的通讯通道,当其中一个控制器检测到通讯异常时,请求切换到其他正常的通讯通道,待接收到通讯通道的切换确认信息后,进行通讯通道的切换,从而保证了控制器间的正常通讯。

参照图1,示出了本发明的一种通讯方法实施例一的步骤流程图,本发明实施例从检测到通讯异常的控制器一侧进行说明,具体可以包括如下步骤:

步骤101:按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道至少适用两种不同的通讯协议;

在本发明实施例的一种优选示例中,相互通讯的控制器之间的各个通讯通道是独立的且采用不同的通讯协议,通过采用不同的通讯方式来避免因为同样的通讯异常导致通讯失败。

步骤102:当所述至少两个控制器中的任一控制器检测到通讯异常时,开启其他任一通讯通道,并向与所述检测到通讯异常的控制器通讯的控制器发送切换通道请求信息;

在本发明实施例的一种优选示例中,控制器采用同步定时方式对各个通讯通道进行扫描,从而检测出当前用于数据传输的通讯通道异常的情况,并开始查找正常的通讯通道,当查找到正常的通讯通道后,向与所述检测到通讯异常的控制器通讯的控制器发送切换通道请求信息。

步骤103:基于接收的通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

在本发明实施例的一种优选示例中,所述步骤103具体可以包括如下步骤:

子步骤11:基于接收的通讯通道的切换确认信息,恢复当前的通讯现场数据,得到第一通讯现场数据,并将所述第一通讯现场数据发送给与所述检测到通讯异常的控制器通讯的控制器;

子步骤12:基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道。

在本发明实施例的一种优选示例中,所述子步骤12之后还可以包括:记录通讯通道异常数据。

记录通讯通道异常数据主要用于研究通讯异常产生的原因。

参照图2,示出了本发明的一种通讯方法实施例二的步骤流程图,本发明实施例从与检测到通讯异常的控制器通讯的控制器一侧进行说明,具体可以包括如下步骤:

步骤201:按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道至少适用两种不同的通讯协议;

在本发明实施例的一种优选示例中,相互通讯的控制器之间的各个通讯通道是独立的且采用不同的通讯协议,通过采用不同的通讯方式来避免因为同样的通讯异常导致通讯失败。

步骤202:基于接收的切换通道请求信息,确认通讯通道的切换,生成通讯通道的切换确认信息,并将所述通讯通道的切换确认信息发送给检测到通讯异常的控制器。

步骤203:基于所述通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

在本发明实施例的一种优选示例中,所述步骤203具体可以包括如下步骤:

子步骤21:基于接收的切换通道请求信息,保存当前的通讯现场数据,得到第二通讯现场数据。

子步骤22:基于接收的第一通讯现场数据与所述第二通讯现场数据,对所述第一通讯现场数据与第二通讯现场数据进行对比确认,找到数据传输开始发生错误的点后,生成现场数据确认信息,并发送给检测到通讯异常的控制器;

需要说明的是,子步骤22中的基于接收的第一通讯现场数据与所述第二通讯现场数据,对所述第一通讯现场数据与第二通讯现场数据进行对比确认,找到数据传输开始发生错误的点后,生成现场数据确认信息,也可以由所述检测到通讯异常的控制器来完成,本发明实施例对此不作限制。

子步骤23:基于所述现场数据确认信息,整理新的通讯现场数据。

需要说明的是,整理新的通讯现场数据包括:根据子步骤22中找到的数据传输开始发生错误的点后,将传输完的数据位置重新记录到所述数据传输开始发生错误的点。则开始发生错误的点之前传输的数据为正确的数据,当控制器间重新进行数据传输时,则从开始发生错误的点进行传输。

子步骤24:基于所述现场数据确认信息,确认通道切换成功,将默认通讯通道更新为开启的其他任一通讯通道。

在本发明实施例的一种优选示例中,所述子步骤24之后还可以包括:记录通讯通道异常数据。记录通讯通道异常数据主要用于研究通讯异常产生的原因。

参照图3,示出了本发明的一种通讯方法实施例三的步骤流程图,其中,为更加清楚简要说明控制器间的通讯方法,将检测到通讯异常的控制器具命名为控制器一,将与检测到通讯异常的控制器通讯的控制器命名为控制器二,本发明的一种通讯方法实施例三具体包括如下步骤:

步骤301:按照预定的通讯协议,在控制器一与控制器二之间建立多个通讯通道,多个通讯通道适用不同的通讯协议;

步骤302:当控制器一检测到通讯异常时,开启其他任一通讯通道,并向控制器二发送切换通道请求信息;

步骤303:控制器二基于接收到的切换通道请求信息,保存当前的通讯现场数据,得到第二通讯现场数据;

步骤304:控制器二基于接收的所述切换通道请求信息,确认通讯通道的切换,并向控制器一发送通讯通道的切换确认信息;

步骤305:控制器一基于接收的通讯通道的切换确认信息,恢复当前的通讯现场数据,得到第一通讯现场数据,并将所述第一通讯现场数据发送给控制器二;

步骤306:控制器二基于接收的第一通讯现场数据与所述第二通讯现场数据,对所述第一通讯现场数据与第二通讯现场数据进行对比确认,找到数据传输开始发生错误的点后,得到现场数据确认信息,并发送给控制器一;

步骤307:控制器二基于所述现场数据确认信息,整理新的通讯现场数据;

步骤308:控制器一基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道;

步骤309:控制器二基于所述现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道;

步骤309中控制器二基于的所述现场数据确认信息,可以是由步骤306中得到的现场数据确认信息直接得到的,也可以是控制器一在所述步骤308之后,将得到的现场数据确认信息发送给控制器二得到的;

步骤310:控制器二记录通讯通道异常数据;

步骤311:控制器一记录通讯通道异常数据。

参照图4,示出了本发明的一种通讯系统实施例的结构框图,所述通讯系统至少包括两个控制器。为了清楚简要地说明本发明实施例通讯系统中控制器间的通讯方式以及各个结构模块的连接关系,以两个控制器组成的通讯系统为例加以说明。本领域的技术人员能够明白,由本发明的实施例能够清楚地得出多个控制器组成的通讯系统的通讯方式以及各个结构模块的连接关系,在此不做赘述。

所述控制器与其他至少一个控制器之间进行通讯,本发明实施例分别从检测到通讯异常的控制器(如图4中的控制器一)一侧和与所述检测到通讯异常的控制器通讯的控制器(如图4中的控制器二)一侧分别进行说明。需要说明的是,检测到通讯异常的控制器和与所述检测到通讯异常的控制器通讯的控制器为相同的控制器,为清楚地说明控制器中各个结构模块之间的通讯方式,所以在图4中的两个控制器中画出了不同的结构模块,但并不说明控制器只包括这几个结构模块。

从检测到通讯异常的控制器一侧来说明,所述控制器具体可以包括:

第一通讯通道建立模块401,用于按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道上至少适用两种不同的通讯协议。

检测处理模块402,用于当检测到通讯异常时,开启其他任一通讯通道,并向与所述控制器通讯的其他至少一个控制器发送切换通道请求信息。

第一通道切换模块403,用于基于接收的通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

在本发明实施例的一种优选示例中,所述通道切换模块403可以包括:

现场数据恢复单元31,用于基于接收的通讯通道的切换确认信息,恢复当前的通讯现场数据,得到第一通讯现场数据,并将所述第一通讯现场数据发送给与所述检测到通讯异常的控制器通讯的控制器;

第一通道切换成功确认单元32,用于基于接收的现场数据确认信息,确认通道切换成功,将默认通讯通道更新为所述开启的其他任一通讯通道。

在本发明实施例的一种优选示例中,所述控制器还可以包括:

通道异常记录模块,用于记录通讯通道异常数据。

从与检测到通讯异常的控制器通讯的控制器一侧来说明,所述控制器具体可以包括:

第二通讯通道建立模块404,用于按照预定的通讯协议,在所述至少两个控制器之间建立多个通讯通道,所述多个通讯通道上至少适用两种不同的通讯协议。

通道切换确认模块405,用于基于接收的切换通道请求信息,确认通讯通道的切换,生成通讯通道的切换确认信息,并将所述通讯通道的切换确认信息发送给检测到通讯异常的控制器。

第二通道切换模块406,用于基于所述通讯通道的切换确认信息,将数据从通讯异常的通道切换到所述开启的其他任一通讯通道上传输。

在本发明实施例的一种优选示例中,所述第二通道切换模块406可以包括:

现场数据保存单元61,用于基于接收的切换通道请求信息,保存当前的通讯现场数据,得到第二通讯现场数据。

现场数据确认单元62,用于基于接收的第一通讯现场数据与所述第二通讯现场数据,对所述第一通讯现场数据与第二通讯现场数据进行对比确认,找到数据传输开始发生错误的点后,得到现场数据确认信息,并发送给检测到通讯异常的控制器。

现场数据整理单元63,用于基于所述现场数据确认信息,整理新的通讯现场数据。

需要说明的是,整理新的通讯现场数据包括:根据现场数据确认单元62找到的数据传输开始发生错误的点后,将传输完的数据位置重新记录到所述数据传输开始发生错误的点。则开始发生错误的点之前传输的数据为正确的数据,当控制器间重新进行数据传输时,则从开始发生错误的点进行传输。

第二通道切换成功确认单元64,用于基于所述现场数据确认信息,确认通道切换成功,将默认通讯通道更新为开启的其他任一通讯通道。

需要说明的是,第一通讯通道建立模块401与第二通讯通道建立模块404为相同的结构模块;第一通道切换模块403与第二通道切换模块406为相同的结构模块;第一通道切换成功确认单元32与第二通道切换成功确认单元64为相同的结构模块,为了能够清楚地说明相互通讯的控制器之间各个结构模块的连接关系,才如此命名。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种通讯方法和一种通讯系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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