Оглавление:
Видео: BAAAA ---- BOT: 3 шага (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Всем привет! Это инструкция по созданию полуцелевой, определенно очаровательной овцы, напоминающей бот-бо с рабочими бамперами. Это руководство проведет вас через процесс создания бамперов, даст вам весь код и краткую демонстрацию всей потрясающей эстетики!
Шаг 1: Код
Таким образом, код действительно прост, и, честно говоря, вам не понадобится более 2 часов, чтобы полностью понять и научиться делать это самостоятельно. Но! Для тех, кто просто хочет увидеть код, скопировать и вставить его в базовую программу редактора штампов, тогда готово
Код:
'*********************************************** *********************** Имя: Лука ДеФилиппис
Название - BoeBump.bs2
Дата - 28 ноября 2017 г.
«Описание» Создавайте физические бамперы, которые запускают команду при ударе во что-то », чтобы отодвинуть Boe Bot от препятствия.
'{$ STAMP BS2}' {$ PBASIC 2.5}
**** ЭТО ВЫШЕ ЭТО ПРОСТО ИНФОРМАЦИЯ О КТО ЭТОГО И ОСНОВНЫХ МАТЕРИАЛАХ, КАК ЧТО *******
'************************************************************************
'Код для сброса запуска и остановки
'этот код заставляет бота останавливаться или запускаться при нажатии сброса = хорошо для того, чтобы убедиться, что бот не запускает код при загрузке программы
'************************************************************************
temp VAR Byte 'временное хранилище RunStatus DATA $ 00' переменная, хранящаяся в ПЗУ
READ RunStatus, temp 'ЧИТАТЬ переменную из ПЗУ temp = ~ temp' инвертировать значение 0 В 1 ИЛИ 1 В 0 ЗАПИСАТЬ RunStatus, temp 'ЗАПИСАТЬ переменную обратно в ROM IF (temp> 0) THEN END' Проверить, если значение равно 1 'ЕСЛИ так ЗАКОНЧИТЬ программу
'************************************************************************
'Настройка контактов
'************************************************************************
LMotor PIN 13 R Motor PIN 12
'************************************************************************
'Настройка констант
'************************************************************************
LStop CON 750 RStop CON 750
'************************************************************************
'Переменные
'************************************************************************
X VAR Word
'************************************************************************
'Основная программа
'************************************************************************
ДЕЛАТЬ
ВЫСОКИЙ 1 'Включите катоды
ВЫСОКИЙ 2
ВЫСОКИЙ 3
ВЫСОКИЙ 9
ВЫСОКАЯ 10
ВЫСОКИЙ 11
ОТЛАДКА? IN14,? IN4, CR
ЕСЛИ (IN14 = 1) И (IN4 = 1) THEN 'Нет контакта с бамперами, переходник вперед
DEBUG «Вперед», CR 'отладка, чтобы увидеть, какая команда движения происходит
НИЗКИЙ 1
LOW 2 'Включите катоды и мигают красным и синим
НИЗКИЙ 9
НИЗКИЙ 10
ГОСУБ Форвард
ELSEIF (IN14 = 0) AND (IN4 = 0) THEN 'Контакт с обоими бамперами, sub BothBump = назад вверх перейти вперед направо
ОТЛАДКА "BothBump", CR
LOW 1 'длинная пауза, оба светятся зеленым
НИЗКИЙ 3
НИЗКИЙ 9
НИЗКИЙ 11
GOSUB BothBump
ELSEIF (IN14 = 0) AND (IN4 = 1) THEN 'Контакт с левым бампером, вспомогательный BumpRight = назад вверх перейти вперед вправо
ОТЛАДКА "BumpRight", CR
НИЗКИЙ 9 'правый свет станет синим, левый станет зеленым
НИЗКИЙ 11
ПАУЗА 200
GOSUB BumpRight
ELSEIF (IN14 = 1) AND (IN4 = 0) THEN 'Контакт с правым бампером, sub BumpLeft = назад вверх идти вперед налево
ОТЛАДКА "BumpLeft", CR
НИЗКИЙ 1 'левый индикатор загорится синим, правый станет зеленым
НИЗКИЙ 3
ПАУЗА 200
GOSUB BumpLeft
ENDIF
ПЕТЛЯ
END 'Остановить программу перед случайным запуском подпроцедур
'************************************************************************
'Подпроцедуры
'************************************************************************
Вперед: «Вперед на 25 см.
'FREQOUT 6, 200, 1600' дополнительные частоты полицейской сирены для нот e high и e flat, это замедляет работу бота и работает очень тихо
'ЧАСТОТА 6, 100, 800
ДЛЯ X = 1 ДО 500
PULSOUT R Motor, 700
PULSOUT L Двигатель, 850
СЛЕДУЮЩИЙ
ПАУЗА 20
ВОЗВРАЩЕНИЕ
'****************************************************
Код на задний ход и поворот при ударе обоими бамперами
'****************************************************
BothBump: 'ОБРАТНЫЙ 20см
ДЛЯ X = 1 ДО 150
PULSOUT R Motor, 850
PULSOUT L Двигатель, 650
СЛЕДУЮЩИЙ
ПАУЗА 200
ДЛЯ X = 1 ДО 200 'Поверните налево на 60 градусов
PULSOUT R Motor, 650
PULSOUT LMotor, 760
СЛЕДУЮЩИЙ
ПАУЗА 20
ВОЗВРАЩЕНИЕ
'****************************************************
'Код для заднего хода и поворота налево при ударе правого бампера
'****************************************************
BumpLeft: 'НАЗАД 20см
ДЛЯ X = 1 ДО 150
PULSOUT R Motor, 850
PULSOUT L Двигатель, 650
СЛЕДУЮЩИЙ
ПАУЗА 200
ДЛЯ X = 1 ДО 200 'Поверните вправо на 45 градусов
PULSOUT R Motor, 740
PULSOUT L Двигатель, 850
СЛЕДУЮЩИЙ
ПАУЗА 20
ВОЗВРАЩЕНИЕ
'****************************************************
'Код для заднего хода и поворота налево при ударе правого бампера
'****************************************************
BumpRight: НАЗАД 20 см
ДЛЯ X = 1 ДО 150
PULSOUT R Motor, 850
PULSOUT L Двигатель, 650
СЛЕДУЮЩИЙ
ПАУЗА 200
ДЛЯ X = 1 ДО 200 'Поверните налево на 60 градусов
PULSOUT R Motor, 650
PULSOUT LMotor, 760
СЛЕДУЮЩИЙ
ПАУЗА 20
ВОЗВРАЩЕНИЕ
'********************************************************
'Конец подпроцедур
'********************************************************
Комментарии в коде должны дать вам представление о том, как все работает и почему присутствует определенный код, но в любом случае здесь дается краткое объяснение
Итак, этот код работает следующим образом. Бот запустит код цикла для проверки входов бамперов, которые действуют как кнопки. Таким образом, всякий раз, когда нет обнаружения (1, 1), будет запущена подпроцедура пересылки, и бот будет двигаться вперёд. Эта же идея работает независимо от того, есть ли обнаружение левого, правого или даже обоих бамперов
Катоды используют команды высокого и низкого уровня для отображения света на основе входных сигналов от бампера. Они должны мигать синим и красным, как полицейская машина, когда не было обнаружено никакого обнаружения, и они должны повернуть соответствующий левый или правый световой бампер на зеленый, если указанный бампер имеет какое-либо обнаружение. Подпроцедуры говорят боту отступить и повернуть вправо или влево в зависимости от удара, чтобы избежать препятствия, с которым он столкнулся. Это работает исключительно хорошо в лабиринтах, потому что поворот очень небольшой, что означает, что бот будет осторожен, чтобы не повернуться слишком сильно и выйти из лабиринта
К подпроцедуре вперед прикреплена команда freqout, позволяющая передавать звук при движении вперед. Приведенные частоты должны звучать как полицейская сирена, таким образом добавляя эстетики использования полицейских огней
Вот оно что! Ничего слишком безумного, чтобы понять, я надеюсь, что это было полезно и просто
Шаг 2: Строительство
Что тебе понадобится:
6 резисторов по 1 кОм
2 резистора по 10 кОм
2 3-х цветных катода
1 динамик (опционально)
любой малогабаритный конденсатор (тоже по желанию (для динамика!))
Множество проводов
2 палочки для мороженого
Алюминиевая фольга
Небольшие кусочки картона
Горячий клей
Лента
Бамперы
Итак, начнем с бамперов! Чтобы сделать их, вам понадобится алюминиевая фольга, картон, проволока и горячий клей, чтобы прикрепить их к доске.
1. Вырежьте 2 картонных прямоугольника одинакового размера и сложите их пополам.
2. Приклейте горячим клеем 2 части к той же палочке для мороженого, а затем приклейте горячим клеем другую сторону картонных частей к другой отдельной палочке для мороженого.
3. Теперь вам нужно сложить алюминиевую фольгу в несколько больших квадратов, достаточно больших, чтобы уместить по 2 на каждый кусок картона, прикрепить кусочки фольги к картону с помощью скоб или любого другого проводника. Я использовал скобы.
4. Теперь важно прикрепить 2 провода к каждой части картона и убедиться, что они имеют надежное соединение с алюминиевой фольгой.
Они должны выглядеть примерно так, как на первом изображении.
5. Наконец, теперь вам нужно прикрепить 4 провода к плате. Сделайте это, соединив 2 с Vss и один в любом месте 6-го ряда, а один в любом месте 14-го ряда.
Чтобы прикрепить бамперы к боту, вы можете сделать это разными способами, я делаю это, приклеивая переднюю часть бота и приклеивая к нему палку.
И вот собственно с установкой бамперов! Теперь нужно их использовать!
Электромонтаж всего
Эта следующая часть немного сложна для объяснения, но я постараюсь сделать это изо всех сил с огромной визуальной помощью. Справочные изображения 3, 4, 5, чтобы просто подключить компоненты, как вы их видите.
Итак, вам нужно вставить катоды с правой стороны платы и установить по 3 резистора 1 кОм в каждый катод, что устранит ваши 6 резисторов 1 кОм.
Когда это будет завершено, вы захотите подключить заземление или vss ко второму контакту каждого катода, самому длинному проводу.
На этом катоды завершены, поэтому следующее, что нужно сделать, - это подключить резисторы 10 кОм от vdd к местам, в которые вы помещаете 2 провода бампера на плате.
Затем также используйте провод и подключите контакт 6 правого бампера к самому правому резистору 10 кОм и проводу бампера.
Следуйте предыдущему шагу для самого левого резистора 10 кОм.
Следующий шаг не является обязательным для динамика, и он заключается в подключении небольшого конденсатора к контакту 7 и к плате.
Затем вам нужно подключить отрицательный конец динамика к конденсатору и, наконец, подключить положительный конец к VSS.
На этом должна быть завершена проводка, и обязательно обратитесь к изображениям 3, 4, 5 для получения дополнительной помощи!
Шаг 3: BAAAAAA ------ Feature
Наряду с полицейскими фонарями и дополнительной полицейской сиреной. Ваш BoeBot станет королем всех остальных, если будет одет как овца!
Как видно на заглавном изображении, я сделал свою похожую на одну!
Сделать это действительно просто, все, что вам нужно, это:
Слоёные шарики
Изоляционная лента
1. Просто разложите слои ленты и убедитесь, что все они соединены с липкостью, оставленной на них, чтобы наклеить слоеные шарики.
2. Слой на липкую часть слоеных шариков.
3. Это та часть, когда вы прикрепляете меховое пальто к боту, вы можете сделать это разными способами.
Добавьте перевернутую ленту на концы ворса и оберните ленту вокруг бота, как веревку.
ИЛИ Приклейте нижнюю часть бота изолентой и приклейте горячим клеем свободные концы ленты сетки к ленте в нижней части бота.
Я сделал первый вариант для более быстрого и легкого доступа к доске, если что-то пойдет не так!
Вот и все! Надеюсь, теперь ваш Boe Bot с его удивительными характеристиками станет лучшим в круизах по городу.