Автоматическое освещение лестницы

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Автоматическое освещение лестницы

Сообщение Igor Sokol »

Добрый день, уважаемые коты!
Направте, пожалуйста, на путь истинный. Нашел интересный проэкт
http://lukjanow.ru/2012/04/automatic-il ... s-arduino/
но, хотел бы сделать (или лучше переделать?) в следующее:
1. Светодиоды RGB для возможности смены цвета подсветки (и, или каких-нибудь эффектов)
2. Зажигание светодиодов сделать по ШИМ
3. Включать подсветку на 1-ой и последней ступенкька с наступленем темноты на 10-20% можности

Или лучше отказаться от RGB и сделать просто ШИМ...

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

Жду советов. Заранее всем спасибо!
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Автоматическое освещение лестницы

Сообщение Engineer_Keen »

Переделок слишком много получается. Проще написать с нуля, заодно избавится от ардуины. Если брать AVR, то подойдет любой с АЦП (для определения темноты) и SPI (для управления 16х3 каналами светодиодов), т.е. практически любой, даже семейства TINY.
Аватара пользователя
VIRUS_6666
Родился
Сообщения: 5
Зарегистрирован: Чт июн 28, 2012 18:20:03
Откуда: Мурманск

Re: Автоматическое освещение лестницы

Сообщение VIRUS_6666 »

Проект интересный. Скоро буду пилить подобное, только для коридора.
Не совсем понял эти моменты.
Igor Sokol писал(а):Зажигание светодиодов сделать по ШИМ
Или лучше отказаться от RGB и сделать просто ШИМ

Без ШИМа не вариант сделать плавное затухание и зажигание. а цвета это немного другая история.
Удваиваю Engineer_Keen. Без ардуины выйдет дешевле и опыта(experience) получишь больше. Для определения темноты либо датчик либо часики даласовские (к ним потом прикрутишь дисплей, холодильник, пылесо.. умный дом короче /flight of ideas).
А вот от бампера звукового я бы отказался в пользу ИК бампера/барьера или механики/пьез на ступеньках.
Кто понял жизнь - тот не спешит...
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Автоматическое освещение лестницы

Сообщение Engineer_Keen »

И насчет ультразвука согласен с VIRUS_6666, он имеет смысл когда нужно расстояние до объекта мерить, а вам нужно просто обнаружение "пересечения объектом луча", так что ИК или механического датчика хватит. А вот для определения темноты лучше все-таки использовать фотодиод/фототранзистор, так как освещенность вряд ли будет совпадать со временем суток...
Аватара пользователя
VIRUS_6666
Родился
Сообщения: 5
Зарегистрирован: Чт июн 28, 2012 18:20:03
Откуда: Мурманск

Re: Автоматическое освещение лестницы

Сообщение VIRUS_6666 »

Только пришло в голову. :idea: Как-то видел на тюбике подобное.
Суть такова: каждая ступенька оборудована сенсором, и светятся не все разом, а только та ступенька на которой стоишь и, в пол силы, одна выше и ниже. ОЧЕ КРУТО ). Хотя если память мне не изменяет в том проекте лестница была стеклянная и пластины подсвечивались "в ребро".
В общем, как говориться, было бы желание, а идей и их реализаций великое множество.
Кто понял жизнь - тот не спешит...
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

За советы спасибо. Буду просматривать варианты.
Но, наверное, всетаки буду делать на ардушке, бутлоудер в принципе в любую мегу прошить можна...
Да и програмить на ней несложно... так как я в программировании новичек.
Иначе без помощи никак...

Почему советуете отказатся от ультразвуковых барьеров?
Аватара пользователя
VIRUS_6666
Родился
Сообщения: 5
Зарегистрирован: Чт июн 28, 2012 18:20:03
Откуда: Мурманск

Re: Автоматическое освещение лестницы

Сообщение VIRUS_6666 »

Патамучта, они дороже (3 бака на ибэе), с ними придётся погемороить потому, что они выдают не просто данные есть что перед ними или нет, а имеют вполне конкретный протокол общения, который придётся обрабатывать. ик-барьер или механика куда проще.
для общего развития вот ссыль на статью про эти дальномеры http://avrproject.ru/publ/kak_podkljuchit/ultrasonic_sonar_hc_sr04/2-1-0-51

Да и програмить на ней несложно... так как я в программировании новичек.
Иначе без помощи никак...

сложная задача - лучший способ улучшить свои навыки. А в помощи я думаю не откажут. Ну или можешь сделать на ардуине, а потом перенести на нормальное устройство.
Кто понял жизнь - тот не спешит...
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

Так и хочу. Сначала на ардушке - потом на мегу. ультразвуковіе барьеры уже есть, просто валяются... хотя переделать пару строк будет не проблема.
Как смотрите на TLC5940NT? хоть и дороговата, но зато сразу 16 каналов ШИМ.
итого их нада всего 3...

вообщем начинаю генерировать код. буду выкладывать сюда, если кому интересно...
Аватара пользователя
VIRUS_6666
Родился
Сообщения: 5
Зарегистрирован: Чт июн 28, 2012 18:20:03
Откуда: Мурманск

Re: Автоматическое освещение лестницы

Сообщение VIRUS_6666 »

Идейно. но вот, как мне кажется, проект достаточно простой и зачем городить огород с этой дорогой и большой микрой. Шим вполне можно сделать программно если в контроле его нет. если раскинуть мозгами - можно даже на тиньке 13 реализовать и тогда всё будет уберкомпактно. хотя без этой микры придётся ставитьсиловые ключи для подключения светодиодных лент...
Кто понял жизнь - тот не спешит...
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Автоматическое освещение лестницы

Сообщение Engineer_Keen »

Короче заинтересовался, т.к. тоже присутствует лестница на даче. RGB делать не буду (пока), т.к. это именно подсветка, а не декоративное освещение. Остановился на tiny24+пара 595-х регистров (не 13-я тинька просто потому что в наличии есть 24-е). Светодиоды собираюсь подключать к регистрам через полевики (как раз раздраконил старую материнку, там была куча k3919). Пока сделал только ШИМ. На 8МГц тактовой легко получается 100Гц ШИМ для 16 выходов при 8 битах. Теоретически можно и до 48 каналов сделать.
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

М-да... по-белому Вам завидую. Я в программировании не селен.... потому и выбрал ардушку.

PS. Вот так всегда, кому почти непосильная задача, а кому 15 минут работы и воплощение на том, "что есть в ящике"...
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Re: Автоматическое освещение лестницы

Сообщение aleksandr-zh »

Igor Sokol писал(а):М-да... по-белому Вам завидую. Я в программировании не селен.... потому и выбрал ардушку.

PS. Вот так всегда, кому почти непосильная задача, а кому 15 минут работы и воплощение на том, "что есть в ящике"...


кому надо - берите
делал знакому давно

просто: нажал 1 раз коротко - одно время, нажал и подержал - время работы увеличится на (непомню) сколько сек
перемычками всё задаётся
Не жалуется, значит доволен :)

http://narod.ru/disk/55002420001.d8a0a6 ... v.zip.html
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

Ну, вообщем родил я таки сий проект. Собрал на ардушке микро и драйвере tlc5940 (16 каналов).
датчики ультразвуковые, четырехпроводные. Дороговато, зато просто и быстро... :)

Включается по фоторезостору.

Схему не рисовал, все и так понятно. кому интересно - могу выслать скетч и фотки на макетке. в принципе могу и схему отрисовать...

Песпектив много - подключение еще парочки драйверов позволит делать RGB, еще можна сделать эфекты всякие там, подключить дистанционку и т.п. замена датчиков на инфракрасные... вообщем есть где разгулятся...
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

Добрый день! Обнаружился первый глюк...
При определенном затемнении девайс начинает штормить: моргают первая и последняя ступенька. Выставить в условии включения по большему условию не помагает... Условие либо вообще не срабатывает... либо слтшком рано...

Что посоветуете? как можна усреднить показания? Из идей только подсчет в цикле, усреднение, а потом проверка условия... Тогда, в зависимости от количества шагов образуется пауза перед сработкой датчика, либо же он вообще не сработает...

код

#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 = 7000;
//количество ступенек
const byte kol_st = 9;
//маскимальная яркость
const long maxLight = 4095;
//задержка ШИМ
const int delPWM = 5;
//шаг наращивания яркости
const int stepPWM = 100;

//переменная под датчик освещенности
int val;

void setup()
{
Tlc.init();

Serial.begin(9600);
pinMode(DataPin, OUTPUT);
pinMode(clockPin, OUTPUT);
}

void loop()
{

val = analogRead(0);
//Проверяем освещенность в помещении
Serial.println(val);

if (val>=1022){

//зажигаем первую и последнюю ступеньку на 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();
}

}
else {
//обнуляем первую и последнюю
Tlc.set(0,0);
Tlc.set(kol_st-1,0);
Tlc.update();
}
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);
}
}
ipf
Встал на лапы
Сообщения: 131
Зарегистрирован: Вт сен 20, 2011 18:41:41
Откуда: Вьетнам

Re: Автоматическое освещение лестницы

Сообщение ipf »

Кстати говоря есть готовые решения , например http://ipfgroup.co.uk/ .
Я бы на вашем месте сделал отдельно фотореле , которое давало бы на пин контроллера сразу либо 1 либо 0, исключив таким образом из кода обработку фоторезистора.
Либо как вариант попробовать добавить после проверки датчика освещенности задержку, либо сделать таким образом: если значение датчика освещенности достигло 1022 ждем несколько секунд, затем проверяем еще раз, если оно не меньше 1020 допустим то включаем устройство в работу.
Таким образом если у вас за окном солнце, и тут быстренько по небу пробежит тучка у вас не будет ложных срабатываний + вы избавитесь от мерцания при затемнении (так как мерцание сейчас из-за неравномерности затемнения фоторезистора)
Но я могу и ошибаться, если что поправьте.
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

готовое решение я находил... вот только 99 баксов + доставка.... у меня деталей максимум на 15 вышло :)
решение с инфракрасными датчиками мне не подходит ибо лестница внизу соприкасается со стеной только справа а слева комната...
способ проверки фотодатчика "еще раз" думал... смысла ставить отдельное реле не вижу, ибо теже яйца, только в профиль.
вообщем на эти выходные планирую монтаж на лестницу, потом уже буду игратся с датчиком...
в любом случае -- спасибо за совет.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Автоматическое освещение лестницы

Сообщение BOB51 »

так поставь датчик не "на просвет", а "на отражение" и все станет нормально :beer:
Rimidalw
Открыл глаза
Сообщения: 69
Зарегистрирован: Вт май 15, 2012 05:38:17
Откуда: Барнаул

Re: Автоматическое освещение лестницы

Сообщение Rimidalw »

Igor Sokol писал(а):готовое решение я находил... вот только 99 баксов + доставка.... у меня деталей максимум на 15 вышло :)
решение с инфракрасными датчиками мне не подходит ибо лестница внизу соприкасается со стеной только справа а слева комната...
способ проверки фотодатчика "еще раз" думал... смысла ставить отдельное реле не вижу, ибо теже яйца, только в профиль.
вообщем на эти выходные планирую монтаж на лестницу, потом уже буду игратся с датчиком...
в любом случае -- спасибо за совет.

Добрый день. Интересно увидеть продолжение своего проекта. Можете схему накидать с этим драйвером?
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

запросто. постараюсь сегодня-завтра
Igor Sokol
Родился
Сообщения: 19
Зарегистрирован: Пт ноя 11, 2011 12:12:13

Re: Автоматическое освещение лестницы

Сообщение Igor Sokol »

схемка где вот такая. включение ТЛС5940 стандартное по даташиту...
на схеме нет преобразователя с 12 на 5 вольт... в принципе и все.

кстати, сделал такой девайс другу, но с небольшими изменениями. пришлось добавить логику "НЕ" и ключи на транзисторах. зато теперь хоть прожекторы зажигай...
Вложения
ardu+tlc5940.jpg
(116.4 КБ) 2667 скачиваний
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»