ams-LOGO

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 ללא צורך בבניית מתקן בדיקה נפרד או PCB. ניתן לחבר את לוח המתאם למיקרו-בקר או ל-AS5048-Demoboard כהתקן חיצוני.

תיאור לוח
לוח המתאם AS5048 כולל ממשק מסוג A (SPI) או B (I2C), 4 חורי הרכבה בגודל 2.6 מ"מ ומחבר P1. הוא מספק דרך נוחה להתחבר ואינטראקציה עם חיישן AS5048.

הוראות הרכבה

כדי להרכיב את לוח המתאם AS5048, בצע את השלבים הבאים:

  1. הנח מגנט דימטרי מעל או מתחת לחיישן המיקום AS5048.
  2. ודא שהמגנט מרוכז באמצע האריזה עם סובלנות של 0.5 מ"מ.
  3. שמור על מרווח אוויר בין המגנט למארז המקודד בטווח של 0.5 מ"מ עד 2 מ"מ.
  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 במהירות מבלי לבנות מתקן בדיקה או PCB.

תיאור לוח
לוח המתאם AS5048 הוא מעגל פשוט המאפשר בדיקה והערכה של המקודד הסיבובי AS5048 במהירות מבלי לבנות מתקן בדיקה או PCB.
ניתן לחבר את ה-PCB למיקרו-בקר או ל-AS5048- Demoboard כהתקן חיצוני.

איור 2: לוח מתאם AS5048

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

הרכבת לוח המתאם AS5048
מגנט קוטר חייב להיות ממוקם מעל מתחת לחיישן המיקום AS5048, ויש לרכז אותו באמצע האריזה עם סובלנות של 0.5 מ"מ.
יש לשמור על מרווח האוויר בין המגנט למארז המקודד בטווח של 0.5 מ"מ ~ 2 מ"מ. מחזיק המגנט לא חייב להיות פרומגנטי. חומרים כמו פליז, נחושת, אלומיניום, נירוסטה הם הבחירות הטובות ביותר לייצור חלק זה.

איור 3: AS5048 – AB – הרכבה ומימד

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

לוח מתאם AS5048 ו-pinout

איור 4: מחברי לוח מתאם AS5048 ו-pinout מקודד

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 master in/slave out; משותף עם פין 2 לבחירת כתובת I2C
P1 – 3 4 A1/MOSI SPI מאסטר אאוט/עבד פנימה; משותף עם פין 2 לבחירת כתובת I1C
P1 – 4 2 SCL/SCK קלט שעון SPI; משותף עם כניסת שעון I2C
P1 – 5 1 SDA/CSn SPI בחירה-active low; משותף עם סיכת נתונים I2C
P1 – 6 14 PWM פלט אפנון רוחב דופק
 

P1 – 7

 

12

 

3.3V

פלט 3V-רגולטור; מוסדר פנימי מ-VDD. התחבר ל-VDD עבור כרך אספקת 3Vtage
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 Daisy chain
ניתן לשרשר את ה-AS5048 באמצעות 4 חוטים בלבד לתקשורת SPI.
בתצורה זו עם מקודדי nx, הרצף יעובד באופן הבא:

  • MCU קובע SS/ = 0
  • MCU מעביר nx 16-bit (למשל פקודת READ FFFFh) דרך השרשרת
  • MCU ערכות SS/=1
    בשלב זה כל המקודדים nx קיבלו את פקודת READ FFFFh.
  • MCU ערכות SS/=0
  • MCU מעביר nx 16 סיביות (למשל פקודת NOP 0000h)
  • MCU ערכות SS/=1
    בשלב זה ה-nx 16-bit שהתקבלו ב-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 / ערך קבלת MAG
  • שלח פקודה NOP (ללא פעולה) / קבלת ערך ANGLE

אם יש צורך ב-READ ANGLE בלבד בלולאה, ניתן לצמצם את ההליך לשורה אחת:

  • שלח פקודה READ Angle / קבלת ערך זווית
    הפונקציה static u8 spiCalcEvenParity(ערך short) היא אופציונלית, היא מחשבת את סיביות הזוגיות של זרם SPI של 16 סיביות.

/*!
************************************************** ******************************
* קורא נתוני שבב באמצעות ממשק SPI
*
* פונקציה זו משמשת לקריאת ערך קורדי משבבים התומכים ב-SPI
* ממשק.
************************************************** ******************************
*/
#define SPI_CMD_READ 0x4000 /*!< דגל המציין ניסיון קריאה בעת שימוש בממשק SPI */
#define SPI_REG_AGC 0x3ffd /*!< agc register בעת שימוש ב-SPI */
#define SPI_REG_MAG 0x3ffe /*!< אוגר גודל בעת שימוש ב-SPI */
#define SPI_REG_DATA 0x3fff /*!< אוגר נתונים בעת שימוש ב-SPI */
#define SPI_REG_CLRERR 0x1 /*!< נקה את רישום השגיאות בעת שימוש ב-SPI */

void spiReadData()
{
u16 דאט; // מאגר נתונים של 16 סיביות לתקשורת SPI
u16 מגרג;
ushort angle, agcreg;
ubyte agc;
ערך ushort;
קצת אזעקהי, 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));
angle = 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)
value = dat & (16384 – 31 – 1); // ערך זווית (0.. 16384 צעדים)
זווית = (ערך * 360) / 16384 // ערך הזווית במעלה
(0..359.9°)
magnitude = magreg & (16384 – 31 – 1);
alarmLo = (agcreg >> 10) & 0x1;
alarmHi = (agcreg >> 11) & 0x1;
}
}
/*!
************************************************** ******************************
* חשב זוגיות זוגית של מספר שלם ללא סימן של 16 סיביות
*
* פונקציה זו משמשת את ממשק SPI כדי לחשב את הזוגיות הזוגית
* של הנתונים שיישלחו באמצעות SPI למקודד.
*
* ערך \param[in] : מספר שלם ללא סימן של 16 סיביות שהזוגיות שלו תחושב
*
* \return : זוגיות שווה
*
************************************************** ******************************
*/
סטטי u8 spiCalcEvenParity(ערך קצר)
{
u8 cnt = 0;
u8 i;
עבור (i = 0; i < 16; i++)
{
if (ערך & 0x1)
{
cnt++;
}
ערך >>= 1;
}
החזר cnt & 0x1;
}
/*!
************************************************** ******************************
* חשב זוגיות זוגית של מספר שלם ללא סימן של 16 סיביות
*
* פונקציה זו משמשת את ממשק SPI כדי לחשב את הזוגיות הזוגית
* של הנתונים שיישלחו באמצעות SPI למקודד.
*
* ערך \param[in] : מספר שלם ללא סימן של 16 סיביות שהזוגיות שלו תחושב
*
* \return : זוגיות שווה
*
************************************************** ******************************
*/
סטטי u8 spiCalcEvenParity(ערך קצר)
{
u8 cnt = 0;
u8 i;
עבור (i = 0; i < 16; i++)
{
if (ערך & 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

זְכוּת יְוֹצרִים
Copyright ams AG, Tobelbader Strasse 30, 8141 Unterpremstätten, אוסטריה-אירופה. סימני מסחר רשומים. כל הזכויות שמורות. אין לשכפל, להתאים, למזג, לתרגם, לאחסן או להשתמש בחומר זה ללא הסכמה מראש ובכתב של בעל זכויות היוצרים.

כתב ויתור
מכשירים הנמכרים על ידי ams AG מכוסים על ידי הוראות האחריות והשיפוי על פטנטים המופיעים בתקופת המכירה שלה. ams AG אינה נותנת אחריות, מפורשת, סטטוטורית, משתמעת או על ידי תיאור לגבי המידע המפורט כאן. ams AG שומרת לעצמה את הזכות לשנות מפרטים ומחירים בכל עת וללא הודעה מוקדמת. לכן, לפני עיצוב מוצר זה למערכת, יש צורך לבדוק עם ams AG מידע עדכני. מוצר זה מיועד לשימוש ביישומים מסחריים. יישומים הדורשים טווח טמפרטורות מורחב, דרישות סביבתיות חריגות או יישומים בעלי אמינות גבוהה, כגון ציוד צבאי, רפואי תומך חיים או מקיים חיים אינם מומלצים במיוחד ללא עיבוד נוסף על ידי ams AG עבור כל יישום. מוצר זה מסופק על ידי ams "AS IS" וכל מפורש או משתמע
אחריות, לרבות, אך לא רק, האחריות המשתמעת של סחירות והתאמה למטרה מסוימת, נדחות.
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 סיביות, חיישן מיקום סיבובי, חיישן מיקום, חיישן

הפניות

השאר תגובה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *