异步工作流体系结构的选择

2024-04-08

异步工作流体系结构的选择(精选6篇)

篇1:异步工作流体系结构的选择

异步工作流体系结构的选择 简介

在行业应用程序中的许多进程并非都能够即时执行。例如,验证信用卡在某些时候就需要十秒钟的时间。在本地商店排队的时候,十秒钟过得很快;但在电子商务领域,十秒钟却非常漫长。如果Web站点或其他应用程序闲置这么长时间去等待对客户的信用卡进行验证,那么处理大量并发用户的能力将大大降低。

因此,对于运行时间相对较长的进程而言,无论它们需要十秒还是需要十天,都应当断开与应用程序的连接而以异步方式运行。以异步方式运行某个进程意味着,发出该调用的系统并不需要等待该请求执行完毕;请求发出之后,调用就立即返回。这种处理方式有许多优点,但最主要的结果是,它切断系统中不同进程之间的连接,让它们以不同的速度运行。一套断开连接的、或者去耦的系统有助于在分布及伸缩方面取得最大的灵活性。

定单处理系统从 Web 站点或其他公司等外部来源接收定单,它最适合于采用异步处理方式。如果对这样的系统进行了去耦处理,在传入的定单量很大时定单会堆积起来,但进程的其余部分不需要一定按同样的速度进行操作。前端系统可以尽快地接收定单,而此进程的其余部分可以在定单量较少时追赶上来。在系统组件之间采用异步连接方式能够产生均匀效果,将变换不定的输入流转换为一致的请求流程进行处理。

如果不在某种程度上使用异步处理,任何电子商务应用程序都不可能正常发挥作用,因此,对这种体系结构很少有异议,但是们仍有必要讨论其积极方面和消极方面。异步处理的优点

异步体系结构的主要优点包括:

前端进程(通常是Web页)响应更快,客户会认为这是一个运行速度较快的系统

提供了用来提出负载平衡请求的简单方式 提供了容错能力

2.1 支持断续连接的系统

其中的每个优点都是通过异步模式对应用程序中不同部分进行去耦处理的结果。要让某个进程具有异步特点,就必须建立某种形式的队列来保存挂起的请求,该进程中的每一个步骤都只能与这些中间队列进行通信,而不能直接与其上一步或下一步进行通信。

图 1.利用队列实现去耦操作

2.2 更快的响应时间

第一个优点,即更快的响应时间,是由于客户(可能是正在访问Web 站点的某个人,也可能是另一个公司的计算机系统)不需等待任何定单处理过程开始进行的结果。在同步系统中,用户在整个操作(例如提交定单)结束之后才得到响应。

图 2.同步操作的累积滞后时间

在异步系统中,提交定单之后,客户的延迟时间仅仅是将该定单传递给进程中的下一步所花费的时间。在某种程度上,这样的更快响应时间只是一种假象,因为客户收到响应时该进程并未真正完成,但客户不需要再等待了,这是重要的优点。

图 3.在异步模式中滞后时间缩短

2.3 负载平衡

在接收高流量通信的系统中,人们常常希望将负载分布到多台服务器上,并且还希望根据需要调整这种分布以适应计算机数量的变化。有多种不同的方法处理系统的负载平衡问题,但异步处理所要求的基础体系结构能够在不增加额外软件的情况下轻松地提供灵活的负载平衡能力。

如上所述,在异步系统中,需要某种形式的中间存储或队列来存储步骤之间的请求。当一份定单完成了某步骤中的进程工作时,它就被放到队列中等待进行下一步进程。当下一个步骤准备好处理另一份定单时,它就从这种挂起请求列表中抓取一份定单。要完成这样的系统中负载平衡的实施,只需要增加计算机的数量,由它们处理挂起列表中对步骤 B 的请求。

图 4.在处理步骤 B 的节点群集之间实现负载平衡

采用中间队列之后,在负载平衡和可伸缩性方面都获得了很大的灵活性。在该系统的前端或后端都可以放置任意数量的计算机,而且这种灵活性适应于任何一个进程步骤。可以在每一个步骤中使用适当数量的硬件对系统的性能进行微调,也可以在一台计算机上将多个步骤结合在一起进行处理。2.4 容错能力

异步体系结构可以让系统具有容错能力,这样,即使在进程中出现中断,整个系统也不会崩溃。对灵活的负载平衡提供支持的功能同时也就是对容错能力提供支持的功能。如果某个软件或硬件故障删除了某个进程步骤,请求执行该步骤的那些挂起请求就在队列中等候直至该服务被恢复。这对进程中先前的步骤并不产生什么实际的影响,尽管总体进程时间可能由于故障而延长。如果遵循了上一节关于负载平衡所讨论的技术,很可能仅仅减缓某一步骤的进程,但并不会停止。同样的功能也可以通过使用群集方式来提供;群集可以在不进行任何负载平衡工作的情况下提供故障转移能力。

图 5.异步系统能够容忍一个或多个节点出现故障

在负载平衡的系统中,处理同一步骤的其他服务器可以继续从队列中截获请求;如果各服务器都已经以接近峰值的状态运行,整个系统的性能将下降。

注意 尽管采用请求队列可以提供容错能力,但队列本身可能成为关键的故障点。用于确保这些队列可靠性的方法依赖于实施队列时所采用的特定技术,但一般都涉及故障转移群集以及将信息写入某个永久性的存储设备中,例如写入数据库中。

2.5 断续连接的系统

这种使异步系统具有容错能力的行为也同样能够让异步系统在无需始终连接所有工作流组成部分的情况下正常运行。在异步系统中,工作流中的某个阶段可能由业务合作伙伴来进行处理。而系统与合作伙伴的系统之间的连接有可能是间断的,或者仅在需要时才连接。因此,异步功能可以将不可靠通信链接的影响降至最低程度,而且还可以实现更经济的系统操作,因为它将通信资源的占用减至最少。

在断续连接的系统中,某个合作伙伴可以连接工作流过程并将一个或多个请求置入工作流过程中排队,也可以接收某一具体步骤的处理结果并随后在自己的系统中进行处理。异步处理方式让系统之间相互独立;如果系统 A 与系统 B 能够在同一时刻相互连接,那很好;但如果不能在同一时刻连接,它们以后也能够进行通信而不会有任何麻烦,因为信息会被存储起来,直至与接收者接通。

图 6.使用中间队列能够支持断续连接的系统而不需要任何专门编程

断续连接的系统引入它们自己的一套体系结构决策,包括连接的频率、在连接时期之间对请求进行批处理、处理失败的连接尝试,等等。需要这种系统的常见场合是,必须与某个外部合作伙伴打交道以处理付款或处理定单实现;对于需要采用拨号连接而并不采用网络链接的所有情况,也需要这种系统。由于支持了断续连接,在资源总可以获得但连接数量受到限制的情况下,系统可以将对资源的占用减少到最低程度;限制连接数量的原因可能是许可证、配置或系统容量方面的限制——例如数据库、FTP 服务器以及带有服务广告协议(SAP)等其他后端系统的会话。异步系统的问题

在使用异步处理时,有几项功能比同步方案实施起来更困难,这样的功能如下:

利用通知或轮询进行状态跟踪 处理超时

创建和执行补偿逻辑

3.1 对状态进行通知或轮询

在同步系统中,调用进程要等待调用返回之后才继续向下执行;虽然这对性能和系统响应有负面影响,但它也有一些优点。在调用确实完成之后,它可以一同返回某种形式的状态消息,例如进程成功或进程失败。一个简单的例子可以说明此问题:将新定单插入数据库中,同时获得数据库生成的新定单 ID。如果对数据库进行同步调用(或许通过某个组件进行,由该组件处理实际的数据库工作),可以立即发回该定单的 ID,也可以表明该定单是否已经成功地添加到数据库中。但在异步系统中,虽然发出了插入定单的请求,但是实际的插入动作却未同时发生,因此,此时无法返回数据库生成的 ID,系统也不知道是否成功插入。获得已提交请求的状态以及创建 ID 这两个概念是紧密联系的,因为任何异步形式的状态跟踪都需要一个唯一的 ID。

3.2 生成跟踪 ID 在异步系统中工作可以采用多种方法获得跟踪 ID,但在选择这些方法时,必须牢记对系统进行去耦处理这一目标。可以在对请求的提交进行处理时同步生成 ID,由此获得 ID 并在随后以异步方式将该请求传递给进程的其余部分。但这种解决方案有损于采用异步处理所带来的优点,因为它至少会将请求的提交与请求处理的第一步紧密耦合在一起。

另一种方法是,由提交定单的系统生成 ID,这样可以保持系统的异步特点,但却丧失了在一个位置生成唯一 ID 的简单性。为了保证提交方生成的 ID 具有唯一性,通常采用两种方法:

以随机方式或半随机方式生成 ID,通过随机数长度来保证唯一性,或者根据系统中唯一的硬件组件生成某个数码来保证唯一性(GUID 常被用于此目的)

- 或者 -

首先获得在单个提交系统中唯一的 ID,然后将此 ID 与提交方的标识符一同发送,从而生成一个组合的唯一 ID。

倾向于选择第二种方法,因为它与处理采购定单(PO)所采用的(现在仍在使用)一般处理很相似,此类公司采购定单常以批处理方式提交;这样的话,与现有系统协同工作时就很容易转换。提交方,即 PO 情形中的公司,拥有他们自己的系统,可以生成唯一的 PO 编号,然后他们将该编号与其公司的标识符(既可能是客户 ID,也可能是系统 ID)一同提交。在提交方需要确定特定定单的状态时,他们也将这些信息组合起来使用。在接收端,仍然可以在定单处理系统中生成一个唯一的 ID 并在内部使用,但客户的 PO 编号并不删除。

图 7.来自提交系统、含有引用 ID 的传入消息

3.3 状态跟踪

如上所述,必须拥有唯一的 ID 才能在异步系统进行状态跟踪。那么,如果有了该 ID,如何跟踪请求的状态呢?异步系统中的状态跟踪通常采用下面两种形式之一:或者向原始调用者发出通知(定期发送状态消息,或在特定事件发生时发送状态消息),或者使用某种形式的轮询机制让调用者自己负责查询状态。还有第三种可能性,不准备在这里详细讨论了,因为它实际上并不适合企业系统;这种可能性是,发出调用的系统不需要关注其请求发生了什么结果;它仅发出请求而已,并不需要知道最后是成功了还是失败了。两种状态跟踪形式可以简单地描绘为“喂,的定单准备好了吗?”以及“喂,定单已经准备好了”。它实际上就是谁先打招呼的问题。

图 8.利用通知进行状态跟踪

一般将通知视为最有效的进程状态跟踪的方式,因为在这种方式中,只有项目状态发生更改时才发送信息;而在轮询方式中,可能会出现许多不必要的状态请求。

图 9.使用轮询方式进行状态跟踪

但事情并非总是如此;如果检查请求状态并不是一项很频繁的操作,基于查询的状态系统可能更为有效。为了取得最大的灵活性,建议两种方式都实施,既实施能够对状态进行请求的机制,也实施状态通知机制。们以一个允许在线订购产品的 Web 站点为例;发出定单之后,通常会回到 Web 站点上查阅定单的当前状态(只要乐意,随时都可以查询),但该 Web 站点也可以在定单被接受、处理及发货时发出电子邮件消息。两种状态跟踪形式都很有用,两种方式也都对处理系统有相同的隐含要求;每一项请求的状态都需要跟踪。

3.4 超时处理

异步处理的主要好处之一是,不必等待每一步都完成;但仍要考虑整个进程需要多长时间才能结束的问题。为了保证定单或者正在处理的任何形式的请求最终不会等待过长时间才能处理完毕,需要一种方法来指定每个异步请求允许花费的最长时间。实施超时机制是防止定单在系统中耽搁好几天的唯一办法。

3.5 补偿逻辑

与上述状态跟踪问题相似,在出现错误的情况下,补偿逻辑非常重要。实际上,如果假设每项请求都会成功,每项定单都能够成功处理,那么,系统的建立就会很省时间,设计上也会更简单。真正占用大部分设计时间和实施时间的工作是处理出现的问题——也就是处理异常情况。

补偿逻辑与数据库中的事务回滚概念相关——它在进程彻底失败时撤销任何已经完成的操作。在定单处理场合,当客户的信用卡未通过验证并因此取消定单时,补偿逻辑或许就包括撤销预留库存。根据这些事务进程技术的任一种技术,程序员可以明确声明某进程的所有步骤都是某项事务的一部分;如果出现错误,数据库或 MS DTC 提供的服务将撤销错误出现前已完成的所有工作。在异步系统中,不可能采用这些事务进程技术来管理进程中的所有步骤,因为这些步骤被不确定的时间所分割。必须实现自己编写的代码才能撤销进程失败时已经完成的任何工作。采用多种方法可以实现这一任务,但通用方法是在运行时对进程进行跟踪/审计,然后使用跟踪信息回退并逆转每一操作。这听起来很简单,但做起来却很麻烦;开发补偿逻辑是主要的工作。

在本文其余部分,将探讨在系统中实施异步工作流的多种不同方法,并解释每种方法如何处理上述问题。实施策略

为了解释创建异步工作流的多种不同选择,最好使用一个具体例子。对于本文其余部分,就使用一个定单处理系统的例子,如图 10 所示,定单必须经过一个简单的四步工作流。

图 10.由四步构成的简单工作流

并不是每一阶段发生的事情都与实施选择的讨论相关,但是们假定可以获得一系列.NET 组件(以及公开的 COM 接口)来处理每一步。

注意 在任何实际的系统中,可伸缩性和可靠性都是要考虑的关键问题。如果一套系统时常“丢失”定单(或者将同一份定单执行一次以上),任何这样的系统就不适合实际使用,因此,还应当谨慎设计软件系统和硬件系统,以保证可靠性。可伸缩性也是一个需要考虑的问题,尤其是面向公众的系统,其潜在用户量是非常大的。在本文描述的所有三种实施方法中,将讨论在使系统能够根据需要进行扩展的同时保证可靠性的措施。

根据必须由自己动手创建的实施工作量,将实施工作流的选择划分为三个不同的途径:

利用 Microsoft SQL(TM)Server 利用 Microsoft.NET 和 Microsoft 消息队列(MSMQ)利用 Microsoft BizTalk(TM)Server 第一种选择说明在实施解决方案时不需要依赖任何专为工作流设计的预建机制。在本例中,就是使用 SQL Server 来创建自己的队列系统,并自己编写代码处理实际移动和处理通过定义的工作流的定单。第二种选择使用操作系统提供的 MSMQ 功能来实施定单在处理中移动时的队列编排工作,但仍然要自己提供代码来控制定单从一个队列到另一个队列的移动,以及调用每个组件。最后一种选择是购买一套系统,即 BizTalk Server,由它来处理整个工作流过程,自己仅使用该工具定义工作流即可。当然,在以上三种方案中,都需要实施表达工作流中每一步发生的实际处理工作的组件。然而,值得指出的是,如果某步骤主要是转换、存储和检索各个系统中的消息,BizTalk 可以完成大部分此类任务,根本不需要编写代码。将逐一介绍每个选择方案,并解释如何在每一实施方案中处理本定单处理的各种元素。

4.1 利用 SQL Server 构建自己的工作流

4.1.1 解决方案描述

要使用 SQL Server 构建自己的工作流系统实施方案时,有多种选择。可以为工作流中的每一个状态(等待验证、已经发运,等等)创建不同的表,然后通过在表之间进行插入、删除操作将消息(例如,定单)在不同状态之间进行“移动”。这非常类似于队列系统中的工作流进行工作的方式(例如 MSMQ,将在下一实施选择方案中讨论),但让 SQL Server 从事它不擅长的工作并没有什么好处。

另一种可选模式是仅使用一张表来存储消息,并采用一个附加字段来保留当前状态。将一条消息从一个状态转变为另一个状态只涉及对该状态字段的修改,而所有的消息始终保持在原位置不动。如果要将 SQL 用做工作流引擎,建议采用这种模式,它可以创建另一张表来跟踪定单进入处理每一步的日期和时间。4.1.2 实施细节

特别符合异步业务处理概念的操作示例是在数据库表中插入新定单。在通过 Web 站点或另一个系统提交并接收定单之后,SQL Server 实施将由下面几个关键元素组成:保留定单及相关信息的表,完成每一步处理工作的组件,跟踪表的工作流,以及协调定单在此处理中移动的程序(即控制器)。由于本系统可能具有的去耦特性,该控制器不可能仅是一个程序;实际上,它由在各种不同计算机上运行的多个不同的程序组成。无论分布方式如何,控制器的概念体现了与工作流有关的全部代码;消息要在各个步骤之间移动,就需要运行控制器。使用.NET 后,这些控制器可以按照 Microsoft Windows? 服务的方式来编写,它们不间断地运行并处理任何挂起的定单;也可以按照应用程序的方式来编写,将其设置为在特定的时间运行。在基于 SQL Server 的系统中,控制器代码可以遵照下面的基本行为模式:

For a particular step:

Query database for the oldest records at this stage

(SELECT TOP 1 * FROM Order

WHERE Order.CurrentStage = i

ORDER BY Order.Date ASC)

If order exists then Process record

Add entry to Tracking/Auditing table

Call Component(s)to process Order

If successful

Update Tracking table

Move Order to next stage

(UPDATE Order

SET Order.CurrentStage = Order.CurrentStage +

WHERE Order.ID = ID)

If failure

Compensating Logic for all previous steps(i-1

to 1)

Update Tracking table 为了获得最佳的性能和最大的灵活性,可以为每一个阶段创建单独的控制器实例,也可以在每一阶段自身的线程中处理该阶段的工作;在两种方式中,控制代码都可以根据需要在不同计算机之间保持隔离。

将 SQL Server 用于工作流的主要好处是所有的东西都存储在一个数据库中。将所有的定单和它们的状态都存储在 SQL Server 之后,就有可能通过一个简单的查询来检查定单的当前状态,同时也容易通过使用相关表来实现与其他系统(这些系统可能也在使用数据库,甚至或许是相同的 SQL Server)的集成。但使用 SQL Server 也有它的缺点:主要是,它并非一部工作流引擎,而是一套数据存储系统。因此,SQL Server 对工作流系统的许多功能都没有提供支持,必须构建将 SQL Server 用作数据存储系统的自己的工作流引擎。超时就是一个例子,它是工作流环境中必需的功能,但 SQL 不处理它。为了处理超时情形,需要一个程序(或许还要与工作流逻辑的其他部分结合在一起)来定期扫描表,以发现超过规定时间长度的记录并将它们处理为超时消息。4.1.3 多线程开发

当多个处理查找同一阶段的记录时,就会遇到使用 SQL Server 的另一个问题。关于这个问题详细讨论已经超出了本文的目的,但很有必要关注这个问题,因为它极好地说明了异步及多线程应用程序所面临的问题。如果两个或多个处理试图同时处理同一阶段的工作,在使用为控制器处理提供的伪代码时就会出现问题。第一个处理将检索在某特定阶段最旧的记录,并将该记录发送给不同组件进行处理。只有在这些组件返回了更新的记录,才表明它已准备好移动到下一阶段。从检索到最终更新之间,另一个处理或许也在处理相同阶段的工作,而且它也会经历同样的步骤。在第二个处理检索该特定阶段最旧的记录时,如果第一个处理还没有进行更新操作,也没有完成其数据库的事务处理,那么第二个处理就会检索到与第一个处理一模一样的记录。此相同记录随后将再次发送给各组件,从而造成潜在的重复处理问题。有两种方法可避免此问题。第一种方法是在事务处理期间对该 Order 表使用排他表锁,只有这种方法才能阻止第二个处理在第一个处理完成之前对该表执行 SELECT 查询。这种方法能够发挥作用,但其结果是封锁了所有其他处理(甚至包括其他计算机上的处理),使得它们在此处理完成通过当前阶段的第一个定单的操作之前一直都不能访问该表,这实际上是取消了并行处理的可能性。

第二种方法是对处理稍做修改以避开此问题——仍使用排他表锁,但只限制在较短时间内。这种方法不是在对定单进行处理的全部时间内锁定表,而是在启动事务处理、进行 SELECT 操作(包括排他表锁)后即对记录进行更新,将其标记为可以继续进行其他处理。可以使用多种方法对记录进行标记,包括设置布尔值标志或者将其更新为某个特殊的状态代码。在UPDATE 执行完毕后,可以立即提交该事务并解锁。随后即可对该定单进行其他处理,对其他处理的封锁时间也不会大于执行 SELECT 和 UPDATE 所占用的时间。作为一个存储过程,这类似于下面的代码:

CREATE PROCEDURE GetNextOrder

@Step int,@OrderID int output,@OrderDate datetime output,@CustomerID int output,@OrderStatus int output,@SubTotal money output,@Tax money output,@ShippingHandling money output,@ShipToName nvarchar(50)output,@ShipToAddressId int output AS

DECLARE @NextOrder int SET TRANSACTION ISOLATION LEVEL SERIALIZABLE BEGIN TRANSACTION

SELECT TOP 1

@NextOrder = Orders.OrderId,@CustomerID = Orders.CustomerId,@OrderDate = Orders.OrderDate,@OrderStatus = Orders.OrderStatus,@SubTotal = Orders.SubTotal,@Tax = Orders.Tax,@ShippingHandling = Orders.ShippingHandling,@ShipToName = Orders.ShipToName,@ShipToAddressID = Orders.ShipToAddressId FROM [Orders] WHERE [Orders].OrderStatus = @Step ORDER BY [Orders].OrderDate ASC

UPDATE Orders SET OrderStatus = OrderStatus + 50 WHERE OrderID = @NextOrder

SELECT @OrderID = @NextOrder

COMMIT TRANSACTION SQL Server 能够很快地执行此事务处理的各个步骤,因此表锁的封锁并不会对整个系统的性能造成明显损害。

注意 尽管此例使用了轮询方法来查找新定单,但也可以在 SQL Server 中使用通知模式,只是后者需要更多的“自制”代码。4.1.4 可伸缩性和可靠性

使将 SQL Server 用作工作流引擎的系统具有可靠性和可伸缩性的方式与使将 SQL Server 用于其他目的的系统具有上述特性的方式是一样的。在数据库场合,处理不断增加的负载的主要办法就是“升级”,即在运行数据库的计算机中增加内存和处理器。可以将一个数据库分布到多台计算机上,以利用联盟服务器(federated server)和分区等功能实现分配负载的目的,从而支持极其大量的负载;但如果有 8 路CPU 或更大型的计算机,那么,通常一台计算机就足够用了。为确保可靠性,可以采用由 2-4 台计算机组成的故障转移群集;这样做的目的并不是为了提高性能,而是为了保证正常运行时间,因为它提供了多达三台服务器,它们可以在主运行服务器(live server)发生重大故障时接管系统的运行。

4.2 使用.NET 和 MSMQ 处理工作流

解决方案描述

.NET 框架使能够利用消息队列(MSMQ)以编程方式轻松地发送和接收消息,该解决方案就以此基本功能为基础。实施这种形式的工作流解决方案需要使用许多队列——其中一个用于表达工作流的各个阶段,还需要一套用来存储最终定单的数据库表和一个审计/跟踪表。与上述 SQL Server 实施相似,本系统的关键组件也是一个控制器程序,它编写为 Windows 服务形式,设计为处理与工作流有关的处理。该程序负责从队列中接收消息,针对每条消息调用适当的组件来进行适当的处理,然后将定单发送到下一个队列。4.2.1 实施细节

与上述 SQL Server 示例不同的是,本方式不通过轮询方法检查每一阶段的新定单,而是利用 MSMQ 的功能在控制器等侦听程序中激发事件。此外,还可以为每个队列创建一个线程,而且在不指定超时时间的情况下接收在每个队列上启动的处理。这两种方法之间的性能差异很小,但各自的代码差异却很大。为了获得审计与跟踪的详细信息,还需要某种方法来存储信息,因此,很可能还需要一个数据库表。

采用 MSMQ 有很多好处,因为 MSMQ 本身提供了异步处理所需要的许多功能。在消息等待处理时,它们存储在队列中;最旧的消息自动被最先处理,因为消息队列的规则是“先进先出”(FIFO)。放进消息队列中的消息有很灵活的设置,既可以处理向队列提交消息时的超时问题,也可以处理从队列中接收消息时的超时问题。MSMQ 还内置了一些高级功能,例如将某些消息标记为高优先级或低优先级。每条消息除了其主要内容(本示例中为定单)之外还有多个属性,它们提供了对该消息的进行审计的重要信息(例如 ArrivedTime、SentTime、SourceMachine 等等)。最后,MSMQ 的编程模式在设计上考虑了异步工作流问题,它在新消息达到时能够发出通知(通过事件),从而不再需要任何轮询工作。在 SQL Server 章节中讨论的锁定与并发问题在 MSMQ 中已经不成为问题;无论有多少个处理试图同时从同一个队列中检索一条新消息,MSMQ 都可以保证不会有两个处理收到相同的消息。指定给每一阶段的进程/线程数量是完全灵活的,可以根据系统负载的变化情况进行微调。

虽然 MSMQ 提供了许多与工作流有关的功能,但它与 SQL Server 一样不是一部工作流引擎,仍需要对控制逻辑编写代码,才能将消息从处理中的一个阶段转移到另一个阶段。但 MSMQ 的确为发送和接收消息提供了许多出色的功能,它们是工作流解决方案和组件的关键组件,如果在 SQL Server 基础上进行构建,必须自己对这些组件编写代码。4.2.2 可伸缩性和可靠性

在本实施中使用 MSMQ 时,或者作为 BizTalk 实施中的一个组件使用 MSMQ 时,可以利用 Microsoft 群集服务对 MSMQ 进行群集设置,从而为该服务器上的队列提供故障转移支持。除了为群集提供支持外,MSMQ 还有一项引人注目的可靠性功能,即使 MSMQ 能够处理那些几乎会摧毁任何其他系统的故障。消息发送到队列时——例如从 Web 站点上发送到后端 MSMQ 服务器上 ——这是一项异步操作,即使消息尚未提交,它也会立即返回。如果网络出现故障或者服务器无法使用,就不可能抵达目的地队列,消息将自动存储在发送方计算机上(本示例中,就是 Web 服务器上),直至与目的地接通。这种机制被称为“存储及转发”(store and forward),经常用于允许移动用户脱机使用应用程序,并且还创建了一种容错能力更强的系统。在相似情形中,如果将 SQL Server 或其他数据库用作后端处理,那么必须自己将其构建到系统中才能实现“存储及转发”。5 小结

异步工作流是很强大的体系结构,它不仅能够提高系统的可伸缩性和可靠性,也是处理自动业务处理的好方法。本文介绍了三种不同的方案,通过这些方案可以为系统添加异步处理功能,但必须选择哪种实施方案最适合系统。下一步涉及的是要在自制和外购之间做出选择。就自制而言,还有两种选择。所有事情都自己解决,而不利用 MSMQ 的优势,似乎是效率最低的解决方案,但它将所有的东西都放到 SQL Server 上,这使得文档跟踪以及集成到系统的其余部分变得非常容易。采用 MSMQ 可以让先声夺人,并且还能够带来许多构建解决方案所必需的异步功能,这样,只要根据需求编写控制逻辑以在工作流中移动消息即可。最后,即使采用 BizTalk,仍然必须创建对各个阶段进行处理的组件,这在所有这些解决方案中都不可避免,但 BizTalk 提供了所有其他的工作流元素。

如果需要实施的是运行在一台服务器上一成不变的工作流,那么自己动手构建系统也是很实际的想法。如果希望支持多个工作流,工作流变化相对频繁,或者需要运行大型服务器组,那么需要重复完成大量的 BizTalk 功能,其成本可能会比 BizTalk 本身要高许多。一个主要的决定性因素是对支持的要求,因为自己的解决方案不大可能得到像 BizTalk 这样的外购产品所提供的支持水平。最后,所有这三种解决方案都是在应用程序中实施异步工作流的切实可行的方法,其差别取决于具体需求。

篇2:异步工作流体系结构的选择

三相绕组接通三相电源产生的磁场在空间旋转,称为旋转磁场.其转速n1的大小由调速电机马达极数2p和电源频率f而定,即n1=120f/2p.这种旋转磁场肉眼看不到,如果在定子铁芯内放一个空易拉罐,罐的两端用尖端支上,则易拉罐就会旋转.为了说明调速电机马达的工作原理,我们模拟两个磁极(N、S极)在旋转、转子用铜条做成笼型的.调速电机马达定子两极按逆时针方向旋转,转子静止,可以看成定子精子(n1=0),转子按顺时针方向旋转,由于转子铜条切割磁场,铜条内有感应电动势,由于铜条是短路的,所以有感应电流产生的,它的方向用右手定则可以判断,上边铜条电流方向进入纸内,下边铜条的电流方向从纸内出来.调速电机马达转子铜条有电流,又处在磁场当中,导体要受到力的作用,此力方向可用左手定则判出.上下的力F构成力矩,转子会旋转起来.通过以上分析可以看出:

1、转子要转动必须有旋转磁场;

2、转子转动方向与旋转磁场方向相同;

篇3:异步工作流体系结构的选择

异步起动永磁同步电机LSPMSM(Line-Start Permanent Magnet Synchronous Motor)能够实现异步起动,并且具有高效率、高功率因数等优点[1,2],然而在实际推广应用中,退磁问题成为制约其发展的瓶颈。永磁电机设计中,考核抗退磁能力的主要指标是最大去磁工作点,即最大退磁磁场作用下的永磁体工作点磁密,该指标通常与磁路结构有关[3]。其影响因素主要是工作温度与退磁磁场大小[4,5]。通常情况下,较高工作温度会导致永磁体(钕铁硼)退磁曲线出现拐点,而电机在起动过程中容易产生较大退磁磁场[6],使得永磁体工作点低于退磁曲线拐点,导致永磁体矫顽力降低,产生不可逆退磁。因此,在电磁设计阶段,准确计算并合理设计永磁体最大去磁工作点,进而提出有效可行的提高永磁电机抗退磁能力的技术措施,成为目前LSPMSM设计中急需解决的难点问题。

在最大去磁工作点计算方法方面,传统磁路法无法计及永磁体的局部退磁,难以准确反映永磁体的实际工作状态,需采用数值计算方法计算最严重去磁情况下电机内部的磁场分布,使永磁体内最低局部工作点高于最高工作温度下退磁曲线的拐点,以保证电机不发生局部退磁[7,8,9]。文献[10]利用有限元数值法分析了LSPMSM起动过程中最大去磁电流下永磁体的局部退磁分布情况,但最大去磁电流仍是通过等效电路方程计算得到,未计及场与路之间的耦合作用。

在提高电机抗退磁能力方面,通常采用优化转子磁路结构以减小退磁磁场或改进通风结构以抑制永磁体温升等方法实现。文献[11]分析对比了电机分别采用单、双层及V型永磁体3种转子结构的退磁特性。文献[12]表明转子侧加隔磁桥并采用双鼠笼结构,可抑制永磁体退磁。文献[13]研究了永磁体高度及等效气隙长度对退磁风险的影响。文献[14]通过改善冷却措施可显著降低永磁体表面温度,从而有效防止不可逆退磁。

为了准确计算起动过程中最大退磁磁场,得出LSPMSM考虑局部退磁的最大去磁工作点,本文提出一种抗退磁能力校核新方法。该方法一方面利用计及饱和非线性、谐波磁场等多种因素影响的场-路-运动耦合时步有限元法,分析起动过程中不同时刻的磁场分布,确定了永磁体最容易退磁的位置并揭示了退磁磁场与转速之间的关系;另一方面通过给定转子转速的时步有限元模型,计算电机在堵转到同步速一系列给定转速下稳定运行时的退磁磁场,最终得到最大去磁工作点。进一步以一台22 k W样机为例,对其抗退磁能力进行分析,提出一种基于复合材料的用于提高最大去磁工作点的LSPMSM的转子新结构。最后,对一台实验样机起动过程中的动态退磁磁场进行测试,验证了所提方法的有效性。

1 起动过程中退磁磁场时步有限元研究

1.1 永磁体最容易去磁局部位置的确定

为预防起动过程中发生局部退磁,首先确定最容易退磁位置,将其作为考核单元分析起动过程中退磁磁场与转速之间的关系。以一台22 k W 8极铸铝冲片转子结构LSPMSM为分析模型,电机的具体参数如表1所示。

首先分析转子表面退磁磁场透入转子铁芯内部的情况,沿单个转子磁极极间径向,取处于不同位置的单元,如处于气隙位置的a单元、铸铝导条位置的b单元、转子铁芯位置的c单元,及分别位于永磁体中心及边角位置的d和e单元,如图1所示。以电机重载起动为例,采用场-路-运动耦合时步有限元法[6],计算得到起动过程中a—e单元磁密B随时间变化的曲线,如图2所示。

图2中,气隙谐波磁场的存在导致气隙单元磁密随时间变化的波形较为杂乱;由于铁磁材料以及铸铝导条的集肤效应,越深入转子内部,谐波磁场越弱。较气隙和转子导条位置,处于转子内部的永磁体受谐波磁场影响小,磁密波形光滑。d单元与c单元大致处于同一个径向位置上,这2个位置的磁密变化波形相似。e单元与其他永磁体单元相比漏磁较大,在任意时刻磁密都较低,更容易受退磁磁场影响,该位置即为最容易退磁位置。故选择e单元作为考核单元,研究起动过程中退磁磁场与转子转速之间的关系。

1.2 起动过程中退磁磁场与转速之间的关系

起动过程中,由定子绕组电流和转子导条电流共同产生的同步速旋转磁场,超前以转子速旋转的永磁磁场δ空间电角度。cosδ可表征同步磁场作用在永磁磁场方向上的分量的正负和大小,当cosδ>0时,同步磁场对永磁体起增磁作用,永磁体内磁密增大;当cosδ<0时,同步磁场相对永磁体即为退磁磁场,永磁体内磁密减小,当cosδ=-1(即δ=π)时,去磁作用较强,永磁体磁密较低[15]。

图3为利用时步有限元法分析得到的重载起动过程中的转子转速nr、cosδ和永磁体考核单元磁密Bte。由图3所示结果可以看出,LSPMSM重载起动过程中多次出现同步磁场与永磁磁场反相时刻(即cosδ=-1的时刻,对应图3中标记点“×”),因此Bte多次出现较低点。为观察反相时刻退磁磁场与转速之间的对应关系,图4给出了Bte随转速nr变化的曲线。同时,表2列出了每个反相时刻(图4中标记点“×”)下的转速nrl和永磁体考核单元工作点磁密Btel。

由图4和表2可见,在转速较低时,由于转差率较大,永磁体磁密波动较快,且定子起动电流幅值较大,感应电动势幅值较小,定、转子电流合成的同步磁场相对较弱,对永磁磁场影响较小,因此永磁体磁密波动幅值较小。随着转速升高,同步磁场增大,波动幅值增大,反相时刻下的Btel减小。在该重载起动过程中最后一个cosδ=-1时刻(如图3和图4中的圆圈标记),转速nrl达到85%同步速。此时,同步磁场对永磁磁场的去磁作用最强,从而使得永磁体考核单元工作点达到该重载起动过程中的最低点。

虽然该重载起动过程中的最后一个cosδ=-1时刻对应的转速已经达到85%的同步速,但是该转速对应的最低工作点还不是真正意义上的设计校核用的最大去磁工作点。因为如果LSPMSM在更恶劣的情况下起动,LSPMSM长时间爬行[16],最后一个cosδ=-1时刻对应的转速更大,即更接近同步速时,退磁磁场更大。因此,为了找出真正意义上的最大去磁工作点,需要建立计算模拟各个特定转速下退磁磁场的有限元模型。

2 最大退磁磁场的有限元计算

2.1 分析计算方法

计算某一特定转速下退磁磁场的方法是:假设永磁电机在转差率s下异步稳定运行,在δ=π时刻的同步速旋转磁场即为该转速下的退磁磁场。由于要模拟LSPMSM在某一特定转速下稳定运行,所以需将时步有限元运动方程中的转子机械角速度设定为某一给定转速sΩn[17],其中Ωn为同步速对应的转子机械角速度。当s=0时,表明给定转子转速为同步速。某一给定转子转速下退磁磁场有限元计算模型如下式所示:

式(1)中,第1行为磁场方程,其中A为矢量磁位,FA为永磁体等效面电流形成的列向量,K为节点向量磁位系数矩阵,S、E分别为定、转子电流对应的系数矩阵,P为转子导条涡流项对应系数矩阵;第2行为定子电路方程,其中Us为定子三相电压列向量,Is为定子三相电流组成的列向量,Rs、Lσs分别为定子绕组电阻、电感系数矩阵,M为定子电路方程中感应电动势对应的系数矩阵;第3行为转子电路方程,其中Ir为转子端环电流向量,Rr、Lσr分别为转子导条电阻、电感系数矩阵,N为转子电路方程中感应电动势对应的系数矩阵;第4行和第5行为转子运动方程,其中Ω为转子机械角速度,θ为转子位置角,Δt为计算时间步长。

2.2 异步转速下退磁磁场计算

采用2.1节给定转速有限元分析方法计算各个异步转速下的退磁磁场如图5所示,图中给出了s=0.65和s=0.15时各个转速稳态情况下,一个基频脉动周期T0/s(T0表示电源的工频周期)内的电磁转矩Tem、定子三相电流IABC、cosδ和Bte随时间的变化曲线。

由图5可见,异步转速下同步磁场与转子永磁磁场相对旋转0~2π电角度,Bte作相应的波动变化,当同步磁场与永磁磁场方向相反(即cosδ=-1时刻)时,Bte出现较低点,此刻的同步磁场即为该转速下对应的退磁磁场。随着转差率s减小,电磁转矩的波动幅值明显减小,定、转子电流幅值减小,相应的同步磁场增大,因此在反相时刻退磁磁场增大。s=0.65和s=0.15异步转速下对应的永磁体考核单元最低工作点磁密分别为-0.21 T、-0.3269 T。

2.3 同步速下退磁磁场计算

采用2.1节给定转速有限元分析方法,计算转差率s=0即同步速情况下的退磁磁场。同步速下同步磁场与转子永磁磁场相对位置,与转子初始位置角和电压源初始相位值有关。为了得到不同相对位置下的永磁体工作点,本文保持转子初始位置角不变,通过改变电压源初始相位角,计算得到稳态运行时δ在-90°~270°范围内永磁体考核单元的工作点变化情况。

以稳态运行时δ=180°为例,计算得到一个工频周期内定子三相电流IABC和永磁体考核单元工作点磁密Bte如图6所示。由图6结果可知,相比于异步速,同步速稳态运行时定子电流幅值恒定,永磁体工作点Bte保持不变。计算得到不同δ下的Bte,如图7所示。

由图7可见,当-90°<δ<90°时,同步磁场对永磁体起增磁作用;当90°<δ<270°时,同步磁场对永磁体起去磁作用;当δ=180°时,永磁体工作点Bte较低,此刻的同步磁场即为同步速下对应的最大退磁磁场。

2.4 最大去磁工作点确定

表3列出了利用2.1节给定转速时步有限元模型计算得到的各个转速nrl对应的退磁磁场作用下的永磁体考核单元磁密Btel。由表3中的结果可知,各转速下的退磁磁场随着转速升高而增大。同步速下的退磁磁场达到最大退磁磁场,同时该退磁磁场作用下的考核单元磁密即为LSPMSM的最大去磁工作点磁密。

将表3中永磁体考核单元磁密与转速之间的关系曲线,与表2利用时步有限元计算的实际起动过程中瞬态出现的永磁磁场与同步磁场反相时考核单元磁密与转速之间的关系曲线进行了比较,如图8所示。

通过图8中的对比曲线可知,两者计算结果基本一致。其中,当转子转速低于约5%同步速时,两者之间存在一定误差。主要原因是LSPMSM起动初期,定子电流中存在非周期分量,三相电流除产生一个同步旋转的磁场外,还会产生一个空间静止不动的衰减磁场[18]。该磁场会影响起动初始阶段的磁路饱和程度以及气隙磁密波动幅值,而给定转速有限元模型并没有计及这一衰减磁场,所以在转子转速较小时两者计算结果会存在一定的误差。考虑到给定转速有限元模型的主要目的是计算同步速时的最大退磁磁场。所以上述计算误差不会影响最大去磁工作点计算结果的准确度。因此,文中给定转速有限元模型计算最大退磁磁场并得到校核所用的最大去磁工作点是可行的。

3 提高抗退磁能力的复合材料转子新结构

3.1 理论角度定性分析

如何减小作用到永磁体的退磁磁场,从而提高电机抗退磁能力是进一步考虑的问题[19]。本文提出一种复合材料转子新结构,即在普通转子导条两侧增加容易制造的导磁导电复合材料,在不降低起动性能的基础上为退磁磁场提供漏磁路,减少透入永磁体的退磁磁场。改进槽型结构如图9所示。

3.2 抗退磁能力比较

利用2.1节有限元分析方法,计算得到电机采用改进槽型后各个转速下的退磁磁场,与采用原有槽型比较,如图10所示。由图10可见,改进槽型后,各转速下作用到永磁体的退磁磁场明显减小,同步速对应的最大去磁工作点磁密为-0.146 6 T,与原有槽型的-0.37 T相比,提高了60.38%。同时图11给出了同步速最大退磁磁场作用下2种结构电机每极转子磁场分布图。可见改进结构电机永磁体平均工作点高于普通槽型电机。复合材料转子新结构可为进一步深入研究如何提高LSPMSM抗退磁能力提供理论依据。

4 实验验证

永磁电机是否发生了不可逆退磁一般通过考核空载感应电动势E0是否明显降低来判断[20],并未涉及转子磁场的实际测量。为验证有限元模型计算分析起动过程中退磁磁场的有效性,本文采用文献[21]所述的测试系统对一台普通笼型转子实验电机进行动态磁场测量,测试时在被测永磁体一侧,开一个狭窄的安放霍尔磁场测量元件的槽,霍尔输入输出信号线经转轴的中心钻孔引出,并与滑环相连,实现信号线的动静转换,最终通过数据采集系统实时获得永磁电机转子磁场数据。

永磁同步电机的定子绕组通电起动,转子转速从零初始速度逐渐加速到同步速,将实时测量得到的与时步有限元计算得到的瞬态起动过程中永磁体某一单元磁场变化情况进行对比,如图12所示。

由图12可见,实测得到实验样机起动过程中永磁体磁场的变化趋势与计算结果基本一致。由于所用霍尔测量元件量程范围有限,且仿真条件如磁场测量位置、电机转动惯量、永磁体矫顽力等不能完全等同于实际运行条件,导致实测与计算结果在数值上存在一定差异。但实验结果和计算结果都表明LSPMSM起动过程中存在较强退磁磁场,永磁体工作点多次处于较低点,容易产生动态不可逆退磁。实测结果证实了采用有限元计算最大退磁磁场的必要性和可行性;实时测量磁场方法还为检验永磁电机抗退磁能力设计是否满足要求、现场运行条件是否安全提供一种手段。

5 结论

a.利用计及饱和、涡流等多种因素影响的有限元法,计算得到的同步速下永磁体最容易去磁位置的最低工作点,即为准确校核LSPMSM抗退磁能力的最大去磁工作点;

b.最大去磁工作点的磁密大小与电机结构有关,本文提出一种有利于提高LSPMSM抗退磁能力的复合材料转子鼠笼新结构,较传统导条结构电机,永磁体最大去磁工作点磁密提高约60.4%;

c.通过设计用于转子磁场测量的实验样机及相关测试系统,实现了永磁电机起动过程动态退磁磁场的测量。验证了起动过程中永磁体工作点多次处于较低点容易产生动态退磁这一特点,进一步表明本文计算最大去磁工作点方法的有效性和必要性。

篇4:异步电动机启动电压的选择条件

关键词:异步电动机;启动电压;母线电压

中图分类号:S275 文献标识码:A 文章编号:1009-2374(2013)20-0081-02

异步电动机在启动时需要考虑很多条件,一方面是考虑三种选择条件及启动时的母线电压、电动机定子端电压、电动机和生产机械的动热稳定;另一方面异步电动机的启动电压在这里也有三种可供选择的启动方式:全压启动、降压启动、变频启动。经过多年的实验总结,全压启动是这三种启动方式中最好的一种,下面我们将对异步电动机启动电压的条件进行分析。

1 异步电动机启动电压的选择条件分析

在异步电动机启动电压的选择条件方面会有很多因素的影响,其中启动时的母线电压情况、电动机的定子端的电压情况、电动机及生产机械时产生的动热稳定性的情况这三种因素是在考虑异步电动机启动电压选择条件时最主要的三个选择条件。下面将对这三种选择条件进行详细分析介绍。

1.1 母线电压在启动时的影响情况

电网的电压降在电动机启动时是有安全范围的,它必须在安全范围内才能正常启动,如果超出安全范围值,必须关闭不能再启动,因此,电网的电压降在电动机启动时必须在以下安全范围值内:

1.1.1 根据科学的报告显示:电动机启动分为经常启动和偶尔启动两种,我们对经常启动的电动机,它的电网电压降在10%以内;而对于偶尔启动的电动机,它的电网的电压降在15%以内。

1.1.2 另一种是电网的电压降安全范围值可以是在20%以内,甚至是更大范围内,这种情况是在保证不影响其他设备正常工作的大前提下,同时满足机械生产所需要的要求,才能允许电网的电压降值在这么大的范围内。

1.2 电动机的定子端电压在电动机启动时的影响情况

这方面主要考虑的是在电动机启动的一瞬间,会产生很大的电压降,再加上变压器有绕组阻抗的影响,会使电流在启动时变得更大,这就会导致电动机的定子端电压变小,甚至会比启动电压还小,电动机就不能正常启动,导致启动失败。

1.3 电动机及生产机械时产生的动热稳定性的影响情况

这方面考虑的主要是在电动机启动时必须满足电动机的多个要求,还要满足生产机械时的动稳定性的要求,另一方面还必须满足启动时的冲击力,这主要是针对电动机和生产机械时要承受的情况。这主要是针对大部分电动机的启动情况,另外还要把个别的电动机启动情况单独考虑,在考虑这些因素的前提下,还要考虑该电动机的生产厂家所规定的热稳定性的要求。

2 异步电动机全压启动的选择条件分析

2.1 全压启动的优点

全压启动也称为直接启动,这是因为全压启动是将启动电动机的定子直接接入额定的电压中启动。因此,全压启动具有启动所用时间较短、启动的设备简单、启动的转矩很大等优点,而且操作者容易操作、故障率低、减少成本、容易维护等特点。

2.2 全压启动的选择条件

将全压启动的各种特点考虑进去,可以总结出在全压启动时主要考虑全压启动时的冲击力矩和发热的条件这两个主要因素。而目前我国在设计制造电动机尤其是笼型感应电动机时,基本上都是按照这两个主要因素进行设计的,尽最大努力满足现在机械设计的要求。所以,在选择全压启动时,只要被用来拖动的设备在承受全压启动时这两个主要因素及冲击力矩、发热条件能够完全承受,而且它的压降在启动时还在安全允许的范围内,就可以选择全压启动。

2.3 异步电动机全压启动的选择条件

在进行异步电动机启动电压选择时,要根据具体情况具体分析,不能所有情况都按照一个标准进行分析,这样将会给异步电动机的启动带来很大损坏,甚至有危险出现。在总结前人的基础上,再将异步电动机启动的各方面因素考虑进去,笔者认为在选择全压启动的时候,必须是在有专用变压器这个大前提下才能实现的,这是硬性的规定,不能随便改动,因此,可以说专用变压器是选择全压启动的必备前提。

2.3.1 母线的剩余电压在全压启动时的校核。母线的剩余电压在全压启动时的校核,主要是在电源非常大甚至是在无穷大的情况下进行校核的,主要是针对偶尔启动的电动机考虑的,由上面分析可知:偶尔启动的电动机,它的电网的电压降在15%以内,因此,它的校核可以用下面公式进行校核:

式中,电动机启动时,母线的剩余电压百分比为U%;额定电压为Ur,单位是kV;启动时的最大电流为Imax;Imax是将本台电动机在启动时的电流和其余电动机在运行时的电流的总和包括在内的,单位为A;变压器的阻抗电压的百分比为Uk;变压器的额定容量为SrT,单位为kVA。

选择全压启动的前提是,满足U%在85%以上就行。

举例说明:一个带动五台215kW、380V,其变压器为1600kVA的异步电动机,它的变压器的阻抗百分比为Uk=6.5%,电动机的额定电流In=427A,启动电流倍数K=5.5(将机组最不好的情况考虑进去,一台启动,四台正常运行),则:

90%>85%,合格。

2.3.2 将变压器的过载能力考虑进去分析。变压器过负荷(室外配电装置)所允许的延续时间如表1所示。我们可以从表1中得出,变压器在较短时间内对电动机的过载来说,不是完全不行的,也是有一定的潜力存在的。

举例说明:如果一台电动机在白天晚上一共启动六次,并且每次的启动时间都是十五秒,并且变压器的负荷率在0.9以内,这时最大的启动电流就变成变压器额定电流的四倍了。

K=Imax/Ir2=4.057/2.309=1.76

当过载为78%时,查表1可知:允许的延续时间大约是在7.5min,从表1可以看出,启动的时间一般只有几秒到十几秒的时间,当然这对变压器来说是完全能够承受的。

3 结语

异步电动机的启动电压选择条件主要有三种影响因素,我们一定要认真考虑这三方面的影响因素,在遇到问题时要进行全面的分析,并最终做出选择。这样在异步电动机启动时就能减少事故的发生,提高安全性。

参考文献

[1] 赵晓荣.低压异步电动机全压启动方式的选择[J].安徽水利水电职业技术学院学报,2011,(3).

篇5:异步工作流体系结构的选择

在工程设计中, 我们经常对不满足全压起动条件的电动机采用降压起动的方式, 其中Y-△起动方式以其设备价格低、起动电流小、控制方式简单、维护方便等优点在民用建筑电气设计中被普遍采用。

在进行电气图纸校审及施工图审查的工作过程中, 发现对于采用Y-△方式起动的电动机, 其电气主回路中电气元件选择不妥或配电线路的导线的截面的选择偏大, 造成浪费的现象是较普遍的, 特别是热继电器的选择及整定值偏大, 一旦电动机出现运行过载将不能正常保护, 这在电气设计中是不允许的。因此, 有必要对这一问题进行探讨, 作一个简单的总结。

2 电动机Y-△起动分析

2.1 电动机Y-△起动基本控制原理图

电动机Y-△起动过程分为2个阶段:

第1阶段, 电动机定子绕组Y接起动.当按下起动按钮SS时, 接触器KM1得电, 配电回路中主触点闭合, 使电动机定子绕组端子1, 3, 5接通电源;同时接触器KM3得电, 其主触点闭合, 使电动机定子绕组端子2, 4, 6短接, 此时电动机定子绕组接成Y形, 并开始起动运转。展开的示意图如图2 (a) 。

第2阶段, 电动机定子绕组△接线, 转入正常运行, 经时间继电器KT延时, 电动机Y运行达到一定转速, KT常闭触点打开, 接触器KM3失电, 其主触点断开、常闭辅助触点闭合, 使接触器KM2得电 (接触器KM2, KM3互锁) , KM2主触点闭合, 定子绕组端子1和6、2和3、4和5相接, 此时电动机定子绕组接成△形, Y-△起动过程结束, 进入正常△形运行状态.展开的示意图如图2 (b) 。

2.3 电动机定子绕组Y形接法和△形接法的电流、电压分析。

我们简单分析一下电动机定子绕组Y接法和△接法时电流、电压的变化 (设定子每相绕组阻抗为Z, 电动机额定电流为Ie, 额定电压为Ue) 。

当电动机定子绕组为Y形接法时, 见图3 (a) , 定子绕组端电压为相电压:

则有:UAN= (1/Á) Ue

当电动机定子绕组为△形接法时, 见图3 (b) , 定子绕组端电压为线电压:

则有:UAB=Ue

由上述可知:

所以, 定子绕组Y形接法时线路电流只有△接法时线路电流的1/3倍;定子绕组△接法时绕组内的电流为线路电流的1/Á倍。

3 配电回路的电气元件及导线截面的选择

对于Y-△起动的电动机主回路接线在《建筑电气通用图集》中列出几种.我们选用最常用的一种 (如图4) , 来介绍配电回路的电气元件及导线截面的选择。综合以上的分析及图2、图3, 我们把电动机Y-△起动时配电回路的电气元件及导线通过的电流列成下表:

Ie-电动机额定电流 (可由电动机样本查得)

IQ-电动机全压起动时的起动电流 (可由电动机样本查得)

从上表可知, 各电气元件及导线截面的选择应根据电动机△形接线正常运行时所通过的电流来选择, 而不是一概由Ie来选择.

3.1 断路器 (QF) 的选择

QF通常选用电动机保护型, 应按Ie来选择。在Y-△起动时, 起动电流仅为直接起动时电流的 (1/3) 倍, 所以选用电动机保护型的QF完全能满足起动要求。

3.2 接触器 (KM1, KM2, KM3) 的选择

KM1, KM2的额定电流值以Ie/Á为依据选择。需要说明的是, 起动电流持续的时间很短, 不足以烧毁电气设备, 因此KM3的额定值可按 (1/3) Ie来选择。

一些设计中, KM1, KM2, KM3全部用Ie来选择, 显然是浪费的。

3.3 热继电器 (KH) 的选择

KH的主要作用是用于 (下转82页) 室外机的液阀 (两通) 、液管出现结露现象, 十几分钟后气阀 (三通) 、气管出现结霜现象, 说明该空调制冷剂过多或连接管弯折过度。

1.2认真测试

检修分体空调又可用测试的方法来判断其工作状态正常与否。

方法有:

1.2.1用温度计测量室内机进出风口的温差, 制冷时, 运行十五分钟左右后, 进出温差应达到8摄氏度以上 (夏季环境温度在35摄氏度以下) ;制热时, 空调工作运行十五分钟左右后进出温差应在14摄氏度以上 (冬季环境温度在7摄氏度以上) , 说明空调制冷、制热良好。

1.2.2用钳流表测空调运行时电流, 根据机器铭牌, 若电流接近标称值, 说明空调工作正常, 若偏小, 说明制冷剂不足或压缩机不良 (若是变频空调应考虑工作频率情况) 。若电流偏大, 则说明空调工作在过载状态, 可能是制冷剂过多或循环系统有堵塞或室外散热不良。

1.2.3用压力表测试空调:制冷时三通处压力 (低压) 压力为4~5个压;制热时三通 (高压) 为15~21个压时, 均为正常。若压力偏离这值太多, 说明空调不正常。

1.2.4用电子秤, 根据空调铭牌上的制冷剂类型和数量, 可以说电子秤是最标准的维修方 (上接81页) 电动机的过载保护, 在电动机运行的过程中若过载时间太长, 绕组温升超过允许值, 绝缘老化速度加快就会缩短电动机的使用寿命、在严重的情况下甚至会烧坏。所以正确选用KH尤为重要, 其热元件的额定电流值应以IKH≥Ie/Á为依据选择, 保证Ie/Á值KH可调范围之内。

在平时工程的校审及施工图审查的工作中, 笔者发现KH选择按IKH≥Ie选择的现象较多, 其整定范围的最小值也超出了Ie/Á, 不能有效地对电动机进行过载保护。需要说明的是, 如将KH安装在QF与CT*之间, 则其热元件整定电流值应以IKH≥Ie为依据选择, 并保证Ie值在热继电器可调范围之内。

3.4 电流互感器 (CT, CT*) 的选择

图4中给出了两种电流互感器的安装位置, 电流互感器CT*的选择应满足电动机的额定电流值Ie, 而电流互感器CT的选择满足Ie/Á就可以了。比较一下, 笔者倾向后者, 较为经济。

3.5 配电线路 (N1, N2) 的选择

从图2a, b及图3a, b中可以明显地看出, 无论电动机定子绕组是Y接线还是△接线, 配电线路N1, N2通过的电流都是绕组内的电流, 而直接起动的电动机配电线路的电流总是线电流。即前者△形接线正常运行时通过的电流是各相绕组内的电流IAB, 即Ie/Á, 而后者通过的电流是线电流IA (△) , 即Ie。

因此, Y-△起动的电动机在选择导线的时候, 接至电动机的导线以Ie/Á为依据选择即可, 而直接起动的电动机以Ie为依据选择。考虑到电缆的敷设方式及敷设条件, 还需乘一定的系数 (可参见设计手册) , 从而进行导线截面选择。

值得一提的是, 在一些图纸中, 采用Y-△起动的电动机的配线仍按Ie来选择, 造成一定的浪费;还有一些图纸中, 仅配出四芯导线 (3L+PE) , 而无法实现Y-△起动。

4 结论

在电动机Y-△起动配电线路设计中, 正确选择元件和导线是十分重要的, 正确的选择既可以有效的保护设备, 又能节约投资, 反则反之。工程设计中总结了电动机Y-△起动的电气元件和配电线路的选择。

摘要:通过简单介绍鼠笼式异步电动机 (以下简称电动机) 星-三角 (以下简称Y-△) 起动的特点, 提出正确、合理的选择电气主回路中电气元件及配电线路的方法, 从而有效的对电动机进行电气保护, 并减少不必要的浪费。

篇6:异步工作流体系结构的选择

【关键词】防爆电机;防爆型式;隔爆型;增安型;正压型

Large explosion-proof explosion-proof type asynchronous motor selection

Gao Dong-ming

(Shaanxi Energy and Chemical Technology Co., Ltd. NanjingJiangsu210000)

【Abstract】Introduced the right choice for large-scale explosion proof type asynchronous motor the importance of motor types and their advantages and disadvantages of the type of protection, the best large-scale explosion-proof explosion-proof type asynchronous motor, for the actual X-explosion-proof motor drive design selection for reference.

【Key words】Explosion-proof motor;Explosion-proof type;Flameproof;Increased safety;Pressure type

1. 引言

进入21世纪以来,我国的钢铁、机电、石油、化工等行业得到了迅猛的发展,带动了电机行业的快速发展,大型防爆异步电动机的需求量在逐年提高。正确地选择电动机的防爆型式可达到使用安全可靠、维护方便、经济合理的目的。

2. 电动机防爆型式的种类及其原理

爆炸性环境分为:爆炸性气体环境和可燃性粉尘环境两类,电动机的防爆型式主要有:隔爆型电动机、增安型电动机、正压型电动机、粉尘防爆型电动机。其中粉尘防爆型电动机主要应用在含有可燃性粉尘环境中。我们主要是介绍爆炸性气体环境中,电动机防爆型式的选择。

2.1隔爆型电动机防爆原理:电动机外壳能够承受通过外壳任何接合面或结构间隙渗透到外壳内部的可燃性气体混合物在内部爆炸而不损坏,且外壳内部火花、电弧、危险温度点燃内部爆炸性气体混合物后的爆炸生成物即使传到外壳外部,也不会点燃外壳外部爆炸性气体混合物的爆炸。从而达到防爆的目的。

2.2增安型电动机防爆原理:在正常运行条件下.不会产生点燃爆炸性气体混合物的火花、电弧、危险温度,并在结构上采取措施提高其安全程度,以避免在正常和规定过载条件下出现点爆现象。所以增安型电动机在正常运行时要求没有引爆源。

2.3正压型电动机防爆原理:电动机壳内充有保护气体,其压力保持高于周围爆炸性气体混合物的压力.以避免外部爆炸性气体混合物进入电机内部。它的原理主要是让电机内部的气压高于电机外部的气压,从而限制了周围爆炸性气体混合物进入设备电机的内部。这样即使电机内部产生火花、电弧、危险温度,也不可能引起爆炸性事故的发生,从而达到安全运行的目的。

3. 异步电动机防爆型式的选用原则

选用原则是:根据爆炸危险场所的类别和区域等级,以及该场所中存在的爆炸性混合物的气体级别、温度组别来选择。根据爆炸性气体环境出现的频率和持续时间把危险场所分为3个区,分别为0区、1区、2区。0区是指爆炸性气体环境连续出现或长时间存在的场所,1区是指正常运行时可能出现爆炸性气体环境的场所,2区是指正常运行时不可能出现爆炸性气体环境,如果出现也是偶尔发生并且仅是短时间发生的场所。防爆电动机主要应用在1区和2区危险场所。1区场所电动机主要防爆型式为隔爆型、正压型:2区场所电动机主要防爆型式为隔爆型、正压型、增安型。

4. 三种防爆型式的特点

4.1隔爆型电动机。这种防爆型式主要是靠高强度的外壳以及部件之间接合面试验安全间隙来保证的,其安全性很高。但这种防爆型式也会存在一些弊端。

(1)对于中心高较大的电机,当其空腔容积已大于6000cm超出国家及国际标准中关于隔爆接合面参数的规定,只能通过试验或制造厂与检验单位所达成的协议来制定特殊的要求。而对体积较大的电动机做防爆试验难度很大。

(2)对于转速较高的大电机,为满足隔爆要求,轴承套与轴之问的间隙很小,轴承部位的隔爆结构易发生与轴之间出现抱死现象,为解决这问题。在此部位一般设计成曲路结构或推盖结构,通过加工隔爆面的接合长度而适当放大隔爆接合面的间隙.虽然这在一定程度上有所改善,但对各部件的尺寸公差及形位公差要求很严格,这在高转速电机中仍會发生抱轴事故。

(3)对于IIC类隔爆型电动机,国家标准中明确规定不允许采用滑动轴承结构,对于大型高速电动机,因其转速较高、轴径较大,相应规格的滚动轴承的极限转速无法满足使用求,其轴承结构只能选用滚动轴承.所以此类电机无法做成IIC隔爆型式。

4.2增安型电动机。增安型异步电动机要求本身出现火花、电弧、危险温度的概率要小,使用环境为2区,出现爆炸性气体混合物的概率也小,两者相遇的概率就更小了,因此符合标准要求的增安型电动机应该是相当可靠、造价较低的一种防爆电动机。但是随着增安型电动机容量的增大,其防爆要求中的一些要素的保证会存在些困难,从而使其安全性降低,主要表现如下:

(1)增安型电机容量大时,电机的无火花试验无法做。而无火花要求是增安型电机的一项重要指标,GB3836.3-2000中规定,试验时的电机端子电压不能降至额定电压的90%,每次起动持续时间至少为1s对于容量大的三相异步电动机,在接近满压时直接起动会对电网造成很大的冲击,甚至有可能使并联在电网上的其它设备无法运行。(2)增安型电机的功率增大时,电机的£ 时间相对小,有时很难达到标准中的要求,t时间是增安型电机的重要考核指标。时间的定义是指电动机在最高环境温度下达到额定运行稳定温度后,电机突然堵住时,其上升到极限温度所需的时问。t时间与起动电流倍数的对应关系要符合国标GB3836.3-2000中规定f31,t时间要求最小为5s,即是给过电流、过热保护继电器切断电源所需要的时间,以避免事故发生。而对于大容量增安型异步电动机而言,很难保证t时间合格,这也给其使用的安全带来一些隐患。

(3)增安型电动机的外壳从安全作用方面只起到防护作用,内部任何部件的故障都可能产生独立的引爆源,例如接线端子松动、绝缘绕组匝间短路、转子导条与转子铁心之间松动等可能产生火花、电弧、危险温度。在正常工作条件下,增安型电气设备和隔爆型电动机的安全程度都很高,但在故障条件下,增安型电动机的安全程度却比正压型电动机及隔爆型电动机要低。

(4)正常运行时能产生火花、电弧、危险温度的结构部分,例如绕线转子电动机不能制成增安型,额定电压超过llkV的电动机不允许制成增安型防爆型式。

4.3正压型电动机。这种防爆型式的安全程度是较高的防爆结构,可用在1区或2区。正压型电动机使用时,对用户的配置要求比其它防爆型式复杂一些,主要表现如下:

(1)正压型电动机在正常运行时,始终保持设备内部规定的正压值。这要求设备外壳及附属管道在承受设备内部最大正压值的压力情况下,具备足够的机械强度和严密的结构,以避免不必要的压力泄漏及危险变形。要能承受供给保护气体的送风机正常运转时,在设备外壳及管道上产生的最大压力的1.5倍或高于200 Pa的压力。

(2)为防止意外事故.设备应当设置安全保护设施,设备起动前要通过安全装置。例如时间继电器、流量计等,保证有足够的保护气体对设备外壳内部进行清扫和换气。换气量最少为设备外壳容积的5倍。为保证其防爆性能,必须要有可靠地作为保持正压的保护装置和联锁机构,例如电动机内部的正压值降到最小规定值以下时,正压保护装置要能自动切断电源,并发出报警。

(3)正压型电动机使用时,要求要有送风机(如:鼓风机、压缩机等),输送保护气体至电机内部。要求送风机的电源应由独立电源供电或从正压外壳用的隔离开关的供电侧供电:同时,供气管道也要求设置一些相应的监控设备。

5. 结束语

对于大型异步电动机,当采用上述其它防爆结构比较困难时,应该采用正压型结构。由于正压型附属设备较多,所以成本较高,但其可靠性高;对于大型防爆异步电动机来讲,应是一种最安全可靠的防爆型式。

参考文献

[1]全国防爆电器设备标准化技术委员会GB3836.3-2000爆炸性气体环境用电气设备,[S].第3部分,中国标准出版社,2000:156-322.

[2]王文义.爆炸危险场所电气防爆安全技术[M].北京:学术书刊出版社,1991(3):200-205.

[3]全国防爆电器设备标准化技术委员会。GB3836.14-2000爆炸性气体环境用电气设备[S].第14部分.北京:中国标准出版社.2000:424



[文章编号]1619-2737(2012)08-29-682

上一篇:对翻转课堂的初步认识下一篇:防控人感染禽流感工作会议简报