資源簡介
絕大多數關于PID的調節都是基于C語言的,這個也是因為c語言在硬件方面的快捷所致,不否認C語言下的PID的方便,但是想要參考一下C++的PID基本調節可以參考本Demo
代碼片段和文件信息
#include?“iostream“
using?namespace?std;
class?pid
{
public:
float?SetSpeed;
float?ActualSpeed;
float?error;
float?err_next;
float?err_last;
float?kp?ki?kd;
public:
void?PID_init(){
SetSpeed?=?0.0;
ActualSpeed?=?0.0;
error?=?0.0;
err_last?=?0.0;
err_next?=?0.0;
kp?=?0.1;
ki?=?0.015;
kd?=?0.2;
}
}pid_pro;
float?PID_realize(float?speed){
pid_pro.SetSpeed?=?speed;
pid_pro.error?=?pid_pro.SetSpeed?-?pid_pro.ActualSpeed;
float
incrementSpeed?=?pid_pro.kp*(pid_pro.error?-?pid_pro.err_next)?+?pid_pro.ki*pid_pro.error?+?pid_pro.kd*(pid_pro.error?-?2?*?pid_pro.err_next?+?pid_pro.err_last);
pid_pro.ActualSpeed?+=?incrementSpeed;
pid_pro.err_last?=?pid_pro.err_next;
pid_pro.err_next?=?pid_pro.error;
return?pid_pro.ActualSpeed;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????62976??2017-07-30?22:02??PID\Debug\PID.exe
?????文件?????526584??2017-07-30?22:02??PID\Debug\PID.ilk
?????文件?????896000??2017-07-30?22:02??PID\Debug\PID.pdb
?????文件???????1661??2017-07-30?22:02??PID\PID\Debug\PID.log
?????文件?????139266??2017-07-30?22:02??PID\PID\Debug\pid.obj
?????文件????????594??2017-07-30?22:02??PID\PID\Debug\PID.tlog\cl.command.1.tlog
?????文件??????12176??2017-07-30?22:02??PID\PID\Debug\PID.tlog\CL.read.1.tlog
?????文件????????392??2017-07-30?22:02??PID\PID\Debug\PID.tlog\CL.write.1.tlog
?????文件???????1062??2017-07-30?22:02??PID\PID\Debug\PID.tlog\li
?????文件???????2520??2017-07-30?22:02??PID\PID\Debug\PID.tlog\li
?????文件????????372??2017-07-30?22:02??PID\PID\Debug\PID.tlog\li
?????文件????????163??2017-07-30?22:02??PID\PID\Debug\PID.tlog\PID.lastbuildstate
?????文件?????257024??2017-07-30?22:02??PID\PID\Debug\vc120.idb
?????文件?????339968??2017-07-30?22:02??PID\PID\Debug\vc120.pdb
?????文件????????978??2017-07-30?22:37??PID\PID\pid.cpp
?????文件???????4013??2017-07-30?21:54??PID\PID\PID.vcxproj
?????文件????????944??2017-07-30?21:54??PID\PID\PID.vcxproj.filters
?????文件????7208960??2017-07-30?22:37??PID\PID.sdf
?????文件????????955??2017-07-30?21:33??PID\PID.sln
????..A..H.?????16384??2017-07-30?22:37??PID\PID.v12.suo
?????目錄??????????0??2017-07-30?22:02??PID\PID\Debug\PID.tlog
?????目錄??????????0??2017-07-30?22:02??PID\PID\Debug
?????目錄??????????0??2017-07-30?21:54??PID\Debug
?????目錄??????????0??2017-07-30?22:37??PID\PID
?????目錄??????????0??2017-07-30?22:37??PID
-----------?---------??----------?-----??----
??????????????9472992????????????????????25
- 上一篇:C++ 酒店管理系統 實現了圖形界面
- 下一篇:簡單的一元多項式計算器程序
評論
共有 條評論