Расчет системы управления электропривода
Задание на курсовую работу
В данной курсовой работе необходимо
выполнить расчет системы управления электропривода, разработать функциональную
и принципиальную схемы, составить программу работы системы на Ассемблере,
описать ее и реализовать на лабораторном стенде. Исходные данные приведены в
таблице 1.
Таблица 1 - Исходные данные
Мст, кг·см
|
Схема
|
Тип привода
|
Управление
|
Тип задания скорости
|
Кол-во дискретных скоростей, об/мин
|
Наличие реверса
|
Индикация
|
3
|
уни
|
скор
|
симметр
|
дискр
|
7:1/2/4/8/100/200/400
|
-
|
об/мин
|
Параметры выбранного шагового
двигателя приведены в таблице 2.
Таблица 2 - Каталожные данные
двигателя FL42STH47-0406A2
Рабочий ток/фаза, А
|
Сопротивление/ фаза, Ом
|
Индуктивность/ фаза, мГн
|
Крутящий момент, кг·см2
|
Длина, мм
|
Момент инерции ротора, г·см2
|
0,4
|
30
|
25
|
3,17
|
48
|
68
|
Оглавление
1. Функциональная схема
. Выбор типа управляющего устройства
. Разработка и описание принципиальной схемы системы управления
.1 Выбор требуемых источников питания
.2 Выбор силовых ключей
.3 Выбор коммутационной аппаратуры, элементов управления и
индикации
.4 Составление принципиальной схемы системы
. Расчет временных диаграмм работы элементов системы
. Разработка программы управляющего устройства (для контроллера
atmega8535)
.1 Описание выбора и расчета элементов программы
.2 Листинг программы
Библиографический список
1. Функциональная схема
Рисунок 1 - Функциональная схема
системы управления
.1 Описание функциональной схемы
Младшие четыре бита порта «A»
микроконтроллера устанавливаем на ввод сигналов с тумблеров:
РA0 - «разрешение»;
РA1, РA2, РA3 - на задание
скоростей.
Младшие четыре бита порта «B»
микроконтроллера устанавливаем на управление обмотками ШД:
РB0 - А+;
РB1 - В+;
РB2 - А-;
РB3 - В-.
Весь порт «D» определим на вывод на
сегменты индикаторов.
Младшие биты порта «С»
микроконтроллера - на вывод на катоды индикаторов:С0 - HG1;С1 - HG2;- HG3.
2. Выбор типа управляющего
устройства
В соответствие с функциональной
схемой количество входов-выходов
равно 19. В качестве управляющего
устройства был выбран микроконтроллер ATmega8535 фирмы Atmel. Его технические
данные приведены в таблице 3.
Таблица 3 - Технические данные
ATmega8535
№
|
Параметр
|
Значение
|
1
|
Память программ (FLASH), кБ
|
8
|
ОЗУ (Static RAM), байт
|
512
|
3
|
Память данных (EEPROM), байт
|
512
|
4
|
Рабочая тактовая частота, МГц
|
0…16
|
5
|
Напряжение питания, В
|
4,5…5,4
|
6
|
РОН
|
32х8
|
7
|
8-разрядный таймер/счетчик
|
2
|
8
|
16-разрядный таймер/счетчик
|
1
|
9
|
10-разрядный АЦП, каналов
|
8
|
10
|
Встроенный аналоговый компаратор
|
+
|
11
|
Программируемые входы/выходы
|
32
|
12
|
Внутренний RC-генератор
|
+
|
13
|
Внутренние и внешние источники прерывания
|
+
|
14
|
Последовательный интерфейс USART
|
+
|
15
|
Последовательный интерфейс SPI
|
+
|
16
|
Количество команд
|
130
|
17
|
Последовательный интерфейс I2C
|
+
|
18
|
ШИМ, каналов
|
4
|
Рисунок 2 - Назначение выводов
микросхемы
Назначение выводов:- сброс
микроконтроллера;- напряжение питания;- общий провод;, XTAL2 - подключение
кварцевого резонатора;- аналоговое питание для АЦП;- внешний источник опорного
напряжения для АЦП;…PA7 - Выводы порта А;…PB7 - Выводы порта B;…PC7 - Выводы
порта C;…PD7 - Выводы порта D.
Альтернативные функции выводов:СK -
внешний тактовый вход интерфейса USART;, T1 - входы таймеров Т0, Т1;, OC1A,
OC1B, OC2 - выходы таймеров Т0, Т1, Т2;- вход захвата таймера Т1;, INT1, INT2 -
входы внешних прерываний;, AIN1 - входы аналогового компаратора;- сетевой режим
по интерфейсу SPI;- выход интерфейса SPI;- вход интерфейса SPI;- тактовый вход
интерфейса SPI;, TXD - вход и выход USART;, SDL - линии последовательной
передачи данных и тактовых импульсов по шине I2C;, TOSC1 - выводы подключение
часового резонатора 32768 Гц;…ADC7 - каналы АЦП.
3. Разработка и описание
принципиальной схемы системы управления
.1 Выбор требуемых источников
питания
Произведем расчет тока,
потребляемого индикаторами. В данной работе используется 3 индикатора, в каждом
по 7 светодиодов. Ток светодиода 10-12 мА, следовательно, ток, необходимый для
полной индикации равен
инд=3·7·(10..12)= 210… 252 мА.
Напряжение питания микроконтроллера
+5 В. Следовательно, мощность, потребляемая индикаторами
инд=Uпит·Iпит=5·(0,21…0,252)=1,05…1,26 Вт. (1)
По мощности, напряжению питания и
току выбираем источник питания -5, приведем его технические параметры в таблице
4.
Таблица 4 - Технические параметры
источника питания PS-05-5
Параметр
|
Значение
|
Входное напряжение
|
85-264 В AC / 120-370 В DC
|
Выходное напряжение
|
DC 5 В
|
Выходной ток
|
1 А
|
5 Вт
|
Выберем источник питания для силовых
ключей.
Для симметричного управления напряжение
источника питания равно
ист.пит≥Iф·Rф,
(2)
где Iф - рабочий ток;ф
- активное сопротивление фазы выбранного шагового двигателя.
Uист.пит=Iф·Rф=0,4·30=12
В;
ист. пит.≥ Uист.пит·Iф; (3)
ист.пит·Iф =12·0,4=4,8 Вт.
По найденным значениям напряжения и
мощности выбираем источник питания PS-05-12. Его технические данные приведены в
таблице 5.
Таблица 5 - Технические параметры
источника питания PS-30-12
ПараметрЗначение
|
|
Входное напряжение
|
85-264 В AC / 120-370 В DC
|
Выходное напряжение
|
DC 12 В
|
Выходной ток
|
2,2 А
|
Мощность
|
40 Вт
|
3.2 Выбор силовых ключей
Произведем выбор исходя из условий
где k3=2..10.
В качестве силовых ключей был выбран
полевой транзистор с изолированным затвором и n-каналом IRLML2402, технические
параметры которого приведены в таблице 6, а схема - на рисунке 3.
Таблица 6 - Технические параметры
полевого транзистора IRLML2402
Параметр
|
Значение
|
Конфигурация и полярность
|
N
|
Напряжение сток-исток UDSS
|
20 В
|
Сопротивление открытого канала RDS
|
250 мОм
|
Ток стока ID
|
1,2 A
|
Время нарастания trr
|
9,5 с
|
Время спадания tf
|
4,8 с
|
Рисунок 3 - Схема полевого
транзистора с изолированным затвором
3.3 Выбор коммутационной аппаратуры,
элементов управления и индикации
В данной работе для задания
скоростей и сигнала разрешения используются тумблеры. Выбираем тумблер МТ1.
Технические параметры данного тумблера представлены в таблице 7.
Таблица 7 - Технические параметры
тумблера МТ1
Параметр
|
Значение
|
Ток
|
0,0005-4 А
|
Напряжение
|
0,5-30 В
|
Мощность
|
70 Вт
|
Масса
|
13 г
|
Для индикации выходных сигналов был
выбран семисегментный индикатор фирмы Kingbright BC56-11HWA. Его схема
приведена на рисунке 4, а технические параметры представлены в таблице 8.
Рисунок 4 - Схема семисегментных
индикаторов BC56-11HWA
Таблица 8 - Технические параметры
семисегментного индикатора BC56-11HWA
Параметр
|
Значение
|
Схема включения
|
общий катод
|
Цвет свечения
|
красный
|
Количество сегментов
|
8
|
Количество разрядов
|
3
|
Максимальное прямое напряжение
|
Максимальный прямой ток
|
25-30 мА
|
Максимальное обратное напряжение
|
5 В
|
Обратный ток
|
10 мкА
|
Мощность рассеивания
|
150 мВт
|
Макс. импульсный прямой ток
|
140-160 мА
|
3.4 Составление принципиальной схемы
системы
Выбор резисторов
Выберем резисторы для ограничения
тока, протекающего через семисегментный индикатор. Выбор произведем, исходя из
выражения:
Р = (U - Uсвд)·I;
Р = (5 - 2)·10·10-3 =
0,03 Вт.
Тогда сопротивление выбираемого
резистора равно:
Ом.
Выбираем резистор 0201 - 300 J фирмы
Faithful Link Industrial, технические параметры которого приведены в таблице 9.
Таблица 9 - Технические
характеристики постоянного резистора 0201 - 300 J
Параметр
|
Значение
|
Номинальное сопротивление
|
300 Ом
|
Допустимое отклонение от номинала
|
5%
|
Номинальная мощность
|
0,05 Вт
|
Рабочее напряжение
|
15 В
|
Максимально допустимое напряжение
|
50 В
|
Рабочий диапазон температур
|
- 55…+120ºС
|
Выбор конденсаторов
На выходе источника питания
устанавливаем фильтр, состоящий из параллельно соединенных электролитического и
керамического конденсаторов.
Выбираем электролитический
конденсатор TREC с диэлектриком SR на выход источника питания в 5 В для питания
семисегментного индикатора. Технические данные приведены в таблице 10.
Таблица 10 - Технические данные
электролитического конденсатора
Параметр
|
Значение
|
Рабочее напряжение, В
|
15
|
Ёмкость, мкФ
|
100
|
Диапазон ТРАБ, ºС
|
-40…+85
|
управление электропривод
Выбираем керамический конденсатор с
диэлектриком X7R фирмы SYFER на выход источника питания в 5В. Также выбранный
керамический конденсатор будем использовать в активном фильтре первого прядка,
установленном на входе микроконтроллера, для устранения паразитных емкостей, но
только меньшей емкости (15 пФ).
Технические данные занесены в
таблицу 11.
Таблица 11 - Технические данные
керамического конденсатора
ПараметрЗначение
|
|
Рабочее напряжение, В
|
10
|
Ёмкость, мкФ
|
0,1
|
Диапазон ТРАБ, ºС
|
-40…+85
|
4. Расчет временных диаграмм работы
элементов системы
В данном случае схема - униполярная,
режим - симметричный, а это значит, что в каждый момент времени включено одно
управляющее устройство. Временные диаграммы работы элементов исходной системы
представлены на рисунке 5.
Рисунок 5 - Временные диаграммы
напряжений на обмотках шагового двигателя
5. Разработка программы управляющего
устройства (для контроллера ATmega8535)
.1 Описание выбора и расчета
элементов программы
В данной работе производится
управление шаговым двигателем с дискретным изменением скоростей
n=1/2/4/8/100/200/400 об/мин.
Младшие четыре бита порта «A»
микроконтроллера устанавливаем на ввод сигналов с тумблеров:
РA0 - «разрешение»
РA1, РA2, РA3 - на задание
скоростей:
- 1 об/мин
- 2 об/мин
- 4 об/мин
- 8 об/мин
- 200 об/мин
- 400 об/мин
Младшие четыре бита порта «B»
микроконтроллера устанавливаем на управление обмотками ШД:
РB0 - А+
РB1 - В+
РB2 - А-
РB3 - В-
Порт «D» определим на вывод на
сегменты индикаторов:
PD0 - сегмент «А»- сегмент «В»-
сегмент «С»- сегмент «D»- сегмент «E»- сегмент «F»- сегмент «G»- сегмент «H»
Младшие биты порта «С»
микроконтроллера - на вывод на катоды индикаторов:
С0 - HG1С1 - HG2- HG3
В данной работе было использовано
два таймера по переполнению Т1 и Т2. Таймер Т1 используется для задания
скоростей, а таймер Т2 для динамической индикации.
Произведем расчет начальных значений
таймеров и коэффициента предделителя.
Остальные соотношения сведены в
таблицу 12.
Таблица 12 - Соотношения скоростей и
частот
n, oб/мин
|
f, Гц
|
1
|
3,3
|
2
|
6,6
|
4
|
13,2
|
8
|
26,4
|
100
|
330
|
200
|
660
|
400
|
1320
|
Для задания скоростей в данной
работе был выбран таймер по переполнению Т1.
) 1 об/мин
(4)
Принимаем Кдел=1024
(TCCR1B=0x05)
Тогда
(5)
или TCNT1L=0xBF, TCNT1H=0xF6.
) 2 об/мин
По формуле (4) TCNT1=64350 или
TCT1L=0x5E, TCNT1H=0xFB.
) 4 об/мин
По (5) TCNT1=64943 или TCT1L=0xAF,
TCNT1H=0xFD.
об/мин
По (5) имеем TCNT1=65239 или
TCT1L=0xD7, TCNT1H=0xFE.
) 100 об/мин
По (5) имеем TCNT1=65511 или
TCT1L=0xE7, TCNT1H=0xFF.
) 200 об/мин
По (5) имеем TCNT1=65523 или
TCT1L=0xF3, TCNT1H=0xFF.
) 400 об/мин
По (5) имеем TCNT1=65529 или
TCT1L=0xF9, TCNT1H=0xFF.
Рассчитаем значение частоты для
таймера Т2 по формуле
Выберем значение Кдел=64
(ТССR2=0х04), а ТСNТ2=0. Тогда частота таймера Т2:
5.2 Листинг программы
.include"m8535def.inc"
.cseg
.org 0 reset
.org 4;вектор прерывания Т2 T2
.org $008 ;вектор прерывания Т1T1;по
переполнению
.org $20
.def vhod=r19
.def star=r20
.def ml=r21
.def obmotka=r22
.def hg=r23
.def smesh=r24
reset:r16,$5F;инициализация
стекаspl,r16r16,$2sph,r16
ldi r16, $FF r17 DDRA, r17;порт В на
вход PORTA, r16; подтягиваем резисторыDDRС, r16 DDRB,
r16DDRD, r16; порты B,С и D на выход
; инициализация таймера
T2r16,0;остановка Т2TCCR2,r16TCNT2,r16;f=490 Гцr16, $04; Кдел=64
TCCR2,r16r16,$40;разрешение прерываний по переполнению Т1 и Т2TIMSK,r16
;инициализация Т1 r16,0
r17,$FFTCCR1A,r16; остановка таймера Т1TCCR1B,r16TCNT1L, r16TCNT1H,
r17r16,0x05TCCR1B,r16r16,0x44; разрешение прерываний по переполнению Т1 и
Т2TIMSK,r16
ldi r31,2obmotka, $01hg, $01
smesh;глобальное разрешение
main: vhod, PINA; в зависимости от
состояния входа задаем скоростьvhod,$0F
cpi
vhod,3skor1vhod,$05skor2vhod,$07skor3vhod,$09skor4vhod,$0Bskor5vhod,$0Dskor6vhod,$0Fskor7:star,$FFr30,0
rjmp main
skor1:r30,3star, $F6ml,$BFmain :r30,
$06star, $FBml,$5Emain :r30, $09star, $FDml,$AFmain :r30, $0Cstar, $FEml,
$D7main :r30, $0Fstar, $FFml, $E7main :r30, $12star, $FFml, $F3main :r30,
$15star, $FFml, $F9main
T1:
out TCNT1L, ml
out TCNT1H, star
clcPINA,0; если нет «разрешения»
(0-ой бит порта А) прыгай на меткуm2vhod,1;если скорость не задана прыгаем на
меткуm2obmotkaobmotka, $10met1obmotka,1:PORTB, obmotka:r26PORTB,r26:hg,
$08;перейти, если не равноmet2hg,$01smesh;очистка смещения:
add r30, smesh;задаем адрес цифры во
FLASHPORTD, r0;выводим код цифры на индикаторыPORTC, hg;задаем нужный катод
индикатора
clcsmesh;инкрементируем
смещениеhg;сдвигаем влево номер индикатора
.org $100 ;значение
адреса
.db
0x3F,0,0,0x06,0,0,0x5B,0,0,0x66,0,0,0x7F,0,0,0x3F, 0x3F, 0x06,0x3F, 0x3F, 0x5B,
0x3F, 0x3F, 0x66; запись кодов цифр во ФЛЕШ
;«0» - 0,0,0x3F
; «1» - 0,0,0x06
; «2» - 0,0,0x5B
; «4» - 0,0,0x66
; «8» - 0,0,0x7F
; «100» - 0x06,0x3F,0x3F
; «200» - 0x5B,0x3F,0x3F
; «400» - 0x66,0x3F,0x3F
Библиографический список
1 Хусаинов, Р.З. Программирование микроконтроллеров ATmega8535:
методические указания к выполнению лабораторных работ/ Р.З. Хусаинов, В.Б.
Садов. - Челябинск: Учебная техника - Профи, 2009 - 125 с.
2
<http://www.irf.com/product-info/datasheets/data/irlml2402.pdf>
<http://samou4ka.net/tag/ATmega8535>
<http://www.gaw.ru/html.cgi/txt/ic/Atmel/micros/avr/atmega8.htm>
<http://www.symmetron.ru/suppliers/resistors1/passive09-resistors-smd.pdf>
<http://www.efind.ru/icsearch/?search=0603%2010>
<http://www.syfer.apls.ru/about_syfer.html>