PDA

Просмотр полной версии : Диагностика ошибок программ на ПЛК



kuharchukigor
22.02.2013, 13:04
есть ли ресурсы на форуме,посвященные пошаговому анализу причин перезагрузки, зависаний программ в ПЛК? Месяца 2 убил на поиск и не нашел, периодически потеря связи чего-то с чем-то. Нужна помощь (любая). Но фразы типа "Watchdog используй" нужны с расшифровками как использовать конкретно. Если есть спецы в Минске, возможна встреча с компенсацией Вашего потерянного времени. Я аспирант, а время терять на поиск и анализ ВСЕЙ информации жалко. Может, тему создайте для неспецов, а?

lara197a
22.02.2013, 13:29
Вы подробнее опишите.
Связь может теряться по многим причинам. А программа, она как правило или работает или нет. Но в любом случае, без выложенного кода Вам никто особенного ничего не насоветует.

kuharchukigor
25.02.2013, 12:20
настройка МВА-8 http://yadi.sk/d/0XXsY_302rhFu
Описание проблемы и схема http://yadi.sk/d/2nXbwf2E2rhJG
Программа в ПЛК http://yadi.sk/d/4ay2-hw92rhMm

kuharchukigor
25.02.2013, 12:23
В ТРМ заходил с конфигуратора и не сохранял. Если нужно, сохраню.
P.S. Lara197a - Спасибо за то, что обратили внимание на мой вопрос.

Olegis
25.02.2013, 13:10
ПЛК непериодически пищит (порядка 3-10 мин), на СП-270 надпись «Потеря связи с адресом 1».
По ходу у вас происходит потеря связи панели-мастера с ПЛК-слейвом. Это может происходить, когда вы переходите на какой-то экран в панели, а в этом экране есть переменная, с которой нет связи в конфигураторе-слейв ПЛК. Еще может быт ошибка выравнивания переменных, я бы в слейве у вас вставил после модуля 8 бит, еще один модуль 8 бит, так вы не ошибетесь, но еще бывают 4-х байтные переменные, сними тоже нельзя не думать о выравнивании. Если же у вас все с переменными панели нормально, попробуйте поставить не два стоп бита, как у вас, а один стоп бит. У меня в этом режиме работает годами без проблем.

Olegis
25.02.2013, 13:17
Управление на СП-270 (с последующим подключением Masterscada).
Важно! Если у вас ПЛК является мастером сети для ваших приборов, то надеюсь, что МasterScada вы подключаете по Ethernet, а не через AC-3М. В сети одновременно не могут посылать запросы более одного мастера, надо их разделять во времени тогда.

Olegis
25.02.2013, 13:22
Все данные сбрасываются, насос выключается
Вам надо пользоваться Retain-переменными, сохранять параметры вводимые с панели в Retain, а при включении ПЛК в его первом цикле, писать эти переменные в панель через слейв. И тогда будет счастье, пока аккумулятор ПЛК жив.

kuharchukigor
25.02.2013, 13:30
to Olegis.
Спасибо за помощь.
1. С Masterscada буду по Ethernet соединяться.
2. С Retain более-менее понятно. Но при ошибке на СП-270 я не могу выключить насос (или включить) из-за ошибки связи.
3. Буду искать лишние или нехватающие переменные.

kuharchukigor
25.02.2013, 13:31
to Olegis
Еще. Вы говорите о переходе на другой экран. Физически я не перехожу на экраны. Система работает в стационарном режиме и - опа...

petera
25.02.2013, 13:58
to Olegis
Еще. Вы говорите о переходе на другой экран. Физически я не перехожу на экраны. Система работает в стационарном режиме и - опа...
Возможно на этом экране есть элементы типа, события реального времени или исторические события и среди событий в них "затесался" элемент с несуществующим сетевым адресом или не существующим номером регистра.

kuharchukigor
25.02.2013, 14:51
to Petera
Пойду проверять.
Спасибо за ответ

kuharchukigor
25.02.2013, 15:32
Проверил. Нет ничего лишнего. А ПЛК с МВА-8 снимаю температуру, а дальше ее пока никуда не передаю. Но из-за этого не может пищать.
Как узнать, на чем затыкается все ЭТО?

Olegis
25.02.2013, 16:01
Какой длины у вас кабель связи от панели к ПЛК порту. Есть ли мощные ПЧ без заземленных экранов моторных кабелей в этом шкафу? Как проложен совместно с кабелями других цепей? В условиях сильных помех, желательно, чтобы он был в экране заземленным с одной стороны. Не соединяйте контакт 5 с корпусом разъема DB-9 или экраном оплетки, не соединяйте корпуса разъемов конекторов между собой через экран(не всегда это хорошо), чтобы не было паразитных токов по экрану при разности потенциалов, потенциалы лучше уравнивать отдельным проводом. Но этот вариант-очень крайне редкий, но возможен при ошибках в монтаже оборудования.

Olegis
25.02.2013, 16:03
На других скоростях пробовали работать,стоп биты меняли?

Olegis
25.02.2013, 16:06
У меня когда так было, я убирал по очереди картинки с регистрами и все-таки находил пропущенный регистр или к которому возможно не корректно обращался(что-то поменял в панели, а в ПЛК пропустил и наоборот). Сколько времени экран светится без ошибки?

petera
25.02.2013, 16:18
У меня когда так было, я убирал по очереди картинки с регистрами и все-таки находил пропущенный регистр или к которому возможно не корректно обращался(что-то поменял в панели, а в ПЛК пропустил и наоборот). Сколько времени экран светится без ошибки?
Еще бывает, что вроде и адрес устройства и номер регистра у элемента указан правильный, а тип данных нет. Вместо WORD ошибочно указан DWORD
Например сначала в Slave ПЛК планировался тип переменной float и у элемента панели, например цифровой дисплей тип данных был DWORD, потом в Slave тип поменяли на 2 byte(WORD), а у цифрового дисплея забыли.

kuharchukigor
25.02.2013, 17:00
to Olegis
ПЧ расположен рядом со щитом с OWEN оборудованием (совсем рядом). Кабели не экранированные. Кабель ПЛК-Панель стандартной длины (покупной OWEN) лежит в щите с OWEN. сигнальные кабели на расстоянии 30 см от силовых.
Скорость ПЧ максимаум 9600. Поэтому все остальные подключаю на такой же. Стоп-биты 2 в ПЧ и аналогично ставлю на все приборы.

kuharchukigor
25.02.2013, 17:03
to Petera
Кол-во записей в панель ограничено же. Я когда тренировался, раз 150 позаписывал уже :). Насчет float и word (dword) почитать надо. У меня в панели стоит Word везде (кроме бит)

petera
25.02.2013, 17:31
ПЛК непериодически пищит (порядка 3-10 мин), на СП-270 надпись «Потеря связи с адресом 1».
Не обратил на это внимание. Скорей всего проблема не в работе СП270, а в работе программы в ПЛК.
По тому, что "на СП-270 надпись «Потеря связи с адресом 1»" как раз и возникает из-за того, что ПЛК в этот момент находится в состоянии перезагрузки (ПЛК непериодически пищит).
Попробуйте добавить в конфигурации ПЛК подэлемент "Button". Про это для ПЛК100 много написано на форуме.
Попробуйте добавить модуль статистики в конфигурацию ПЛК и посмотреть хватает ли времени цикла, нет ли красненькой надписи CPU is Overloaded....
Зачем Вы установили минимальное время цикла 1мс?

petera
25.02.2013, 17:39
По поводу мин времени цикла только на днях было
http://www.owen.ru/forum/showpost.php?p=103222&postcount=4

Olegis
25.02.2013, 18:05
Не обратил на это внимание. Скорей всего проблема не в работе СП270, а в работе программы в ПЛК.
По тому, что "на СП-270 надпись «Потеря связи с адресом 1»" как раз и возникает из-за того, что ПЛК в этот момент находится в состоянии перезагрузки (ПЛК непериодически пищит).


Я тоже не понял! У вас все таки ПЛК пищит или панель пикает. Потому что, если пищит ПЛК, у вас срабатывает сторожевой таймер из-за ошибки в проекте или конфигурации и контроллер уходит в перезагрузку. Светодиоды входов-выходов загораются кратко временно в этот момент?

Olegis
25.02.2013, 18:19
В вашем проекте на ПЛК я ничего не увидел, чтобы он уходил в перезагрузку. Согласен, что время цикла на пределе, надо бы хотя бы 2мс поставить, но из-за этого ПЛК не уходит в перезагрузку. Кинул ваш проект в контроллер и он не перезагружается, все ок. Работает уже минут 30, ничего не пищит. Может все таки панель пищит.

kuharchukigor
25.02.2013, 20:28
Пищит контроллер. Светодиоды кратковременно погасают. Потом горит один светодиод (вроде питание - не на работе уже). Потом загорается светодиод работа - начинает выполнять программу. Когда я отслеживать пытаюсь ошибку 81 на подключенной программе codesys - немного позже писка на мониторе появляется надпись ошибка соединения или что-то вроде (disconnect)

kuharchukigor
25.02.2013, 20:33
Раньше появлялась ошибка 81 с ПЧ. На "Ресурсы" - Workspace - Desctop выставил время отключения на максимум - ошибка перестала появлятся. Button Statistica завтра попробую поставить. Цикл 1 мс переставлю на 3 на всякий случай. Еще бы вспомнить где это.
Огромное спасибо, что не оставили в беде!

kuharchukigor
26.02.2013, 01:04
Прочитал на форуме про "Button". У меня ПЛК не останавливается, а перезагружается.

petera
26.02.2013, 06:43
Раньше появлялась ошибка 81 с ПЧ. На "Ресурсы" - Workspace - Desctop выставил время отключения на максимум - ошибка перестала появлятся. Button Statistica завтра попробую поставить. Цикл 1 мс переставлю на 3 на всякий случай. Еще бы вспомнить где это.
Огромное спасибо, что не оставили в беде!
Минимальную длительность поставьте 0, тогда будет по факту работы программы.
http://s017.radikal.ru/i417/1302/64/fae8321998d7t.jpg (http://s017.radikal.ru/i417/1302/64/fae8321998d7.png)
И нужно смотреть модуль статистики
http://s002.radikal.ru/i198/1302/33/71ad1e75c624t.jpg (http://s002.radikal.ru/i198/1302/33/71ad1e75c624.png)
У Вас скорость обмена для всех интерфейсов 9600, может не хватает процессору времени для завершения обмена?
У меня нет такого большого опыта работы с ПЛК, что бы знать про все глюки в их работе.
Еще встречал на форуме про ситуации, когда версия таргета в Содесис не совпадает в версией ПО в ПЛК.
Модуль Бутон поставьте, хуже не будет.

Olegis
26.02.2013, 08:44
Попробуйте скачать последнюю версию таргета(версия 2.11), установить их в Codesys и прошить последней прошивкой(версия 2.14.0) контроллер. Возможны глюки с не совпадением отдельных изменнеий в таргетах под Codesys и прошивки контроллера.У меня были с этим проблемы и он как раз таки перегружался, только сразу после заливки проекта. Ваш проект у меня работает в контроллере без перезагрузок, он простой, там нет ошибок.

kuharchukigor
26.02.2013, 09:31
Значит так. Задание МНЕ на СЕГОДНЯ:
от OLEGIS скачать таргет 2.11;
прошить ПЛК прошивкой 2.14.0 (найти и нструкцию)
от petera смотреть statistica
а насчет скорости 9600 у меня ПЧ быстрее скорость не тянет, а все приборы должны на одной скорости работать

kuharchukigor
26.02.2013, 09:55
Еще мысль закралась - не виновать ли ТРМ212 - вчера перед уходом с работы появилась ошибка датчика давления, а раз в 2 месяца то ошибка датчика давления, то датчика положения крана.

Olegis
26.02.2013, 10:23
Сетевые ошибки RS-485 при связи ПЛК и модулей ввода-вывода и ТРМ,не должны приводить к перезагрузке точно. Сетевые ошибки возникают при отсутствии терминаторов на концах длинной линии RS-485,плохо экранировании витой пары линии,не правильном заземлении экрана витой пары, слишком частых запросах от мастера, если у вас слейв-модуль быстро ответил, то ПЛК не успеет ответ разобрать и выдаст ошибку 81. Могут быть перезагрузки из-за модуля конфигуратора в ПЛК. Были перегрузы у меня, когда работал двумя мастерами на одной шине с разными протоколами(Modbus и Овен). Естественно, что мастера работали по очереди, но пришлось паузу между коммутацией мастеров сделать болле 100мс, иначе были периодические перезагрузки. Ваш проект, который вы выложили в точности соответствует загруженному в ПЛК или нет,это важно? Если нет, то надо смотреть, проект, который у вас загружен в ПЛК.

kuharchukigor
26.02.2013, 11:55
to Olegis
Перепрошил, таргет последний. Поставил Button, Statistica. Мин цикл ПЛК 0мс. Результат: пока (мин 5) работает.
Программу в панели Сп-270 выложить?

kuharchukigor
26.02.2013, 12:27
Не знаю, радоваться или нет.
1. 20 мин - полет нормальный.
2. НЕ ЛОГИТСЯ ОН! Даже создаю новый проект. Нажимаю COMMUNICATION PARAMETERS - зависает Codesys!

Olegis
26.02.2013, 12:47
Цикл на 2мс пробовали? Перезагрузки ПЛК ни как не должны бытт связаны с с установкой связи ПЛК и codesys. Вы подключаетесь как через TCP или com? Проверьте настройки подключения и попробуйте сделать аппаратный рисет на ПЛК.Если через tcp подключаетесь, то посмотрите не меняли вы адрес и маску. Таймаут по связи в кодесис поставьте секнд 10-15. Светодиод связь загорается ли при попытке полключения из кодесис?

kuharchukigor
26.02.2013, 13:16
Подключаюсь через Debug. Проект новый начинаю. А сетевые настройки не появляются - зависает.
2 мс не пробовал. Сперва перепрошил, все работает, а зайти в настройки сетевые CODESYS не могу.

capzap
26.02.2013, 13:33
связь плк со средой разработки осуществляется только при выборе оного. Точнее выражайтесь, чтоб всем понятно было, а то многие уже начинают думать что у Вас плк виснет, когда Вы пытаетесь зайти в коммуникационные параметры. Походу Вам уже и саму КДС пора переустанавливать, :) если не винду

Olegis
26.02.2013, 13:50
Подключаюсь через Debug. Проект новый начинаю. А сетевые настройки не появляются - зависает.
2 мс не пробовал. Сперва перепрошил, все работает, а зайти в настройки сетевые CODESYS не могу.

Возможно после постоянного терзания туды-сюды кабелю связи овеновскому пришел кирдык, прозвоните его. Попробуйте через ethernet, в инструкции на ПЛК все описано как сделать. При смене интерфейса подключения не забудьте нажать Reset на контроллере.

kuharchukigor
26.02.2013, 13:56
Так. Переустановлю Codesys. У меня версия 2,3. А может лучше сразу 3,0 поставить?

Olegis
26.02.2013, 14:08
Так. Переустановлю Codesys. У меня версия 2,3. А может лучше сразу 3,0 поставить?

Не надо 3.0. Ставьте 2.3.9.37(можно и 2.3.9.36) и таргеты 2.11 опять поверху не забудьте поставить в новом кодесисе. В настройках целевой платформы PLC100.R.M(для неограниченной лицензии) выбираете?

kuharchukigor
26.02.2013, 16:39
Не надо 3.0. Ставьте 2.3.9.37(можно и 2.3.9.36) и таргеты 2.11 опять поверху не забудьте поставить в новом кодесисе. В настройках целевой платформы PLC100.R.M(для неограниченной лицензии) выбираете?
Выбираю PLC100.R.M. Все остальное - :confused: . Покупалось все (ПО + железо) официально. Но где выбирать лицензию?

kuharchukigor
26.02.2013, 16:44
В настройках целевой платформы PLC100.R.M(для неограниченной лицензии) выбираете?
Все, нашел по форуму

kuharchukigor
26.02.2013, 20:07
После переустановки Codesys на версию 2.3.9.39 по совету Olegis и установки таргет 2.11 все заработало! Ура!. Всем спасибо и мои лучшие Вам пожелания!