|
|
  |
20 радиопередатчиков и 1 приёмник, Посоветуйте готовое решение / протокол |
|
|
|
Aug 27 2011, 15:18
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Цитата(MiklPolikov @ Aug 27 2011, 17:38)  Нужно сделать систему из 20 передатчиков и 1 приёмника. .... А когда передатчиков много, надо как-то разрешать коллизии... Я решал это опросом и рандомизацией ответа. Раз в секунду абонент включает приемник, увидев фрагмент опроса (опрос - непрерывный поток коротких пакетов, с указанием, сколько времени осталось до начала окна приема), вычисляет момент начала своего ответа (начало окна ответа плюс задержка до нужного тайм-слота) с помощью генератора случайных чисел и отправляет ответ. При 256 тайм-слотах неплохо разруливаются полтысячи абонентов (результат моделирования, столько живьем у меня нет), до двух тысяч - более-менее приемлемо (в реальных условиях, вероятно, еще лучше). Соответственно, для 20 абонентов 16 тайм-слотов хватит. Ну, соответственно, за один опрос кто-то не попадет, исключаем ответивших, и повторяем. Увеличивая число тайм-слотов, уменьшаем количество коллизий.
Сообщение отредактировал rx3apf - Aug 27 2011, 15:19
|
|
|
|
|
Aug 28 2011, 10:21
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
zigbee и прочие методы синхронизации это, конечно, здорово, но с ними есть одна проблема - к 20 передатчикам потребуется ещё и 20 приёмников чтобы слушать эфир. А без них передатчики никакой информации не имеют и планировать моменты своей передачи никак не могут. Остаётся только делать передачу покороче да передавать почаще, но без фанатизма. Надежда только на статистику. Пока суммарный трафик не превышает 5-10% от пропускной способности канала коллизии случаются редко. Можете поискать информацию о системе ALOHA, и расчет пропускной способности для неё. Если не ошибаюсь, предел там порядка 1/2e, то есть около 18%.
Для исключения случаев когда моменты передачи у двух устройств почти совпадают и это продолжается на протяжении нескольких периодов, пока из-за разности частот не набежит достаточное рассогласование, полезно период передачи делать не точно постоянным, а немного варьировать псевдослучайным образом. Количество коллизий в среднем не изменится, но они не будут группироваться, а будут более-менее равномерно раскиданы по времени.
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
Aug 28 2011, 11:42
|

Гуру
     
Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702

|
Цитата(SSerge @ Aug 28 2011, 14:21)  zigbee и прочие методы синхронизации это, конечно, здорово, но с ними есть одна проблема - к 20 передатчикам потребуется ещё и 20 приёмников чтобы слушать эфир. А без них передатчики никакой информации не имеют и планировать моменты своей передачи никак не могут. Остаётся только делать передачу покороче да передавать почаще, но без фанатизма. Надежда только на статистику. Пока суммарный трафик не превышает 5-10% от пропускной способности канала коллизии случаются редко. Можете поискать информацию о системе ALOHA, и расчет пропускной способности для неё. Если не ошибаюсь, предел там порядка 1/2e, то есть около 18%.
Для исключения случаев когда моменты передачи у двух устройств почти совпадают и это продолжается на протяжении нескольких периодов, пока из-за разности частот не набежит достаточное рассогласование, полезно период передачи делать не точно постоянным, а немного варьировать псевдослучайным образом. Количество коллизий в среднем не изменится, но они не будут группироваться, а будут более-менее равномерно раскиданы по времени. В эту строну и думаю. Если передатчиков 20, а окно передачи разбито на 1000 ячеек, то конкретный передатчик будет перекрыт любым другим с вероятностью 19/1000 = 0.019 . Перекрывание одного и того же передатчика в трёх окнах подряд - уже 0.019 х 0.019 х 0.019 = 0.0000068 То есть, 1 раз на 1/0.0000068 = 150000 окон передачи Ячейку передачи лучше выбирать не квазислучайно, а совсем случайно. Читая шум с ножки АЦП . А то , если во всех передатчиках алгоритм расчёта квазислучайного числа один и тот же, то какой вообще в нём смысл ? Будут точно так же появляться пары почти совпадающих передатчиков, "прыгающих" по ячейкам друг за другом.
--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
|
|
|
|
|
Aug 31 2011, 20:36
|
Местный
  
Группа: Участник
Сообщений: 245
Регистрация: 15-08-07
Пользователь №: 29 795

|
Цитата Расстояние передачи 10м... ...потребление очень критично Складывается впечатление, что это своего рода небольшие маячки, которые включают для сбора данных какого-то события в течении определенного промежутка времени. Отсюда возникает мысль, что можно изначально предусмотреть некий вход для синхронизации при включении передатчика. Либо это будет просто "сброс", подаваемый на все устройства одновременно, либо каждый передатчик при включении подсоединить к приемнику-конфигуратору. Одним словом, если передатчики работают не слишком долго, то возможно получится выделить конкретному передатчику конкретный квант времени при включении. Стабильность более-менее нормального кварца позволит несколько дней поработать при таком количестве байт в секунду.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|