- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Форсировать вход контроллера S7 из WinCC
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 30 сен 2019, 16:31
- Имя: Сергей
Форсировать вход контроллера S7 из WinCC
Просьба к знатокам подсказать, как можно средствами WinCC (скриптом или другим способом) установить и снять форсировку дискретного входа контроллера S7
-
- освоился
- Сообщения: 248
- Зарегистрирован: 31 янв 2017, 08:44
- Имя: Маркушин Андрей Геннадьевич
- Страна: Россия
- город/регион: Нижегородская обл., Выкса
- Благодарил (а): 19 раз
- Поблагодарили: 64 раза
Форсировать вход контроллера S7 из WinCC
Если нужно форсировать значение из области отображения входов, то довольно просто. В OB1 в самом начале нужно прописать перезапись значения входа значением переменной, связанной с тегом WinCC:
Этого будет достаточно, если не используется образ входов напрямую (через PI)
C программным включением функции FORCE не сталкивался, возможно и есть соответствующие системные программные блоки.
Код: Выделить всё
A m10.0 //Тег WinCC
= i0.0 //"Форсируемый" вход
C программным включением функции FORCE не сталкивался, возможно и есть соответствующие системные программные блоки.
-
- эксперт
- Сообщения: 1010
- Зарегистрирован: 31 мар 2018, 12:05
- Имя: Вячеслав
- Благодарил (а): 94 раза
- Поблагодарили: 136 раз
Форсировать вход контроллера S7 из WinCC
Напрямую как раз i0.0
И не факт что это сработает в коде. Скомпилируется то - может быть, но присвоить значение входу - уже нет.
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 30 сен 2019, 16:31
- Имя: Сергей
Форсировать вход контроллера S7 из WinCC
Сработает, ведь циклический OB1 вызывается уже после обновления области входов.
И "форсирование" при этом будет синхронным, что хорошо.
Но вопрос был про форсирование без изменения кода в контроллере и без использования дополнительных переменных.
К любому изменению кода уж чересчур трепетное отношение.
-
- корифей
- Сообщения: 768
- Зарегистрирован: 12 авг 2008, 11:05
- Имя: Патрушев Олег Валерьевич
- Страна: Россия
- город/регион: г. Н.Новгород
- Благодарил (а): 105 раз
- Поблагодарили: 146 раз
Форсировать вход контроллера S7 из WinCC
Судя по ответам на забугорном форуме напрямую это невозможно с WinCC (кстати, какой именно имеете в виду), но...
Даже на старых системах это делалось через отдельный контрол\элемент\экран и было скрыто от скриптов. Это касается S5, панелей на ProTool, WinCC flexible. На новых панелях и RT это вроде вообще не реализовано, но возможно есть, как часть другого элемента (например диагностического).
Как вариант это вроде встроено в web интерфейс современных цпу (если у вас такой) и можно запустить в окошке браузер и оттуда уже форсировку. Или открыть VAT в окне и оттуда уже... ну вы поняли. По мне так костыль еще тот.
Функционал, конечно, больше для инженера, при чем грамотного.
Поковыряйтесь с поиском на забугорном форуме, может еще какой совет найдете.
Даже на старых системах это делалось через отдельный контрол\элемент\экран и было скрыто от скриптов. Это касается S5, панелей на ProTool, WinCC flexible. На новых панелях и RT это вроде вообще не реализовано, но возможно есть, как часть другого элемента (например диагностического).
Как вариант это вроде встроено в web интерфейс современных цпу (если у вас такой) и можно запустить в окошке браузер и оттуда уже форсировку. Или открыть VAT в окне и оттуда уже... ну вы поняли. По мне так костыль еще тот.
Функционал, конечно, больше для инженера, при чем грамотного.
Поковыряйтесь с поиском на забугорном форуме, может еще какой совет найдете.
-
- эксперт
- Сообщения: 1010
- Зарегистрирован: 31 мар 2018, 12:05
- Имя: Вячеслав
- Благодарил (а): 94 раза
- Поблагодарили: 136 раз
Форсировать вход контроллера S7 из WinCC
Сейчас времени совсем нет, попробовать на симуляторе. Но мне крайне кажется что нет ) Я логику сразу понял, в начале ОВ1, по идее да. Но не присвоится. Не загорится лампочка на DI, потому как нет такой операции - запись входов ;)PerunGrandson писал(а): ↑23 мар 2021, 15:39 Сработает, ведь циклический OB1 вызывается уже после обновления области входов.
А вот если далее в коде исследуется состояние, то... Нужно все таки попробовать )))
Если Вы вообще про Force, то это функционал пусконаладчика. Проверить монтаж ;)
-
- освоился
- Сообщения: 248
- Зарегистрирован: 31 янв 2017, 08:44
- Имя: Маркушин Андрей Геннадьевич
- Страна: Россия
- город/регион: Нижегородская обл., Выкса
- Благодарил (а): 19 раз
- Поблагодарили: 64 раза
Форсировать вход контроллера S7 из WinCC
Хм, вы не путаете, случайно, понятия PI/PQ области и области отображения процесса (образа процесса)?
-
- эксперт
- Сообщения: 1010
- Зарегистрирован: 31 мар 2018, 12:05
- Имя: Вячеслав
- Благодарил (а): 94 раза
- Поблагодарили: 136 раз
Форсировать вход контроллера S7 из WinCC
Возможно. Область PI/PQ это область периферии, которая считывается и заносится в некую таблицу до начала цикла. Во время цикла данные берутся из этой таблицы и соответственно время доступа минимально. В случае обращения к I/Q обращение происходит непосредственно к входам выходам, данные более "свежие", но и длительность такого обращения выше.
Возможно ошибаюсь. Поправьте
-
- эксперт
- Сообщения: 1010
- Зарегистрирован: 31 мар 2018, 12:05
- Имя: Вячеслав
- Благодарил (а): 94 раза
- Поблагодарили: 136 раз
Форсировать вход контроллера S7 из WinCC
Ну да ) Путаю это дело, еще и берусь другим рассказывать )))
Вот это меня постоянно и путает. Читать и вникать же не хочется. А на поверхностный взгляд - речь о PI/PQ )