那么,如何使用我们最喜欢的语言 Python 来创建数字孪生呢?为什么我们甚至认为它会起作用?
答案很简单。只需看上图,然后再看下图,就可以看到数字孪生模型和经典 Python 对象之间的等价关系。我们可以使用合适的方法/函数模拟传感器和数据处理器,将收集到的数据存储在数据库或内部变量中,并将所有内容封装到 Python 类中。
一旦我们完成了这一点,也可以希望 Python 对象
-
可用于合适的模拟程序,
-
可以探测数据,并且
-
甚至可以接受优化程序以增强合适的内部参数。
当然,我们可以为该方案添加几乎无限的复杂层,并使对象成为真正复杂的数字构造。但是,遵循奥卡姆剃刀原则,我们应该从简单开始,然后逐步增加复杂性。
…创建数字孪生的主要促成因素是收集数据的传感器和处理系统……
在本文中,我们将采用简单的分步方法从单个半导体器件(物理对象)中创建数字孪生对象。为了简单起见,我们甚至不会对传感器进行建模,而是将它们模拟为半导体器件上的简单端电压。
我们周围有一些物理对象体现了现代文明的进程。不完整的列表可能如下所示,
-
内燃机——体现了所有的机动性
-
印刷机——包含所有知识
-
电动机——体现所有工业运动
-
基于半导体的晶体管 - 体现了所有电子/互联网
在加入数据科学领域之前,我在半导体行业工作了十多年。自然,我会被这个数字孪生演示的相关示例所吸引。
那么,什么是MOSFET?
尽管最早的半导体晶体管是所谓的“双极结器件”,但几乎所有现代晶体管都是称为 MOSFET 的形式。它是一个缩写词,代表“金属-氧化物-半导体场-效应-晶体管”。
基本上,它是一种由金属和半导体(例如硅或锗)层制成的器件,中间夹着一层薄的氧化物(或其他电绝缘体)材料层。
这是最早的MOSFET专利之一的历史形象,
我们可以通过采用具有三个端子(漏极、源极和栅极)的器件模型(也称为电路模型)来简化内部结构。
记住 MOSFET 行为的最简洁方法是将其想象为数字开关。下面是它的工作原理,
-
如果Gate和Source之间的电压低于某个阈值,则开关关闭,并且在Drain和Source之间没有电流(或信息)流动。这显示在上图的右下角。
-
当栅极到源极电压高于此阈值时,开关打开。漏源电流也由它们之间的电压决定。这显示在上图的右上角。
因此,MOSFET 的基本用途是作为电压控制开关,即我们可以通过控制第三个端子上的电压来控制其两个端子之间的电流(或信息)量。
我们想在数字对象中建模哪些特征?这决定了数字孪生的复杂性和数据结构选择
考虑到这一点,创建数字孪生唯一要记住的是通用 MOSFET 的三个重要参数,
-
Vth:它是阈值电压(在Gate和Source之间),高于该阈值,开关就会导通。
-
gm:这是 MOSFET 在导通后可以在漏极和源极之间传输电流的“简易性” 。这个数字越高,电流越大。它可以被认为是电阻的倒数(表示给定电压下电流流动的电阻)。
-
BV:这称为“击穿电压”。这没有在理想的开关描述中讨论,也不会在数字孪生中建模。这代表了 MOSFET 在其处于关断状态时可以在其漏极和源极之间保持多少电压的限制。超过此限制,MOSFET 再次开始导通,但不是以受控方式,即我们无法控制电流,它基本上是无用的。但是,此参数对于设计和建模很重要,因为它限制了特定应用中特定设备的选择。
记住,MOSFET 的基本用途是作为电压控制开关……