PDA

Просмотр полной версии : Создание редактора технологических процессов



kvr15
04.12.2015, 16:56
Здравствуйте,хотелось бы узнать как реализовать в MasterScada редактор технологических процессов.
Задача такая:
Наряду с мнемосхемой управления объектом создать отдельное окно,где оператор будет сам составлять тех. процесс.
Это может быть таблица,где будет возможность пошагово расписать рецепт программы,выбирая конкретные команды и определяя параметры и их значения.
Например:
1. Нагрев (ввести температуру нагрева)
2. Таймер (ввести время выдержки)
3. Вкл. насос
4. таймер
ну и т.д. до конца тех. процесса.
В OpenScada подсмотрел как это сделано.
21194
Хотелось бы что-то типо этого реализовать.
Помогите пожалуйста советом!!

SCADAMaster
04.12.2015, 18:28
Как мы понимаем на каждую библиотеку будет своя программа, и произвольным набором шагов, с произвольными параметрами каждого шага.
В таком случае реализовать штатными средствами затруднительно.
Но вы можете написать собственный ВФБ на C#, в котором реализовать конфигурирование шагов. На выход ФБ будет поступать ID или имя процесса который выполняется на этом шаге, который потом можно передать в контроллер.

kvr15
07.12.2015, 09:29
Как мы понимаем на каждую библиотеку будет своя программа, и произвольным набором шагов, с произвольными параметрами каждого шага.
В таком случае реализовать штатными средствами затруднительно.
Но вы можете написать собственный ВФБ на C#, в котором реализовать конфигурирование шагов. На выход ФБ будет поступать ID или имя процесса который выполняется на этом шаге, который потом можно передать в контроллер.

Да,для каждого рецепта в библиотеке оператор составляет набор шагов с определенными параметрами для них,а затем сохраняет рецепт и запускает его выполнение.Далее программа работает пошагово. Сами команды менять нельзя,это закладывается разработчиком на стадии проектирования, т.е оператор просто составляет последовательность действий.
К сожалению, я начинающий программист, поэтому С# не владею...
Подскажите, могут ли разработчики MasterScada на заказ разработать такой ВФБ,или другой набор инструментов для реализации описанных мною действий?
А можно ли вместо ФБ на С# тоже самое реализовать с помощью ФБ "Программа ST"?

SCADAMaster
07.12.2015, 11:53
НА ST реализовать нельзя, так как нужна еще графическая часть - в ней главные проблемы.
Написать такой ВФБ на заказ мы можем - напишите ТЗ и сбросьте нам на почту. Но занятся разработкой мы сможем не раньше января-февраля.
Или попробуйте сами - инструкция по разработке прилагается к MasterSCADA, многие наши клиенты с успехом реализовывали различные ВФБ.

kvr15
07.12.2015, 12:18
НА ST реализовать нельзя, так как нужна еще графическая часть - в ней главные проблемы.
Написать такой ВФБ на заказ мы можем - напишите ТЗ и сбросьте нам на почту. Но занятся разработкой мы сможем не раньше января-февраля.
Или попробуйте сами - инструкция по разработке прилагается к MasterSCADA, многие наши клиенты с успехом реализовывали различные ВФБ.

Я пока не могу представить себе архитектуру подобного ФБ, и архитектуру всего проекта в MasterScada с данным ФБ.
Я так понимаю вы сможете создать ФБ который будет выполнять функции редактора тех. процессов и будет иметь вид примерно как я показал на скриншоте,ну или в другом удобном?
Хотелось бы поподробней это обсудить.

SCADAMaster
07.12.2015, 13:53
Какой у вас вообще предполагается механизм взаимодействия с контроллером?
Примерно так:
1) Запускаем процесс
2) Сообщаем контроллеру тип шага и параметры
3) Контроллер отрабатывает шаг согласно параметрам
4) Контроллер передает в скаде сигнал, что шаг завершен
5) Происходит переход на следующий шаг. Переход в п.2

Так?

Набор параметров каждого шага известны заранее? Добавляться не будут?
Проще говоря группы параметров можно сделать на этапе создания ФБ или сделать конфигурируемыми?

kvr15
07.12.2015, 14:14
Какой у вас вообще предполагается механизм взаимодействия с контроллером?
Примерно так:
1) Запускаем процесс
2) Сообщаем контроллеру тип шага и параметры
3) Контроллер отрабатывает шаг согласно параметрам
4) Контроллер передает в скаде сигнал, что шаг завершен
5) Происходит переход на следующий шаг. Переход в п.2

Так?

Набор параметров каждого шага известны заранее? Добавляться не будут?
Проще говоря группы параметров можно сделать на этапе создания ФБ или сделать конфигурируемыми?

Порядок такой как вы сказали.
Параметры каждого шага изначально будут жестко заложены,т.е. если это шаг "Нагрев",то его параметры это "конечная температура" и "время нагрева" (тут ПИД-регулятор должен работать),оператор задает только значения параметров.
т.е. оператор набирает из списка всех команд своего рода табличку последовательно заданных команд с их параметрами и нажимает "пуск" и программа работает пошагово выполняя по очереди каждый шаг,он может прервать програму,пропустить шаг или просто наблюдать за процессом. А вот под конкретными командами подразумеваются конкретные действия контроллера (в нём заложена логика работы всех механизмов со всеми блокировками). Т. е. команда "нагрев" ,например, записывает уставки температуры и времени (которые оператор указал) в нужные переменные в ПЛК и отправляет сигнал вкл. нагреватель, ну и так с каждой командой.
таким образом группы параметров и сами команды делать нужно на этапе создания ФБ, конфигурировать их нет надобности оператору,ему только значения и порядок выполнения.

"2) Сообщаем контроллеру тип шага и параметры " - тут скорее всего не тип шага а сообщаем переменную и её значение, но можно я думаю и в ПЛК расписать эти шаги,а со скады задавать уставки

SCADAMaster
07.12.2015, 14:31
"2) Сообщаем контроллеру тип шага и параметры " - тут скорее всего не тип шага а сообщаем переменную и её значение, но можно я думаю и в ПЛК расписать эти шаги,а со скады задавать уставки
Вряд ли у газонапуска и барабана будут одинаковые параметры.
Поэтому тут имеет смысл (раз уже процесс и их параметры заранее известны), сделать для каждого процесса отдельную группу параметров. Все параметры поступают в ПЛК. Просто в нужный момент он будет анализировать значения той группы, чей шаг сейчас нужно выполнить.
Процессы скорее всего придется представлять в виде идентификаторов (0 - вакуум, 1 - выдержка). Вряд ли контроллер способен хорошо работать со строками.

kvr15
07.12.2015, 14:42
Вряд ли у газонапуска и барабана будут одинаковые параметры.
Поэтому тут имеет смысл (раз уже процесс и их параметры заранее известны), сделать для каждого процесса отдельную группу параметров. Все параметры поступают в ПЛК. Просто в нужный момент он будет анализировать значения той группы, чей шаг сейчас нужно выполнить.
Процессы скорее всего придется представлять в виде идентификаторов (0 - вакуум, 1 - выдержка). Вряд ли контроллер способен хорошо работать со строками.

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

SCADAMaster
07.12.2015, 15:17
Опишите все процессы, и их параметры.
Или сюда или на почту.

kvr15
07.12.2015, 15:38
Трудно пока сказать точные команды которые будут,пока не сделана программа на ПЛК,но в последнем проекте у нас было так.
Список команд и их параметры:
Вакуум - Давление (Па);
Нагрев - Температура (град. С),Время (мин);
Барабан - вкл./выкл., скорость вращения (об/мин);
Заслонка - положение 1/положение 2/закрыть;
Термический испаритель - ток (А), мощность (Вт);
Электронный испаритель №1 - мощность анода (Вт);
Электронный испаритель №2 - мощность анода (Вт);
Свидетель сопротивления - Сопротивление (Ом);
Охлаждение - температура (град. С);
Атмосфера - вкл./выкл.;
Источник ионов - ток (А), напряжение (В), мощность (Вт);
Газонапуск - расход газа (л/мин);
Таймер - время (сек.).

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

kvr15
10.12.2015, 16:58
НА ST реализовать нельзя, так как нужна еще графическая часть - в ней главные проблемы.
Написать такой ВФБ на заказ мы можем - напишите ТЗ и сбросьте нам на почту. Но занятся разработкой мы сможем не раньше января-февраля.
Или попробуйте сами - инструкция по разработке прилагается к MasterSCADA, многие наши клиенты с успехом реализовывали различные ВФБ.

Подскажите где почитать/посмотреть инструкцию по разработке ВФБ к MasterSCADA на с#?

SCADAMaster
10.12.2015, 17:34
MasterSCADA - ДОкументация - Руководство по разработке ФБ и драйверов - Создание ФБ на C#.