STM32F3 - nowe mikrokontrolery już dostępne

| Prezentacje firmowe Artykuły

STM32F3 - to nowe mikrokontrolery 32-bitowe z zestawem instrukcji DSP i jednostką FPU oraz rozbudowanym zestawem analogowych układów peryferyjnych. Uzupełniają dotychczasowe rodziny STM32F1 (Mainstream MCU) i STM32F4 (High-performance MCU z DSP i FPU) o 70 kolejnych jednostek o pośrednich możliwościach. Ich pojawienie się na rynku było zapowiadane przez producenta już pół roku temu, ale z końcem 2012 roku trafiły do masowej produkcji i są dostępne w sprzedaży.

STM32F3 - nowe mikrokontrolery już dostępne

Rys. 1. W ramach rodziny STM32F3 dostępne są dwie grupy: STM32F302/303/313 oraz STM32F372/373/383. Obie z nich mają wspólną część funkcjonalną (po lewej stronie) oraz różne dodatki (po prawej)

Nowa rodzina mikrokontrolerów STM32F3 firmy ST Microelectronics opiera się na 32-bitowym rdzeniu Cortex-M4 taktowanym zegarem o maksymalnej częstotliwości 72 MHz i jest kierowana w stronę aplikacji DSC (Digital Signal Control), a więc takich, które metodami cyfrowymi przetwarzają analogowe sygnały sterujące w systemach sterujących automatyki i przemysłu.

Są to napędy silników bezszczotkowych, sterowniki serwomechanizmów, regulatory wielokanałowe oraz systemy medyczne. Aplikacje określane terminem DSC od strony wydajności lokują się pomiędzy tym, co oferują zwykłe mikrokontrolery a wydajne jednostki DSP, przez co umożliwiają one realizację podobnych funkcji, ale znacznie mniejszym nakładem kosztów.

Biorąc za przykład sterowniki silników bezszczotkowych, bardzo popularnych w sprzęcie AGD i urządzeniach mechatronicznych zasilanych z sieci energetycznej, widzimy, że precyzyjna regulacja szybkości ich wirowania oraz momentu obrotowego wymaga zasilania silnika napięciem trójfazowym o precyzyjnie regulowanym napięciu, częstotliwości i fazie.

Poprzez regulację częstotliwości napięcia zasilającego dokonywana jest regulacja prędkości wirowania, im jest ona mniejsza, tym silnik obraca się wolniej i odwrotnie.

Niemniej z uwagi na indukcyjny charakter uzwojeń zmianom częstotliwości muszą towarzyszyć zmiany amplitudy sygnału tak, aby utrzymany został stosunek U/f, gdyż inaczej wartość prądu płynącego przez uzwojenia malałaby przy wzroście częstotliwości (i szybkości wirowania), co wywoływałoby niekorzystny spadek momentu lub przeciążenia przy wolnych obrotach.

Dodatkowo konieczne jest kontrolowanie faz dla wszystkich trzech napięć zasilających trójfazowy silnik bezszczotkowy, gdyż w silnikach bezkomutatorowych występuje tzw. poślizg ruchu wirnika w stosunku do pola magnetycznego wytwarzanego przez stojan. Wartość poślizgu zmienia się z obciążeniem silnika i prędkością obrotową i sterownik musi kompensować te zjawisko.

Jak widać z opisu, regulacja fazowo-amplitudowa (wektorowa) trójfazowego sygnału zasilającego silnik nie jest zadaniem prostym, tym bardziej że w trosce o prostotę rozwiązania przemysł zrezygnował z instalowania czujników dostarczających bezpośrednio do sterownika sygnał na temat ruchu wirnika, bo wiązało się to z dodatkowymi kablami, elementami i obwodami kondycjonującymi.

Rys. 2. Schemat blokowy mikrokontrolera STM32F3

Na rynku dominują rozwiązania bezczujnikowe, w których powyższa informacja jest wyodrębniana za pomocą szeregu przekształceń matematycznych z informacji na temat prądu płynącego przez uzwojenia silnika, bo są tańsze. Sterowanie silnikiem realizuje się za pomocą trzech układów PWM, które tworzą trójfazowy sygnał wyjściowy, o zmiennej częstotliwości i amplitudzie i regulowanych zależnościach fazowych.

Sprzężenie zwrotne zapewniające zamknięcie pętli sterowania dokonywane jest za pomocą rezystorów mierzących prąd dla każdej z faz zasilających. Te sygnały są za pomocą przetworników ADC mierzone i przesyłane do mikrokontrolera. Dla niskich prędkości obrotowych częstotliwość zasilająca jest rzędu 10...15 Hz, dla wysokich - nawet 500-1000 Hz.

Stąd wynika potrzeba wysokiej wydajności, bo w czasie poniżej 1 milisekundy trzeba uporać się ze złożoną matematyką algorytmu sterującego, pomiarami i sterowaniem dla wszystkich trzech uzwojeń. Powyższy modelowy przykład dla zastosowań mikrokontrolera takiego jak STM32F3 pokazuje znaczenie poszczególnych bloków i układów peryferyjnych zawartych w tej jednostce.

Rdzeń Cortex-M4, wydajny i zawierający koprocesor arytmetyczny, uzupełniony został o szybkie przetworniki ADC: 12-bitowe 5 MSPS oraz 16-bitowe delta-sigma, wzmacniacze o programowalnym wzmocnieniu, szybkie komparatory oraz różnorodne układy czasowe, dzięki czemu całość można traktować jako praktycznie kompletne jednoukładowe rozwiązanie sterujące.

Seria STM32F3 jest zgodna pinowo i elektrycznie z grupą STM32F1, co ułatwia migrację projektów w stronę większej wydajności. W ramach rodziny dostępne są jednostki zawierające od 64 do 256 KB pamięci Flash i do 48 KB pamięci SRAM. Mikrokontrolery zamykane są w obudowach LQPF48, LQFP64, LQFP100 i UBGA100 i są zasilane napięciem z zakresu od 2 do 3,6 V, mogąc pracować w przedziale temperatury od -40 do 85...105°C.

Nowości sprzętowe

Rys. 3. Zestaw uruchomieniowy dla aplikacji do sterowania silnikami

W zakresie aplikacyjnym mikrokontrolera na wyróżnienie zasługują głównie wydajne układy analogowe. 12-bitowe przetworniki ADC zdolne do próbkowania sygnału z szybkością 5 MS/s stają się kluczowym elementem precyzyjnie działającego układu sprzężenia zwrotnego. Im szybszy przetwornik, tym w trakcie jednego obrotu wirnika można dostać więcej próbek na temat prądu płynącego przez uzwojenia, a im jest on bardziej dokładny, tym precyzja regulacji się zwiększa.

Jest to niezwykle ważne, gdyż szybko działający przetwornik jest w stanie podawać do sterownika dane z niewielkim opóźnieniem. Im opóźnienie to jest mniejsze, tym szybkość reakcji sterownika i pośrednio ważny parametr, taki jak pasmo pętli sterowania, się zwiększa. Szybko działający sterownik generuje niższe przeciążenia mechaniczne.

Przy szybkości 5 MS/s i dla prędkości wirowania 1000 obr./s na jeden obrót i okres sygnału sterującego przypada do 5 tys. próbek - to bardzo dużo. Niektóre mikrokontrolery STM32F3 wyposażono także w dokładny, aczkolwiek wolniejszy 16-bitowy przetwornik A/C typu sigma-delta. To ukłon w stronę aplikacji pomiarowych i medycznych.

W STM32F3 zastosowano także nowe peryferia analogowe, m.in.: analogowy wzmacniacz PGA, timer o rozdzielczości poniżej 1 ns oraz bloki umożliwiające łatwą implementację nastawników i klawiatur dotykowych (typu CT).

Nowe timery AMC (Advanced Motor Control) zastosowane w mikrokontrolerach STM32F3 mogą być taktowane sygnałami zegarowymi o częstotliwości 144 MHz, możliwe jest także - za pomocą bezpiecznika OTP - nieodwracalne odłączenie interfejsu JTAG i unieruchomienie bootloadera, dzięki czemu program i dane przechowywane w bateryjnie podtrzymywanym SRAM są chronione przed skopiowaniem.

Narzędzia projektowe

Wsparcie po stronie narzędzi projektowych zapewnia tani kit STM32F3 Discovery zawierający mikrokontroler STM32F30x, 3-osiowy żyroskop MEMS i e-kompas (akcelerometr i czujnik magnetyczny 3D). Do projektowania aplikacji producent przygotował dwie bogato wyposażone płyty ewaluacyjne:

  • STM32F303, zawierającą mikrokontroler STM32F303VCT6 z dwoma złączami 34-pinowymi do sterowania silnikami, czujnikiem wilgotności, SPI 1 Mbit i serial Flash (sterowanie silnikami)
  • STM32F373: z mikrokontrolerem STM- 32F373VCT6 z czujnikiem ECG (elektrokardiogram), czujnikiem ciśnienia i temperatury PT100 podłączonymi do 3 16-bitowych przetworników ADC, dotykowy suwak, złącza HDMI (CEC i DDC) oraz fotorezystor (medycyna).

Obie płyty zawierają kolorowy wyświetlacz LCD TFT o rozdzielczości 320×240 pikseli, port microSD (interfejs SPI), czujnik temperatury kompatybilny z I²C, pamięć EEPROM i RF Dual Interface EEPROM (I²C i RF), interfejsy: RS-232, IrDA, USB FS, CAN 2.0A/B potencjometr, porty JTAG/SWD, ETM i ST-LINK/V2 do programowania i debuggingu.

STMicroelectronics
www.st.com