CN112187598A - 组网方法、电子设备及存储介质 - Google Patents
组网方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112187598A CN112187598A CN202010915286.1A CN202010915286A CN112187598A CN 112187598 A CN112187598 A CN 112187598A CN 202010915286 A CN202010915286 A CN 202010915286A CN 112187598 A CN112187598 A CN 112187598A
- Authority
- CN
- China
- Prior art keywords
- networking
- communication
- communication frame
- equipment
- determining
- 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.)
- Pending
Links
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- 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/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种组网方法、电子设备及存储介质,涉及网络通信技术领域。本申请实施例包括:发送通讯帧;根据通讯帧的反馈信息确定组网设备的数量;按照物理连接顺序对组网设备进行编号。本申请通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;在明确各个组网设备物理连接顺序的前提下,能够清晰地得知由组网设备发送的数字量、模拟量信号的物理来源,实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,组网设备之间没有绝对的主机和从机之分,CAN总线的整个通讯流程不受主从关系、一对一等条件的限制。
Description
技术领域
本申请实施例涉及网络通信技术领域,尤其是涉及组网方法、电子设备及存储介质。
背景技术
在工业现场中,控制器局域网(Controller Area Network,CAN)总线因其极高的可靠性而被广泛应用。作为总线型通讯结构,CAN总线上的所有设备都能接收到其他设备发出的数据,可以实现多个设备各自主动发起通讯、不需区分主机从机的通讯模式。
但对于设备链状连接且设备的物理位置为系统必要信息的应用场景,如包括可编程逻辑控制器(Programmable Logic Controller,PLC)与其扩展模块的设备,若只凭借CAN总线自身特性进行自动组网,则因缺少判断设备物理位置的信息,会导致用户无法判断物理顺序上第n个扩展模块设备在程序上组网完成后分配的序号是多少,而每个扩展模块的配置参数、物理输入输出信号的来源和去向均不同,导致用户无法准确设置目标模块的配置参数,且无法得知某个模块上的物理输入信号对应程序上的哪一个具体数字量,从而造成设备使用上的不便。
发明内容
本申请旨在一定程度上至少解决现有技术中存在的技术问题之一。为此,本申请实施例提供了一种组网方法、电子设备及存储介质,在明确各个组网设备物理连接顺序的前提下,能够准确地获取传输数据与组网设备之间的对应关系,实现精准的一对一、一对多的数据交互。
第一方面,本申请实施例提供了一种组网方法,包括:发送通讯帧;根据通讯帧的反馈信息确定组网设备的数量;按照物理连接顺序和组网设备的数量对组网设备进行编号。
本申请实施例的组网方法至少包括如下有益效果:
1.通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;
2.在明确各个组网设备物理连接顺序的前提下,能够清晰地得知由组网设备发送的数字量、模拟量信号的物理来源,实现精准的一对一、一对多的数据交互;
3.在CAN总线通讯的框架下,组网设备之间没有绝对的主机和从机之分,CAN总线的整个通讯流程不受主从关系、一对一等条件的限制。
在一些实施例中,通讯帧包括特定字节,特定字节被用于记录当前的组网设备数。
在一些实施例中,根据通讯帧的反馈信息确定组网设备的数量,包括:在预设的时间阈值内检测是否接收到反馈信息;若接收到反馈信息,则修改当前的组网设备数。
在一些实施例中,按照物理连接顺序和组网设备的数量对组网设备进行编号之后,还包括:根据编号结果确定数据交互中的组网设备。
第二方面,本申请实施例提供了一种组网方法,包括:获取通讯帧;根据通讯帧确定组网设备的数量和站号。
本申请实施例的组网方法至少包括如下有益效果:
1.通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;
2.通过自动组网获取站号,能够实现精准的一对一、一对多的数据交互;
3.组网设备的数量增多只会使自动组网的耗时稍有增加,组网设备站号的确定是纯粹的软件逻辑过程,能够减小硬件资源的成本消耗。
在一些实施例中,通讯帧包括特定字节,特定字节被用于记录当前的组网设备数。
在一些实施例中,根据通讯帧确定组网设备的数量和站号,包括:校验通讯帧是否正确;若校验结果正确,则修改当前的组网设备数,并将组网设备数设置为当前的站号。
在一些实施例中,根据通讯帧确定组网设备的数量和站号之后,还包括:向邻接的组网设备发送通讯帧。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的程序,程序被处理器执行时,实现本申请第一方面或第二方面的组网方法。
本申请实施例的电子设备通过执行本申请第一方面或第二方面的组网方法,能够实现自动组网,准确地获取传输数据与组网设备之间的对应关系,在明确各个组网设备物理连接顺序的前提下,能够实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,通讯流程不受主从关系、一对一等条件的限制;通过自由可控的软件层逻辑,能够实现多种灵活的通讯方式,满足各种通讯场合的需求。
第四方面,本申请实施例提供了一种存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现本申请第一方面或第二方面的组网方法。
本申请实施例的存储介质通过执行本申请第一方面或第二方面的组网方法,能够实现自动组网,准确地获取传输数据与组网设备之间的对应关系,在明确各个组网设备物理连接顺序的前提下,能够实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,通讯流程不受主从关系、一对一等条件的限制;通过自由可控的软件层逻辑,能够实现多种灵活的通讯方式,满足各种通讯场合的需求。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
图1是本申请实施例中组网方法的一具体实施例的流程图;
图2是本申请实施例中组网方法的另一具体实施例的流程图;
图3是本申请实施例中组网方法的另一具体实施例的流程图;
图4是本申请实施例中组网方法的另一具体实施例的流程图;
图5是PLC与扩展模块组网的通讯连接示意图;
图6是PLC与扩展模块组网的PLC通讯流程图;
图7是PLC与扩展模块组网的扩展模块通讯流程图。
具体实施方式
以下将结合实施例对本申请的构思及产生的技术效果进行清楚、完整地描述,以充分地理解本申请的目的、特征和效果。显然,所描述的实施例只是本申请的一部分实施例,而不是全部实施例,基于本申请的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本申请保护的范围。
需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中公开的方法包括用于实现方法的一个或多个步骤或动作。方法步骤和/或动作可以在不脱离权利要求的范围的情况下彼此互换。换句话说,除非指定步骤或动作的特定顺序,否则特定步骤和/或动作的顺序和/或使用可以在不脱离权利要求范围的情况下被修改。
如本申请实施例中所用的,术语“确定”包含广泛的各种的动作。例如,“确定”可以包括运算、计算、处理、导出、研究、查询(例如,在表中、数据库中或另一个数据结构中查询)、判断等等。此外,“确定”可以包括接收(例如,接收信息)、访问(例如,访问存储器中的数据)等等。此外,“确定”可以包括解决、选择、挑选、建立等等。术语“模块”可以例如意味着包括硬件、软件和固件中的一个或者它们中的两个或多个的组合的单元。“模块”可以与例如术语“单元”、“逻辑”、“逻辑块”、“组件”或“电路”互换使用。“模块”可以是集成组件元件或其一部分的最小单元。“模块”可以是用于执行一个或多个功能或其一部分的最小单元。“模块”可以机械地或电子地实施。例如,根据本申请的“模块”可以包括用于执行已知的或将在以后开发的操作的专用集成电路(Application-Specific Integrated Circuit,ASIC)芯片、现场可编程门阵列(Field-Programmable Gate Array,FPGA)和可编程逻辑器件中的至少一个。
在工业现场中,控制器域网(Controller Area Network,CAN)总线因其极高的可靠性而被广泛应用。作为总线型通讯结构,CAN总线上的所有设备都能接收到其他设备发出的数据,可以实现多个设备各自主动发起通讯、不需区分主机从机的通讯模式。但对于设备链状连接且设备的物理位置为系统必要信息的应用场景,如包括可编程逻辑控制器(Programmable Logic Controller,PLC)与其扩展模块的设备,若只凭借CAN总线自身特性进行自动组网,则因缺少判断设备物理位置的信息,会组成与设备物理连接顺序不同的乱序编号网络。这种组网结果将直接产生设备使用上的以下问题:
(1)用户无法判断物理顺序上第n个扩展模块设备在程序上组网完成后分配的序号是多少,而每个扩展模块的配置参数、物理输入输出信号的来源和去向均不同,导致用户无法准确设置目标模块的配置参数,且无法得知某个模块上的物理输入信号对应程序上的哪一个具体数字量。
(2)因这种乱序组网缺少逻辑上判定顺序的依据,即使用其他间接的手段获取了本次乱序编号与实际连接模块的对应关系,若系统在某些场合中需要重新执行自动组网流程,再次组网完成后的编号结果极有可能和上次结果不同,导致使用上的不便。
因此,在如PLC与其扩展模块这类设备链状连接的场景,组网编号有必要和物理连接顺序相关,而仅凭CAN总线本身无法满足此需求。为解决此问题,目前有不少将总线通讯及片选引脚结合的方案。最典型的方案为使用串行外设接口(Serial PeripheralInterface,SPI)通讯总线,配合针对片选机制设计的硬件电路,主机可以通过固定的芯片引脚电平操作流程,依靠片选功能与对应物理连接顺序的模块通讯。这种方案无需自动组网,可以准确地与确定物理连接顺序的模块通讯并进行数据读写,用户也能确定数据对应的信号来源。然而,这种方案存在以下问题:
(1)占用主控芯片的引脚资源,且占用资源数与最大可连接通讯设备数成正相关。因芯片的片选机制,需要根据当前通讯设备的物理顺序(即编号),确定多个片选引脚的电平状态组合。当最大可连接的通讯设备数量增加时,片选引脚所能组成的电平状态组合数量便必须随之增加,意味着对主控芯片引脚的占用数量增加。当可连接设备数量需要进行扩展时,引脚需求数量的上涨在主控芯片硬件资源十分紧张的产品中是一种较为致命的限制。
(2)严格区分主从设备,且只能进行一对一通讯。SPI及其片选机制决定了只能由主机确定需要通讯的对象,再控制对应引脚选中从机进行通讯。且SPI的通讯时钟是由主机发送的,从机没有主动发起通讯的手段。这种主从设备通讯的模式只能进行一对一通讯,在某些通讯双方都有发起通讯需求的场合中也无法满足要求。
基于此,本申请实施例提供了一种组网方法、电子设备及存储介质,能够消除硬件资源占用数量与最大可连接通讯设备数正相关的限制,同时通过CAN通讯总线的引入,消除通讯上主从设备的严格区分限制;能够使产品在对最大可连接通讯设备数进行扩展时,不再需要花费额外的硬件资源,且通讯总线上的所有设备均可自由、主动地发起通讯,通讯中的冲突由CAN协议根据优先级自动仲裁,满足多种场合下的通讯需求。
第一方面,本申请实施例提供了一种组网方法,参照图1,组网方法包括如下步骤:
S110.发送通讯帧;
S120.根据通讯帧的反馈信息确定组网设备的数量;
S130.按照物理连接顺序和组网设备的数量对组网设备进行编号。
本申请实施例的组网方法被应用于信号发送端,信号发送端向其他设备发送通讯帧并等待接收反馈,若接收到来自于其他设备的反馈信息,则修改组网设备数,每接收到一个反馈通讯帧,组网设备数加1;若未接收到来自于其他设备的反馈信息,则组网完成,退出流程。确定组网设备的数量之后,从信号发送端开始按照组网设备的物理连接顺序依次编号,每个组网设备获取与物理连接顺序相匹配的站号。组网设备之间通过串口连接,组网设备可以包括网络接口设备(比如网络适配器、调制解调器等)、网络连接设备(比如集线器、交换机等)或网络互联设备(比如中继器、网桥、路由器、网关等)。组网设备也可以是终端设备,终端设备之间通信连接,终端设备可以包括例如智能电话、平板、个人计算机(personalcomputer,PC)、移动电话、视频电话、电子书阅读器、桌上型PC、膝上型PC、上网本、计算机、工作站、服务器、个人数字助理(PDA)、便携式多媒体播放器(Portable MultimediaPlayer,PMP)、MPEG-1音频层3(MP3)播放器、移动医疗设备、相机和可穿戴设备中的至少一个。可穿戴设备可以包括附件类型(例如,手表、戒指、手镯、脚链、项链、眼镜、隐形眼镜或头戴式设备(Head-Mounted Device,HMD))、织物或服装集成类型(例如,电子服装)、身体安装类型(例如,皮肤垫或纹身)以及生物可植入类型(例如,可植入电路)中的至少一种。
本申请实施例的组网方法,通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;在明确各个组网设备物理连接顺序的前提下,能够清晰地得知由组网设备发送的数字量、模拟量信号的物理来源,实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,组网设备之间没有绝对的主机和从机之分,CAN总线的整个通讯流程不受主从关系、一对一等条件的限制。
在一些实施例中,通讯帧包括特定字节,特定字节被用于记录当前的组网设备数。组网设备之间的串口通讯利用通讯帧来实现,以如表1所示的通讯帧的帧格式为例,帧格式包括四个字节,其中第一字节为前导码,前导码被用于接收时钟的同步;第二字节为组网设备数n,n为变化值,反映当前的组网设备的数量;第三字节和第四字节为16位循环冗余校验码(Cyclic Redundancy Check,CRC),CRC校验码被用于同步通信的数据校验,CRC校验码存储或传送后,在接收方进行校验过程,以判断数据是否有错,若有错则进行纠错。一个CRC校验码能被生成多项式整除,在接收方对码字用同样的生成多项式相除,如果余数为0,则码字没有错误;若余数不为0,则说明某位出错,不同的出错位置余数不同。本申请实施例的组网方法,通讯帧中存储当前的组网设备数,通过收发通讯帧,能够准确地获取传输数据与组网设备之间的对应关系。
表1通讯帧的帧格式
在一些实施例中,参照图2,步骤S120包括如下具体步骤:
S210.在预设的时间阈值内检测是否接收到反馈信息;若接收到反馈信息,则执行步骤S220;若未接收到反馈信息,则执行步骤S230;
S220.修改当前的组网设备数;
S230.将当前的组网设备数确定为最大组网设备数。
信号发送端向其他设备发送通讯帧并等待接收反馈,可以根据实际应用场景下的等待时长预设时间阈值,若在时间阈值内接收到来自于其他设备的反馈信息,则修改通讯帧内的组网设备数,每接收到一个反馈通讯帧,帧内的组网设备数加1,并重置时间阈值,重新启动超时判断流程;若在时间阈值内未接收到来自于其他设备的反馈信息,则触发超时机制,将当前的组网设备数确定为最大组网设备数,完成组网,退出流程。本申请实施例的组网方法,通过超时判断流程更新通讯帧,直到确定最大组网设备数才完成组网,能够准确、有效地获取组网设备的数量;通过设置合理的时间阈值,能够控制超时判断的时长,提高组网效率。
在一些实施例中,步骤S130之后还包括如下步骤:根据编号结果确定数据交互中的组网设备。自动组网流程结束之后,各个组网设备之间进行数据交互,各个组网设备的站号存储于通讯帧的特定字节,从接收到的反馈通讯帧中可以获取数据发送方的站号,在明确各个组网设备物理连接顺序的前提下,能够清晰地得知由组网设备发送的数字量、模拟量信号的物理来源,实现精准的一对一、一对多的数据交互。
本申请第一方面的实施例包括:发送通讯帧;根据通讯帧的反馈信息确定组网设备的数量;按照物理连接顺序对组网设备进行编号。在菊花链线性拓扑通讯结构中,通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;在明确各个组网设备物理连接顺序的前提下,能够清晰地得知由组网设备发送的数字量、模拟量信号的物理来源,实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,组网设备之间没有绝对的主机和从机之分,CAN总线的整个通讯流程不受主从关系、一对一等条件的限制。
第二方面,本申请实施例提供了一种组网方法,参照图3,组网方法包括如下步骤:
S310.获取通讯帧;
S320.根据通讯帧确定组网设备的数量和站号。
本申请实施例的组网方法被应用于信号接收端,信号接收端接收来自于信号发送端的通讯帧,若接收到来自于下行信道的通讯帧,则修改通讯帧中的组网设备数,每接收到一个通讯帧,组网设备数加1,将更新的组网设备数设置为当前组网设备的站号,并分别在上行信道和下行信道中发送更新的通讯帧;若接收到来自于上行信道的通讯帧,则在上行信道中原封不动地转发该通讯帧。信号发送端利用下行信道向信号接收端发送通讯帧,而信号接收端利用上行信道向信号发送端反馈通讯帧。本申请实施例的组网方法,通过串口通讯实现自动组网,能够准确地获取传输数据与组网设备之间的对应关系;通过自动组网获取站号,能够实现精准的一对一、一对多的数据交互;组网设备的数量增多只会使自动组网的耗时稍有增加,组网设备站号的确定是纯粹的软件逻辑过程,能够减小硬件资源的成本消耗。
在一些实施例中,通讯帧包括特定字节,特定字节被用于记录当前的组网设备数。组网设备之间的串口通讯利用通讯帧来实现,通讯帧中的特定字节存储当前的组网设备数。本申请实施例的组网方法,通讯帧中存储当前的组网设备数,通过收发通讯帧,能够准确地获取传输数据与组网设备之间的对应关系。
在一些实施例中,参照图4,步骤S320包括如下步骤:
S410.校验通讯帧是否正确;若校验结果正确,则执行步骤S420;否则执行步骤S430;
S420.修改当前的组网设备数,并将组网设备数设置为当前的站号。
S430.将当前的组网设备数设置为当前的站号。
信号接收端接收到来自于信号发送端的通讯帧,由于通讯帧的帧格式是根据实际应用场景预定义的,因此对通讯帧进行校验表现为对帧格式进行校验。若通讯帧的帧格式与预定义的帧格式相匹配,则校验结果正确,修改通讯帧中的组网设备数,每接收到一个通讯帧,组网设备数加1,将更新的组网设备数设置为当前组网设备的站号;否则校验结果错误,将通讯帧中当前的组网设备数设置为当前组网设备的站号。本申请实施例的组网方法,通过对接收到的通讯帧进行校验,能够过滤无效通讯帧,避免由无效通讯帧导致的编号错误,从而提高组网的可靠性。
在一些实施例中,步骤S320之后还包括如下步骤:向邻接的组网设备发送通讯帧。组网设备可以分别在上行信道和下行信道中发送通讯帧,但是仅能向邻接的组网设备发送通讯帧,邻接的组网设备即与该组网设备直接相连的其他组网设备,包括上行信道中与其直接相连的第一组网设备和下行信道中与其直接相连的第二组网设备。本申请实施例的组网方法,通过限定组网设备之间通讯帧的传输关系,实际限定组网拓扑结构为线性拓扑,线性拓扑包括菊花链式线性拓扑、环形拓扑、总线型拓扑、星型拓扑等。线性拓扑结构中,通讯帧的传输在相邻的两个节点之间进行,保证网络结构中一对一、一对多的数据交互关系,能够通过信号接收端获取的通讯帧的信息寻找到相应的数据来源。
本申请第二方面的实施例包括:获取通讯帧;根据通讯帧确定组网设备的数量和站号。即使要增加通讯线上最大可连接的设备数量,对主控芯片的硬件引脚资源占用也不会增加。设备数量增多只会使自动组网的耗时稍有增加,设备站号的确定是纯粹的软件逻辑过程,与硬件资源毫无关系。本申请实施例的组网方法适用于对芯片硬件资源紧张、设备数量较多的场景。不区分通讯上的主从设备,且既能实现精准的一对一通讯,也能实现一对多、甚至多对多通讯。引入CAN总线的通讯机制后,总线上连接的所有设备均可主动发起通讯而不受限于其他设备,通讯冲突由CAN总线自动仲裁。是否对总线上的数据帧进行接收与处理,只取决于CAN数据帧的ID域内容,且规则可以自定义,通过自由可控的软件层逻辑,实现多种灵活的通讯方式,满足各种通讯场合的需求。
以PLC与扩展模块的通讯为例,参照图5,1个PLC和n个依次连接的扩展模块(Mod1、Mod2、……、Modn)通过串口通讯实现自动组网,使所有连接的扩展模块获得与物理连接顺序相对应的站号。实现串口通讯所需的硬件接口为:PLC上需要1个串口(USART)与可能连接的扩展模块(Mod1)进行通讯;所有扩展模块均需要一个USART1与连接的前一设备进行通讯,还需要一个USART2与可能连接的后一设备进行通讯。PLC位于起始位置,扩展模块依次与前一设备连接。使用串口通讯时,设备仅能和与其直接相连的设备进行通讯帧的收发。
参照图6,PLC与扩展模块组网的PLC通讯流程包括如下步骤:
S610.PLC发送通讯帧并开启超时判断,通讯帧中n的初始值为0;
S620.若预定时间内收到通讯帧,则执行步骤S630;否则触发超时,执行步骤S640;
S630.根据接收到的通讯帧的信息修改n的数值,重置预定时间,再次开启超时判断,循环执行步骤S620直至触发超时,退出流程;
S640.确定扩展模块数量为当前n的数值,完成自动组网,退出流程。
参照图7,PLC与扩展模块组网的扩展模块通讯流程包括如下步骤:
S710.若收到来自于上一个扩展模块(或PLC)的通讯帧,则执行步骤S720;否则执行步骤S730;
S720.更新通讯帧,将通讯帧内n的数值N修改为(N+1),并将(N+1)设置为扩展模块的站号,向上一个扩展模块(或PLC)以及下一个扩展模块分别发送新的通讯帧;
S730.将通讯帧内n的数值N设置为扩展模块的站号,退出流程;
S740.若收到来自于下一个扩展模块的通讯帧,则执行步骤S750;否则执行步骤S730;
S750.将通讯帧直接转发给上一个扩展模块(或PLC)。
超时判断的预定时间根据串口通讯波特率等参数及实际情况灵活设置,确保正常情况下不同扩展模块发送的通讯帧均能在预定时间内被PLC接收完成即可。若各个设备及串口通讯功能均正常,则在完成上述操作、PLC判断超时并退出流程后,PLC将获得已连接的扩展模块数量n,所有连接的扩展模块获得与物理连接顺序相一致的站号,从而实现自动组网。若各个扩展模块包括仅需获取一次的数据,如模块类型识别码、底层软件系统版本号等内容,可以将其整合至通讯帧的信息中。只要自动组网流程正常完成,PLC就能获得各个扩展模块的站号及其相关内容。自动组网流程正常结束后,PLC就能使用CAN总线和各个扩展模块进行频繁的数据交换。各个扩展模块的站号将在CAN通讯帧的ID区域体现。例如,令ID区域的低八位代表待通讯的扩展模块编号。各个扩展模块识别到与自身站号吻合的ID低八位数据时,则说明此帧的通讯对象为自身,需要对其中的数据内容进行处理;否则说明此帧的通讯对象为其他扩展模块,无需对其进行处理。若要发送广播帧,即所有扩展模块均需要对其数据内容进行处理,则可将ID低八位数据设置为特殊值(如0),所有扩展模块识别到ID区域相应内容为此特殊值时,均对其中的数据内容进行处理。而各个扩展模块在回复通讯帧时,也在ID区域内填入自身站号,以告知PLC此回复内容的发送方。
本申请第一方面一些实施例的组网方法被应用于信号发送端(如PLC),本申请第二方面一些实施例的组网方法被应用于信号接收端(如扩展模块),通过自动组网获得的站号可在明确各个扩展模块物理连接顺序的前提下,实现精准的一对一、一对多的数据交互。可根据扩展模块的站号,准确地获得各个传输数据与实际物理连接的扩展模块的对应关系,清晰地得知由扩展模块发送的数字量、模拟量信号的物理来源。而且,在CAN总线通讯的框架下,PLC和扩展模块之间没有绝对的主机和从机之分,在如图3所示的示例中,PLC只是数据收集与整合的中心,并不是通讯上的主机。因此,CAN总线的整个通讯流程不受主从关系、一对一等条件的限制。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的程序,程序被处理器执行时,实现本申请第一方面或第二方面的组网方法。
本申请实施例的电子设备,处理器可以是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是一种组网方法的可运行装置的控制中心,利用各种接口和线路连接整个一种组网方法的可运行装置的各个部分。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现一种组网方法的可运行装置的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本申请实施例的电子设备可以是蜂窝电话、智能电话、个人数字助理(PDA)、无线调制解调器、无线通信设备、手持设备、膝上型计算机、无绳电话、平板电脑、摄像机、游戏设备、上网本、智能本、超极本、电器、医疗器件或医疗设备、生物传感器/设备、比如智能手表、智能服装、智能眼镜、智能腕带、智能首饰(例如,智能戒指、智能手链等等)之类的可穿戴设备、娱乐设备(例如,音乐设备、视频设备、卫星无线电等等)、交通工具组件或传感器、智能仪表/传感器、工业制造设备、全球定位系统设备或者被配置为经由无线或有线介质通信的任何其它适当设备。
本申请实施例的电子设备通过执行本申请第一方面或第二方面的组网方法,能够实现自动组网,准确地获取传输数据与组网设备之间的对应关系,在明确各个组网设备物理连接顺序的前提下,能够实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,通讯流程不受主从关系、一对一等条件的限制;通过自由可控的软件层逻辑,能够实现多种灵活的通讯方式,满足各种通讯场合的需求。
第四方面,本申请实施例提供了一种存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现本申请第一方面或第二方面的组网方法。
本申请实施例的存储介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本申请实施例的存储介质通过执行本申请第一方面或第二方面的组网方法,能够实现自动组网,准确地获取传输数据与组网设备之间的对应关系,在明确各个组网设备物理连接顺序的前提下,能够实现精准的一对一、一对多的数据交互;在CAN总线通讯的框架下,通讯流程不受主从关系、一对一等条件的限制;通过自由可控的软件层逻辑,能够实现多种灵活的通讯方式,满足各种通讯场合的需求。
上面结合附图对本申请实施例作了详细说明,但是本申请不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本申请宗旨的前提下做出各种变化。此外,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
Claims (10)
1.组网方法,其特征在于,包括:
发送通讯帧;
根据所述通讯帧的反馈信息确定组网设备的数量;
按照物理连接顺序和所述组网设备的数量对所述组网设备进行编号。
2.根据权利要求1所述的组网方法,其特征在于,所述通讯帧包括特定字节,所述特定字节被用于记录当前的组网设备数。
3.根据权利要求2所述的组网方法,其特征在于,所述根据所述通讯帧的反馈信息确定组网设备的数量,包括:
在预设的时间阈值内检测是否接收到所述反馈信息;
若接收到所述反馈信息,则修改当前的所述组网设备数。
4.根据权利要求1至3任一项所述的组网方法,其特征在于,所述按照物理连接顺序和所述组网设备的数量对所述组网设备进行编号之后,还包括:
根据编号结果确定数据交互中的所述组网设备。
5.组网方法,其特征在于,包括:
获取通讯帧;
根据所述通讯帧确定组网设备的数量和站号。
6.根据权利要求5所述的组网方法,其特征在于,所述通讯帧包括特定字节,所述特定字节被用于记录当前的组网设备数。
7.根据权利要求6所述的组网方法,其特征在于,所述根据所述通讯帧确定组网设备的数量和站号,包括:
校验所述通讯帧是否正确;
若校验结果正确,则修改当前的所述组网设备数,并将所述组网设备数设置为当前的所述站号。
8.根据权利要求5至7任一项所述的组网方法,其特征在于,所述根据所述通讯帧确定组网设备的数量和站号之后,还包括:
向邻接的所述组网设备发送所述通讯帧。
9.电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的程序,其特征在于,所述程序被所述处理器执行时,实现权利要求1至8任一项所述的组网方法。
10.存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,其特征在于,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1至8任一项所述的组网方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010915286.1A CN112187598A (zh) | 2020-09-03 | 2020-09-03 | 组网方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010915286.1A CN112187598A (zh) | 2020-09-03 | 2020-09-03 | 组网方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112187598A true CN112187598A (zh) | 2021-01-05 |
Family
ID=73925292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010915286.1A Pending CN112187598A (zh) | 2020-09-03 | 2020-09-03 | 组网方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187598A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259860A (zh) * | 2021-06-15 | 2021-08-13 | 四川九通智路科技有限公司 | 一种基于蓝牙广播通信的自组网方法 |
CN114500147A (zh) * | 2021-12-29 | 2022-05-13 | 深圳市英威腾电气股份有限公司 | 分配站号的方法、装置、电子设备及存储介质 |
CN114553632A (zh) * | 2022-03-01 | 2022-05-27 | 深圳市鼎芯无限科技有限公司 | 一种自编号菊花链通信方法 |
CN115567080A (zh) * | 2022-09-14 | 2023-01-03 | 上海龙旗科技股份有限公司 | 一种基于usart的通信方法、系统及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1719363A (zh) * | 2005-07-27 | 2006-01-11 | 艾默生网络能源有限公司 | 可编程逻辑控制器硬件扩展方法 |
US20080091931A1 (en) * | 2006-08-08 | 2008-04-17 | Mcnutt Alan D | Devices, systems, and methods for assigning a PLC module address |
CN106131240A (zh) * | 2016-08-09 | 2016-11-16 | 郑州市茂辰电子科技有限公司 | 一种基于顺序链的can地址分配方法及通信系统 |
CN111431785A (zh) * | 2020-06-11 | 2020-07-17 | 南京北路自动化系统有限责任公司 | 一种can总线节点自组网方法 |
-
2020
- 2020-09-03 CN CN202010915286.1A patent/CN112187598A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1719363A (zh) * | 2005-07-27 | 2006-01-11 | 艾默生网络能源有限公司 | 可编程逻辑控制器硬件扩展方法 |
US20080091931A1 (en) * | 2006-08-08 | 2008-04-17 | Mcnutt Alan D | Devices, systems, and methods for assigning a PLC module address |
CN106131240A (zh) * | 2016-08-09 | 2016-11-16 | 郑州市茂辰电子科技有限公司 | 一种基于顺序链的can地址分配方法及通信系统 |
CN111431785A (zh) * | 2020-06-11 | 2020-07-17 | 南京北路自动化系统有限责任公司 | 一种can总线节点自组网方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259860A (zh) * | 2021-06-15 | 2021-08-13 | 四川九通智路科技有限公司 | 一种基于蓝牙广播通信的自组网方法 |
CN113259860B (zh) * | 2021-06-15 | 2021-10-19 | 四川九通智路科技有限公司 | 一种基于蓝牙广播通信的自组网方法 |
CN114500147A (zh) * | 2021-12-29 | 2022-05-13 | 深圳市英威腾电气股份有限公司 | 分配站号的方法、装置、电子设备及存储介质 |
CN114500147B (zh) * | 2021-12-29 | 2023-12-26 | 深圳市英威腾电气股份有限公司 | 分配站号的方法、装置、电子设备及存储介质 |
CN114553632A (zh) * | 2022-03-01 | 2022-05-27 | 深圳市鼎芯无限科技有限公司 | 一种自编号菊花链通信方法 |
CN114553632B (zh) * | 2022-03-01 | 2024-02-27 | 深圳市鼎芯无限科技有限公司 | 一种自编号菊花链通信方法 |
CN115567080A (zh) * | 2022-09-14 | 2023-01-03 | 上海龙旗科技股份有限公司 | 一种基于usart的通信方法、系统及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112187598A (zh) | 组网方法、电子设备及存储介质 | |
US10241955B2 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
EP3035579B1 (en) | Apparatus, method and system to exchange error information | |
US9710410B2 (en) | Camera control slave devices with multiple slave device identifiers | |
CN108279910B (zh) | 程序代码烧写方法、装置、计算机设备和存储介质 | |
US20150370735A1 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
US20160224489A1 (en) | Voltage mode and current mode device enumeration | |
WO2019134306A1 (zh) | 消息处理方法、装置、终端设备及可读存储介质 | |
KR20160147842A (ko) | 센서 글로벌 버스 | |
US11546088B2 (en) | Check code processing method, electronic device and storage medium | |
CN108664429B (zh) | 主从配置沟通协议、提高兼容性的方法以及电子设备 | |
US20110276748A1 (en) | Non-volatile storage device, host device, storage system, data communication method and program | |
CN111510899A (zh) | 一种蓝牙传输方法及装置 | |
WO2019090745A1 (zh) | Harq编号确定方法、网络设备、终端和计算机存储介质 | |
US10733121B2 (en) | Latency optimized I3C virtual GPIO with configurable operating mode and device skip | |
US20200409902A1 (en) | Method for addressing an integrated circuit on a bus and corresponding device | |
US9467222B1 (en) | Systems and methods for parallel communication with multiple bluetooth devices | |
WO2022089313A1 (zh) | 通信处理方法、装置、存储介质、芯片及相关设备 | |
CN116614747A (zh) | 真无线耳机系统及耳机同步方法 | |
CN109726604B (zh) | 一种接触卡与终端之间的数据交换通信方法 | |
CN116244255A (zh) | Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 | |
US12013771B2 (en) | Method and interconnect interface for built-in self-test | |
WO2021244548A1 (zh) | 即时消息处理方法和装置 | |
TWI434582B (zh) | 行動台、基地台、傳輸方法及其電腦程式產品 | |
JPH0548017B2 (zh) |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210105 |