Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Тема закрыта

Кодирование сигнала для передачи данных по радиоканалу

Вс июл 29, 2012 17:47:36

Есть два узла оснащённых приёмопередатчиками. Первый узел- пульт управления ( ведущий) - передает дискретные команды вкл\откл (по мере необходимости) и запросы состояния ведомого (каждые 0.5 секунд) Второй - принимает команды и запросы состояния( дискретные сигналы -да\нет.) по которым и передаёт своё состояние по радиоканалу. Колличество ведомых <8. Подскажите способ кодирования сигнала , примеры , алгоритмы для микроконтроллера на Си, может какие сайты с информацией по этому вопросу .

Re: Кодирование сигнала для передачи данных по радиоканалу

Вс июл 29, 2012 17:52:11

Те есть тебе нужна в каком то удобном для тебя физическом состоянии двунаправленная линия связи?
Всего то?
Закажи параметры обмена на какое расстояние и как ты хочешь обмениватся информацией
- через астрал, эфир, по оптоволокну, проводу, экзотическим излучением, силой воли...

Re: Кодирование сигнала для передачи данных по радиоканалу

Вс июл 29, 2012 17:59:54

радиоканал для тебя эфир или оптоволокно, я же упомянул о нем...

параметры обмена - менее 2400 бод.
передаваемые параметры дискретные

Re: Кодирование сигнала для передачи данных по радиоканалу

Вс июл 29, 2012 18:29:40

Если у тебя уже есть два "приёмопередатчика" - два комплекта передатчиков и два комплекта приемников чем тебя не устраивает линия связи - эфир или оптоволоконный канал?
Есть требования или ограничения к линии связи?

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 05:54:00

Вопрос не в организации радиоканала, а в способе кодирования сигнала, сигналы дискретные: команды-включить\выключить , запросы состояния -включено или отключено.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 08:31:19

Если Вас интересует помехоустойчивость, достаточно применить CRC (контрольная сумма). Можно применить протокол MODBUS - для Вашего случая - то, что доктор прописал.
Если нужна устойчивая к взлому (криптоустойчивая) система, то смотрите в сторону систем challenge-response c хеш-функциями типа MD5. Можно модифицировать MODBUS фреймы, заменив CRC на криптостойкий HMAC http://ru.wikipedia.org/wiki/HMAC Сообщение при этом увеличится на 512 байт, но за криптостойкость нужно платить. Если делать будете на AVR - AVRCryptolib сильно поможет :idea:

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 09:44:46

Что используется в качестве приемопередатчиков? От этого зависит все остальное.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 10:11:23

Радиостанция моторолла GM340 на каждой стороне. Частота 430МГц. Есть возможность передачи данных. Где есть доступное описание протокола MODBUS? как нибудь попроще? Устойчивость к взлому не нужна, нужна помехоустойчивость.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 11:17:24

GM340 с модемами? Или модем надо тож делать?) Ибо если модем есть то ничего делать не надо, CRC и помехоустойчивое кодирование там уже реализовано. Если же модема нет - то это отдельная долгая и большая история его изобретать.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 12:24:03

С модемом. Меня интересует способы формирования и декодирования команд, как в радиоуправлении моделями, пультах ТВ и тд. примеры , образцы кода на Си.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 12:31:22

В радиоуправлении моделями, пультах ТВ и прочем есть необходимость реализации канального уровня. У вас такой необходимости нет. Только прикладной. Какие примеры вы хотите получить? Как передавать/принимать байт в/из UART? Ибо задача сводится именно к этому. Ваша команда поместится в один байт, скажем такого формата:
Код:
typedef struct
{
unsigned char SlaveID : 3; // номер вашего ведомого
unsigned char Type :1; // тип команды - запрос состояния или вкл/выкл
unsigned char Data : 4; // собственно 4 бита для данных
} Frame;


Если ответы от ведомых длиннее 4 бит - тогда надо прикрутить еще какое то подобие транспортного уровня. Если вам это нужно напишите, скажу как

Опишите точнее задачу, формат команд, количество состояний, в общем что в итоге хотите получить

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 12:37:12

Зависит конечно от задачи, но по моему будет неплохо работать аппаратные кодеки RC5 .

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 14:07:38

Да ему шифрование не нуна, зачем ему rc5?)

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 14:35:04

Опишу поподробней. Есть 3 выключателя 3фаз 380в .Есть пульт управления . Расстояние между ними ~500 метров. Необходимо передавать команды на каждый выключатель отдельно включить или выключить - это по мере необходимости и каждые 0.5 секунд посылать запрос на состояние всех выключателей -это постоянно , чтобы контролировать состояние выключателей .На стороне выключателей при получении запроса состояния, контроллер должен включить радиостанцию на передачу и отправить информацию о состоянии выключателей . На стороне пульта она должна быть принята и выведена на светодиоды вкл/откл.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 14:54:10

Ну значит в один байт помещаетесь. Собираете этот байт, посылаете в модем по уарту, на приемнике получаете из уарта байт и делаете что нужно. Что конкретно вам непонятно? Или все непонятно?))

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 15:56:25

А где бы подсмотреть примеры , кусочки кода как это наилучшим образом делается?

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 16:26:40

Я применял для работы по радиоканалу (трансиверы YS-1100U на 433 МГц) протокол Wake. Описание здесь: http://digit-el.com/files/open/wake/wake.html

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 18:20:07

Я думаю слишком сложно, тут достаточно более простой реализации. Судя по вопросам ТС ему будет сложно это дело реализовать.
Автор, нету кусков кода, это самые базовые знания.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 18:51:38

3 выключателя 3фаз 380в
CRC будет не лишним. Потому как, чтоб модем что то передал, будет достаточно дать стартовый бит.

Re: Кодирование сигнала для передачи данных по радиоканалу

Пн июл 30, 2012 19:50:37

Можно поинтересоваться у уважаемых Гуру?
Если есть два передатчика передающих модулированный код и два приемника его принимающих и понимающих (декодирующих) код.
То зачем нужно дополнительное преобразование что бы обеспечить дуплексную связь в канале, при условии что автор отклонил какие либо ограничения по каналу связи?

Чисто шкурный интерес - мне нужно реализовать то же самое в дуплексе.
Тема закрыта