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

Итак, начало 2000-х и, добившись неплохих (по моему мнению) успехов в предыдущем проекте - Шахматы и покорение мировых вершин своей дочери - Александры, решил вспомнить советское инженерное образование и замахнуться на... историческую легенду - Турка (автомат Кемпелена). 250 лет назад выдающийся австрийский и венгерский изобретатель Вольфганг Кемпелен, сконструировал механического шахматного игрока, прадедушку современных шахматных компьютеров. Автомат Кемпелена гастролировал по всей Европе от Вены до Парижа и Лондона, обыгрывая вельмож и даже коронованных особ - Фридриха Великого и Наполеона. Попытки проникнуть в тайну автомата предпринимались неоднократно, нередко самыми злокозненными способами, ставившими под угрозу жизнь Кемпелена и его спутников. Очень подробно об этом артефакте изложено тут.

В 2019 вышла интересная книга: Виктор Хенкин "Одиссея шахматного автомата".

Надо сразу сказать, что игра роботами в шахматах практиковалась и до моей затеи, особенно этим любили заниматься на всевозможных выставках по промышленной робототехнике. С целью привлечения внимания публики. Но меня, как уже профессионального деятеля шахмат, это не впечатляло. Во-первых, в медленном перемещении фигур на шахматной доске роботом. обычно на это у них уходило 5-10 секунд на один ход. Игра напоминала игру дедушек в парке. Поэтому, как ориентир, была поставлена цель - робот должен обыгрывать в блиц (5 минут на партию каждому сопернику) любого белкового соперника. Для стимула я даже заключил пари с Володей Крамником (на тот момент чемпион мира) - если я сделаю такого робота - чтобы он сыграл с ним партию. Володя высказал - такого робота, перемещающего точно и так быстро фигуры (не более 2 секунд на ход) создать невозможно. Забегая в будущее - пари я выиграл и он сдержал свое слово - сыграл (тут видео). Почему надо делать ход быстро, желательно не дольше 2-х секунд? 5-ть минут на партию это 300 секунд. Если на ход будет уходить 5-ть и более секунд, то существует вероятность, что сильный гроссмейстер будут сражаться до последнего материала (патрона) и тупо снесет флаг роботу. Это блиц - игра не только на мат но и на время.

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

Можно сказать, что ничего своего мы не создали - взяли готовенькое, объединили это в систему и вуаля. Ну, во-первых, само объединение - это у роботостроителей называется интеграция, что является не тривиальной задачей. Во-вторых, потребовалось написание нескольких программ и самого основания - стола для игры.
Новое в самом прямом смысле всё-таки мы создали - это СХВАТ. Или по человечески - кисть. Дело в том, что робот Кука, как впрочем и другие роботы поставляется без всякой оснастки. Фирма специализируется только на "голых" манипуляторах. А вот схватами - это уже творчество других фирм и интеграторов.

Выяснилось, что схваты для промышленности бывают пневматические и электрические. Пневматические были отброшены по причине их шумности, а самое главное, небезопасности для первых лиц, которым потребовалось сыграть с роботом на презентации и тд. А пневматика - это баллоны со сжатым воздухом и тд. Табу.
По электрическим схватам - все западное и жутко дорогое - от 7-10 000 евро ((. Но это полбеды, основная в том, что у них три пальца! И этими тремя пальцами есть большой риск не захватить неровно стоящую фигуру( играете с человеком, а он все на доске ставит через...( не точно в центр клетки). Или она вылетит при сжимании, как фигушка.

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

Мы сделали схват с четырьмя пальцами, на базе мотор-редуктора стеклоподъёмника ВАЗ. Работает отлично. На сжатие-отпускание уходи не более 0.35 секунды.

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

Начали оптимизировать движение манипулятора в пространстве. Его работа - зависает над фигурой - опускает пальцы в 2-х мм над доской-захватывает фигуру- поднимает ее на высоту выше самой высокой - перемещается к другой клетке - опускает на 1 мм - разжимает схват - поднимается - идет в домашнюю точку-ждет следующего хода. Рокировка и превращение состоит из 2-х ходов.

Тут пришла мысль - часто мы можем не поднимать и опускать фигуру а перетаскивать ее по доске, где это возможно. И это сильно сократило среднее время на ход! Движения манипулятора стали похожи на человеческие.

Ну и как, вишенка на торте, робот может играть сразу с тремя соперниками. Есть историческое видео, когда он одновременно играет с Сергеем Карякиным, Яном Непомнящим и Володей Поткиным. Все эти шахматисты в представлении не нуждаются. В блиц и с темя гроссами! Результат 2.5 на 0.5. Одному Сергею удалось убежать на ничью, в ладейном эндшпиле без пешки.

С кем только мы не играли и в каких мероприятиях не участвовали. От премьер-министра РФ до... Да и образы робот принимал всякие.

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

Комментарии (10)


  1. Stratum
    09.04.2022 14:40

    Каким образом определяется точное положение фигур? И каким образом удается захватывать разные по форме фигуры?


    1. ChessKKV Автор
      09.04.2022 20:39
      +1

      Спасибо за хорошие вопросы. Благодаря тому, что каждый из пальцев схвата ориентирован по углам клетки, положение фигуры в пределах клетки может быть достаточно свободно+- 30%от размера самой клетки. И, необходимость точного определения в самой клетке, не нужна. Если сама доска ее видит, значит этого достаточно для схвата. Если фигура "исчезает", т е доска ее перестала видеть, значит или фигуры нет(упала, утащили и тд) или она стоит между клетками - это шахматная неопределенность и робот может попросить поправить фигуры. Получается еще и смысловой контроль. В видео, где Крамник играет с роботом, Владимир так и поступил - робот просто ждал, когда пешку поставят точно. А разные по форме фигуры - для робота они одинаково круглые, т к он их берет за нижнее, круглое основание.


  1. Rom77
    10.04.2022 07:27
    +1

    По автомату Кемпелена есть ещё книга - Tom Standage "The Turk" (2002).


    1. ChessKKV Автор
      10.04.2022 08:16

      Извините, случайно нажал стрелку вниз. Получился минус((. И как тут ее отредактировать, убрать этот минус?? Да, хорошая книга!


  1. MaxEkb77
    11.04.2022 09:20

    Спасибо, интересно.

    А почему не использовали мягкие захваты, наверняка же рассматривали ?


    1. ChessKKV Автор
      11.04.2022 13:27

      Спасибо за вопрос. А какие именно мягкие? Смотрели много идей. Из-за высоких скоростей перемещения манипулятора - необходима существенная сила удержания фигур.


  1. IgorIlyin
    11.04.2022 13:24

    Можно в фигуры впечатаь железку и подхватывать электромагнитом.


  1. ChessKKV Автор
    11.04.2022 13:30

    Смотрели и это. Влияние на другие, рядом стоящие фигуры. И как ее ставить обратно назад? Может сыграть.


  1. WinPooh73
    11.04.2022 17:47

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


    1. ChessKKV Автор
      11.04.2022 21:25

      Спасибо за интересный вопрос. 1е необходимо создать электронную доску именно под Го. Второе, т к все камни одинаковые и их только два типа, то это упрощает. В шахматах то 12ть типов разных фигур(6ть белыхи 6ть черных(пешка-ладья-конь-слон-ферзь-король). Снять можно и несколько камней за раз. Для этого необходимо создавать принципиально другой схват, чем для шахмат. Может на других принципах, типа присоски или что то другое. Получается, что под Го надо будет многое создавать иное. Задачи разные.