- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Контроллеры Siemens Simatic S7
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Контроллеры Siemens Simatic S7
Сразу предупреждаю в вопросе не ориентируюсь, поэтому и прошу помощи.
Описание проблемы: есть АСК, построенная на базе контроллера SS S7, на контроллер залито ПО (скрипты, файл, не знаю в какой форме, программированием занимаются другие люди). Задача: предварительный (на ПК) или первоначальный (на АСК) расчет CRC этой программной части и возможность в последующем контроля этой суммы силами АСК. Есть ли возможность реализации? Мне кажется, что это реализовать просто, но не зная специфики программирования под контроллер...
Описание проблемы: есть АСК, построенная на базе контроллера SS S7, на контроллер залито ПО (скрипты, файл, не знаю в какой форме, программированием занимаются другие люди). Задача: предварительный (на ПК) или первоначальный (на АСК) расчет CRC этой программной части и возможность в последующем контроля этой суммы силами АСК. Есть ли возможность реализации? Мне кажется, что это реализовать просто, но не зная специфики программирования под контроллер...
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Контроллеры Siemens Simatic S7
Сомнения верны. Контроллеры S7 не способны рассчитывать контрольную сумму собственной программы. Это Вам нужно для метрологических целей?
Например, если у Вас контроллер серии S7-300, то Вы можете почитать его описание типа (приложение к свидетельству об утверждении типа средства измерения №15772-11). Выдержка из документа:
Например, если у Вас контроллер серии S7-300, то Вы можете почитать его описание типа (приложение к свидетельству об утверждении типа средства измерения №15772-11). Выдержка из документа:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
Наверно я неправильно сформулировал: на аналоговые модули контроллера идет 4-20 мА со средств измерений, после чего ПО на контроллере (или не на контроллере? а во внешнем ПО?) проводится определенная мат. обработка (приведение к Н.У. и т.д.). И стоит задача оценки правильности этой математики с последующей фиксацией CRC, номера версии и наименования. Все делается в метрологических целях. Собственно с программистом не хочу общаться, т.к. есть смутное ощущение, что дадут недостоверную информацию. В общем речь не о собственно ПО контроллера, а о куске кода который выполняет обработку измеренных значений.
-
- знаток Eplan
- Сообщения: 1136
- Зарегистрирован: 21 сен 2012, 22:45
- Имя: aranea
- Благодарил (а): 30 раз
- Поблагодарили: 165 раз
Re: Контроллеры Siemens Simatic S7
там по-вашему магия! а как на магию CRC рассчитать?dm19 писал(а):на аналоговые модули контроллера идет 4-20 мА со средств измерений, после чего ПО на контроллере (или не на контроллере? а во внешнем ПО?) проводится определенная мат. обработка (приведение к Н.У. и т.д.). И стоит задача оценки правильности этой математики с последующей фиксацией CRC, номера версии и наименования.
по лампам на ПЛК или по температуре модулей аналогового ввода будете оценивать правильность этой математики?dm19 писал(а):Собственно с программистом не хочу общаться, т.к. есть смутное ощущение, что дадут недостоверную информацию. В общем речь не о собственно ПО контроллера, а о куске кода который выполняет обработку измеренных значений.
может программиста отстранить от работы пока не поздно, раз есть такие ощущения?
-
- знаток Eplan
- Сообщения: 1136
- Зарегистрирован: 21 сен 2012, 22:45
- Имя: aranea
- Благодарил (а): 30 раз
- Поблагодарили: 165 раз
Re: Контроллеры Siemens Simatic S7
а теперь выкачайте с ПКЛ и проверьте еще разden_vish писал(а):а если программу в архив засунуть, и CRC архива рассчитывать?
я попробовал, создал проект, заархивировал его со степа получил SH1 - 60f453509a434ef54b1d91ba77c9f873b68fa30d
удалил строчку кода, стал SH1 - 78381003b1f176a4307b134edab42685e77d819e
по всей видимости сработало)))
архив-то как лежал на компе так и лежит... хоть зашифруйте его, от изменения программы в ПЛК это не спасет
папка Blocks в онлайне имеет контрольную сумму, вычисляемую Степом но она изменится при изменении любого FB, FC, OB и DB блока
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- освоился
- Сообщения: 233
- Зарегистрирован: 11 апр 2013, 13:22
- Имя: Вишневский Денис
- Благодарил (а): 11 раз
- Поблагодарили: 13 раз
Re: Контроллеры Siemens Simatic S7
да, понял уже свою ошибку. В любом случае метрологу без программиста ни как))
"- Знаешь, дружище, в чем истинный смысл второго закона термодинамики?
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
-
- знаток Eplan
- Сообщения: 1136
- Зарегистрирован: 21 сен 2012, 22:45
- Имя: aranea
- Благодарил (а): 30 раз
- Поблагодарили: 165 раз
Re: Контроллеры Siemens Simatic S7
похоже от изменения значений в ДБ сумма не меняется
другой дело что программно ее не вытаить
другой дело что программно ее не вытаить
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
это типа стеб?aranea писал(а):там по-вашему магия! а как на магию CRC рассчитать?
конечно по лампам и обязательно термометр в модуль воткну, чтобы его температуру измеритьaranea писал(а):по лампам на ПЛК или по температуре модулей аналогового ввода будете оценивать правильность этой математики?
может программиста отстранить от работы пока не поздно, раз есть такие ощущения?
есть понятие reference software
как я уже писал выше вопрос по куску кода, связанному с метрологией, я в этом вопросе третья сторона и не я плачу программисту и не я его нанимал
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Контроллеры Siemens Simatic S7
Типа. ГОСТ Р 8.654-2009. Требования к программному обеспечению средств измеренийMuadDib писал(а):Борьба со Stuxnet?
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
если говорить в терминах этого ГОСТа РФ, то необходима идентификация ПОМихайло писал(а):ГОСТ Р 8.654-2009. Требования к программному обеспечению средств измерений
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
судя по всему это действительно магия, раз никто ничего конкретного сказать не может
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Контроллеры Siemens Simatic S7
Никакой магии! Соблюдение данного ГОСТа возможно только в системах с фон-неймановской архитектурой. У контроллеров (которые не имеют открытой встроенной ОС) почти поголовно гарвардская архитектура. Другими словами, Ваша задача практически нерешаема. Если только не частично или на отдельных сериях контроллеров, где идентификация специально организована на уровне операционной системы, чтобы соблюсти требования WELMEC (на базе этой штуки разработан ГОСТ).
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Контроллеры Siemens Simatic S7
Контроллер позволяет опросить размер загруженной пользовательской программы и данных. Через S7-протокол можно вытащить еще информацию, с помощью которой можно сформировать довольно надежную контрольную сумму. Есть софт, который это делает и позволяет контролировать целостность программы, залитой в контроллер:
http://www.langner.com/de/produkt/cic/
http://www.langner.com/de/produkt/cic/
-
- частый гость
- Сообщения: 462
- Зарегистрирован: 31 июл 2010, 09:12
- Имя: Павел
- Страна: РФ
- Благодарил (а): 10 раз
- Поблагодарили: 17 раз
Re: Контроллеры Siemens Simatic S7
Вероятно, я что-то упускаю, но можно использовать функцию Compare online/offline среды разработки. Можно сохранить в качестве референсной некоторую версию проекта Step7. Сохранить архив, зафиксировать хэш - что угодно. При необходимости подтверждения соответствия программы контроллера референсу распаковываем архив и запускаем сравнение онлайна с оффлайном. Сравнение покажет, какие программные блоки отличаются от тех, что были в архиве. По DB отдельно может быть зафиксировано отличие в версии и в текущих значениях переменных. Программист может указать, какие именно FC, FB, DB отвечают за функции, подлежащие такому контролю. Если по каким-то из них Step7 фиксирует различия, проверка не прошла.
Конечно, муторно, но и сама по себе исходная задача, мягко говоря, не соответствует оборудованию.
Конечно, муторно, но и сама по себе исходная задача, мягко говоря, не соответствует оборудованию.
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Контроллеры Siemens Simatic S7
Да ну ладно, не соответствует. Они могли взять из F-блоков все построить, а там система сама сигнатуру считает и контролирует.
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
не совсем понимаю при чем здесь открытость/закрытость самой ОС. welmec вообще то не устанавливает требованияМихайло писал(а):Никакой магии! Соблюдение данного ГОСТа возможно только в системах с фон-неймановской архитектурой. У контроллеров (которые не имеют открытой встроенной ОС) почти поголовно гарвардская архитектура. Другими словами, Ваша задача практически нерешаема. Если только не частично или на отдельных сериях контроллеров, где идентификация специально организована на уровне операционной системы, чтобы соблюсти требования WELMEC (на базе этой штуки разработан ГОСТ).
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Контроллеры Siemens Simatic S7
Может я не совсем точно выражаюсь, скорее, ОС контроллеров чаще представляет собой гарвардскую архитектуру, когда программа имеет доступ только к памяти данных, но не имеет свободного доступа к памяти программ (доступ к самой себе).
Чтобы вычислить CRC программного обеспечения в реальном времени, нужно что-то ближе к неймановской архитектуре - свободный доступ к памяти программ, например, персональный компьютер с Windows.
P.S. Уточните серию контроллера S7: S7-200, S7-300, S7-400 или S7-1200?
Чтобы вычислить CRC программного обеспечения в реальном времени, нужно что-то ближе к неймановской архитектуре - свободный доступ к памяти программ, например, персональный компьютер с Windows.
P.S. Уточните серию контроллера S7: S7-200, S7-300, S7-400 или S7-1200?
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Контроллеры Siemens Simatic S7
По-моему топикстартер не настаивал, чтобы контроллер сам себя контролировал. Это может быть реализовано другой подсистемой. Например, вот такой железкой:
http://www.mbconnectline.com/index.php/ ... ts/mbeagle
http://www.mbconnectline.com/index.php/ ... ts/mbeagle
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Контроллеры Siemens Simatic S7
мы с топикстартером вроде поняли друг друга. Ему нужна возможность рассчитать CRC или что-то типа md5, при чем эта контрольная сумма должна вычисляться для кода, который включает в себя саму эту программу расчета контрольной суммы. Опа!
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Контроллеры Siemens Simatic S7
Eму нужна CRC лишь куска с метрологией, хотя это не принципиально. Эту CRC можно считать вне загружаемой программы и передавать потом в контроллер, который может сравнить с первоначальным значением.
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
Именно нужно считать CRC с куска кода, хотя, если будет считаться с какого-то блока данных, включающего его, тоже подойдет. Конечно идеальный вариант - расчет средствами контроллера, но вполне подойдет и с подручными средствами, но желательно программными. Смысл задачи - неизменность кода, влияющего на результаты измерений и возможность при необходимости подтвердить контролирующим органам, что владелец использует именно узаконенный вариант, а не какую-то модификацию. Про собственно код расчета CRC я пока вопрос не поднимаю и рассматриваю его отдельно от контролируемого кода.
Последний раз редактировалось dm19 09 апр 2014, 13:09, всего редактировалось 1 раз.
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Контроллеры Siemens Simatic S7
Дешевле всего будет делать, как советовал MuadDib. Функция сравнения с эталоном уже присутствует в штатном ПО. Если хотите красивее и удобнее - докупайте спецсофт или железо, на рынке всё есть.
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 22 мар 2014, 11:30
- Имя: dm19 dm19
Re: Контроллеры Siemens Simatic S7
Я в принципе и склоняюсь к этому варианту, только получается надо будет фиксировать наименования переменных и функций, которые будут контролироваться.Василий Иванович писал(а):Дешевле всего будет делать, как советовал MuadDib. Функция сравнения с эталоном уже присутствует в штатном ПО. Если хотите красивее и удобнее - докупайте спецсофт или железо, на рынке всё есть.
-
- частый гость
- Сообщения: 462
- Зарегистрирован: 31 июл 2010, 09:12
- Имя: Павел
- Страна: РФ
- Благодарил (а): 10 раз
- Поблагодарили: 17 раз
Re: Контроллеры Siemens Simatic S7
А в чем проблема в таком фиксировании? Вы не доверяете программистам вообще и хотите исключить их из схемы? Вы же сами поставили задачу так, что нужно контролировать состояние только определенных программных конструкций. Следовательно, работа нужного вам инструмента будет по любому зависеть от знаний о внутренней структуре программы: ключевые программные структуры все равно кто-то должен будет указать. И какой бы инструмент вы ни применили, вам понадобятся и "фиксирование", и некая метаинформация, исходящая от программистов.dm19 писал(а): Я в принципе и склоняюсь к этому варианту, только получается надо будет фиксировать наименования переменных и функций, которые будут контролироваться.