在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

增量式PID算法在c代碼部分的實現過程

嵌入式應用開發 ? 來源:嵌入式應用開發 ? 作者:嵌入式應用開發 ? 2022-06-16 11:27 ? 次閱讀

stm32控制器下經常會用到對溫度控制,適度控制,轉速控制等需要自動控制相關的操作,因此在使用中需要不斷提高對自動控制 原理部分的學習,一個好的自動控制系統包含三個 主要因素:穩,快,準。穩即系統的穩定性,快即系統的快速性,準即控制的準確性。

在自動控制中比例增益,積分時間,微分時間三個主要變量。下面就這三個變量進行動態展示。

動圖

如上圖所示,假設在單位階躍響應下,比例控制幅值,kp越大值越高相關的,積分時間控制精確度,數值越大波形超調量越大,微分時間控制波形的平緩程度。

下面貼出增量式PID算法在c代碼部分的實現過程。

//實現增量式PID算法 

#include "stdio.h" 
void pid_init();//PID參數初始化 
float pid_realise(float speed);//實現PID算法   

struct {
    float set_speed;//設定速度 
    float actual_speed;//實際速度
    float error;//偏差  
    float error_next;//上一個偏差  
    float error_last;//上上一個偏差 
    float kp,ki,kd;//定義比例,積分,微分參數  
     
}pid;


int main()
{
    pid_init();
    int count = 0;
    while(count<400)//進行400次 PID 運算,使初始值從0開始接近200.0   
    {
        float speed = pid_realise(200.0);//設定值設定為200.0  
        printf("%f\n",speed);//輸出每一次PID 運算后的結果  
        count++;
    }
}


void pid_init()
{
    pid.set_speed = 0.0;
    pid.actual_speed = 0.0;
    pid.error = 0.0;
    pid.error_next = 0.0;
    pid.error_last = 0.0;
    //可調節PID 參數。使跟蹤曲線慢慢接近階躍函數200.0 // 
    pid.kp = 0.2;
    pid.ki = 0.01;
    pid.kd = 0.2;
}


float pid_realise(float speed)//實現pid  
{
    pid.set_speed = speed;//設置目標速度  
    pid.error = pid.set_speed - pid.actual_speed;
    float increment_speed;//增量
     
    increment_speed = pid.kp*(pid.error-pid.error_next)+pid.ki*pid.error+\
    pid.kd*(pid.error-2*pid.error_next+pid.error_last);//增量計算公式  
    
    pid.actual_speed+= increment_speed;
    pid.error_last = pid.error_next;//下一次迭代  
    pid.error_next = pid.error;
    return pid.actual_speed; 
    
}

運行數據得到圖標如下 :

poYBAGKqov2ALrgkAABTRApyEyM634.png

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    112

    文章

    16423

    瀏覽量

    178880
  • STM32
    +關注

    關注

    2270

    文章

    10918

    瀏覽量

    356893
  • PID
    PID
    +關注

    關注

    35

    文章

    1473

    瀏覽量

    85677
收藏 人收藏

    評論

    相關推薦

    淺析位置PID增量PID算法

    位置PID增量PID算法通常依據控制器輸出與執行機構的對應關系,將基本數字
    發表于 01-15 18:35

    教你用C語言實現位置PID增量PID

    控制器”,拿控制電機來說,參考下面模型:下面引用一段網上經典的話:工業應用中PID及其衍生算法是應用最廣泛的算法之一,是當之無愧的萬能算法
    發表于 05-30 08:00

    收藏干貨 PID算法實現

    ,是當之無愧的萬能算法,如果能夠熟練掌握PID算法的設計與實現過程,對于一般的研發人員來講,應該是足夠應對一般研發問題了,而難能可貴的是,
    發表于 06-22 11:37

    STM32如何去實現增量PID算法

    盡快進入狀態。特地分享一些自己如何實現過程。首先說說增量PID的公式,這個關系到MCU算法
    發表于 09-13 06:54

    PID算法增量算法

    這里的PID是指控制類的比例-積分-微分算法,而不是進程ID號。PID算法,不管是原理上,還是代碼上都比較簡單。主要運用在電機控制、開關電源
    發表于 09-13 06:06

    如何實現增量PID

    雖然PID不是什么牛逼的東西,但是真心希望以后剛剛接觸這塊的人能盡快進入狀態。特地分享一些自己如何實現過程。首先說說增量
    發表于 09-13 08:19

    增量PID的stm32實現及其整定過程 

    源:增量PID的stm32實現,整定過程  首先說說增量
    發表于 09-13 07:35

    使用C語言進行PID算法實現

    前文對PID算法離散化和增量PID算法原理進行來探索,之后又使用Matlab進行了仿真實驗,對
    發表于 09-15 09:20

    如何去實現基于stm32的PID算法增量程序呢

    PID算法可分為哪幾類?PID算法的參數有哪些呢?如何去實現基于stm32的PID
    發表于 12-02 07:48

    增量PID控制算法

    增量PID控制算法-2011,有需要的下來看看。
    發表于 04-01 14:54 ?30次下載

    位置型PIDC語言代碼實現過程詳細資料概述

    上一節中已經抽象出了位置性 PID增量PID 的數學表達式,這一節,重 點講解 C 語言代碼
    發表于 07-16 08:00 ?8次下載

    在三菱FX2NPLC上實現增量PID算法的控制

    實際系統中,PLC控制模擬量可采用PLC自帶的PID過程控制模塊,但對要求比較高的場合采用改進的PID控制算法,就必須由用戶自己編制
    的頭像 發表于 12-31 08:11 ?1.3w次閱讀
    在三菱FX2NPLC上<b class='flag-5'>實現</b>了<b class='flag-5'>增量</b><b class='flag-5'>式</b><b class='flag-5'>PID</b><b class='flag-5'>算法</b>的控制

    如何使用免疫粒子群優化算法實現增量PID控制

    基于粒子群優化算法的收斂速度快簡單易實現的特點和免疫算法的免疫記憶、免疫自我調節和多峰值收斂的特點,本文設計出免疫粒子群算法,并將其應用于PID
    發表于 11-01 15:41 ?7次下載
    如何使用免疫粒子群優化<b class='flag-5'>算法</b><b class='flag-5'>實現</b><b class='flag-5'>增量</b><b class='flag-5'>式</b>的<b class='flag-5'>PID</b>控制

    使用單片機和Arduino實現增量PID位置PID算法PID庫免費下載

    本文檔的主要內容詳細介紹的是使用單片機和Arduino實現增量PID位置PID
    發表于 05-28 16:30 ?69次下載
    使用單片機和Arduino<b class='flag-5'>實現</b><b class='flag-5'>增量</b><b class='flag-5'>式</b><b class='flag-5'>PID</b>位置<b class='flag-5'>式</b><b class='flag-5'>PID</b><b class='flag-5'>算法</b>和<b class='flag-5'>PID</b>庫免費下載

    PID控制算法C語言實現

    PID算法C實現1、PID算法簡介1.1、各個環節的作用2、位置型
    發表于 01-13 13:39 ?45次下載
    <b class='flag-5'>PID</b>控制<b class='flag-5'>算法</b>的<b class='flag-5'>C</b>語言<b class='flag-5'>實現</b>
    主站蜘蛛池模板: 成人伊人青草久久综合网 | 成在线人永久免费播放视频 | 日本高清视频网站www | 免费观看色视频 | 黄网免费观看 | 国产免费糟蹋美女视频 | 午夜视频在线免费看 | 永久免费看 | 日本三级s级在线播放 | 久久婷婷色 | 寄宿日记免费看 | 天堂网av2014| 午夜视频1000部免费看 | 欧美涩区 | 精品精品国产自在久久高清 | 超级碰碰青草久热国产 | 亚洲国产精品综合久久网络 | 久久综合九色综合97_ 久久久 | 亚洲黄色成人 | 在线视频一区二区 | 伊人网在线观看 | 亚洲亚洲人成网站在线观看 | 6080伦理久久精品亚洲 | 欧美干色 | 在线精品91青草国产在线观看 | 天天操夜夜拍 | 一级一片免费播放 | 国产精品超清大白屁股 | 色网站视频 | 永久免费在线看 | 五月婷婷色网 | 国产午夜视频在线观看网站 | 狠狠五月婷婷 | 精品国产污污免费网站入口 | 天天射天天操天天 | 亚洲国产女人aaa毛片在线 | 午夜黄网| 欧美一级视频精品观看 | 免费国产黄网站在线观看视频 | 男人资源站 | 99久久亚洲国产高清观看 |