Snelle implementatie van motorbesturingsontwerpen met behulp van een drive-IC met geïntegreerde microcontroller

Door Jacob Beningo

Bijgedragen door De Noord-Amerikaanse redacteurs van DigiKey

Het gebruik van motoren neemt gestaag toe in toepassingen zoals auto's, robotica, industriële besturing en luchtvoertuigen. De motorelektronica is echter traditioneel zwaar, volumineus, inefficiënt en moeilijk om mee te werken door de hoge aandrijfspanningen die ermee gemoeid zijn. Nu ontwerpers geconfronteerd worden met een toenemende vraag naar lagere BOM-kosten, een hogere efficiëntie en een kleinere voetafdruk van de elektronica, evenals een grotere flexibiliteit en een snellere time-to-market, is een hogere mate van integratie en gebruiksgemak nodig.

In dit artikel wordt de STSPIN32F32F060x-serie van STMicro-elektronica (SiP) 3-fasenmotorcontrollers met een ingebouwde microcontroller geïntroduceerd en wordt getoond hoe deze kunnen worden gebruikt om deze uitdagingen op het gebied van ontwerp, kosten en time-to-market te realiseren.

Hoe een 3-fasenmotor aan te drijven

Om met succes een 3-fasen motor aan te drijven, zijn er verschillende hardwareblokken die in het ontwerp moeten worden ingebouwd:

  • Een microcontroller
  • Een motor aangedreven IC
  • Hoogspannings-MOSFET's of IGBT's (die de eigenlijke schakeling uitvoeren)

In een traditioneel ontwerp van een motorbesturing heeft een ontwikkelaar meestal een gedeelte van de printplaat dat aan alle drie de blokken is gewijd. Doorgaans stuurt de microcontroller pulsbreedte-gemoduleerde (PWM) signalen naar het motordrive-IC, dat deze signalen zorgvuldig bewaakt samen met de uitgangsstroom en -spanning die worden gegenereerd aan de uitgang van de motorcontroller, om de MOSFET's aan te sturen. De microcontroller communiceert vaak ook met het motoraandrijf-IC via een I2C- of SPI-bus om aangepaste functies en functionaliteiten mogelijk te maken, of hij kan een half dozijn discrete GPIO-signalen gebruiken om het gedrag van de brug te regelen .

De uitdaging met een externe brugdriver-IC in de huidige ontwikkelingscyclus is dat ze extra kosten en complexiteit toevoegen en kostbare pc-kaartruimte verbruiken, om nog maar te zwijgen van in- en uitgangssignalen (I/O) op de microcontroller die anders voor iets anders gebruikt zouden kunnen worden. Dit is waar een nieuwe klasse van geïntegreerde microcontrollers en brugcircuits de motorbesturingsapplicaties vereenvoudigt, terwijl tegelijkertijd de BOM-kosten worden verlaagd en het oppervlak van de pc-kaart wordt geminimaliseerd.

Waarom de STSPIN32F060x gebruiken?

Deze klasse wordt vertegenwoordigd door de STMicro-elektronica STSPIN32F060x SiP-serie van componenten die een STM32F031x6x7 Arm® Cortex®-M0-microcontroller met een 600 volt driedubbele halfbrugdriver bevat (Afbeelding 1). Elke halfbrug kan worden gebruikt om een MOSFET of IGBT aan te drijven op elke fase van een borstelloze DC (BLDC) motor.

Diagram van STMicro-elektronica STM32F060x integreert een STM32F031 Arm Cortex-M0 (klik om te vergroten)Afbeelding 1: De STM32F060x integreert een STM32F031 Arm Cortex-M0 met een 600 volt driedubbele halfbrugdriver om kosten, pc-kaartruimte en pakketpennen te besparen. (Bron afbeelding: STMicroelectronics)

De serie biedt een aantal zeer interessante functies en beschermingen. De onderdelen omvatten bijvoorbeeld:

  • Een vergelijker met een geavanceerde smart shutdown (smartSD) functie die zorgt voor een snelle en effectieve bescherming tegen overbelasting en overstroom.
  • Geïntegreerde hoogspanning-bootstrap-diodes
  • Anti-cross-conduction bescherming
  • Deadtime bescherming
  • UVLO-bescherming

De ingebouwde microcontroller werkt op 48 megahertz (MHz) en bevat 32 kilobytes (Kbytes) aan flash met 4 Kbytes aan RAM, wat perfect is voor het implementeren van een veldgerichte besturing (FOC).

De STM32F060x bestaat momenteel uit twee delen van de familie, de STSPIN32F0601 en de STSPIN32F0602. Het primaire verschil tussen de twee is dat de 0601 poortaandrijvingsstromen tot 0,35 ampère (A) ondersteunt, terwijl de 0602 poortaandrijvingsstromen tot 1,0 A kan ondersteunen.

Merk op dat intern aan het IC, de STM32F031-microcontroller is aangesloten op de gate driver door middel van verschillende GPIO-lijnen die intern zijn aan het pakket. GPIO PA11 wordt gebruikt om de gate driver in te schakelen, en GPIO PB12 wordt gebruikt om te detecteren of er een fout is in de brug. GPIO's PA8 - PA10 worden gebruikt voor de hoge zijde-ingangen van de gate driver, terwijl GPIO's PB13 - 15 worden gebruikt voor de lage zijde-ingangen van de gate driver. Dit bespaart ontwikkelaars het gebruik van externe GPIO-pennen om een gate driver aan te sturen, en vermijdt ook de noodzaak van printplaatruimte om sporen naar een afzonderlijk IC uit te voeren. De integratie van beide componenten vereenvoudigt de hardware- en ontwerpcomplexiteit en kan de BOM-kosten aanzienlijk verlagen.

Versnel de ontwikkeling met de EVSPIN32F0601S1-ontwikkelingskaart.

De STSPIN32F060x wordt ondersteund door de EVSPIN32F0601S1-ontwikkelingskaart, een complete 3-fase omvormerstarterskit die alle benodigde elektronica bevat om een BLDC-motor in werking te stellen met behulp van de STSPIN32F0601-regelaar (Afbeelding 2). De EVSPIN32F0601S1 is onderverdeeld in vijf primaire secties:

  • De STSPIN32F0601
  • Een afneembare STLINK debugger
  • Een feedbacknetwerk
  • Een vermogensfase
  • Een voeding

Afbeelding van STMicroelectronics EVSPIN32F0601S1-ontwikkelingsbordAfbeelding 2: De EVSPIN32F0601S1-ontwikkelingskaart biedt alle benodigde elektronica om een BLDC-motor in werking te stellen met behulp van de STSPIN32F0601-controller. (Bron afbeelding: STMicroelectronics)

De pcb STLINK-debugger kan desgewenst van de ontwikkelingskaart worden verwijderd, zodat ontwikkelaars de printplaat kunnen verkleinen om deze te kunnen gebruiken in prototypes en proof-of-concept (PoC)-behuizingen. Ontwikkelaars kunnen nog steeds een externe STLINK-V3SET aansluiten (Afbeelding 3) door deze aan te sluiten op de SWD-headers op de ontwikkelingskaart.

Afbeelding van STMicro-elektronica STLINK-V3SET debuggerAfbeelding 3: De STLINK-V3SET debugger is een externe debugger die kan worden gebruikt voor het programmeren en debuggen van toepassingen die zijn geschreven met behulp van een STM32-microcontroller. (Bron afbeelding: STMicroelectronics)

De ontwikkelingskaart bevat ook een feedback-netwerk dat kan worden gebruikt voor motorbesturingsalgoritmen die sensoren nodig hebben om de spanning en de stroom terug te geven. In veel moderne ontwerpen kunnen deze feedback-netwerken worden verwijderd en kan een FOC-algoritme worden gebruikt. Dit is een sensorloos motorbesturingsalgoritme dat de BOM-kosten en de grootte van de resulterende printplaat verder kan reduceren.

De power stage biedt ontwikkelaars hoge en lage zijde MOSFET's of IGBT's die worden gebruikt om de spanning over de verschillende motorwikkelingen te schakelen. Wat interessant is aan het ontwerp van de kaart is dat de voetafdrukken voor zowel DPAK- als PowerFlat-pakketten zijn, waardoor ontwikkelaars de ontwikkelingskaart kunnen aanpassen als ze ervoor kiezen om hun eigen MOSFET of IGBT te gebruiken.

Tot slot kan de voeding een ingang van 50 volt tot 280 volt DC/AC leveren. De flyback transformator aan boord kan ook +15 en +3,3 volt genereren voor gebruik in de toepassing.

Om te kunnen experimenteren met de ontwikkelingskaart moet men een BLDC zoals de QBL4208-41-04-006 van Trinamic Motion Control GmbH aansluiten (Afbeelding 4). Elke fase van de BLDC-motor wordt via de juiste uitgangsschroefklemmen op de EVSPIN32F0601S1 aangesloten.

Afbeelding van Trinamic Motion Control GmbH QBL4208-41-04-006 BLDC-motorAfbeelding 4: De QBL4208-41-04-006 BLDC-motor draait op 4000 RPM en kan worden gebruikt met de EVSPIN32F0601S1-ontwikkelingskaart om een grote verscheidenheid aan toepassingen te ontwikkelen. (Bron afbeelding: Trinamic Motion Control GmbH)

Terwijl de EVSPIN32F0601S1-ontwikkelingskaart alle hardware heeft die nodig is om een BLDC-motor aan te drijven, is voor een 3-fasenmotor ook software nodig. Om een motor succesvol aan te drijven, kunnen ontwikkelaars gebruik maken van de X-CUBE-MCSDK motorbesturingssoftwareontwikkelingskit van STMicroelectronics. Deze bibliotheek kan worden gebruikt met softwarepakketten zoals de ST32CubeIDE en ST32CubeMx om eenvoudig een motorbesturingsoplossing te configureren.

Het besturen van een BLDC-motor met software

Het softwarepakket X-CUBE-MCSDK bevat twee hoogwaardige toepassingen: de MotorControl Workbench en de Motor Profiler. Met de MotorControl Workbench kan een ontwikkelaar een motorstuurproject maken om een motor eenvoudig te laten draaien. Verschillende motoralgoritmen kunnen worden gebruikt om de motor aan te drijven, waaronder FOC, evenals verschillende feedback-topologieën zoals:

  • Een shuntweerstand
  • Drie shuntweerstanden
  • Twee geïsoleerde stroomsensoren

Met de Motor Profiler kan een ontwikkelaar zijn algemene motorparameters invoeren en vervolgens de motor volledig profileren. Deze profilering levert de algemene motorparameters die nodig zijn voor algoritmen zoals FOC om de motor met succes aan te drijven.

Het creëren van een project binnen de Motor Control Workbench is eenvoudig. Een ontwikkelaar moet Motor Control Workbench openen en een nieuw project selecteren. Ze kunnen dan hun parameters invoeren zoals in Afbeelding 5:

  • Type toepassing
  • Het aantal motoren dat zal worden gecontroleerd
  • Hun controle en vermogensconfiguraties
  • De motorparameters zoals polen, snelheid, spanning en nominale stroom

Afbeelding van het Motor Control Workbench ProjectAfbeelding 5: De Motor Control Workbench Projectconfiguratie stelt een ontwikkelaar in staat om zijn projectinstellingen voor zijn hardware aan te passen. (Bron afbeelding: Beningo Embedded Group)

Zodra de informatie voor het project is geselecteerd, kunnen de ontwikkelaars op OK klikken, wat hen vervolgens naar de Motor Control Workbench brengt (Afbeelding 6). Vanuit de werkbank kunnen ontwikkelaars het gedrag van hun applicatie aanpassen. Dit omvat de mogelijkheid om te configureren:

  • Firmware-instellingen zoals het opstartprofiel, de drive-instellingen en de detectie-opties
  • Digitale I/O-instellingen zoals de encoderinterface, hallsensoren, seriële communicatie en start- en stopknoppen
  • Digitaal-naar-analoog convertor (DAC) functionaliteit
  • Analoge ingangs- en beveiligingsinstellingen voor terugkoppeling van fasestroom, busspanning, temperatuur en de PFC-trap.

Afbeelding van de Motor Control WerkbankAfbeelding 6: De Motor Control Workbench biedt een ontwikkelaar de mogelijkheid om de firmware aan te passen, de MCU en de klokfrequenties aan te passen, samen met de digitale I/O, DAC en analoge ingangsbeveiliging. (Afbeelding: Beningo Embedded Group)

Ontwikkelaars hebben zelfs de mogelijkheid om instellingen in en uit te schakelen met een klik op een selectievakje zoals:

  • Busspanningsdetectie
  • Temperatuursgevoeligheid
  • Stroomdetectie met overstroombeveiliging
  • Snelheidsgevoeligheid

Een ontwikkelaar hoeft niet eens een enkele API of regel code te zien om zijn motorbesturingstoepassing volledig te configureren.

Conclusie

Ontwikkelaars en ontwerpers van motorbesturingssystemen staan onder toenemende druk om de kosten te verlagen, de efficiëntie te verhogen en de elektronica te verkleinen. Zoals afgebeeld, vermindert de STSPIN32F060x SiP voor 3-fase BLDC motorcontrollertoepassingen niet alleen de BOM-kosten, maar ook de ruimte op de kaart en de complexiteit van het systeem. Het wordt ook geleverd met een effectief ecosysteem, inclusief een ontwikkelingskaart en software die ontworpen is om ontwikkelaars snel en eenvoudig met motorbesturingsapplicaties aan de slag te krijgen.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

Achtergrondinformatie over deze auteur

Image of Jacob Beningo

Jacob Beningo

Jacob Beningo is een embedded software consultant. Hij heeft meer dan 200 artikelen over embedded software ontwikkelingstechnieken gepubliceerd, is een veelgevraagde spreker en technische trainer en heeft drie universitaire graden, waaronder een Masters of Engineering bij de University of Michigan.

Over deze uitgever

De Noord-Amerikaanse redacteurs van DigiKey