ams-LOGO

Sensor de posició rotatiu ams AS5048 de 14 bits amb angle digital i sortida PWM

ams-AS5048-Sensor-de-posició-giratori-de-14-bits-amb-angle-digital-i-sortida-PWM

Informació del producte

L'AS5048 és un sensor de posició rotatiu de 14 bits amb angle digital (interfície) i sortida PWM. Està dissenyat per ams OSRAM Group i publicat per Arrow.com. El sensor s'utilitza per mesurar la posició d'un objecte en rotació i proporciona mesures d'angles precises.
La placa adaptadora AS5048 és un circuit que permet una fàcil prova i avaluació del sensor AS5048 sense necessitat de construir un dispositiu de prova o PCB separat. La placa adaptadora es pot connectar a un microcontrolador o a l'AS5048-Demoboard com a dispositiu extern.

Descripció del tauler
La placa adaptadora AS5048 inclou una interfície tipus A (SPI) o B (I2C), 4 forats de muntatge de 2.6 mm i un connector P1. Proporciona una manera còmoda de connectar i interactuar amb el sensor AS5048.

Instruccions de muntatge

Per muntar la placa adaptadora AS5048, seguiu aquests passos:

  1. Col·loqueu un imant diamètric sobre o sota el sensor de posició AS5048.
  2. Assegureu-vos que l'imant estigui centrat al centre del paquet amb una tolerància de 0.5 mm.
  3. Mantingueu un espai d'aire entre l'imant i la carcassa del codificador en el rang de 0.5 mm a 2 mm.
  4. Utilitzeu un material no ferromagnètic com ara llautó, coure, alumini o acer inoxidable per al suport de l'imant.

Seguir aquestes instruccions garantirà el bon funcionament de la placa adaptadora AS5048 i mesures precises de la posició.

Historial de revisions

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-1

Descripció general

L'AS5048 és un sensor de posició d'angle de 360° fàcil d'utilitzar amb una sortida d'alta resolució de 14 bits. Per mesurar l'angle, només cal un imant simple de dos pols, girant sobre el centre del xip.
L'imant es pot col·locar per sobre o per sota de l'IC. Això es mostra a la figura 1.

Figura 1: Sensor de posició magnètica AS5048 + imant

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-2

Placa adaptadora AS5048
La placa adaptadora AS5048 és un circuit senzill que permet provar i avaluar ràpidament el sensor de posició magnètica AS5048 sense construir un dispositiu de prova o PCB.

Descripció del tauler
La placa adaptadora AS5048 és un circuit senzill que permet provar i avaluar ràpidament el codificador rotatiu AS5048 sense construir un dispositiu de prova o PCB.
El PCB es pot connectar a un microcontrolador o a l'AS5048- Demoboard com a dispositiu extern.

Figura 2: Placa adaptadora AS5048

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-3

Muntatge de la placa adaptadora AS5048
S'ha de col·locar un imant diamètric sota el sensor de posició AS5048 i s'ha de centrar al centre del paquet amb una tolerància de 0.5 mm.
L'espai entre l'imant i la carcassa del codificador s'ha de mantenir en el rang de 0.5 mm ~ 2 mm. El suport de l'imant no ha de ser ferromagnètic. Materials com llautó, coure, alumini, acer inoxidable són les millors opcions per fer aquesta peça.

Figura 3: AS5048 – AB – muntatge i mida

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-4

Placa adaptadora AS5048 i pinout

Figura 4: connectors de la placa adaptadora AS5048 i pinout del codificador

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-5

Taula 1: Descripció del pin

Pin # Tauler Pin # AS5 048 Tauler de símbols  

Descripció

P1-1 13 GND Terra de subministrament
P1-2 3 A2/MISO SPI mestre d'entrada/esclau de sortida; compartit amb el pin de selecció d'adreces I2C 2
P1-3 4 A1/MOSI SPI master out/slave in; compartit amb el pin de selecció d'adreces I2C 1
P1-4 2 SCL/SCK Entrada de rellotge SPI; compartit amb l'entrada de rellotge I2C
P1-5 1 SDA/CSn Xip SPI select-active low; compartit amb el pin de dades I2C
P1-6 14 PWM Sortida de modulació d'amplada de pols
 

P1-7

 

12

 

3.3 V

Sortida del regulador 3V; regulat internament per VDD. Connecteu-vos a VDD per a un volum de subministrament de 3 Vtage
P1-8 11 5V Subministrament voltage

Casos operatius

La solució més completa i precisa perquè un MCU llegeixi l'angle d'un imant és la interfície SPI.

Mode SPI d'un dispositiu, unidireccional: 3 cables
L'AS5048-AB es pot connectar directament a un port SPI estàndard de la indústria d'un microcontrolador. El requisit mínim de connexió per a la comunicació unidireccional (angle + lectura de valors d'alarma) entre el microcontrolador i l'AS5048 són MISO, SCK, SS/.
L'angle es llegirà a cada transferència SPI de 16 bits. Vegeu la taula de registre del full de dades AS5048, registre 3FFFh.

Figura 5: Ús de la interfície SPI unidireccional amb un microcontrolador

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-7

Mode SPI d'un dispositiu, bidireccional: 4 cables
Si s'han de llegir altres registres que només els valors d'angle, o per escriure registres a l'AS5048, és necessari el senyal MOSI.

Figura 6: Ús de la interfície SPI bidireccional amb un microcontrolador

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-8

Mode SPI en cadena de diversos dispositius
L'AS5048 es pot connectar en cadena, utilitzant 4 cables només per a la comunicació SPI.
En aquesta configuració amb codificadors nx, la seqüència es processarà de la següent manera:

  • MCU estableix SS/ = 0
  • MCU desplaça nx 16 bits (per exemple, l'ordre READ FFFFh) a través de la cadena
  • MCU estableix SS/=1
    En aquest moment, tots els codificadors nx han rebut l'ordre READ FFFFh.
  • MCU estableix SS/=0
  • MCU canvia nx 16 bits (per exemple, comanda NOP 0000h)
  • MCU estableix SS/=1
    En aquest moment, els nx 16 bits rebuts a MISO són ​​els valors de l'angle nx.

Figura 7: Dispositius múltiples en mode en cadena

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-9

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-10

Codificació del firmware

El codi font següent s'adapta a l'aplicació 4-Wire
La funció void spiReadData() llegeix/escriu 4 valors de l'AS5048

  • Enviar comanda READ AGC / Rebre valor desconegut
  • Enviar comanda LLEGIR MAG / Rebre valor AGC
  • Enviar comanda READ Angle / Rebre valor MAG
  • Enviar comanda NOP (sense operació) / Rebre valor ANGLE

Si només cal un ANGLE DE LECTURA en un bucle, el procediment es pot reduir a una línia:

  • Enviar comanda READ Angle / Rebre valor Angle
    La funció static u8 spiCalcEvenParity (valor ushort) és opcional, calcula el bit de paritat del flux SPI de 16 bits.

/*!
**************************************************** ****************************
* Llegeix les dades del xip mitjançant la interfície SPI
*
* Aquesta funció s'utilitza per llegir el valor còrdic dels xips que admeten SPI
* interfície.
**************************************************** ****************************
*/
#define SPI_CMD_READ 0x4000 /*!< indicador que indica un intent de lectura quan s'utilitza la interfície SPI */
#define SPI_REG_AGC 0x3ffd /*!< registre agc quan s'utilitza SPI */
#define SPI_REG_MAG 0x3ffe /*!< registre de magnitud quan s'utilitza SPI */
#define SPI_REG_DATA 0x3fff /*!< registre de dades quan s'utilitza SPI */
#define SPI_REG_CLRERR 0x1 /*!< esborra el registre d'errors quan s'utilitza SPI */

void spiReadData()
{
u16 dat; // Buffer de dades de 16 bits per a la comunicació SPI
u16 magreg;
angle ushort, agcreg;
ubyte agc;
valor curt;
bit alarmHola, alarmaLo;

/* Envia l'ordre READ AGC. Les dades rebudes s'eliminen: aquestes dades provenen de l'ordre precedent (desconegut)*/
dat = SPI_CMD_READ | SPI_REG_AGC;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));

/ /* Envia l'ordre READ MAG. Les dades rebudes són el valor AGC: aquestes dades provenen de l'ordre precedent (desconegut)*/
dat = SPI_CMD_READ | SPI_REG_MAG;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
magreg = dat;
/* Envia l'ordre READ ANGLE. Les dades rebudes són el valor MAG, de l'ordre precedent */
dat = SPI_CMD_READ | SPI_REG_DATA;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
agcreg = dat;
/* Envia l'ordre NOP. Les dades rebudes són el valor ANGLE, de l'ordre precedent */
dat = 0x0000; // Ordre NOP.
spiTransfer((u8*)&dat, sizeof(u16));
angle = dat >> 2;
}
if ((dat i 0x4000) || (agcreg i 0x4000) || (magreg i 0x4000))
{
/* Marcador d'error establert: cal restablir-lo */
dat = SPI_CMD_READ | SPI_REG_CLRERR;
dat |= spiCalcEvenParity(dat)<<15;
spiTransfer((u8*)&dat, sizeof(u16));
}
altra cosa
{
agc = agcreg i 0xff // valor AGC (0..255)
valor = dat & (16384 – 31 – 1); // Valor de l'angle (0... 16384 passos)
angle = (valor * 360) / 16384 // Valor de l'angle en grau
(0..359.9°)
magnitud = magreg & (16384 – 31 – 1);
alarmLo = (agcreg >> 10) & 0x1;
alarmHi = (agcreg >> 11) & 0x1;
}
}
/*!
**************************************************** ****************************
* Calcula la paritat parell d'un nombre enter sense signe de 16 bits
*
* Aquesta funció l'utilitza la interfície SPI per calcular la paritat parell
* de les dades que s'enviaran via SPI al codificador.
*
* Valor \param[in] : enter sense signe de 16 bits la paritat del qual s'ha de calcular
*
* \return : paritat parell
*
**************************************************** ****************************
*/
static u8 spiCalcEvenParity (valor curt)
{
u8 cnt = 0;
u8 i;
per (i = 0; i < 16; i++)
{
si (valor i 0x1)
{
cnt++;
}
valor >>= 1;
}
retornar cnt & 0x1;
}
/*!
**************************************************** ****************************
* Calcula la paritat parell d'un nombre enter sense signe de 16 bits
*
* Aquesta funció l'utilitza la interfície SPI per calcular la paritat parell
* de les dades que s'enviaran via SPI al codificador.
*
* Valor \param[in] : enter sense signe de 16 bits la paritat del qual s'ha de calcular
*
* \return : paritat parell
*
**************************************************** ****************************
*/
static u8 spiCalcEvenParity (valor curt)
{
u8 cnt = 0;
u8 i;
per (i = 0; i < 16; i++)
{
si (valor i 0x1)
{
cnt++;
}
valor >>= 1;
}
retornar cnt & 0x1;
}

AS5048-AB-Maquinari

Seguint l'esquema i la disposició de la placa adaptadora es pot trobar.

AS5048-AB-1.1 Esquemes

Figura 8: Esquemes de la placa adaptadora AS5048-AB-1.1

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-12

AS5048 – AB – 1.1 Disseny de PCB

Figura 9: Disseny de la placa adaptadora AS5048-AB-1.1

ams-AS5048-Sensor-de-posició-giratori-de-14-bit-amb-angle-digital-i-sortida-PWM-11

Copyright
Copyright ams AG, Tobelbader Strasse 30, 8141 Unterpremstätten, Àustria-Europa. Marques registrades. Tots els drets reservats. El material aquí no es pot reproduir, adaptar, combinar, traduir, emmagatzemar o utilitzar sense el consentiment previ per escrit del propietari dels drets d'autor.

Exempció de responsabilitat
Els dispositius venuts per ams AG estan coberts per les disposicions de garantia i indemnització de patents que apareixen a la seva Condició de venda. ams AG no ofereix cap garantia, expressa, estatutària, implícita o per descripció sobre la informació que s'estableix aquí. ams AG es reserva el dret de canviar les especificacions i els preus en qualsevol moment i sense previ avís. Per tant, abans de dissenyar aquest producte en un sistema, cal consultar amb ams AG la informació actual. Aquest producte està pensat per al seu ús en aplicacions comercials. Les aplicacions que requereixen un rang de temperatures estès, requisits ambientals inusuals o aplicacions d'alta fiabilitat, com ara equips militars, de suport vital mèdic o equips de sosteniment vital, no es recomanen específicament sense un processament addicional per part d'ams AG per a cada aplicació. Aquest producte és proporcionat per ams "TAL CUAL" i qualsevol expressa o implícita
Les garanties, incloses, entre d'altres, les garanties implícites de comerciabilitat i adequació per a un propòsit particular, no es descarten.
ams AG no serà responsable davant el destinatari o cap tercer per danys, inclosos, entre d'altres, danys personals, danys a la propietat, pèrdua de beneficis, pèrdua d'ús, interrupció del negoci o danys indirectes, especials, incidentals o conseqüents, de qualsevol tipus, en relació amb o derivada del subministrament, rendiment o ús de les dades tècniques aquí. Cap obligació o responsabilitat cap al destinatari o cap tercer no sorgirà ni sortirà de la prestació de serveis tècnics o d'altres tipus d'ams AG.

Informació de contacte
Seu
ams AG
Tobelbader Strasse 30
8141 Unterpremstaetten
Àustria
T. +43 (0) 3136 500 0
Per a les oficines de vendes, distribuïdors i representants, visiteu:
http://www.ams.com/contact

www.ams.com

Descarregat de Arrow.com.

Documents/Recursos

Sensor de posició rotatiu ams AS5048 de 14 bits amb angle digital i sortida PWM [pdfManual d'usuari
AS5048-AB-1.1, AS5048 Sensor de posició rotatiu de 14 bits amb angle digital i sortida PWM, AS5048, Sensor de posició rotatiu de 14 bits amb angle digital i sortida PWM, AS5048 Sensor de posició rotatiu de 14 bits, Sensor de posició rotatiu, sensor de posició, sensor

Referències

Deixa un comentari

La teva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats *