Оглавление:

EqualAir: переносной дисплей NeoPixel, запускаемый датчиком загрязнения воздуха: 7 шагов (с изображениями)
EqualAir: переносной дисплей NeoPixel, запускаемый датчиком загрязнения воздуха: 7 шагов (с изображениями)

Видео: EqualAir: переносной дисплей NeoPixel, запускаемый датчиком загрязнения воздуха: 7 шагов (с изображениями)

Видео: EqualAir: переносной дисплей NeoPixel, запускаемый датчиком загрязнения воздуха: 7 шагов (с изображениями)
Видео: Tuesday - Equal Air (feat. The MDQuartet) (Live) 2024, Ноябрь
Anonim
Image
Image

Цель проекта - создать пригодную для носки футболку, отображающую запоминающуюся графику, когда уровень загрязнения воздуха превышает установленный порог. Графика навеяна классической игрой «Кирпичи», в которой машина похожа на весло, которое выбрасывает выхлопные газы (похожие на шары), которые «ударяют» по частям легкого и разрушают их. Когда загрязнение воздуха превышает пороговое значение (например, при ходьбе на машине), в остальном безобидные белые футболки начинают играть на дисплее. Этот проект был построен Джорданом, Мэри, Ником и Одессой для класса «Искусство и наука создания».

Шаг 1. Соберите материалы

Отображать:

  • 6 * Цифровая светодиодная лента RGBW Adafruit NeoPixel - белая печатная плата 144 светодиода / м
  • 1 * Arduino Mega (согласно веб-сайту Adafruit, для использования более чем пары полосок NeoPixel требуется Arduino Mega)
  • Батарея 1 * 9 вольт
  • 1 * зарядное устройство для ноутбука

Ощущение:

1 * Датчик Adafruit MiCS5524 (это был датчик загрязнения воздуха, который мы использовали, потому что он дешевый. Недостатком является то, что он распознает несколько газов и не различает их)

Другой:

2 * белая футболка (мы рекомендуем покупать слишком большие футболки, потому что 1) должно быть место для оборудования и 2) вам нужно будет отрезать немного лишней ткани, чтобы сделать карман. спрятать оборудование)

Инструменты:

  • Джемперы
  • Протоборд
  • Конденсатор
  • Резистор
  • Кусачки
  • Паяльная машина
  • Швейный материал и / или клей для ткани

Шаг 2: Сборка NeoPixel Grid

Добавление датчика
Добавление датчика

Чтобы собрать сетку NeoPixel, оригинальные полосы NeoPixel необходимо разрезать и повторно припаять в зависимости от желаемых размеров сетки. Для этого дизайна мы построили сетку NeoPixels 47x16:

  1. Отрежьте 1-метровые (144 NeoPixel) полоски с шагом 47 NeoPixel, соблюдая осторожность, чтобы оставить место для пайки по краям полос (есть небольшие металлические выводы, которые видны на нижней части NeoPixel). Обязательно разрежьте так, чтобы открылась вся паяльная площадка (потому что они и так малы для начала). Причина, по которой полосы имеют длину 47 пикселей вместо (144/3 = 48) пикселей, заключается в том, что вы потеряете хотя бы одну из-за их обрезки, потому что NeoPixel расположены так близко друг к другу.
  2. Аккуратно разложите колонны рядом друг с другом (при желании используйте изоленту, чтобы удерживать их на месте) и убедитесь, что размеры соответствуют желаемым (47x16). Выложите столбики в виде буквы S.
  3. У NeoPixels есть провода для подачи напряжения, входа и заземления, которые должны быть подключены к их аналогам в следующей полосе. Используя многожильный провод, соедините выводы колонок по S-образной схеме, стараясь подключить правильные выводы.
  4. Оставьте выводы на концах сетки (должно быть 2 конца - один, где вы начали, а другой, где вы закончили S-образный рисунок) и, при желании, добавьте удлинители проводов для удобства. Вы также можете при желании обмотать концы лентой или иным образом закрепить концы на концах. Кроме того, заклейте соединения горячим клеем, чтобы закрепить их.
  5. Убедитесь, что ваша недавно собранная сетка надежно закреплена, добавив еще несколько слоев изоленты или другого клея на заднюю часть.

Теперь у вас должна быть рабочая сетка, которую вы можете протестировать. В библиотеке NeoPixel Matrix вы можете использовать образец кода matrixtest, чтобы проверить, работает ли сетка должным образом. Если это так, он должен выглядеть как на фото выше (не обращайте внимания на Arduino Uno спереди, это было для тестирования чего-то еще).

Шаг 3: Добавление датчика

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

  1. Во-первых, убедитесь, что три вывода к датчику - вход напряжения, выход и заземление - подключены правильно (для облегчения этого можно использовать провод соответствующего цвета).
  2. Подключите входное напряжение к выходу 5 В на плате Arduino и подключите заземление к земле на плате.
  3. Затем подключите выход к A0 (или аналоговому выводу по вашему выбору) на плате Arduino. Это все, что необходимо для подключения датчика к Arduino.
  4. При желании можно использовать последовательный монитор, чтобы убедиться, что показания передаются датчиком (показания должны колебаться около одного числа и изменяться, когда датчик размещается рядом с источником окиси углерода или других паров).

В Интернете есть инструкции по калибровке этого датчика, в частности, чтобы он был чувствителен к изменениям окружающей среды. Мы оставили датчик на несколько часов, чтобы определить «обычный» диапазон считывания для комнаты, в которой он находился. Затем, чтобы проверить «срабатывание» дисплея, мы использовали ватный тампон, смоченный в медицинском спирте. показания датчика могут превысить установленный порог, чтобы начать один цикл графического изображения.

Шаг 4: Отладка кода

Image
Image

Прилагается код. Обратите внимание, что есть много заголовков, включенных вверху. Чтобы загрузить необходимые заголовки, в среде Arduino IDE щелкните эскиз, включите библиотеку и затем управляйте библиотеками. Прежде чем вы сможете загрузить прикрепленный файл, вам необходимо загрузить следующие библиотеки:

  • Адафрут NeoPixel
  • Адафрут НеоМатрикс
  • Библиотека Adafruit GFX

После того, как вы загрузили эти библиотеки, в Arduino IDE, в разделе «Файл», «Примеры», вы найдете пример кода, который можно изменить для тестирования по ходу работы. Например, strandtest и matrixtest были очень полезны для тестирования сетки NeoPixel. В Интернете также легко найти образцы тестов для датчика загрязнения воздуха.

Прежде чем вы сможете загрузить файл и увидеть рабочую сетку, вот несколько строк кода, которые можно изменить:

#define PIN 6

#define SENSOR_PIN A0

Контакт 6 должен быть переключен на номер контакта, который сетка NeoPixel прикреплена к Arduino с помощью

Контакт AO должен быть переключен на номер контакта, с которым датчик подключен к Arduino.

#define STOP 300

#define NUM_BALLS 8

Матрица Adafruit_NeoMatrix = Adafruit_NeoMatrix (GRID_COLS, GRID_ROWS, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800);

Число 300 определяет, сколько пикселей легкого деградирует, чтобы считать за один цикл отображения. Увеличение числа удлиняет цикл (например, разрушается больше легких) и наоборот.

Число 8 определяет количество «шаров» (выхлопных газов), которые выходят из автомобиля.

Теперь, если вы следовали инструкциям по точному построению сетки, конфигурация NeoMatrix должна работать. Тем не менее, хорошо отметить, что эта установка говорит о том, что координата 0, 0 находится в верхнем левом углу, мы соединили столбцы полос, и полосы соединены в S-образную форму. Таким образом, если ваша сетка выглядит идеально, за исключением того, что она зеркально отражена или отклонена на 90 градусов, вероятно, вы настроили сетку иначе и должны изменить код здесь. К концу этого шага у вас должно получиться что-то похожее на видео, мы запускаем футболку ватным тампоном, пропитанным медицинским спиртом, изображение воспроизводит один цикл и не может быть повторно запущено, пока цикл не будет выполнен. полный.

Шаг 5: собираем футболку

Ура! Теперь, когда у вас есть дисплей, датчик и код, пришло время собрать все воедино. В конце концов, у нас будет все оборудование, прикрепленное к внутренней рубашке, а затем верхняя рубашка сверху, скрывающая все. Футболки были слишком большими, поэтому мы отрезали полоску снизу. Это дало нам ткань, необходимую для того, чтобы сшить карман, чтобы скрыть фурнитуру.

Внутренняя рубашка:

  1. Начните с того, что сначала поместите полоски изоленты на заднюю часть сетки NeoPixel, чтобы закрепить ее (вы поймете, что все в порядке, если сможете носить сетку целиком).
  2. Ткань приклейте сетку NeoPixel на внутреннюю часть футболки. Убедитесь, что сетка находится по центру и над тем местом, где на самом деле находятся легкие.
  3. Дайте клею высохнуть по мере необходимости, убедитесь, что клей не просачивается на заднюю часть рубашки, и приклейте рубашку закрытой. Когда сетка включена, посмотрите, как далеко можно разместить Arduino, батарею и т. Д. Для нас мы припаяли перемычки так, чтобы наши электронные компоненты находились сзади рубашки.
  4. Пришейте полоску ткани, чтобы получился небольшой карман для электронных компонентов. Вы можете вшить в карман некоторые компоненты (например, Arduino), чтобы сделать его более безопасным.
  5. Сделайте небольшую прорезь, чтобы датчик выглядывал из-за нас, это было в центре воротника на спине рубашки.

Верхняя рубашка: Причина в том, что верхняя рубашка выглядит лучше с верхней рубашкой. Внешняя рубашка скрывает электронику и рассеивает свет от NeoPixels.

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

Шаг 6. Устранение неполадок

Поздравляю! Теперь у вас есть пригодная для носки футболка, которая загорается в зависимости от уровня загрязнения воздуха. Если нет, то вы, вероятно, столкнулись с препятствием (мы сталкивались со многими), поэтому вот несколько советов по устранению неполадок:

  • Паяльные площадки на полосах NeoPixel безумно маленькие, поэтому надежно соединить сетку сложно. Мы использовали свинцовый припой, многожильный электрический провод и соединения, склеенные горячим клеем.
  • В результате того, что NeoPixel находится так близко друг к другу на полосе, мы теряем как минимум 1 пиксель каждый раз, когда мы разрезаем прядь. Лучше использовать ножницы, чем точный нож, просто снимите пластиковую смолу и разрежьте.
  • Если дисплей NeoPixel показывает странный цвет (например, переход в красный, любой оттенок красного вместо белого), вероятно, это связано с тем, что сеть не получает достаточно энергии. Чтобы загрузить код, мы отключили все от сети, загрузили код, затем отключили компьютер, подключили аккумулятор к Arduino и, наконец, подключили адаптер ноутбука к электросети.
  • Если дисплей NeoPixel показывает совершенно случайные цвета через случайные промежутки времени, убедитесь, что причины общие.
  • При использовании клея для ткани не используйте слишком много, чтобы он просочился и склеил футболку. Между двумя кусками ткани кладем деревянную доску, которая иначе соприкасалась бы.

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

Рекомендуемые: