Автоматическое освещение лестницы
Добрый день, уважаемые коты!
Направте, пожалуйста, на путь истинный. Нашел интересный проэкт
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 вольт напрямую на ленту.
Схему дорисую чуть позже...