Схемы

Как построить робота - Урок 2. Создание базового робота Arduino: 19 шагов

Моя недотрога классное исполнение под гармонь

Моя недотрога классное исполнение под гармонь

Оглавление:

Anonim

После первого урока (Как создать робота - введение) у вас теперь есть базовые знания о том, что такое робот Arduino, что вам нужно для создания робота, а также о том, как использовать инструменты. Теперь пришло время начать делать!

Во втором уроке вы научитесь создавать базового робота Arduino. Чтобы сделать это руководство легким для ознакомления, в качестве примера используется комплект робота Arduino (Pirate: 4WD Arduino Mobile Robot Kit с Bluetooth 4.0).

Меню уроков:

Урок 1: Введение

Урок 2: создание базового робота Arduino

Урок 3: Создание робота Arduino для отслеживания линий

Урок 4: Создайте робота Arduino, который мог бы избежать препятствий

Урок 5: Создание робота Arduino со световыми и звуковыми эффектами

Урок 6: Создайте робота Arduino, который мог бы контролировать среду

Урок 7. Создание робота Arduino, управляемого Bluetooth

Руководство по сборке

ШАГ 1: Соберите свой собственный мотор

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

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

Расходные материалы:

Шаг 1:

ШАГ 2: Пайка кабелей

Извлеките черный и красный провода из пакета с деталями. Подсоедините один черный и один красный кабель (длиной 15 см) к каждому двигателю (всего 4 двигателя). Затем используйте инструмент для зачистки проводов, чтобы зачистить изоляцию с обоих концов проводов (следите за тем, чтобы не зачищать слишком много - см. Рисунки ниже). Затем припаяйте провода к контактам, прикрепленным к двигателям. Повторите процесс пайки для всех четырех двигателей.

ПРИМЕЧАНИЕ. Обратите внимание на правильное расположение красного и черного проводов при пайке. Пожалуйста, обратитесь к следующим фотографиям для деталей.

Шаг 2:

ШАГ 3: Соберите контроллер BLE Romeo

Посмотрите в сумке с деталями три медных опоры. Эти опоры длиной 1 см используются для крепления платы контроллера Romeo. Как показано на рисунке ниже, в плате контроллера есть три отверстия. Поместите три медные опоры в отверстия, затем закрепите их соответствующими винтами.

Шаг 3:

ШАГ 4: Соберите аккумуляторный отсек

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

Шаг 4:

ШАГ 5: Создание выключателя питания

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

Обратите внимание на последовательность прокладок и гаек при сборке переключателя.

Шаг 5:

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

Шаг 6:

Давайте сделаем это шаг за шагом.

а) Подключите выключатель к зарядному устройству. Обратите внимание на точное местоположение обоих предметов.

Шаг 7:

б) Припаяйте красные кабели, соединяющие коммутатор с зарядным устройством, как показано на рисунке ниже.

Шаг 8:

Вот еще одна картина, чтобы прояснить ситуацию.

в) Наконец, возьмите один красный кабель и один черный кабель. Подсоедините один конец одного кабеля к отрицательному полюсу зарядного устройства, а другой конец другого кабеля к положительному полюсу зарядного устройства. Затем присоедините другие концы обоих кабелей к контроллеру BLE Romeo.

Шаг 9:

в) Наконец, возьмите один красный кабель и один черный кабель. Подсоедините один конец одного кабеля к отрицательному полюсу зарядного устройства, а другой конец другого кабеля к положительному полюсу зарядного устройства. Затем присоедините другие концы обоих кабелей к контроллеру BLE Romeo.

Шаг 10:

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

ШАГ 6: Соберите автомобильную базу

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

ПРИМЕЧАНИЕ. При затягивании винтов на этом этапе сначала убедитесь, что они не затянуты полностью - таким образом, мы можем легко отсоединить верхнюю доску на последующих этапах, если нам потребуется внести изменения.

Шаг 11:

Затем снова прикрепите опорную плиту к кузову автомобиля, как показано на рисунке ниже.

Шаг 12:

** Это то, что автомобильная основа должна понравиться после того, как она была собрана - не забудьте установить аккумулятор!

ШАГ 7: Соедините моторы с платой микроконтроллера

Теперь нам нужны двигатели с платой микроконтроллера. Тщательно следуйте следующей схеме: красный и черный провода левого двигателя должны быть впаяны в M2; красный и черный провода правого мотора должны быть припаяны к M1. Обратите особое внимание на батарейный блок: черный провод должен быть припаян к порту для проводов с надписью GND, а красный провод должен быть припаян к порту для проводов с маркировкой VND. Используйте свою отвертку, чтобы ослабить и затянуть порты проводов - убедитесь, что эти порты надежно закреплены после того, как провода были вставлены.

ПРИМЕЧАНИЕ. Убедитесь, что провода от одного двигателя (то есть от левого двигателя) впаяны в порт двигателя. (то есть порт M2 на диаграмме ниже - не паяйте провода одного двигателя в два отдельных порта.)

Шаг 13:

После пайки проводов двигателя к плате микроконтроллера мы готовы прикрепить верхнюю пластину к основанию автомобиля.

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

Шаг 14:

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

Шаг 15:

ШАГ 8: Прикрепите дополнительный уровень к вашему роботу

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

Шаг 16:

Бросьте несколько колес на свою роботизированную платформу, и вы готовы позволить ей взлететь!

Шаг 17:

КОДИРОВАНИЕ

После сборки пришло время загрузить код на микроконтроллер и заставить вашего робота Arduino двигаться. Робот имеет все компоненты для перемещения после сборки. Просмотрите примеры кодов для файла Arduino под названием «MotorTest.ino».

Пример кода MotorTest :

#включают

DFMobile Robot (4,5,7,6); // инициируем вывод двигателя

void setup () {

Robot.Direction (НИЗКИЙ, ВЫСОКИЙ); // инициируем положительное направление

}

void loop () {

Robot.Speed ​​(255,255); //Вперед

задержка (1000);

Robot.Speed ​​(-255, -255); // Назад

задержка (2000 год);

}

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

Затем понаблюдайте за автомобилем робота и проверьте, может ли он двигаться вперед в течение 1 секунды и двигаться назад в течение 1 секунды. Если это так, УДАЧИ. Вам не нужно настраивать компоненты. Для тех, кому необходимо внести некоторые изменения в основание автомобиля или двигатели, пожалуйста, найдите следующую информацию о том, как движется робот.

Проверьте, соответствует ли ваша роботизированная платформа приведенному выше коду: она должна двигаться вперед на 1 секунду, затем повернуть назад на 1 секунду. Если это так, просто просмотрите содержимое ниже, и тогда вы готовы к работе!

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

Как заставить робота двигаться вперед? Чтобы понять этот вопрос, давайте сначала рассмотрим движение нашего робота вперед.

Диаграмма ниже иллюстрирует это движение вперед.

Шаг 18:

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

Сводка кода

Первая строка кода:

#include // вызов библиотеки

Нам не нужно слишком много думать об этой линии. Все, что мы делаем, это обращаемся к / используем набор функций - библиотеку DFMobile - которые существуют вне базовой структуры Arduino. Для получения дополнительной информации о библиотеках Arduino, пожалуйста, посетите веб-сайт Arduino.

Следующая строка кода:

DFMobile Robot (4,5,7,6); // инициируем вывод двигателя

Эта функция взята из библиотеки DFMobile (то есть это не универсальная функция Arduino).Мы используем его здесь для инициализации контактов двигателя (4, 5, 7, 6) на микроконтроллере - без этого двигатели не запустятся.

Мы также будем использовать эту функцию позже.

Посмотрите на функцию ниже:

DFMobile Robot

(EnLeftPin, LeftSpeedPin, EnRightPin, RightSpeedPin);

Эта функция используется для инициализации четырех контактов двигателя (4, 5, 7, 6) и разделена на четыре отдельных параметра:

EnLeftPin: Пин, который управляет левым направлением двигателя

LeftSpeedPin: Пин, который контролирует скорость левого двигателя

EnRightPin: Пин, который контролирует правильное направление двигателя

RightSpeedPin : Pin, который контролирует правильную скорость двигателя

Обратите внимание: двигатели робота не будут работать без включения этой функции. Кроме того, эта функция должна быть помещена в поле void setup () на вашем эскизе Arduino.

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

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

Как отрегулировать прямое направление для машины-робота?

Чтобы настроить направление вращения двигателей и колес, нам понадобится следующая строка кода:

Robot.Direction (НИЗКИЙ, ВЫСОКИЙ);

Функция выглядит следующим образом:

Robot.Direction (LeftDirection, RightDirection);

Эта функция используется для того, чтобы двигатели двигались в прямом направлении. Функция разделена на два параметра: LeftDirection и RightDirection, которые записаны в коде Arduino как LOW или HIGH.

Ранее мы кратко рассмотрели, как заставить робота Arduino двигаться вперед. Здесь мы будем использовать LOW / HIGH для исправления движения робота. Например, LeftDirection в примере кода установлено как LOW. Но левые колеса машины-робота могут вращаться назад, а не вращаться вперед. Теперь все, что вам нужно сделать, это изменить LeftDirection с LOW на HIGH. Те же методы будут применяться к правым колесам.

Например: в этом примере кода LeftDirection настроен как НИЗКИЙ. Предположим, ваши левые колеса вместо того, чтобы двигаться вперед, как они должны, вместо этого двигаться назад. В этом случае измените конфигурацию LeftDirection с LOW на HIGH. Как только вы измените его на HIGH, загрузите свой код еще раз - вы должны заметить, что левое колесо теперь движется вперед, а не назад. Если эта настройка работает, сделайте то же самое для RightDirection (от LOW до HIGH или наоборот).

После того, как вы успешно отрегулировали направление своего робота Arduino, вы настроены! Поздравляем - теперь вы можете использовать все основные функции робота. Однако прежде чем закончить, стоит кратко обсудить функцию Robot.Speed ​​().

Возьми гусак по следующей функции:

Robot.Speed ​​(LeftSpeed, RightSpeed);

Эта функция с двумя элементами (LeftSpeed ​​и RightSpeed) используется для установки скорости двигателя. Вы можете написать число от -255 до 255. 255 - максимальное значение, а знак минус - направление.

Эта функция используется для настройки скорости двигателей. Функция разделена на два параметра: LeftSpeed ​​и RightSpeed. Эти параметры записываются в коде Arduino как значение в диапазоне от -255 до 255. 255 - самая быстрая скорость движения вперед; -255 - самая быстрая скорость, движущаяся назад (то есть, назад).

Мы уже настроили скорость робота в части кода void setup (). Теперь мы можем использовать функцию speed () для контроля скорости автомобиля и даже направления вперед / назад.

Посмотрите, можете ли вы понять следующие две строки:

Robot.Speed ​​(255,255);

Robot.Speed ​​(-255, -255);

Первая строка показывает автомобиль, движущийся вперед на полной скорости - если хотите, на полной скорости (да, капитан). Вторая строка показывает автомобиль, движущийся назад (задний ход) на полной скорости.

В этом смысле speed () является незаменимой функцией. Далее мы рассмотрим наш последний раздел: принципы, по которым робот движется и поворачивается.

Как робот движется и поворачивается

Карта ниже показывает некоторые регулярные способы передвижения для машины-робота. Например, если скорость левого направления равна нулю, робот повернет влево, если вы предложите правым колесам некоторую силу для движения вперед.

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

Шаг 19:

Что нужно учитывать: как мы можем заставить вашего робота вращаться по кругу, пока он находится в неподвижном состоянии?

И наконец: если вы хотите, вы можете запустить еще немного кода для проверки и калибровки движения вашего собственного робота. Откройте файл «MotorTest2.ino». Этот код должен помочь вам лучше понять и оценить возможности движения вперед и назад, в дополнение к поворотам влево и вправо. Имея это в виду, положите эти шины на дорогу (или ковер) и дайте нам разорваться!

Поздравляем, теперь вы создали свой первый робот! Он имеет функции BACC, которые могут двигаться вперед, назад, повернуть налево и повернуть направо.

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