Донские Радиолюбители
16+
главная
новости
статьи
частоты
репитеры
радиоклубы
форум
ссылки
литература
RK6LZQ
Статьи

Статьи : Пейджинг /

Пейджинговый протокол POCSAG

Добавлено пользователем RN6LMR 06.03.2013 в 09:40.
Изменено пользователем RN6LMR 06.03.2025 в 10:13.

Введение

Протокол POCSAG был разработан в 1975—1978 гг. консультативной группой международных экспертов под патронажем Министерства связи Великобритании. Название POCSAG расшифровывается как "Консультативная группа по стандартизации почтовых кодов", которая в свое время контролировала все телекоммуникации в Великобритании. POCSAG — это протокол передачи радиоданных, используемый для передачи односторонних сообщений на пейджеры. Пейджеры — это небольшие радиоприемники, которые активируются, когда на них по радиоканалу передается сообщение, закодированное надлежащим образом.
Протокол POCSAG стал значительным улучшением по сравнению с предыдущими протоколами пейджинга на основе тонального сигнала, что позволило значительно увеличить время автономной работы пейджера и увеличить число абонентов в системе.
Существует три стандартных скорости передачи данных POCSAG: 512, 1200 или 2400 бит/с. Скорость 512 бит/с обеспечивает наибольшую дальность связи, в то время как скорость 1200 и 2400 бит/с позволяет передавать больше вызовов в секунду.
Вызовы POCSAG передаются в пакетном режиме, с длинной преамбулой в начале сообщения, что позволяет пейджерам периодически асинхронно активироваться и прослушивать эфир на наличие вызова. Как только они обнаруживают преамбулу, они синхронизируются с сообщением POCSAG, обнаруживая встроенные биты синхронизации. Пейджеры анализируют последовательные пакеты сообщений, чтобы определить, содержит ли какой-либо пакет фрейм кодового слова адреса с собственным заглавным кодом.

Модуляция

Обычно при передаче по радио используется радиочастотная манипуляция со сдвигом частоты (FSK) со сдвигом несущей частоты на ±4500 Гц. Высокая частота соответствует логическому "0", а низкая частота — логической "1". Часто отдельные каналы передачи содержат блоки данных с более чем одной скоростью.

CAP-коды

CAP-код — код протокола доступа к каналу (англ. Channel Access Protocol code), который является уникальным идентификационным кодом, присвоенным определенному сообщению.
Когда пейджер обнаруживает свой собственный CAP-код во фрейме адреса POCSAG, он предупреждает пользователя звуковым сигналом, тональным сигналом или вибрацией. И если у него есть возможность отображения, он будет отображать номер, если это цифровой пейджер, или текстовое сообщение, если это буквенно-цифровой пейджер. Длина CAP-кодов POCSAG составляет 21 бит, что позволяет использовать до 2097152 уникальных CAP-кодов для каждого радиоканала.
Код CAP-код состоит из 18 бит адреса и 3 бит местоположения кадра. Биты местоположения кадра являются младшими значащими битами, а биты адреса — старшими значащими битами CAP-кода.

Формат передачи вызова в POCSAG

Передаваемые данные имеют иерархическую структуру. Передача POCSAG состоит из 576-битной преамбулы и одного или нескольких пакетов кодовых слов. Каждый пакет содержит:
  • 32-битный код кадровой синхронизации, который отмечает начало пакета кодовых слов;
  • Восемь адресных фреймов по два 32-разрядных адреса или пустых кодовых слова в каждом.

Преамбула POCSAG

Для экономии энергии большинство пейджинговых приемников (пейджеров) при тишине в радиоканале самостоятельно переходят в спящий режим, потребляя очень мало энергии, периодически включаясь для прослушивания радиоканала наличие преамбулы POCSAG. Пакеты POCSAG передаются последовательно, начиная с 576-битовой преамбулы (длиной в один пакет и один кадр), которая используется для "пробуждения" пейджеров. Преамбула — это последовательность из 576 чередующихся единиц и нулей, которая используется пейджером для установления тактовой синхронизации. Когда приёмник обнаруживает наличие преамбулы, тo синхронизируется с битрейтом преамбулы. Чередующийся шаблон нулей и единиц в преамбуле определяет скорость передачи данных в предстоящих пакетах сообщения. Все пакеты после преамбулы передаются с одинаковой скоростью передачи данных — 512, 1200 или 2400 бит в секунду.

Пакеты POCSAG

За преамбулой следует поток блоков. Длина кодовой последовательности в формате POCSAG не определена, блоки следуют один за другими, каждый со своим кодовым словом синхронизации — для подстройки синхронизации приемников (при передачи длинных сообщений).
Пакет POCSAG начинается с кода синхронизации кадров (фиксированная последовательность из 32 бит: 0111 1100 1101 0010 0001 0101 1101 1000), за которым следуют 8 двойных слов (кадров), нумеруемых с 0-го по 7-й. Каждый из 8 кадров содержит два кодовых слова: адресное и информационное. В каждом пакете может быть отправлено до 16 кодовых слов адреса. Для правильной структуры пакета каждый кадр содержит два кодовых слова адреса, два кодовых слова ожидания или два кодовых слова сообщения.

Общая структура сигнала в формате POCSAG

Структура кода кадровой синхронизации

Код кадровой синхронизации — это зарезервированное слово, которое используется для идентификации начала каждого пакета. Кодовое слово кадровой синхронизации состоит из 32 бит:

01111100110100100001010111011000

Кодовые слова

В пакете есть два типа кодовых слов: кодовое слово адреса и кодовое слово сообщения. Каждое из них содержит 32 бита информации.

Адрес пейджера делится на 8. Остаток от деления дает номер кадра, в котором пейджер будет искать свой адрес. В этом фрейме либо в первом, либо во втором слове передается результат деления. Все предыдущие кадры этого блока заполняются специальными 32-х битными последовательностями — "пустыми" словами 0111101010001001110000010111). Сразу же после передачи начинается передача собственного сообщения.

Допустим, пусть нам необходимо передать сообщение абоненту 1234565. Делим 1234565 на 8, получаем 154320 и 5 в остатке. Таким образом, результат деления 154320 будет передан в 5 кадре. Далее формируем блок, содержащий адрес пейджера:
1. Каждый блок начинается с синхронизации;
2. Кадры с нулевого по четвертый включительно заполняются "пустыми словами";
3. В первом слове пятого кадра передается результат деления — 154320;
4. Во втором слове этого же кадра начинается передача сообщения.

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

Формат адресных и информационных кодовых слов
Бит в слове передается начиная с наиболее значимого. На рисунке это 1, 2, 20, 22 биты.
Для различия адресного и информационного кодовых слов служит бит слога (Е), здесь 0 соответствует адресному слову, а 1 — информационному. Далее следует поле сообщения (F) длиной 18 бит для адресного слова и 20 бит для информационного. Длина поля при передачи адресного слова и наличие 8 групп, дает общую длину адреса пейджера в 21 бит и, соответственно, максимальное число пейджеров — 2 000 000. При передаче адресного слова предусматривается поле субадреса G, которое использовалось первоначально, для указания типа тонального сигнала, которым пейджер извещен о приеме сообщения.
Затем он начал использоваться для организации информационных каналов. Далее следует поле для передачи контрольной суммы (H), которая служит для коррекции ошибок в принятом слове. Используемый код БЧХ (31, 21), служит для исправления ошибок, Для этого в принятом сообщении вычисляется сумма и сравнивается с контрольной. В случае несовпадении осуществляется коррекция. Бит чётности (I) позволяет проверить правильность коррекции ошибок. Он вычисляется на основание битов с 1 по 31, таким образом, чтобы общее число единичных битов в слове стало чётным.
Таким образом, адресное слово, содержащее адрес пейджера передаётся только в соответствующем кадре, а информационное может передаваться в любом кадре или блоке, но последовательно и сразу же за соответствующим адресным словом. Конец сообщения обозначается либо "пустым", либо следующим адресным словом.

Структура кодового слова адреса


Формат слова кода адреса
Структура кодового слова адреса показана выше. Первым битом кода адреса (флаг) всегда является 0. Адресное поле содержит 18 старших битов из 21-битового адреса конкретного пейджера. Биты со 2 по 19 содержат биты адреса. Полный CAP-код состоит из 18 адресных битов (биты 2—19) и 3 битов, полученных из местоположения кадра в пакете, что в общей сложности 21 бит составляет и образует 2 097 152 уникальных CAP-кодов.
Каждое кодовое слово POCSAG может содержать адресную информацию для четырех различных "источников" сообщений (от адреса источника 1 до адреса источника 4). Эти адреса источников определяются комбинациями значений битов 20 и 21 идентификатора источника, иногда называемых функциональными битами. К адресному слову добавляется 10 битов (с 22 по 31) проверки чётности (BCH), а бит 32 — чётным битом проверки чётности всего слова.
Местоположение кадра в пакете используется для идентификации дополнительных битов адреса пейджера.
В CAP-код предварительно закодированы три бита, которые обозначают местоположение кадра в пакете, в котором принимается адрес пейджера.
Большинство пейджеров POCSAG отключают питание во время работы с кадрами, которые не предназначены для кадра, обозначенного их конкретным CAP-кодом, что значительно увеличивает время автономной работы пейджера.
Два функциональных бита используются для указания типа отправленного сообщения. Стандартным соглашением для этих битов являются:
Бит 20Бит 21Функция
00Циферный режим
01
10
11Буквенно-циферный режим

Биты проверки чётности

POCSAG использует код исправления ошибок BCH для обнаружения и исправления битовых ошибок.
BCH обеспечивает 6-битное расстояние Хэмминга между всеми допустимыми кодовыми словами. С помощью BCH приемник может исправлять одну или две битовые ошибки. Многочлен, генерирующий BCH для (31,21) кода BCH, равен x10 + x9 + x8 + x6 + x5 + x3 + 1.

Опциональная работа с двумя кадрами

На пейджере ADVISOR можно выбрать два разных кадра. Каждый кадр имеет два соответствующих кода, которые предоставляют в общей сложности 16 адресов (источников) для пейджеров POCSAG.
Выбор этой опции сокращает время автономной работы примерно на 30% в пакетном (синхронном) режиме. Кадр с кодами A и B должен быть меньше, чем кадр с кодами C и D. (Кадр — это остаток адреса, деленный на 8).

Необязательные кодовые слова для синхронизации альтернативных кадров

В стандарте POCSAG зарезервированы кодовые слова в диапазоне от 2 000 000 до 2 097 151. Эти зарезервированные кодовые слова можно использовать для расширения возможностей системы, если система пейджинга поддерживает их. Эти зарезервированные кодовые слова называются кодами альтернативной кадровой синхронизации.

Ёмкость кода

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

Структура кодовых слов сообщения


Формат слова кода сообщения
Флаг информационного слова равен единице. После него следуют 20 битов сообщения, затем 10 битов контроля четности и бит суммарной четности.
Сообщение, отправляемое на пейджер, состоит из одного адресного кодового слова, расположенного в соответствующем фрейме пакета, и от 0 до n, следующих непосредственно за ним кодовых слов, которые содержат текст сообщения. Сообщение завершается при получении либо адресного кодового слова, либо неактивного кодового слова. Длинное сообщение может быть разделено на два или более пакетов из 17 кодовых слов.
Кодовое слово сообщения всегда начинается с 1 в бите 1 и всегда следует непосредственно за адресом. Каждое кодовое слово сообщения заменяет кодовое слово адреса в пакете.
Хотя адресные слова появляются только в кадре, принадлежащем соответствующей группе, посылаемые на адресуемый пейджер адресата информационные слова следуют за адресным словом без учета структуры группы. По завершении передачи сообщения на данный пейджер, следующее сообщение, передаваемое на другой приемник, начинается с адресного слова, размещенного в следующем свободном кадре для группы вызванного пейджера. Передача сообщений в виде пакетов подразумевает, что в том случае, когда информационная последовательность не полностью заполняет информационные поля пакета, свободные поля заполняются согласующими битами. 32-битовое кодовое слово состоит из флага, 20 информационных битов, 10 битов контроля чётности и бита суммарной чётности. Всё это, за исключением последнего бита, представляет собой кодовое слово кода БЧХ. Сообщения передаются в двух форматах. Числовой формат используется только для передачи чисел, таких, как телефонный номер, по которому пользователь должен позвонить. Цифры представлены в 4-битовом двоично-десятичном формате BCD. В этом случае два бита 20 и 21, описывающие функцию приемника, имеют значение равное 00. Полное слово имеет 5 цифр. В неполном слове свободное место заполняется символами пробела. В буквенно-циферном режиме слово равно 11, а символы кодируются в соответствии с алфавитом. В передатчике двоичный поток представлен в виде импульсов кодирования без возврата к нулю, модулирующих несущую с использованием дифференциальной частотной манипуляций.

Структура незанятого кодового слова

Незанятое кодовое слово — это зарезервированное кодовое слово, используемое для заполнения фрейма, который не содержит ни кодового слова сообщения, ни кодового слова адреса. Idle нужны, чтобы заполнить место между концом предыдущего сообщения и адресным кодевордом следующего, если согласно адресу пейджера номер его адресного кодеворда должен быть не сразу за концом предыдущего сообщения. Если кадр содержит только адрес, например, когда подается сигнал на пейджер только с тональным сигналом, 64-разрядный кадр завершается кодовым словом idle. Кодовое слово idle содержит шестнадцатеричное значение 0x7A89C197, состоящее из 32 символов: 01111010100010011100000110010111.

Цифровые сообщения

Цифровая кодировка BCD преобразует 4-разрядные символы BCD 5 в кодовое слово сообщения в битах 30—11.
Наиболее значимый фрагмент (биты 30,29,28,27) является крайним слева (или наиболее значимым) в BCD-кодированном сообщении.
Значения, превышающие 9 в каждом фрагменте (т.е. от 0xA до 0xF), кодируются следующим образом:
  • Зарезервировано значение 0xA (возможно, используется для расширения адреса)
  • Символ 0xB — U (срочность)
  • 0xC " ", пробел (пустой)
  • 0xD "-", дефис (или тире)
  • 0xE ")", левая скобка
  • 0xF "(", правая скобка
Сообщения в формате BCD заполняются пробелами с 0 в конце, чтобы заполнить кодовое слово.
Приемники POCSAG выводят символы ASCII, представляющие цифровые значения, как показано в этой таблице:
ЦифраASCIIКод ASCIIЦифраASCIIКод ASCII
0x000x300x880x38
0x110x310x990x39
0x220x320xA*0x2A
0x330x330xBU0x55
0x440x340xCпробел0x20
0x550x350xD-0x2D
0x660x360xE)0x29
0x770x370xF(0x28

Буквенно-цифровые сообщения

Буквенно-цифровые сообщения состоят из последовательности цифр и букв, в которых используются 7-разрядные символы ASCII. Символы кодируются в 7-разрядном формате ASCII и объединяются в 20-разрядную область битов сообщения в кодовом слове сообщения (биты 30—11). Три 7-битных символа ASCII используют 21 бит, поэтому, если длина сообщения составляет 3 или более символов ASCCI, первые 20 бит сообщения ASCII содержатся в первом кодовом слове, следующие 20 бит буквенно-цифрового сообщения передаются в следующем кодовом слове и так далее. Символы ASCII располагаются слева направо (от MSB до LSB). Сначала передается LSB-код символа ASCII, затем MSB.
Для буквенно-цифровых сообщений используется 7-разрядный код ASCII. В каждом кодовом слове для данных сообщения содержится 20 бит, однако в этом формате каждый символ равен 7 битам. Символы разделяются между кодовыми словами, и последнее кодовое слово заполняется непечатаемыми символами, такими как конец сообщения, конец текста или null. Null — это единственный символ, который может быть неполным.
Максимальная длина стандартного буквенно-цифрового сообщения составляет 40 символов. Однако существуют положения о более длинных сообщениях, которые могут содержать до 80 символов.

ASCIIb700001111
b600110011
b501010101
b4b3b2b1
0000NULLDLESP0Pp
0001SOHDC!1AQaq
0010STXDC"2BRbr
0011ETXDC#3CScs
0100EOTDC$4DTdt
0101ENQNAK%5EUeu
0110ACKSYN&6FVfv
0111BELETB'7GWgw
1000BSCAN(8HXhx
1001HTEM)9IYiy
1010LFSUB*:JZjz
1011VTESC+;Kk
1100FFFS,<Ll
1101CRGS-=Mm
1110SORS.>N^n
1111SIUS/?O_pDEL

Использование POCSAG

Протокол POCSAG используется во многих сетях по всему миру. Он приобрел большую популярность в массовых пейджинговых системах. Протокол POCSAG может поддерживать до двух миллионов абонентских приемников. Несущая частота в системах, использующих протокол POCSAG, определяется оператором сети. Например, в немецкой пейджинговой системе "Cityruf" используются следующие несущие частоты: 465,970; 466,075 и 466,230 МГц. В некоторых других системах используются частоты 155, 148, 161, 170 МГц и т.д.

Звучание POCSAG

POCSAG 512:


POCSAG 512 (запись из эфира):


POCSAG 1200:


PPOCSAG 1200 (запись из эфира):


POCSAG 2400:

Программное обеспечение

Кодировщик POCSAG PE-310
Кодировщик POCSAG через COM-порт
Кодировщик POCSAG Coder AutoScanner через звуковую карту
Кодировщик POCSAG для проекта на Arduino

Литература

  • http://www.radioscanner.ru/info/article87/
  • http://www.sbi-telecom.ru/protokol-pocsag.html
  • https://ru.wikipedia.org/wiki/POCSAG
  • https://www.sigidwiki.com/wiki/POCSAG
  • https://cxem.net/telefon/2-28.php
  • https://ra1aie.livejournal.com/82515.html
  • https://www.securitylab.ru/analytics/448063.php
  • https://habr.com/ru/post/438602/
  • https://habr.com/ru/post/438638/
  • The POCSAG paging protocol by Adam Hickerson, Raveon Technologies Corp.
  • → 01:47 MSK. Воскресенье, 06 апреля 2025 г.
        Нашли ошибку? Сообщите вэбмастеру: wеbmаstеr@qrv.su.
    ◊  О проекте QRV.SU.
     Условия использования материалов сайта.
    © При перепечатке материалов ссылка обязательна.
    ® qrv.ru : 2005 — 2006
    ® qrv.su : 2008 — 2025
        Построено на mini.aCMS™.
    RadioTop web-ring: электроника, электронные компоненты и приборы Электроника, электронные компоненты и приборы Случайный Предыдущий Следующий Яндекс цитирования Коллективная радиостанция RK6LZQ радиоклуб Элита Каменск-Шахтинский Коллективная радиостанция RK6LWL радиоклуб Возрождение г. Донецк
    free counters