GPS-датчик#
Введение#
Датчик V5 GPS (Game Positioning System™) обеспечивает точное отслеживание положения и ориентации робота на поле VEX. Он использует код GPS поля по периметру поля для расчета координат X и Y, а также направления движения робота в режиме реального времени.
Датчик GPS возвращает координаты робота, используя точку отсчета, автоматически вычисленную на основе смещений, введенных при настройке датчика GPS в окне «Устройства».
Для получения дополнительной информации о датчике GPS, прочтите Использование датчика GPS с VEX V5 в библиотеке VEX.
Опорная точка выступает в качестве собственной позиции (0, 0) GPS-датчика, относительно которой рассчитываются все координаты, направления и перемещения, получаемые с помощью GPS-методов.

На этой странице в качестве примера имени 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:
|
# 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-кода поля.

Usage:
gps_sensor.set_location(x, y, distance_units, heading, heading_units)
Параметры |
Описание |
|---|---|
х |
Координата x опорной точки на поле. |
й |
Координата Y опорной точки на поле. |
единицы расстояния |
Единицы измерения для координат x и y:
|
заголовок |
Направление, в котором ориентирована опорная точка относительно абсолютного направления поля, варьируется от 0 до 359,9 градусов. |
заголовочные_единицы |
Единица измерения для заголовка: |
x_позиция#
x_position возвращает координату x опорной точки на поле.
Usage:
gps_sensor.x_position(units)
Параметры |
Описание |
|---|---|
единица |
Единица измерения:
|
y_позиция#
y_position возвращает координату y опорной точки на поле.
Usage:
gps_sensor.y_position(units)
Параметры |
Описание |
|---|---|
единица |
Единица измерения:
|
заголовок#
Параметр heading возвращает направление опорной точки на основе ориентации поля от 0 до 359,9 градусов.
Направление соответствует абсолютному курсу полевого прибора, который составляет от 0º до 359,9º по часовой стрелке. 0º соответствует положению «12 часов».

Usage:
gps_sensor.heading()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
ускорение#
acceleration возвращает ускорение робота по заданной оси в диапазоне от -4,0 до 4,0 G.
Usage:
gps_sensor.acceleration(axis)
Параметры |
Описание |
|---|---|
ось |
Какую ось использовать:
|
gyro_rate#
gyro_rate возвращает скорость вращения робота по выбранной оси.
Usage:
gps_sensor.gyro_rate(axis, units)
Параметры |
Описание |
|---|---|
ось |
Какую ось использовать:
|
единицы |
Единица измерения:
|
ориентация#
Параметр orientation возвращает ориентацию робота по крену, тангажу или рысканию в градусах.
Usage:
gps_sensor.orientation(axis, units)
Параметры |
Описание |
|---|---|
ось |
Какую ориентацию использовать:
|
единицы |
Единица измерения: |
качество#
Значение quality возвращает уровень сигнала GPS-датчика в процентах.
Возможные значения |
Описание |
|---|---|
100 |
Все данные о местоположении и направлении, полученные от GPS-датчика, являются достоверными. |
~90 |
В настоящее время данные о местоположении рассчитываются не путем получения информации из полевого кода GPS, а с помощью альтернативных методов. |
0 - 80 |
Действительными являются только значения направления, полученные от GPS-датчика, но по мере того, как проходит время, в течение которого GPS-датчик не сканирует достаточное количество данных из GPS-полевого кода для точного определения местоположения и направления, качество сообщаемого сигнала будет продолжать падать, пока не достигнет нуля, после чего любые данные GPS-датчика фактически замораживаются и становятся недействительными. |
Usage:
gps_sensor.quality()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
измененный#
changed регистрирует функцию, которая вызывается всякий раз, когда GPS-датчик обнаруживает изменение направления.
Usage:
gps_sensor.changed(callback, arg)
Параметры |
Описание |
|---|---|
|
Ранее определенная функция, которая выполняется при изменении направления GPS-датчика. |
|
Необязательно. Кортеж, содержащий аргументы для передачи в функцию обратного вызова. См. Использование функций с параметрами для получения дополнительной информации. |
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)
Параметр |
Описание |
|---|---|
|
Интеллектуальный порт, к которому подключен GPS-датчик, обозначается как |
# Create a GPS Sensor in Port 10
gps_sensor = Gps(Ports.PORT10)