Беспроводные технологии и их применение в промышленности. Особенности построения систем передачи речи. Часть 2


Вы можете скачать эту статью в формате pdf здесь.

Данная статья является продолжением предыдущей публикации (см. ЭК5), посвященной беспроводным низкоскоростным ZigBee- и скоростным Zigbee-подобным технологиям в промышленности. Они используются для передачи речи в составе единой системы беспроводной транспортной среды стандарта ISA100.15. В статье рассмотрены форматы сжатия речи, наиболее широко применяемые в беспроводных скоростных сетях WLAN (на примере Wi-Fi), а также даны рекомендации по использованию алгоритмов кодирования в беспроводных сенсорных сетях (БСС).

Форматы сжатия речи и технология передачи речи VoWIP

В предыдущей статье отмечалось, что технология передачи голоса VoIP может работать в любой физической среде, представленной не только витой парой (традиционный Ethernet), телефонными проводами, но и беспроводными соединениями (Wi-Fi Ethernet). Совершенно очевидно, что и БСС с использованием низкоскоростных ZigBee- и скоростных ZigBee-подобных технологий — не исключение из общего правила. В данном случае важно другое — чтобы выбранная физическая среда БСС использовалась под IP или ему подобный протокол.
На сегодняшний день организация голоса VoIP посредством скоростных WLAN (в виде Wi-Fi, стандарт IEEE802.11b/g) по протоколам RTP/UDP/IP/Wi-Fi Ethernet является удачной альтернативой не только традиционным телефонным сетям, но и беспроводной сотовой связи, поскольку организация телефонных переговоров через WLAN и интернет существенно снижает их стоимость [2, 5].
Для скоростной телефонии Wi-Fi наиболее популярными стали кодеки с форматами сжатия G711 (PCM) и G729 (CELP), что вполне соответствует рекомендациям ITU-Т [5]. Использование алгоритмов низкоэффективного кодирования PCM (по А- и m-законам) с высоким качеством речи MOS и низким энергопотреблением, безусловно, оправдано на случай, если оно обеспечивает речевым каналам гарантированную пропускную способность. Это стало возможным как за счет повышения скорости передачи (Vперед.) по беспроводным сетям Wi-Fi, так и за счет нововведений согласно стандарту IEEE802.11e, в котором как раз и были учтены все меры по обеспечению качества услуг QoS, в т.ч. на случай передачи речевой информации [2].
Применение высокоэффективного алгоритма кодирования CELP формата сжатия G729 (G729.1) для Wi-Fi-телефонии позволяет передавать речь хорошего качества по сети с негарантированной пропускной способностью. Однако это стало возможным за счет использования высокопроизводительных микроконтроллеров, позволяющих выполнить преобразование речевой информации со скоростью исполнения набора инструкций (35,6 MIPS [кодирование] и 9,5 MIPS [декодирование]), т.е. за счет микроконтроллеров с повышенным энергопотреблением, что в итоге привело к уменьшению срока службы батареек.
В свою очередь, БСС с использованием низкоскоростных ZigBee- и скоростных ZigBee-подобных технологий представляет собой пакетную сеть с негарантированной пропускной способностью с Vперед. = 250 Кбит/с; 1 Мбит/с; 2,5 Мбит/с. Следовательно, для передачи речи посредством такой беспроводной транспортной среды, скорее всего, придется использовать эффективные кодеки. Для получения дополнительных эффектов по качеству речи MOS (например, хорошо различимой речи) предпочтительнее применять широкополосные эффективные кодеки форматов сжатия G722 (алгоритм кодирования ADPCM) или G722.1 (алгоритм трансформированного кодирования) (см. табл. 3). По этому пути пошли российские разработчики, которые применили не скоростную ZigBee-подобную технологию на базе стандарта IEEE802.15.4, а технологию пониженного энергопотребления (см. табл. 4). Однако реализация таких алгоритмов под силу лишь высокопроизводительным микроконтроллерам (~60 MIPS: CortexM3, ARM9), специальным цифровым процессорам типа DSP TI (5–13 MIPS) или контроллерам, имеющим встроенные DSP-инструкции. Основные параметры формата сжатия G722.1 приведены в таблице 5 на основании данных, представленных официальным разработчиком SIREN (Polycom Inc.).

 

Таблица 5. Основные параметры стандарта G.722.1 и производительность в MIPS разных процессоров

Параметры

Значение

Частота дискретизации

16 кГц

Скорость кодирования

16, 24, 32 Кбит/с (16 Кбит/с дополнение Polycom Inc. standard)

Полоса частот

50 Гц…7 кГц

Размер аудиокадра

20 мс

Алгоритмическая задержка

40 мс

RAM

< 7,5 Кбайт

ROM для расположения таблиц

~ 20 Кбайт

MIPS-соотношение между кодированием/декодированием и декодером

1:1

Процессор

MIPS (кодирование + декодирование)

TI TMS320C50

13,9 (6,95 + 6,95) (выполнение инструкций с фиксированной точкой)

TriMedia TM 1300

4 (2 + 2) (выполнение инструкций с плавающей точкой)

TI TMS320C31

9,25 (4,51 + 4,51) (выполнение инструкций с плавающей точкой)

 

Поскольку передача данных по БCC (аналогично протоколу Н323 по рекомендациям ITU-T) осуществляется на основе коммутации пакетов по сети с негарантированной пропускной способностью (протокол H.323 согласно рекомендациям ITU-T), то и в данном случае возможна передача речевой информации по технологии VoIP. Для этого потребуется упрощение RTP/UDP/IP-подобных протоколов, а также использования протокола 6LoWPAN вместо IP, специально разработанного для ZigBee) [8, 9].
Такое упрощение необходимо в связи с тем, что ZiGBee или ZigBee-подобные технологии были ориентированы на беспроводные сенсорные сети, т.е. на передачу данных в виде коротких пакетов. Длина общего пакета на физическом уровне PHY составляет 127 октетов. Полезная длина пакета payload для передачи речи окажется еще меньше (с учетом того, что 21 байт используется для криптозащиты AES, 4 байта — для протокола RTP (с его упрощением) и 4 байта — для 6LoWPAN) — не более ~50–70 байт. В случае применения стандарта G711 при длительности кадра в 32 мс необходима длина пакета в 256 байт, что несовместимо со стандартом IEEE802.15.4. Поэтому для увеличения полезной длины payload, а также с целью повышения эффективности использования пакета на PHY многие фирмы (например, Texas Instruments использует 256 байт) пошли даже по пути отступления от стандартных рекомендаций по IEEE802.15.4.
Следует отметить, что стандартом IEEE802.15.4 не предусмотрена не только фрагментация, но и возможность объединения с помощью 1 фрейма нескольких кадров кодированной речевой информации на случай их малой (менее 50 байт) длины.
Также установлено [10], что БСС с использованием низкоскоростной ZigBee-технологии (Vперед. = 250 Кбит/с) позволяют передавать пользовательскую информацию (в данном случае речевую) с конечной суммарной скоростью передачи ~30 Кбит/с. Чтобы организовать 3 речевых пакетных потока с помощью стандартной низкоскоростной технологии ZigBee, понадобятся высокоэффективные кодеки Vкодир. < 10 Кбит/с (стандарт G722.2, см. табл. 3) либо придется отступать от стандарта IEEE802.15.4, увеличивая Vперед. хотя бы до 1 Мбит/с (на примере CaLab). Наиболее подходящей в этом плане является БСС с использованием скоростной ZigBee-подобной технология на базе IEEE802.15.4a (с Vперед. до 2,5 Мбит/с) [1]. Такая скоростная беспроводная сеть позволяет использовать эффективные широкополосные кодеки стандартов G722.1 (24 Кбит/с; 32 Кбит/с; 48 Кбит/с) и G722 (Vкодир.: 48 Кбит/с; 56 Кбит/с; 64 Кбит/с).
Алгоритмы кодирования ADPCM формата сжатия G722 используют метод сэмпла, а MLT и ACELP — стандарты G722.1 (G722.1C) и метод кадра G722.2.
Алгоритмы, основанные на кадре кодирования (в отличие от сэмпла), осуществляют преобразования поблочно, т.е. преобразуют блок оцифрованного речевого сигнала (в байтах или словах) одной фиксированной длины в блок сжатой речевой информации (в байтах) другой фиксированной длины, или т.н. кадр. Несколько таких кадров можно объединять в один пакет, если это предусмотрено протоколом. Длительность речевого кадра на выходе кодека может составлять 5—40 мс (см. табл. 6). При сэмплировании обработка оцифрованной речевой информации осуществляется по сэмплам (0,125мс), которые также собираются в кадр определенной длительности (32 мс на примере G711, G726).


Таблица 6. Задержка накопления для узкополосных и широкополосных кодеков согласно IONA

Стандарт ITU-T

Алгоритм кодирования

Требуемая полоса пропускания, Кбит/с

Задержка накопления, мс

G.726

ADPCM

16; 24; 32; 40

0,125

G.728

LD-CELP

16

2,5

G.729

CS-ACELP

8

10

G.722

Sub-Band ADPCM

48; 56;64

0,125

G.722.1

Transform Coding

24/32/48

20

G.722.2

Algebraic Code Excited Linear Prediction (ACELP)

6,60—23,85

20


Для дальнейшей пакетизации сжатого речевого кадра с использованием протоколов RTP/UDP/IP (по технологии VoIP) с целью последующей передачи по сети его длительность должна быть выбрана в соответствии с зарегистрированным в IONA алгоритмом кодирования, либо ее следует учесть в RTP-протоколе в случае нестандартной длины. В противном случае ее необходимо установить в соответствии с выбранным алгоритмом.
 

Особенности передачи речи и снижение энергопотребления

Если передача речевой информации осуществляется в виде непрерывного аудиопотока, то узел беспроводной сети, от которого ведется передача голоса, все время находится в активном состоянии. При этом речь о режиме сна не идет. Но снижение энергопотребления беспроводной системы в целом возможно либо за счет узлов в неактивном состоянии, либо за счет узлов, которые не задействованы на ретрансляцию сообщений по выбранному маршруту.
Если попытаться использовать специфику самой речи, которая помимо фазы формирования звуков состоит из фаз длительного молчания или пауз между словами, то, чтобы в эти моменты не нагружать беспроводную сеть пустыми пакетами, не несущими полезной информации, рационально использовать дополнительное сервисное приложение, а именно, детектор речевой активности VAD (Voice Activity Detector), прерывистую передачу DTX (Discontinuous Transmission) и генератор комфортного шума CNG (Comfort Noise Generator).
Детектор VAD предназначен для оценки энергии входного сигнала и, если она превышает некоторый порог, активизирует передачу, а по сигналу DTX осуществляется запрет на передачу пакетов от кодека по беспроводной сети в тот момент, когда VAD обнаруживает период молчания. Некоторые наиболее совершенные кодеки (широкополосные с форматом сжатия G722.2) не прекращают передачу полностью, а переходят в режим передачи гораздо меньшего объема информации. Это необходимо для того, чтобы декодер на удаленном конце мог восстановить реальный фоновый шум. Принцип действия простейших кодеков основан, как правило, на прекращении передачи в период молчания, а декодер на приемном конце самостоятельно генерирует шум с минимальным уровнем, отмеченным в период речевой активности.
Применение таких механизмов передачи как VAD/DTX/CNG позволяет микроконтроллеру в период неактивности речи переключиться на выполнение иных сервисных задач (например, на управление беспроводной сетью или переход в режим сна). Перечисленные функции снижают загруженность беспроводной сети и существенно влияют на эффективность использования полосы пропускания радиоканалов (экономия составляет около 60%). Однако применение этих функций сопряжено с введением дополнительного программного обеспечения, а, следовательно, с дополнительной нагрузкой на микроконтроллер. Так, например, использование VAD в стандарте G711 повышает требования к производительности микропроцессора (см. табл. 3).

Факторы качества речи

Выше говорилось, что передача речевой информации по беспроводным сетям с пакетной коммутацией сопряжена с определенными трудностями, которые возникают в т.ч. в связи с задержками при формировании кадров и их передаче по сети. Согласно рекомендации ITU-T стандарта G.114 общая задержка по сети (Тзадер.) становится ощутимой, если в одностороннем порядке она составляет более 150—200 мс.
Общую задержку при передаче речевой информации по беспроводной сети можно представить в виде следующих компонентов:

 

Tзадер. = Tзадер. накопления + Тобраб. алгоритма + Тформ. пакета + Tзадер. узла + Tзадер. сети + джиттер.

 

Рассмотрим каждый из них.
Задержка накопления. Величина Tзадер. накопления определяется размером кадра выбранного кодека (его длительностью в мс). Величина задержки накопления равна длительности кадра выбранного кодека. Так, для стандарта G722 .1 она составляет 20 мс (см. табл. 6).
Поскольку на момент обработки алгоритмом текущего блока сэмплов недопустима потеря последующего блока, необходимо использовать два попеременно работающих буфера для временного накопления оцифрованной речевой информации.
Задержка кодирования, или время обработки алгоритма. Чтобы не вносить дополнительную задержку за счет процесса кодирования, следует подобрать микроконтроллер такой производительности (в MIPS), чтобы выполнялось условие

 

Тобраб. алгоритма ≤ Tзадер. накопления.

 

Желательно, чтобы задержка кодирования была как можно меньше. Например, при использовании формата сжатия G722.1 она составляет 20  мс из-за сложности алгоритма. Это означает, что процессор занят исключительно обработкой потока речевой информации. В таблице 5 отражено суммарное время кодирования и декодирования (20 + 20 мс), а также приведен перечень цифровых процессоров, рекомендуемых компанией Polycom с указанием их производительности. Следует добавить, что для исполнения такого алгоритма кодирования + декодирования АRM-процессорами от них потребуется большая производительность (~60 MIPS) и энергопотребление. Если стандарт G722.1 предназначен для организации аудиопотока, то формат сжатия G722.2 предназначен, в первую очередь, для передачи речи по беспроводным сетям 3G. Tобраб. алгоритма намного меньше Тзадер. накопления и составляет 5 мс.
Задержка формирования пакета. Эта задержка вызвана процессом подготовки речевых кадров (как информационных единиц протокола, который имеет такую возможность). Например, в одном пакете c целью эффективного использования payload (полезной длины по стандарту IEEE802.15.4) могут быть собраны пять речевых кадров (размером в 10 байт для Vкодир. = 8 Кбит/с), полученных в результате преобразования по стандарту G.729. Это приводит к тому, что задержка пакета составит 50, а не 10 мс, как если бы в нем передавался 1 кадр. Чтобы соблюсти рекомендации стандарта IEE802.15.4 на Vкодир.  = 32 Кбит/с в случае с G722.1, придется использовать 1 кадр. В данном случае задержка формирования пакета не учитывается.
Задержка узла связана с пакетизацией речевого кадра по протоколам RTP/UDP/IP (по технологии VoIP) или им подобным с целью дальнейшей передачи по беспроводной сети. Так, для ZigBee-сети на базе IEEE802.15.4 Тзадер. узла составляет 5–6 мс, в то время как для ZigBee-подобной сети на базе IEEE802.15.4 — 1,5–2 мс [10]. Разумеется, эта задержка невелика, но при большом количестве узлов в беспроводных сетях она также может оказать влияние на общую задержку.
Сетевая задержка, или Тзадер. сети + джиттер буфера. Тзадер. возникает при передаче пакетов по сети и зависит от используемых в сети радиоканалов и протоколов передачи, а также от приемных буферов для удаления джиттера. Такая задержка существенна в сетях, состоящих из 10 узлов и выше (более 100 мс), и занимает значительную часть от общей задержки при топологиях mesh и shared [10].
Следует также отметить, что возникновение джиттера в приемном буфере может существенно увеличить задержку сети, если не будут приняты дополнительные меры по его устранению. По определению, джиттер равен разнице во времени между поступлениями пакетов в приемный буфер, которая возникает в силу разной задержки при передаче пакетов по беспроводной сети. Чтобы воспроизведение речи было непрерывным, необходимо предусмотреть меры по удалению джиттера. Эта процедура заключается в объединении пакетов и удержании их в буфере, чтобы обеспечить своевременную доставку самых «медленных» пакетов и позволить им занять соответствующее место в последовательности. Задача намного облегчается, если прописан определенный маршрут передачи пакетов каждого источника речевой информации в отдельности. Так или иначе, это приводит к дополнительной задержке. Таким образом, две противоречивые цели уменьшения сетевой задержки и удаления джиттера приводят к созданию различных схем оптимизации размера приемного буфера.
Итак, чтобы обеспечить гарантированное качество речевой связи MOS, в беспроводной сети используются либо оптимальные алгоритмы маршрутизации для минимизации сетевых задержек, либо сетью следует управлять таким образом, чтобы обеспечивалась минимальная задержка и джиттер.
При передаче сообщений по беспроводным сетям с пакетной коммутацией нередко случаются потери отдельных пакетов. Это явление возникает вследствие искажения пакетов в канале радиосвязи за счет интерференции или помех. Для решения таких проблем применяются следующие подходы.
– Замена потерянного пакета предыдущим успешно принятым пакетом. Этот подход применим, когда количество потерянных пакетов невелико (до 5%).
– Передача избыточной информации. В этом случае вместе с пакетом n+1 посылается и предыдущий пакет n. Однако при этом подходе полоса пропускания используется нерационально, и возрастает Vперед. по беспроводной сети.
 

Выводы

Беспроводные системы связи с использованием низкоскоростных ZigBee- и скоростных UWB (ZigBee-подобных) технологий, которым в соответствии с промышленным стандартом ISA 100.15 отведена вполне определенная роль по решению специальных задач, можно рассматривать как беспроводную транспортную среду для передачи речевой информации на малых расстояниях. Их неоспоримое преимущество по сравнению с мобильными беспроводными системами сотовой связи, Wi-Fi или Bluetooth — небольшая мощность излучения Рвых., а также малое энергопотребление.
Таким образом, при использовании средств преобразования речевого сигнала для передачи речи по БСС необходимо, прежде всего, оптимизировать их энергопотребление, исходя из требований к качеству речи
MOS/Vкодир. на заданной скорости с учетом степени сложности алгоритма. Для минимизации энергопотребления используется режим сна с учетом механизмов VAD/DTX/CNG. Поскольку ZigBee- и ZigBee-подобные беспроводные сети представляют собой пакетные сети с негарантированной пропускной способностью, в них применяются лишь эффективные кодеки, при использовании которых энергопотребление узлов неизбежно увеличивается. Наилучшим вариантом энергосбережения является российская разработка (ИРЭ РАН) скоростной СШП ZigBее-подобной сети (Vпередачи =  2,5 Мбит/с) с использованием прямохаотических импульсов [1]. Такая беспроводная транспортная среда позволяет передать речевую информацию высокого качества с использованием не только эффективного кодирования (формат сжатия G722.2 (VAD/DTX/CNG) или G722.1), но и низкоэффективного кодирования (формат сжатия G722).
 

Литература
1. А.С. Дмитриев, Е.В. Ефремова и др. Сверхширокополосная беспроводная связь и сенсорные сети. Радиотехника и электроника. 2008. Т. 53. №10. С.1278—1289.
2. Г.Ф. Гайкович. Беспроводные технологии и их применение в промышленности. Передача речевой информации через WPAN. Электронные компоненты. №12. С. 57. 2010.
3. М.Ф. Бондаренко, А.В. Работягов, С.В. Щепковский. Современные методы кодирования речевого сигнала. Бионика интеллекта. 2 (69). С. 106—114. 2008.
4. ГОСТ Р 51061-97. Системы низкоскоростной передачи речи по цифровым каналам//www.polyset.ru/GOST/all-doc/GOST/GOST-R-51061-97.
5. D-Link. Introduction to Voice over Wireless WLAN (VoWLAN).
6. Г.Ф. Гайкович. Беспроводные технологии и их применение промышленности. Сосуществование разных радиосистем. Электронные компоненты. №10. С. 21. 2010.
7. А. Сафонов. Использование микроконтроллеров Microchip в задачах воспроизведения звука. Компоненты и технологии. №2. С. 28–30. 2004.
8. 6LoWPAN IPv6 over Low power WPAN (6lowpan)//www.ietf.org/download/id-abstract.txt.
9. В.Е. Дементьев, Д.А. Капустин. Разработка и исследование протоколов повышенной надежности передачи данных в сетях ZigBee. Передача голоса в сетях ZigBee//www.confpubs.ru/nfs_2010.php?id=32.
10. Analysis of Audio Streaming Capability of ZigBee Networks 2. Publications | HiPEAC.
11. RTP Profile for Audio and Video Conferences with Minimal Control//http://tools.ietf.org/html/rfc1890.

Оставьте отзыв

Ваш емейл адрес не будет опубликован. Обязательные поля отмечены *