Проектирование схемы контроля работы бытовой стиральной машины
Роль микроконтроллеров в современных системах управления. Проектирование схемы на основе микроконтроллера Aduc812, которая будет контролировать работу бытовой стиральной машины. Элементная база, описание и функционирование программы, ее листинг.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 23.12.2012 |
Размер файла | 101,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
23
Размещено на http://www.allbest.ru
Проектирование схемы контроля работы бытовой стиральной машины
Содержание
Введение
1.Техническое задание
2 Описание устройства
3. Выбор элементной базы
3.1 Выбор контроллера
3.2 Выбор датчика температуры
3.3 Выбор датчика уровня воды
3.4 Выбор ЖКИ
4. Распределение портов ввода/вывода контроллера
5.Описание и функционирование программы
Листинг программы
Введение
Функционирование современных систем управления немыслимо без использования микроконтроллеров. МК полностью вытеснили собой элементы жёсткой логики, которая не может полностью удовлетворить потребности современных систем. Основной недостаток жёсткой логики является то, что при изменении (даже незначительном) в алгоритме работы системы повлечёт за собой существенные изменения принципиальной схемы. Очевидно, что МК не обладают этим недостатком. Кроме того, многие МК имеют встроенные АЦП, ЦАП, таймеры и другие полезные элементы, над реализацией которых уже не приходится задумываться. Более того, МК относительно недороги и могут использоваться даже в простых устройствах, требующих тем не менее постоянного контроля.
Из вышесказанного очевидны преимущества использования МК.
1. Техническое задание
Необходимо спроектировать схему на основе микроконтроллера Aduc812, которая будет контролировать работу бытовой стиральной машины. Исходя из требований, предъявляемых к стирке, можно сформулировать последовательность функций, которые должна реализовывать МПС:
1.Установка параметров для всех режимов:
a) для замачивания- длительность и температура режима.
b) для стирки- задаются аналогичные параметры ,что и для замачивания ,а также выбирается тип режима (мягкая ,грубая ткань ,шерсть, белье и нормальный режим).
c) Полоскание----------
d) для отжима -задается время отжима и скорость оборотов двигателя.
2.Забор необходимого количества воды ,уровень которой контролируется датчиками уровня воды. Вода заливается самотекам при открытии клапана ,а выкачивается насосом.
3.Нагрев воды до температуры заданной в режимах замачивания и стирки осуществятся с помощью нагревательного элемента (электрическая спираль).и контролируется датчиком температуры .
4. Вращения барабана осуществляется с помощью двигателя ,скорость и направление вращения завися от режима и типа стирки и задаются шим.
5.Задаваемые параметры отображаются ЖКИ дисплее на нем же отражается остаток времени для конца, действующего режима.
6.Задаются параметры режимов с помощью клавиатуры, при этом во время выполнения режимов она не блокируется, что позволяет изменять текущее значение остатка временя для действующего режима.
2 Описание устройства
2.1Описание функциональных клавиш
- start -запуск стиральной машинки.
- P1 осуществляет переключение в режим задания параметров для замачивания.
- Р2 осуществляет переключение в режим задания параметров для стирки.
- Р3 осуществляет переключение в режим задания параметров для полоскания.
- +, - осуществляют увеличение/уменьшение значении соответствующих параметров заданных по умолчанию ,а осуществляют выбор режима стирки .
ок - осуществляет подтверждение установленных параметров.
2.2 Задание параметров
1) Режим замачивания требует задания 2-х параметров (температуры и времени).При этом на ЖКИ выводится следующее сообщение :
В |
в |
е |
д |
и |
т |
е |
в |
р |
е |
м |
я |
||||
З |
а |
м |
а |
ч |
и |
в |
а |
н |
и |
я |
1 |
2 |
0 |
При этом время указывается в минутах (по умолчанию 120 минут) .Данное значение можно увеличить или уменьшить с помощью клавиш “+”,” -“ и затем необходимо подтвердить установленное значения клавишей “ОК “.
Далее вводится температура замачивания :
В |
в |
е |
д |
и |
т |
е |
т |
е |
м |
п |
е |
р |
|||
З |
а |
м |
а |
ч |
и |
в |
a |
н |
и |
я |
0 |
4 |
0 |
Температура замачивания указывается в градусах Цельсия (по умолчанию 40 градусов).
2) Режим стирки требует задания 3-х параметров (температуры, времени, режима стирки).
Температура и время стирки задаются аналогично задания данных параметров для режима замачивания.
Выбор режима стирки (мягкая ,грубая ткань, шерсть , белье и нормальный режим) ,осуществляется перебором ,с помощью клавиш “+”,”-“, данных режимов .
При этом на ЖКИ выводится следующие сообщение :
В |
в |
е |
д |
и |
т |
е |
р |
е |
ж |
и |
м |
||||
с |
т |
и |
р |
к |
и |
м |
я |
г |
к |
а |
я |
При нажатии клавиш +,- меняется только название режима. Подтверждение выбранного режима осуществляется клавишей “ОК”.
3)режим отжима требует задания 2-х параметров(времени и скорости вращения барабана стиральной машинки ).
Время задается аналогично заданию данного параметра в режимах замачивания и стирки .
При задании старости вращения на ЖКИ выводится следующее сообщение:
В |
в |
е |
д |
и |
т |
е |
? |
? |
? |
? |
? |
? |
|||
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
? |
2.3 Запуск стиральной машины
После запуска (при нажатии клавиши start) стиральная машина переходит в автоматический режим и выполняет заданную программу:
1)на замачивании по умолчанию включено медленное вращение барабана
2)на экране отображается режим и его параметры:
З |
а |
м |
а |
ч |
и |
в |
А |
н |
и |
е |
|||||
Т |
е |
м |
п |
е |
р |
4 |
0 |
В |
р |
е |
м |
я |
Время каждую минуту убывает на единицу и по достижению нулевого значения переходит на следующий шаг.
Во время исполнения режима клавиатура не блокируется и мы можем с помощью клавиш “+” ,“-“ изменять значение времени для данного режима.
3. Выбор элементной базы
Для реализации заданной МПС необходимы следующие элементы:
- Микроконтроллер Aduc812.
- ЖКИ фирмы Hitachi серии 44780
- 3 инвертора
- датчик температуры
- Нагревательный элемент (электрическая спираль) с блоком управления
- Насос с БУ
- Двигатель с БУ
- Клапан с БУ.
- Шести кнопочная клавиатура для задания необходимых параметров .
- ЖКИ фирмы Hitachi серии 44780
- Датчики уровня воды
- Стабилизатор K145EH5A.
3.1 Выбор Контроллера
Для реализации МПС выбран МК Aduc812. Это контроллер по своим параметрам полностью подходит для выполнения поставленной задачи, имеет небольшую стоимость , и программируется на языке PL/M-51.
Технические характеристики:
Общее описание:
Микроконтроллер ADuC812: интегральная 12- разрядная система сбора информации ,включающая в себя 3 счетчика таймера, 8-ми канальный 12-ти разрядный АЦП и два 12-ти разрядных ЦАП, 8 Кб FLASH ПЗУ, 640 байт FLASH данных, 256 Байт внутреннего ОЗУ. Позволяет адресовать 16 Мб внешнего ОЗУ и 64 Кб памяти программ. Система прерываний имеет 9 источников, 2 уровня приоритетов.
Память
8 Кбайт Flash памяти программ
640 байт Flash памяти данных
Внутренний генератор подкачки заряда
256 байт внутренней памяти данных
16 Мбайт пространства внешней памяти данных
64 Кбайт пространства внешней памяти программ
Аналоговый ввод/вывод
8-канкльный прецизионный 12-разрядный АЦП
Встроенный 200ppm/oC ИОН
Высокая скорость выборок 200 к SPS
Контроллер канала ПДП к внешней памяти данных
Два 12-разрядных ЦАП с вольтовым выходом
Внутренний температурный сенсор
8051-совместимое ядро
12МГц номинальная частота [16 МГц- макс.]
Три 16-разрядных счетчика/таймера
32 программируемые линии ввода/вывода.
Порт с высоким током -Порт 3
9 источников прерываний, 2 уровня приоритета.
Питание
Специфицирован для работы от 3В до 5В
Режимы работы нормальный, холостой и дежурный
Последовательный порт UART
2-х проводной (I2C) и SPI порт
Сторожевой таймер (WDT)
Монитор источника питания
Функциональная блок-схема
3.2 Выбор ЖКИ
Для реализации системы воспользуемся индикатором фирмы Hitachi серии 44780, вид которого показан на рисунке:
Рис.1 ЖКИ фирмы Hitachi
Индикатор поставляется в виде печатной платы с собственно индикатором и схемой управления. Электронная схема облегчает управление ЖКИ со стороны контроллера, которому не приходится формировать сложные сигналы. Данные на индикатор подаются по восьми линиям (DB0-DB7). Линии управления:
-E -линия стробирования /синхронизации.
-R/W - линия выбора операции (запись или чтение)
-RS - линия определяет тип передаваемой информации (данные или команды)
Также имеются две линии для подачи напряжения 5В-Vdd и Vcc и линия для управления контрастом ЖКИ-Vo.,напряжения на которой обычно регулируется с помощью подстрочного резистора, который позволяет регулировать контраст при отображении информации.
3.3 Выбор датчиков уровня воды
Датчики уровня воды организованы следующим образом. В резервуаре установлены контакты подключенные к питанию через сопротивление ,а сам резервуар подключен к массе. При заполнении резервуара водой (т.к вода имеет сопротивление порядка 10-100кОм, в зависимости от состава ),происходит замыкание контактов на массу, и тем самым мы можем определить уровень воды . При заполнении мы смотрим на состояние датчика максимального уровня , и если состояние равно логическому нулю то резервуар полон. При откачки мы смотрим на состояние датчика уровня минимума , и если равно единице, то вода откачена. Основным достоинством такого датчика является его дешевизна и простота замены.
3.4 Выбор датчика температуры
Датчик температуры представляет собой терморезистор ,сопротивление которого изменяется за счет изменения температуры , а следовательно меняется и величина проходимо через него напряжения ,по величине которого (при помощи встроенного в микроконтроллер АЦП ) можно определить значение температуры. Основным достоинством такого датчика является его дешевизна и простота замены.
3.5Стабилизатор
Стабилизатор К145ЕН5А предназначен для получения из напряжения питания 12В, напряжение питания 5В для питания МК, цифровой логики и ЖКИ.
3.6 Блоки управления
Блоки управления - реализованы в виде внешних модулей (ключей на полевых транзисторах ) ,при подаче на них управляющего напряжение 0.5 В с контролера и они камутируют мощную 220В нагрузку.
3.7 Клавиатура
Клавиатура построена как коммутационная матрица. Матрица коммутации в данном случае двумерная, каждый ее узел содержит клавишу, которая коммутирует один столбец матрицы с одной из строк.
Путем сканирования столбцов можно следить за состоянием клавиатуры.
Когда ни одна из кнопок не нажата , на всех линиях строк должен быть высокий уровень (1).При замыкании одной из кнопок во время опроса соответствующего столбца на линии строк вместо 1 будет 0.
В результате МК может зафиксировать факт нажатия и определить ,какая клавиша нажата.
4. Распределение портов ввода/вывода
Порт |
Назначение |
|
P 0.0 -P0.7 |
Передачи данных на ЖКИ Разрешение выполнения операций обмена ЖКИ |
|
P1.0 |
Датчик температуры |
|
P2.0-P2.4 |
Управляющие клавиши. |
|
P2.5-P2.7 |
Датчики уровня воды |
|
P3.0-P3.2 |
Сигналы управления ЖКИ |
|
P3.3-P3.4 |
БУ двигателем |
|
P3.5 |
БУ насосом. |
|
P 3.6 |
БУ нагревательным элементом. |
|
P 3.7 |
БУ клапаном слива |
5.Описание и функционирование программы
В программе предусмотрены 2 обработчика прерываний:
1) от АЦП (канал 6)-……..
2) от таймера- в нем мы выполняем:
а) подсчет секунд, минут, и определение прошедшего времени для заданного режима, при этом заданное время дикриминтируется и выводится на ЖДИ .(вывод осуществляется не в обработчики а в основной программе, т.к ЖКИ достаточно медленен ), по установленному флагу обработчика дисплея.
б) Сканирование клавиатуры - осуществляется поочередной подачей нулей на Р2.3 и Р2.4,что определяет сканируемы столбец, при этом проверяются разряды с Р2.0 по Р2.3 и определяется какая клавиша нажата.
г)Управление направлением и
по таймеру 1 скоростью вращения двигателя , в соответствии с установленным режимом. При этом бит Р3.4 задает направление вращения , а бит Р 3.3 -скорость вращения с помощью широтно импульсной модуляции.
Основная программа состоит из 2-х основных блоков :
1)Инициализации и установка параметров для всех режимов
Для каждого режима выводится стандартное время и пользователь может увеличить или уменьшить это значение .так же для режимов стирки и замачивания вводится и температура, при этом смена параметров аналогична.
В режиме стирка добавляется перебор типов стирки (мягкая ,грубая ткань, шерсть , белье и нормальный режим ) .Для режима отжима задается время и скорость вращения двигателя.
2)Непосредственное прохождение всех режимов стирки заданных в 1-ой
части, при этом клавиатура не блокируется и можно изменить текущее значение времени для действующего режима
Листинг программы
микроконтроллер схема стиральная машина
list p=16c57, f=inhx8m
PORTA EQU 0x0005
PORTB EQU 0x0006
PORTC EQU 0x0007
STATUS EQU 0x0003
TEMP EQU 0x0010
TIMEF EQU 0x0011
INCR EQU 0x0012
;Registers Delay
REG1 EQU 0x0013
REG2 EQU 0x0014
REG3 EQU 0x0015
ORG 0
GOTO START
;Delay 1min
DELAY
MOVLW 0FFH
MOVWF REG1
MOVLW 0FFH
MOVWF REG2
MOVLW 074H
MOVWF REG3
LOOP1:
CLRWDT
DECFSZ REG1,1
GOTO LOOP1
DECFSZ REG2,1
GOTO LOOP1
DECFSZ REG3,1
GOTO LOOP1
RETLW 0
WARM
;SWITCH ON TEMP
MOVLW 0H
MOVWF PORTB
;Change datchik
MOVLW 1H
SUBWF TEMP,0
BTFSC STATUS,2
GOTO T40
MOVLW 2H
SUBWF TEMP,0
BTFSC STATUS,2
GOTO T60
MOVLW 3H
SUBWF TEMP,0
BTFSC STATUS,2
GOTO T80
T40:
BTFSC PORTB,5
GOTO OFF_TEMP
GOTO T40
T60:
BTFSC PORTB,4
GOTO OFF_TEMP
GOTO T60
T80:
BTFSC PORTB,3
GOTO OFF_TEMP
GOTO T80
OFF_TEMP:
;SWITCH OFF TEMP
MOVLW 81H
MOVWF PORTB
RETLW 0
DISPLAY
;PortA on write
MOVLW 0FH
TRIS 5
;PortC on write
MOVLW 0FFH
TRIS 7
;Clear LCD
MOVLW 1
MOVWF PORTC
;LCD - DATA
MOVLW 0FH
MOVWF PORTA
;INPUT - TERM:
;T
MOVLW 54H
MOVWF PORTC
;E
MOVLW 45H
MOVWF PORTC
;R
MOVLW 52H
MOVWF PORTC
;M
MOVLW 4DH
MOVWF PORTC
;:
MOVLW 3AH
MOVWF PORTC
RETLW 0
START:
;Begin setting and control
MOVLW .5
MOVWF INCR
MOVLW .4
MOVWF TEMP
;Set PortB on read
MOVLW 0FFh
TRIS 6
CONTROL:
;if press '+' then goto ADD
BTFSC PORTB,0
CALL ADD
;if press '-' then goto SUB
BTFSC PORTB,1
CALL SUB
;Read time wash
BTFSC PORTB,3
BSF TIMEF,0
BTFSC PORTB,4
BSF TIMEF,1
BTFSC PORTB,5
BSF TIMEF,2
;if press 'Wash' then goto WASH
BTFSC PORTB,2
CALL WASH
GOTO CONTROL
ADD:
CALL DISPLAY
;Temp<>80 - ?
MOVLW 80
SUBWF TEMP,0
BTFSC STATUS,2
GOTO EXIT_ADD
;Increament meaning temperature - 0x0010
MOVLW 2
ADDWF TEMP,1
;Temperature in W
MOVLW 48
ADDWF TEMP,1
MOVWF PORTC ;Output on LCD - TEMP - ASCII
MOVLW 48
MOVWF PORTC ;Output on LCD - 0 - ASCII
EXIT_ADD:
RETLW 0
SUB:
CALL DISPLAY
;Temp<>40 - ?
MOVLW 40
SUBWF TEMP,0
BTFSC STATUS,2
GOTO EXIT_SUB
;Decreament meaning temperature - 0x0010
MOVLW 2
SUBWF TEMP,1
;Temperature in W
MOVLW 48
ADDWF TEMP,1
MOVWF PORTC ;Output on LCD - TEMP - ASCII
MOVLW 48
MOVWF PORTC ;Output on LCD - 0 - ASCII
EXIT_SUB:
RETLW 0
WASH:
;Process wash
MOVLW 0C1H ;11000001b
TRIS 6 ;PortB
;Input water - SWITCH ON PUMP
MOVLW 1H
MOVWF PORTB
INPUT_WATER:
BTFSC PORTB,2
GOTO OFF_PUMP
GOTO INPUT_WATER
OFF_PUMP:
;SWITCH OFF PUMP
MOVLW 0C0H
MOVWF PORTB
CALL WARM
ROUND:
;SWITCH ON MOTOR - ON CLOCK
MOVLW 41H
MOVWF PORTB
CALL DELAY
;SWITCH OFF MOTOR
MOVLW 0C1H
MOVWF PORTB
CALL WARM
;SWITCH ON MOTOR - UN CLOCK
MOVLW 80H
MOVWF PORTB
CALL DELAY
;SWITCH OFF MOTOR
MOVLW 0C1H
MOVWF PORTB
CALL WARM
DECFSZ INCR,1
GOTO INCTIME
GOTO ROUND
INCTIME:
DECFSZ TIMEF,1
GOTO EXIT
MOVLW .5
MOVWF INCR
GOTO ROUND
EXIT:
;SWITCH ON PUMP
MOVLW 40H
MOVWF PORTB
CALL DELAY
;SWITCH OFF PUMP
MOVLW 0C0H
MOVWF PORTB
;RINSE
;SWITCH ON PUMP
MOVLW 1H
MOVWF PORTB
INPUT_WATER_R:
BTFSC PORTB,2
GOTO OFF_PUMP_R
GOTO INPUT_WATER_R
OFF_PUMP_R:
;SWITCH OFF PUMP
MOVLW 0C0H
MOVWF PORTB
;SWITCH ON MOTOR - ON CLOCK
MOVLW 41H
MOVWF PORTB
CALL DELAY
;SWITCH OFF MOTOR
MOVLW 0C1H
MOVWF PORTB
;SWITCH ON PUMP
MOVLW 40H
MOVWF PORTB
CALL DELAY
;SWITCH OFF PUMP
MOVLW 0C0H
MOVWF PORTB
;INPUT LCD - STOP
;Clear LCD
MOVLW 1
MOVWF PORTC
;LCD - DATA
MOVLW 0FH
MOVWF PORTA
;INPUT - STOP:
;S
MOVLW 53H
MOVWF PORTC
;T
MOVLW 54H
MOVWF PORTC
;O
MOVLW 51H
MOVWF PORTC
;P
MOVLW 50H
MOVWF PORTC
end
Размещено на Allbest.ru
Подобные документы
Проектирование схемы, выполненной на основе однокристального микроконтроллера 51 серии для получения с 8 аналоговых входов информации о изменении их состояния с течением времени. Параметры устройства, описание элементов схемы, листинг программы.
курсовая работа [627,2 K], добавлен 24.12.2012Назначение и применение микроконтроллеров - интегральных микросхем, предназначенных для управления электронными схемами. Описание способа адресации. Разработка программы, описание электрической и структурной схемы разрабатываемого микроконтроллера.
курсовая работа [177,6 K], добавлен 30.06.2014Разработка принципиальной схемы, выбор управляющего микроконтроллера. Общий алгоритм работы программы. Блок анализа и реализации команд, принятых от персонального компьютера. Описание используемых интерфейсов. Формат данных RS-232C, листинг программы.
курсовая работа [1,2 M], добавлен 26.12.2012Основные параметры устройства отображения информации. Обоснование выбора используемых ресурсов микроконтроллера и схемы включения. Разработка схемы алгоритма. Описание и отладка программы. Схема электрическая принципиальная и листинг трансляции программы.
курсовая работа [121,3 K], добавлен 12.12.2014Описание микроконтроллера и периферийных устройств. Распределение битов регистра. Выбор элементной базы. Основные части и алгоритм работы основной программы. Архитектура микроконтроллера AduC812 и построение на его основе бортового компьютера автомобиля.
курсовая работа [210,2 K], добавлен 23.12.2012Особенности разработки устройства управления системой измерения веса, построенного на микроконтроллере ATmega16 фирмы Atmel. Схема включения микроконтроллера, сброса, стабилизатора напряжения. Проектирование функций микроконтроллера. Листинг программы.
курсовая работа [153,6 K], добавлен 19.12.2010Систематизация, закрепление и расширение теоретических и практических знаний. Выбор методов построения проектируемого устройства, синтез функциональных узлов, схемы контроля, расчеты электронных схем. Проектирование конструкций, технологических процессов.
методичка [84,3 K], добавлен 28.12.2009Разработка функциональной и принципиальной схемы. Выбор управляющего контроллера. Описание МК PIC16F626, МК AVR, МК 51. Выбор элементной базы. Разработка управляющей программы. Описание алгоритма работы программы. Схема устройства, листинг программы.
курсовая работа [492,9 K], добавлен 28.12.2012Описание алгоритма работы и разработка структурной схемы МКС. Схема вывода аналогового управляющего сигнала, подключения ЖК-дисплея, клавиатуры и аварийного датчика. Разработка блок-схемы алгоритма главной программы работы МКС. Функция инициализации.
курсовая работа [5,7 M], добавлен 26.06.2016База данных в MS Microsoft SQL Server 2005 для автоматизации процесса контроля поставок и продажи бытовой техники. Программа, позволяющая показывать информацию о товарах, поставщиках, реализаторах и клиентах, а также формировать отчеты по категориям.
курсовая работа [724,8 K], добавлен 23.06.2011