跳转至

地震作用下的结构振动开环前馈控制

背景

主动结构控制执行器可以施加力来减小地震期间的结构运动。可实现的减振 效果取决于结构动力学、执行器力上限,以及对未来激励的掌握程度。本例 用一个阻尼结构模态和一段规定的合成地面加速度记录,单独展示这种权衡。

优化得到的是在整段记录预先已知条件下计算的理想开环前馈指令。 它不是因果反馈控制器,也不能解释为可直接实施的地震预警控制策略。

激励与单自由度模型

20 秒地面加速度为

\[ \begin{aligned} a_g(t)={}&0.35g \exp\left[-\left(\frac{t-5}{2.2}\right)^2\right] \sin(2\pi(1.1)t)\\ &+0.12g \exp\left[-\left(\frac{t-9}{3.0}\right)^2\right] \sin(2\pi(2.4)t+0.4), \end{aligned} \]

其中 \(g=9.80665\ \mathrm{m/s^2}\)。令 \(x\) 为相对/模态位移, \(v=\dot x\) 为其速度。实际执行器力由归一化控制 \(u\) 表示:

\[ F(t)=F_{\max}u(t),\qquad |u(t)|\le1. \]

设模态质量为 \(m_s\),固有频率为 \(\omega_n\),阻尼比为 \(\zeta\),则 基底激励单自由度动力学为

\[ \begin{aligned} \dot x&=v,\\ \dot v&=-2\zeta\omega_nv-\omega_n^2x +\frac{F_{\max}}{m_s}u-a_g(t). \end{aligned} \]

参数取值为

\[ m_s=250\,000\ \mathrm{kg},\qquad \omega_n=2\pi(1.2)\ \mathrm{rad/s},\qquad \zeta=0.03,\qquad F_{\max}=1.0\times10^6\ \mathrm N. \]

目标函数、端点与约束

结构从静止状态出发,并在终端回到静止:

\[ x(0)=v(0)=0,\qquad x(20)=v(20)=0. \]

归一化目标函数权衡位移、速度和控制代价:

\[ \min J=\int_0^{20} \left[ \left(\frac{x}{x_{\max}}\right)^2 +0.05\left(\frac{v}{\omega_nx_{\max}}\right)^2 +0.02u^2 \right]\,\mathrm dt, \qquad x_{\max}=0.08\ \mathrm m. \]

路径边界为

\[ |x(t)|\le0.08\ \mathrm m,\qquad |v(t)|\le1.0\ \mathrm{m/s},\qquad |F(t)|\le1000\ \mathrm{kN}. \]

被动响应只是独立对照,不属于受约束优化问题,因此可以超过主动轨迹的 80 mm 位移边界。

变量与单位

符号 含义 单位
\(t\) 时间 s
\(x\) 结构相对或模态位移 m
\(v\) 相对或模态速度 m/s
\(a_g\) 规定的地面加速度 m/s²
\(u\) 归一化执行器指令 无量纲
\(F\) 理想执行器力 N
\(m_s\) 模态质量 kg
\(\omega_n\) 无阻尼固有角频率 rad/s
\(\zeta\) 模态阻尼比 无量纲
\(J\) 归一化惩罚的积分 s

建模选择与适用边界

相对/模态位移是基底激励 SDOF 方程的正确坐标,不应把它理解为楼层绝对 位移或多层层间位移分布。\(160\times4\) Lobatto 网格能够解析规定激励的 两个频率分量。

执行器是理想的:力瞬时跟随 \(u(t)\),没有力变化率、延迟、内部饱和动态、 行程、功率、能量或连接结构模型。控制器还非因果地知道完整地震记录。 模型没有状态估计器、反馈律、鲁棒性分析、土-结构相互作用、高阶模态、 屈服或参数不确定性。因此,本例给出的是乐观的前馈性能参考,不是可部署 控制器。

运行示例

python -m examples.structural_vibration_control

保存图片且不打开窗口:

python -m examples.structural_vibration_control --save structural-vibration-control.png --no-show

独立数值验证

脚本在 4,001 个时刻重构配点解,对控制力样本作线性插值,再用高精度 DOP853 求解器独立积分物理 SDOF 方程;同一个求解器还通过 \(u(t)=0\) 计算被动响应。脚本比较重新积分与配点状态,检查终端静止条件和全部密集 边界,并积分物理控制力平方。

指标 验证值
目标函数 \(J\) \(0.02300351\)
被动相对/模态位移峰值 \(395.2115\ \mathrm{mm}\)
受控相对/模态位移峰值 \(1.1492\ \mathrm{mm}\)
理想执行器力峰值 \(885.675\ \mathrm{kN}\)
执行器力平方积分 \(1.127056\times10^{12}\ \mathrm{N^2\,s}\)
最大前向积分位移误差 \(4.844\times10^{-5}\ \mathrm m\)
最大前向积分速度误差 \(6.712\times10^{-4}\ \mathrm{m/s}\)
最大密集路径边界超限 输出精度下为 \(0\)

从 395.2115 mm 降到 1.1492 mm 的显著减振效果,部分来自优化器能够看到 全部未来激励并驱动理想执行器。它是这一确定性教学模型的数值结果,不是 因果真实控制器可以预期达到的减振比例。

合成地面加速度、被动与主动控制相对位移,以及理想执行器力

源代码

完整可运行示例见: examples/structural_vibration_control.py