Управлять роботом онлайн
Контролируем руку робота с помощью Ардуино через интернет
В этом уроке мы покажем как управлять рукой робота 6DOF через интернет с помощью микроконтроллера Ардуино.
Шаг 1. Комплектующие
Для нашего урока нам понадобится не так много деталей. Основа урока рука робота, которой мы будем управлять с помощью Ардуино Уно.
- Arduino Uno
- Шилд PHPoC WiFi Shield для Arduino
- Рука робота 6DOF
Шаг 2. Интерфейс
Рука робота имеет 6 двигателей.
- Зона A: Управляющий двигатель 2, 3, 4 (управляйте тремя соединениями)
- Зона B: Управляющий двигатель 1 (управление базой)
- Зона C: Управляющий двигатель 5 (управление вращением захвата)
- Зона D: Управляющий двигатель 6 (управление захватом)
Шаг 3. Архитектура и схема
В целом, архитектура системы по управлению рукой робота достаточно простая. Конечно, это очень громко называть схему «архитектурой», но мы с вами профессионалы.
Схема соединения выглядит таким образом:
Шаг 4. Рабочий поток
Сторона клиента (вебстраница, написана на JavaScript)
Когда пользователь прикасается пальцами или нажимает/двигает мышью по экрану, то мы можем получить координаты X и Y. Рабочий поток выглядит следующим образом:
В случае зоны А, чтобы рассчитать углы двигателя 2, 3, 4, нам нужно выполнить геометрический расчет, который мы разберем ниже.
Сторона сервера (код Arduino)
Получив набор углов от клиентской стороны, шесть двигателей постепенно перемещаются от текущих углов к новым углам. Шесть двигателей должны двигаться и достигать новых углов одновременно.
Прежде чем подробно рассказывать о том, как управлять всеми двигателями, давайте посмотрим, как управлять одним двигателем. Предположим, что мы хотим переместить двигатель с текущего угла (angle) на новый угол (new_angle). Поскольку скорость двигателя высока, мы должны замедлить ее.
Чтобы сделать это, следующие шаги повторяются до тех пор, пока двигатель не достигнет нового угла:
- Переместить мотор на небольшой шаг.
- Приостановить на небольшое время, затем переместить еще на один шаг.
Следующая диаграмма иллюстрирует приведенную выше схему, если новый угол больше, чем текущий:
Wherestep_numis — количество шагов, которые должен пройти двигатель. Step и Time заданные значения. Два последних определяют скорость и плавность.
Всё сказанное выше только для одного робота. Чтобы роботы начали перемещаться и добираться до «пункта назначения» одновременно, мы можем сделать следующее: шесть двигателей выполняют один и тот же step_num, но шаг каждого двигателя отличается друг от друга. Поэтому мы должны выбрать step_num в этом проекте максимальным.
Как правило, рабочий поток Arduino выглядит следующим образом:
Шаг 5. Расчет геометрии
Давайте рассмотрим вычисления для нашей задачи относительно геометрии:
Известно:
- C — фиксирована
- D входная для пользователя
- CB, BA, AD (обозначается соответственно b, a, d)
- Длина каждого сегмента руки.
- Находятся углы C, B, A. Решение:
— Сделайте предположение, что углы B и A одинаковы
— Добавьте дополнительные точки и сегмент
Вычисление
- Мы знаем точки C и D => мы можем рассчитать длину DC (обозначенную c).
- Мы также можем вычислить δ.
- Посмотрим на треугольник ABE, мы можем заключить, что AE = BE и ∠E = π — 2α.
Закон косинусов в треугольнике CDE:
Изменим (1) и (2) на (3), имеем:
Поскольку мы знаем a, b, c и d, решая указанное выше квадратичное уравнение, мы можем вычислить значение α и β = π — α. Далее найдем γ — закон косинусов в треугольниках BDC и BDA:
Решив эту систему уравнений, мы можем вычислить γ.
Таким образом, требуемые углы: (δ + γ), β и β. Это углы двигателей 2, 3 и 4 соответственно.
Шаг 6. Исходный код
Исходный код включает два файла:
- RobotArmWeb.ino (код Arduino).
- Remote_arm.php (код веб-приложения, который загружается в PHPoC WiFi Shield или PHPoC Shield).
Вам также необходимо скачать и загрузить файл изображения flywheel.png (ниже) в PHPoC Shield.
Код Ардуино:
Код клиентской части:
Шаг 6. Итоговый результат
На этом пока всё. Желаем вам отличных проектов и новых изобретений.
Игры Роботы
Если правы фантасты, то в недалеком будущем за людей практически все будут делать роботы. Уже сейчас их придумано немало. Так именно этих обладателей искусственного интеллекта принято посылать туда, где человек в силу своих физических возможностей просто не сможет находиться. При этом человеку отводится роль главного координатора действий выносливых чудо-машин. Засилье разнообразных киборгов, андроидов, трансформеров на экранах телевизоров породило и массу компьютерных игр с их участием, столь же различных, как и сами роботы. Игры Роботы для мальчиков и девочек позволяют взять на себя управление совершенными машинами.
- 5
- 4
- 3
- 2
- 1
(35 голосов, в среднем: 4 из 5)
Игры об обладателях искусственного интеллекта
Игры про роботов очень разнообразны. Есть среди них игры на логику, всевозможные стрелялки и бродилки, изумительные платформеры с отличной физикой и графикой. Все их объединяет одно: они предоставляют играющим возможность почувствовать себя немного сильнее и прикоснуться к миру будущего. Каким оно будет точно не знает никто, ясно только, что роботы будут занимать в нем особое место. Конечно, без управления они ни на что не годятся, но на то и есть у играющих мышка под рукой и клавиатура под боком, чтобы отдавать команды многочисленным машинам, находящимся на службе человечества.
Место андроидов в общем строю
Человекоподобных роботов можно встретить очень часто. Некоторые из них воинственны, а есть и такие, которые мирно играют в теннис или шахматы, занимаются возделыванием земли, строительством и даже уборкой дома. Робот мажет почти все. Только проявление эмоций для него чуждо, а остальное – пожалуйста. Есть игры, где обладатели искусственного разума осваивают космос, есть — где спасают мир от катастрофы, а есть напротив такие, в которых именно от их нашествия юным геймерам и необходимо спасти цивилизацию.
Игры роботы позволят вам спасать мир как в одиночку так и сообща. Тут уж, кому как больше нравится. Можно играть против компьютера или сразиться друг с другом. Не редкость сегодня и командные компьютерные игры в которых геймеру будет доверено управление каким –то одним персонажем и предоставлена четкая инструкция, которой нужно будет неукоснительно следовать, ведь заботится нужно будет не только о благополучии своего персонажа, но и о команде в целом.
Трансформеры: автоботы против десептиконов
Одно из первых мест среди любителей роботов занимают трансформеры. Не одно поколение мальчишек знакомо с историей войны между десептиконами, мечтающими захватить Землю и превратить ее в свою энергетическую базу и автоботами, не жалеющими своих сил для восстановления справедливости. В компьютерных играх с участием трансформеров есть ряд особенностей. Все роботы здесь умеют превращаться в какую-либо боевую машину и обратно, при этом за считанные секунды. Есть игры, в которых придется не воевать с вражеской армией, а доказывать свою стойкость и выносливость во время гонок.
Кстати, и сами гонки с участием роботов могут быть разными. Можно соревноваться на время между собой или с компьютером, а можно решать логическую задачу на прохождение, так как один и тот же персонаж в зависимости от поставленной задачи может стать высокоманевренным гоночным автомобилем, взмыть в облака, превратившись в летательный аппарат или послужить мощным тараном, способным крушить стены. Очень многие игры о роботах дают возможность играть в паре. При этом, среди них есть даже такие, где верхней частью робота управляет один человек, а нижней другой.
Управлять роботами всегда интересно
Роботы бегают, прыгают, трансформируются на ходу, меняют оружие и совершают еще много чего. В силу многофункциональности персонажей очень часто в таких играх задействованы не только мышка и стрелки, но еще и некоторые из клавиш. С одной стороны управление здесь не такое уж и простое, зато с другой и возможностей масса, да еще и каких. Ведь на то они и роботы, чтобы уметь при необходимости без особого труда взобраться по вертикальной поверхности или погрузиться в глубины океана, выстоять под метеоритным дождем или в одиночку сразиться с вражеской армией.
Каждому понятно, что чем интереснее сама игра, тем сложнее будет и управление. Ну а в том, что созданные человеком интеллектуальные машины способны на многое сомневаться не стоит. Интересное времяпровождение стоит того, чтобы помимо мышки, при помощи которой можно прицелиться и выстрелить освоить несколько кнопок. Иногда это стрелки и клавиша пробел, а иногда альтернативный вариант (клавиши W A S D). Бывает, что даже этих кнопок не хватает, но настоящих геймеров этот факт не остановит, а напротив даже обрадует.
При современном темпе развития компьютерной индустрии становится практически невозможным определить какому из жанров отдать предпочтение. Бродилки и стрелялки, симуляторы и имитаторы, шутеры и платформеры все они интересны по-своему. И главными героями многих из них являются практически неубиваемые, способные на многое чудо-машины.
Благодаря играм с роботами мальчишки развивают глазомер и логическое мышление, быстро реагируя на смену событий, отрабатывают только что придуманные стратегии. Учатся юные геймеры так же брать на себя ответственность за происходящее, и пускай поначалу это происходит в виртуальном мире, но пройдет не так много времени и полученные у экранов монитора знания можно будет применить на практике. Как бы там ни было, а то время, когда работа человека будет заключаться в управлении всевозможными механизмами, наделенными искусственным разумом, уже не за горами.