Курсовая работа: Устройство контроля позиционирования исполнительного механизма

Содержание

Введение

1.Анализ поставленной задачи

2. Проектирование принципиальной схемы устройства

2.1  Схема включения микропроцессора

2.2  Формирование тактовых импульсов

2.3  Схема сброса

2.4  Схемы входных и выходных устройств

2.5  Схема стабилизатора напряжения

3. Проектирование программного обеспечения микропроцессора

4. Листинг программы

5. Рекомендации по разработке программных и аппаратных диагностических средств для проверки работоспособности устройства

6. Проектирование печатной платы устройства (PCad, OrCad)

Заключение

Приложение


Введение

В настоящее время встроенные компьютерные системы получают все большее распространение из-за их высокого качества и надежности, а так же простоты обработки информации.

Микроконтроллеры являются сердцем многих современных устройств и приборов, в том числе и бытовых. Главной особенностью микроконтроллеров является то, что с их помощью легче и зачастую гораздо дешевле реализовать различные схемы.

Популярность микроконтроллеров AVR постоянно увеличивается. Не последнюю роль в этом играет соотношение показателей «цена — быстродействие — энергопотребление», являющееся одним из лучших на рынке 8-разрядных микроконтроллеров. Также постоянно растет число выпускаемых разнообразных программных и аппаратных средств поддержки разработок устройств на их основе.

В данном курсовом проекте на базе микроконтроллеров AVR необходимо разработать устройство, которое позволит управлять скоростью вращения исполнительного механизма, отслеживать перемещение любой точки на его поверхности в каждый момент времени и передавать данные об этом последовательный порт компьютера.


1. Анализ поставленной задачи

Темой курсового проекта является «Устройство контроля позиционирования исполнительного механизма». Данное устройство предназначено для наблюдения за работой исполнительного механизма, задания скорости его вращения, контроля позиционирования (т. е. сравнения его текущего местоположения с заданным), а также выдачи информации в последовательный порт компьютера.

Устройство состоит из следующих блоков:

•  блок датчиков;

•  устройство управления;

•  блок передачи информации.

Структурная схема устройства представлена на рис. 1.

Рис. 1 Структурная схема устройства

Блок датчиков представляет собой два датчика на фототранзисторах, один из которых регистрирует прохождение метки на исполнительном механизме, что заставляет работать второй датчик - он регистрирует прохождение тёмных и светлых участков на ИМ.

Блок передачи информации реализован на микросхеме МАХ232. Устройство управления организовано на микроконтроллере семейства Classic AT90S2313-10. Данный микроконтроллер имеет память программ 2 Кбайт, ОЗУ 128 байт и EEPROM-память данных 128 байт. Максимальное количество контактов ввода/вывода 15.

Т.к. для подключения датчиков необходимо 2 контакта, для подключения шагового двигателя - 4 контакта и семейство AVR имеет последовательный аппаратный интерфейс, то ресурсов этого микроконтроллера достаточно для реализации проекта.


2. Проектирование принципиальной схемы устройства

2.1 Схема включения микропроцессора

Рисунок 2,1 - Схема включения микропроцессора

2.2 Формирование тактовых импульсов

Формирование тактовых импульсов производится при помощи внешнего кварцевого резонатора. Такой вариант включения необходим для обеспечения высокой точности и стабильности рабочей частоты.

Схема включения показана на рис. 2.2.

Рисунок 2.2 - Подключение кварцевого резонатора.


2.3 Схема сброса

Рисунок 2.3 - Схема сброса

Для осуществления сброса микроконтроллера при включении питания, а также по кнопке используется схема, представленная на рис 2.3.

2.4 Схема стабилизатора напряжения

Для стабилизации напряжения питания схемы используется интегральный стабилизатор LM 7805.

Входное напряжение В. Min - 7.5;

Мах- 35; Максимальный выходной ток, А - 0.5;

Рисунок 2.4 - Схема стабилизатора напряжения

2.5 Схема входных и выходных устройств

Входными устройствами являются:

•  два датчика на фототранзисторах;

•  один сигнальный провод внешнего устройства управления. Выходные устройства:

•  шаговый двигатель;

•  RS-232.

Датчики, сигнальный провод и шаговый двигатель подключены на плату с помощью разъёмов.

Интерфейс RS-232 реализован на микросхеме МАХ 232. Они содержат в себе преобразователь уровня, что позволяет обойтись без дополнительного преобразователя напряжения

Схема её подключения представлена на рис. 2.5

Рисунок 2.5 - Схема включения последовательного интерфейса


3. Проектирование программного обеспечения микропроцессора

Программа должна выполнять следующие функции:

•  получение и обработка информации от датчиков;

•  управление шаговым двигателем;

•  передачу по последовательному интерфейсу (UART); Выполнение этих операций происходит по следующему алгоритму:

Проектирование процедуры обработки прерываний

В программе используются прерывания от таймеров счетчиков. Используются оба аппаратных таймера счетчика, но на Т/СО организованы также два программных счётчика,

Проектирование процедуры передачи данных по последовательному интерфейсу

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

Проектирование процедуры Main

Проектирование процедуры заключается в том, чтобы в правильном порядке выполнялись процедуры, описанные за ее пределами, в правильном взаимодействий всех переменных, массивов, а также подпрограмм прерываний от таймера-счетчика и функционирования последовательного интерфейса.


4. Листинг программы

tfdefine ENABLE_BIT_DEFINITIONS tfinclude <ina90.h> ^include <iom!6.h> ^include "ctype.h" include "stdlib.h"

unsigned char SM[4]={9,12,6,3};

unsigned char d,S;

unsigned char TmrO_Opros[51={10,15,20,25,30f;

unsigned char Tmr(tSM{5]=}24,29,36,48,72|;

unsigned char Perepl,Perep2;

#define ENABLE_BIT_DEnNITIONS

#pragma vector=TIMERO_OVF_vect _interrupt void TlMERO_OVF_interrupt(void)

{

TCNTO=236; Perepl++; Fetep2++;

if(Perepl=TmrO_Opros[S]} (

Perepl=0; TmrO_Opros_Flag=l;

} if{Perep2=TmrO_SM[S]}

{

TmrO_SM_Flag=l;

Perep2=0; TmrO_SM_Hag=l;

d++; if(d=4) |d=0;

I i

}

//=============«=======«=

fpragma vector=TIMERl_OVF_vect

interrupt void TIMERl_OVFjnterrupt(void)

( TCNTlL=OxbO;// 5 sec

TCNTlH=Oxb9; TmrlmFlag=l;

I //======================================================

void InitTimers(void)

{

disable_interrupt();

TCCRCN4;// 1/256

TIMSK (- (1 « TOIEO);//Enable TimerO Interrupt

TCNTO=0;

TCCR1=5;// 1Д024

// TIMSK | = (3 « TOIE1);//Enable Timerl Interrupt

TCNTlL=OxbO;// 5 sec

TCNTlH=Oxb9;

TmrPreLoad[0)=l;

TmrCnt[0]=l;

TmrFlag[0]=Ox81;

enable_interrupt();

I

void Init(void)

I

DDRB=0;

PORTB=OXFF;

DDRD=OXFF;

PORTD=OXFF;

) //========================================

void main(void)

{

InitTimers{);

Init();

InitUART();

While(l)

(

if(Extern_Signal=l) (Extern_Signal=0;

S++; if{S=4) {S=0;

I

TIMSK I = (3 « TOIE1);//Enable Timerl Interrupt

TCNTlL=OxbO;//5 sec

TCNTlH=Oxb9

}

if{TmrO_SM_FIag=l)

I

PORTB=SM[d];

TmrO_SM_FIag=0;

I

if(Tmrl_Flag=l&PINBJBitO=l) j Flag_Count=l;

)

if(Flag_Count=l) |TCNTO=236; if(TmrO_Opros_Flag=l)

{

k++;

if(PINB_BitO=l) |k=01 if(PINB_Bitl=l)

{

Data=k+l;

Flag_Count=0;

I I 1

if(Data!=0)

I TransmiteByte(Data);

Data=0;

} if(PINB_Bit2)

{ Extern_Signal=l;

} \_

void InitUART(void)

{

UBRRL = 191; UBRRH = 0; UCSRA = 0;

UCSRB - ((1 « RXCIE) | (1« RXEN) \ (1 « TXEN)); UCSRC = ((1 « URSEL) | (1 « UCSZ1) j (1 « UCSZO));

!

void TransmitByte (unsigned char data)

t UCSRB | = (1«UDRIE | 1«TXCIE);

I

#pragma vector=USART_TXC_vect

interrupt void USARTJTX_interrupt(void)

t UCSRB &= ~(1«TXCIE);//disable TX Interrupt

I

#pragma vector=USART_UDRE_vect

^interrupt void USART_TX_UDREJnterrupt(void)

{

UDR = Data;

UCSRB &= ~(1«UDRIE);//disable UDR Interrupt

UCSRB | = {1«TXCIE);//enable TX Interrupt

)


5. Рекомендации по разработке аппаратных диагностических средств для проверки работоспособности устройства

Для диагностики работоспособности данного устройства можно использовать как аппаратные, так и программные средства. Данные средства должны иметь возможность производить обмен по последовательному интерфейсу RS-232, а так же отображать передаваемую информацию.

Для проверки наличия сигнала с датчиков, можно подключить светодиоды, либо имитировать срабатывание датчика при помощи любых переключающих устройств.


6. Проектирование печатной платы устройства

Для того, что бы развести печатную плату используется программа LayoutPlus пакета OrCad. Она позволяет производить разводку печатных плат, как в автоматическом режиме, так и в ручном.

Произведем разводку печатной платы нашего устройства. Для этого мы создается схема в OrCAD Captured S.

Схему необходимо создавать таким образом, что бы на ней не оставалось ни одного свободного входа/выхода или висячего провода. Необходимо убрать все вспомогательные компоненты схемы (источники тока, напряжения, генераторы и другие), и прописать в свойствах компонентов раздела Footprint тип корпуса.

В установках LayoutPlus мы настраиваем количество слоев, ширину дорожек, расстояние между дорожками, между дорожками и контактными площадками, угол поворота дорожек. Затем производим разводку в автоматическом режиме, создаем координатную сетку и проставляем размеры.

В результате была спроектирована печатная плата, показанная в приложении Б. Она изготавливается из фольгированного стеклотекстолита толщиной 1.. Л.5 мм. Все отверстия на плате должны быть металлизированы.


Заключение

В данном курсовом проекте было разработано устройство контроля позиционирования исполнительного механизма, которое является одним из блоков Системы контроля позиционирования исполнительного механизма.

Устройство регистрирует положение ИМ в каждый момент времени и передаёт информацию об этом в компьютер, а также управляет скоростью вращения шагового двигателя, который является приводом ИМ.

Была разработана принципиальная электрическая схема устройства, а также плата печатного монтажа.

В ходе проектирования устройства были рассмотрены основные принципы построения устройств на микроконтроллерах AVR, изучена возможность связи с внешними устройствами по последовательному интерфейсу RS-232.