首页 理论教育现场总线应用技术:控制模块节点开发实例

现场总线应用技术:控制模块节点开发实例

【摘要】:由于控制模块已封装了智能节点的大部分功能部件,仅把应用电路设计和应用程序设计交给开发人员完成。下面介绍一个LonWorks节点开发实例。图5-33中,LonControl控制模块的特点如下:1)严格按照LonMark互操作协会的设计要求进行设计与布线。此时拔掉用于下载的双绞线,按下开关,即可实现任务要求。

由于控制模块已封装了智能节点的大部分功能部件,仅把应用电路设计和应用程序设计交给开发人员完成。因此,基于控制模块的节点开发主要有两个步骤:节点硬件电路设计和节点应用程序设计。

下面介绍一个LonWorks节点开发实例。

1.设计任务

应用两个LonWorks节点,每个节点连接一个开关和一个发光二极管,使用一个节点的开关控制另一个节点的发光二极管,开关按下,发光二极管亮,再一次按下,发光二极管灭,如此循环。两个开关动作时互不影响。

2.硬件设计

采用国内某公司生产的LonControl控制模块的硬件电路如图5-33所示。

功能如下:

1)按下S1键,VL2灯亮,再按下S1键VL2灯灭。

2)按下S2键,VL1灯亮,再按下S2键VL1灯灭。

实现了节点1和节点2之间的互连。

图5-33中,LonControl控制模块的特点如下:

1)严格按照LonMark互操作协会的设计要求进行设计与布线。全部选用高质量低功耗的贴片元器件。

2)根据摩托罗拉公司的建议采用6层板的PCB设计,电源层和地层分开,6层的电路板与2层电路板相比可大大减少电磁干扰(EMI),因为附加的层便于VCC去耦及更有效地进行逻辑地保护,大大提高模块抗干扰能力。

978-7-111-55649-7-Chapter05-56.jpg

图5-33 LonWorks节点硬件电路

3)为保护芯片上的E2PROM,使得当VDD低于工作电压时不至于逻辑混乱,采用低电压指示(LVI)芯片保护E2PROM。设计中选用了Echelon推荐的贴片式低电压检测器DS1233(Echelon公司的LonWorks产品中全部采用DS1233)。

4)与Echelon的FTT控制模块(Model 55020-10)完全兼容,但Echelon的控制模块只内置2 KB SRAM,编制较大规模程序时可能出现内存不够。因此在LonControl控制模块中增加了26 KB的外部SRAM,这样用户就可以增大LonWorks通信中的发送和接收缓冲区,大大提高实时通信效率,也便于用户编写大型C程序。

5)在模块中增加了SERVICE指示灯和SERVICE按钮,便于用户下载程序和直观地显示运行状态。

6)由于原来的模块只有11个I/O引脚,I/O引脚太少。利用原模块中的3个空脚,扩展了输出的3个I/O,开放给用户使用。

978-7-111-55649-7-Chapter05-57.jpg

图5-34 LON节点流程图

3.流程图

LON节点流程图如图5-34所示。(www.chuimin.cn)

因为两个节点实现的任务完全一样,故程序主体语句一样,仅定义的网络变量名、I/O对象名和定时器名不一样。网络变量的绑定独立于程序本身,由LonBuilder集成开发环境中的Binder(绑定器)实现。网络变量的绑定在此程序中就是指将一节点的输出网络变量与另一节点的输入网络变量相连。

4.程序设计

节点1程序设计如下:

978-7-111-55649-7-Chapter05-58.jpg

节点2程序设计如下:

978-7-111-55649-7-Chapter05-59.jpg

附:snvt lev.h文件内容

978-7-111-55649-7-Chapter05-60.jpg

5.工具使用及程序下载步骤

使用LonBuilder开发工具及集成开发环境实现程序的编译及下载。节点使用LonWorks控制模块。

程序下载步骤如下:

1)配置LonBuilder集成开发环境,安装network_manager及protocol_analyzer。

2)编辑及编译Neuron C文件led1.nc及led2.nc。

3)在“App Node”下的“Target HW”中为两个节点分别创建自定义目标硬件custom_ 1、custom_2。通道采用默认设置,硬件属性采用自定义类型。

4)在“App Node”下的“App Images”中已存在LED1和LED2应用映像(因为在当前工作目录中存在led1.nc和led2.nc)。

5)在“App Node”下的“Node Specs”中创建节点名con1及con2,应用映像名选项分别选取LED1及LED2,目标硬件选项选取自定义目标硬件custom 1及custom 2,定位选项采用0/0。

6)在“Network”下的“Connection”中选择“Net Variable”,实现网络变量的绑定。

7)在“App Node”下的“Target HW”中选中custom_1,运行install指令,出现“Se-lect the installation method”,选择“Service Pin”方式。出现“Press the service pin now…”按下custom_1的service引脚,会出现“Do you want to install communications parameters?”选择“Yes”。对custom 2重复上述过程。

8)在“App Node”下的“Node Specs”中选择con1,运行Load/Start指令,即可对应用及网络映象进行下载,在下载过程中会看到SERVICE指示灯闪烁。对con2重复上述过程。

这时在“App Node”下的“Target HW”中的custom_1与custom_2已处于“online”状态。

此时拔掉用于下载的双绞线,按下开关,即可实现任务要求。