企业案例-电力故障仿真装置的设计及其通信方式的选择_第1页
企业案例-电力故障仿真装置的设计及其通信方式的选择_第2页
企业案例-电力故障仿真装置的设计及其通信方式的选择_第3页
企业案例-电力故障仿真装置的设计及其通信方式的选择_第4页
企业案例-电力故障仿真装置的设计及其通信方式的选择_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、电力故障仿真装置的设计及其通信方式的选择 随着微机保护和自动装置在电力系统中的广泛应用,对电力故障仿真装置的数量和功能都提出了新的要求。这类装置的数据通信过去基本上采用串口通信,但USB的出现提供了新的功能更强的选择。根据我们在Windows上开发电力故障仿真装置的USB数据通信驱动程序的经验,对所涉及的USB系统的物理、电气和逻辑特征和开发中的技术问题作了较为详细的分析。一、电力系统故障仿真装置的工作原理电力故障仿真装置由两部分组成,一为运行在个人计算机上的软件部分,即故障仿真程序,一为把故障仿真程序计算出的数字量计算结果转化为模拟量的模拟量硬件发生装置。图1 电力故障仿真装置原理图图1为电

2、力故障仿真装置原理图。从图1可以看出,电力系统故障仿真程序在个人计算机上完成给定条件下的故障计算后生成的电气量故障数据,将通过一定的通信方式发送给模拟量发生器,模拟量发生器按照一定的大小比例生成相应的模拟故障量,这些模拟故障量再作为输入信号接到微机保护装置上,从而完成微机保护装置功能的测试,这比动模实验灵活简便经济多了,在需要测试微机保护多种故障保护功能或频繁测试微机保护在某种故障的多种形态下故障保护功能时尤其是如此,比通过动模实验测试微机保护功能具有明显的优势。当然,动模实验并不能被故障仿真测试装置完全取代,微机保护最终需要通过动模实验,但在功能开发测试过程中故障仿真测试装置的好处是不言而喻

3、的。个人计算机和模拟量发生器构成了整个电力故障仿真装置,这是从硬件构成角度看。而从软件角度看,电力系统故障仿真程序运行在个人计算机上,运行的结果是生成故障数据文件,通信程序将这些故障数据文件送往模拟量发生器,模拟量发生器上的处理程序再控制模拟量发生器中的相关器件,根据这些故障数据文件所描述的波形,产生出一致的模拟量。由以上所述可知,整个电力故障仿真装置的开发可以归结为这样几部分工作,一为基于电力系统故障分析方法的故障仿真程序,一为模拟量发生器及其控制程序的研制和开发,一为在个人计算机上运行的负责把故障数据文件送往模拟量发生器的通信程序。二、通信方式的选择实现个人计算机和底层模拟量发生装置硬件的

4、数据通信可以通过串口(RS-232)、并口或USB(通用串行总线)来完成。串口方便简单,近距离通信是较好的选择。但速度慢。故障仿真程序的大部分运算是在个人计算机上完成的,计算出的数字量故障结果通过通信线驱动底层硬件完成故障结果模拟量的输出,向底层硬件的通信任务很重,常导致响应时间过长。和串口相比,并口通信速率快,可以满足响应时间的要求,但在将来使用中可能存在硬件方面的兼容性问题。USB总线为个人计算机中低速外部设备的连接提供了统一的规范,个人计算机外部设备越来越多造成的插槽紧张问题可以通过USB单一接口的使用获得完全解决。USB设备支持即插即用、热拔插,某些硬件的安装过程得到了简化, 也不再占

5、用中断资源或者DMA资源,使用方便。USB上的硬件限定于那些低速到中速的外设,即这些设备的数据传输速率低于12Mb/sec,并且能通过单一的个人计算机接口被系统软件识别。USB规范定义所有USB系统的全部基本的物理、电气和逻辑特征,视窗操作系统驱动程序定义由USB客户设备驱动程序使用的密切相关的USB驱动程序接口(USBDI)。USB规范是一个复杂的、发展中的规范,用户好用的背后隐藏了大量复杂的技术工作。下面各节内容主要是开发USB通信驱动程序所涉及到的USB总线的核心概念,是理解USB通信驱动程序和模拟量发生器功能特性的必要准备。三、USB系统的物理、电气和逻辑特征1.USB设备层次结构图2

6、显示了一个简单的USB系统配置图。USB主控制器与其它I/O设备一样直接连接到系统总线上。操作系统与主控制器通信使用I/O口或内存寄存器,通过普通的中断信号,系统可以接受主控制器的事件通知。主控制器连接一棵USB设备树。集线器为其它设备的连接点。多个集线器能以菊链方式连接,可以连接到USB规范中定义的最大深度。数字相机、麦克风、键盘等直接连到集线器上。集线器主控制器根集线器设备系统总线中断请求端口/寄存器接口个人计算机 主机图2 USB设备层次结构USB规范按照通信速率定义了高速和低速两种设备。低速设备以1.5Mb/sec速率通信,高速设备以12Mb/sec速率通信。集线器根据电信号区分这两种

7、设备。总线上的通信通常都是高速的,集线器一般不向低速设备发送数据。操作系统把任何发往低速设备的消息前加上一个前导包,这将使集线器临时降为低速,并完成低速设备的数据发送。USB电缆中含有两条电源线。集线器可以为连接在其上的设备提供电力,USB规范限定了总线供电设备所消耗的电流。这个限定会因为设备插入可供电集线器或与最近可供电集线器的远近而改变。另外,USB允许设备有睡眠状态,睡眠状态下的设备仅消耗很少的电力只要够唤醒和配置信号即可。设备也可以直接使用外接电源而不用总线电力。USB设备可以唤醒睡眠中的系统。当系统进入节能状态后,操作系统也把USB总线置入节能状态。一个有远程唤醒特征的设备能发出唤醒

8、信号,信号首先被送到集线器,然后又被集线器送到主控制器,最后由主控制器送往系统。2.USB设备的配置、接口、端点和通信模型USB设备就是模拟量发生器,通过配置(configuration)来控制其行为,如图3所示。USB设备至少有一个配置,也可以有多个配置。使用多配置的一个原因是对操作系统的支持,例如,系统BIOS可以使用一个简单的配置而操作系统中的驱动程序则使用另一个更复杂的配置。每个设备内有一个或多个逻辑连接点,称为端点(endpoint),每个端点指定下面的传输类型之一:控制传输、中断传输、块传输和等时传输。所有设备都有一个端点0,用于配置和控制设备。主机和设备的端点之间的连接称为管道(

9、pipe),主机USB系统软件和设备的端点0之间的连接称为缺省管道。对主机来说,一个设备就是一组端点。一组相关的端点称为一个接口。有多个接口的设备称为组合设备。设备可以有多组接口,每一组称为一个配置,一次只能有一个配置是活动的。但是当前配置中的所有接口(和它们的端点)可以同时是活动的。大多数的设备只有一个配置和一个接口。当一个设备第一次插入系统时,Windows提示用户选择合适的配置。设备配置1接口0端点0端点1端点2端点3接口1端点0端点1端点2端点3图3 USB设备的配置、接口、端点当设备第一次使用缺省管道插入时,主机读取这些描述符了解设备有什么配置、接口和端点可用。Windows为发现的

10、每个配置或接口建立内核设备。接口告诉软件访问硬件的方法。设备的接口的端点是通信管道的终点。图4显示了一个多层次结构的通信模型,它表明了端点和管道所扮演的角色。在最低一级,USB电缆把主控制器与设备的总线接口连接起来。在第二级,一个控制管道把系统软件与逻辑设备连接起来。在第三级,一组数据管道把客户软件与一组接口连接起来,这些接口组成设备的功能。图中系统软件方块中的底部是一组驱动程序,微软提供,包括主控制器驱动程序(OPENHCI.SYS或者UHCD.SYS),集线器驱动程序(USBHUB.SYS),和一个类驱动程序(USBD.SYS),由控制器驱动程序使用。USBD下面的所有驱动程序可看成一个整

11、体,驱动程序主要就是与这个整体打交道,它们管理着硬件连接和管道通信。WDM驱动程序占据系统软件方块中的顶部。WDM驱动程序的工作就是把客户软件的请求翻译成USBD能执行的事务(Transaction,是主机和一个设备之间使用一个或多个包的离散交互作用)。客户软件处理实际的设备功能。应用软件系统软件主机适配器功能(接口)逻辑设备总线接口数据管道控制管道电缆和集线器物理通信流逻辑通信流主机USB设备图4 USB的多层次通信模型USB通信驱动程序支持USB定义的四种数据传输方式(控制、批量、中断、等时传输)。不同类型的端点(控制、批量、中断、等时)总是使用对应类型的传输。当客户程序通过USB管道发送

12、或接收数据时,它首先调用Win32 API,调用最终将使驱动程序收到一个IRP(I/O请求包)。驱动程序把客户的请求通过合适的端点提交到总线驱动程序,总线驱动程序再把请求分解成多个事务(transaction)送往总线。总线上的信息流以每毫秒一帧数据的形式流动。总线驱动程序必须多个事务安排到同一帧中。当一个USB设备第一次接入时,它使用默认地址0响应。然后,某个电信号通知总线驱动程序有一个新设备插入总线,于是总线驱动程序找出一个未用的设备地址并发送一个控制事务告诉“0号设备”什么才是它的真实地址。这之后,设备就放弃使用默认地址0,而用真实地址来应答。控制传输在主机和控制端点之间传送控制信息,一

13、种纠错传输,在遇到传输错误时重试三遍,如果错误仍存在就放弃传输并向上层软件报告错误。控制事务在USB中具有最高优先级。设备必须处理控制事务。此外,总线驱动程序为控制事务保留了10%的带宽。对于轻量级的负载,主机能确保在1ms内完成一个控制事务。对于重量级的负载,未完成的控制传输将被强制到下一帧中传输,因此会产生一些延迟。每个USB设备至少应有一个编号为0的控制端点以响应控制事务的输入输出。端点0是设备默认控制管道的终点。端点0甚至在设备被配置前就被激活而不管其它端点是否有效。除了端点0,一个设备没有必要拥有另外的控制端点(尽管USB规范中允许有这种可能),因为端点0对于大部分控制请求都可以很好地完成。如果定义了一个厂商专用的请求并且该请求不能在一帧中完成,应该创建额外的控制端点以防止设备接收器被新事务抢先。3.主机软件如何识别USB硬件设备主机使用GET_DESCRIPTOR控制事务直接从设备的0号端点读取设备描述符,配置描述符接口描述符,从而识别该设备,了解其配置、接口和端点。接口可以没有或有多个端点描述符,它们描述了处理事务的端点。设备、配置

温馨提示

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

评论

0/150

提交评论