⚡ 1 июля магазин не работает, все оформленные заказы будут обработаны 2 июля
  • Производится отгрузка заказов через пункты выдачи Boxberry!
  • Производится курьерская доставка по г. Москва!
  • Производится курьерская доставка EMS!
  • Остальные способы получения заказа временно недоступны.
  • КОРЗИНА
    0 ТОВАРА
    8 (499) 500-14-56 | ПН. - ПТ. 12:00-20:00
    ЛЕСНОРЯДСКИЙ ПЕРЕУЛОК, 18С2, БЦ "ДМ-ПРЕСС"
     3-осевой акселерометр GY-291 для Arduino ардуино
     3-осевой акселерометр GY-291 для Arduino ардуино

    3-осевой акселерометр GY-291 для Arduino

    Модификация
    Артикул: # 255 Наличие: 33 шт.
    Сообщить о поставке на e-mail:
    {{ status }}
    259 ₽
    - +


    Возможен безналичный расчёт для юридических лиц при оформлении заказа

    С этим товаром берут

    Общие сведения

    3-осевой акселерометр ADXL345 — это миниатюрный, тонкий, мало потребляющий трех осевой акселерометр с высоким разрешением (13 бит) и диапазоном измерения до ±16 g. Цифровые результаты измерения представляются в виде 16-разрядных чисел в дополнительном коде и доступны через цифровые интерфейсы SPI или I2C.

    Характеристики

    • Диапазон напряжения питания: 2 - 3,6В;
    • Низкое потребление тока: 23 мкА;
    • Интерфейсы: I2C / SPI (3- и 4-проводной);
    • Диапазон рабочих температур: от -40 ° C до + 85 °C;
    • Габариты: 20.8 мм × 16 мм × 1,6 мм;

    Подключение

    Выводы SDA и SCL модуля подключаются к аппаратной шине I2C Arduino. К этим выводам  необходимо подключить подтягивающие резисторы 4,7 кОм и запитать их питанием 3,3 В.

    Выводы GND, VDD являются выводами питания (вывод VDD - питание модуля +3,3 В)

    Выводы INT1...INT2 используются для внешнего прерывания.

    Вывод SDO является выходом последовательных данных, на него подается уровень LOW, подключаем к выводу GND.

    Вывод CS используется для выбора микросхемы. На него подается уровень HIGH, то есть питание модуля +3,3 В.

    Питание

    Напряжение питания модуля от 2,0 В до 3,6 В (по стандарту используется 3,3 В или 5 В для плат Arduino.) постоянного тока, подаётся на выводы «VDD» и «GND»  модуля. 

    Подробнее о акселерометре

    Датчик GY-291 разработан на основе чипа ADXL345. Ультранизкое энергопотребление: 23 мкА в режиме измерения и 0.1 мкА в режиме ожидания при напряжение 2.5 В.

    Для работы с акселерометром рекомендуем вам воспользоваться библиотекой SparkFun_ADXL345.

    Примеры

    Считывание и вывод данных в монитор порта.

    Для предварительной калибровки воспользуйтесь скетчем "SparkFun_ADXL345_Calibration".

    Таблица подключения выводов датчика:

    • SDA - подключается к линии данных SDA шины I2C или к выводу A4 Arduino UNO.
    • SCL - подключается к линии тактирования SCL шины I2C или к выводу A5 Arduino UNO.
    • GND - подключается к выводу GND Arduino UNO.
    • VDD - подключается к выводу 3V3 Arduino UNO.
    • CS - подключается к выводу 3V3 Arduino UNO.
    • SDO - подключается к выводу GND Arduino UNO.
    • INT1...INT2 - не используются.
    #include <sparkfun_adxl345.h>         // Библиотека SparkFun ADXL345
    //ADXL345 adxl = ADXL345(10);           // ИСПОЛЬЗОВАНИЕ СВЯЗИ SPI, ADXL345 (CS_PIN);
    ADXL345 adxl = ADXL345();             // ИСПОЛЬЗОВАНИЕ ДЛЯ I2C КОММУНИКАЦИИ
    //int interruptPin = 2;                 // Установочный вывод 2 для вывода прерывания (для большинства плат Arduino)
    
    void setup(){
      Serial.begin(9600);                 // Запустите последовательный терминал
      Serial.println("Пример подключения акселерометра SparkFun ADXL345");
      Serial.println();
      adxl.powerOn();                     // Включите ADXL345
      adxl.setRangeSetting(16);           // Дать настройки диапазона
                                          // Принятые значения: 2g, 4g, 8g или 16g
                                          // Более высокие значения = более широкий диапазон измерения
                                          // Нижние значения = Большая чувствительность
      adxl.setSpiBit(0);                  // Конфигурирование устройства в 4-проводном режиме SPI, когда установлено значение «0» или 3-проводное SPI-режим, если установлено значение 1
                                          // По умолчанию: установите значение 1
                                          // SPI связывается с ATMega328: 11, 12 и 13 как ссылка в библиотеке SPI 
      adxl.setActivityXYZ(1, 0, 0);       // Установить активировать обнаружение движения в осях «adxl.setActivityXYZ (X, Y, Z)»; (1 == ON, 0 == OFF)
      adxl.setActivityThreshold(75);      // 62.5mg за инкремент // Устанавливаем активность // Пороги неактивности (0-255)
      adxl.setInactivityXYZ(1, 0, 0);     // Установить для обнаружения бездействия во всех осях «adxl.setInactivityXYZ (X, Y, Z)»; (1 == ON, 0 == OFF)
      adxl.setInactivityThreshold(75);    // 62.5mg за инкремент // Установить бездействие // Пороги неактивности (0-255)
      adxl.setTimeInactivity(10);         // Сколько секунд никакой активности неактивно?
      adxl.setTapDetectionOnXYZ(0, 0, 1); // Обнаружение кранов в направлениях, включенных "adxl.setTapDetectionOnX (X, Y, Z);" (1 == ON, 0 == OFF)
       // Устанавливаем значения для того, что считается TAP и что такое DOUBLE TAP (0-255)
      adxl.setTapThreshold(50);           // 62,5 мг на приращение
      adxl.setTapDuration(15);            // 625 мкс за шаг
      adxl.setDoubleTapLatency(80);       // 1,25 мс за шаг
      adxl.setDoubleTapWindow(200);       // 1,25 мс за шаг
    // Устанавливаем значения для считанного FREE FALL (0-255)
      adxl.setFreeFallThreshold(7);       // (5 - 9) рекомендуется - 62,5 мг на шаг
      adxl.setFreeFallDuration(30);       // (20 - 70) рекомендуется - 5 мс за шаг
    // Установка всех прерываний на вывод INT1
      //adxl.setImportantInterruptMapping(1, 1, 1, 1, 1);     //Устанавливает «adxl.setEveryInterruptMapping (однократное нажатие, двойное нажатие, свободное падение, активность, бездействие);
                                                            // Принимает только 1 или 2 значения для контактов INT1 и INT2. Это выбирает вывод на ADXL345 для использования для прерываний.
                                                            // В этой библиотеке может возникнуть проблема с использованием вывода INT2. По умолчанию для вывода INT1.
      // Включить прерывания для каждого режима (1 == ON, 0 == OFF)
      adxl.InactivityINT(1);
      adxl.ActivityINT(1);
      adxl.FreeFallINT(1);
      adxl.doubleTapINT(1);
      adxl.singleTapINT(1);
    //attachInterrupt(digitalPinToInterrupt(interruptPin), ADXL_ISR, RISING);   // Прикрепить прерывание
    }
    
    
    /****************** ГЛАВНЫЙ КОД ******************/
    /*     Показания и прерывания акселерометра    */
    void loop(){
      delay(50);
      // Чтения акселерометра
      int x,y,z;   
      adxl.readAccel(&x, &y, &z);         // Прочитайте значения акселерометра и сохраните их в переменных, объявленных выше x, y, z
      // Вывод результатов в последовательный
      /* НЕОБХОДИМО УКАЗАТЬ ЦЕННОСТИ АКСЕЛЕРОМЕТРОВ X Y Z */  
      Serial.print(x);
      Serial.print(", ");
      Serial.print(y);
      Serial.print(", ");
      Serial.println(z); 
      ADXL_ISR();
      // Вы также можете избежать использования прерываний и просто запустить функции в ADXL_ISR ();
      // и помещаем его в цикл.
      // Это может пригодиться, когда это не имеет значения, когда происходит действие.
    }
    
    /********************* ISR *********************/
    /* Ищите прерывания и запущенные действия    */
    void ADXL_ISR() {
      // getInterruptSource очищает все инициированные действия после возврата значения
      // Не вызывать снова, пока вам не нужно будет перепроверять вызванные действия
      байтовые прерывания = adxl.getInterruptSource ();
      // Освобождение падений
      if(adxl.triggered(interrupts, ADXL345_FREE_FALL)){
        Serial.println("*** FREE FALL ***");
        //добавьте код здесь, чтобы сделать, когда ощущается свободное падение
      } 
      //  Неактивность
      if(adxl.triggered(interrupts, ADXL345_INACTIVITY)){
        Serial.println("*** Неактивность***");
         //добавляем код здесь, чтобы делать, когда ощущается неактивность
      }
      // Активность
      if(adxl.triggered(interrupts, ADXL345_ACTIVITY)){
        Serial.println("*** Активность***"); 
         //добавляем код здесь, чтобы делать, когда активность ощущается
      }
      // Обнаружение двойного касания
      if(adxl.triggered(interrupts, ADXL345_DOUBLE_TAP)){
        Serial.println("*** Обнаружение двойного касания ***");
         //добавьте код здесь, чтобы сделать, когда обнаружен 2-кратный кран
      }
      // Нажмите «Обнаружение»
      if(adxl.triggered(interrupts, ADXL345_SINGLE_TAP)){
        Serial.println("*** Нажатие ***");
         //добавьте код здесь, чтобы сделать, когда кран ощущается
      } 
    }</sparkfun_adxl345.h>

    Комплектация

    • 1х 3-осевой акселерометр GY-291;
    • 1х Соединитель типа "ПАПА-ПАПА";

    Ссылки

    Похожие товары

    Гарантии и возврат Используя сайт Вы соглашаетесь с условями