Реле времени своими руками 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р. Ну собственно это цена реле времени своими руками уже готового если покупать на валдберис. Но тут то своими руками 😉

До чего дошел прогресс (с)

Хм..однако. Попробовал новую нейросеть для сочинения музыки и накладывания слов на мотив музыки. И был удивлён. Прогресс очевиден, и музыка и песни получающиеся действительно пригодны для прослушивания.

Вот пример того что получилось:

Попробовать самому можно здесь.

нейросеть для сочинения музыки

Опрос клавиатуры при помощи curses

Опрос клавиатуры при помощи curses несколько запутан. Во первых есть способ получить одиночное нажатие кнопки при помощи:

res=stdscr.getkey()

В этом случае в res попадёт непосредственно сам символ в виде строки.

Второй способ — использование :

res=stdscr.getch()

В этом случае в res попадет число вида int — код нажатой кнопки. Однако оба способа не работают, когда нужно получить данные о нажатой специальной клавиши, типа стрелок, F1..F12 и т.д. Если необходимо их получить, то нужно сначала включить данную возможность:

stdscr.keypad(True)

Зачем так сделано, загадка. Почему нельзя получить эти данные сразу?

Так-же есть способ отключить ожидание нажатия кнопки, при помощи:

curses.cbreak()
Опрос клавиатуры при помощи curses

Итог: задача «Опрос клавиатуры при помощи curses» выполнена. Можете почитать и другие заметки посвященные Python. Официальная документация на curses здесь

Бинарные логи mysql

С недавних пор обнаружил, что на моёй виртуальной машине, где размещается сайт, как-то подозрительно быстро заканчивается место на жестком диске. Проведя небольшое расследование, обнаружил, что главный виновник — бинарные логи mysql. Странно конечно, потому что в конфигурационных файлах mysql настройка log-bin отключена:

Бинарные логи

И вестись они в принципе не должны. Вообще, бинарные логи обычно нужны только в том случае если:

  • настроена репликация с другим сервером
  • необходимо иметь возможность восстановить поврежденную базу данных (вдруг бекапы не делаете)

В остальных случаях она не нужна. Хм.. ну уже если отключить не удаётся, по неизвестной причине, то можно ограничить накопление логов ключами:

  • expire_logs_days=3 — ограничить глубину логов 3 днями
  • max_binlog_size =100M — ограничить размер файла логов 100 мегабайтами

Чуть погуглив, обнаружил, что в свежих версиях mysql логи отключаются теперь другим ключем: disable-log-bin

Однако.. что делать с файлами логов, если они не были отключены и накопились? Удалять их руками черевато возникновением ошибок. Поэтому лучше войти в консоль mysql и выполнить следующую команду:

RESET MASTER;

Ну и на всякий случай, удалить логи старше Х дней можно вот так:

PURGE BINARY LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 5 DAY);

Могу порекомендовать еще посмотреть мою старую шпаргалку по MySQL и другие лайфхаки

Хотели как лучше, а получилось как всегда (с)

Как то с полгода назад, озаботился я, что текущая тема для моего бложика как-то не очень хорошо отображается на мобильных устройствах. А в «наш век космических кораблей» это уже не очень хорошо.. Поставил другую… трафик и посещаемость стала падать…

век космических кораблей и SEO

Шло время…ну примерно 3 месяца прошло.., и решил я, что не плохо бы прикрутить яндекс метрику на сайте, и посмотреть что там творится с сайтом в Яндекс.мастере. Результат: упал ТИС и посещаемость…

Шло время… как-то с месяц назад, поставил для бложика плагин YOAST SEO, и начал потихоньку причёсывать бложик, чтобы статьи и записи «соответствовали». Жду когда яндекс вообще сайт забанит 😉

Ну я к чему? Так то мне всё равно на самом деле сколько посетителей ко мне заходит на сайт в сутки. В основном всё равно это всё я для себя веду. Но обидно чуток 😉 Вроде «хочешь как лучше, а получилось как всегда»

«В наш век космических кораблей»…нужно меньше ручки куда попало присовывать если всё работает ;). В общем пройтись с наскока и поставить во всех статьях написанных в этом бложике за 12 с гаком лет все фокусные ключевые фразы, SEO заголовки и MEta описания я так и не осилил. Уж больно много. Если только очень постепенно-постепенно, когда совсем будет нечего делать. И фактически единственной статьёй, которая полностью удовлетворяет всем критериям плагина YOAST, является эта статья. Уж я старался, С заголовки придумал, и текст до 300 знаков растянул водой, и картинку вставил с описанием. Есть и одна внутренняя ссылка на самую популярную статью, и одна внешняя, Чтоб этот чёртов смайл наконец уже стал зеленым…

1 3 4 5 6 7 71