Truetime网络仿真_第1页
Truetime网络仿真_第2页
Truetime网络仿真_第3页
Truetime网络仿真_第4页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络控制系统的调度研究与仿真(Truetime 工具)1. 节点的驱动方式网络控制系统中的传感器一般采用时钟驱动, 传感器的时钟即为系统的时钟, 而控制器和执行器既可以是时钟驱动, 也可以是事件驱动。 但事件驱动相比于时钟驱动具有以下优点:(1) 控制器或执行器为事件驱动方式时,从源节点(传感器或控制器)发送的数据一旦到达目标节点 (控制器或执行器) 便马上执行, 而在时钟驱动方式时控制器或执行器的数据被执行要等到规定的时间点,因此事件驱动方式客观上减少了网络诱导时延;(2) 控制器或执行器为事件驱动方式时,避免了控制器或执行器为时钟驱动方式时与传感器时钟同步的困难;(3) 控制器或执行器采用

2、事件驱动方式时,避免了控制器或执行器为时钟驱动方式时容易出现的空采样和数据丢失,提高了反馈数据的利用率。事件驱动相对于时钟驱动也有一定缺点:(1) 在实际运用中事件驱动较难实现。(2) 部分实际的网络控制系统不支持事件驱动方式。2. TrueTime 工具箱结构与功能Truetime 是由瑞典Lund 工学院 Henriksson 等人开发的一个基于Matlab/Simulink 的实时网络控制系统的仿真工具箱,为NCS 理论的仿真研究提供了简易可行、功能齐全的手段,拜托了软件编程实现特定的网络通讯协议、通信延迟所带来的困难,支持控制与实时调度同时仿真可以方便地仿真实时系统中的资源调度问题。T

3、rueTime 仿真软件主要包括两个基本模块:内核模块(TrueTime Kernel )和网络模块(TrueTime Network ),如图 1 所示。内核模块可以是时间驱动也可以是事件驱动的,它主要包含了一个实时内核,A/D ,D/A转换端口,与网络模块连接的信号端口(信号接收(Rcv ),信号发送(Snd),实时调度(schedule)显示端口等,调度器与监视器的输出用于显示仿真过程中公共资源(CPU、监控器、网络)的分配,此外,它还有一个外部中断通道(Interrupts )可以处理外部中断。任务和中断处理器的执行需要通过用户自定义函数来实现。调度策略使用一个优先权函数来决定任务的属

4、性。1/27图 1 Truetime 工具箱网络模块是事件驱动的,当有消息进入或离开网络时它便执行。一条消息包含的信息有发送和接收节点号,用户数据(如测量信号和控制信号),消息的长度和其他可选的实时属性(如优先级或最终时限等)。网络模块包含两个信号端口(信号接收(Rcv),信号发送(Snd),以及一个实时调度(schedule)显示端口。其中收发信号端口可以通过Matlab 模块扩充至多个接口,TrueTime 中预定义了多种调度策略,包括固定优先级(Fixed Priority ),单调速率( RM , Rate Monotonic ),截止期单调( DM , Dead line Monot

5、onic ),最小截止期优 先 ( EDF , Earliest Dead line First ), 同 时 , 它 还 有 多 种 介 质 访 问 控 制 协 议(CSMA/CD,CSMA/CA,Round Robin,FDMA或 TDMA )和相应的参数可以选择,如图2 所示。图 2 Truetime 网络模块Network number :网络模块的数量。Number of nodes :连接在网络模块的节点数量。Data rate (bits /s): 网络传输速率。Minimum frame size(bits ) :协议的最小结构长度。Pre-processing delay (

6、 s) :信息在网络接口上的发送时延。Post-processing delay (s):信息在网络接口上的接收时延。Loss probability (01) :丢包率。利用 TrueTime 仿真软件,网络控制系统中的各个处理单元(包括传感器、控制器和执行器)都可以由计算机模块构建, 而网络控制系统的实时网络可以由所需协议的网络模块来构建,另外,再结合 Matlab/Simulink 的其他控制模块,就可以简便而又快速的构建一个实2/27时的网络控制系统。利用 TrueTime 仿真软件包的优点在于:( 1)由于该仿真软件中两个基本模块具有通用性,在构建各个处理单元时只需选用其相应的接口功

7、能进行连接即可,因此大大加快模型构建的速度。( 2)该仿真软件可以比较方便模拟各种实时调度策略,并通过 Scope 可以很方便地观察各个任务的调度情况和对象的输出情况。( 3)在网络模块中,可以很方便的模拟数据传输率、数据包的大小和丢包率等网络参数,有利于分析各类参数对网络控制系统的性能影响。使用 TrueTime 进行仿真时, 首先要对网络控制系统中的内核模块TrueTime Kernel 和网络模块 TrueTime Network 以及各个节点进行初始化,在初始化中需要完成以下工作:1. 初始化功能块内核,设置功能块输入、输出端口的数目和调度策略。2. 定义消息函数,并根据节点采用的驱动

8、方式,设置不同的消息调度策略。对于时钟驱动的节点,调用 ttCreatPeriodicTask 函数,设置周期性的任务调度策略,以实现3.定时采样功能。对于事件驱动的节点,调用ttCreateInterruptHandler函数,设置中断式消息调度策略,使节点在接受到网络数据后触发相应的消息。初始化网络端口,设置节点对应的网络端口代号。控制网络功能由TrueTimeNetwork功能块实现。网络类型、节点数、传输速率以及丢包率等参数可以通过TrueTime Network 功能块的设置窗口进行设置。具体的参数选项根据网络类型的不同而不同。表1伪码举例伪码名称功能ttAnalogIn从输入通道取

9、值ttAnalogOut设定输出通道值ttSendMsg在网络上发送信息ttGetMsg从网络输入队列中获取信息ttWait等一个事件ttCreateTimer在指定时间触发中断句柄ttSetpriority改变任务优先级ttCurrentTime获取当前系统时间表 2 TrueTime 核心模块接口功能接口功能A/D把从外界接收的模拟信息转换成数字信息Interrupts为该模块提供中断句柄Rcv接收数字信息D/A把模拟信息转换成数字信息输出Snd发送数字信息Schedule和“ Monitors ”查看仿真过程中系统资源的分配情况Monitors和“ Schedule”查看仿真过程中系统资

10、源的分配情况P 如果需要,可以接通电池( TrueTime 提供电池模块)TrueTime Network 模块提供了3 个接口来进行数据的传递或者监控系统的运行,其功能如表 3 所示。接口Snd接收由表 3 TrueTime 网络模块接口功能功能TrueTime Kernel 模块的 Snd 端口发送的数字信息3/27Rcv发送数字信息至TrueTime Kernel 模块的 Rcv 端口Schedule查看仿真过程中系统资源的分配情况上述 2 个模块均为事件驱动,包括内部事件和外部事件。内部事件通常是由时钟中断触发的,如时间队列释放一个任务或是计时终结都会引发时钟中断。 而外部事件主要是和

11、网络模块的外部中断通道有关,当相应的通道的信号值改变就会触发中断。除了计算机模块的A/D 转换借口的输入信号是连续时间信号外,这两个模块所有端口的输入都是离散时间信号,输出也都是离散时间信号。3. 仿真举例根据节点不同的工作方式,可以得到不同的系统离散时间模型。为了对网络控制系统进行建模,首先对系统作如下假设:1. 传感器节点采用时间驱动方式, 对被控对象的输出进行等周期采样, 采样周期为 h;2. 控制器节点和执行器节点都采用事件驱动方式, 即信息的到达时间即为响应节点的动作时间。控制系统将传感器、控制器和执行器作为系统的3 个节点分别用一个TrueTimeKernel模块仿真, 传感器节点

12、采用时间驱动方式,它包含了一个周期性任务,将定期采样的信号通过网络传送到控制器节点;控制器和执行器节点采用事件驱动方式,控制节点处理控制信号并将结果送至执行器节点,执行器节点执行控制信号并输出结果。该网络控制系统的仿真模型如图3 所示。4/27图 3 网络控制系统仿真模型5/27图 4 参数设置界面图 5 以太网下的系统输出图 6 令牌网下的系统输出图 7 设备网下的系统输出网络传输过程中的数据丢失是影响网络控制系统性能的另外一个重要的因素,通过设定不同的丢包率来研究其对系统性能的影响。6/27图 8 参数设置界面无丢包:图 9 系统的输入和输出丢包率 0.1:7/27图 10 系统的输入和输

13、出丢包率 0.15:图 11 系统的输入和输出丢包率 0.2:图 12 系统的输入和输出丢包率越大, 对系统性能的影响越大,当丢包率达到一定程度时,就会使系统不再稳定。( 1)在令牌网下,传输速率为1.5M :8/27图 13 系统响应曲线(无冲突、干扰和数据丢失)网络干扰节点占网络资源的20%情况下,调度策略为固定优先级(Fixed Priority ),系统的输出和网络资源调度情况:图 14 系统响应曲线( 2)在令牌网下,传输速率为93.75Kbit/s ,调度策略为固定优先级(Fixed Priority ):图 15 系统响应曲线9/27图 16 网络资源调度网络干扰节点占网络资源的

14、 20%情况下,系统的输出和网络资源调度情况,调度策略为固定优先级( Fixed Priority ):图 14 系统响应曲线图 15 网络资源调度( 3)在令牌网下,传输速率为93.75Kbit/s ,网络干扰节点占网络资源的20%、丢包率为 10%情况下,调度策略为固定优先级(Fixed Priority ),系统的输出和网络资源调度情况:10/27图 16 系统响应曲线图 18 网络资源调度在令牌网下, 传输速率为93.75Kbit/s ,网络干扰节点占网络资源的20%、丢包率为10%情况下,系统的输出和网络资源调度情况,调度策略为PrioRM (单调速率):图 19 系统响应曲线11/

15、27图 20 网络资源调度在令牌网下, 传输速率为93.75Kbit/s ,网络干扰节点占网络资源的20%、丢包率为10%情况下,系统的输出和网络资源调度情况,调度策略为PrioEDF :图 20 系统响应曲线图 21 网络资源调度在令牌网下, 传输速率为93.75Kbit/s ,网络干扰节点占网络资源的20%、丢包率为10%情况下,系统的输出和网络资源调度情况,调度策略为PrioDM :12/27图 20 系统响应曲线图 21 网络资源调度在网络控制系统中, 不同的网络传输协议,传输速率、干扰率、数据包的丢失率以及数据包的大小都会影响到网络控制性能, 对于多任务的控制系统调度策略对控制性能也

16、有很大的影响。调度策略对控制系统性能的影响。网络的调度问题:网络控制系统是基于网络的分布式控制系统。网络控制系统中的所有控制信息都要通过实时网络传输, 由于网络带宽的限制,网络中传送的信息不可避免产生碰撞、丢失和重发等现象, 因此必须对网络中传输信息进行合理调度,否则控制信息产生的较大时延,会降低控制系统的控制性能, 严重时将导致系统破坏, 因此在网络控制系统的设计与研究中必须考虑网络的调度问题。从仿真结果可见,网络控制系统不仅依赖于传统控制算法的设计,而且依赖于网络资源的调度与优化, 由于调度的影响, 使得控制系统传感器的采样周期产生变化,不是一个定值,同时从传感器检测到执行器之间时间也产生

17、了变化,从而使得系统产生波动,导致性能降低。13/27不同的调度策略将决定网络与计算机的不同执行与传输方式以及不同的控制性能。仿真表明,网络控制系统那个的性能不仅与常规的控制系统的控制方法有关, 而且与网络的调度有关,所以必须对网络控制系统的控制方法与调度进行集成研究。从图中可以看出,当无冲突任务、干扰节点和数据丢失时,信号的传输延时是常数,系统性能较好。 当加入冲突任务、 干扰节点时, 引起了信息在控制节点内和网络中对资源的争夺,竞争使某些低优先级的任务处于等待状态或闲置状态,这些任务不能得到及时处理, 导致系统延时变大 ,而且在多任务竞争这个不确定特性下,时延是时变的, 从而使系统指标恶化

18、。图和图分别为控制器调度图和网络调度图,其中,信号高表示任务正在执行,中表示任务在等待, 低表示任务闲置 。从图可以看到各任务在控制器内的执行情况,从图中可以看到各个节点信息在网络中的传输情况。从图中可以看到当未加冲突任务和干扰节点时,传感器周期性的采集信号,并通过网络把信号传给控制器, 控制器接收传感信号,计算出控制信号并通过网络传给执行器,执行器接收控制信号并产生相应的动作。此时控制器中存在控制任务调度,网络中存在控制器节点和传感器节点调度。当控制器节点内部存在冲突任务,而网络中存在干扰节点时,控制器内存在控制任务和冲突任务的调度, 网络中存在控制器节点、传感器节点和干扰节点的调度。由于冲

19、突任务和干扰节点的存在,使得信息在控制器节点内处理时以及在网络中传输时存在冲突和资源争夺。该例中规定干扰具有最高优先级,所以从图和图, 可以看到控制器内部冲突任务的执行机率大, 而网络中干扰信息的传输机率大,导致了传感器的采样周期发生变化,不是一个定值,同时从传感器检测到执行器之间时间也发生了变化,从而使得系统产生波动,性能降低,如图所示。仿真系统可以通过Proprocessing delay(发送时延)与Postprocessing delay(接收时延)进行传输时延的设定。由于时延增加,系统的稳定性降低。图所示给出了网络传输时延为0.001 的系统变化曲线,由于存在传输时延,系统振荡加强,

20、性能降低,网络控制系统的处理时延会对系统性能产生很大的影响。,这里采用调整控制器参数方法进行补偿调节。TrueTime 模块配置与初始化1.TrueTime Network 模块的配置TrueTime Network 模块的配置需要通过块任务对话完成。包括:指定网络模式 ( Networktype)、网络模块的访问地址(Networknumber)、连接到该模块的网络节点数(Number 偶发 nodes)、通信速率( Data rate( bit/s) 0、最小数据帧( Minimum frame size ( bytes)、网络发送端时延( Pre-processing delay ( s

21、)、网络接收端时延( Post-processing delay( s)和信息传输丢失率 ( Loss probability( 0-1)等。可供选择的网络模式有 CSMA/CD(如 Ethernet)、 CSMA 、AMP(如 CAN )、Round Robin(如 Token Bus)、FDMA ( Frequency Division Multiple Access)、 TDMA ( Time Division Multiple Access ,如 TTP )和 Switched Ethernet 。2. TrueTime Kernel 模块的配置和初始化TrueTime Kernel

22、模块的配置可以通过快任务对话完成。可以通过任务对话配置的参数14/27有:指定初始化脚本函数名称( Name of init function ( MEX of MATLAB )、选择初始化脚本变量( Init function argument )、内核模块是否依赖电池( Battery )、时间漂移( Clock drift )和时间偏移量 ( Clock offset )等。某些其它的参数也可以通过命令ttSetKernelParameter 进行设置。TrueTime Kernel 模块的初始化(Initialization )涉及:指定仿真中模块的输入输出通道地址( number o

23、f Inputs and outputs ),定义调度策略( scheduling policy ),创建任务( tasks)、中断柄( interrupt handlers )、事件( events)和监视器( monitors)等。 TrueTime Kernel 模块的初始化通过编写初始化脚本代码来实现。每个 TrueTime Kernel 模块必须进行初始化。 (在Matlab 中,某些初始化参数也可以在图形界面窗口中通过选择参数实现)。从网络调度图中可以看到,事件驱动型的控制器,在传感器数据到达时立即计算出控制信号;事件驱动型的控制器,从采样时刻运作。 从 Ethernet 网络控制

24、系统的仿真结果来分析,事件驱动型的网络控制系统比时间驱动型的网络控制系统,在阶跃响应下, 超调量小, 回复时间短,系统性能明显优越。TrueTime 初始化问题:初始化中计算机内核与网络是两个基本的初始化内容,分别采用了ttInitKernel ( nbrInp ,nbrOutp , prioFcn )与ttInitNetwork ( nodenumber, handlename)形式表示。ttInitKernel中nbrlnp 为输入通道的数目,nbrOutp 为输出通道的数目,prioFcn 为采用的调度策略,而ttInitNetwork中 nodenumber 为网络中节点的地址,han

25、dlername 为被调用的中断句柄名,如ttInitKernel ( 1,0, RM )表示采用了RM (单调速率)调度策略。如网络中节点4 控制器初始化为ttInitNetwork ( 4, msgRcv)。TrueTime 工具箱实例代码(distributed ):1. function actuator_init %执行器初始化% Distributed control system: actuator node% Receives messages from the controller and actuates% the plant.% Initialize TrueTime k

26、ernelttInitKernel(0, 1, 'prioFP' ); % nbr Of Inputs, nbr Of Outputs, fixed priority ,初始化内核,设置功能块输入、输出端口的数目和调度策略% Create actuator task 创建任务deadline = 100;prio = 1;ttCreateTask( 'act_task', deadline, prio, 'actcode'); 任务名称,最终期限(截止期),代码名称% Initialize networkttCreateInterruptHand

27、ler( 'nw_handler' , prio, 'msgRcvActuator' ); 对于事件驱动的节点,调用 ttCreateInterruptHandler 函数,设置中断式消息调度策略, 使节点在接受到网络数据后触发相应的15/27消息。ttInitNetwork(2,'nw_handler' ); % node #2 in the network 初始化网络接口,网络数目, 当事件到达时,激发的端口名称2. function exectime, data = actcode(seg, data) switch seg,case 1,

28、data.u = ttGetMsg; 从网络输入队列中获取信息exectime = 0.0005; 执行时间case 2,ttAnalogOut(1, data.u)设定输出通道值,通道号,通道值exectime = -1; % finishedend3. function controller_init(arg) 控制器初始化% Distributed control system: controller node% Receives messages from the sensor node, computes control signal % and sends it to the ac

29、tuator node. Also contains a high-priority% disturbing task.% Initialize TrueTime kernelttInitKernel(1, 0, 'prioFP' ); % nbrOfInputs, nbrOfOutputs, fixed priority 初始化内核, 设置功能块输入、输出端口的数目和调度策略% Controller parameters控制器参数设置,h为采样周期,N 为采样次数h = 0.010;N = 100000;Td = 0.035;K = 1.5;% Create task dat

30、a (local memory)data.u = 0.0;data.K = K;data.ad = Td/(N*h+Td);data.bd = N*K*Td/(N*h+Td);data.Dold = 0.0;data.yold = 0.0;% Create controller task deadline = h;prio = 2;ttCreateTask( 'pid_task' , deadline, prio, 'ctrlcode' , data); 任务名称,最终期限(截止期),代码名称% Optional disturbance task 随机扰动任务i

31、f arg > 0offset = 0.0002;period = 0.007;prio = 1;ttCreatePeriodicTask( 'dummy' , offset, period, prio, 'dummycode' ); 对于时钟驱动的节点,调用 ttCreatPeriodicTask 函数,设置周期性的任务调度策略,以实现定时采样功能。16/27end% Initialize networkttCreateInterruptHandler( 'nw_handler' , prio, 'msgRcvCtrl'

32、); 对于事件驱动的节点,调用ttCreateInterruptHandler 函数,设置中断式消息调度策略,使节点在接受到网络数据后触发相应的消息。ttInitNetwork(3, 'nw_handler' ); % node #3 in the network ,初始化网络接口,网络数目,当事件到达时,激发的端口名称4. function exectime, data = ctrlcode(seg, data) switch seg,case 1,y = ttGetMsg;% Obtain sensor value ,从网络输入队列中获取信息r = ttAnalogIn(1

33、);% Read reference value ,从输入通道取值P = data.K*(r-y);data.u = P + D;data.Dold = D;data.yold = y;exectime = 0.0005;case 2,ttSendMsg(2, data.u, 80);% Send 80 bits to node 2 (actuator) ,在网络上发送信息,发送数据内容的 80 个字节到执行器节点2exectime = -1; % finishedend5. function exectime, data = dummycode(seg, data)虚拟节点功能switch

34、seg,case 1,exectime = 0.004;case 2,exectime = -1;end6. function exectime, data = interfcode(seg, data)干扰节点功能BWshare = 0.0; % Fraction of the network bandwidth occupied by this node 节点占用网络带宽 if (rand(1) < BWshare)ttSendMsg(1, 1, 80); % send 80 bits to myself ,发送 80个字节给自己 endexectime = -1;7. functi

35、on interference_init% Distributed control system: interference node离散控制系统的干扰节点% Generates disturbing network traffic. 产生网络干扰通信量% Initialize TrueTime kernelttInitKernel(0, 0, 'prioFP' ); % nbrOfInputs, nbrOfOutputs, fixed priority ,初始化内核,设置功能块输入、输出端口的数目和调度策略% Create sender task 创建发送任务offset =

36、 0;17/27period = 0.001;prio = 1;ttCreatePeriodicTask( 'interf_task' , offset, period, prio,'interfcode' );% Initialize networkttCreateInterruptHandler( 'nw_handler' , prio, 'msgRcvInterf' ); 对于事件驱动的节点,调用ttCreateInterruptHandler 函数,设置中断式消息调度策略, 使节点在接受到网络数据后触发相应的消息。ttIn

37、itNetwork(1,'nw_handler' ); % node #1 in the network ,初始化网络节点18. function exectime, data = msgRcvActuator(seg, data)执行器与网络连接的信号端口功能ttCreateJob('act_task') 创建任务,任务名称,负责激发到达的任务 exectime = -1;9. function exectime, data = msgRcvCtrl(seg, data) 控制器与网络连接的信号端口功能 ttCreateJob('pid_task

38、9; )exectime = -1;10. function exectime, data = msgRcvInterf(seg, data)干扰节点与网络连接的信号端口功能msg = ttGetMsg;exectime = -1;11. function exectime, data = msgRcvSensor(seg, data)传感器节点与网络连接的信号端口功能disp('ERROR: sensor received a message' );exectime = -1;12. function exectime, data = senscode(seg, data)

39、传感器节点功能switch seg,case 1,data.y = ttAnalogIn(1);从输入通道取值exectime = 0.00005;case 2,ttSendMsg(3, data.y, 80); % Send message (80 bits) to node 3 (controller) 发送 80个字节到节点3(控制器)exectime = 0.0004;case 3,exectime = -1; % finishedend13. function sensor_init 传感器初始化% Distributed control system: sensor node% S

40、amples the plant periodically and sends the samples to the controller node.% Initialize TrueTime kernelttInitKernel(1, 0, 'prioFP' ); % nbrOfInputs, nbrOfOutputs, fixed priority ,初始化内核,设置功能块输入、输出端口的数目和调度策略% Create sensor task 建立传感器任务data.y = 0;offset = 0;period = 0.010;prio = 1;ttCreatePerio

41、dicTask( 'sens_task', offset, period, prio,'senscode', data); 对于时钟驱动的节点,调用18/27ttCreatPeriodicTask 函数,设置周期性的任务调度策略,以实现定时采样功能。% Initialize network初始化网络ttCreateInterruptHandler( 'nw_handler' , prio, 'msgRcvSensor' ); 对于事件驱动的节点,调用ttCreateInterruptHandler 函数,设置中断式消息调度策略,使

42、节点在接受到网络数据后触发相应的消息。ttInitNetwork(4,'nw_handler' ); % node #4 in the networkDistributed Control System:包含了四个计算机节点,时钟驱动的传感器节点周期性的对过程进行采样,并通过网络传递给计算机节点。控制任务在这个节点上运算控制信号,并发送运算结果给执行器,立即执行。同时,干扰节点发送通过网络干扰信号,作为高优先级任务在计算机节点执行。干扰节点占用网络的设置通过interfcode.m 中的变量 BWshare,当设置为零时表示没有干扰,同时,研究网络调度 (高电平代表节点发送,中

43、电平表示节点等待,低电平表示节点空闲)。改变网络调度策略进行研究。ttSendMsg /ttGetMsg stand-alone network blocks:时间触发和事件触发两个实例表明单机网络模块用来模拟网络闭环控制系统。在时间触发实例中,发送模块被脉冲发生器(周期为0.1s )触发,脉冲发生器的第二个节点有0.05s 的相位延迟。比例控制器补偿白噪声的干扰。在事件触发实例中,当过程输出幅值超过0.25 时,发送模块被触发。控制器也是事件触发的,第二个发送模块轮流延迟0.001s 被触发。网络利用率8 个网络节点的仿真模型:默认条件下的仿真结果及网络调度:19/27在令牌网下,传输速率为

44、93.75Kbit/s ,系统的输出和网络资源调度情况,调度策略为PrioRM (单调速率),(相同条件下,增加网络节点对控制系统性能的影响):20/271. 网络时延的影响:可以直接在模型的基础上增加Transport delay模块,(控制器与执行器间,传感器与控制器间)。图 30 时延仿真模型图在令牌网下,传输速率为 1.5Mbit/s ,延迟时间为 0.01s ,仿真结果如下:21/27图 31 仿真结果将传输速率改为: 93.75Kbit/s 时,其余的参数同上,图 33 仿真结果3 网络控制系统调度算法研究3.1引言研究网络控制系统调度算法的目的在于使网络中信息的传输满足一定的时延要求,其解决的本质问题在于合理分配网络资源, 使控制系统中由于网络的引入所带来的时延限制在可以保证控制系统稳定性的范围之内, 满足网络控制系统的性能, 网络控制系统性能主要包括带宽利用率、信息的可调度比率、信息的平均响应时间和网络吞吐量等。从网络层次看, 网络控制系统的调度方法可以分为两类:网络底层的调度和应用层的调度。网络底层调度的过程是数据链路层通过一个链路活动调度器控制网络中各个现场设备对完了过传输介质的访问,通常是网络接口设备按照特定的协议规范来决定数据包的发送顺序。网络底层调度是通过制定特定的网络协议来实现某些调度算法的,因而调度缺乏灵活性,只能适应少数算法。 应用层的调度还

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论