PDA

Просмотр полной версии : Проблемы ПЛК 100-24КМ



Сергей71
24.05.2007, 12:01
Контроллер ПЛК 100-24.КМ
Прошивка 2.00.6
Таргет 2.0

Краткое описание.
Система считывает данные с I7016 ICP DAS и выполняет функцию многокомпонентного дозатора.
После пуска системы она проработала около 2 недель.

После система остановилась.

Когда я приехал программа в контроллере уже не запускалась.
После многих разных и ужасных попыток я кое-как подключился к ПЛК (Ошибка связи).
Программа в нем отсутствовала.

Но проблемы начались еще до того как исчезла программа.

1. Иногда не сохранялись ретайн переменные. Вечером выключили, утром включили, данных нет одни нули.
2. Показания с I7016 не обновляются. Иногда после вкл. и выкл. ПЛК (бывает несколько вкл. выкл.) информация с I7016 продолжала поступать нормально но не долго.

Я увидел ошибки выдаваемые модулем DCON (смотри лог и сриншот). Некоторые я немогу расшифровать.
Подключившись на линию RS 485 вижу, что данные проходят нормально (смотри скриншот консоли). Соответственно в программе при ошибках, показания с I7016 не обновляются.

Замена блока питания и I7016 положительных результатов не дало.
Во время проверки все оборудование в цеху выключено (помехи исключены).

Хочу услышать толковое объяснение.
И как правильно подключиться к ПЛК при надписи Ошибка связи. Индикатор связи при этом иногда горит иногда нет.
Почему при записи программы в ПЛК происходит перезагрузка ПЛК (похоже по WatchDog).

Спасибо за ответы.

Филоненко Владислав
24.05.2007, 12:48
Добрый день!
1. Когда вы поменяли прошивку? Производили ли вы форматирование Flash при перепрошивке?

2. Коды ошибок - есть в описании конфигурации:
0х83 - принят ответ, но его формат несоответствует заданному в константной части строки формата - скорее всего помеха (настоятельно рекомендую использовать CRC)
0x43 - если ошибка не постоянная, то это значит, что разбор поля с модификатором (в данном случае [7f]) провалился, например из-за появления неликвидного символа (к примеру буквы) в ответе - (настоятельно рекомендую использовать CRC). При постоянной ошибке - неправильный формат строки разбора ответа.

Как я вижу, ошибки возникают достаточно редко. Опыт работы с DCON-устройствами показал, что при обмене с ними велик процент ошибок и рекомендуется использовать контрольную сумму. Сам протокол очень чувствителен к помехам.

Сергей71
24.05.2007, 14:06
>2. Коды ошибок - есть в описании конфигурации:
Видны ошибки 0x50, 0x02 ???

Я просматривал протокол через другую программу, просто подсев на линию и смотрел на эран. В момент когда в CodeSys вижу ошибки, то я просматриваю весь обмен за определенный промежуток времени, включая этот. Но ни каких дефектов в посылках на передачу и прием нет. Но возникает следуещее, появляется ошибка (при этом запросы идут и ответы тоже, все правильные), а код ошибки как будто завис.

>Как я вижу, ошибки возникают достаточно редко.
Ошибки идут с интервалом от нескольких секунд до нескольких минут. А восстанавливается нормальная работа также от нескольких секунд до нескольких минут или только после одного и более выкл. вкл. ПЛК. Простой в несколько секунд и в производстве брак.

И почему иногда не сохраняются ретайн переменные?

Сейчас взял новый ПЛК, прошью 2.00.9 с форматированием и еду на обект. Зодно поставлю CRC. Завтра выложу результаты.

Филоненко Владислав
24.05.2007, 15:11
То, что вы видите на экране CoDeSys - совсем не то, что происходит в действ. Значения переменных обновляются с определенной периодичностью и чем больше переменных на экране и чем медленнее линия связи, тем больше период обновления будет.

Про коды 0х02 и 0х50

0х02 - модуль послал запрос и ждет ответа
0х50 - ответ ещё не пришел, а послан ещё один запрос.
К сожалению, в док-те не виден режим работы мастера.
Вы работаете в режиме по команде/смене значения? - дождитесь результата предидущего обмена.
Если по таймеру, то у Вас период опроса << времени ожидания ответа - это надо исправить.

Сергей71
25.05.2007, 08:18
Спасибо за ответ.
Теперь зная ошибки 0х50 и 0х02 сделаю корректировки.

Когда прошил версию 2.00.9, то по команде PLCInfo выводиться версия 2.00.8.

Вопрос на будущее, возможно ли просмотреть что в реальности приходит в момент ошибок при использовании любого протокола? Какой символ(ы) не верные?

Малышев Олег
25.05.2007, 09:54
Ответ - для DCON и modbus нельзя. Для протокола ОВЕН можно посмотреть код ошибки при возврате n.Err (см описание протокола ОВЕН для RS485)

Филоненко Владислав
25.05.2007, 12:16
Когда прошил версию 2.00.9, то по команде PLCInfo выводиться версия 2.00.8.



Очепятка:rolleyes: