Разработка сборочного чертежа устройства

Сборочный чертёж [БЕН22] — вид конструкторской документации, документ, содержащий изображение сборочной единицы и другие данные, необходимые для её сборки и контроля.

Требования к выполнению сборочных чертежей установлены в ГОСТ 2.109 (ЕСКД. Основные требования к чертежам).

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

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

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

Сборочный чертеж представлен на чертеже ИГТУ421710.004СБ.

7. Разработка алгоритма программы управления учебным роботом[БЕН23]

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

Начало
Инициализируем интер-фейс приёма UART
Подключение установлено?
Инициализируем порты ввода/вывода
Чтение байта Х
В
Б
АВ

Рисунок 6 – Общая схема алгоритма программы, управления двигателями постоянного тока

Движение вперёд
Х.0 = 1?
Б
АВ
Х.1 = 1?
Движение назад
Х.2 = 1?
Движение вправо
Х.3 = 1?
Движение влево
Х.4 = 1?
Движение нет
В
Конец

Рисунок 6 – Продолжение

Разработка программы управления учебным роботом

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

Для запуска этой программы необходимо предварительно записать прошивку в микроконтроллер. Затем соединить разъемы на плате с соответствующими элементами и подать питание 5 вольт на схему. Данная программа разрабатывалась в среде AVRStudio 4.

Для создания программы были использованы следующие функции:

void InitPorts() – Инициализация портов ввода-вывода.

void InitTimer1() – Инициализация таймера.

void InitUSART(unsigned int baud) – инициализация интерфейса UART.

void USART_Transmit( unsigned char data ) - Отправка байта по USART.

void USART_Transmit_str( char *str) - Отправка строки по USART.

void shag(char flag) - Выполнение одного шага двигателя (одно переключение обмоток).

int chastota(int hz) - Возвращает число которое нужно подставить в таймер чтоб получить заданную частоту.

void poehali(int mm) - Пересчет расстояния в шаги, включение таймера.

void stop(void) – остановка двигателя.

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

#define F_CPU 8000000UL

#include <avr/io.h>

#include <stdlib.h>

#include <avr/interrupt.h>

#define NOM 4

const char obm_shag[4]={0b0001,0b0100,0b0010,0b1000};

char napr_dvig=0; //направление движения, 0-стоим, 1,2-едем

volatile int amount_step=0; //количество шагов

/////////////////////////////////////////////////////////////////

void InitPorts()

{

PORTC=(1 << PC4)|

(1 << PC5); // Подключаем внутренние нагрузочные резисторы

DDRD=(1<<PD7)| //разрешение первого моста

(1<<PD6)| //разрешение второго моста

(0<<PD5)| //

(1<<PD4)| //обмотки

(1<<PD3)| //

(1<<PD2)| //

(1<<PD1)| //

(0<<PD0);

}

////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////

//процедура остановки двигателя

/////////////////////////////////////////////////////////////////

void stop(void)

{

PORTD &= ~((1<<PD6)|(1<<PD7));

}

/////////////////////////////////////////////////////////////////

//Процедура обработки прерывания по Таймеру 1

ISR (TIMER1_COMPA_vect)

{

shag(napr_dvig); //процедура одного шага двигателя

}

/////////////////////////////////////////////////////////////////

int main(void)

{

int i=0;

InitPorts();

asm ("sei"); // Разрешение прерываний

if( (PINC & (1<<PC3)) == 0) //первая кнопка нажата

{

PORTD &= ~(0b00011010);

PORTD |= 0b00000010;

}

if( (PINC & (1<<PC4)) == 0) //вторая кнопка нажата

{

PORTD &= ~(0b00011100);

PORTD |= 0b00000100;

}

if( (PINC & (1<<PC5)) == 0) //третья кнопка нажата

{

PORTD &= ~(0b00001110);

PORTD |= 0b00001000;

}

if( (PINC & (1<<PC6)) == 0) //четвертая кнопка нажата

{

PORTD &= ~(0b00010110);

PORTD |= 0b00010000;

}

return 0;

}

Заключение

При выполнении курсового проекта были разработаны:

· конструкторская документация устройства управления учебным роботом:

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

¾ перечень элементов к схеме электрической принципиальной;

¾ печатная плата устройства управления учебным роботом;

¾ сборочный чертеж;

¾ спецификация к сборочному чертежу.

· схемы алгоритмов программы управления учебным роботом;

· программа управления учебным роботом.[БЕН24]


Наши рекомендации