Есть два узла оснащённых приёмопередатчиками. Первый узел- пульт управления ( ведущий) - передает дискретные команды вкл\откл (по мере необходимости) и запросы состояния ведомого (каждые 0.5 секунд) Второй - принимает команды и запросы состояния( дискретные сигналы -да\нет.) по которым и передаёт своё состояние по радиоканалу. Колличество ведомых <8. Подскажите способ кодирования сигнала , примеры , алгоритмы для микроконтроллера на Си, может какие сайты с информацией по этому вопросу .
Те есть тебе нужна в каком то удобном для тебя физическом состоянии двунаправленная линия связи? Всего то? Закажи параметры обмена на какое расстояние и как ты хочешь обмениватся информацией - через астрал, эфир, по оптоволокну, проводу, экзотическим излучением, силой воли...
Если у тебя уже есть два "приёмопередатчика" - два комплекта передатчиков и два комплекта приемников чем тебя не устраивает линия связи - эфир или оптоволоконный канал? Есть требования или ограничения к линии связи?
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Вопрос не в организации радиоканала, а в способе кодирования сигнала, сигналы дискретные: команды-включить\выключить , запросы состояния -включено или отключено.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Заголовок сообщения: Re: Кодирование сигнала для передачи данных по радиоканалу
Добавлено: Пн июл 30, 2012 08:31:19
Опытный кот
Карма: 3
Рейтинг сообщений: 43
Зарегистрирован: Вт апр 12, 2011 18:38:19 Сообщений: 838 Откуда: с Земли
Рейтинг сообщения:0
Если Вас интересует помехоустойчивость, достаточно применить CRC (контрольная сумма). Можно применить протокол MODBUS - для Вашего случая - то, что доктор прописал. Если нужна устойчивая к взлому (криптоустойчивая) система, то смотрите в сторону систем challenge-response c хеш-функциями типа MD5. Можно модифицировать MODBUS фреймы, заменив CRC на криптостойкий HMAC http://ru.wikipedia.org/wiki/HMAC Сообщение при этом увеличится на 512 байт, но за криптостойкость нужно платить. Если делать будете на AVR - AVRCryptolib сильно поможет
_________________ Все будет только лучше, в крайнем случае - хуже.
Радиостанция моторолла GM340 на каждой стороне. Частота 430МГц. Есть возможность передачи данных. Где есть доступное описание протокола MODBUS? как нибудь попроще? Устойчивость к взлому не нужна, нужна помехоустойчивость.
GM340 с модемами? Или модем надо тож делать?) Ибо если модем есть то ничего делать не надо, CRC и помехоустойчивое кодирование там уже реализовано. Если же модема нет - то это отдельная долгая и большая история его изобретать.
В радиоуправлении моделями, пультах ТВ и прочем есть необходимость реализации канального уровня. У вас такой необходимости нет. Только прикладной. Какие примеры вы хотите получить? Как передавать/принимать байт в/из UART? Ибо задача сводится именно к этому. Ваша команда поместится в один байт, скажем такого формата:
Код:
typedef struct { unsigned char SlaveID : 3; // номер вашего ведомого unsigned char Type :1; // тип команды - запрос состояния или вкл/выкл unsigned char Data : 4; // собственно 4 бита для данных } Frame;
Если ответы от ведомых длиннее 4 бит - тогда надо прикрутить еще какое то подобие транспортного уровня. Если вам это нужно напишите, скажу как
Опишите точнее задачу, формат команд, количество состояний, в общем что в итоге хотите получить
Опишу поподробней. Есть 3 выключателя 3фаз 380в .Есть пульт управления . Расстояние между ними ~500 метров. Необходимо передавать команды на каждый выключатель отдельно включить или выключить - это по мере необходимости и каждые 0.5 секунд посылать запрос на состояние всех выключателей -это постоянно , чтобы контролировать состояние выключателей .На стороне выключателей при получении запроса состояния, контроллер должен включить радиостанцию на передачу и отправить информацию о состоянии выключателей . На стороне пульта она должна быть принята и выведена на светодиоды вкл/откл.
Ну значит в один байт помещаетесь. Собираете этот байт, посылаете в модем по уарту, на приемнике получаете из уарта байт и делаете что нужно. Что конкретно вам непонятно? Или все непонятно?))
Я думаю слишком сложно, тут достаточно более простой реализации. Судя по вопросам ТС ему будет сложно это дело реализовать. Автор, нету кусков кода, это самые базовые знания.
Можно поинтересоваться у уважаемых Гуру? Если есть два передатчика передающих модулированный код и два приемника его принимающих и понимающих (декодирующих) код. То зачем нужно дополнительное преобразование что бы обеспечить дуплексную связь в канале, при условии что автор отклонил какие либо ограничения по каналу связи?
Чисто шкурный интерес - мне нужно реализовать то же самое в дуплексе.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения