Светодиоды WS2811 имеют неправильный цвет, если я не прикоснусь к проводу передачи данных
Это проблема с электричеством / оборудованием, но для справки, вот моя настройка:
Я использую Wemos D1 mini в сочетании с Home Assistant, работающим на RPi3. Настройка MQTT работает нормально, и команды выполняются безукоризненно, но цвета полностью отключаются, если я не прикасаюсь к проводу передачи данных.
Например, если я запрошу сплошной синий цвет и прикоснусь к проводу, все они станут синими. Если я отпущу провод, первый светодиод загорится красным, а остальные - ярко-зеленым. Если я прикоснусь к проводу, они снова станут синими. Любые запрошенные цвета или узоры также показывают запутанные изменения.
Какой эффект вызывает это, и что я могу сделать, чтобы это исправить?
Использование Tanbaby 5V 60A для питания
Светильники Alitove WS2811 5V 12mm RGBs
@humbleLearner, 👍-1
Обсуждение1 ответ
Похоже, что биты искажаются. Существует более одного провода, какой из них вы имеете в виду? Данные? Земля? Власть?
Из руководства по рекомендациям Adafruit NeoPixels:
Перед подключением NeoPixels к любому крупному источнику питания (“настенному” источнику постоянного тока или даже к большой батарее) добавьте конденсатор (1000 мкФ, 6,3 В или выше) на клеммы + и –.
Поместите последовательно резистор от 300 до 500 Ом между выводом данных Arduino и входом первого NeoPixel. Этот резистор должен находиться на неопиксельном конце провода, чтобы быть эффективным!
Постарайтесь свести к минимуму расстояние между Arduino и первым пикселем.
Избегайте подключения NeoPixels к цепи под напряжением. Если вам просто необходимо, всегда сначала подключайте заземление, затем + 5 В, а затем данные. Отсоедините устройство в обратном порядке.
При питании пикселей от отдельного источника питания перед подачей питания на микроконтроллер подайте питание на пиксели.
Я согласен, что это проблема искаженных битов, но как прикосновение к проводу передачи данных "исправляет" это? Пока советую пропустить конденсатор, так как это проявляется как проблема с данными. Попробовал добавить резистор, но это полностью устраняет сигнал. Провод передачи данных составляет всего 4 дюйма, он впаян в плату и подсоединен к светодиодному входу данных., @humbleLearner
ваше тело добавляет емкость ко всему, к чему оно прикасается, @jsotola
Что является источником данных? Частный детектив? ESP8266? На каком напряжении вы работаете? Неопиксели требуют 5 В, насколько я помню. Если вы работаете при напряжении 3,3 В, производительность может быть незначительной., @Nick Gammon
ESP8266 подает сигнал. Огни больше похожи на "рождественский свет", это не неопиксели., @humbleLearner
Да, хорошо [Адафрут называет их Неопикселями] (https://www.adafruit.com/product/1655 ). Технически они могут не быть "брендом" Neopixel, но Neopixels используют чип WS2811 (среди прочих)., @Nick Gammon
При каком напряжении вы питаете чипы WS2811?, @Nick Gammon
И каково напряжение передачи данных? 3,3 В или 5 В?, @Nick Gammon
GND на ESP8266 должен быть подключен к постоянному току от вашего источника питания. С помощью короткого сигнального провода вы можете сделать это на любом конце; при более длительных пробегах рекомендуется использовать витую пару GND & Signal и подключить GND к DC - на первом пикселе., @TomG
- Управление светодиодной лентой с помощью ИК-контроллера с помощью Arduino
- Контакты NodeMcu и светодиод RGB
- FastLED: невозможно адресовать светодиод индивидуально.
- Цикл for(), похоже, не прерывается?
- Как читать и записывать EEPROM в ESP8266
- Как сделать выводы Tx и Rx на ESP-8266-01 в выводах GPIO?
- Как навсегда изменить скорость передачи данных ESP8266 (12e)?
- Как заставить 5-вольтовое реле работать с NodeMCU
У меня такая же проблема, я устанавливаю конденсатор в нужное место, а также подключаю резистор, и когда я подключаю резистор, он вообще не работает. Есть еще какие-нибудь отзывы по этому поводу?, @James