День добрый!
К сожалению официальная отправка проекта связана со значительными сложностями, поэтому пока время терпит попробую (с вашей помощью) обойтись без отправки. Скажите, достаточно ли вам будет подробных скриншотов конфигурации ПЛК с настройками?
На данный момент было выполнено следующее, результаты не обнадеживают.
В теме прочитал, что у человека зависал обмен (как и у меня) с периферийными модулями. В этой же теме, пост #9, Филоненко Владислав отписался, что такое возможно в больших проектах с временем цикла более 10 мс. Размер моего проекта 60 кб, практически полностью написан на ST, только PLC_PRG на CFC. Циклы FOR, WHILE, Repeat не используются.
Что сделал с момента последнего письма.
1) Я установил время цикла 5 мс, но спустя какое-то время обмен снова завис.
2) Установил, что если выполнить команду "Сброс" или 'Сброс (холодный)', то связь не отвисает. Если выполнить 'Сброс (заводской)' то обмен начинает работать нормально, естественно нужно загрузить программу вновь.
3) Изменение скорости обмена с 9600 на 19200 также не помогло.
4) Сменил ПЛК на новый, из коробки. У моего текущего ПЛК прошивка 2.14, у нового 2.15.9. Обмен завис через 2 часа. Т.е. дело не в моем конкретном ПЛК, и не в версии прошивки.
5) Осциллограф на клеммах A и B ПЛК показывает - сигнал четкий, без помех, амплитуда дифф. сигнала 3.5 В. Причем проверка происходила, когда обмен снова завис (но напомню, что индикаторы на модулях 1ТД и 4ТД мерцают даже в случае, если в конфигурации ПЛК обмен завис).
Я так понимаю, что дело в программе (проекте), но куда копать не знаю.
В планах провести эксперименты по:
1) Включению контроля четности (сейчас четность не проверяется).
2) Вытащить провода сети RS из кабель-каналов, чтобы они висели в воздухе.
3) Написать обмен через библиотеку (опыта не было, но думаю погуглить форум и примеры и сделаю).
4) Перейти на протокол ASCII, вместо RTU... но ПЧ Веспер поддерживает только RTU.
5) Поставить отдельный ПЛК110 для обмена с модулями ТД, далее ПЛК110 опрашивать ПЛК160 по UDP. Но это не рациональное решение, не хотелось бы к нему прибегнуть.
6) Опрашивать модули ТД посредством панели оператора СП270, затем передавать в ПЛК.
Спасибо.





Ответить с цитированием