Arduino MMA7260

Arduino MMA7260
Артикул: 2503833

производитель: Arduino
Требуется установка или ремонт?

сервисный центр Kypidetali!

тел. +7(499)347-04-82

Описание Arduino MMA7260

Arduino MMA7260 — Акселерометр 3-осевой

Описание

MMA7260Q — это трёхосевой аналоговый акселерометр от компании Freescale Semiconductor (ныне NXP), широко применявшийся в Arduino-проектах в конце 2000-х — начале 2010-х годов. Микросхема имеет встроенный датчик ускорения по осям X, Y, Z и позволяет измерять как динамическое ускорение (наклон, движение, удар), так и статическое (гравитацию — определение ориентации в пространстве).

Устройство часто встречается на готовых модулях (breakout board) с маркировкой GY-61 или SEN-08818, которые удобно подключать к платам Arduino.

Ключевые особенности:

  • 3 оси измерения (X, Y, Z)
  • Аналоговый выход
  • Программируемая чувствительность (4 диапазона)
  • Режим пониженного энергопотребления (Sleep Mode)
  • Низкое напряжение питания (совместим с 3.3 В и 5 В через модуль)
  • Функция свободного падения (Freefall detection)

Технические характеристики

| Параметр | Значение | |---|---| | Тип датчика | MEMS-акселерометр, 3 оси (X, Y, Z) | | Интерфейс | Аналоговый (3 выходных канала) | | Напряжение питания (чип) | 2.2 – 3.6 В DC | | Напряжение питания (модуль GY-61) | 2.2 – 5 В (есть LDO-стабилизатор) | | Потребляемый ток | ~500 мкА (рабочий), ~3 мкА (sleep) | | Диапазоны измерения | ±1.5g, ±2g, ±4g, ±6g (переключаемые) | | Чувствительность | 800 / 600 / 300 / 200 мВ/g соответственно | | Разрешение | 10 бит (через АЦП Arduino = 4.9 мВ/шаг) | | Полоса пропускания | 350 Гц (X, Y), 150 Гц (Z) | | Незначительная нелинейность | ±1% полной шкалы | | Рабочая температура | -40…+85 °C | | Корпус | QFN-16 (6×6 мм) | | Пин-код чувствительности | GS1, GS2 (логические входы) |

Таблица выборов диапазона

| GS1 | GS2 | Диапазон | Чувствительность | |-----|-----|----------|------------------| | 0 | 0 | ±1.5g | 800 мВ/g | | 0 | 1 | ±2.0g | 600 мВ/g | | 1 | 0 | ±4.0g | 300 мВ/g | | 1 | 1 | ±6.0g | 200 мВ/g |

★ Внимание: у реального чипа логика инвертирована — состояния пинов GS1/GS2 обычно подтянуты HIGH, поэтому при "нуле" на выводе диапазон выбирается в соответствии с последней строкой таблицы (сверяйтесь с datasheet на конкретный модуль).


Парт-номера и маркировки

Оригинальный чип Freescale/NXP

  • MMA7260Q — базовый артикул (QFN-16)
  • MMA7260QT — в ленточной упаковке (tape & reel)
  • MMA7260QR2 — tape & reel вариант

Готовые модули (breakout boards)

| Парт-номер | Производитель | Описание | |---|---|---| | GY-61 | Generic (Китай) | 3-осевой MMA7260 модуль с регулятором напряжения и 5 пинами (VCC, GND, X, Y, Z + пины для диапазона) | | SEN-08818 | SparkFun | Triple Axis Accelerometer Breakout — MMA7260Q (снято с производства) | | SEN-09277 | SparkFun | Triple Axis Accelerometer — аналог, но на MMA7361 | | HK GY-61 MMA7260QT | HobbyKing / DX | Клон модуля |

Ближайшие аналоги (для сравнения)

  • MMA7361 — схожий чип, 1.5g/6g, почти pin-to-pin совместим (замена)
  • ADXL335 — аналоговый 3-осевой (Analog Devices)
  • ADXL345 — цифровой I²C/SPI

Совместимые модели / платформы

MMA7260 совместим с любым микроконтроллером, имеющим не менее 3 каналов АЦП:

  • Arduino Uno / Nano / Mini / Duemilanove — да (АЦП 10 бит)
  • Arduino Mega 2560 — да
  • Arduino Leonardo / Micro / Pro Mini — да
  • Arduino Due (3.3 В) — да, но нужен модуль без 5-В LDO или делитель на выходе (чип рассчитан на 3.3 В)
  • ESP8266 / ESP32 / NodeMCU — да (работают при 3.3 В)
  • Raspberry Pi / STM32 / PIC / AVR (ATtiny, ATmega) — да, при подаче сигналов на ADC
  • Arduino MKR / Nano 33 (3.3 В) — да, но АЦП ярче разных разрешений

Примеры готовых щитов-совместимых решений

  • Arduino Sensor Shield V4/V5 — есть порт "Analog" куда удобно вешать GY-61
  • Grove — 3-Axis Analog Accelerometer (Seeed) — на базе MMA7660, код похож, но иной датчик

Схема подключения (модуль GY-61 к Arduino Uno)

GY-61  ->  Arduino
VCC    ->  3.3V или 5V (через LDO на модуле)
GND    ->  GND
X      ->  A0
Y      ->  A1
Z      ->  A2
GS1    ->  D2 (опционально)
GS2    ->  D3 (опционально)

Пример скетча

const int xPin = A0;
const int yPin = A1;
const int zPin = A2;
const float vRef = 5.0;
const float sensitivity = 0.800; // В/g при ±1.5g
const float zeroG = vRef / 2.0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int rx = analogRead(xPin);
  int ry = analogRead(yPin);
  int rz = analogRead(zPin);

  float vx = rx * (vRef / 1024.0);
  float vy = ry * (vRef / 1024.0);
  float vz = rz * (vRef / 1024.0);

  float ax = (vx - zeroG) / sensitivity;
  float ay = (vy - zeroG) / sensitivity;
  float az = (vz - zeroG) / sensitivity;

  Serial.print("X: "); Serial.print(ax, 2);
  Serial.print("  Y: "); Serial.print(ay, 2);
  Serial.print("  Z: "); Serial.println(az, 2);

  delay(100);
}

Применение

  • Определение наклона и ориентации (робот-балансир)
  • Детектор падения / свободного падения
  • Управление жестами (покачивание — смена режима)
  • Инерционные измерения, логирование движения
  • Игровые контроллеры (Wii-подобные)

💡 Совет: MMA7260 — устаревшая, но всё ещё встречающаяся в продаже модель. Для новых проектов лучше выбрать ADXL335 (аналог, удобнее) или ADXL345 / MPU6050 / LIS3DH (цифровой выход, 12–16 бит, встроенный I²C/SPI, дополнительные оси, термокомпенсация).

Если нужно — могу помочь подобрать актуальную замену под конкретную задачу или написать скетч работы с любым из аналогов.

Совместимые модели для Arduino MMA7260

Arduino MMA7260