По поводу картинки вместо схемы:
у меня ардуино нано установлена на плате расширения, реле не отдельно, а на плате с обвязской, ну и готовый преобразователь напряжения. Схемы платы и обвязки реле я не знаю.
Подойдет если их модульно отобразить как один модуль?
типа такого:
[Дим-мычъ] К сожалению, кондеры не помогли, ставил 2 паралельно непосредственно перед СИМ800 и один вход миниджек. Кондеры 470мкФ на 25В.
Читал в инете, что питание просаживается когда модем регистрируется и когда принимает, отправляет сообщения. Но похоже не мой случай, хотя кондер 1 оставлю как фильтр.
Честно говоря такое ощущение что СЕТАП проходит раньше, чем модем успевает зарегится в сети, хотя цикл Вайл указан.
Когда питание отключаю, включаю модем еще часто моргает, а реле уже начинаются включаться (то есть пошел основной код программы loop).
когда делаю рестарт на НАНО, модем уже зарегистрирован в сети, он нормально отрабатывает, присылает смс Ready.
мысль такова: для проверки данной версии в Setup, перед while, поставить delay.
и проверить данную теорию.
Попробуйте тогда в конце setup() поставить задержку хоть тем же delay().
Я ответил не прочитав второй пост. ![]()
Так надо по питанию +5В тоже поставить 470мкф, макс. близко к ардуино. Именно здесь самое слабое место. Возможно, “просаживает” стабилизатор Vin/+5V… По хорошему на реле нужны отдельные +5В
ЗАРАБОТАЛЛООО!!!
поставил после цикла while задержку 3 сек. и модем успевает зарегиться в сети.
и все заработало.
5 отключений и пока все ок. ставлю на неделю буду смотреть.
......
while(!Sim800l.available()) // Зацикливаем и ждем инициализацию SIM800L
{
Sim800l.println("AT"); // Отправка команды AT (соединить)
delay(2000); // Пауза 2 сек
Serial.println("Connecting…"); // Печатаем текст «Connecting…»
}
delay(3000);
Serial.println("Connected!"); // Печатаем текст «Connected!»
Sim800l.println("AT+CMGF=1");
.....
кондеры есть, поставлю как доп.гарантия - лишним не будет.
Вот delay что животворящий делает …
Бывает…
Непонятно только, почему на УНО без делея работает
Бутлодер дольше выполняется?
вряд ли, там разница всего 65мсек
Скорее всего. Или собака или похереные 1.5к памяти. Тупо перешить на загрузчик от Uno и посмотреть.
не знаю дольше или нет. у меня только вопрос, а цикл while почему не дорабатывает?
почему то я думал, что он заканчивается когда модем зарегился и готов к работе. Похоже в нано особенность какая-то.
Вы уверены, что это делает то, что вы задумали?
while про модем ничего не знает и ему все равно - зарегился тот или нет. Если вы ему condition подсунули некорректный, он и будет недорабатывать - он же не дурак, чтобы глупости творить.
уже не уверен.
а как лучше сделать?
поправьте если не прав
цикл - пока не получим ответ от модема делать
отправляем в модем команду АТ
ждем 2 сек
печатаем на экран “соединяюсь”
заново в цикл
как только пришел ответ
вводим команды для настройки модема.
Вроде как все логично?! как только модем ответил на команду АТ значит он готов принимать команды.
сравнил с кодом который у меня сделан на Уно (автозапуск авто с телефона) сходится буква в букву. Уно работает с января 2023 - ни разу сбоев не было.
ради интереса надо как-нибудь эту схему перекинуть на Уно и посмотреть будем там такой глюк или нет, но это уже в другой серии.
Сейчас пока так пускай тестируется.
Спасибо Всем огромное, что силком до толкали до правильной мысли ![]()
Где там о «зарегистрирован в сети» говорится?))
