GPS-датчик#

Введение#

Датчик V5 GPS (Game Positioning System™) обеспечивает точное отслеживание положения и ориентации робота на поле VEX. Он использует код GPS поля по периметру поля для расчета координат X и Y, а также направления движения робота в режиме реального времени.

Датчик GPS возвращает координаты робота, используя точку отсчета, автоматически вычисленную на основе смещений, введенных при настройке датчика GPS в окне «Устройства».

Для получения дополнительной информации о датчике GPS, прочтите Использование датчика GPS с VEX V5 в библиотеке VEX.

Опорная точка выступает в качестве собственной позиции (0, 0) GPS-датчика, относительно которой рассчитываются все координаты, направления и перемещения, получаемые с помощью GPS-методов.

GPS-датчик VEX V5.

На этой странице в качестве примера имени GPS-датчика используется gps_sensor При необходимости замените его на собственное имя.

Ниже приведён список доступных методов:

  • calibrate – Калибрует датчик GPS, чтобы установить его направление в соответствии с текущим направлением трансмиссии.

  • set_origin – Устанавливает положение опорной точки на роботе.

  • set_location – Устанавливает как положение опорной точки, так и направление на поле.

  • x_position – Возвращает координату x опорной точки на поле.

  • y_position – Возвращает координату y опорной точки на поле.

  • heading – Возвращает заголовок опорной точки на основе ориентации поля.

  • acceleration – Возвращает ускорение робота по выбранной оси.

  • gyro_rate – Возвращает скорость вращения робота по выбранной оси.

  • orientation – Возвращает ориентацию робота по крену, тангажу или рысканию в градусах.

  • quality – Возвращает уровень сигнала GPS-датчика.

  • changed – Регистрирует функцию, которая будет вызываться всякий раз, когда датчик GPS обнаружит изменение направления.

Конструктор – Ручная инициализация GPS-датчика.

  • Gps – Создает GPS-датчик.

калибровать#

calibrate калибрует опорную точку, устанавливая ее заданное направление в качестве текущего направления трансмиссии. В это время робот должен оставаться совершенно неподвижным, так как движение во время калибровки приведет к неточным результатам.

Usage:
gps_sensor.calibrate()

Параметры

Описание

Этот метод не имеет параметров.

set_origin#

Параметр set_origin устанавливает положение опорной точки на роботе вручную. Это можно сделать для ручной установки местоположения GPS-датчика на роботе, вместо того чтобы делать это в настройках конфигурации.

Usage:
gps_sensor.set_origin(x, y, distance_units)

Параметры

Описание

х

Координата x опорной точки на роботе.

й

Координата Y опорной точки на роботе.

единицы расстояния

Единицы измерения для координат x и y:

  • MM – миллиметры
  • INCHES

# GPS Sensor is mounted 25mm forward
# from the reference point on a robot

gps.set_origin(0, 25, MM)

set_location#

Параметр set_location вручную задает положение и направление опорной точки на поле. Это можно сделать для уменьшения неточностей, если датчик GPS находится слишком близко к стенам поля при запуске, чтобы охватить достаточное количество GPS-кода поля.

Вид сверху на поле VEX V5, показывающий, как датчик смотрит на код поля по бокам поля.

Usage:
gps_sensor.set_location(x, y, distance_units, heading, heading_units)

Параметры

Описание

х

Координата x опорной точки на поле.

й

Координата Y опорной точки на поле.

единицы расстояния

Единицы измерения для координат x и y:

  • MM – миллиметры
  • INCHES

заголовок

Направление, в котором ориентирована опорная точка относительно абсолютного направления поля, варьируется от 0 до 359,9 градусов.

заголовочные_единицы

Единица измерения для заголовка:DEGREES

x_позиция#

x_position возвращает координату x опорной точки на поле.

Usage:
gps_sensor.x_position(units)

Параметры

Описание

единица

Единица измерения:

  • MM – миллиметра
  • INCHES

y_позиция#

y_position возвращает координату y опорной точки на поле.

Usage:
gps_sensor.y_position(units)

Параметры

Описание

единица

Единица измерения:

  • MM – миллиметра
  • INCHES

заголовок#

Параметр heading возвращает направление опорной точки на основе ориентации поля от 0 до 359,9 градусов.

Направление соответствует абсолютному курсу полевого прибора, который составляет от 0º до 359,9º по часовой стрелке. 0º соответствует положению «12 часов».

Вид сверху на поле VEX V5, показывающий градусы вокруг поля.

Usage:
gps_sensor.heading()

Параметры

Описание

Этот метод не имеет параметров.

ускорение#

acceleration возвращает ускорение робота по заданной оси в диапазоне от -4,0 до 4,0 G.

Usage:
gps_sensor.acceleration(axis)

Параметры

Описание

ось

Какую ось использовать:

  • AxisType.XAXIS
  • AxisType.YAXIS
  • AxisType.ZAXIS

gyro_rate#

gyro_rate возвращает скорость вращения робота по выбранной оси.

Usage:
gps_sensor.gyro_rate(axis, units)

Параметры

Описание

ось

Какую ось использовать:

  • AxisType.XAXIS
  • AxisType.YAXIS
  • AxisType.ZAXIS

единицы

Единица измерения:

  • VelocityUnits.DPS – градусы в секунду, от -1000 до 1000
  • VelocityUnits.RPM – обороты в минуту, от -167 до 167

ориентация#

Параметр orientation возвращает ориентацию робота по крену, тангажу или рысканию в градусах.

Usage:
gps_sensor.orientation(axis, units)

Параметры

Описание

ось

Какую ориентацию использовать:

  • OrientationType.ROLL
  • OrientationType.PITCH
  • OrientationType.YAW

единицы

Единица измерения:DEGREES

качество#

Значение quality возвращает уровень сигнала GPS-датчика в процентах.

Возможные значения

Описание

100

Все данные о местоположении и направлении, полученные от GPS-датчика, являются достоверными.

~90

В настоящее время данные о местоположении рассчитываются не путем получения информации из полевого кода GPS, а с помощью альтернативных методов.

0 - 80

Действительными являются только значения направления, полученные от GPS-датчика, но по мере того, как проходит время, в течение которого GPS-датчик не сканирует достаточное количество данных из GPS-полевого кода для точного определения местоположения и направления, качество сообщаемого сигнала будет продолжать падать, пока не достигнет нуля, после чего любые данные GPS-датчика фактически замораживаются и становятся недействительными.

Usage:
gps_sensor.quality()

Параметры

Описание

Этот метод не имеет параметров.

измененный#

changed регистрирует функцию, которая вызывается всякий раз, когда GPS-датчик обнаруживает изменение направления.

Usage:
gps_sensor.changed(callback, arg)

Параметры

Описание

callback

Ранее определенная функция, которая выполняется при изменении направления GPS-датчика.

arg

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

def my_function():
  brain.screen.print("GPS heading changed")

# Call my_function whenever gps_sensor's heading changes
gps_sensor.changed(my_function)

Конструктор#

Конструкторы используются для ручного создания объектов Gps , необходимых для настройки GPS-датчика вне VEXcode.

Gps#

Gps создает GPS-датчик.

Usage:
Gps(smartport)

Параметр

Описание

smartport

Интеллектуальный порт, к которому подключен GPS-датчик, обозначается как Ports.PORTx , где x — номер порта.

# Create a GPS Sensor in Port 10
gps_sensor = Gps(Ports.PORT10)