国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【PID】基于Matlab實現(xiàn)增量式PID算法

這篇具有很好參考價值的文章主要介紹了【PID】基于Matlab實現(xiàn)增量式PID算法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?作者簡介:熱愛科研的Matlab仿真開發(fā)者,修心和技術(shù)同步精進,matlab項目合作可私信。

??個人主頁:Matlab科研工作室

??個人信條:格物致知。

? 內(nèi)容介紹

增量式PID控制較常規(guī)PID更具優(yōu)勢,但有關(guān)其參數(shù)整定的方法很少,針對這種問題,介紹了增量式PID算法的原理及特點,基于MATLAB平臺,模擬擴充臨界比例度法對增量式PID參數(shù)的整定方法,整定過程簡單直觀,控制效果明顯改善,證實了該方法對增量式PID有較好的整定效果.

? 完整代碼

clear all;close all;clc

%% 獲取離散化模型

t_s = 0.001;? %采樣時間

T_f = 1;? ? ?%仿真時間

Step_simulate=T_f/t_s;

sys = tf([200],[1 50 1]);

%% 繪制傳遞函數(shù)的單位階躍響應(yīng)曲線

t=0:0.01:750;

figure(1);

c=step(sys,t);

plot(t,c);

%% 進行傳遞函數(shù)的離散化

dsys = c2d(sys,t_s,'z');

[num,den]=tfdata(dsys,'v');? ?%num為離散傳遞函數(shù)的分子系數(shù)矩陣,den為離散傳遞函數(shù)的分母系數(shù)矩陣

%% 設(shè)置增量式PID的校正參數(shù)

k_p=10;

k_i=0.12;

k_d=5;

%% 設(shè)置輸入信號數(shù)學(xué)表達(dá)式

y_d = ones(1,Step_simulate);? ?%輸入信號為階躍信號? ??

%% 增量式PID控制器算法模塊

y = zeros(1,Step_simulate);? ? %初始化輸出信號

y_feedback=0;? ? ? ? ? ? ? ? ? %反饋回來的信號,y_feedback=y

error = 0;? ? ? ? ? ? ? ? ? ? ? %信號差值

erro_1 = 0;? ? ? ? ? ? ? ? ? ? %上一時刻信號差值

erro_2 = 0;? ? ? ? ? ? ? ? ? ? %上上一時刻信號差值

y_1=0;? ? ? ? ? ? ? ? ? ? ? ? ?%上一時刻的輸出

y_2=0;? ? ? ? ? ? ? ? ? ? ? ? ?%上一上一時刻的輸出

pi_out=0;? ? ? ? ? ? ? ? ? ? ? %pid控制器的輸出,注意不是系統(tǒng)輸出

pi_out_1=0;? ? ? ? ? ? ? ? ? ? %上一時刻PID控制器的輸出,注意不是系統(tǒng)輸出

pi_out_2=0;? ? ? ? ? ? ? ? ? ? %上一上一時刻PID控制器的輸出,注意不是系統(tǒng)輸出

pi_out = 0;? ? ? ? ? ? ? ? ? ?%初始的PID控制輸出值

delta_pi_out = 0;? ? ? ? ? ? ?%初始的PID控制輸出增量值

for k=1:1:Step_simulate

? ? time(k)=k*t_s;? ? ? ? ? ? %存儲時間,用于后面畫圖

? ? error=y_d(k)-y_feedback;? %控制器誤差

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? %增量式PID的算法表達(dá)式

? ? delta_pi_out=k_p*(error-erro_1)+k_i*error+k_d*(error-2*erro_1+erro_2);

? ? pi_out =pi_out+delta_pi_out ;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? %增量式PID的算法表達(dá)式

? ? %對PID控制器的輸出進行限幅

? ? if? pi_out>=10

? ? ? ? pi_out =10;

? ? end

? ? if? pi_out<=-10

? ? ? ? pi_out =-10;

? ? end

? ?%y_1 上一時刻的輸出

? ?%y_2 上兩時刻的輸出

? ? y(k)=-den(2)*y_1-den(3)*y_2+num(2)* pi_out_1+num(3)*pi_out_2;%控制對象

? ? y_feedback=y(k);

? ? %更新系統(tǒng)輸出狀態(tài)

? ? y_2=y_1;

? ? y_1=y(k);

? ? %更新pid輸出狀態(tài)

? ? pi_out_2=pi_out_1;

? ? pi_out_1=pi_out;

? ? %更新信號差值狀態(tài)

? ? erro_2=erro_1;

? ? erro_1=error;

end

%畫圖

figure(2);

subplot(2,1,1);

plot(time,y_d,'b*',time,y,'go');

xlabel('time');ylabel('幅值');legend('期望輸出','實際輸出');

subplot(2,1,2);

plot(time,y_d-y);

xlabel('time');ylabel('幅值');legend('誤差');

? 運行結(jié)果

pid增量式算法matlab,matlab,算法,開發(fā)語言,機器學(xué)習(xí),人工智能

pid增量式算法matlab,matlab,算法,開發(fā)語言,機器學(xué)習(xí),人工智能

? 參考文獻

[1] 楊龍. 基于位置式PID算法的壓力控制設(shè)計及MATLAB仿真[J]. 電子技術(shù)與軟件工程, 2018(24):1.

[2] 王俊偉, 張帥, 溫榮. MATLAB的PID算法在溫室大棚中的溫濕度串級控制中的應(yīng)用研究[J]. 價值工程, 2016, 35(5):2.

[3] 曾豪勇, 周思柱, 易文君. 基于MATLAB的增量式PID參數(shù)整定[J]. 工業(yè)控制計算機, 2014, 000(006):69-70.文章來源地址http://www.zghlxwxcb.cn/news/detail-628814.html

??部分理論引用網(wǎng)絡(luò)文獻,若有侵權(quán)聯(lián)系博主刪除
?? 關(guān)注我領(lǐng)取海量matlab電子書和數(shù)學(xué)建模資料

到了這里,關(guān)于【PID】基于Matlab實現(xiàn)增量式PID算法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 位置式Pid和增量式Pid的定義及應(yīng)用

    位置式Pid和增量式Pid的定義及應(yīng)用

    PID算法是一個典型的閉環(huán)控制系統(tǒng)。P、I、D,比例、積分、微分。 開環(huán):輸入量對輸出量沒有反饋作用; 閉環(huán):輸入量對輸出量有反饋作用。 位置式Pid 位置式Pid就是位置閉環(huán)控制,位置閉環(huán)控制就是根據(jù)編碼器的脈沖累加,測量電機的位置信息,并與目標(biāo)值進行比較得到一

    2024年02月05日
    瀏覽(26)
  • 我的PID學(xué)習(xí)歷程---PID位置式和增量式

    我的PID學(xué)習(xí)歷程---PID位置式和增量式

    前一篇文章實現(xiàn)了使用TB6612驅(qū)動電機及編碼器測速,但是在實際測速的過程中,如果我們 人為給電機一個阻力,電機的速度將會下降,編碼器接口獲取到的脈沖數(shù)也會減少 。 但是如果要使電機 保持一個恒定的速度 ,即使遇到阻力它的速度也不會下降。這個時候就需要引入

    2023年04月09日
    瀏覽(20)
  • PID的增量式與位置式

    在剛接觸到PID控制器的時候,我對增量式,位置式這些其實也是很懵的,然后又有什么速度環(huán)啊,位置環(huán)啊,電流環(huán)啊…巴拉巴拉一堆的,但是現(xiàn)在理解起來其實也就利用一些簡簡單單的離散數(shù)據(jù)運算出期望罷了。 首先假設(shè)我們已經(jīng)知道了什么是Kp、Ki、Kd了(不知道的話那就

    2024年04月13日
    瀏覽(20)
  • PID控制器(位置式和增量式)

    PID控制:一種調(diào)節(jié)器控制規(guī)律為比例、積分、微分的控制。其中:P:比例(proportion)I:積分(integral)D:微分(derivative) 式子中Kp為比例系數(shù),Ti為積分時間參數(shù),Td為微分時間常數(shù)。 各參數(shù)的意義: Kp:比例系數(shù)。一般增大比例系數(shù),將加快系數(shù)的響應(yīng)。 Ti:積分時間常

    2024年02月16日
    瀏覽(23)
  • STM32增量式pid直流電機調(diào)速(內(nèi)附源碼)

    STM32增量式pid直流電機調(diào)速(內(nèi)附源碼)

    ??????? 目錄 一. 1.硬件組成 2.模塊分析 ? ? ? ? 1.TB6612電機驅(qū)動模塊 ????????2.直流減速電機 ????????3.電源穩(wěn)壓模塊 二.接線 三.代碼思路講解(詳見源碼) 四.STM32cubmx配置 1.系統(tǒng)基礎(chǔ)配置:(重要) 2.電機旋轉(zhuǎn)方向引腳配置 3.TIM1每10ms觸發(fā)一次的定時器中斷 4.TI

    2024年02月16日
    瀏覽(28)
  • 4 OpenCV實現(xiàn)多目三維重建(多張圖片增量式生成稀疏點云)【附源碼】

    4 OpenCV實現(xiàn)多目三維重建(多張圖片增量式生成稀疏點云)【附源碼】

    本文是基于 OpenCV4.80 進行的,關(guān)于環(huán)境的配置可能之后會單獨說,先提一嘴 vcpkg 真好用 從多張圖片逐步生成稀疏點云,這個過程通常包括以下步驟: 初始重建: 初始兩張圖片的選擇 十分重要 ,這是整個流程的基礎(chǔ),后續(xù)的增圖都是在這兩張圖片的基礎(chǔ)上進行的 對于輸入圖

    2024年02月06日
    瀏覽(35)
  • STM32之增量式編碼器電機測速

    STM32之增量式編碼器電機測速

    編碼器,是一種用來測量機械旋轉(zhuǎn)或位移的傳感器。它能夠測量機械部件在旋轉(zhuǎn)或直線運動時的位移位置或速度等信息,并將其轉(zhuǎn)換成一系列電信號。 . 按監(jiān)測原理分類 光電編碼器 光電編碼器,是一種通過光電轉(zhuǎn)換將輸出軸上的機械幾何位移量轉(zhuǎn)換成脈沖或數(shù)字量的傳感器

    2024年02月13日
    瀏覽(23)
  • 霍爾增量式編碼器左右車輪線速度的計算

    對于霍爾式編碼器的左右輪線速度計算: 首先線速度=距離s / 時間 t 要獲得距離S ,也就是輪子在一段時間內(nèi)跑過的距離。要先知道一下兩個參數(shù): 1.輪子的半徑 r 2.輪子轉(zhuǎn)動一圈的脈沖數(shù) cnt 輪子轉(zhuǎn)動一圈的脈沖數(shù):如電機我們選用減速比為1:90的TT直流減速電機,編碼器為

    2024年02月15日
    瀏覽(24)
  • 《LIO-SAM閱讀筆記》-為何要引入增量式里程計?

    前言: LIO-SAM在后端中同時維護著兩個里程計,一個是增量式里程計,一個是優(yōu)化后的里程計,其中優(yōu)化后的里程計是經(jīng)過imu、回環(huán)、gps因子圖聯(lián)合優(yōu)化后的結(jié)果,是整個系統(tǒng)中最準(zhǔn)確的位姿估計,那么為什么還需要維護增量式里程計呢? 以下是我的理解 ,不一定正確,如有

    2024年01月22日
    瀏覽(23)
  • 畢業(yè)設(shè)計-基于 PID 控制算法仿真算法研究- Matlab

    畢業(yè)設(shè)計-基于 PID 控制算法仿真算法研究- Matlab

    目錄 前言 課題背景和意義 實現(xiàn)技術(shù)思路 一、 基本原理 ?二、無超調(diào) PID 控制器的設(shè)計 三、無超調(diào) PID 設(shè)計的驗證 代碼 實現(xiàn)效果圖樣例 最后 ? ? ??大四是整個大學(xué)期間最忙碌的時光,一邊要忙著備考或?qū)嵙?xí)為畢業(yè)后面臨的就業(yè)升學(xué)做準(zhǔn)備,一邊要為畢業(yè)設(shè)計耗費大量精力。

    2024年02月06日
    瀏覽(91)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包