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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информатика, ВТ, телекоммуникации
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,05 Мб
  • Опубликовано:
    2012-11-06
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Федеральное агентство по образованию

Рязанский государственный радиотехнический университет

Кафедра АИТУ









Курсовая работа

по дисциплине: «Микропроцессорные устройства систем управления»

на тему: «Микроконтроллерная система управления трехобмоточным бесколлекторным двигателем постоянного тока»

 

Выполнил:

ст. гр. 630 Лапшин Н.Н.

Проверил:

Муравьёв С.И.

 

 



Рязань 2009

Оглавление

Исходные данные

Введение

. Структура микроконтроллера семейства MCS-51

. Управление трехфазным бесколлекторным электродвигателем постоянного тока с использованием датчиков

. Структурная схема

. Принципиальная схема системы управления

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

. Описание алгоритма программы

. Текст программы

Библиографический список

Исходные данные

 

1

Тип МК

MCS-51

2

Число аналоговых входов

2

3

Частота дискретизации

40 Гц

4

Число дискретных входов

10

5

Число аналоговых выходов

1

6

Число дискретных выходов

8

7

Частота передачи по UART

8000 Гц

8

Тип ЖК монитора

2 строки, ≥ 12 символов в строке

9

Разрядность АЦП

8

10

Разрядность ЦАП

8

11

Программный модуль

Организовать логику управления 3-я обмотками мотора в соответствии с направленным графом

 

Введение


В настоящее время в системах управления и обработки данных все чаще применяются микроконтроллеры, решающие широкий спектр задач. Однокристальные микроконтроллеры (ОМК) являются наиболее массовым видом устройств современной микропроцессорной техники, годовой объем выпуска которых составляет более 2,5 млрд. штук. Интегрируя на одном кристалле высокопроизводительный процессор, память и набор периферийных схем, ОМК позволяют с минимальными затратами реализовать высокоэффективные системы и устройства управления различными объектами (процессами). МК в системах управления обеспечивает достижение высоких показателей технической эффективности при малых материальных затратах. Применение однокристальных микроконтроллеров позволяет перенести основные затраты, связанные с разработкой встраиваемых систем управления, из аппаратной в программную область. Структурная организация, набор команд и аппаратурно-программные средства ввода/вывода информации микроконтроллеров лучше всего приспособлены для задач управления и регулирования в приборах.

МК-51 имеет в своем составе аппаратные средства: процессор, в состав которого входят 1-байтное АЛУ и схемы аппаратурной реализации команд умножения и деления; стираемое ПЗУ программ емкостью 4 Кб, ОЗУ данных емкостью 128 байт; два 16-битных таймер/счетчика; программируемые схемы ввода/вывода (32 линии); блок двухуровневого векторного прерывания от пяти источников; асинхронный канал дуплексного последовательного ввода/вывода информации со скоростью до 375 кбит/с; генератор, схему синхронизации управлением.

 

1. Структура микроконтроллера семейства MCS-51


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

Рис.1. Структурная схема MCS-51

Базовая конфигурация микроконтроллера представлена на рис. 1. Она содержит общие для всего семейства MCS-51 периферийные устройства. В состав микроконтроллера входят: 8-разрядный центральный процессор ЦП; два 16-разрядных таймера/счетчика; система двухуровневого прерывания; последовательный порт ввода/вывода; четыре 8-разрядных параллельных порта, у которых каждую из 32 линий можно настроить на ввод или вывод, а 24 линии могут выполнять альтернативные функции. Внутренние ПЗУ программ IROM и ОЗУ данных IRAM имеют минимальный объем 4 Кбайта и 128 байт соответственно. Базовая конфигурация содержит встроенные средства расширения своих ресурсов, позволяющие реализовать вне кристалла память программ EROM и память данных ERAM до 64 Кбайт каждая. Все расположенные на кристалле устройства подключены к внутренней мультиплексированной шине данных ШД. В любой момент к шине может быть подключен только один источник данных. Для этого выходы всех источников должны иметь третье состояние. Число подключаемых приемников ограничено нагрузочной способностью шины.

Для сокращения ширины физического интерфейса (числа контактов ИС) линии параллельного порта выполняют альтернативные функции. При обращении к внешней памяти порт P0 выполняет функции совмещенной шины адреса/данных (AD), а P2 - шины старшего байта адреса (A). Все линии порта P3 выполняют альтернативные функции управления и специального ввода/вывода (AF).

Условное графическое обозначение MCS-51

 

Рис. 2. Условное графическое обозначение MCS-51

Выводы микросхемы MCS-51 имеют следующие назначения (см. табл. 1).

Таблица 1. Назначение выводов MCS-51


2. Управление трехфазным бесколлекторным электродвигателем постоянного тока с использованием датчиков

микроконтроллер управление электродвигатель датчик

Введение.

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

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

В данных рекомендациях по применению описывается управление БКЭПТ с использованием датчиков положения на эффекте Холла (для простоты далее упоминаются как датчики Холла). В рассматриваемой реализации учитывается, как управление направлением, так и управление частотой вращения с разомкнутым контуром.

 

Рисунок 3. ATmega48 управляет БКЭПТ с использованием датчиков Холла

 

Принцип действия.

Управление БКЭПТ с использованием датчиков положение можно реализовать путем использования микроконтроллерных встроенных аппаратных ресурсов, в т.ч. аналогово-цифровой преобразователь и таймер с ШИМ-выходом. Микроконтроллер Atmel ATmega48 охватывает в достаточной мере требования управления БКЭПТ, при этом оставляя ресурсы и для решения других задач. К числу прочих задач можно, например, отнести связь посредством протоколов УАПП, SPI или TWI.

Трехфазный БКЭПТ состоит из статора с определенным количеством обмоток. Фундаментальный трехфазный БКЭПТ использует три обмотки (см. рисунок 3). Обычно эти обмотки обозначаются, как U, V и W. У многих двигателей фундаментальное число обмоток размножается в целях уменьшения шага вращения и снижения пульсаций вращающего момента.

Ротор БКЭПТ состоит из четного числа постоянных магнитов. Количество полюсов магнитов в роторе также определяет размер шага вращения и пульсации вращающего момента. Большее число полюсов дает меньшие шаги вращения и меньшие пульсации вращающего момента. На рисунке 4 показаны различные конфигурации двигателей с более чем одним фундаментальным наборов обмоток и несколькими полюсами.

 

Рисунок 4. БКЭПТ различных типов (двигатель (a) содержит два фундаментальных набора обмоток и четыре полюса, двигатель (b) использует три набора обмоток и восемь полюсов, а двигатель (c) построен на четырех наборах обмоток и восьми полюсах)

 

Тот факт, что обмотки установлены стационарно, а магниты вращаются, делает БКЭПТ более легкими относительно ротора обычного универсального ЭПТ, в котором обмотки располагаются на роторе.

Функционирование фундаментального БКЭПТ.

В целях упрощения описания работы трехфазного БКЭПТ рассмотрим его функционирование только с тремя обмотками.

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

Трехфазные БКЭПТ характеризуются шестью состояниями коммутации. Когда все шесть состояний в последовательности коммутации выполнены, то для продолжения вращения последовательность повторяется. Последовательность определяет полное электрическое вращение. У двигателей с несколькими полюсами электрическое вращение не соответствует механическому вращению. Четырехполюсный БКЭПТ использует четыре электрических цикла вращения для выполнения одного механического вращения.

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

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

 

Рисунок 5. Электрический ток, протекающий через обмотки/магнитное поле, генерированное обмотками U, V и W в ходе изменения 6 коммутационных состояний, а также выходные сигналы датчиков Холла

 

Процесс коммутации БКЭПТ управляется электроникой. Самый простой способ управления коммутацией - поиск соответствия требуемого состояния выходов в зависимости от состояния датчиков положения, расположенных внутри двигателя. Обычно используются датчики Холла. Датчики Холла изменяют состояние своих выходов, когда необходимо выполнить переключение обмоток (см. рисунок 5).

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

 

. Структурная схема


Структурная схема, разработанная с учетом поставленной задачи, представлена на рис. 6.

Рис. 6. Структурная схема системы управления


Рис. 7. Принципиальная схема системы управления

 

5. Блок-схема алгоритма программы

Рис. 8. Блок-схема алгоритма программы

 

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

 

. Описание алгоритма программы


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

Обращение к выводам датчика Холла происходит через определенно заданные промежутки времени, которые зависят от частоты дискретизации. Данную задачу удобно решить при помощи использования таймер-счетчика T/C0. T/C0 используется для отсчета периода дискретизации в 0,025 секунды.. Для этого подойдет второй режим работы T/C0. При этом на T/C0 импульсы приходят с частотой . Тогда, период импульсов на T/C0 равен с. Для задания интервала в 0,025 секунды нужно выдержать  импульсов. Требуется посчитать импульсов, для этого нужно задать начальное значение 65535 -23040 = 42495. В 16-ричном формате это число равно A5FF. Поэтому начальное значения TH0 = A5, а TL0 = FF.

Значения, полученные с выводов датчиков Холла, условно хранятся в памяти программ. После передачи их в микропроцессор они будут переданы в регистр R7. После чего будет происходить сравнение с этим значением и, в зависимости от результат, будет определёны выходные значения. Они будут записаны в порт ввода/вывода P0. После этого произойдет запуск таймера.

7. Текст программы

 

; Курсовой проект

; -----------------------

;

;

CHISLO1 EQU EQU 65535-CHISLO1

;

;

;

;

; Начало программы00H ;следующая команда записывается по нулевому адресуWORK ;переход к подпрограмме настройки таймер-счетчика

;и системы прерываний

;0BH ;следующая команда записывается по адресу 0BH

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

;от таймера-счетчика 0

;100H ;следующая команда записывается по адресу 100H

;: ;настройка таймер-счетчика и системы прерыванийTR0TR1 ;остановка таймеровIP,#0 ;устанавливаем все приоритеты низкимиIE,#0 ;запрещение всех прерываний

MOV TMOD,#00000001B

MOV DPTR,#65535

MOV TL0,DPLTH0,DPH ;помещаем в таймер число 65536-CHISLO1ET0 ;разрешение прерываний на ET0EA ;глобальное разрешение прерыванийTR0 ;старт таймера 0

;

;$ ;Организация бесконечного цикла

;

;: ;подпрограмма обработки прерыванияTR0 ;остановка таймераEA ;остановка прерыванийPSWACC ;сохранение изменяющихся регистров в стекеDPLDPH

• MOVC A,@A+DPTR ;Передача данных из памяти программA,#07H ; Зануление всех разрядов после третьегоR7,A ;Запись в один из регистров значение полученного с датчика ХоллаIZMVIHODA ;переход в подпрограмму формирования выходных величин

MOV DPTR,#CHISLOTL0,DPL

MOV TH0,DPH ;помещаем в таймер число 65536-CHISLO1

POP DPHDPLACC

POP PSW ;последовательное восстановление регистров из стекаEA ;разрешаем прерыванияTR0 ;старт таймера 0;выход из подпрограммы системы прерывания

;

;: ;подпрограмма формирования значений на U,W,Q выходах в зависимости

;от данного значения последовательностиVOZV ;переход в подпрограмму передачи входного значения в аккумуляторA,#05VIH1 ;если часть последовательности не первая, то переход к следующей проверки

;значения последовательностиVOZV ;переход в подпрограмму передачи входного значения в аккумуляторA,#01VIH2 ;если часть последовательности не вторая, то переход к следующей проверки

;значения последовательностиVOZV ;переход в подпрограмму передачи входного значения в аккумуляторA,#03VIH3 ;если часть последовательности не третья, то переход к следующей проверки

;значения последовательностиVOZV ;переход в подпрограмму передачи входного значения в аккумуляторA,#02VIH4 ;если часть последовательности не четвертая, то переход к следующей проверки

;значения последовательностиVOZV ;переход в подпрограмму передачи входного значения в аккумуляторA,#06VIH5 ;если часть последовательности не пятая, то переход на шестую часть

;последовательностиVIH6:P1,#00001001B ;формирования значений на выходе для первой части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:P1,#00100001B ;формирования значений на выходе для второй части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:P1,#00100100B ;формирования значений на выходе для третьей части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:P1,#00000110B ;формирования значений на выходе для четвертой части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:P1,#00100010B ;формирования значений на выходе для пятой части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:P1,#00110000B ;формирования значений на выходе для шестой части

;последовательностиVIH7 ;переход на метку выхода из подпрограммы:;выход из подпрограммы формирования выходных сигналов:A,R7 ;помещение в аккумулятор значения, поступившее с датчиков ХоллаC ;обнуление флага переноса;выход из подпрограммы;конец программы

Библиографический список

1.   Микроконтроллеры? Это же просто! Т.1. А.В. Фрунзе, М., 2002г., 336 с.

2.       Программирование на языке ассемблера для микроконтроллеров семейства i8051. Каспер Э., М., 2004г., 192с.

.        Микроконтроллеры семейства MCS-51: Архитектура, программирование, отладка. Учебное пособие. Ю.П. Соколов, РГРТА, Рязань, 2002г.. 72с.

Похожие работы на - Микроконтроллерная система управления трехобмоточным бесколлекторным двигателем постоянного тока

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!