久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 22578|回復: 30
打印 上一主題 下一主題
收起左側(cè)

PID算法控制PWM占空比的代碼

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:170098 發(fā)表于 2017-4-19 15:26 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<string.h>
#include<stdio.h>
typedef struct PID {
double SetPoint; // 設定目標Desired value
double Proportion; // 比例常數(shù)Proportional Const
double Integral; // 積分常數(shù)Integral Const
double Derivative; // 微分常數(shù)Derivative Const
double LastError; // Error[-1]

double PrevError; // Error[-2]
double SumError; // Sums of Errors
} PID;

/*====================================================================================================
PID計算函數(shù)
=====================================================================================================*/
double PIDCalc( PID *pp, double NextPoint )
{
    double dError, Error;
    Error = pp->SetPoint - NextPoint; // 偏差
    pp->SumError += Error; // 積分
    dError = pp->LastError - pp->PrevError; // 當前微分
    pp->PrevError = pp->LastError;
    pp->LastError = Error;
    return (pp->Proportion * Error // 比例項
    + pp->Integral * pp->SumError // 積分項
    + pp->Derivative * dError );         // 微分項
}

/*====================================================================================================
PID結構體變量初始化函數(shù)
=====================================================================================================*/
void PIDInit (PID *pp)
{
memset ( pp,0,sizeof(PID));
}

/*====================================================================================================
讀取輸入變量函數(shù)(在此設定為固定值100)
======================================================================================================*/
double sensor (void)  
{
return 100.0;
}

/*====================================================================================================
輸出變量控制函數(shù)
======================================================================================================*/
void actuator(double rDelta)  
{
}

//主函數(shù)
void main(void)
{
    PID sPID; // PID Control Structure
    double rOut; // PID Response (Output)
    double rIn; // PID Feedback (Input)
    PIDInit ( &sPID ); // Initialize Structure
    sPID.Proportion = 0.5; // Set PID Coefficients
    sPID.Integral = 0.5;
    sPID.Derivative = 0.0;
    sPID.SetPoint = 100.0; // Set PID Setpoint
    for (;;)
    {                                   // Mock Up of PID Processing
        rIn = sensor ();                // 讀取輸入變量函數(shù)(Read Input )
        rOut = PIDCalc ( &sPID,rIn );   // PID計算函數(shù)(Perform PID Interation)
        actuator ( rOut );              // 輸出變量控制函數(shù)(Effect Needed Changes)
    }
}


PID算法代碼.zip

20.2 KB, 下載次數(shù): 598, 下載積分: 黑幣 -5

PID算法的代碼,輸出函數(shù)要根據(jù)項目來編寫

評分

參與人數(shù) 2黑幣 +10 收起 理由
hzd530 + 5 贊一個!
genesis_2012 + 5 很給力!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏22 分享淘帖 頂7 踩
回復

使用道具 舉報

沙發(fā)
ID:359327 發(fā)表于 2018-6-27 10:40 | 只看該作者
PID算法中的PID參數(shù)怎樣確定?
回復

使用道具 舉報

板凳
ID:345500 發(fā)表于 2018-6-28 09:26 | 只看該作者
不錯,可以參考
回復

使用道具 舉報

地板
ID:340339 發(fā)表于 2018-6-29 11:39 | 只看該作者
感謝樓主分享,下載學習借鑒
回復

使用道具 舉報

5#
ID:341045 發(fā)表于 2018-6-30 17:49 | 只看該作者
感謝分享, 收藏備用。
回復

使用道具 舉報

6#
ID:363726 發(fā)表于 2018-7-10 17:30 | 只看該作者
感謝分享,下載學習借鑒
回復

使用道具 舉報

7#
ID:162777 發(fā)表于 2018-7-12 12:01 | 只看該作者
多謝分享!!!!!!!!!!
回復

使用道具 舉報

8#
ID:399348 發(fā)表于 2018-11-18 20:44 | 只看該作者

多謝分享!!!!!!!!!!
回復

使用道具 舉報

9#
ID:429095 發(fā)表于 2018-11-19 11:36 | 只看該作者
我有個PID原碼,也能分享下
回復

使用道具 舉報

10#
ID:429147 發(fā)表于 2018-11-19 22:02 | 只看該作者
當時參加智能車競賽也用到了pid算法控制pwm,感覺還是很不錯的
回復

使用道具 舉報

11#
ID:300395 發(fā)表于 2019-1-12 22:20 | 只看該作者
可以參考一下
回復

使用道具 舉報

12#
ID:443931 發(fā)表于 2019-1-14 09:10 | 只看該作者
感謝樓主分享,學習一下
回復

使用道具 舉報

13#
ID:460567 發(fā)表于 2019-1-14 10:06 來自手機 | 只看該作者
有加入模糊控制的嘛?
回復

使用道具 舉報

14#
ID:433935 發(fā)表于 2019-3-9 11:03 | 只看該作者
解決了我的燃眉之需
回復

使用道具 舉報

15#
ID:284075 發(fā)表于 2019-4-7 15:30 | 只看該作者
PID的取值范圍是多少?
回復

使用道具 舉報

16#
ID:582529 發(fā)表于 2019-7-12 14:56 | 只看該作者
非常好
回復

使用道具 舉報

17#
ID:586452 發(fā)表于 2019-7-18 16:40 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

18#
ID:593177 發(fā)表于 2019-7-31 16:17 | 只看該作者
多謝分享。
回復

使用道具 舉報

19#
ID:484435 發(fā)表于 2019-8-1 09:23 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

20#
ID:595963 發(fā)表于 2019-8-6 10:06 | 只看該作者
謝謝樓主
回復

使用道具 舉報

21#
ID:423971 發(fā)表于 2020-4-16 23:24 | 只看該作者

謝謝樓主
回復

使用道具 舉報

22#
ID:765690 發(fā)表于 2020-5-31 14:09 | 只看該作者
感謝分享
回復

使用道具 舉報

23#
ID:765743 發(fā)表于 2020-5-31 15:16 | 只看該作者
非常不錯,謝謝樓主
回復

使用道具 舉報

24#
ID:108573 發(fā)表于 2020-6-1 09:04 | 只看該作者
代碼風格很好
回復

使用道具 舉報

25#
ID:275041 發(fā)表于 2020-6-1 09:22 | 只看該作者
感謝樓主分享,下載學習借鑒
回復

使用道具 舉報

26#
ID:530586 發(fā)表于 2020-6-16 08:57 | 只看該作者
可以參考一下
回復

使用道具 舉報

27#
ID:371965 發(fā)表于 2020-6-18 11:07 | 只看該作者
這個積分是不是太大了   如果是0.5  那么  就是 0.5*100+0.5*100+0了          這樣的話  第一次就直接100了
回復

使用道具 舉報

28#
ID:949050 發(fā)表于 2021-7-8 15:15 | 只看該作者
這個確實很詳細啊
回復

使用道具 舉報

29#
ID:81196 發(fā)表于 2021-7-9 09:12 | 只看該作者
正好最近做項目會用到這個,正解所需,作為參考,
回復

使用道具 舉報

30#
ID:954990 發(fā)表于 2021-7-20 15:53 | 只看該作者
學了很久的PID都不會但是看了樓主的代碼突然就豁然開朗了
回復

使用道具 舉報

31#
ID:949302 發(fā)表于 2021-8-2 19:04 | 只看該作者
hncan 發(fā)表于 2018-11-19 11:36
我有個PID原碼,也能分享下

分享給我唄,我想多學一點
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美色a v | 台湾a级理论片在线观看 | 国产免费观看一级国产 | 99久久婷婷国产综合精品电影 | 成人精品国产 | 365夜爽爽欧美性午夜免费视频 | 91精品国产综合久久小仙女图片 | 男女羞羞视频网站 | 国产精品视频一区二区三区四蜜臂 | 亚洲一区av| 91激情电影| 999视频在线播放 | av毛片| 国产一区二区欧美 | 久久久久91 | 国产成人午夜电影网 | 2018中文字幕第一页 | 亚洲福利一区二区 | 国产精品久久国产精品 | 午夜精品一区二区三区在线观看 | 欧美在线视频一区二区 | 天天色图 | 天天干国产 | 久久伊人操 | 免费的av网站 | 欧美精品一区在线观看 | 综合色婷婷 | 亚洲男女激情 | 亚洲综合国产 | 欧美天堂 | 91精品国产一区二区三区动漫 | 天天干视频在线 | 国产不卡视频 | 国产乱码高清区二区三区在线 | 亚洲一区二区不卡在线观看 | 爱爱视频在线观看 | a级大片免费观看 | 国产视频久久 | 日韩国产欧美在线观看 | 亚洲三级免费看 | 韩国av影院|