
- •1. Постановка задачи
- •2. Реализация поставленной задачи
- •2.1. Расчет массива данных угловой скорости двигателя
- •2.2. Подробная блок-схема алгоритма решения задачи для мп кр580вм80а
- •2.3. Описание алгоритма программы для мп кр580вм80а
- •2.4. Описание программы на языке Ассемблера и в машинных кодах мп кр580
- •2.5. Описание аппаратной реализации
- •3. Вывод
- •Список используемой литературы:
Оглавление
1. Постановка задачи 3
2. Реализация поставленной задачи 8
2.1. Расчет массива данных угловой скорости двигателя 11
2.2. Подробная блок-схема алгоритма решения задачи для МП КР580ВМ80А 12
2.3. Описание алгоритма программы для МП КР580ВМ80А 15
2.4. Описание программы на языке Ассемблера и в машинных кодах МП КР580 16
2.5. Описание аппаратной реализации 18
3. Вывод 19
Список используемой литературы: 20
1. Постановка задачи
Программным способом реализовать датчик угловой скорости вращения электродвигателя. Данные для реализации поставленной задачи приведены в таблице 1.
Таблица 1
Вариант |
nmax , об/мин |
nmin , об/мин |
n1 |
@1 |
@2 |
Ошибка, % |
22 |
100 |
10 |
100 |
9E |
9F |
0,5 |
Где:
nmax – максимальная скорость вращения электродвигателя (об/мин);
nmin – минимальная скорость вращения электродвигателя (об/мин);
n1 – число импульсов на один оборот;
@1 – адрес порта ввода сигнала с датчика (port1);
@2 – адрес порта вывода значения скорости вращения электродвигателя (port 2);
Ошибка – заданная максимальная погрешность определения скорости вращения электродвигателя.
2. Анализ поставленной задачи
Согласно поставленной задаче в нашем распоряжении есть некоторый функциональный элемент, который преобразует вращательные движения двигателя в электрический дискретный сигнал или же в импульсный сигнал, то есть в конкретный момент времени сигнал будет иметь либо высокий, либо низкий уровень. Следовательно, для обработки данного сигнала нам будет необходимо микропроцессорное устройство (МПУ), которое будет осуществлять функции получения, обработки и передачи информации. За основу МПУ возьмем микропроцессор КР580ВМ80А. Данный микропроцессор с фиксированной системой команд имеет раздельные 16–разрядный канал адреса и 8–разрядный канал данных. Канал адреса обеспечивает прямую адресацию внешней памяти объёмом до 65536 байт, 256 устройств ввода и 256 устройств вывода. В состав блока регистров входят: 16–разрядный регистр адреса (РС), 16–разрядный регистр указателя стека (SP), 16–разрядный регистр временного хранения (WZ), 16–разрядная схема инкремента–декремента, и шесть 8–разрядных регистров общего назначения (РОН) – B, C, D, E, H, L которые могут использоваться и как три 16–разрядных регистра – BC, DE, HL. Штатная тактовая частота – 2 МГц. Ресурсов данного процессора достаточно для реализации поставленной задачи.
Рисунок 1. Схематичное изображение МПУ
Как было описано выше МПУ будет получать сигнал в порт ввода расположенный по адресу 9E, сигнал будет представлять собой последовательность импульсов с некоторой частотой f и периодом T:
(1)
Согласно (1) зная фиксированную величину n1 – число импульсов на оборот, нам необходимо получить из поступившего сигнала f и T. Для получения этих данных существует алгоритм:
1. Определить момент времени начала импульса по высокому или низкому уровню;
2. С фиксированной дискретой
выполнить опрос длительности периода
T до момента
окончания периода, при этом зафиксировать
число опросов N;
3. По выражению
выполнить расчет длительности периода,
где
– расчетная величина периода следования
импульсов;
4. По выражению (1) осуществить расчет угловой скорости вращения двигателя.
Стоит отметить, что погрешность δ расчета не должна превышать заданную и может быть вычислена из выражения:
(2)
Б
олее
наглядное представление алгоритма дает
рис. 2 где видно что фиксированная
дискрета
должна быть выбрана такой, что бы дать
достаточную точность опроса на всех
значениях скорости двигателя, а самое
главное на максимальной, где длительность
периода импульса будет наименьшей.
Рисунок 2. Временная диграмма поступающего сигнала.
Очевидно, что значение дискреты опроса обусловлено двумя основными факторами:
1. Допустимая погрешность расчетов;
2. Скорость выполнения программы опроса.
Так как погрешность нам задана, то основной задачей становится написание программы использующей минимальное количество процессорного времени и способной оперативно и точно обрабатывать изменяющийся сигнал.