Страница 1 из 1

Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 24 дек 2020, 14:19
САМ
Здравствуйте друзья!
Появилась вроде как не сложная для знающих, но весьма затруднительная для меня задача. Есть машина, управляемая станцией S7-300 и Siemens-панелью.
Проблема в том что в случае аварий, на панели возникают коды аварий, и только на месте оператора. Задача стоит вывести сигналы в комнату киповцев с расшифровкой в виде текста на "человеческом языке". Нет никаких исходников программ. Но это, думаю, решаемо, т.к. есть электрическая схема и все узлы маркированы. Проблема в другом - я совсем не знаком с WinCC. Я работаю с другой немецкой скадой Procon WIN (наверное вы и не слыхали про такую), и на базе этой скады хочу сделать выносную "сигнализацию" на ПК.
Все что мне надо - узнать откуда из S7-300 идут тэги аварийных сообщений в панель.
В незнакомой программе STEP-7, да еще и без исходника, разобраться с этим сами понимаете...
Потому прошу совета от знающих - как мне "вычислить" в программе контроллера аварийные сигналы?(Их идентификация не критична, иденцифицировать события можно будет уже по ходу, по факту). В знакомой мне Procon это сделать проще простого - там для аварийных сигналов создается отдельный DB - только из него читаются аварии. Но в WinCC ведь теги могут быть привязаны к любому сигналу напрямую... Может есть какие-то отличительные признаки как для WinCC формируются (группируются) сигналы аварий? Короче, можно ли будучи "полным нулем" в WinCC и в панелях (со временем обещаю изучить!!!) выяснить откуда берутся сигналы аварий?
Благодарю!

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 25 дек 2020, 11:35
Andrey.wys
Все это на усмотрение программиста и без исходников вы не узнаете на 100% откуда берутся аварии. Но, если проанализировать исходный код PLC, то, возможно, вы найдете отдельный блок, где собираются биты аварий. А может и не найдете... Если, конечно, контроллер не запаролен и вы сможете слить исходный код из контроллера. Из панели исходники не вытащить. Если нет исходников контроллера и панели, то вероятность выполнить вашу задачу стремится к нулю.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 28 дек 2020, 11:15
САМ
Код уже скачал. Исходника нет, но есть отличный альбом схем (тоже уже у меня). Пока план такой - из схемы взять входн. сигналы, которые наверняка предназначены для формирования аварии - опрос допконтактов рубильников и реле "Ок" частотников, отследить куда они потом "эволюционируют" в программе. Возможно это какая-то отдельная структура.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 28 дек 2020, 13:10
Andrey.wys
Небольшой проект можно разобрать по косточкам. Можно слить проект контроллера, слить протулом панель. Взять такой же контроллер и панель и залить в них проекты. Потом дергать каждый используемый меркер, вход, выход и бит блоков данных и смотреть что изменяется в панели. В серьезном проекте так отреверсить код практически невозможно. Иногда проще написать свою программу, чем разобраться в чужой. К сожалению, никто не считает сколько стоит время программиста. И иногда дешевле заплатить производителю пару тысяч евро, чем полгода сидеть и совершать подвиг.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 28 дек 2020, 16:09
САМ
Andrey.wys писал(а):
28 дек 2020, 13:10
... никто не считает сколько стоит время программиста. И иногда дешевле заплатить производителю пару тысяч евро, чем полгода сидеть и совершать подвиг.
Есоли я вас правильно понял, то без исходников никак...

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 28 дек 2020, 17:59
Andrey.wys
Можно кошку в космос отправить, вот только зачем и стоит ли это затраченных сил и времени?

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 08:06
Роман_33
САМ писал(а):
24 дек 2020, 14:19
Но в WinCC ведь теги могут быть привязаны к любому сигналу напрямую...
Не совсем так,по крайней мере в панелях. В панель засылается слово и там разбирается по битам (то же самое с квитанциями). Как правило используется мерекерная память(не всегда). Например, слово аварий с адресом MW10 содержит 16 аварий, которым соответствуют биты с М10.0 по М11.7, попробуйте поискать по этому признаку.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 08:17
Andrey.wys
Что мешает мне сделать так?
Снимок.PNG

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 08:20
Роман_33
Да ничего не мешает, я именно так и делаю (мне так удобнее), но обычно сначала ищут под фонарем, там светлее. :)

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 11:13
Andrey.wys
Роман_33 писал(а):
30 дек 2020, 08:06
Не совсем так,по крайней мере в панелях.
Это пример из панелей. Все биты вразнобой.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 12:32
Роман_33
То что они у вас так отображаются ни о чем не говорит. Это ваш проект в примере? Что значит вразнобой? Все эти биты из одного слова DB_Shift...чего то там, у которого абсолютный адрес DB500.DBW4. У второго предупреждения (M17.0) абсолютный адрес аварийного тега MW16. В триггер тег вам все равно слово ставить надо. Либо мы говорим о разных вещах.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 14:11
Andrey.wys
Я имел ввиду, что необязательно, что все будет из одного блока. Или биты/байты подряд.

Re: Сигналы аварий из S7-300 & Siemens HMI

Добавлено: 30 дек 2020, 16:00
Роман_33
Роман_33 писал(а):
30 дек 2020, 08:06
. Например, слово аварий с адресом MW10 содержит 16 аварий, которым соответствуют биты с М10.0 по М11.7, попробуйте поискать по этому признаку.
Для ТС, причем это MW10 может в программе ПЛК вообще никак не фигурировать, только биты из него. В общем, некий пулл адресов методом тыка ,как вы описали, найти можно. А вообще,обратный инжиниринг, дело,конечно,интересное,но уж больно муторное. :(