Умный огород, проблема с часами реального времени!

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем Recha, 30 июл 2019.

  1. ИгорьК

    ИгорьК Гуру

    Вывод. Проблемы в схемотехнике
     
  2. Recha

    Recha Нуб

    т.е все таки помехи?- напутать там нечего не мог, ибо провода с реле ушли на усиленные реле а остальное как было так и подключалось, все провода с маркерами и проверялось не один раз. Трансы идут на разрыв плюс ушел на усиленные реле и питание всего остального (клапана, сервы на двери, свет и т.д.) а минуса пошли в разрыв через Relay Shield (4 канала по 5 А)
     
  3. ИгорьК

    ИгорьК Гуру

    В схемотехнике я полный ноль. Конечно, серьезные наводки могут класть устройство на бок, как с этим бороться - тут вопрос либо к опытным товарищам, либо к тем, кто все знает.

    Если тестовое устройство работало три дня, а "на местности" - полчаса, дело не в коде.
     
  4. Recha

    Recha Нуб

    Эх будем ковырять, было бы не плохо услышать товарищей из Амперки!!!
    Вам Игорь, Огромное спасибо за все материалы и помощь в поиске проблемы.
     
  5. Recha

    Recha Нуб

    Ах да, если выбросить часы реального времени а в коде просто прописать время через setInterval и
    setTimeout то вроде как бы все работает, но время съезжает по понятным причинам... А хочется культурно
     
  6. ИгорьК

    ИгорьК Гуру

    Пробовали try ... catch?
     
  7. Recha

    Recha Нуб

    Пока изучаю (для меня это все сложно, то что написано на вики это школьная программа и + еще что то нового) а то что вы даете материал это уже похлеще будет, да и к сожалению нет искры под рукой что бы экспериментировать а на вторую для этого пока поджимают финансы
     
  8. ИгорьК

    ИгорьК Гуру

    Купите esp32 или esp8266, что проще - на них тоже JavaScript от Espruino ставится.

    esp32, возможно, даже по количеству ног потянет, и внутренние часы там есть, их можно синхронизировать по сети.

    Кстати, попытка повторить то что вы уже сделали на Ардуино приведет вас к удивительным наблюдениям :)
     
  9. Recha

    Recha Нуб

    в сложности написания скетча? или еще большим ошибок, очень любопытно

    Будем искать, в Минске с этим пока есть легкие проблемы

    стоит ли рассматривать STM32 Nucleo F401RE ??
     
  10. ИгорьК

    ИгорьК Гуру

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

    Не думаю, плата ни чем принципиально не отличается от Искры ЖС.
     
  11. Recha

    Recha Нуб

    Приведу часть кода
    Код (Javascript):
    //Таймер полива основного огорода зона 1
    setInterval(function() {
    if (watlev3.read() === 'down') {
    if (vlaga <= dojdik) {
    if (temp > holodno) {
    relay7.blink(60*10);
    relay1.blink(60*10);
    print('vse good polivzona1');
    }
    }
    }
    else {
    relay7.turnOff();
    relay1.turnOff();
    }
    //Таймер полива основного огорода зона 2
    setTimeout(function() {
    if (watlev3.read() === 'down') {
    if (vlaga <= dojdik) {
    if (temp > holodno) {
    relay6.blink(60*10);
    relay1.blink(60*10);
    print('vse good polivzona2');
    }
    }
    }
    else {
    relay6.turnOff();
    relay1.turnOff();
    }
    //Таймер капельного полива в парнике
    setTimeout(function() {
    if (watlev1.read() === 'up') {
    relay4.blink(60*30);
    relay5.blink(60*20);
    print('vse good parnik polivaetsja');
    }
    else {
    relay4.turnOff();
    relay5.turnOff();
    }
    },32400000);  расписаны сутки и высчитан промежуток
    },900000);
    },86400000);
    что то вроде этого? или я не правильно понял?
     
  12. ИгорьК

    ИгорьК Гуру

    Видимо :) Работает?
     
  13. Recha

    Recha Нуб

    Работать работает, но за неделю таймер сдвинулся ровна на 16 часов, либо Искра захлебнулась либо свет рубанули :confused: это выход конечно, хоть как то полив работает, но когда насос в колодце маслает в 2 ночи соседи не очень рады
     
  14. ИгорьК

    ИгорьК Гуру

    Сколько у вас управляемых и управляющих устройств, то есть сколько ног нужно в работе?
     
  15. Recha

    Recha Нуб

    Не знаю как правильно называть пины, распишу как есть я думаю вы поймете
    13 пинов Искры именуемые Р0-Р13
    Один пин I2C -под часы
    И один пин цифровой - под датчик света

    Итого 15 пинов
     
  16. ИгорьК

    ИгорьК Гуру

  17. ИгорьК

    ИгорьК Гуру

    У вас 13 реле?
    Или 3 реле, датчик света и часы?
     
  18. ИгорьК

    ИгорьК Гуру

  19. Recha

    Recha Нуб

    8 реле
    3 датчика воды
    1 анемометр (перспектива)
    1 часы
     
  20. ИгорьК

    ИгорьК Гуру

    Ну тогда работайте с системными часами. Получайте от них время и привязывайтесь к нему. Не думаю что за неделю что-то сдвинется более чем на несколько минут.