Видео: Создание бамперов для робота: 4 шага
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
На моем курсе компьютерной инженерии в 11 классе нам была поставлена задача заставить нашего робота пройти лабиринт. Чтобы контролировать, идет ли он прямо, поворачивает налево или направо, нас попросили сделать бамперы. Таким образом, если робот коснется стены и ударится о правый бампер, робот повернет налево, а если он ударится о левый бампер, робот повернет направо. По сути, наша задача состояла в том, чтобы создать бампер, который можно толкать, чтобы можно было повернуть, и мне также нужно выйти, чтобы он не продолжал вращаться. Однако установка бампера также требует, чтобы вы установили код и схему, чтобы ваш бампер работал. Выполните следующие действия, чтобы узнать, как сделать собственный бампер для робота.
Шаг 1: Схема
Чтобы заставить бамперы работать, вам нужно создать схему на макете в верхней части вашего робота.
(следуйте рисунку выше, чтобы получить 2 бампера)
Необходимые материалы
- 2 небольших светодиодных фонаря (чтобы убедиться, что ваши бамперы работают)
- 8 проводов
- 2 коричнево-черно-желтых резистора
- 2 красно-красно-коричневых резистора
Что нужно иметь в виду
- Vss - это "земля", поскольку он равен нулю, а Vdd равен 1.
- Когда схема работает, значение равно 0, когда она не работает, значение равно 1.
- Плоская сторона светодиода отрицательная, а другая - положительная.
Распространенные ошибки в схемах
- Светодиод - неправильный путь
- Светодиод, резистор и провод не расположены в одном столбце.
- Светодиод больше не работает
Шаг 2: Код
Код:
'{$ STAMP BS2}' {$ PBASIC 2.5}
LBump PIN 11
RBump PIN 10
LMOTOR PIN 15
ПИН 14 RMOTOR
RFast CON 650
LFast CON 850
RSlow CON 700
LSLOW CON 800
MStop CON 750
RFastRev CON 850
LFastRev CON 650
RSlowRev CON 800
LSlowRev CON 700
MLoopC VAR Word 'For.. Next Variable до 65000ish
ДЕЛАТЬ
GOSUB Forwardfast 'вперед
IF IN10 = 0 THEN 'если два провода на входе 10 нажаты, поверните налево.
GOSUB TurnLeft90
ELSEIF IN11 = 0 THEN 'если два провода на входе 11 нажаты, поверните направо
GOSUB TurnRight90
ENDIF
ПЕТЛЯ
TurnRight90:
Подпроцедура для поворота на 90 градусов вправо
'**********************************************************
ВЫСОКИЙ 1
НИЗКИЙ 0
ДЛЯ MLoopC = от 1 до 22
PULSOUT LMOTOR, LfastRev 'двигаться вперед на один импульс
PULSOUT RMOTOR, Rfast 'с использованием выводов и констант
ПАУЗА 20
«20 мс позволяет роботу двигаться» перед СЛЕДУЮЩИМ импульсом
СЛЕДУЮЩИЙ
ВОЗВРАЩЕНИЕ
'*********************************************************
TurnLeft90:
Подпроцедура для поворота на 90 градусов вправо
'********************************************************
ВЫСОКИЙ 0
НИЗКИЙ 1
ДЛЯ MLoopC = от 1 до 22
PULSOUT LMOTOR, Lfast 'двигаться вперед на один импульс
PULSOUT RMOTOR, RfastRev 'с использованием пинов и констант
ПАУЗА 20 минут 20 мс позволяет роботу двигаться перед СЛЕДУЮЩИМ импульсом
СЛЕДУЮЩИЙ
ВОЗВРАЩЕНИЕ
'***********************************************************
Вперед Быстро:
'Подпроцедура для быстрого перемещения робота на один квадрат вперед
'**********************************************************
ДЛЯ MLoopC = от 1 до 70
ПУЛЬСОУТ ДВИГАТЕЛЬ, LFast PULSOUT
РМОТОР, RFast
ПАУЗА 20
СЛЕДУЮЩИЙ
ВОЗВРАЩЕНИЕ
Краткий обзор
Цель этого кода - запрограммировать поворот робота влево при нажатии на правые провода (бампер) и поворот вправо при нажатии на левые провода (бампер).
Что означает код?
Прежде чем я отвечу на этот вопрос, вы должны знать, что означают некоторые коды, используемые в этой программе.
GOSUB - подпрограмма означает переход к подпрограмме (подпрограмма должна быть указана в вашем коде)
ENDIF - используется для завершения многострочной команды IF
_
объяснение смысла кода…..
ДОГОСУБ Форвардфаст
- говорит роботу идти вперед, когда он включен
ЕСЛИ IN10 = 0, ТО
GOSUB TurnLeft90
- говорит, что если два провода на входе 10 (правый бампер) соприкоснутся, робот повернется налево на 90 градусов.
ELSEIF
IN11 = 0 ТОГДА GOSUB TurnRight90
- говорит, что если два провода на входе 11 (левый бампер) соприкоснутся, робот повернется вправо на угол 90.
TurnRight90: 'Подпроцедура поворота вправо на 90 градусов
'**********************************************************
ВЫСОКИЙ 1
НИЗКИЙ 0
ДЛЯ MLoopC = от 1 до 22
PULSOUT LMOTOR, LfastRev
PULSOUT RMOTOR, Rfast
ПАУЗА 20
СЛЕДУЮЩИЙ ВОЗВРАТ '********************************************** **********
- это пример подпрограммы, которая используется, чтобы вам не приходилось повторять один и тот же длинный код снова и снова. таким образом ваш код выглядит аккуратнее и собраннее.
- высокий 1 / низкий ноль означает, что, когда робот поворачивает направо (левые провода соприкасаются), загорается светодиод, таким образом вы знаете, что все работает.
Шаг 3. Бамперы (требуются материалы)
Для изготовления бампера вам понадобится…
- 4 палочки для мороженого для основной конструкции и 2 палочки для мороженого для крепления бампера на роботе.
- 4 шт. Губки
- 4 скрепки
- фольга алюминиевая
- 4 провода (для подключения к макетной плате, о схеме объяснено в шаге 1)
- термоклеевой пистолет и клеевые стержни
- изоляционная лента
Шаг 4: Сборка бамперов
Чтобы сделать один бампер, возьмите 2 палочки от мороженого и отрежьте закругленные концы (как показано на первом рисунке). Эти палочки для мороженого будут выступать в качестве верхней и нижней части вашего бампера. Для того, чтобы провода соприкасались и сразу отключались от соприкосновения, потребуется губка. Возьмите губку и отрежьте 2 крошечных квадрата (как на втором изображении выше). Затем с помощью пистолета для горячего клея возьмите 1 палочку для мороженого и приклейте 1 квадрат губки с левой стороны и одну губку с правой стороны (используйте 3-е изображение в качестве ориентира). Затем возьмите 1 проволоку и оберните ее конец алюминиевой фольгой. Поместите проволоку в середину палочки для мороженого и закрепите ее скрепкой. Повторите этот шаг со второй проволокой и палочкой для мороженого. В последнюю очередь приклейте эскимо без губок к эскимо с губками (как показано на 3-м рисунке выше). Теперь ваш первый бампер готов
Повторите этот процесс еще раз, чтобы сделать второй бампер.
Чтобы добавить бампер к роботу, возьмите одну палочку от мороженого и приклейте ее к нижней части бампера. Наклоните левый бампер влево, а правый бампер вправо. Наклеил бамперы малярным скотчем. (фото № 4 - готовые бамперы, прикрепленные к роботу).