- •А.А. Абросимов
- •Предисловие
- •Введение
- •1. Предмет телемеханики
- •1.1. Определение, особенности и основные проблемы телемеханики
- •1.2. Краткая история развития телемеханики
- •1.3. Применение систем телемеханики в самарской области
- •Ключевые термины и понятия
- •2.2. Телемеханические функции
- •2.3. Основные структуры систем телемеханики
- •Ключевые термины и понятия
- •3. Организация многоканальной телемеханической связи
- •3.1. Временное разделение сигналов
- •3.2. Частотное разделение сигналов
- •3.3. Частотно-временное разделение сигналов
- •Ключевые термины и понятия
- •Частотное разделение сигналов – разделение сигналов, при котором каждый сигнал занимает свой частотный интервал, не занятый другими сигналами.
- •Контрольные вопросы
- •4. Коды в телемеханике
- •4.1. Код и его характеристики
- •4.2. Классификация кодов
- •4.3. Общие способы представления кодов
- •4.4. Первичные коды
- •4.4.1. Единичный (унитарный, числоимпульсный) код
- •4.4.2. Единичный позиционный код
- •4.4.3. Единично-десятичный код
- •Примеры единично-десятичного кода
- •4.4.4. Двоичный нормальный (натуральный) код
- •4.4.5. Двоично-десятичные коды
- •Примеры двоично-десятичного кода с весовыми коэффициентами 8-4-2-1
- •4.4.6. Код Грея
- •4.5. Корректирующие коды. Принципы обнаружения и исправления ошибок
- •4.6. Коды с обнаружением ошибок
- •4.6.1. Коды, построенные путём уменьшения числа используемых комбинаций
- •4.6.1.1. Код с постоянным весом
- •Пятиразрядный код с двумя единицами и пример семиразрядного кода с тремя единицами
- •4.6.1.2. Распределительный код
- •4.6.2. Коды, построенные добавлением контрольных разрядов
- •4.6.2.1. Код с проверкой на чётность
- •Примеры построения кода с проверкой на чётность
- •4.6.2.2. Код с числом единиц, кратным трём
- •Примеры кода с числом единиц, кратным трём
- •4.6.2.3. Код с удвоением элементов (корреляционный код)
- •4.6.2.4. Инверсный код
- •Примеры инверсного кода
- •4.7. Коды с обнаружением и исправлением ошибок
- •4.7.1. Коды Хэмминга
- •Число контрольных символов в зависимости от числа информационных разрядов для исправления одной ошибки
- •Пример предварительной таблицы кода Хэмминга
- •Проверочная таблица кода Хэмминга
- •Проверочная таблица кода Хэмминга, заполненная информационными символами
- •Проверочная таблица принятой кодовой комбинации примера 4.2
- •Примеры кодов Хэмминга, обнаруживающих две ошибки и исправляющих одну ошибку
- •4.7.2. Циклические коды
- •Математические основы циклических кодов.
- •Принципы построения циклических кодов.
- •Единичная и единичная транспонированная матрицы четырёхразрядного двоичного кода
- •Получение остатков для строк единичной транспонированной матрицы
- •Дополнительная матрица контрольных элементов
- •Получение частных остатков для единичной матрицы
- •Определяющая матрица четырёхразрядного циклического кода
- •Образующий многочлен.
- •Неприводимые многочлены
- •Образующие многочлены для обнаружения единичных и двойных ошибок
- •Декодирование циклических кодов.
- •Укороченные циклические коды.
- •Образующая матрица укороченного (12, 4) псевдоциклического кода
- •4.7.3. Итеративные коды
- •Ключевые термины и понятия
- •5. Сигналы в телемеханике
- •5.1. Модуляция сигналов
- •5.2. Амплитудная модуляция
- •Амплитудная модуляция с двумя боковыми полосами.
- •Амплитудная модуляция с одной боковой полосой.
- •Амплитудная манипуляция.
- •5.3. Частотная модуляция
- •Частотная манипуляция.
- •Реализация частотной модуляции.
- •5.4. Двукратная непрерывная модуляция
- •5.5. Импульсные методы модуляции
- •5.5.1. Амплитудно-импульсная модуляция
- •5.5.2. Широтно-импульсная модуляция
- •5.5.3. Фазоимпульсная модуляция
- •5.5.4. Частотно-импульсная модуляция (чим)
- •5.5.5. Кодоимпульсная модуляция (ким)
- •5.5.6. Дельта-модуляция
- •5.5.7. Разностно-дискретная модуляция (рдм)
- •5.5.8. Лямбда-дельта-модуляция
- •5.5.9. Многократные методы модуляции
- •5.6. Спектры импульсных сигналов
- •Ключевые термины и понятия
- •Модуляция – образование сигнала путем изменения параметров переносчика под воздействием сообщения.
- •Контрольные вопросы
- •6. Линии и каналы связи в телемеханике
- •6.1. Линии связи и их классификация
- •Типы и виды линии связи
- •6.2. Проводные линии связи
- •Первичные параметры проводных линий связи
- •6.3. Каналы связи по линиям электропередач
- •6.4. Каналы связи по радио
- •Частотные диапазоны для передачи информации
- •Ключевые термины и понятия
- •Канал связи – совокупность технических средств для независимой передачи информации от источника к получателю.
- •Контрольные вопросы
- •7. Помехоустойчивость систем телемеханики
- •7.1. Помехи и их характеристики
- •7.2. Искажение сигналов под действием помех
- •7.3. Теория потенциальной помехоустойчивости в.А. Котельникова
- •7.4. Помехоустойчивость реальных приёмников телемеханических сигналов
- •Требования к достоверности контрольной и управляющей информации согласно гост 26.205-83
- •7.5. Помехоустойчивость передачи кодовых комбинаций при независимых ошибках
- •7.6. Методы повышения помехоустойчивости
- •7.6.1. Классификация методов повышения помехоустойчивости
- •7.6.2. Передача с повторением
- •7.6.3. Передача с обратной связью
- •Ключевые термины и понятия
- •Контрольные вопросы
- •8. Принципы построения телемеханических систем
- •8.1. Характеристики систем телеизмерения
- •8.2. Цифровые системы телеизмерений
- •8.3. Синхронизация в системах с временным разделением сигналов
- •8.4. Синфазирование в системах с временным разделением сигналов
- •Ключевые термины и понятия
- •Контрольные вопросы
- •9. Реализация систем телемеханики
- •9.1. Структурные схемы основных функциональных блоков
- •9.1.1. Коммутаторы
- •9.1.2. Устройство повышения достоверности
- •9.1.3. Устройство масштабирования
- •9.1.4. Генератор тактовых импульсов
- •9.2. Программно-техническая реализация функциональных блоков на программируемых логических контроллерах
- •Ключевые термины и понятия
- •Контрольные вопросы
- •Заключение
- •Библиографический список
- •Оглавление
- •Телемеханика
- •443100, Г. Самара, ул. Молодогвардейская, 244. Главный корпус
- •443100, Г. Самара, ул. Молодогвардейская, 244. Корпус №8
Примеры кодов Хэмминга, обнаруживающих две ошибки и исправляющих одну ошибку
Десятичный эквивалент |
Позиции, разряды и обозначения кода Хэмминга |
mдоп | ||||||
|
|
23 |
|
22 |
21 |
20 | ||
т1 |
m2 |
k4 |
m3 |
k3 |
k2 |
k1 | ||
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
2 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
3 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
4 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
5 |
0 |
1 |
0 |
0 |
1 |
0 |
I |
1 |
6 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
7 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
8 |
1 |
1 |
I |
0 |
0 |
0 |
0 |
1 |
2. Имеется единичная ошибка. В таком случае проверка на чётность расширенной кодовой комбинации показывает наличие ошибки (сумма единиц по модулю 2, входящих в кодовую комбинацию, не дает нуль). Декодирование по проверочной таблице без разряда mдоп указывает на номер искаженного символа, который нужно заменить на противоположный.
3. Имеются две ошибки. Проверка на чётность расширенной кодовой комбинации указывает на отсутствие ошибок, а декодирование по проверочной таблице – на наличие ошибки. В результате декодирования указывается номер позиции, где якобы возникла ошибка, однако её не следует исправлять, а лишь констатировать наличие двух ошибок).
Добавление дополнительного контрольного символа mдоп к закодированной для исправления одиночной ошибки кодовой комбинации увеличивает кодовое расстояние с d=3 до d =4, так как r = 2, s = 1, а d = 2 + 1 + 1=4.
4.7.2. Циклические коды
Эти коды широко применяются в аппаратуре передачи данных и системах телемеханики благодаря высокой эффективности [9]. Простота аппаратной реализации на регистрах сдвига и ячейках сумматора по модулю два в своё время обеспечила им широкое применение, а сравнительно небольшая избыточность делает их эффективными в настоящее время.
Кодовая комбинация имеет информационные и контрольные разряды, последние помещаются в конце комбинации, т.е. коды являются систематическими, равномерными, обозначаются (n, k), где n – полное число разрядов, k – число информационных разрядов. Информационной частью служит натуральный двоичный код.
Математические основы циклических кодов.
Кодовая комбинация представляется в виде многочлена (полинома) с фиктивной переменной x.
G(x) = an-1xn-1 + an-2xn-2 + ... + a1x + a0x0,
где коэффициенты аi, i=0, 1, 2, … n-1 принимает значения 0 или 1.
Если аi = 0, то этот член опускается.
Многочлен G(x) легко переводится в двоичный код. Например,
G(x) = x7 + x5 + x3 + x2 + 1→10101101.
Если многочлен G(x) имеет старшую степень 7, то он называется многочленом 7-й степени.
Над многочленами можно выполнять математические действия по определенным правилам.
Сложение и вычитание равносильны и выполняются по mod 2.
Умножение многочлена на x повышает степень каждого слагаемого многочлена на 1, умножение на хn повышает степень каждого слагаемого на n. Это соответствует передвижению кодовых комбинаций на одну или «n» позиций в сторону старшего разряда.
Например, (х3+х+1)х3=х6+х4+х3 → 1011000.
В двоичном коде произведение получается из умножаемого двоичного числа приписыванием к нему справа количества нулей, равного величине степени «n».
Умножение многочлена на многочлен выполняется по правилам алгебры, при этом операция сложения выполняется по mod 2.
Деление многочлена на многочлен выполняется по правилам алгебры, при этом операция вычитания равносильна сложению по mod2. Деление производится до тех пор, пока степень остатка не станет меньше степени делителя (число разрядов остатка меньше числа разрядов делителя).
Среди множества многочленов существуют неприводимые, которые не могут быть представлены в виде произведения многочленов низших степеней. Они аналогичны простым числам, которые делятся без остатка лишь сами на себя и на 1.
Для построения многочлена F(x) циклического кода производят следующие преобразования и операции:
1. Многочлен G(x) информационной части умножают на xn-k; при этом степень многочлена G(x) повышается на величину «n-k».
2. К произведению (xn-k)*(G(x)) добавляют остаток R(x) от деления xn-k * G(x) на образующий многочлен P(x).
Это вытекает из следующих преобразований:
, (4.7)
где Q(x) – частное от деления без учета остатка, R(x) – остаток от деления, степень которого меньше степени P(x).
Умножая равенство (4.7) на P(x) получим:
xn-K * G(x)=Q(x) * P(x)+R(x). (4.8)
Здесь Q(x)*P(x)=F(x) – искомый многочлен циклического кода, поэтому
F(x) = xn-K * G(x) + R(x), (4.9)
знак (-) заменен на (+), так как сложение выполняется по mod 2.
Пример 4.3
Найти кодовую комбинацию циклического (7, 4) кода для информационной комбинации 1011 и образующего многочлена P(x)=х3+x2+1.
Циклический (7,4) код имеет полное число разрядов n =7, число информационных разрядов k =4, число контрольных разрядов m =3.
Алгебраический многочлен информационной комбинации имеет следующий вид:
G(x)= х3+x+1 → 1011.
Умножение на xn-k даёт:
G(x) = (х3+x+1)х3 = х6+х4+х3.
Выполняем деление полученного произведения на образующий многочлен:
Таким образом, деление произведения xn-k * G(x) на образующий полином P(x) даёт остаток R(x)= х2, что соответствует двоичному числу 100.
Наконец, многочлен комбинации циклического кода.
F(x)=(х6+х4+х3)+х2.