1 Lonworks总线和神经芯片
Lonworks控制网络是当前最为流行的现场总线之一,它的核心是神经元芯片(neuron chip)和LonTalk通信协议。LonTalk通信协议支持0SI/RM的所有七层模型,使得LON网络与其他网络有着良好的接口和兼容性。支持多种拓扑结构,通信介质可选双绞线、电力线、红外线、光纤、同轴电缆等媒介,使得网络布线更加方便。应用程序采用面向对象的设计方法,通过网络变量进行节点之间的数据交换,使网络通信简化为参数设置。
本系统中用到两种关键部件。
(1)神经元芯片
神经元(Neuron)芯片使用CMOS VLSI技术,允许运行价格低廉的控制网络。其主要包括MCl43150和MCl43120两大系列。神经元芯片的主要特点是:
高度集成,所需要的外部部件较少;
3个8位的CPU,输入时钟可选择的范围10~625Hz;
片上存储器;
11个可编程I/O引脚(有34种可选择的工作方式);
2个16位定时器/计数器;
15个软定时器;
5个网络通信端口,有3种方式可选择(单端反射、差分方式和专用方式);
固件包括符合0SI七层协议的LonTalk协议,I/0驱动程序和事件驱动多任务调度程序;
服务引脚用于远程识别和诊断;
48位内部Neuron ID用于唯一识别Neuron芯片;
在两大系列中,3120芯片内部包含E2PROM、RAM和ROM存储器,而3150芯片内部无ROM,但拥有访问外部存储器的接口,可根据实际情况灵活配置存储器。
(2)收发器
提供神经芯片与Lonworks网络的物理通信接口。
2 水温监控系统硬件组成及工作原理
本系统由监控结点、执行结点两个结点组成。它们位于LON网络的两端,结构如图l所示。
本系统中选用单股双绞线作为网络介质,收发器采用Echelon公司的FTT-10A型收发器,两个节点间通过网络变量进行通信.
在每个节点中,选用3150芯片外加一块a2 KB的Flash存储器芯片AT29C257来存储应用程序、数据和通信协议等神经芯片固件。神经芯片和存储器之间的连接如图2所示。
监控结点位于中心控制室,能显示实时水温,用户通过它对远端加热装置器进行水温设置。监控节点中神经芯片的I/O部分电路如图3所示。
在本电路中,用户调节电位器来设置水温;电位器上得到的电压经A/O转换后变为O~100之间的数,发往执行结点,并在前两个数码管上显示出来。执行结点传过来的实时水温显示在后两个数码管上。为了充分利用芯片的I/0口,使用移位计数器74HC595扩展I/O口,采用芯片的串行输出功能,I/O8作为时钟信号,I/09作为数据输出口,I/06作为数据锁存控制端.根据实际情况的需要可用液晶显示屏替换8段数码管。
执行结点位于加热器端,它检测水温井将数值发往监控结点,接收监控结点发来的控制温度数据/根据情况启动/停止热水器工作。执行节点中神经芯片的I/O部分电路如图4所示。
在本电路中,实时水温由温度传感器检测出,经A/D转换后变为0~100之间的值,保存并发往监控结点。神经芯片把从监控结点收到控制温度值与检测温度值相比较,若检测值小,则闭合继电器,加热器开始工作;若检测值大,则断开继电器,加热器停止工作。
为避免加热器反复通断电工作,可以设置一个可接受的温度控制精度区间。本电路中设置为±3℃,即加热时,当检测温度高过控制温度3℃时才断开继电器;不加热时,当检测温度低于控制温度3℃时才闭合继电器。
3 软件设计
本系统软件部分采用面向对象的程序设计方法,将检测信号、控制信号、神经芯片I/O分别定义为不同的对象,使用NeuronC进行编程。监控节点与执行节点的程序见网站(www.dpi.com.cn)。
结 语
本文利用Lonwork网络在单股双绞线上实现较远距离的节点通信,设计并实现了对远端水温的监控。本系统只涉及对温度的控制,在实际应用中,只需增加简单的电路和程序代码,即可实现对压力、氧气含量(如公共浴室)等其他指标的控制。