Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

мпсу / Практические занятия pdf / Практика модуль 1 МПСУ

.pdf
Скачиваний:
18
Добавлен:
10.06.2015
Размер:
829.34 Кб
Скачать

Таблица 2.5

Проверка на нечетность и четность

Десятичное число

ДКД – код

Проверочный бит

 

 

8-4-2-1

 

 

 

 

нечетность

 

четность

 

 

 

 

 

 

 

 

0

0000

1

 

0

1

0001

0

 

1

2

0010

0

 

1

3

0011

1

 

0

4

0100

0

 

1

5

0101

1

 

0

6

0110

1

 

0

7

0111

0

 

1

8

1000

0

 

1

9

1001

1

 

0

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

Кодирование букв и других символов (ASCII коды). Для представления в двоичной форме букв и других символов, которые расположены на клавиатуре периферийных устройств, применяются различные коды. Наиболее широко используется в микропроцессорных системах ASCII (American Standard Code For Information Interchange) код – Американский стандартный код для информационного обмена (отечественный аналог КОИ-8).

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

Задачи к разделу

2.5.1.Перевести следующие двоичные числа 101101; 0,101110; 110,101 в

десятичные.

2.5.2.Определить двоичные эквиваленты следующих десятичных чисел: 123;

0,28125; 224,375.

2.5.3.Записать соотношение (2.4) в общей форме, пригодной для систем счисления с любым основанием b.

2.5.4.Сравнить соотношения (2.2) и (2.5) и доказать справедливость алгоритма «выделения двоек» для перевода двоичных чисел в десятичные.

2.5.5.В следующих двоичных числах: 1 101 0,01; 0 1010,01; 1 110010; 0110010; 10100,11; 00100,11 применить соотношения (2.6) – (2.9) для определения их десятичных эквивалентов. Считать, что эти числа записаны

а) в соответствии с представлением знака и величины; б) в коде с дополнением до 1; е) в коде с дополнением до 2.

2.5.6.Выразить следующие числа: 1001,510; 85310; 0,15310; 52,062510 в виде двоичных чисел, представленных знаком и величиной, в коде с дополнением до 1 и

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

11

Практика №2.

РАЗРАБОТКА АЛГОРИТМОВ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ

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

Первым шагом на пути разработки системы автоматического Управления технологическими процессами является уточнение целей, а также задач, которые система должна решать. Нужно сделать перечень действий, которые должны выполняться системой. Технологу нужно детально распланировать последовательность процедур измерения, отображения и выработки управлений. Необходимо уточнить как можно подробнее и, по возможности, математически строго все логические связи между причинами и следствиями. Желательно это иметь примерно в таком виде: «если кнопка А нажата и реле В замкнуто, то должна включиться сигнальная лампа Н и через 5 с (или 10, 20 и т. д.) должен заработать двигатель М».

Разработка микропроцессорной системы автоматического управления технологическими процессами состоит из следующих этапов: 1) выработки базовой концепции; 2) разработки алгоритма управления; 3) проектирования аппаратных средств; 4) написания и кодирования рабочих программ.

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

3.1. Выработка концепции системы

Выработка базовой концепции начинается с принятия решения о том, что должно быть создано: система автоматического управления (САУ) или автоматизированная система управления (АСУ).

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

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

12

действия очевидны.

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

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

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

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

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

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

13

Рис. 3.1. Получение дискретных значений непрерывно изменяющейся величины

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

Режимы использования микропроцессоров в системах управления' технологическими процессами могут быть следующими:

1)система сбора данных;

2)советчик оператора;

3)супервизорное управление;

4)непосредственное цифровое управление.

Система сбора данных. Система сбора данных, или автоматическая информационная система (АИС), является одной из простейших форм использования микропроцессоров. В этом случае интересующие технолога параметры производственного процесса преобразуются в цифровую форму, воспринимаются подсистемой ввода и перемещаются в ЗУ. Микропроцессор производит логическую обработку и преобразование поступившей информации. Результаты вычислений, которые могут быть использованы для управления, обычно индицируются на экране дисплея или печатаются в форме, удобной для восприятия человеком-оператором.

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

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

14

уточнения модели процесса почти всегда включается в качестве одной из задач системы.

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

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

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

Рис. 3.2. Схемы работы микропроцессора в режиме советчика оператора (а) и супервизора (б)

Так как оператору приходится самому изменять уставки регуляторов, число управляемых переменных должно быть сравнительно невелико. Пытаться подстраивать, например, 100 уставок каждые 5 мин возможно, но, конечно, нецелесообразно. Неразумно предполагать, что работа в таком темпе может безошибочно выполняться всю рабочую смену. Таким образом, одним из серьезных недостатков рассматриваемого режима использования микропроцессора в АСУ ТП являются ограничения, связанные с участием человека.

Супервизорное управление. Следующим по сложности применением микропроцессора в АСУ ТП является режим супервизорного управления. При этом микропроцессор работает в замкнутом контуре, т. е. выходы системы управления связаны с технологическими агрегатами и все уставки регуляторов осуществляются непосредственно системой (рис. 3.2, б). Работа входной части данной системы мало отличается от описанной выше в режимах АИС и советчика оператору. Однако,

15

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

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

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

3.2. Уровни детализации алгоритм

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

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

1)концептуальную блок-схему;

2)функциональную схему;

3)структурную схему машинных команд.

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

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

16

относительно простой.

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

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

Рис.3.3. Основные символы блок-схем алгоритмов: а — функциональный оператор; б — логический оператор

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

Логический оператор изображается ромбом, внутри которого также записывается его характеристика (рис. 3.3, б). Логический оператор имеет один вход и два выхода, на линиях которых записывается «Да», когда условие выполняется, и «Нет», когда не выполняется. Обычно считается, что последовательность выполнения алгоритма (передача управления) — вниз и вправо, но в случае необходимости ее можно изменить, указав соответствующими стрелками.

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

17

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

В качестве примера разработки простого алгоритма управления технологическим процессом рассмотрим задачу из области создания АИС. На рис. 3.4 показана схема сбора информации о параметрах процесса, непрерывно измеряемых некоторым числом датчиков. Для конкретности можно считать, что это измерение температуры в 16 различных точках агрегата, хотя принципиально ничего не изменится, если будет измеряться не температура, а какая-то другая физическая величина и датчиков окажется больше или меньше. В концептуальном отношении прежде всего надо решить вопрос, будет ли сбор информации производиться непрерывно, путем последовательного опроса всех датчиков через какие-то интервалы времени, или же показания будут считывателя только тогда, когда какая-либо величина изменила свое значение и сообщает об этом центральному процессору.

Рис. 3.4. Схема сбора информации Первый случай называют «программным опросом», а второй «запросом

устройства ввода» или «прерыванием от источника информации» Концептуальная блок-схема алгоритма управления с программным опросом представлена на рис. 3.5. Выражения в прямоугольниках и стрелки показывают последовательность событий в программе. Прямоугольники пронумерованы для удобства описания схемы (см. ниже) Последняя часть алгоритма для данного примера представляет собой схему задержки, вырабатывающую временные интервалы длительностью Т с, чтобы определять моменты времени, в которые надо снимать фиксированные отсчеты текущих значений параметров. Эти интервалы времени могут быть одинаковыми для всех датчиков, например 5 с, или же периодичность опроса каждого датчика (или каждой группы датчиков) задается программно. Для формирования временной задержки должен быть разработан специальный алгоритм (подпрограмма), Для системы с запросом датчиков (рис. 3.6) необходимо раз- работать соответствующие программы обслуживания прерываний. Отметим, что здесь нет программно определяемой задержки времени. Такая система просто ждет сигнала запроса от устройства ввода, чтобы начать работу.

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

18

команд, как правило, превышает по объему функциональную не более чем в три раза.

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

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

Рис. 3.5. Концептуальная блок-схема программно-управляемого сбора информации

Рис. 3.6. Концептуальная блок-схема сбора информации с запросом датчиков В начале работы считывается значение параметра (входного слова) и

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

19

рис. 3.7, подразумевает, что текущее слово можно сравнить со словом, хранящимся в памяти, и результат представить в виде сигнала состояния. Если различие отсутствует, то содержимое входного счетчика увеличивается на 1 и проверяется) все ли слова уже испытаны. Далее следует программное возвращение к начальной точке для считывания следующего входного олова.

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

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

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

20