Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2Vtzqx6kV7S
IPB IPB
Проектирование, монтаж, наладка, сервис


Здравствуйте, гость ( Вход | Регистрация )

- Стандарт НП «АВОК» 7.11-2024
«Рекомендации по проектированию инженерных систем
дошкольных образовательных организаций»

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2VtzqwzKQiU
 
Добавить ответ в эту темуОткрыть тему
> Desigo Insight Citect Scada, Как управлять тегами с кнопки
zedzedus
сообщение 31.5.2016, 7:21
Сообщение #1





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Добрый день.
Делаю проект на Desigo Insight Citect Scada.
Есть физический дискретный вход на модуле - кнопка "Сброс". Тег назван допустим "Reset"
Чтобы "эмулировать" нажание кнопки "Сброс" программно - необходимо в "Каталоге обьектов" тег "Reset":
1. установить параметр "OoServ" в значение "On"
2. Параметр "PrVal" в значение "On"
3. установить параметр "OoServ" в значение "Off"
Так из "Каталога обьектов" это получается нормально, но как сделать в Scada кнопку которая бы делала этот сброс?
Далаю на кнопке скрипт примерно так - :
B_Reset_OoServ=1;
B_Reset_PrVal=1;

ну или так
B_Reset_OoServ=true;
B_Reset_PrVal=true;

При этом ошибок нет, компилируется. "тестовые" символы которые отображают состояния параметров Reset_OoServ и Reset_PrVal видно что меняют состояние, но в каталоге обьектов ничего не меняется.

P.S.
код
B_Reset_OoServ=On;
B_Reset_PrVal=On;
выдаёт ошибку что "Не найден тег"

Заранее спасибо огромное!

Сообщение отредактировал zedzedus - 31.5.2016, 7:24
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Polopolar
сообщение 31.5.2016, 8:00
Сообщение #2





Группа: Участники форума
Сообщений: 50
Регистрация: 11.11.2013
Пользователь №: 212575



Если хотите реализовать последовательность каких-то действий, то лучше это делать в Cicode, ибо функционал менюшек тулса ограничен количеством символов.
Цитата
FUNCTION Button_Reset()
IF (0<>Message("Message", "Чтобы произвести сброс, нажмите OK", 1)) THEN RETURN; END
B_Reset_OoServ=1;
SleepMS(50);
B_Reset_PrVal=1;
SleepMS(50);
B_Reset_OoServ=0;
SleepMS(50);
Message("Message", "Сброс произведен", 0);
END

Чтобы переключить значение булевой переменной, надо воспользоваться командой Toggle.
Цитата
Toggle(B_Reset_PrVal)

Однако, не совсем понятно:
1. Зачем переводить ОоСерв туда сюда.
2. Сброс производится импульсом или изменением состояния тэга?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 31.5.2016, 8:21
Сообщение #3





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



1. Зачем переводить ОоСерв туда сюда.
без этого у PrVal невозможно поменять значение
2. Сброс производится импульсом или изменением состояния тэга?
импульсом - то есть это физическая кнопка "сброс" на щите управления
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Polopolar
сообщение 31.5.2016, 8:50
Сообщение #4





Группа: Участники форума
Сообщений: 50
Регистрация: 11.11.2013
Пользователь №: 212575



Если импульс, то Pulse(sTag).

Не понял: хотите управлять исполнительным механизмом (выполненным в виде кнопки) с помощью дискретного модуля входа (типа TXM1.8D или TXM1.16D)? тогда вам нужен релейный модуль выхода типа (TXM1.6R).

Все понял, "сам дурак".

Попробуйте добавить запаздывание (команда Sleep или SleеpMS).

Сообщение отредактировал Polopolar - 31.5.2016, 9:06
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 31.5.2016, 9:07
Сообщение #5





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Цитата(Polopolar @ 31.5.2016, 11:50) *
Если импульс, то Pulse(sTag).

Не совсем понял: хотите управлять исполнительным механизмом (выполненным в виде кнопки) с помощью дискретного модуля входа (типа TXM1.8D или TXM1.16D)? тогда вам нужен релейный модуль выхода типа (TXM1.6R)

Нет конечно...
Есть вентустановка (приточка+вытяжка). В случае возникновения аварии на ней ( пожар/обрыв ремнявентилятора/заморозка) для последущего запуска надо нажать кнопку на шкафу управления "Сброс". Проект Xworks программировал подрядчик (хотя у меня есть исходник и возможность исправить и "залить" проект в контроллер PXC100ED ).
Я рисую сейчас только "верхний" уровень. Хочется чтобы диспетчер не бегал на 9 этаж нажимать кнопку, а нажимал её на экране.
Сейчас попробую по Вашим советам реализовать эту кнопку. Спасибо большое.
Обучение по Дезиге проходил 11 лет назад. Уже всё без практики позабылось. Но новое обучение в Сименс начальство не отпускает, хотя Сименс уже и приглашение прислал sad.gif(
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Polopolar
сообщение 31.5.2016, 12:21
Сообщение #6





Группа: Участники форума
Сообщений: 50
Регистрация: 11.11.2013
Пользователь №: 212575



Окончательно запутался:
1. Проект вентустановки выполнен на средствах Siemens (контроллеры PXC100ED, PXC200ED, PXC3.E.. и т.д. и т.п...) и логика забита в XWorks, или сделан на другом контроллере (Pixel, Carel, Овен и т.д. и т.п...), не входящих в семейство Siemens, и заведен в скаду посредством станции PXC...-U с модулями и т.п. с забитием тэгов в XWorks или заведен в скаду уже посредством Citect?
2. Если надо сэмулировать нужное положение дискретного входа, то конечно без ОоСерв не обойтись, однако, если логика прописана на более низком уровне, то эта эмуляция ничего не даст кроме изменения состояния на станции диспетчера.
3. Не проще ли прописать в логике вентустановки тэг кнопки сброса и по этому адресу отсылать запрос на срабатывание сброса?
4. Даже если сделаете кнопку сброса аварии, не надо ли будет убедится так сказать на месте по какой причине произошла авария?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 31.5.2016, 12:37
Сообщение #7





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Не хочется очень лезть в чужой код ((
Всё на Сименсе
Вот такой код на кнопке (во вложении)
Внизу под кнопокой 2 красных символа -
Первый - состояние PrVal
Второй - состояние OoServ
При нажатии на Сброс эти символы с интервалом 1сек меняют своё состояние на зеленый., потом снова краснеют.
Так же вложил картинку со свойствами тега


Прикрепленные файлы
Прикрепленный файл  1464687058174_333263212.jpg ( 842,05 килобайт ) Кол-во скачиваний: 53
Прикрепленный файл  1464687321792661839748.jpg ( 1,44 мегабайт ) Кол-во скачиваний: 41
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 31.5.2016, 14:10
Сообщение #8





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Похоже это проблема не в скрипте...
Если меняю "регулятора уставки" (genies wk000_0_mx02_n ) , то ситуация аналогичная - уставка только на экране меняется на 10 секунд, а потом снова возвращается на предыдущее значение. А из Каталога Объектов всё фиксируется на постоянку.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 1.6.2016, 11:00
Сообщение #9





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Три дня проб и экспериментов... Результата ноль ((
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lamer
сообщение 2.6.2016, 11:16
Сообщение #10





Группа: Участники форума
Сообщений: 54
Регистрация: 13.2.2012
Пользователь №: 140013



Не совсем понял зачем использовать OoServ ??? Попробуйте использовать команду pulse ?

И еще вопрос не по теме. Кружочки на мнемосхеме это и есть вся диспетчеризация вент.установки ?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Polopolar
сообщение 2.6.2016, 12:04
Сообщение #11





Группа: Участники форума
Сообщений: 50
Регистрация: 11.11.2013
Пользователь №: 212575



Цитата(lamer @ 2.6.2016, 13:16) *
Не совсем понял зачем использовать OoServ ??? Попробуйте использовать команду pulse ?

И еще вопрос не по теме. Кружочки на мнемосхеме это и есть вся диспетчеризация вент.установки ?

Его используют, потому что меняют значение тэга входа, что, соответственно, никакого результата для тс и не приносит.

имхо проще в автоматике найти вход резета и параллельно ему воткнуть тэг удаленного ручного резета через блок "или".

Однако, также может не по теме, но все равно не понял зачем сбрасывать аварию того же вентилятора, капилярки или еще какой-нибудь, когда она тут же снова выскочит или вообще не сбросится, пока не устранят непосредственно на месте причину аварии.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lamer
сообщение 2.6.2016, 12:09
Сообщение #12





Группа: Участники форума
Сообщений: 54
Регистрация: 13.2.2012
Пользователь №: 140013



Цитата(Polopolar @ 2.6.2016, 12:04) *
Его используют, потому что меняют значение тэга входа, что, соответственно, никакого результата для тс и не приносит.

имхо проще в автоматике найти вход резета и параллельно ему воткнуть тэг удаленного ручного резета через блок "или".

Однако, также может не по теме, но все равно не понял зачем сбрасывать аварию того же вентилятора, капилярки или еще какой-нибудь, когда она тут же снова выскочит или вообще не сбросится, пока не устранят непосредственно на месте причину аварии.


Например дребезг контактов, аварийный сигнал появился и пропал, например. Триггер словил аварию, её сбросили.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Polopolar
сообщение 2.6.2016, 12:17
Сообщение #13





Группа: Участники форума
Сообщений: 50
Регистрация: 11.11.2013
Пользователь №: 212575



Цитата(lamer @ 2.6.2016, 14:09) *
Например дребезг контактов, аварийный сигнал появился и пропал, например. Триггер словил аварию, её сбросили.

Дак тогда для этого запаздывание на срабатывание делают или туже мертвую зону.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zedzedus
сообщение 24.6.2016, 8:09
Сообщение #14





Группа: New
Сообщений: 9
Регистрация: 26.8.2013
Пользователь №: 203371



Цитата(lamer @ 2.6.2016, 14:16) *
И еще вопрос не по теме. Кружочки на мнемосхеме это и есть вся диспетчеризация вент.установки ?

Нет конечно - вот готовый вариант схемы

И главное - я нашёл ответ на свой вопрос - помогли коллеги!!
В Citect Project Editor надо запустить Tools - Project Wizard - и далее ok ok ok...
Я так и не понял что это даёт, но главное - ВСЁ НАЧИНАЕТ РАБОТАТЬ !!
При чём делать надо это кажый раз при импорте/экспорте проекта на рабочую станцию
Прикрепленные файлы
Прикрепленный файл  ______5.JPG ( 90,13 килобайт ) Кол-во скачиваний: 39
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274



ООО "Русич" ИНН 9721068883 / ЕРИД 2Vtzqx9HerZ


ООО «УНИСПЛИТ» ИНН: 6453155081 erid: 2VtzqvmjJqS

ООО "АйДи-Электро" ИНН:6670013662 erid:2Vtzqwtpv5j

Последние сообщения Форума






RSS Текстовая версия Сейчас: 17.6.2025, 5:14
Политика ООО ИИП «АВОК-ПРЕСС» в отношении обработки персональных данных