Автоматическое освещение лестницы
Добрый день, уважаемые коты!
Направте, пожалуйста, на путь истинный. Нашел интересный проэкт
http://anow.ru/2012/04/automatic-il ... s-arduino/
но, хотел бы сделать (или лучше переделать?) в следующее:
1. Светодиоды RGB для возможности смены цвета подсветки (и, или каких-нибудь эффектов)
2. Зажигание светодиодов сделать по ШИМ
3. Включать подсветку на 1-ой и последней ступенкька с наступленем темноты на 10-20% можности
Или лучше отказаться от RGB и сделать просто ШИМ...
Как платформу собираюсь использовать Ардушку, ультразвууковые датчики тоже есть
Посоветуйте каким образом грамотно организовать сие дело.
Количество ступенек 16 шт.
Жду советов. Заранее всем спасибо!
Re: Автоматическое освещение лестницы
Я думаю что ответы на вопросы 1 и 2 , найдешь в теме про Ambilight
Re: Автоматическое освещение лестницы
все сделал. арду микро + TLC5940 + два ультразвуковых датчика + фоторезистор.
кому инетресно могу кинуть скетч...
Re: Автоматическое освещение лестницы
Выкладывай, посмотрим
И видео если есть тоже выкладывай
Re: Автоматическое освещение лестницы
Видео чуть позже выложу. нечем снимать пока...
скетч вот. при наступлении темноты включает первую и последнюю ступеньку.
PHP код:
#include "Tlc5940.h"
#include "Ultrasonic.h"
TLC_CHANNEL_TYPE channel;
//Устанавливаем контакты для первого датчика
#define TRIG_PIN 5
#define ECHO_PIN 6
//Устанавливаем контакты для второго датчика
#define TRIG2_PIN 7
#define ECHO2_PIN 8
//Определяем первый датчик
Ultrasonic OurModuleUp(TRIG_PIN, ECHO_PIN);
//Определяем второй датчик
Ultrasonic OurModuleDown(TRIG2_PIN, ECHO2_PIN);
const unsigned char DataPin = 0;
const unsigned char clockPin = 1;
// Диапазон при котором сработает сенсор
const float minBottomIn = 33.0f;
const float minTopIn = minBottomIn;
//задержка выстрела сенсоров
const long pingReadDelay = 50;
// задержка между ступеньками
const long lightSpacing = 150;
//задержка свечения всей лестницы
const long lightHold = 10000;
//количество ступенек
const byte kol_st = 9;
//маскимальная яркость
const long maxLight = 4095;
//задержка ШИМ
const int delPWM = 5;
//шаг наращивания яркости
const int stepPWM = 50;
//переменная под датчик освещенности
int val;
void setup()
{
Tlc.init();
Serial.begin(9600);
pinMode(DataPin, OUTPUT);
pinMode(clockPin, OUTPUT);
}
void loop()
{
val = analogRead(0);
//Проверяем освещенность в помещении
if (val>=1020){
//зажигаем первую и последнюю ступеньку на 5% от максимума
Tlc.set(0,200);
Tlc.set(kol_st-1,200);
Tlc.update();
//проверяем дачтики, сначала верхний, потом нижний
if((OurModuleUp.Ranging(INC) < minTopIn) && (OurModuleUp.Ranging(INC) > 0))
{
Serial.println("Top sensor tripped.");
fadeDOWN();
}
if((OurModuleDown.Ranging(INC) < minTopIn) && (OurModuleDown.Ranging(INC) > 0)) {
Serial.println("Bottom sensor tripped.");
fadeUP();
}
}
delay(pingReadDelay);
}
void fadeUP()
{
// Tlc.clear();
for (int i=0; i<kol_st; i++) {
for (int j=0; j<=maxLight; j=j+stepPWM) {
Tlc.set(i,j);
Tlc.update();
delay(delPWM);
}
delay(lightSpacing);
}
delay(lightHold);
for (int i=0; i<kol_st; i++) {
for (int j=maxLight; j>0; j=j-stepPWM) {
if (j<stepPWM) j=0;
Tlc.set(i,j);
Tlc.update();
delay(delPWM);
}
delay(lightSpacing);
}
}
void fadeDOWN()
{
for (int i=kol_st; i>=0; i--) {
for (int j=0; j<=maxLight; j=j+stepPWM) {
Tlc.set(i,j);
Tlc.update();
delay(delPWM);
}
delay(lightSpacing);
}
delay(lightHold);
for (int i=kol_st; i>=0; i--) {
for (int j=maxLight; j>0; j=j-stepPWM) {
if (j<stepPWM) j=0;
Tlc.set(i,j);
Tlc.update();
delay(delPWM);
}
delay(lightSpacing);
}
}
Re: Автоматическое освещение лестницы
тема интересна, тоже хочется глянуть видеодемонстрацию
Re: Автоматическое освещение лестницы
Видео почти как в первом посту. единственное, что я планирую поставить свтодиод один и так, чтобы светил на ступеньку, а не с торца...
Монтировать буду на выходных. думаю в понедельник будет мое видео
Re: Автоматическое освещение лестницы
Есть вопрос к уважаемому сообществу. Если ставить светодиодные ленты, припустим по метру, тогда нужно ставить транзисторы? потому что у ТЛС выходной ток до 120 мА... кто подскажет схемrу? учитывая, что с ТЛС выходит минус...
Re: Автоматическое освещение лестницы
замерьте, какой ток потребления метровой светодиодной ленты
Re: Автоматическое освещение лестницы
1 метр - около 1А
вообщем сделал все сам. Поставил логику НЕ и ключик на TIP122 на каждый выход. Логика для инвертирования ШИМа, которая управляет транзистором, тот в свою очередь комутирует 12 вольт напрямую на ленту.
Схему дорисую чуть позже...
Re: Автоматическое освещение лестницы
Цитата:
Сообщение от
IgorSokol
Добрый день, уважаемые коты!
Направте, пожалуйста, на путь истинный. Нашел интересный проэкт
http://anow.ru/2012/04/automatic-il ... s-arduino/
но, хотел бы сделать (или лучше переделать?) в следующее:
1. Светодиоды RGB для возможности смены цвета подсветки (и, или каких-нибудь эффектов)
2. Зажигание светодиодов сделать по ШИМ
3. Включать подсветку на 1-ой и последней ступенкька с наступленем темноты на 10-20% можности
Или лучше отказаться от RGB и сделать просто ШИМ...
Как платформу собираюсь использовать Ардушку, ультразвууковые датчики тоже есть
Посоветуйте каким образом грамотно организовать сие дело.
Количество ступенек 16 шт.
Жду советов. Заранее всем спасибо!
Кстати, ссылка не работает. Я в этой схеме использовал встраиваемые в ступеньки специальные сетильники + трансформатор 220*12v. Датчики движения вроде есть уже в самих светильников, но я не стал брать такую модель, ибо дорого.
Re: Автоматическое освещение лестницы
Да я уже все сделал. причем в нескольких вариантах, хоть с обычными лентами, хоть с РГБ... с ключами на УЛН2003 и транзисторами ТИП122. Использовал драйвер TLC5940. просто никому не интересно :)
Re: Автоматическое освещение лестницы
Цитата:
Сообщение от
IgorSokol
... . просто никому не интересно :)
А вот и неправда! Выкладывайте. Зима на носу, вечерами скучно, будет чем заняться