[QUOTE=Валенок;233032]Про бутон
3. Программный косяк в прошивке (небось конфигураторный мастер-то ?)
(других вариантов не вижу)
[QUOTE]
Просвятите новичка. А делать мастером через конфигурацию не желательно?
[QUOTE=Валенок;233032]Про бутон
3. Программный косяк в прошивке (небось конфигураторный мастер-то ?)
(других вариантов не вижу)
[QUOTE]
Просвятите новичка. А делать мастером через конфигурацию не желательно?
Вообщем выполнено следующее.
Установлены согласующие резисторы в начале и конце линии.
Время пробовал ставить и 10/150, как рекомендуете вы, так и 50/200, так и 15/20 - всё тщетно. Какое-то время работает, затем последние значения замирают.
Единственно что, на 50/200 проработал 8 часов без сбоев, но на втором часу второго дня обмен застыл.
Заметил одну особенность, возможно важную.
Во всех случаях, когда обмен замирал, индикаторы RS-485 на модулях 1Т и 4ТД продолжают мигать с достаточно высокой частотой, как будто обмен продолжается. Т.е. индикаторы на модулях мигают, а на индикаторах в конфигураторе ПЛК последние значения.
Куда копать, может попробовать поставить другой 160ый ПЛК и погонять на нём?
Последний раз редактировалось IIeroniux; 20.01.2017 в 10:47.
Есть возможность выложить проект, либо в личку?
У меня был опыт - писал (посредством библиотеки) блок обмена данными лазерных датчиков с нестандартным протоколом Modbus (т.е. без RTU). Тогда ставил какую-то программу, и смотрел что посылает ПЛК/отвечает датчик. Но там было просто, запрос - ответ.
А если у меня тут идет непрерывный поток информации с модулей 4ТД, 1ТД и ПЧ боюсь не смогу 'правильно' прослушать линию. Но судя по яростному миганию индикаторов rs-485 на модулях ввода 4ТД/1ТД (писал подробнее выше) обмен продолжается после замирания значений в конфигураторе PLC.
День добрый!
К сожалению официальная отправка проекта связана со значительными сложностями, поэтому пока время терпит попробую (с вашей помощью) обойтись без отправки. Скажите, достаточно ли вам будет подробных скриншотов конфигурации ПЛК с настройками?
На данный момент было выполнено следующее, результаты не обнадеживают.
В теме прочитал, что у человека зависал обмен (как и у меня) с периферийными модулями. В этой же теме, пост #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, затем передавать в ПЛК.
Спасибо.
Проект, без проект мы воспроизвести не можем.
Попробуйте убрать кусками из программы, например оставив только конфигурацию и посмотреть что будет
Тролль-наседка, добрый, нежный и ласковый