日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32 电机教程 30 - 无刷无感入门2

發布時間:2025/4/5 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32 电机教程 30 - 无刷无感入门2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

????? 無刷直流 Brushless Direct Current BLDC)電機是一種正快速普及的電機類型,它可在家用電器、汽車、航空航天、消費品、醫療、工業自動化設備和儀器等行業中使用。正如名稱指出的那樣,BLDC 電機不用電刷來換向,而是使用電子換向。BLDC 電機和有刷直流電機以及感應電機相比,有許多優點。其中包括:

? 更好的轉速-轉矩特性

? 快速動態響應

? 高效率

? 使用壽命長

? 運轉無噪音

? 較高的轉速范圍此外,

由于輸出轉矩與電機體積之比更高,使之在需要著重考慮空間與重量因素的應用中,大有用武之地。

無刷電機 ???

?

前面的課程內容我們講了無刷電機有感方式控制,有6步方波控制,FOC控制等,但這些控制也得到電機的轉子位置,即需要額外的電機轉子位置檢測傳感器,前面的課程我們也學習過步進電機的基本控制方法,那么三相無刷電機BLDC/PMSM能否也像步進電機一樣控制它運轉呢,其實也是可以的(不過電機的控制效率不高),上一講我們實現了步進電機控制思想下的BLDC無感6步方波控制,實現了電機的正反轉,但電機效率底,轉矩脈動大,本節再給大家演示無感無刷電機的步進電機控制思想下的 正弦脈寬調制(SPWM)波控制效果。

先解釋一下正弦脈寬調制(SPWM),疊加在MOS管的直流電壓可以通過PWM開關控制來等效成正弦電壓,由于中性點為0,因此電機的相電壓也為正弦,從而使得電機相線電流也成正弦變化規則,消除了轉矩波動。根據面積等效原理,正弦波還可以等效成PWM波。下圖所示,通過這種方式我們不停的調整PWM的占空比來實現正弦電壓效應。

?

正弦波與PWM波的等效圖

本節SPNUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH快速為演示一下BLDC電機的無感控制(步進電機方式,SPWM波)

本節所用電機為2836無刷電機,電機有兩組線(hall傳感器線和電機三相線),工作電壓24V,最大轉速12000rpm:

示例詳解

本節用到ST官方推出的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH 開發板。

NUCLEO-F103RB對應的大致原理接線圖:

X-NUCLEO-IHM07M1 3SH部分原理圖:

?

?

  • 準備操作
  • X-NUCLEO-IHM07M1 3SH是一款專門用于PMSM(永磁同步)或BLDC(直流無刷 )的電機驅動板,其電機驅動板驅動芯片型號為L6230(詳細數據手冊可在st官網下載),本節主要目的是給大家演示無位置傳感器時的BLDC 6步方波控制(步進式),僅需讓BLDC電機實現簡單正反轉動即可,僅需用到IN1,IN2, IN3和OUT1,OUT2,OUT3以及HALL傳感器信號接口H1,H2,H3。
  • ?

    需要用到的信號

    對應MCU引腳

    EN1

    PC10

    IN1

    PA8

    EN2

    PC11

    IN2

    PA9

    EN3

    PC12

    IN3

    PA10

    H1(本節不用)

    PA15

    H2(本節不用)

    PB3

    H3(本節不用)

    PB10

    為了更加簡單地介紹清楚BLDC 6 步方波控制的具體實現,為了實現電機的速度控制,本節直接使用STM32的TIM1產生三路PWM波對應信號IN1、IN2、IN3,通過調節PWM波占空比實現電機的速度控制;將EN1、EN2、EN3配置成普通輸出IO口輸出模式,(接下來紅色內容本節用不上,可不管)H1,H2,H3配置成TIM2的hall傳感器模式,并開啟T1的捕獲中斷,中斷觸發模式為雙邊觸發模式,在中斷服務程序中實理更加快帶的電機換相(6步換步)操作。

    ?

  • 本節工程直接在《STM32 電機教程 11 - BLDC 6 步方波開環速度控制》一節工程基礎上修改即可,直接修改源代碼:
  • 給工程加入本節需用到的fastSin.c、delay.c((放于Src文件夾中))及cfastSin.h、delay.h、User.h(放于inc文件夾中):

    在BLDC.C中修改GetBldcHall函數:

    在BLDC.C中修改BldcStart函數:

    最后修改main.c:

    ?

    設置工程下載后自動運行:

    編譯程序無誤后,下載運行程序,可以看到電機可以成功運轉起來,要控制電機的正反轉,只需控制虛擬HALL狀態的產生順序,即修改main函數中主循環中下圖所示代碼 :

    控制電機轉速只需修改虛擬角度產生的時間間隔:

    ?

    OK,本期實驗完成!可以看出本節使用SPWM波驅動后電機的轉動效果要比上一節的6步方控制控制方式更好平穩,噪音也更小,同時電機的轉矩波動也變小了 ,不過和上一節一樣,本節的電機運行效率也不高,電流同樣大,同時電機在啟動時有時會抖一下,接下來的章節我們將一一解決上述問題,實現直正的無感無刷電機控制。最后喜歡這個公眾號的同學們記得加關注了,每天都會有技術干貨推出!!

    ?

    ?

    文中源碼及資料下載,關注十三公眾號:

    在公眾號里給十三發送 “下載|STM32 電機教程 30” :

    ?

    ?

    總結

    以上是生活随笔為你收集整理的STM32 电机教程 30 - 无刷无感入门2的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。