Скачиваний:
24
Добавлен:
10.12.2013
Размер:
712.7 Кб
Скачать

2.3. Разработка блок схемы алгоритмов программы микроконтроллера

Микроконтроллер должен обеспечивать программную поддержку следующих режимов работы АСВК:

  • запуск АСВК по включению питания;

  • контроль запуска вычислителя БУД по включению питания;

  • текущий контроль работы вычислителя БУД;

  • управление ситуацией отказа вычислителя и АО.

Текущий контроль должен выполняться циклически. Цикл совпадает с длительностью рабочего цикла БУД (длительность рабочего цикла регулятора составляет 0,02 сек.)

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

  • подпрограммы начального запуска МК

  • подпрограммы разрешения и ожидания прерываний (по таймеру и по FMC)

  • подпрограммы обработки прерывания по таймеру;

  • подпрограммы обработки прерывания по FMC;

  • подпрограммы режима аварийного останова двигателя.

Блок-схемы алгоритмов подпрограмм приведены ниже.

2.3.1. Алгоритм запуска асвк по включению питания

При подаче питания на модуль производится аппаратный сброс микроконтроллера (МК) в начальное состояние. При сбросе МК происходит блокировка коммутатора 16-ти выходных сигналов вычислителя, отключение ключом питания +5V выходных преобразователей сигналов управления и блокировка коммутатора сигналов аварийного останова (АО).

После сброса, МК запускается и выполняет подпрограмму начального запуска. Алгоритм приведен на рисунке (Рисунок 3).

Подпрограмма выполняет:

-исходную загрузку регистров и портов;

-установку метки начального запуска МК;

-установку и запуск контрольного таймера ;

-разрешает прерывания по таймеру и по сигналу от вычислителя БУД;

-включает сигналы индикации:

  • "Блокировка вывода",

  • "Незапуск вычислителя ",

  • импульсный сигнал "АСВК включен" (частота 2 Гц -тревожное мигание).

Далее МК переходит на подпрограмму ожидания прерываний.

2.3.2. Алгоритм контроля запуска вычислителя буд

Сразу после запуска МК ожидает сигнал FMC от БУД. Время ожидания не регламентировано.

Периодически МК переходит к выполнению подпрограммы обработки прерывания по сигналу своего таймера:

-установка служебных регистров таймера;

-опрос метки начального запуска;

-возврат на ожидание прерываний.

Алгоритм подпрограммы приведен на рисунке (Рисунок 5)

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

При получении сигнала FMC МК переходит к выполнению подпрограммы обработки прерывания по FMC.

Алгоритм подпрограммы приведен на рисунке (Рисунок 6). Подпрограмма сбрасывает метку начального запуска, обнуляет счетчик-фильтр контрольного времени, изменяет частоту индикации сигнала состояния АСВК (25 Гц), выключает индикацию незапуска вычислителя БУД и выполняет возврат из прерывания.

2.3.3. Алгоритм текущего контроля работы вычислителя

Далее подпрограмма обработки прерывания по таймеру осуществляет периодический текущий контроль состояния счетчика-фильтра. При превышении контрольного времени 0,1 секунды МК переходит к подпрограмме аварийного останова. При отсутствии превышения контрольного времени МК снимает команду блокировки коммутатора выходных сигналов вычислителя и ключа подачи питания +5 В на выходные преобразователи и возвращается на ожидание прерываний.

2.3.4. Алгоритмаварийного останова

При отказе вычислителя МК переходит на подпрограмму аварийного останова ГТУ.

Алгоритм подпрограммы приведен на рисунке (Рисунок 7)

  • МК блокирует выдачу управляющих сигналов от вычислителя на все ИМ-ы. Далее МК выдает команду блокировки коммутатора команд управления (выходит сигнал BL OUT1 в высокий уровень) и отключает питание (+5 В) выходных преобразователей;

  • при отсутствии сигнала блокировки аварийного останова BL AO микроконтроллер выдает команду на включение коммутатора сигналов управления АО.

  • формирует сигналы индикации:

  • "Блокировка вывода";

  • " Аварийный останов "- при отсутствии сигнала BL AO;

  • "АСВК включен "- при отсутствии сигнала блокировки аварийного останова BL AO этот сигнал имеет постоянный уровень (светодиод горит ярко, а не мигает, как при текущем контроле), при наличии сигнала BL AO светодиод гаснет.

Соседние файлы в папке Diplom3(подобие моего)