Часть1 (1028410), страница 9
Текст из файла (страница 9)
Микроконтроллер МК3 формирует такие команды, исходя из заданного графика нагружения. По сути, работа РППТ не отличается от работы локального регулятора ТР. Получив от МК3 требуемое усилие сжатия в виде уставки, контроллер КП по ПИД-закону регулирования формирует команды, должным образом модулирующие энергетические потоки, поступающие на двигатель. В качестве датчика обратной связи вэтом локальном контуре регулирования используется датчик усилия, фиксирующий сжатиесвариваемых образцов.Это далеко не единственный вариант структурной реализации аппаратного обеспечения САУ, который во многом определяет и структурную организацию программного обеспечения. Структура САУ во многом определяется опытом и наработками ведущего разработчика.
Здесь применен достаточно сложный оригинальный модуль СМК, включающий три однокристальных микроконтроллера серии PIC и микроконтроллер семейства MCS-51, объединенных локальной сетью I2C. Разработка такого контроллера и, особенно, оригинальногопрограммного обеспечения к нему – достаточно трудоемкая задача, взяться за решение которой может коллектив, имеющий опыт аналогичных разработок и средства программноаппаратной эмуляции для отладки программного обеспечения.Надежность САУ такой структуры целиком определяется надежностью работы СМК.Электронику часто в шутку называют наукой о плохих контактах и в этой шутке есть огромная доля правды.
Объединение практически всего ядра САУ в одной плате, при ее грамотномисполнении, существенно повышает надежность системы. Для защиты от помех по питаниюи программных сбоев МК здесь использованы супервизорные схемы и системы Watchdog, окоторых речь пойдет далее в гл.
3.3.Центральный контроллер на базе промышленного компьютера выполняет лишь сервисные функции и функции коррекции цели. Основную целевую функцию (выполнение заданногоили директивного технологического процесса) ведут локальные микроконтроллеры. С помощью центрального контроллера в диалоговом режиме программируется процесс сварки и егопараметры передаются локальным микроконтроллерам – это функции коррекции цели.К сервисным функциям, обеспечивающим наилучшие условия для выполнения основных целевых относятся отображение состояния установки на мониторе, периодическийконтроль за работой модуля СМК, прием сообщений о состоянии локальных процессов ификсация трендов процессов нагрева и нагружения на жестком диске.Программные сбои и зависания центрального контроллера, при условии ихсвоевременного обнаружения и перезагрузи задачи управления с учетом текущего состояния,не критичны.
Ведь каждый из локальных микроконтроллеров знает свои задачи.Другой вариант структуры САУ для реализации тех же функций приведен на рис. 1.21.Здесь за основу взят встраиваемый компьютер в формате MicroPC (см. рис. 1.18). На системной магистрали ISA включено вычислительное ядро CPU, представляющее из себя законченный компьютер с твердотельными дисками, видеоконтроллером, сетевым контроллеромEthernet, контроллером накопителя на жестких магнитных дисках и широкими возможностями расширения.
Таким образом, мы поддерживаем человеко-машинный интерфейс, сервисные функции и функции коррекции цели.30По шине ISA к вычислительному ядру подключена плата DIO, обеспечивающая выдачунеобходимых сигналов дискретного контроля и управления. К порту канала RS-485 на CPUподключаем уже известные нам блоки ВАК, ТР и РППТ. Здесь программная поддержка процесса откачки полностью ложится наMicroPC, выполняющего помимо этогоРППТфункции центрального контроллера.ДУ АКMПроцесс нагрева и нагружения обеспеШИМчивают, как и ранее, локальный термоЭПАКрегулятор и блок РППТ.МониторВозможностей CPU с большимВАКTРКПзапасом хватит, чтобы взять на себяфункции терморегулятора и блокаРППТ.
Как видите, мы все более функции аппаратной поддержки перекладыКлавиатура, мышьRS-485ваем на программное обеспечение центрального контроллера, усложняя его иДУMicroPCупрощая аппаратную часть. И здесь естьнекоторая «золотая середина». Программно эмулировать локальный термоДКDIOCPUрегулятор не сложно, но это не дорогойISAблок и я бы все оставил, как на рис.К сети Ethernet1.21.
А вот регулируемый привод РППТсравнительно дорог, но если нет достаточного опыта разработки таких систем,Рис. 1.21.то пожалуй, разработка технической документации, программного обеспечения, изготовление, отладка и доводка управляющей приводом программы обойдутся гораздо дороже, не говоря о потраченном времени.1.2.3.4.5.Вопросы к экзамену.Микроконтроллер – основная структурная единица аппаратного обеспечения САУ.Состав и функции, выполняемые микроконтроллером.Центральные, узловые и локальные микроконтроллеры. Выполняемые функции и особенности построения.Локальные регуляторы, программируемые логические контроллеры, промышленныекомпьютеры и средства распределенного сбора данных и управления. Особенностипостроения и программирования.Типовые топологии управляющих сетей.Вариантность построения управляющих сетей.
Примеры.1.4. Последовательный процесс – основная структурная единицапрограммного обеспечения САУПрограммное обеспечение системы автоматического управления разделяют на системное и пользовательское. При разработке конкретной программы всегда пользуются некоторым набором утилит общего применения.
Это программы тестирования аппаратной частимикроконтроллера, утилиты для работы с плавающей точкой, диспетчеры задач для поддержания их исполнения в реальном времени и т.п. При программировании пользуются этимисистемными утилитами и подпрограммами и на их основе и с их поддержкой создают управляющую программу – программу пользователя, описывающую правила выполнения предписанных системе функций. Функция определяет цель некоторых действий.31Для достижения поставленных целей реализуют ряд процессов, т.е. решают ряд задач.Так, в рассмотренном ранее примере полуфабрикаты параллельно откачиваются, нагреваютсяи нагружаются. Прежде всего, введем и обсудим основные понятия и определения.Событие – это момент фиксации чего-либо важного для нас. Не слишком четкое определение, но говорящее о том, что это понятие субъективное.
Главное здесь, что событие моментально. ВвеСобытиедем важное допущение: два события не могут происходить одновременно. Если приняли, что событие моментально и представляет собой точку на оси времени,ПрограммноеВнешнеето вполне оправдано, что эти точки всегда различны исобытия следуют одно за другим. События выступаюткак следствия каких-либо действий, либо, как причинаЛокальноеСистемноедействий. Действия уже протяженны во времени и, поэтому могут протекать параллельно.Рис.
1. 22.События могут непосредственно определятьсяпрограммой (программные события) и быть внешними событиями по отношению к управляющей программе. Примером программного событияявляется появление новой информации после завершения выполнения очередной командыпрограммного кода.Для фиксации внешних событий в микроконтроллерах предусмотрен механизм прерываний, с которым Вы очевидно знакомы. Позже мы еще раз рассмотрим этот механизмввиду его важности для систем управления.
Существуют и другие способы фиксации внешних событий диспетчером процессов, но для нас пока это особого значения не имеет.Все события можно разделить на локальные, имеющие значение только для данногопотока, и системные (рис.1. 22). Системные события каких либо процессов (потоков) участвуют в инициализации действий в других процессах или потоках. Иначе говоря, событиеданного потока, или какое либо внешнее по отношение к управляющей программе событие(непосредственно не вычисляемое в ней), является системным, если оно обрабатываетсяядром операционной системы (диспетчером процессов) и может участвовать в перераспределении вычислительных ресурсов между потоками. На рис.1.22 показано, что внешнее событие не может быть локальным.
Прерывание, предусмотренное для фиксации внешнего события, всегда запускает подпрограмму обслуживания этого прерывания, в результате чего перераспределяются вычислительные ресурсы микроконтроллера. Если, конечно прерывание незапрещено, но тогда и внешнего события для системы управления не будет.Процесс в нашем понимании, это совокупность событий и действий, объединенныхобщей природой и причинно-следственными связями и направленных на достижения поставленной цели.
С принятой в стандарте POSIX (Portable Operation System Interface Exchange)точки зрения, процесс – это исполняемый программный код, расположенный в физическизащищенном объеме памяти.Последовательный процесс или поток (нить - thread) – это последовательность связанных событий и действий. Каждое событие является следствием предыдущих действий иинициатором последующих. Рассмотренный в примере с роботом автоматный граф являетсятиповым последовательным процессом или потоком.