Ams AS5048 Sensorê Pozîsyona Rotary 14-bit bi Goşeya Dîjîtal û Derketina PWM
Agahiya hilberê
AS5048 senzorek pozîsyona zivirî ya 14-bit e ku bi goşeya dîjîtal (navber) û derketina PWM-ê ye. Ew ji hêla ams OSRAM Group ve hatî sêwirandin û ji hêla hatî weşandin Arrow.com. Sensor ji bo pîvandina pozîsyona tiştek zivirî tê bikar anîn û pîvandinên goşeyê rast peyda dike.
Pîvana adapterê AS5048 qonaxek e ku dihêle ceribandin û nirxandina senzora AS5048 hêsan bêyî hewcedariya avakirina sazgehek ceribandinê an PCB-ya cihêreng bike. Panela adapterê dikare wekî amûrek derveyî bi mîkrokontrollerek an AS5048-Demoboard ve were girêdan.
Danasîna panelê
AS5048 Adapterboard celebek navbeynkar A (SPI) an B (I2C), 4 x 2.6 kunên lêdanê, û girêdanek P1 vedihewîne. Ew rêgezek hêsan peyda dike ku bi senzora AS5048 ve were girêdan û têkilî daynin.
Talîmatên Mounting
Ji bo siwarkirina panela adapterê AS5048, van gavan bişopînin:
- Li ser an binê sensora pozîsyona AS5048 magnetek diametrî bixin.
- Piştrast bikin ku magnet li ser nîvê pakêtê bi toleransek 0.5 mm navendî ye.
- Di navbera 0.5 mm heta 2 mm de valahiya hewayê ya di navbera magnet û qalikê şîfrekerê de biparêzin.
- Ji bo xwediyê magnetê materyalek ne-ferromagnetîkî wekî tûnc, sifir, aluminium, an pola zengarnegir bikar bînin.
Li dû van rêwerzan dê xebata rast a panela adapterê AS5048 û pîvandinên pozîsyona rast peyda bike.
Dîroka Revision
Danasîna Giştî
AS5048 senzorek pozîsyona goşeya 360° ya hêsan e ku bi hilberek 14-bit vebirrînek bilind e. Ji bo pîvandina goşeyê, tenê magnetek du-polek hêsan, ku li ser navenda çîpê dizivire, hewce ye.
Dibe ku magnet li jor an li jêr IC-ê were danîn. Ev di Xiflteya 1 de tê nîşandan.
Figure 1: Sensor Position Magnetic AS5048 + Magnet
Lijneya adapterê AS5048
Tabloya adapterê AS5048 dorhêlek hêsan e ku destûrê dide ceribandin û nirxandina senzora pozîsyona magnetîkî ya AS5048 zû bêyî avakirina amûrek ceribandinê an PCB.
Danasîna panelê
AS5048 Adapterboard dorhêlek hêsan e ku destûrê dide ceribandin û nirxandina şîfreya zivirî ya AS5048 zû bêyî avakirina amûrek ceribandinê an PCB.
PCB dikare bi mîkrokontrollerek an jî bi AS5048-Demoboard wekî amûrek derveyî ve were girêdan.
jimar 2: AS5048 Adapterboard
Mountkirina panela adapterê AS5048
Pêdivî ye ku magnetek diametrîk li binê senzora pozîsyona AS5048 were danîn, û divê li nîvê pakêtê bi toleransek 0.5 mm were navend kirin.
Pêdivî ye ku valahiya hewayê di navbera magnet û qalikê şîfrekerê de di navbera 0.5 mm~2 mm de were domandin. Pêdivî ye ku xwedan magnetîkî ne ferromagnetîk be. Materyalên wekî tûnc, sifir, aluminium, polayê zengarnegir ji bo çêkirina vê beşê vebijarkên çêtirîn in.
Wêne 3: AS5048 - AB - lêkirin û pîvan
Lijneya adapterê AS5048 û pinout
Wêne 4: Girêdanên panela adapterê AS5048 û pinouta şîfrekerê
Tablo 1: Danasîna pin
Pin# Board | Pin# AS5 048 | Symbol Board |
Terîf |
P1 - 1 | 13 | GND | Erdê dabînkirinê |
P1 - 2 | 3 | A2/MISO | SPI master di / xulam derket; bi pin 2 ya hilbijartina navnîşana I2C re parve kirin |
P1 - 3 | 4 | A1/MOSI | SPI master derve / xulam tê de; bi pin 2 bijartina navnîşana I1C re parve kirin |
P1 - 4 | 2 | SCL/SCK | têketina demjimêra SPI; bi têketina demjimêra I2C re tê parve kirin |
P1 - 5 | 1 | SDA/CSn | SPI chip hilbijêrî-çalak kêm; bi pînê daneya I2C re parve kirin |
P1 - 6 | 14 | PWM | Hilberîna modulasyona firehiya pêlê |
P1 - 7 |
12 |
3.3V |
Derketina 3V-Rregulator; navxweyî ji VDD ve hatî tertîb kirin. Ji bo voltaya dabînkirina 3V bi VDD-ê ve girêdintage |
P1 - 8 | 11 | 5V | Supply voltage |
Rewşên operasyonê
Çareseriya herî bêkêmasî û rast ji bo MCU ku goşeya magnetê bixwîne pêwendiya SPI ye.
Moda SPI ya Yek Amûr, yekalî - 3 têl
AS5048-AB dikare rasterast bi portek standard SPI ya mîkrokontroller ve were girêdan. Pêdiviya herî kêm a pêwendiyê ji bo pêwendiya yekalî (goşe + xwendina nirxên alarmê) di navbera mîkrokontroller û AS5048 de MISO, SCK, SS/ ne.
Dê goşe di her veguheztina SPI-ya 16-bit de were xwendin. Tabloya qeydkirina pelgeya daneya AS5048 bibînin, 3FFFh qeyd bikin.
jimar 5: Bi mîkrokontrolerek yekalîkera SPI Interface bikar bînin
Moda SPI ya yek amûr, dualî - 4 têl
Ger ji bilî nirxên goşeyê tomarên din bêne xwendin, an jî ji bo ku qeydan di AS5048 de binivîsin, nîşana MOSI hewce ye.
jimar 6: Bikaranîna SPI Interface dualî bi mîkrokontroller
Amûrên pirjimar moda zincîra SPI Daisy
AS5048 dikare bi zincîr ve were girêdan, 4 têl tenê ji bo ragihandina SPI bikar tîne.
Di vê veavakirinê de bi kodkerên nx re, rêz dê wekî jêrîn were pêvajoyê:
- MCU SS/ = 0 destnîşan dike
- MCU nx 16-bit (mînak fermana READ FFFFh) di nav zincîrê de diguhezîne
- MCU SS/=1 saz dike
Di wê gavê de hemî enkoderên nx fermana READ FFFFh wergirtine. - MCU SS/=0 saz dike
- MCU nx 16-bit diguheze (mînak fermana NOP 0000h)
- MCU SS/=1 saz dike
Di wê nuqteyê de nx 16-bit ku li ser MISO hatî wergirtin nirxên goşeya nx in.
jimar 7: Pir Amûrên di moda zincîra Daisy de
Kodkirina firmware
Koda çavkaniyê ya jêrîn bi serîlêdana 4-Wire re têkildar e
Fonksiyona void spiReadData() 4 nirxan ji AS5048 dixwîne/dinivîse
- Fermana bişîne READ AGC / Nirxa bistînin nenas
- Emrê bişînin READ MAG / Nirxa AGC bistînin
- Fermana bişîne READ Angle / Receive value MAG
- Emrê bişîne NOP (bê operasyon) / Nirx bistînin ANGLE
Ger di hêlekê de tenê READ ANGLE hewce be, prosedur dikare li yek rêzê were kêm kirin:
- Fermana bişîne READ Angle / Receive value Angle
Fonksiyona statîk u8 spiCalcEvenParity (nirxa kurt) vebijarkî ye, ew bit-ya hevsengiya herika SPI-ya 16-bit hesab dike.
/*!
************************************************** **************************
* Daneyên çîpê bi navgîniya SPI-yê dixwîne
*
* Ev fonksiyon ji bo xwendina nirxa kordî ji çîpên ku SPI piştgirî dikin tê bikar anîn
* navbeynkar.
************************************************** **************************
*/
#define SPI_CMD_READ 0x4000 /*!< ala ku hewldana xwendinê destnîşan dike dema ku navbeynkariya SPI bikar tîne */
#define SPI_REG_AGC 0x3ffd /*!< dema ku SPI bikar tînin qeyd bikin */
#define SPI_REG_MAG 0x3ffe /*!< dema ku SPI bikar tînin qeydkirina mezinahî */
#define SPI_REG_DATA 0x3fff /*!< dema ku SPI bikar tînin qeyda daneyê */
#define SPI_REG_CLRERR 0x1 /*!< dema ku SPI bikar tîne qeyda çewtiyê paqij bike */
void spiReadData()
{
u16 dat; // Tampona daneya 16-bit ji bo ragihandina SPI
u16 magreg;
angle ushort, agcreg;
ubyte agc;
nirxa kurt;
bit alarmHi, alarmLo;
/* Fermana READ AGC bişînin. Daneyên ku hatine wergirtin têne avêtin: ev dane ji fermana pêşîn (nenas) tê*/
dat = SPI_CMD_READ | SPI_REG_AGC;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
/ /* Fermana READ MAG bişîne. Daneyên ku hatine wergirtin nirxa AGC ye: ev dane ji fermana pêşîn (nenas)*/
dat = SPI_CMD_READ | SPI_REG_MAG;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
magreg = dat;
/* Fermana READ ANGLE bişînin. Daneyên hatî wergirtin nirxa MAG-ê ye, ji fermana pêşîn */
dat = SPI_CMD_READ | SPI_REG_DATA;
dat |= spiCalcEvenParity(dat) << 15;
spiTransfer((u8*)&dat, sizeof(u16));
agcreg = dat;
/* Fermana NOP bişîne. Daneyên hatî wergirtin nirxa ANGLE ye, ji fermana pêşîn */
dat = 0x0000; // Fermana NOP.
spiTransfer((u8*)&dat, sizeof(u16));
goşe = dat >> 2;
}
eger ((dat & 0x4000) || (agcreg & 0x4000) || (magreg & 0x4000))
{
/* ala çewtiyê destnîşan kir - pêdivî ye ku wê ji nû ve saz bike */
dat = SPI_CMD_READ | SPI_REG_CLRERR;
dat |= spiCalcEvenParity(dat)<<15;
spiTransfer((u8*)&dat, sizeof(u16));
}
wekîdi
{
agc = agcreg & 0xff // Nirxa AGC (0..255)
nirx = dat & (16384 - 31 - 1); // Nirxa goşeyê (0.. 16384 gav)
goşe = (nirx * 360) / 16384 // Nirxa goşeyê bi derece
(0..359.9°)
mezinahî = magreg & (16384 - 31 - 1);
alarmLo = (agcreg >> 10) & 0x1;
alarmHi = (agcreg >> 11) & 0x1;
}
}
/*!
************************************************** **************************
* Tewra hevsengiya 16 bit jimareyek bênîşan bihesibîne
*
* Ev fonksiyon ji hêla navbeynkariya SPI-ê ve tê bikar anîn da ku hevsengiyê hesab bike
* Daneyên ku dê bi SPI ve ji şîfrekerê re werin şandin.
*
* Nirxa \param[di] : 16 bit jimareya bênîşan a ku parîteya wê were hesibandin
*
* \veger : Tewra hevsengî
*
************************************************** **************************
*/
statîk u8 spiCalcEvenParity (nirxa kurt)
{
u8 cnt = 0;
u8 i;
ji bo (i = 0; i < 16; i++)
{
heke (nirx & 0x1)
{
cnt++;
}
nirx >>= 1;
}
vegere cnt & 0x1;
}
/*!
************************************************** **************************
* Tewra hevsengiya 16 bit jimareyek bênîşan bihesibîne
*
* Ev fonksiyon ji hêla navbeynkariya SPI-ê ve tê bikar anîn da ku hevsengiyê hesab bike
* Daneyên ku dê bi SPI ve ji şîfrekerê re werin şandin.
*
* Nirxa \param[di] : 16 bit jimareya bênîşan a ku parîteya wê were hesibandin
*
* \veger : Tewra hevsengî
*
************************************************** **************************
*/
statîk u8 spiCalcEvenParity (nirxa kurt)
{
u8 cnt = 0;
u8 i;
ji bo (i = 0; i < 16; i++)
{
heke (nirx & 0x1)
{
cnt++;
}
nirx >>= 1;
}
vegere cnt & 0x1;
}
AS5048-AB-Hardware
Li dû şematîk û sêwirana Adapterboard dikare were dîtin.
AS5048-AB-1.1 Schematics
jimar 8: AS5048-AB-1.1 şematokên adapterboard
AS5048 - AB - 1.1 layout PCB
jimar 9: Pîvana panela adapterê AS5048-AB-1.1
Copyright
Copyright ams AG, Tobelbader Strasse 30, 8141 Unterpremstätten, Avusturya-Ewropa. Trademarks Registered. Hemû maf parastî ne. Materyalên li vir bêyî destûra nivîskî ya berê ya xwediyê mafê telîfê nabe ku were hilberandin, adaptekirin, hevgirtin, wergerandin, hilanîn an jî bikar anîn.
Disclaimer
Amûrên ku ji hêla ams AG ve têne firotin di bin şertên garantî û tazmînata patentê de ne ku di Termê Firotana wê de xuya dibin. ams AG di derbarê agahdariya ku li vir hatî destnîşan kirin de tu garantî, eşkere, qanûnî, wateyî, an jî bi şirovekirinê nake. ams AG mafê guherandina taybetmendî û bihayan di her dem û bê agahdarî de parastî ye. Ji ber vê yekê, berî sêwirana vê hilberê di pergalê de, pêdivî ye ku ji bo agahdariya heyî bi ams AG re kontrol bikin. Ev hilber ji bo karanîna di sepanên bazirganî de tête armanc kirin. Serlêdanên ku hewceyê rêza germahiya dirêjkirî, hewcedariyên hawîrdorê yên neasayî, an serîlêdanên pêbaweriya bilind, yên wekî leşkerî, piştgirîya jiyanê ya bijîjkî an alavên domdar hewce ne bi taybetî bêyî pêvajoyek zêde ji hêla ams AG ve ji bo her serîlêdanê nayê pêşniyar kirin. Ev Hilber ji hêla ams "WEK IS" û her eşkere an têgihîştî ve tê peyda kirin
garantî, di nav de, lê ne sînorkirî ne, garantiyên berbiçav ên kirrûbirrî û guncandî ji bo armancek taybetî têne red kirin.
ams AG dê ji wergir an kesek sêyemîn re ne berpirsiyar be ji bo zirarê, di nav de lê ne sînorkirî bi zirara kesane, zirara malî, windakirina berjewendiyan, windakirina karanîna, qutkirina karsaziyê an zirarên nerasterast, taybetî, rûdanî an encamgir, yên cûre, bi girêdan an ku ji dakêşandin, performans an karanîna daneyên teknîkî yên li vir derdikevin. Ti berpirsiyarî an berpirsiyarî ji wergir an kesek sêyemîn re nabe ku ji ams AG pêşkêşkirina karûbarên teknîkî an yên din derbikeve.
Agahiyên Têkilî
Sergeh
ams AG
Tobelbader Strasse 30
8141 Unterpremstaetten
Awisturya
T. +43 (0) 3136 500 0
Ji bo Ofîsên Firotanê, Belavkar û Nûneran, ji kerema xwe biçin:
http://www.ams.com/contact
Daxistin ji Arrow.com.
Belge / Çavkanî
![]() |
Ams AS5048 Sensorê Pozîsyona Rotary 14-bit bi Goşeya Dîjîtal û Derketina PWM [pdf] Rêbernameya Bikarhêner AS5048-AB-1.1, AS5048 Sensora Pozisyona Rotary 14-bit bi Goşeya Dîjîtal û Derketina PWM, AS5048, Sensora Helwesta Rotary 14-bit bi Goşeya Dîjîtal û Derketina PWM, AS5048 14-bit Sensora Positiona Rotary, Rotary Sensor, Sensor |