用 AC/DC 模块控制电流和电压源

作者 Walter Frei

2016年 2月 25日

如果你曾经在 COMSOL Multiphysics 中使用过终端边界条件,就会知道这个电气边界条件可以施加电流或电压,以及其他激励类型。但是你知道吗,在瞬态仿真中,你还可以在这个边界条件的基础上实现激励类型之间的动态切换。例如,如果你尝试建立一个电流或电压受限的电源,那么这个边界条件就很有用。今天,我们来看看如何实现这种切换行为。

终端边界条件

当使用 AC/DC 模块MEMS 模块等离子体模块时,终端条件可以应用在任何传导或位移电流可以流过的域的边界。有了这个边界条件,就可以施加电流、电压或功率激励,以及连接到外部定义的电路或已知阻抗的终端连接。

无论激励的类型或使用的物理场接口如何,终端条件总是指定电压,但可以选择给模型添加更多的方程。例如,当使用带有指定电流的终端条件时,软件会自动添加一个集成组件耦合 功能,用于集成通过指定边界的总电流。除此之外,软件还添加了一个全局方程,为终端电压的模型引入了一个额外的自由度,这样通过终端的电流就等于用户指定的电流。

全局方程与集成组件耦合的组合是相当灵活的,你可能已经熟悉了它在结构力学传热建模中的用法。现在让我们来看看如何在不同的终端类型之间轻松切换。

使用一个接地和终端条件描述的示意图。
一个材料块的示意图,它的两边分别是接地和终端条件。终端边界条件将在电压或电流源之间切换。

用单一边界条件控制电流或电压

我们来研究一个非常简单的电流模型,它只有一个材料块,一边是接地边界,另一边是电流终端边界条件。首先考虑稳态情况,并讨论如何通过添加全局方程来施加电流或电压激励。全局方程会被添加到电流 接口(如果要添加全局方程到物理场接口,请确保在模型开发器的显示 菜单下切换到高级物理选项)。

首先,我们看一下终端的设置。从下面的截图中我们可以看到,终端类型是电流,施加的电流是 Current 变量,它将被全局方程求解。

带外加电流的电流终端类型。
有外加电流的电流型终端条件,将由全局方程控制。

在 COMSOL Multiphysics 中设置全局方程。
全局方程设置控制终端条件下的外加电流。

上面的截图中显示了全局方程的设置。Current 变量有一个单一的方程,该方程必须满足

(Current-1[A])/1[A]

根据定义,这个方程必须等于零,所以外加电流等于 1 A。这是一个直接的方程;它不包括来自模型的任何反馈,而是设置 Current 的值。全局方程本身是没有维度的,因为我们还想满足一个电压方程。可以通过简单地改变下面这个方程来切换到电压激励。

(ec.V0_1-3[V])/3[V]

其中,变量 ec.V0_1 是由终端边界条件自动定义的。

因此,我们正在外加一个使终端电压等于 3V 的电流。这个方程从模型中引入了一个反馈,但模型仍然是线性的。它仍然会在一次迭代中求解,但需要使用直接求解器。如果你自己尝试一下,可以看到你现在可以在电压和电流激励之间进行切换,只需改变一个瞬态问题的全局方程就可以了。接下来,我们将看看如何在瞬态仿真中动态地切换这些激励。

在瞬态仿真中切换全局方程

假设我们有一个功率源驱动的电阻可变的系统。例如,由于焦耳热感应加热,电阻随温度变化。我们还假设,随着电阻的变化,电源可以提供一个恒定的电流达到某个峰值电压,或者一个恒定的电压到某个峰值电流。

为了给模拟这种类型的切换,我们将使用事件 接口。我们之前写过使用事件 接口实现热问题的文章,是关于恒温器的,建议您阅读那篇博客来了解技术细节和相关的求解器设置。

事件 接口包含四个功能:一个离散状态 功能,一个指示器状态 功能,以及两个隐式事件 功能。首先,离散状态功能定义了一个单状态变量 CC,它作为一个标志,用于指示电源是处于恒定电流模式,CC=1,还是恒定电压模式,CC=0。还有一个指标状态功能,定义了两个指标状态变量,PeakVPeakI,它们应该随时间平滑变化。最后,两个隐式事件功能,将跟踪这两个指标状态变量,并将离散状态变量 CC 改变为零或一,如果逻辑条件得到满足。下面的屏幕截图显示了这些设置。

屏幕截图高亮显示了离散状态功能。
离散状态功能定义了一个信号终端状态的标志。

指示器状态功能
指示器状态功能定义了两种不同的事件指示器。

事件接口中的隐式事件功能。
隐式事件可以切换离散状态定义的两种终端状态变量。

现在只剩下一项任务了,就是将 Current 变量的全局方程修改为

CC*((Current-1[A])/1[A])+(1-CC)*(ec.V0_1-3[V])/3[V]

可以看到,这是前面开发的两个表达式的总和,用于电流控制或电压控制,使用 CC 标志在它们之间切换。设置好以后,就只需要在时域中用我们之前博客中描述的研究设置进行求解,并使用直接求解器对电流 电压场、终端电压和电流的全局方程进行求解,如下面的屏幕截图所示。前处理中定义的多个事件 变量可以在各自单独的分离步骤中进行求解。

求解器设置。
求解器设置显示变量是如何被隔离的,并显示正在使用直接求解器。

使用这些功能后,我们现在已经实现了下列电源行为:

  • 施加 1 A 的初始恒定电流,并调整外加的电压来保持这一电流。
  • 如果电压超过 3 V,则切换到恒压模式。
  • 如果电流超过 1 A,再切换到恒定电流模式。

为了生成一些有代表性的结果,我们将明确地使域的总电阻随时间变化,如下图所示。从随后的电流和电压图中可以看到,电源电流最初是恒定的,但由于电阻增加,电压上升。然后,当电源切换到恒压模式,电流也随之变化。随着电阻的回落,电流上升到峰值,电源又再次切换到固定电流模式。

恒定电流和恒定电压之间的切换。
随着器件电阻随时间的变化,信号源在恒定电流和恒定电压之间切换,以确保永远不会超过最大电流和电压。

结束语

本篇博客,我们演示了一个同时将电流和电压控制在最大值的方案,也就是使用全局方程和终端边界条件来实现。文中使用的终端边界条件的功能并不限于电流 接口。它也可以在磁场和电场 接口中使用,在磁场 接口中它被称为边界馈电或间隙馈电条件。磁场 接口还包括一个多匝线圈域功能,可以等效使用。

我们也可以在频域-瞬态 研究中使用这种类型的控制方案,譬如在焦耳或感应加热中,在频域中求解电磁问题,而在时域中解决热问题,即解决导致阻抗变化的温度变化。相关应用您可以查看 RF 加热和消融这篇博客。

电池设计模块腐蚀模块电化学模块电镀模块都包含电极电流和电解质电流的边界条件,可以与文中演示的终端条件等价使用。此外,锂离子电池的容量衰减教程模型还显示了如何对电池的充电和放电进行建模。

我们希望你能看到,只需要有一点想象力,就有可能用终端边界条件和事件 接口实现一些相当复杂的控制方案。

如果你有一个特定的应用想使用 COMSOL Multiphysics 建模,请立即与我们联系


评论 (0)

正在加载...
浏览 COMSOL 博客