91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用LabVIEW和NI myRIO實現(xiàn)PID控制器

科技觀察員 ? 來源:allaboutcircuits ? 作者:馬克·納維達(dá)斯 ? 2022-05-10 16:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本系列中,我們將討論如何使用 LabVIEW 和一個愛好直流伺服電機(jī)來實現(xiàn)一個簡單的 PID 控制器。我們通過移除其內(nèi)部控制器并用 myRIO 接口替換它來定制伺服。

這是我們以定制伺服電機(jī)為基礎(chǔ)的第二篇文章,專門關(guān)注 PID 控制器的編程。您需要按照本系列的第一部分(討論項目的硬件)來實施下面顯示的步驟。

LabVIEW

LabVIEW 是由 National Instruments 開發(fā)的圖形化編程語言。該語言的最大好處之一是可供它使用的大量工具包、模塊和庫。使用這些,您可以為眾多工程和研究項目快速開發(fā)最復(fù)雜的應(yīng)用程序。

這個實驗也不例外。我們將完全控制 NI LabVIEW PID 和模糊邏輯工具包,而不是完全從頭開始編寫 PID 控制器。使用軟件包附帶的常規(guī)“PID.VI”,我們將能夠更快地解決繞過原始伺服控制器的挑戰(zhàn)。

本教程無意涵蓋 PID 的基本理論細(xì)節(jié)。相反,它將向您展示如何實現(xiàn)一個簡單的 PID 控制器。

要求

要遵循,您應(yīng)該有以下可用和/或安裝:

NI myRIO 嵌入式硬件設(shè)備

NI myRIO 擴(kuò)展端口 (MXP) 原型板附件(預(yù)裝 myRIO)

現(xiàn)在應(yīng)該連接到 Protoboard 附件的定制伺服電機(jī)

NI LabVIEW

NI LabVIEW PID 和模糊邏輯工具包

在本教程中,我使用 NI LabVIEW 2014 版對安裝了 NI LabVIEW PID 和 Fuzzy Logic Toolkit 的 NI myRIO 設(shè)備進(jìn)行編程。如果您仍然是學(xué)生,您應(yīng)該能夠從您的大學(xué)獲得所有軟件和相關(guān)許可證。

伺服控制——理論與實踐

之前,我們解釋了如何控制伺服以及我們?nèi)绾卫@過設(shè)備的內(nèi)部控制器來控制速度而不是位置。我們說過這些設(shè)備接受脈寬調(diào)制 (PWM) 信號(圖 1)并遵循標(biāo)準(zhǔn) RC 愛好伺服協(xié)議。

poYBAGJ6IM2ATuJ6AAAu6ijywZ4059.jpg

圖 1:通過 PWM 進(jìn)行簡單的伺服控制

根據(jù)該標(biāo)準(zhǔn)協(xié)議,常規(guī)伺服系統(tǒng)將以 1000 μs 的脈沖長度 (T ON ) 移動到其最左側(cè)位置,以 2000 μs 移動到最右側(cè)位置,并在 1500 μs 時停留在中間位置(表 1)。

pYYBAGJ6IM6AT-7HAAA63WnfIBo737.jpg

表 1:標(biāo)準(zhǔn)伺服行為

定制后,它應(yīng)該以 1000 μs 向左移動最快,以 2000 μs 向右移動,并在 1500 μs 時保持靜止(表 2)。請注意,這些假設(shè)假設(shè)刷新率為 50 Hz。

poYBAGJ6IM-AdR64AAA7A8XcVS0723.jpg

表 2:定制后的伺服行為

然而,在實踐中,這些值可能會有很大的變化,尤其是對于我們在本教程中使用的預(yù)算伺服系統(tǒng)。

因此,我們將憑經(jīng)驗確定中心位置,我們自己,然后為順時針和逆時針行程添加任意正負(fù)偏移。

軟件

創(chuàng)建 LabVIEW 項目

首先,讓我們創(chuàng)建一個LabVIEW項目。啟動LabVIEW,在初始屏幕上,選擇“創(chuàng)建項目”(或者,您可以轉(zhuǎn)到文件》》創(chuàng)建項目)。

在新的彈出窗口中,選擇“myRIO Project”并單擊“Next”。

pYYBAGJ6INCAe_jWAADC-0tg2pI519.jpg

圖 2:創(chuàng)建 myRIO 項目——第 1 步

然后給項目起個名字。我把我的簡稱為“PID”。

最后,確保已插入并找到 myRIO,此時您可以單擊“完成”。

pYYBAGJ6INGAYlVxAADvVg7RUIU754.jpg

圖 3:創(chuàng)建 myRIO 項目——第 2 步

創(chuàng)建一個新VI

然后,在 myRIO 目標(biāo)下創(chuàng)建一個名為“PID Controller.VI”的新 VI,如圖 4 所示。您可以忽略甚至刪除“Main.VI”——它是默認(rèn)創(chuàng)建的,作為在下創(chuàng)建的每個 myRIO 項目的示例這個模板。

poYBAGJ6INKAaDapAAB0qZpE7P8547.jpg

圖 4:在 myRIO 上創(chuàng)建一個新 VI

打開新 VI 并切換到程序框圖窗口。創(chuàng)建一個帶有相關(guān)停止按鈕的 while 循環(huán)。我們將在這里放置所有需要連續(xù)執(zhí)行的代碼。

pYYBAGJ6INOAAZMnAAAaVFfZbew979.jpg

圖 5:帶有停止按鈕的 While 循環(huán)

接下來,使用 Quick Drop (CTRL+Space) 或從 myRIO 函數(shù)面板中選擇函數(shù),添加“Analog Input” express VI,如圖 6 所示。

在配置彈出窗口中,確保選擇的通道為“A/AI0 (Pin 3)”并為通道命名。我將其稱為“反饋”,因為使用此功能塊,我們將從內(nèi)部伺服電位器讀取我們的位置值。

然后單擊“確定”并將 express VI 放入 while 循環(huán)中。

pYYBAGJ6INSAYCXKAACDz51Rq-o581.jpg

圖 6:添加模擬輸入功能。

同樣,讓我們??創(chuàng)建一個 PWM 輸出,以便我們可以控制伺服速度。同樣,使用 Quick Drop 或函數(shù)選板,添加一個名為“PWM”的快速 VI(圖 7)。

對于您的通道,選擇“A/PWM0(引腳 27)”。將頻率設(shè)置為 50 Hz(通過“設(shè)置常數(shù)”選項)并在“占空比”下選擇“使用 Express VI 的輸入設(shè)置”。

poYBAGJ6INWAKKMxAADBxWfTdco004.jpg

圖 7:添加 PWM 功能

然后單擊“確定”并將塊放入while循環(huán)中。您應(yīng)該有一個類似于圖 8 中所示的布局。

pYYBAGJ6INaAMVKQAAA1Orr9dkI872.jpg

圖 8:向 while 循環(huán)添加模擬輸入和脈寬調(diào)制 (PWM) 功能。

確定伺服的中心位置

接下來,我們的目標(biāo)是確定伺服的中心位置。為此,請為“占空比”輸入創(chuàng)建一個控件。

您也可以為“反饋”創(chuàng)建一個指標(biāo),這樣您就可以觀察電位計的值(范圍在 0 到 5 之間,但正如我們稍后將看到的,將這些值轉(zhuǎn)換為不同的范圍很簡單)。我們還將使用“等待”功能添加一些時間。框圖如圖9所示;Wait 函數(shù)顯示為手表,附加的常數(shù) 10 表示我們有 10 ms 的延遲。

poYBAGJ6INiAK6BhAABJi-PiV5U151.jpg

圖 9:添加控件、指示器和計時。

從理論上講,我們的占空比將介于 1 ms 和 2 ms 的脈沖寬度之間,其中 1.5 ms 是停止伺服的值(零速度)。我們的 50 Hz 信號的周期為 20 ms,因此這些脈沖寬度對應(yīng)于 0.05、0.10 和 0.075 的占空比。

在實踐中,產(chǎn)生零速度的實際脈沖寬度可能與理論值不同。要找到實際值,請在占空比設(shè)置為 0.075 的情況下運行 VI,然后對其進(jìn)行調(diào)整,直到伺服不旋轉(zhuǎn)。在我的例子中,實際值為 0.058(圖 10)。

pYYBAGJ6INmAOKGxAAAVMZVXwbs383.jpg

圖 10: 中心查找代碼的前面板(前面板)。

添加任意偏移量

接下來,我們將向該中心值添加任意速度控制偏移。

我選擇了 0.012 的偏移量。這意味著順時針方向的最大角速度對應(yīng)于 0.046 (0.058 - 0.012) 的占空比,類似地,逆時針方向的最大角速度對應(yīng)于 0.070 (0.058 + 0.012)。這些映射如表 3 所示。

pYYBAGJ6INqAUfqJAAArzGxi2iM922.jpg

表 3:速度映射

任何中間值都代表給定方向上最大角速度的一小部分。例如,對于以最大速度的一半逆時針旋轉(zhuǎn),控制器需要將占空比設(shè)置為 0.058 + (0.012/2) = 0.064。

PID控制器實現(xiàn)

一旦我們確定了中間位置,我們就可以最終實現(xiàn) PID 控制器。使用 Quick Drop 或函數(shù)選板,從 LabVIEW PID 和 Fuzzy Logic 工具包中添加“PID.vi”。

為設(shè)定點輸入創(chuàng)建一個控件;設(shè)定點是我們希望輸出具有的值(在這個系統(tǒng)中,旋轉(zhuǎn)速度)。

我們還可以為 PID 增益和輸出范圍創(chuàng)建控制(暫時保持這些不變)。

您現(xiàn)在應(yīng)該有一個類似于圖 11 所示的 VI。

poYBAGJ6INqAPzbfAABSmcnuvgs779.jpg

圖 11:添加 PID 控制。

我們需要確保我們的設(shè)定點、輸出和反饋在適當(dāng)?shù)闹捣秶鷥?nèi)變化。

我們的輸出范圍設(shè)置為在 -100 和 100 之間變化(圖 11),因此讓我們將相同的范圍應(yīng)用于反饋。反饋最初在 0 到 5 的范圍內(nèi),因此我們需要縮放這些值(表 4)。

pYYBAGJ6INuAZUwnAAAXrGcrO1w813.jpg

表4:反饋映射表;0 應(yīng)該映射到 -100,而 5 應(yīng)該映射到 100。

通過對反饋值應(yīng)用斜率(用 A 表示)和偏移量(用 B 表示)來實現(xiàn)縮放。我們可以通過求解以下兩個聯(lián)立方程找到所需的斜率和偏移量:

poYBAGJ6INyAGlc7AAAfEu6YCrI782.jpg

圖 12:求解將反饋值縮放到 -100 到 100 范圍所需的斜率 (A) 和偏移量 (B)。

縮放反饋和輸出

下圖顯示了我們?nèi)绾螌⑿甭屎推屏亢喜⒌?VI 中。

poYBAGJ6IN2ADIIbAABxwfHuEKY612.jpg

圖 13:縮放反饋值。

根據(jù)我們之前確定的占空比值,我們還必須縮放在 -100 和 100 之間變化的輸出:

表 5:輸出(占空比)映射表。

pYYBAGJ6IN6AeebzAAA2IALryfg692.jpg

圖 14:求解將輸出值縮放到 0.046 到 0.070 范圍所需的斜率 (A) 和偏移量 (B)。

下圖顯示了我們?nèi)绾螌⑤敵隹s放合并到 VI 中。

poYBAGJ6IN-AEclHAACJH97BB1g936.jpg

圖 15:該項目的最終 VI。

概括

如果您已逐步按照教程進(jìn)行操作,那么您已經(jīng)成功實現(xiàn)了伺服的 PID 控制器,繞過了原來的伺服控制電路

如果您現(xiàn)在切換到 VI 的前面板,您可以獨立調(diào)整所有三個 PID 增益并使用“Setpoint”控件控制伺服。更改增益允許您調(diào)整 PID 控制器,從而獲得更好的伺服性能。

另外,請注意,我已將界面更改為滑塊,如下圖 16 所示,以便以更自然的方式移動伺服。

pYYBAGJ6IOCADzkdAABDTDuoqTA193.jpg

圖 16:該項目最終 VI 的前面板。

您也可以通過右鍵單擊數(shù)字控件并選擇“替換》》數(shù)字》》水平指針幻燈片”來執(zhí)行此操作。

恭喜您使用 LabVIEW 和 NI myRIO 實現(xiàn)了 PID 控制器!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • LabVIEW
    +關(guān)注

    關(guān)注

    2017

    文章

    3688

    瀏覽量

    347144
  • PID控制器
    +關(guān)注

    關(guān)注

    2

    文章

    173

    瀏覽量

    19702
  • myRIO
    +關(guān)注

    關(guān)注

    28

    文章

    11

    瀏覽量

    28673
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PID控制的算法

    的偏差有關(guān),這樣就大大提高了系統(tǒng)的穩(wěn)定性。需要注意的是最終的輸出結(jié)果應(yīng)該為 u(K)+增量調(diào)節(jié)值; PID的離散化過程基本思路就是這樣, 從而實現(xiàn)控制器控制作用。
    發(fā)表于 01-23 08:18

    C語言增量式PID的通用算法

    PID控制器。 該庫留出來PID控制器的所用有接口,對于調(diào)試來說非常方便,不需要外部再定義一堆函數(shù)來調(diào)用。該庫實現(xiàn)
    發(fā)表于 01-14 08:28

    請問如何優(yōu)化PID控制器的參數(shù)以實現(xiàn)快速響應(yīng)和減少超調(diào)?

    PID控制器在電機(jī)控制中起著關(guān)鍵作用。如何根據(jù)電機(jī)的特性和應(yīng)用需求調(diào)整PID控制器的參數(shù)(如比例系數(shù)、積分系數(shù)和微分系數(shù)),以
    發(fā)表于 12-08 06:15

    怎樣理解變頻內(nèi)置PID控制參數(shù)的含義

    變頻內(nèi)置PID控制參數(shù)是工業(yè)自動化領(lǐng)域中實現(xiàn)精確控制的核心要素,其合理配置直接影響電機(jī)調(diào)速、壓力調(diào)節(jié)、溫度
    的頭像 發(fā)表于 12-06 07:39 ?2007次閱讀

    Aerodiode高帶寬激光鎖定PID控制器

    。 PID-C型激光鎖定PID控制器專為實現(xiàn)寬達(dá)30MHz控制帶寬內(nèi)的最低噪聲水平而設(shè)計。該設(shè)備采用觸屏
    的頭像 發(fā)表于 10-22 07:48 ?470次閱讀
    Aerodiode高帶寬激光鎖定<b class='flag-5'>PID</b><b class='flag-5'>控制器</b>

    CW32電機(jī)控制基礎(chǔ)——PID控制原理

    將偏差的比例(Proportion)、積分(Integral)和微分(Differential)通過線性組合構(gòu)成控制量,用這一控制量對被控對象進(jìn)行控制,這樣的控制器
    的頭像 發(fā)表于 09-30 11:44 ?2686次閱讀
    CW32電機(jī)<b class='flag-5'>控制</b>基礎(chǔ)——<b class='flag-5'>PID</b><b class='flag-5'>控制</b>原理

    一步到位,Moku數(shù)字PID控制器實現(xiàn)系統(tǒng)實時調(diào)節(jié)與驗證

    PID控制被廣泛應(yīng)用于實驗控制和工業(yè)自動化系統(tǒng)中,但在實際調(diào)試中,傳統(tǒng)的PID控制器往往需要大量計算與經(jīng)驗積累,調(diào)節(jié)過程既繁瑣又耗時。而通過
    的頭像 發(fā)表于 06-03 12:00 ?1375次閱讀
    一步到位,Moku數(shù)字<b class='flag-5'>PID</b><b class='flag-5'>控制器</b><b class='flag-5'>實現(xiàn)</b>系統(tǒng)實時調(diào)節(jié)與驗證

    改進(jìn)粒子群算法的永磁同步電機(jī)PID控制器

    較好的輸出增益,振蕩較小,抗干擾能力較強(qiáng)。 純分享帖,需要者可點擊附件免費獲取完整資料~~~*附件:改進(jìn)粒子群算法的永磁同步電機(jī)PID控制器.pdf【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請第一時間告知,刪除內(nèi)容!
    發(fā)表于 05-28 15:44

    改進(jìn)的BP網(wǎng)絡(luò)PID控制器在無刷直流電機(jī)中的應(yīng)用

    通過分析學(xué)習(xí)速率對BP算法的影響,提出一種分層調(diào)整學(xué)習(xí)速率的改進(jìn)BP 網(wǎng)絡(luò)算法,并把該方法設(shè)計成 PID控制器應(yīng)用在無刷直流電機(jī)控制系統(tǒng)中,仿真結(jié)果驗證了基于改進(jìn)的 BP 網(wǎng)絡(luò)的PID
    發(fā)表于 05-28 15:42

    LabVIEW的詳細(xì)簡介和應(yīng)用(文末免費分享LabVIEW相關(guān)資料合集)

    LabVIEW使用的是圖形化編輯語言G編寫程序,產(chǎn)生的程序是框圖的形式。LabVIEW軟件是NI設(shè)計平臺的核心,也是開發(fā)測量或控制系統(tǒng)的理想選擇。L
    的頭像 發(fā)表于 05-22 11:43 ?2535次閱讀
    <b class='flag-5'>LabVIEW</b>的詳細(xì)簡介和應(yīng)用(文末免費分享<b class='flag-5'>LabVIEW</b>相關(guān)資料合集)

    工程機(jī)械控制器如何選型?控制器選型指南 #控制器 #車載控制器 #整車控制器 #控制器選型

    控制器
    長沙碩博電子科技股份有限公司
    發(fā)布于 :2025年03月14日 10:54:24

    激光 PID 控制器的工作原理與優(yōu)勢

    在激光技術(shù)廣泛應(yīng)用的今天,激光設(shè)備的性能優(yōu)劣直接影響著眾多領(lǐng)域的生產(chǎn)與科研成果。而激光 PID控制器,憑借其卓越的調(diào)控能力,成為激光設(shè)備的 “智能核心調(diào)控”。
    的頭像 發(fā)表于 03-12 16:03 ?1152次閱讀