一、引言
这项工作描述了照明设备ANKA控制系统的I/O控制子系统。控制系统基于PC,因此,采用现场总线作为接口设备适合的解决方案,从而避免复杂的VME。
我们寻找一种综合的解决方案,将所有的通讯细节屏蔽,从而缩短开发周期。LonWork技术被证实是目前最适合我们需求的实用解决方案。它的网络协议包含国际标准组织开放系统互连模型(ISO/OSI)的所有7层协议,将网络设计简化为只需设定应用层信息包格式或甚至只需要给变量幅值。LonWork网络上的每个节点都有名为Neuron芯片的微控制器,这种芯片带有内置网络、I/O接口以及应用功能。它利用NeuronC编程语言进行编程,除了满足标准C语法外,还包括为定义I/O对象构建的说明语法,网络变量以及软件定时器,详尽的I/O控制运行时间库以及网络通讯等。编程和网络通讯都属于事件驱动,只需要简单定义任务,当事件发生时通过内置的任务调度程序执行。
所有这些特性允许我们在设备层面上更多引入智能化,而不是仅仅将I/O口映射到PC。因此,我们在不同层面上有两种主要处理过程:设备驱动器运行在现场总线节点上。它监视物理设备,产生警报,以异步方式对数据进行发送更新等。设备服务器运行在PC上。作为一台面向控制系统其余部分的公共对象请求代理体系结构(CORBA)服务器,它与所有相同类型的设备驱动器通讯并进行管理,并输出设备功能。
二、I/O板
尽管已经存在很多实用的商业I/O接口板,但我们仍然决定开发自己的I/O板,这有助于我们将不同板子类型的数量最小化。总共三种类型包含了控制系统I/O要求的所有情况。我们的板子配备了带有24k字节SRAM和32k字节FLASH存储器的MC143150微控制单片机(Neuron芯片),固定尺寸为小型欧洲格式(160×100mm)。单独的I/O板包括:
Ariadne串行接口板,它支持EIA-232、EIA-422以及EIA-485标准,最大波特率可达115kbps。它包括16k字节的接收和发送缓冲器,板上电源能从230V交流线路、7V~12V未稳压直流电源以及5V稳压直流电源提供电流。
Hera通用数字I/O卡,带24路输入(50mA)、8路输入/输出(50mA)以及8路固体继电器(1A)。所有I/O通过光耦隔离。它为输入和输入/输出提供两种运行模式。卡上还带有一个0~100kHz的16位计数式频率计(绝对误差1.53Hz)。
Zeus高精度I/O卡,带16位ADC和DAC,DAC由触发脉冲输入,并且数字通路采用光耦隔离(8输入和8输出)。ADC的4个模拟通道标称采样频率为1kHz,以4kHz频率过采样时保证精度为0.3LSB。DAC最大工作频率为10kHz。板上额外的外设微控制器(为控制升压和存储环电源而设计)包括:与DAC触发脉冲输入同步的函数发生器,缓存DAC函数和ADC数据的32kb存储器以及外设自检。
三、软件
1. 节点层
我们控制系统中,软件对设备的控制是设备能够感知的,并且从更高层面上屏蔽了I/O细节。由于Neuron芯片CPU功率限制,这种封装只是在一种合理的范围内进行,例如由于Neuron芯片低劣的浮点性能,十六进制数值向工程单位的转化在PC上完成。
我们的控制系统含有超过20种设备类型。使设备尽量智能化的要求增加了设备层面的编程量。考虑到所有这一切,有必要为实现器件驱动器而定义一种带通用通讯接口的通用API。通过这种API,我们简化了新设备驱动器以及与设备通讯的软件的开发过程(设备服务器在PC上运行)。
根据我们“设备感知”现场总线节点的范例,设备驱动器API也允许在同一块I/O板上实现多种相同或不同的设备。
通用设备成为控制系统的一部分必须满足:
接收、处理并应答外来请求;
向观察者传播监控参数及其警报;
设备内部具有程式化的状态机或附加逻辑。
通过LonWork,利用请求/应答机制实现的简单RPC可以很容易满足第一个要求。
通过定义适当的网络参数类型,以及每当从设备读取数据时更新网络变量,可以实现第二个要求。这些网络变量称为监控变量。一对可调的软件定时器控制网络监视变量的传播。“最大定时器”定义了监控变量的周期,“最小定时器”定义了在两个监控变量更新之间所必须间隔的最小时间。最小定时器防止当监控参数值变化太快时造成网络流量过大。一些参数类型也可以定义增量极限来防止过快的传播。每个监视变量都有称为报警的互补网络变量,用于传达警报和对该警报的响应值。
由于传播受“定时器溢出”、“数值改变”或“报警条件”事件触发,因此监控和报警为异步通讯。
我们还编写了通用设备驱动库,这样经过单纯的编译器指示,任何设备驱驱动器都能编译为设备的模拟。由于不同接口板的数目很少,并且详细定义了通讯接口,这是可能实现的。模拟被证明非常有助于代码调试和测试过程。
2. PC侧通讯
美国埃施朗(Echelon)公司提供独立的LNS(LonWork网络服务)平台,以及用于管理LonWork网络的面向对象结构。在Windows环境下,有称为LCA(LonWork组件结构)的ActiveX的LNS封装。不幸的是,目前的LCA版本过于面向互操作。由于这种原因和网络服务的自动化和最简化实现,它向开发者隐藏了很多关键的细节,使其被迫直接使用LNS API。
在开发的初始阶段,我们利用LCA在相对短的时间内开发控制系统原型。第二阶段,我们引入显示报文功能,为此需要LNS层。现在,我们完全避免了LCA,并由此实现了对网络服务的完全控制,同时也避免了上层的ActiveX。
3. 设备配置
为了消除硬编码常数从而让设备驱动器具有通用性,我们将配置参数下载到设备中。为此,与LonWork工程报告中相似,我们开发了自定义的窗口式文件传输协议。我们同样能够利用FTP传送大量数据。
每次设备服务器启动时,它检查节点上是否存在有效运行的设备。如果没有,在数据库中找到可执行路径,将应用程序下载到节点。如果需要,可以对节点配置文件进行更新。
配置数据存储在数据库中,被设备驱动器和设备服务器共同使用。所有数据按工程单位存储,在Neuron应用程序使用前必须转化为原始格式。为简化设备配置过程,以及消除同样的配置常数存在于数据库内多个位置或多种格式,编写了一个模板编译器。这个编译器从NeuronC应用程序中提取原始头文件并将其编译为模板,然后将其填满数据库数据并转化为二进制格式。这种二进制格式能够通过FTP下载,可以直接复制到用于创建模板的相同数据结构中。从而,我们得到了一种将数据库数据转化为Neuron应用程序可识别格式的通用方法。
PC上通过开设FTP服务器可以很容易地实现FTP的特性。服务器运行在并行或串行模式下,可以对256个交易进行处理。集成的报告机制允许处理FTP报告事件。数据交换能够利用本地PC API或者远程Neuron应用程序启动或中断。
一个较好的利用FTP和模板编译器进行配置例子是,将板上的I/O引脚映射到逻辑器件。这种映射是设备配置文件的一部分,通过模板编译器产生,如果需要可以在设备服务器每次启动时下载。
四、性能
ANKA控制最苛刻的情况是,当一个现场总线支路上最大可能的节点(64)以1Hz的频率定期对3个参数进行数据更新,同时以20Hz的频率设置并读取一块板上的一个参数。这对应为每秒212(3×64+20)个非确认输入包以及20个请求/应答包。
测量显示,我们系统每秒能够处理高达230个非确认包(这也是吞吐量的上限),并传送高达40个请求/应答包,这足以满足我们的需求。即使当节点在网络上产生过多通信时,吞吐量也不会降为0,而是保持在每秒约190个包的水平。测试中平均每个包的大小设置为12字节。
我们的测试装置包括11个工作于模拟电源设备的Neuron节点。节点通过1.25Mbit双绞线收发器连接,埃施朗(Echelon)PCNSI卡作为PC接口。测量表明这种接口是数据吞吐量的瓶颈。
五、结论
目前ANKA控制系统由超过200个Neuron节点组成。出于效率和拓扑原因,每台PC上连有7条独立的支路。现场总线系统运行决定稳定,不受干扰,甚至在控制系统其余部分关闭或重启时也能正常工作。(end)
关键字:LONWORK 现场总线 促进控制
引用地址:利用LONWORK现场总线促进控制
这项工作描述了照明设备ANKA控制系统的I/O控制子系统。控制系统基于PC,因此,采用现场总线作为接口设备适合的解决方案,从而避免复杂的VME。
我们寻找一种综合的解决方案,将所有的通讯细节屏蔽,从而缩短开发周期。LonWork技术被证实是目前最适合我们需求的实用解决方案。它的网络协议包含国际标准组织开放系统互连模型(ISO/OSI)的所有7层协议,将网络设计简化为只需设定应用层信息包格式或甚至只需要给变量幅值。LonWork网络上的每个节点都有名为Neuron芯片的微控制器,这种芯片带有内置网络、I/O接口以及应用功能。它利用NeuronC编程语言进行编程,除了满足标准C语法外,还包括为定义I/O对象构建的说明语法,网络变量以及软件定时器,详尽的I/O控制运行时间库以及网络通讯等。编程和网络通讯都属于事件驱动,只需要简单定义任务,当事件发生时通过内置的任务调度程序执行。
所有这些特性允许我们在设备层面上更多引入智能化,而不是仅仅将I/O口映射到PC。因此,我们在不同层面上有两种主要处理过程:设备驱动器运行在现场总线节点上。它监视物理设备,产生警报,以异步方式对数据进行发送更新等。设备服务器运行在PC上。作为一台面向控制系统其余部分的公共对象请求代理体系结构(CORBA)服务器,它与所有相同类型的设备驱动器通讯并进行管理,并输出设备功能。
二、I/O板
尽管已经存在很多实用的商业I/O接口板,但我们仍然决定开发自己的I/O板,这有助于我们将不同板子类型的数量最小化。总共三种类型包含了控制系统I/O要求的所有情况。我们的板子配备了带有24k字节SRAM和32k字节FLASH存储器的MC143150微控制单片机(Neuron芯片),固定尺寸为小型欧洲格式(160×100mm)。单独的I/O板包括:
Ariadne串行接口板,它支持EIA-232、EIA-422以及EIA-485标准,最大波特率可达115kbps。它包括16k字节的接收和发送缓冲器,板上电源能从230V交流线路、7V~12V未稳压直流电源以及5V稳压直流电源提供电流。
Hera通用数字I/O卡,带24路输入(50mA)、8路输入/输出(50mA)以及8路固体继电器(1A)。所有I/O通过光耦隔离。它为输入和输入/输出提供两种运行模式。卡上还带有一个0~100kHz的16位计数式频率计(绝对误差1.53Hz)。
Zeus高精度I/O卡,带16位ADC和DAC,DAC由触发脉冲输入,并且数字通路采用光耦隔离(8输入和8输出)。ADC的4个模拟通道标称采样频率为1kHz,以4kHz频率过采样时保证精度为0.3LSB。DAC最大工作频率为10kHz。板上额外的外设微控制器(为控制升压和存储环电源而设计)包括:与DAC触发脉冲输入同步的函数发生器,缓存DAC函数和ADC数据的32kb存储器以及外设自检。
三、软件
1. 节点层
我们控制系统中,软件对设备的控制是设备能够感知的,并且从更高层面上屏蔽了I/O细节。由于Neuron芯片CPU功率限制,这种封装只是在一种合理的范围内进行,例如由于Neuron芯片低劣的浮点性能,十六进制数值向工程单位的转化在PC上完成。
我们的控制系统含有超过20种设备类型。使设备尽量智能化的要求增加了设备层面的编程量。考虑到所有这一切,有必要为实现器件驱动器而定义一种带通用通讯接口的通用API。通过这种API,我们简化了新设备驱动器以及与设备通讯的软件的开发过程(设备服务器在PC上运行)。
根据我们“设备感知”现场总线节点的范例,设备驱动器API也允许在同一块I/O板上实现多种相同或不同的设备。
通用设备成为控制系统的一部分必须满足:
接收、处理并应答外来请求;
向观察者传播监控参数及其警报;
设备内部具有程式化的状态机或附加逻辑。
通过LonWork,利用请求/应答机制实现的简单RPC可以很容易满足第一个要求。
通过定义适当的网络参数类型,以及每当从设备读取数据时更新网络变量,可以实现第二个要求。这些网络变量称为监控变量。一对可调的软件定时器控制网络监视变量的传播。“最大定时器”定义了监控变量的周期,“最小定时器”定义了在两个监控变量更新之间所必须间隔的最小时间。最小定时器防止当监控参数值变化太快时造成网络流量过大。一些参数类型也可以定义增量极限来防止过快的传播。每个监视变量都有称为报警的互补网络变量,用于传达警报和对该警报的响应值。
由于传播受“定时器溢出”、“数值改变”或“报警条件”事件触发,因此监控和报警为异步通讯。
我们还编写了通用设备驱动库,这样经过单纯的编译器指示,任何设备驱驱动器都能编译为设备的模拟。由于不同接口板的数目很少,并且详细定义了通讯接口,这是可能实现的。模拟被证明非常有助于代码调试和测试过程。
2. PC侧通讯
美国埃施朗(Echelon)公司提供独立的LNS(LonWork网络服务)平台,以及用于管理LonWork网络的面向对象结构。在Windows环境下,有称为LCA(LonWork组件结构)的ActiveX的LNS封装。不幸的是,目前的LCA版本过于面向互操作。由于这种原因和网络服务的自动化和最简化实现,它向开发者隐藏了很多关键的细节,使其被迫直接使用LNS API。
在开发的初始阶段,我们利用LCA在相对短的时间内开发控制系统原型。第二阶段,我们引入显示报文功能,为此需要LNS层。现在,我们完全避免了LCA,并由此实现了对网络服务的完全控制,同时也避免了上层的ActiveX。
3. 设备配置
为了消除硬编码常数从而让设备驱动器具有通用性,我们将配置参数下载到设备中。为此,与LonWork工程报告中相似,我们开发了自定义的窗口式文件传输协议。我们同样能够利用FTP传送大量数据。
每次设备服务器启动时,它检查节点上是否存在有效运行的设备。如果没有,在数据库中找到可执行路径,将应用程序下载到节点。如果需要,可以对节点配置文件进行更新。
配置数据存储在数据库中,被设备驱动器和设备服务器共同使用。所有数据按工程单位存储,在Neuron应用程序使用前必须转化为原始格式。为简化设备配置过程,以及消除同样的配置常数存在于数据库内多个位置或多种格式,编写了一个模板编译器。这个编译器从NeuronC应用程序中提取原始头文件并将其编译为模板,然后将其填满数据库数据并转化为二进制格式。这种二进制格式能够通过FTP下载,可以直接复制到用于创建模板的相同数据结构中。从而,我们得到了一种将数据库数据转化为Neuron应用程序可识别格式的通用方法。
PC上通过开设FTP服务器可以很容易地实现FTP的特性。服务器运行在并行或串行模式下,可以对256个交易进行处理。集成的报告机制允许处理FTP报告事件。数据交换能够利用本地PC API或者远程Neuron应用程序启动或中断。
一个较好的利用FTP和模板编译器进行配置例子是,将板上的I/O引脚映射到逻辑器件。这种映射是设备配置文件的一部分,通过模板编译器产生,如果需要可以在设备服务器每次启动时下载。
四、性能
ANKA控制最苛刻的情况是,当一个现场总线支路上最大可能的节点(64)以1Hz的频率定期对3个参数进行数据更新,同时以20Hz的频率设置并读取一块板上的一个参数。这对应为每秒212(3×64+20)个非确认输入包以及20个请求/应答包。
测量显示,我们系统每秒能够处理高达230个非确认包(这也是吞吐量的上限),并传送高达40个请求/应答包,这足以满足我们的需求。即使当节点在网络上产生过多通信时,吞吐量也不会降为0,而是保持在每秒约190个包的水平。测试中平均每个包的大小设置为12字节。
我们的测试装置包括11个工作于模拟电源设备的Neuron节点。节点通过1.25Mbit双绞线收发器连接,埃施朗(Echelon)PCNSI卡作为PC接口。测量表明这种接口是数据吞吐量的瓶颈。
五、结论
目前ANKA控制系统由超过200个Neuron节点组成。出于效率和拓扑原因,每台PC上连有7条独立的支路。现场总线系统运行决定稳定,不受干扰,甚至在控制系统其余部分关闭或重启时也能正常工作。(end)
上一篇:CAN总线-PROFIBUS-DP总线网关的实现方法
下一篇:基于现场总线的10kV高压开关柜在线检测及故障诊断系统
推荐阅读最新更新时间:2024-05-02 22:34
现场总线CC-Link的组织、通信协议和应用
一、组织 1.1 CC-Link合作伙伴协会 CC-Link合作伙伴协会(CLPA)成立于2000年,当时三菱电机发布了CC-Link现场总线技术规范,作为一个开放的工业标准。从那时起,CLPA一直致力于在全球推动和使用这项技术。在过去的14年中,CLPA已经成为现场总线的全球最大组织之一,在全球拥有2000多名会员和270家公司,提供了支持CC-Link的 1300多种产品,这些产品都通过了严格的一致性测试,保证了兼容性。如今,CLPA继续为工业网络提供业界领先的技术;例如,开发出世界上第一个千兆工业以太网:CC-Link IE。 1.2亚洲市场的领导者 CC-Link在亚洲保持着市场的领先地位,已经成为很多行
[嵌入式]
现场总线CANopen学习总结笔记三---基本原理和通信对象
第四章,应用层,为重点章。
主要包含知识点 基本原理、通信对象、对象字典、网络管理系统、CAN标识符分配、节点ID分配。
这篇笔记主要是先记录基本原理和通信对象。
4.1 基本原理
为了便于统一观察CANopen设备,我们引入一种基本的设备模型,其包含:通信单元、应用过程、对象字典。
通信单元由CAN收发器、CAN控制器和CANopen协议栈组成,协议栈中包括通信对象(PDO和SDO)和状态机。
对象字典是应用单元与通信单元之间的接口,实际上是设备的所有参数列表。
CANopen协议中定义了3种不同类型的通信关系:分别为主机-从机模型、客户端-服务端模型以及生产者-消费者模型。
主机-从机模型仅用
[嵌入式]
INTERBUS现场总线——汽车工业的伙伴
1、汽车制造业对控制系统的要求
汽车制造业是典型的多工种、多工艺、多物料的大规模生产过程。同时随着汽车行业之间竞争的日益激烈,各生产厂家都普遍面临着:提高生产效率、降低生产成本、提高生产管理水平等种种压力。对于汽车项目而言,无论是新建项目,还是现有设备的扩展和改造,在规划和设计控制系统时都应该有一个基本指导原则:采用最先进的自动化技术和产品, 从而最大程度减小系统集成和调试时间、降低投资成本,方便生产运行阶段的维护与工艺调整。提高各工艺设备系统的稳定性,减少故障停机时间保证计划产量的实现。
对汽车工业的控制系统的要求也有别于其他行业的自动控制系统,因为汽车工业生产现场相对较复杂。例如焊装工艺,就代表
[嵌入式]
大型火电机组现场总线控制系统的设计探讨
一、现场总线标准及结构选择 目前,国际现场总线还未形成统一的标准,适用于火电机组自动化控制系统的现场总线主要有德国西门子公司研发的 Profibus现场总线和国际现场总线基金会组织研发的基金会现场总线(FF)等。Profibus现场总线为国际现场总线标准 IEC61158的组成部分,其分类为Type3,主要由Profibus-PA、Profibus-DP组成,Profibus-DP的数据传输速率为9.6kbit/s ~12Mbit/s, Profibus-PA的数据传输速率为31.25kbit/s。FF与Profibus现场总线相同,为国际现场总线的组成部分,其分类为Type l和Type 5,主要有Hl和H2 2种通讯速率。H
[嵌入式]
Profibus现场总线智能从站通信接口设计
摘 要 Profibus现场总线以其卓越的技术性能,在全世界范围内得到广泛的应用。研究Profibus技术,开发Profibus产品有较大的现实意义。本文着重描述了从站接口的实现原理及设计过程,包括软件和硬件设计,为Profibus产品的研发人员提供一些帮助。
关键词 Profibus;SPC3;从站;接口
1 引 言
Profibus技术以其卓越的性能在全世界赢得了广泛的用户群。Profibus技术及其产品已经进入中国,在我国的制造业、流程工业、冶金、电力、交通、水利、食品加工、环保、楼宇和铁路自动化领域都有应用实例。国外先进技术和产品进入中国市场在一定程度上带动了我国仪表技术的发展。我国参与 Profibus总线技术
[应用]
变频器在PROFIBUS-DP现场总线的应用事例
三菱A、F、E系列 变频器 具有与PROFIBUS-DP 现场总线 连接的通讯功能,三菱Q系列 PLC 也能作为该网络的主站。可由主站向变频器发送各类命令:启/停、多段速选择、频率设定、修改参数、故障复位等,主站从变频器读取相关信息:运行方向、输入输出端子状态、运行频率(转速)、电流、电压、参数内容、故障代码等。故而能极大地方便了配有PROFIBUS-DP总线的用户。具体操作过程如下: 1)硬件配置:PLC侧---Q系列PLC基本三件套(基板、电源、CPU)+ PROFIBUS-DP主站
模块(QJ71PB92D);变频器侧---A、F系列变频器 + PROFIBUS-DP从站适配卡FR-A5NP
或FR-
[嵌入式]
现场总线(PROFIBUS)技术简介(五)
2.3.2 扩展DP功能 DP扩展功能是对DP基本功能的补充,与DP基本功能兼容。 2.3.2.1 DPM1与DP从站间的扩展数据通信 (1) DPM1与DP从站间非循环的数据传输。 (2) 带DDLM读和DDLM写的非循环读/写功能,可读写从站任何希望数据。 (3) 报警响应,DP基本功能允许DP从站用诊断信息向主站自发地传输事件,而新增的 DDLM-ALAM-ACK功能被用来直接响应从DP从站上接收的报警数据。 (3) DPM2与从站间的非循环的数据传输。
2.3.3 电子设备数据文件(GSD) 为了
[嵌入式]
TS61158现场总线介绍
TS61158 现场总线 现场总线标准由以下部分构成: PhL:IEC61158-2:1993标准的超集(Superset); Foundation Fieldbus的超集; WorldFIP的功能超集; DLL:IEC TS61158-3,TS61158-4; Foundation Fieldbus的超集; WorldFIP的功能超集; AL:IEC TS61158-5,TS61158-6。 1998年之前,IEC/SC65C只推荐一种类型的现场总线,该总线主要采纳Foundation Fieldbus总线和WorldFIP总线基本技术,并严格按照IEC定义制定现场总线标准,
[模拟电子]