Реле времени своими руками 2
Ранее уже делал подобную схему, но вышло слишком дорого и сложно. Поэтому реле времени своими руками буду упрощать и удешевлять 😉 Во первых уберем индикатор, соответственно сдвиговый регистр будет не нужен. Из индикации добавим светодиод, который будет показывать включено или выключено реле. Так-же подумав, решил добавить кнопку ручного включения/выключения реле. Сердцем будет микросхема attiny85. Так-же в схему добавил и блок питания (HLK-PM01), чтоб вся конструкция была единой платой
Принципиальная схема (потыкать в эмуляторе можно тут):

Схема на текстолите:


Ну и скетч:
bool myClock[]={1,0,1,0,0,0,0,0,0,0,0,0,0,0};
int myClock_len=sizeof(myClock);
int delayTime=6000;
bool button_active=false;
int inc=0;
uint32_t myTimer1;
int relay_pin = 4;
void setup() {
pinMode(0, OUTPUT);
pinMode(2, INPUT_PULLUP);
digitalWrite(0, HIGH); // Включение светодиода
pinMode(relay_pin,OUTPUT);
}
void loop() {
if (millis()-myTimer1>=delayTime||millis()-myTimer1<0){
myTimer1=millis();
if (button_active==false){
if (myClock[inc]==0){
digitalWrite(0, LOW); // Выключение светодиода
digitalWrite(relay_pin,LOW);
} else {
digitalWrite(0, HIGH); // Включение светодиода
digitalWrite(relay_pin,HIGH);
};
inc++;
if (inc>myClock_len){
inc=0;
};
};
};
if (digitalRead(2)==0){
if (button_active==false){
digitalWrite(0, HIGH); // Включение светодиода
digitalWrite(relay_pin,HIGH);
button_active=true;
} else {
button_active=false;
digitalWrite(0, LOW); // Выключение светодиода
digitalWrite(relay_pin,LOW);
};
delay(1000);
};
}
Вот так готовлю почву чем заниматься долгими зимними вечерами.. Итоговая стоимость предварительно, вышла примерно такая:
- блок питания — 160р
- attiny85 — 80р
- текстолит — 150р
- светодиод — 7р
- реле — 150р
Итого — примерно 600р. Ну собственно это цена реле времени своими руками уже готового если покупать на валдберис. Но тут то своими руками 😉




