Автоматическая перезагрузка роутера.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 29 авг 2014.

  1. ИгорьК

    ИгорьК Гуру

    Продолжение темы здесь. Более функциональный и дешевый проект.

    На даче - интернет.
    Оттуда поступает информация о температуре на улице, в доме и в системе отопления. И еще кое-какая информация.
    Роутер стал изредка зависать. Последний раз завис во вторник утром - всю неделю информация отсутствует. Хорошо не зима.
    Давно хотел сделать такое устройство, да все откладывал: :eek: - душила Жаба!
    ДОСТАЛО!
    Итак, берем следующий комплект. Ардуино Un0:
    [​IMG]
    вместе с Ethernet Shield:
    [​IMG]

    или их сумму в виде Arduino Ethernet USB-Serial адаптер для ее программирования):
    [​IMG]
    И добавляем реле. Провода, разъемы, питание, коробки - по вкусу.
    Реле присоединяем к 7 ноге ардуино и грузим скетч.

    Суть явления. По протоколу NTP ардуино раз в 10 минут опрашивает три сервера времени. Если хотя бы один ответил - все хорошо. Если нет - размыкаем контакты реле, через которое идет питание на роутер, ждем 30 секунд и замыкаем вновь.
    Через пять минут проверяем - помогло или нет. Если нет, то повторяем процедуру каждый час. (Логика в том, что интернета может не быть и не по вине роутера - часто его не дергаем.)
    Так делаем двое суток (50 раз, можете изменить), и понимаем, что уже ничего не поможет. То есть полностью перестаем дергать модем.
    Скетч в приложении.
    P.S. Скетч осуществляет разбор сигнала, полученного от NTP, и формирование стринга времени. Для целей данного устройства он излишен, но это для будущих проектов... Как обычно, после проверки работоспособности, закомменируйте все что связано с выводом в Serial.
    P.P.S. Самое сложное в этом проекте - справиться с жабой :)
    00044455.jpg

    14.09.2014. Полет нормальный. Пару раз в неделю устройство перегружает точку доступа. Интернет остается доступным.

    Вот здесь этот проект "размножили" без указания на источник и как-то еще доработали :)
     

    Вложения:

    Последнее редактирование: 2 ноя 2017
  2. jduino

    jduino Нерд

    что такое жаба?
     
    ИгорьК нравится это.
  3. ИгорьК

    ИгорьК Гуру

    :D Это когда .... здесь.
     
    KellaKilla нравится это.
  4. jduino

    jduino Нерд

    Ахаха. А в Китае разве не дешевые примочки?
     
  5. jduino

    jduino Нерд

    У меня для биткоин фермы используется роутер который питается по USB шине. Сделал скрипт, который пингует ресурсы, как только превышен порог потери пакетов (завис роутер) то USB порт уходит в disable. Через минуту USB порт переходит в enable.
     
  6. ИгорьК

    ИгорьК Гуру

    Это спонтанный проект был. Очень достало - взял быстро спаял и быстро скетч написал.
     
  7. jduino

    jduino Нерд

    я попробую повторить)
     
  8. ИгорьК

    ИгорьК Гуру

    А у меня это все перегружает LTE6100. Одним USB не обойтись.
     
  9. pastry777

    pastry777 Нуб

    Спасибо вам за вашу идею и реализацию!огромная задача решилась на даче благодаря этому решению...правда пока "дергаю" только usb модем,чтоб не нарушалась сеть по чем зря....если будет не достаточно,то переставлю полностью на роутер,а пока вторые сутки полет нормальный полностью в автоматическом режиме..уже раз перегрузил,смотрю по логам на SD=))
     
  10. pastry777

    pastry777 Нуб

    здравствуйте=)а не могли бы вы подсказать где взять адреса других NTP серверов...как то я замялся в поиске,все для компьютеров..а как адрес взять не пойму...на даче все прекрасно работает,а вот дома в городе первый и второй сервер никогда не отвечают,только третий...что-то режет ответ видимо...может провайдер...вот хотел бы подставить другие сервера.спасибо.
     
  11. ИгорьК

    ИгорьК Гуру

    NTP серверы искать http://tf.nist.gov/tf-cgi/servers.cgi
     
    pastry777 нравится это.
  12. Djvan

    Djvan Нерд

    Т.е. два последних блока по сути для проекта не нужны (отправка пакета и анализ пакета)?
     
  13. ИгорьК

    ИгорьК Гуру

    Нужны отправка пакета и проверка факта его получения. Анализ действительно не нужен.
     
  14. Djvan

    Djvan Нерд

    Т.е. только последний раздел убираю (*Анализ пактета от NTP)? Просто немного запутался - т.е. последний блок - анализирует полученный пакет данных и выводит в сериал точное время?
     
  15. ИгорьК

    ИгорьК Гуру

    Закомментируйте все строки fUDPReadAndGotTime(); и саму функцию внизу. Будет и без этого работать.
    А зачем Вам это надо?
    (Я сейчас уже просто не помню, почему сделал эту функцию, возможно просто для контроля работоспособности. Находился в состоянии душевного волнения и невозможности управлять своими действиями, вызванными зависанием роутера в самые неподходящие моменты :) )
     
    Последнее редактирование: 4 фев 2015
  16. Djvan

    Djvan Нерд

    Мне в принципе это и нужно для перезагрузки роутера и камеры, просто думал немного облегчить скетч, и добавить в него дополнительные функции отправки температуры, влажности, давления на народный мониторинг. Но потом решил разделить все на два устройства - для простоты организовать метеостанцию для народного мониторинга через esp8266 - вообще минуя ардуину...
     
  17. ИгорьК

    ИгорьК Гуру

    Да конечно можно все это в одном устройстве сделать. Более того, перезагрузку роутера можно повесить на результат установки связи с народным мониторингом и не заморачиваться сервисами NTP.
    Другое дело - насколько надежен сам народный мониторинг, мне иногда кажется, что он периодически подвисает. Если есть возможность притащить датчики в место этого устройства - сэкономьте плату.
     
  18. Djvan

    Djvan Нерд

    Ну мне кажется, что лучше все таки на НТП проверку проводить. А термодатчики - спокойно повешу на 8266 - давно хотел ее пощупать - тем более есть готовая прошивка с возможностью подключения 2 датчиков дхт, одного дс18.. и давления. Как раз хватит для моих потребностей - и к тому же уже в прошивке имеется возможность интеграции с народным мониторингом.... Спасибо за ответы.

    ЗЫ. А может Вы знаете - для передачи информации с камеры на народный мониторинг - нужен статический IP или нет?
     
  19. nickoass

    nickoass Нуб

    Искал подобную вещь в инете и нашел ))) Спасибо Игорю.
    в загашнике валялись Унка и шилд W5100.
    вместо релюшки пока для теста подключил светодиод через резистор.
    залил скетч. заморгали светодиоды. жду несколько минут, отключаю лан -кабель от шилда, ничего не происходит.
    Вопрос... нужно ли в скетче прописывать кроме мака и айпишника шилда еще и адрес шлюза и маску подсети ? нужно ли в маршрутизаторе порты пробрасывать ?
    спасибо
     
  20. ИгорьК

    ИгорьК Гуру

    А Вы хорошо разобрались с тем, как (по времени) реагирует на происходящее скетч?

    У меня ничего этого не делается. Порт для NTP, вроде как по умолчанию открыт в роутерах. Хотя...
    Вы проверяли - ваша плата просто "ловит" время с NTP сервера? Погуглите, найдите простой скетч для проверки времени и вывода его в Serial - станет яснее: https://www.arduino.cc/en/Tutorial.UdpNtpClient