Операторы перехода и вызова функции Техно IL
Операторы перехода выполняются, если строка с указанной меткой находится в том же программном компоненте. CALи CALLявляются равнозначными операторами. В круглых скобках через запятую указываются значения, передаваемые в функцию. Между именем функции и круглыми скобками пробел необязателен. Число передаваемых в функцию значений должно быть равно числу аргументов, заданных для этой функции. При выполнении оператора RETи его разновидностей функция возвращает значение result. Определены следующие модификации данных операторов: JMP, CAL, RET– соответственно оператор безусловного перехода, безусловного вызова и безусловного выхода. JMPX, CALX, RETX– соответственно оператор условного перехода, условного вызова и условного выхода. Инструкция, содержащая любой их этих операторов, выполняется только тогда, когда result=TRUE, в противном случае игнорируется. JMPC, CALC, RETC– соответственно оператор условного перехода, условного вызова и условного выхода. Эти операторы следуют непосредственно за оператором сравнения. Инструкция, содержащая любой их этих операторов, выполняется только тогда, когда результат предыдущей операции сравнения истинен, в противном случае игнорируется.
Тема 5. Базы данных и системы управления базами данных
Модели баз данных
Выполнение прикладных программ предусматривает преобразование и логическую обработку данных, их хранение, защиту и архивацию в базе данных (БД), а также взаимодействие прикладной программы с файловой системой операционной системы компьютера. Любое вновь созданное приложение выполняется в архитектуре клиент-сервер [5.20-5.27]. Системой баз данных называют компьютерную систему хранения однотипных записей. Известны однопользовательские БД (single-user system) и многопользовательские БД (multi-user system). Все данные в БД являются интегрированными (представляют совокупность файлов данных) и разделяемыми (с возможностью использования одних и тех же данных разными пользователями). Обработка всех запросов пользователей к БД осуществляется программным обеспечением, которое принято называть диспетчер базы данных (database manager), сервер базы данных (database server) или, как принято в настоящее время, система управления базой данных — СУБД (DataBase Management System — DBMS). Под СУБД понимают совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями. Большинство СУБД имеют встроенный язык запросов (SQL). Основные достоинства БД: возможность совместного доступа к данным разных пользователей, сокращение избыточности данных, возможность поддержки транзакций, обеспечение целостности данных, организация защиты данных, возможность стандартизации данных и др. Трехуровневая система организации БД по стандарту ANSI (American National Standards Institute — Американский национальный институт стандартов) приведена на рис. 5.2. Архитектура системы БД представляет три уровня: внутренний или физический, концептуальный или логический и внешний или пользовательский). Внешний (пользовательский) уровень
Внутренний уровень — это внутреннее представление всей БД в виде внутренних (хранимых) записей. Данные размещаются в файлах или на внешних носителях. Внутреннее представление предполагает наличие неограниченного адресного пространства. Концептуальный (логический) уровень представлен реляционными таблицами и операторами выборки строк и столбцов таблиц. Таким образом, это уровень реляционной модели данных. Внешний (пользовательский) уровень — это индивидуальный уровень пользователей. Доступ к данным БД происходит в следующей последовательности: пользователь на языке SQL выдает запрос на доступ к БД; СУБД перехватывает и анализирует запрос; СУБД просматривает внешнюю и концептуальную схемы, а также структуру хранения данных и выполняет необходимые операции в хранимой БД с преобразованием типов данных. Если доступ к данным сервера осуществляется на уровне файлов с разделением доступа средствами ОС, то такие приложения построены по типу «файл-сервер». Недостатками таких приложений является высокая нагрузка на клиентскую часть, трудность разделения доступа при работе нескольких пользователей, высокая нагрузка на сеть при передаче файлов от одного компьютера к другому. К файловым структурам хранения информации в базе данных относятся файлы прямого доступа, файлы последовательного доступа, индексные файлы, инвертированные списки и взаимосвязанные файлы. К файлам прямого доступа относят файлы с постоянной длиной записи, расположенные на устройствах прямого доступа (УПД). Индексные файлы состоят из индексной области (индексного файла) и основной области (основного файла). Инвертированные списки представляют собой трехуровневую структуру, начальный файл (или часть файла) которой содержит значение вторичного уровня (ключа). На втором уровне — блоки с номерами записей одинаковых значений вторичного ключа и на третьем уровне — основной файл. Управление файловой структурой относится к ОС и в сравнении с СУБД имеет следующие недостатки: система управления файлами не имеет сведений о внутрен ней структуре записей; система защиты и поддержки целостности записей недостаточна или отсутствует; восстановление данных и параллельный доступ к данным затруднен или отсутствует; отдельные файлы не являются «интегрированными» или «разделяемыми». В распределенных системах управления база данных используется многими пользователями, поэтому имеет место распределенная обработка данных. Если база данных распределена по нескольким компьютерам и используется многими пользователями, то такая система называется системой распределенных баз данных. Достоинства распределенной обработки данных [5.24]: • возможность параллельной обработки данных и, как следствие, увеличение скорости обработки. • серверный ПК может быть изготовлен более мощным по производительности. • клиентский ПК может быть максимально приближен к потребностям конкретного пользователя для увеличения сроков его готовности. В распределенной клиент-серверной архитектуре доступа к данным функции между клиентским и серверным приложениями распределяются нижеследующим образом [5.24]. Функции ввода и отображения данных (Presentation Logic) и прикладные функции (Business Logic) находятся на стороне клиента, а функции обработки данных внутри приложения (Database Logic). Также БД с ядром СУБД находятся на стороне сервера. Двухуровневая модель удаленного доступа к данным RDA (Remote Data Access) представлена на рис. 5.3. К недостаткам модели RDA относятся большая загрузка клиентского приложения и сети обмена данными. Современные СУБД поддерживаю! трехуровневую модель «клиент-сервер», представленную на рис. 5.4. В основе модели лежит механизм процедур— специальных программных модулей, хранящихся в БД и управляемых непосредственно СУБД. На стороне клиента сохраняются только функции ввода и отображения данных. Такой разгруженный клиент называется «тонким клиентом». Промежуточный уровень между клиентом и сервером занимает сервер приложений с прикладными функциями. При этом сервер БД выполняет исключительно функции СУБД — создание и ведение БД, хранение данных, создание резервных копий, управление транзакциями. Хранимые процедуры (Stored Procedure) в сервере БД являются подпрограммами, которые выполняются на сервере. Они пишутся на специальных встроенных языках программирования и включают любые операторы языка SQL (Structured Query Language — Структурированный Язык Запросов). В коммерческих СУБД используются собственные языки программирования (PL/SQL в Oracle, Transact SQL в MS SQL Server). В современных БД организация взаимодействия клиент-сервер осуществляется с использованием мультипроцессорных серверных платформ. При этом достигается возможность запуска нескольких серверных процессов на различных процессорах многопроцессорного сервера. Многопотоковая мультисерверная архитектура представлена на рис. 5.5 [5.22].
Одним из важнейших показателей надежности БД является степень защиты информации. Так, в БД MS SQL Server 6.5 поддерживаются несколько режимов проверки прав пользователя, — стандартный (Standard), интегрированный (Integrated Security) и смешанный (Mixed). Стандартный режим предполагает наличие у пользователя учетной записи пользователя домена NT Server и MS SQL Server (имя пользователя и пароль). Интегрированный режим предполагает наличие учетной записи в ОС как пользователя только домена (задается имя пользователя и пароль). БД MS SQL Server 7.0 имеет два режима: интегрированный (Windows NT Authentication Mode) и смешанный (Mixed Mode). При этом последовательно проводятся проверки имени пользователя и пароля. Для защиты закрытых сетей (особенно intranet) от несанкционированного доступа со стороны пользователей Internet используются системы, которые называются брандмауэр (Firewall). Все сообщения, которые входят или выходят из сети Intranet, проходят через брандмауэр. Основные типы брандмауэров: • Пакетный фильтр. Просматривается каждый пакет на соответствие его определенных пользователем правил. • Шлюз приложения. Применяется для серверов FTP и Telnet. • Шлюз на уровне цепи. Проверяется безопасность на уровне TCP или UDP соединения. После соединения пакеты передаются без проверки. • Прокси-сервер. Программа, установленная на защитном экране, которая действует от имени внутреннего пользователя корпоративной сети. Прокси-сервер, называемый агентом, устанавливает связь с внешним пользователем, аутентифицирует его и разрешает (или запрещает) использовать ресурсы данной сети.
Клиент-серверная архитектура доступа к данным Выполнение прикладных программ предусматривает преобразование и логическую обработку данных, их хранение, защиту и архивацию в базе данных (БД), а также взаимодействие прикладной программы с файловой системой операционной системы (ОС) компьютера. Любое вновь созданное приложение выполняется в архитектуре клиент-сервер. Серверная часть приложения обрабатывает данные на уровне файлов и БД. Сервер представляет по сути СУБД, которая поддерживает все функции СУБД: определение данных, манипулирование и защиту данных, поддержание их целостности и пр. Клиентская часть приложения служит для обработки данных, полученных от сервера данных. Клиент — это различные приложения как встроенные, так и написанные пользователями. Встроенные приложения — это приложения, поставляемые поставщиками СУБД (инструментальные средства) или другими поставщиками ПО. К ним, например, относятся генератор отчетов, электронные таблицы, статистические пакеты и др. К числу специальных «служебных» приложений (клиентов) относятся утилиты. Утилиты — это специальные программы администратора БД, в том числе инструменты загрузки, выгрузки и реорганизации БД, статистические инструменты показателей качества БД и др. Наибольшее распространение получила архитектура клиент-сервер. БД служит для хранения данных, а система управления базой данных (СУБД) — для доступа к данным, их хранению, защите и резервному копированию. Файловые операции и обмен с БД реализуются на сервере, а клиентские приложения освобождаются от этих функций. За клиентским приложением сохраняются функции запроса, получения и обработки данных от СУБД [5.26, 5.28]. Основные функции СУБД: • управление данными во внешней памяти (на жестких дисках); • управление буферной памятью ОЗУ для повышения скорости обмена данными; • управление транзакциями для поддержания логической целостности БД; при выполнении операций над данными (выполнении транзакции) СУБД фиксирует (commit) все изменения в БД. В противном случае осуществляется откат (rollback) транзакции и изменения в БД не производятся. • протоколирование; в случае аппаратного или программного сбоя СУБД должна восстановить все данные в БД, находящиеся в ней до сбоя, поэтому все изменения в БД протоколируются в журнале до введения их в БД. • Поддержка языков баз данных. В основном используются два языка: язык определения схем данных (Schema Definition Language, SDL), определяющий логическую структуру БД, и язык манипулирования данными (Data Manipulation Language, DML), содержащий набор операторов манипулирования данными. При размещении клиентского приложения и сервера на разных компьютерах в составе сети по сети передаются только запросы клиента и получение данных от СУБД. Тем самым снижается нагрузка на сеть. Обобщенная структура СУБД приведена на рис. 5.6 [ 5.24] СУБД делятся на иерархические, сетевые, реляционные и объектно-ориентированные. Среди СУБД на рынке промышленной автоматизации получили применение Oracle, MS SQL Server, Industrial SQL Server, Industrial Application Server, Sybase, DB2, iHistorian и др. Наибольшее распространение имеют реляционные базы данных (Oracle 8i корпорации Oracle, DB2 фирмы IBM, Ingress II корпорации Computer Associates International, Inc., Informix Dynamic Server корпорации Informix Software, Inc., MS SQL Server корпорации Microsoft, Sybase Adaptive Server корпорации Sybase, Inc., Industrial SQL Server, Industrial Application Server и др.). Реляционная модель данных представляет информацию в виде совокупности взаимосвязанных таблиц, которые называются отношениями или реляциями [5.18-5.21]. К основным понятиям реляционной модели данных относят: • Тип данных (целочисленные, вещественные, строковые, специальные типы данных и типы двоичных объектов). • Домен: множество неделимых значений одного и того же типа (по сути — это наименование столбцов таблицы). • Атрибуты: именованные столбцы отношения (таблицы). Список имен атрибутов с указанием имен доменов называется схемой отношения, а число атрибутов — степенью отношения. Множество именованных схем отношений называется схемой БД. • Кортеж: имя атрибута и его значение. Степень кортежа (число элементов в кортеже) совпадает со степенью соответствующей схемы отношения. • Ключ отношения: атрибут, однозначно определяющий каждый кортеж отношения и обеспечивающий уникальность строк таблицы. Ключ, содержащий один атрибут, называется простым ключом. Ключ, состоящий из нескольких атрибутов, называется сложным или составным ключом. Другим важным понятием реляционной модели является взаимосвязанность таблиц. Эта связь устанавливается по общему атрибуту, который является внешним ключом. Таким образом, внешний ключ — это атрибут (или их множество) одного отношения, являющийся ключом другого отношения. Ключи реализуются в виде объектов, называемых индексами. Индекс дает информацию о точном физическом расположении данных в таблице. При установлении связи между таблицами одна из них является главной (master), содержащей все необходимые записи, а другая — подчиненной (detail).Таким образом, реляционная база данных является совокупностью отношений (таблиц), содержащих всю информацию БД. Свойства таблиц реляционной БД: • каждая таблица состоит из однотипных строк и имеет уникальное имя; • строки таблицы имеют фиксированное число столбцов и значений; • столбцы таблицы имеют уникальные имена и в каждом столбце размещаются однородные значения.
Структурированный язык запросов (SQL). Управление транзакциями. Запрос данных от клиентского приложения к серверу осуществляется на языке SQL (Structured Query Language — язык структурированных запросов). Язык SQL принят ANSI в качестве стандарта в 1986 г. и расширен в 1992 г. В настоящее время — это язык ANSI SQL-92 или SQL/92. Язык SQL является интегрированным языком реляционной БД и определяет как схему реляционной БД, так и манипулирование данными. Специальные операторы языка SQL определяют представления БД [5.22-5.24, 5.28]. Типы команд языка SQL: • Команды языка DDL (Data Definition Language — язык определения данных). Используется для изменения структуры БД (создания и удаления таблиц). • Команды языка DML (Data Manipulation I anguage — язык манипулирования данными). Может загружать, модифицировать и удалять данные. • Команды языка DCL (Data Control Language — язык управления данными). Обеспечивает управление доступом к БД. • Команды языка DQL (Data Query Language — язык запросов к данным). Формирует запросы к БД. • Команды администрирования БД. • Команды управления транзакциями. Типы данных языка SQL: символьные строки переменной длины, целые и точные числа, типы представления даты, времени и временного интервала. К числу операторов языка SQL относятся следующие операторы: • SELECT — оператор выборки данных; • INSERT — добавление в таблицу новых данных; • UPDATE — обновление (изменение) данных таблицы; • DELETE — удаление данных из таблицы; • REFERENCES — ссылка на столбцы таблицы в описаниях требований поддержки целостности данных; • USAGE — предоставление права использования доменов; • GRANT — предоставление привилегий доступа к данным; • REVOKE — отмена привилегий доступа к данным. При обработке SQL-запросов СУБД обращается к системному каталогу БД, который представляет собой совокупность специальных таблиц. Все системные таблицы объединены системным идентификатором пользователя. В стандарте SQL определены следующие системные таблицы: USERS (одна строка для каждого идентификатора пользователя с паролем), SCHEMA (одна строка для каждой информационной схемы), DOMAINS (одна строка для каждого домена), TABLES (одна строка для каждой таблицы с указанием имени, числа столбцов, размера данных столбцов). Взаимодействие клиентского приложения и сервера определяется также механизмом транзакций [5.21-5.24]. Транзакцией называется логическая единица работы, состоящая из одного или более SQL-операторов и являющаяся неделимой. По стандарту ISO модель транзакций построена на операторах COMMIT и ROLLBACK. Транзакция запускается SQL- оператором, инициируемым пользователем, или программой. Завершается транзакция вводом оператора COMMIT, что свидетельствует об успешном завершении транзакции (внесение изменений в БД). Ввод оператора ROLLBACK означает отказ от изменений в БД. Если SQL-оператор входит в текст программы, то транзакция будет успешно завершена и без оператора COMMIT. При типовых часто повторяющихся запросах к серверу, когда со стороны сервера включается механизм распознавания запроса и проверки его правильности, увеличивается время на обмен данными. В современных серверах данных используется механизм предопределенных выборок (VIEW) и хранимых процедур сервера. И в этом случае работа клиентских приложений не зависит от типа СУБД. Подсистема обработки транзакций типичной СУБД приведена на рис. 5.7. Менеджер транзакций координирует работу транзакций. Планировщик отвечает за управление параллельности. Менеджер восстановления возвращает БД в исходное состояние в случае отказа, а менеджер буферов отвечает за передачу данных из ОЗУ в дисковую память. Для сокращения времени обмена данными между клиентскими приложениями и сервером используется динамически загружаемые библиотеки (DLL — Dynamic Link Library). Клиентское приложение формирует запрос к соответствующей функции DLL на языке SQL. После установления связи с сервером DLL передает запрос, получает ответ и передает его клиентскому приложению. Поскольку для определенного типа сервера существует своя DLL со своими функциями, клиентские приложения зависят от типа СУБД. Для устранения этого недостатка фирмой Microsoft разработан стандарт ODBC (Open Database Connectivity — открытый доступ к базам данным), использующий единый универсальный интерфейс доступа к различным БД (рис. 5.8). Для этого требуется лишь соответствующий ODBC-драйвер и источник данных. В настоящее время ODBC-драйверы имеются для более чем 50 различных типов БД. В архитектуру стандарта ODBC входят: • приложение, которое выполняет обработку данных, вызов функций библиотеки ODBC для отправки SQL-операторов в СУБД и выборки полученной СУБД информации; • менеджер драйверов, выполняющий загрузку драйверов (представляет собой библиотеку DLL); • драйверы и агенты баз данных, обрабатывающие вызовы функций ODBC и направляющие SQL-запросы к БД, а также возвращающие полученные результаты приложению; • источники данных (данные БД). ODBC драйвер передает запросы клиента базе данных на языке, поддерживаемом конкретной СУБД. Источник данных содержит имя пользователя и его пароль. Клиентское приложение взаимодействует с сервером путем набора системных вызовов к источнику данных. Последний транслирует запросы клиента драйверу ODBC и получает ответы. Драйвер ODBC обменивается данными с СУБД. При необходимости работы с др. СУБД в источнике данных указывается другой тип ODBC-драйвера. Тем самым достигается независимость ПО клиентского приложения от типа СУБД. Современные лицензируемые СУБД, ориентированные на работу большого числа пользователей, избавляют разработчика клиентских приложений самостоятельно разрабатывать средства хранения и разделения доступа к данным, их защиты от несанкционированного доступа и резервного копирования. Эти функции осуществляются выбранной СУБД. Хотя функции управления данными реализуются на сервере, обработка этих данных выполняется клиентскими приложениями, что является одним из немногих недостатков обмена данными в архитектуре клиент-сервер. Доступ к БД через Internet на основе Web-технологии используется в локальных сетях, называемых интрасетями (intranets) [ 5.29]. Язык HTML интерпретируется Web- браузером ОС клиента для доступа к БД, размещаемой на Web-сервере (рис. 5.9). Для доступа к БД через Web используется преобразование содержимого БД в статические или динамические гипертекстовые документы. Для организации динамических гипертекстовых документов используются специальные приложения CGI, ISAPI, ASP и др., которые вызываются Web-сервером после получения запросов от Web-клиента. После обработки приложением запроса клиента и выборки информации из БД, приложение формирует выходной HTML-документ и передает его клиенту. Интерфейс CGI (Common Gateway Interface — общий шлюзовый интерфейс) представляет собой программу преобразования форматов баз данных в формат языка HTML, программу реализации задач поиска в удаленных базах данных, использования графических меню. Интерфейс ISAPI (Internet Server Application Programming Interface — прикладной программный интерфейс для Интернет-сервера) представляет собой интерфейс доступа к серверу Интернета фирмы Microsoft, предназначенный для программного управления сервером. ISAPI-программы — это специальный вид приложений, обрабатывающих пользовательские запросы и отображающих их вывод в виде потока HTML, который поступает непосредственно в web-браузер клиента [5.29, 5.30]. БД и СУБД Ниже рассматриваются некоторые БД для систем управления. IndustrialSQL Server IndustrialSQL Server— открытая реляционная база данных реального времени (БД РВ) промышленного назначения, разработанная корпорацией Wonderware [5.31]. IndustrialSQL Server является расширением MicrosoftSQL Server и предоставляет возможность регистрации больших объемов данных с высокой скоростью (разрешение около одной мс). Данные о производственном процессе в РВ интегрируются в базе данных с архивными данными, событийными, итоговыми и отчетными данными. Доступ ко всей информации возможен с любого клиентского приложения, которое имеет доступ к MS SQL Server. IndustrialSQL Server использует язык структурированных запросов SQL в качестве интерфейса между серверной и клиентскими частями. По сравнению с традиционными реляционными базами данных IndustrialSQL Server позволяет хранить данные на небольшом объеме дискового пространства. Так, двухмесячный архив предприятия с 4000 параметров, опрашиваемых с периодичностью от нескольких секунд до нескольких минут, занимает до 2 Мбайт дискового пространства. При этом алгоритм сжатия информации гарантирует высокое разрешение и качество данных. IndustrialSQL Server содержит временные характеристики событий (изменение переменных, обновление, удаление, вставка) с выполнением определенных действий в зависимости от событий (например, выдача сменных отчетов, посылка сообщений о запуске оборудования и пр.). За счет того, что IndustrialSQL Server автоматически обновляет сводные таблицы с заданной производительностью, записывая в них максимальные, минимальные, средние значения параметров и др., таблица всегда отражает реальное состояние процесса. Все приложения, работающие с MS SQL Server, могут быть подключены и к IndustrialSQL Server. Таким образом, текущая информация (сводные или конфигурационные данные и другая информация) сохраняются в IndustrialSQL Server. Области применения IndustrialSQL Server охватывают задачи широкого круга специалистов: инженеров АСУ ТП, службы ремонта оборудования, персонала ОТК, операторов, экономистов. Клиентские приложения, размещенные на рабочих станциях специалистов предприятия, включают набор клиентских программ фирмы Wonderware. К ним относятся SCADA-система InTouch, SQL-приложения, MS Access, Excel, Word, Lotus, программы математического и статистического анализа, приложения пользователя (разработанные с использованием инструментальных программных средств, включая Visual Basic, Delphi, Power Builder, C++). Таким образом, IndustrialSQL Server представляет собой мощную БД с возможностями традиционных реляционных БД, так как базируется на MS SQL Server, но обладает дополнительными свойствами, связанными с регистрацией БД в реальном времени. Со сформированными в РВ таблицами возможна работа по стандартным SQL-запросам. IndustrialSQL Server использует такие возможности встроенного MS SQL Server, как интерфейсы для обмена электронной почтой, Internet-обмена данными (передача и прием данных через Internet), мощные возможности MS SQL Server по фильтрации и обработке данных, но в реальном времени. Основные характеристики IndustrialSQL Server: • Архитектура клиент/сервер является средой между станциями верхнего уровня, ответственными за обработку финансовой и экономической информации предприятия, и станциями диспетчерского уровня, обеспечивающими визуализацию данных процесса в РВ. • Программно-аппаратные требования: ОС — MS Windows NT 4.0; Internet Explorer 5.0; ПРЦ — Pentium Pro 200 МГц; 256 Мб RAM; сети — Ethernet, Novell, Token Ring, Arcnet, Decnet. • Масштабируемость (обработка от нескольких сотен до сотен тысяч параметров). • Использование клиентских программ и программных пакетов третьих фирм, включающих средства статистического анализа, создания и управления отчетами, диаграммы, тренды, графики, в том числе по интеграции с системами верхнего уровня. Для отображения данных в SCADA-системе InTouch из БД IndustrialSQL Server через Internet используются следующие ActiveX-объекты: • ActiveDataGrid служит для выполнения SQL-запроса, который возвращает результаты выборки из БД любых SQL-серверов; • ActiveGraph используется для поиска исторических данных из БД IndustrialSQL Server и отображения значений переменных в виде трендов; • ActiveTagBrowser дает иерархический обзор имен тэгов (переменные, события, серверы ввода/вывода) в базе данных IndustrialSQL Server. • ActiveTimeSelector используется для просмотра и выбора исторических данных за определенный период времени из IndustrialSQL Server. Благодаря тому что IndustrialSQL Server отличается простотой обслуживания и низкой стоимостью, IndustrialSQL Server может использоваться как выделенный сервер производственной линии или определенного производственного оборудования. В условиях удаленного доступа IndustrialSQL Server может использоваться как Web- Server или GPRS Server. Для генерации отчетов и обновления графиков из IndustrialSQL Server и использования их в процессах управления производством используется ActiveFactory. Новая версия БД IndustrialSQL Server 9.0 снабжена дополнительными функциями [5.32]: • возможностью интеграции с информационными системами фирм Siemens, ABB, Rockwell Automation, Honeywell и др.; • интеграцией с Industrial Application Server (IAS) — сервером промышленных приложений, который используется для интеграции систем нижнего и верхнего уровней системы. Совмещение и анализ данных РВ и архивной информации способствует более эффективному управлению предприятием. Коммуникационные возможности IndustrialSQL Server основаны на технологиях ОРС, DDE, стандарте SQL и средствах доступа к БД ODBC IndustrialSQL Server. Полный набор инструментального ПО для управления предприятием объединяется в открытую программную архитектуру ArchestrA. Помимо ActiveFactory в состав ArchestrA входят следующие программные компоненты [2.32]: • QI Analyst — статистический анализ в РВ, базирующийся на данных о технологическом процессе из IndustrialSQL Server; • DT Analyst — анализ работы оборудования, отслеживание времени работы, простоев оборудования; • Web-портал SuiteVoyager — функция ПО SuiteVoyager, обеспечивающая обмен данными между IndustrialSQL Server и другими программными продуктами компании Wonderware; • РЕМ — набор объектов для IAS, осуществляющих сбор данных и сохранение их в IndustrialSQL Server. Сбор данных для IndustrialSQL Server осуществляется, помимо IAS, также через IndustrialSQL Data Acqusition Service (IDAS). IDAS и IAS поддерживают функции резервирования и защиты от сбоев IndustrialSQL Server. Надежность сервера БД IndustrialSQL Server поддерживается на кластерных системах. Когда возникает сбой IndustrialSQL Server, установленного на основном компьютере, автоматически запускается IndustrialSQL Server на резервном компьютере. К основным особенностям архитектуры ArchestrA относятся следующие: • централизованная настройка приложений в соответствии с заданными требованиями; • архивная БД для сбора производственных данных, сигналов тревог и событий. • интеграция полевых и локальных устройств и сетей; • средства управления предприятием на основе технологии TCP/IP; • наличие функций удаленной диагностики на базе локальных Web-серверов. Основой архитектуры является Industrial Application Server (IAS), представляю щий собой сервер интеграции данных в РВ, сигналов тревог и событий. IAS удовлетворяет следующим требованиям производства в РВ: • высокой скоростью выполнения операций в РВ; • возможностью обработки больших объемов данных и сообщений о событиях; • возможностью взаимодействия с тысячами локальных или удаленных устройств. БД IndustrialSQL Server и Industrial Application Server широко используются в различных отраслях промышленности (целлюлозно-бумажная, химическая, нефтеперерабатывающая и др.). iHistorian. Для интеграции систем нижнего и верхнего уровней системы автоматизации производства фирмой Intellution (США) разработан программный пакет iHistorian [5.33, 5.34]. Концепция построения многоуровневой информационно-управляющей системы на базе ПО iHistorian получила название Plant Intelligence. Архитектура iHistorian представлена на рис. 5.10. К основным достоинствам системы относятся: масштабируемость, высокая производительность и простота настройки. Объем архива, создаваемого средствами iHistorian, составляет от 100.. .300 до 100000 параметров на одном сервере. Кроме того, iHistorian поддерживает многосерверную распределенную архитектуру. Сбор данных осуществляется с помощью специальных программных модулей (коллекторов). Коллекторы делят на две группы: • Plant Data Collectors: сбор данных от ПЛК, SCADA-систем и от др. источников данных. • Transformation Collectors: реализация вычислительных функций и обмена данными между серверами. К Plant Data Collectors относятся коллекторы для SCADA-систем iFIX, FIX 32, ОРС и файл-коллектор. ОРС-коллектор используется для сбора данных от серверов. Файл-коллектор осуществляет сбор данных из файлов в формате CSV и XML. В группу Transformation Collectors входят вычислительные модули, которые осуществляют преобразование собранных данных с использованием Visual Basic Script и сохранение их на сервере iHistorian. Рис. 5.10 Сервер iHistorian имеет мультифайловую структуру архива. Благодаря нереляционному типу базы данных, сервер iHistorian имеет более высокое быстродействие (скорость записи и чтения с жесткого диска составляет более 20000 событий в секунду). Администрирование iHistorian носит упрощенный характер по сравнению с реляционными базами данных. С помощью OLE DB провайдера пользователь может работать с архивом iHistorian как с обычной реляционной базой, состоящей из восьми таблиц, используя SQL-запросы. Вместе с OLE DB провайдером поставляется программа-утилита выполнения SQL-запросов — iHistorian Interactive SQL. Для увеличения объема сохраняемых данных используется двойное сжатие массива данных, — на уровне коллектора и на уровне сервера. Для iHistorian Server должны соблюдаться минимальные требования: процессор Pentium III 500 МГц, 256 Мб RAM, 2 Гб на жестком диске. Настройка iHistorian осуществляется с помощью ПО Administrator Website, устанавливаемого на сервере. Web-администратор предоставляет графический интерфейс для конфигурирования тегов, коллекторов, данных, копирования, анализа си стемных тревог и сообщений. Данные iHistorian поступают от клиентских приложений, в частности от SCADA- системы iFIX. В SCADA-системе iFIX можно строить графики и мнемосхемы на основе данных из iHistorian. Встраиваемые в iFIX модуль Excel Add-In позволяет создавать отчеты, модуль iDownTime — анализировать события (продолжительность работы и простоев). Модуль infoAgent представляет собой Web-клиента для визуализации и анализа данных из iHistorian. Компонента iHistorian API — программный интерфейс iHistorian, который обеспечивает связь между клиентами и сервером iHistorian. БД ORACLE фирмы Oracle Реляционные базы данных ORACLE в настоящее время являются широко распространенными БД и достигают размеров сотен гигабайт. Для более детального ознакомления с БД ORACLE можно рекомендовать литературу [5.36, 5.37]. БД ORACLE поддерживается большим числом пользователей и удовлетворяет международным стандартам по ОС, протоколам, интерфейсам, языкам доступа к БД. БД ORACLE может быть представлена физической и логической структурами. Физическая структура — это файлы ОС трех типов: один или несколько файлов данных; два и более файлов журнала повторения работы; один или несколько управляющих файлов. Файлы данных принадлежат одной БД и не могут изменять свой размер. Файлы данных формируют логическую структуру в виде табличного пространства. Табличные пространства — это логические единицы хранения данных; они служат для того, чтобы группировать вместе взаимосвязанные логические структуры. Каждая БД имеет одно или более табличных пространств, для каждого из которых создаются файлы данных для физического хранения данных. Емкость памяти табличного пространства равна сумме емкости его файлов, а суммарная емкость табличных пространств составляет общую емкость БД. Табличное пространство может быть в состоянии ONLINE (доступно) или OFFLINE (недоступно). При обращении к файлам данных последние размещаются в кэш-памяти ORACLE. Файлы журнала повторения работы регистрируют все изменения в БД. При невозможности доступа к данным в процессе работы эти данные могут быть получены из журнала повторения. Таким образом, в случае сбоя или отключения питания данные могут быть восстановлены. Управляющие файлы БД служат для записи и хранения физической структуры БД. Управляющий файл имеет имя БД, имена файлов данных, временную метку создания БД. Логическая структура БД ORACLE определяется помимо табличных пространств также объектами схем БД (схемы, объекты схем, таблицы, кластеры и пр.). Схема — это набор объектов. Объекты схемы включают такие структуры, как таблицы, индексы, хранимые процедуры, кластеры. Объекты одной и той же схемы могут находиться в различных табличных пространствах. Таблица — основная единица хранения данных в БД ORACLE. Данные хранятся в виде строк и столбцов. Каждая таблица являетс
Популярное: Почему стероиды повышают давление?: Основных причин три... Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (773)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |