Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Вопрос 158 Программное обеспечение САиУ. Принципы выбора программного обеспечения






Специфика промышленного применения накладывает свой от­печаток на используемое программное обеспечение. Можно сфор­мулировать следующие основные требования к программному обес­печению.

Оно должно быть достаточно надежным. Оче­видно, что многие новации последнего времени, типа структурного программирования, объектно-ориентированных языков, CASE-технологий, появились в результате стремления писать все более слож­ные программы с меньшим количеством ошибок.

Программное обеспечение должно быстро реагировать на ка­кие-либо внешние события или изменения в параметрах управ­ляемых процессов. Системы, работающие в соответствии со вто­рым требованием, часто называют системами реального време­ни. Типовое время реагирования на внешние воздействия, необ­ходимое современным индустриальным системам, составляет десятки микросекунд.

Программные средства должны быть удобны в использовании, соответствовать решаемой задаче, иметь логичный интерфейс. Дан­ные требования должны предъявляться вообще к любому программ­ному продукту. Для систем сбора данных и управления выработа­ны определенные правила. Они не стандартизированы, но все же разработчики известных систем их придерживаются. Основная преследуемая цель — минимизация ошибок персонала по вине пу­таного интерфейса.

Программные средства должны позволять переконфигурацию «на ходу», давать возможность изменения настроек системы (форм представления, графиков, мнемосхем) и условий обработки инфор­мации о технологическом объекте (шкал, уставок, размерностей и т.д.) в конкретной подсистеме, не прерывая и не мешая другим под­системам.

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

Программное обеспечение должно обеспечивать свойство мас­штабируемости системы. Система управления должна обладать спо­собностью работать как с малым, так и с очень большим количеством параметров, эффективно использовать аппаратные ресурсы.

Программное обеспечение должно обеспечивать возможность внешнего доступа к информации о работе системы сбора данных и управления. Для решения многих задач (например, для расчета фи­нансово-экономических показателей) требуется доступ к информа­ции, получаемой системой сбора данных и управления в ходе рабо­ты. Этот доступ должен быть оперативным, простым, но с разгра­ничением прав (экономист не должен иметь возможности управ­лять объектом). Какой бы ни была интенсивность работы «внешних» пользователей, никакого влияния на работоспособность системы управления они оказывать не должны.

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

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

Процесс управления должен быть многозадачным. Это требова­ние часто (но не всегда) предъявляется к программному обеспече­нию систем управления. Оно проистекает из подчас чрезвычайно сложной и многоуровневой природы управляемых процессов, ког­да необходимо одновременно реализовать сложные алгоритмы уп­равления различными аспектами или частями реального объекта. По каждой задаче выполняется определенная доля работы по уп­равлению объектом, и все задачи делят ресурсы вычислительной системы в зависимости от своего приоритета и от внешних и внут­ренних событий, конкретно с ними связанных. Существует целый ряд алгоритмов распределения ресурсов между задачами, рассмот­рение которых, впрочем, выходит за рамки данной работы.

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

Условно можно разделить программное обеспечение на три уровня.

1. Базовая система ввода-вывода (BIOS).

2. Операционная система и драйверы (ОС).

3. Собственно прикладные программы.

BIOS осуществляет непосредственную связь между аппаратурой и программным обеспечением верхних уровней. Ведущие фирмы-поставщики BIOS ориентируются в основном на рынок офисных компьютеров и не применяют специальных мер для обеспечения требований индустриальных приложений. Основная опасность при обращении к BIOS —это возможность запрета прерываний на дос­таточно долгое время, в результате чего может быть пропущена важ­ная информация от быстродействующих датчиков или телекомму­никационных устройств.

Операционная система выполняет базовые функции связи с опе­ратором, запуска программ, распределения памяти, поддержки фай­ловой системы и т.п. Создатель системы автоматизации, как прави­ло, встает перед выбором: или использовать многозадачное ядро ре­ального времени, работающее над DOS, или перейти на другую опе­рационную систему. В первом случае используются самодельные или коммерчески распространяемые библиотеки программ, реали­зующие функции многозадачной ОС, например RTKernel. Во вто­ром случае открывается богатый выбор операционных систем, раз­работанных специально для применения в системах «жесткого» реального времени. Эти ОС часто так и называют операционными системами реального времени. На рынке существует несколько де­сятков операционных систем реального времени. У нас известны такие ОС, как QNX, OS 9000, VxWorks, iRMX, VRTX, Nucleus и др.

Существует два подхода к переносимости программного обес­печения: первый — поддержка одной ОС одновременно несколь­ких аппаратных платформ, второй — обеспечение стандартного интерфейса между прикладными программами и ОС. В качестве такого стандарта часто используют программный интерфейс, раз­работанный для UNIX-подобных операционных систем и получив­ший название POSIX (Portable Operating System Interface for UNIX). To есть ваша программа, написанная в соответствии со стандартом POSIX, должна надежно работать на любой аппаратной платформе при условии применения POSIX совместимой операционной сис­темы. При проектировании ОС реального времени все чаще исполь­зуется идеология микроядра, которая увеличивает надежность про­граммного обеспечения и позволяет использовать только те компо­ненты операционной системы, которые необходимы в каждом кон­кретном случае. Так, микроядро одной из самых распространенных операционных систем QNX имеет размер менее 10 Кбайт. Модуль, ответственный за файловую систему, например, запускается как одна из задач и может быть легко удален. Все драйверы также фун­кционируют как независимые задачи, т.е. если в вашей встроенной системе не используются файловые операции или отсутствуют ин­терфейсы с какими-либо внешними устройствами, вы можете про­сто не включать в состав операционной системы, функционирую­щей в вашем изделии, соответствующие модули, высвобождая тем самым память для более эффективного выполнения приложений.

Что же касается таких операционных систем, как Windows NT и OS/2, то эти новейшие операционные системы оказывают опреде­ленное давление на рынок операционных систем реального време­ни. Тем не менее обе системы ориентированы на офисное приме­нение и не могут обеспечить скорость отклика на внешние воздей­ствия, сравнимую со скоростью специализированных ОС реально­го времени. Кроме общей неразвитости механизмов управления приоритетами могут возникать проблемы некоторой непредсказу­емости поведения этих ОС. Например, совершенно неожиданно си­стема может инициировать массированный свопинг на диск, заби­рая для этого мероприятия практически все ресурсы. Вот почему чувствительные к задержкам задачи, типа обмена данных в муль­тимедиа-приложениях, оформляются в виде драйверов. Так что пока Windows NT и OS/2 можно использовать только в задачах «мягко­го» реального времени, а то, что количество их дистрибутивных дискет превосходит число пальцев на обеих руках, не внушает оп­тимизма разработчикам встраиваемых систем, где каждый мегабайт на счету. Однако системы на базе Windows NT широко использу­ются как ОС для терминалов в дополнение к автономно действую­щим контроллерам (например, в системах Honeywell). He так давно Microsoft выпустила на рынок ОС Windows СЕ для встраиваемых приложений. Немного особняком стоит программное обеспечение, предназначенное для эксплуатации на верхнем уровне систем ав­томатизации, например в диспетчерских электростанций, пультах управления сложными агрегатами и т.д.

С середины 80-х годов ряд фирм-разработчиков программных систем приступили к разработке и выпуску универсальных и откры­тых пакетов прикладных программ для компьютерных операторс­ких станций, предназначенных не для конкретной микропроцессор­ной системы, но приспособленных для применения в разных про­граммно-технических и сетевых средах.

Свойство открытости состоит в том, что пакет прикладных про­грамм поддерживает совокупность интерфейсов и драйверов, по­зволяющих использовать пакет для широкого класса микропроцес­сорных контроллеров, систем и сетей передачи данных, содержит средства разработки новых (не предусмотренные разработчиком) интерфейсов и драйверов для микропроцессорных приборов и се­тей. Он позволяет расширять функциональные возможности сис­тем в соответствии с заданиями на конкретные проекты — путем подключения программ пользователя.

Программные системы и пакеты прикладных программ, обеспе­чивающие работу компьютерных операторских станций, в литера­туре получили наименование SCADA-программы (аббревиатура SCADA означает Supervisory Control And Data Acquisition — сбор данных, наблюдение и управление).

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

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

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

Каждая SCADA-программа содержит в своем составе две базо­вые подсистемы:

1) инструментальную подсистему разработки (Development Kit),

2) исполнительную подсистему (Runtime), поддерживающую работу программного обеспечения операторских станций в реальном времени.

Инструментальная подсистема применяется при разработке про­грамм операторских станций проектантами и системными интег­раторами. Каждый экземпляр инструментальной подсистемы мно­гократно используется для разработки операторских станций в раз­ных проектах; применяется также эксплуатационниками на пред­приятиях для коррекции и модернизации программного обеспече­ния станций.

Исполнительная подсистема поддерживает, как правило, рабо­ту программного обеспечения отдельной станции. Инструменталь­ная система технически тоже может поддерживать в реальном вре­мени работу операторской станции. Очевидно, что она же может быть использована и в качестве исполнительной системы. В неко­торых специализированных SCADA-программах инструментальная и исполнительная системы не разделены и представляют собой еди­ное целое. В тексте обзора возможность использования инструмен­тальной системы в качестве исполнительной по умолчанию не ого­варивается.

Главными функциями SCADA-программ являются отображение технологического процесса в виде мнемосхем, сигнализация об ава­рийных ситуациях, ведение системного журнала, обеспечение об­щего управления процессом со стороны оператора и т.п. Многие системные интеграторы или подразделения АСУ крупных предпри­ятий, как правило, имеют свои наработки в этой области. В то же время есть фирмы, специализирующиеся на разработке универ­сальных SCADA-программ, таких, как Genesis (Iconics), FixDmacs (Intellution), InTouch (Wonderware). Из отечественных разработок хотелось бы отметить программу TraceMode (Adastra Research Group). Граница между программными обеспечениями классов SCADA и HMI весьма условная, поэтому многие системы SCADA могут работать в качестве интерфейса НМ1 для систем нижнего уровня. В последнее время получает распространение программ­ное обеспечение класса MES (Manufacturing Execution Systems), основной задачей которого является оптимизация управления про­изводством в целом, включая планирование запасов комплектую­щих, расписание технологических процессов и т.д. Системы MES, с одной стороны, взаимодействуют с системами SCADA, образуя единую систему управления производством, с другой стороны, — часто интегрируются в систему планирования и управления пред­приятием в целом.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал