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

 
 
> Mesh сеть между подвижными объектами., Подходит ли ZigBee?
galjoen
сообщение Apr 6 2013, 15:00
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Задача передачи телеметрии от экскаваторов/бульдозеров/самосвалов в карьере в диспетчерскую. Сразу скажу, что GSM там нет, иначе было бы просто, а Ирридиум дорог.
Вот подумываю о ZigBee, прочитал описание XBee. Но, насколько я понимаю, это не совсем то, т.к. сеть должна постоянно перенастраиваться - никаких роутеров, закреплённых в фиксированном месте, там быть не должно.
Так же подумываю использовать только физику ZigBee, а всё остальное сделать самому (на базе готового стека, конечно). Получается, что в сети должны быть только broadcast сообщения т.к. маршруты будут постоянно меняться. И наличие координатора тут не имеет смысла.
Понравился вариант на ATmega128RFR2, смущает только низкая максимальная выходная мощность передатчика. Какая реально дальность связи достижима? Или можно усилить?
Про ограничения в курсе.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Pasha_a13
сообщение Aug 5 2013, 18:06
Сообщение #2


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

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



Добрый вечер!
Возник такой вопрос связанный с маршрутизацией пакетов.
Например у нас узлы расположены как показано на рисунке:

Штриховкой показаны зоны покрытия узлов.
Узел 0 начинает искать узел 4. При этом он посылает броадкаст.
Его слышит только узел 1, который в свою очередь ретранслирует этот броадкаст дальше.
Далее ретранслированный узлом 1 пакет принимают узлы 2 и 3, которые в свою очередь ретранслируют пакет дальше.
Однако нюанс в зонах покрытия - узлы 1 и 3 находятся на краях зон покрытия друг друга и соответственно качество этого участка варьируется довольно сильно от окружающей радиочастотной обстановки, т.к. уровень приема на границе шумов фактически.
Однако броадкаст от узла 1 доходит до узла 3 быстрее, т.к. узел 2 ретранслирует пакет, а следовательно вносит задержку.
По принципам маршрутизации броадкаст пакетов узел 3 ретранслирует броадкаст полученный от узла 1 и дальше отсекает все остальные броадкасты, в том числе и от узла 2.
В итоге путь от узла 0 до узла 4 выстраивается по цепочке 0-1-3-4, хотя с точки зрения качества связи пожалуй лучше было бы выстроить по пути 0-1-2-3-4...хоть узел 2 и увеличивает путь, однако обеспечивает более качественную связь.
Как решаются подобного рода проблемы в беспроводных сетях?
Дело в том что у меня фактически именно топология где нет возможности размещать большое количество узлов чтобы у пакета была большая вариативность маршрута(т.к. каждый узел это деньги), а в основном узлы расположены по цепочке.
Go to the top of the page
 
+Quote Post
ataradov
сообщение Aug 5 2013, 18:17
Сообщение #3


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



QUOTE (Pasha_a13 @ Aug 5 2013, 11:06) *
Однако броадкаст от узла 1 доходит до узла 3 быстрее, т.к. узел 2 ретранслирует пакет, а следовательно вносит задержку.
По принципам маршрутизации броадкаст пакетов узел 3 ретранслирует броадкаст полученный от узла 1 и дальше отсекает все остальные броадкасты, в том числе и от узла 2.
В итоге путь от узла 0 до узла 4 выстраивается по цепочке 0-1-3-4, хотя с точки зрения качества связи пожалуй лучше было бы выстроить по пути 0-1-2-3-4...хоть узел 2 и увеличивает путь, однако обеспечивает более качественную связь.
Тут много не верных предположений.
1. Для поиска маршрута используется не настоящий броадкаст, а локальный, который принимактся только узлами, которые в непосредственной зоне слышимости.
2. Каждое принимающее устройство генерирует новый Route Discovery Request, так как в нем меняется полезная нагрузка - суммарный LQI или число хопов через которые прошел пакет или любая другая метрика показывающая качество связи. Для фиксации повторов используется Route Discovery Table, из которой по адресу источника и назначения ясно участвуем мы уже в этом поиске или еще нет.
3. Устройство назначения принимает все ответы не зависимо от времени их прихода (в переделах максимального времени поиска маршрута, конечно).
4. Устройство назначения отвечает только если у нового пакета показатель качества (всего маршрута) лучше чем у того, на который ответили ранее. Таким образом ответ на самый лучший маршрут уйдет последним.
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Aug 5 2013, 18:51
Сообщение #4


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

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



Цитата(Taradov Alexander @ Aug 5 2013, 21:17) *
Тут много не верных предположений.
1. Для поиска маршрута используется не настоящий броадкаст, а локальный, который принимактся только узлами, которые в непосредственной зоне слышимости.
2. Каждое принимающее устройство генерирует новый Route Discovery Request, так как в нем меняется полезная нагрузка - суммарный LQI или число хопов через которые прошел пакет или любая другая метрика показывающая качество связи. Для фиксации повторов используется Route Discovery Table, из которой по адресу источника и назначения ясно участвуем мы уже в этом поиске или еще нет.

я наверное просто неправильно сформулировал по поводу route request.
Узел 0 шлет RREQ, его принимает узел 1, изменяет в нем число хопов, фиксирует качество связи, фиксирует этот пакет в своей таблице маршрутизации и сам снова генерирует RREQ с тем же порядковым номером и тем же NWKsrc, однако с новым числом хопов.
Далее этот пакет принимают узлы 2 и 3, каждый из которых так же в свою очередь изменяет пакет, фиксируют в таблицах и отправляют далее.
Однако узел 3 приняв пакет от узла 1 запомнил комбинацию "номер пакета+NWKsrc" и уже не пропустит пакет от узла 2, т.к. у него будет такая же комбинация "номер пакета+NWKsrc" как и у пакета от узла 1, да и в таблице узел 3 зафиксирует что когда нужно будет пересылать пакет с NWKdst=0, то его нужно отправлять узлу 1....а если он примет и перешлет еще пакет от узла 2, то тогда затрется эта запись.
Наверное я тут немного не до конца понял процесс фиксации записей в таблице...
Цитата(Taradov Alexander @ Aug 5 2013, 21:17) *
Для фиксации повторов используется Route Discovery Table, из которой по адресу источника и назначения ясно участвуем мы уже в этом поиске или еще нет.

Я не понял что Вы имеете ввиду под тем участвуем ли мы уже в поиске или нет. Если можно, опишите пожалуйста поподробнее.

Я просто не соображу как фиксируются повторы в таблице. Ведь вроде бы в таблице фиксируется узел источник NWKsrc и NextHop к этому узлу.
Go to the top of the page
 
+Quote Post
ataradov
сообщение Aug 5 2013, 18:59
Сообщение #5


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



QUOTE (Pasha_a13 @ Aug 5 2013, 11:49) *
Узел 0 шлет RREQ, его принимает узел 1, изменяет в нем число хопов, фиксирует качество связи, фиксирует этот пакет в своей таблице маршрутизации и сам снова генерирует RREQ с тем же порядковым номером и тем же NWKsrc, однако с новым числом хопов.
Нет, так делать нельзя ни в коем случае. Если содержимое изменилось - это новый кадр с новым порядковым номером.

QUOTE (Pasha_a13 @ Aug 5 2013, 11:49) *
Я не понял что Вы имеете ввиду под тем участвуем ли мы уже в поиске или нет. Если можно, опишите пожалуйста поподробнее.

Теперь, так как номер изменился, все остальные устройства тоже примут этот запрос еще раз. Чтобы его не передавать еще раз на время поиска маршрута в Route Discovery Table (это не тоже самое что Routing Table и Dplicate Rejection Table) создается запись, ключом в этой таблице является пара (NwkSrc, NwkDst), где NwkSrc - адрес запрашивающего узла, NwkDst - адрес узла до которого ищем маршрут. Причем такая запись будет всегда уникальна, так как запрашивающее устройство не будет слать повторный запрос пока на нем самом есть запись в Route Discovery Table о том, что оно уже ищет этот маршрут.

QUOTE (Pasha_a13 @ Aug 5 2013, 11:51) *
Я просто не соображу как фиксируются повторы в таблице. Ведь вроде бы в таблице фиксируется узел источник NWKsrc и NextHop к этому узлу.
Уже как минимум 3 таблицы, уточняйте какая имеется в виду.
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Aug 5 2013, 19:22
Сообщение #6


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

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



Я делал так что узел 0 шлет RREQ: (NWKsrc=0, MACsrc=0, NumberPacket=1, NWKdst=4, MACdst=0xFF, hop_cnt=0 )
принял узел 1, сделал у себя запись (destination = NWKsrc(из пакета=0), nextHop = MACsrc(из пакета=0)),
посылает дальше RREQ: (NWKsrc=0, MACsrc=1, NumberPacket=1, NWKdst=4, MACdst=0xFF, hop_cnt=1 ),
принял узел 2 сделал у себя запись (destination = NWKsrc(из пакета=0), nextHop = MACsrc(из пакета=1)),
посылает дальше RREQ: (NWKsrc=0, MACsrc=2, NumberPacket=1, NWKdst=4, MACdst=0xFF, hop_cnt=2),
в это же время пакет принял и узел 3, сделал у себя запись (destination = NWKsrc(из пакета=0), nextHop = MACsrc(из пакета=1)),
посылает дальше RREQ: (NWKsrc=0, MACsrc=3, NumberPacket=1, NWKdst=4, MACdst=0xFF, hop_cnt=2),
просто дальше в моем варианте получается если узел 3 принял ретранслированный пакет от узла 2, то фактически ему нужно затереть запись (destination (=0), nextHop (=1)) и вместо нее будет запись (destination(=0), nextHop (=2)).
Однако когда будет идти RREQ от узла 4 через узел 3, то он пойдет только по последнему пути, т.к. через 2, а не через 1.

Цитата(Taradov Alexander @ Aug 5 2013, 21:59) *
Теперь, так как номер изменился, все остальные устройства тоже примут этот запрос еще раз. Чтобы его не передавать еще раз на время поиска маршрута в Route Discovery Table (это не тоже самое что Routing Table и Dplicate Rejection Table) создается запись, ключом в этой таблице является пара (NwkSrc, NwkDst), где NwkSrc - адрес запрашивающего узла, NwkDst - адрес узла до которого ищем маршрут. Причем такая запись будет всегда уникальна, так как запрашивающее устройство не будет слать повторный запрос пока на нем самом есть запись в Route Discovery Table о том, что оно уже ищет этот маршрут.

Начинаю понимать что я упустил основной момент - именно что есть 3 таблицы а не одна....

Александр, посоветуйте пожалуйста хороший источник где было бы подробно описано по поводу этих трех таблиц, потому что из оригинального описания AODV маршрутизации я так до конца и не понял по поводу этих таблиц.
Go to the top of the page
 
+Quote Post
ataradov
сообщение Aug 5 2013, 19:55
Сообщение #7


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



QUOTE (Pasha_a13 @ Aug 5 2013, 12:22) *
Александр, посоветуйте пожалуйста хороший источник где было бы подробно описано по поводу этих трех таблиц, потому что из оригинального описания AODV маршрутизации я так до конца и не понял по поводу этих таблиц.


AODV - это только поиск маршрута, к нему относится только одна таблица - Route Discovery Table.

Независимо от способа поиска маршрута (хоть руками вбивайте) для маршрутизации необходима Routing Table. AODV в эту таблицу заносит информацию о найденном маршруте.

И независимо даже от наличия маршрутизации требуется Duplicate Rejection Table - для удаления повторных кадров.

Я не знаю описано-ли все это где-нибудь в одном месте. Скорее всего если и описано, то это академический труд из которого что-то понять сложно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- galjoen   Mesh сеть между подвижными объектами.   Apr 6 2013, 15:00
- - Taradov Alexander   Какие скорости передачи данных интересуют? Можно в...   Apr 7 2013, 03:27
|- - galjoen   Скорость небольшая. От каждого объекта передаётся ...   Apr 7 2013, 12:02
|- - Taradov Alexander   QUOTE (galjoen @ Apr 7 2013, 06:02) Но по...   Apr 7 2013, 19:41
|- - galjoen   Цитата(Taradov Alexander @ Apr 7 2013, 23...   Apr 8 2013, 17:44
|- - Taradov Alexander   QUOTE (galjoen @ Apr 8 2013, 11:44) А что...   Apr 8 2013, 22:54
|- - galjoen   Цитата(Taradov Alexander @ Apr 9 2013, 02...   Apr 9 2013, 09:55
- - Aner   Делали раньше несколько аналогичных проектов как с...   Apr 8 2013, 18:14
|- - galjoen   Про сложность я уже понял. Поэтому вполне возможно...   Apr 8 2013, 18:37
- - Aner   Да тут сотни, десятки мегагерц не пройдут. Подойдё...   Apr 8 2013, 21:27
- - Aner   Без ACK не пройдет. Думаю вам нужно заняться и под...   Apr 9 2013, 12:08
|- - galjoen   ACK не панацея, даже наоборот. Там весьма времязат...   Apr 9 2013, 12:49
- - Aner   Раньше не писали про GPS. Тогда вообще можете дела...   Apr 9 2013, 13:53
- - Taradov Alexander   Вы очень все усложняете. Делайте как работают броа...   Apr 9 2013, 15:43
|- - galjoen   Цитата(Taradov Alexander @ Apr 9 2013, 19...   Apr 10 2013, 07:33
|- - Taradov Alexander   В общем вам виднее как это сделать, не видя конкр...   Apr 10 2013, 15:37
|- - galjoen   Я тоже не сторонник нестандартного, но тут сам слу...   Apr 11 2013, 13:39
- - dbush   Цитата(galjoen @ Apr 6 2013, 19:00) Задач...   May 9 2013, 18:24
|- - Taradov Alexander   QUOTE (dbush @ May 9 2013, 11:24) По мимо...   May 9 2013, 18:30
|- - dbush   Цитата(Taradov Alexander @ May 9 2013, 22...   May 10 2013, 10:14
||- - Taradov Alexander   QUOTE (dbush @ May 10 2013, 03:14) Если 6...   May 10 2013, 17:31
|- - dbush   Цитата(Taradov Alexander @ May 9 2013, 22...   May 14 2013, 12:19
|- - Taradov Alexander   QUOTE (dbush @ May 14 2013, 05:19) К сожа...   May 14 2013, 15:48
- - Aner   Это все проделки тексаса, которому не терпиться бы...   May 9 2013, 21:33
|- - Taradov Alexander   QUOTE (Aner @ May 9 2013, 14:33) Это все ...   May 9 2013, 21:38
- - Aner   Также как и IPv6 не получила столь широких и массо...   May 9 2013, 22:08
|- - Taradov Alexander   QUOTE (Aner @ May 9 2013, 15:08) Также ка...   May 9 2013, 22:17
- - Aner   Exegin, Grid2Home, Sensinode ... эти мелкие, карма...   May 9 2013, 22:23
|- - Taradov Alexander   Exegin в Канаде, Sensinode в Финляндии Тут +25 -...   May 9 2013, 22:40
- - Aner   Exegin в Канаде точно. Остальные есть в USA, CA. S...   May 9 2013, 23:20
- - Aner   Частотный диапазон тут не причем, дальность связи ...   May 10 2013, 10:54
|- - dbush   Цитата(Aner @ May 10 2013, 14:54) Частотн...   May 14 2013, 11:27
|- - Aner   QUOTE (dbush @ May 14 2013, 14:27) В форм...   May 14 2013, 11:53
- - Aner   Например ZigBee хорош для небольшой группы летател...   May 10 2013, 18:19
|- - Taradov Alexander   QUOTE (Aner @ May 10 2013, 11:19) Наприме...   May 10 2013, 18:28
|- - DASM   Цитата(Aner @ May 10 2013, 22:19) Наприме...   Aug 5 2013, 19:03
- - Aner   Программа загружается каждому своя. ZigBee использ...   May 10 2013, 21:30
- - Aner   А у вас значит аргументировано. И где это? ... пра...   May 14 2013, 13:14
|- - dbush   Цитата(Aner @ May 14 2013, 17:14) А у вас...   May 14 2013, 19:02
|- - Aner   QUOTE (dbush @ May 14 2013, 22:02) Если В...   May 14 2013, 20:18
|- - dbush   Цитата(Aner @ May 15 2013, 00:18) Похоже ...   May 15 2013, 06:36
|- - Taradov Alexander   QUOTE (dbush @ May 14 2013, 23:36) Посмот...   May 15 2013, 06:42
|- - dbush   Цитата(Taradov Alexander @ May 15 2013, 10...   May 15 2013, 06:49
|- - Taradov Alexander   QUOTE (dbush @ May 14 2013, 23:49) Да и р...   May 15 2013, 07:01
|- - dbush   Цитата(Taradov Alexander @ May 15 2013, 11...   May 15 2013, 08:32
- - vladec   У Atmel есть доступный для скачивания стек Zigbee ...   May 15 2013, 07:22
- - Pasha_a13   galjoen, если не секрет, расскажите удалось ли Ва...   Jul 27 2013, 17:45
- - Taradov Alexander   Обычно каждый пересылающий узел добавляет случайну...   Jul 27 2013, 18:14
|- - Pasha_a13   Цитата(Taradov Alexander @ Jul 27 2013, 21...   Jul 27 2013, 19:14
- - x893   Я делал в таксопарке обмен данными. По приезду (ил...   Jul 27 2013, 18:34
|- - Pasha_a13   Цитата(x893 @ Jul 27 2013, 21:34) Я делал...   Jul 27 2013, 19:57
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Jul 27 2013, 12:57) А ...   Jul 27 2013, 20:09
|- - Pasha_a13   Цитата(Taradov Alexander @ Jul 27 2013, 23...   Jul 27 2013, 20:28
|- - Taradov Alexander   Сеть из 204 узлов в одной комнате https://dl.dropb...   Jul 27 2013, 20:35
|- - Pasha_a13   Цитата(Taradov Alexander @ Jul 27 2013, 23...   Jul 27 2013, 20:51
|- - Taradov Alexander   В ZigBee - да, в LwMesh - нет. Тут демо приложени...   Jul 27 2013, 20:54
|- - jcxz   Цитата(Pasha_a13 @ Jul 28 2013, 02:51) За...   Jul 29 2013, 07:54
|- - Taradov Alexander   QUOTE (jcxz @ Jul 29 2013, 00:54) В ZigBe...   Jul 29 2013, 15:41
- - Taradov Alexander   Абсолютно надежной доставки не будет по понятным п...   Jul 27 2013, 19:21
- - Pasha_a13   Александр, спасибо большое за ответы! Перед да...   Jul 27 2013, 21:10
- - Pasha_a13   Александр, добрый день! Я прочитал документац...   Jul 30 2013, 19:48
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Jul 30 2013, 12:48) Пе...   Jul 30 2013, 20:02
|- - Pasha_a13   Цитата(Taradov Alexander @ Jul 30 2013, 23...   Jul 30 2013, 20:38
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Jul 30 2013, 13:30) Ил...   Jul 30 2013, 20:50
|- - Pasha_a13   Цитата(Taradov Alexander @ Jul 30 2013, 23...   Jul 30 2013, 20:59
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Jul 30 2013, 13:59) По...   Jul 30 2013, 21:09
|- - Pasha_a13   Александр, спасибо Вам большое! Понял свои оши...   Jul 30 2013, 21:22
|- - Taradov Alexander   Опять-же при рассылке unicast-ов аппаратный Ack ис...   Jul 30 2013, 21:35
- - Pasha_a13   У меня используется TRC102 и диапазон 433МГц. При...   Jul 31 2013, 05:13
- - Pasha_a13   В процессе дальнейшей работы над ретрансляцией воз...   Aug 1 2013, 15:37
|- - Taradov Alexander   Не нужно ждать освобождения канала, так вы никогда...   Aug 1 2013, 16:19
- - Pasha_a13   я уже понял что как ни крути придется добавлять бу...   Aug 1 2013, 16:25
|- - Taradov Alexander   CSMA/CA - это не пауза, это то самое прослушивание...   Aug 1 2013, 16:38
|- - Pasha_a13   Понял. Спасибо. Я думал за счет задержек на ретра...   Aug 1 2013, 17:10
- - Taradov Alexander   Эти задержки тоже нужны. Алгоритм передачи кадра:...   Aug 1 2013, 17:37
|- - Pasha_a13   Цитата(Taradov Alexander @ Aug 1 2013, 19...   Aug 1 2013, 19:24
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 1 2013, 12:24) Так...   Aug 1 2013, 19:56
- - Pasha_a13   Добрый день, Александр! Я пошел немного по дру...   Aug 2 2013, 14:44
|- - Pasha_a13   Цитата(Taradov Alexander @ Aug 5 2013, 22...   Aug 5 2013, 20:00
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 5 2013, 13:00) У П...   Aug 5 2013, 20:10
|- - Pasha_a13   Цитата(Taradov Alexander @ Aug 5 2013, 23...   Aug 5 2013, 20:23
|- - Taradov Alexander   В IEEE 802.15.4 довольно навороченный способ опред...   Aug 5 2013, 20:28
|- - Pasha_a13   Цитата(Taradov Alexander @ Aug 5 2013, 23...   Aug 5 2013, 20:36
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 5 2013, 13:33) я п...   Aug 5 2013, 20:44
- - Pasha_a13   Александр, добрый день! Посидел поразбирался н...   Aug 7 2013, 17:23
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 7 2013, 10:23) Я п...   Aug 7 2013, 17:40
|- - Pasha_a13   Цитата(Taradov Alexander @ Aug 7 2013, 20...   Aug 7 2013, 17:54
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 7 2013, 10:54) Но ...   Aug 7 2013, 17:59
- - Pasha_a13   а в функции nwkRouteFrameReceived(frame) какой алг...   Aug 7 2013, 17:47
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 7 2013, 10:47) а в...   Aug 7 2013, 17:51
- - Pasha_a13   Я правильно понял последовательность вызова процед...   Aug 7 2013, 18:03
|- - Taradov Alexander   QUOTE (Pasha_a13 @ Aug 7 2013, 11:03) Я п...   Aug 7 2013, 18:07
- - Pasha_a13   Если Вам не сложно, можете пожалуйста, в двух слов...   Aug 7 2013, 18:11
- - Taradov Alexander   NWK_OpenEndpoint() регистрирует обработчик приняты...   Aug 7 2013, 18:17
2 страниц V   1 2 >


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

 


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


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