Оглавление:
- Шаг 1: Требуемое оборудование:
- Шаг 2: Подключение оборудования:
- Шаг 3: Код Python для измерения ускорения:
- Шаг 4: Приложения:
Видео: Измерение ускорения с использованием BMA250 и Raspberry Pi: 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
BMA250 - это небольшой, тонкий, сверхмалопотребляющий 3-осевой акселерометр с высоким разрешением (13 бит) для измерения при нагрузке до ± 16 г. Данные цифрового вывода форматируются как 16-битное дополнение до двоек и доступны через цифровой интерфейс I2C. Он измеряет статическое ускорение свободного падения в приложениях для измерения наклона, а также динамическое ускорение, возникающее в результате движения или удара. Его высокое разрешение (3,9 мг / младший значащий бит) позволяет измерять изменения наклона менее 1,0 °.
В этом уроке мы собираемся измерить ускорение по всем трем перпендикулярным осям, используя BMA250 и Raspberry Pi. Датчик был запрограммирован на языке Python.
Шаг 1: Требуемое оборудование:
Материалы, которые нам нужны для достижения нашей цели, включают следующие компоненты оборудования:
1. BMA250
2. Raspberry Pi
3. Кабель I2C
4. I2C Shield для Raspberry Pi
5. Кабель Ethernet.
Шаг 2: Подключение оборудования:
В разделе «Подключение оборудования» в основном объясняются проводные соединения, необходимые между датчиком и Raspberry Pi. Обеспечение правильных соединений является основной необходимостью при работе с любой системой для достижения желаемого результата. Итак, необходимые подключения следующие:
BMA250 будет работать по I2C. Вот пример схемы подключения, демонстрирующий, как подключить каждый интерфейс датчика.
Изначально плата настроена для интерфейса I2C, поэтому мы рекомендуем использовать это подключение, если вы не сторонник этого. Все, что вам нужно, это четыре провода!
Требуются только четыре соединения, выводы Vcc, Gnd, SCL и SDA, которые подключаются с помощью кабеля I2C.
Эти соединения показаны на рисунках выше.
Шаг 3: Код Python для измерения ускорения:
Преимущество использования raspberry pi заключается в том, что он обеспечивает гибкость языка программирования, на котором вы хотите запрограммировать плату, чтобы связать с ней датчик. Используя это преимущество этой платы, мы демонстрируем ее программирование на питоне. Python - один из самых простых языков программирования с самым простым синтаксисом. Код на Python для BMA250 можно загрузить в нашем сообществе GitHub, которое называется Dcube Store.
Помимо удобства пользователей, мы также объясняем код здесь:
В качестве первого шага кодирования вам необходимо загрузить библиотеку SMBus в случае python, потому что эта библиотека поддерживает функции, используемые в коде. Итак, чтобы скачать библиотеку, вы можете перейти по следующей ссылке:
pypi.python.org/pypi/smbus-cffi/0.5.1
Вы также можете скопировать рабочий код отсюда:
импортировать smbus
время импорта
# Получить I2C busbus = smbus. SMBus (1)
# BMA250 адрес, 0x18 (24)
# Выбрать регистр выбора диапазона, 0x0F (15)
# 0x03 (03) Установить диапазон = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)
# Адрес BMA250, 0x18 (24) # Выбор регистра пропускной способности, 0x10 (16)
# 0x08 (08) Полоса пропускания = 7,81 Гцbus.write_byte_data (0x18, 0x10, 0x08)
time.sleep (0,5)
# BMA250 адрес, 0x18 (24)
# Считать данные обратно из 0x02 (02), 6 байтов
# X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB
data = bus.read_i2c_block_data (0x18, 0x02, 6)
# Преобразовать данные в 10 бит
xAccl = (данные [1] * 256 + (данные [0] & 0xC0)) / 64
если xAccl> 511:
xAccl - = 1024
yAccl = (данные [3] * 256 + (данные [2] & 0xC0)) / 64
если yAccl> 511:
yAccl - = 1024
zAccl = (данные [5] * 256 + (данные [4] & 0xC0)) / 64
если zAccl> 511:
zAccl - = 1024
# Выводить данные на экран
print "Ускорение по оси X:% d"% xAccl
print "Ускорение по оси Y:% d"% yAccl
print "Ускорение по оси Z:% d"% zAccl
Код выполняется с помощью следующей команды:
$> Python BMA250.py gt; python BMA250.py
Выходные данные датчика показаны на рисунке выше для справки пользователя.
Шаг 4: Приложения:
Акселерометры, такие как BMA250, в основном находят свое применение в играх и переключении профилей дисплея. Этот сенсорный модуль также используется в усовершенствованной системе управления питанием для мобильных приложений. BMA250 - это трехосный цифровой датчик ускорения, который объединен с интеллектуальным встроенным контроллером прерываний, запускаемым движением.
Рекомендуемые:
Измерение ускорения с помощью ADXL345 и Raspberry Pi: 4 шага
Измерение ускорения с помощью ADXL345 и Raspberry Pi: ADXL345 - это небольшой, тонкий, сверхмалопотребляющий 3-осевой акселерометр с высоким разрешением (13 бит) для измерения при нагрузке до ± 16 g. Данные цифрового вывода форматируются как 16-битное дополнение до двоек и доступны через цифровой интерфейс I2C. Он измеряет
Мониторинг ускорения с использованием Raspberry Pi и AIS328DQTR с использованием Python: 6 шагов
Мониторинг ускорения с помощью Raspberry Pi и AIS328DQTR с использованием Python: Ускорение конечно, я думаю, в соответствии с некоторыми законами физики. - Терри Райли Гепард использует удивительное ускорение и быстрое изменение скорости при преследовании. Самое быстрое существо, выброшенное на берег, время от времени использует свой максимальный темп, чтобы поймать добычу
Измерение ускорения с помощью H3LIS331DL и Raspberry Pi: 4 шага
Измерение ускорения с помощью H3LIS331DL и Raspberry Pi: H3LIS331DL - это маломощный высокопроизводительный 3-осевой линейный акселерометр, принадлежащий к семейству «нано», с цифровым последовательным интерфейсом I²C. H3LIS331DL имеет выбираемую пользователем полную шкалу ± 100 г / ± 200 г / ± 400 г и может измерять ускорения w
Измерение ускорения с использованием BMA250 и Arduino Nano: 4 шага
Измерение ускорения с использованием BMA250 и Arduino Nano: BMA250 - это небольшой, тонкий, сверхмалопотребляющий 3-осевой акселерометр с высоким разрешением (13 бит) для измерения при нагрузке до ± 16 g. Цифровые выходные данные форматируются как 16-битное дополнение до двоек и доступны через цифровой интерфейс I2C. Он измеряет статическое электричество
Измерение ускорения с использованием BMA250 и фотона частиц: 4 шага
Измерение ускорения с использованием BMA250 и Particle Photon: BMA250 - это небольшой, тонкий, сверхмалопотребляющий 3-осевой акселерометр с высоким разрешением (13 бит) для измерения при нагрузке до ± 16 g. Данные цифрового вывода форматируются как 16-битное дополнение до двоек и доступны через цифровой интерфейс I2C. Он измеряет статическое электричество