一种基于半双工通信的多主机通信机制的制作方法

文档序号:12490818阅读:486来源:国知局
一种基于半双工通信的多主机通信机制的制作方法与工艺

本发明涉及电力系统领域,尤其涉及一种基于半双工通信的多主机通信机制。



背景技术:

半双工(Half Duplex)数据传输指数据可以在一个信号载体的两个方向上传输,但是不能同时传输。例如,在一个局域网上使用具有半双工传输的技术,一个工作站可以在线上发送数据,然后立即在线上接收数据,这些数据来自数据刚刚传输的方向。像全双工传输一样,半双工包含一个双向线路(线路可以在两个方向上传递数据)。

半双工传输是指接收与发送共用一个载波信道,但同一时刻只能发送或只能接收数据的传输方式。例如,局域网中的半双工数据传输方式是指:一个工作站发送数据,然后立即在同一信道上接收来自相同方向上的数据。另一方面,全双工传输(Full Duplex Transmission)指同时发生在两个方向上的一种数据传输方式。

例如:对讲机就是一种半双工设备,在同一时间内只允许一方讲话。相反,电话机则是一种全双工设备,其通话双方可以同时进行对话。当某局域网中的两台计算机在实现通信时,同一时刻只能在同一方向上传送数据,这是因为大多数局域网中使用的基带网络都只支持单个信号。换句话说,基带网络采用的是半双工工作模式。

只要有合适的设备支持,在某些特定类型的局域网中实现全双工通信是完全可能的。关键是首先解决每个方向上的通信流量信道问题。该问题能否解决主要取决于所使用的网络媒体。如:同轴电缆是由中心导体、绝缘材料层、网状织物构成的屏蔽层以及外部隔离材料层组成,即一条同轴电缆只有一根导线。通过两条同轴电缆可以实现全双工,也可以采用频分多路复用FSK等方式在一条同轴电缆上同时传输多个信号以实现全双工。双绞线电缆由两根具有绝缘保护层的铜导线组成,所以在理论上,使用双绞线电缆作为媒体的网络能实现全双工模式,当前有些制造商正在努力在以太网设备上实现此过程。从本质上看,全双工以太网在现有网络基础上双倍提高了通信吞吐量。



技术实现要素:

由于算法采用调节支路平衡方式,一个台区会出现有2台以上中控器,这对半双工通信的载波通信来说会产生多路冲突,多个中控器不能同时收发数据。这就需要有一种机制,协调各中控器之间完成通信任务。本发明目的在于提供一种基于半双工通信的多主机通信机制。

本发明提供如下技术方案:

一种基于半双工通信的多主机通信机制,包括如下步骤:

(1)在一个台区内按排序设置中控器地址;

(2)中控器上电初始化的时候自检是否接有GPRS,如果有,则中控器自动升级为主机,这时主机发送一条心跳广播报文告知其他中控器本网有主机;

如果没有接GPRS则按设定的延时时间进行确认主机,所述延时时间到了之后,检测中断后的中控器接收数据串口是否有收到其他中控器的心跳报文,如果没有,则此中控器自动升级为主机,同时主机发送一条心跳广播报文告知其他中控器本网有主机,

其他中控器在延时的时间如果收到这条心跳报文,则设置自己为从机,等待主机的调配,不再进行延时;

(3)主机发完心跳报文后,对所有中控器进行轮询,并记录下在线的中控器的地址和台数;

(4)按照地址从小到大,主机通过数据召唤的方式对每一台中控器进行调配,在每次进行调配的时候都发一条心跳报文告知全部中控器有主机存在,从机召唤完后给主机一个报文告知主机召唤完毕,主机对下一台中控器进行调配;

当确认主机后的任意时刻经过10分钟后,线上主机或从机未收到任何报文,则让出主机,从而进行新的主机竞选。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述步骤(2)的延时时间=中控器地址X*1分钟。例如地址为1的中控器延时1分钟,地址为3的中控器延时3分钟。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述步骤(3)所述轮询的方式是:主机从地址1开始询问,看本网有多少个中控器回应,当连续N个地址没有回应的时候,停止轮询,轮询完后记录下中控器的地址和台数,正常运行时,主机一个小时轮询一次从机,看从机是否有增加和减少。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述步骤(3)的N的取值范围为[1,9]。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述的N的取值为6。

进一步说明,所述的一种基于半双工通信的多主机通信机制,当线上出现了两台主机时,两台主机分先后发出报文,当其中一台主机先收到另一台主机心跳报文,而且自己没有接GPRS的时候,则该收到心跳报文的主机无条件变成从机,等待另一台主机的调配,当收到心跳报文的主机自己接有GPRS的时候,则不变成从机,而是继续发送心跳报文,让另外一台主机变成从机。

进一步说明,所述的一种基于半双工通信的多主机通信机制,主机丢失后,如果从机在6分钟之内检测到线上没有任何报文,则根据延时时间进行延时,延时时间到了之后,又从所述步骤(2)的流程进行主机的竞选。其中延时时间=中控器地址X*1分钟。例如地址为1的中控器延时1分钟,地址为3的中控器延时3分钟。

进一步说明,所述的一种基于半双工通信的多主机通信机制,前后两台中控器的地址之差小于6。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述步骤(1)中控器的地址在液晶设备上设置。

进一步说明,所述的一种基于半双工通信的多主机通信机制,所述步骤(4)中所述主机对每一台中控器进行调配,当主机调配其中一台从机时,从机没有响应,则主机对下一个从机进行调配,对此响应失败的从机,会在下一个轮回里面继续访问,如果到达整点响应还是失败,会在每小时一次的轮询中删除该从机的调配;

当主机调配从机,从机也响应的时候,主机开始检测线上有没有报文,如果有报文,说明从机是真的在工作,此时主机等待从机工作完成返回命令,但当主机检测到线上30秒都没有报文的时候,说明从机工作已经完成但没有返回完成报文,或者从机死机,这时候主机重新抢回发送主动权,调配下一台从机进行工作。

综上所述,本发明的有益效果如下:

本发明解决了由于算法采用调节支路平衡方式,一个台区会出现有2台以上中控器,从而半双工通信的载波通信来说会产生多路冲突,多个中控器不能同时收发数据的问题。本发明提出的一种基于半双工通信的多主机通信机制可以协调各中控器之间完成通信任务,使通讯更加顺畅。

附图说明

图1是主机竞争流程图;

图2是主机工作流程图;

图3是从机工作流程图;

具体实施方式

下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

一种基于半双工通信的多主机通信机制,包括如下步骤:

(1)在一个台区内有5个中控器,并按排序设置中控器地址,两个中控器之间的地址之差小于3,所以最终的排序结果为中控地址1,中控地址2,中控地址4,中控地址5,中控地址7,中控器的地址在液晶设备上设置。

(2)地址为1的中控器上电初始化的时候检查到自己有GPRS,此时地址为1的中控器自动升级为主机,这时主机马上发送一条心跳广播报文告诉其他中控器本网有主机。

(3)主机发完心跳报文后,需要知道线上有几台中控器,主机就从地址1开始询问,看本网有多少个中控器回应,当连续5个地址没有回应的时候,停止轮询。轮询完后记录下中控器的地址分别为中控地址1,中控地址2,中控地址4,中控地址5,中控地址7,一共有5台数,正常运行时,主机一个小时轮询一次从机,看从机是否有增加和减少。

(4)按照地址从1到7,主机对地址为2的中控器进行数据召唤,并发一条心跳报文告诉全部中控器有主机存在,地址为2的中控器召唤完后给主机一个报文告诉它召唤完毕,主机进行下一台的调配。当主机调配地址为5的中控器从机时,从机没有响应,则主机对地址为7的中控器从机进行调配,对此响应失败的地址为5的中控器从机,会在下一个轮回里面继续访问,如果到达整点响应还是失败,会在每小时一次的轮询中删除该从机的调配。

(5)当主机调配地址为7的中控器从机,地址为7的中控器从机也响应的时候,主机开始检测线上有没有报文,此时有报文,说明地址为7的中控器从机是真的在工作,此时主机等待从机工作完成返回命令,但当主机检测到线上30秒都没有报文的时候,说明从机工作已经完成但没有返回完成报文。这时候主机重新抢回发送主动权,调配下一台从机进行工作。

实施例2

一种基于半双工通信的多主机通信机制,包括如下步骤:

(1)在一个台区内有6个中控器,并按排序设置中控器地址,两个中控器之间的地址之差小于5,所以最终的排序结果为中控地址1,中控地址3,中控地址4,中控地址5,中控地址8,中控地址9,中控器的地址在液晶设备上设置。

(2)这6台中控器同时上电,并且每台中控器都没有GPRS。此时按延时时间进行确认主机,延时时间到了1分钟之后,中断后的地址为1的中控器接收数据串口是没有有收到其他中控器的心跳报文,则此中控器自动升级为主机,这时候主机马上发送一条心跳广播报文告诉其他中控器本网有主机了。其他中控器在延时的时间如果收到这条心跳报文,则设置自己为从机,不再进行延时,等待主机的调配。

(3)主机发完心跳报文后,需要知道线上有几台中控器,主机就从地址1开始询问,看本网有多少个中控器回应,当连续3个地址没有回应的时候,停止轮询。轮询完后记录下中控器的地址分别为:中控地址1,中控地址3,中控地址4,中控地址5,中控地址8,中控地址9,一共有6台数,正常运行时,主机一个小时轮询一次从机,看从机是否有增加和减少。

(4)按照地址从1到9,主机调配每一台中控器进行数据召唤,在每次进行调配的时候都发一条心跳报文告诉全部中控器有主机存在,当主机调配到地址8的中控器,从机召唤完后给主机一个报文告诉它召唤完毕,主机对下一台地址为9的中控器进行调配。但经过10分钟后,线上主机或从机未收到任何报文,则地址为1的中控器让出主机,从而进行新的主机竞选。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

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