Как сделать бесполезную коробку

Бесполезная роботизированная коробка URoboBox

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Многие из вас наверняка знают и видели гаджет под названием «Бесполезная коробка».

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

Решив позабавить своих детей, друзей и знакомых, я сделал URoboBox.

Это моя версия легендарной коробки.

Наткнулся в сети на такую штуку:

И еще вариант продвинутый вариант от LEGO:

В интернете также нашел инструкцию как собрать самостоятельно URoboBox – бесполезную роботизированную коробку.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

URoboBox – Useless Robotic Box (Бесполезная Роботизированная Коробка).

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

URoboBox в действии:

URoboBox может работать в двух режимах, случайный выбор движений и по порядку.

Коробочка имеет 7 движений для отключения тумблера, можно добавлять свои движения.

Если рычаг по каким-то причинам не может выключить тумблер, то после трех попыток коробочка переходит в режим ожидания.

Работа продолжится после отключение тумблера вручную.

Далее идет часть для тех кто желает собрать такую коробочку самостоятельно.

Работа URoboBox изнутри:

Корпус и рычаг вырезаны лазером из фанеры толщиной 4 мм.

Вы можете использовать любой другой материал, например, пластик, оргстекло.

Но толщина материала не должна превышать 4 мм, в противном случае, вам придется изменить чертежи.

Чертежи нарисованы в программе CorelDRAW X6.

Следуйте инструкции и у вас всё получится.

ВНИМАНИЕ: Вовремя сборки внимательно смотрите на фотографии и располагайте детали именно так, как они расположены на фото.

Необходимые компоненты:

Инструкция по сборке:

Крепление для Arduino.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Вот что у вас должно получиться:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Вот что должно получится:

Левая верхняя крышка:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Вот что у вас должно получиться:

Крепление серво, рычага, тумблер, завершение сборки:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Вот что у вас должно получиться:

Откройте код для URoboBox. В самом начале кода, вы увидите раздел настроек.

Код URoboBox для Arduino (СКАЧАТЬ)

Архив с файлом чертежей URoboBox для лазерной резки. Файл создан в программе CorelDRAW X6. (СКАЧАТЬ)

Робот-собака своими руками:

Источник

Про Ардуино и не только

воскресенье, 12 мая 2019 г.

Бесполезная коробка на ATmega328P

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Последнее время у меня в блоге одни микроконтроллеры, программаторы и загрузчики. Надо бы отвлечься и написать о чем-то, что можно собрать своими руками. Думаю, «бесполезная коробка» отлично подойдет для этого: эта забавная поделка обязательно понравится и ребенку, и взрослому, а сделать ее под силу каждому.

Необходимые компоненты

Прежде чем перейти к описанию изготовления бесполезной коробки я приведу несколько соображений, которых я придерживался. Во-первых, не хотелось бы устанавливать в такой игрушке дополнительный выключатель для управления ее питанием. То есть коробка должна быть всегда включена и готова к работе. Значит нужно позаботиться об энергосбережении в режиме ожидания. Поэтому желательно использовать именно отдельный микроконтроллер, а не Ардуино, так как он позволяет добиться значительного снижения энергопотребления. Я решил использовать ATmega328P с тактированием от внутреннего RC-генератора 8МГц. В режиме сна он потребляет менее 1мкА. Если вы планируете использовать Ардуино, то я бы порекомендовал Pro Mini 8MHz, из нее нужно выпаять светодиод-индикатор питания и запитать ее через пин 5V (в обход стабилизатора).

Если Ардуино / микроконтроллер можно перевести в режим энергосбережения, то картину портят сервоприводы: даже в режиме простоя они потребляют несколько миллиампер. Здесь-то и пригодится транзистор, с его помощью можно отключать питание сервоприводов пока микроконтроллер спит. Полевой транзистор удобен тем, что он управляется не током, а напряжением, потому весьма экономичен. Но, думаю, для этой задачи можно подобрать и биполярный транзистор.

Изготовление коробки

Детали я выпилил на лобзиковом станке:

Рычаг, который выключает тумблер, я склеил из трех отдельных частей. Если делать его из фанеры, то он может быть и цельным. Чтобы определиться с размерами и формой рычага я установил тумблер в обрезке доски и приклеил к ней сервопривод на двусторонний скотч. Затем, соединив детали будущего рычага струбцинами, подобрал подходящую форму, чтобы он свободно поворачивался и доставал до тумблера:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку
Выбор подходящей формы для рычага

Другой рычаг должен поднимать крышку, с его изготовлением нет ничего сложного. Можно было бы обойтись и пластиковым рычагом, что идет в комплекте с SG90, но он для этого коротковат.

Сами сервоприводы отлично держатся в коробке на двустороннем скотче.

Отдельно можно упомянуть о креплении рычагов к сервоприводам. К сервам хорошо подходят штатные пластиковые рычаги. Остается только соединить их с деревянными деталями. Я рассматривал разные варианты их соединения, в итоге остановился на следующем: в деревянной рейке просверлил отверстие для вала сервопривода и вырезал углубление по форме пластикового рычага. Вклеил в это углубление рычаг, сверху приклеил вторую рейку. Пластиковый рычаг оказался внутри деревянной «оправы». После высыхания клея я довел рычаг до ума на шлифовальном станке:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

И, наконец, дно коробки я посадил на винты. Гайки под них установлены по углам коробки. Можно использовать вместо них маленькие гвозди, кому как нравится.

Схема и питание коробки

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

Как уже отмечалось, в моей коробке работает микроконтроллер ATmega328P. Я развел и вытравил под него плату (мои схема и разводка доступны в EasyEDA по ссылке: https://easyeda.com/VladimirTsibrov/uselessbox-on-atmega328p), сделал разъемы для подключения сервоприводов, питания и тумблера, а также вывел пины RX, TX и Reset. Подключившись к ним, можно заливать скетчи в микроконтроллер, не извлекая его из платы.

Эта же схема для тех, кто предпочитает Ардуино и схемы fritzing:

Отслеживать переключения тумблера удобно при помощи внешнего прерывания, поэтому он подключен к пину 2. Для управления сервоприводами нужны выводы, поддерживающие PWM, а для управления их питанием подойдет любой вывод. Я использовал пины 9, 10 и A5 для удобства разводки платы. Вы можете выбрать другие, внеся соответствующие изменения в скетч.

Алгоритм работы и скетч

Алгоритм работы коробки можно описать примерно так:

Скетч, реализующий описанное поведение, можно скачать здесь. Разумеется, нужно будет самостоятельно подобрать позиции для сервоприводов и вписать их в скетч.

А вот и видео с получившейся игрушкой:

Источник

Бесполезная коробка

Аннотация:
Коробка действительно бесполезная. Но своим поведением является несомненным символом противостояния и активного сопротивления превосходящей ее силе. С завидным упорством она выключает включенный человеком тумблер, упорно приводя тем самым свое состояние в состояние покоя. Хороший сувенир для настойчивого и целеустремленного друга.

Внешний вид устройства

Внешний вид устройства показан на рисунке.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 1. Положение рычага «Парковка» (Рычаг внутри коробки)

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 2. Положение рычага «Крышка» (Рычаг приподнял крышку коробки)

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 3. Положение рычага «Тумблер» (Рычаг выключил тумблер коробки)

Устройство после включения тумблера выполняет последовательно цикл перехода из одного положения в другое:

Внимание! После включения тумблера дождитесь выполнения устройством описанного выше полного цикла.

Демонстрацию работы устройства можно посмотреть здесь:

О сервоприводе

В устройстве применен аналоговый сервопривод SG90, внешний вид которого показан на рисунке.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 4. Сервопривод SG90

На сервопривод необходимо подавать сигнал в виде прямоугольных импульсов с периодом около 20 мс и изменяемой скважностью. При этом ширина импульса должна варьироваться от 1 мс до 2 мс. В этом диапазоне ширины импульсов вал сервопривода должен принимать положение от 0 до 180 градусов. Структура управляющего сигнала, унифицированного для аналоговых сервоприводов, приведена на рисунке:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Такой сигнал называется сигналом широтно-импульсной модуляции (ШИМ).

Для того чтобы повернуть вал сервопривода на угол 0 градусов, необходимо подать серию импульсов шириной 1мс. Для поворота вала сервопривода на 180 градусов от нулевого положения, необходимо подать серию импульсов шириной 2мс. Поворот вала сервопривода может быть выполнен на любой угол в диапазоне он 0 до 180 градусов при подаче импульсов, имеющих ширину в диапазоне от 1мс до 2мс.

Схема электрическая

Схема электрическая принципиальная показана на рисунке:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 5. Схема электрическая принципиальная

Устройство собрано на микроконтроллере ATtiny2313A.

Установите Фьюзы (!): EXT=0xFF; HIGH=0xDF; LOW=0x24. Такая установка фьюзов обеспечивает подачу тактовых импульсов на МК с частотой 1 МГц от внутреннего RC – генератора.

Питается устройство от 3-x гальванических элементов типа AAA. На транзисторах VT1 и VT2 собран блок блокировки выключения питания: устройство включается тумблером, а выключается микроконтроллером (при условии, что тумблер уже переведен в состояние «выключено» рычагом сервопривода).
После включения устройства на выводе PB 0 микроконтроллера устанавливается высокий уровень, который через открытый транзистор VT1 удерживает транзистор VT2 в открытом состоянии. Это позволяет обеспечивать подачу питания на включенное устройство от питающей батареи, независимо от положения тумблера SW1.

В устройстве применен аналоговый сервопривод типа SG90.

Светодиод VD1 включается при включении устройства тумблером, а выключается после выключения устройства микроконтроллером.

Внимание! Для того чтобы перейти в режим настройки необходимо включить устройство тумблером при удерживании нажатой кнопки SA1.

Режимы настройки устройства индицируются светодиодами VD2… VD5.

Цепочка R1C1 служит для сброса МК при включении устройства.

Конструкция

Печатная плата со стороны деталей и со стороны печатного монтажа показана на рисунках:

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 6. Печатная плата со стороны радиодеталей

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 7. Печатная плата со стороны печатного монтажа

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 8. Плата с деталями

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 9. Крепление сервопривода и рычага

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Рисунок 10. Элементы коробки, напечатанные на 3D-принтере

1. Корпус
2. Крышка откидная
3. Крышка стационарная
4. Рычаг

Источник

DIY: Коробочка самовыключатель под управлением Arduino. Пошаговая инструкция по созданию

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

Игрушка в виде коробочки с тумблером и открывающейся створкой, заключает в себе ряд механических элементов и блок управления на основе Arduino. Для удобства представляем вам 9 шагов для более детального подхода к сборке. Что из этого получиться увидим, когда соберем эту игрушку у себя дома.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Шаг 1: Как это работает?

Вся работа данного устройства, так или иначе, завязана на микропроцессоре Arduino. При переключении тумблера в позицию «Вкл» на корпусе сигнал поступает в плату управления, активирует сервомоторы и приводит их в движение. При этом происходит следующее: створка коробки открывается, оттуда высовывается механическая «рука», переводит переключатель в исходное положение «Выкл», возвращается обратно, створка закрывается. Следующее включение тумблера повторяет работу робота.

Если вы внимательно смотрели видео, при каждом новом нажатии переключателя, устройство реагирует немного по-другому. Это связано с программным кодом, который случайным образом определяет ту или иную модель поведения руки. В зависимости от встроенной памяти Arduino количество ходов может быть столько, сколько вы сами захотите.

Для сборки конструкции вам понадобится:

Шаг 3: Построение коробочки:

Для построения коробочки вам понадобится фанера или пробковое дерево, а также сильнодействующий клей для дерева. Учтите, что вес конструкции играет большую роль в нагрузке на сервоприводы и расходе заряда батареи. Размеры коробки 22см x 14см x 14см.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Шаг 4: Схема электрической части:

Основная плата Arduino, 2 сервопривода, переключателя Вкл/Выкл. Обратите внимание, что вы можете заменить часть цепи, отвечающую за уменьшение шума при закрытии крышки и движении руки, на простой резистор.

Сервоприводы питаются непосредственно от контакта 5 на Arduino. Сигнальные провода подключены к контакту 9 и 10 соответственно. Эти контакты поддерживают PWM, что обеспечивает управление углом/положением сервопривода (от 0 до 180 градусов макс). Красная кнопка предназначена для сброса(перезагрузки) платы Arduino.

На схеме аккумулятор 11.1/1000 мА (кстати, такой же как в ARDrone), соединен с платой Arduino motor shield. Если вы не будете использовать ее, можно подключить батарею к основной плате напрямую.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

1. крышка серво подключены к PWM контакте 9
2. рука серво подключены к PWM контакте 9
3. схема включения

Шаг 5: Установка сервоприводов:

Методом проб и ошибок необходимо установить сервопривод руки таким образом пока не получите необходимый результат. Вы можете использовать примеры серво-программ (готовые скетчи для движения сервоприводов) в Arduino IDE, что бы проверить величину (градус) отклонения сервоприводов.

Рука делается из любого дерева (чем легче, тем лучше). Ее размеры подбираются в ходе монтирования, что бы получить эффект выключения тумблера управления. Сервопривод и толкатель крышки монтируется так, что бы рука не задевала их в процессе работы.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

Шаг 6: Подключение коммутатора и сервоприводов к плате Arduino:

С помощью проводов и перемычек необходимо подключить все соединения, показанные в схеме выше, и попытаться уложить все детали внутри коробки так, чтобы они не мешали работе механических частей.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

1. схема включения
2. резинка, чтобы дать некоторую напряженность на открытие и закрытие двери
3. двигатель щит установлен над Arduino

Шаг 7: Установка электромоторов, колес, редуктора, кнопки рестарта и батареи DC:

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

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

1. кнопка сброса
2. батарейки и главный выключатель питания

Чтобы написать код для Arduino установите на свой ПК программу Arduino IDE.

Пример кода приведен ниже. Внимание, значения для отклонения сервоприводов, указанные в коде, предназначены именно для этого коробка, принимая во внимание место расположения сервоприводов, размеры и многое другое. Таким образом, вы должны подобрать свои значения в соответствии с вашими данными

#include
Servo doorServo;
Servo handServo;

int switch_pin = 2; //set switch on pin 2

//motor variables
int motorThrottle=11;
int motorDirection = 13;
int motorBrake=8;

int pos = 0;
int selectedMove = 0; //move selector
int Testmove = 0; //test mode: set to move number to test only one selected move
//(set to Zero to run normally i.e: roundrobbin on amm moves)

void setup()
<
Serial.begin(9600);
pinMode(switch_pin, INPUT);
doorServo.attach(9); //set door servo on Pin 9 pwm
handServo.attach(10); //set hand servo on Pin 10 pwm
doorServo.write(80); //set door to hiding position
handServo.write(0); //set hand to hiding position

//Setup Channel B, (since Channel A is reserved by door and hand servos and can’t ber used at same time)
pinMode(motorDirection, OUTPUT); //Initiates Motor Channel B pin
pinMode(motorBrake, OUTPUT); //Initiates Brake Channel B pin

//if the switch is on, then move door and hand to switch it off.
if(digitalRead(switch_pin) == HIGH)
<

if (selectedMove > 10) < selectedMove = 0; >//when all moves are played, repeat the moves from beginning
// below are all the «Moves» i designed so far, each is a function that is written below in the code, execuse the names, abit strange? yes as some are written in arabic
if (selectedMove == 0) < switchoff(); >
else if (selectedMove == 1) < switchoff(); >
else if (selectedMove == 2) < switchoffbitaraddod(); >
else if (selectedMove == 3) < crazydoor(); >
else if (selectedMove == 4) < crazyslow(); >
else if (selectedMove == 5) < m7anika7anika(); >
else if (selectedMove == 6) < m3alla2(); >
else if (selectedMove == 7) < switchoff(); >
else if (selectedMove == 8) < matrix(); >
else if (selectedMove == 9) < sneak(); >
else if (selectedMove == 10)

if (Testmove == 0) <
selectedMove++; //swith to next move if not in test mode
>

// basic move
void switchoff()
<
//Moving door
for(pos = 80; pos =0; pos-=4)
<
handServo.write(pos);
delay(15);
>

//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);
>
>

// move 3: open and wait, then move hand and wait, then switch of and hide
void switchoffbitaraddod()
<
//Moving door
for(pos = 80; pos =0; pos-=5)
<
handServo.write(pos);
delay(15);
>

//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);

//move 4: open door then close it many times, wait, then quickly reoprn a nd switch off and hide.

//Moving door
for(pos = 80; pos =80; pos-=5)
<
doorServo.write(pos);
delay(15);
>
//Moving door
for(pos = 80; pos =80; pos-=15)
<
doorServo.write(pos);
delay(15);
>
delay(700);
//Moving door
for(pos = 80; pos =80; pos-=5)
<
doorServo.write(pos);
delay(15);
>

//—-of switch of—-//
//Moving door
for(pos = 80; pos =0; pos-=3)
<
handServo.write(pos);
delay(15);
>

//hiding door
for(pos = 155; pos>=80; pos-=15)
<
doorServo.write(pos);
delay(15);
>

// move 5: open door, then move hand very slowly forward and back to hiding very slowly, then quickly close door
void crazyslow()
<

//Moving door
for(pos = 80; pos =0; pos-=1)
<
handServo.write(pos);
delay(30);
>

//hiding door
for(pos = 155; pos>=125; pos-=1)
<
doorServo.write(pos);
delay(30);
>
delay(100);
for(pos = 125; pos>=80; pos-=4)
<
doorServo.write(pos);
delay(15);
>

//Moving door
for(pos = 80; pos =130; pos-=3)
<
doorServo.write(pos);
delay(15);
>

//hiding door
for(pos = 130; pos =130; pos-=3)
<
doorServo.write(pos);
delay(15);
>
//hiding door
for(pos = 130; pos =0; pos-=4)
<
handServo.write(pos);
delay(15);
>

void m3alla2()<
//Moving door
for(pos = 80; pos =130; pos-=3)
<
doorServo.write(pos);
delay(15);
>
delay(2000);

for(pos = 130; pos =140; pos-=3)
<
doorServo.write(pos);
delay(15);
>
for(pos = 140; pos =0; pos-=4)
<
handServo.write(pos);
delay(15);
>

//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);
>

//Moving door
for(pos = 80; pos =0; pos-=4)
<
handServo.write(pos);
delay(10);
>

//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);
>

void sneak()
<
//Moving door
for(pos = 80; pos =70; pos-=4)
<
handServo.write(pos);
delay(15);
>
delay(100);
for(pos = 70; pos =70; pos-=4)
<
handServo.write(pos);
delay(15);
>
delay(100);

for(pos = 70; pos =0; pos-=4)
<
handServo.write(pos);
delay(15);
>
//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);
>
>

void zee7()
<
//Moving door
for(pos = 80; pos =0; pos-=4)
<
handServo.write(pos);
delay(15);
>

//hiding door
for(pos = 155; pos>=80; pos-=3)
<
doorServo.write(pos);
delay(15);
>
>

В дополнение, можно снабдить своего робота зрением. Если вы уже построили колеса, чтобы коробка двигалась, остается добавить оптический датчик и внести некоторые изменения в коде для обнаружения движения.

На примере сенсора GP2Y0A21, датчик имеет 3 провода: желтый провод подключается к контакту 3 на Arduino, красный и черный подключены к контакту 5 и к заземлению соответственно. Устанавливается датчик на внутренней стороне створки, что позволяет ему срабатывать лишь тогда, когда она открывается. Предлагаем вашему вниманию код с функцией обнаружения движения (см. код в функции zee7() ), которая позволяет коробке двигаться влево, а затем вправо при приближении к тумблеру человеческой руки. В обновленном коде возможен выбор последовательной или случайнай модели поведения робота путем логической команды Randomize.

Как сделать бесполезную коробку. Смотреть фото Как сделать бесполезную коробку. Смотреть картинку Как сделать бесполезную коробку. Картинка про Как сделать бесполезную коробку. Фото Как сделать бесполезную коробку

#include
Servo doorServo;
Servo handServo;

unsigned long TimerA,TimerB; //timer for the movement detection routine
int switch_pin = 2; //set switch on pin 2

//motor variables
int motorThrottle=11;
int motorDirection = 13;
int motorBrake=8;

//Distance Variables
int motionPin = 3; //motion sensor pin on analog 0
int lastDist = 0; //to remember last distance
int currentDist = 0;
int thresh = 200; //Threshold for Movement (set it such that you get the desired sensetivity of motion detection)

int pos = 0;
int selectedMove = 0; //move selector
int Testmove = 0; //test mode: set to move number to test only one selected move
//(set to Zero to run normally i.e: roundrobbin on all moves)
boolean randomize = true; // if true, the box will do movers randomly, if set to false then the moves will be done sequencially from 1 to 10

void setup()
<
Serial.begin(9600);
pinMode(switch_pin, INPUT);
doorServo.attach(9); //set door servo on Pin 9 pwm
handServo.attach(10); //set hand servo on Pin 10 pwm
doorServo.write(80); //set door to hiding position
handServo.write(0); //set hand to hiding position
//Setup Channel B, since Channel A is reserved by door and hand servos and can’t ber used at same time
pinMode(motorDirection, OUTPUT); //Initiates Motor Channel B pin
pinMode(motorBrake, OUTPUT); //Initiates Brake Channel B pin

//if the switch is on, then move door and hand to switch it off.
if(digitalRead(switch_pin) == HIGH)
<

if(randomize == false)
<
if (selectedMove > 10)
<
selectedMove = 0; //when all moves are played, repeat the moves from beginning
>
>
else
<
selectedMove = random(11);
>
>
else
<
selectedMove = Testmove;
>
Serial.println(selectedMove);
if (selectedMove == 0) < switchoff(); >
else if (selectedMove == 1) < switchoff(); >
else if (selectedMove == 2) < switchoffbitaraddod(); >
else if (selectedMove == 3) < crazydoor(); >
else if (selectedMove == 4) < crazyslow(); >
else if (selectedMove == 5) < m7anika7anika(); >
else if (selectedMove == 6) < m3alla2(); >
else if (selectedMove == 7) < switchoff(); >
else if (selectedMove == 8) < matrix(); >
else if (selectedMove == 9) < sneak(); >
else if (selectedMove == 10)

if (Testmove == 0 && randomize == false) <
selectedMove++; //switch to next move if not in test mode
>

// basic move
void switchoff()
<
//Moving door
for(pos = 80; pos =0; pos-=4)
< &nbsp

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *