Эта история началась почти год назад. Сидели мы как то с другом и подумали, «а что если сделать систему, для игры через интернет? То бишь, управления реальными роботами?»
Сказано – сделано… «робота»
закипела…
В процессе предварительного обсуждения была выбрана конструкция «а-ля танк»- то есть 2 колеса с отдельными двигателями, без рулевой системы вообще. Эта система дает роботу высокую маневренность и возможность развернуться на 180 градусов, стоя на месте. Кроме того, побочным следствие такого разворота –является возможность наносить удар по шайбе(если есть клюшка) – на этом месте, многие должны вспомнить игру «настольный хоккей»- где хоккеисты вращаются вокруг своей оси и таким образом – бьют по шайбе.
Однако, такое устройство ходовой части – вызвало большие проблемы в будущем. Почему: 2 отдельных двигателя никогда не будут вращаться с синхронной скоростью, если не имеют жесткой механической связи. Почему: разность изготовления на заводе, погрешности в посадке и диаметрах колес и т.д. и т.п.
Поэтому, единственный путь синхронизировать колеса (если не связывать их некой жесткой связью – типа общей оси) – то использовать программную синхронизацию.
Сначала взяли для этих целей акселерометр/гироскоп. Но это оказалась насколько простая, настолько и не неудачная идея: робот стал «терминатором» - который четко «прёт» вперед и его не может сбить с курса ничто-даже удары других роботов. А это плохо
Мы здесь не «скайнет» строим – и такие «терминаторы» не нужны. К слову, программная реализация сего действа весьма сложна и сможет разобраться и инсталлировать только программер. Мне повезло-я программер
)))
Пришлось отказаться. Второй путь – установка «энкодеров»(дырчатых дисков) на колеса и датчиков, считывающих импульсы, когда «дырка» проходит мимо датчика. Таким образом, зная скорости прохождения «дырок» на каждом из колес, - можно много раз в секунду корректировать скорости вращения колес и делать их одинаковой. Это не делает робота «терминатором» - его вполне можно сбить с курса, ударом другого робота. Это просто синхронизирует скорости колес. То, что надо.
Сразу скажу, что это был весьма тернистый путь - как с точки зрения использующихся технических решений, так и физической сложности изготовления: одних только деталей для роботов - было отпечатано более 100 штук! Причем печать велась на открытом балконе, несмтотря ни на дождь, ни на снег
Достаточно сказать, что одна только управляющая программа для заливки в роботов – представляет собой 15 вкладок в Arduino IDE до 300 с лишним строк каждая О_о
Были на этом пути и неудачи: была закуплена большая партия Ni-Mh аккумуляторов и зарядных устройств, для них. Но, как оказалось, они не справляются с такой энергоотдачей.
И, в итоге- они полетели в корзину(условно)…:-(
Пришлось перейти на литий-ионные элементы 18650.
Сейчас система представляет собой веб сайт, на который ведется трансляция с youtube. «Пилоты» роботов заходят на него и берут в управление свободного робота. И «let the battle-begin!!!»
Управление ведется «стрелками» с клавиатуры. Также, оно дублировано на другую конкурирующую схему (лично я- «фу фу, только стрелки»
- но пускай будет) – WASD.
Для создания стола – мы закупили школьную доску.
И установили на нее бортик из алюминиевой полосы. Это работа была бы невозможной, без станочного парка. Тут нам тоже повезло-у нас есть токарный станок по металлу и сверлильный тоже..
Далее-дома валялась пару прутов из нержавеющей стали. Отпилили нужные куски из нее, выточили на концах оси под подшипники и установили их – как оси для ворот (ворота задумали как откидные, для того, чтобы доставать оттуда шайбы было проще).
Далее - напечатали боковины ворот с плотной посадкой подшипников в них (подшипники завалялись у меня в количестве аж 50 штук от другого проекта).
На боковинах можно видеть гребенки – натяжители сетки. Которые помогут нам натянуть сетку на ворота.
Далее – из того же нержавеющего прута и куска такой же нержавеющей трубы(ибо прут закончился нежданно-негаданно
) – были выточены соединительные распорки для боковин.
Добавлено спустя 5 минут 10 секунд:В качестве сетки – случайно попался на глаза и был немедленно разодран
))))) - сетчатый мешок для стирки мелких вещей в стиральной машине. У него оказался весьма модный шестигранный рисунок сетки. Мы впали в восторг!
))
Однако, - рано радовались. Как оказалось, начался самый сложный этап для почти любого мужика- швейные работы!
))))) Как оказалось, это даже сложнее, чем программинг, 3d печать и токарные работы –вместе взятые!
))))))))
Вдоволь намучавшись – мы таки обшили сеткой ворота. Система - готова! Уииии!!!
))
В качестве шайбы – было взято решение, которое я подсмотрел давным давно-еще в начале 90-х, в журнале "Юный Техник".
Тогда я был моложе, трава зеленее - а руки у меня "кривее"
Они предлагали ее сделать из шайб для хоккея и больших шаров от подшипников. Это позволило бы играть в хоккей в крытом помещении на обычном полу.
Тогда -у меня ничего не вышло. Но, спустя примерно 30 лет, с помощью не своих рук, а 3d принтера-я таки осуществил сие! ^_^
Таки што я имею сказать по этому поводу: скользит просто как по льду. Поведение у нее - как у реальной шайбы.
Многие уже видели, я делал посты про эту систему. Однако, мы на днях завершили создание игрового стола и начали тестовые игры.
После первых игр, видно, как изменились клюшки – они стали «ветеранскими»: щедро покрыты царапинами и славой побед ^_^
Шайбе тоже досталось – ее потрепало в битве как надо: ^_^
Ну, что еще могу сказать по поводу? Да только «Blades of Steel» / Клюшки из стали
)))
Видео первых тестов:
. Встроить не смог -поэтому сорри заранее
https://youtu.be/vx6WkAip0qoДобавлено спустя 10 минут 34 секунды:Что планируется в данный момент: хотим проапгрейдить систему, установив всенаправленные колеса (шведские колёса- Илона), чтобы еще более улучшить управляемость и скорость перемещения роботов по полю. Так что буду благодарен любому совету по поводу того, какие самые недорогие и качественные колёса можно поставить.
Наш идеал скоростной системы, вот это:
https://www.youtube.com/watch?v=s_A8hrs6CT8 Я так понимаю, они тоже используют омни колеса....