国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

control suite如何安裝

GReq_mcu168 ? 來源:加油射頻工程師 ? 作者:加油射頻工程師 ? 2022-07-10 10:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天給大家安利一下了。一般同學會去某度上搜,看到各種各樣版本的PID示例,或者去GitHub上白嫖。

其實一些芯片公司會提供一些控制領域的解決方案了,這里面就會包括PID庫。

比如ST的“ST Motor Control Sdk”,或者TI的C2000系列的control suite

不過目前TI官方對于control suite已經不再提供相應的更新,可以繼續下載這個套件。

目前control suite已經更新為C2000WARE-MOTORCONTROL-SDK.

那本文主要介紹TI的control suite,這里面除了PID外有很多控制類算法,并且配置了豐富的文檔。

如何安裝?

進入ti的官網,輸入control suite進行搜索,就可以找到相應的安裝包。

45b42072-eed2-11ec-ba43-dac502259ad0.png

這里有離線安裝包,和在線安裝包。直接基于在線安裝包進行操作即可。我們先下載安裝包。

45cd40de-eed2-11ec-ba43-dac502259ad0.png

下面就是一路瘋狂點擊Next即可;

45d61312-eed2-11ec-ba43-dac502259ad0.png界面 145efba6a-eed2-11ec-ba43-dac502259ad0.png界面 24608ac0a-eed2-11ec-ba43-dac502259ad0.png界面 346184de0-eed2-11ec-ba43-dac502259ad0.png界面 4462706b4-eed2-11ec-ba43-dac502259ad0.png耐心等待4639364a-eed2-11ec-ba43-dac502259ad0.png安裝成功

源碼和文檔

進入主界面,這里基本的例子都是基于TI的C2000系列的MCU進行開發的,具體如下圖所示;

4654b14a-eed2-11ec-ba43-dac502259ad0.png主界面

進入主界面之后,我們可以看到左側這邊包含了軟硬件文檔,項目示例還有相應的文檔。

46701552-eed2-11ec-ba43-dac502259ad0.png

其實我們要找的是基于C2000系列MCU的數學算法庫,可以在下列列表中找到;

468d8074-eed2-11ec-ba43-dac502259ad0.png

當然也可以在安裝目錄C: icontrolSUITElibsapp_libsmotor_controlmath_blocksv4.2下面找到相應的PID算法;

46a9e764-eed2-11ec-ba43-dac502259ad0.png

至于如何使用這幾個文件,這里也提供了相應的文檔,在Docs中找到,

46bd5a42-eed2-11ec-ba43-dac502259ad0.png

例如pid_grando.h文件,這里介紹了對應的平臺,當然是TI系列的MCU,并且依賴于IQMath庫,其實這里我們做一些簡單的改動,就可以移植到自己所需的平臺上去了,具體源碼如下:

/* =================================================================================

File name: PID_GRANDO.H

===================================================================================*/#ifndef __PID_H__#define __PID_H__typedef struct { _iq Ref; // Input: reference set-point

_iq Fbk; // Input: feedback

_iq Out; // Output: controller output

_iq c1; // Internal: derivative filter coefficient 1

_iq c2; // Internal: derivative filter coefficient 2

} PID_TERMINALS;

// note: c1 & c2 placed here to keep structure size under 8 wordstypedef struct { _iq Kr; // Parameter: reference set-point weighting

_iq Kp; // Parameter: proportional loop gain

_iq Ki; // Parameter: integral gain

_iq Kd; // Parameter: derivative gain

_iq Km; // Parameter: derivative weighting

_iq Umax; // Parameter: upper saturation limit

_iq Umin; // Parameter: lower saturation limit

} PID_PARAMETERS;

typedef struct { _iq up; // Data: proportional term

_iq ui; // Data: integral term

_iq ud; // Data: derivative term

_iq v1; // Data: pre-saturated controller output

_iq i1; // Data: integrator storage: ui(k-1)

_iq d1; // Data: differentiator storage: ud(k-1)

_iq d2; // Data: differentiator storage: d2(k-1)

_iq w1; // Data: saturation record: [u(k-1) - v(k-1)]

} PID_DATA;

typedef struct { PID_TERMINALS term;

PID_PARAMETERS param;

PID_DATA data;

} PID_CONTROLLER;

/*-----------------------------------------------------------------------------

Default initalisation values for the PID objects

-----------------------------------------------------------------------------*/

#define PID_TERM_DEFAULTS {

0,

0,

0,

0,

0

}#define PID_PARAM_DEFAULTS {

_IQ(1.0),

_IQ(1.0),

_IQ(0.0),

_IQ(0.0),

_IQ(1.0),

_IQ(1.0),

_IQ(-1.0)

}#define PID_DATA_DEFAULTS {

_IQ(0.0),

_IQ(0.0),

_IQ(0.0),

_IQ(0.0),

_IQ(0.0),

_IQ(0.0),

_IQ(0.0),

_IQ(1.0)

}/*------------------------------------------------------------------------------

PID Macro Definition

------------------------------------------------------------------------------*/#define PID_MACRO(v)

/* proportional term */

v.data.up = _IQmpy(v.param.Kr, v.term.Ref) - v.term.Fbk;

/* integral term */

v.data.ui = _IQmpy(v.param.Ki, _IQmpy(v.data.w1, (v.term.Ref - v.term.Fbk))) + v.data.i1;

v.data.i1 = v.data.ui;

/* derivative term */

v.data.d2 = _IQmpy(v.param.Kd, _IQmpy(v.term.c1, (_IQmpy(v.term.Ref, v.param.Km) - v.term.Fbk))) - v.data.d2;

v.data.ud = v.data.d2 + v.data.d1;

v.data.d1 = _IQmpy(v.data.ud, v.term.c2);

/* control output */

v.data.v1 = _IQmpy(v.param.Kp, (v.data.up + v.data.ui + v.data.ud));

v.term.Out= _IQsat(v.data.v1, v.param.Umax, v.param.Umin);

v.data.w1 = (v.term.Out == v.data.v1) ? _IQ(1.0) : _IQ(0.0);

#endif // __PID_H__

這里面不僅僅做了積分抗飽和,還有對微分環節的濾波處理,所以應用到項目中是沒有問題的。

代碼中需要了解Q格式的相關的知識,可以參考一下我的這篇文章《一文教你搞懂C語言的Q格式》 ;

另外,這個路徑下的文檔中,還提供了相應的Example,以及PID的信號流圖,具體如下所示:

46ce3e52-eed2-11ec-ba43-dac502259ad0.png46ed5558-eed2-11ec-ba43-dac502259ad0.png

所以,整體來說,這個部分的源碼以及資料都非常有參考價值,由于離線文件太大,后臺回復【618】獲取相應安裝文件。

原文標題:分享一個直接用于項目開發的PID庫!很好用!

文章出處:【微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

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

    關注

    147

    文章

    18938

    瀏覽量

    398621
  • PID
    PID
    +關注

    關注

    38

    文章

    1500

    瀏覽量

    91248
  • 源碼
    +關注

    關注

    8

    文章

    685

    瀏覽量

    31335

原文標題:分享一個直接用于項目開發的PID庫!很好用!

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    奇捷科技EasyAI ECO Suite即將發布

    奇捷科技將于1月29日正式發布集成AI引擎的智能ECO解決方案包——EasyAI ECO Suite。在芯片設計關鍵的后期階段,ECO可能成為決定產品上市速度與成敗的“終極挑戰”。面對復雜ECO設計挑戰,傳統方法依賴人工試錯或衍生工具,效率低下,結果難以預測,成為困擾芯片設計公司多年的痛點。
    的頭像 發表于 01-15 16:25 ?830次閱讀

    ODF配線架的安裝步驟有哪些?

    ODF(光纖配線架)的安裝步驟通常涵蓋安裝前準備、機架安裝、光纜處理、光纖熔接與連接、盤纖與走線、測試驗收以及標識管理等方面,以下是詳細介紹: 一、安裝前準備 確定
    的頭像 發表于 01-04 11:57 ?354次閱讀

    Include File解鎖Vector Logger Suite高階功能

    Include File(inc文件)是Vector Logger Suite(VLS)中使用LTL代碼片段的關鍵機制。通過Include File,用戶可以在LTL代碼中靈活定義參數、觸發
    的頭像 發表于 12-30 09:44 ?380次閱讀
    Include File解鎖Vector Logger <b class='flag-5'>Suite</b>高階功能

    導軌水平安裝安裝面不平的解決方法

    水平安裝微型導軌時,安裝面不平整會導致導軌變形、運行卡滯甚至縮短壽命。
    的頭像 發表于 12-16 17:57 ?1174次閱讀
    導軌水平<b class='flag-5'>安裝</b>中<b class='flag-5'>安裝</b>面不平的解決方法

    AMD Vivado Design Suite 2025.2版本現已發布

    AMD Vivado Design Suite 2025.2 版本現已發布,新增對 AMD Versal 自適應 SoC 的設計支持,包含新器件支持、QoR 功能及易用性增強。
    的頭像 發表于 12-09 15:11 ?975次閱讀

    CW32L010 Motor Control Driver無刷電機驅動板的上手體驗

    下載界面,搜索CWL030下載固件庫 下載界面雙擊打開芯片支持包進行安裝 目錄安裝完成后,打開官方例程進行編譯與燒錄 官方例程2.實驗現象 使用外部12V電源進行供電,連接電機的UVW到開發板
    發表于 11-27 06:04

    亞馬遜云科技推出Amazon Quick Suite,引領Agentic AI驅動的工作新范式

    Amazon Quick Suite幫助客戶 突破 信息碎片化、應用孤島 化 和重復性 工作 的 干擾 , 專注于**真正重要的 事情上 。 要點概述 Amazon Quick Suite是亞馬遜云
    的頭像 發表于 10-10 14:50 ?843次閱讀

    IBM Maximo Application Suite (MAS) V9.1重磅升級:引入生成式AI,優化投資規劃和設備管理

    近日,IBM Maximo Application Suite (MAS) V9.1 版本已正式發布。該版本帶來了諸多強大的技術創新,旨在幫助企業在數據和 AI 時代部署端到端的資產生命周期管理解決方案。
    的頭像 發表于 07-03 18:23 ?1496次閱讀
    IBM Maximo Application <b class='flag-5'>Suite</b> (MAS) V9.1重磅升級:引入生成式AI,優化投資規劃和設備管理

    貿澤開售用于下一代電機控制應用的英飛凌PSOC Control C3 MCU

    2025 年 7 月 2 日 – 專注于引入新品的全球電子元器件和工業自動化產品授權代理商貿澤電子 (Mouser Electronics) 即日起開售英飛凌的PSOC? Control C3
    發表于 07-03 10:39 ?1764次閱讀

    AMD Vivado Design Suite 2025.1現已推出

    AMD Vivado Design Suite 2025.1 現已推出,支持 AMD Spartan UltraScale+ 和新一代 Versal 器件。這一最新版本還新增了多項功能,可顯著提升 Versal SSIT 器件的 FMAX 值,并對所有系列產品在 IP 集成和功能驗證方面的易用性進行了改進。
    的頭像 發表于 06-16 15:16 ?1510次閱讀

    如何使用One Spin檢查AMD Vivado Design Suite Synth的結果

    本文講述了如何使用 One Spin 檢查 AMD Vivado Design Suite Synth 的結果(以 Vivado 2024.2 為例)。
    的頭像 發表于 05-19 14:22 ?1315次閱讀
    如何使用One Spin檢查AMD Vivado Design <b class='flag-5'>Suite</b> Synth的結果

    EZ-USB Suite無法打開怎么解決?

    當我打開 EZ-USB Suite 時,程序變得沒有響應并且無法執行任何操作。 我嘗試重新安裝并刪除 cypress 文件夾,但情況仍然相同 我想問一下有沒有什么文檔可以恢復這個程序的原始設置或者你對如何解決這個問題有什么建議?
    發表于 05-13 06:50

    使用EZ-USB? SUITE構建img文件并決定將示例程序下載到開發板時,遇到一個名為“Bootloader未運行”的錯誤,怎么解決?

    你好,最近我買了一塊嵌入CYUSB3014芯片的USB開發板。 我從英飛凌的官方網站下載了SDK。 它包含一個有許多示例的固件文件夾。 當我使用EZ-USB? SUITE 構建 img 文件并決定
    發表于 05-09 06:50

    Kepware Siemens Suite

    Siemens Suite for KEPServerEX 是 Siemens 設備驅動的集合,為了方便而將它們捆綁在一起。它提供一種簡單且可靠的方法將基于 Siemens Ethernet
    的頭像 發表于 04-25 11:13 ?756次閱讀
    Kepware Siemens <b class='flag-5'>Suite</b>

    DevEco Studio 工具如何安裝

    簽名。 步驟 3在編輯窗口右上角的工具欄,點擊運行按鈕,或使用默認快捷鍵 Shift+F10(Mac 為 Control+R)運行工程,等待編譯完成即可便運行在設備上。 至此,驗證了 DevEco Studio 工具已正確安裝,接下來可以開始正式的應用開發。
    發表于 04-24 07:38