ams-ЛОГО

ams AS5048 14-битов ротационен сензор за позиция с цифров ъгъл и PWM изход

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

Информация за продукта

AS5048 е 14-битов ротационен сензор за позиция с цифров ъгъл (интерфейс) и PWM изход. Той е проектиран от ams OSRAM Group и е публикуван от Arrow.com. Сензорът се използва за измерване на позицията на въртящ се обект и осигурява точни измервания на ъгли.
Адаптерната платка AS5048 е схема, която позволява лесно тестване и оценка на сензора AS5048 без необходимост от изграждане на отделно тестово приспособление или печатна платка. Адаптерната платка може да бъде прикрепена към микроконтролер или AS5048-Demoboard като външно устройство.

Описание на дъската
Адаптерната платка AS5048 разполага с интерфейс тип A (SPI) или B (I2C), 4 x 2.6 mm монтажни отвора и конектор P1. Той осигурява удобен начин за свързване и взаимодействие със сензора AS5048.

Инструкции за монтаж

За да монтирате адаптерната платка AS5048, изпълнете следните стъпки:

  1. Поставете диаметрален магнит над или под сензора за позиция AS5048.
  2. Уверете се, че магнитът е центриран в средата на опаковката с толеранс от 0.5 мм.
  3. Поддържайте въздушна междина между магнита и корпуса на енкодера в диапазона от 0.5 mm до 2 mm.
  4. Използвайте неферомагнитен материал като месинг, мед, алуминий или неръждаема стомана за държача на магнита.

Следването на тези инструкции ще гарантира правилното функциониране на адаптерната платка AS5048 и точни измервания на позицията.

История на ревизиите

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

Общо описание

AS5048 е лесен за използване сензор за ъглова позиция от 360° с 14-битов изход с висока разделителна способност. За измерване на ъгъла е необходим само обикновен двуполюсен магнит, въртящ се над центъра на чипа.
Магнитът може да бъде поставен над или под IC. Това е показано на фигура 1.

Фигура 1: Сензор за магнитно положение AS5048 + магнит

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

Адаптерната платка AS5048
Адаптерната платка AS5048 е проста схема, позволяваща тестване и оценка на сензора за магнитно положение AS5048 бързо, без изграждане на тестово приспособление или печатна платка.

Описание на платката
Адаптерната платка AS5048 е проста схема, позволяваща бързо тестване и оценка на ротационния енкодер AS5048 без изграждане на тестово приспособление или печатна платка.
Платката може да бъде прикрепена към микроконтролер или към AS5048-Demoboard като външно устройство.

Фигура 2: Адаптерна платка AS5048

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

Монтиране на адаптерната платка AS5048
Диаметърен магнит трябва да бъде поставен под сензора за позиция AS5048 и трябва да бъде центриран в средата на опаковката с толеранс от 0.5 mm.
Въздушната междина между магнита и корпуса на енкодера трябва да се поддържа в диапазона 0.5 mm~2 mm. Магнитният държач не трябва да е феромагнитен. Материали като месинг, мед, алуминий, неръждаема стомана са най-добрият избор за направата на тази част.

Фигура 3: AS5048 – AB – монтаж и размери

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

AS5048 адаптерна платка и разводка

Фигура 4: Конектори на адаптерна платка AS5048 и разводка на енкодера

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

Таблица 1: Описание на щифта

Табла с щифтове Pin# AS5 048 Табло за символи  

Описание

P1 – 1 13 GND Захранване
P1 – 2 3 A2/MISO SPI главен вход/подчинен изход; споделен с пин 2 за избор на I2C адрес
P1 – 3 4 A1/MOSI SPI master out/slav in; споделен с пин 2 за избор на I1C адрес
P1 – 4 2 SCL/SCK SPI часовников вход; споделен с I2C часовников вход
P1 – 5 1 SDA/CSn Активен избор на SPI чип нисък; споделен с I2C щифт за данни
P1 – 6 14 ШИМ Изход за широчинно-импулсна модулация
 

P1 – 7

 

12

 

3.3V

3V-Изход за регулатор; вътрешно регулиран от VDD. Свържете се към VDD за 3V захранване voltage
P1 – 8 11 5V Обем на доставкитеtage

Операционни случаи

Най-пълното и точно решение за MCU за четене на ъгъла на магнит е SPI интерфейсът.

SPI режим на едно устройство, еднопосочен – 3 проводник
AS5048-AB може да бъде директно свързан към индустриален стандартен SPI порт на микроконтролер. Минималните изисквания за връзка за еднопосочна комуникация (ъгъл + четене на алармени стойности) между микроконтролера и AS5048 са MISO, SCK, SS/.
Ъгълът ще се чете при всеки 16-битов SPI трансфер. Вижте таблицата с регистри на лист с данни AS5048, регистър 3FFFh.

Фигура 5: Използване на SPI интерфейс еднопосочен с микроконтролер

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

SPI режим на едно устройство, двупосочен – 4 проводник
Ако трябва да се прочетат други регистри, освен само ъглови стойности, или за да се запишат регистри в AS5048, сигналът MOSI е необходим.

Фигура 6: Използване на SPI интерфейс двупосочен с микроконтролер

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

Много устройства SPI Дейзи верижен режим
AS5048 може да бъде последователно свързан, като се използват 4 проводника само за SPI комуникация.
В тази конфигурация с nx енкодери последователността ще бъде обработена както следва:

  • MCU задава SS/ = 0
  • MCU премества nx 16-бита (напр. READ команда FFFFh) през веригата
  • MCU задава SS/=1
    В този момент всички nx енкодери са получили командата READ FFFFh.
  • MCU задава SS/=0
  • MCU премества nx 16-bit (напр. NOP команда 0000h)
  • MCU задава SS/=1
    В този момент nx 16-битовите, получени на MISO, са nx ъглови стойности.

Фигура 7: Множество устройства в режим на последователна верига

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

Кодиране на фърмуера

Следният изходен код пасва на приложението 4-Wire
Функцията void spiReadData() чете/записва 4 стойности от AS5048

  • Изпратете команда READ AGC / Неизвестна стойност за получаване
  • Изпращане на команда READ MAG / Получаване на стойност AGC
  • Изпращане на команда READ Angle / Receive value MAG
  • Изпращане на команда NOP (без операция) / Получаване на стойност ANGLE

Ако е необходим само READ ANGLE в цикъл, процедурата може да бъде намалена до един ред:

  • Изпратете команда READ Angle / Ъгъл на получаване на стойност
    Функцията static u8 spiCalcEvenParity(ushort value) не е задължителна, тя изчислява бита за паритет на 16-битовия SPI поток.

/*!
************************************************ ***************************
* Чете данни на чипа чрез SPI интерфейс
*
* Тази функция се използва за четене на Cordic стойност от чипове, поддържащи SPI
* интерфейс.
************************************************ ***************************
*/
#define SPI_CMD_READ 0x4000 /*!< флаг, показващ опит за четене при използване на SPI интерфейс */
#define SPI_REG_AGC 0x3ffd /*!< agc регистър при използване на SPI */
#define SPI_REG_MAG 0x3ffe /*!< регистър на величината при използване на SPI */
#define SPI_REG_DATA 0x3fff /*!< регистър на данните при използване на SPI */
#define SPI_REG_CLRERR 0x1 /*!< изчистване на регистъра за грешки при използване на SPI */

void spiReadData()
{
u16 dat; // 16-битов буфер за данни за SPI комуникация
u16 магрег;
uкъс ъгъл, agcreg;
ubyte agc;
uкъса стойност;
бит alarmHi, alarmLo;

/* Изпратете READ AGC команда. Получените данни се изхвърлят: тези данни идват от предходната команда (неизвестна)*/
dat = SPI_CMD_READ | SPI_REG_AGC;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));

/ /* Изпратете команда READ MAG. Получените данни са стойността на AGC: тези данни идват от предходната команда (неизвестна)*/
dat = SPI_CMD_READ | SPI_REG_MAG;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
magreg = dat;
/* Изпратете командата READ ANGLE. Получените данни са MAG стойността от предходната команда */
dat = SPI_CMD_READ | SPI_REG_DATA;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
agcreg = dat;
/* Изпращане на NOP команда. Получените данни са стойността на ANGLE от предходната команда */
dat = 0x0000; // NOP команда.
spiTransfer((u8*)&dat, sizeof(u16));
ъгъл = dat >> 2;
}
if ((dat & 0x4000) || (agcreg & 0x4000) || (magreg & 0x4000))
{
/* зададен флаг за грешка – трябва да го нулирам */
dat = SPI_CMD_READ | SPI_REG_CLRERR;
dat |= spiCalcEvenParity(dat)<<15;
spiTransfer((u8*)&dat, sizeof(u16));
}
друго
{
agc = agcreg & 0xff // AGC стойност (0..255)
стойност = dat & (16384 – 31 – 1); // Стойност на ъгъла (0.. 16384 стъпки)
ъгъл = (стойност * 360) / 16384 // Стойност на ъгъла в градуси
(0..359.9°)
магнитуд = magreg & (16384 – 31 – 1);
alarmLo = (agcreg >> 10) & 0x1;
alarmHi = (agcreg >> 11) & 0x1;
}
}
/*!
************************************************ ***************************
* Изчисляване на четен паритет на 16-битово цяло число без знак
*
* Тази функция се използва от SPI интерфейса за изчисляване на четния паритет
* на данните, които ще бъдат изпратени чрез SPI към енкодера.
*
* \param[in] стойност: 16-битово цяло число без знак, чийто паритет ще бъде изчислен
*
* \return : Четен паритет
*
************************************************ ***************************
*/
статичен u8 spiCalcEvenParity(uкратка стойност)
{
u8 cnt = 0;
u8 i;
за (i = 0; i < 16; i++)
{
ако (стойност & 0x1)
{
cnt++;
}
стойност >>= 1;
}
връщане cnt & 0x1;
}
/*!
************************************************ ***************************
* Изчисляване на четен паритет на 16-битово цяло число без знак
*
* Тази функция се използва от SPI интерфейса за изчисляване на четния паритет
* на данните, които ще бъдат изпратени чрез SPI към енкодера.
*
* \param[in] стойност: 16-битово цяло число без знак, чийто паритет ще бъде изчислен
*
* \return : Четен паритет
*
************************************************ ***************************
*/
статичен u8 spiCalcEvenParity(uкратка стойност)
{
u8 cnt = 0;
u8 i;
за (i = 0; i < 16; i++)
{
ако (стойност & 0x1)
{
cnt++;
}
стойност >>= 1;
}
връщане cnt & 0x1;
}

AS5048-AB-Хардуер

Можете да намерите следната схема и оформление на адаптерната платка.

AS5048-AB-1.1 Схеми

Фигура 8: Схеми на адаптерна платка AS5048-AB-1.1

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

AS5048 – AB – 1.1 PCB оформление

Фигура 9: Оформление на адаптерна платка AS5048-AB-1.1

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

Авторско право
Авторско право ams AG, Tobelbader Strasse 30, 8141 Unterpremstätten, Австрия-Европа. Регистрирани търговски марки. Всички права запазени. Материалът тук не може да бъде възпроизвеждан, адаптиран, обединяван, превеждан, съхраняван или използван без предварителното писмено съгласие на собственика на авторските права.

Отказ от отговорност
Устройствата, продавани от ams AG, са обхванати от разпоредбите за гаранция и патентно обезщетение, посочени в условията за продажба. ams AG не дава никаква гаранция, изрична, законова, подразбираща се или чрез описание по отношение на информацията, изложена тук. ams AG си запазва правото да променя спецификациите и цените по всяко време и без предизвестие. Следователно, преди да проектирате този продукт в система, е необходимо да се консултирате с ams AG за актуална информация. Този продукт е предназначен за използване в търговски приложения. Приложения, изискващи разширен температурен диапазон, необичайни изисквания за околната среда или приложения с висока надеждност, като военно, медицинско животоподдържащо или животоподдържащо оборудване, специално не се препоръчват без допълнителна обработка от ams AG за всяко приложение. Този продукт се предоставя от ams „КАКТО Е“ и всички изрични или подразбиращи се
гаранции, включително, но не само подразбиращите се гаранции за продаваемост и годност за определена цел, се отхвърлят.
ams AG не носи отговорност пред получателя или трета страна за каквито и да е щети, включително, но не само, телесна повреда, имуществени щети, пропуснати ползи, загуба на употреба, прекъсване на дейността или непреки, специални, случайни или последващи щети, на всякакви вид, във връзка с или произтичащи от предоставянето, изпълнението или използването на техническите данни тук. Никакво задължение или отговорност към получателя или трета страна не възниква или произтича от предоставянето на технически или други услуги от ams AG.

Информация за контакт
Главен офис
ams AG
Тобелбадер щрасе 30
8141 Unterpremstaetten
Австрия
T. +43 (0) 3136 500 0
За търговски офиси, дистрибутори и представители, моля посетете:
http://www.ams.com/contact

www.ams.com

Изтеглено от Arrow.com.

Документи / Ресурси

ams AS5048 14-битов ротационен сензор за позиция с цифров ъгъл и PWM изход [pdf] Ръководство за потребителя
AS5048-AB-1.1, AS5048 14-битов ротационен сензор за позиция с цифров ъгъл и PWM изход, AS5048, 14-битов ротационен сензор за позиция с цифров ъгъл и PWM изход, AS5048 14-битов ротационен сензор за позиция, ротационен сензор за позиция, сензор за позиция, Сензор

Референции

Оставете коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са маркирани *