2. 迟滞数学模型(一):Preisach模型的基本原理与数学表达
各位工程师朋友,咱们今天来聊聊Preisach模型。说实话,我第一次接触这个模型的时候,也觉得它挺抽象的。但后来在实际项目中用多了,发现它其实是个很实用的工具。说白了,它就是用来描述压电陶瓷那种“走老路不走新路”的迟滞特性的。
2.1 为什么需要Preisach模型?
先说说我个人的体会。几年前我在做一个精密定位平台的项目,压电陶瓷驱动的。开环控制时,定位精度总是差那么一截。我反复检查了驱动电路、机械结构,都没问题。后来才意识到,是迟滞效应在捣鬼。
你想想看,压电陶瓷的位移不仅跟当前电压有关,还跟它之前走过的“历史”有关。这就麻烦了。普通的线性模型根本描述不了这种“记忆效应”。
那怎么办呢?学术界和工业界想了很多办法。其中Preisach模型是应用最广的一个。它最早是德国物理学家F. Preisach在1935年提出的,原本用来描述铁磁材料的磁滞现象。后来被移植到压电领域,效果出奇的好。
核心思想:Preisach模型把复杂的迟滞环,分解成无数个简单的“迟滞算子”的叠加。每个算子就像一个微小的开关,只有“开”和“关”两种状态。
2.2 Preisach模型的基本构成
模型的核心元件叫迟滞算子,记作 γαβ。其中α和β是两个阈值参数,α是上升阈值,β是下降阈值,且α ≥ β。
这个算子的行为很简单:
- 当输入电压u(t)上升到大于α时,算子输出为+1(开状态)
- 当输入电压u(t)下降到小于β时,算子输出为-1(关状态)
- 在α和β之间时,输出保持之前的状态不变
嗯,这里要注意:每个算子都有“记忆”。它记得自己上一次是开还是关。这就是迟滞的根源。
我画了一张图,帮你理解这个算子的行为:
你看,这个算子的输出只有两个值:+1和-1。但无数个这样的算子叠加起来,就能描述任意复杂的迟滞曲线。
2.3 数学表达形式
Preisach模型的数学表达式是这样的:
f(t) = ∬α≥β μ(α,β) · γαβ[u(t)] dα dβ
其中:
- f(t) 是模型的输出(比如压电陶瓷的位移)
- u(t) 是输入电压
- μ(α,β) 是权重函数,也叫Preisach函数
- γαβ 是前面说的迟滞算子
- 积分区域是 α ≥ β 的三角形区域
说白了,这个公式就是在说:最终的输出,是所有迟滞算子的加权和。每个算子的权重由μ(α,β)决定。
我的经验:在实际工程中,我们不可能真的去积分。通常的做法是把α-β平面离散化,分成N×N个网格。每个网格对应一个算子。N取多少合适?我一般取20-50,精度和计算量都能接受。
2.4 离散化形式
离散化之后,模型变成这样:
f(k) = Σi=1N Σj=1i μij · γij[u(k)]
这里:
- k 是离散时间步
- N 是离散化网格数
- μij 是网格(i,j)上的权重
- γij 是对应的迟滞算子
我刚开始做的时候,总觉得这个求和公式有点绕。后来我画了个表格,把每个算子的状态和权重列出来,就清楚多了。
| 算子编号 (i,j) | 阈值 (α,β) | 当前状态 γ | 权重 μ | 贡献值 μ·γ |
|---|---|---|---|---|
| (1,1) | (0.1, 0.1) | +1 | 0.05 | 0.05 |
| (2,1) | (0.2, 0.1) | -1 | 0.03 | -0.03 |
| (2,2) | (0.2, 0.2) | +1 | 0.04 | 0.04 |
| ... | ... | ... | ... | ... |
| 最终输出 f(k) | 0.06 | |||
你看,每个算子的贡献就是权重乘以当前状态。把所有贡献加起来,就得到当前时刻的输出。
2.5 模型的几何解释
Preisach模型还有一个很漂亮的几何解释。在α-β平面上,所有满足α ≥ β的点构成一个直角三角形。每个点对应一个迟滞算子。
随着输入电压的变化,这个三角形区域会被一条“记忆曲线”分成两部分:
- 一部分区域的算子处于+1状态(开)
- 另一部分区域的算子处于-1状态(关)
这条分界线,就是输入电压的历史极值点决定的。我习惯叫它“记忆线”。
我曾经踩过的坑:有一次我忽略了记忆线的更新规则,结果模型输出跟实测数据差了十万八千里。后来才发现,每次输入电压改变方向时,记忆线都要重新计算。这个细节特别容易出错,大家一定要小心。
2.6 模型的优缺点
用了这么多年Preisach模型,我总结了几点:
优点:
- 精度高,能描述任意形状的迟滞环
- 有明确的物理意义,每个算子对应一个微观迟滞单元
- 数学形式成熟,有大量的理论支持
缺点:
- 计算量大,尤其是网格数多的时候
- 需要大量的实验数据来辨识权重函数μ(α,β)
- 逆模型求解比较麻烦(这个我们后面会专门讲)
嗯,这里要补充一句:Preisach模型虽然好,但不是万能的。它假设迟滞是“无记忆的”——也就是说,它只记得极值点,不记得中间过程。对于某些特殊的迟滞现象,这个假设可能不成立。
2.7 小结
今天咱们把Preisach模型的基本原理和数学表达捋了一遍。核心就三点:
- 用无数个简单的“开-关”算子叠加,描述复杂的迟滞
- 每个算子有上升阈值α和下降阈值β
- 最终输出是所有算子输出的加权和
我个人觉得,理解Preisach模型的关键,是抓住“记忆”这两个字。压电陶瓷的迟滞,本质上就是一种记忆效应。而Preisach模型,就是用数学语言把这种记忆效应描述了出来。
下一节我们会聊怎么用实验数据来辨识这个模型,也就是怎么确定那些权重系数。到时候我会分享一些我在项目中用过的实用技巧。