【嵌入式電機控制#11】PID控制入門:對比例算法應用的深度理解

?接下來內容需要數學功底,并且有現成結論的內容不做推導,重在講解工程實踐中的方法論,建議控制類專業或學習過相關理論的人閱讀

一、開閉環系統

? ? ? ? (1)開環控制系統:被控對象輸出對控制器的輸出沒有影響

? ? ? ? (2)閉環控制系統:系統被控對象的輸出會返送回來影響控制器輸出,形成一個或多個閉環控制系統。把控制系統輸出量的一部分或全部,通過一定方法和裝置返送回系統的輸入端,然后將反饋信息與原輸入信息進行比較,再將比較結果施加于系統進行控制,避免系統偏離預定目標。

? ? ? ? 、、、、

? ? ? ? (3)反饋:控制論的基本概念,將系統輸出反饋輸入端,并以某種方式改變輸入,進而影響系統功能的全過程。反饋可分為負反饋、正反饋。

? ? ? ? 負反饋起到與輸入相反的作用,使系統偏差減小,趨于穩定。

? ? ? ? 正反饋使偏差不斷增大,使系統震蕩,可以放大控制作用。正反饋主要用于信號產生電路、輸入前饋系統等。

? ? ? ? 對負反饋的研究是控制論的核心問題。

? ? ? ? 舉例1 投籃

? ??

? ? ? ? 舉例2 工業液位調節系統? ? ?

? ? ? ? 舉例3 工業加熱爐溫控系統

? ? ? ? 第一個系統研究的是執行器的運動問題,我們稱為運動控制系統。

? ? ? ? 后兩個研究的是被控對象在某段過程的狀態問題,我們稱為過程控制系統。

? ? ? ? 運動控制系統通常要求系統具有較小慣性或自身慣性的影響能被克制,因而實時性更強。

? ? ? ? 而過程控制系統通常具有較大慣性,很難快速改變輸出穩態。

? ? ? ? 而嵌入式電機控制,主要涉及的是實時性要求更強的運動控制系統。

二、PID控制器

? ? ? ? (1)PID控制器:將偏差的比例、積分、微分,通過線性組合構成控制量,用這一控制量對被控對象進行控制,這樣的控制器叫做PID控制器。

? ? ? ? (2)PID控制的使用:當實際工程問題處于黑盒狀態時(被控對象的結構和參數不完全清楚),系統控制器的結構參數必須依靠經驗和現場調試來確定。

? ? ? ? ????????這樣的特征讓PID更能適用于黑盒問題,幫助我們更快的進行系統建模。

? ? ? ? ? ? ? ? 然而,PID的三個系數并非時刻全部都在使用,我們也會根據情況,選擇PI和PD控制。

? ? ?? ?(3)PID算法的要求:除了一般軟件算法常見的六大要求以外,運動控制系統中的PID算法不僅僅需要通過數學公式實現占空比自動調整,還要在極短時間內就能實現穩定在目標輸出。

? ? ? ? ? 所以,電機控制的PID算法必須實現:穩、準、快

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?PID調參過程中,各系統建模的響應曲線對比

三、PID控制算法

? ? ? ? (1)比例控制(P)

? ? ? ? ? ? ? ? 比例控制是最簡單的控制,他的控制器輸出與偏差量成比例關系。當僅有比例控制時,系統穩態誤差為0,則輸出也為0。所以,比例控制是用來放大當前誤差的一種算法,不能單將其用入電機控制系統中!

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

????????下面是一個Kp調節的響應曲線,不同曲線對應了不同Kp值下的響應,我們 一 一 分析。

? ? ? ? 首先,Reference代表我們的階躍輸入(Step Input),它的幅值與我們的目標速度相同,這也是我們嵌入式系統中常用的一種控制器輸入,它的響應叫做階躍響應(Step Response)。

? ? ? ? 1. 當Kp=0.5時,由于誤差被縮小并輸出,而誤差本身也是隨著修正而輸出的,所以曲線應該呈緩慢爬升趨勢。(可以做DE或CE嚴格推導)

? ? ? ? 2. 當Kp=1.6時,由于誤差被放大,曲線迅速超調,但是超調量控制在了1一下,所以它之后會緩慢震蕩,然后回到目標穩態。(在實際情況下,這種行為已經很危險了,遇到類似一定要注意

? ? ? ? 3. 當Kp=1.1時,雖然超調,但是超調量并不是很大,經過短暫的時間就直接回穩了。

? ? ? ? 在以上三種曲線中,K=1.1時是比較理想的,因為它既沒有多少震蕩,響應速度也足夠的快。

? ? ? ? ???

? ? ? ?

????????若Kp調大,在相同誤差下,會造成更大的輸出但是如果Kp過大,系統會因為細小誤差的出現而變得極其不穩定。

? ? ? ? 相反的,若Kp小,在相同誤差下,輸出更小,因此控制器會敏感性會降低。若比例增益太小,當有干擾出現時,其控制器輸出的抑制信號可能不夠,進而無法修正

? ? ? ?

????????需要注意的是,對于大部分系統而言,單調Kp很難穩定在我們預設值。這時,比例系統穩態輸出會與預設產生自身無法消除的誤差,叫做穩態誤差(Steady State Error)。

? ? ? ? 而控制理論給出了一個解釋,穩態誤差產生本質上是因為負載特性和控制特性曲線的交點與設定值不一致。

? ? ? ? 以下是Kp環節的誤差修正方程,SV是設定值,PV是測量值:

? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ?在單位反饋線性定常系統中,由于Final Value Throem(終值定理),穩態誤差與系統開環增益K成反比。

? ? ? ? 如果系統僅采用比例控制,則開環增益等于比例增益、執行器以及被控對象本身的增益乘積

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?K = Kp * Ko

? ? ? ? 所以穩態誤差ess反比于Kp*Ko

????????但在一般情況下,我們在變動Kp時,都是在具有一定非線性的系統中操作的(如電機控制系統)。我們在變動Kp的時候Ko也會因為電氣、機械的影響跟著改變,而我們單獨改變Ko的時候,Kp由于時控制器固定的算法,所以是不變的。

? ? ? ? 因此!!!

? ? ? ? 在常見電機控制系統中,穩態誤差和比例增益成正比,而和控制系統本身的增益成反比。

? ? ? ? 若加入一個偏置,或者是積分控制,則可以消除我們的穩態誤差。

? ? ? ? 這個偏置到底是什么呢?我們下一回分解!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913353.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913353.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913353.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

多視圖幾何:本質矩陣與基礎矩陣

文章目錄 1. 前置知識1.1. 向量叉乘1.2. 混合積1.3. 引理證明 2. 本質矩陣3. 基礎矩陣4. 應用例子 1. 前置知識 1.1. 向量叉乘 假設 a ( a x a y a z ) \mathbf{a} \begin{pmatrix} a_x \\ a_y \\ a_z \end{pmatrix} a ?ax?ay?az?? ? 以及 b ( b x b y b z ) \mat…

Hive集群之間遷移的Linux Shell腳本

新舊 Hive 集群之前數據遷移單表腳本 migrate_hive_single_table.sh #!/bin/bash#配置參數 OLD_NAMENODE"hdfs://<old-namenode>:<old-port>" EXPORT_PATH"/tmp/hive-export/dm" NEW_DB"dm_events" TABLE_NAME"dm_usereventfi…

新時代的開始,華為開源倉頡編程語言!

7月30日&#xff0c;華為即將開源自研的倉頡編程語言。 倉頡這個名字很有意思。傳說中的倉頡創造了漢字&#xff0c;開啟了中華文明的文字時代。華為用這個名字&#xff0c;體現了對中華文化的致敬。從2020年開始研發&#xff0c;到去年首次亮相&#xff0c;再到現在的全面開源…

【python實用小腳本-128】基于 Python 的 Hacker News 爬蟲工具:自動化抓取新聞數據

引言 在技術社區中&#xff0c;Hacker News 是一個匯聚最新技術文章和討論的熱門平臺。許多開發者和技術愛好者依賴它來獲取行業動態和前沿資訊。然而&#xff0c;手動瀏覽和篩選這些文章可能耗時且低效。本文將介紹一個基于 Python 的 Hacker News 爬蟲工具&#xff0c;它能夠…

mac 電腦安裝Homebrew來安裝npm與node成功后,安裝nvm的流程

文章目錄 前言一、卸載node(如果沒下載可以忽略這步)1.官網下載安裝包的2. homebrew安裝的 二、安裝Homebrew(1) 命令安裝&#xff08;2&#xff09;出現上面提示&#xff0c;執行對應的命令&#xff08;3&#xff09;校驗是否安裝成功 三&#xff1a;安裝node&#xff08;Home…

根據無人機傾斜攝影osgb做的3dmax模型3dtiles制作,導出.b3dm加載到谷歌地圖cesiumlab

根據無人機傾斜攝影osgb做的3dmax模型3dtiles制作&#xff0c;導出.b3dm加載到谷歌地圖cesiumlab 根據無人機傾斜攝影osgb做的3dmax模型3dtiles制作&#xff0c;導出.b3dm加載到谷歌地圖cesiumlab

Yocto項目:嵌入式Linux開發的“萬能烹飪手冊”

目錄 一.Yocto是什么? 二.Yocto如何運作&#xff1f; 2.1 三大核心工具 2.2 實例 三.為什么開發者愛用Yocto&#xff1f; 3.1 ?自由定制&#xff0c;拒絕“全家桶”?? 3.2 跨平臺支持&#xff1a;從x86到火星芯片? 3.3 工業級可靠性? PetaLinux是Xilinx官方推出的…

【nosql】有哪些非關系型數據庫?

非關系型數據庫Nosql 分類 鍵值存儲 (Key-Value Store): 代表: Redis, DynamoDB, RocksDB, etcd核心優勢: 極致簡單、超高讀寫性能&#xff08;尤其內存型&#xff09;、高吞吐。場景: 緩存、會話存儲、配置、計數器、分布式協調、簡單消息隊列。 列式 / 寬列存儲 (Wide-Colu…

Redis存儲Cookie實現爬蟲保持登錄 requests | selenium

前言 前面已經介紹了requests和selenium這兩種方式的基礎知識和模擬登錄,但是我們需要每次都進行登錄,這明顯是很麻煩并且不合理的,所以這次我分享一下怎么可以讓我們的程序進行一次登錄之后,和普通瀏覽器一樣下次不進行登錄直接進行對網站數據的爬取 下面的我分享的內容需要…

leetcode:474. 一和零[01背包][動態規劃]

學習要點 給定背包容量&#xff0c;裝滿背包最多有多少個物品深入理解01背包深入理解動態規劃 題目鏈接 474. 一和零 - 力扣&#xff08;LeetCode&#xff09; 題目描述 解法:01背包 class Solution { public:int findMaxForm(vector<string>& strs, int m, int …

UE5 使用過程遇到的問題

切換緩存位置 進入界面&#xff0c;選擇-編輯-編輯器偏好設置搜索緩存&#xff0c;找到通用全局&#xff0c;修改本地DCC路徑到要切換的位置 閃退報錯 Fatal: Failed to get dll export function: cuvidGetDecoderCaps [NVDEC] 因為NVIDIA驅動沒有卸載干凈&#xff0c;使用D…

2025 BSidesMumbaiCTF re 部分wp

XORyy 附件拖入ida。明文 idkwhattonamethis 附件拖入ida 前三個函數都是檢查環境&#xff0c;跳過即可 長度為5&#xff0c;可以根據flag格式求解。腳本。盡管多解但是可能的結果很少 Diff_EQ 附件拖入ida z3求解等式&#xff0c;腳本。無反調試的情況下本地可以驗證&#xff…

圖靈完備之路(數電學習三分鐘)----邏輯與計算架構

經過前面幾節的學習&#xff0c;我們已經有了簡單的數電知識&#xff0c;下面&#xff0c;我們將正式進入設計簡單圖靈完備機的工作&#xff0c;首先&#xff0c;我們要設計出具有邏輯運算與計算功能的簡單結構&#xff1a; 1.邏輯架構 首先&#xff0c;該架構能實現多種邏輯…

【C++筆記】AVL樹的深度剖析

【C筆記】AVL樹的深度剖析 &#x1f525;個人主頁&#xff1a;大白的編程日記 &#x1f525;專欄&#xff1a;C筆記 文章目錄【C筆記】AVL樹的深度剖析前言一. AVL樹的概念二.AVL樹的實現2.1 AVL樹的結構2.2 AVL樹的插入2.3 平衡因子更新三.旋轉3.1旋轉的原則3.2右單旋3.3左單…

支持向量機(SVM)在肝臟CT/MRI圖像分類(肝癌檢測)中的應用及實現

&#x1f9d1; 博主簡介&#xff1a;CSDN博客專家、CSDN平臺優質創作者&#xff0c;高級開發工程師&#xff0c;數學專業&#xff0c;10年以上C/C, C#, Java等多種編程語言開發經驗&#xff0c;擁有高級工程師證書&#xff1b;擅長C/C、C#等開發語言&#xff0c;熟悉Java常用開…

DeepSeek掃雷游戲網頁版HTML5(附源碼)

用DeepSeek幫忙生成一個網頁版的掃雷游戲&#xff0c;效果非常棒&#xff0c;基于HTML5實現&#xff0c;方便運行。 提示詞prompt 幫我做一個網頁版的 html5 掃雷游戲游戲功能說明 游戲難度&#xff1a; 1 簡單&#xff1a;1010 格子&#xff0c;10個地雷 2 中等&#xff1a;16…

Day53GAN對抗生成網絡思想

生成對抗網絡&#xff08;GAN&#xff09;是深度學習領域的一種革命性模型&#xff0c;由Ian Goodfellow等人于2014年提出。其核心思想源于博弈論中的零和博弈&#xff0c;通過兩個神經網絡&#xff08;生成器和判別器&#xff09;的對抗性訓練&#xff0c;實現數據的高質量生成…

meilisearch-輕量級搜索引擎

meilisearch是一款開源的輕量級搜索引擎&#xff0c;相比于elasticsearch等重量級搜索引擎&#xff0c;meilisearch注重數據搜索&#xff0c;從而而省去了其它不必要的功能&#xff08;如支持聚合分析、分布式搜索等特性&#xff09;&#xff0c;以便于快速上手開發和構建應用。…

51c大模型~合集150

我自己的原文哦~ https://blog.51cto.com/whaosoft/14034001 #原來Scaling Law還能被優化 Meta這招省token又提效 2017 年&#xff0c;一篇《Attention Is All You Need》論文成為 AI 發展的一個重要分水嶺&#xff0c;其中提出的 Transformer 依然是現今主流語言模型…

每天一個前端小知識 Day 23 - PWA 漸進式 Web 應用開發

PWA 漸進式 Web 應用開發&#xff08;離線緩存、桌面安裝等&#xff09; &#x1f9e0; 一、什么是 PWA&#xff1f; PWA&#xff08;Progressive Web App&#xff09;是一種讓 Web 應用具有類似原生 App 用戶體驗的技術體系。 PWA 不是一個框架&#xff0c;而是由一組瀏覽器 A…