基于89C52/C51系列单片机实现电力载波模块的设计及应用研究
2023-07-17
电力载波(PowerLine CarrierWave,简称PLCW)通信是利用电力线进行信息传送的一种通信方式。电力载波通信在远程三表(水表、电表、煤气表)信息的自动采集和传输中得到广泛的应用,在智能小区建设中备受青睐。随着信息技术的发展,智能化网络家电逐渐成为研究热点,而将电力载波应用于智能化网络家电控制则刚刚开始。国内目前尚未有应用于智能化网络家电控制的电力载波通讯产品的研究报道;而国外已经有稳定的构建智能化网络家电的电力载波通讯产品,但其价格昂贵,中国普通家庭难以接收,而且电压是110V,也不适合中国国情。因此,有必要对电力载波技术进行深入探索,研究开发出适合中国国情、成本低廉而可靠的电力载波通讯产品。 将电力载波应用于智能化网络家电控制中有许多优点1)可以利用现有的电力线组网;(2)因为不必重新布网,所以可以节约财力、物力和人力;(3)稳定可靠,易于实现;(4)目前市场上已经有多种电力载波芯片,可以择优选用。
但是将电力载波应用到智能化网络家电控制中还存在许多技术难点1)如何设计基于电力载波控制的智能化家电网络的体系结构;(2)如何制定电力载波通讯协议,使得它们之间能够相互可靠地传递信息;(3)如何克服电力载波固有的信号衰减、阻抗失配以及等幅振荡干扰等问题[2];(4)如何设计电力线接口(PowerLine Interface,简称PLI)。本文将从上述问题出发,阐述智能化网络家电控制中电力载波模块的设计与实现过程。
1 电力载波通讯网络体系结构
电力载波通讯是利用电力线进行信息传送的通讯方式,因此利用电力线可以组建家庭环境的通讯网络。基于电力载波组建的电力线通讯网络如图1所示。电力载波通讯网络一般采用主从控制方式,图中上层有一个主控CPU,下层有若干个从CPU。主控CPU向各个从CPU发出指令协调工作,同一时刻只能有一个CPU使用电力线资源。主控CPU与网关或者家庭服务器相联,从CPU控制智能电器工作。
2 电力载波模块设计
在目前的电力载波通讯产品中,主要使用两种方式:窄带通讯方式和扩频通讯方式。窄带通讯技术价格低廉并且较为容易实现;扩频通讯技术在抗干扰性能上优于窄带通讯,但技术复杂。使用ST7536作为电力载波芯片,采用窄带通讯方式,是目前广泛应用于自动抄表系统中的一项成熟技术。考虑到家庭网络通讯距离短、消息命令少等特点,因此本文选择ST7536芯片设计电力载波通讯模块。
2.1 模块结构
电力载波模块结构示意图如图2所示。它以ST7536为核心,选用89C52/C51系列单片机为控制器,具有RS232接口和电力线接口。
电力载波模块的工作过程如下:
模块经常处于接收状态(Rx/Tx-=1),时刻监听电力线。当电力线上有信号时,开始接收信息帧,并同时校验目标地址。如果目标地址不是本机地址,则抛弃该帧。如果目标地址与本机地址相同,则分解该信息帧,检出有用信息,然后通过RS232接口发往上位机或者应用家电。
如果上位机发出控制指令或者家电产生回馈信息,则通过RS232接口产生中断进入模块。由模块将控制指令或回馈信息组合成帧,然后模块转入发送模式(Rx/Tx-=0),通过PLI将信息帧发送到电力线上。信息帧发送完毕,模块转入接收模式(Rx/Tx-=1)。
2.2 技术难点
信号衰减、阻抗失配、脉冲噪声以及等幅振荡波干扰等问题是影响电力线传输信号的普遍问题。除此以外,电力线接口的变压器设计也是设计难点。
在电力线上存在各种各样的干扰,主要包括电源线中的高频干扰、感性负载产生的瞬变噪声、晶闸管通断时产生的干扰、电网电压的短时下降干扰和拉闸过程形成的高频干扰。对于以上各种问题,解决的方法主要是屏蔽、滤波、接地,在线路板上布线时应注意减小分布电感和分布电容。衰减和阻抗匹配实际上是一个问题的两个方面。阻抗匹配不好,信号衰减得就快。阻抗匹配的核心问题是对电线阻抗进行检测,检测到的信号引入到ST7536构成闭环,使阻抗匹配,增大输出功率。另外,在电力载波模块的设计中,应极力避免在同一线路上两个模块同时处于发送状态,此时两模块互为负载,模块若长时间工作,将有可能损坏。解决问题的办法是:建立主从式网络,由主机对各从机轮询,从机只有得到主机控制指令后才可以往电力线上发送信号;而发送模块一旦发现线路上有其它模块正在发送,则本模块立即转为接收状态。
PLI的变压器设计是另一个设计难点。图3所示是PLI的结构示意图。它由低通滤波、前置放大、变压器等组成,目的是把ST7536同电力线隔离,在电力线上加载/析取信号,过滤电力线上的50/60Hz信号以及发送信号的二次谐波信号。
变压器的铁芯是TOKO T1002N,具有两个主绕组和一个副绕组,匝数比为4:1:1,其电路结构见图4。变压器的典型值为1t:9.4μH;L4t:140μH。
变压器的主绕组作用是选通滤波,利用电容C10/C11将谐振频率设定在发送频率。电容C10/C11与主绕组1t/4t并联。这两个绕组等效值计算如下:
因为ST7536是基于窄带通讯方式的,所以滤波器的通带很窄,因而对于每个发送频率Cp具有不同的值。
在印刷电路板上电容应当靠近变压器。为了获得最佳的滤波性能,电容C10/C11采用线性度较好的种类。
电容C12用来过滤电力线上的50/60Hz信号,它将低频信号过滤掉而让高频信号得以通过。C12是X2类电容。X2类电容具有短路保护功能。这在电力载波系统中是不可缺少的。因为假如万一电容短路,C12电容就失去了过滤50/60Hz信号的能力,则PLI就会烧坏,危险时会对靠近ST7536的人员造成伤害。
为了避免毛刺对PLI破坏,在PLI中使用了TRL1双向稳压管。它的稳压值为6.8V。如果出现了6.8V及以上电压,TRL1就会短接到地,从而保护PLI的其余部件不会被烧坏。
2.3 通讯协议
为了使模块之间能够相互通讯,给ST7536通讯定制了一个简单而有效的协议。使用这个协议很容易纠错和检查误码率,而且此协议很容易修改以满足各种特殊的需求。
在电力线网络上,ST7536发送的是信息帧。每一信息帧由前导字、系统地址、目标地址、控制命令块和数据块五部分组成。前导字和系统地址各占两个字节,目标地址、控制命令块和数据块各占三个字节。
前导字用来使发送ST7536和接收ST7536同步,它由两个8位的“10101010”字节序列组成。接收模块用它来调整接收时钟。因为ST7536发送出的前3位有可能发送时产生错误,所以前导字中不含有效数据,可以克服开始数据传输时的不可靠数据。
系统地址用来区分电力载波网络中的不同模块。系统地址只有8位,为了避免发生错误,系统地址发送了两次,如图5所示。帧的目标地址、控制命令和数据必须是非常可靠的,所以对它们要进行纠错。为了纠错,每个数据要发送三次。例如,目标地址只有8位,它被发送了三次,分别在目标地址1、目标地址2和目标地址3中。控制命令和数据也是一样。因此目标地址(1、2、3)中应该是相同的内容。纠错的方法就是利用举手表决算法从这三个字节中提取出正确的信息。纠错的过程如下:首先对目标地址1、目标地址2和目标地址3的第0位进行比较,如果有至少两个字节中的第0位为0,则目标地址的第0位为0,否则就为1。然后依次比较第1位、第2位至第7位,这样可以确定目标地址的所有位。
同样的方法也用来对控制命令字节和数据字节纠错。
2.4软件
根据通讯协议,开发出ST7536电力载波模块的软件。ST7536经常处于接收状态。当检测到一定时间(设为500ms)没有检测到有效信号,ST7536就转入发送模式,如果有数据发送就发送,发送完毕后转入接收模式;如果没有数据发送,则直接转入接收模式。
软件采用了缓冲区交换技术,如图6所示。该软件中为串口通讯建了一个输入缓冲区和输出缓冲区,为电力载波通信建了一个输入缓冲区和输出缓冲区。
首先检测电力线上是否有有效数据,如果有就将其放到电力载波接收缓冲区;否则就开始轮询是否有数据要通过串口或者电力载波发送,通过串口过来的数据通过中断进入串口接收缓冲区。轮询时,当串口接收缓冲区中有数据时,将其经协议处理机处理后放到电力载波发送缓冲区等待发送;同样的方式将电力载波接收缓冲区的数据放到串口发送缓冲区。最后,软件依据电力载波发送缓冲区或串口发送缓冲区中是否有数据而决定是否采取相应的发送动作。
3 实验和分析
为了验证电力载波通讯模块的可用性以及智能网络家电的可行性,我们开发了网络洗衣机和智能电灯作为控制对象,以家用PC作为HomeServer,其物理示意图如图7所示。
实验时,操作者通过Internet或者PSTN拨号连接到HomeServer上,发出控制指令或者请求给HomeServer,HomeServer通过RS232将控制指令送给PLCW模块,PLCW将控制信号调制加到电力线上,与家电连接的PLCW接收到信号并解调,然后通过RS232将指令送给网络洗衣机和智能电灯。网络洗衣机和智能电灯可以将控制指令执行结果沿相反路径反馈给操作者。
为了区分网络电器,事先给网络电器编号,即分配地址。例如,网络洗衣机的地址为1,智能电灯的地址分别为2和3。操作员发出的控制指令中必须包含控制对象地址。同时为了控制方便,定义组地址,如255代表所有的电灯,即当控制对象地址为255时,所有的智能电灯都会接收指令并执行。
实验结果表明,在100m范围以内,基于ST7536的PLCW通讯模块可以正确地收发信息,基本上没有误码出现。当控制指令较短而且发出指令的频率不高时,PLCW通讯模块基本上可以实时响应。但当控制指令较长而且发出指令较为频繁时,PLCW通讯模块响应较慢。这是因为ST7536在电力线上的波特率为600bps和1200bps两种可选。该模块目前的数据通讯速率为600bps。而且因为定制的协议中每帧中只有两个字节(控制命令和数据)为实际需要的字节,因而每秒钟传送的有效信息约为11.6字节。所以它适用于传送短消息(命令)、数据通讯量低以及实时性要求不高的情况。
实验证明,应用电力载波通讯技术,可以有效地控制家庭电器,省去家庭重新布线的麻烦。因此,电力载波模块可以作为基于短消息短命令控制机制的家庭电器和家用服务机器人的控制方式,能够较好地用于构建家庭通讯网络,是一种性能价格比较高的控制方式。