6 个版本 (2 个稳定版)
1.1.0 | 2023年7月1日 |
---|---|
1.0.0 | 2022年7月17日 |
0.10.1 | 2021年4月18日 |
0.10.0 | 2021年3月7日 |
0.8.0 | 2020年8月30日 |
#263 in 数学
520KB
13K SLoC
Automatica - 自动控制系统库
状态空间表示
通过四个矩阵 A、B、C、D 创建线性、时不变的系统的状态空间。
计算系统的极点。
从给定的输入计算系统的平衡点(状态和输出)。
系统时间演化
使用显式 Runge-Kutta 二阶方法进行固定步长的时响应。
使用显式 Runge-Kutta 四阶方法进行固定步长的时响应。
使用显式 Runge-Kutta-Fehlberg 四阶和五阶方法进行自适应步长的时响应。
使用隐式 Radau 三阶方法进行固定步长的时响应。
离散时间系统
离散线性系统的时间演化。
使用前向欧拉、后向欧拉和 Tustin 方法对连续线性系统进行离散化。
使用前向欧拉、后向欧拉和 Tustin 方法对传递函数进行离散化。
传递函数表示
单输入单输出 (SISO)
给定多项式的分子和分母创建一个单传递函数。
计算函数的(复数)极点和(复数)零点。
在给定的输入上评估传递函数。
多输入多输出 (MIMO)
给定多项式矩阵和特征多项式创建一个传递函数矩阵。
在给定的输入向量上评估矩阵。
(可变)矩阵元素分子的索引。
表示之间的转换
SISO 状态空间 -> 传递函数
MIMO 状态空间 -> 传递函数矩阵
传递函数 -> 状态空间(可观察形式)
图表
Bode 图
在一个频率区间内计算单传递函数的幅值和相位。
极坐标图
传递函数的极坐标图。
根轨迹
通过改变反馈增益来改变系统的根。
控制器
PID(比例-积分-微分)控制器,包括理想和实际的。
示例
库的示例使用方法可以在examples/文件夹中找到。
依赖项
~1.5MB
~26K SLoC