Оглавление:
Видео: Создание самобалансирующегося робота на Arduino с дистанционным управлением: B-robot EVO: 8 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Подписаться Другие автора:
О себе: Мы любим роботов, DIY и забавную науку. JJROBOTS стремится приблизить открытые роботизированные проекты к людям, предоставляя оборудование, хорошую документацию, инструкции по сборке + код, информацию о том, как это работает… Подробнее о jjrobots »
------------------------------------------------
ОБНОВЛЕНИЕ: здесь есть новая и улучшенная версия этого робота: B-robot EVO, с новыми функциями
------------------------------------------------
Как это работает?
B-ROBOT EVO - это самобалансирующийся робот Arduino с дистанционным управлением, созданный из деталей, напечатанных на 3D-принтере. Имея всего два колеса, B-ROBOT может постоянно поддерживать равновесие, используя свои внутренние датчики и приводя в движение двигатели. Вы можете управлять своим роботом, заставляя его двигаться или вращаться, отправляя команды через смартфон, планшет или ПК, пока он поддерживает равновесие.
Этот самобалансирующийся робот считывает данные своих инерционных датчиков (акселерометры и гироскопы, встроенные в микросхему MPU6000) 200 раз в секунду. Он вычисляет свое положение (угол по отношению к горизонту) и сравнивает этот угол с целевым углом (0º, если он хочет сохранить равновесие без движения, или положительный или отрицательный угол, если он хочет двигаться вперед или назад). Используя разницу между целевым углом (скажем, 0º) и фактическим углом (скажем, 3º), он управляет системой управления, чтобы посылать правильные команды двигателям для поддержания своего баланса. Команды двигателям - это ускорения. Например, если робот наклонен вперед (угол поворота робота составляет 3º), он посылает на двигатели команду ускоряться вперед, пока этот угол не уменьшится до нуля для сохранения баланса.
Шаг 1. Еще немного подробнее…
Физическая проблема, которую решает B-ROBOT, называется перевернутым маятником. Это тот же механизм, который нужен для балансировки зонта над рукой. Точка поворота находится под центром масс объекта. Больше информации о перевернутом маятнике здесь. Математическое решение проблемы непросто, но нам не нужно понимать это, чтобы решить проблему с балансом нашего робота. Что нам нужно знать, так это то, что делать, чтобы восстановить баланс робота, чтобы мы могли реализовать алгоритм управления для решения проблемы.
Система управления очень полезна в робототехнике (промышленной автоматизации). По сути, это код, который получает информацию от датчиков и целевых команд в качестве входных данных и, как следствие, создает выходные сигналы для управления исполнительными механизмами робота (двигателями в нашем примере) для регулирования системы. Мы используем ПИД-регулятор (пропорциональный + производный + интегральный). Этот тип управления имеет 3 константы для регулировки kP, kD, kI. Из Википедии: «ПИД-регулятор вычисляет значение« ошибки »как разницу между измеренным [Входным] и желаемым заданным значением. Контроллер пытается минимизировать ошибку, регулируя [Выход] ». Итак, вы указываете ПИД-регулятору, что измерять («Вход»), где вы хотите, чтобы это измерение было («Заданное значение») и переменную, которую вы хотите настроить, чтобы это произошло («Выход».)
Затем ПИД регулирует выход, пытаясь сделать вход равным заданному значению. Для справки, резервуар для воды, который мы хотим заполнить до уровня, входом, уставкой и выходом будут уровнем в соответствии с датчиком уровня воды, желаемым уровнем воды и водой, закачанной в резервуар. kP - пропорциональная часть и основная часть управления, эта часть пропорциональна ошибке. kD - это производная часть, которая применяется к производной ошибки. Эта часть зависит от динамики системы (зависит от робота, веса двигателей, инерции…). Последний, kI, применяется к интегралу ошибки и используется для уменьшения устойчивых ошибок, это похоже на обрезку на конечном выходе (подумайте о кнопках обрезки на рулевом колесе автомобиля с дистанционным управлением, чтобы машина ехала полностью прямо, kI удаляет смещение между требуемым целевым и фактическим значением).
На B-ROBOT команда рулевого управления от пользователя добавляется к выходным данным двигателей (один двигатель с положительным знаком, а другой с отрицательным знаком). Например, если пользователь отправляет команду рулевого управления 6 для поворота вправо (от -10 до 10), нам нужно добавить 6 к значению левого мотора и вычесть 6 из правого мотора. Если робот не движется вперед или назад, результатом команды рулевого управления является вращение робота.
Шаг 2: А как насчет пульта дистанционного управления?
"loading =" ленивый"
Рекомендуемые:
Автомобиль Arduino с L293D и дистанционным управлением: 5 шагов
Автомобиль Arduino с L293D и пультом дистанционного управления: у меня есть чип L293D, ИК-пульт дистанционного управления и приемник. Я хочу построить автомобиль Arduino, не покупая много вещей, поэтому я привез только четырехколесное автомобильное шасси Arduino. Поскольку у Tinkercad есть L293D, ИК-приемник и Arduino, я создал эскиз
Машинка с дистанционным управлением Arduino Bluetooth: 10 шагов
Arduino Bluetooth RC Car: я создал эту инструкцию для сопровождения моего видео на YouTube, а пока я предлагаю вам посмотреть видео, так как оно намного более детально, но я буду работать над этим инструктажем и скоро сделаю его лучше
Сборка робота-дворецкого / автомобиля / танка ESP8266 с дистанционным управлением за 15 долларов для iOS и Android: 4 шага
Создайте робота-дворецкого / автомобиля / цистерны ESP8266 с дистанционным управлением за 15 долларов для iOS и Android: вы ненавидите ходить на кухню, чтобы перекусить? Или выпить новую? Все это можно исправить с помощью этого простого дворецкого с дистанционным управлением за 15 долларов. Прежде чем мы продолжим, я сейчас запускаю проект Kickstarter для голосовой светодиодной ленты RGB
Как создать самобалансирующегося робота с дистанционным управлением на 3D-принтере: 9 шагов (с изображениями)
Как создать самобалансирующегося робота с дистанционным управлением на 3D-принтере: это эволюция предыдущей версии B-робота. 100% ОТКРЫТЫЙ ИСТОЧНИК / робот Arduino. КОД, 3D-детали и электроника открыты, поэтому не стесняйтесь изменять его или создавать огромную версию робота. Если у вас есть сомнения, идеи или вам нужна помощь, сделайте
Двигатель с транзисторным управлением и дистанционным управлением; обзор схемы: 9 шагов
Двигатель с транзисторным управлением и дистанционным управлением; Обзор схемы: Эта схема представляет собой двигатель с транзисторным управлением и дистанционным управлением. Дистанционное управление включает питание. Транзистор включает двигатель. Код программы увеличит скорость двигателя и затем уменьшите скорость двигателя до нуля