реклама на сайте
подробности

 
 
> Кодирование радиоканала
Pasha_a13
сообщение Mar 25 2015, 21:39
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



Добрый день!

Прошу прощения если подобная тема уже поднималась.
Возникла проблема - необходимо обеспечить помехоустойчивость радиоканала.
Есть уже готовое железо, собранное на TXC101 и TRC101, частота 433,92МГц. Железо менять нельзя, могу только программно улучшать что-то.
Канал односторонний, т.е. полноценную передачу данных с ACK сделать не получается. Соответственно стоит задача обеспечить максимальную помехоустойчивость
отправляемой информации.
Мне необходимо передавать пакеты длиной порядка 500 байт. Скорость 9600.
Однако не хотелось бы сильно наращивать размер пакета, т.к. это удлинит время передачи.
Передавать по несколько раз одни и те же пакеты тоже не сильно хорошо, т.к. передаваемые данные меняются постоянно(где-то раз в секунду) и потому очень желательно чтобы каждый пакет доходил максимально полным(максимально восстановленным).
Посоветуйте пожалуйста как сделать правильно:
- сначала попытаться ужать исходные данные а потом закодировать чем-то типа кодов Хемминга?
- или при помехоустойчивом кодировании нежелательна предварительное сжатие (архивация) данных?
- стоит ли использовать перемежение(перемешивание) для лучшего восстановления битых блоков данных?
- какое кодирование лучше применить? (у меня контроллер atmega8 , не сильно много места свободного и вычислительной мощности)
- насколько сильно разрастается размер пакета при кодировании позволяющем восстановить порядка 25-50% битого пакета?

Я читал про коды Рида Соломона но я думаю наврядле я смогу реализовать нечто подобное.
Коды Хемминга я так понимаю проще будет реализовать, но достаточно ли мне будет этого.
Какие есть оптимальные варианты?

Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dr.Alex
сообщение Mar 25 2015, 22:53
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863



Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
- сначала попытаться ужать исходные данные

Какой смысл? Если один раз сожмётся в 100 байт а другой раз в 499 то что будете делать?

Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
а потом закодировать чем-то типа кодов Хемминга?

Исправляет одну-единственную битовую ошибку.

Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
- или при помехоустойчивом кодировании нежелательна предварительное сжатие (архивация) данных?

Не имеет никакого значения.

Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
- стоит ли использовать перемежение(перемешивание) для лучшего восстановления битых блоков данных?

Это самый последний аспект вашей проблемы и будет зависеть от всего остального.

Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
- какое кодирование лучше применить? (у меня контроллер atmega8 , не сильно много места свободного и вычислительной мощности)
Я читал про коды Рида Соломона но я думаю наврядле я смогу реализовать нечто подобное.

Рид-Соломон это чуть ли не самое простое, что вы можете применить. Ну БЧХ ещё.

Цитата(Pasha_a13 @ Mar 26 2015, 00:39) *
- насколько сильно разрастается размер пакета при кодировании позволяющем восстановить порядка 25-50% битого пакета?

:-)))))))))))) 50% невозможно. Сгенерите случайный блок данных и угадаете 50% битов реального пакета :-)))))))
Около 25% битовых ошибок теоретически можно исправить при скорости кода 1/4 (это значит полезной информации 1/4), если он работает на пределе Шеннона. Но вы к нему приблизитесь не ближе чем на несколько дБ.
Go to the top of the page
 
+Quote Post
Ivan55
сообщение Mar 26 2015, 02:55
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 17-01-12
Пользователь №: 69 640



а поподробнее, как передаете сигнал? какая модуляция? ОСШ на входе демодулятора?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 18:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016