Skype для бизнеса Status WS2812 RGB LED Подсветка стола: 6 шагов
Skype для бизнеса Status WS2812 RGB LED Подсветка стола: 6 шагов
Anonim
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола
Skype для бизнеса Статус WS2812 RGB LED Подсветка стола

Я далеко не первый человек, который изменил цвет подсветки в зависимости от статуса вашей учетной записи Skype для бизнеса, но я думаю, что я первый, кто написал учебное пособие с использованием адресных светодиодных лент WS2812. Я предпочитаю эти фонари, потому что с минимальным оборудованием (полоса, питание / данные / земля) вы можете получить большое количество светодиодных фонарей. Вам не нужно паять резисторы, силовые транзисторы или даже отдельные провода для красного / зеленого / синего цветов. Они могут делать гораздо больше, чем просто отображать единственный статический цвет, используемый в этом проекте.

Огромный привет Хакстеру за руководство и код, который я использовал в качестве основы для своего - проверьте, они, вероятно, пишут лучше, чем я: https://www.hackster.io/matheus-fenner/skype-statu …

Их проект на github:

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

Шаг 1. Материалы и инструменты

Материалы и инструменты
Материалы и инструменты
Материалы и инструменты
Материалы и инструменты
Материалы и инструменты
Материалы и инструменты

Программное обеспечение

  • Загрузите последний скетч Arduino и.exe на моем github:
  • Вам понадобится IDE Arduino, чтобы загрузить его в свой микроконтроллер.
  • Если вы хотите изменить проект самостоятельно, вам понадобится Visual Studio.

Аппаратное обеспечение

  • Светодиодная лента WS2812B - ее можно назвать WS2811 / WS2812 / WS2812B - они все одинаковые, просто обратите внимание на напряжение вашей полосы (или пикселей) [поиск на eBay] [поиск на Amazon]
  • Разъем постоянного тока (гнездовой) с винтовыми клеммами - лампам требуется больше энергии, чем может обеспечить USB 2.0 или Arduino Uno, поэтому я запитал их от запасного источника питания 12 В. Эти цилиндрические гнезда - отличный способ взаимодействия с источниками питания постоянного тока без какого-либо повреждения источника питания. [eBay]
  • Блок питания 12В, минимум 1А, желательно 2А-5А. Эти светодиоды могут потреблять большой ток при полной яркости, большинство онлайн-калькуляторов скажут, что вам нужен источник питания не менее 3,3 А на каждый 1 метр полосы 60 светодиодов / м - это немного агрессивно, но используйте отдельный источник питания в одну сторону или Другая. Или источник питания 5 В, если вы используете светодиодные ленты 5 В
  • Соединительный провод - я использовал сплошной провод 22AWG [eBay]. Рекомендую Remmington Industries.
  • Arduino Uno (или любой другой микроконтроллер, с которым совместима библиотека FastLED)
  • Магниты - чтобы прикрепить его к нижней части стола. Если ваш стол не металлический, вам, вероятно, следует использовать липучку.

Инструменты

  • Пистолет для горячего клея
  • Паяльник
  • Устройства для зачистки проводов / кусачки
  • ПК с ОС Windows
  • Нож XActo или резак для коробок, чтобы отрезать картон / пенопласт по размеру
  • Босс, который не боится случайных вещей, шпионит за вами

Шаг 2: WS2811 / WS2812 / b Справочная информация

WS2811 / WS2812 / b Справочная информация
WS2811 / WS2812 / b Справочная информация
WS2811 / WS2812 / b Справочная информация
WS2811 / WS2812 / b Справочная информация

WS2811 - это дешевый и распространенный тип адресной светодиодной ленты. Каждый свет на полосе представляет собой светодиод RGB, и вы можете управлять цветом каждого из них индивидуально. WS2811 на самом деле не светодиод - это микросхема интегральной схемы, которая использует определенный протокол передачи данных. [таблица данных] Каждая микросхема WS2811 увеличивает сигнал данных до рабочего напряжения, поэтому вам не нужно беспокоиться об ухудшении качества сигнала. Вы можете управлять более 1000 светодиодов со скоростью 20 кадров в секунду с протоколом WS2811.

Я предпочитаю использовать эти светодиодные ленты, потому что для них очень просто подключить проводку. Дайте ему питание, землю и данные. Вам не нужно использовать силовые транзисторы, как вы это делаете со стандартными 4-проводными полосами RGB, и вам не нужно прокладывать провод к микроконтроллеру для каждого источника света или каждого канала. Вы просто даете ему питание и сигнал данных, и все готово.

Обратной стороной этих полосок является то, что им нужен микроконтроллер, подающий им сигнал при включении, вы не можете просто дать ему питание и никакой сигнал и ожидать, что он будет работать. После того, как вы напишете на нем цветной рисунок, полоска будет удерживать этот рисунок, пока вы не обновите его или не потеряет питание. Еще одним недостатком является то, что их временная диаграмма очень точна и разборчива, поэтому вам, возможно, придется отключить прерывания на вашем микроконтроллере, чтобы библиотека FastLED имела приоритет при записи на светодиоды. Это может привести к нестабильности Wi-Fi и требует специальной структуры кода.

Теперь, когда мы поговорили об этом, вам не нужно самостоятельно обрабатывать точную синхронизацию данных !! Библиотека FastLED сделает это за вас !! Вот почему ими так легко пользоваться.

ПРИМЕЧАНИЕ. - Термины WS2811 / WS2812 / WS2812b взаимозаменяемы. Согласно этой странице, WS2811 - это ИС драйвера светодиода, а WS2812 - это WS2811, помещенная в корпус светодиода 5050. Обычно WS2811 составляет 12 В и адресуется только каждые 3 светодиода, WS2812 - 5 В и адресуется каждым светодиодом.

Шаг 3: Схема подключения и сборка оборудования

Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования
Схема подключения и сборка оборудования

СВЯЗЫВАЙТЕ ЗЕМЛЮ ТОЛЬКО МЕЖДУ ARDUINO И ИСТОЧНИКОМ ПИТАНИЯ ПОСТОЯННОГО ТОКА. НЕ СВЯЗЫВАЙТЕ + 5В или +12В ВМЕСТЕ. От микроконтроллера к светодиодной ленте должно быть только два провода: Data и Gnd.

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

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

Я использовал 3-контактные разъемы JST на каждом конце полосы, чтобы все было модульным, но вы также могли просто припаять все на месте.

Посмотрите на полоски: через каждые несколько огней должна быть стрелка, иначе каждая сторона будет помечена «DO» или «DI» - DI - это данные In, DO - данные Out. Вам необходимо подключить его [Arduino] [DI] ---- LED ---- [DO] [DI] ------ LED ----- [DO] [DI] и т. Д. В основном линия данных от arduino подключается к контакту DI. Если на нем есть стрелки, убедитесь, что ваши данные «текут» в направлении стрелок.

Лично я обнаружил, что легче припаять питание и заземление к середине полосы, а не к входному контакту - на самом деле не имеет значения, куда вы его поместите, потому что +/- все соединены вместе как одна большая шина. Итак, на одном из снимков вы увидите, что для перехода от одной светодиодной ленты к другой я припаял только разъем для линии передачи данных - это работает, потому что я дал +12 В и Gnd на обеих полосах. Так или иначе, вам нужно, чтобы все ваши заземляющие провода были связаны вместе на протяжении всего проекта.

Я использовал цилиндрический разъем постоянного тока для входа от моего настенного источника питания, а Arduino Uno питается через USB-кабель. Я использовал зеленую лягушку, чтобы приклеить магниты к доске, потому что это было удобно.

Шаг 4: Программирование Arduino

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

Что касается программ Arduino, я думаю, что это довольно просто. Он контролирует последовательный порт и при появлении новых данных считывает целочисленные значения, а затем записывает этот RGB в источники света.

Для компиляции кода вам понадобится библиотека FastLED. Вы можете загрузить его через диспетчер библиотек Arduino IDE или с веб-сайта FastLED:

Единственное, что вам нужно изменить, это PIN-код и NUM_LEDS в начале программы. PIN-код - это цифровой контакт, к которому вы подключили линию передачи данных источников света - я использовал контакт 11. NUM_LEDS - это количество адресуемых светодиодов или групп светодиодов. Моя полоса 12 В адресуется только через каждые 3 лампочки, поэтому, несмотря на то, что на полосе около 75 дискретных светодиодов, код Arduino адресует только 26 ламп. (Итак, если я скажу «Включите светодиод 2», то загорятся 3 маленьких огонька.)

Просто измените PIN-код и NUM_LEDS в соответствии с вашей проводкой и загрузите код в контроллер. Затем запустите LyncPresenceBridge.exe, как описано на следующем шаге …

Шаг 5: Установка и использование программного обеспечения для ПК

Установка и использование программного обеспечения для ПК
Установка и использование программного обеспечения для ПК

Загрузите отсюда:

На самом деле вам не нужно ничего устанавливать - просто запустите LyncPresenceBridge.exe. Он поместит значок в ваш лоток (правый нижний угол экрана), который выглядит как USB-накопитель с индикатором внизу.

Щелкните правой кнопкой мыши значок и выберите «Настройки» и установите последовательный порт на любой порт, к которому подключен ваш Arduino. Самый простой способ узнать это - открыть IDE Arduino, перейти в Инструменты> Порт> и посмотреть, какой порт указан в списке. Другой способ узнать это - открыть Диспетчер устройств, развернуть раздел «Порты (COM и LPT)» и посмотреть, что там есть. Мой показывает только один, но если их несколько, просто попробуйте их все, пока не получите тот, который работает с программным обеспечением.

Использовать

Программа просто отслеживает ваш статус Skype и при изменении статуса записывает набор значений RGB через последовательный порт. Таким образом, вы можете изменить свой статус с «Доступен» на «Занят», и цвет индикаторов должен измениться с зеленого на красный.

Вы можете щелкнуть значок правой кнопкой мыши и выбрать настройку для включения индикаторов, например «Доступен», «Занят», «Нет на месте» и «Выкл.». Это полезно, если вам надоели зеленые / красные огни или вы хотите полностью их выключить.

Дважды щелкните значок, чтобы открыть палитру цветов, где вы можете установить цвет огней на собственный цвет, например фиолетовый или розовый. Вы также можете получить к нему доступ через контекстное меню.

Меню настроек также можно использовать для изменения яркости света и скорости анимации.

Шаг 6: изменение программного обеспечения

Модификация программного обеспечения
Модификация программного обеспечения

Вы можете изменить цвета для каждого статуса, изменив файл решения в Visual Studio.

Загрузите все с моей страницы Github и откройте файл.sln в Visual Studio (версия Community работает). Оттуда вы можете редактировать, какие цвета он выводит для каждого статуса, добавлять / удалять элементы в контекстном меню и многое другое.

Изображения, используемые в качестве значков, находятся в Resources.resx в разделе LyncPresenceBridge Properties.

Если вы вносите кучу правок, я рекомендую зайти в «Свойства», «Настройки» и изменить последовательный порт по умолчанию на тот, к которому подключен ваш контроллер. Каждый раз, когда вы строите решение, оно сбрасывается на порт по умолчанию, и ему надоедает необходимость каждый раз менять порт в настройках.

Если в сертификате есть пароль, попробуйте «пароль» без кавычек. Если он говорит, что срок действия подписи истек, попробуйте выполнить «Создать тестовый сертификат» и использовать его, чтобы подписать его для собственного использования. Если ничего не помогает, напишите мне.