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


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

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






Введение. При создании ответственных технологических объектов одной из важнейших составляющих процесса их проектирования является комплексная автоматизация технических





 

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

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

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

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

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

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

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

Можно выделить два уровня языков – языки алгоритмизации или спецификации (языки общения) и языки программирования (языки реализации). Языки этих классов могут как совпадать (при наличии транслятора с языка алгоритмизации), так и различаться между собой. Так, например, при аппаратной реализации систем в базисе релейно-контактных схем в качестве языка алгоритмизации применялись функциональные схемы, а в качестве языка реализации – собственно релейно-контактные схемы.

В настоящее время в качестве языков алгоритмизации в системах логического управления наиболее часто используются функциональные схемы и схемы алгоритмов. При этом в качестве языков программирования в зависимости от типа управляющего вычислительного устройства применяются три разновидности языков: алгоритмические языки высокого уровня (например, СИ, «Паскаль», ПЛ/М, «Форт»), алгоритмические языки низкого уровня (языки инструкций, ассемблеры) и специализированные языки стандарта IEC 61131-3.

На современном этапе в качестве ядра любой системы промышленной автоматизации используется программируемый логический контроллер (ПЛК), к которому со стороны объекта автоматизации подключаются датчики и исполнительные органы.

Через датчики в ПЛК поступает информация о текущем состоянии объекта, а через исполнительные органы ПЛК может изменять состояние управляемого объекта.

Специфика автоматизации предполагает наличие собственно системы управления, включающей датчики обратной связи и органы управления, и внешней (по отношению к системе управления) среды. Реакции системы управления определяются алгоритмом управления в зависимости от событий на объекте управления, информация о которых поступает через датчики обратной связи. Для цифровых систем это обстоятельство обусловливает цикличность управляющего алгоритма по схеме: считывание состояния входных сигналов через датчики – их обработка и формирование выходных сигналов – выдача выходных сигналов на исполнительные органы.

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

Далее рассмотрим некоторую детализацию изложенного в приложении «Гиперсистема».

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

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

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

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

На втором этапе проектируется логическая структура системы управления, в результате чего определяется ее состав, перечисляются элементы с указанием их функций и связи между ними. Технические средства, на которых выполняется затем система управления, могут оказаться различными. Так, в качестве элементов логической структуры могут использоваться и простейшие логические элементы, реализующие элементарные булевы функции типа И, ИЛИ, НЕ, и существенно более сложные изделия микроэлектроники типа программируемых логических матриц и микропроцессоров, и даже целые вычислительные машины, специализированные или универсальные. При этом синтез схем из логических элементов может заменяться разработкой программ, выполняемых затем на микропроцессоре или на ЭВМ и реализующих аналогичные функции. Второй этап называется этапом логического проектирования.

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

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

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

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

К настоящему времени элементный базис существенно изменился: роль элементов играют большие и сверхбольшие интегральные схемы, выполненные на одном кристалле и составленные из тысяч и миллионов элементарных вентильных схем. Яркими представителями сверхбольших интегральных схем служат микропроцессоры и программируемые логические интегральные схемы, хорошо дополняющие друг друга. Микропроцессор подобен универсальной вычислительной машине (без терминальных устройств) и может решать практически любую задачу, если только для нее составлена программа, хотя и не всегда достаточно быстро. Изменился и класс проектируемых дискретных устройств. Однопроцессорные ЭВМ вытесняются многопроцессорными, все большее внимание уделяется дискретным системам, управляющим взаимодействующими производственными процессами, переплетающимися в пространстве и времени, Реализуемые при этом алгоритмы оказываются параллельными, в них предусматривается одновременное выполнение нескольких операций.

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

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

Объект исследования. Программные средства приложения «Гиперсистема» обеспечивают выполнение следующих этапов разработки УУ:

· Комплексное логическое моделирование;

· Визуальное логическое моделирование;

· Макетное программирование МК.

Будем рассматривать эти этапы на примере блока (прибора) логического управления (БУ) космического аппарата (КА). БУ является сложной системой, поведение которой на уровне технического задания (ТЗ) описывается в виде блок-схем алгоритмов (около 500) и логических функций (около 5000). При этом общее количество переменных превышает 20000. Модули блока управления взаимодействуют с бортовым вычислительным комплексом, наземным комплексом управления, исполнительными механизмами КА и бортовой аппаратурой через внешние соединители (разъемы) (около 50), при этом число входов и выходов блока управления около 2000. Наряду с логическим используется и временное управление с использованием десятков программных таймеров.

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

Процесс моделирования начинается с разработки (конструирования) модели.

Композиционное конструирование модели УУ. Основными посылками разработанного в приложении «Гиперсистема» способа композиционного конструирования модели являются:

· композиционная модель представляет собой композицию из предметных конструкций (логических данных ТЗ) и конструкций среды программирования DELPHI XE3;

· предметные конструкции формируются автоматически путем ввода из ТЗ, представляются в виде текстовых файлов *.тхт и образуют внешнюю пользовательскую часть композиционной модели;

· предметные конструкции преобразуются в соответствующие программные конструкции на языке DELPHI (произвольные фрагменты кода в виде файлов *.pas);

· вставка программных конструкций в резидентные конструкции приложения «Гиперсистема» выполняется с помощью директив INCLUDE среды DELPHI для подключения файлов *.pas в код программы.

Фундаментальной особенностью композиционной модели БУ в приложении «Гиперсистема» является то, что после операций композиции предметных и программных конструкций она является программой DELPHI, при выполнении которой не требуется ввода никаких исходных данных. Традиционные задачи создания структур исходных данных, интерфейсов ввода, синтаксического и семантического контроля, редактирования и хранения отсутствуют.

Блок-схемы алгоритмов. В техническом задании на проектирование блоков управления алгоритмы записываются на языке блок-схем. Схемы и алгоритмы, разработанные с помощью этого языка, просты и понятны, благодаря чему разработку многих компьютерных программ для космических объектов на практике ведут не программисты, а обычные предметные специалисты по принципу «программирование без программистов».

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

В настоящее время имеется и широко используется ввод блок-схем алгоритмов в приложении MS VISIO, который и рекомендуется использовать в техническом задании на проектирование блоков управления для ввода блок-схем алгоритмов.

В приложении «Гиперсистема» разработаны и используются два способа ввода блок-схем алгоритмов:

· простой способ записи блок-схем алгоритмов непосредственно по «картинке» алгоритма на языке ГЕРАКЛ;

· ввод блок-схем алгоритмов в приложении MS VISIO и их преобразование в описание на языке ГЕРАКЛ.

Логические функции. Аналитической формой представления булевых функций являются булевы формулы и системы булевых формул, которые позволяют описывать как комбинационные схемы, так и автоматы с памятью большой размерности. Кроме этого в логических формулах могут использоваться импульсные сигналы, передние и задние фронты, таймеры, счетчики, компараторы, что потребовало разработки дополнительных способов и средств для построения адекватной программной модели. Системы булевых формул могут быть изоморфно реализованы лестничными (LD) или функциональными схемами (FBD).

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

Функции памяти (триггеры) представляют собой переменные, хранящиеся в памяти, и их следующее значение зависит от предыдущего значения. Поэтому их значение определяется с помощью двух блоков: блока SET (включить) и блока RESET (выключить). Если сигнал доходит до блока SET, то переменная принимает значение TRUE. Если сигнал доходит до блока RESET, то переменная принимает значение FALSE. А если же сигнал доходит и до SET и до RESET, то переменная принимает значение FALSE. Это происходит потому, что блок RESET логически находится после блока SET, соответственно он выполняется последним (преобладание RESET, RS-триггер).

Фронты сигналов. Обработка фронтов сигналов выходит за пределы алгебры логики и реализуется следующим образом:

· Передний фронт сигнала логической переменной обозначается префиксом «_» (например _Zцпм1);

· Задний фронт сигнала логической переменной обозначается суффиксом «_» (например Zцпм1_);

· Фронты сигналов передаются в виде дополнительных параметров-переменных Пф и Зф в процедуры вычисления логических функций.

Таймеры. Таймеры реализуются с помощью компонентов. К таймеру могут применяться операции, реализуемые процедурами DELPHI:

· Запуск_таймера;

· Перезапуск_таймера;

· Останов_и_обнуление_таймера.

Вызов процедур таймеров записывается в блок-схемах алгоритмов.

Виртуальные временные интервалы в вызове процедур таймеров записываются в преобразованном виде на базе отношений «раньше – позже». Для этого реальные интервалы ТЗ сортируются в возрастающем порядке, полученные номера умножаются на 100 и становятся виртуальными интервалами. Минимальный интервал составляет 100 миллисекунд (рекомендуется не менее 50).

Шины питания. В приложении «Гиперсистема» все имена входов, внутренних элементов, выходов и соответствующие им функции должны быть уникальными. Если в ТЗ используется разветвление шин питания (питание подается на несколько разных контактов разных внешних соединителей), то соответствующие функции предметной конструкции объединяются при синтезе программной конструкции.

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

Комплексное моделирование и анализ в среде DELPHI структурных и функциональных (логических) зависимостей УУ (включая взаимодействие с внешней средой), представленных в ТЗ в виде блок-схем алгоритмов и логических формул, обеспечивает отработку логики функционирования в штатных и нештатных режимах работы перед выполнением последующих этапов разработки.

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

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

Итерационное моделирование логических функций. В приложении «Гиперсистема» реализован итерационный метод вычисления логических функций. По сравнению с событийным моделированием этот метод существенно проще в реализации, однако дает менее детальную информацию о причинно-следственных отношениях и требует более значительных временных затрат, что не существенно для современных ПК.

Основными принципами построения и использования приложения «Гиперсистема» являются:

· Создание средств отработки логики функционирования устройства управления (УУ) в штатных и нештатных режимах работы, перед выполнением последующих этапов разработки;

· Создание средств программной реализации логики функционирования УУ в микропроцессорном контроллере (МК);

· Выполнение основных задач приложения «Гиперсистема» на базе информации, получаемой автоматически из технического задания (ТЗ). При этом пользователь не должен вводить никакой дополнительной информации, а только выбирать нужные фрагменты из автоматически подготовленной информации;

· Создание средств формализации логики функционирования УУ в документе ТЗ.

Основными задачами приложения «Гиперсистема» являются:

· Композиционный синтез (конструирование) модели УУ на языке DELPHI XE из предметного (пользовательского) описания логики управления в ТЗ;

· Комплексное моделирование и анализ в среде DELPHI структурных и функциональных (логических) зависимостей УУ (включая взаимодействие с внешней средой), представленных в ТЗ в виде блок-схем алгоритмов и логических формул. На этом этапе выполняется отработка логики функционирования в штатных и нештатных режимах работы, перед выполнением последующих этапов разработки;

· Визуальное (графическое) представление алгоритмов и логических функций на языках технологического программирования стандарта МЭК 61131-3;

· Комплексное визуальное моделирование и анализ УУ. На этом этапе выполняется отработка логики функционирования в штатных и нештатных режимах работы с учетом специфики программной (в МК) и аппаратной реализации;

· Визуальное моделирование логических функций, подлежащих аппаратной реализации, при выполнении диалоговых режимов разработки тестов;

· Генерация макет-программ (исходных текстов на языке ANSI - C) МК для их последующей реализации в среде разработки PROJECT – 96/ESCA.

 

Date: 2015-07-27; view: 543; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию