发明名称 一种现场总线式网络拓扑识别方法
摘要 本发明提供了一种现场总线式网络拓扑识别方法,通过电流检测技术,由控制器向探测点逐次发送查询信号,探测点返回确认信号,探测点所经过的同一链路最短路径的探测点也向控制器返回相应的确认信号,由此确认该探测点与任一探测点的关系,通过各探测点之间的关系,可判断出整个网络的拓扑关系图。本发明可以确定网络结点之间的拓扑关系,从而可以更方便快捷地对网络系统进行安装、检修以及排除故障,大大地节省安装检修时间以及由此带来的相关费用。同时,由于采用电流检测技术,拓扑关系的确定过程对整个回路的电流几乎不产生影响,整个探测回路的电流可以做到μA级,相应连接的探测设备数也可以得到很大的提高。
申请公布号 CN103248576B 申请公布日期 2015.12.09
申请号 CN201310180347.4 申请日期 2013.05.15
申请人 西北工业大学 发明人 贺宏锟;韩朝晨;康新华;冯千倪
分类号 H04L12/751(2013.01)I;H04L12/40(2006.01)I 主分类号 H04L12/751(2013.01)I
代理机构 西北工业大学专利中心 61204 代理人 顾潮琪
主权项 一种现场总线式网络拓扑识别方法,其特征在于包括下述步骤:步骤1:确定n个探测点之间关系的n项数列,由控制器逐次向各探测点发送查询信号,各探测点根据收到查询信号的情况返回确认信号;探测点向控制器返回确认信号记为1,若探测点未返回确认信号则记为0,用A<sub>i</sub>表示第i个探测点与所有探测点之间关系的n项数列,A<sub>i</sub>={a<sub>i1</sub>,a<sub>i2</sub>,...,a<sub>ij</sub>,...,a<sub>in</sub>}(i,j=1,2,3,...,n),其中项a<sub>ij</sub>表示当发送第i次查询信号时,各探测点收到查询信号后,返回确认信号的情况,得到n个探测点之间关系的n项数列;步骤2:确定n项数列的各项和组成的数列S:并记数列A<sub>i</sub>中的各项和S<sub>i</sub>组成的n项数列为S,S={S<sub>1</sub>,S<sub>2</sub>,…,S<sub>i</sub>,…S<sub>n</sub>},<img file="FDA0000782635850000011.GIF" wi="290" he="97" />(i=1,2,3,...,n);步骤3:将步骤2中所得数列S中的各项按照由小至大的顺序重新排列并记为S′,使得S′={S<sub>1′</sub>,S<sub>2′</sub>,...,S<sub>n′</sub>}为非递减数列,即S′满足S<sub>1′</sub>≤S<sub>2′</sub>...≤S<sub>n′</sub>;步骤4:将S′中各项对应的数列分别记为B<sub>1′</sub>,B<sub>2′</sub>,…,B<sub>(i‑1)′</sub>,B<sub>i′</sub>,其中B<sub>(i‑1)′</sub>={b<sub>(i‑1)′1</sub>,b<sub>(i‑1)′2</sub>,...,b<sub>(i‑1)′n</sub>},B<sub>i′</sub>={b<sub>i′1</sub>,b<sub>i′2</sub>,...,b<sub>i′n</sub>},并根据数列S排列调整的顺序,将数列A<sub>i</sub>的值赋予数列B<sub>1′</sub>,B<sub>2′</sub>,…,B<sub>(i‑1)′</sub>,B<sub>i′</sub>,同时可以得到B<sub>1′</sub>,B<sub>2′</sub>,…,B<sub>(i‑1)′</sub>,B<sub>i′</sub>对应的探测点位置构成的数列L,L={1′,2′,...,n′};步骤5:根据步骤3中得到的S′={S<sub>1′</sub>,S<sub>2′</sub>,...,S<sub>n′</sub>}进行如下判断,便可得到网络拓扑关系:若S<sub>i′</sub>=1,则说明网络有i个并行分支,探测点1′、2′...、i′分别为控制器后i个并行分支上的第一个探测点;若S<sub>i′</sub>≠1,i=2,3,...,n,记S<sub>i′</sub>与S<sub>(i‑1)′</sub>在数列B<sub>i′</sub>与B<sub>(i‑1)′</sub>中对应各项的乘积和为K<sub>i,(i‑1)</sub>;<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>K</mi><mrow><mi>i</mi><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>b</mi><mrow><msup><mi>i</mi><mo>&prime;</mo></msup><mi>j</mi></mrow></msub><msub><mi>b</mi><mrow><msup><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>&prime;</mo></msup><mi>j</mi></mrow></msub><mo>,</mo><mi>i</mi><mo>=</mo><mn>2</mn><mo>,</mo><mn>3</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>n</mi></mrow>]]></math><img file="FDA0000782635850000021.GIF" wi="812" he="166" /></maths>若S<sub>i′</sub>>S<sub>(i‑1)′</sub>=K<sub>i,(i‑1)</sub>,那么探测点i′与探测点(i‑1)′在同一链路,且为探测点(i‑1)′后的第一个探测点;若S<sub>i′</sub>=S<sub>(i‑1)′</sub>>K<sub>i,(i‑1)</sub>,那么探测点i′与探测点(i‑1)′不在同一链路,需要进一步判断K<sub>i,(i‑2)</sub>与S<sub>(i‑2)′</sub>的关系;若S<sub>(i‑2)′</sub>=K<sub>i,(i‑2)</sub>,那么探测点i′与探测点(i‑2)′在同一链路且为探测点(i‑2)′后的第一个探测点;若S<sub>(i‑2)′</sub>>K<sub>i,(i‑2)</sub>,那么探测点i′与探测点(i‑2)′也不在同一链路,需要进一步判断K<sub>i,(i‑3)</sub>与S<sub>(i‑3)′</sub>的关系,直至确认该探测点与任一探测点的关系为止,当对S<sub>i′</sub>(i′=1,2,3,...,n)判断完毕,可得到整个网络的拓扑关系,进而可得到网络的拓扑关系图。
地址 710072 陕西省西安市友谊西路127号