Реле с задержкой. Как сделать?
Как ни странно, но если еще и плавное управление мощностью светиков - то на контроллере удобнее и красивше 😃 Только не ардуну, а атини осьминогий или любой другой мелкий таракан за писат рублей.
Мне делали доводчик стекол в машине из реле стеклоочистителя лобового стекла. После подачи сигнала оно работало достаточно времени что бы поднять стекла.
Как ни странно, но если еще и плавное управление мощностью светиков - то на контроллере удобнее и красивше 😃 Только не ардуну, а атини осьминогий или любой другой мелкий таракан за писат рублей.
Првиет!
А чего не ардруине?
У меня есть нано вариант =) в целом тоже самое но без питания.
Вообщем пока заказал релюшки физические, ну то-есть которые так как мне нужно сами могут; но не нашел выключения с задержкой… пока… точнее их нет в наличии нигде.
С ардруиной возникла проблема… за 7 лет забыл язык =)))
Буду вспоминать.
SerjA6 - не пойдет такое реле, мне нужно около 2х минут, а просто перепаивать его внутренности и разбираться как это все внутри него работает - честно влом.
Выкладывать наработки сюда чтоли =)
Начну со схемы того что я хочу.
Ну и до кучи: как сделать плавное выключение светодиодной ленты.
Большом конденсаторе, выключил и пока он разрежается ленкта медленно гаснет.
Ну а если хочется все таки на контроллере то аттини13 (как достаточная и самая дешевая микросхема с внутренним генератором) + IRFZ44. Ни или IRFZ46ZSPBF. Да в общем то любой мосфет IRFZ… Так как не требует дополнительной обвязки и по току хватит на любую светодиодную ленту. И не только ленту.
SerjA6 - не пойдет такое реле, мне нужно около 2х минут, а просто перепаивать его внутренности и разбираться как это все внутри него работает - честно влом.
А ну если так то тини+ IRFZ…
Ну еще на питание тини потребуется что-то типа 7805
А ну если так то тини+ IRFZ…
IRLZ - чтобы без лишних деталюшек затвор через небольшое сопротивление подцепить сразу к тини. Или ПИКу - кому что больше нравится.
IRLZ - открытие от 2 вольт
IRFZ - открытие от 4 вольт
Если питать контроллер от 5 вольт то без разницы.
Если питать контроллер от 3.3 вольт то IRLZ конечно.
Вообщем господа, как обещал. Схема “от руки”.
И Написал небольшую софтинку для Arduino. Попробую использовать его.
Идея такова: 3 кофра мотоцикла. В каждом подсветка + 12вольт для зарядок.
Подсветка гаснет через 30-60 секунд после выключения двигателя, а зарядки включаются через 10 секунд после запуска двигателя.
- есть еще подсветка мотоцикла (надпись зеленая).
- Установка Маяк 2Н для мигания фарами.
Не пинайте сильно, я с электроникой на “ты”, но уважительно. В такие глубины еще не лез.
Вот код Ардуинки, вдруг кому нужен.
//реле включения с задержкой и выключения с задержкой
//версия 0.7const int buttonPin1 = 8;//Контакт “генератор”
const int buttonPin2 = 9;//Контакт “зажгание”
// Это кнопки для Ардуины
const int ledPin1 = 13; //Реле 1 - управление
const int ledPin2 = 12; //Реле 2 - управлениеint offtimer =500; //Таймер выключения = 500 = 5 секунд.
int ontimer = 0; // Таймер включения// переменные положения кнопок
int buttonState1 = 0; //генератор
int buttonState2 = 0; //зажиганиеvoid setup() {
pinMode(ledPin1, OUTPUT); //этот пин выход
pinMode(ledPin2, OUTPUT); //этот пин выход
pinMode(buttonPin1, INPUT);//этот пин вход
pinMode(buttonPin2, INPUT); //этот пин вход}
void loop()
{
// читаем состояние пинов
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);if (buttonState1 == HIGH) //если есть напряжение
{
// подаем сигнал на реле 1
digitalWrite(ledPin1, HIGH);
} //if1
else { //если питания пропало
if (offtimer = 500) //если таймер еще не оработал (полный)
{
digitalWrite(ledPin1, LOW); //выключаем реле 1
}//if2
else { // Если не полный таймер
offtimer = offtimer -1; //уменьшаем на 1 (1/10 секунды)
delay (100); //ожидаие чтобы работал таймер
}//else2
offtimer = 500; //кончился таймер - перезаполняем его
}//else1if (buttonState2 == HIGH) //если есть питание зажигания
{if (ontimer == 300) //если уже прошло 3 секунды
{
digitalWrite(ledPin2, HIGH); //включаем реле 2}
else //если не прошло
{
// ontimer = 300;
delay (10);
ontimer = ontimer +1; //то добавляем 1 к таймеру
}//else 3
//if 4
}//if 3
else //если нет питания
{
digitalWrite(ledPin2, LOW); //вырубаем
ontimer = 0;//и обнуляем таймер.
}}//loop