Просмотр полной версии : ПЛК63 - непонятные паузы в исполнении при опросе по 485
При опросе модуля МВ110-224.1ТД контроллером ПЛК 63 возникают непонятные мне "паузы" длительностью приблизительно 0,3...0,4 сек. Это видно по миганию индикатора связи и по тому, что в это время программа не реагирует на изменение сигнала.
Для проверки, в программе оставил только инициализацию порта и чтение регистров, - все равно паузы (непериодичные, но, примерно раз в 2...3с) остаются. С чем это может быть связано?
Николаев Андрей
23.06.2011, 15:43
Можно чуть подробнее. что значит паузы? Что значит программа не исполняется? Как Вы это определяли, чтобы понимать.
А без сетевого обмена?
Фрагмент программы, который отлаживался представлял собой опрос блока МВ110-224.1ТД + DIG_FLTR + ON_OFF_HIST_REG + BOOL_TO_REAL (выход на реле). при работе появлялись моменты времени (до 0,4сек. когда сеть молчала, и, соответственно, никакой реакции на входной сигнал не было.
Николаев Андрей
23.06.2011, 21:12
если не сложно - проект и описание как смотрели (какое внешнее воздействие и что должно было происходить) на plc@owen.ru
Без сетевого обмена как работает программа?
Проект выслал 23.06. Подскажите, - в чем может быть ошибка?
Для эксперимента загрузил программу состоящую из двух действий:
инверсия переменной и вывод ее через релейный выход. Вместо равномерного"тиканья" получил какой-то ШИМ с периодом около 1.5-2 с. Почему бы это? М.б. моя проблема не в самом 485?
Я правильно понимаю, что вы пытаетесь щелкать реле с интервалом в 1мс?
Тогда реально может получиться все, что угодно.
Александр Приходько
01.07.2011, 10:24
Здравствуйте, Alex_yu. Поглядели мы вашу программу. Честно, развели руками. Обмен делать в графических языках не то что бы неудобно, сложно и тяжело отлаживать, но я бы назвал и не верным подходом.
Рекомендую вам переписать проект на ST, благо примеры есть и на форуме и на дисках.
Очень вам советую использовать оператор CASE, выполнили опрос, получили ответ, перешли в новый статус, сделали следующий опрос. Просто, наглядно и обмен по циклам распределяете.
Разбирать программу такого плана как у вас сложно и очень долго. Скорее всего где-то идут коллизии. Т.к. сам в свое время пытался на графических языках сделать, через пару часов мучений просто "забил"!
Спасибо - буду пробовать на ST. Хотя, ИМХО, графические языки намного приятнее, если, конечно, они корректно транслируются.
К сожалению, запись на ST ничего не меняет. Тестовый пример - уже проще некуда. Все равно, иногда (случайным образом раз 5 -10 в минуту), идет ошибка таймаута и сеть молчит 05-1c.
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot