[0024] 下面结合附图和具体实施例详细描述本发明,本发明的目的和效果将变得更加明显。
[0025] 本发明将用各传感器节点上一次被成功发送的数据与当前产生的数据进行比较得到相对偏差,将相对偏差与动态加权值结合计算各传感器节点的优先级,最高优先级的传感器节点的数据将被交换机发送。在每一次交换机发送数据后,各传感器节点根据在本次数据发送的竞争结果,改变其自身的在发送数据竞争中失败的累计次数;最后通过各传感器节点的初始加权值与竞争失败的累计次数重新计算其加权值,该动态加权值将用于下一次的各传感器节点优先级计算,能够有效提高工业传感器的节点更新率。
[0026] 本发明所述的一个工业网络的子网段中有N个传感器节点,并将每个传感器节点依次编号为{1,2,3...N},各传感器节点上一次被成功发送的数据与当前产生的数据进行比较得到相对偏差,可以如下表示:
[0027]
[0028] 其中ei(k)为k时刻时编号为i(1≤i≤N)的传感器节点产生的数据与上一次被成功发送的数据的相对偏差;yi(k)为k时刻时编号为i的传感器节点产生并到达交换机的数据;yi(k‑1)为编号为i的传感器节点上一次被成功发送的数据。
[0029] 交换机根据各传感器节点的相对偏差与动态权重确定各传感器节点的优先级,并选择优先级最高的传感器节点的数据进行发送,设k时刻时优先级最高的传感器节点序号为σk:
[0030]
[0031] 其中, wi(k)为k时刻时编号为i的传感器节点的权重值;对于任意 满足 e(k)=[e1(k)e2(k)...eN
(k)]。(3)
[0032] 完成一次数据传输后,系统仅更新记录本次被选中发送的节点的数据,未被发送的数据将被抛弃,可以表示为:
[0033]
[0034] 完成一次数据传输后,各传感器节点更新其对应的fi(k)值,fi(k)为k时刻发送数据后编号为i的传感器节点在发送数据竞争中失败的累计次数:
[0035]
[0036] 各传感器节点根据更新后的fi(k),重新计算其加权值wi(k):
[0037]
[0038] 其中,wi为编号为i的传感器节点的初始权重,通常该值由相应传感器节点在网络中的重要程度所决定,α为重要因子,其取值范围为0到1之间,用于体现各传感器节点竞争失败的累计次数在更新优先级时所占的重要程度。
[0039] 在每一次交换机选取传感器节点数据进行发送时,执行公式(1)‑(6),计算并选取最高优先级的传感器节点,并更新动态加权值。
[0040] 如图1所示,本发明一种基于动态加权的工业传感器节点更新率优化方法,包括以下步骤:
[0041] (1)计算各传感器节点的优先级,具体包括以下子步骤:
[0042] (1.1)计算当前各传感器节点等待发送的数据与上一次其成功发送的数据的相对偏差;
[0043] (1.2)将各传感器节点数据的相对偏差与其对应的加权值相乘得到各传感器的优先级;
[0044] (2)k时刻时,交换机选择优先级最高的传感器节点σk的数据进行传输;
[0045] (3)在本次数据发送中,未被发送数据的传感器节点i对应的fi(k)值加1,其中fi(k)为k时刻发送数据后传感器节点i在发送数据竞争中失败的累计次数;
[0046] (4)在本次数据发送中,被发送数据的传感器节点σk对应的 设置为0;
[0047] (5)各传感器节点根据fi(k)重新计算其加权值 其中wi为传感器节点i的初始权重,由相应传感器节点在网络中的重要程度所决定;α为重要因子,其取值范围为0到1之间,用于体现各传感器节点竞争失败的累计次数在更新优先级时所占的重要程度。
[0048] 实施例
[0049] 如图2所示,在一个网段中,有64个传感器节点,并将每个传感器节点依次编号为{1,2,3...64},每一个传感器节点通过一根数据线与交换机直连,所有传感器节点均与同一个交换机相连。每一个传感器节点的优先级动态改变。交换机在任意时刻只选择优先级最高的传感器节点的数据发送至网络中。
[0050] 图3为64个传感器节点场景下,分别采用本发明方法与传统静态加权方法时,交换机发送64次数据时所有传感器节点的更新率。如图3所示,在调度一开始时,由于此时暂未出现重复发送数据的节点且未发送数据的节点的动态加权值变化不大,导致两条曲线重合上升。随着调度的进行,传统静态加权方法多次出现重复发送短时间内已发送数据的节点,导致节点更新率增加缓慢。在本发明方法下,长时间未发送数据的传感器节点的动态加权值随着时间而上升,得到了更多发送数据的机会,其节点更新率持续高于传统静态加权方法。
[0051] 本发明不仅局限于上述具体实施方式,本领域一般技术人员根据本发明公开的内容,可以采用其它多种具体实施方案实施本发明。因此,凡是采用本发明的设计结构和思路,做一些简单的变化或更改的设计,都落入本发明保护范围。