网络控制器范文

时间:2023-02-27 03:00:43

网络控制器

网络控制器范文第1篇

关键词:飞腾处理器;linux驱动框架;DMA;IP头对齐;NAP;GSO

中图分类号:TP334.7

飞腾处理器是国防科大计算机学院研制的一款高性能通用服务器处理器。飞腾处理器芯片内部集成了两个千兆网络控制器,通过高速AMBA总线与CPU系统总线互连。

本文研究了飞腾处理器网络控制器相关的硬件原理以及linux下驱动框架知识,设计和实现飞腾处理器中网络控制器的驱动,并对其进行了优化,使其达到了千兆网卡的使用需求。

1 硬件原理

飞腾处理器网络控制器器包括AHB/AXI接口,DMA通道,FIFO缓冲和核心四个逻辑部件。AHB/AXI接口通过AMBA总线控制器与系统总线互连,即可以作为从设备接收CPU的访问操作,也可以作为主设备为DMA启动访存操作;DMA通道负责通过AMBA总线在系统主存和内部FIFO之间进行数据包的传输;DMA通道和FIFO缓冲都是接收和发送专用的,因此一个网络控制器包含两个DMA通道和两个FIFO缓冲;核心逻辑实现了千兆介质无关接口GMII,并负责在FIFO缓冲区和GMII之间进行数据包传输。

飞腾处理器通过GMII接口与物理层芯片连接,并通过介质相关MD总线访问物理层芯片的状态和控制寄存器SCR。

2 网络驱动设计

linux网络设备驱动基本框架从上到下划为三层,分别为网络协议接口层,网络设备接口层,设备驱动功能层。

网络协议接口层提供统一的数据包收发接口,使得上层ARP或IP协议独立于具体的设备,通过dev_queue_xmit()函数发送数据,并通过netif_rx()函数接收数据。

网络接口层从宏观上规划了具体操作硬件的设备驱动功能层的结构,网络设备接口层提供统一的用于描述具体网络设备属性和操作的结构体net_device,该结构体是设备驱动功能层中各函数的容器。

设备驱动功能层各函数是网络设备接口层net_device数据结构的具体成员,是驱使网络设备硬件完成相应动作的程序,它通过hard_start_xmit()函数启动发送操作,并通过网络设备上的中断触发接受操作。

飞腾网络控制器驱动实现了linux网络设备驱动基本框架要求的函数接口,并在此基础上进行了一系列的优化,主要技术难点在于资源寻址机制、链路状态监控和基于DMA的数据包收发机制的设计和实现。

2.1 资源寻址机制

资源寻址机制涉及到两方面问题:一方面是飞腾CPU硬核对网络控制和状态寄存器CSR资源的寻址,另一方面是网络控制器DMA对系统主存资源的寻址。

在飞腾处理器中,网络CSR寄存器和所有其他AMBA总线设备的寄存器一样,被固定在AMBA总线地址空间的一段范围内。网络驱动程序在硬件初始化之前,需要将这段AMBA总线地址范围映射到飞腾CPU地址空间上,从而实现网络CSR寄存器的寻址,并通过CSR寄存器中的MD地址和数据寄存器的编程,实现对网络物理层芯片内部MD寄存器的访问。

网络控制器的DMA需要在系统主存和内部FIFO缓冲之间进行数据传输,因此DMA需要具有系统主存的访问能力,也就是说,系统主存的部分或者全部可以映射到AMBA总线地址空间上。因为飞腾处理器的AMBA总线长度为64位,所以整个系统主存都可以映射到AMBA总线地址空间上,但是,不能与任意CSR寄存器地址范围重叠,例如8G内存,在AMBA地址范围为[0x84_0000_0000,0x84_FFFF_FFFF]。驱动程序的硬件初始化部分,通过AMBA总线控制器完成系统主存到AMBA总线地址的映射,从而实现网络控制器DMA对系统主存资源的寻址。

2.2 链路状态监控

飞腾处理器网络控制器主要使用GMII提供的管理接口MDIO来实现对物理芯片的控制并收集其状态信息。

管理接口有两条信号线组成:MDC配置接口时钟,最高速率可达8.3MHz,MDIO是管理数据的输入输出双向接口,数据是与MDC时钟同步的。

网络控制器提供了两个寄存器,分别为GMII地址寄存器和GMII数据寄存器,它将2位读写命令,5位PHY芯片的地址,5位PHY芯片的寄存器地址写入GMII地址寄存器,在MDC时钟的配合下,将命令写入到GMII数据寄存器,来控制和管理PHY芯片,如TX/RX模式选择、自动协商控制、环回模式控制等;或从GMII数据寄存器中读出PHY芯片的状态信息,包括链接状态、传输速度、断电、低功率休眠状态等,实现对PHY芯片状态的监控。

2.3 基于DMA的数据包收发

DMA描述符是由16个字节组成,4个字节一组,将这4组分别标识为DES0,DES1,DES2,DES3。

DES0是前4字节,具体为1位OWN位(用来标识描述符属于DMA还是HOST)和31位的描述符状态位;

DES1具体为10位控制位和两个11位分别用来标识缓冲区1和缓冲区2的大小。

DES2和DES3分别为缓冲区1和2的地址,尽管有两个缓冲区可供使用,但我们这里只使用缓冲区1,即:DES2指向的缓冲区。

对于接收,驱动在系统主存中维护一个由256个描述符组成的接收描述符数组,驱动申请对应的256个2K字节大小的skb缓冲区,并将这些缓冲区进行DMA流式映射,将生成的DMA地址填写到对应描述符的缓冲区地址字段,并将接收描述符数组的起始地址写入DAM接收描述符表基址寄存器中。

当网络数据包经过PHY芯片的接收进入到网络控制器的接收FIFO时,网络控制器会自动从AHB/AXI接口发起DMA操作,从DMA接收描述符表基址寄存器中或者从当前接收描述符寄存器中读取当前描述符的DMA地址,访问系统主存,获取当前描述符DES2字段指向的skb缓冲区的地址,将网络控制器内部的接收FIFO中的数据DMA到系统主存的缓冲区中,最后将接收状态写入对应的接收描述符中DES0状态字段,将接收到的数据包的长度等信息写入对应的接收描述符的DES1的对应字段中,并产生接收中断。内核调用对应的中断处理程序,使用轮询的方式进行收包,并将数据包提交给上层协议栈。

对于发送,驱动在系统主存中维护了一个256个描述符组成的发送描述符数组,并将发送描述符数组的起始地址写入DAM发送描述符表基址寄存器中。当应用程序要发送数据时,上层协议栈会向驱动传递要发送的skb缓冲区,将skb缓冲区进行DMA流式映射,并将生成的DMA地址填写在当前发送描述符的DES2缓冲区地址字段,根据skb的相关成员变量,填写对应描述符的DES1的校验和字段以及缓冲区大小字段等。最后,写DMA发送轮询寄存器,将唤醒发送DMA,使其进入运行状态。

当发送DMA进入运行状态,DMA将从DMA发送描述符表基址寄存器或者当前发送描述符寄存器中获取当前描述符的DMA地址,访问系统主存,获取当前描述符DES2字段指向的skb缓冲区的地址,将缓冲区中的数据DMA到网络控制器的发送FIFO中,并通过PHY收发器将数据发送到网络上。

3 网络驱动优化技术

网络驱动优化技术有:IP报文头部对齐,NAPI,GSO,DMA分散聚集等。

在飞腾处理器平台上,重点介绍三点。

3.1 IP报文头对齐对齐

在接收过程中,驱动向内核申请skb缓冲区后,需要调用skb_reserve(skb,2),使得skb->data向后移动两个字节,因为mac头长度是14个字节,skb->data前面空置的2个字节加上mac头长度正好是16个字节,使得接下来的IP报文的起始地址是4字节地址对齐,这样做使得内核在后续对IP报文访问时使用了对齐的地址,减少了很多的数据拷贝,提高了性能。但这样做,会使得对缓冲区数据进行DMA流式映射时生成的DMA地址不对齐,可能会对DMA操作产生影响,但此款网卡适配器的DMA对缓冲区的地址对齐没有很严格的要求,通过硬件处理将性能的降低减到了最小,故采用IP报文头对齐,在这点上对于网络性能的提高是很显著的。

3.2 NAPI技术

对于高速网络设备而言,单纯采用中断驱动的方式,CPU可能在短时间内接收到大量密集的网络数据包,如果每一个进入的数据包都向CPU产生一次中断请求,对这些请求的单独处理无疑会造成CPU资源的浪费甚至导致系统瘫痪。

NAPI的设计思想是使用中断和轮询相结合的方式接收数据包,发挥各自的优势。当有数据包到达触发中断,在中断处理程序中调用_stmmac_schedule()函数关闭接收中断,系统对数据包的接收进入轮询模式,调用轮询函数接收数据包。在轮询函数中,设置了一个接收数据包的阀值,每次轮询函数接收到数据包达到这个阀值时,轮询函数将返回,等待下一次的轮询。当一次轮询接收的数据包小于这个阀值,退出轮询收包模式,开启接收中断,进入中断收包模式。NAPI通过轮询期间关闭中断,实现了中断缓和,减少了内核处理中断的压力,变相提高了性能。

3.3 GSO技术

TSO(TCP Segmentation Offload)是一种利用网卡分割大数据包,减小CPU负荷的一种技术,也被叫做LSO(Large segment offload),如果数据包的类型只能是TCP,则被称之为TSO。

TSO是使得网络协议栈能够将大块 buffer 推送至网卡,然后网卡执行分片工作,这样减轻了CPU的负荷,但TSO需要硬件来实现分片功能;而性能上的提高,主要是因为延缓分片而减轻了CPU的负载,因此,可以考虑将TSO技术一般化,因为其本质实际是延缓分片,这种技术,在Linux中被叫做GSO(Generic Segmentation Offload),它比TSO更通用,原因在于它不需要硬件的支持分片就可使用,通过将分片的执行,放在将数据推送的网卡的前一刻,也就是在调用驱动的stmmac_xmit函数前,达到延缓分片的目的,最终提高了性能。

4 测试

硬件环境:FT1000A采用内置网卡与X86机器的BCM57780网卡互连。

软件环境:测试工具为iperf。

由测试结果可得:新设计的驱动较之前的驱动在接收和发送数据的速率上有很大的提升,其中IP报文头部对齐对TCP/UDP接收性能有较大提升,但由于IP报文头对齐导致的DMA地址不对齐造成了一定的性能损失,接收的性能离千兆的性能还有差距;GSO功能对TCP发送性能有大幅度提升;UDP发送速率,峰值原本已经接近X86上千兆网卡性能。

5 结束语

本文详细阐述了国产飞腾处理器SOC网络适配器驱动的设计实现以及对其进行的优化,虽然网卡在此驱动程序的驱动下,网络性能已经几乎达到了千兆网络性能要求,但与X86千兆网卡的网络性能还是有差距的,希望通过后续学习和研究,能进一步提升国产飞腾处理器平台的网络性能。

参考文献:

[1]博韦,西斯特等.深入理解linux内核(第三版)[M].北京:中国电力出版社,2007.

[2]宋宝华.linux设备驱动开发详解[M].北京:人民邮电出版社,2010:364-369.

[3]曹桂平等.linux内核网络栈源代码情景分析[M].北京:人民邮电出版社,2010.

[4]莫尔勒,郭旭等.深入Linux内核架构[M].北京:人民邮电出版社,2010.

[5]科波特,魏永明等.LINUX设备驱动程序(第3版)[M].北京:中国电力出版社,2006.

[6]拉芙,陈莉君等.Linux内核设计与实现[M].北京:机械工业出版社,2011.

[7]赵军.linux下网络性能优化方法解析[EB/OL].http:///developerworks/cn/linux/l-cn-network-pt/,[2010-11-25/2013-07-22]

[8]冯国进.linux驱动程序开发实例[M].北京:机械工业出版社,2011.

[9]宋敬彬,孙海滨.linux网络编程[M].北京:清华大学出版社,2010.

[10]刘卫军.网络性能优化(NAPI)[EB/OL].http:///ustc_dylan/article/details/6116336,[2011-01-04/2013-07-22].

作者简介:周浩(1988.07.05-),男,山西晋中人,硕士,在读学生,研究方向:操作系统。

网络控制器范文第2篇

关键词: 网络; 数据波动; 控制器; 建模

中图分类号: TN711?34; TP273.5 文献标识码: A 文章编号: 1004?373X(2017)12?0043?03

Abstract: The computation burden of the traditional network data fluctuation controller is often heavy, and its operation is complex, which may cause the phenomena that the controller itself has too short time to hold the non?fluctuation data of network, and communication error is big. Therefore, a more intelligent and practical controller against network data fluctuation is designed. The designed controller provides the optimal control scheme of the network data fluctuation by building a network data fluctuation control model, employs AT91SAM9260 microprocessor to extract the optimal control scheme, and inserts it into the corresponding node of the network initial data to make an aggregated control for the networks with small data fluctuation and less interference parameters and make the distribution control for the contrary types of networks. The experimental results show that the designed controller has a long hold time for non? fluctuation data, and little communication error. Compared with the traditional controller, it has more outstanding performance and more extensive application fields.

Keywords: network; data fluctuation; controller; modeling

0 引 言

随着电子科技的不断发展壮大,网络已成为人们生活中必不可少的通信工具,网络数据量也越来越多,因网络数据波动产生的数据丢失和通信误差,已逐渐导致一些重大安全隐患出现,网络数据波动控制器由此产生[1?3]。传统的网络数据波动控制器往往运算量大、操作复杂,造成控制器自身对非波动数据持有时间过短、通信误差偏大等缺陷。为此,近年来设计出的网络数据波动控制器已不断向着更加智能化、实用化的方向发展,使控制器的性能更加优异、应用领域更为广泛。

1 网络数据波动控制模型的建立

在网络数据[4?6]通信中,数据通常以数据包的状态被鞯莸较嘤τ没Ы诘悖通信工作能否顺利完成与网络带宽有很大关系。如果数据包容量超出网络带宽所能承受的最大载荷,数据包中的网络数据便会出现不同程度的波动。此时,所设计的网络数据波动控制器需要通过建模方式对网络数据进行控制,旨在将超出网络带宽载荷的数据包划分成若干个最佳通信容量数据包,以增加控制器对非波动数据的持有时间,缩小通信误差。图1为网络数据波动控制模型结构图。

从图1可以看出,经由网络数据波动控制模型划分成最佳通信容量的数据包,其通信路径也不尽相同。此时,所设计的网络数据波动控制器最终接收到的网路数据有可能发生顺序颠倒,为此,在控制模型与控制器之间加入一台缓冲设备,缓冲设备会将规定任务时间内的用户网络数据存储在一起并进行排序,再传递到所设计的网络数据波动控制器中进行控制。

通过分析式(4)中的网络数据波动控制模型,能够给予所设计的网络数据波动控制器最优控制方案,进而缩减控制器运算量、简化控制器使用步骤。通过变更控制模型的参数取值并进行对比分析,还能够进一步发现影响控制器性能的因素,便于进行控制器的后期维护工作。

2 网络数据波动控制器设计

2.1 整体设计

根据网络数据波动控制模型,给出网络数据波动控制器的整体设计图,如图2所示。由图2可知,所设计的网络数据波动控制器由输入模块、控制模块、存储模块和可视化模块组成。

2.2 控制器聚集控制设计

根据网络数据波动控制模型能够得知网络数据的具体波动情况。在网络数据波动较小、干扰参数较少的情况下,为了延长所设计的网络数据波动控制器对非波动数据的持有时间,控制器将自动选择聚集控制方式来进行对被控网络的控制工作。

在聚集控制中,被控网络中的最佳通信容量数据包将被统一传递到控制模块,形成一种映照式的拓扑控制结构,如图3所示。这种结构将统一制定控制细节,在大体上平复网络数据波动。在网络数据波动控制模型的帮助下,聚集控制中各最佳通信容量数据包中的数据是可随意进行交互的,这使得控制器的应用领域更为广泛,符合设计初衷。

2.3 控制器分布控制设计

在网络数据波动较大、干扰参数较多的情况下,为了缩小所设计的网络数据波动控制器的通信误差,控制器将选择分布控制方式来进行对被控网络的控制工作,如图4所示。

由图4可知,分布控制与聚集控制是相对应的,即只有在前一个最佳通信容量数据包的控制工作结束,并且将控制结果传递到下一个最佳通信容量数据包后,控制模块才会开始进行下次控制工作。分布控制拥有回路式横向数据流拓扑结构,后面的最佳通信容量数据包能够接收到前面最佳通信容量数据包的控制结果,并根据控制结果的成功与否对下次控制工作的方案进行调整。这种控制方式的控制效果非常好,但控制效率不如聚集控制,因此在实际应用中,所设计的网络数据波动控制器通常将聚集控制和分布控制交互使用,以令控制器的性能更加优异、应用领域更为广泛。

3 实验验证

本次实验使用OPNET软件对本文控制器、基于非线性控制的网络数据波动控制器和基于停留时间方法的网络数据波动控制器进行仿真实验。OPNET软件通过模拟被控网络的性能和参数,并调试上述三种控制器所建立的控制模型,对控制器非波动数据持有时间和通信误差的仿真实验结果进行输出。

3.1 非波动数据持有时间验证

OPNET软件给出的网络数据波动轨迹能够直接反映出控制器对非波动数据持有时间,如图5~图7所示。网络数据波动轨迹稳定得越快,证明控制器控制效果的稳定性越好,控制器对非波动数据持有时间就越长。

从图5~图7中能够非常明显地看出,本文控制器中的网络数据波动轨迹稳定的最快,当网络波动数据传输到第17个网络波动节点时,被控网络中便已经不存在网络数据波动,证明本文控制器对非波动数据具有较长的持有时间。

3.2 通信误差验证

表1为三种控制器通信误差输出结果,从中能够看出,本文控制器的通信误差极小,不高于0.15 cm,证明其应用领域更为广泛,能够较好地实现设计初衷。

4 结 论

本文设计一种更加智能化、实用化的网络数据波动控制器,其由输入模块、控制模块、存储模块和可视化模块组成。输入模块内包含网络数据波动控制模型和网络初始数据。控制模块是控制器中最重要的模块,其核心是AT91SAM9260微处理器。存储模块包括模数转换电路、存储设备和通信接口。可视化模块包括同步动态随机存储器和可视化插件。实验结果证明,所设计的控制器对非波动数据的持有时间较长,并且具有极小的通信误差。

参考文献

[1] 谢成祥.有数据包丢失网络控制系统的建模和控制[J].科学技术与工程,2014,14(18):76?80.

[2] 张树才.WCDMA及无线网络控制器负荷分析c研究[J].电子科技,2015,28(3):120?122.

[3] 朱林,吴冬雪,.神经元网络控制器在热网中的应用研究[J].自动化仪表,2014,35(12):71?74.

[4] 魏立新,林鹏,王利平.基于Elman网络预测的神经网络控制器在冷轧APC系统中的应用研究[J].矿冶工程,2015,35(6):130?134.

[5] 王维哲,赵伟.引入神经网络的应急调度系统设计[J].现代电子技术,2016,39(4):41?43.

网络控制器范文第3篇

论文关键词:网络化系统 控制 保性能 状态反馈

论文摘要:针对大规模、实时性要求较高的集散工业控制环境,建立了闭环控制回路用网络来实现的网络化系统.针对网络化系统,提出了一种多时延系统模型.考虑到模型的不确定因素,推出了无记忆状态反馈、鲁棒保性能控制器的存在条件.给出了如何利用matlab软件进行控制器设计并给出性能优化的方法.仿真结果表明,该控制器有很好的鲁棒性,对所有允许的网络不确定延迟和模型不确定性,具有良好的性能指标,可以用于分散环境下的大型工业控制系统.

网络化系统作为一门交叉学科,既涵盖控制又关联网络.因此在系统设计时,应该综合考虑控制和网络的因素.网络的引入将给系统带来延迟,同时,系统的模型会具有不确定性因素.依照这个宗旨,本文针对带有不确定性模型结构的网络化控制系统,建立了多延迟系统模型,证明了其无记忆状态反馈保性能控制器(guaranteed cost control)存在且使系统稳定的充分条件,并给出了该控制器设计和性能优化的方法.仿真结果表明,对带有不确定性模型结构的网络化控制系统,该控制器具有很好的鲁棒性.

1 多延迟模型的建立

本文所研究的网络化控制系统如图1所示,其中,传感器为时间驱动,且采样周期定常,设为h.控制器和执行器均为事件驱动.系统中,用s和a分别表示信号从传感器到控制器、控制器到执行器之间的网络传输延迟,并且假设控制对象(plant)的全部状态采样值用一个包传输.

假设系统中延迟s和a是定常的,并且小于两个采样周期.因为系统中延迟和周期采样的影响,系统模型将被转换为

由于环境的复杂、器件的老化和非线性等因素,在实际的网络化系统建摸中,系统具有不确定性.因此,本文将考虑具有不确定性因素的网络化系统模型

模型(2)中,假定控制向量为范数有界,且具有以下形式:

式中:d,ej为反映不确定结构的常数矩阵;而f为满足条件ftf≤i的未知不确定矩阵,其元素lebesgue可测且有界.系统的性能指标定义为

本文研究的问题是对具有模型(2)的网络化控制系统,设计一个无记忆状态反馈控制器

c(k) =kx(k), (5)

使得对所有允许的不确定性,该网络化控制系统是渐进稳定的,且性能指标值满足j≤j*,其中j*是某个确定的常数.通常称具有这样性质的控制器(式(5))是不确定网络化控制系统(式(2))和性能指标(式(4))的保性能控制.

2 保性能控制设计和优化

文献[1~4]中,采用增广状态法,建立起了滞离散网络化控制系统的无时滞的离散模型,然后应用一般的线性二次型规则设计的方法,给出了一种状态反馈控制律.这种方法使系统状态维数增加并给计算带来了一定的困难.同时,将使设计出的的控制器不仅依赖当前的状态,而且还依赖以前的状态.因此,本文针对模型不确定网络化控制系统(式(2)),设计一无记忆状态反馈保性能控制器.在以下主要结论的导出中,要用到文献[3]中的一个引理.引理1[3] 给定适当维数的矩阵x,d和e,其中x是对称的,则x+dfe+etftdt<0.对所有满足ftf≤i的矩阵f成立,当且仅当存在一个常数ε>0时,使得

定理1 对于系统(2)和性能指标(4),若存在矩阵k,对称正定矩阵p,s和t,使得对所有允许的不确定性,矩阵不等式

证明 若存在对称正定矩阵p,s,t和矩阵k,使得对所有允许的不确定性,矩阵不等式(6)成立.系统(2)中,取控制律c(k)=kx(k),则导出闭环系统为

x(k+1) =acx(k)+b1kx(k-1)+b2kx(k-2). (7)

选取一个李雅普诺夫函数

则v(k)是正定的,沿闭环系统(7)的任意轨线,v(k)的前向差分是

若条件式(6)成立,则对所有允许的不确定性,有根据李雅普诺夫稳定性理论,网络化控制系统(7)是渐进稳定的.进而由不等式(9)可得式(10)两边对k从0到∞求和,并利用系统的稳定性可得kx(k)是系统的一个保性能控制律.定理得证.下面以lmi的形式给出该保性能控制器构造的方法.矩阵不等式(6)可以写成

式中ω4=-p+ktsk+kttk+q+ktrk,根据矩阵的schur补性质,代入ac,b1和b2的表达式,再利用引理1可得三角阵

再利用matlab的lmi工具箱,可解出具有最优性能的无记忆鲁棒状态反馈控制器.

3 仿真结果

考虑如下控制系统:

不失一般性,不妨假设传感器采样周期h为10 ms,时延s和a均为8 ms.q=diag{1,1},r=0.3,d=[0.1 0.1]t,e=0.1,e0=0.1,e1=0.1,e2=0.2,根据前面的讨论,通过matlab的lmi工具箱可以构造出的最优性能鲁棒控制器为

c(k) = [0.112 1-0.126 1]x(k).

闭环系统性能指标的最优上界为112.254 1.仿真结果表明,该无记忆状态反馈保性能控制律,对允许的网络延迟和模型不确定性,确实具有良好的性能.

参考文献

[1] zhen wei, xie jianying. online-evaluation control fornetworked control systems[c]∥ieee conference ondecision and control. las vegar: ieee controlpress, 2002: 1 649-1 650.

[2] lian feng-li, jame m. optimal controller design andevaluation for networked control systems with distrib-uted constant delays[c]∥proceedings of americancontrol conference. anchorage: ieee controlpress, 2002: 3 009-3 014.

[3] li yu, gao furong. optimal guaranteed cost controlof discrete-time uncertain systems with both state andinput delays[j]. journal of the franklin institute,2001, 338(1): 101-110.

网络控制器范文第4篇

关键词:网络控制器;通信协议;Rabbit2000单片机;套接字;串口通信

中图分类号:TN91 文献标识码:B

文章编号:1004373X(2008)0105403オ

Communication Technology of Jia-xiao-tong Network Controller

WEI Zi,YANG Qingjiang,ZHANG Guanglu

(Heilongjiang Institute of Science and Technology,Harbin,150027,China)

Abstract:For the function demand of the network controller in Jia-xiao-tong system,the paper proposes a communication technology of combining serial-port with network.Firstly,it describes the network controller′s hardware platform and the application-layer protocol based on TCP/IP protocol stack.Then,it mainly discusses the communication network technology and the communication serial technology.The polling scheme is applied to improve data transfer effectiveness and reduce data collision.Finally,it explains and analyzes the communication technology′s feasibility and stability through filed test data.

Keywords:network controller;communication protocol;Rabbit2000 single chip;socket;serial communication

1 引 言

随着TCP/IP等网络通信的出现,将串口通信与网络通信相结合的趋势越来越明显,这是保护使用者既往投资和整体利益的一种有效办法。本文所讨论的通信技术就是将串口与网络通信相结合并在实际应用中取得良好效果的一种通信解决方案。

“家校通”是利用现代信息技术实现家庭与学校实时沟通的教育网络平台,其组成部分为:家校互联卡、读卡器、无线网关、网络控制器、短信发射接收机。网络控制器的主要功能是通过无线网关从读卡器获取信息,并与互联网服务平台进行网络通信,是家校通系统的核心。

2 网络控制器的硬件平台

根据网络控制器的功能要求,考虑整体的性能、价格方面,CPU采用Rabbit2000单片机,他是Z-World公司特别为中小型控制器而设计的高性能8位微处理器。编译环境为Dynamic C,提供Socket级TCP/IP编程。网络控制器的硬件结构如图1所示。

3 应用层通信协议

3.1 网络控制器与读卡器的串口通信协议

网络控制器与读卡器的通信主要通过异步串行RS 485接口,基于通用串行通信RS 485数据传输单元(字节格式)有不带校验位的10 b和带奇偶校验位的11 b两种数据格式。为了提高数据传送的效率和可靠性,采用无奇偶校验位的10 b数据格式,并由BBC校验生成校验码与数据一起发送。

开始标志读卡器地址信息长度命令和参数校验

2 B1 B2 B14 B1 B

(3)命令字:

A1:从读卡器读取一条记录。

A2:控制器正确接收记录信息后,返回更新记录的读地址命令,使地址指针指向下一条记录。

A4:设置校正读卡器时间。

A6:测试控制器与读卡是否正常通信。

3.2 网络控制器与服务平台的网络通信协议

网络协议通常分不同的层次进行开发,每一层分别负责不同的通信功能。TCP/IP通常是一个4层协议,包括数据链路层、网络层(含IP协议)、传输层(含TCP协议)和应用层。本网络协议就是基于TCP/IP协议之上的应用层协议,采用请求应答的通信模式。考虑到协议的可靠性和实现的方便性,数据采用ASCII码表示。

(1)报文组成

4 通信技术

控制器建立socket连接后,向服务器发送连接请求和数据传输,并实时判断连接的有效性,在有效连接的状态下,实现控制器、服务器、读卡器三者的正常通讯,程序流程如图2所示。

4.1 网络通信技术的实现

socket初始化: 首先要对RTL8019AS的控制寄存器进行初始化配置,Dynamic C已将这部分配置封装成函数放入REALTEK.LIB库中,应用时只需调用相关函数。之后再调用函数库dcrtcp.lib中的几个简单函数可完成socket的初始化,以下是程序的主体框架。

#define TCPCONFIG1

#memmapxmem

#usedcrtcp.lib

main()

{

sock[CD#*2]init( );

while(ifpending(IF[CD#*2]DEFAULT)==IP[CD#*2]COMING[CD#*2]UP)

tcp[CD#*2]tick(NULL);

tcp[CD#*2]open(&socket,0,destIP,sockport,null);

…… ……

}

在建立TCP的连接中,Dynamic C有两种方法打开TCP socket:一种是被动的方式,调用函数tcp[CD#*2]listen(),等待客户端进行连接;一种是主动的方式,调用函数tcp[CD#*2]open(),根据相应的参数(IP地址和端口号)主动连接到服务器端。本通信技术采用的就是主动方式(作为客户端)。

Socket数据的发送与接收:数据发送调用sock[CD#*2]write(&socket,str[CD#*2]send,str[CD#*2]send[CD#*2]len)。在读取socket缓冲区数时,先判断缓冲区中是否有数据,有数据再进行读操用,同时有超时设置。

start[CD#*2]time=SEC[CD#*2]TIMER;

/*SEC[CD#*2]TIMER为秒级系统时间*/

end[CD#*2]time=start[CD#*2]time;

while((end[CD#*2]time

!recv[CD#*2]count)/*READ[CD#*2]TIME为设定的等待时间*/

{

str[CD#*2]recvbuf[CD#*2]len=sock[CD#*2]bytesready(&socket);

/*判断socket读缓冲区是否有数据*/

if(str[CD#*2]recvbuf[CD#*2]len>0)

recv[CD#*2]count=sock[CD#*2]read(&socket,str[CD#*2]recvbuf,

str[CD#*2]recvbuf[CD#*2]len); /*读socket*/

}

if(revc[CD#*2]count)

{…… ……}

/*拆分接收到的命令字,读取有效信息*/

else

break;

4.2 串口通信技术的实现

主要包含3个步骤:命令字的组合,设置串口D,通过设置Rabbit2000的PE3来控制数据的发送与接收。以A6命令为例,程序主体框架如下:

command[0]=0xA6;/*A6命令*/

create[CD#*2]command(addr,command,pack);

/*组合命令字*/

serDopen(9600);/*9600为波特率*/

send[CD#*2]command(command,returnlen);/*发送数据*/

read[CD#*2]command(readbuf,sizeof(readbuf),10);

/*接收数据*/

void send[CD#*2]command(char *pack,int len)

{

int i;

WrPortI(PEDR,& PEDRShadow,0x08);

WrPortI(PEB3R,NULL,0);

for(i=0;i

serDputc(pack[i]);

}

int read[CD#*2]command(char *buf,int len,int time)

{

int i[CD#*2]return;

WrPortI(PEB3R,NULL,1

i[CD#*2]return=serDread(buf,len,time);

return i[CD#*2]return;

}

5 数据采集与分析

网络控制器联网正常运行时,向服务器发送的一包测试记录数据为:

对数据包进行分析:0244为数据包的总长度,01为协议版本号,02为命令字,000003为序列号,21000102*****为设备号,09为数据包中的刷卡记录总数,0080D122为测试卡号,07070414152715为刷卡时间(顺序为年周月日时分秒),03为状态。

采集从服务器返回的命令:001501020000031,其中

列号,1为正确接收。返回命令格式符合协议要求,内容正确。

网络控制器向读卡器发送的命令(以A6为例): aa ff 01 00 03 a6 41 41 f1,其中aa ff表示本命令为控制器发给读卡器,01为读卡器地址,00 03为数据长度,a6为命令字,41 41为测试数据,f1为校验位。

采集从读卡器返回的命令:bb ff 01 00 02 41 41 47 d1 22 07 07 04 14 15 42 17 1 6b 00 00 00,其中bb ff表示本命令为读卡器发给控制器,01为读卡器地址,00 02为数据长度,41 41为测试数据,47为校验位,之后的为无效数据。

6 结 语

基于Rabbit2000实现串口与网络结合的通信技术可以实时、准确地对数据进行处理、发送与接收。由采集到的数据表明数据收发的正确性,证明了本通信技术的可行性与可靠性。本通信技术已在家校通系统中取得了良好的通信效果,并可应用于其他数据传输系统中,具有广泛的发展前景。

参 考 文 献

[1]Z-World Inc.Rabbit2000 Microprocessor Designer′s Hand-book,2003.

[2]Z-WorldInc.Dynamic C TCP/IP User′s Manual,2003.

[3]林丽,朱宏.基于Rabbit2000的网络通信技术[J].福建电脑,2005(4):45-46.

作者简介 魏 紫 女,1982年出生,辽宁沈阳人,硕士研究生。主要从事电力电子技术与电子信息通信方向的研究。

网络控制器范文第5篇

关键词:工业机器人; 嵌入式运动控制器; ARM; 现场可编辑逻辑门阵列; RTEX

中图分类号: TP242.2 文献标志码:A

0引言

工业机器人是集机械、电子、控制、计算机、传感器、人工智能等多学科先进技术于一体的重要现代制造业自动化装备[1]工业机器人运动控制系统是工业机器人领域的技术关键和研究热点,而运动控制器作为工业机器人运动控制的核心,相当于工业机器人的大脑,是其最基本、最重要的一环[2]

目前机器人控制器主要有“PC/IPC+运动控制卡”和嵌入式运动控制器两种模式其中,“PC/IPC+运动控制卡”模式的运动控制器技术成熟,因其丰富的控制功能、良好的通用性以及易于开发等特点,使用较为普遍但随着工业控制要求越来越高,“PC/IPC+运动控制卡”模式因其开放性受限、成本高、实时性差等问题,往往不能满足要求而基于嵌入式软硬件技术的机器人运动控制器则是一种具备开放体系结构的运动控制器,能够提高工业机器人集成度,降低成本,在保证可靠、灵活、实时与稳定的同时,具备良好开放性与人机界面 [3-7],可以很好地解决“工控机(IPC)+运动控制卡”模式的不足此外,稳定快速的通信方式,也是实现高速实时控制的必备条件

本文采用嵌入式构架,选择具有高度实时性、稳定性的新型网络通信RTEX,提出了基于模块化控制核心的网络型嵌入式运动控制器硬件平台设计方案

1控制器的功能设计

1.1网络通信RTEX

RTEX是松下公司为实现高度实时性伺服控制而开发的以100BaseTX为基础的独立实时通信,100Mb/s全双工,通信周期最快为0.083ms(该模式下可实现最多5轴同步控制),采用环形拓扑结构进行连接,可实现最大轴数为32轴,如图1所示

RTEX通信与数字脉冲式连接相比,具有运行和响应速度更快、连线更简洁、通信更稳定可靠、高抗噪性等优点RTEX与Ethernet有相同的物理层,但相比之下,Ethernet上层负载较大,RTEX更适合实时伺服,通过高效简化的通信数据包,可以实现高速实时控制,如图2所示

1.2控制器架构设计

结合A5N驱动器的接口特性以及控制对象四轴SCARA

机器人的控制要求,采用基于“ARM+FPGA”的嵌入式处理器加实时操作系统的方案,利用ARM运行速度快、计算精度高、低能耗以及丰富的软硬件资源和FPGA内部逻辑在线可重构、设计周期短、逻辑资源丰富等特点[8-10],以ARM作为控制核心,完成人机交互、运动规划、运动学解算等功能,而FPGA主要实现接收ARM控制指令、高速数据处理和网络通信以及底层伺服运动控制模块等功能运动控制器整体架构如图3所示

该运动控制器的设计采用模块化的设计思想,控制核心ARM和FPGA均采用核心板的方式嵌入到控制器底板上

ARM控制核心嵌入了实时操作系统,并连接触摸屏,实现人机交互,可以脱离PC/IPC实现对工业机器人的独立控制;此外,运动控制器设计了USB口,COM口以及以太网口等接口,可以连接PC/IPC以及远端示教盒等,构成多种控制模式,从而使该运动控制器具有良好的可扩展性、适应性和兼容性SRAM用来存储数据,而FLASH为程序存储器;JATG接口的主要作用是便于程序的下载、调试以及程序代码固化写入

FPGA负责底层伺服控制,接收并分析上位机ARM的控制指令,然后周期性地输出相应的指令信号到伺服驱动器,并接收驱动器反馈回来的响应信号,构成闭环SRAM和FLASH作为FPGA的外扩存储器,JTAG接口为在线编程调试接口,AS接口则为程序烧录端口

1.3通信方式

FPGA与ARM之间采用SPI串行总线进行通信SPI是一种高速全双工同步通信总线,由四根线路构成:MOSI(主设备输出,从设备输入)、MISO(主设备输入,从设备输出)、SCLK(数据传输控制时钟,由主设备产生,主从设备同步使用)、nSS(从设备片选信号,由主设备发出,低电平时从设备使能,一个片选信号对应一个从设备)ARM与FPGA之间的SPI通信连接方式如图4所示

FPGA与驱动器之间的通信,采用松下专用通信芯片MNM1221实现该芯片能够基于主从方式的环形拓扑结构,建立实时的通信系统,周期性地交换主模块的指令数据和从模块的响应数据MNM1221的发送和接收模块都是双缓存,这一功能可以使CPU更加高效地运行MNM1221采用16位数据总线和11位地址总线与上层CPU(即FPGA)进行数据的传递,连接方式如图5所示

2控制器硬件设计

嵌入式运动控制器的硬件设计主要包括运动控制核心设计和底板设计两部分

2.1运动控制器核心

ARM核心板采用三星S3C2416 CPU,扩展了存储容量为128MB Nand Flash以及64MB的DDR2 SDRAMS3C2416基于ARM926EJ内核,16KB数据缓存,16KB指令缓存,400MHz主频,MMU内存管理单元,Embedded ICETM调试单元,以及64KB内嵌 SRAM(8KB用作BOOT启动)采用5级流水线及增强性乘法器,是高性能、低成本的嵌入式微处理器

FPGA核心板使用了Altera Cyclone Ⅲ系列的一款FPGA 芯片EP3C10E144C8,采用存储容量为16MB的FPGA串行程序配置芯片EPCS16,并采用芯片IS61LV51216扩展了1MB的SRAMEP3C10E144C8具有10320个逻辑单元(LEs)、414KB RAM、2个PLL、23个乘法器,可满足本控制器系统设计要求

2.2运动控制器底板

运动控制器的控制核心ARM和FPGA,均采用核心板的方式嵌入到运动控制器底板上,功能上更具灵活性和可扩展性运动控制器的底板主要完成电源电压的转换和供给,以及实现各种接口和通信功能运动控制器的底板上主要有:SD卡插槽、LCD接口、USB Host接口、USB Slave接口、以太网接口、COM口以及JTAG接口和SPI引出接口等以及完成通信功能的线路

根据A5N驱动器的特性,完成驱动器配电控制柜制作,结合已有四轴SCARA工业机器人,搭建完成运动控制器功能检测和伺服控制算法实验平台,如图6所示

3控制器程序设计

嵌入式运动控制器程序设计主要包括两部分:1)ARM中操作系统移植和程序编写;2)FPGA中通信和底层伺服控制程序编写

3.1ARM中系统移植及程序编写

控制器中ARM控制核心主要完成机器人状态的显示、编辑机器人作业任务、对输入信息进行处理、规划机器人轨迹及插补运算并与运动控制器完成通信考虑稳定性和实时性的要求,选择嵌入μC/OSⅡ系统μC/OSⅡ系统是一个源代码公开的、完整的、可移植、可固化、可裁减、具有高稳定性与可靠性的占先式实时多任务操作系统[11-12]

首先将μC/OSⅡ移植到ARM微处理器上,然后对操作系统本身进行扩充主要工作包括:建立文件系统、为外部设备建立驱动程序并规范相应的API函数、创建图形用户接口(GUI)函数、建立其他实用的应用程序接口(API)函数等系统软件分为用户层、应用层、中间层和设备层用户层实现人机交互、完成任务编辑;应用层完成数据处理、轨迹规划和插补等功能;中间层主要负责控制器系统内部的通信、任务调度和时钟管理等;设备层提供统一的驱动接口供上级组件调用ARM中软件架构如图7所示

3.2FPGA中通信和底层伺服控制程序编写

控制器中FPGA主要完成的功能包括实现与ARM和A5N驱动器的通信以及底层伺服控制,选择NIOS II进行FPGA中程序的编写NIOS II的程序编写包括硬件和软件两部分硬件部分使用Verilog HDL语言在Quartus II和SOPC builder中建立所需功能的IP核而软件部分则是在NIOS IDE中用C语言实现

FPGA中的IP核构建属于硬件编程,根据FPGA的硬件配置以及其要完成的功能,软核中应包括:处理器CPU、FLASH、JTAG UART、SRAM、System ID、SPI从端通信IP核、MNM1221通信IP核、两个下降沿触发的输入中断(用于MNM1221通信)、一个内部定时中断(用于FGPA中伺服控制程序)、一个输入端口(用于检测LINK信号)、一个输出端口(用于复位RESET)以及一个PLL提供系统时钟和通信时钟结构图如图8所示其中SRAM和MNM1221通信模块需要根据使用Verilog HDL语言编写IP核,其他模块可以使用SOPC提供的库文件进行定制

C语言控制程序主要分为四个部分功能模块:INTRX初始化模块、MNM1221控制模块、NC数据处理模块和SPI通信模块INTRX初始化模块要完成的功能是通信状态的检测,在运行状态正常的情况下完成MNM1221中RX两个存储模块之间数据交换MNM1221控制模块则要实现对MNM1221通信芯片的控制以及完成通信数据交换NC数据处理模块的主要功能就是在周期性运行状态下完成数据处理和控制指令的生成SPI通信模块主要实现的功能是接收上位控制器ARM的控制指令,如工作模式指令以及周期性的位置和速度值指令等,并将工作状态进行反馈主要的控制程序流程如图9所示

4伺服控制实验

通过程序设定控制器的指令更新周期为1ms,通信周期为0.5ms,使驱动器分别工作在周期性位置模式和速度模式下,使用该控制器对SCARA机器人进行定位运动控制和速度控制实验通过PANATERM软件对电机的工作状态进行检测,绘制所测项的波形曲线,从而对控制系统的通信功能和伺服控制性能进行验证和分析

4.1速度控制实验

SCARA机器人一轴采用松下A5电机,型号为MSMD042S1V,属于低惯量小型电机,额定输出容量为0.4kW,额定转速为3000r/min相比之下其他三轴,一轴的负载惯量比最大,转速和精度要求高,因此控制难度最大选定SCARA机器人一轴为控制对象,进行速度控制实验

速度控制模式下,A5N驱动器内部带有速度检测、滤波环节,以及扰动观测器等,可以对编码器检测信息进行处理,得到电机位置、速度和力矩信息,而后反馈回控制系统

驱动器中的增益参数可自动调整,主要取决于系统刚度和惯量比通过估算得出,在其他轴固定不动,二轴与一轴同一直线的情况下,刚度值为19(可设定的最大值为32),惯量比为6速度控制的输入参数为设定速度值2000r/min,加速度值6(r/min)/ms

通过PANATERM软件对实际速度、速度控制指令以及转矩指令进行测试,可得到该速度下的波形曲线分别如图10所示

由以上SCARA机器人的一轴速度曲线可以看出,电机按照所设定的加速度进行加速整个过程中,实际速度对指令速度有较好的跟随性,两曲线吻合度很高将以上两种转速下,电机达到稳定以后的转速波动情况作以比较后发现,电机的实际转速误差很小且不随转速的增加而变化,精度较高电机的力矩输出随着电机转速的变化而变化,加速阶段力矩较大,达到预定速度后,力矩有所减小,达到平稳由于传动环节存在柔性等因素,导致力矩的输出值存在一定范围内的波动,可通过改变增益值或增加滤波环节等加以改善

4.2位置控制实验

在周期性位置控制模式下,控制器通过RTEX网络通信与驱动器进行连接,然后周期性地发送位置指令到驱动器,从而实现SCARA机器人各轴的定位运动控制

在位置控制模式下,A5N驱动器内部可实现位置指令的平滑滤波、阻尼控制、位置环控制、速度前馈、速度环PI控制、力矩前馈控制、摩擦补偿、陷波滤波、力矩滤波以及电流控制等功能,并带有速度检测、滤波环节,以及扰动观测器,可以对编码器检测信息进行处理,而后反馈回控制系统,构成闭环

定位运动控制实验中的输入参数为指令脉冲数1200000,速度为600r/min和1200r/min,加、减速度均为2(r/min)/ms上电后,运动控制器通过RTEX网络向驱动器发出目标位置指令

通过PANATERM软件进行检测,检测项为转矩指令、实际速度和指令脉冲累计值,得到波形曲线分别如图11和12所示

通过以上实验所得的波形曲线可以看出,控制系统较好地实现了SCARA机器人一轴的定位控制通过指令脉冲累计值可以看出,控制器实现了精确位置控制,且速度输出准确、力矩输出良好速度按照所设定的加、减速度进行变化,平稳状态速度值波动很小力矩指令输出则控制系统的整体性能,通过曲线可知,输出力矩在各个转速下的变化及时准确,但由于SCARA机器人一轴的减速器为谐波减速器,导致达到稳定转速时力矩输出会出现周期性的波动通过不同加速度、速度以及位移下的定位控制实验,验证了控制系统在各转速下均具有优良工作性能,精度较高,运动平稳,能够实现高速、高精度的位置控制

5结语

本文详细介绍了基于模块化控制核心(ARM+FPGA)适应新型网络通信RTEX的可扩展多轴嵌入式运动控制器硬件平台的设计过程以及控制系统的软件设计设计中充分利用了ARM运行速度快、计算精度高、能耗低以及软硬件资源丰富和FPGA内部逻辑的在线可重构性等特点,并移植强实时性的操作系统μC/OSⅡ,不仅降低了控制器的硬件设计成本,也提高了控制器的资源利用率同时,控制器与驱动器的通信部分采用了具有高度实时性的新型网络通信RTEX基于以上的设计思路和配置方案,使控制器具有良好的可靠性和开放性通过伺服控制实验验证,该控制器具有便捷可靠的通信方式、稳定快速的通信能力和较好的控制能力,能够实现预定伺服控制功能

参考文献:

[1]徐方.工业机器人产业现状与发展[J].机器人技术与应用,2007(9):2-4.

[2]李莉,吴星明,陈伟海.基于ARM和FPGA的机器人运动控制器的实现[J].计算机测量与控制,2007,15(9):1172-1173.

[3]曾毅,皮佑国.基于ARM和DSP的嵌入式运动控制器设计与实现[J].计算机测量与控制,2012,20(4):962-965.

[4]万林,唐厚君,贺超,等.基于ARM与FPGA的嵌入式开放性运动控制器的设计与开发[J].电气自动化,2011,33(3):59-61.

[5]罗伟涛,张铁.基于ARM+DSP+FPGA的机器人运动控制器研究[J].机床与液压,2011,39(15):55-58.

[6]曾祥宇,孙汉旭,贾庆轩,等.模块化机器人嵌入式多核主控制器设计[J].单片机与嵌入式系统应用,2012,12(5):20-23.

[7]CHI S C, ZHAO M Y. Designing an embedded motion controller using a 16bit microprocessor motion chip and ARM[C]// Proceedings of the 3rd International Conference on Manufacturing Science and Engineering. Clausthalzellerfeld, Germany: Trans Tech Publications, 2012, 468: 418-421.

[8]LAI C K, LIAO C H, HO K L, et al. To develop an embedded controller for stepping motor drive system[C]// Proceedings of the 8th Asian Control Conference. Piscataway: IEEE, 2011: 971-975.

[9]LIU C, LIU J, WU J, et al. High precision embedded control of a high acceleration positioning system[M]. Berlin: Springer, 2012: 551-560.

[10]熊光泽,詹瑾瑜.嵌入式系统软/硬件协同设计技术综述[J].计算机应用,2006,26(4):757-760.

[11]吴云,徐建明,俞立,等.嵌入式三轴运动控制系统的以太网通信实现[J].计算机测量与控制,2012,20(7):1846-1848.

网络控制器范文第6篇

关键词:Internet智能化CAN总线家庭自动化系统

随着计算机、控制、网络、通信、微电子和建筑等技术的不断发展完善,以及相互之间的系统集成和有机结合,智能建筑已经成为现代建筑的发展方向。其中楼宇自动化系统(BAS)、办公自动化系统(OAS)和通信自动化系统(CAS)已有成功应用。同时人们生活水平的提高,对住宅环境在舒适、安全、高效、节能和便捷等多方面提出了更高要求,因此家庭自动化系统(HAS)应运而生,它一方面实现对家庭设备网络的管理,另一方面与整个楼宇主控管理系统互联[1]。对家庭网络的管理主要有:

(1)对电器设备进行自动化监控,对能源进行优化管理与控制,如家电开关、空调调节、灯光控制、声音调节、温度控制、湿度控制、安全和保安管理及水、电、气三表自动计费和转账管理等。

(2)对数字设备实现互联,内部家用网络接入设备之间局域网的连接,如计算机、多媒体计算机、电视、摄/录像机、VCD/DVD和数码相机等娱乐设备。对外实现与互联网连接,实现远程监控、教育、医疗、存贷、购物等。

目前已有多种HAS产品共存,主要集中在欧洲、美国和日本,基本采用DCS控制方案,但是各系统之间网络标准不一,相互兼容性差,具体可参阅文献资料。国内现处于开发研究起步阶段,许多问题亟待解决。

1总体方案设计

一般来说,用户是逐个购置家用设备的。从信息化角度看,大多电器设备属于现场设备,不具备信息化条件,为“信息孤岛”,数字设备则具备了信息交换的基础。而设备功能的复杂性和多样性、设备间的相关性、用户使用的随机性及使用程度的不可预知性等,要求系统具有良好的开放性、可扩展性和较高的智能化程度,系统能够自动调整以适应不同用户和多种环境需求。用户只需简要地操作配置,即可实现设备的“即插即用",自动识别设备的类型并建立与其相关的联系。

从智能建筑的网络资料以及外设嵌入式联网的趋势持,楼宇局域网与Internet已经实现互联,有的Ethernet直接入户,充分利用现有标准和楼内已有资源,Internet的接入提供了条件,同时可以满足用户方便、快捷、简单地进行异地操作,对家中设备远程查询、监控和管理。对于数字设备与Internet的互联及相互之间的局域网互联技术已经成熟,本文不再多述。

针对家用现场设备分散且数量随机的特点,现场总线以双向、串行、多节点数字通信等技术为基础构成的开放式、数字化、分散化及智能化底层控制网络FCS(FieldbusControlSystem),完全满足分布式和渐增式的控制要求[2]。总线通信协议的公开化,不同厂商生产的设备之间可以进行互联以实现信息交换。控制任务下载分开到现场智能仪表和装置设备中,并通过微处理器完成控制监测等算法,可实现测量控制一体化,提高整个系统的可靠性。

基于上述分析,笔者设计了基于Internet的智能家庭网络控制器,总体方案如图1所示。以Internet/Ethernet直接入户为例,经双绞非屏蔽线接入用户家庭控制器HCU(HomeControlUint),现场电路设备经过自身控制单元通过CAN总线与控制器连接。这样HAS作为一个信息处理系统,为住宅内部各平等设备嵌入式统一控制平台,一方面对现场设备实现信息化,提供信息智能处理和通信能力;另一方面又提供统一的信息交换接口及控制规则,通过信息集成管理不同功能的子系统以及子系统相互间的信息交换,使住宅成为一个有机整体。

2HCU硬件实现

HCU的硬件结构原理如图2所示。控制器选用Intel高性能16位单片机80C196KC,在最小系统基础上,分别扩展了32KB数据存储器和程序存储器。X25045集看门狗定时器、电压监控和E2PROM(512×8bit)于一体,用来存储记忆系统的一些基本参数,如节点个数、每个节点的特征参数、节点标识符及一些与节点相关的联系。串行实时时钟DS1302提供秒、分、小时、日、月、年实时信息,且能根据月份和闰年情况自动调整月份和结束日期。并行芯片8255扩展了4×5键盘接口,为用户设置、查询提供输入接口。点阵图形液晶显示器选用MGL(S)12864,字库由字模提取软件生成,存在EPROM中。

HCU与下位机节点之间选用了规模较小、可靠性高、易于扩展的CAN总线,采用双绞线作为通信介质。CAN总线接口选用了Philips公司生产的独立控制器82C200,其支持CANBUS物理层与数据链路层的所有功能,多主鸨,有成组和广播报文功能,总线访问优先权取决于报文标识符,有极强的错误处理能力,且配置灵活允许局域网扩展。选用总线驱动接口82C250结合光电隔离,提供对总线的差动发送和接收功能,实现各节点之间的电气隔离,以增大通信距离,提高总线瞬间抗干扰能力[3]。

与Ethernet网的连接选用了基于Rabbit2000微处理器及Ethernet芯片开发的Rabbit2000TCP/IP开发工具箱,它是含TCP/IP协议栈的嵌入式开发系统[4],提供了一个带有8位高性能的微处理器工作平台和动态C语言软件开发包。开发板提供1个与RS-232接口、1个与厂商配制的端口(既可用于RS-485,又可用于RS-232)、4个高速电流输出设备、4个数据输入设备、7个定时器、1个实时电池支持时钟和1个10Base-T以太网接口,并提供了TCP/IP协议的全部源代码,实现TCP/IP和RS-232之间相互转换,为现场设备的上网提供了软/硬件平台。

对于现场设备需要开发相应的基于CAN总线的控制单元,这里不作介绍。在底层控制网络中,HCU和现场控制单元分别有自己的ID标志,由于采用CAN标准作为通信协议,与节点在网络的地位相同,于是将HCU虚拟为主机,将现场设备虚拟为从机,响应主机的要求,执行相应流程,各节点之间也可以进行信息交换。

3软件模块与协议

系统软件主由监控、配置、网络管理和网络协议四部分组成,其中监控部分完成对家庭设备运行状态的控制和检测,及时显示且做相关处理,如故障报警、事件提示等。配置部分为用户提供更改系统和设备配置的人机接口,及时提示用户配置步骤及配置过程中的错误,用户可以查询某一子系统的当前状态信息。网络管理帮助用户分析、管理和扩展网络,并进行故障诊断和故障恢复。网络协议实现TCP/IP到HASP(HASProtocol)相互间的转换,主要是数据流关系为TCP/IP到RS-232到CAN三者之间的相互转换。

系统程序首先完成初始化定义,包括最小系统、X25045、DS1302、键盘定义及处理、LCD、CAN总线、Rabbit2000,然后进入循环监控状态。以水表计费简要说明,水表计费节点自动完成计费功能,当用户按下水费键键盘处理程序检测该键按下向水费节点发出费用指令水费节点响应命令返回当前费用控制器显示水费费用;用户使用密码通过Ethernet访问家中HCU发指令访问水费控制器响应且向水费节点发费用指令水费节点返回费用HCU通过Ethernet向用户返回当前水费情况。

网络控制器范文第7篇

关键词:网络拥塞;鲁棒H∞控制;H∞性能指标;状态反馈

中图分类号:TP29 文献标识码:B

文章编号:1004-373X(2009)01-155-03

H∞ Feedback Controller Design for Network Congestion Control Based on Flow Rate

HONG Limin1,QU Baida2

(College of Communication and Control Engineering,Jiangnan University,Wuxi,214122,China)

Abstract:This paper transforms uncertain time-delay system into system′s unmodeling dynamic breadth finitude′s multiplicative uncertainty by frequency domain design method,in order to resolve network congestion control problem in the modern high speed communication networks.According to the robust stabilization and requirement of performance index of system,problems of feedback controller about robust H∞ congestion control of the high speed communication networks which based on flow rate control are converted into the common engineering application problem of mixed-sensitivity,then working out the desirable H∞ controller by the analytic method.The result proves that H∞ feedback controller of congestion control is simple,the goal of preventing congestion and the efficiency of network using maximum by adopting frequency domain design method can be obtained.

Keywords:network congestion;robust H∞ control;H∞ performance index;state feedback

0 引 言

目前比较常用的拥塞控制方法有两种,一种是基于速率控制,源端以一定速率发送数据包,通过网络反馈的信息来调节数据包发生速率;另一种是基于窗口控制,宿端告诉源端以一定窗口宽度发送数据,通过反馈信息调节窗口大小。基于速率的拥塞控制方法以其简单及易于实现性正在ATM等高速网络中得到越来越普遍的应用,也引起了许多学者的研究兴趣。在设计基于速率的拥塞控制反馈控制器时,时滞以及多时滞问题是必须考虑的一个重要因素,目前有许多文章对其进行了探讨。然而使用最多的还是H∞鲁棒控制的方法,如设计基于H∞理论的流速控制器用于解决多源单瓶颈网络中时变不确定多时滞问题[1];通过利用瓶颈的输出速率信息对以往只利用队列期望长度误差信息设计的H∞反馈控制器进行改进,加快了收敛速度减小了跟踪误差[2]。在基于前文的基础上设计多源单瓶颈网络的鲁棒H∞拥塞控制反馈控制器,目的是防止拥塞且使网络达到最大利用效率,以及消除时滞的影响,使系统可鲁棒镇定。

1 问题描述

图1所示为多源单瓶颈网络拥塞控制反馈系统,q(t)≥0表示瓶颈节点的实际数据缓冲队列长度; qe(t)>0为期望数据最大缓冲队列长度;qe:ri(t)≥0为通过拥塞控制反馈控制器调节的各源端数据输出率;ri(t-τi)为瓶颈点的各源数据输入速率;τi表示各源时变不确定时滞,且满足0≤τi(t)≤τm;c(t)为瓶颈点数据输出速率。该系统的动态模型可表示为[3]:

q(t)=∑ni=1ri(t-τi)-c(t)(1)

引理1[4] 给定被控对象为P(s),控制器为K(s),加法不确定性的加权函数为Wq(s),P=P0(1+Wq),规范化不确定性Δ(s),Δ(s)∈ BH∞。

(1) 对于任意对象加性不确定性,系统鲁棒镇定的充要条件是:

① 有一个使图2所示的反馈控制系统对于任意的Δ(s)∈ BH∞都稳定的控制器K;

② (I+KP0) -1KWq∞<1 即(I+KP0) -1KWq∈BH∞;

(2) 对于任意对象乘性不确定性,系统鲁棒镇定的充要条件是:

① 有一个使图3所示的反馈控制系统对于任意的Δ(s)∈ BH∞都稳定的控制器K;

② (I+P0K) -1PKWq∞<1即(I+P0K) -1P0KWq∈BH∞。

图1 网络拥塞控制反馈系统

图2 具有加法不确定性的控制系统

图3 具有乘法不确定性的控制系统

引理2 令P=N1D -11=N2D -12∈RL∞且N2D2=N1D1W,如果P=ND -1∈RH∞,且是右互质分解的,则D -1∈RH∞且可取W=D -1。

据此可对上述反馈系统的P0进行互质分解P0=ND -1,K能镇定P0的集合为:

U+DWV-NW:NU+DV=1

式中:U,V,W均为稳定、正则、实有理函数。

2 H∞拥塞控制反馈控制器的设计

考虑到各源公平性的原则,设ri(t)由以下控制律决定:

ri(t)=K eie(t)+1nK cic(t)(2)

其中e(t)=qe(t)-q(t),则反馈系统框图如图4所示[5]。

图4 反馈系统框图

图4中P(s)代表时滞环节,是多输入单输出系(MISO),其传递函数为P(s)=e -τ1s,…,e -τns;Ke(s)及Kc(s)代表反馈控制器,是单输入多输出系统(SIMO),其传递函数分别为:Ke(s)=[KT e1(s),…,KT en(s)\〗T;Kc(s)=[KT c1(s),…,KT cn(s)]T;R(s)=[RT1(s),…,RTn(s)]T为源端被控输出速率。

2.1 系统的鲁棒可镇定性分析

设G(s)=1se -τ1s,…,e -τns,G0(s)=1s1,…,1,则:

G(s)G0(s)-1=[e -τ1s-1,…,e -τns-1]≤

Wt(jω)

式中:Wt(jω)=[W t1(jω),…,W tn(jω)],且对于笑亍R,0≤τi(t)≤τm,有:

Wn(jω)≥e -jτmω-1(3)

因此,由引理1知,对于上述不确定时滞系统可鲁棒镇定的充要条件是能镇定G0(s)的标称系统,且满足以下H∞性能指标[6]:

Wt(s)G0(s)Ke(s)(1+G0(s)Ke(s)) -1∞≤1(4)

对G0(s)=1/s[1,…,1]作互质分解,设G0(s)=N(s)D(s) -1,其中D(s)=a/(s+a),N(s)=1/(s+a)[1,…,1],a为任意大于0标量。由引理2知对于标称系统可鲁棒镇定的充要条件为反馈控制器满足以下形式:

Ke(s)={\} -1(5)

式中N(s)U(s)+D(s)V(s)=1,从而取U(s)=a/n[1,…,1]T,V(s)=1。

2.2 系统的性能要求分析

对e(t)求导得:

(t)=-∑ni=1K eie(t-τi)-1n∑ni=1K cic(t-τi)+c(t)(6)

即有:

E(s)C(s)=1-1n∑ni=1K ci(s)e -τiss+∑ni=1K ei(s)e -τis(7)

为确保q(t)跟踪qe(t)的稳态误差为0,由上式有∑ni=1K ci(0)=n及∑ni=1K ei(0)∞,考虑到各源公平性可取K ci(0)=1,且知K ei(s)有一极点s=0,从而由 式(5)可知V(0)=N(0)W(0),即W(0)=an[1,…,1]T, 可设W(s)=an[1,…,1]TF(s),显然有F(0)=1,从而:

Ke(s)=an1+sF(s)s+a1-aF(s)s+a[1,…,1]T(8)

由图4可知:

E(s)=qe\ -1+

C(s)\ -1(9)

为使网络达到最大利用效率,E(s)∞应尽量最小,可令1s-1nG0(s)Kc(s)=0,即∑ni=1K ci(s)=n,考虑到各源公平性可取K ci(s)=1,从而为保证网络利用效率,需满足以下H∞性能指标[7]:

γ -1Ws(s)\ -1≤1(10)

式中:Ws(s)是灵敏度权函数,为使控制器Ke(s)出现0极点,同时为了保证E(s)在低频段有较大的衰减度可取Ws(s)=1s2,标量γ>0为选取的H∞性能指标。综合性能指标式(4)和式(10)有:

Wt(s)G0(s)Ke(s)\・

γ -1Ws(s)\ -1∞≤1(11)

这即是一个工程应用中常见的混合灵敏度优化问题。考虑式(5),上述性能指标也可写成如下形式:

γ -1WsD(V-NW)WtN(U+DW)∞≤1(12)

即:

Wt(s)as+a\・

γ -1Ws(s)ss+a\∞≤1(13)

采用频域整形方法根据式(13)可求取F(s),从而得到符合系统设计要求的拥塞控制H∞反馈控制器。

3 实例分析

设网络拥塞控制系统瓶颈点输出速率为c(t)= 1 000+100sin(0.1t),t≥0;期望缓冲队列长度为qe(t)=100;系统最大时滞为τm=0.1;H∞性能指标γ=1。

易知e -jτmω-1≤0.21jω0.1jω+1,笑亍R。从而可以选择Wt(s)=0.21s0.1s+1,又选择灵敏度加权函数Ws(s)=1s2;G0(s)=1s[1,…,1]。考虑到各源的公平性,只需对其中一个源的H∞控制器K et(s)进行研究,于是求得:

K ei(s)=1ss4-1s4-Ψ(s)1+Ψ(s)

式中:Ψ(s)=s2(0.1s+1)(s+2.11)(0.21s3+0.7s2+1.17s+1)(s-2.11)。

4 结 语

研究了多源单瓶颈网络的拥塞控制鲁棒H∞反馈控制器的设计问题,首先建立一个网络拥塞控制系统的动态模型,然后进行H∞拥塞控制反馈控制器的设计,再对其性能要求进行分析,最后通过一个实例表明采用此方法设计的拥塞控制H∞反馈控制器较为简单,且能有效达到防止拥塞及使网络利用效率最大化的目的。

参考文献

[1]Wang L Y,Schwiebert L.Robust Control and Rate Coordination for Efficiency and Faimess in ABR Traffic with Explicit Rate Marking\.Proc.of the American Control Conference\.Chicago,IL,2000:1 975-1 979.

[2]Choi H H,Chung M J.Memoryless H∞ Controller Design for Linear Systems with Delayed State and Control\.Automatica,1995,31(6):917-919.

[3]郑刚,宋永华,谭民.TCP拥塞控制的混杂建模与分析\.控制与决策,2004,19(7):799-803.

[4]谢永芳,黄洋,桂卫华,等.数值界不确定关联大系统分散鲁棒H∞控制\.信息与控制,2005,34(5):523-527.

[5]潘瑜,肖冬荣,张中秋.一种时滞不确定系统的强稳定鲁棒控制器设计\.武汉理工大学学报,2002,26(3):393-396.

[6]Lee Y S,Moon Y S,Kwon W H.Delay-dependent Robust H∞ Control for Uncertain Systems with a State-delay\.Automatica,2004,40(1):65-72.

[7]于之训,陈辉堂,王月娟.基于H∞和μ综合的闭环网络控制系统的设计[J].同济大学学报,2001,29 (3):307-311.

作者简介

洪丽敏 女,1980年出生,河南商城人,硕士研究生。主要研究方向为现代控制技术在网络方面的应用。

网络控制器范文第8篇

关键词: 蜂窝网络; 信道分配; 均衡控制器; 分层架构

中图分类号: TN926?34; TN929.53 文献标识码: A 文章编号: 1004?373X(2016)22?0032?04

0 引 言

随着通信技术的发展,具有海量数据处理性能的蜂窝网络在不同的领域具有较高的应用价值。蜂窝网络规模较大,运行着较多的协议,传递海量信息,对网络信道的可靠性和均衡性要求较高[1?3]。当前的蜂窝网络中,移动具有随机特征,使得蜂窝网络信道到达率、业务应用类型等都具有随机性,出现部分蜂窝网络信道负载过大,资源均衡性较差的缺陷[4?6]。因此,寻求有效的方法,提高蜂窝网络信道资源分配的均衡化,对于增强蜂窝网络的性能具有重要意义。

文献[7]提出了跨层调度和资源分配方案,确保信道吞吐量最高化,实现信道分配均衡化控制,但是在部分信道状态下,调度速率高于互信息量,将导致信道数据包丢失。文献[8]提出一种依据OpenFlow网络的信道均衡控制方法,在信道带宽的约束下,通过失真优化方法获取可分级码流,确保信号传递和接收具有较高的稳定性,但是该方法需要在一定的带宽环境下实施,存在一定的局限性。文献[9]采用时间序列预测算法预测信道资源需求,通过带宽资源预留算法和负载均衡器,实现信道资源均衡化控制,但其存在控制效率低的缺陷。文献[10]分析了虚拟内容服务供应商方案,采用云服务供应商动态租赁信道资源,依据资源使用需求调控信道宽带资源,然而该方法的控制成本较高。

本文依据分层架构和模块化思想,设计并实现蜂窝网络信道分配均衡化控制器,其包括应用层、控制层以及基础设施层。控制器的基础模块和应用模块协同运行,实现网络信道资源的均衡分配。

1 信道分配均衡化控制器的设计与实现

1.1 控制器的总体架构

依据分层架构设计信道分配均衡化控制器包括应用层、控制层以及基础设施层。控制器采用南向接口OpenFlow协议控制蜂窝网络信道资源的转发行为,采用北向接口同应用层中的信道资源调度平台进行通信。蜂窝网络信道分配均衡化控制器的总体结构如图1所示。

基础设施层由信道分配均衡化控制器交换机构成,按照控制器反馈的流表规范对信道资源进行匹配、完成资源的转发和控制。信道分配均衡化控制器交换机的信息存储、流表生成、资源分配方案规划以及资源下发管理都由控制器完成。

控制层中运行蜂窝网络信道分配均衡化控制器的关键部件:控制器,其采用南向接口的OpenFlow协议,对交换机的数据转发过程进行控制。控制层通过REST北向接口为上层信道资源调度平台中的用户提供业务和资源的调用,管理蜂窝网络信道资源的均衡化分配。

应用层中存在OpenStack信道资源调度平台,其通过北向REST接口驱动控制器,对基础设施层中的交换机进行管理,实现总体蜂窝网络信道资源均衡分配的综合控制。

1.2 控制器的功能模块设计

控制器是信道分配均衡化控制器系统的关键,可对不同类型的蜂窝网络信息进行采集和操作。控制器包括基础模块和应用模块,两种模块协同运行,实现网络信道资源的均衡分配。其中:

(1) 基础模块是控制器实现蜂窝网络控制的关键,其负责蜂窝网络信息状态的采集、信道流量的分析、信道流量表的生成和发送等工作。基础模块由流表生成、信息存储、信道资源分配方案规划等模块构成。

(2) 应用模块在控制器启动时,按照不同的需求启动相应信道资源负载均衡以及资源分配均衡等应用模块,应用模块调用基础模块有关的功能和信息,完成信道资源均衡分配功能,同时给应用层提供资源和接口,支持蜂窝网络信道资源均衡调度业务的处理。

1.3 信道分配均衡化控制器的工作逻辑设计

控制器是信道分配均衡化控制器系统的控制中心,工作逻辑决定着控制器功能和性能的优劣,对总体蜂窝网络系统的运行具有重要作用。依据OpenFlow协议的工作原理,对控制器模块间的工作逻辑进行设计,如图2所示。

交换机同控制器相连后,向蜂窝网络设备管理模块进行注册,设备管理模块将交换机的信息保存在信息存储模块中,并塑造采集和传递两个线程,完成交换机数据的操作。

控制器采集线程获取交换机反馈的数据包后,将数据包输入队列排队操作中。采集线程在队列中获取数据包,并将数据包反馈给数据分发模块。

数据分发模块解析数据包,若其内容为设备信息,则将数据包反馈到设备管理模块进行操作;若是管理信息,则将数据包反馈到信道资源均衡分配方案规划模块中进行操作;若是网络数据,将数据包反馈到链路发现模块中,激发该模块的运行。

链路发现模块采集到数据包后,则运行链路发现过程,将数据包反馈给信道资源下发管理模块,信道资源下发管理模块将数据包封装成信息,同时将信息反馈给交换机。每完成一次链路发现过程,链路发现模块将链路信息保存在信息存储模块中,并将链路信息传输到网络拓扑模块中进行操作。

网络拓扑模块按照接收的链路信息塑造蜂窝网络拓扑结构,同时运算信道资源分配路径,并将信道资源分配路径信息保存在信息存储模块中,为其他模块提供分析依据。

资源分配方案规划模块全面分析蜂窝网络信息和控制信息,获取蜂窝网络信道资源分配方案,并将该信道资源分配方案传输给流表生成模块,获取相关的静态和动态流表。下发管理模块对流表以及发送给交换机的信息进行封装,并将封装好的数据包反馈给交换机的传递线程中进行排队。控制器各个模块间协调运行,确保控制器对蜂窝网络信道资源进行均衡分配,为网络的顺利运行提供保障。

1.4 控制器的接口体系设计

控制器通过接口体系同基层设施层、应用平面层以及控制平面层相连。控制器的接口体系由南向接口和北向接口构成。控制器通过OpenFlow协议控制下的南向接口,同底层网络设施交流资源调度信息;蜂窝网络信道业务通过北向REST接口将资源申请命令反馈给控制器,促使控制器管理底层设备完成资源数据的转发,实现信道资源的均衡分配。

1.4.1 控制器通过南向接口同底层网络设施通信

采用OpenFlow协议涉及南向接口,实现控制器同底层交换机交流信息。数据包通过南向接口被传输到控制器中进行操作,控制器按照底层网络拓扑以及交换机情况,运算出网络信道操作流程和流表,并将运算结果通过南向接口反馈给交换机。交换机按照OpenFlow协议对控制器反馈的流表信息进行解析和存储,当出现新数据时,将其同存储的流表进行对比,增强交换机转发数据的效率,提高网络信道资源分配效率。

OpenFlow协议规定控制器同交换机通过TCP完成通信,端口为6633,并且设置交换机和控制器通信的消息类型结构,消息类型包括交换机和控制器实现连接时采用的HELLO,ECHO以及VENDOR等消息;控制器询问交换机信息以及传递管理信息的FEATURES和CONFIG消息,还描述了其他控制器对交换机的控制信息。这些信息类型实现了控制器同交换机间的交互,确保控制器对总体蜂窝网络信道资源均衡分配控制的准确性 。

1.4.2 控制器采用北向接口同上层业务通信

上层业务应用通过控制器的北向接口,驱动控制器对蜂窝网络信道资源进行调度,实现网络信道资源对上层应用的均衡化。采用REST API方案设计控制器北向接口,具有较强的关联性和可寻址性。控制器依据北向接口REST同上层融合蜂窝网络信道资源分配平台OpenStack间进行通信,实现管理平台通过控制器对底层网络资源的编排和调度,完成信道资源的均衡控制。

控制器与蜂窝网络信道资源分配平台整合的架构如图3所示。

2 实验分析

为了验证本文设计的控制器的性能优劣,进行相关的实验分析。实验对某多用户、单小区蜂窝网络信道资源使用情况进行分析。实验从网络信道吞吐量、平均系统公平性指数、用户平均中断概率以及信道负载率四个指标,分析本文控制器、多信道调度方法以及跨层调度方法的性能。

分析图4可以看出,随着蜂窝网络信号质量的提高,也就是平均SNR的增加,三种控制方法下的信道吞吐量都不断增加,并且本文控制方法下的信道吞吐量明显高于其他两种控制方法。

实验通过公平性指数评估两种方法下信道的公平性,进而分析不同蜂窝网络用户的平均吞吐量变化。如图5所示。公平性指数表达式为:

[JE=k=1Krk2Kk=1Kr2k]

式中:JE为公平性指数;[rk]表示第k个用户的速率;k表示当前用户;K表示总用户数量。

分析图5可得,相对于其他两种控制方法,本文控制器下的信道资源均衡控制的平均系统公平性最高,本文方法可实现最高的平均系统公平性主要是因为本文方法依据分层架构和模块化思想,通过应用层、控制层以及基础设施层的协同运行,实现网络信道资源的均衡分配,确保用户间网络信道资源使用的长期公平性。

三种控制方法下的信道平均中断概率如图6所示。

分析图6可得,当信道的平均信号质量SNR低于17 dB时,本文控制方法概率的信道平均中断概率略高于其他两种控制方法,当信道平均信号质量SNR高于17 dB时,随着信道平均信号质量的增加,本文控制方法下的信道平均中断概率远远低于其他两种控制方法,并且跨层调度方法下的信道平均中断概率迅速增加,本文方法的平均中断概率始终保持在较低的水平。主要因为本文控制方法可确保用户资源调度过程处于平稳状态,使得总体信道具有较低的平均中断概率。而跨层调度方法,对用户未设置最高速率约束,若用户处于资源较多的环境下,则具有较高的数据速率,使得信道平均中断概率迅速提升。信道负载率越低,网络信道控制的时耗越高,网络趋于平稳的时间越长。因此,实验对比分析本文控方法和跨层调度方法下的信道负载率情况如图7所示。

从图7中可以看出,本文控制方法下的信道负载率低于跨层调度方法,并且随着节点数量的增加,两种方法间的差距逐渐增加。说明本文控制方法具有较高的适应性,鲁棒性较高。

3 结 论

本文依据分层架构和模块化思想,设计并实现蜂窝网络信道分配均衡化控制器,其包括应用层、控制层以及基础设施层。控制器的基础模块和应用模块协同运行,实现网络信道资源的均衡分配。控制器通过OpenFlow协议控制下的南向接口同底层网络设备交流信息;蜂窝网络信道业务通过REST接口将资源申请命令反馈给控制器,促使控制器管理底层设备完成资源数据的转发,确保信道资源分配的均衡化。

实验结果说明,所设计控制器下的网络信道吞吐量、平均系统公平性指数、用户平均中断概率以及信道负载率四个指标都较优秀,取得了令人满意的结果。

参考文献

[1] 朱进,王林鹏,奚宏生.转移概率未知下具有双链的网络控制系统控制器设计[J].控制与决策,2013,28(4):489?494.

[2] 刘伟,汪志鸣,倪明康.基于模型的网络化控制系统量化反馈镇定[J].控制与决策,2013,28(2):285?288.

[3] 刘西蒙,刘光军,马建峰,等.可伸缩视频流的安全网络编码方案[J].通信学报,2013,34(5):184?191.

[4] 李乔,何慧,张宏莉.内容分发网络研究[J].电子学报,2013,41(8):1560?1568.

[5] 卢冀,张之义,王俊芳,等.基于OpenFlow网络的可分级视频流分发方法[J].无线电工程,2014,44(1):1?3.

[6] 冯健,倪明,郭自刚,等.基于视频流的云桌面设计与实现[J].计算机工程,2013,39(10):37?41.

[7] 王岭,张世乐,陆伟,等.基于云计算框架的视频转码系统[J].计算机应用与软件,2013,30(3):111?113.

[8] DE CICCO L, MASCOLO S, CALAMITA D. A resource allocation controller for cloud?based adaptive video streaming [C]// Proceedings of 2013 IEEE Inter?national Conference on Communications Workshops(ICC). [S.l.]: IEEE, 2013: 723?727.

[9] 邓维,刘方明,金海,等.云计算数据中心的新能源应用:研究现状与趋势[J].计算机学报,2013,36(3):582?598.

网络控制器范文第9篇

关键词:PLC;网络

中图分类号:TP273 文献标识码:A

为提高控制性能,往往要把地理上处于不同位置的PLC与PLC、PLC与计算机或PLC与智能装置通过传输介质连接起来,实现通讯,可提高PLC的控制能力及控制范围,同时还便于使用计算机进行管理和对控制数据进行处理,以构成功能更强、性能更好的控制系统,这一般称为PLC联网。PLC联网后,还可进行网与网的互联,以组成更为复杂的系统。

1 可编程序控制器网络

在对PLC产品资料广泛分析和PLC实际应用的基础上,下面对主流厂家的可编程序控制器通讯网络作出分析介绍。

1.1OMRON公司的PLC网络

OMRON PLC网络类型较多,可以适用于各种层次工业自动化网络的不同需要。

Ethernet网(以太网)属于大型网,它的信息处理功能很强,是OMRON的信息管理高层网络。以太网支持FINS协议,使用FINS命令可以进行FINS通讯、TCP/IP和UDP/lP的Socket (接驳)服务、FTP服务。通过以太网,OMRON的PLC可与国际互联网连接,实现最为广泛的节点间信息的直接交换。

SYSMAC NET网属于大型网,是光纤环网。使用C模式或CV模式 (FINS) 指令进行信息通讯。主要功能有大容量数据链接和节点间信息通讯。适用于地理范围广、控制区域大的场合,是一种大型集散控制的工业自动化网络。

SYSMAC Link网属于中型网,采用总线结构,使用C模式或CV模式指令进行信息通讯。主要功能有大容量数据链接和节点间信息通讯。是适用于中规模的集中管理、分散控制的工业自动化网络。

Controller Link网(控制器网)是SYSMAC Link网的简化,规模要小一些,但实现简单。通讯速率快,距离长,既有线缆系统又有光缆系统。其功能与SYSMAC Link网大致相同。

CompoBus/D是一种开放、多主控的器件网。开放性是其特色,它采用了美国AB公司制定的Device Net通讯规约,其它厂家的PLC等控制设备,只要符合Device Net标准,就可以接入其中。主要功能有远程开关量和模拟量的I/O控制及信息通讯。这是一种较为理想的控制功能齐全、配置灵活、实现方便的分散控制网络。

CompoBus/S也为器件网,可实现一种高速ON/OFF系统控制总线,使用CompoBus/S专用通讯协议。CompoBus/S的功能虽不及CompoBus/D,但它实现简单,小型机 (CQM1H)也可作主站,通讯速度更快,当降低速率后也可挂模拟量。主要用于远程开关量的I/O控制。

HOST Link网是OMRON较早推出,使用较多的一种网。上位计算机使用HOST通讯协议与各台PLC通讯,可以对网中的各台PLC进行管理与监控,是适用于集中管理、分散控制的工业自动化网络。

PC Link网的主要功能是各台PLC建立数据链接(容量较小),实现数据信息共享,它适用于控制范围较大,需要多台PLC参与控制且控制环节相互关联的场合。

Remote I/O网实际上是PLC机I/O点的远程扩展,适用于工业自动化的现场控制。

综上所述,目前OMRON的网络主要可分为信息层、控制层和器件层这三个网络层次(图1):Ethernet(信息层),Controller Link(控制器层),CompoBus/D/S(器件层)。这三种网络的发展势头最为强劲,新的器件、新的功能和新的技术不断推出和充实,它们的应用领域日渐扩大,用户越来越多。因此,学习和掌握OMRON PC网络时,建议主要关注这三种主流网络。OMRON的HOST Link、PC Link、Remote I/O网推出时间较早,多以老机型为主。

1.2SIEMENS公司的PLC网络

SIEMENS公司的PLC网络SIMATIC NET是一个对外开放的通讯系统,具有广泛的应用领域。SIEMENS的网络层次结构由四个层次、三级总线复合而成,如图2所示。

四个层次从下到上依次为:执行器与传感器级、现场级、车间级、管理级。

三级总线从下到上依次为:AS-I总线,PROFIBUS总线以及MPI网络,工业以太网。

(1)AS-I

最底一级为AS-I(Actuator-Sensor Interface)总线。它是用于连接执行器、传感器、驱动器等现场器件,将信号传输至控制器实现通讯的总线标准,扫描时间为5ms,传输媒体为未屏蔽的双绞线,线路长度为300m,最多为31个从站。

(2)PROFIBUS

中间一级是PROFIBUS总线,它是一种工业现场总线,采用数字通讯协议,用于仪表和控制器的一种开放、全数字化、双向、多站、分布式I/O设备(远程I/O)的通讯系统,是应用于车间级和现场级的控制网络。应用了混合介质的传输技术以及令牌和主从的逻辑拓扑,使用RS-485标准双绞线,适合多段、远距离通讯。PROFIBUS网络常有一个主站和几个I/O从站。其传输媒体为屏蔽的双绞线(最长9.6km)或光缆(最长90km),最多可接127个从站。

同属于中间一级的MPI(Multi-Point Interface) 即多点接口,可以是主/主协议或主/从协议,是一种适用于小范围、少数站点间通讯的网络。在网络结构中属于车间级和现场级。它适用于SIMATIC S7/M7和C7系统,多用于对其编程,连接上位机和少量PLC之间近距离通讯。MPI网络是一种总线型网络,可以用来连接多个编程设备、操作面板和SIMATIC PLC(如S7-300/S7-400系列,也包括S7-200系列)。

(3)工业以太网(Industrial Ethernet)。

最高一级为工业以太网,使用通用协议,是依据IEEE 802.3标准建立的单元级和管理级的控制网络,利用CSMA/CD(载波监听多路访问/冲突检测)进行设备访问,负责传送生产管理信息。网络规模可达1024站,长度可达1.5km(电气网络)或200km(光学网络)。在同轴电缆、光纤以及屏蔽双绞线上进行传输,速率为100 Mbps,属于快速以太网。

在这一网络体系中,PROFIBUS总线是目前最成功的现场总线之一,己得到了广泛的应用。它是不依赖生产厂家的、开放的现场总线,各种各样的自动化设备均可通过同样的接换信息。

1.3Modicon的PLC网络

为了实现开放性的、基于标准化的联网和现场总线连接,Modicon TSX Quantum系列PLC提供多种解决方案。下面简介几种常用的方案。

(1)Remote I/O

在每个远程站中,有一个远程I/O(RIO)适配器通过同轴电缆与控制器中的RIO处理器通讯。RIO适配器通过I/O机架背板总线从I/O模块接收、发送数据,并通过RIO同轴电缆从控制器接收、发送数据。每个RIO适配器上均带有一个设定远程站地址的DIP开关。

根据站中的I/O系列和控制器中RIO处理器的类型,可选用不同的RIO适配器接口,

(2)Modbus网络

Modbus是一个事实上的工业标准主/从协议,任何计算机串行端口支持在线编程或数据采集,而且连接费用最低。所有Quantum CPU上均有RS-232的Modbus通讯口。

Modbus可用在只有两台装置的简单的点对点控制方式,或用在具有247台从设备的网络结构中。后者Modbus网络有一个主设备,从节点可以通过四线双绞电缆进行连接,最远可达15000英尺,也可以通过公共载体(电话线、无线电微波)进行远程连接。因为是一个主从网络,所有的通讯都是由一个Modbus主机来发送,在大于50英尺的长距离应用中,需要采用调制解调器。

(3)Modbus Plus网络

Modbus Plus是一个本地网络,兼有高速、对等通讯和容易安装等特性。这一局域网络允许主计算机、可编程序控制器和其它数据源,通过低价双绞线电缆或光缆,在整个工厂以对等方式进行通讯。Modbus Plus作为一个令牌传递网络以1兆波特率通讯,快速访问过程数据。每台Quantum CPU 控制器包括Modbus和ModbusPlus通讯口,需要使用140 NOM2xx00 Modbus Plus网络模块。

典型应用包括:在控制器之间进行数据传送;在控制器和主计算机之间进行数据传送;对控制器编程;从主机上对程序进行装入/转储/归档。

(4)TCP/IP Ethernet

Quantum TCP/IP Modbus Ethernet模块兼有三种开放的、通用的网络标准:Ethernet,TCP/IP和Modbus。

Ethernet在全世界范围内得到大量的第三方产品和服务的支持。TCP/IP是事实上的标准协议,也是正在进行的Internet技术革新的基础协议。Modbus的简单化和灵活性使其成为事实上的工业网络协议,有第三方产品的广泛支持。

图3是一个较为典型的Ethernet拓扑配置。以太网节点通过以太网集线器与基干线路实现连接,基干线路是覆盖很大距离的同轴导线或光缆。

1.4A-B公司的PLC网络

A-B(Allen-Bradley)公司是美国最大的PLC制造商,占据全美市场份额的45%,产品在国际市场上很有竞争力。它的网络品种很多,有远程I/O链路、DH+网、管理信息网、DH485网等。

A-B公司的PLC网络采用的是三级总线复合型拓扑结构。最底一级为远程I/O系统,负责收集现场信息,驱动执行器,在远程I/O系统中配置周期I/O通讯机制。中间一级为高速数据通道DH+(或DH,DHⅡ),它负责过程监控,在高速数据通道中配置令牌总线通讯协议。最高一级可选用Ethernet(以太网)或MAP网,这一级负责生产管理。在Ethernet网中配置以太网协议,在MAP网中配置MAP规约。

1.5GE公司的PLC网络

美国通用电气公司(GE)与日本的数控之王FANUC公司合并成立了GE-FANUC公司,它的PLC产品在美国市场所占份额居第三位。GE-FANUC的PLC网络产品是在标准化方面进展最快的产品。GE-FANUC公司的PLC网络有两种结构:一种是四级总线复合型拓扑结构,一种是二级总线复合型拓扑结构。网络最高一级子网为GenetMAP宽带局域网,采用MAP3.0协议,通讯速度10Mb/s,用于传输生产管理信息。Genius网是GE二级结构的底层子网,负责与现场单元交换数据,采用GE-FANUC专用协议。

1.6三菱公司的MELSEC NET网络

三菱公司是日本最大的PLC生产厂家,它的MELSEC NET网络是为MELSEC可编程序控制器配备开发的数据通讯网络。其主控站通过光缆或同轴电缆可与64个本地从站或远程I/O站进行数据通讯,而每一个从站又可以作为第三层数据通讯系统的主控站,与这一层的64个从站或远程I/O进行通讯。MELSEC NET具有三层数据通讯的能力,该网络能配置成一个很大的数据通讯系统。

MELSEC NET网络还是一种高可靠性的系统,数据通讯有两个环路:主环路和副环路。两个环路均可用作主环路,但在一个数据通讯系统中仅允许有一个主环路。正在通讯的主环路若发生电缆断路,从站故障,回送功能(Loopback function)将通讯从主回路切换到副回路,并将从站故障断开,以保证整个通讯系统继续运行。也就是说,只要主环路中哪怕一处发生断路,数据通讯继续由副环路进行。

2 PLC网络结构的共同特点

通过上面的分析可以看到,PLC网络通常采用三级或四级子网构成的复合型拓扑结构,各级子网中配置不同的通讯协议,以适应不同的通讯要求。

(1) 在PLC网络中配置的通讯协议分两类:一类是通用协议,一类是公司专用协议。

(2) 在PLC网络的高层子网中配置的通用协议主要有两种,一种是MAP规约,一种是Ethernet协议,这反映了PLC网络标准化与通用化的趋势。PLC网的互连,PLC网与其它局域网的互连将通过高层进行。

(3) 在PLC网络的低层子网及中间层子网采用公司专用协议。其最底层由于传递过程数据及控制命令,对实时性要求较高,常采用周期I/O方式通讯;中间层负责传送监控信息,信息长度位于过程数据及管理信息之间,对实时性要求也比较高,其通讯协议常用令牌方式控制通讯,也有采用主从方式控制通讯的。

(4) 个人计算机加入不同级别的子网,必须按所连入的子网配置通讯模板,并按该级子网配置的通讯协议编制用户程序,一般在PLC中不需要编制程序。

(5) PLC网络低层子网对实时性要求较高,其采用的协议大多为坍塌结构,只有物理层、链路层及应用层。高层子网传送管理信息,与普通网络性质接近,高层子网的通讯协议大多为7层。

以上得出PLC通讯网络的共同特点,可为PLC联网的实际应用提供指导和参考性意见。

参考文献

[1]Schneider Automation,Inc.Modicon TSX Quantum 硬件手册,2002.

[2]孙平.可编程控制器原理及应用[M].北京:高等教育出版社,2003.

网络控制器范文第10篇

【关键词】PID控制;BP神经网络;模糊PID控制

Abstruct:PID control are widely used in industrial process control,but the traditional PID control because of its control parameters are fixed,and it is difficult to adjust its parameters online.So this paper studies a new adaptive fuzzy PID control method,to solve problem without the ability to learn,and put forward a kind of adaptive fuzzy control method based on BP neural network in this paper.It is the effective combination of fuzzy control,neural network and PID control.Simulation results show that this fuzzy PID control method based on BP neural network has good control effect.

Keywords:PID control;BP neural network;Fuzzy PID control

1.引言

常规PID在控制领域被广泛应用,利用数学算法来整定参数。而且随着控制系统的复杂,被控对象很难建立数学模型,人们开始探索新的控制方式。模糊控制不要求掌握被控对象的精确的数学模型,根据人工控制规则组织控制决策表,然后由该表决定控制量的大小。在一般的模糊系统设计中,规则是由经验丰富的专业人员以语言的方式表达出来的。但对于某些问题即使是很有经验的专业人员也很难将他们的经验总结、归纳为一些比较明确而简化的规则。在这种情况下,就可以应用神经网络的方法,依靠BP神经网络的自学习功能,实现模糊控制的神经、模糊融合技术,并借助其并行分布的结构来估计输入到输出的映射关系,直接从原始的工作数据中归纳出若干控制规则。从而为模糊系统建立起行之有效的决策规则。

2.PID控制器原理

2.1 PID控制的微分方程

PID控制器是一种线性控制器,它将给定值r(t)与实际输出值c(t)的偏差的比例(p)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。

式中:

2.2 PID控制器各环节的作用

(1)比例环节:及时成比例地反应控制系统的偏差信号e(t),偏差一旦产生,控制器立即产生控制作用以减小偏差。

(2)积分环节:积分作用会使系统稳定性下降,Kd大会使系统不稳定,但能消除静态误差。

(3)微分环节:能反应偏差信号的变化趋势,并能在偏差信号值变得太大之前,在系统中引入一个早期修正信号,从而加快系统的动作速度,减小调节时间。Kd偏大时,超调较大,调节时间短;Kd偏小时,超调量也较大,调节时间长;只有Kd合适时才能超调小,时间短。

3.BP神经网络与模糊控制

模糊控制是运用语言归纳操作人员的控制策略,运用变量和模糊集合理论形成控制算法的一种控制。如何让机器像人一样识别、理解模糊规则并进行模糊逻辑推理,最终得出新的结论并实现自动控制是模糊控制研究的主要内容。模糊控制器的基本结构如图1所示。

图1 模糊控制结构

人工神经网络是由大量人工神经元经广泛互连二组成的,它可用来模拟脑神经系统的结构和功能。人工神经网络可以看成是以人工神经元为节点,用有向加权弧连接起来的有向图。BP网络是一种利用误差反向传播训练算法的神经网络,是一种有隐含层的多层前馈网络,系统地解决了多层网络中隐含单元连接权的学习问题。BP学习算法的基本原理是梯度最速下降法,它的中心思想是调整权值使网络总误差最小。也就是采用梯度搜索技术,以期使网络的实际输出值与期望输出值的误差均方值为最小。网络学习过程是一种误差边向后传播边修正权系数的过程。其结构如图2所示。

图2中隐含层第一层神经元为7个,分别对应7个模糊子集:NB、NM、NS、ZO、PS、PM、PB。第二层49个神经元代表49条规则。第三层7个神经元代表输出的7个模糊子集。模糊控制不依靠对象的数学模型,但模糊规则的建立需要人工经验。采用BP算法对工程经验和专家经验的模糊规则进行训练,其实就是把模糊规则用神经网络来表示,即经过神经网络的学习,将模糊规则以加权系数的形式表现出来,规则的生成就转化为加权系数的确定和修改。

神经网络是大规模并行运算,但由于网络结构复杂,训练和学习需要大量的时间,所以目前还无法实现实时控制。在具体应用中,我们是先离线将神经网络的各层权值和阈值训练出来,将其参数固定下来,然后将有系统检测、计算得到的误差变化直接代入非线性映射关系中,由计算机算出控制量,再用作被控对象。在matlab下以、、为输出的BP网络仿真训练如图3、图4、图5所示。

4.模糊PID控制器的原理与仿真

对于某一BP神经网络控制系统,其中内部变化及被控对象的数学模型为:

利用模糊控制对PID参数实现在线调节,原理如图6。

图6 模糊PID控制原理图

采用Z-N法和试凑法相结合,借助MATLAB的SIMULINK平台,对被控对象进行常规PID仿真。参数值:kp=15,ki=6,kd=0.05。如图7。作为比较,建立模糊PID控制器的仿真模型如图8。

图9、图10分别为被控对象G(s)在阶跃输入下常规PID和模糊PID仿真结果的比较。

经过仿真发现,常规PID控制缺点是超调量大,调节时间长,动态性能差。优点是控制精度高,稳定性能好。模糊控制动态性能很好,上升速度快,基本无超调。但由于模糊化所造成的稳态误差,在没有积分环节的情况下很难消除,故稳态性能差。模糊PID继承了二者的优点,摒弃二者缺点,具有更全面优良的控制性能。

5.结论

针对大滞后、慢时变、非线性的复杂系统,提出了一种基于BP神经网络的模糊PID控制算法,该算法不依赖被控对象的精确数学模型,可实现在线自调整模糊规则,从而增强了模糊控制器的自学习能力。通过算法的仿真研究,验证了算法的可行性。

参考文献

[1]李华.计算机控制系统[M].北京:机械工业出版社,2007.

[2]高隽.人工神经网络原理及仿真实例[M].北京:机械工业出版社,2007.

[3]蔡自兴.智能控制[M].北京:电子工业出版社,2003.

[4]李国勇.智能控制及其MATLAB实现[M].北京:电子工业出版社,2005.

[5]张德丰.MATLAB神经网络应用设计[M].北京:机械工业出版社,2009.

[6]刘金琨.先进PID控制及其MATLAB仿真[M].北京:电子工业出版社,2003.

[7]刘玲.三容水箱的单神经元自适应PID控制研究[J].信息技术,2005,3(8):32-137.

[8]张咏军,王航宇.基于神经网络的温度模糊PID控制器设计[J].现代电子技术,2008(7):133-135.

上一篇:房地产开发成本范文 下一篇:控制工程基础范文