LANp – RGB-лампа з частин сканера, керована по мережі

Не так давно ми випаяли RGB світлодіодну лампу з старого сканера Canon, який валявся і мав бути викинутий у смітник. Потім ми трохи погралися з RGB світлодіодним елементом і знайшли йому оригінальне застосування.

Ми придумали LANp – це Arduino та Ethernet шилд, які керують світінням RGB світлодіодної лампи в режимі реального часу за допомогою скрипта для вибору кольору на базі Javascript.

Що входить у комплект?

1x Arduino
1x Arduino Ethernet/SD шилд
1x Micro-SDHC карта
1x RGB світлодіодна лампа з сканера
Кілька проводів

Даний веб-серверний код базується на попередній статті і наведений далі просто для того, щоб показати, як налаштувати SD-карту на базі веб-сервера і обслуговувати файли по мережі з підтримкою AJAX запитів.

Ми використовували світлодіодну лампу QK1-4761 з сканера Canon PIXMA MP620 – на момент написання даної статті на аукціоні eBay продавалися кілька таких ламп за ціною близько 7 фунтів стерлінгів.

Ми почали з припаювання проводів до контактних площадок світлодіодної лампи сканера. Дивіться фото нижче. Вам необхідно поекспериментувати, який куди, проте зазвичай це R G B і вихід +v. Дана лампа працює від напруги 5В (це зовсім не означає, що і ваша буде працювати від такого ж напруги!).

Як видно на фото вище, ми тільки що припаяли провід до контактної площадки 4 з 5 – нижні не використовуються, далі вище розташовані R G B +5В.

Переконайтеся в тому, що жоден з проводів або місць пайки не торкаються один до одного, оскільки це може призвести до повного зміщення кольору світлодіодної лампи. Також можна заізолювати проводи після пайки, щоб уникнути їх зіткнення при перенесенні світлодіодної лампи.

Підключіть висновки до Arduino; ми використовували висновки 3, 5, 6 для RGB.

Далі необхідно відформатувати SD-карту у файлову систему FAT для веб-сервера, а потім на неї потрібно буде скопіювати сторінку index.htm, яка буде керувати вибором кольору. Вихідний код для цього файлу наведено нижче.

Скопіюйте вищезазначений код і збережіть його як index.htm на SD-карту. Якщо при відображенні веб-сторінки у вас виникли які-небудь проблеми, тоді необхідно запустити приклади Card Info. Це дозволить переконатися в працездатності вашої SD-карти спільно з Arduino.

Ми використовували скрипт вибору кольору на базі Javascript Flexi Colour Picker, створений Девідом Дурманом (David Durman). Даний скрипт підтримує безліч веб-браузерів; ми вбудували Javascript замість окремого файлу, щоб не запитувати занадто велику кількість файлів з веб-сервера одночасно.

Далі необхідно отримати скетч код Arduino (додано нижче).

Примітка: Переконайтеся в зміні мережевих налаштувань, щоб вони відповідали вашим вимогам. Якщо ви не використовуєте висновки 3, 5 і 6, тоді внесіть відповідні зміни.

Слід ще раз зазначити, що якщо ви просто хочете змінювати колір і більше нічого (наприклад, без веб-сервера і т.д.), тоді просто скопіюйте наступні функції:

void setColour(int r,int g,int b) {
   r = map(r, 0, 255, 255, 0);
   g = map(g, 0, 255, 255, 0);
   b = map(b, 0, 255, 255, 0);
   analogWrite(redPin, r);
   analogWrite(greenPin, g);
   analogWrite(bluePin, b);
}

Ми перераспределимо значення при поверненні до RGB. Вони отримають значення 0 для 255 і 255 для 0. Ця функція зберігає їх і записує ці значення для передачі на відповідні висновки.

Реальна веб-сторінка повинна виглядати так, як показано нижче:

З цього моменту ви зможете змінювати колір і бачити ці зміни на світлодіодній лампі! Це відбувається завдяки відправці AJAX запиту до веб-сервера Arduino при кожному натисканні кнопки миші. Потім код на Arduino приймає значення RGB і передає їх у світлодіодну лампу, що призводить до зміни кольору.

Ми зняли невелике демонстраційне відео (просимо вибачення за якість відео та освітлення, оскільки воно було записано на телефон!)

Це все, що потрібно для створення керованої по мережі RGB світлодіодної лампи!

Оригінал статті

Прикреплені файли:

Top