⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chap10_2.cpp

📁 先进pid程序-第一版源码
💻 CPP
字号:
//chap10_2.cpp
//PID Realtime Control
#include <math.h>
int k;
double yout,u,rin,u_1=0,u_2=0,u_3=0,yout_1=0,yout_2=0,yout_3=0;
double Error_1=0.0,Error_2=0.0;
double ts=0.001;
double timek,pi=3.1415926;
double kp=0.50,ki=0.001,kd=0.001;
double Error,Perror,Ierror,Derror;

void main()
{
for (k=1;k<=5000;k++)
{
	 timek=k*ts;
	 rin=1;

//Practical Position Degree Signal at time k
yout=2.9063*yout_1-2.8227*yout_2+0.9164*yout_3+0.0853*0.001*u_1+0.3338*0.001*u_2+0.0817*0.001*u_3;

	 Error=yout-rin;

	 Perror=Error;                     //Getting P
	 Ierror= Ierror+Error*ts;          //Getting I
	 Derror=(Error-Error_1)/ts;        //Getting D

	 u=kp*Perror+ki*Ierror+kd*Derror;  //PID Control

//Update Parameters
	 Error_2=Error_1;
	 Error_1=Error;

	 yout_3=yout_2;
	 yout_2=yout_1;
	 yout_1=yout;   //Positional Signal at k-1
	 u_3=u_2;
	 u_2=u_1;
	 u_1=u;
	 }
	 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -