Мазмуну:
- 1 -кадам: Аппараттык камсыздоо талап кылынат:
- 2 -кадам: Аппараттык туташуу:
- 3 -кадам: Кыймылды көзөмөлдөө коду:
- 4 -кадам: Тиркемелер:
Video: MPU-6000 жана Raspberry Pi менен кыймылга көз салуу: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:38
MPU-6000-бул 3-октук акселерометр жана 3-октук гироскоп бар 6-октук кыймылга көз салуу сенсору. Бул сенсор 3 өлчөмдүү тегиздикте объекттин так ордун жана жайгашуусун эффективдүү көзөмөлдөөгө жөндөмдүү. Бул позицияны анализдөөнү талап кылган системаларда колдонулушу мүмкүн.
Бул окуу куралында MPU-6000 сенсор модулунун малина пи менен интерфейси сүрөттөлгөн. Ылдамдануу жана айлануу бурчунун маанилерин окуу үчүн I2c adapter. This I2C адаптери менен малина пи колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.
1 -кадам: Аппараттык камсыздоо талап кылынат:
Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:
1. MPU-6000
2. Raspberry Pi
3. I2C кабели
4. Малина pi үчүн I2C Shield
5. Ethernet кабели
2 -кадам: Аппараттык туташуу:
Аппараттык туташуу бөлүмү негизинен сенсор менен малина пи ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:
MPU-6000 I2C үстүндө иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.
Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.
Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.
Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.
3 -кадам: Кыймылды көзөмөлдөө коду:
Малина пи колдонуунун артыкчылыгы, сенсорго интерфейс үчүн тактаны программалоону каалаган программалоо тилинин ийкемдүүлүгүн камсыз кылат. Бул тактанын артыкчылыгынан пайдаланып, биз бул жерде анын питондогу программалоосун көрсөтүп жатабыз. Python - эң оңой синтаксиси бар эң оңой программалоо тилдеринин бири. MPU-6000 үчүн питон кодун биздин GitHub жамаатынан көчүрүп алса болот Dcube Store
Колдонуучулардын ыңгайлуулугу үчүн, биз бул жерде кодду түшүндүрүп жатабыз:
Коддоонун биринчи кадамы катары, питон болгон учурда SMBus китепканасын жүктөп алуу керек, анткени бул китепкана коддо колдонулган функцияларды колдойт. Ошентип, китепкананы жүктөө үчүн төмөнкү шилтемеге кире аласыз:
pypi.python.org/pypi/smbus-cffi/0.5.1
Жумуш кодун бул жерден көчүрүп алсаңыз болот:
smbus импорттоо
импорттоо убактысы
# Get I2C busbus = 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) Толук масштабдуу диапазон = +/- 16g
bus.write_byte_data (0x68, 0x1C, 0x18)
# MPU-6000 дареги, 0x68 (104)
# Күч башкаруунун регистрин тандоо1, 0x6B (107)
XGyro шилтемеси менен # 0x01 (01) PLL
bus.write_byte_data (0x68, 0x6B, 0x01)
убакыт.уйку (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
маалыматтар = bus.read_i2c_block_data (0x68, 0x3B, 6)
# Маалыматтарды айландыруу
xAccl = маалымат [0] * 256 + маалымат [1]
эгер xAccl> 32767:
xAccl -= 65536
yAccl = маалымат [2] * 256 + маалымат [3]
эгер yAccl> 32767:
yAccl -= 65536
zAccl = маалымат [4] * 256 + маалымат [5]
эгер zAccl> 32767:
zAccl -= 65536
# MPU-6000 дареги, 0x68 (104)
# 0x43 (67), 6 байт маалыматтарын кайра окуу
# Гирометр X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
маалыматтар = bus.read_i2c_block_data (0x68, 0x43, 6)
# Маалыматтарды айландыруу
xGyro = маалымат [0] * 256 + маалымат [1]
эгер xGyro> 32767:
xGyro -= 65536
yGyro = маалымат [2] * 256 + маалымат [3]
эгер yGyro> 32767:
yGyro -= 65536
zGyro = маалымат [4] * 256 + маалымат [5]
эгер zGyro> 32767:
zGyro -= 65536
# Экранга маалыматтарды чыгаруу
басып чыгаруу "Акселерде ылдамдануу: %d" %xAccl
басып чыгаруу "Y огунда ылдамдануу: %d" %yAccl
басып чыгаруу "Z-огунда ылдамдануу: %d" %zAccl
басып чыгаруу "X-Axis of Rotation: %d" %xGyro
басып чыгаруу "Y-Axis Rotation: %d" %yGyro
басып чыгаруу "Z-айлануу огу: %d" %zGyro
Код төмөнкү буйруктун жардамы менен аткарылат:
$> python MPU-6000.py gt; python MPU-6000.py
Сенсордун чыгышы колдонуучунун маалымдамасы үчүн жогорудагы сүрөттө көрсөтүлгөн.
4 -кадам: Тиркемелер:
MPU-6000-бул смартфондордун жана планшеттердин кыймыл интерфейсинде колдонмосун тапкан кыймылга көз салуу сенсору. Смартфондордо бул сенсорлор тиркемелерди жана телефонду көзөмөлдөө, жакшыртылган оюн, кеңейтилген реалдуулук, панорамалык фото тартуу жана көрүү, жөө жана транспорт навигациясы сыяктуу тиркемелерде колдонулушу мүмкүн. MotionTracking технологиясы телефондорду жана планшеттерди ден-соолукка жана фитнеске мониторингден баштап жайгашкан кызматтарга чейинки колдонмолордо колдонула турган күчтүү 3D акылдуу түзмөктөргө айландыра алат.
Сунушталууда:
Өзүңүздүн SMS SMS Коопсуздук Көз салуу системаңызды жасаңыз: 5 кадам (Сүрөттөр менен)
Өзүңүздүн GPS SMS Көзөмөл системаңызды түзүңүз: Бул долбоордо мен сизге SIM5320 3G модулун Arduino менен пьезоэлектрдик өзгөрткүчтү шок сенсору катары кантип айкалыштырууну көрсөтөм, ал сизге коопсуздукту көзөмөлдөө системасын түзүү үчүн SMS аркылуу баалуу унаа
QeMotion - Ар бир гарнитура үчүн кыймылга көз салуу !: 5 кадам (сүрөттөр менен)
QeMotion - Ар бир гарнитура үчүн кыймылга көз салуу! Бул сиздин башыңыздын кыймылын көзөмөлдөө (же гарнитураны эске алуу менен) жана айрым кыймылдар үчүн клавиатура басуусун иштетүү менен иштейт. Ошентип, сиздин комп
Гигант LED - Адам Саважга көз салуу: 13 кадам (Сүрөттөр менен)
Giant LED - Адам Саважга көз салуу: Бул жерде сиз Twitter, YouTube жана Twitch эскертүү лампасы катары иштөө үчүн кайрадан арналган Гигант LEDдин котормосун таба аласыз. Мен үчүн анын негизги максаты - Адам Саваждын жана сыналган команданын твиттери, видеолору же агымдары болгондо эскертүү берүү жана
Ротациялык Ок менен Объект Көз салуу Камерасынын Слайдери. 3D Printed & RoboClaw DC Motor Controller & Arduino боюнча курулган: 5 кадам (Сүрөттөр менен)
Ротациялык Ок менен Объект Көз салуу Камерасынын Слайдери. 3D Printed & RoboClaw DC Motor Controller & Arduino боюнча курулган: Бул долбоор менин DIY менен видео тартууга болгон кызыгуумду айкалыштыра баштагандан бери менин эң жакшы көргөн долбоорлорумдун бири болуп калды. Мен ар дайым карап турчумун жана камераны экранды көздөй жылдыруу үчүн кинолорго окшоштургум келет
Бетке көз салуу жана жылмаюу Хэллоуин роботторун аныктоо: 8 кадам (сүрөттөр менен)
Бетке көз салуу жана жылмаюу Хэллоуин роботторун аныктоо: Хэллоуин келе жатат! Биз сонун нерсе курууну чечтик. Ghosty жана Skully роботтору менен таанышыңыз. Алар сиздин жүзүңүздү ээрчип кете алышат жана алар сиз менен күлүп күлүүңүздү билишет! Бул долбоор iRobbie тиркемесин колдонуунун дагы бир мисалы болуп саналат