MPU6050 — 6-осевой акселерометр и гироскоп (IMU)

GY-521 (MPU6050) ITG

MPU6050 — это 6-осевой инерциальный датчик (IMU, Inertial Measurement Unit) производства InvenSense, объединяющий в одном корпусе 3-осевой МЭМС-гироскоп и 3-осевой МЭМС-акселерометр. Отличительная особенность чипа — встроенный DMP (Digital Motion Processor), аппаратный блок, способный самостоятельно выполнять сенсорное слияние (sensor fusion) и выдавать готовые кватернионы ориентации, снижая нагрузку на микроконтроллер. Чаще всего встречается в виде готового модуля … Читать далее

Электронные часы на Arduino: модуль DS3231 и двухцветный OLED-экран

Модуль часов DS3231 с батарейкой CR2032 и двухцветный OLED-экран на макетной плате показывают дату, время и температуру

Сегодня сделаем настоящие электронные часы. Они показывают день недели, дату и время, мигают двоеточием, а заодно измеряют температуру. И самое главное: время не слетает, даже если Arduino выключить на несколько лет. Как это возможно, сейчас расскажу. Для этого нам понадобится модуль DS3231. Это «часы реального времени» (по-английски RTC, Real Time Clock): маленькая плата с микросхемой, … Читать далее

Четырёхканальный вольтметр на Arduino: АЦП ADS1115 и двухцветный OLED-экран

Крупный план OLED-экрана и модуля ADS1115: вверху жёлтая строка ADS1115 +-6.1V, ниже таблица 2 на 2 с напряжениями A0 3,284 В, A1 1,614 В, A2 0,659 В и A3 4,835 В

Сегодня соберём точный вольтметр на четыре входа. Он может одновременно измерять напряжение на четырёх разных источниках: на батарейке, на выходе датчика, на потенциометре, на выводе платы. И показывает все четыре числа на экране с точностью до тысячных долей вольта. Для этого нам понадобится микросхема ADS1115. Это «аналого-цифровой преобразователь» (АЦП): устройство, которое превращает напряжение в число. … Читать далее

OLED-дисплей SSD1306 128×64 (I²C)

Синий OLED-дисплей SSD1306 128x64 с четырьмя выводами GND, VDD, SCK, SDA на чёрной плате; на экране тестовая картинка с индикаторами сигнала, батареи и эквалайзером

SSD1306 — это контроллер монохромных OLED-дисплеев производства Solomon Systech, а под этим же названием на рынке распространены готовые модули 128×64 (и 128×32) точек с интерфейсом I2C. OLED-экраны не требуют подсветки (каждый пиксель светится самостоятельно), за счёт чего обладают высоким контрастом, широким углом обзора и малым энергопотреблением при отображении преимущественно тёмных изображений. Технические характеристики Распиновка модуля … Читать далее

Барометр, высотомер и люксметр на Arduino: датчики BMP280 и TSL2561 и двухцветный OLED-экран

Датчик давления BMP280, датчик освещённости TSL2561 и двухцветный OLED-экран на макетной плате; на экране режим AIR 1/2: температура 23,8 °C, давление 756 мм рт. ст., высота 39 м

Сегодня соберём компактную станцию, которая измеряет температуру, атмосферное давление, высоту над уровнем моря и освещённость. Сюда же можно приделать подставку и носить с собой: отличный «барометр-высотомер». Здесь мы возьмём «младшего брата» датчика BME280 — BMP280 (без датчика влажности, зато дешевле) — и датчик света TSL2561. Мы узнаем: Опыт в электронике не нужен. Всё объясняю с … Читать далее

Термометр и гигрометр на Arduino: датчик DHT12 и OLED-экран по двум проводам

Датчик DHT12 и OLED-экран

Сегодня соберём маленький «домашний метеоприбор»: он измеряет температуру и влажность воздуха и показывает их на крошечном экране. Такой же прибор можно собрать и на датчике DHT22. Здесь мы возьмём его младшего брата DHT12 и узнаем, чем он интересен. Главная фишка DHT12 в том, что он умеет общаться по шине I2C, как и наш экран. А … Читать далее

Управление сервоприводом SG90 с помощью PCA9685 из Python на Raspberry Pi/Orange Pi/Banana Pi

Сервопривод — это мотор-редуктор, способный поворачивать выходной вал в заданное положение (на заданный угол) и удерживать его в этом положении, вопреки сопротивлениям и возмущениям. Сервопривод Tower Pro 9g SG90 не имеет мощных характеристик (всего 1,2-1,6 кг×см), но имеет недорогую цену. Отлично подходит для управления небольшими легкими механизмами под управлением контроллеров Arduino, Raspberry Pi и т.п. … Читать далее

SMBus: Работа с шиной I2C на Python в Raspberry Pi/Orange Pi/Banana Pi

Установка I2C Tools - i2cdetect -y 0

SMBus (англ. System Management Bus) — последовательный протокол обмена данными для устройств питания. Основан на шине I²C, но использует более низкое сигнальное напряжение (3,3 В), предложен Intel в 1995 году. Используется, например, для получения информации о состоянии аккумуляторной батареи ноутбука (оставшаяся ёмкость аккумуляторной батареи, температура, количество использованных циклов разряда и т. д.). С версии SMBus 2.0 (2000 … Читать далее

ITG-3205 — 3-осевой цифровой гироскоп / Grove модуль

Модуль Grove - 3-осевой цифровой гироскоп на базе ITG-3205

ITG-3205 — это первый в мире трехосевой цифровой MEMS-гироскоп (МЭМС — микро электромеханические сенсоры), оптимизированный для игр, 3D-мышей и 3D-приложений дистанционного управления. Возможности ITG-3205 — повышенная стабильность смещения и температурной чувствительности, уменьшая необходимость калибровки пользователем. ITG-3205 имеет три 16-битных аналогово-цифровых преобразователей (АЦП) для оцифровки выходов гироскопа, выбираемый пользователем внутренний фильтр низкой частоты полосы пропускания и интерфейс … Читать далее

Подключение датчика атмосферного давления BMP280 к Arduino

Схема подключения BMP280 к Arduino UNO по I2C/TWI

BMP280 — это цифровой датчик от Bosch Sensortec, позволяющий получить текущие значения атмосферного давления и температуры окружающей среды. Этот датчик специально разработан для мобильных приложений, где малый размер и низкое энергопотребление очень важны. В данной статье увидим, как подключить датчик атмосферного давления BMP280 к Arduino по I2C и SPI, какие библиотеки установить и приведём несколько … Читать далее