Мини роботы

Семейство мини роботов, каждый со своим собственным поведением.

Описание

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

Подробная информация

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

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

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

  • Робот 1 – Имеет левый и правый глаз, которые направлены вниз. Они могут обнаруживать светлые участки на поверхности. Посмотрите видео его работы в качестве оператора линейного слежения.
  • Робот 2 – Имеет один глаз, направленный вниз, и один вперед. Глаза контролируют группу светодиодов по ее периметру. Они отслеживают светлые участки на поверхности и смотрят вперед. Робот также может посылать сигнал во всех направлениях с помощью светоизлучающих диодов.
  • Робот 3 – Имеет один глаз, направленный вперед, и два отдельно контролируемых светодиода, которые направлены под углом 45 градусов в каждую сторону. Предполагается, что этот робот может обнаруживать препятствия и определять направление, куда нужно повернуть, чтобы их преодолеть. Я пока ещё продолжаю разрабатывать эту функцию.

Аппаратные средства:
В качества контроллера можно использовать любой 8-выводной ATtiny. Я использовал tiny85, поскольку он просто был в наличии. Я попробовал версию на базе ATtiny10, но впоследствии больше к ней не возвращался. В качестве батарей я использовал перезаряжаемые литиевые батареи монетного типа IR2032, которые я вытащил из брелока-фонарика на солнечной батарее. Хоть они и недолго работали между циклами заряда, однако я не планировал тратить много денег на приобретение новых батарей.
Вот как выглядит нижняя часть платы каждого робота.

Здесь вы можете увидеть МОП-транзисторы 2N7002K, которые предназначены для управления двигателями. Также на платах установлены различные резисторы, конденсаторы и светодиоды. Схемы роботов указаны ниже:

Программное обеспечение:
На данном этапе используется очень простая программа. В ее код достаточно просто добавить ещё один шаблон поведения, поскольку основной цикл просто вызывает функцию поведения. Робот 1 имеет поведение линейного слежения. Робот 2 сканирует поверхность и может отправлять сигнальные сообщения другим роботам, находящимся в данной зоне. Робот 3 избегает препятствия (все ещё работаю над данной функцией). Я могу, конечно, загрузить текущий программный код для данного робота, если будет нужно, но в этот код постоянно вносятся изменения и он ещё далек от завершения. Вот почему на этом этапе я пока не предоставил данный программный код.

Если я сделаю новых роботов, видео, коррекции и т.д., тогда, естественно, я предоставлю обновленную информацию об этом.

Перечень компонентов

  • 1 × микроконтроллер ATtiny85
  • 2 × МОП-транзисторы 2N7002K МОП с изолированным затвором
  • 2 × небольших двигателя от андромеда роботов
  • 1 × красный светоизлучающий диод
  • 1 × фототранзистор ASDL-6620
  • 1 × комплект различных резисторов и конденсаторов с поверхностным монтажом, которые изображены на схеме
  • 1 × перезаряжаемая батарея LIR2032 3.6В

Ниже представлен код линейного слежения для робота 1 на Github.

  • Robot1.ino – Arduino версия может использоваться непосредственно в Arduino
  • Robot1.cpp – c++ версия, которая все ещё использует Arduino библиотеки


Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

Робот 1.
МК AVR 8-битATtiny851

MOSFET-транзистор2N7002K2

ФототранзисторASDL-66202

Электролитический конденсатор10 мкФ1

Резистор330 Ом1

Резистор10 кОм2

СветодиодКрасный1

Двигатель2
От роботов "Андромеда"
Перезаряжаемая батареяLIR2032 3.6 В1
Робот 2.
МК AVR 8-битATtiny851

MOSFET-транзистор2N7002K3

ФототранзисторASLD-66202

Электролитический конденсатор10 мкФ1

Резистор100 Ом1

Резистор470 Ом1

Резистор10 кОм2

СветодиодКрасный4

Двигатель2
От роботов "Андромеда"
Перезаряжаемая батареяLIR2032 3.6 В1
Робот 3.
МК AVR 8-битATtiny851

MOSFET-транзистор2N7002K2

ФототранзисторASLD-66201

Электролитический конденсатор10 мкФ1

Резистор220 Ом2

Резистор22 кОм1

СветодиодКрасный2

Двигатель2
От роботов "Андромеда"
Перезаряжаемая батареяLIR2032 3.6 В1
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.