Регистрация | Последние сообщения | Персональный список | Поиск | Настройка конференции | Личные данные | Правила конференции | Список участников | Top 64 | Статистика раздела | faq | Что нового v.2.3 | Чат
Skunk Forum - Техника, Наука, Общество » АСУТП »
Реализация расчетов на средствах SCADA

Версия для печати (настроить)

Новая тема | Написать ответ

Подписаться

Автор Тема:   Реализация расчетов на средствах SCADA
Avsha
Member

Сообщений: 46
Регистрация: Июль 2005

написано 16 Сентября 2005 10:58ИнфоПравкаОтветитьIP

В данный момент занимаюсь реализацией расчетов на SCADA iFix.
Хотел узнать, у кого какой опыт в реализации расчетов на средствах SCADA-пакетов?
Типы расчетов, объем расчетов, что используется в качестве архива данных, вычислительных средств и т.д., вопросы контроля и администрирования расчетов.
Готов поделиться и своими результатами.

Dmitry M. Gaidash
unregistered
написано 19 Сентября 2005 11:02  ПравкаОтветитьIP

Avsha
Я занимался подобными вещами на базе WinCC.
Типы расчетов: расчеты технико-экономических показателей работы автоматизированного оборудования
Объем расчетов: 320 измеряемых параметров, 80 расчетных параметров, 400 архивируемых параметров (измеряемые + расчетные)
В качестве архивов данных использовались как встроенные средства архивирования WinCC, так и собственная библиотека для создания DBF-архивов специального формата.
Вычислительные средства: согласно системным требованиям WinCC.

Опыт условно положительный Какие конкретно вопросы интересуют?

Avsha
Member

Сообщений: 47
Регистрация: Июль 2005

написано 19 Сентября 2005 12:45ИнфоПравкаОтветитьIP

Dmitry M. Gaidash

Спасибо за ответ,
меня интересует следующее.
Какие программные средства используются для расчетов (теги базы данных, программные скрипты)?
И еще вопрос по администрированию этих расчетов, по вашему мнению, приспособлена ли SCADA WinCC (и вообще SCAD-ы) для реализации расчетов, а также частого изменения расчетных формул?

Просто мне приходиться делать готовый инструмент для эксплутационного персонала, и вопросы диагностики работы расчетов и их редактирования выходят на первый план.
В целом план моего тестирования следующий:
1.Структура системы сбора и обработки данных
2.Переменные
3.Расписания - программы расчетов
4.Инструменты администрирования
5.Типы расчетов

Dmitry M. Gaidash
unregistered
написано 19 Сентября 2005 13:17  ПравкаОтветитьIP

Avsha
Какие программные средства используются для расчетов
Внутренние и внешние (OPC) тэги, обрабатываемые скриптами (ANSI C) с подключением внешних DLL для реализации специфических функций (встроенный Global Script по сути своей интерпретатор и работает медленно).

приспособлена ли SCADA WinCC (и вообще SCAD-ы) для реализации расчетов, а также частого изменения расчетных формул?
Проблем с корректировкой ПО и изменением функциональности не возникало до сих пор, хотя проект непрерывно дорабатывается на протяжении 2-х лет, если не больше. Правда, нужна четкая проработка архитектуры системы, которая будет ориентирована именно на частые изменения.

В-общем, на базе SCADA (если под этим термином понимать "пультовую программу") можно (и нужно, ИМХО) создавать подобные системы. С iFix я не работал, но думаю, что принципиальных отличий от WinCC там нет - те же теги, те же скрипты, те же средства архивирования.

Avsha
Member

Сообщений: 48
Регистрация: Июль 2005

написано 20 Сентября 2005 05:39ИнфоПравкаОтветитьIP

Dmitry M. Gaidash

Предлагаю немного соотнести наши варианты.
Переменные:
- В качестве расчетных переменных мы используем теги, настроенные на специальный симуляционный драйвер SIM.
Эти теги мы архивируем, вызываем на тренд, отображаем на мнемосхемах как и теги, связанные с контроллерами.
- У вас теги OPC - немного непонятно, они находятся в базе реального времени WinCC? и связаны с каким-то внешним OPC-сервером?

Программные модули:
- У нас существует возможность запускать программные модули на VBA,
для этого есть встроеннный механизм - "Планировщик", так же можно использовать внешние модули .exe
- У вас внешние модули, написанные на ANSI C.

Использование библиотек:
- У нас библиотеку расчетов планируем реализовать в виде отдельных подпрограмм (функций) VBA.
- У вас DLL для реализации специфических функций - это набор - библиотека различных расчетных формул ?

Dmitry M. Gaidash
unregistered
написано 20 Сентября 2005 09:33  ПравкаОтветитьIP

Avsha
Предлагаю немного соотнести наши варианты
Давайте попробуем.

они находятся в базе реального времени WinCC? и связаны с каким-то внешним OPC-сервером?
Ну можно и так сказать Прямой связи с контроллером у нас нет, т.к. в данной задаче она не нужна. А никакой разницы между тегами из различных источников и внутренними тегами у нас нет, с ними можнов sgjkyznm все типовые операции.

У вас внешние модули, написанные на ANSI C
Нет, у нас модули, написанные на встроенном в WinCC средстве - Global Script (интерпретатор ANSI C). Для критических моментов, требующих быстрого исполнения, из этих скриптов можно вызывать внешние функции, подключая в нужном месте DLL.

У вас DLL для реализации специфических функций - это набор - библиотека различных расчетных формул
Тоже не так, все расчеты реализуются на скриптах, а DLL используется для архивирования тэгов (нужна база специфической структуры, которую средствами WinCC реализовать невозможно).

Насколько я понял, iFix поддерживает VBA, так что проблем никаких быть не должно, делайте все на нем. Использование внешних модулей в WinCC связано исключительно с тем, что в 5-й версии скрипты выполняются ну очень медленно. Уже в 6-й версии той же WinCC есть поддержка VB, так что от C-скриптов можно отказаться.

Avsha
Member

Сообщений: 49
Регистрация: Июль 2005

написано 20 Сентября 2005 10:26ИнфоПравкаОтветитьIP

Dmitry M. Gaidash

А никакой разницы между тегами из различных источников и внутренними тегами у нас нет, с ними можно выполнять все типовые операции.
Как я понял, это какие-то внутренние теги БД WinCC. А где храняться и беруться начальные значения этих тегов при запуске сервера? Из файла БД WinCC на диске?

Есть ли у вас механизмы просмотра и контроля результатов расчетных параметров?
Как я понял формат вашего архива dbf. Создавали ли вы какие-то внешние программы администрирования для ручного или автоматического востановления результатов расчетов?

Dmitry M. Gaidash
unregistered
написано 20 Сентября 2005 11:45  ПравкаОтветитьIP

Avsha
Первого вопроса откровенно не понял, а для просмотра и контроля результатов используются как встроенные средства WinCC, так и внешняя программа, которая считывает данные из подготовленного архива и выполняет с ними массу различных интересных операций.

Т.е. голые расчеты и примитивное отображение реализуется средствами WinCC, а вот для более серьезной обработки полученных данных (расчеты же не просто так для информации делаются) нужные другие средства. В нашем случае это внешнее приложение.

Avsha
Member

Сообщений: 50
Регистрация: Июль 2005

написано 20 Сентября 2005 14:59ИнфоПравкаОтветитьIP

Dmitry M. Gaidash
Вопрос был в смысле, где хранятся значения тех переменных, которые участвуют в расчетах в качестве изменяемых аргументов (коэффициентов, накоплений, значений на предыдущем шаге и т.д.)? Ведь их надо хранить где-то в SCADE.
Мы такие переменные сохраняем просто в текстовый файл, тогда при перезагрузке станции - (SCADA-вычислителя), эти переменные инициализируются из этого файла.

panteleys
unregistered
написано 20 Сентября 2005 15:42  ПравкаОтветитьIP

Мы занимались следующими расчетами в SCADE Citect v5.4. Для резервуарных парков: меряли температуру - по полиному рассчитывали плотность продукта, меряли уровень - по полиному, составленному на основе калибровочной таблицы, расчитывали объем, зная объем и плотность расчитывали массу. Все делалось в cicode (но можно и на VBA). Составляли отдельные функции, а далее уже их использовали как теги на трендах, рапортах и т.д. Рапорта и тренды соответственно настраивали сами по длительности хранения. Можно составить стандартные подпрограммы для расчетов, т.е. составить общий шаблон тега, а далее при его использовании подставлять коэффициенты и имя тега.

Гость
unregistered
написано 21 Сентября 2005 10:41  ПравкаОтветитьIP

Avsha
Вопрос был в смысле, где хранятся значения тех переменных, которые участвуют в расчетах в качестве изменяемых аргументов (коэффициентов, накоплений, значений на предыдущем шаге и т.д.)? Ведь их надо хранить где-то в SCADE

Начальные значения тегов (если они статичны) можно настроить и настройке тегов WinCC. Промежуточные значения можно хранить в БД - в БД имеется возможность выполнять операции по копированю (перемещению) нужных даныых во вторичный архив и удалять уже не нужные в первичном., производя при этом например усреднение...
Можно создать группы (наборы) начальных или подстановочных значений и загружать их из User Archives по событию... Например подстановка договорных величин коммерческого учета при выходе узла учета из строя...

ColdFire
Member

Сообщений: 92
Откуда: Россия
Регистрация: Ноябрь 2004

написано 21 Сентября 2005 11:08ИнфоПравкаОтветитьIP

Позволю себе высказать собственное частное мнение. Реализация каких либо расчетов в SCADA, выходящих за рамки отображения информации - полнейший бред. Я видел системы, где вообще 90% логики управления было сделано не в контроллере, а в SCADA - в итоге малейший глюк компьютера выводил из строя систему, а про отвратительную надежность нынешней компьютерной техники, как офисной, так и промисполнения, думаю говорить вам не нужно.

Все эти потуги сделать из системы визуализации некий монстроподобный портал, где в одном месте завязана вся информация, начиная от тэгов ввода-вывода и заканчивая зарплатой - чисто маркетинговый ляпус, направленный только на увеличение доли рынка конкретным производителем и снижающий общую надежность на порядок. Неспроста придумали иерархию - КИПиА, АСУТП, АСУП (состоящий в свою очередь из MES и ERP).

Avsha
Member

Сообщений: 51
Регистрация: Июль 2005

написано 21 Сентября 2005 11:27ИнфоПравкаОтветитьIP

Гость
Промежуточные значения можно хранить в БД
БД - это база данных реального времени или исторических данных?
БД имеется возможность выполнять операции по копированю (перемещению) нужных данных во вторичный архив и удалять уже не нужные в первичном
первичный и вторичный архивы - это архивы истории? Зачем производится такое деление?
Это все встроенные средства WinCC?

Не могли бы вы привести конфигурацию одной такой переменной (поля, свойства).
вот мой пример ...

A_NAME;A_TAG;A_NEXT;A_DESC;A_ISCAN;A_SCANT;A_SMOTH;A_IODV;A_IOHT;A_IOAD;A_IOSC;A_ELO;A_EHI;A_EGUDESC;A_IAM;A_IENAB;A_ADI;A_LOLO;A_LO;A_HI;A_HIHI;A_ROC;A_DBAND;A_PRI;A_EOUT;A_SA1;A_SA2;A_SA3;A_AREA1;A_AREA2;A_AREA3;A_AREA4;A_AREA5;A_AREA6;A_AREA7;A_AREA8;A_AREA9;A_AREA10;A_AREA11;A_AREA12;A_AREA13;A_AREA14;A_AREA15;A_ALMEXT1;A_ALMEXT2!

AI;G5V1_AR01001;G5V1_AR01001_E1;Модуль01 Расчетная переменная AR 001;ON;1;0;SIM;;0;;0,00;100,00;ед.;MANL;DISABLE;НЕТ;0,00;0,00;100,00;100,00;0,00;0,00;L;YES;НЕТ;НЕТ;НЕТ;ALL;;;;;;;;;;;;;;;;

Чтобы разобрать, скопируйте и вставьте в Excel.
Затем выделите столбец, потом меню Данные/Текст по столбцам/Разделитель ";"

Ну блин весь форум поломал

[Это сообщение изменил Avsha (изменение 21 Сентября 2005 11:31).]

Гость
unregistered
написано 21 Сентября 2005 11:30  ПравкаОтветитьIP

ColdFire
Реализация каких либо расчетов в SCADA, выходящих за рамки отображения информации - полнейший бред.

О чем Вы?
Если необходимо выполнить расчет ТЭПа работы объекта за смену, неужто контроллер вешать для расчетов надо? И почему это плохо? Ведь результаты ТЭП и в MES предоставить можно и нужно.

Avsha
Member

Сообщений: 52
Регистрация: Июль 2005

написано 21 Сентября 2005 11:46ИнфоПравкаОтветитьIP

ColdFire
Вы правы, что расчеты должны быть распределены на уровни управления, мы это давно поняли.
Но у SCADA - есть свой сегмент расчетов. Это расчеты для отображения, где исходными данными являются параметры с нескольких контроллеров, это алгоритмы верхнего уровня АСУТП управления качеством и другие, вот эти расчеты я и имел в виду начиная тему.
Насчет ТЭП, тоже спорный вопрос, чего плохого, если SCADA посчитает эти параметры если у нее хватает исходных данных и вычислительной мощности. А вдруг она одна на предприятии, и нет наверху никакой АСУП, я думаю, надо все смотреть для конкретного случая.

Гость
unregistered
написано 21 Сентября 2005 11:52  ПравкаОтветитьIP

Avsha
БД - это база данных реального времени или исторических данных?
Историческая
первичный и вторичный архивы - это архивы истории? Зачем производится такое деление?
Для хранения различных вариантов истории параметров. Например среднечасовых, среднесуточных.
Это все встроенные средства WinCC? - Да
Читайте
ссылка
ссылка
И поймите правильно - я не агитирую за WinCC.


Ваш ответ:

Коды форума
Смайлики


Ник:    Пароль       
Отключить смайлики

Все время MSK

Склеить | Разбить | Закрыть | Переместить | Удалить

Новая тема | Написать ответ
Последние сообщения         
Перейти к:

Свяжитесь с нами | skunksworks.net

Copyright © skunksworks.net, 2000-2018

Разработка и техническая поддержка: skunksworks.net


Рейтинг@Mail.ru Яндекс.Метрика