如今,電動(dòng)馬達(dá)無(wú)處不在,從洗衣機(jī)和健身跑步機(jī)到商業(yè)建筑的加熱和冷卻系統(tǒng)等各個(gè)方面都在推動(dòng)著運(yùn)動(dòng)。不幸的是,所有這些電機(jī)都消耗了相當(dāng)多的能量。一些專家估計(jì),美國(guó)產(chǎn)生的所有電力中約有60%是由電動(dòng)機(jī)消耗的。設(shè)計(jì)人員降低功耗的一種方法是轉(zhuǎn)向更新的電機(jī)技術(shù),如無(wú)刷直流和交流電機(jī)。
與刷漆同類產(chǎn)品相比,無(wú)刷電機(jī)更可靠,更安靜,產(chǎn)生的電磁輻射更少,更安全,因?yàn)樗鼈兿伺c電刷及其換向器相關(guān)的火花。它們也更有效率,這意味著它們使用更少的能量。另一方面,無(wú)刷電機(jī)還需要更復(fù)雜的電子設(shè)備來(lái)管理其操作,并且設(shè)計(jì)該電路可以增加開發(fā)時(shí)間并提高總系統(tǒng)成本。
作為工業(yè)應(yīng)用和白色家電的長(zhǎng)期供應(yīng)商,恩智浦半導(dǎo)體非常熟悉與電機(jī)控制相關(guān)的問(wèn)題。設(shè)計(jì)挑戰(zhàn)包括尋找提高精度,提高速度,降低功耗,限制電磁干擾(EMI),降低成本以及擴(kuò)展系統(tǒng)可執(zhí)行任務(wù)數(shù)量的方法。為了應(yīng)對(duì)這些挑戰(zhàn),我們的32位ARM Cortex-M3和Cortex-M4微控制器(MCU)包括用于電機(jī)控制的專用外設(shè)。狀態(tài)可配置定時(shí)器(SCT)是一種獨(dú)特的,正在申請(qǐng)專利的外設(shè),可為設(shè)計(jì)人員提供電機(jī)控制操作的新級(jí)別可編程性。
狀態(tài)可配置定時(shí)器(SCT)
SCT是一種復(fù)雜且易于配置的定時(shí)功能,可提供前所未有的靈活性。它允許設(shè)計(jì)人員配置高級(jí)定時(shí)操作 - 包括復(fù)雜電機(jī)控制功能所需的操作 - 同時(shí)滿足嚴(yán)格的開發(fā)時(shí)間表。從架構(gòu)的角度來(lái)看,它是一個(gè)定時(shí)器捕獲單元,配有高度靈活的事件驅(qū)動(dòng)狀態(tài)機(jī)。它為時(shí)序區(qū)域帶來(lái)了兩個(gè)熟悉的概念,即事件和狀態(tài),因此可以進(jìn)行各種操作,包括時(shí)序,計(jì)數(shù),輸出調(diào)制和輸入捕獲。
圖1:恩智浦的SCT外設(shè)將定時(shí)器捕獲單元與狀態(tài)機(jī)相結(jié)合。
表1介紹了SCT的五個(gè)基本構(gòu)建塊:定時(shí)器,事件,狀態(tài),輸入和輸出。
塊支持說(shuō)明定時(shí)器向上或向上/向下計(jì)數(shù)兩個(gè)16位計(jì)數(shù)器或一個(gè)32位計(jì)數(shù)器,具有向上或向上/向下計(jì)數(shù)器功能,并由總線時(shí)鐘或所選輸入提供時(shí)鐘。事件最多16個(gè)發(fā)生預(yù)定義條件時(shí)發(fā)生的轉(zhuǎn)換(計(jì)數(shù)器狀態(tài),輸出生成,狀態(tài)更改等)。狀態(tài)最多32個(gè)條件,用于定義評(píng)估已定義事件的上下文。輸入最多由SCT評(píng)估的8個(gè)信號(hào)。他們可以為活動(dòng)的產(chǎn)生做出貢獻(xiàn)。輸出SCT生成的最多16個(gè)信號(hào)。他們可以為活動(dòng)的產(chǎn)生做出貢獻(xiàn)。
在根據(jù)定時(shí)匹配,I/O信號(hào)或兩者的組合驗(yàn)證可編程條件時(shí),可以將事件編程為激活(即執(zhí)行操作)。事件在SCT控制寄存器中定義。每個(gè)硬件事件都可以配置為驅(qū)動(dòng)輸出信號(hào),觸發(fā)中斷請(qǐng)求(IRQ),執(zhí)行DMA傳輸或影響定時(shí)器本身的行為(通過(guò)停止,啟動(dòng),重置或掛起定時(shí)器)。
專用影子寄存器,用于保存計(jì)數(shù)器匹配值,用于定義基于時(shí)間的事件或基于時(shí)間和I/O的組合事件的基于時(shí)間的部分。應(yīng)用程序在運(yùn)行時(shí)可以更改影子寄存器的內(nèi)容以修改匹配點(diǎn)。當(dāng)相關(guān)定時(shí)器達(dá)到其極限時(shí)(在向上計(jì)數(shù)模式下復(fù)位為零,或者在向上/向下計(jì)數(shù)模式下定時(shí)器反轉(zhuǎn)其方向時(shí)),新值將加載到寄存器中。 SCT的這一部分實(shí)質(zhì)上是高級(jí)計(jì)時(shí)器。
添加狀態(tài)概念使SCT能夠提供更復(fù)雜的排序。每個(gè)定時(shí)器通過(guò)狀態(tài)寄存器與狀態(tài)機(jī)相關(guān)聯(lián)。可以對(duì)事件進(jìn)行編程,以在操作期間觸發(fā)狀態(tài)機(jī)從一種狀態(tài)到另一種狀態(tài)的跳轉(zhuǎn)。用戶定義的狀態(tài)還可以配置為過(guò)濾所有可能的預(yù)定義SCT事件的特定子集。換句話說(shuō),事件只能在特定狀態(tài)下激活。設(shè)計(jì)人員可以將SCT的行為與狀態(tài)機(jī)算法相關(guān)聯(lián),從而使系統(tǒng)根據(jù)SCT的當(dāng)前狀態(tài)對(duì)某些事件做出不同的反應(yīng)。這種定義更復(fù)雜事件序列的能力使SCT比傳統(tǒng)定時(shí)器或PWM生成塊更復(fù)雜。它允許SCT通過(guò)狀態(tài)機(jī)隨時(shí)間自動(dòng)演進(jìn),以響應(yīng)基于時(shí)間或I/O定義的事件。對(duì)于電機(jī)控制應(yīng)用,由于SCT可以處理硬件中的大部分控制序列,因此需要較少的CPU干預(yù)。
SCT的另一個(gè)特性是它可用于定義評(píng)估輸入信號(hào)電平或邊沿的事件。如果沒(méi)有SCT,設(shè)計(jì)人員必須通過(guò)定期輪詢CPU的輸入線來(lái)檢測(cè)更改,從而在軟件中執(zhí)行此任務(wù)。使用SCT執(zhí)行任務(wù)可卸載CPU并簡(jiǎn)化編程。
同樣,定義一個(gè)中斷來(lái)檢測(cè)輸入上的信號(hào)變化會(huì)在系統(tǒng)級(jí)引入過(guò)多的延遲。 SCT通過(guò)在一個(gè)SCT時(shí)鐘周期內(nèi)保證對(duì)輸入信號(hào)的無(wú)抖動(dòng)響應(yīng),提供了一種有效的方法。通常,SCT的時(shí)鐘速度與CPU相同(通常為150 MHz),分辨率高達(dá)6.67 ns,反應(yīng)時(shí)間(檢測(cè)信號(hào)變化)為13.3 ns。
SCT工具
如上所述,硬件寄存器用于配置狀態(tài),事件和計(jì)時(shí)器值。在LPC1800和LPC4300中,這增加了超過(guò)290個(gè)寄存器。為了簡(jiǎn)化配置,恩智浦開發(fā)了一個(gè)基于狀態(tài)機(jī)繪圖工具的工具集,允許設(shè)計(jì)人員在圖形環(huán)境中配置SCT。繪圖工具稱為SCT-Tool,它使用熟悉的氣泡和箭頭作為對(duì)象,表示狀態(tài)和轉(zhuǎn)換(圖2)。相應(yīng)狀態(tài)和轉(zhuǎn)換的屬性輸入到易于使用的表中(圖3)。 SCT-Tool使用表?xiàng)l目以及物理I/O和計(jì)時(shí)器值的分配來(lái)創(chuàng)建SCT的所有必需設(shè)置。 SCT-Tool以C代碼輸出寄存器設(shè)置。不需要狀態(tài)機(jī)代碼,因?yàn)镾CT的狀態(tài)機(jī)功能完全是硬連線的。
圖2:SCT-Tool使用熟悉的氣泡和箭頭來(lái)定義狀態(tài)機(jī)。
圖3:I/O和計(jì)時(shí)器值輸入到一個(gè)簡(jiǎn)單的表中。
SCT-Tool使用簡(jiǎn)單的兩步設(shè)計(jì)流程。第一步是繪制狀態(tài)圖并指定其屬性,第二步是在C中分配I/O和定時(shí)器值。從那里,設(shè)計(jì)人員只需編譯LPC1800或LPC4300器件的應(yīng)用框架,包括SCT組件作為項(xiàng)目的一部分。 SCT-Tool可以輕松嵌入到各種開發(fā)工具的標(biāo)準(zhǔn)工作流程中,包括KEILμVision,IAR EWARM或Code Red基于Eclipse的Red Suite。這使得作為較大應(yīng)用程序的一部分,可以輕松地測(cè)試,調(diào)試和修改SCT代碼。
為了幫助設(shè)計(jì)人員快速掌握,SCT-Tools包括各種應(yīng)用程序的項(xiàng)目示例。這些示例提供了對(duì)狀態(tài)機(jī)設(shè)計(jì)原理的深入了解,它們可以作為設(shè)計(jì)者自己想法的起點(diǎn)。 SCT-Tool以及信息豐富的培訓(xùn)視頻可以從恩智浦網(wǎng)站下載。
示例配置:FOC算法
為了演示SCT的使用,我們?cè)O(shè)計(jì)了一個(gè)使用LPC1850 Cortex-M3 MCU的示例應(yīng)用程序來(lái)控制無(wú)刷AC(BLAC)電機(jī)。我們的示例BLAC電機(jī)有兩個(gè)主要部件:定子繞組和永磁體。它是同步電動(dòng)機(jī),這意味著定子和轉(zhuǎn)子產(chǎn)生的磁場(chǎng)具有相同的角頻率。這意味著電機(jī)不會(huì)像交流感應(yīng)電機(jī)那樣滑動(dòng)。
對(duì)于控制操作,我們選擇了磁場(chǎng)定向控制(FOC)算法(也稱為矢量控制),因?yàn)樗梢愿行У乜刂齐姍C(jī)速度。 FOC算法還有助于減少電機(jī)尺寸,成本和功耗。 FOC的基本操作理論是測(cè)量和調(diào)節(jié)電動(dòng)機(jī)的磁場(chǎng)。當(dāng)轉(zhuǎn)子的永磁場(chǎng)的方向垂直時(shí),即與定子繞組的感應(yīng)磁場(chǎng)成90°角時(shí),實(shí)現(xiàn)對(duì)磁力的最佳杠桿作用。這在轉(zhuǎn)子軸上產(chǎn)生了最大可實(shí)現(xiàn)的扭矩。
圖4給出了FOC算法的框圖和時(shí)序設(shè)置。通過(guò)向電動(dòng)機(jī)繞組施加電壓矢量來(lái)控制定子場(chǎng)。該電壓矢量轉(zhuǎn)換為六個(gè)PWM信號(hào),每個(gè)電機(jī)相位兩個(gè)。該轉(zhuǎn)換由稱為SVPWM的算法完成。 (有關(guān)FOC算法的更多信息,請(qǐng)參閱恩智浦的應(yīng)用筆記AN10899)。
圖4:FOC算法。
圖5給出了FOC算法的硬件實(shí)現(xiàn)。所有需要的信號(hào)和連接都可以用硬件實(shí)現(xiàn)。輸出信號(hào)是六個(gè)PWM。輸入信號(hào)包括兩個(gè)電流測(cè)量值,通過(guò)同相分流電阻,以及一個(gè)用于總電機(jī)電流的分流測(cè)量。
圖5:硬件實(shí)現(xiàn)。
考慮如何使用MCU上的各種外設(shè)實(shí)現(xiàn)FOC算法非常重要。例如,F(xiàn)OC算法需要在精確時(shí)間測(cè)量電機(jī)相電流。這需要非常準(zhǔn)確但靈活的ADC采樣。具有用于觸發(fā)ADC功能的正確結(jié)構(gòu)使得可以在沒(méi)有軟件中的附加信號(hào)濾波的情況下對(duì)相電流進(jìn)行采樣,并且可以節(jié)省大量CPU資源。
為了支持FOC算法,我們將SCT配置為實(shí)現(xiàn)四個(gè)高級(jí)功能:
六條電源線(橋接相位)中的每一條的專用和獨(dú)立激活/停用點(diǎn)
定時(shí)器將配置為遞增計(jì)數(shù)模式,生成的PWM波形不必相對(duì)于PWM周期的中間對(duì)稱。這使得可以在三個(gè)階段中的每個(gè)階段的激活和停用點(diǎn)中插入小的時(shí)移(偏移)。這反過(guò)來(lái)又提高了分流電阻上的采樣電流精度。此外,如果需要,死區(qū)時(shí)間可以在每對(duì)相位上不同。
每個(gè)ADC觸發(fā)信號(hào)的一個(gè)激活(采樣)點(diǎn)
算法需要采樣兩個(gè)電流值,通過(guò)測(cè)量放置在電機(jī)電流回路繞組上的三個(gè)分流電阻中的兩個(gè)上的電壓降來(lái)確定(第三個(gè)值在數(shù)學(xué)上來(lái)自兩個(gè)測(cè)量值)。
一個(gè)專用中斷觸發(fā)點(diǎn)
用于通知應(yīng)用層(CPU)激活點(diǎn)(匹配寄存器)中的配置更改,用于驅(qū)動(dòng)電機(jī)相位和/或ADC采樣點(diǎn)。
八條輸出線
六條輸出線用于將生成的PWM信號(hào)傳送到橋式驅(qū)動(dòng)器。兩條額外的輸出線用作ADC觸發(fā)信號(hào),通過(guò)片上多路復(fù)用器在內(nèi)部路由到芯片。
具有16位分辨率的計(jì)數(shù)器可能足以滿足大多數(shù)PWM波形要求,因此我們進(jìn)行了配置SCT只使用其兩個(gè)16位定時(shí)器中的一個(gè)。我們定義了總共16個(gè)事件:
12用于定義何時(shí)激活或停用六個(gè)PWM階段中的每一個(gè)
2觸發(fā)ADC轉(zhuǎn)換
1觸發(fā)CPU中斷
1確定PWM周期長(zhǎng)度
注意,每個(gè)定義的事件都能觸發(fā)中斷。通過(guò)將一個(gè)事件專門用于中斷生成,我們可以獨(dú)立于其他基于時(shí)間的事件定義中斷觸發(fā)點(diǎn)。所有16個(gè)事件都是基于時(shí)間的,因此需要16個(gè)匹配寄存器。
FOC算法實(shí)際上并不需要我們定義不同的狀態(tài),因?yàn)闆](méi)有外部輸入可以確定特定的應(yīng)用程序狀態(tài)。所以我們只有一個(gè)入口狀態(tài)(L_ENTRY),如圖6所示。在運(yùn)行時(shí),應(yīng)用程序?qū)⒏钠ヅ浼拇嫫髦狄赃m當(dāng)?shù)匦薷臅r(shí)序。
圖6:L_ENTRY狀態(tài)。
六個(gè)PWM輸出信號(hào)為AH,AL,BH,BL,CH和CL。每個(gè)都由專用事件控制,該事件定義單獨(dú)的激活(_ACT)和停用(_DEACT)點(diǎn)。用于ADC轉(zhuǎn)換的觸發(fā)點(diǎn)由ADC0_TRIG和ADC1_TRIG表示。生成應(yīng)用程序中斷的事件是IRQ_point,與每個(gè)PWM周期關(guān)聯(lián)的事件是Period_end。它會(huì)在下一個(gè)PWM開始之前清除ADC觸發(fā)信號(hào)。由于沒(méi)有狀態(tài)更改,因此所有已定義的事件都會(huì)循環(huán)回進(jìn)入狀態(tài)。
圖7顯示了一個(gè)偽狀態(tài),稱為L(zhǎng)_ALWAYS,未映射到SCT的任何物理狀態(tài)。這是一種圖形方便,用于避免為所有狀態(tài)指定相同的事件。這在定義多個(gè)狀態(tài)時(shí)特別有用。該圖表示始終處于活動(dòng)狀態(tài)的事件,與當(dāng)前狀態(tài)無(wú)關(guān)。 (由于此應(yīng)用程序僅使用一個(gè)狀態(tài),L_ALWAYS圖可能已包含在L_ENTRY圖中。)
圖7:L_ALWAYS狀態(tài)。
表2列出了狀態(tài)機(jī)的相關(guān)設(shè)置。所有數(shù)值(trans1,trans2,trigger_ADC0等)都是用戶選擇的名稱,這些名稱在應(yīng)用程序代碼中定義。 SCT工具提供C宏來(lái)訪問(wèn)值。
表2:狀態(tài)機(jī)設(shè)置。
LPCXpresso電機(jī)控制套件
為了支持電機(jī)控制應(yīng)用的快速上市,恩智浦提供低成本的LPCXpresso電機(jī)控制套件,這是一個(gè)與Embedded Artists合作創(chuàng)建的通用開發(fā)平臺(tái)。它是對(duì)電機(jī)控制項(xiàng)目進(jìn)行原型設(shè)計(jì)或簡(jiǎn)單探索電機(jī)控制功能的理想方式。它支持無(wú)刷直流(BLDC),無(wú)刷交流(BLAC),步進(jìn)和雙刷直流電機(jī)的控制。
電路板有兩個(gè)完整的H橋,因此可以控制多達(dá)四個(gè)相位,占空比高達(dá)100%。可以在三相上測(cè)量相電壓以及同相電流,也可以測(cè)量虛擬接地電壓和公共低側(cè)電流。為了安全和保護(hù),存在輸入過(guò)流跳閘保護(hù)。為了提高設(shè)計(jì)靈活性,有多種通信接口,包括USB,以太網(wǎng),CAN,RS-422/485和UART-to-USB橋接器。該板還具有帶操縱桿的小型圖形用戶界面(96x64像素OLED),可實(shí)現(xiàn)簡(jiǎn)單,直觀的人機(jī)交互。
該板可由LPCXpresso LPC1114/LPC1343/LPC1768目標(biāo)板和未來(lái)的LPC1850/4350 Hitex板直接控制。該套件包括LPCXpresso電機(jī)控制板,帶LPC-Link JTAG的LPCXpresso LPC1114目標(biāo)板(由LPCXpresso IDE支持),帶霍爾傳感器的BLDC電機(jī)和24 V/60 W電源。該套件可通過(guò)恩智浦的分銷網(wǎng)絡(luò)獲得。
今天更小,更高效的無(wú)刷電機(jī)需要復(fù)雜的控制電子設(shè)備。 32位MCU提供的計(jì)算能力是開發(fā)這些控制功能的不錯(cuò)選擇,但仍有一些設(shè)計(jì)挑戰(zhàn)需要克服。恩智浦32位ARM MCU正面臨這些挑戰(zhàn),專用的電機(jī)控制外設(shè)可在提高效率的同時(shí)簡(jiǎn)化設(shè)計(jì)。選項(xiàng)包括專為電機(jī)控制而設(shè)計(jì)的多通道PWM,QEI功能,特別是一項(xiàng)名為狀態(tài)可配置定時(shí)器(SCT)的正在申請(qǐng)專利的新功能。
SCT將計(jì)時(shí)器計(jì)數(shù)器與狀態(tài)機(jī)結(jié)合在一起。它為設(shè)計(jì)人員提供了前所未有的電機(jī)控制功能可編程性,包括先進(jìn)的FOC算法,并且使用簡(jiǎn)單的圖形界面易于配置。 SCT可在恩智浦的LPC1800 Cortex-M3和LPC4300 Cortex-M4器件上使用。恩智浦還提供與嵌入式藝術(shù)家合作開發(fā)的低成本LPCXpresso電機(jī)控制套件,以幫助快速啟動(dòng)設(shè)計(jì)。
-
恩智浦
+關(guān)注
關(guān)注
14文章
5978瀏覽量
116199 -
電機(jī)
+關(guān)注
關(guān)注
143文章
9291瀏覽量
149304 -
定時(shí)器
+關(guān)注
關(guān)注
23文章
3298瀏覽量
118768
發(fā)布評(píng)論請(qǐng)先 登錄
恩智浦持續(xù)助力零跑汽車全域自研技術(shù)進(jìn)階 零跑全新LEAP 3.5中央集成電子電氣架構(gòu)采用恩智浦S32K388
恩智浦智能家電創(chuàng)新方案一文看盡 恩智浦智能家電技術(shù)日給你答案

恩智浦宣布收購(gòu)NPU廠商Kinara
恩智浦開啟中國(guó)戰(zhàn)略新篇章
基于恩智浦LPC5536的光伏MPPT控制方案

恩智浦CES 2025有哪些亮點(diǎn)
恩智浦電機(jī)控制軟硬件解決方案

恩智浦授權(quán)云漢芯城作為線上分銷商
恩智浦推出S32M2集成電機(jī)控制解決方案

基于恩智浦MCX N系列MCU的應(yīng)用示例
恩智浦半導(dǎo)體推出全新S32J系列高性能以太網(wǎng)交換機(jī)和網(wǎng)絡(luò)控制器
恩智浦半導(dǎo)體推出S32J系列以太網(wǎng)交換機(jī)和網(wǎng)絡(luò)控制器
恩智浦專家對(duì)話藍(lán)牙技術(shù)聯(lián)盟
采用TPS65023的恩智浦i.MX 6電源設(shè)計(jì)

評(píng)論