background image

  早前的系统要求用户人工给每个灯分配地址(比如使用

DIP 开关或拨号盘),然后在

控制器上选择那个地址。然而,这种方法有不少缺点:

1)设置需要花费额外的时间;2)用

户必须十分小心地给每个设备分配一个唯一地址;

3)如果从一个控制器控制多个灯,用户

必须记住每个灯的地址号。现在的方法更加复杂和成熟:先是让控制器(而不是用户)负责
发现网络上新安装的灯具,然后找一个网络上的空闲地址,将该地址分配给这个灯具,最
后提供一个易用的界面用于绑定和控制单个(或多个)灯具。

  为了发现网络上有新的灯具出现,灯具需要自己发送一个可用的信号。这最好用广播消
息的方式实现,以便网络上的所有控制器都能知晓这个新灯具。当控制器收到消息时,它能
提醒用户新灯具的加入。如果用户决定控制这个灯具,控制器将向该灯具发送一个请求绑定
的消息。如果此时灯具仍然可以用于绑定,它将发送一个确认消息。如果不能绑定,它将发
送拒绝消息。一旦绑定后,这个灯具就只处理从绑定它的控制器地址收到的消息。

  当灯具还没有被分配地址时,灯具如何接收绑定消息请求仍是个问题。这个问题可以给
每个灯具重新分配一个唯一的

64 位地址(如同 MAC 或物理地址一样)来解决。然后当灯

具第一次广播自己可用时,它也可以在消息中包含其唯一的地址。接着控制器就可以直接向
它发送消息进行绑定。

  由于

64 位地址对发送正常的颜色控制消息来说太长了,控制器可以在完成灯具绑定后

给灯具分配一个更短的

8 位地址(称为逻辑地址)。为了确保新的逻辑地址值还没有被使用,

控制器可以在电力线上发送一个

ping 消息。如果收到响应,再尝试新的地址,直到没有响

应为止。

  两个可用灯具的绑定顺序,用户决定只绑定第一个灯具。一旦绑定完成后,控制器就可
以开始发送颜色信息去控制灯具了。

  电力线通信面临的常见挑战有:灯具不能接收控制器发出的消息;灯具被错误的控制
器控制。

  如果灯具不能接收控制器发出的消息,那么通常是以下三种原因之一:

1)电力线上有

太大的噪声,

2)控制器和接收器在电力线上不同相,3)接收器和控制器之间的距离太远。

如果电力线上噪声太大(例如有吸尘器、大功率电器等),建议使系统远离噪声源。如果控
制器和接收器不同相,用户应尝试移动其中一个,使他们同相。

  如果不能这样做,可以使用相位耦合器在不同相位上桥接电力线通信信号。这种耦合可
以通过一个大电容或无线连接实现。如果接收器和控制器之间的距离太远,可以使用中断器
重传信号直到它们抵达要求的目标。一些实现将中继器和灯具一起做在同一设备上,因此不
会产生额外的成本。

  由于同一电力线总线上可能有多个控制器,因此有可能出现灯具被错误的控制器控制
的情况。这种情况发生的原因有许多,与地址分配和绑定机制有关。如果地址是人工分配的,
那么有可能两个灯具分配到了相同的地址。这是由于用户忘了他们已经用过这个地址,或者
别的人(例如共享相同电力线的邻居)分配了相同的地址。