Во второй части статьи наш робот-нападающий научился выполнять маневр, дающий ему шанс забить мяч в ворота соперников: он двигался к мячу, выбирал кратчайшую траекторию для его объезда, достигал точки, лежащей на прямой, соединяющей мяч и ворота, после чего разворачивался и ударял по мячу, пытаясь сохранить направление на ворота.
Как мы выяснили ранее, угол, при котором будет достигнута точка схода с "орбиты" и направление на ворота соперников зависят от расположения мяча на поле. Если принять направление на ворота соперников за 0 градусов, то точка схода с орбиты при движении робота вокруг мяча против часовой стрелки будет достигнута при 90 градусах, а при движении по часовой стрелке - при -90 градусах относительно направления на ворота.
В разных точках поля меняться будет только направление на ворота соперников, а указанное соотношение углов будет сохраняться. Но это все хорошо в теории, в реальных условиях один из углов легко может быть например 78 градусов, а другой -104. Это обусловлено как мы уже обсуждали ранее несовершенством датчика-компаса и магнитными наводками.
Таким образом для каждой точки поля (или его выделенной зоны) нам необходимы заранее сохраненные в памяти робота направления на ворота соперников и пара точек схода. Сколько будет таких точек (зон) - зависит от требуемой точности наведения на ворота (и, следовательно, разрешения воображаемой системы координат, делящей поле на зоны).
Очевидно, что чем рассматриваемая зона поля ближе к воротам соперников и чем она дальше от "горизонтальной" оси поля (напомним, что мы рассматриваем поле как 2D плоскость), тем угол "атаки" будет больше, см. рис. (a > b)
Теперь давайте поговорим о том, каким образом нападающий должен установить в какой конкретно точке (зоне) поля он находится, чтобы начать работать в соответствии с углами, актуальными для данной точки. Снова обратимся к регламенту и вспомним, что нападающий может иметь на борту дальномер, обращенный вправо, а измерять расстояние им он может только в направлении правого борта (относительно своих ворот), см. рис
Полагаясь на полученную с дальномера информацию нападающий может определить свою "вертикальную" координату на поле. Если никакой другой информации нет, то "горизонтальная" координата должна использоваться либо некая средняя (соответствующая центру поля), либо смещенная к воротам соперников. Выбор между этими вариантами можно сделать исходя из мощности "пиналки" на роботе, если она сильная, выгоднее фиксировать "горизонтальную" координату по центру поля, если слабая - ближе к воротам.
Футбол - командная игра и поэтому регламентом разрешено использовать Bluetooth для взаимодействия роботов в команде. Это открывает широкие тактические возможности, например беспроводную связь можно использовать для получения "горизонтальной" координаты нападающим от вратаря.
Действительно, вратарь, стоя в защите, располагает информацией об удаленности мяча (приблизительной) и угле, образованном направлением на мяч и направлением на ворота соперников:
Зная данный угол вратарь может определить точку поля (зону) в которой находится в данный момент мяч и передать ее координаты нападающему.
Информация о координатах с дальномера нападающего и координаты, передаваемые между роботами должны снабжаться временной меткой. На основании временной метки робот будет понимать, какая из них более актуальна, "Устаревшая" информация не должна использоваться для навигации нападающего, он должен ее игнорировать, действуя так же, как будто этой информации нет вовсе (работать по средним зонам).
В следующей части статьи мы поговорим о вратаре, рассмотрим основные моменты в алгоритме его работы и вплотную подойдем к наиболее неоднозначному моменту - возврату вратаря на ворота после попытки отбить мяч.
Как мы выяснили ранее, угол, при котором будет достигнута точка схода с "орбиты" и направление на ворота соперников зависят от расположения мяча на поле. Если принять направление на ворота соперников за 0 градусов, то точка схода с орбиты при движении робота вокруг мяча против часовой стрелки будет достигнута при 90 градусах, а при движении по часовой стрелке - при -90 градусах относительно направления на ворота.
В разных точках поля меняться будет только направление на ворота соперников, а указанное соотношение углов будет сохраняться. Но это все хорошо в теории, в реальных условиях один из углов легко может быть например 78 градусов, а другой -104. Это обусловлено как мы уже обсуждали ранее несовершенством датчика-компаса и магнитными наводками.
Таким образом для каждой точки поля (или его выделенной зоны) нам необходимы заранее сохраненные в памяти робота направления на ворота соперников и пара точек схода. Сколько будет таких точек (зон) - зависит от требуемой точности наведения на ворота (и, следовательно, разрешения воображаемой системы координат, делящей поле на зоны).
Очевидно, что чем рассматриваемая зона поля ближе к воротам соперников и чем она дальше от "горизонтальной" оси поля (напомним, что мы рассматриваем поле как 2D плоскость), тем угол "атаки" будет больше, см. рис. (a > b)
Теперь давайте поговорим о том, каким образом нападающий должен установить в какой конкретно точке (зоне) поля он находится, чтобы начать работать в соответствии с углами, актуальными для данной точки. Снова обратимся к регламенту и вспомним, что нападающий может иметь на борту дальномер, обращенный вправо, а измерять расстояние им он может только в направлении правого борта (относительно своих ворот), см. рис
Полагаясь на полученную с дальномера информацию нападающий может определить свою "вертикальную" координату на поле. Если никакой другой информации нет, то "горизонтальная" координата должна использоваться либо некая средняя (соответствующая центру поля), либо смещенная к воротам соперников. Выбор между этими вариантами можно сделать исходя из мощности "пиналки" на роботе, если она сильная, выгоднее фиксировать "горизонтальную" координату по центру поля, если слабая - ближе к воротам.
Футбол - командная игра и поэтому регламентом разрешено использовать Bluetooth для взаимодействия роботов в команде. Это открывает широкие тактические возможности, например беспроводную связь можно использовать для получения "горизонтальной" координаты нападающим от вратаря.
Действительно, вратарь, стоя в защите, располагает информацией об удаленности мяча (приблизительной) и угле, образованном направлением на мяч и направлением на ворота соперников:
Зная данный угол вратарь может определить точку поля (зону) в которой находится в данный момент мяч и передать ее координаты нападающему.
Информация о координатах с дальномера нападающего и координаты, передаваемые между роботами должны снабжаться временной меткой. На основании временной метки робот будет понимать, какая из них более актуальна, "Устаревшая" информация не должна использоваться для навигации нападающего, он должен ее игнорировать, действуя так же, как будто этой информации нет вовсе (работать по средним зонам).
В следующей части статьи мы поговорим о вратаре, рассмотрим основные моменты в алгоритме его работы и вплотную подойдем к наиболее неоднозначному моменту - возврату вратаря на ворота после попытки отбить мяч.