1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Робот-репульсоид своими руками

Робот-репульсоид своими руками


Материалы и инструменты для сборки:
— лист текстолита толщиной 1-1.5 мм (фольгированный с одной стороны);
— паяльник с припоем;
— провода;

Все радиоэлементы можно увидеть в таблице.

Как устроен и что может робот

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

На картинке цифрами обозначены элементы робота и описываются их функции:
1. Светодиод HL1. Он сигнализирует о работе генератора импульсов.
2. Подстроечный резистор R2, им можно регулировать ширину импульсов.
3. Элемент для крепления батарейки.
4. Переключатель режимов робота Smart-Sumo.
5. Переключатель для отключения робота.
6. Светодиод HL2 включается при разрядке батареи.

Теперь пару слов о режимах робота.

Режим SMART активирует фоторезистор робота, то есть он начинает реагировать на свет. Чем ярче освещение, тем активнее перемещается робот. В темноте робот ездит очень медленно или вовсе отключается.

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

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

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

Процесс сборки робота:

Шаг первый. Принцип работы робота
Генератор импульсов создан на микросхеме-таймере NE555. При попадании света на фототранзистор VT1 понижается его сопротивление и частота, в связи с этим меняется и длительность импульсов на микросхеме DD1. Что касается выходного сигнала DD1, то от него исходят прямоугольные импульсы тока, они поступают на двигатель М1 и светодиод HL1 в противофазе. Таким образом светодиод загорается тогда, когда образуются паузы между импульсами, а включение двигателя М1 происходит при отрицательном импульсе. Более подробно о том, как работает робот, можно увидеть на схеме.




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

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

Как сделать робота на Ардуино своими руками: самодельный robot Arduino в домашних условиях

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

Чтобы сделать робота в домашних условиях вам понадобится собственно сама плата микроконтроллера и ультразвуковой сенсор. Если сенсор зафиксирует препятствие, сервопривод позволит ему обогнуть препятствие. Сканируя пространство справа и слева, робот выберет наиболее предпочтительный путь для обхода препятствия.

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

Шаг 1: Необходимые материалы

  • Arduino UNO
  • Мини макетная плата
  • Драйвер двигателя L298N
  • Два электромотора с колесами
  • Ультразвуковой датчик измерения расстояния HC — SR04
  • Микросервопривод
  • Кнопка
  • Красный диод
  • Резистор 220 Ом
  • Отсек для элемента питания 9В (с/без коннектора)
  • 8 стоек для макетных плат с наружной и внутренней резьбой, 8 винтов и 8 гаек
Читать еще:  Необычный светильник своими руками

Также вам понадобится одна большая металлическая скрепка и бусина (для заднего опорного колеса).

Для изготовления каркаса робота использован кусок плексигласа (оргстекла) 12х9,5 см. Можно сделать каркас из дерева или металла, или даже из компакт-дисков.

  • Дрель
  • Суперклей
  • Отвертка
  • Клеевой пистолет (опционально)

Для питания робота используется батарейка 9В (крона), она достаточно компактная и дешевая, но разрядится уже примерно через час. Возможно, вы захотите сделать питание от аккумулятора на 6 В (минимум) или 7 В (максимум). Аккумулятор мощнее батарейки, но и дороже и больше по габаритам.

Шаг 2: Делаем каркас робота

Положите всю электронику на плексиглас и маркером отметьте места, где нужно будет просверлить монтажные отверстия (фото 1).

На нижней стороне пластины плексигласа приклейте на суперклей электромоторы. Они должны быть параллельны друг другу, с помощью линейки-угольника проверьте их положение прежде чем клеить (фото 2). Затем приклейте на суперклей отсек для батарейки.

Можно также просверлить отверстия под провода электромоторов и питания.

Шаг 3: Монтируем электронику

Закрепите на каркасе плату контроллера и драйвер двигателей, используя стойки для печатных плат, винты и гайки. Миниатюрная макетная плата клеится на липкий слой (уже есть на нижней стороне) (фото 1).

Теперь делаем заднее опорное колесо из скрепки и бусины (фото 2). Концы проволоки закрепите на нижней стороне каркаса суперклеем или термоклеем.

Шаг 4: Устанавливаем «глаза» робота

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

Шаг 5: Схема подключений

Теперь приступаем к подключению электронных компонентов. Подключение компонентов происходит согласно схеме на рисунке 1.

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

Шаг 6: Код

Код, который приведен ниже, сделан с помощью Codebender.

Codebender – это браузерный IDE, это самый простой способ программировать вашего робота из браузера. Нужно кликнуть на кнопку «Run on Arduino» и все, проще некуда.

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

Нажав кнопку «Edit», вы можете редактировать скетч для своих нужд.

Например, изменив значение «10» измеряемого расстояния до препятствия в см, вы уменьшите или увеличите дистанцию, которую будет сканировать robot Arduino в поисках препятствия.

Если робот не двигается, может изменить контакты электромоторов (motorA1 и motorA2 или motorB1 и motorB2).

Шаг 7: Завершенный робот

Ваш самодельный робот, обходящий препятствия, на базе микроконтроллера Arduino готов.

Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.

Робот-рука DARM. Калибровка и настройка.

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

Где-то больше полугода назад я первый раз наткнулся на проект DARM (3d print desktop robot arm) на ресурсе thingiverse.com. Ссылка на проект — https://www.thingiverse.com/thing:1204552

Меня всегда завораживала нестандартная кинематика и конечно же я решил попробовать собрать это устройство. Электроника и шаговики у меня уже были, тонкие карбоновые трубки тоже. Докупил толстую алюминиевую трубку в строительном магазине вместо карбоновой, с трудом, но все-таки нашел подшипник, ну и закупился винтами, гайками и шайбочками в том же строительном магазине. В общем собрал все детали из BOM-list приведенном в проекте, распечатал пластиковые детали и приступил к сборке. Ах да, вместо закольцованных ремней GT2-232 я использовал обычный ремень GT2 необходимой длины, просто приклеив его к шкивам (полностью проворачиваться этот шкив не должен, так что И так сойдет!).

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

Читать еще:  Самодельный календарь - 5 креативных идей

К проекту прилагается модифицированная под данную кинематику прошивка Marlin. Сразу насторожило, что базируется прошивка на версии Marlin, старой как сами знаете что мамонта. Также в проекте совсем отсутствует инструкция по сборке и калибровке устройства. Совсем было неясно куда устанавливать концевики X и Y. Интуиция подсказывала, что их необходимо установить в отверстия на боковых поверхностях корпуса. Туда их поначалу и вставил. Как вы понимаете, сразу ничего не заработало. Более-менее работала функция паркинга, но дальше совладать с этим чудищем я не мог — оно жило в какой-то своей системе координат и при любых попытках куда-то отправить голову весело трещало шаговиками при упоре тяг либо друг в друга, либо в моторы)) К проекту оставлено более 30 комментариев, большая часть из которых содержит вопрос «Кому-нибудь удалось настроить прошивку. »

В итоге на начальном этапе стояли задачи:

1. Разобраться с прошивкой. Было неясно как калибровать устройство. Любые попытки включить в прошивке использование экрана 2004 с енкодером и SD-картой приводят к ошибкам при компиляции. Версия прошивки настолько старая, что конфликтует с установленным пакетом библиотек.

2. Понять куда правильно устанавливать концевики.

Так как это мое хобби, то конечно все дальнейшие изыскания проводились в свободное от работы и семьи время, т.е. урывками и непостоянно. В итоге отложил я проект на неопределенное время. Но буквально через неделю мне попадается в рекламном баннере такой же РобоАрм на ресурсе BangGood — https://www.banggood.com/3-Dof-ABB-Industrial-Robot-Arm-Support-3D-PrintingLaser-EngravingWriting-Painting-p-1397583.html?cur_warehouse=CN

Ну во-первых сразу поразил конский ценник. (он там что, из чистого титана сделан что-ли. ) Во вторых на этой страничке есть ссылка для скачивания инструкции и прошивки.

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

Все бы ничего, но устройства отличаются конструктивно и мое творение в такое положение не ставится никак от слова Совсем. Причина — тяга Small Arm, которая должна быть строго горизонтальна, упирается сначала в свой концевик, а если убрать концевик, то в двигатель, который вращает платформу. В общем отложил я проект опять на неопределенное время. Все это время занимался попытками понять как работает прошивка сравнивая ее с оригинальным Marlin той же версии. В ходе выкуривания прошивки я сформировал калькулятор преобразования углов тяг в декартову систему координат и обратно по формулам из прошивки. Калькулятор лежит здесь. Только с помощью этого калькулятора мне удалось наконец понять какие параметры и как настраивать. С новыми силами я приступил к модификации устройства:

— убрал концевики в самый низ платформы:

— в приводные шкивы вкрутил винты для того, чтобы они упирались в крайнем положении в концевики:

— поставил на вращение платформы двигатель с высотой в два раза меньше, чтобы можно было выставить тяги в калибровочное положение:

1. Необходимо до десятой доли мм соблюсти указанные на рисунке расстояния.

2. Ремни должны быть натянуты моторами так, чтобы не было люфтов.

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

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

После этого приступил к калибровке. С компиляцией прошивки я так и не разобрался, пользуюсь скомпилированным HEX файлом из проекта для варианта с экраном и SD-картой.

Ну все ж знают, что при первичной прошивке контроллера нужно обязательно очищать EEPROM командами M502 и M500 . …

1. Определение точки 0,0,0

Включаем принтер, подключаемся к нему через PronterFace.

Выставляем вручную (двигатели должны быть неактивны) тяги в положение: тяга X (BigArm) строго вертикально, тяга Y (SmallArm) строго горизонтально:

Читать еще:  Переделка старой рубашки - 5 идей

Вводим команду G95 (эта команда переводит принтер в режим движения по угловым параметрам)

Вводим команду G93 X90 Y0 Z0 (эта команда говорит принтеру, что у него сейчас тяги находятся в положении X — 90 градусов или вертикально, Y — 0 или горизонтально, Z — 0)

Вводим команду G95 (После G93 он забывает, что он в угловой системе — ну такая прошивка)

Вводим команду G94 (Переводим в картезиан)

Вводим команду G1 X0 Y0 Z0 (принтер переходит в точку 0,0,0)

На данном этапе определяем необходимую высоту и корректируем командой М367

Например текущие значения SCARA_OFFSET при инициализации устройства M367 X215 Y-100 Z26.1 и при этом высота руки на 70 мм выше, чем нужно, значит необходимо установить значение 26.1 — 70 = -43.9

Вводим M367 X215 Y-100 Z-43.9

Сохраняем параметры — М500

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

2. Определение положения паркинга.

Включаем принтер, подключаемся к нему через PronterFace.

Первично устанавливаем углы парковки (потому что в прошивке значения по умолчанию 0,0,0): M368 X135 Y10 Z0 (X — 135 градусов, Y — 10 градусов, платформа — 0). Без этого дальнейшая калибровка будет упираться в Soft_EndStop и точно будет некорректна.

Сохраняем настройки — M500 (я на всякий случай всегда после сохранения перегружаю контроллер)

Дальнейшие действия нужно выполнять с пониманием следующих особенностей прошивки (кривой и косой) — при упоре тяги в концевик, ось не двигается, срабатывает программное ограничение, но в мозгу принтера координаты или углы меняются. Мне это очень сильно по-началу мешало, пока я не понял, что если уперся хоть на десятую мм или градуса, то нужно все сбрасывать и начинать с начала. Т.е. если случайно перепутал направление движения, нужно перезагрузить контроллер, и все по-новой. Едем дальше.

Сначала выставляем правильное значение угла парковки тяги X.

Вводим команду G28 (паркуемся)

Вводим команду G95 (эта команда переводит принтер в режим движения по угловым параметрам, где X — угол Big Arm, Y — угол Small Arm, Z — угол поворота платформы)

Начинаем двигать ось X с помощью кнопок перемещения осей в PronterFace в вертикальное положение. Вертикальность проверяем отвесом, или уголком к самой тяге. Когда ось встала вертикально, вводим команду М114, чтобы понять на какой градус встала тяга в голове контроллера. Далее корректируем значение параметра M368 таким образом, чтобы при повторных действиях M114 показывала ровно 90 градусов.

Например в вертикальном положении m114 показывает, что ось X:89.00, значит необходимо скорректировать на 1 градус 135 + (90-89) = 136

Вводим M368 X136

Перегружаем и по-новой.

Делается в несколько итераций, пока реальное положение в 90 градусов не будет соответствовать 90 градусам по выводу М114.

Далее тоже самое делаем для тяги Y, по ней нужно выставить строго горизонтальное положение тонкой тяги (не толстой, а тонкой, см. на рисунке выше).

После калибровки углов парковки, можно еще раз проверить правильное положение точки 0,0,0, и при необходимости откорректировать.

После калибровки паркинга и нулевой точки можно начинать пользоваться принтером))

Что осталось доделать.

Трясет его как алкаша. Точно нужно разобраться с этим — выбрать все люфты, может быть отрегулировать рывки и ускорения. Может быть в таком варианте сборки это не лечится в принципе.

Хорошо бы перенести управление этой кинематикой в актуальную версию Marlin, потому что до сих пор скомпилировать версию с экраном мне не удается — то одна ошибка, то другая, и все они из-за конфликта версий библиотек.

Собирайте, пользуйтесь, комментируйте!)))

PS В конце приведу пояснения по параметрам прошивки:

DARM_OFFSET (команда M367) — расстояния от точки 0,0,0 до осей вращения соответствующей координаты. Этот параметр в мм.

MANUAL_HOME_POS (команда M368) — углы тяг (X и Y) и угол поворота платформы (Z) при парковке. Этот параметр в градусах.

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector