CN104104412B - 一种基于dma的电力线网络系统及其通讯方法 - Google Patents

一种基于dma的电力线网络系统及其通讯方法 Download PDF

Info

Publication number
CN104104412B
CN104104412B CN201410361914.0A CN201410361914A CN104104412B CN 104104412 B CN104104412 B CN 104104412B CN 201410361914 A CN201410361914 A CN 201410361914A CN 104104412 B CN104104412 B CN 104104412B
Authority
CN
China
Prior art keywords
data
dma
length
receiving
child node
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.)
Active
Application number
CN201410361914.0A
Other languages
English (en)
Other versions
CN104104412A (zh
Inventor
曹军
李林
汪丽丽
沈艳
郭晋楠
陶维青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HKUST intelligence (Hefei) Technology Co., Ltd.
KEDA INTELLIGENT ELECTRICAL TECHNOLOGY CO., LTD.
Original Assignee
KEDA INTELLIGENT ELECTRICAL TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by KEDA INTELLIGENT ELECTRICAL TECHNOLOGY Co Ltd filed Critical KEDA INTELLIGENT ELECTRICAL TECHNOLOGY Co Ltd
Priority to CN201410361914.0A priority Critical patent/CN104104412B/zh
Publication of CN104104412A publication Critical patent/CN104104412A/zh
Application granted granted Critical
Publication of CN104104412B publication Critical patent/CN104104412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Communication Control (AREA)

Abstract

本发明涉及一种基于DMA的电力线网络系统及其通讯方法。电力线网络系统包括主节点和若干个子节点,所述的主节点与各个子节点之间通过电力线交互连接。所述的主节点通过RS232接口与上位机应用平台终端交互连接。所述的若干个子节点分别通过RS485接口与现场应用设备交互连接。该系统是由一个主节点和若干个子节点通过电力线组成的PLC网络,各个子节点通过RS485总线连接现场应用设备。本发明所述的电力线网络系统及其通讯方法能够解决现有技术中的不足,提高电力线网络系统各节点收发数据的速度,保证PLC组网中数据报文传输的时效性,使PLC组网应用更加灵活、可靠。

Description

一种基于DMA的电力线网络系统及其通讯方法
技术领域
本发明涉及电力线载波组网技术领域,具体涉及一种基于DMA的电力线网络系统及其通讯方法。
背景技术
随着科技的进步,智能电网的建设正在日益深入全面的展开,而智能通信技术是智能电网应用的关键。电力线载波通信方式因其以电力线网络为传输介质,具有通道可靠性高、抗破坏能力强、投资少等优点,在智能电网建设中起着不可替代的作用。随着国家建设坚强智能电网和电力物联网概念的提出,现在的基于FSK和PSK以及S-FSK调制模式的低速载波已无法满足利用载波进行大规模组网和高速传输数据的要求。因此,基于OFDM技术的高速电力线载波技术得到快速发展,OFDM电力线载波技术具有抗衰减能力强、频率利用率高、抗码间干扰能力强等优势,目前基于该技术制定的相关技术规范已实现高于100kbps的数据传输速率。
但是,随着电力线载波速度的大幅提升,之前一些配合低速载波使用的技术缺点也逐渐暴露出来,其主要问题有:
1、低速载波传输数据时,载波节点模块收发数据一般采用串口中断按字节方式,时效不高、延时很大。由于数据在电力线上传输的速度也很低,数据收发的延时相对于数据在电力线上传输的时间来说不是很明显,同时之前的应用一般对数据传输速度要求都不是很高,因此这种技术缺点对载波在应用中的使用影响不大。然而随着电力线载波技术的发展,载波传输数据的速度大幅提升,其应用场合也不断扩大,相关应用对数据传输速度的要求也越来越严。如果载波节点还是按照之前的方式收发数据,一帧数据在节点接收阶段的时间延时将会超过其在电力线上实际传输时间,严重阻碍了高速电力线载波技术的推广使用。
2、载波节点模块在接收应用层协议帧时,一般都是在收完一完整帧后再进行转发操作。这在应用层协议帧报文长度较短时对报文传输速度影响不大,但是当应用层协议报文长度较长时,节点等全部接收后,由于电力线上对传输的载波帧长度限制,还需分段传输,这种接收后再分段发送的特点使时效性本来就不高的载波通信速度更加缓慢。
3、一般利用PLC网络组网进行数据传输的应用中,应用协议比较固定单一,不够灵活。当组网中传输的应用协议发生改变时,网络中各个节点需重新烧写代码来支持对新应用协议的解析。
发明内容
本发明的目的在于提供一种基于DMA的电力线网络系统及其通讯方法,该电力线网络系统及其通讯方法能够解决现有技术中的不足,提高电力线网络系统各节点收发数据的速度,保证PLC组网中数据报文传输的时效性,使PLC组网应用更加灵活、可靠。
为实现上述目的,本发明采用了以下技术方案:一种基于DMA的电力线网络系统,包括主节点和若干个子节点,所述的主节点与各个子节点之间通过电力线交互连接。所述的主节点通过RS232接口与上位机应用平台终端交互连接。所述的若干个子节点分别通过RS485接口与现场应用设备交互连接。该系统是由一个主节点和若干个子节点通过电力线组成的PLC网络,各个子节点通过RS485总线连接现场应用设备。
具体地说,所述的主节点包括第一微控制器、第一载波电路模块、第一耦合电路模块、第一电源管理模块、和第一收发状态显示模块。所述的第一载波电路模块通过第一微控制器的第一UART接口与第一微控制器交互连接。所述的第一耦合电路模块与第一载波电路模块交互连接。所述的第一电源管理模块的输出端分别与第一微控制器的电源信号输入端、第一载波电路模块的电源信号输入端相连。所述的第一收发状态指示模块与第一微控制器的输出端相连。所述的第一微控制器的第二UART接口通过RS232接口与上位机应用平台终端交互连接。第一收发状态指示模块由一系列的发光二极管组成,发光二极管闪烁表示对应的端口有数据正在传输。
所述的子节点包括第二微控制器、第二载波电路模块、第二耦合电路模块、第二电源管理模块、和第二收发状态显示模块。所述的第二载波电路模块通过第二微控制器的第一UART接口与第二微控制器交互连接。所述的第二耦合电路模块与第二载波电路模块交互连接。所述的第二电源管理模块的输出端分别与第二微控制器的电源信号输入端、第二载波电路模块的电源信号输入端相连。所述的第二收发状态指示模块与第二微控制器的输出端相连。所述的第二微控制器的第三UART接口通过RS485接口与现场应用设备交互连接。第二收发状态指示模块由一系列的发光二极管组成,发光二极管闪烁表示对应的端口有数据正在传输。
进一步的,所述的主节点还包括第一看门狗模块、第一无源晶振模块、第一时钟模块、第一液晶显示模块和第一按键输入模块。所述的第一看门狗模块、第一无源晶振模块以及第一按键输入模块的输出端分别与第一微控制器的输入端相连。所述的第一时钟模块与第一微控制器交互连接。所述的第一液晶显示模块的输入端与第一微控制器的输出端相连。第一液晶显示模块和第一按键输入模块实现主节点运行时主要参数的显示。
所述的子节点还包括第二看门狗模块、第二无源晶振模块、第二时钟模块、第二液晶显示模块和第二按键输入模块。所述的第二看门狗模块、第二无源晶振模块以及第二按键输入模块的输出端分别与第二微控制器的输入端相连。所述的第二时钟模块与第二微控制器交互连接。所述的第二液晶显示模块的输入端与第二微控制器的输出端相连。第二液晶显示模块和第二按键输入模块实现子节点运行时主要参数的显示。
更进一步的,所述的第一微控制器和第二微控制器均采用STM32F107VC处理器。所述的第一载波电路模块和第二载波电路模块均采用MAX2992载波芯片。
本发明还涉及一种根据上述基于DMA的电力线网络系统的通讯方法,该方法包括以下步骤:
(1)电力线网络系统初始化,对主节点、子节点以及连接在子节点下的各个现场应用设备的参数进行配置,并对DMA收发缓冲区的长度d、中断触发条件和数据报文分段限定长度L进行设置。在系统初始化阶段,需要配置的参数包括协议类型、主节点地址、子节点地址和连接在子节点下各个现场应用设备的地址。
(2)采用DMA数据传输技术收发数据,并根据DMA收发缓冲区的中断触发条件,将DMA缓存区中的数据读取到固定的接收数据缓存区待处理。
所述的DMA收发缓冲区的中断触发条件包括两个,第一中断触发条件是:当接收数据长度为DMA收发缓冲区长度d的一半时,触发中断。第二中断触发条件是:当接收数据长度等于DMA收发缓冲区长度d时,触发中断。当满足第一中断触发条件时,如是一帧报文接收的开始,微控制器MCU先根据系统初始化配置文件中定义的协议类型,获取报文中的设备地址;再根据设备地址以及配置文件中的映射规则,获取到对应目的子节点的地址。
(3)根据数据报文分段限定长度L和传输的数据报文长度L1间的大小关系,对DMA收发缓冲区收发的数据进行判断处理。
(4)根据判断处理结果,对数据进行转发。具体过程为:
若传输的数据报文长度L1大于数据报文分段限定长度L,则当DMA收发缓冲区的数据长度累积达到分段限定长度L时,DMA收发缓冲区继续接收剩下的数据。与此同时,微控制器MCU将DMA收发缓冲区中接收到长度为L的数据打包成载波数据包,发送到对应的子节点。
若传输的数据报文长度L1小于等于数据报文分段限定长度L,则当一帧数据收发接收后,将DMA收发缓冲区中的数据打包成载波数据包,发送到对应的子节点。
进一步的,所述的DMA收发缓冲区长度d为20字节~30字节。
与现有技术相比,本发明的有益效果为:
1、本发明在电力线网络系统的各个节点中均采用基于DMA方式收发数据,通过有效设置DMA缓存长度以及中断触发条件,在DMA缓存接收数据为0.5个DMA缓存长度和1个DMA缓存长度时分别触发中断让微控制器MCU读取数据。从而有效提高了电力线网络系统各节点收发数据的速度,保证了PLC组网中数据报文传输的时效性。
2、在电力线网络系统主节点的接收转发流程中,利用DMA接收数据无需MCU干涉的特性,对长报文进行分段接收发送。这样无需等待长报文全部接收完成后再组帧进行发送,不仅可实现电力线网络系统节点对长报文的同步收发,减少报文在节点中的处理时间,还能提高报文在PLC网络中的传输速度,有效扩展PLC组网的应用范围。
3、本发明采用配置参数方式,支持多协议在电力线网络系统中的传输。网络系统中的主节点利用配置参数建立协议设备地址到所在子节点的映射关系。主节点接收到上位机应用平台发送的协议后,依据配置参数和映射关系,获取协议报文接收设备对应的子节点地址,无需解析报文,直接发送给该子节点。从而增加了PLC组网应用的灵活性、可靠性,同时也有效降低了应用系统的投资,具有明显的经济效益。
附图说明
图1是本发明中电力线网络系统结构示意图;
图2是本发明中主节点的硬件结构示意图;
图3是本发明中子节点的硬件结构示意图;
图4是本发明中基于DMA的收发数据算法流程图;
图5是本发明中基于DMA的处理数据算法流程图;
图6是本发明中基于DMA的转发数据算法流程图;
图7是本发明网络系统多协议地址映射表。
其中:
1、第一微控制器,2、第一无源晶振模块,3、第一看门狗模块,4、第一电源管理模块,5、第一时钟模块,6、第一液晶显示模块,7、第一按键输入模块,8、第一载波电路模块,9、第一耦合电路模块,10、RS232接口,11、上位机应用平台,12、第一收发状态指示模块,13、第二微控制器,14、第二无源晶振模块,15、第二看门狗模块,16、第二电源管理模块,17、第二时钟模块,18、第二液晶显示模块,19、第二按键输入模块,20、第二载波电路模块,21、第二耦合电路模块,22、RS485接口,23、现场应用设备,24、第二收发状态指示模块。
具体实施方式
下面结合附图对本发明做进一步说明:
如图1-图3所示的一种基于DMA的电力线网络系统,包括主节点和若干个子节点,所述的主节点与各个子节点之间通过电力线交互连接。所述的主节点通过RS232接口10与上位机应用平台终端11交互连接。所述的若干个子节点分别通过RS485接口22与现场应用设备23交互连接。该系统是由一个主节点和若干个子节点通过电力线组成的PLC网络,各个子节点通过RS485总线22连接现场应用设备23。只要在RS485总线驱动能力范围内,每个子节点可以连接不同数量的现场应用设备,每个现场应用设备具有一个唯一的设备地址。在该电力线网络系统中,主节点和各个子节点都具有各自唯一的短地址,用于标识各自的身份。各个子节点的短地址是主节点在网络初始化时根据配置参数分配的。在该电力线网络系统的组建过程中,主节点根据配置参数来建立各个子节点下的设备地址与对应子节点地址间的映射关系;与此同时,各个子节点也将分配到的网络短地址设置到各自的载波电路模块中。当该电力线网络系统组建成功后,上位机应用平台可以通过配置参数设置的协议类型发送对应的协议报文,实现和网络中各个子节点下各设备的数据通信。
具体地说,所述的主节点包括第一微控制器1、第一载波电路模块8、第一耦合电路模块9、第一电源管理模块4、和第一收发状态显示模块6。所述的第一载波电路模块8通过第一微控制器1的第一UART接口与第一微控制器1交互连接。所述的第一耦合电路模块9与第一载波电路模块8交互连接。所述的第一电源管理模块4的输出端分别与第一微控制器1的电源信号输入端、第一载波电路模块8的电源信号输入端相连。所述的第一收发状态指示模块12与第一微控制器1的输出端相连。所述的第一微控制器1的第二UART接口通过RS232接口10与上位机应用平台终端11交互连接。第一收发状态指示模块12由一系列的发光二极管组成,发光二极管闪烁表示对应的端口有数据正在传输。
所述的子节点包括第二微控制器13、第二载波电路模块20、第二耦合电路模块21、第二电源管理模块16、和第二收发状态显示模块24。所述的第二载波电路模块20通过第二微控制器13的第一UART接口与第二微控制器13交互连接。所述的第二耦合电路模块21与第二载波电路模块20交互连接。所述的第二电源管理模块16的输出端分别与第二微控制器13的电源信号输入端、第二载波电路模块20的电源信号输入端相连。所述的第二收发状态指示模块24与第二微控制器13的输出端相连。所述的第二微控制器13的第三UART接口通过RS485接口22与现场应用设备23交互连接。第二收发状态指示模块24由一系列的发光二极管组成,发光二极管闪烁表示对应的端口有数据正在传输。
进一步的,所述的主节点还包括第一看门狗模块3、第一无源晶振模块2、第一时钟模块5、第一液晶显示模块6和第一按键输入模块7。所述的第一看门狗模块3、第一无源晶振模块2以及第一按键输入模块7的输出端分别与第一微控制器1的输入端相连。所述的第一时钟模块5与第一微控制器1交互连接。所述的第一液晶显示模块6的输入端与第一微控制器1的输出端相连。第一液晶显示模块6和第一按键输入模块7实现主节点运行时主要参数的显示。
所述的子节点还包括第二看门狗模块15、第二无源晶振模块14、第二时钟模块17、第二液晶显示模块18和第二按键输入模块19。所述的第二看门狗模块15、第二无源晶振模块14以及第二按键输入模块19的输出端分别与第二微控制器13的输入端相连。所述的第二时钟模块17与第二微控制器13交互连接。所述的第二液晶显示模块18的输入端与第二微控制器13的输出端相连。第二液晶显示模块18和第二按键输入模19块实现子节点运行时主要参数的显示。
更进一步的,所述的第一微控制器1和第二微控制器13均采用STM32F107VC处理器。所述的第一载波电路模块8和第二载波电路模块20均采用MAX2992载波芯片。如图2和图3所示,STM32F107VC的UART1接口与载波电路模块交互连接,主节点的UART2接口通过RS232接口与上位机应用平台终端交互连接,子节点的UART3接口通过RS485接口与现场应用设备交互连接。STM32F107VC的OSC_IN管脚接无源晶振模块,5个GPIO管脚分别接看门狗模块、时钟模块、液晶显示模块、按键输入模块和收发状态指示模块。电源管理模块给STM32F107VC的输出信号为3.3V,给MAX2992载波芯片的输出信号为3.3V/12V。MAX2992载波芯片通过STM32F107VC处理器的UART1接口与微控制器MCU通信。微控制器将应用协议报文按其要求封装成对应的载波报文,通过UART1接口发送到MAX2992,再由MAX2992将接收到的报文通过其前端电路耦合到电力线上,实现载波数据的收发,或者接收到电力线上的数据后通过UART1口将数据发送给微控制器MCU。上位机平台通过RS232接口将应用协议报文发送到主节点,主节点通过STM32F107VC处理器的UART2接口以DMA方式接收协议报文。对于子节点来说,子节点将通过STM32F107VC处理器的UART3接口接收到的协议报文经RS485接口发送到各个现场应用设备。
本发明还涉及一种根据上述基于DMA的电力线网络系统的通讯方法,该方法包括以下步骤:
(1)电力线网络系统初始化,对主节点、子节点以及连接在子节点下的各个现场应用设备的参数进行配置,并对DMA收发缓冲区的长度d、中断触发条件和数据报文分段限定长度L进行设置。在系统初始化阶段,需要配置的参数包括协议类型、主节点地址、子节点地址和连接在子节点下各个现场应用设备的地址。
(2)采用DMA数据传输技术收发数据,并根据DMA收发缓冲区的中断触发条件,将DMA缓存区中的数据读取到固定的接收数据缓存区待处理。
所述的DMA收发缓冲区的中断触发条件包括两个,第一中断触发条件是:当接收数据长度为DMA收发缓冲区长度d的一半时,触发中断。第二中断触发条件是:当接收数据长度等于DMA收发缓冲区长度d时,触发中断。当满足第一中断触发条件时,如是一帧报文接收的开始,微控制器MCU先根据系统初始化配置文件中定义的协议类型,获取报文中的设备地址;再根据设备地址以及配置文件中的映射规则,获取到对应目的子节点的地址。
(3)根据数据报文分段限定长度L和传输的数据报文长度L1间的大小关系,对DMA收发缓冲区收发的数据进行判断处理。
(4)根据判断处理结果,对数据进行转发。具体过程为:
若传输的数据报文长度L1大于数据报文分段限定长度L,则当DMA收发缓冲区的数据长度累积达到分段限定长度L时,DMA收发缓冲区继续接收剩下的数据。与此同时,微控制器MCU将DMA收发缓冲区中接收到长度为L的数据打包成载波数据包,发送到对应的子节点。
若传输的数据报文长度L1小于等于数据报文分段限定长度L,则当一帧数据收发接收后,将DMA收发缓冲区中的数据打包成载波数据包,发送到对应的子节点。
进一步的,所述的DMA收发缓冲区长度d为20字节~30字节。
下面,结合图4-图7对数据的接收、处理、转发过程以及多协议映射表进行详细的描述:
图4为主节点采用DMA收发数据的算法过程。在开启一次DMA缓冲区接收数据过程中会有两次触发中断,进入中断函数后判断中断触发类型。若是接收一半中断或者接收满中断,则将DMA缓存区中的数据读取到固定的接收数据缓存区待处理。两种中断读取数据时,数据在DMA缓存区中的位置不同。当接收完数据后,置数帧结束计数器,启动一帧接收结束的判断依据,最后清除相关中断标志位并退出中断。当接收数据DMA模块出现错误时,中断函数根据触发中断的标志位是错误标志位,初始化相关参数后重新使能DMA中断,保证DMA接收数据的可靠性。
图5为数据接收后,判断是否进行转发的判断处理过程。本发明采用微控制器MCU的systick定时中断作为接收数据帧结束的基础。在图3所述的流程图中,每个DMA接收中断后,均将帧结束计数器初始化为一个固定值;且在每次进入systick定时中断函数中时,均对该计数器进行减1操作,当计数器值为0时,则认定一帧接收结束。在图3所示的接收数据的过程中,因为每次接收数据完成后均对计数器进行重新置数,因此在DMA接收数据过程中,计数器值不为0。同时,为了将接收的长帧报文分段同步接收发送,在接收过程中,需要判断接收数据总长度对分段发送限定长度的求余结果。若求余结果为0,则表示接收的数据长度已经符合分段发送的条件,并将数据转发计数器加1。若求余结果不为0,表示接收的数据长度还未达到限定的发送长度;则判断一帧是否收发结束。如果一帧收发已经结束,但接收的数据长度还没有达到限定的发送长度,则将数据转发计数器加1,并转发实际收到的数据。如果一帧收发未结束,则退出中断进行下次判断。
图6为将接收到的数据转发到载波电路模块的算法流程。根据图4所示的算法流程的处理结果,对接收的数据进行转发操作。当转发计数器值不为0时,说明数据接收区中存在需要转发的数据报文。首先,根据配置参数中的协议类型,获取数据报文帧中设备地址的位置,读出设备地址。其次,根据映射表查出该设备地址所在的目的子节点地址,将该地址和数据缓存区的数据报文进行载波帧组包,发送到载波电路模块对应串口的DMA发送缓冲区。再次,使能DMA发送中断,通过载波电路模块将数据报文发送出去。最后,发送完一帧后,根据转发计数器的值判断数据是否已经转发完,没有则继按照前面流程进行转发。
图7给出了本发明中多协议的映射表。在系统组网初始阶段需通过配置参数配置该表,协议类型包含常用的Modbus,DLT645,101等规约。由于不同规约对应的设备地址长度不同,且该地址在不同协议中的位置也不同。因此,主节点在进行组网转发数据前必须通过协议类型得知其转发的是哪种协议报文,并依据不同的协议类型先从数据接收缓冲区中对应协议报文的帧格式读出设备地址,再根据映射表查找出对应的目的子节点地址。下面介绍几种常见协议的协议类型及设备地址:
Modbus协议:协议类型为01,协议设备地址为一个字节,子节点地址为0x0001,该子节点下面对应的设备地址为0x02,0x03。子节点地址为0x0002,该子节点下面对应的设备地址为0x04,0x05,0x06等,其他子节点配置类似。
DLT645协议:协议类型为02,协议设备地址为6个字节,子节点地址为0x001,该子节点下面对应的设备地址为0x000000000002,0x000000000003。子节点地址为0x0002,该子节点下面对应的设备地址为0x000000000004,0x000000000005,0x000000000006等,其他子节点配置类似。
101协议:协议类型为03,协议设备地址为1个字节,子节点地址为0x001,该子节点下面对应的设备地址为0x02,0x03。子节点地址为0x0002,该子节点下面对应的设备地址为0x04,0x05,0x06等,其他子节点配置类似。
当主节点判断协议类型是02,主节点知道应用平台发来的数据帧都为645报文帧,在转发数据的过程中,依据该协议报文帧格式,读出设备地址。比如0x000000000005,查表得知该地址对应的网络子节点地址为0x0002。无需解析具体报文,直接根据获得的子节点地址将该报文组装成都应的载波报文,通过载波模块发送到PLC网络中对应的子节点。子节点通过其载波模块收到主节点发给自己的协议报文,将载波报文帧中的数据直接发送到连接设备RS485总线的串口,实现上位机应用平台和PLC组网中各个子节点下的不同设备的数据通信。
在本发明所述的基于DMA的电力线网络系统中,主节点和子节点均采用DMA接收和发送对应的报文帧。本发明所述的基于DMA的电力线网络系统的通讯方法具有以下特点:
(1)将DMA数据缓冲区的长度d设置成较短的长度(一般设为20~30字节,优选为24字节);并设置第一中断触发条件和第二中断触发条件。所述的第一中断触发条件为:DMA数据缓冲区接收的数据长度等于0.5d。所述的第二中断触发条件为:DMA数据缓冲区接收的数据长度等于d。通过设置两个中断触发条件,在DMA数据缓冲区接收数据期间,微控制器MCU有两次机会对接收的数据进行处理。
微控制器MCU对接收的数据进行处理的过程为:
当满足第一中断触发条件时,如是接收协议数据报文的开始,则根据系统配置文件中定义的协议类型获取报文中的设备地址;然后根据获取的设备地址和配置文件中的映射规则,获取对应目的子节点的地址。
当传输的数据报文长度大于分段限定长度L时,利用DMA接收数据无需MCU干涉的特点,在缓冲区接收的数据累积达到分段限定长度L个字节时,DMA继续接收数据,与此同时,MCU将已收到的数据打包成载波数据包,发送到对应的子节点。从而实现长报文接收一段就发送一段,而无需等长报文全部接收完后再发送。
当传输的数据报文长度小于分段限定长度L时,等帧结束判断有效时,直接将该数据打包成载波数据包,发送到对应的子节点,无需截断发送。
(2)本发明采用的配置参数方式来将多协议快速映射到对应的子节点。在电力线组网过程中,PLC网络中的主节点和子节点的地址是唯一的,主节点通过子节点的地址来进行数据的一一对应收发的。连接在子节点下的各个设备的地址也是唯一的,并且体现在交互的通信协议报文中。
在网络系统的初始化配置阶段,配置参数包括协议类型、主节点地址、子节点地址、子节点下对应的所有设备地址等。上位机应用平台通过微控制器MCU的维护端口将配置参数发送给主节点,主节点根据参数建立各个子节点地址和其下接设备地址之间的映射关系,在系统组网阶段将对应的子节点地址分配给各个子节点。组网成功后,上位机应用平台可以根据配置的协议和各个子节点下的设备进行数据通信。主节点收到通信报文后,首先,根据配置参数判断出协议类型;其次,根据每个协议报文帧中设备地址位置固定的特点,读取出设备地址;再次,根据之前建立的映射关系,快速查找出该报文要发往的目的子节点地址;再次,根据地址和协议报文帧组建成载波数据报文帧,通过串口模块发送给载波模块,由载波模块和耦合电路模块耦合到电力线上,发送到协议目的设备所在的子节点。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。

Claims (2)

1.一种基于DMA的电力线网络系统的通讯方法,其特征在于:该方法包括以下步骤:
(1)电力线网络系统初始化,对主节点、子节点以及连接在子节点下的各个现场应用设备的参数进行配置,并对DMA收发缓冲区的长度d、中断触发条件和数据报文分段限定长度L进行设置;
在系统初始化阶段,需要配置的参数包括协议类型、主节点地址、子节点地址和连接在子节点下各个现场应用设备的地址;
(2)采用DMA数据传输技术收发数据,并根据DMA收发缓冲区的中断触发条件,将DMA缓存区中的数据读取到固定的接收数据缓存区待处理;
所述的DMA收发缓冲区的中断触发条件包括两个,第一中断触发条件是:当接收数据长度为DMA收发缓冲区长度d的一半时,触发中断;第二中断触发条件是:当接收数据长度等于DMA收发缓冲区长度d时,触发中断;
当满足第一中断触发条件时,如是一帧报文接收的开始,微控制器MCU先根据系统初始化配置文件中定义的协议类型,获取报文中的设备地址;再根据设备地址以及配置文件中的映射规则,获取到对应目的子节点的地址;
(3)根据数据报文分段限定长度L和传输的数据报文长度L1间的大小关系,对DMA收发缓冲区收发的数据进行判断处理;
(4)根据判断处理结果,对数据进行转发,具体过程为:
若传输的数据报文长度L1大于数据报文分段限定长度L,则当DMA收发缓冲区的数据长度累积达到分段限定长度L时,DMA收发缓冲区继续接收剩下的数据;与此同时,微控制器MCU将DMA收发缓冲区中接收到长度为L的数据打包成载波数据包,发送到对应的子节点;
若传输的数据报文长度L1小于等于数据报文分段限定长度L,则当一帧数据收发接收后,将DMA收发缓冲区中的数据打包成载波数据包,发送到对应的子节点。
2.根据权利要求1所述的一种基于DMA的电力线网络系统的通讯方法,其特征在于:所述的DMA收发缓冲区长度d为20字节~30字节。
CN201410361914.0A 2014-07-28 2014-07-28 一种基于dma的电力线网络系统及其通讯方法 Active CN104104412B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410361914.0A CN104104412B (zh) 2014-07-28 2014-07-28 一种基于dma的电力线网络系统及其通讯方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410361914.0A CN104104412B (zh) 2014-07-28 2014-07-28 一种基于dma的电力线网络系统及其通讯方法

Publications (2)

Publication Number Publication Date
CN104104412A CN104104412A (zh) 2014-10-15
CN104104412B true CN104104412B (zh) 2016-09-14

Family

ID=51672255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410361914.0A Active CN104104412B (zh) 2014-07-28 2014-07-28 一种基于dma的电力线网络系统及其通讯方法

Country Status (1)

Country Link
CN (1) CN104104412B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679691B (zh) * 2015-01-22 2017-12-12 中国人民解放军国防科学技术大学 一种用于gpdsp的采用主机计数的多核dma分段数据传输方法
CN104679689B (zh) * 2015-01-22 2017-12-12 中国人民解放军国防科学技术大学 一种用于gpdsp的采用从机计数的多核dma分段数据传输方法
CN105337421A (zh) * 2015-12-09 2016-02-17 梅照付 一种智能电网系统中的协议转换及其相互通讯方法
CN105959288A (zh) * 2016-05-27 2016-09-21 姹や寒 一种电力电网系统中的网络协议转换及其相互通讯方法
CN106100700A (zh) * 2016-08-10 2016-11-09 贵州大学 基于dl/t645规约的工业物联信息传输方法及装置
CN109976501A (zh) * 2017-12-28 2019-07-05 中移物联网有限公司 一种低功耗控制方法、装置、系统及存储介质
FR3083408B1 (fr) * 2018-06-28 2020-09-18 Sagemcom Energy & Telecom Sas Procede permettant de transporter des trames lora sur un reseau cpl.
CN111666237B (zh) * 2020-06-08 2022-06-28 王斌 具有高速缓存管理功能的dma控制器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078406A (zh) * 2013-01-08 2013-05-01 东北大学 基于电力网的插排控制系统及方法
CN103313473A (zh) * 2013-05-29 2013-09-18 杭州电子科技大学 基于电力线载波通信的led调光电路
CN203689686U (zh) * 2014-01-23 2014-07-02 国家电网公司 一种具有通信自检功能的采集器
CN203689676U (zh) * 2014-01-23 2014-07-02 国家电网公司 一种具备远程电力线载波升级功能的采集器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078406A (zh) * 2013-01-08 2013-05-01 东北大学 基于电力网的插排控制系统及方法
CN103313473A (zh) * 2013-05-29 2013-09-18 杭州电子科技大学 基于电力线载波通信的led调光电路
CN203689686U (zh) * 2014-01-23 2014-07-02 国家电网公司 一种具有通信自检功能的采集器
CN203689676U (zh) * 2014-01-23 2014-07-02 国家电网公司 一种具备远程电力线载波升级功能的采集器

Also Published As

Publication number Publication date
CN104104412A (zh) 2014-10-15

Similar Documents

Publication Publication Date Title
CN104104412B (zh) 一种基于dma的电力线网络系统及其通讯方法
CN105959288A (zh) 一种电力电网系统中的网络协议转换及其相互通讯方法
CN105337421A (zh) 一种智能电网系统中的协议转换及其相互通讯方法
JP4564665B2 (ja) 一般的なシリアルバスプロトコルの範囲を拡張する方法並びに装置
US20200241888A1 (en) Method and apparatus for plug and play, networkable iso 18000-7 connectivity
EP2928108B1 (en) System, method and apparatus for multi-lane auto-negotiation over reduced lane media
US8155136B2 (en) Single network interface circuit with multiple-ports and method thereof
CN102780705B (zh) Ethernet-CAN协议转换器
CN103077148B (zh) 一种基于pcie的主机通讯方法和主机
CN201717878U (zh) 车辆通信网络数据转换网关
US11818596B2 (en) Link fault handling in fronthaul communication networks
TW201742440A (zh) 提升DisplayPort特徵集合之功能擴充器
US20240202158A1 (en) SYSTEM COMMUNICATION TECHNIQUE OVER PCIe (PERIPHERAL COMPONENT INTERCONNECT EXPRESS) LINK
US7339995B2 (en) Receiver symbol alignment for a serial point to point link
CN101163148A (zh) 支持非标准速率的以太网传输方法及相应装置和接入设备
WO2017059822A1 (zh) 一种芯片间的通信方法、系统及计算机存储介质
US20110305246A1 (en) System and Method for Enhanced Physical Layer Device Interface Capability for Backward Support of Fast Retrain
US8514731B2 (en) Variable-frequency network device and variable-frequency network connection establishing method
CN105162792A (zh) 一种usb网卡以及以太网数据转换方法
CN102158400A (zh) 天基路由交换系统的通信接口及天基路由交换系统
CN102546401B (zh) Usb3.0局域网极速数据交换机
CN105515925A (zh) 一种uart多主实时通信系统
CN1972314B (zh) 以太网接口上模拟串行接口的方法以及应用该方法的部件
CN101778493A (zh) 支持多种网络接入方式的终端设备、系统及实现方法
CN105488010A (zh) 一种背板实时同步接口协议

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 230088 No. 5111 Wangjiang West Road, Anhui, Hefei

Applicant after: KEDA INTELLIGENT ELECTRICAL TECHNOLOGY CO., LTD.

Address before: 230088 No. 5111 Wangjiang West Road, Anhui, Hefei

Applicant before: Anhui Science and Technology Institute of China Smart Grid Technology Co., Ltd.

COR Change of bibliographic data
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180521

Address after: No. 5111, Wangjiang West Road, Hefei, Anhui, Anhui

Co-patentee after: KEDA INTELLIGENT ELECTRICAL TECHNOLOGY CO., LTD.

Patentee after: HKUST intelligence (Hefei) Technology Co., Ltd.

Address before: No. 5111, Wangjiang West Road, Hefei, Anhui, Anhui

Patentee before: KEDA INTELLIGENT ELECTRICAL TECHNOLOGY CO., LTD.