电子发烧友网

电脑版
提示:原网页已由神马搜索转码, 内容由www.elecfans.com提供.
电子发烧友网>电子资料下载>嵌入式开发>PID算法详解及实例分析

PID算法详解及实例分析

2023-11-09|pdf|未知|次下载 |免费

资料介绍

PID算法详解及实例分析

#include

using namespace std;

struct _pid{
   float SetSpeed; //定义设定值
   float ActualSpeed; //定义实际值
   float err; //定义偏差值
   float err_last; //定义上一个偏差值
   float Kp,Ki,Kd; //定义比例、积分、微分系数
   float voltage; //定义电压值(控制执行器的变量)
   float integral; //定义积分值
}pid;

void PID_init(){
   printf("PID_init begin \n");
   pid.SetSpeed=0.0;
   pid.ActualSpeed=0.0;
   pid.err=0.0;
   pid.err_last=0.0;
   pid.voltage=0.0;
   pid.integral=0.0;
   pid.Kp=0.2;
   pid.Ki=0.015;
   pid.Kd=0.2;
   printf("PID_init end \n");
}

float PID_realize(float speed){
   pid.SetSpeed=speed;
   pid.err=pid.SetSpeed-pid.ActualSpeed;
   pid.integral+=pid.err;
   pid.voltage=pid.Kp*pid.err+pid.Ki*pid.integral+pid.Kd*(pid.err-pid.err_last);
   pid.err_last=pid.err;
   pid.ActualSpeed=pid.voltage*1.0;
   return pid.ActualSpeed;
}

int run_pid(){
   printf("System begin \n");
   PID_init();
   int count=0;
   while(count<1000) {
     float actual_speed=PID_realize(200.0);
     printf("count is: %d, actual_speed is: %f\n", count, actual_speed);
     count++;
   }
   return 0;
}

int main(int argc, char const *argv[])
{
   run_pid();
   return 0;
}
 

评论

下载排行

本周

  1. 0.69 MB   |  12次下载  |  10 积分
  2. 2SN55HVD251.SN65HVD251工业CAN总线收发器数据表
  3. 1.14MB   |  3次下载  |  免费
  4. 3旋转编码器控制电机速度
  5. 5.06 MB   |  1次下载  |  1 积分
  6. 4TOSHIBA东芝TB6600HG步进电机驱动IC中文产品规格书
  7. 0.90 MB   |  1次下载  |  免费
  8. 5AIM-D100-ES系列直流绝缘监测仪安装使用说明书
  9. 1.22 MB   |  1次下载  |  免费
  10. 6TSB14AA1A数据表
  11. 283.98KB   |  0次下载  |  免费
  12. 7TVS3301 33V双向平缓钳位浪涌保护器件数据表
  13. 1.43MB   |  0次下载  |  免费
  14. 8TCA39306双向I2C总线和SMBus电压电平转换器数据表
  15. 2.03MB   |  0次下载  |  免费

本月

  1. 1干货图解直流电机实现正反转的几种方式
  2. 207.75KB   |  271次下载  |  10 积分
  3. 2对讲机原理、使用及纵图集
  4. 未知   |  82次下载  |  10 积分
  5. 3马可尼IFR 2945A综合测试仪使用手册
  6. 未知   |  24次下载  |  8 积分
  7. 4LabVIEW曲线设计的源代码免费下载
  8. 0.05 MB   |  23次下载  |  1 积分
  9. 5基于STM32微处理器为核心的水质监测系统
  10. 6.46 MB   |  23次下载  |  免费
  11. 62.4GHz IEEE 802.15.4 和 ZigBee应用的CC253X 片上系统解决方案
  12. 9.00 MB   |  20次下载  |  1 积分
  13. 7基于51单片机TEA5767收音机数码管显示设计
  14. 0.69 MB   |  12次下载  |  10 积分
  15. 8摩托罗拉P200写频软件
  16. 未知   |  6次下载  |  6 积分

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935106次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420061次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233074次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191349次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183327次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81572次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73800次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65983次下载  |  10 积分