Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

DHT Tiny Breakout для Raspberry Pi

Компоненты оборудования: Датчик температуры Atmel ATTiny85 × 1DHT22 × 1 Датчик температуры и влажности DHT11 × 1 Программатор SparkFun Tiny AVR × 1 Резистор Adobe 4,7 кОм × 3 Резистор 10 кОм Adafruit × 1 Резистор Adobe 100 Ом × 1 Светодиоды Adobe Diffused Blue 3 мм × 1 Тактильный кнопочный переключатель Adobe Fruit × 1 ″ 36-контактный штекерный разъем 1 шт. При длине 6, 1 шт. При длине 2 (всего 8 контактов) × 1 Общая перемычка (0,1 ″) × 1 Arduino UNO и Genuino UNO Необязательно - используются для отладки и тестирования. × 1 Программные приложения и онлайн-сервисы: Microsoft Visual Studio 2015, Microsoft Windows 10 IoT Core, Arduino IDE.

ИСТОРИЯ

Введение

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

Некоторое время назад я опубликовал статью под названием « Датчик температуры DHT11 / DHT22 . ”Демонстрируя, как использовать образец кода Microsoft C ++ с C # для чтения этих датчиков. Библиотека смогла получить чтение, но мне пришлось добавить логику повтора, чтобы сделать ее более надежной. Это оказалось успешным для большинства, но у некоторых были проблемы с тем, чтобы заставить это работать постоянно.

Учитывая уровень интереса к использованию этих датчиков на Raspberry Pi при работе под управлением Windows 10 IoT Core, я решил создать второй вариант, который обеспечивает очень надежный метод считывания этих датчиков при сохранении низкой стоимости.

Обзор

Представленный здесь подход состоит в том, чтобы подключить датчик DHT к недорогому ATtiny85 и настроить его как ведомое устройство I2C. Это достигается с помощью библиотеки TinyWireS и создания набора регистров, которые можно читать и записывать для взаимодействия с устройством.

Устройство поддерживает следующие функции:

Исходный код

В этом проекте есть три набора кода. Основная прошивка для платы, главный эскиз Arduino, используемый для тестирования и демонстрации платы при подключении к Arduino Uno и приложению Window 10 IoT Code, которое демонстрирует, как использовать устройство от Raspberry Pi. Весь код доступен в связанном репозитории GitHub.

Устройство / Схема

Схема небольшая, и в ней используется всего несколько недорогих компонентов. ATtiny85 можно приобрести у нескольких поставщиков. Я рекомендую подобрать несколько из них, так как у них много полезных целей.

Схема имеет шестиконтактный разъем, который позволяет подключать эфир к другой схеме или напрямую к Raspberry Pi. Штыри определяются следующим образом:

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

При использовании этого в более крупном проекте схему для DHT Tiny можно объединить или встроить в существующую схему проекта. В этом случае контакты заголовка и светодиод не обязательны.

Схема также может быть построена на отдельной плате и подключена к Raspberry Pi с помощью нескольких проводов или соединительного кабеля.

Программирование ATtiny85

Загрузите скетч с названием DHT_Tiny_Breakout.ino . на ATtiny85 с помощью программатора AVR. Если у вас нет программиста, вы можете использовать Arduino Uno (или аналогичную плату). Прочтите одну или несколько статей, перечисленных ниже, чтобы получить помощь.

Я использую SparkFun Tiny AVR Programmer для загрузки моего ATtiny85.

Я использую свой чип на частоте 16 МГц. См. Мою статью под названием « ATtiny @ 16MHz . », Чтобы узнать, как это сделать.

<цитата>

При использовании ATtiny85 для подчиненного эскиза требуется TinyWireS библиотека, которая будет установлена ​​в папку ваших библиотек. Эту библиотеку можно загрузить с https://github.com/rambo/TinyWire.

Макет схемы

Первый шаг - запустить DHT Tiny на макетной плате. Используя макет половинного размера, постройте схему, следуя схематическим и макетным схемам, включенным в проект.

Вот несколько советов, которые помогут упростить задачу:

Ниже приведены некоторые изображения макетной версии моего DHT Tiny.

Подключение Arduino Uno

Если вас интересует быстрый тест, демонстрация или у вас возникают проблемы с тем, чтобы заставить это работать с вашим Raspberry Pi, вы можете подключить DHT Tiny к Arduino Uno (или аналогичному устройству).

Загрузите и запустите скетч с именем DHT_Tiny_Master.ino . . Этот скетч будет отображен на мониторе последовательного порта . .

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

Ниже приведены некоторые изображения макета DHT Tiny, подключенного к Arduino Uno.

Подключение к Raspberry Pi

Если вас интересует быстрый тест, демонстрация или у вас возникают проблемы с тем, чтобы заставить это работать с вашим Raspberry Pi, вы можете подключить DHT Tiny к Arduino Uno (или аналогичному устройству).

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

<цитата>

ОЧЕНЬ ВАЖНО! Плата DHT Tiny будет получать питание от вывода 5V на Raspberry Pi, но подтягивающие резисторы должны быть подключены к выводу 3V3 на Raspberry Pi (3V3 находится на контактах 1 и 17).

Ниже приведены некоторые изображения макета DHT Tiny, подключенного к Raspberry Pi 3.

Запуск приложения Windows 10

Получите код по ссылке репозитория GitHub внизу проекта и распакуйте его на свой компьютер. Откройте исходный код универсального приложения в Visual Studio 2015 и либо разверните его на Raspberry Pi и запустите из консоли администратора, либо запустите в режиме отладки из Visual Studio.

Если вы впервые запускаете код Visual Studio для приложения Windows 10 IoT Core, ознакомьтесь с этими статьями от Microsoft:

Взгляните на демонстрацию видео ниже, чтобы увидеть, как приложение работает на Raspberry Pi 3 при подключении к DHT Tiny.

Основные характеристики приложения

Приложение Windows 10 UWP - это демонстрационное приложение, демонстрирующее все функции DHT Tiny. Код будет отображать текущие значения температуры, влажности и других регистров с устройства. Пользовательский интерфейс также предоставляет способ изменить конфигурацию устройства, включая адрес устройства.

Маленькая библиотека DHT

В примере кода используется библиотека, написанная для взаимодействия с DHT Tiny. Эта библиотека готова к использованию и может быть включена непосредственно во все ваши приложения.

Получить библиотеку из NuGet

Если вы не хотите включать проект непосредственно в свое приложение, просто загрузите библиотеку DHT Tiny из NuGet, используя команду, показанную ниже. Откройте консоль диспетчера пакетов в Visual Studio и введите команду.

  PM> Install-Package IoT.DhtTiny  

Сканирование шины i2c на предмет устройства

Библиотека DHT Tiny включает метод, который будет искать на шине i2c любые устройства DHT Tiny и возвращать список адресов. Этот список можно использовать для инициализации одного или нескольких найденных устройств. Это особенно удобно, если вы изменили адрес устройства, но не можете вспомнить, для чего вы установили адрес. Обратите внимание, что метод обратного вызова не является обязательным.

  // *** // *** Перечислить устройства DHT Tiny на шине i2c .// *** IEnumerable  address =await DhtTiny.FindAllDhtTinyAsync (this. FindAllDhtTinyCallback); // *** // *** Метод обратного вызова // *** private void FindAllDhtTinyCallback (I2cScanEventArgs e) {int percentComplete =(int) ((double) e.CurrentIndex / (double) e.Total * 100.0d); this.Status =string.Format ("Обнаружение устройств [0x {0:X2}] [{1}%] [Found ={2:## 0}] ...", e.CurrentAddress, percentComplete, e.Items .Count ());}  

Схема DHT Tiny Breakout для Raspberry Pi

Демонстрация программного обеспечения

Это видео демонстрирует, как универсальное приложение, работающее на Raspberry Pi 3, подключено к DHT Tiny на макетной плате.

[СКОРО ВИДЕО]

Создание конечного устройства

Самый простой и наиболее экономичный способ создать плату - использовать прототип печатной платы, такой как Perma-Proto Quarter-size Breadboard PCB от Adafruit. На изображении ниже показан прорыв с использованием этой прототипной платы. Обратите внимание, что я использовал дремель, чтобы снять секции шины питания с платы.

Узнать больше:DHT Tiny Breakout для Raspberry Pi


Производственный процесс

  1. Мониторинг температуры на Raspberry Pi
  2. Метеостанция Raspberry Pi 2
  3. Аналоговые датчики без аналоговых входов на Raspberry Pi
  4. Ультразвуковой датчик диапазона HC-SR04 на Raspberry Pi
  5. Лучшие аксессуары для Raspberry Pi
  6. Аналоговые датчики на Raspberry Pi с использованием MCP3008
  7. Зрение:для слепых
  8. Руководство по подключению Qwiic HAT для Raspberry Pi
  9. Windows 10 IoT Core для Raspberry Pi 3, модель B +
  10. Сборка робота MonkMakes Raspberry Pi