Вставил сброс Модбаса из рекомендаций, зависания связи не прекратились.
Есть подозрение, что я сделал что-то не так.
Таймер сброса затолкал в PIDReg.PRG моего проекта, экземпляр TON объявлен глобальным.
Вложение 35987
Вид для печати
Вставил сброс Модбаса из рекомендаций, зависания связи не прекратились.
Есть подозрение, что я сделал что-то не так.
Таймер сброса затолкал в PIDReg.PRG моего проекта, экземпляр TON объявлен глобальным.
Вложение 35987
У вас на входе IN нет инверсии - т.е. блок не вызывается.
Да, спасибо, уже обратил внимание.
А то, что данный таймер лежит не в отдельной задаче - не принципиально?
Сделал рекомендуемые изменения на реальной машине. Наблюдаю.
Прошло 10 дней с момента внесения изменений. Нарушений связи не зафиксировано. Проверял (визуально) регулярно, раз 5-6 в день. Но не думаю, что это означает, что проблема решена в корне. Это лишь означает, что не зафиксирован момент нарушения, т.к. "костыль" ресетает порт при обнаружении проблемы.
Проблема может быть и чисто аппаратной. У меня была серия проектов одинаковой конструкции СПК107+ 4 модуля. 16ДН,16Р,6У, 8А. Схемы одинаковые. Одни работали без проблем, на других наблюдалась периодическая потеря связи. Переставляю с СОМ1 на СОМ2 СПК и проблемы исчезли. Всё равно один порт гуляет. Так и работает всё.
Если есть возможность, можно попробовать менять по очереди компоненты. 1м линии, там помехам негде взяться.
Вы точно правильно распаяли разъёмы?
У меня много подобных проектов, где по одному порту мастер на модули иногда с приличной длинной шины, по второму слейв на диспетчерезацию с сотнями метров шины и десятками иных устройств. Годами проблем нет.
Установка работает, сообщения о потере связи иногда (редко) проскакивают, но это не мешает работе.
Обратил внимание на одну интересную деталь.
В проекте используется 8 идентичных ПИД-регуляторов, показания берутся с единственного МВ110-8А, все датчики и нагрузка идентичные.
Однако канал №1 ведет себя как-то не очень понятно - показания как бы "тормозят" по сравнению с другими каналами. Т. е. при включении нагрева на всех каналах кроме №1 начинает подниматься температура (в данном случае примерно 2*С\сек), канал №1 показаний не меняет, хотя нагрев идет 100%. По прошествии некоего времени канал "включается" и показания начинают работать нормально. В дальнейшей работе все идет как надо, без тормозов и прочих перегревов. Ни в программе, ни в визуализации проблем не обнаружил, все каналы программно сделаны идентично методом копирования (с поправкой номеров имен переменных)
Хотелось бы послушать мнения специалистов.
Сложно прокомментировать Вашу проблему без проекта. Если есть возможность - пришлите, пожалуйста, актуальную версию проекта на support@owen.ru с пометкой "Для Ильнура". Мы проанализируем проект на наличие ошибок и по результатам Вам сообщим.
Также будет неплохо получить следующую информацию:
1. Версия прошивки СПК107.
2. Версия прошивки модуля МВ110-8А.
3. Настройки сети (Скорость, четность, протокол и т.д.).
4. Длина линии связи.