Принципиальная схема и программное обеспечение для робота, управляемого источником света
Использование в микропроцессорных системах цифрового способа представления информации. Помехоустойчивость устройств. Принципиальная схема на микроконтроллере для управления роботом. Устройство и принцип действия робота. Области действия фотодатчиков.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 31.01.2015 |
Размер файла | 693,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Введение
Создание микропроцессора явилось следствием развития и совершенствования технологии производства интегральных схем. Повышение степени интеграции микросхем привело к закономерному этапу в развитии вычислительной техники - реализации архитектуры ЭВМ на одной интегральной схеме.
Способность к программированию последовательности выполняемых функций, т.е. способность работать по заданной программе, является основным отличием микропроцессора от элементов «жесткой» логики. Аппаратные средства микропроцессора повторяют структуру процессора ЭВМ и включают: арифметико-логическое устройство, устройство управления, память. Микропроцессор может состоять из одной или нескольких интегральных схем.
Основными причинами широкого использования микропроцессорных систем в технике являются:
· Использование в микропроцессорных системах цифрового способа представления информации, позволяющего значительно повысить помехоустойчивость создаваемых на базе устройств, обеспечить простоту передачи и преобразования информации;
· Применение программного способа обработки информации, позволяющего создавать в значительной степени унифицированные технические средства, отличающиеся практически лишь содержимым запоминающего устройства и специфическими устройствами ввода/вывода информации;
· Компактность, высокая надежность и низкая потребляемая мощность микропроцессорных средств, обеспечивающих возможность расположения управляющих устройств, созданных на их основе, в непосредственной близости с управляемым оборудованием, а иногда и встроенных в них;
· Относительно низкая стоимость микропроцессорных средств.
Все эти факторы позволили микропроцессорам в короткое время занять ведущее место в совершенствовании целых отраслей промышленности, создании гибких автоматизированных производств, систем передачи информации, автоматизированных систем управления технологическими процессами, встраиваемых систем управления оборудованием и бытовыми приборами.
1. Постановка задачи
Разработать принципиальную схему на микроконтроллере и написать программу для управления роботом, реагирующим на свет и приводимым в движение двумя электродвигателями постоянного тока.
Алгоритм действия робота должен быть следующим:
Робот должен находиться в темной комнате. Если присутствует источник света, робот должен определить с какой стороны он светит, повернуться в его сторону и двигаться по направлении к нему. В случае отсутствия источника света, робот должен просто стоять на месте, ничего не выполняя.
Рис. 1.1 Принцип действия робота
2. Выбор микроконтроллера
микропроцессорный цифровой робот фотодатчик
Микроконтроллеры с системой команд и архитектурой MCS-51 широко распространены, множество фирм выпускает их модификацию и программное обеспечение для них. Выпускает такие микроконтроллеры и фирма Atmel. В данном курсовом проекте был выбран микроконтроллер AT89C4051. Именно этот микроконтроллер наиболее хорошо известен разработчикам и является популярным средством управления в устройствах самого широкого круга. Имеется множество эмуляторов, отладчиков и программаторов микросхем AT89C4051, поэтому с разработкой программного обеспечения нет никаких трудностей.
AT89C4051 является низковольтным быстродействующим 8-битным микроконтроллером с 4 Кбайт программируемой и стираемой флэш-памятью и 128 байт ОЗУ. Микроконтроллер имеет два универсальных программируемых параллельных 8-разрядных порта ввода-вывода с возможностью реализации определенных альтернативных функций.
Набор аппаратных средств и совокупность реализуемых функций делают микроконтроллер AT89C4051 эффективным средством сбора, обработки информации и управления объектами.
Данный микроконтроллер полностью подходит для решения поставленной в курсовом проекте задачи, т.к. у него имеются все необходимые для этого функциональные возможности.
3. Структура микроконтроллера
Рис. 3.1 Структура микроконтроллера AT89C4051
Рис. 3.2 Микросхема AT89C4051 и функции выводов
Назначение выводов микроконтроллера:
RST - Сигнал общего сброса;
P1.0-P1.7 - 8-разрядный двунаправленный порт ввода/вывода Р1;
P3.0-P3.7 - 8-разрядный двунаправленный порт ввода/вывода P3 c дополнительными функциями:
RXD - Последовательные данные приемника;
TXD - Последовательные данные передатчика ;
INT0 - Вход внешнего прерывания 0;
INT1 - Вход внешнего прерывания 1;
T0 - Вход таймера/счетчика 0;
T1 - Вход таймера/счетчика 1;
XTAL2-XTAL1 - Выводы для подключения кварцевого резонатора;
Vss - общий вывод (земля);
Vcc - Напряжение питания +5v;
4. Схема робота
4.1. Принципиальная схема и принцип её работы
Принципиальная схема (Рис. 4.1.1) управляет роботом. Она позволяет найти роботу источник сета и двигаться по направлении к нему. В движение робот приводится двумя электродвигателями постоянного тока, каждый двигатель вращает отдельное колесо (левое и правое, у робота их всего два), что позволяет роботу двигаться и поворачивать. Конструкция робота имеет 6 фототранзисторов для определения источника света, благодаря этому робот имеет угол обзора в 360 градусов.
Схема робота имеет следующие элементы:
конденсаторы:
С1 - 1000 мкФ, электролитический;
C2 - 0,1 мкФ, керамический;
С3, С4 - 22 мкФ, керамические;
резисторы:
R1 - 330 Ом;
R2 - 10 кОм;
R11 … R16 - 300 Ом;
R21 … R26 - 10 кОм, подстроечные;
фототранзисторы:
VT1 … VT6 - L32P3C;
светодиод: LED - красный;
кварц: ZQ - 4 МГц;
стабилизатор: LM7805;
кнопка сброса: SA;
Рис. 4.1.1 Принципиальная схема на мк для управления роботом
электродвигатели: M1, M2 - DC 9V EG-530YD-9B;
микроконтроллер: Atmel AT89C4051;
драйвер двигателей: L283D.
Схема питается от напряжения Vbat. В качестве источника питания можно использовать батарейку крона 9V. Чтобы сгладить возможные броски напряжения питания параллельно питающим линиям подключен электролитический конденсатор C1, который дополняет керамический конденсатор C2, для фильтрации высокочастотных и среднечастотных помех. Т.к. источник питания 9V, а для схемы требуется 5V, то используется пятивольтный стабилизатор напряжения 7805. Светодиод LED показывает наличие питания в схеме.
Чтобы защитить микроконтроллер от случайного сброса, на линию RESET подается сигнал высокого уровня 5V через резистор R2, также это выполняет сброс микроконтроллера при подачи питания. Для осуществления принудительного сброса микроконтроллера используется кнопка SA.
В качестве светодатчиков используются фототранзисторы VT1…VT6, с которых сигналы поступают на микроконтроллер. На фототранзисторы подается напряжение 5V через резисторы R11…R16. Чтобы датчики не реагировали на слишком слабый свет к ним подключаются подстроечные резисторы R21…R26, они позволяют настроить чувствительность датчиков. Номинал этих резисторов настраивается экспериментальным путём в зависимости от того насколько ярким будет источник света, на который реагирует робот, и с какого расстояния робот должен заметить его.
Сигналы с шести фотодатчиков поступают на микроконтроллер в порт P3: P3.0…P3.5. Обработав сигналы с датчиков, микроконтроллер посылает сигналы на драйвер двигателей через порт P1: P1.4…P1.7. Тактовую частоту микроконтроллеру задает кварцевый резонатор ZQ на частоту 4 МГц.
Сигналы с микроконтроллера идут на входы input1, input2, input3, input4 драйвера двигателей. Электродвигатели M1 и M2 подключаются к драйверу через выходы output1, output2 и output3, output4. Сам драйвер питается от напряжения 5V, а двигатели питаются от напряжения Vm=9V, в качестве источника питания для двигателей используется батарейка крона 9V.
4.2. Устройство и функции некоторых элементов схемы
Драйвер двигателей L293D
Рис. 4.2.1 Структурная схема L293D
Входы ENABLE1 и ENABLE2 отвечают за включение каждого из драйверов, входящих в состав микросхемы. Входы INPUT1 и INPUT2 управляют двигателем, подключенным к выходам OUTPUT1 и OUTPUT2. Входы INPUT3 и INPUT4 управляют двигателем, подключенным к выходам OUTPUT3 и OUTPUT4. Контакт Vs соединяют с положительным полюсом источника электропитания двигателей, этот контакт отвечает за питание электродвигателей. Контакт Vss соединяют с положительным полюсом источника питания, этот контакт обеспечивает питание самой микросхемы. Четыре контакта GND соединяют с "землей".
L293D содержит сразу два драйвера для управления электродвигателями небольшой мощности. L293D обеспечивает разделение электропитания для микросхемы и для управляемых ею двигателей, что позволяет подключить электродвигатели с большим напряжением питания, чем у микросхемы.
Характеристики микросхемы L293D :
напряжение питания двигателей (Vs) - 4,5...36V;
напряжение питания микросхемы (Vss) - 5V;
допустимый ток нагрузки - 600mA (на каждый канал);
пиковый (максимальный) ток на выходе - 1,2A (на каждый канал);
логический "0" входного напряжения - до 1,5V;
логическая "1" входного напряжения - 2,3...7V.
Стабилизатор напряжения LM7805
Характеристики LM7805:
корпус: TO-220-3;
рабочая температура: -40°C ~ 125°C;
ток выходной: 1A;
напряжение - падение (Typ.): 2V @ 1A;
напряжение входное: до 35V;
напряжение выходное: 5V.
Электродвигатель DC 9V EG-530YD-9B
Характеристики EG-530YD-9B:
диапазон напряжения: 6.3~11.7 В;
номинальное напряжение: 9 В;
ток: 0.98 А;
скорость вращения: 4000 об/мин;
крутящий момент: 50 г/см;
выходная мощность: 0.78 Вт;
КПД: 60 %.
5. Устройство и принцип действия робота
Робот имеет 6 светодатчиков состоящих из фототранзисторов VT1-VT6 (Рис 4.1.1). Они расположены по периметру робота, что дает область определения света на 360 градусов. На рисунке 5.1 линиями указаны области определения источника света для каждого датчика. Светодатчики 1 и 2 определяют источник света, находящийся спереди робота, перегородка между ними используется, чтобы сузить ту область нахождения источника света, при которой робот поедет прямо.
Рис. 5.1 Структура робота и области действия фотодатчиков
Для передвижения робот использует два колеса, которые приводятся в действие электродвигателями M1 и M2 (Рис 4.1.1). Вся электроника и источники питания робота расположены в его корпусе.
Принцип работы робота следующий: если свет падает на:
датчик 1 - робот поворачивает влево, вращая левое колесо вперёд;
датчик 2 - робот поворачивает вправо, вращая правое колесо вперёд;
датчики 1 и 2 - робот едет вперёд, вращаются оба колеса вперёд;
датчики 3 и (или) 4 - робот разворачивается против часовой стрелки, правое колесо вращается вперёд, левое назад;
датчики 5 и (или) 6 - робот разворачивается по часовой стрелки, левое колесо вращается вперёд, правое назад.
На основе таких принципов робот управляется источником света. Например, если источник света будет слева от робота, то он повернётся в его сторону и поедет прямо к нему. Если вдруг будут освещены все датчики, то робот будет двигаться вперёд, а если света совсем не будет, то робот будет стоять на месте.
6. Описание программы
Программа управляет роботом следующим образом: считываются данные с порта P3, на который поступают сигналы с датчиков света, эти данные анализируются, и затем посылаются сигналы управления двигателями в порт P1, к которому подключен драйвер двигателей.
В таблице 1 указано какие значения программа посылает в порт P1 в зависимости от данных с порта P3 и какие действия при этом выполнит робот. 1 - это сигнал высокого уровня, 0 - сигнал низкого уровня, х - любое значение (1 или 0). Т.к. входы микроконтроллера P3.6 и P3.7 не используются то программа не учитывает с них значения, выходы P1.0 - P1.3 также не используются, поэтому на них посылаются значения 0.
Таблица 1
Порт P3 |
Порт P1 |
Движение робота |
|
xx000000b |
00000000b |
стоп |
|
xxxxxx11b |
01010000b |
вперёд |
|
хxxxxх10b |
01000000b |
поворот влево |
|
xxxxxx01b |
00010000b |
поворот вправо |
|
xxxx0100b xxxx1000b xxxx1100b |
00110000b |
вращение против часовой стрелки |
|
xx010000b xx100000b xx110000b |
11000000b |
Вращение по часовой стрелки |
При запуске программы сначала идёт настройка микроконтроллера на нужный режим, далее в регистр P1 посылается константа 00000000b, чтобы робот сначала стоял на месте, затем записываются все 6 констант для управления двигателями в регистры R0-R5. Потом начинается цикл, в котором посылается константа из регистров R0-R5 в регистр P1. Значение константы
выбирается в зависимости от значения данных с регистра P3 согласно таблице 1. Программа определяет данные с регистра P3 на каждом цикле.
Весь алгоритм работы программы указан в блок-схеме на рисунке 6.1.
Рис. 6.1 Блок-схема программы
Заключение
В процессе выполнения данного курсового проекта была разработана принципиальная схема и программное обеспечение для робота, управляемого источником света, а также его конструкция.
Принципиальная схема получилась довольно простой, но в тоже время функциональной за счёт использования в ней микроконтроллера AT89C4051 и драйвера двигателей L293D, что также значительно упростило схему. В схему входят недорогие и распространённые компоненты, это упростит процесс её реализации.
Программа для микроконтроллера имеет простой алгоритм работы. За счет такой простоты она не позволит роботу сбиться в неопределённых ситуациях, например если вдруг будет несколько источников света вместо одного.
Робота можно адаптировать под разные условия, т.к. микроконтроллер можно перепрограммировать под новые алгоритмы управления, а чувствительность светодатчиков можно регулировать, и всё это без внесения изменений в его конструкцию и принципиальную схему.
Список литературы
1. В.В. Сташин, А.В. Урусов, О.Ф. Мологонцева Проектирование цифровых устройств на однокристальных микроконтроллерах. - М.: издательство «Энергоатомиздат», 1990. - 224 с.
2. Сединин В.И., Микушин А.В. Программирование микропроцессорных систем на языке ASM-51.- М.: издательство «Радио и связь», 2003. - 331 с
3. Фрунзе А.В. Микроконтроллеры? Это же просто. - М: ООО «ИД СКИМЕН», 2002. - 336 с.
4. Бродин В.Б., Калинин А.В. Системы на микроконтроллерах и БИС программируемой логики. - М: издательство «ЭКОМ», 2002. - 400 с.
Приложение 1. Текст программы
org 0h
jmp begin
org 0Bh
begin:
mov A,#0
mov P1,A ;стоять на месте
;команды управления двигателями
mov R0,#00000000b ;оба колеса не вращаются
mov R1,#01010000b ;оба колеса вращаются вперёд
mov R2,#01000000b ;левое колесо вращается вперёд, правое стоит
mov R3,#00010000b ;правое колесо вращается вперёд, левое стоит
mov R4,#00110000b ;правое вперёд, левое назад
mov R5,#11000000b ;левое вперёд, правое назад
START: ;начало цикла
jnb P3.0,m1 ;если с VT1 нет сигнала, то переход
jnb P3.1 m2 ;если с VT2 нет сигнала, то переход
mov A,R1 ;если сигнал с VT1 и VT2, то
mov P1,A ;движение вперёд
jmp START
m1:
jnb P3.1,m3 ;если с VT2 нет сигнала, то переход
mov A,R2
mov P1,A ;поворот направо
jmp START
m2:
mov A,R3
mov P1,A ;поворот налево
jmp START
m3:
jb P3.2,m4 ;если есть сигнал с VT3, то переход
jb P3.3,m4 ;если есть сигнал с VT4, то переход
jb P3.4,m5 ;если есть сигнал с VT5, то переход
jb P3.5,m5 ;если есть сигнал с VT6, то переход
mov A,R0 ;если нет сигналов ни с одного датчика, то
mov P1,A ;стоять
jmp START
m4:
mov A,R4
mov P1,A ;разворот влево
jmp START
m5:
mov A,R5
mov P1,A ;разворот вправо
jmp START
end
Приложение 2. Листинг программы
MCS-51 MACRO ASSEMBLER ROBOTMK 05/30/;4 PAGE 1
DOS 5.0 (038-N) MCS-51 MACRO ASSEMBLER, V2.3
OBJECT MODULE PLACED IN C:\SHELL\ROBOTMK.OBJ
ASSEMBLER INVOKED BY: C:\SHELL\ASM51.EXE C:\SHELL\ROBOTMK.ASM
LOC OBJ LINE SOURCE
0000 1 org 0h
0000 02000B 2 jmp begin
000B 3 org 0Bh
4 begin:
10
0019 7400 11 mov A,#0
001B F590 12 mov P1,A
001D 7800 13 mov R0,#00000000b
001F 7950 14 mov R1,#01010000b
0021 7A40 15 mov R2,#01000000b
0023 7B10 16 mov R3,#00010000b
0025 7CC0 17 mov R4,#11000000b
0027 7D30 18 mov R5,#00110000b
19
20 START:
0029 30B008 21 jnb P3.0,m1
002C 30B10D 22 jnb P3.1, m2
002F E9 23 mov A,R1
0030 F590 24 mov P1,A
0032 80F5 25 jmp START
26
27 m1:
0034 30B10A 28 jnb P3.1,m3
0037 EA 29 mov A,R2
0038 F590 30 mov P1,A
003A 80ED 31 jmp START
32
33 m2:
003C EB 34 mov A,R3
003D F590 35 mov P1,A
003F 80E8 36 jmp START
37
38 m3:
0041 20B20E 39 jb P3.2,m4
0044 20B30B 40 jb P3.3,m4
0047 20B40D 41 jb P3.4,m5
004A 20B50A 42 jb P3.5,m5
004D E8 43 mov A,R0
004E F590 44 mov P1,A
0050 80D7 45 jmp START
46
47 m4:
0052 EC 48 mov A,R4
0053 F590 49 mov P1,A
0055 80D2 50 jmp START
MCS-51 MACRO ASSEMBLER ROBOTMK 05/30/;4 PAGE 2
LOC OBJ LINE SOURCE
51
52 m5:
0057 ED 53 mov A,R5
0058 F590 54 mov P1,A
005A 80CD 55 jmp START
56
57 end
MCS-51 MACRO ASSEMBLER ROBOTMK 05/30/;4 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E A T T R I B U T E S
BEGIN. . . C ADDR 000BH A
M1 . . . . C ADDR 0034H A
M2 . . . . C ADDR 003CH A
M3 . . . . C ADDR 0041H A
M4 . . . . C ADDR 0052H A
M5 . . . . C ADDR 0057H A
P1 . . . . D ADDR 0090H A
P3 . . . . D ADDR 00B0H A
SCON . . . D ADDR 0098H A
START. . . C ADDR 0029H A
TH1. . . . D ADDR 008DH A
TMOD . . . D ADDR 0089H A
TR1. . . . B ADDR 0088H.6 A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE, NO ERRORS FOUND
Размещено на Allbest.ru
Подобные документы
История развития направления моделизма. Известные коммерческие модели роботов. Функциональная схема и основные действия промышленного робота. Роботы AquaJelly и AirJelly. Программное обеспечение, позволяющее треугольникам собираться в "разумные" машины.
реферат [21,1 K], добавлен 06.06.2009Принципиальная схема устройства современного персонального компьютера. Краткая характеристика основных составляющих ПК: процессора, модулей оперативной (внутренней) и долговременной (внешней) памяти, устройств ввода и вывода информации для пользователя.
презентация [100,7 K], добавлен 07.06.2015Принцип действия устройства сбора информации на базе микроконтроллера МК51: индикация, "рабочий режим" и передача данных персонального компьютера. Алгоритм начального опроса датчиков. Электрическая принципиальная схема устройства, текст программы.
курсовая работа [102,5 K], добавлен 21.10.2012Назначение, технические характеристики промышленного робота МП20. Режимы работы робота и кинематическая схема. Приводные электродвигатели. Элементы электроавтоматики. Алгоритм управления следящим цифроаналоговым приводом. Интерфейс станочной магистрали.
курсовая работа [1,7 M], добавлен 15.04.2013Основные составляющие компьютерной системы. История развития, особенности применения микропроцессоров. Устройство и работа D-триггера. Принципиальная электрическая схема, директивы, операторы и описание программы для микропроцессоров, виды отладчиков.
методичка [2,9 M], добавлен 27.11.2011Преимущества и недостатки роботизированной сварки. Характеристика видов систем управления базами данных. Информационная модель сварочного робота, системы управления роботом сварочных клещей. Критерии выбора робота и структура запроса на выборку.
курсовая работа [3,3 M], добавлен 22.12.2014Обеспечение устойчивости грузоподъемных машин - важнейшее условие при разработке систем управления их рабочими операциями. Физическая модель платформы. Краткие технические характеристики элементов. Схема автоматизации и электрическая принципиальная схема.
курсовая работа [4,2 M], добавлен 09.12.2013Порядок и назначение разработки подсистемы планирования действий интеллектуального робота. Задачи, решаемые данной подсистемой и функциональные требования к ней. Информационное моделирование функционирования интеллектуального робота и управление им.
дипломная работа [864,0 K], добавлен 10.06.2010Принцип действия процессора, оперативной памяти персонального компьютера. Ввод данных с помощью клавиатуры, мыши, графического планшета, сканера, цифровой камеры и микрофона. Использование устройств для вывода информации: монитора, принтера и колонок.
презентация [2,0 M], добавлен 05.02.2014Загальна класифікація роботів. Проектування та розробка системи управління промисловим роботом "Електроніка НЦ ТМ-01" на базі IBM–сумісного персонального комп’ютера. Структурно функціональна схема взаємодії систем робота. Блок схема системи управління.
дипломная работа [3,6 M], добавлен 25.10.2012