一种采用Slave_B传输模式的LonWorks电力线节点
2011-07-26田敏杨帅,2薛岚,2
田 敏 杨 帅,2 薛 岚,2
(淮安信息职业技术学院电气工程系1,江苏 淮安 223003;江苏电子产品装备制造工程技术研究开发中心2,江苏 淮安 223003)
0 引言
LonWorks技术是一种能够在电力线信道上进行通信的网络监控平台,但传统的基于神经元芯片型式的Lon-Works节点不能满足系统日益复杂的控制要求。基于主机型式的节点克服了软件调度采用基于事件巡检机制的弊端,能够让节点完成实时性高的多进程、多任务并行处理,节点中的数据传输采用Slave_B并行接口传输模式,提高了数据的处理速率,增强了节点的实时性。
1 LonWorks技术
LonWorks是一种在多信道可靠工作的现场总线技术,是一种双向、串行、数字化的智能开放式系统,它为各种各样的监控网络应用提供了端到端的解决方案[1]。神经元芯片和电力线收发器是LonWorks技术在电力信道上通信的核心技术。
神经元芯片是一种集通信、控制、调度和I/O支持为一体,并内嵌LonTalk七层协议的高级大规模集成器件。神经元芯片内部集成有3个8位流水线作业的CPU:①介质访问控制CPU,负责驱动通信子系统硬件和执行MAC算法;②网络CPU,分管处理网络变量寻址事务、权限证实、背景诊断,软件计时器、网络管理和路由、控制网络通信端口,发送和接收数据包;③应用CPU,具体执行用户使用Neuron C语言编写的代码以及用户代码调用的操作系统命令[2]。
LonWorks电力线收发器采用先进的双载波频率的数字信号处理手段,通过数字信号处理器完成数据的接收和发送,能够根据电力线的噪声动态调整灵敏度。LonWorks电力线收发器通信采用双频传输模式,当主频率通信受阻时可自动切换备用频率继续通信。通信报文采用纠错技术,根据纠错码恢复错误报文。
2 电力线节点的实现
2.1 Slave_B并行传输模式的接口
在基于Slave_B传输模式的LonWorks节点中,神经元芯片MC143150是通信处理任务的从机,作为主机的微处理器AT89S51承担现场底层的应用控制任务。AT89S51内集成了中央处理器和Flash存储单元,为许多控制应用系统提供高性价比的解决方案。MC143150具有11个I/O管脚,可以配置成34种对象[3],支持外部存储器,可扩大芯片的内部资源,适合复杂的应用场合。Slave_B并行传输模式的LonWorks节点硬件连接图如图1所示。
图1 Slave_B并行接口硬件图Fig.1 Hardware of parallel Slave_B interface
从机MC143150相对于主机AT89S51是一个内存映像的 I/O 设备。主机 AT89S51 通过 P2.5、P2.6、P2.7控制译码电路74LS138选通片选位 IO8,激活从机MC143150;通过WR位控制从机读写控制位IO9;IO10为地址输入位,由主机AT89S51驱动;IO0~IO7作为数据总线与P0.0~P0.7相连,实现现场底层数据与总线数据的交换,74LS373锁存器实现IO0的复用。当IO10输入为0时,IO0为数据位;当IO10的输入为1时,IO0为握手控制位,由从机MC143150驱动。为防止主机AT89S51从握手控制位读到无效的信息,通过一个10 kΩ的上拉电阻将该位置高[4]。这种复用模式允许神经元芯片驻留在微处理器的总线上,数据位位于一个地址,握手控制位位于另一个地址。因此,主机AT89S51只要访问不同的地址就能决定IO0是数据位还是握手控制位。
AT89S51与MC143150的复位低电压由IMP809芯片提供,满足AT89S51与MC143150正常数据通信时同步复位的要求,同时IMP809芯片也为节点提供低电压监控功能。
2.2 Slave_B并行传输机制
为避免主机AT89S51与从机MC143150产生数据冲突的问题,提出了一种利用虚拟令牌的传输机制。主机通过读写控制位WR决定两处理器拥有虚拟令牌的权利,拥有令牌的一方能够将数据写入总线。当读写控制位WR为低电平时,AT89S51拥有令牌,它有权将准备好的数据发送给MC143150或将令牌交给MC143150;当读写控制位WR为高电平时,MC143150拥有令牌,它将准备好的数据发送给AT89S51或交出令牌,因而令牌在AT89S51与TMPN3150之间以乒乓方式来回传递[5]。
主机AT89S51每次对从机MC143150进行操作之前必须激活片选位,根据握手控制位判断MC143150的闲忙状态。若握手控制位为低电平,MC143150为空闲状态,则AT89S51可以访问MC143150;若握手控制位为高电平,MC143150为忙状态,则表明MC143150正在访问总线。MC143150在Slave_B并行接口得到的数据通过网络变量将信息发送到LonWorks网络上,然后LonTalk协议透明地将修改后的值构成网络变量消息并将消息传递到网络层,网络层将地址信息附加到消息中后传递到MAC层[6],MAC层再附加上更多的信息到网络变量消息中,并将消息传递到通道上能与之共享该网络变量数据的其他控制器。
2.3 Slave_B模式并行接口数据通信
MC143150固化的LonTalk协议能够自动完成虚拟令牌传输机制,除了同步操作外,MC143150的应用程序都是透明的。用Neuron C语言将MC143150的I/O口声明为Slave_B并行接口:IO_0 parallel slave-b ioobject_name[7];利用任务调度程序、io_in_ready()、io_out_request()和io_out_ready()事件、io_in()和 io_out()函数实现从机的同步、握手、数据读写、令牌传递的过程。AT89S51不能自动完成虚拟令牌传递,需要用C语言编制虚拟令牌传递协议,包括主机的同步、握手、数据读写、令牌传递过程。
节点复位后,主机与从机自动建立握手协议,令牌被主机AT89S51拥有。当握手控制位IO0为低电平时,AT89S51向从机MC143150发送同步命令,并向MC143150传递令牌。MC143150在握手控制位IO0为高电平时向AT89S51发送应答同步命令,并将令牌传给主机。再次拥有令牌的AT89S51决定是否向MC143150发送数据。
如果发送数据,则令牌自动传递给MC143150;如果不发送数据,需要发送传递令牌命令才能将令牌传递给MC143150。每次片选位由低到高的跳变都会导致握手控制位IO0变高。在握手控制位IO0和片选位IO8均为低时,AT89S51向MC143150发送数据,如果无数据发送则传递空命令,并导致握手控制位IO0自动变为高电平,之后AT89S51可以读数据,读取数据可导致握手控制位IO0自动变为低电平。每次主机发送数据时都要检测握手控制位IO0的有效状态,只有握手控制位IO0有效时主机才可以发送数据。MC143150读取AT89S51发送过来数据之后握手控制位IO0再次变为低电平,从机交出令牌,主机可以进行下次通信。如果MC143150需要发送数据,则发送数据之后自动交出令牌,否则通过空命令交出令牌。
AT89S51与MC143150的数据通信过程如图2所示。
图2 数据通信过程示意图Fig.2 Data communication process
2.4 电力耦合
LonWorks电力线节点采用电力线收发器PLT-22实现节点数据信号与电力信号的耦合与传输。神经元芯片MC143150与PLT-22的连接图如图3所示。
图3 网络接口连接图Fig.3 Connections of the network interface
PLT-22由A/D转换单元、DSP、D/A转换单元、发送放大和滤波电路等构成。CKout、CKsel1、CKsel0、CP1、CP2、CP4、Reset管脚用于和 MC143150 芯片通信。Rxin、Txout分别是耦合信号输入和信号输出管脚;Rxcomp用于连接接收补偿器件。A/D对从电力线耦合来的信号进行滤波并将模拟信号转换为数字信号。DSP是信号处理的核心部分,它一方面将A/D处理后的数字信号进行解码处理,并将处理后的数据与MC143150进行交换;另一方面,它将需要发送的信号进行编码处理。D/A将数字信号处理单元处理后的要发送的数字信号转换为模拟信号,发送放大和滤波电路将D/A转换后的信号进行功率放大并发送到耦合电路[8]。
3 主干式LonWorks网络
图4 Slave_B模式节点网络架构Fig.4 Network architecture of Slave_B node
应用Slave_B模式的节点采用主干式网络架构,如图4所示。双绞线干网以1.25 Mbit/s的速率传输数据,电力线分支网以10 kbit/s的速率传输数据,用于通信的电力线信道具有高衰减、高噪声的特点。为确保数据报文的可靠传输,需采用增强的LonTalk代理协议,在路由器中实现自学习报文路由功能,在节点的Neuron固件中实现报文转发机制,实现节点在LonWorks网络通信中的自动中继。该网络架构子网中数据通信不会影响主干网的数据吞吐量,单个节点和路由器的损坏不影响整个网络正常工作,提高了网络的可靠性。主干式网络处理整个网络的数据信息速率较快,保证了数据及时处理,可防止数据通路的阻塞,提高了网络的实时性。
工作站内置 LNS、LonMaker、和 LNS DDE Server,用于系统设计配置和后期的 HMI监控。LNS为LonWorks总线提供开放、互操作性的平台,用于实现管理、监控、诊断和维护网络服务。LonMaker基于LNS操作系统,实现节点逻辑安装与配置。LNS DDE Server通过LNS网络驱动器和LNS网络接口进行动态数据交换,监视和控制 LonWorks网络,更新网络变量。iLON100设备嵌入实时操作系统,采用一个32位RISC处理器和LonWorks/IP体系结构,是遵从EIA 852协议的LonTalk协议的IP网关,为LonWorks和IP局域网提供互访通道。当节点工作在C波段时,两个载波频率分别是第一载波频率(132 kHz)和第二载波频率(115 kHz)。在每个载波频率上使用6 kHz的频率带宽。第一载波频率具有更好的畸变纠正能力以及更强大的数据包分辨能力和抗噪声能力,第二载波频率比第一载波频率的误差校正能力强。当工作在A波段时,第一载波频率是86 kHz,第二载波频率为75 kHz。两个载波频率被选择时,充分考虑了由于谐波而导致的两个载波同时被阻塞的情况。
4 试验与结论
基于Slave_B并行传输模式的LonWorks电力线节点可以输送1 A或2 A峰-峰值到低阻抗负载,可在衰减80 dB的情况下工作。电力线通信工作在132 kHz主频或115 kHz辅频,以调光器为噪波源。经测试可知,LonWorks电力线节点通信信息经过-67 dB衰减而无错误。
5 结束语
LonWorks电力线节点在现有的供电网络上实现数据信号的传输,克服了电力线上高干扰、高衰减、高失真、高阻抗等弊端。这种通信载波传输无需额外布线,可以节省60%以上的工程费用,改变了现有电力线网络只用于电力传输的现状,大大提高了电力线的利用率,因此具有显著的实用价值。
[1]王俊杰.现场总线与 LonWorks技术[J].自动化仪表,1999,20(7):40-43.
[2]高安邦.LonWorks技术开发与应用[M].北京:机械工业出版社,2009.
[3]杨帅.基于虚拟令牌传输协议的LonWorks监控系统设计[J].低压电器,2010(14):45-48.
[4]毕敏娜.基于神经元芯片和DSP的LonWorks节点控制器并行通信的实现[M].低压电器,2008(8):8-10.
[5]杨帅.基于Slave_B并行传输模式的双绞线LON节点[J].仪表技术与传感器,2011(5):48-50.
[6]成建生.采用并行接口模式的LonWorks监控系统的设计[J].矿山机械,2010,38(12):62 -65.
[7]成建生.基于LonWorks技术矿山生产监控系统的设计[J].矿业安全与环保,2010,37(5):31 -34.
[8]徐建俊.基于LON现场总线技术的电力线收发器PLT-22的设计[J].电力自动化设备,2008,28(9):108 -111.