STM32實現simpleFOC控制無刷電機

一、FOC基礎知識學習

使用simpleFOC控制無刷電機前,需要大概了解一下相關知識,包括力矩控制、速度控制、位置控制的原理和它們之間的聯系。

推薦學習資料:

教你寫一個比SimpleFOC更好的電機庫_嗶哩嗶哩_bilibili

《燈哥手把手教你寫FOC算法》課程講義及庫的官方文檔網站:http://dengfoc.com

SimpleFOC、ODrive和VESC 教程鏈接匯總_odrive和simplefoc哪個好-CSDN博客

SimpleFOC學習筆記匯總(2025.02.09更新)_simple foc-CSDN博客

二、環境安裝

1、開發工具

由于simpleFOC實現基于arduino,單片機的開發環境需要支持arduino。可選擇兩種方式:

(1)arduinoIDE

安裝方法可參考如下鏈接:

Arduino開發環境配置 - Dapenson - 博客園

https://zhuanlan.zhihu.com/p/591784392

(2)VScode+platformIO

這種方式可以基于我們常用的VScode來開發單片機程序,查看庫代碼很方便。

安裝方法可參考如下鏈接:

SimpleFOC—VSCode下載及PlatformIO安裝SimpleFOC庫-CSDN博客

【公開課】VSCode+PlatformIO開發環境的搭建_嗶哩嗶哩_bilibili

2、調試工具

可使用VOFA調試查看電壓、電流等波形

【VOFA+速成】半小時入門VOFA+簡明教程(快速上手一款強力的串口助手)-CSDN博客

三、硬件搭建

硬件環境可根據自己的項目需求選擇單片機主控板和電機。以下是我選用測試的硬件。

主控板:STM32F103C8T6/ESP32

電機:2804無刷電機,扭矩僅有0.02Nm,扭矩太小了,只能學習用。

編碼器:AS5600,用于測量電機旋轉角度和方向。

驅動板:電機驅動芯片選用DRV8313,電流傳感器選用INA240,這種電流傳感器采用在線電流檢測(不要用INA199之類的,這種是低側電流采樣,精度差,控制也很麻煩,需要PWM和采樣ADC同步,但是有些商家為了降低成本沒有告知,注意避坑)

電源:12V/2A直流電源

四、軟件測試

可以用simpleFOC的庫中的例程進行測試。測試時,根據選用的主控板改代碼中的引腳。

可參考:

https://zhuanlan.zhihu.com/p/390682580

Document

DengFOC官方文檔

需要注意的是,STM32測試串口通信的時候,arduino中需要將Serial改為Serial1(如果用的是第一路串口,其他的類推),否則跑不通。

5、相關功能或項目

【simpleFOC】一個電機如何模擬不同旋鈕的手感反饋?

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

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

相關文章

【數據結構】快慢指針

一、快慢指針的原理 定義: 快指針:每次移動兩步 慢指針:每次移動一步 終止條件: 當快指針到達鏈表末尾時停止 事件復雜度: 始終為O(n),僅需依次遍歷 空間復雜度: …

畢業論文 | 基于STM32的自動煙霧報警系統設計

基于STM32的煙霧報警系統 一、系統設計原理1. **系統架構**2. **工作原理**二、核心公式與算法1. **MQ-2傳感器濃度計算**2. **溫度傳感器數據處理**3. **校準與濾波**三、關鍵代碼實現1. **ADC初始化與數據讀取(以MQ-2為例)**2. **報警邏輯與閾值設置**3. **EEPROM存儲閾值*…

Android Gradle插件開發

文章目錄 1. Gradle插件是什么2. 為什么需要插件3. 編寫插件位置4. 編寫插件5. 自定義插件擴展5.1 訂閱擴展對象5.2 把擴展添加給Plugin并使用5.3 配置參數5.4 嵌套擴展5.4.1 定義擴展5.4.2 獲取擴展屬性5.4.3 使用5.4.4 執行5.4.5 輸出 6. 編寫在單獨項目里6.1 新建Module6.2 …

PPIO X OWL:一鍵開啟任務自動化的高效革命

2024年,僅憑一PPIO X OWL:一鍵開啟任務自動化的高效革命篇技術論文,OWL的Github倉庫便在24小時斬獲了15k Star,成為2024年增速最快的多智能體協作框架,重新定義了任務自動化的效率邊界。Camel AI團隊開源全棧方案&…

分布式事務,事務失效,TC事務協調者

1. 概述 本方案書旨在解決分布式系統中事務一致性問題,重點闡述全局事務標識(XID)的傳遞與存儲機制、事務協調者(TC)的設計與部署,以及分布式事務失效場景的應對策略。基于業界成熟框架(如Seat…

2025年“深圳杯”數學建模挑戰賽D題-法醫物證多人身份鑒定問題

法醫物證多人身份鑒定問題 小驢數模 犯罪現場法醫物證鑒定是關系到國家安全、公共安全、人民生命財產安全和社會穩定的重大問題。目前法醫物證鑒定依賴DNA分析技術不斷提升。DNA檢驗的核心是STR(Short Tandem Repeat,短串聯重復序列)分析技術…

Mysql查詢異常【Truncated incorrect INTEGER value】

文章目錄 異常原因分析1、數據類型不一致2、數據長度超長3、數據格式要正確 處理方案模擬案例創建表數據查詢 異常 在執行MySQL的語句時,在控制臺報錯如下所示。 Data truncation: Truncated incorrect INTEGER value 原因分析 1、數據類型不一致 必須要保證數據…

WPF性能優化舉例

WPF性能優化集錦 一、UI渲染性能優化 1. 虛擬化技術 ??ListView/GridView虛擬化??: <ListView VirtualizingStackPanel.IsVirtualizing="True"VirtualizingStackPanel.VirtualizationMode="Recycling"ScrollViewer.IsDeferredScrollingEnabled=…

C# 面向對象實例演示

C# 面向對象編程實例演示 一、基礎概念回顧 面向對象編程(OOP)的四大基本特性&#xff1a; ??封裝?? - 將數據和操作數據的方法綁定在一起??繼承?? - 創建新類時重用現有類的屬性和方法??多態?? - 同一操作作用于不同對象產生不同結果??抽象?? - 簡化復雜系…

大連理工大學選修課——機器學習筆記(3):KNN原理及應用

KNN原理及應用 機器學習方法的分類 基于概率統計的方法 K-近鄰&#xff08;KNN&#xff09;貝葉斯模型最小均值距離最大熵模型條件隨機場&#xff08;CRF&#xff09;隱馬爾可夫模型&#xff08;HMM&#xff09; 基于判別式的方法 決策樹&#xff08;DT&#xff09;感知機…

蔣新松:中國機器人之父

名人說:路漫漫其修遠兮,吾將上下而求索。—— 屈原《離騷》 創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder??) 蔣新松:中國機器人之父 一、生平簡介 1. 早年經歷與求學道路 蔣新松出生于1931年8月3日,江蘇省江陰澄北鎮一個靠近長江的小鎮。他的名字來源于杜…

表征(Representations)、嵌入(Embeddings)及潛空間(Latent space)

文章目錄 1. 表征 (Representations)2. 嵌入 (Embeddings)3. 潛空間 (Latent Space)4. 關系總結5. 學習思考 1. 表征 (Representations) 定義: 表征是指數據的一種編碼或描述形式。在機器學習和深度學習中&#xff0c;它特指模型在處理數據時&#xff0c;將原始輸入數據轉換成…

【STM32實物】基于STM32的RFID多卡識別語音播報系統設計

演示視頻: 基于STM32的RFID多卡識別語音播報系統設計 前言:本項目可實現多個電子標簽IC卡RFID識別,刷卡識別后進行中文語音播報反饋,同時進行控制對應的燈光開關。以此也可擴展開發更多功能。 本項目所需主要硬件包括:STM32F103C8T6最小系統板、RFID-RC522模塊、五個IC電…

全面了解CSS語法 ! ! !

CSS&#xff08;層疊樣式表&#xff09;是網頁設計的靈魂之一&#xff0c;它賦予了網頁活力與美感。無論是為一個簡單的個人博客增添色彩&#xff0c;還是為復雜的企業網站設計布局&#xff0c;CSS都是不可或缺的工具。那么&#xff0c;CSS語法到底是什么樣的呢&#xff1f;它背…

青少年抑郁癥患者亞群結構和功能連接耦合的重構

目錄 1 研究背景及目的 2 研究方法 2.1 數據來源與參與者 2.1.1 MDD患者&#xff1a; 2.1.2 健康對照組&#xff1a; 2.2 神經影像分析流程 2.2.1 圖像采集與預處理&#xff1a; 2.2.2 網絡構建&#xff1a; 2.2.3 區域結構-功能耦合&#xff08;SC-FC耦合&#xff09…

【QT】編寫第一個 QT 程序 對象樹 Qt 編程事項 內存泄露問題

目錄 1. 編寫第一個 QT 程序 1.1 使用 標簽 實現 1.2 純代碼形式實現 1.3 使用 按鈕 實現 1.3.1 圖形化界面實現 1.3.2 純代碼形式實現 1.4 使用 編輯框 實現 1.4.1 圖形化界面實現 1.4.2 純代碼形式實現 1.4.3 內存泄露 2. 認識對象模型&#xff08;對象樹&…

在pycharm中創建Django項目并啟動

Django介紹 Django 是一個基于 Python 的開源 Web 應用框架&#xff0c;采用了 MTV&#xff08;Model - Template - View&#xff09;軟件設計模式 &#xff0c;由許多功能強大的組件組成&#xff0c;能夠幫助開發者快速、高效地創建復雜的數據庫驅動的 Web 應用程序。它具有以…

在Carla中構建自動駕駛:使用PID控制和ROS2進行路徑跟蹤

機器人軟件開發什么是 P、PI 和 PID 控制器&#xff1f;比例 &#xff08;P&#xff09; 控制器比例積分 &#xff08;PI&#xff09; 控制器比例-積分-微分 &#xff08;PID&#xff09; 控制器橫向控制簡介CARLA ROS2 集成縱向控制橫向控制關鍵要點結論引用 機器人軟件開發 …

【KWDB 創作者計劃】_深度解析KWDB存儲引擎

文章目錄 每日一句正能量引言一、存儲引擎核心模塊結構二、寫前日志 WAL&#xff08;Write-Ahead Log&#xff09;三、列式壓縮存儲&#xff08;Columnar Compression&#xff09;四、索引機制與混合查詢調度五、分布式核心功能&#xff1a;租約管理實戰六、時間序列數據處理&a…

Apache Tomcat 漏洞(CVE-2025-24813)導致服務器面臨 RCE 風險

CVE-2025-24813Apache Tomcat 中發現了一個嚴重安全漏洞,標識為,該漏洞可能導致服務器面臨遠程代碼執行 (RCE)、信息泄露和數據損壞的風險。 此缺陷影響以下版本: Apache Tomcat11.0.0-M1通過11.0.2Apache Tomcat10.1.0-M1通過10.1.34Apache Tomcat9.0.0-M1通過9.0.98了解 …