电力线载波 Prime PLC 通讯技术简介

1.电力线载波

电力载波通讯即PLC,是英文Power line Communication的简称。 电力载波是电力系统特有的通信方式,电力载波通讯是指利用现有电力线,通过载波方式将模拟或数字信号进行高速传输的技术。最大特点是不需要重新架设网络,只要有电线,就能进行数据传递。目前常见的且有国际标准/联盟支持的电力线载波通讯协议有2种-Prime or G3,这里先介绍Prime,G3另外开贴再表。

2. Prime 网络结构

Prime的网络结构大体如下
电力线载波 Prime PLC 通讯技术简介_第1张图片

3. 物理层

Prime协议没有免俗,使用了时下最流行的OFDM(正交频分复用)技术。像G3 PLC或者更为大众所熟知的LTE,也都使用了OFDM这项技术。关于OFDM的具体细则这里就不做展开了。
Prime PLC工作在 42-89 kHz Band A or 100-500 kHz FCC(Prime 1.4新加入)
以下以 Band A为例子:
物理层的OFDM调制工作在41.992kHz~88.867kHz,在这个频段上共有97个子载波(等距子载波)
子载波的间隔 Δf=0.488kHz(488.28125Hz)。
一个Prime OFDM symbol时间为 1/Δf+192μs (循环前缀)=2240μs

4. MAC层

4.1 MAC Frame

MAC Frame是Prime网络的立身之本,决定了各节点对Prime网络的使用
MAC Frame的定义是–Time is divided into composite units of abstraction for channel usage。
MAC Frame在1.36和1.4中的定义分别如下
电力线载波 Prime PLC 通讯技术简介_第2张图片
电力线载波 Prime PLC 通讯技术简介_第3张图片
###4.1.1 CFP
CFP-Contention Free Part: 在CFP period内只有被授权的节点才能使用网络
关于CFP的时间

  • 1.36中CFP并不是一定需要的,可以为0,在1.4中CFP时间至少为(MACBeaconLength1 + 2 x macGuardTime)
    一般情况下CFP时间是通过CFP MAC control packet获得的,在1.4中CFP这种特权会在中继节点转发Beacon-Slot时获得。(Beacon-Slot是Prime网络中最精贵的packet)
  • 站在Base node这一边,当处理多个service node的CFP请求时,Base node要合理分配,确保没有冲突。

###4.1.2 SCP
SCP-Shared Contention Period:在SCP周期类,节点可以‘征用’网络–CSMA-CA
关于BCN的介绍,下文中可以看到

4.2 MAC层基本概念

###4.2.1 Prime网络中两种节点—Base Nodes和Service Node
Prime为树状网络,Base Node作为根节点,通常为集中器;电表为Service Node
-Service Nodes,有3种状态:Disconnected, Terminal和Switch
扩展网络时,Base Nodes可以将Service Nodes的从Terminal State提升为Switch State
电力线载波 Prime PLC 通讯技术简介_第4张图片
###4.2.2 地址
每个节点有其独立的48-bit MAC地址(EUI-48),出厂指定。其根节点的EUI-48即为其次级网络地址-Subnetwork Address(SNA)
-LNID(Local Node Identifier): 注册过程中,电表会收到由集中器分配的LNID.
-LCID(Local Connection Identifier): 连接过程中,电表会收到集中器分配的LCID.
-LSID(Local Switch Identifier): 为每个中继节点的unique identifier。根节点分配给每个中继节点。这样中继节点可以被SNA和LSID所定义
电力线载波 Prime PLC 通讯技术简介_第5张图片
###4.2.3 消息类型
不同类型的消息用作不同的目的,整个PDU的类型大概分为如下三个大类。理解了不同的消息类型,可以帮助我们快速分析log。
-Generic MAC PDU
GPDU主要分为两种data和control,其中control message主要有下图几类。
电力线载波 Prime PLC 通讯技术简介_第6张图片
-Promotion Needed PDU
-Beacon PDU

4.3 MAC行为

接下来介绍MAC主要层行为

4.3.1 注册 (Register)

处在Disconnected状态下的service node会广播REG control packet
下图中 REG_REQ的LNID:3fff即为广播地址。如果一个网络中存在多个集中器,可能所有集中器都会回REG_RSP,但表只会Ack一个。(REG control packet是control message中的一种)

Base node在回复REG_RSP时候,就会分配LNID给电表,下图REG_RSP中的LNID-2e8f,即为集中器分配的LNID

REG_RSP会被确认,通过电表回复的ACK
电力线载波 Prime PLC 通讯技术简介_第7张图片
相关log如下
在这里插入图片描述
注册完成后,Node D的状态从Disconnected变为Terminal
电力线载波 Prime PLC 通讯技术简介_第8张图片

4.3.2 建链(Connection)

注册完成后,接下来就是建链,通过CON control packet建立连接,这一部分主要由CL432 Layer完成;LCID也在这里进行分配,这里LCID为100.
电力线载波 Prime PLC 通讯技术简介_第9张图片
在这里插入图片描述

4.3.3 Keep alive

Keep –Alive的第一帧是注册过程中,集中器下发的REG_RSP,会有Keep-Alive相关的时间字段,如下图红线划出部分,超时时间为32秒。
电表在收到该帧之后,其内部计时器就开始工作。接下来有两种情况:

A. 在32秒之内收到了集中器的ALV_B信息,这个时候内部计时器会刷新(从0开始重新计时)同时电表会回复ALV_S;接着等待下一个ALV_B信息,持续Keep-Alive流程
电力线载波 Prime PLC 通讯技术简介_第10张图片
B. 32秒之内未收到集中器的ALV_B信息,此时电表会认为自己已经Unregister
电力线载波 Prime PLC 通讯技术简介_第11张图片

Keep –Alive的第一帧是注册过程中的REG_RSP,如下图,00即为32秒,电表在收到REG_RSP后,即开始计时器T-keep_alive(当前的状态就是从0递加到32则算超时)。每收到ALV_B,该计时器就重新计时,同时电表向集中器发出ALV_S。
如果在计时器到达REG.TIME或者ALV.TIME,则电表认为自己已经unregistered
ALV.TIME可以在keep alive过程中变大。Log中的 Rx/Tx起到计数器的作用
在这里插入图片描述

4.3.4 提升(Promotion)

当一个节点无法收到集中器的Becon,它会向周围的Terminal Node申请帮助。这个节点会向周围大喊’我需要帮助’即广播PNPDU(promotion-needed),在它附近收到这个PNPDU的节点还没办法立即帮助它,因为此时这些节点还是‘Terminal’的状态,需要将自身状态变为‘Switch’才能帮助这个节点,这个转变过程我们称之为Promotion

收到PNPDU的电表会向集中器发出’提升请求’即PRO_REQ_S。集中器可能会收到几个电表的PRO_REQ_S,他会决定提升哪一个节点,集中器有自己的算法决定提升哪一个电表,根据信号质量(PHYlevel)或者数据包的重发率,并回复PRO_REQ_B
电力线载波 Prime PLC 通讯技术简介_第12张图片
下面我们有一些例子来说明
A. PNPDU是一个广播帧,其中的PNA:00 80 e1 30 74 30为需要帮助的节点的MAC地址
在这里插入图片描述
B. 如下是收到PNPDU的节点向集中器发出的PRO_REQ_S。实际上有两个节点发出了PRO_REQ_S(LNID 298d/2e3d),此时NSID为FF。
在这里插入图片描述
C. 集中器接受了LNID为298d电表的提升请求,并assign了LSID为 01(即NSID字段)
在这里插入图片描述

4.3.5 Beacon Slot

Beacon Slot information(BSI)只用于Base Node和Switch Nodes之间。 BSI定义了中继转发beacon相关信息。
-FRQ BN发送多少个beacon后中继表发送一个beacon,比如下图这一帧 FRQ为3,收到8(2的3次方)个Beacon,转发一次。
-SLT
-SEQ 该中继表什么时候发送第一个beacon;当BN发送的beacon序号(0~31循环)等于BSI.SEQ时。假设电表ACK BSI时,集中器的Beacon已经是序号7了,中继也不会从现在开始计数,到序号15就发送Beacon (BCN_S), 而是等接收到Beacon序号0时,立即发送Beacon(BCN_S),并且开始计数。
电力线载波 Prime PLC 通讯技术简介_第13张图片
正常来说,集中器发出的Beacon,质量是7,但是经过中继转发其质量会变差,如下图,直接用Sniff从电力线上捞的Beacon,质量为7。BCN.QLTY的定义是集中器和中继之间的连接质量
Quality of round-trip connectivity from this Switch Node to the Base Node.
BCN.QLTY=7 for best quality (Base Node or very good Switch Node), BCN.QLTY=0
for worst quality (Switch having unstable connection to Subnetwork)
在这里插入图片描述
结合Promotion这一章节的内容–需要帮助的电表,收到了中继转发的BCN,开始尝试注册,SID为所连接的中继节点的LSID,整个注册流程与之前提到的注册流程是一致的,只是每条信息被中继转发了一次,所以在log中看到是双份。
电力线载波 Prime PLC 通讯技术简介_第14张图片

5. 聚合层(Convergence layer)

Common Part Convergence Sub layer
分包和重新组包功能。
最多64包,每包最大256字节(当然每包字节数可以更小)
最大传输单元(MTU)为16384字节
电力线载波 Prime PLC 通讯技术简介_第15张图片

你可能感兴趣的:(电力线载波 Prime PLC 通讯技术简介)