цифровая электроника
вычислительная техника
встраиваемые системы

 

Arduino и акселерометр MMA7455L: принцип работы, схема, код

Автор: Mike(admin) от 13-09-2016, 12:01

Сегодня акселерометры находят широкое применение в навигационных устройствах, смартфонах, спортивных принадлежностях, робототехнике игрушках и т.п. Они позволяют измерять ускорение, которое является первой производной по скорости и второй производной по пути. Это значит, что с помощью одного такого инерциального датчика можно узнать не только ускорение объекта, но и скорость его перемещения, а также пройденный путь (с погрешностями интегрирования). Просто для этого нужно подключить вычислительное устройство, которое займется интегрированием и другими математическими расчетами.


Arduino и акселерометр MMA7455L: принцип работы, схема, код

Среди акселерометров одним из самых распространенных, недорогих, функциональных и простых в обращении является MMA7455L производства компании Freescale. Он может регистрировать ускорение по всем трем осям в пространстве и в любом направлении. У него есть три диапазона чувствительности ± 2g, ± 4g, ± 8g. Передача данных осуществляется с помощью интерфейсов SPI или I2C, а это значит, что мы можем подключить MMA7455L к большинству современных микроконтроллеров. И в данном случае мы подключим его к ATmega328p популярной платы Arduino.

Подключаем к Arduino акселерометр MMA7361

Автор: Mike(admin) от 29-07-2014, 04:55

Сегодня на рынке можно найти большое количество недорогих модулей датчиков, которые можно использовать в своих проектах, связав их предварительно с микроконтроллером. Одним из таких модулей является плата с микросхемой MMA7361, которая представляет собой трехосевой акселерометр.


MMA7361

Этот датчик может измерять статическое (сила земного притяжения) или динамическое ускорение по всем трем осям. Он может использоваться в различных сферах применения, и можно создать много приложений на его основе. Акселерометр измеряет уровень ускорения объекта, на котором он установлен, что позволяет получать информацию об ускорении/замедлении этого объекта, а также о его наклоне относительно земной оси.

Связываем акселерометр ADXL345 и микроконтроллер

Автор: Mike(admin) от 5-07-2014, 15:55

Акселерометр ADXL345 представляет собой 3-осевой датчик ускорения с возможностью связи как по интерфейсу SPI, так и по I2C. Он довольно дешев и прост в эксплуатации, поэтому хорошо подходит для несложных приложений инерциальной навигации.


акселерометр ADXL345

Представленный код позволяет наладить взаимодействие между ADXL345 и микроконтроллером (в данном случае код для PIC16 и компилятора CCS PICC, но при желании можно переделать под любой МК) по шине I2C. С помощью него можно инициализировать, настраивать акселерометр, записывая в него данные по определенному адресу, и считывать данные с самого акселерометра.

Один вывод прерываний сообщает о выходе акселерометра из сна и об отсутствии движения

Автор: Mike(admin) от 1-09-2013, 15:57

МЭМС-акселерометры могут выдавать различные сигналы прерываний, сообщающие о готовности данных, свободном падении, горизонтальном/вертикальном расположении или каком-то воздействии. Некоторые акселерометры имеют функцию пробуждения и функцию определения отсутствия движения, для того, чтобы уменьшать скорость передачи данных в режиме пониженного энергопотребления, и увеличивать ее в нормальном режиме работы. Но такая функция сокращает энергопотребление только самого акселерометра.


Некоторые микропроцессоры имеют две или более линии ввода/вывода общего назначения, и пользователи могут подключить к ним выводы прерываний по пробуждению и определению отсутствия движения. Однако, в некоторых случаях микропроцессор может обладать только одной такой свободной линией, но пользователю нужно подключить два прерывания.


Хост-процессор и акселерометр

Ниже приводится метод, позволяющий с помощью одной линии прерывания определить начало движения, при котором акселерометр выходит из сна, и отсутствие движения, используя фильтр верхних частот (ФВЧ) и логическую операцию «И», на входе которой присутствует сигнал, сообщающий о свободном падении. При этом микропроцессору не нужно вмешиваться в работу акселерометра. Когда микропроцессор регистрирует передний фронт сигнала прерывания от акселерометра, это говорит об отсутствии движения, а появление заднего фронта сообщает о том, что устройство находится в движении.