登录 注册
当前位置:主页 > 资源下载 > 35 > matlab-PID_Kalman代码:PID卡尔曼控制器

matlab-PID_Kalman代码:PID卡尔曼控制器

  • 更新:2024-07-27 09:19:20
  • 大小:4KB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:Matlab - 大数据
  • 格式:ZIP

资源介绍

pid控制器代码matlab 使用卡尔曼进行参数估计的PID和LQR控制器 该项目是Arduino Uno上PID-LQR控制器sum的实现。 它使用位置测量,并使用卡尔曼滤波器估算速度和电流。 由于这是一个具有3个内部变量且只有一个输出(测量位置)的系统,因此方程式已针对该应用进行了调整,以优化处理时间。 PID增益 PID增益K_P,K_I和K_D以前是在连续时间内计算出来的,并适用于离散时间。 对于100%振幅,其目标到达时间为120ms。 LQR增益 导入系统的状态空间表示后,使用Matlab函数lqr计算每个内部变量的LQR增益。 卡尔曼滤波 卡尔曼滤波器对所有变量均使用0.02的估计误差Q,对位置使用测量误差R = 0.1。 另外,正在考虑3x1参数H = [1 1 1]。 这简化了几个方程,因此隐含在代码中。 它计算(基于先前的值)由X = [current(A); 速度(rad / s); 位置(rad)]和附加变量P,该变量将先前假定的误差相加。 然后,它计算三个变量中每一个的卡尔曼增益K。 最后,脚本估计LQR控制器使用的X的下一个值。