2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-23 14:46
MPU-6000 הוא חיישן מעקב תנועה בעל 6 צירים הכולל מד תאוצה 3 צירים וג'ירוסקופ 3 צירים. חיישן זה מסוגל לבצע מעקב יעיל אחר המיקום והמיקום המדויק של אובייקט במישור התלת ממדי. זה יכול להיות מועסק במערכות הדורשות ניתוח מיקום בדיוק הכי גבוה.
במדריך זה הודגם הממשק של מודול החיישנים MPU-6000 עם פטל פאי. כדי לקרוא את ערכי ההאצה וזווית הסיבוב, השתמשנו בפטל פטל עם מתאם I2c. מתאם I2C זה הופך את החיבור למודול החיישן לפשוט ואמין יותר.
שלב 1: חומרה נדרשת:
החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:
1. MPU-6000
2. פטל פטל
3. כבל I2C
4. מגן I2C לפאי פטל
5. כבל אתרנט
שלב 2: חיבור חומרה:
קטע חיבור החומרה בעצם מסביר את חיבורי החיווט הנדרשים בין החיישן לבין פטל הפטל. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:
ה- MPU-6000 יפעל מעל I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.
הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת.
כל מה שאתה צריך זה ארבעה חוטים! רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.
קשרים אלה מודגמים בתמונות למעלה.
שלב 3: קוד למעקב אחר תנועה:
היתרון בשימוש בפטל פאי הוא בכך שהוא מספק לך את הגמישות של שפת התכנות בה ברצונך לתכנת את הלוח על מנת לחבר אליו את החיישן. תוך ניצול היתרון הזה של הלוח הזה, אנו מדגימים כאן את התכנות שלו בפייתון. פייתון היא אחת משפות התכנות הקלות ביותר עם התחביר הקל ביותר. ניתן להוריד את קוד הפיתון ל- MPU-6000 מקהילת GitHub שלנו, שהיא חנות Dcube
בנוסף לנוחות המשתמשים, אנו מסבירים את הקוד גם כאן:
כשלב הראשון של קידוד, עליך להוריד את ספריית SMBus במקרה של פייתון מכיוון שספרייה זו תומכת בפונקציות המשמשות את הקוד. אז, כדי להוריד את הספרייה אתה יכול לבקר בקישור הבא:
pypi.python.org/pypi/smbus-cffi/0.5.1
תוכל להעתיק את קוד העבודה מכאן גם:
יבוא smbus
זמן יבוא
# קבל אוטובוס I2C = smbus. SMBus (1)
כתובת MPU-6000, 0x68 (104)
# בחר רשם תצורה של גירוסקופ, 0x1B (27)
# 0x18 (24) טווח בקנה מידה מלא = 2000 dps
bus.write_byte_data (0x68, 0x1B, 0x18)
כתובת MPU-6000, 0x68 (104)
# בחר רשם תצורת מד תאוצה, 0x1C (28)
# 0x18 (24) טווח בקנה מידה מלא = +/- 16 גרם
bus.write_byte_data (0x68, 0x1C, 0x18)
כתובת MPU-6000, 0x68 (104)
# בחר רשם ניהול צריכת חשמל 1, 0x6B (107)
# 0x01 (01) PLL עם הפניה xGyro
bus.write_byte_data (0x68, 0x6B, 0x01)
time.sleep (0.8)
כתובת MPU-6000, 0x68 (104)
# קרא נתונים בחזרה מ 0x3B (59), 6 בתים
# מד תאוצה X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x68, 0x3B, 6)
# המרת הנתונים
xAccl = data [0] * 256 + נתונים [1]
אם xAccl> 32767:
xAccl -= 65536
yAccl = data [2] * 256 + נתונים [3]
אם yAccl> 32767:
yAccl -= 65536
zAccl = data [4] * 256 + נתונים [5]
אם zAccl> 32767:
zAccl -= 65536
כתובת MPU-6000, 0x68 (104)
# קרא נתונים בחזרה מ 0x43 (67), 6 בתים
# Gyrometer X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x68, 0x43, 6)
# המרת הנתונים
xGyro = data [0] * 256 + נתונים [1]
אם xGyro> 32767:
xGyro -= 65536
yGyro = data [2] * 256 + נתונים [3]
אם yGyro> 32767:
yGyro -= 65536
zGyro = data [4] * 256 + נתונים [5]
אם zGyro> 32767:
zGyro -= 65536
# פלט נתונים למסך
-"האצה בציר X: %d" %xAccl
-"האצה בציר Y: %d" %yAccl
-"האצה בציר Z: %d" %zAccl
-הדפס "ציר X של סיבוב: %d" %xGyro
-"ציר Y של סיבוב: %d" %yGyro-23.3.1 מ"מ
-"ציר סיבוב Z: %d" %zGyro-23.1.1 מ"מ
הקוד מבוצע באמצעות הפקודה הבאה:
$> python MPU-6000.py gt; python MPU-6000.py
פלט החיישן מוצג בתמונה למעלה לעיון המשתמש.
שלב 4: יישומים:
MPU-6000 הוא חיישן מעקב אחר תנועה, שמוצא את יישומו בממשק התנועה של סמארטפונים וטאבלטים. בסמארטפונים ניתן להשתמש בחיישנים אלה ביישומים כגון פקודות מחווה ליישומים ושליטה טלפונית, משחקים משופרים, מציאות רבודה, צילום וצפייה פנורמיים וניווט להולכי רגל ורכב. טכנולוגיית MotionTracking יכולה להמיר מכשירים וטאבלטים למכשירים חכמים תלת-ממדיים שניתן להשתמש בהם ביישומים החל מניטור בריאות וכושר וכלה בשירותים מבוססי מיקום.
מוּמלָץ:
מערכת מעקב אחר תנועות ראש ל- VR: 8 שלבים
מערכת מעקב אחר תנועות ראש ל- VR: שמי סם KODO, במדריך זה אלמד אותך צעד אחר צעד כיצד להשתמש בחיישני IMU של Arduino לבניית מערכת מעקב ראש ל- VR. בפרויקט זה תצטרך: - תצוגת LCD HDMI : https: //www.amazon.com/Elecrow-Capacitive-interfac
מעקב אחר תנועות עיניים אנושיות: 6 שלבים
מעקב אחר תנועות עיניים אנושיות: פרויקט זה נועד ללכוד את תנועת העין האנושית, ומציג את תנועתו על קבוצה של נורות LED הממוקמות בצורת עין. סוג זה של פרויקט עשוי להיות בעל שימושים רבים בתחום הרובוטיקה ובמיוחד חומא
QeMotion - מעקב אחר תנועות לכל אוזניות !: 5 שלבים (עם תמונות)
QeMotion - מעקב אחר תנועות לכל אוזניות !: סקירה כללית: מכשיר זה מאפשר לך לנצל את תנועת הראש שלך כדי להפעיל אירועים בעצם כל משחק וידאו. הוא פועל על ידי מעקב אחר תנועת הראש שלך (או האוזניות בהתייחס לזה) והפעלת לחיצות מקלדת לתנועות מסוימות. אז המחשב שלך
RC רובר נשלט על ידי תנועות תנועות וג'ויסטיק: 8 שלבים
RC רובר נשלט על ידי מחוות Motions & Joyestick: RC Rover הוא פרויקט רובוטיקה שמטרתו לשפר את השליטה ברוברים באמצעות שימוש בתדר רדיו ואינטראקציה של תנועת רובר עם תנועת יד באמצעות יחידת האינרציה (MPU6050), אך גם שליטה על זה רובר עם ג'ויססטיק. את כל
מעקב אחר תנועות עיניים באמצעות חיישן אינפרא אדום: 5 שלבים
מעקב אחר תנועות עיניים באמצעות חיישן אינפרא אדום: השתמשתי בחיישן אינפרא אדום כדי לחוש תנועות עיניים ולשלוט ב- LED