Здравствуйте
WB7 с модемом 4G,
Рядом с контроллером установлен контактор на 32А. При замыкании и размыкании контактора, теряется связь с интернетом через модем. В консоли при попытке пингануть отображает name or service not known.
помогает перезагрузка контроллера.
Добрый день
Исходя из логов, можно выделить несколько проблем, связанных с модемом и сетевым подключением:
Проблемы с портом ttyUSB1:
В логах несколько раз упоминается, что порт ttyUSB1 не отвечает, что может быть связано с помехами от контактора или проблемой с модемом. Модем многократно теряет соединение и выходит из строя после десяти тайм-аутов.
Проблемы с PDP-контекстами:
Также есть предупреждения о невозможности проверки активных PDP-контекстов (контексты для передачи данных в сетях 3G/4G), что тоже может свидетельствовать о проблемах с сетевым соединением или нестабильной работе модема.
Проблемы с разрешением DNS:
Сообщение RESOLVE: Cannot resolve host address указывает на то, что при обрыве соединения через модем происходит потеря возможности разрешать доменные имена.
Рекомендации:
Убедитесь, что кабели питания и сигнальные кабели модема расположены подальше от силовых кабелей контактора.
Используйте экранированные кабели для модема и обязательно заземление.
Можно попробовать подключить модем через внешний USB-хаб с питанием, чтобы исключить влияние скачков напряжения.
Также используйте внешнюю антенну, расположенную вдали от силовых установок.
Проверьте стабильность питания контроллера и модема, особенно в момент срабатывания контактора. Возможно, есть серьезные просадки напряжения.
Если вышеуказанные действия не помогут:
Можете использовать следующий скрипт для автоматического перезапуска модема через WB-Rules:
// Переменная для хранения состояния соединения
var isInternetConnected = true;
// Функция для проверки интернет-соединения
defineRule(“check_internet_connection”, {
when: cron(“@every 5m”), // Проверяем каждые 5 минут
then: function () {
runShellCommand(“ping -c 1 8.8.8.8”, {
captureOutput: true,
exitCallback: function (exitCode, capturedOutput) {
if (exitCode !== 0) {
log(“No internet connection detected”);
isInternetConnected = false;
restartModem(); // Перезапуск модема при отсутствии соединения
} else {
log(“Internet connection is OK”);
isInternetConnected = true;
}
}
});
}
});
// Функция для перезапуска модема
function restartModem() {
log(“Restarting modem…”);
// Команда для отключения USB порта модема
runShellCommand(“echo ‘1-1’ | tee /sys/bus/usb/drivers/usb/unbind”, {
captureOutput: true,
exitCallback: function (exitCode, capturedOutput) {
if (exitCode === 0) {
log(“Modem USB unbound successfully”);
// Задержка 2 секунды перед подключением
setTimeout(function () {
// Команда для повторного подключения USB порта модема
runShellCommand("echo '1-1' | tee /sys/bus/usb/drivers/usb/bind", {
captureOutput: true,
exitCallback: function (exitCode, capturedOutput) {
if (exitCode === 0) {
log("Modem USB bound successfully");
} else {
log("Failed to bind modem USB port");
}
}
});
}, 2000);
} else {
log("Failed to unbind modem USB port");
}
}
Здравствуйте, пока нет.
Предприняли следующие действия:
-перенесли контакторы подальше от контроллера.
-питание контроллера сделали от отдельного блока питания + кабель с экраном.
По итогу имеем чуть более стабильную работу, но полностью от проблемы не избавились.
Если раньше после каждого включения терялась связь, то сейчас уже через раз(после 3го -7го)