
- •Глава 1. Основные понятия интегрированной системы 14
- •Глава 2. Функции и структуры интегрированных систем 20
- •Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством 45
- •Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления 73
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли 217
- •Глава 6. Примеры применяемых в отрасли scada-систем 335
- •Глава 7. Пример проекта системы управления в trace mode 6 346
- •Список сокращений
- •Введение
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- •Глава 6. Примеры применяемых в отрасли scada-систем
- •Глава 1. Основные понятия интегрированной системы
- •1.1 Управление производством на основе интегрированных систем проектирования и управления
- •1.1.1 Определение интегрированной системы проектирования и управления
- •1.1.2 Принципы построения современных интегрированных систем
- •Удобство использования
- •Наличие и качество технической поддержки
- •Оценка стоимости инструментальных систем
- •Открытость систем
- •Технологии орс
- •Аппаратная реализация связи с устройствами ввода-вывода
- •Технологии ActiveX
- •2.1.2 Жесткое реальное время для Windows nt
- •2.1.3 Интеграция многоуровневых систем автоматизации
- •2.1.4 Сравнительный анализ и тестирование scada-систем
- •2.1.5 Выводы
- •2.2 Этапы создания и функциональные характеристики систем управления
- •2.2.1 Этапы создания системы диспетчерского контроля и управления
- •2.2.2 Функциональные характеристики scada-систем
- •2.2.3 Функциональные возможности
- •2.2.4 Программно-аппаратные платформы scada-систем
- •2.2.5 Средства сетевой поддержки
- •2.2.6 Встроенные командные языки
- •2.2.7 Поддерживаемые базы данных
- •2.2.8 Графические возможности
- •2.2.9 Тренды и архивы в scada-системах
- •2.2.10 Алармы и события в scada-системах
- •Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством
- •3.1 Стандарты управления предприятием: mrp, mrp II, erp, csrp
- •3.2 Семейство стандартов на системы качества
- •3.2.2 Тезисное выражение требований iso-9000
- •3.2.3 Общие положения
- •3.2.4 Проблемы внедрения и развития систем качества
- •Разработка процедур
- •3.3 Модули для автоматизации финансово-экономических процессов производства: mes, eam, hrm
- •Необходимость внедрения mes
- •Обзор функций t-factory mes – модуля для управления производством в реальном времени
- •Обзор функций t-factory eam – модуля для управления основными фондами, техническим обслуживанием и ремонтами в реальном времени
- •Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления
- •4.1 Нижний уровень интегрированных систем управления
- •4.1.1 Классификация устройств нижнего уровня
- •4.1.2 Концевой выключатель Концевой выключатель двухпозиционный квд-600
- •Автоматический концевой выключатель vb,vba
- •Концевой выключатель ку-701 у1
- •4.1.3 Интеллектуальный датчик
- •Коммуникационный протокол hart
- •Датчики давления серии «Метран-100»
- •4.1.4 Устройства hart-коммуникации
- •Hart-коммуникатор «Метран-650»
- •Hart-модем «Метран-681»
- •Конфигурационная программа h-master
- •Многопараметрический датчик 3095mv
- •4.1.5 Бесконтактный датчик
- •Датчики измерения уровня
- •Оптические датчики
- •Датчик контроля скорости
- •4.1.6 Исполнительные устройства Привода постоянного тока
- •Клапаны электромагнитные для автоматики подогревателей
- •Реле защиты трансформаторов
- •4.2 Основные технические характеристики контроллеров и программно-технических комплексов
- •4.2.1 Характеристика процессора
- •4.2.2 Характеристика каналов ввода-вывода контроллеров
- •4.2.3 Коммуникационные возможности контроллеров
- •4.2.4 Эксплуатационные характеристики
- •4.2.5 Программное обеспечение
- •4.3 Стандартные языки программирования контроллеров
- •4.3.1 Общие сведения по языкам программирования контроллеров
- •4.3.2 Инструментальные системы программирования контроллеров
- •4.3.3 Этапы программирования плк в среде Unity Pro xl V.4.0
- •4.3.4 Примеры программы на языках fbd, ld, sfc, st, il Описание условия задачи
- •Создание программы на языке fbd
- •4.4 Контроллер modicon m340
- •4.4.1 Общие сведения
- •4.4.2 Процессорные модули
- •Структура памяти
- •4.4.3 Модули питания
- •4.4.4 Модули дискретного ввода/вывода
- •4.4.5 Модули аналогового ввода/вывода
- •4.4.6 Счетные модули
- •4.4.7 Модули управления перемещением
- •4.4.8 Сеть Ethernet Modbus/tcp
- •4.4.9 Сетевые модули Ethernet Modbus/tcp
- •4.5 Частотный преобразователь altivar 31h
- •4.6 Протоколы, сети и шины
- •Описание
- •4.7 Общее описание операционных систем реального времени
- •4.7.1 Основные понятия
- •4.7.2 Требования, предъявляемые к операционным системам реального времени при проектировании
- •4.7.3 Особенности операционных систем реального времени Процессы, потоки, задачи
- •Планирование, приоритеты
- •4.7.4 Прерывания
- •4.7.5 Часы и таймеры
- •4.7.6 Стандарты осрв
- •Стандарты безопасности
- •4.7.7 Настраиваемость операционных систем
- •4.8 Характеристики наиболее распространенных операционных систем реального времени
- •4.8.6 Расширения реального времени для Windows nt
- •4.9 Базы данных реального времени
- •4.9.1 Введение
- •4.9.2 Поддержка целостности в классических субд
- •Пессимистический подход
- •Оптимистический подход
- •Сравнение подходов
- •4.9.3 Протоколы управления транзакциями в субд реального времени
- •Пессимистический подход
- •Оптимистический подход
- •Сравнение подходов
- •4.9.4 Системы с устаревшими данными
- •4.9.5 Корректность транзакций
- •4.9.6 Выбор периода для сенсорных транзакций
- •4.9.7 Выбор версии непрерывного объекта
- •4.9.8 Как бороться с перегрузкой системы из-за обилия сенсорных транзакций?
- •4.9.9 Когда обновлять выводимые объекты?
- •4.9.10 Как понизить количество анормальных завершений?
- •4.9.11 Диспетчеризация транзакций
- •4.9.12 Оптимизация под конкретную систему
- •Классификация пользовательских транзакций
- •Субд реального времени в оперативной памяти
- •4.9.13 Использование сложных моделей транзакций
- •Активные базы данных
- •Активные базы данных реального времени
- •4.9.14 Атрибуты транзакции
- •4.9.15 Приоритет «непосредственной» транзакции
- •4.9.16 Приоритет «отложенной» транзакции
- •4.9.17 Заключение
- •4.10 Серверы Введение
- •4.10.1 Виды серверов
- •Серверы приложений
- •Серверы баз данных
- •Файл-серверы
- •«Беспроводной» сервер
- •Прокси-серверы
- •Брандмауэры
- •Почтовые серверы
- •Серверы dhcp
- •Серверы ftp
- •Принт-серверы
- •Серверы удаленного доступа
- •Факс-серверы
- •Серверные приставки
- •4.10.2 Особенности современных серверов
- •Основные требования
- •Масштабируемость
- •Готовность
- •Надежность
- •4.10.3 Особенности архитектуры
- •Оценка производительности
- •4.10.4 Серверы ведущих мировых производителей
- •Серверы ibm
- •4.10.5 Серверы российского производства
- •4.10.6 Проекты с участием серверов Структуры власти
- •Энергетика
- •Энергоснабжение
- •Образование
- •Промышленность
- •Деловые услуги
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- •5.1 Функции интегрированных систем проектирования и управления
- •5.1.1 Trace mode 6: Интегрированная среда разработки
- •Scada-система
- •Softlogic: программирование контроллеров
- •Eam: средства разработки eam-приложений
- •Mes: средства разработки mes-приложений
- •Hrm: средства разработки hrm-приложений
- •5.1.3 Исполнительные модули ис trace mode® 6 Монитор реального времени
- •Горячее резервирование
- •Сервером документирования
- •Сервер архива Регистраторы: серверы субд реального времени siad/sql 6
- •Серверы документирования trace mode и t-Factory
- •Графическая консоль NetLink Light
- •Micro trace mode 6: исполнительный модуль для промышленных контроллеров
- •Для mes/eam/hrm-приложений
- •5.2 Математическое обеспечение в программном комплексе Trace Mode 6
- •5.2.1 Принцип работы монитора. Канал trace mode 6
- •5.2.2 Обеспечение работы распределенных асу
- •5.2.3 Резервирование
- •5.2.4 Автопостроение
- •5.2.5 Математическая обработка данных
- •5.2.6 Архивирование каналов узла
- •5.2.7 Архивирование каналов проекта
- •5.2.8 Отчет тревог и генерация сообщений
- •5.2.9 Файл восстановления
- •5.2.10 Графический интерфейс оператора
- •5.2.11 Генерация документов (отчетов)
- •5.2.12 Защита проекта, его конвертирование из предыдущих версий trace mode
- •5.3.1 Технология разработки проекта в ис
- •5.3.2 Пример создания проекта
- •Создание нового проекта в ис
- •Создание структуры проекта в навигаторе
- •Конфигурирование и разработка структурных составляющих
- •Конфигурирование информационных потоков
- •Выбор аппаратных средств асу
- •Создание и конфигурирование узлов в слое «Система»
- •Распределение каналов по узлам
- •Автопостроение каналов
- •Сохранение проекта в файл
- •Экспорт узлов
- •Запуск проекта
- •5.4 Организационное обеспечение: Классификация объектов структуры проекта в Trace Mode 6
- •5.4.1 Классификация компонентов
- •Шаблоны
- •Источники/Приемники
- •Наборы ресурсов и графические объекты
- •Последовательные порты
- •Словари сообщений
- •5.4.2 Классификация слоев
- •5.4.3 Классификация узлов
- •5.4.4 Назначение групп источников (приемников)
- •Группа «pc-based контроллеры»
- •Группа «Распределенные усо»
- •Группа «Платы ввода-вывода»
- •Платы ввода-вывода
- •Группа «Терминалы»
- •Группа «plc»
- •Группа «Диагностика и сервис»
- •Группа «Генераторы»
- •Группа «Модели»
- •5.4.5 Назначение группы «com-порты»
- •5.4.6 Назначение группы «Словари сообщений»
- •5.4.7 Назначение групп слоя «Библиотеки компонентов»
- •5.4.8 Назначение групп клемм
- •5.4.9 Назначение прочих групп
- •Группы ресурсов
- •Группы шаблонов
- •Группы каналов
- •Дополнительные группы структурирования
- •5.5 Структура проекта Trace Mode 6
- •5.5.1 Редактирование структуры проекта
- •Меню и главная панель инструментов навигатора проекта
- •Управление внешним видом навигатора проекта
- •Создание объектов структуры
- •Имена и идентификаторы объектов структуры
- •Изменение класса канала после его создания
- •Выделение объекта структуры
- •Удаление объекта структуры
- •Копирование и вставка объекта структуры
- •Перепривязка каналов и аргументов при копировании, вставке и перемещении объекта базы каналов
- •Взаимодействие с технологической бд
- •Примеры синхронизации с бд
- •Отображение свойств объектов структуры
- •5.5.2 Окно свойств объекта структуры проекта
- •Вкладка «Информация»
- •Вкладка «Флаги»
- •Вкладка «Аргументы»
- •Вкладка «Атрибуты»
- •5.6 Описание редакторов trace mode 6
- •5.6.1 Редакторы объектов структуры проекта
- •Редакторы каналов
- •Редактор словарей сообщений
- •Редактор клемм
- •5.6.2 Редакторы источников (приемников)
- •Редактор системных переменных trace mode
- •Редактор переменной opc
- •Редактор переменной opc hda
- •Редактор переменной dde
- •5.6.3 Редактор группы шаблонов экранов
- •Базовый редактор группы компонентов
- •Групповое редактирование строковых атрибутов с инкрементированием
- •Групповое редактирование числовых атрибутов с инкрементированием
- •Редактор группы «opc-сервер»
- •Редактор группы «opc hda сервер»
- •Редактор группы каналов слоев «Технология» и «Топология»
- •5.6.4 Вкладки редактора узла
- •Задание параметров узла:
- •Вкладка «Основные» редактора узла
- •Вкладка «Архивы» редактора узла
- •Вкладка «Отчет тревог/Дамп/Параметры» редактора узла
- •Вкладка «Таймауты» редактора узла
- •Вкладка «Дополнительно» редактора узла
- •Глава 6. Примеры применяемых в отрасли scada-систем
- •6.1 Vijeo look – система класса «человеко-машинный интерфейс» (hmi)
- •6.1.1 Представление hmi
- •6.1.2 Совместимость приложений Vijeo Look
- •6.1.3 Установка продукта Vijeo Look Установка Vijeo Look и его различных компонентов
- •6.1.4 Основные инструменты Vijeo Look
- •6.1.5 Панели инструментов в Vijeo Look
- •6.1.6 Описание основных функций меню «Вставка»
- •6.1.8 Настройки ofs Конфигуратора
- •Глава 7. Пример проекта системы управления в trace mode 6
- •7.1 Проект «автоматизированный участок получения пара с применением электропарогенератора»
- •7.1.1 Описание технологического процесса
- •7.1.2 Создание проекта
- •7.1.2.1 Описание параметров
- •7.1.2.2 Описание графических экранов и программ
- •7.1.2.3 Заполнение базы данных
- •7.1.2.4 Составление схемы переходов
- •Список литературы
- •450062, Республика Башкортостан, г. Уфа, ул. Космонавтов, 1
- •453, Республика Башкортостан, г. Стерлитамак,
4.7.4 Прерывания
При описании управления прерываниями обычно различают две процедуры, а именно:
программа обработки прерывания (ISR – interrupt servicing routine) – программа низкого уровня в ядре с ограниченными системными вызовами;
поток обработки прерывания (IST – interrupt servicing thread) – поток уровня приложения, который управляет прерыванием, с доступом ко всем системным вызовам.
Обычно ISR реализуются производителем аппаратуры, а драйверы устройств выполняют управление прерываниями с помощью IST. Потоки обработки прерываний действуют как любые другие потоки и используют ту же самую систему приоритетов. Это означает, что проектировщик системы может придать IST более низкий приоритет, чем приоритет потока приложения.
4.7.5 Часы и таймеры
В ОСРВ используются различные службы времени. Операционная система отслеживает текущее время, в определенное время запускает задачи и потоки и приостанавливает их на определенные интервалы. В службах времени ОСРВ используются часы реального времени. Обычно используются высокоточные аппаратные часы. Для отсчета временных интервалов на основе часов реального времени создаются таймеры.
Для каждого процесса и потока определяются часы процессорного времени. На базе этих часов создаются таймеры, которые измеряют перерасход времени процессом или потоком, позволяя динамически выявлять программные ошибки или ошибки вычисления максимально возможного времени выполнения. В высоконадежных, критичных ко времени системах важно выявление ситуаций, при которых задача превышает максимально возможное время своего выполнения, т.к. при этом работа системы может выйти за рамки допустимого времени отклика. Часы времени выполнения позволяют выявить возникновение перерасхода времени и активизировать соответствующие действия по обработке ошибок.
Большинство ОСРВ оперируют относительным временем. Что-то происходит «до» и «после» некоторого другого события. В системе, полностью управляемой событиями, необходим часовой механизм (ticker), т.к. там нет квантования времени (time slicing). Однако, если нужны временные метки для некоторых событий или необходим системный вызов типа “ждать одну секунду”, то нужен тактовый генератор и/или таймер.
Синхронизация в ОСРВ осуществляется с помощью механизма блокирования (или ожидания) до наступления некоторого события. Абсолютное время не используется.
Реализации в ОСРВ других концептуальных абстракций подобны их реализациям в традиционных ОС.
4.7.6 Стандарты осрв
Большие различия в спецификациях ОСРВ и огромное количество существующих микроконтроллеров выдвигают на передний план проблему стандартизации в области систем реального времени.
Наиболее ранним и распространенным стандартом ОСРВ является стандарт POSIX (IEEE Portable Operating System Interface for Computer Environments, IEEE 1003.1). Первоначальный вариант стандарта POSIX появился в 1990 г. и был предназначен для UNIX-систем, первые версии которых появились в 70-х годах прошлого века. Спецификации POSIX определяют стандартный механизм взаимодействия прикладной программы и операционной системы и в настоящее время включают набор из более чем 30 стандартов. Для ОСРВ наиболее важны семь из них (1003.1a, 1003.1b, 1003.1c, 1003.1d, 1003.1j, 1003.21, 1003.2h), но широкую поддержку в коммерческих ОС получили только три первых.
Несмотря на явно устаревшие положения стандарта POSIX и большую востребованность обновлений стандартизации для ОСРВ, заметного продвижения в этом направлении не наблюдается.
Некоторые наиболее успешные компании в области систем реального времени объявляют о своем решении принять в качестве стандарта спецификации одной из своих продвинутых ОСРВ. Так поступила компания TRON (the RTOS Nucleus [99]), которая в 1987 г. выпустила в свет первые ITRON спецификации – ITRON1 [97]. Далее в 1989 г. она разработала и выпустила спецификации µITRON для 8- и 16- битовых микроконтроллеров, а также спецификации ITRON2 для 32-битовых процессоров. Стандарт на основе ОСРВ ITRON является очень распространенным в Японии.
Военная и аэрокосмическая отрасли предъявляют жесткие требования к вычислительным средствам, влияющим на степень безопасности целевой системы. В настоящее время имеются следующие стандарты для ОСРВ в авиации: стандарт DO-178B и стандарт ARINC-653. Поскольку эти стандарты разработаны в США, стоит отметить еще европейский стандарт ED-12B, который является аналогом DO-178B.
Распространенным также является стандарт OSEK/VDX [109], который первоначально развивался для систем автомобильной индустрии.
POSIX
Стандарт POSIX был создан как стандартный интерфейс сервисов операционных систем. Этот стандарт дает возможность создавать переносимые приложения. Впоследствии этот стандарт был расширен особенностями режима реального времени [107].
Спецификации POSIX задают стандартный механизм взаимодействия приложения и ОС. Необходимо отметить, что стандарт POSIX тесно связан с ОС Unix; тем не менее, разработчики многих ОСРВ стараются выдержать соответствие этому стандарту. Соответствие стандарту POSIX для ОС и аппаратной платформы должно быть сертифицировано с помощью прогона на них тестовых наборов [108]. Однако, если ОС не является Unix-подобной, выдержать это требование становится непростой задачей. Тестовые наборы существуют только для POSIX 1003.1a. Поскольку структура POSIX является совокупностью необязательных возможностей, поставщики ОС могут реализовать только часть стандартного интерфейса и при этом говорить о POSIX-комплиантности своей системы.
Несмотря на то, что стандарт POSIX вырос из Unix’а, он затрагивает основополагающие абстракции операционных систем, а расширения реального времени применимы ко всем ОСРВ.
К настоящему времени стандарт POSIX рассматривается как семейство родственных стандартов: IEEE Std 1003.n (где n – это номер).
Стандарт 1003.1a (OS Definition) содержит базовые интерфейсы ОС – поддержку единственного процесса, поддержку многих процессов, управление заданиями, сигналами, группами пользователей, файловой системой, файловыми атрибутами, управление файловыми устройствами, блокировками файлов, устройствами ввода/вывода, устройствами специального назначения, системными базами данных, каналами, очередями FIFO, а также поддержку языка C.
Стандарт 1003.1b (Realtime Extensions) содержит расширения реального времени – сигналы реального времени, планирование выполнения (с учетом приоритетов, циклическое планирование), таймеры, синхронный и асинхронный ввод/вывод, ввод/вывод с приоритетами, синхронизация файлов, блокировка памяти, разделяемая память, передача сообщений, семафоры. Чтобы стать POSIX-комплиантной, ОС должна реализовать не менее 32 уровней приоритетов. POSIX определяет три политики планирования обработки процессов:
SCHED_FIFO – процессы обрабатываются в режиме FIFO и выполняются до завершения,
SCHED_RR – round robin – каждому процессу выделяется квант времени,
SCHED_OTHER – произвольная реализационно-зависимая политика, которая не переносима на другие платформы.
Стандарт 1003.1c (Threads) касается функций поддержки многопоточной обработки внутри процесса – управление потоками, планирование с учетом приоритетов, мьютексы (специальные синхронизирующие объекты в межпроцессном взаимодействии, подающие сигнал, когда они не захвачены каким-либо потоком), приоритетное наследование в мьютексах, переменные состояния (condition variables).
Стандарт 1003.1d включает поддержку дополнительных расширений реального времени – семантика порождения новых процессов (spawn), спорадическое серверное планирование, мониторинг процессов и потоков времени выполнения, таймауты функций блокировки, управление устройствами и прерываниями.
Стандарт 1003.21 касается распределенных систем реального времени и включает функции поддержки распределенного взаимодействия, организации буферизации данных, посылки управляющих блоков, синхронных и асинхронных операций, ограниченной блокировки, приоритетов сообщений, меток сообщений и реализаций протоколов.
Стандарт 1003.2h касается сервисов, отвечающих за работоспособность системы.
DO-178B
Стандарт DO-178B создан Радиотехнической комиссией по аэронавтике (RTCA, Radio Technical Commission for Aeronautics) для разработки ПО бортовых авиационных систем [94]. Первая его версия была принята в 1982 г., вторая (DO-178A) – в 1985 г., текущая DO-178B – в 1992 г. Готовится принятие новой версии, DO-178C. Стандартом предусмотрено пять уровней серьезности отказа, и для каждого из них определен набор требований к программному обеспечению, которые должны гарантировать работоспособность всей системы в целом при возникновении отказов данного уровня серьезности.
Данный стандарт определяет следующие уровни сертификации:
А (катастрофический);
В (опасный);
С (существенный);
D (несущественный);
Е (не влияющий).
До тех пор пока все жесткие требования этого стандарта не будут выполнены, вычислительные системы, влияющие на безопасность, никогда не поднимутся в воздух.
ARINC-653
Стандарт ARINC-653 (Avionics Application Software Standard Interface) разработан компанией ARINC в 1997 г. Этот стандарт определяет универсальный программный интерфейс APEX (Application/Executive) между ОС авиационного компьютера и прикладным ПО. Требования к интерфейсу между прикладным ПО и сервисами операционной системы определяются таким образом, чтобы разрешить прикладному ПО контролировать диспетчеризацию, связь и состояние внутренних обрабатываемых элементов. В 2003 г. принята новая редакция этого стандарта. ARINC-653 в качестве одного из основных требований для ОСРВ в авиации вводит архитектуру изолированных (partitioning) виртуальных машин.
OSEK
Стандарт OSEK/VDX является комбинацией стандартов, которые изначально разрабатывались в двух отдельных консорциумах, впоследствии слившихся. OSEK берет свое название от немецкого акронима консорциума, в состав которого входили ведущие немецкие производители автомобилей – BMW, Bosch, Daimler Benz (теперь Daimler Chrysler), Opel, Siemens и Volkswagen, а также университет в Карлсруэ (Германия). Проект VDX (Vehicle Distributed eXecutive) развивался совместными усилиями французских компаний PSA и Renault. Команды OSEK и VDX слились в 1994 г.
Первоначально проект OSEK/VDX предназначался для разработки стандарта открытой архитектуры ОС и стандарта API для систем, применяющихся в автомобильной промышленности. Однако разработанный стандарт получился более абстрактным и не ограничивается использованием только в автомобильной индустрии.
Стандарт OSEK/VDX состоит из трех частей – стандарт для операционной системы (OS), коммуникационный стандарт (COM) и стандарт для сетевого менеджера (NM). В дополнение к этим стандартам определяется некий реализационный язык (OIL). Первым компонентом стандарта OSEK является стандарт для ОС, поэтому часто стандарт OSEK ошибочно воспринимается как стандарт ОСРВ. Хотя ОС и есть большая порция данного стандарта, мощность его состоит в интеграции всех его компонент.