Tento článek se bude věnovat driverům pro řízení 3-fázového motoru řady STPIN32F32F060x od STMicroelectronics.
Řízení 3-fázového motoru
Pro spolehlivé řízení 3-fázových motorů se používá několik hardwarových bloků:
- Mikroprocesor
- Integrovaný obvod (IC) - Driver
- Vysokonapěťové MOSFETy nebo IGBT tranzistory pro skutečné přepínání fází
Elektronika pro řízení motorů se obvykle navrhuje tak, že všechny tyto hardwarové bloky jsou na jedné desce. Mikroprocesor vysílá PWM signály do IC driveru motoru, který tyto signály používá k řízení výkonových MOSFET tranzistorů, které jsou přímo spojeny s vinutím motoru. Mikroprocesor často komunikuje s driverem pomocí sběrnice I2C nebo SPI.
Nevýhodou použití externího driveru je složitost návrhu a to, že driver zabírá cenné místo na desce a I/O piny na mikroprocesoru, které by jinak mohly být použity pro něco jiného. Nová třída mikroprocesorů s integrovaným driverem obsahuje vše na jednom místě, a tím zjednodušuje návrh obvodu a současně snižuje náklady na kusovník a zmenšuje potřebnou plochu na desce.
Proč používat STSPIN32F060x
TPIN32F32F060x od STMicroelectronics obsahuje mikrokontrolér STM32F031x6x7 Arm Cortex-M0 s 600 voltovým trojnásobným ovladačem polovičního můstku (obrázek 1). Každý poloviční můstek lze použít k řízení MOSFETů nebo IGBT tranzistorů připojených k jednotlivým fázím stejnosměrného bezkartáčového motoru (BLDC).
Obrázek 1: STM32F060x obsahuje STM32F031 Arm Cortex-M0 se 600 voltovým driverem pro trojnásobný poloviční můstek. (Zdroj obrázku: STMicroelectronics)
Tato série poskytuje některé velmi zajímavé funkce a ochrany:
- Komparátor s funkcí pokročilého inteligentního vypnutí (smartSD), která zajišťuje rychlou a účinnou ochranu před přetížením a nadproudem
- Integrované vysokonapěťové spouštěcí diody
- Ochranu proti překřížení
- Ochranu před tzv. „mrtvým časem“
- Ochranu UVLO
Mikroprocesor pracuje na frekvenci 48 MHz a obsahuje 32 Kbytes Flash paměť a 4 KB RAM paměť. Tato kombinace pamětí a výkonu mikroprocesoru je ideální pro implementaci FOC(field-oriented control) řízení.
Rodina STM32F060x v současné době obsahuje dva čipy, STSPIN32F0601 a STSPIN32F0602. Primární rozdíl mezi těmito dvěma čipy je v tom, že 0601 podporuje proudy do 0,35 A, zatímco 0602 podporuje hradlové proudy do 1,0 A.
Interně je STM32F031 připojen k driveru prostřednictvím několika GPIO. GPIO PA11 se používá k aktivaci driveru a GPIO PB12 se používá k detekci, zda nedošlo k poruše na můstku. GPIO piny PA8 - PA10 se používají pro řízení horních tranzistorů, zatímco piny GPIO PB13 - 15 se používají pro řízení spodních tranzistorů můstku. Integrace obou komponent do jednoho pouzdra zjednodušuje složitost hardwaru a designu a může výrazně snížit náklady.
Vývojový kit EVSPIN32F0601S1
Pro řadu STSPIN32F060x je k dispozici vývojová deska EVSPIN32F0601S1. Jedná se o kompletní elektroniku, která umožňuje uvedení motoru BLDC do provozu a jeho řízení pomocí driveru STSPIN32F0601 (obrázek 2).
EVSPIN32F0601S1 je rozdělena do pěti hlavních částí:
- STSPIN32F0601
- Odnímatelný debugger STLINK
- Zpětná vazba
- Power stage – Mosfet tranzistory
- Napájení
Obrázek 2: Vývojová deska EVSPIN32F0601S1 poskytuje veškerou potřebnou elektroniku, aby se motor BLDC uvedl do provozu a umožňuje řízení pomocí driveru STSPIN32F0601. (Zdroj obrázku: STMicroelectronics)
STLINK-debugger může být v případě potřeby z vývojové desky odstraněn. Toho lze využít tehdy, kdy vývojová deska se stává součástí prototypu a umístí se do krytu PoC (proof-of-concept). I poté lze k desce připojit externí STLINK-V3SET (obrázek 3) pomocí rozhraní SWD.
Obrázek 3: Externí debugger STLINK-V3SET lze použít k programování a ladění aplikací mikroprocesorů řad STM32. (Zdroj obrázku: STMicroelectronics)
Vývojová deska také obsahuje zpětnou vazbu, která je důležitým zdrojem informací o napětí a proudu, které prochází jednotlivými tranzistory. Tyto informace se využijí v algoritmech pro řízení motoru. V mnoha moderních designech se tato zpětná vazba nepoužívá a používá se algoritmus FOC. Jelikož FOC nepoužívá senzory, dochází k další úspoře nákladů a místa na pcb.
Výkonová část se skládá z horních a spodních MOSFET nebo IGBT tranzistorů, které se používají k přepínání napětí napříč různými vinutími motoru. Signály pro řízení tranzistorů jsou vyvedeny na footprint DPAK nebo PowerFlat. To umožňuje modifikovat vývojovou desku, pokud chceme použít jiný typ MOSFET nebo IGBT tranzistoru.
Napájecí zdroj poskytuje napětí v rozsahu od 50 V do 280 V DC/AC. K dispozici jsou také úrovně napětí +15 a +3,3 V.
Aby bylo možné experimentovat s vývojovou deskou, je nutné připojit BLDC motor. Vhodný typ motoru pro experimenty je QBL4208-41-04-006 od Trinamic Motion Control GmbH (obrázek 4). Každá fáze motoru BLDC se připojuje k EVSPIN32F0601S1 prostřednictvím šroubových svorek.
Obrázek 4: Motor BLB QBL4208-41-04-006 BLDC, který zvládne otáčky až 4000 ot / min je vhodný pro experimentování s vývojovou deskou EVSPIN32F0601S1. (Zdroj obrázku: Trinamic Motion Control GmbH)
Vývojová deska EVSPIN32F0601S1 má veškerý hardware potřebný k řízení motoru BLDC. Samotné řízení motoru vyžaduje také příslušný software. Pro snadné a spolehlivé řízení motoru lze využít vývojovou softwarovou sadu X-CUBE-MCSDK firmy od společnosti STMicroelectronics. Tato knihovna se může použít se softwarovými balíčky ST32CubeIDE a ST32CubeMx.
Řízení BLCD motoru
Softwarový balíček X-CUBE-MCSDK zahrnuje dvě aplikace vyšší úrovně: MotorControl Workbench a Motor Profiler. K dispozici jsou různé algoritmy pro řízení motoru, včetně FOC a různé topologie zpětné vazby jako jsou:
- Jeden shutnt rezistor
- Tři shunt rezistory
- Dva izolované proudové senzory
Motor Profiler umožňuje zadat obecné parametry motoru a poté motor profilovat detailně. Toto detailní profilování (detailní popis vlastností motoru) se pak použije pro proměnné a konfiguraci algoritmů řízení.
Vytvoření projektu v programu Motor Control Workbech je jednoduché. Spustí se program Motor Control Workbench a zvolí se „new project“. Poté se mohou zadat parametry, jak je znázorněno na obrázku 5:
- Typ aplikace
- Počet motorů, které budou ovládány
- Jejich ovládání a výkon
- Parametry motoru, jako jsou počet pólů, rychlost, napětí a jmenovitý proud
Obrázek 5: Konfigurace projektu Project Control Workbench umožňuje přizpůsobit nastavení projektu pro daný hardware. (Zdroj obrázku: Beningo Embedded Group)
Jakmile jsou informace pro projekt doplněny klikneme na OK a poté se vše přenese do prostředí Motor Control Worbench (obrázek 6). Zde je možné přizpůsobit chování dané aplikace. K tomu jsou k dispozici následující konfigurační parametry:
- Nastavení firmwaru, jako je spouštěcí profil, nastavení měniče a možnosti snímání
- Nastavení digitálních vstupů / výstupů, jako je rozhraní kodéru, hallových senzorů, sériová linka a tlačítka start a stop
- Funkce digitálně-analogového převodníku (DAC)
- Nastavení analogového vstupu a ochrany pro zpětnou vazbu fázového proudu, napětí, dále teploty a stupně PFC.
Obrázek 6: Motor Control Workbench umožňuje přizpůsobit firmware, nastavit MCU a frekvenci hodin, ochranu pinů I / O, DAC a analogového vstupu. (Zdroj obrázku: Beningo Embedded Group)
Aktivovat a deaktivovat nastavení lze pouhým kliknutím na zaškrtávací políčko, například:
- Snímání napětí sběrnice
- Snímání teploty
- Proudové snímání s nadproudovou ochranou
- Rychlost snímání
Vývojář ani nemusí vidět jediné API nebo řádek kódu, aby zcela nakonfiguroval aplikaci pro řízení motoru.
Závěr
Vývojáři systému řízení motorů jsou nuceni snížit náklady, zvýšit účinnost a elektroniku co nejvíce miniaturizovat. STSPIN32F060x SiP pro 3fázové řízení BLDC motorů snižuje náklady a díky integrovanému řešení významně snižuje plochu a desce plošných spojů. K dispozici je celý ekosystémem, který zahrnuje vývojovou desku a příslušný software. To vše usnadňuje a zrychluje vývoji aplikací pro řízení motoru.
Článek vyšel v originále „Quickly Implement Motor Control Designs Using a Drive IC with Integrated Microcontroller" na webu DigiKey.com, autorem je Jacob Beningo