色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 掌握MCU軟件設(shè)計準(zhǔn)則 實現(xiàn)直流馬達控制精準(zhǔn)度提升

          掌握MCU軟件設(shè)計準(zhǔn)則 實現(xiàn)直流馬達控制精準(zhǔn)度提升

          作者: 時間:2016-12-02 來源:網(wǎng)絡(luò) 收藏


          憑借軟件算法 無刷直流馬達變速控制性能大增
          無刷直流馬達提供一些傳統(tǒng)有刷換向DC馬達所沒有的優(yōu)點。電子和傳感器有效的替代電刷角色,提供更長的壽命,減少維護操作,并且沒有電刷噪聲。正確整流的無刷直流馬達的扭矩-速度特性完全相同于如圖1所示的DC馬達,因此,無刷直流馬達展現(xiàn)出與DC馬達相同的滿足需求的質(zhì)量,非常適用于變速控制。這個范例為使用霍爾效應(yīng)傳感器控制馬達換向的無刷直流馬達,提供簡單的開放回路控制,無刷直流馬達的速度使用簡單的電位器控制。在這種方式下的無刷直流馬達控制的特點,類似于經(jīng)典DC馬達控制范例。
          這個范例的硬件實現(xiàn)如圖6所示。馬達由六個功率晶體管驅(qū)動,構(gòu)成三相橋式結(jié)構(gòu)。下部的晶體管Q1-3是N通道功率MOSFET;上部的三個晶體管是P通道功率MOSFET。這樣就簡化閘極驅(qū)動器管理,此外,互補閘極驅(qū)動器的使用使得在預(yù)設(shè)狀態(tài)下,功率晶體管處于關(guān)閉狀態(tài)。



          圖6 無刷DC馬達驅(qū)動


          霍爾效應(yīng)傳感器有開集電極輸出,需要上拉電阻。檢查馬達規(guī)格確?;魻栃?yīng)傳感器是適合配置的,開集電極輸出通常是3V兼容的,然而,霍爾效應(yīng)傳感器也需要一個偏置電源,通常須要超過3V。在大多數(shù)系統(tǒng)中,霍爾效應(yīng)傳感器能夠關(guān)閉馬達電源電壓,或者閘極驅(qū)動器電源電壓。
          使用斷點調(diào)變軟件可能會將馬達和MOSFET置于不良狀態(tài)。當(dāng)MCU遇到一個斷點時,引腳被及時的有效凍結(jié),而且可以留下PWM輸出處于啟動狀態(tài)。這里推薦的流程是在進行單步調(diào)變或者使用斷點之前,一直斷開馬達電源連接。BLDC馬達在跨越繞組時,將會滿電壓失速。BLDC馬達失速電流僅僅與繞組的內(nèi)阻相關(guān),這很可能損壞功率MOSFET。
          PORT_Init()函數(shù)對交叉開關(guān)器和輸出引腳分配進行設(shè)置。額外的控制引腳為3-相控制而設(shè)置為推挽式輸出,為讀取霍爾傳感器而設(shè)置為輸入。
          可程序設(shè)計計數(shù)器數(shù)組時基采用160ns,啟動計數(shù)器。然而,模塊0模式SFR沒有初始化為8位PWM。在霍爾效應(yīng)位置被確定之前,沒有馬達驅(qū)動被?用。
          main()函數(shù)首先初始化相關(guān)資源,設(shè)置start標(biāo)志位。主回路首先使用hallPosition()函數(shù)檢測霍爾效應(yīng)傳感器的位置。如果start標(biāo)志位被設(shè)置或者霍爾位置已經(jīng)改變,馬達透過調(diào)用commutate()函數(shù)進行換向。接下來,速度輸入被讀取,速度設(shè)置被寫入PWM輸出。
          hallPosition()函數(shù)在錯誤狀態(tài)時返回0,這發(fā)生在霍爾效應(yīng)輸入全為高或全為低時。如果錯誤發(fā)生,主回路經(jīng)過調(diào)用coast()函數(shù)使所有輸出無效;起始位也在錯誤條件發(fā)生時置位,而迫使換向發(fā)生在下一個合法的霍爾位置讀數(shù)時。
          readHalls()函數(shù)在霍爾效應(yīng)輸入端口引腳上讀取,并且去除霍爾效應(yīng)編碼抖動,該函數(shù)等待三個連續(xù)的相同讀數(shù)。當(dāng)霍爾編碼正在改變時,這種方式降低錯誤讀數(shù)的可能性。
          hallPosition()首先透過上面描述的readHalls()函數(shù)讀取霍爾效應(yīng)編碼?;魻柧幋a模式被儲存在常量數(shù)組hallPattern[]中。為了匹配霍爾效應(yīng)編碼,一個帶有后遞減的單行for回路被用于尋找對應(yīng)的索引。hallPosition()函數(shù)如果發(fā)現(xiàn)一個匹配的模式,則返回1-6中的一個值;如果沒有發(fā)現(xiàn)匹配,hallPosition()函數(shù)返回0值。
          commutate()函數(shù)用來在啟動時初始化輸出,當(dāng)霍爾位置改變時改變輸出狀態(tài),并且在檢測到霍爾錯誤后重新啟動馬達。commutate()函數(shù)首先禁止PWM和上部的晶體管,然后,它才使用從hallPosition()函數(shù)中獲得的索引。
          對于霍爾效應(yīng)模式或者整流模式來說,沒有統(tǒng)一的標(biāo)準(zhǔn)。請參閱你所使用之特定馬達制造商所提供的數(shù)據(jù)手冊,依據(jù)制造商的資料手冊仔細(xì)查核兩種模式。同時,也請檢查霍爾效應(yīng)模式和整流模式之間的通信,必要時請改變兩種模式之間的位移。

          上一頁 1 2 3 下一頁

          評論


          技術(shù)專區(qū)

          關(guān)閉