- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Помогите дилетанту
Модератор: kirillio
-
- здесь недавно
- Сообщения: 41
- Зарегистрирован: 13 ноя 2012, 20:56
- Имя: Роман Сергеевич
- Страна: Россия
- город/регион: Уфа/Башкортостан
- Благодарил (а): 4 раза
- Поблагодарили: 2 раза
Re: Помогите дилетанту
aranea, а с каких пор у нас PCS 7 поддерживает S7-300T или SIMOTION? Нет, ну хочет человек писать - да зарадибога. Просто мне смысл всего этого непонятен. Хочет человек научиться работать с PCS 7? Или робот-манипулятор сделать?
"Lass die Finger von Maschinen, die Du selbst nicht kannst bedienen!"
-
- знаток Eplan
- Сообщения: 1136
- Зарегистрирован: 21 сен 2012, 22:45
- Имя: aranea
- Благодарил (а): 30 раз
- Поблагодарили: 165 раз
Re: Помогите дилетанту
RSA, об управлении перемещением и необходимости использования спец. модулей пока речи не было
говорили про пневматику, концевики.. безумные алгоритмы и гарвардскую архитектуру микроконтроллеров
похоже человеку действительно лучше взять продукт от ATMEL или DALLAS и проявить себя и свои умения в полной мере, чтобы не быть ограниченным рамками PCS, как и продукцией Сименс вообще
человек продолжает гнуть свою линию, выкладывая листинги и доказывая свою точку зрения, не задавая вопросов по существу, похоже, просто постеснявшись назвать тему "Помогу дилетантам" =)
говорили про пневматику, концевики.. безумные алгоритмы и гарвардскую архитектуру микроконтроллеров
похоже человеку действительно лучше взять продукт от ATMEL или DALLAS и проявить себя и свои умения в полной мере, чтобы не быть ограниченным рамками PCS, как и продукцией Сименс вообще
человек продолжает гнуть свою линию, выкладывая листинги и доказывая свою точку зрения, не задавая вопросов по существу, похоже, просто постеснявшись назвать тему "Помогу дилетантам" =)
-
- здесь недавно
- Сообщения: 41
- Зарегистрирован: 13 ноя 2012, 20:56
- Имя: Роман Сергеевич
- Страна: Россия
- город/регион: Уфа/Башкортостан
- Благодарил (а): 4 раза
- Поблагодарили: 2 раза
Re: Помогите дилетанту
Как вы не дипломатичны по форме и как правы по содержанию...
"Lass die Finger von Maschinen, die Du selbst nicht kannst bedienen!"
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Василий Иванович » Сегодня, 13:48
> ... Можно конечно ...
Не могу с Вами согласиться. SFC не молоток. Давайте посмотрим на то, как:
Возьму пример из "PCS 7 V6. Начальный курс. Часть 1. Создание SFC-схем (SFC-chart).pdf"
Так определяются и задаются параметры: (стр.5-18) (у меня вектора AU,OS,MS,TO)
Операнды в таблице имеют следующий формат:
[chartname\block\I/O], т.е. [имя_схемы\блок\I/O-параметр].
Иерархия установки опущена, чтобы сделать таблицу более понятной. Если
же Вы вставите следующую установку (plant) или модуль (unit) в проект
"color_gs", то Вы должны будете, конечно, указывать назначение схемы
(chart) в составе иерархии установки.
№
п/п
Операнд 1 Операнд 2 Значение
1 уже задано:
CFC_FC111\ CTRL_PID\ AUT_L FALSE Ручной режим (manual mode)контроллера
2 CFC_FC111\CTRL_PID.SP_EXT CFC_SETP\PARA_DOS_RM1_QTY.V Уставка (Setpoint) для управления потоком материала
3 CFC_FC111\CTRL_PID.LMN_SEL FALSE Нет корректировки уставки (No setpoint correction)
4 CFC_FC111\DOSE.L_START FALSE Режим остановки дозирования материала (Dosing stopped)
5 CFC_FC111\INT_P.TRACK TRUE Интегратор (Track integrator)
6 CFC_LI111\INT_P.TRACK TRUE Интегратор (Track integrator)
7 CFC_NK111\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
8 CFC_NK112\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
9 CFC_NK113\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
10 CFC_NK114\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме(automatic mode)
11 CFC_NP111\MOTOR.AUT_ON_OP Auto Мотор в автоматическом режиме (automatic mode)
12 CFC_LI111\INT_P.HOLD FALSE Удержать выходное значение (Hold output value)
Так задается шаг:
5.3.1.1 Параметры для шага 'INIT_LINE1'
В следующей таблице представлены параметры для шага "INIT_LINE1": (у меня вектор - статический вектор AU)
№
п/п Операнд 1 Операнд 2 Значение
1 CFC_NK111\VALVE.AUTO_OC TRUE Открыть вентиль
2 CFC_NK112\VALVE.AUTO_OC TRUE Открыть вентиль
3 CFC_NK113\VALVE.AUTO_OC TRUE Открыть вентиль
4 CFC_NP111\MOTOR.AUTO_ON TRUE Включить мотор
Так задается логика завершения шага:
Параметры для перехода "DOSE_REA1"
№
п/п Операнд 1 Оператор Операнд 2 Значение
1 CFC_SETP\PARA_DOS_RM1_SEL.Q0 = FALSE Сырье для реактора 1?
2 CFC_SETP\PARA_DOS_RM1_VOL.V > 0.0 Объем порции сырья > 0 ?
И еще много много много раз надо давить пальчиками на клавиатуре.
Я бы очень хотел пример приведенного мной шага в среде SFC.
С уважением, Владимир.
> ... Можно конечно ...
Не могу с Вами согласиться. SFC не молоток. Давайте посмотрим на то, как:
Возьму пример из "PCS 7 V6. Начальный курс. Часть 1. Создание SFC-схем (SFC-chart).pdf"
Так определяются и задаются параметры: (стр.5-18) (у меня вектора AU,OS,MS,TO)
Операнды в таблице имеют следующий формат:
[chartname\block\I/O], т.е. [имя_схемы\блок\I/O-параметр].
Иерархия установки опущена, чтобы сделать таблицу более понятной. Если
же Вы вставите следующую установку (plant) или модуль (unit) в проект
"color_gs", то Вы должны будете, конечно, указывать назначение схемы
(chart) в составе иерархии установки.
№
п/п
Операнд 1 Операнд 2 Значение
1 уже задано:
CFC_FC111\ CTRL_PID\ AUT_L FALSE Ручной режим (manual mode)контроллера
2 CFC_FC111\CTRL_PID.SP_EXT CFC_SETP\PARA_DOS_RM1_QTY.V Уставка (Setpoint) для управления потоком материала
3 CFC_FC111\CTRL_PID.LMN_SEL FALSE Нет корректировки уставки (No setpoint correction)
4 CFC_FC111\DOSE.L_START FALSE Режим остановки дозирования материала (Dosing stopped)
5 CFC_FC111\INT_P.TRACK TRUE Интегратор (Track integrator)
6 CFC_LI111\INT_P.TRACK TRUE Интегратор (Track integrator)
7 CFC_NK111\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
8 CFC_NK112\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
9 CFC_NK113\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме (automatic mode)
10 CFC_NK114\VALVE.AUT_ON_OP Auto Вентиль в автоматическом режиме(automatic mode)
11 CFC_NP111\MOTOR.AUT_ON_OP Auto Мотор в автоматическом режиме (automatic mode)
12 CFC_LI111\INT_P.HOLD FALSE Удержать выходное значение (Hold output value)
Так задается шаг:
5.3.1.1 Параметры для шага 'INIT_LINE1'
В следующей таблице представлены параметры для шага "INIT_LINE1": (у меня вектор - статический вектор AU)
№
п/п Операнд 1 Операнд 2 Значение
1 CFC_NK111\VALVE.AUTO_OC TRUE Открыть вентиль
2 CFC_NK112\VALVE.AUTO_OC TRUE Открыть вентиль
3 CFC_NK113\VALVE.AUTO_OC TRUE Открыть вентиль
4 CFC_NP111\MOTOR.AUTO_ON TRUE Включить мотор
Так задается логика завершения шага:
Параметры для перехода "DOSE_REA1"
№
п/п Операнд 1 Оператор Операнд 2 Значение
1 CFC_SETP\PARA_DOS_RM1_SEL.Q0 = FALSE Сырье для реактора 1?
2 CFC_SETP\PARA_DOS_RM1_VOL.V > 0.0 Объем порции сырья > 0 ?
И еще много много много раз надо давить пальчиками на клавиатуре.
Я бы очень хотел пример приведенного мной шага в среде SFC.
С уважением, Владимир.
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>aranea » 14 минут назад
> ... не задавая вопросов по существу ...
>RSA » 7 минут назад
> ... как правы по содержанию ...
Почти по Крылову - и встретила кукушка петуха ...
> ... не задавая вопросов по существу ...
>RSA » 7 минут назад
> ... как правы по содержанию ...
Почти по Крылову - и встретила кукушка петуха ...
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
У меня сложилось такое впечатление, что Вы никогда не работали с SFC. Я бы посоветовал попробовать сделать простейшую задачу самому, вживую, и на основании полученного опыта сами сделали вывод, подходит оно Вам, или нет. Вряд ли кто-то сможет чем-то иным Вам помочь.
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Василий Иванович » 20 ноя 2012, 18:08
>У меня сложилось такое впечатление ...
Вы правы.
В рамках самообразования поискал по Интернету тех. литературу по SCADA.
Много хвалебных слов по поводу MasterSCADA. Меня интересуют вопросы построения систем управления
простейшими роботами и периодическими процессами химической технологии.
Александр Сарычев и статье "Управление периодическими процессами в среде MasterSCADA"
утверждает, что комплект функциональных блоков, состоящий из «Циклограммы»,
«Очереди», «Арбитража», «Рецепта» и «Дозатора» достаточно для решения 90% задач реальной жизни.
Аппарат построения циклограмм есть.
Попытался написать программу простейшишего дозатора в инструкциях абстрактной машины, получилось как то так:
1. Дополнительные структуры данных:
2. Программа шага:
С уважением, Владимир
>У меня сложилось такое впечатление ...
Вы правы.
В рамках самообразования поискал по Интернету тех. литературу по SCADA.
Много хвалебных слов по поводу MasterSCADA. Меня интересуют вопросы построения систем управления
простейшими роботами и периодическими процессами химической технологии.
Александр Сарычев и статье "Управление периодическими процессами в среде MasterSCADA"
утверждает, что комплект функциональных блоков, состоящий из «Циклограммы»,
«Очереди», «Арбитража», «Рецепта» и «Дозатора» достаточно для решения 90% задач реальной жизни.
Аппарат построения циклограмм есть.
Попытался написать программу простейшишего дозатора в инструкциях абстрактной машины, получилось как то так:
1. Дополнительные структуры данных:
Код: Выделить всё
aTA :ARRAY[0..0] OF REAL; //-- Вектор текущих значений аналоговых параметров
aPFltr :ARRAY[0..0] OF STRUCT //-- Параметры фильтров аналоговых параметров
idxTA :INT; //-- Индекс аналового параметра
rlA0 :REAL;
rlA1 :REAL;
rlA2 :REAL;
rlDelta :REAL;
END_STRUCT;
aPIntgr : ARRAY[0..0] OF STRUCT //-- Параметры интегратора
idxTA :INT; //-- Индекс аналового параметра
idxTO :INT; //-- Индекс временного параметра
rlTime :REAL; //-- Шаг интегрирования
rlIntgr :REAL; //-- Значение интегратора
rlUst :REAL; //-- Уставка
END_STRUCT;
Код: Выделить всё
//== Шаг 15 = Загрузим продукт 100
shag15: ARRAY[0..22] OF BYTE :=
IAMU_SetIdxAll, //-- #00 - Установка индексов idxNS,idxAU,idxOS,idxMS,idxTO в контексте
//-- - Управление отсечными клапанами
0, //-- #01 - Индекс idxNS
0, //-- #02 - Индекс idxAU
0, //-- #03 - Индекс idxOS
0, //-- #04 - Индекс idxMS
0, //-- #05 - Индекс idxTO
IAMU_PrNSoShag, //-- #06 - Проверка начального состояния
//-- Если нет состояния, то переход на РУ
//-- Нельзя делать шаг, не имея точного однозначного знания состояния запорной арматуры
IAMU_ReSetFltr, //-- #07 - Начальная установка фильтра аналогового параметра
0, //-- #08 - Индекс фильтра в векторе фильтров аналоговых сигналов
//-- Желательно убрать "всплески" значения интегрируемого аналогового параметра
IAMU_ReSetIntgr,//-- #09 - Начальная установка интегратора
0, //-- #10 - Индекс интегратора в векторе интеграторов
IAMU_Perehod, //-- #11 - Открываем клапан подачи продукта 100
IAMU_SosPer, //-- #12 - Ждем завершения операции открытия клапана (возможен переход на РУ)
IAMU_PrSosOK, //-- #13 - Проверяем состояние запорной арматуры и сообщение оператору
//-- - Нет перехода на РУ автоматом
//-- - Мы обязаны следить за состоянием отсечных клапанов, мешалки, когда дозируем продукт
IAMU_Fltr, //-- #14 - Работает фильтр
0, //-- #15 - Индекс фильтра в векторе фильтров аналоговых сигналов
IAMU_Intgr, //-- #16 - Работает интегратор. Если продукт загружен FOK=0, иначе FOK<>0
0, //-- #17 - Индекс интегратора в векторе интеграторов
IAMU_JmpNotOK, //-- #18 - Переход к проверке состояния запорной арматуры, если FOK<>0
13, //-- #19 - Адрес перехода
IAMU_Perehod, //-- #20 - Закрываем клапан подачи продукта 100
IAMU_SosPer, //-- #21 - Ждем завершения операции закрытия клапана (возможен переход на РУ)
IAMU_EndShag; //-- #22 - Завершение шага
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
Коллеги. Требуется помощь.
Пожалуйста, объясните доходчиво, как выполняется вызов (CALL) функционального блока в среде STL.
Где хранятся актуальные значения формальных параметров, какими командами STL производится доступ к данным значениям?
Как работать с указателями POINTER, переданными как параметр, в функциональном блоке (функции) ?
Если возможно, то дайте примеры кода на STL.
С уважением, Владимир
Пожалуйста, объясните доходчиво, как выполняется вызов (CALL) функционального блока в среде STL.
Где хранятся актуальные значения формальных параметров, какими командами STL производится доступ к данным значениям?
Как работать с указателями POINTER, переданными как параметр, в функциональном блоке (функции) ?
Если возможно, то дайте примеры кода на STL.
С уважением, Владимир
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
> Василий Иванович » Сегодня, 11:08
> Бергер Ганс "Автоматизация посредством STEP 7 с использованием STL и SCL"
Бергер Ганс.
Пункт 26.3.1. Доступ к параметрам в функциях. Страница 26-9, рис. 26.4, вторая часть - Указатель на другой указатель.
DB-pointer физически есть структура из 6-ти байтов. Мне бы пример кода, как с этой структурой работать.
Имею:
VAR_INPUT
N : INT; //-- число битов в локальном векторе дискретных входов
loc_DI : POINTER; //-- локальный вектор дискретных входов
adr_Vec : POINTER; //-- вектор адресов дискретных входов образа процесса (I)
END_VAR
Как командами STL, имея loc_DI, получить номер DB-блока и межзонный указатель
С уважением, Владимир
> Бергер Ганс "Автоматизация посредством STEP 7 с использованием STL и SCL"
Бергер Ганс.
Пункт 26.3.1. Доступ к параметрам в функциях. Страница 26-9, рис. 26.4, вторая часть - Указатель на другой указатель.
DB-pointer физически есть структура из 6-ти байтов. Мне бы пример кода, как с этой структурой работать.
Имею:
VAR_INPUT
N : INT; //-- число битов в локальном векторе дискретных входов
loc_DI : POINTER; //-- локальный вектор дискретных входов
adr_Vec : POINTER; //-- вектор адресов дискретных входов образа процесса (I)
END_VAR
Как командами STL, имея loc_DI, получить номер DB-блока и межзонный указатель
С уважением, Владимир
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
http://support.automation.siemens.com/W ... n/20443243
http://support.automation.siemens.com/W ... n/22422092
http://support.automation.siemens.com/W ... n/19106712
Формат структуры описан в степовском хелпе.
http://support.automation.siemens.com/W ... n/22422092
http://support.automation.siemens.com/W ... n/19106712
Формат структуры описан в степовском хелпе.
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
Коллеги !
Всем откликнувшимся огромное спасибо.
С Вашей помощью освоил азы SIMANTIC PCS7, азы программирования и отладки кодовых блоков на SCL и STL, азы программирования на VBS для WinCC.
Написал и отладил прототип ПО системы управления роботов.
STL дает возможность "расшить" узкие места, такие как:
Опыта программирования на STL очень мало, поэтому буду крайне благодарен
Вашим конструктивным замечаниям по выше приведенной программе - надо научиться писать качественно.
Можно (да и нужно) переписать код логической машины с SCL на STL, логичнее, компактнее и быстрее.
Если кому интересен мой подход к построению ПО системы управления механизмами, то могу переслать
SIMATIC-проект прототипа (двухмашинный) такой как есть, но рабочий.
Тем кто работает дома. Если на комп установить ORACLE VirtualBox, а на него английскую версию WinXP или Win2k3, то
на виртуалку можно ставить SIMATIC PCS7. Все работает.
С уважением, Владимир.
p.s. Прототип по существу использует только два тега - чтения контекста и взаимодействия с оператором вне зависимости от размера входных/выходных векторов
Всем откликнувшимся огромное спасибо.
С Вашей помощью освоил азы SIMANTIC PCS7, азы программирования и отладки кодовых блоков на SCL и STL, азы программирования на VBS для WinCC.
Написал и отладил прототип ПО системы управления роботов.
STL дает возможность "расшить" узкие места, такие как:
Код: Выделить всё
//== Манипулятор под управлением компьютера
//-- Формируем текущее дискретное состояние
(*-- Один вариант
wd := 0;
IF(mZrd1_I_Vverh) THEN wd := wd OR sVverh; END_IF; //-- схват вверху
IF(mZrd1_I_Vniz) THEN wd := wd OR sVniz; END_IF; //-- схват внизу
IF(mZrd1_I_Vpered) THEN wd := wd OR sVpered; END_IF; //-- схват впереди
IF(mZrd1_I_Nazad) THEN wd := wd OR sNazad; END_IF; //-- схват сзади
IF(mZrd1_I_Konv) THEN wd := wd OR sKonv; END_IF; //-- схват к конвейеру
IF(mZrd1_I_Pit) THEN wd := wd OR sPit; END_IF; //-- схват к питателю
IF(mZrd1_I_Szat) THEN wd := wd OR sSzat; END_IF; //-- схват сжат
IF(mZrd1_I_Raszat) THEN wd := wd OR sRaszat; END_IF; //-- схват разжат
DBmZrd1.wdTS := wd;
*)
//-- Другой вариант
DBmZrd1.wdTS := DItoWTS(N:=8,vecAdr:=aDI);
//=======================================================================
FUNCTION "DItoWTS" : WORD
//TITLE =
//-- Формируем локальный вектор wTS из системного DI.
AUTHOR : Burlak
FAMILY : STL_LM
NAME : DItoWTS
VERSION : 01.00
VAR_INPUT
N : INT; //-- Размер локального вектора дискретных входов
vecAdr : POINTER; //-- Указатель на вектор адресов дискретных входов
END_VAR
VAR_TEMP
i : INT; //-- Параметр цикла
DB_NO : WORD; //-- Номер блока данных
SysDI : DWORD; //-- Указатель на системный вектор дискретных входов
wx : WORD; //-- Сдвиг единицы
v : WORD; //-- Динамика результата
END_VAR
BEGIN
L P#vecAdr; LAR1; //-- Косвенный доступ к POINTER
L W[AR1,P#0.0]; T DB_NO; //-- Получим номер блока данных
OPN DB[DB_NO]; //-- Откроем блок данных (DB or NOP)
L D[AR1, P#2.0]; LAR1; //-- Адрес вектора адресов бит вектора дискретных входов процесса
L 1; T wx; //-- Храним сдвиг единицы
L 0; T v; //-- Начальное значение
L N; //-- Параметр цикла - размер локального вектора дис. состояния
Cicl:
T #i; //-- i <-- ACCU1
L W[AR1,P#0.0]; T SysDI; //-- SysDI:=адрес бита вектора дискретных входов процесса
SET; A I[SysDI]; //-- Получим значение дискретного хода процесса
JCN Prod;
L wx; L v; OW; T v; //-- Обработка, если единица (true)
Prod:
+AR1 P#2.0; //-- Следующая компонента вектора адресов
L wx; SLW 1; T wx; //-- Сдвиг единицы влево
L #i;
LOOP Cicl; //-- Цикл DO..END
L v; T RET_VAL;
BE;
END_FUNCTION
Вашим конструктивным замечаниям по выше приведенной программе - надо научиться писать качественно.
Можно (да и нужно) переписать код логической машины с SCL на STL, логичнее, компактнее и быстрее.
Если кому интересен мой подход к построению ПО системы управления механизмами, то могу переслать
SIMATIC-проект прототипа (двухмашинный) такой как есть, но рабочий.
Тем кто работает дома. Если на комп установить ORACLE VirtualBox, а на него английскую версию WinXP или Win2k3, то
на виртуалку можно ставить SIMATIC PCS7. Все работает.
С уважением, Владимир.
p.s. Прототип по существу использует только два тега - чтения контекста и взаимодействия с оператором вне зависимости от размера входных/выходных векторов
-
- здесь недавно
- Сообщения: 49
- Зарегистрирован: 22 сен 2012, 16:22
- Имя: Сидоров Степан
-
- почётный участник форума
- Сообщения: 3575
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Помогите дилетанту
Несколько нестандартный подход, я бы сказал, привносят программисты, приходя в автоматизацию... А как создавать подобные системы, если у производителя нет аналога PCS7? PCS7 вообще полезен, в моем понимании, для распределенных в пространстве систем автоматизации. А тут роботы..
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Михайло » Сегодня, 05:25
>Несколько нестандартный подход ,.. А как создавать подобные системы, если у производителя нет аналога PCS7?
Подобные системы - логические машины управления периодическими процессами химической технологии и роботизированными комплексами сборки специзделий (со своими наборами абстрактных инструкций)- были реализованы на ассемблере (1010B VIDEOTON, а-ля PDP-8) и ассемблере INTEL 8080 (RPT-80 VIDEOTON) и реально работали в Редкино, Нелидово, Навои, Чебоксары.
В процессе знакомства с SIMATIC PCS 7.1 реализовал прототип абстрактной машины и ее инструкции в виде функционального блока среды SСL, графический интерфейс компьютерной системы с пользователем реализован в среде VBS WinCC.
На основе выше созданного построил демонстрационный вариант прототипа - упрощенный вариант системы управления роботом переноса комплектующего элемента с механизма "Питатель" на механизм "Конвейер", здесь не реализованы инструкции синхронизации робота "Внешний" c роботами "Питатель" и "Конвейер".
При таком подходе создание системы управления комплексом сборки специзделий переходит из раздела умозрительных построений в раздел технической реализации.
Меня заинтересовала эта [url http://isup.ru/articles/2/763/]статья[/url]. Язык ST существует (его аналог - SCL). Реализация абстрактной машины в среде MasterSCADA возможна. Построить графический интерфейс взаимодействия компьютерной системы с оператором, судя по базовым положениям статьи, также возможно на C#.
С уважением, Владимир.
>Несколько нестандартный подход ,.. А как создавать подобные системы, если у производителя нет аналога PCS7?
Подобные системы - логические машины управления периодическими процессами химической технологии и роботизированными комплексами сборки специзделий (со своими наборами абстрактных инструкций)- были реализованы на ассемблере (1010B VIDEOTON, а-ля PDP-8) и ассемблере INTEL 8080 (RPT-80 VIDEOTON) и реально работали в Редкино, Нелидово, Навои, Чебоксары.
В процессе знакомства с SIMATIC PCS 7.1 реализовал прототип абстрактной машины и ее инструкции в виде функционального блока среды SСL, графический интерфейс компьютерной системы с пользователем реализован в среде VBS WinCC.
На основе выше созданного построил демонстрационный вариант прототипа - упрощенный вариант системы управления роботом переноса комплектующего элемента с механизма "Питатель" на механизм "Конвейер", здесь не реализованы инструкции синхронизации робота "Внешний" c роботами "Питатель" и "Конвейер".
При таком подходе создание системы управления комплексом сборки специзделий переходит из раздела умозрительных построений в раздел технической реализации.
Меня заинтересовала эта [url http://isup.ru/articles/2/763/]статья[/url]. Язык ST существует (его аналог - SCL). Реализация абстрактной машины в среде MasterSCADA возможна. Построить графический интерфейс взаимодействия компьютерной системы с оператором, судя по базовым положениям статьи, также возможно на C#.
С уважением, Владимир.
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
С Вашим подходом к автоматизации PCS7 совсем не нужен. Достаточно писишки с карточкой для подключения периферии. Всё остальное Вы напишете сами.
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Василий Иванович » Сегодня, 11:17
>С Вашим подходом к автоматизации PCS7 совсем не нужен ...
В каком-то смысле Вы правы, но ... надежность, надежность и еще раз надежность,- вот вопрос всех вопросов применения компьютерных технологий.
25 лет назад упорно бились над решением этой задачи. RPT-80 не выдерживал более 48 часов работы, а останов системы при сборке партии изделий не допустим - чп. Людей на объекте сборки нет.
Вероятность остановки одной из машин комплекса была далеко не нулевая. Двухмашинный комплекс как-то "разруливал" эту ситуацию. Спасала вторая.
Компьютерные комплексы на базе 2-х "Семён"-ов работают годами. Проверено опытом эксплуатации.
С уважением, Владимир.
>С Вашим подходом к автоматизации PCS7 совсем не нужен ...
В каком-то смысле Вы правы, но ... надежность, надежность и еще раз надежность,- вот вопрос всех вопросов применения компьютерных технологий.
25 лет назад упорно бились над решением этой задачи. RPT-80 не выдерживал более 48 часов работы, а останов системы при сборке партии изделий не допустим - чп. Людей на объекте сборки нет.
Вероятность остановки одной из машин комплекса была далеко не нулевая. Двухмашинный комплекс как-то "разруливал" эту ситуацию. Спасала вторая.
Компьютерные комплексы на базе 2-х "Семён"-ов работают годами. Проверено опытом эксплуатации.
С уважением, Владимир.
-
- эксперт
- Сообщения: 1109
- Зарегистрирован: 09 фев 2011, 11:32
- Имя: Дитрих Евгений Линусович
- город/регион: Донецк
- Благодарил (а): 321 раз
- Поблагодарили: 218 раз
Re: Помогите дилетанту
Мама мия! PDP-8Бурлак писал(а):(1010B VIDEOTON, а-ля PDP-8) и ассемблере INTEL 8080 (RPT-80 VIDEOTON) и реально работали в Редкино, Нелидово, Навои, Чебоксары.
Мне 6 лет до пенсии, но начинал с "Электроники-60" (LSI-11, PDP-11).
Советский К580 (INTEL 8080) - пробовали и забросили еще до того как их начали пиарить в журнале "Радио".
to Бурлак: Про SFC (Sequential Function Chart) тебе уже не раз говорили. SFC - если хочешь мат-анализ - изучай сети Петри.
В PLC попробуй использовать командоаппараты (секвенсоры).
См. http://www.ab.com/linked/programmableco ... loads.html
Инструментарий, эмулятор и все даром.
SFC в этих контроллерах нет, внимание на команды SQ* (командоаппараты).
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
Чтобы построить систему с резервированным процессором и перифирией, совсем необязательно брать PCS7. Взяли бы просто степ, а скаду какую хочешь прикрутили. Да тот же WinCC можно отдельно прикрутить, и то было бы дешевле и удобнее во многих отношениях. А теперь вы это добро за***тесь мигрировать каждые четыре года на свежую версию.
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Василий Иванович » Сегодня, 17:48
>Чтобы построить систему с резервированным ... совсем необязательно брать PCS7
М-да. Никак не поймем друг друга.
Это пример решения задачи с ЗАДАННЫМИ граничными условиями. На всех объектах УХО по уже УТВЕРЖДЕННЫМ техническим проектам ДОЛЖНА стоять SIEMENS SIMATIC PCS 7.
Проекты никто менять не будет. Поздно. Да к тому же, на объектах есть и другие задачи уже реализованные в PCS 7 (6). Интегрированная система.
Я бы с большим удовольствием воспользовался Вашим советом - взял бы просто степ, но как говорится - пусть меня научат. Подскажите пожалуйста эквивалент тега и как им воспользоваться.
С уважением, Владимир.
>Чтобы построить систему с резервированным ... совсем необязательно брать PCS7
М-да. Никак не поймем друг друга.
Это пример решения задачи с ЗАДАННЫМИ граничными условиями. На всех объектах УХО по уже УТВЕРЖДЕННЫМ техническим проектам ДОЛЖНА стоять SIEMENS SIMATIC PCS 7.
Проекты никто менять не будет. Поздно. Да к тому же, на объектах есть и другие задачи уже реализованные в PCS 7 (6). Интегрированная система.
Я бы с большим удовольствием воспользовался Вашим советом - взял бы просто степ, но как говорится - пусть меня научат. Подскажите пожалуйста эквивалент тега и как им воспользоваться.
С уважением, Владимир.
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
Да я не возражаю. Я просто удивился, что в свое время Вы сказали, что PCS7 был навязан сверху, а теперь уже прозвучало, что это из соображений надежности.
А изначально я имел в виду, что Ваш подход к автоматизации мог бы лучше сочетаться с имеющейся базой. На других объектах тоже сходным образом автоматизируют, или там идут своим путем?
Да, еще. Не хочу флеймить, но все же скажу, что пусть STL "логичней, компактней и быстрее", но насчет "логичней" это далеко не очевидно, а "компактней и быстрее" - совершенно не актуально при наличии современных CPU. А вот читается этот код конкретно тяжелее.
А изначально я имел в виду, что Ваш подход к автоматизации мог бы лучше сочетаться с имеющейся базой. На других объектах тоже сходным образом автоматизируют, или там идут своим путем?
Да, еще. Не хочу флеймить, но все же скажу, что пусть STL "логичней, компактней и быстрее", но насчет "логичней" это далеко не очевидно, а "компактней и быстрее" - совершенно не актуально при наличии современных CPU. А вот читается этот код конкретно тяжелее.
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
-
- здесь недавно
- Сообщения: 32
- Зарегистрирован: 07 ноя 2012, 11:16
- Имя: Моисеев Владимир Николаевич
- Страна: Россия
- город/регион: п. Редкино
Re: Помогите дилетанту
>Василий Иванович » Вчера, 20:35
> Я просто удивился ... навязан сверху ... соображений надежности.
Василий Иванович , одно другому же не противоречит.
На данных объектах музыку заказывает тот, кто платит. Платили не мы.
В функциональном и техническом плане выбор правильный. В экономическом - не мне решать. По мне,- хотелось бы на своем "железе" работать, это желание еще из СССР.
>И да, самое главное ...
Да я не большой любитель ассемблеров. Но так исторически сложилось,- вечно не хватало оборотов у "цифромолок", вот и приходилось тащить ассемблер, как запасной вариант, потом оказывалось, что он основной.
С уважением, Владимир.
p.s. Василий Иванович, Вам не кажется, что мы сменили тему?
> Я просто удивился ... навязан сверху ... соображений надежности.
Василий Иванович , одно другому же не противоречит.
На данных объектах музыку заказывает тот, кто платит. Платили не мы.
В функциональном и техническом плане выбор правильный. В экономическом - не мне решать. По мне,- хотелось бы на своем "железе" работать, это желание еще из СССР.
>И да, самое главное ...
Да я не большой любитель ассемблеров. Но так исторически сложилось,- вечно не хватало оборотов у "цифромолок", вот и приходилось тащить ассемблер, как запасной вариант, потом оказывалось, что он основной.
С уважением, Владимир.
p.s. Василий Иванович, Вам не кажется, что мы сменили тему?
-
- авторитет
- Сообщения: 878
- Зарегистрирован: 21 авг 2009, 14:25
- Имя: Василий Иванович
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: Помогите дилетанту
Нет, не кажется. Я просто пытаюсь как бы намекнуть, что оно невооруженным глазом видно, что STL там не нужен. А если не нужен - не знаю, как другим, но лично мне неохота тратить время на помощь Вам в этом деле.