ams-LOGO

ams AS5048 14-bits roterende posisjonssensor med digital vinkel og PWM-utgang

ams-AS5048-14-bits-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-output

Produktinformasjon

AS5048 er en 14-bits roterende posisjonssensor med digital vinkel (grensesnitt) og PWM-utgang. Den er designet av ams OSRAM Group og utgitt av Arrow.com. Sensoren brukes til å måle posisjonen til et roterende objekt og gir nøyaktige vinkelmålinger.
AS5048-adapterkortet er en krets som muliggjør enkel testing og evaluering av AS5048-sensoren uten behov for å bygge en separat testarmatur eller PCB. Adapterkortet kan kobles til en mikrokontroller eller AS5048-Demoboard som en ekstern enhet.

Styrebeskrivelse
AS5048-adapterkortet har et grensesnitt type A (SPI) eller B (I2C), 4 x 2.6 mm monteringshull og en P1-kontakt. Det gir en praktisk måte å koble til og samhandle med AS5048-sensoren.

Monteringsinstruksjoner

Følg disse trinnene for å montere AS5048-adapterkortet:

  1. Plasser en diametral magnet over eller under AS5048-posisjonssensoren.
  2. Sørg for at magneten er sentrert på midten av pakken med en toleranse på 0.5 mm.
  3. Oppretthold et luftgap mellom magneten og koderhuset i området 0.5 mm til 2 mm.
  4. Bruk et ikke-ferromagnetisk materiale som messing, kobber, aluminium eller rustfritt stål for magnetholderen.

Å følge disse instruksjonene vil sikre riktig funksjon av AS5048-adapterkortet og nøyaktige posisjonsmålinger.

Revisjonshistorie

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-1

Generell beskrivelse

AS5048 er en brukervennlig 360° vinkelposisjonssensor med en 14-bits utgang med høy oppløsning. For å måle vinkelen er det bare nødvendig med en enkel to-polet magnet, som roterer over midten av brikken.
Magneten kan plasseres over eller under IC. Dette er vist i figur 1.

Figur 1: Magnetisk posisjonssensor AS5048 + magnet

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-2

AS5048-adapterkortet
AS5048-adapterkortet er en enkel krets som tillater test og evaluering av AS5048 magnetiske posisjonssensor raskt uten å bygge en testarmatur eller PCB.

Styrebeskrivelse
AS5048 Adapterboard er en enkel krets som tillater test og evaluering av AS5048 roterende koder raskt uten å bygge en testarmatur eller PCB.
PCB kan kobles til en mikrokontroller eller til AS5048-Demoboard som ekstern enhet.

Figur 2: AS5048 Adapterkort

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-3

Montering av AS5048-adapterkortet
En diametral magnet må plasseres over under AS5048-posisjonssensoren, og skal være sentrert på midten av pakken med en toleranse på 0.5 mm.
Luftspalten mellom magneten og koderhuset bør holdes i området 0.5 mm~2 mm. Magnetholderen må ikke være ferromagnetisk. Materialer som messing, kobber, aluminium, rustfritt stål er de beste valgene for å lage denne delen.

Figur 3: AS5048 – AB – montering og dimensjon

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-4

AS5048 adapterkort og pinout

Figur 4: AS5048-adapterkortkontakter og koder-pinout

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-5

Tabell 1: Pin-beskrivelse

Pin# bord Pin# AS5 048 Symboltavle  

Beskrivelse

P1 – 1 13 GND Forsyningsgrunn
P1 – 2 3 A2/MISO SPI master inn/slave ut; delt med I2C adressevalgpinne 2
P1 – 3 4 A1/MOSI SPI master ut/slave inn; delt med I2C adressevalgpinne 1
P1 – 4 2 SCL/SCK SPI klokkeinngang; delt med I2C-klokkeinngang
P1 – 5 1 SDA/CSn SPI chip velger-aktiv lav; delt med I2C-datapinne
P1 – 6 14 PWM Pulsbreddemodulasjonsutgang
 

P1 – 7

 

12

 

3.3V

3V-regulatorutgang; internt regulert fra VDD. Koble til VDD for 3V forsyningsvoltage
P1 – 8 11 5V Tilførsel voltage

Driftssaker

Den mest komplette og nøyaktige løsningen for en MCU for å lese vinkelen til en magnet er SPI-grensesnittet.

One Device SPI-modus, ensrettet – 3-leder
AS5048-AB kan kobles direkte til en industristandard SPI-port på en mikrokontroller. Minimumskravet til tilkobling for ensrettet kommunikasjon (avlesning av vinkel + alarmverdier) mellom mikrokontrolleren og AS5048 er MISO, SCK, SS/.
Vinkelen vil bli lest ved hver 16-bits SPI-overføring. Se AS5048 databladregistertabell, register 3FFFh.

Figur 5: Bruke SPI-grensesnittet ensrettet med en mikrokontroller

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-7

En enhets SPI-modus, toveis – 4 ledninger
Hvis andre registre enn bare vinkelverdier må leses, eller for å skrive registre inn i AS5048, er signalet MOSI nødvendig.

Figur 6: Bruke SPI-grensesnittet toveis med en mikrokontroller

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-8

Multi-enheter SPI Daisy chain-modus
AS5048 kan kobles sammen med 4 ledninger kun for SPI-kommunikasjon.
I denne konfigurasjonen med nx-kodere vil sekvensen bli behandlet som følger:

  • MCU setter SS/ = 0
  • MCU skifter nx 16-bit (f.eks. READ-kommando FFFFh) gjennom kjeden
  • MCU setter SS/=1
    På det tidspunktet har alle nx-kodere mottatt READ-kommandoen FFFFh.
  • MCU setter SS/=0
  • MCU skifter nx 16-bit (f.eks. NOP-kommando 0000h)
  • MCU setter SS/=1
    På det tidspunktet er nx 16-bitene mottatt på MISO nx-vinkelverdiene.

Figur 7: Multi Devices i Daisy chain-modus

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-9

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-10

Firmware-koding

Følgende kildekode passer til 4-Wire-applikasjonen
Funksjonen void spiReadData() leser/skriver 4 verdier fra AS5048

  • Send kommando READ AGC / Motta verdi ukjent
  • Send kommando READ MAG / Motta verdi AGC
  • Send kommando READ Vinkel / Motta verdi MAG
  • Send kommando NOP (ingen operasjon) / Motta verdi ANGLE

Hvis det kun er nødvendig med en LESEVINKEL i en sløyfe, kan prosedyren reduseres til én linje:

  • Send kommando READ Angle / Motta verdi Vinkel
    Funksjonen static u8 spiCalcEvenParity(short value) er valgfri, den beregner paritetsbiten til 16-bits SPI-strømmen.

/*!
************************************************** *************************
* Leser ut brikkedata via SPI-grensesnitt
*
* Denne funksjonen brukes til å lese ut cordic verdi fra brikker som støtter SPI
* grensesnitt.
************************************************** *************************
*/
#define SPI_CMD_READ 0x4000 /*!< flagg som indikerer leseforsøk ved bruk av SPI-grensesnitt */
#define SPI_REG_AGC 0x3ffd /*!< agc register ved bruk av SPI */
#define SPI_REG_MAG 0x3ffe /*!< størrelsesregister ved bruk av SPI */
#define SPI_REG_DATA 0x3fff /*!< dataregister ved bruk av SPI */
#define SPI_REG_CLRERR 0x1 /*!< slett feilregister ved bruk av SPI */

void spiReadData()
{
u16 dat; // 16-bits databuffer for SPI-kommunikasjon
u16 magreg;
ushort vinkel, agcreg;
ubyte agc;
ushort verdi;
bit alarmHei, alarmLo;

/* Send READ AGC-kommandoen. Mottatte data blir kastet: disse dataene kommer fra presedenskommandoen (ukjent)*/
dat = SPI_CMD_READ | SPI_REG_AGC;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));

/ /* Send READ MAG-kommandoen. Mottatte data er AGC-verdien: disse dataene kommer fra presedenskommandoen (ukjent)*/
dat = SPI_CMD_READ | SPI_REG_MAG;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
magreg = dat;
/* Send READ ANGLE kommando. Mottatte data er MAG-verdien, fra den tidligere kommandoen */
dat = SPI_CMD_READ | SPI_REG_DATA;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
agcreg = dat;
/* Send NOP-kommando. Mottatte data er ANGLE-verdien, fra den forrige kommandoen */
dat = 0x0000; // NOP kommando.
spiTransfer((u8*)&dat, sizeof(u16));
vinkel = dat >> 2;
}
if ((dat & 0x4000) || (agcreg & 0x4000) || (magreg & 0x4000))
{
/* feilflagg satt – må tilbakestille det */
dat = SPI_CMD_READ | SPI_REG_CLRERR;
dat |= spiCalcEvenParity(dat)<<15;
spiTransfer((u8*)&dat, sizeof(u16));
}
ellers
{
agc = agcreg & 0xff // AGC-verdi (0..255)
verdi = dat & (16384 – 31 – 1); // Vinkelverdi (0.. 16384 trinn)
vinkel = (verdi * 360) / 16384 // Vinkelverdi i grad
(0°)
magnitude = magreg & (16384 – 31 – 1);
alarmLo = (agcreg >> 10) & 0x1;
alarmHi = (agcreg >> 11) & 0x1;
}
}
/*!
************************************************** *************************
* Beregn jevn paritet for et 16-bits heltall uten fortegn
*
* Denne funksjonen brukes av SPI-grensesnittet for å beregne jevn paritet
* av dataene som vil bli sendt via SPI til koderen.
*
* \param[in] verdi : 16 bit heltall uten fortegn hvis paritet skal beregnes
*
* \return : Jevn paritet
*
************************************************** *************************
*/
statisk u8 spiCalcEvenParity(kortverdi)
{
u8 cnt = 0;
u8 i;
for (i = 0; i < 16; i++)
{
if (verdi & 0x1)
{
cnt++;
}
verdi >>= 1;
}
returner cnt & 0x1;
}
/*!
************************************************** *************************
* Beregn jevn paritet for et 16-bits heltall uten fortegn
*
* Denne funksjonen brukes av SPI-grensesnittet for å beregne jevn paritet
* av dataene som vil bli sendt via SPI til koderen.
*
* \param[in] verdi : 16 bit heltall uten fortegn hvis paritet skal beregnes
*
* \return : Jevn paritet
*
************************************************** *************************
*/
statisk u8 spiCalcEvenParity(kortverdi)
{
u8 cnt = 0;
u8 i;
for (i = 0; i < 16; i++)
{
if (verdi & 0x1)
{
cnt++;
}
verdi >>= 1;
}
returner cnt & 0x1;
}

AS5048-AB-maskinvare

Følgende skjematisk og layout av Adapterboard kan bli funnet.

AS5048-AB-1.1 Skjematisk

Figur 8: AS5048-AB-1.1 adapterkortskjemaer

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-12

AS5048 – AB – 1.1 PCB layout

Figur 9: AS5048-AB-1.1 adapterkortoppsett

ams-AS5048-14-bit-Rotary-Position-Sensor-with-Digital-Angle-and-PWM-Output-11

Opphavsrett
Copyright ams AG, Tobelbader Strasse 30, 8141 Unterpremstätten, Østerrike-Europa. Varemerker registrert. Alle rettigheter forbeholdt. Materialet her kan ikke reproduseres, tilpasses, slås sammen, oversettes, lagres eller brukes uten skriftlig forhåndssamtykke fra opphavsrettseieren.

Ansvarsfraskrivelse
Enheter som selges av ams AG er dekket av garanti- og patentkravene i salgsperioden. ams AG gir ingen garanti, uttrykkelig, lovfestet, underforstått eller ved beskrivelse av informasjonen som er fremsatt her. ams AG forbeholder seg retten til å endre spesifikasjoner og priser når som helst og uten varsel. Derfor, før du designer dette produktet inn i et system, er det nødvendig å sjekke med ams AG for aktuell informasjon. Dette produktet er beregnet for bruk i kommersielle applikasjoner. Applikasjoner som krever utvidet temperaturområde, uvanlige miljøkrav eller applikasjoner med høy pålitelighet, for eksempel militært, medisinsk livsopprettholdende eller livsopprettholdende utstyr, anbefales spesifikt ikke uten ytterligere behandling av ams AG for hver applikasjon. Dette produktet leveres av ams "AS IS" og alle uttrykkelig eller underforstått
garantier, inkludert, men ikke begrenset til, underforståtte garantier for salgbarhet og egnethet for et bestemt formål fraskrives.
ams AG skal ikke være ansvarlig overfor mottaker eller tredjepart for noen skader, inkludert men ikke begrenset til personskade, skade på eiendom, tap av fortjeneste, tap av bruk, avbrudd i virksomheten eller indirekte, spesielle, tilfeldige eller følgeskader, av eventuelle type, i forbindelse med eller som følge av innredning, ytelse eller bruk av de tekniske dataene her. Ingen forpliktelse eller ansvar overfor mottakeren eller noen tredjepart skal oppstå eller strømme ut av ams AGs ytelse av tekniske eller andre tjenester.

Kontaktinformasjon
Hovedkvarter
ams AG
Tobelbader Strasse 30
8141 Unterpremstaetten
Østerrike
T. +43 (0) 3136 500 0
For salgskontorer, distributører og representanter, vennligst besøk:
http://www.ams.com/contact

www.ams.com

Lastet ned fra Arrow.com.

Dokumenter / Ressurser

ams AS5048 14-bits roterende posisjonssensor med digital vinkel og PWM-utgang [pdfBrukerhåndbok
AS5048-AB-1.1, AS5048 14-bits roterende posisjonssensor med digital vinkel og PWM-utgang, AS5048, 14-bits roterende posisjonssensor med digital vinkel og PWM-utgang, AS5048 14-bits roterende posisjonssensor, roterende posisjonssensor, posisjonssensor, Sensor

Referanser

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket *