Implementer motorstyringskonstruksjoner raskt ved hjelp av en driver-IC med integrert mikrostyring
Bidrag fra DigiKeys nordamerikanske redaktører
2020-04-08
Bruken av motorer øker stadig innenfor bruksområder som biler, robotikk, industristyring og luftfartøy. Motorelektronikk er imidlertid tradisjonelt tung, ineffektiv, tar mye plass og er vanskelig å jobbe med på grunn av den høye driftsspenningen som trengs. Utviklere møter en økende forespørsel etter lavere materialkostnader, og det er dermed nødvendig med en høyere grad av effektivitet og elektronikk med mindre monteringsflate, i tillegg til mer fleksibilitet og kortere tid til markedet, høyere integrasjonsgrad og brukervennlighet.
Denne artikkelen presenterer STMicroelectronics’ STSPIN32F32F060x-pakkeløsning (SiP), med 3-faset motorstyring med innebygd mikrostyring, og viser hvordan de kan brukes til å møte utfordringene innen utvikling, kostnad og tiden til et ferdig produkt er på markedet.
Slik drives en 3-faset motor
For å vellykket drive en 3-fasemotor er det flere maskinvareblokker som må bygges inn i konstruksjonen:
- En mikrostyring
- En motordriver-IC
- Høyspente MOSFET-er eller IGBT-er (som utfører den faktiske omkoblingen)
I en tradisjonell motorstyringskonstruksjon har utvikleren vanligvis en del av kretskortet som bare består av alle de tre blokkene. Mikrostyringen sender vanligvis pulsbreddemodulerte (PWM) signaler til motordriver-IC-en, som nøye overvåker disse signalene sammen med utgangsstrømmen og spenningen som genereres ved motorstyringens utgang for å drive MOSFET-ene. Mikrostyringen kommuniserer også ofte med motordriver-IC-en gjennom enten en I2C- eller SPI-buss for å muliggjøre tilpassede funksjoner, eller den kan bruke ca. et halvt dusin diskrete GPIO-signaler til å styre broens atferd.
Utfordringen med en ekstern brodriver-IC i dagens utviklingssyklus er at de tilfører ekstra kostnader og kompleksitet og bruker opp viktig plass på kretskortet, for ikke å snakke om inn- og utgangssignaler (I/O) på mikrostyringen som ellers kunne vært brukt til noe annet. Det er her en ny klasse integrerte mikrostyringer og brokretser forenkler motorstyringsapplikasjoner, mens de samtidig reduserer materialkostnadene og begrenser overflateområdet på kretskort.
Hvorfor bruke STSPIN32F060x?
Denne klassen representeres ved STMicroelectronics STSPIN32F060x SiP-serie av komponenter, som omfatter en STM32F031x6x7 Arm Cortex®-M0 mikrostyring med en 600 volts trippel halvbroportdriver (Figur 1). Hver halvbro kan brukes til å drive en MOSFET eller IGBT på hver fase i en børsteløs DC-motor (BLDC).
Figur 1: STM32F060x integrerer en STM32F031 Arm Cortex-M0 med en 600 volts trippel halvbroportdriver for å spare kostnader, plass på kretskortet og pakkepinner. (Bildekilde: STMicroelectronics)
Denne serien gir noen svært interessante funksjoner og beskyttelser. Delene omfatter for eksempel:
- En komparator med en avansert, smart avslåingsbeskyttelse (smartSD) som sørger for rask og effektiv beskyttelse mot overbelastning og overstrøm
- Integrerte høyspente bootstrap-dioder
- Anti-kryssledningsbeskyttelse
- Beskyttelse mot dødtid
- UVLO-beskyttelse
Den innebygde mikrostyringen drives ved 48 megahertz (MHz) og omfatter 32 kilobyte (kB) flash med 4 kB med RAM, som er perfekt til implementering av feltrettet kontroll (FOC).
STM32F060x inkluderer for tiden to deler i familien, STSPIN32F0601 og STSPIN32F0602. Hovedforskjellen på de to er at 0601 støtter portdriverstrøm på inntil 0,35 ampere (A), mens 0602 kan støtte portdriverstrøm på inntil 1,0 A.
Merk at inne i IC-en, er STM32F031-mikrostyringen koblet til portdriveren gjennom flere GPIO-linjer internt i pakken. GPIO PA11 brukes til å aktivere portdriveren og GPIO PB12 brukes til å oppdage eventuelle feil med broen. GPIO-ens PA8 – PA10 brukes til portdriverens innganger på høy side, mens GPIO-ens PB13 – 15 brukes til portdriverens innganger på lav side. Dette gjør at utviklere ikke trenger å bruke eksterne GPIO-pinner til å styre en portdriver, og samtidig unngå behovet for plass på kretskortet til å kjøre baner til en separat IC. Integrering av begge komponenter forenkler maskinvare- og konstruksjonskompleksiteten og kan redusere materialkostnadene vesentlig.
Få fart på utviklingen med utviklingskortet EVSPIN32F0601S1
STSPIN32F060x støttes av utviklingskortet EVSPIN32F0601S1, en komplett 3-faset vekselretterstartpakke som inkluderer all nødvendig elektronikk for å få en BLDC-motor i gang ved hjelp av STSPIN32F0601-styringen (Figur 2). EVSPIN32F0601S1 er delt inn i fem hoveddeler:
- STSPIN32F0601
- En avtakbar STLINK-feilsøker
- Et tilbakekoblingsnettverk
- Et strømtrinn
- En strømforsyning
Figur 2: Utviklingskortet EVSPIN32F0601S1 tilbyr all nødvendig elektronikk for å få i gang en BLDC-motor ved hjelp av STSPIN32F0601-styringen. (Bildekilde: STMicroelectronics)
STLINK-feilsøkeren for kretskortet (PCB) kan fjernes fra utviklingskortet hvis det er ønskelig, slik at utviklere kan krympe størrelsen på kortet med tanke på bruk i prototyper og konseptkabinetter (PoC). Utviklere kan fortsatt koble til et eksternt STLINK-V3SET (Figur 3) ved å koble det til SWD-hodene på utviklingskortet.
Figur 3: Feilsøkeren STLINK-V3SET er en ekstern feilsøker som kan brukes til å programmere og feilsøke applikasjoner som er skrevet med en STM32-mikrostyring. (Bildekilde: STMicroelectronics)
Utviklingskortet inkluderer også et tilbakekoblingsnettverk som kan brukes til motorstyringsalgoritmer som krever at sensorene gir spennings- og strømtilbakekobling. I flere moderne konstruksjon kan disse tilbakekoblingsnettverkene fjernes, og en FOC-algoritme kan brukes. Dette er en sensorløs motorstyringsalgoritme som kan redusere materialkostnadene og størrelsen på det resulterende kretskortet ytterligere.
Strømtrinnet gir utviklere en høy og lav side med MOSFET-er eller IGBT-er som brukes til å veksle spenningen mellom de ulike motorviklingene. Det interessante med kortkonstruksjonen er at monteringsflatene er for enten DPAK- eller PowerFlat-pakker, slik at utviklere kan modifisere utviklingskortet hvis de ønsker, og bruke sine egne MOSFET-er eller IGBT-er.
Endelig kan strømforsyningen gi en innmatning fra 50 volt til 280 volt DC–AC (likestrøm–vekselstrøm). Den innebygde tilbakespenningstransformatoren kan også generere +15 og +3,3 volt for bruk i applikasjonen.
For å eksperimentere med utviklingskortet må man koble til en BLDC som QBL4208-41-04-006 fra Trinamic Motion Control GmbH (Figur 4). Hver fase i BLDC-motoren kobles til EVSPIN32F0601S1 gjennom de aktuelle utgangsskruterminalene.
Figur 4: BLDC-motoren QBL4208-41-04-006 går ved 4000 o/min og kan brukes sammen med utviklingskortet EVSPIN32F0601S1 for å utvikle en rekke forskjellige applikasjoner. (Bildekilde: Trinamic Motion Control GmbH)
Selv om utviklingskortet EVSPIN32F0601S1 har all nødvendig maskinvare for å drive en BLDC-motor, trenger en 3-fasemotor også programvare. For å vellykket drive en motor, kan utviklere utnytte STMicroelectronics’ X-CUBE-MCSDK-programvareutviklingssett for motorstyring. Dette biblioteket kan brukes med programvarepakker som ST32CubeIDE og ST32CubeMx for enkelt å konfigurere en motorstyringsløsning.
Drift av en BLDC-motor med programvare
Programvarepakken X-CUBE-MCSDK inkluderer to høynivå-applikasjoner: Motor Control Workbench og Motor Profiler. Motor Control Workbench lar utvikleren lage et motorstyringsprosjekt for enkelt å kjøre en motor. Det kan brukes forskjellige motoralgoritmer for å drive motoren, inkludert FOC, i tillegg til forskjellige tilbakekoblingstopologier som:
- Én shuntmotstand (parallellmotstand)
- Tre shuntmotstander
- To isolerte strømsensorer
Med Motor Profiler kan utvikleren oppgi deres generelle motorparametre og deretter profilere motoren fullstendig. Denne profileringen gir de generelle motorparametrene som trengs av algoritmer som FOC for å kunne drive motoren.
Det er enkelt å lage et prosjekt i Motor Control Workbench. En utvikler må åpne Motor Control Workbench og velge nytt prosjekt. De kan deretter oppgi parameterne sine, som vist i Figur 5:
- Applikasjonstype
- Antallet motorer som skal styres
- Deres styre- og strømkonfigurasjoner
- Motorparametre som poler, hastighet, spenning og merkestrøm
Figur 5: Prosjektkonfigurasjonen i Motor Control Workbench lar utvikleren tilpasse prosjektinnstillingene for deres maskinvare. (Bildekilde: Beningo Embedded Group)
Når informasjonen om prosjektet er valgt, kan utviklere trykke på OK for å komme inn i Motor Control Workbench (Figur 6). Fra Workbench kan utviklere tilpasse applikasjonens atferd. Dette omfatter muligheten til å konfigurere:
- Innstillinger i fastvaren, f.eks. oppstartsprofil, driverinnstillinger og alternativer for detektering
- Digitale I/O-innstillinger som grensesnittet på pulsgiver (enkoder), Hall-sensorer, seriell kommunikasjon og start- og stoppknapper
- Digital-til-analog omformer (DAC)-funksjonalitet
- Analog innmatings- og beskyttelsesinnstillinger for tilbakekobling fra fasestrøm, busspenning, temperatur og PFC-trinnet.
Figur 6: Motor Control Workbench gir utvikleren muligheten til å tilpasse fastvaren, justere MCU (mikrostyring) og klokkefrekvenser i tillegg til digital I/O, DAC og analog innmatningsbeskyttelse. (Bildekilde: Beningo Embedded Group)
Utviklere har også muligheten til å aktivere og deaktivere innstillinger ved å klikke i avmerkingsbokser som:
- Detektering av busspenning
- Temperaturavsøking
- Strømavsøking med overstrømsvern
- Hastighetsavsøking
Utvikleren trenger ikke å se en eneste API eller kodelinje for å konfigurere motorstyringsapplikasjonen fullstendig.
Konklusjon
Utviklere og designere av motorstyringssystemer opplever et økende press for å senke kostnader, oppnå høyere effektivitet og elektronikk med mindre monteringsflate. Som vist vil ikke STSPIN32F060x SiP for 3-fasede BLDC-motorstyringsapplikasjoner bare senke materialkostnader, men også gi mer plass på kretskortet og redusere systemets kompleksitet. Det leveres også med et effektivt økosystem, inkludert et utviklingskort og programvare som er konstruert for å la utviklere komme i gang med motorstyringsapplikasjonene raskt og enkelt.
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.




