将电路转换为 C

标签 c simulator control-theory

有没有人知道如何将前馈运算放大器 PID 循环转换为 C 代码?我正在尝试进行这样的转换,老实说,不知道从哪里开始。我可以通过 ADC、电压、电流等获取所有输入值,但编写前馈 PID 对我来说有点陌生。有什么想法吗?

最佳答案

您正在谈论用非线性控制系统的软件替换硬件。我认为您唯一的希望是编写硬件模拟。

我对 PID 一无所知,但通过 Google 快速搜索发现:

http://www.cds.caltech.edu/~murray/books/AM05/pdf/am06-pid_16Sep06.pdf

它的方程式和图表似乎描述了一个理想的 PID 控制系统。您可以从编写实现这些方程式的代码开始。

在我仔细考虑了你的问题之后,我觉得这可能是一个普遍的问题。我在 Google 上搜索了“离散 PID Controller 仿真”,找到了 Simulink、Matlab 和 Python 的答案,以及更多书籍引用。

您可能想从 Python 食谱开始。与 C 相比,使用 Python 更容易、更快捷,如果您使用 SciPy,您可以绘制结果并确保获得所需的数字。一旦你让它在 Python 中工作,然后根据需要移植到 C。

http://code.activestate.com/recipes/577231-discrete-pid-controller/

关于将电路转换为 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13404658/

相关文章:

matlab - 用神经网络确定函数参数

algorithm - PID Controller - error=0 时的直觉

c++ - 在 C/C++ 中存储 PCRE 编译的正则表达式

c++ - 将 ADA API 公开给 C/C++(可扩展方式)

matlab - Matlab中非数元素的索引

ios - RoboVM Studio - LibGDX - UnsatisfiedLinkError - IOS 模拟器不工作?

iphone - 为什么我的程序在 objc_msgSend() 期间在 _class_isInitialized() 中接收到 EXC_BAD_ACCESS?

c - 链表的并集

c - 从字符串中提取不确定数量的整数

iOS模拟器只在屏幕的四分之一处显示应用程序