CN109391530A - 一种基于wtb列车的总线节点地址的编号方法及装置 - Google Patents
一种基于wtb列车的总线节点地址的编号方法及装置 Download PDFInfo
- Publication number
- CN109391530A CN109391530A CN201710666764.8A CN201710666764A CN109391530A CN 109391530 A CN109391530 A CN 109391530A CN 201710666764 A CN201710666764 A CN 201710666764A CN 109391530 A CN109391530 A CN 109391530A
- Authority
- CN
- China
- Prior art keywords
- address
- node
- chained list
- sequence
- mapping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40078—Bus configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40293—Bus for use in transportation systems the transportation system being a train
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请公开了一种基于WTB列车的总线节点地址的编号方法及装置,包括:将查找地址设置为1;在原始地址序列中,从查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;将查找地址设置为64;在原始地址序列中,从查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射递减节点的地址在单向映射地址序列的首部,形成映射地址序列。此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当传输数据使用到节点的相对位置时,可以使数据的发送和接收都更为精确。
Description
技术领域
本申请涉及电力机车技术领域,特别涉及一种基于WTB列车的总线节点地址的编号方法及装置。
背景技术
目前在电力机车技术中,通讯网络普遍使用WTB标准的网络,在列车的总线上的各个节点按照TCN标准,根据节点相对于WTB总线的主节点和方向分配节点地址。具体,在WTB列车总线在进行初运行时,确定主节点位置,从主节点开始,给方向1的节点按递减顺序编号,开始为63,编号至底节点后,再从主节点开始,给方向2的节点按递增顺序编号,开始为02,编号至顶节点后,给节点分配地址结束。分配结束后的节点地址表示为从主节点01开始的递增的序列。例如,分配后的序列为01、02、03、04、05、06、07、62、63。
但是,当该主节点位于列车的中部时,编号序列的后几位较大的地址对应的节点在实际中的位置应该是在主节点的前端。因此,在列车运行中会有节点地址与节点所在车辆或单元之间没有直接的一一对应的关系,无法直观的通过节点地址序列对应的发现节点间的相对位置关系。
而在一些情况下,列车的节点需要发送数据时,发送的地址会包含一些相对位置的地址,例如,发送给此节点的前三个节点。此时,需要准确的根据节点的位置关系进行准确的识别。而现有的节点地址无法直接的标明其节点间的相对位置关系,无法做到节点间的数据的精确的发送或接收。
因此,如何解决协议生成的节点地址与实际的节点位置关系不对应,是本领域的技术人员的热点问题。
发明内容
本申请的目的是提供一种基于WTB列车的总线节点地址的编号方法及装置,通过在原始的节点地址序列的基础上,根据其地址是否连续变化,将节点地址分为两个方向上的节点地址,并依次映射在主节点地址的两侧形成以主节点为核心的映射序列,此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当应用在传输数据用到节点的相对位置时,可以使数据的发送和接收都更为精确,同时也免去了应用需要识别节点的相对位置的步骤。
为解决上述技术问题,本申请提供一种基于WTB列车的总线节点地址的编号方法,包括:
获取原始地址序列,将查找地址设置为1;
在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
检测所述原始地址序列的末尾地址是否为63;
若是,则将所述查找地址设置为64;
在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列。
可选的,所述获取原始地址序列,将查找地址设置为1,包括:
获取所述原始地址序列,将所述查找地址设置为1;
创建链表;
对地址为1的节点创建链表结点,并将链表指针指向所述链表结点;
其中,所述链表由链表结点组成;所述链表指针为在链表中确定下一个所述链表结点的标识;所述链表结点包括:前驱、后继以及对应节点的地址。
可选的,在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为升序节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列,包括:
S301,在所述原始地址序列中,查找节点地址比所述查找地址大一个单位的节点,作为递增子节点;
S302,对所述递增子节点创建链表结点,并将所述链表指针指向的链表结点的后继指向所述递增子节点的链表结点的前驱;
S303,将所述查找地址加1,将所述链表指针指向所述递增子节点的链表结点;
S304,判断所述原始地址序列中是否有所述地址比所述查找地址大一个单位的节点,若是,则返回步骤S301,若否,则执行步骤S305;
S305,将所有所述递增子节点的链表结点形成的链表,作为所述单向映射地址序列。
可选的,所述将所述查找地址设置为64,包括:
将所述查找地址设置为64;
将所述链表指针指向所述节点地址为1的链表结点。
可选的,在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列,包括:
S501,在所述原始地址序列中,查找所述节点地址比所述查找地址小一个单位的节点,作为递减子节点;
S502,对所述递减子节点创建链表结点,并将所述链表指针指向的链表结点的前驱指向所述递减子节点的链表结点的后继;
S503,将所述查找地址减1,将所述链表指针指向所述递减子节点的链表结点;
S504,判断所述原始地址序列中是否有所述地址比所述查找地址小一个单位的节点,若是,则返回步骤S501,若否,则执行步骤S505;
S505,将所有所述递减子节点的链表结点和单向映射地址序列形成的链表,作为所述映射地址序列。
本申请还提供一种基于WTB列车的总线节点地址的编号装置,包括:
初始化单元,获取原始地址序列,将查找地址设置为1;
单向映射地址序列生成单元,在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
检测单元,检测所述原始地址序列的末尾地址是否为63;
设置单元,将所述查找地址设置为64;
映射地址序列生成单元,在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列。
可选的,所述初始化单元包括:
初始化子单元,获取所述原始地址序列,将所述查找地址设置为1;
创建链表子单元,创建链表;
创建链表结点子单元,对地址为1的节点创建链表结点,并将链表指针指向所述链表结点;
其中,所述链表由链表结点组成;所述链表指针为在链表中确定下一个所述链表结点的标识;所述链表结点包括:前驱、后继以及对应节点的地址。
可选的,所述单向映射地址序列生成单元包括:
第一查找子单元,在所述原始地址序列中,查找节点地址比所述查找地址大一个单位的节点,作为递增子节点;
第一连接子单元,对所述递增子节点创建链表结点,并将所述链表指针指向的链表结点的后继指向所述递增子节点的链表结点的前驱;
第一指向子单元,将所述查找地址加1,将所述链表指针指向所述递增子节点的链表结点;
第一判断子单元,判断所述原始地址序列中是否有所述地址比所述查找地址大一个单位的节点,若是,则调用所述第一查找子单元,若否,则调用第一处理子单元;
第一处理子单元,将所有所述递增子节点的链表结点形成的链表,作为所述单向映射地址序列。
可选的,所述设置单元包括:
设置子单元,将所述查找地址设置为64;
操作子单元,将所述链表指针指向所述节点地址为1的链表结点。
可选的,所述映射地址序列生成单元包括:
第二查找子单元,在所述原始地址序列中,查找所述节点地址比所述查找地址小一个单位的节点,作为递减子节点;
第二连接子单元,对所述递减子节点创建链表结点,并将所述链表指针指向的链表结点的前驱指向所述递减子节点的链表结点的后继;
第二指向子单元,将所述查找地址减1,将所述链表指针指向所述递减子节点的链表结点;
第二判断子单元,判断所述原始地址序列中是否有所述地址比所述查找地址小一个单位的节点,若是,则调用所述第二查找子单元,若否,则调用第二处理子单元;
第二处理子单元,将所有所述递减子节点的链表结点和单向映射地址序列形成的链表,作为所述映射地址序列。
本申请所提供的一种基于WTB列车的总线节点地址的编号方法,包括:将查找地址设置为1;在原始地址序列中,从查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;将查找地址设置为64;在原始地址序列中,从查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射递减节点的地址在单向映射地址序列的首部,形成映射地址序列。
通过在原始的节点地址序列的基础上,根据其地址是否连续变化,将节点地址分为两个方向上的节点地址,并依次映射在主节点地址的两侧形成以主节点为核心的映射序列,此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当传输数据使用到节点的相对位置时,可以使数据的发送和接收都更为精确,同时也免去了应用需要识别节点的相对位置的步骤。本申请还提供一种基于WTB列车的总线节点地址的编号装置,具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的流程图;
图2为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的初始化操作的流程图;
图3为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的单向映射地址序列的映射流程图;
图4为本申请实施例提供的一种基于WTB列车的总线节点地址的编号装置的框图。
具体实施方式
本申请的核心是提供一种基于WTB列车的总线节点地址的编号方法及装置,通过在原始的节点地址序列的基础上,根据其地址是否连续变化,将节点地址分为两个方向上的节点地址,并依次映射在主节点地址的两侧形成以主节点为核心的映射序列,此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当传输数据使用到节点的相对位置时,可以使数据的发送和接收都更为精确,同时也免去了应用需要识别节点的相对位置的步骤。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的流程图。
本申请提供的一种基于WTB列车的总线节点地址的编号方法,其具体实施例可以包括:
S101,获取原始地址序列,将查找地址设置为1;
本步骤旨在对生成映射列表的过程进行初始化处理,主要有获取原始地址序列与设置查找地址为1。其中,设置查找地址为1,主要是因为基于WTB的列车总线节点,其中规定编号过程从地址1开始,其地址为1的节点所指的也是WTB列车中规定的主节点,利于在查找中直观的理解节点地址之间的关系。而且,原始的节点地址序列其排列从1开始,查找的顺序从1开始也利于快速查找所有的节点地址。
S102,在原始地址序列中,从查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
在步骤S101的基础上,步骤旨在查找以查找地址1开始的连续递增的节点地址以映射在主节点的对应侧。主要包括两个处理过程:查找地址连续的节点和将查找的节点映射在相应的位置,其中,对于WTB列车的同一侧的编号是以地址连续的方式进行排列,因此,在查找时查找地址连续的节点可以方便确定此节点是否为主节点同一侧的节点。依据查找时的顺序,依次映射成为单向映射地址序列。
需要强调的是,在映射过程中不可避免的会存在一些数据结构的处理,此处并不做具体限定,应视具体实际情况中需要映射序列的速度,序列的操作方便性,序列所占存储空间的大小以及其它各种影响因素再综合考虑并选择相应的数据结构和对应的处理操作。
S103,检测原始地址序列的末尾地址是否为63;
在步骤S102的基础上,本步骤旨在排除当主节点在列车头部的情况。当主节点在列车头部时,依照WTB的标准,在节点地址中时不存在地址为63的节点,同样的,只要当主节点不在头部时,节点地址中就会出现地址为63的节点,因此,通过判断节点地址中是否存在地址为63的节点,可以快速判断其主节点是否在头部,而如果在头部,后续的映射操作就没有操作的必要。停止继续映射,以节省操作的处理时间。
S104,若是,则将查找地址设置为64;
在步骤S103的基础上,本步骤旨在对于后续的查找映射操作进行参数的初始化,由于,WTB列车的节点地址编号后一段是从主节点的另一个方向开始编号,其最大的地址编号为63,在查找的过程中同样需要把节点地址63映射在主节点地址的另一侧,因此,此处将查找地址设置为64。如此设置后,在查找过程中是查找比地址64小的地址也就是地址63,保持了与WTB列车的节点地址编号规则的一致。
S105,在原始地址序列中,从查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射递减节点的地址在单向映射地址序列的首部,形成映射地址序列。
在步骤S104的基础上,本步骤旨在查找以查找地址64开始的连续递减的节点地址以映射在主节点的对应侧。其具体内容大致与步骤S102相同,不同的在与本步骤是以递减的方式进行查找,而步骤S102是以递增的方式进行查找。其具体内容可以参照步骤S102的具体内容理解,在此不再做赘述。
本实施例通过在原始的节点地址序列的基础上,根据其地址是否连续变化,将节点地址分为两个方向上的节点地址,并依次映射在主节点地址的两侧形成以主节点为核心的映射序列,此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当应用在传输数据用到节点的相对位置时,可以使数据的发送和接收都更为精确,同时也免去了应用需要识别节点的相对位置的步骤。
请参考图2,图2为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的初始化操作的流程图。
本实施例是针对上一实施例中S101中具体怎样进行初始化操作出的一个具体限定,其它步骤与上一实施例大体相同,相同部分可参见上一实施例相关部分,在此不再赘述。
本实施例可以包括:
S201,获取原始地址序列,将查找地址设置为1;
S202,创建链表;
S203,对地址为1的节点创建链表结点,并将链表指针指向链表结点;
其中,链表由链表结点组成;链表指针为在链表中确定下一个链表结点的标识;链表结点包括:前驱、后继以及对应节点的地址。
本处理过程,旨在为后续的映射过程进行初始化的操作,在此也选用链表作为映射操作时的数据结构,由于在查找时其具体数量是未知的,而链表在创建时无需设置其长度,同时,在形成链表后对于链表的操作也是十分方便的,因此,在此选用链表作为操作的数据结构。
请参考图3,图3为本申请实施例提供的一种基于WTB列车的总线节点地址的编号方法的单向映射地址序列的映射流程图。
本实施例是针对上一实施例中S102中具体怎样进行单向映射地址序列的映射出的一个具体限定,其它步骤与上一实施例大体相同,相同部分可参见上一实施例相关部分,在此不再赘述。
本实施例可以包括:
S301,在原始地址序列中,查找节点地址比查找地址大一个单位的节点,作为递增子节点;
S302,对递增子节点创建链表结点,并将链表指针指向的链表结点的后继指向递增子节点的链表结点的前驱;
S303,将查找地址加1,将链表指针指向递增子节点的链表结点;
S304,判断原始地址序列中是否有地址比查找地址大一个单位的节点,若是,则返回步骤S301,若否,则执行步骤S305;
S305,将所有递增子节点的链表结点形成的链表,作为单向映射地址序列。
基于上述实施例,本实施例旨在对原始数据序列进行查找操作,得到从查找地址开始的连续的符合要求的节点,将节点的地址按照顺序映射在主节点的对应侧,形成单向的映射地址序列。
其中,使用链表作为基础操作的数据结构,利于查找到节点对其进行形成链表的操作。同时当主节点变换,方向变化时,使用链表对地址序列操作,可以更加方便,不会占用更多的处理时间和内存。
其中,一个地址的单位,可以是例如,以两位数的地址排列中的相隔为1的地址,只要保持其节点地址为连续出现的单位都可以作为此处的地址单位,具体不再做赘述。
本实施例是针对上一实施例中S102中具体怎样进行设置处理做出的一个具体限定,其它步骤与上一实施例大体相同,相同部分可参见上一实施例相关部分,在此不再赘述。
本实施例可以包括:
S401,将查找地址设置为64;
S402,将链表指针指向节点地址为1的链表结点。
本处理过程旨在,当单向映射地址序列生成后需要从另一个方向进行符合要求的节点的查找,因此在此将查找地址设置为64。
由于后续的映射是从主节点开始,也就是从地址1开始,而且基于链表的数据结构,因此,需要将链表的表示指向主节点,以方便连接后续的节点地址形成,映射地址序列。
本实施例是针对上一实施例中S102中具体怎样进行映射地址序列生成做出的一个具体限定,其它步骤与上一实施例大体相同,相同部分可参见上一实施例相关部分,在此不再赘述。
本实施例可以包括:
S501,在原始地址序列中,查找节点地址比查找地址小一个单位的节点,作为递减子节点;
S502,对递减子节点创建链表结点,并将链表指针指向的链表结点的前驱指向递减子节点的链表结点的后继;
S503,将查找地址减1,将链表指针指向递减子节点的链表结点;
S504,判断原始地址序列中是否有地址比查找地址小一个单位的节点,若是,则返回步骤S501,若否,则执行步骤S505;
S505,将所有递减子节点的链表结点和单向映射地址序列形成的链表,作为映射地址序列。
本实施例旨在查找以查找地址64开始的连续递减的节点地址以映射在主节点的对应侧。其具体内容大致与单向映射地址序列的映射过程相同,不同的在与本实施例是以递减的方式进行查找,而单向映射地址序列的映射过程是以递增的方式进行查找。其具体内容可以参照单向映射地址序列的映射过程的具体内容理解,在此不再做赘述。
本申请实施例提供了一种基于WTB列车的总线节点地址的编号方法,可以通过在原始的节点地址序列的基础上,根据其地址是否连续变化,将节点地址分为两个方向上的节点地址,并依次映射在主节点地址的两侧形成以主节点为核心的映射序列,此映射序列与实际的节点之间实现了一一对应的关系,直观的显现了节点间的对应的位置关系。当应用在传输数据用到节点的相对位置时,可以使数据的发送和接收都更为精确,同时也免去了应用需要识别节点的相对位置的步骤。
下面对本申请实施例提供的一种基于WTB列车的总线节点地址的编号装置进行介绍,下文描述的一种基于WTB列车的总线节点地址的编号装置与上文描述的一种基于WTB列车的总线节点地址的编号方法可相互对应参照。
请参考图4,图4为本申请实施例提供的一种基于WTB列车的总线节点地址的编号装置的框图。
该装置可以包括:
初始化单元100,获取原始地址序列,将查找地址设置为1;
单向映射地址序列生成单元200,在原始地址序列中,从查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
检测单元300,检测原始地址序列的末尾地址是否为63;
设置单元400,将查找地址设置为64;
映射地址序列生成单元500,在原始地址序列中,从查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射递减节点的地址在单向映射地址序列的首部,形成映射地址序列。
可选的,初始化单元100包括:
初始化子单元,获取原始地址序列,将查找地址设置为1;
创建链表子单元,创建链表;
创建链表结点子单元,对地址为1的节点创建链表结点,并将链表指针指向链表结点;
其中,链表由链表结点组成;链表指针为在链表中确定下一个链表结点的标识;链表结点包括:前驱、后继以及对应节点的地址。
可选的,单向映射地址序列生成单元200包括:
第一查找子单元,在原始地址序列中,查找节点地址比查找地址大一个单位的节点,作为递增子节点;
第一连接子单元,对递增子节点创建链表结点,并将链表指针指向的链表结点的后继指向递增子节点的链表结点的前驱;
第一指向子单元,将查找地址加1,将链表指针指向递增子节点的链表结点;
第一判断子单元,判断原始地址序列中是否有地址比查找地址大一个单位的节点,若是,则调用第一查找子单元,若否,则调用第一处理子单元;
第一处理子单元,将所有递增子节点的链表结点形成的链表,作为单向映射地址序列。
可选的,设置单元400包括:
设置子单元,将查找地址设置为64;
操作子单元,将链表指针指向节点地址为1的链表结点。
可选的,映射地址序列生成单元500包括:
第二查找子单元,在原始地址序列中,查找节点地址比查找地址小一个单位的节点,作为递减子节点;
第二连接子单元,对递减子节点创建链表结点,并将链表指针指向的链表结点的前驱指向递减子节点的链表结点的后继;
第二指向子单元,将查找地址减1,将链表指针指向递减子节点的链表结点;
第二判断子单元,判断原始地址序列中是否有地址比查找地址小一个单位的节点,若是,则调用第二查找子单元,若否,则调用第二处理子单元;
第二处理子单元,将所有递减子节点的链表结点和单向映射地址序列形成的链表,作为映射地址序列。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种基于WTB列车的总线节点地址的编号方法及装置进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种基于WTB列车的总线节点地址的编号方法,其特征在于,包括:
获取原始地址序列,将查找地址设置为1;
在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
检测所述原始地址序列的末尾地址是否为63;
若是,则将所述查找地址设置为64;
在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列。
2.根据权利要求1所述的方法,其特征在于,所述获取原始地址序列,将查找地址设置为1,包括:
获取所述原始地址序列,将所述查找地址设置为1;
创建链表;
对地址为1的节点创建链表结点,并将链表指针指向所述链表结点;
其中,所述链表由链表结点组成;所述链表指针为在链表中确定下一个所述链表结点的标识;所述链表结点包括:前驱、后继以及对应节点的地址。
3.根据权利要求2所述的方法,其特征在于,在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为升序节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列,包括:
S301,在所述原始地址序列中,查找节点地址比所述查找地址大一个单位的节点,作为递增子节点;
S302,对所述递增子节点创建链表结点,并将所述链表指针指向的链表结点的后继指向所述递增子节点的链表结点的前驱;
S303,将所述查找地址加1,将所述链表指针指向所述递增子节点的链表结点;
S304,判断所述原始地址序列中是否有所述地址比所述查找地址大一个单位的节点,若是,则返回步骤S301,若否,则执行步骤S305;
S305,将所有所述递增子节点的链表结点形成的链表,作为所述单向映射地址序列。
4.根据权利要求3所述的方法,其特征在于,所述将所述查找地址设置为64,包括:
将所述查找地址设置为64;
将所述链表指针指向所述节点地址为1的链表结点。
5.根据权利要求4所述的方法,其特征在于,在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列,包括:
S501,在所述原始地址序列中,查找所述节点地址比所述查找地址小一个单位的节点,作为递减子节点;
S502,对所述递减子节点创建链表结点,并将所述链表指针指向的链表结点的前驱指向所述递减子节点的链表结点的后继;
S503,将所述查找地址减1,将所述链表指针指向所述递减子节点的链表结点;
S504,判断所述原始地址序列中是否有所述地址比所述查找地址小一个单位的节点,若是,则返回步骤S501,若否,则执行步骤S505;
S505,将所有所述递减子节点的链表结点和单向映射地址序列形成的链表,作为所述映射地址序列。
6.一种基于WTB列车的总线节点地址的编号装置,其特征在于,包括:
初始化单元,获取原始地址序列,将查找地址设置为1;
单向映射地址序列生成单元,在所述原始地址序列中,从所述查找地址开始按照地址递增方向查找地址连续的节点作为递增节点;按照地址递增的顺序映射所述递增节点的地址在首地址为1的地址序列中,形成单向映射地址序列;
检测单元,检测所述原始地址序列的末尾地址是否为63;
设置单元,将所述查找地址设置为64;
映射地址序列生成单元,在所述原始地址序列中,从所述查找地址开始按照地址递减方向查找地址连续的节点作为递减节点;按照地址递减的顺序映射所述递减节点的地址在所述单向映射地址序列的首部,形成映射地址序列。
7.根据权利要求6所述的装置,其特征在于,所述初始化单元包括:
初始化子单元,获取所述原始地址序列,将所述查找地址设置为1;
创建链表子单元,创建链表;
创建链表结点子单元,对地址为1的节点创建链表结点,并将链表指针指向所述链表结点;
其中,所述链表由链表结点组成;所述链表指针为在链表中确定下一个所述链表结点的标识;所述链表结点包括:前驱、后继以及对应节点的地址。
8.根据权利要求7所述的装置,其特征在于,所述单向映射地址序列生成单元包括:
第一查找子单元,在所述原始地址序列中,查找节点地址比所述查找地址大一个单位的节点,作为递增子节点;
第一连接子单元,对所述递增子节点创建链表结点,并将所述链表指针指向的链表结点的后继指向所述递增子节点的链表结点的前驱;
第一指向子单元,将所述查找地址加1,将所述链表指针指向所述递增子节点的链表结点;
第一判断子单元,判断所述原始地址序列中是否有所述地址比所述查找地址大一个单位的节点,若是,则调用所述第一查找子单元,若否,则调用第一处理子单元;
第一处理子单元,将所有所述递增子节点的链表结点形成的链表,作为所述单向映射地址序列。
9.根据权利要求8所述的装置,其特征在于,所述设置单元包括:
设置子单元,将所述查找地址设置为64;
操作子单元,将所述链表指针指向所述节点地址为1的链表结点。
10.根据权利要求9所述的装置,其特征在于,所述映射地址序列生成单元包括:
第二查找子单元,在所述原始地址序列中,查找所述节点地址比所述查找地址小一个单位的节点,作为递减子节点;
第二连接子单元,对所述递减子节点创建链表结点,并将所述链表指针指向的链表结点的前驱指向所述递减子节点的链表结点的后继;
第二指向子单元,将所述查找地址减1,将所述链表指针指向所述递减子节点的链表结点;
第二判断子单元,判断所述原始地址序列中是否有所述地址比所述查找地址小一个单位的节点,若是,则调用所述第二查找子单元,若否,则调用第二处理子单元;
第二处理子单元,将所有所述递减子节点的链表结点和单向映射地址序列形成的链表,作为所述映射地址序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710666764.8A CN109391530B (zh) | 2017-08-07 | 2017-08-07 | 一种基于wtb列车的总线节点地址的编号方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710666764.8A CN109391530B (zh) | 2017-08-07 | 2017-08-07 | 一种基于wtb列车的总线节点地址的编号方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109391530A true CN109391530A (zh) | 2019-02-26 |
CN109391530B CN109391530B (zh) | 2022-01-21 |
Family
ID=65412642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710666764.8A Active CN109391530B (zh) | 2017-08-07 | 2017-08-07 | 一种基于wtb列车的总线节点地址的编号方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109391530B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100091663A1 (en) * | 2007-03-20 | 2010-04-15 | Mitsubishi Electric Cororation | Railway-train communication apparatus |
CN104683441A (zh) * | 2015-01-09 | 2015-06-03 | 北京纵横机电技术开发公司 | 一种轨道车辆网络系统的通信方法 |
CN105438222A (zh) * | 2015-12-01 | 2016-03-30 | 唐山轨道客车有限责任公司 | 列车编组控制系统 |
CN106230679A (zh) * | 2016-08-31 | 2016-12-14 | 株洲中车时代电气股份有限公司 | Tcn网络中网关冗余控制方法及装置 |
CN106790752A (zh) * | 2016-12-19 | 2017-05-31 | 中车株洲电力机车研究所有限公司 | 一种基于wtb通信的列车车辆地址排序方法 |
-
2017
- 2017-08-07 CN CN201710666764.8A patent/CN109391530B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100091663A1 (en) * | 2007-03-20 | 2010-04-15 | Mitsubishi Electric Cororation | Railway-train communication apparatus |
CN104683441A (zh) * | 2015-01-09 | 2015-06-03 | 北京纵横机电技术开发公司 | 一种轨道车辆网络系统的通信方法 |
CN105438222A (zh) * | 2015-12-01 | 2016-03-30 | 唐山轨道客车有限责任公司 | 列车编组控制系统 |
CN106230679A (zh) * | 2016-08-31 | 2016-12-14 | 株洲中车时代电气股份有限公司 | Tcn网络中网关冗余控制方法及装置 |
CN106790752A (zh) * | 2016-12-19 | 2017-05-31 | 中车株洲电力机车研究所有限公司 | 一种基于wtb通信的列车车辆地址排序方法 |
Non-Patent Citations (1)
Title |
---|
李常贤,刘洋,张彤,孙燕楠: "用于动车组间互联、互通和互操作的UIC网关研究", 《中国铁道科学》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109391530B (zh) | 2022-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11397724B2 (en) | Method and apparatus for obtaining area speed limit value and terminal device | |
CN104965700B (zh) | VxWorks操作系统下实现驱动SPI设备的方法和系统 | |
CN104850502A (zh) | 一种数据的访问方法、装置及设备 | |
CN107969152A (zh) | 信号发射方法、信号解析方法、主动笔及触控屏 | |
CN108959127A (zh) | 地址转换方法、装置及系统 | |
CN105490776A (zh) | 交织方法及交织器 | |
CN104424105A (zh) | 一种内存数据的读写处理方法和装置 | |
CN102147780B (zh) | 一种基于串行数据传输方式的链路接口电路 | |
CN108422672A (zh) | 3d打印扫描方法、系统及3d打印机 | |
CN117155782B (zh) | 一种自动解析通信参数的方法 | |
CN104572994B (zh) | 用于搜索数据的方法和装置 | |
CN102289341A (zh) | 应用于触控设备上的游戏控制方法、装置及一种触控设备 | |
CN104516826B (zh) | 一种虚拟大页面与物理大页面的对应方法及装置 | |
CN109391530A (zh) | 一种基于wtb列车的总线节点地址的编号方法及装置 | |
US11567661B2 (en) | Virtual memory management method and processor | |
CN104270287A (zh) | 一种报文乱序检测方法及装置 | |
CN104679507B (zh) | NAND Flash编程器烧录映像文件的生成方法及装置 | |
CN105893279B (zh) | 一种基于循环队列的数据传输方法及系统 | |
CN108268205A (zh) | 车机对移动终端的触屏反控方法和系统 | |
CN109597577A (zh) | 一种处理nvme协议读写命令的方法、系统及相关装置 | |
CN109951275A (zh) | 密钥生成方法、装置、计算机设备及存储介质 | |
JP2016162073A (ja) | 電子筆記処理プログラム | |
CN104615271A (zh) | 一种kvm的处理方法及一种kvm的处理装置 | |
CN108874994A (zh) | 一种分块读取数据的方法、装置及计算机存储介质 | |
US20230028997A1 (en) | Sgl processing acceleration method and storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |