Wolfram 语言

直流电动机的闭环速度控制

在闭环控制中,控制器基本上比较感兴趣变量的期望值和实际值,并调整控制作用力,使得实际值与期望值匹配。

显示完整的 Wolfram 语言输入

在该范例中,速度控制器部署到 Arduino Uno 微控制器板。使用编码器测量 电机 的实际速度。使用电位计设定所需的速度。电机使用 motor shield 供电。最后,参考和实际速度通过串行 RS-232 总线传输,该总线将使用设备框架读取。

直流电机的型号。

设计一个采样周期为 0.25 秒的 PID 控制器。

编码器每转 12 个计数,电机齿轮箱的齿轮比为 9.86。创建一个以 rpm 为单位获取编码器读数的模型。

参考电压由电位计设置,范围为 05V。将其重新调整为 0 至 500 rpm。

用于比较参考速度和实际编码器速度的比较器。

微控制器输出到电动机是基于 PWM 信号的占空比。电机两端的实际电压来自电机端罩。以下是基于测量数据的分段拟合的电压和占空比之间的关系。

端罩的反模型将电压映射到占空比。

Arduino、端罩、电机以及输入和输出的框图。

要部署到 Arduino 的控制器有 2 个输入和 3 个输出。

第一个输入是由电位计值设置的参考速度。第二个输入是编码器测量的实际速度。

第一个输出是驱动电机的 PWM 信号的占空比。另外两个是通过串行 RS-232 连接传输的参考和实际速度。

部署代码。

打开与目标的串行连接。

设置计划任务,每 0.25 秒读取一次值。

显示完整的 Wolfram 语言输入

绘制结果,显示对设置参考值和干扰的响应。

删除任务并关闭设备连接。

相关范例

de en es fr ja ko pt-br