Разработка микропроцессорной системы контроля
Назначение и устройство микропроцессорной системы контроля. Описание функциональной схемы микропроцессорной системы контроля. Расчет статической характеристики канала измерения. Разработка алгоритма функционирования микропроцессорной системы контроля.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 30.08.2010 |
Размер файла | 42,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
3
СОДЕРЖАНИЕ
ПОСТАНОВКА ЗАДАЧИ И ИСХОДНЫЕ ДАННЫЕ
1 Описание назначения и устройства микропроцессорной системы контроля
2 Описание функциональной схемы микропроцессорной системы контроля
3 Расчет статической характеристики канала измерения
4 Разработка алгоритма функционирования микропроцессорной системы контроля
5 Разработка программы для микропроцессорной системы контроля
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
ПОСТАНОВКА ЗАДАЧИ И ИСХОДНЫЕ ДАННЫЕ
Разрабатываемая МП система должна осуществлять контроль концентрации газа и обеспечивать:
· индикацию значений концентрации и режима работы системы
· сигнализацию превышения предельно допустимого значения концентрации
· автоматическое отключение (блокировку) подачи газа при превышении концентрации в течение заданного времени
· сброс блокировки и подачу газа по команде с клавиатуры при допустимом значении концентрации
- предельное значение концентрации;
#АЦП = 0 - номер входа АЦП;
- задержка срабатывания блокировки;
# OUT 1 = Р1.1 - номер линии для управления сигнализацией;
# OUT 2 = Р1.2 - номер линии для управления блокировкой;
"1" + "*"- комбинация нажатия кнопок для сброса блокировки.
1 ОПИСАНИЕ НАЗНАЧЕНИЯ И УСТРОЙСТВА МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ КОНТРОЛЯ
Микропроцессорная система контроля служит для индикации значения концентрации и режима работы системы, сигнализации превышения предельно допустимого значения концентрации, автоматического отключения (блокировки) подачи газа при превышении концентрации в течение заданного времени, сброса блокировки и подачи газа по команде с клавиатуры при допустимом значении концентрации.
Микропроцессорная система контроля состоит из микропроцессорной системы, клавиатуры, индикатора, двух сигнализирующих лампочек (L1 «сигнализация», L2 «блокировка») и усилителя.
Термокондуктометрический газоанализатор соединен через усилитель с первым входом микропроцессорной системы. Сигналом с клавиатуры, поступающим на второй вход микропроцессорной системы, можно осуществлять включение или выключение электромагнитного клапана и сброс блокировки.
Первый выход микропроцессорной системы подключен к сигнализирующей лампочке L1 «сигнализация». Второй выход микропроцессорной системы соединен с сигнализирующей лампочкой L2 «блокировка» и электромагнитным клапаном, служащим для подачи газа в аппарат. Третий и четвертый выходы микропроцессорной системы соединены с клавиатурой и индикатором.
2 ОПИСАНИЕ ФУНКЦИОНАЛЬНОЙ СХЕМЫ МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ КОНТРОЛЯ
3
Электромагнитный клапан KL может находиться в двух состояниях: 0 - клапан закрыт и 1 - клапан открыт.
Сигнализирующие лампочки L1 «сигнализация», L2 «блокировка» также могут находиться только в двух состояниях: 0 - лампочка не горит, 1 - лампочка горит.
Сигналом с клавиатуры, поступающим на второй вход микропроцессорной системы, можно осуществлять подачу газа клавишей «2», переход в режим «ожидание» клавишей «1» и снятие блокировки клавишами "1" + "*".
Микропроцессорная система может работать в трех режимах:
regim 1 - ожидание сигнала «рабочий режим» при закрытом электромагнитном клапане;
regim 2 - подача газа в аппарат до заданного значения концентрации с переходом после превышения заданного значения концентрации в течение заданного времени в regim 3 (блокировка) с возможностью подачи сигнала «ожидание» с клавиатуры;
regim 3 - автоматическая блокировка подачи газа в аппарат при превышении заданного значения концентрации в течение заданного времени с возможностью перехода в рабочий режим при нажатии клавиш "1" + "*" и при допустимом значении концентрации.
3 РАСЧЕТ СТАТИЧЕСКОЙ ХАРАКТЕРИСТИКИ КАНАЛА ИЗМЕРЕНИЯ
Напряжение на выходе термокондуктометрического газоанализатора:
,
где - концентрация монооксида углерода;
- радиус нити;
- радиус камеры детектора;
- ток нити;
- длина нити;
- сопротивление нити;
- температурный коэффициент сопротивления платиновой проволоки;
- теплопроводность воздуха;
- теплопроводность монооксида углерода.
Статическая характеристика вторичного преобразователя имеет вид:
,
где - коэффициент усиления; - выходной сигнал усилителя.
;
Статическая характеристика канала измерения будет выглядеть следующим образом:
4 РАЗРАБОТКА АЛГОРИТМА ФУНКЦИОНИРОВАНИЯ МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ КОНТРОЛЯ
На рисунке 1 представлена блок-схема алгоритма функционирования микропроцессорной системы контроля.
В блоке 1 производится настройка индикатора для отображения информации и инициализация таймера/счетчика 0.
В блоке 2 задается regim 1 и устанавливается предельное значение концентрации 0,2.
В блоке 3 производится проверка, является ли regim 1 текущим режимом. При невыполнении этого условия программа переходит к блоку 8.
В блоке 4 производится закрытие электромагнитного клапана.
В блоке 5 осуществляется отключение сигнализирующих лампочек.
В блоке 6 производится проверка, нажата ли клавиша «2». При выполнении этого условия программа переходит к блоку 7, где устанавливается regim 2, в противном случае - к блоку 3.
В блоке 8 производится проверка, является ли regim 2 текущим режимом. При невыполнении этого условия программа переходит к блоку 18.
В блоке 9 выполняется подпрограмма индикации С(х).
В блоке 10 производится открытие электромагнитного клапана и присваивается начальное значение переменной time=0.
В блоке 12 производится проверка, нажата ли клавиша «1». При выполнении этого условия программа переходит к блоку 13, где устанавливается regim 1.
В блоке 14 выполняется проверка превышения концентрации при regim 2. При невыполнении этого условия программа переходит к блоку 8.
В блоке 15 производится включение сигнализирующей лампочки L1.
В блоке 16 выполняется проверка превышения заданного времени. При не выполнении этого условия программа переходит к блоку 14, в противном случае - к блоку 17, где устанавливается regim 3.
В блоке 18 производится проверка, является ли regim 3 текущим режимом. При невыполнении этого условия программа переходит к блоку 3.
В блоке 19 производится закрытие электромагнитного клапана и выполняется подпрограмма индикации С(х).
В блоке 20 производится проверка превышения предельного значения концентрации. При выполнении этого условия программа переходит к блоку 21, в котором включает сигнализирующие лампочки L1 и L2, иначе - к блоку 22, где включает сигнализирующую лампочку L2 и выключает L1.
В блоке 23 производится проверка нажатия клавиш "1" + "*" при допустимом значении концентрации. При невыполнении этого условия программа переходит к блоку 18, иначе - к блоку 24, в котором устанавливается regim 2 .
На рисунке 2 представлена блок-схема алгоритма опроса клавиатуры.
В блоке 1 инициализируется переменная scan для опроса первого столбца клавиатуры.
В блоке 2 производится проверка окончания сканирования последнего столбца. Если условие выполняется, то программа переходит к блоку 4, где осуществляется выход из подпрограммы.. Если нет, то программа переходит к блоку 3.
В блоке 3 производится вывод значения переменной scan в порт P4 для сканирования клавиатуры.
В блоке 5 осуществляется ввод с порта P4 и присвоение этого значения переменной key.
В блоке 6 выполняется проверка факта нажатия кнопки в опрашиваемом столбце.
При обнаружении нажатой кнопки выполняется блок 7, в котором производится возвращение в основную программу значения переменной key, в противном случае - блок 8.
Блок 8 осуществляет модификацию переменной scan путем сдвига влево для сканирования следующего столбца.
В блоке 9 производится инкрементация переменной scan. Далее программа переходит к блоку 2.
На рисунке 3 представлена блок-схема алгоритма индикации С(х).
В блоке 1 инициализируется переменная chan.
В блоке 2 производится проверка равенства бита ADCS=1 регистра ADCON. Если условие выполняется, то АЦП не готов к выполнению новых преобразований и программа возвращается к блоку 2. Если нет, то программа переходит к блоку 3.
В блоке 3 устанавливаются биты ADR0-ADR2 для выбора канала АЦП.
В блоке 4 производится проверка равенства бита ADCI=1 регистра ADCON. Если условие не выполняется, то программа переходит к блоку 6, где осуществляется установление бита ADCS в 0, с последующим переходом к блоку 11. Если да, то программа переходит к блоку 5.
В блоке 5 выполняется присвоение переменной nx факта нажатия кнопки в опрашиваемом столбце.
В блоке 7 осуществляется расчет напряжения Ux.
В блоке 8 осуществляется расчет текущего значения концентрации Сх.
В блоке 9 производится индикация значения концентрации Сх.
В блоке 10 выполняется сброс бита ADCI в 0.
В блоке 11 возвращается в основную программу значения переменной Сх.
На рисунке 4 представлена блок-схема алгоритма обработки прерывания.
В блоке 1 инкрементируется переменная time.
В блоке 2 производится установка старшего байта таймера 0.
В блоке 3 устанавливается младший байт таймер
5 РАЗРАБОТКА ПРОГРАММЫ ДЛЯ МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ КОНТРОЛЯ
HELLO.C
Copyright 1995-1999 Keil Software, Inc.
#include <REG552.H>
#include <stdio1.h> /* prototype declarations for I/O functions */
unsigned char xdata wr_ir _at_ 0x7ff0 ;
unsigned char xdata rd_ir _at_ 0x7ff1 ;
unsigned char xdata wr_dr _at_ 0x7ff2 ;
unsigned char xdata rd_dr _at_ 0x7ff3 ;
unsigned char scan;
unsigned char key;
char chan=0x00;
float Ux,Cx, C0=0.2;
int nx, time=0, regim=1;
bit KL=0;
void wrc (unsigned char ir) {
unsigned char bf;
do{bf=rd_ir&0x80;}
while (bf!=0);
wr_ir =ir; }
unsigned char rdc (void) {
unsigned char bf;
do{bf=rd_ir&0x80;}
while (bf!=0);
return rd_ir;}
void wrd (unsigned char dr) {
unsigned char bf;
do{bf=rd_ir&0x80;}
while (bf!=0);
wr_dr =dr; }
unsigned char rdd (void) {
unsigned char bf;
do{bf=rd_ir&0x80;}
while (bf!=0);
return rd_dr;}
// вывод одного символа
void putchar(unsigned char cm) {
if((cm & 0xC0) == 0xC0)
cm = tcod[cm & 0x3F];
wrd (cm);}
// подпрограмма вывода строки по-русски
void puts ( const unsigned char *str ) {
unsigned char i = 0;
while(str[i] != 0) {putchar(str[i]); i++;}}
The main C function. Program execution starts
here after stack initialization.
unsigned char klav(void) {
scan=0xFE;
while (scan!=0xF7){
P4=scan;
key=P4;
if ((key&0x78)!=0x78)
{return key;}
scan=scan<<1;
scan++;
return 0;}
float C (void){
chan=0x00;
ADCON=(ADCON&0xF8)|(chan&0x07);
while (ADCON&0x08);
if (ADCON&0x10){nx=(ADCH<<2)|(ADCON>>6);
Ux=2.5*nx/1024;
Cx=Ux*5.6/(18.56+0.57*Ux);
if (Cx>1) Cx=1;
if (Cx<0) Cx=0;
wrc(0xC0);
printf("Cx=%02.3f",Cx);
ADCON=ADCON&0xEF;}
else
ADCON=ADCON|0x08;
return Cx;}
void INT_1(void) interrupt 1 {time++; TH0=0x4С;TL0=0x50;}
void main (void) {
// инициализация HD44780
wrc (0x38); //2 строки, 5*8 точек,
wrc (0x06); // вывод слева-направо
wrc (0x01); // очистка
wrc (0x0c); // экран вкл., курсор выкл.
IEN0=0x82;
TMOD=0x01;
TR0=1;
while (1) {wrc(0x80);
printf("измерение концентрации:");
while (regim==1) {wrc(0xCB); printf("ожидание "); KL=0; P1=0x00;
if (klav()==0xF5){regim=2;}
while (regim==2) {wrc(0xCB); printf("рабочий режим "); C();KL=1; time=0; P1=0x00;
if (klav()==0xF6) {regim=1;}
while ((C()>C0)&(regim==2)) {P1=0x02;
wrc(0xCB);
printf("cигнализация");
if (time>200) {regim=3;}
while (regim==3) {wrc(0xCB); printf("блокировка "); KL=0;
if (C()>C0) {P1=0x06;}
else {P1=0x04;}
if ((klav()==0xB4)&(C()<C0)){regim=2;}
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Архитектура микроконтроллеров семейства MCS-51: конспект лекций/ Бояринов А.Е., Дьяков И.А. Тамбов: Изд-во Тамб. гос. тех. ун-та, 2005. 64с.
2. Микропроцессоры в системах контроля: методические указания/ Бояринов А.Е. Тамбов: Изд-во Тамб. гос. тех. ун-та, 2005. 44с.
Подобные документы
Разработка функциональной схемы микропроцессорной системы управления насосным агрегатом. Архитектура последовательных шин передачи данных RS232 и ISP. Обоснование выбора элементарной базы микропроцессорной системы: контроллера и приемопередатчика.
курсовая работа [1,6 M], добавлен 10.01.2012Распределение функций между аппаратной и программной частями микропроцессорной системы. Выбор микроконтроллера, разработка и описание структурной, функциональной и принципиальной схемы. Выбор среды программирования, схема алгоритма и листинг программы.
курсовая работа [304,4 K], добавлен 17.08.2013Анализ вариантов проектных решений и выбор на его основе оптимального решения. Синтез функциональной схемы микропроцессорной системы на основе анализа исходных данных. Процесс разработки аппаратного и программного обеспечения микропроцессорной системы.
курсовая работа [469,1 K], добавлен 20.05.2014Общее понятие о микроконтроллерах, их использование и назначение. Разработка проекта микропроцессорной системы сбора данных с использованием стендов SDK 1.1 и SDX 0.9. Создание программного обеспечения и его загрузка в лабораторный стенд SDK-1.1.
курсовая работа [1,4 M], добавлен 31.01.2014Разработка структурной схемы и алгоритм функционирования исследуемой микропроцессорной системы (МПС). Модель исследуемой МПС в виде системы массового обслуживания. Листинг программы моделирования на языке GPSS, результаты имитационных экспериментов.
курсовая работа [193,3 K], добавлен 25.11.2013Разработка структурной схемы и обобщенного алгоритма работы прибора. Оценка максимальной погрешности линейного датчика давления и нормирующего усилителя. Разработка элементов принципиальной электрической схемы микропроцессорной системы сбора данных.
курсовая работа [2,1 M], добавлен 08.02.2015История развития центрального процессора. Основные проблемы создания многоядерных процессоров. Проектирование микропроцессорной системы на базе процессора Intel 8080. Разработка принципиальной схемы и блок-схемы алгоритма работы микропроцессорной системы.
курсовая работа [467,6 K], добавлен 11.05.2014Структура микропроцессорной системы, алгоритм ее управления и передачи сигналов. Карта распределения адресов. Разработка электрической принципиальной схемы и выбор элементной базы. Расчет потребляемого тока, блока питания, программного обеспечения.
курсовая работа [5,1 M], добавлен 22.01.2014Применение цифровых микросхем для вычисления, управления и обработки информации. Назначение микропроцессора и устройств микропроцессорной системы, их структурная и принципиальная схемы. Системная шина процессора и распределение адресного пространства.
курсовая работа [1,5 M], добавлен 29.02.2012Принципиальная электрическая схема микропроцессорной системы. Моделирование в Proteus 7.10. Алгоритмы обработки и хранения информации. Аналого-цифровой преобразователь. Назначение выводов источника опорного напряжения. Значения сопротивления резисторов.
курсовая работа [1,4 M], добавлен 28.05.2013