- PVSM.RU - https://www.pvsm.ru -
APRS [1 [1], 2 [1]] это протокол цифровой радиолюбительской связи. На базе этого протокола построена глобальная система связи. Её основные задачи: передача информации о координатах объектов в пространстве, обмен сообщениями, передача данных с погодных станций и многое другое.
О чем эта статья? Вообще APRS — большая, сложная и непонятная тема даже для большинства радиолюбителей. Но на Хабре радиолюбителей не очень много. Поэтому я бы хотел показать, что сам стандарт очень хорош и может применяться за пределами любительского радио. Существует много систем, где вопрос обмена сообщениями о координатах изобретается снова и снова (транспорт), придумываются форматы передачи информации, например, о погоде с погодных станций, разрабатываются способы передачи текстовых сообщений. Однако, если бы создатели этих систем знали о стандарте APRS то смогли бы не только сэкономить время(как минимум на разработку протокола), но и применить ряд уже готовых программных и аппаратных решений.
Большую часть своих знаний о системе я получил не из практического использования существующих программ и оборудования, а из разработки собственных программ и утилит для работы с ней [3 [2], 4 [3]]. Информацию черпал из стандарта [5 [4]], исходных кодов Xastir[6 [5]], радиолюбительских форумов [7 [6], 8 [7]] и из общения с радиолюбителями (всех и не счесть).
Если вы делаете:
Да и почти в любом случае, когда вы хотите построить систему передачи данных по радиоканалу и изобретаете для этого протокол, то у радиолюбителей есть наработки в виде различных цифровых видов связи и протокол APRS.
По сути дела это стандарт, описывающий типы и форматы сообщений, которые могут передаваться по сети. Формат пакета может немного отличаться в зависимости от среды передачи (см. ниже), но содержимое и назначение пакета от этого не меняются.
Типы сообщений:
Маяки и текстовые сообщения — это самые часто используемые типы сообщений. Есть еще целый ряд типов сообщений, о которых можно узнать из стандарта. Среди них, например, сообщение о телеметрии станции, то есть можно передавать свободно определяемые параметры показаний каких-нибудь датчиков.
В первую очередь это станции (подвижные и стационарные), еще есть объекты. В сеть передается позывной сигнал (Callsign) и координаты (QTH) станции или объекта. Дополнительно передается значок, определяющий назначение станции (автомобиль, автобус, дом и т.д.) и короткий текстовый комментарий. К примеру, я хочу знать, где сейчас находится мой автомобиль. Или хуже того — моя супруга хочет знать, где сейчас находится мой автомобиль! Сеть как раз и выполняет функцию передачи информации о координатах станции и других его параметрах всем заинтересованным. Как правило, станции отображаются на карте по переданным координатам. Другая станция, являясь полноценным участником сети, может отправить текстовое сообщение другой станции. Например, диспетчер такси по карте видит авто, которые ближе всех к нужному месту и отправляет текстовое сообщение с адресом, куда ехать.
Потому что в идеальном случае пакеты от станции должны попасть в глобальную сеть Интернет. После этого любой подключенный к сети Интернет сможет получить информацию о станции. Для этого существуют мировые APRS серверы. Благодаря интернету, разрозненные части радиосети объединяются в одну мировую сеть APRS (и станции могут связаться между собой).
Тут как раз очень много вариантов и огромный простор для радиолюбительского творчества!
Самый простой вариант, когда станция имеет прямое подключение к сети Интернет (например программа на смартфоне + GPS + мобильный интернет, либо программа на стационарном компьютере + подключение к интернет). В этом случае выполняется прямое подключение к APRS серверу и программа ведет прямой прием и отправку сообщений в мировую сеть APRS.
Но это скучно! У радиолюбителей же есть свой радиоэфир!
Есть мнение, что сеть APRS пришла на смену пакетной радиосвязи. Я считаю, что это не совсем так. Пакетное радио это радиолюбительская версия протокола x.25, которая называется AX.25[10 [8]]. Стек простой: на физическом уровне трансиверы передают и принимают модулированный сигнал, который преобразуется модемами в байты информации. Байты собираются в пакеты. Пакеты содержат все необходимое: источник, приемник (в любительском ax.25 это позывные), сообщение, контрольная сумма. Так же существуют методы установки и поддержания соединения с подтверждением приема(по аналогии с TCP). Есть и пакеты без подтверждения приема(по аналогии с UDP). Раньше существовало большое количество BBS с которыми можно было устанавливать соединения через радиоэфир, принимать и отправлять почту. Такие BBS с функциями обмена почтой были даже на радиолюбительских спутниках, которые могли через какое-то время, за счет особенностей орбиты, пролетать над любой точкой планеты, передавая почту куда угодно.
Со временем появилась сеть Интернет, стала доступной и закрыла потребности обмена сообщениями. Сеть пакетных радиостанций стала уменьшаться. Но осталось оборудование. И это пакетное оборудование может использоваться и сейчас для передачи пакетов сети APRS по радиоканалу. То есть APRS не пришел на смену пакету, а пакетная связь, вернее только один тип пакетов — пакет UI ax.25 (без контроля доставки) и радиоканал используются как среда передачи сообщений сети APRS.
Таким образом, пакетное радио — это один из способов передачи APRS пакета от станции в систему. В принципе, могут использоваться и используются другие методы и виды модуляций радиосигнала, например BPSK, в качестве среды для передачи сообщений сети APRS.
Вроде бы все отлично, но вдруг постапокалипсис, санкции, авария у провайдера? Может ли система работать без сети Интернет? Та часть системы, что использует Интернет, конечно, перестанет работать при аварии. Невозможно будет узнать координаты объектов через браузер и станции, напрямую подключенные к мировому APRS останутся без связи. Однако, та часть системы, которая использует радиоканал для связи, сможет работать самостоятельно.
Хорошо развитая радиосеть APRS подразумевает наличие сети класс станций — радиоретрансляторов (пакетные ретрансляторы — диджипитеры (DIGI)). Тут можно провести аналогию с базовыми станциями сотовой связи. Эти станции стоят высоко, слышат далеко и принимают сигналы мобильных радиостанций с подвижных объектов, которые, как правило работают на УКВ. После приема APRS сообщения DIGI его ретранслирует (это тема отдельного разговора, потому что пакет модифицируется, в путь может добавляться позывной DIGI для того, чтобы понять путь, либо пакет отбрасывается при определенных условиях).
Кроме ретрансляторов есть еще класс станций — мосты (GATE) они могут переслать пакет с одного диапазона на другой. Например, если у GATE есть два трансивера на разные диапазоны, то он может передать пакет с одного диапазона на другой. Дальность связи на УКВ может достигать 50км и GATE приняв пакет на УКВ может передать его на КВ, где пакет может быть передан уже на сотни километров. Тем самым пакет «долетит» до другого города. И если бы существовала сеть, которая покрывала все нужные территории с помощью DIGI и соединяла бы их между собой, то в Интернете отпала бы необходимость. Но у такого решения есть финансовые и технические ограничения. Поэтому есть еще один класс станций — гейты, которые подключены к сети Интернет — IGATE. Именно через них пакеты из радиоэфира попадают в мировую сеть APRS.
Мировые серверы APRS соединены между собой и обмениваются сообщениями, которые каждый из них принимает. Клиенты этих серверов это конечные станции, которые подключаются к мировой сети APRS напрямую для обмена сообщениями, либо станции IGATE, которые отправляют пакеты из эфира в мировую сеть. Другие станции, к какому бы серверу они не были подключены, получат это сообщение. Сообщений в мировой сети очень много, поэтому серверы поддерживают систему фильтрации по определенным параметрам.
Пакет от станции отправляется в радио эфир, как в пустоту, без гарантий доставки. Но если пакет принят, он будет сразу обработан/ретранслирован/отправлен дальше, либо в Интернет. Принятый пакет сразу же будет отображен на карте мира, если у вас открыто соответствующее ПО. В свойствах объекта можно просмотреть на сколько устарели данные от объекта. Не смотря на отсутствие гарантии доставки, есть механизм подтверждения приема текстового сообщения (мы посылаем сообщение N раз, пока не получим подтверждение приема от адресата).
Оборудование:
Программное обеспечение:
Возможности, которые мы получаем:
Комментарий: пожалуй, это самый простой вариант, который может быть.
Оборудование:
Комментарий: в такой конфигурации ваши координаты смогут автоматически меняться во времени и другие участники сети APRS смогут увидеть ваши передвижения.
Оборудование:
Комментарий: в такой конфигурации ваши координаты смогут автоматически меняться во времени и информация об этом будет передаваться в радиоэфир. Если ваши пакеты будут приняты по радио другими участники сети APRS, то они смогут увидеть эту информацию. Если пакеты будут приняты станцией, подключенной к мировой сети APRS (IGATE), то информацию смогут увидеть все.
Оборудование:
Комментарий: в такой конфигурации станция может принимать, отправлять и обрабатывать пакеты как из мировой сети APRS, так и из радиоэфира, в пределах своей зоны радиовидимости. Такая станция может работать, как IGATE (отправлять принятые пакеты из радиоэфира в мировую сеть APRS).
Оборудование:
Комментарий: в такой конфигурации станция может принимать, отправлять и обрабатывать пакеты из радиоэфира, в пределах своей зоны радиовидимости. Такая станция может работать, как DIGI (ретранслировать пакеты, принятые из радиоэфира). Если в пределах радиовидимости этой станции находится IGATE, то ее пакеты могут попасть в мировую сеть APRS (к примеру, можно воспользоваться сервисом отправки текстового сообщения на EMAIL в сети Интернет, находясь в каком-нибудь глубоком лесу или в море).
Оборудование:
Комментарий: в такой конфигурации станция может работать, как IGATE, выполняя эту важную функцию. Если постараться, то можно обойтись даже не любительским приемником, а USB донглом с SDR технологией и правильно соединить между собой все программы.
Как правило, трансиверы предназначены для передачи голоса человека. Цифровой сигнал передается в такой же полосе частот, что и речь (как в модемах в телефонии). Чтобы передавать и принимать модулированый звуковыми частотами цифровой сигнал, трансивер может иметь отдельный линейный вход и выход (они не вносят изменений в сигнал).
Но сигнал должен как-то модулироваться и демодулироваться. Применительно к пакетной связи для работы на КВ используется AFSK 300 бод. Это частотная модуляция: одна частота — это «1», вторая частота — это «0». Изначально для работы применялся модем. На прием он отличал 0 от 1 с помощью фильтров, а на передачу переключалось два генератора частоты. Полученный поток из нолей и единиц преобразовывался в пакеты с помощью специальных устройств — TNC (пакетных контроллеров). Таким образом, схема подключения выглядела так:
RS232 RX,TX(TTL) RX,TX(Audio)
ПК <-------> TNC <----------> Модем <-------> Трансивер <------> Антенна (и эфир)
Со временем, отдельные части этой цепочки стали совмещаться в одном устройстве. Например, есть трансиверы со встроенным модемом; есть TNC со встроенным модемом; я думаю, существуют даже готовые блоки, TNC с трансивером. Очень популярным считается решение на базе программы MixW [10]. В этом случае TNC и модем эмулируются программой MixW, а трансивер подключается к звуковой плате компьютера. Со стороны APRS ПО эта программа выступает, как KISS TNCи взаимодействие с ним происходит через COM порт. Кстати, два COM порта и нульмодемный провод не требуется. В комплекте утилит MixW присутствует виртуальный драйвер нульмодема, в котором можно задавать пары соединенных виртуальных портов. Программа APRS будет считать, что взаимодействует через аппаратный COM порт с аппаратным TNC. В целом, программа MixW очень развита, имеется даже драйвер для сетевой платы, которая будет передавать данные с помощью пакетной радиосвязи(проверялось на Windows). Можно было соединить два компьютера через звуковые платы и попинговаться. Но рассчитано все, конечно, на радиосвязь.
Существуют трансиверы специально созданные для работы в сети APRS, которые самостоятельно выполняют определенный функционал.
Оборудование:
Программное обеспечение:
Комментарий: в такой конфигурации станция всегда в кармане, а на карте можно отображаться, как человек (а не авто).
На самом деле я не знаю подробностей, но фотография говорит сама за себя.
Да да, это именно то, что продается под названием «спутниковая сигнализация». Трекер — автоматическое устройство, которое либо просто записывает координаты и время, либо плюс к этому может передавать маяки в эфир. Взаимодействие с пользователем в процессе работы не предполагается. Трекеры ставят в машины, запускают на воздушных шарах [12].
www.byonics.com/tinytrak/ [13]
Любой радиолюбитель с позывным может подключиться к радиолюбительской сети APRS и использовать эту сеть в радиолюбительских целях. Однако, эта же сеть как-то используется и не радиолюбителями (в США и европе), однако я не знаю, как они это делают. Если же вы не радиолюбитель и не хотите им становиться, либо вы хотите использовать технологию для построения своей сети, системы и в своих личных, либо коммерческих целях, то вам нужно будет подкорректировать некоторые моменты.
Как поднять свой APRS сервер для своей системы? Можно ли использовать радиоэфир, если нет радиолюбительского позывного? Какие можно использовать трансиверы и как к ним подключаться? Все это, а так же множество других технических вопросов (например форматы сообщений, дальность на радиочастотах, виды модуляций) — это уже много для одной статьи, да и к тому же я тоже устал :) Если тема будет интересна, мы с вами ее продолжим.
А пока, всем наилучшие пожелания de UA3MQJ 73!
1. http://aprs.qrz.ru/ [1] — Сайт APRS России.
2. https://ru.wikipedia.org/wiki/APRS [14] — информация на википедии
3. https://code.google.com/p/qaprs/ [2] — мой экспериментальный проект QAPRS (Qt4) для стационарного ПК.
4. https://code.google.com/p/japrs/ [3] — мой экспериментальный проект jAPRS (JAVA ME) для мобильного телефона без GPS.
5. http://www.aprs.org/doc/APRS101.PDF [4] — PDF файл — описание стандарта APRS.
6. http://xastir.org/ [5]
7. http://forum.qrz.ru/27-aprs.html [6] — APRS ветка на форумах QRZ.RU
8. APRS ветка на форумах CQHAM.RU [7]
9. UI-View [9] — клиент APRS для ПК
10. Описание протокола AX.25 (PDF) [8]
11. http://www.qslnet.de/member/rz3tw/ap_st/ap_st.htm [15] — APRS — что это такое?
12. http://www.mixw.net/index_rus.php [10] — сайт программы для работы цифровыми видами связи MixW.
13. APRSdroid [11] — APRS for Android
14. www.byonics.com/tinytrak/ [13]
Автор: UA3MQJ
Источник [16]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/gps/82105
Ссылки в тексте:
[1] 1: http://aprs.qrz.ru/
[2] 3: https://code.google.com/p/qaprs/
[3] 4: https://code.google.com/p/japrs/
[4] 5: http://www.aprs.org/doc/APRS101.PDF
[5] 6: http://xastir.org/
[6] 7: http://forum.qrz.ru/27-aprs.html
[7] 8: http://www.cqham.ru/forum/forumdisplay.php?28-APRS-%E8-%E4%F0%F3%E3%E8%E5-%E2%E8%E4%FB-%EF%E0%EA%E5%F2%ED%EE%E9-%F1%E2%FF%E7%E8
[8] 10: http://qaprs.googlecode.com/files/AX25.2.2.pdf
[9] UI-View: http://www.ui-view.net/
[10] MixW: http://www.mixw.net/index_rus.php
[11] APRSdroid: https://aprsdroid.org/
[12] запускают на воздушных шарах: http://www.radioscanner.ru/forum/topic46633.html
[13] www.byonics.com/tinytrak/: http://www.byonics.com/tinytrak/
[14] https://ru.wikipedia.org/wiki/APRS: https://ru.wikipedia.org/wiki/APRS
[15] http://www.qslnet.de/member/rz3tw/ap_st/ap_st.htm: http://www.qslnet.de/member/rz3tw/ap_st/ap_st.htm
[16] Источник: http://habrahabr.ru/post/249901/
Нажмите здесь для печати.