|
Mesh сеть между подвижными объектами., Подходит ли ZigBee? |
|
|
|
Apr 6 2013, 15:00
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Задача передачи телеметрии от экскаваторов/бульдозеров/самосвалов в карьере в диспетчерскую. Сразу скажу, что GSM там нет, иначе было бы просто, а Ирридиум дорог. Вот подумываю о ZigBee, прочитал описание XBee. Но, насколько я понимаю, это не совсем то, т.к. сеть должна постоянно перенастраиваться - никаких роутеров, закреплённых в фиксированном месте, там быть не должно. Так же подумываю использовать только физику ZigBee, а всё остальное сделать самому (на базе готового стека, конечно). Получается, что в сети должны быть только broadcast сообщения т.к. маршруты будут постоянно меняться. И наличие координатора тут не имеет смысла. Понравился вариант на ATmega128RFR2, смущает только низкая максимальная выходная мощность передатчика. Какая реально дальность связи достижима? Или можно усилить? Про ограничения в курсе.
|
|
|
|
|
 |
Ответов
|
Jul 27 2013, 19:57
|
Частый гость
 
Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244

|
Цитата(x893 @ Jul 27 2013, 21:34)  Я делал в таксопарке обмен данными. По приезду (или в дороге - если связь есть) происходит соединение и данные обмениваются между устройствами (некоторые машины долго не возвращаются, но встречаются в городе). По приезду в парк - данные скачивают (и свои и от других машин). Использовал Simpliciti (с небольшими правками) и модули на 433Mhz - по дороге даже при встречном за 300 м контакта - успевает 3-4Kб отправить. Машин примерно 1500 каждая привозит маленькие куски данных от других - в результате данные быстрее приходят, чем ждать когда машина придет сама с данными. Впечатляет! А какую Вы скорость использовали для связи? Я так понимаю каждое устройство периодически посылало запрос в эфир и ждало подтверждения о том что в зоне есть другое устройство, при получении подтвердения начинался сеанс обмена данными? Но такой вариант хорош если в зоне взаимной видимости только 2 устройства, но если больше, то как в таком случае быть...получается они должны между друг другом обменяться информацией...при 2-х машинах это 2 транзакции, но при 3-х это уже 6...или они обменивались не только своей бортовой информацией, но и одновременно синхронизировали информацию в их памяти относительно других машин? Вы использовали внешнюю какую-то память для загрузки данных? Потому что 1500 машин пусть даже и с небольшим объемом данных с каждой уже выплывает в довольно приличный объем... Цитата(Taradov Alexander @ Jul 27 2013, 22:21)  Абсолютно надежной доставки не будет по понятным причинам. Единственный способ избежать наложения - пересылка с задержками. Конкретный пример - в ZigBee на 2.4 GHz максимальная длинна кадра 4.5 мс, случайные задержки при пересылке кадра от 1 до 32 мс. Этого достаточно чтобы на практике в сетях из 100+ устройств в одной комнате броадкасты доходили до всех всегда. интересно. Спасибо! Полезная очень информация. Я думал что диапазон задержек при более 100 устройств должен быть явно побольше. А у меня еще вопрос немного другого плана - а в ZigBee модулях реализовано два буфера - один на приме, другой на передачу? Т.е. я имею ввиду что например узел принял пакет для ретрансляции и у него случайная задержка предположим оказалась 30 мс. Как ведет себя узел в эти 30 мс - висит в состоянии готовности на передачу пока не освободиться канал или он принимает другие пакеты, складывает их в буфер с тем чтобы потом обработать когда освободиться? Просто у меня в системе я не до конца реализовал нумерацию транзакций и отслеживания новых-устаревших пакетов. Получается ситуация что узел принял пакет для ретрансляции и сидит в ожидании освобождения канала (другие пакеты в это время не принимает, т.к. банально не хватает ОЗУ контроллера на увеличения буферов приема-передачи (рассчитаны на один пакет) ), задержка у него довольно большая, он ждет. В это время другим путем пакет доходит с короткими задержками до узла назначения и уже обратно идет ответ узконаправленный и пока этот ответ опять таки с задержками где-то в пути, наш узел посылает дальше пакет запроса пути и те узлы, которые не слышали ответ от результирующего узла, начинают дальше ретранслировать вперед пакет поиска. Возникает лишняя нагрузка на сеть... Я правильно понимаю что одним из главных условий широковещательной рассылки есть то, что каждый узел только 1 раз ретранслирует пакет с определенной комбинацией его номера и узла-источника? Я не до конца понимаю как быть с номерами пакетов в сети общей, нужно ли их синхронизировать от разных узлов...ведь при запуске узлов у каждого из них начальный адрес пакета нулевой и инкрементируется в процессе работы. Но получается что если узел источник шлет пакет №5 узлу назначения, узел назначения отвечает ему с тем же номером пакета и должен ли узел назначения как-то изменять-привязывать свой номер в зависимости от номера принятого пакета? Или если узел назначения захочет послать узлу источника другой пакет, то он будет слать со своим например №3, несмотря на то что от узла назначения до этого приходил пакет №5 ?
|
|
|
|
|
Jul 27 2013, 20:09
|

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

|
QUOTE (Pasha_a13 @ Jul 27 2013, 12:57)  А у меня еще вопрос немного другого плана - а в ZigBee модулях реализовано два буфера - один на приме, другой на передачу? ZigBee - это стек протоколов, ожиданием занимается сетевой уровень, приемом/передачей - физический, к моменту когда нужно задержку делать кадр уже давно покинул радио. После задержки он будет отправлен на передачу в радио заново. QUOTE (Pasha_a13 @ Jul 27 2013, 12:57)  Я правильно понимаю что одним из главных условий широковещательной рассылки есть то, что каждый узел только 1 раз ретранслирует пакет с определенной комбинацией его номера и узла-источника? Да, для этого в ZigBee есть Broadcast Transaction Table. QUOTE (Pasha_a13 @ Jul 27 2013, 12:57)  Я не до конца понимаю как быть с номерами пакетов в сети общей, нужно ли их синхронизировать от разных узлов.. Ничего не нужно синхронизировать транзакция однозначно определяется по адресу отправителя и номер кадра. Одна из самых простейших реализаций всего этого - Atmel Lightweight Mesh http://www.atmel.com/tools/LIGHTWEIGHT_MESH.aspx. Даже если напрямую использовать не получится, то там есть документация, которая описывает все процессы и исходники полные и читаемые. Я автор, так что могу ответить на вопросы, если появятся.
|
|
|
|
|
Jul 27 2013, 20:28
|
Частый гость
 
Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244

|
Цитата(Taradov Alexander @ Jul 27 2013, 23:09)  ZigBee - это стек протоколов, ожиданием занимается сетевой уровень, приемом/передачей - физический, к моменту когда нужно задержку делать кадр уже давно покинул радио. После задержки он будет отправлен на передачу в радио заново. Я понял, я неправ. Некорректно сформулировал вопрос. У меня просто немного все в куче и нет как такового разделения по уровням. Цитата(Taradov Alexander @ Jul 27 2013, 23:09)  Одна из самых простейших реализаций всего этого - Atmel Lightweight Mesh http://www.atmel.com/tools/LIGHTWEIGHT_MESH.aspx. Даже если напрямую использовать не получится, то там есть документация, которая описывает все процессы и исходники полные и читаемые. Я автор, так что могу ответить на вопросы, если появятся. Спасибо! Впечатлило конечно что Вы автор. Теперь мне понятно почему Вы так круто ориентируетесь в вопросах связанных с ZigBee. Я когда начинал все делать в общих чертах тогда вроде бы просмотрел документацию по Atmel Lightweight Mesh, но сейчас понимаю что явно в сильно общих чертах просмотрел. Сейчас попробую вникнуть более основательно. Просто когда начинал делать систему вопросы были одни, а в процессе экспериментов, проб и ошибок возникло еще намного больше вопросов. Так что нужно по-новому перечитать информацию с которой начинал.
Сообщение отредактировал Pasha_a13 - Jul 27 2013, 20:29
|
|
|
|
|
Jul 27 2013, 20:51
|
Частый гость
 
Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244

|
Цитата(Taradov Alexander @ Jul 27 2013, 23:35)  Сеть из 204 узлов в одной комнате https://dl.dropboxusercontent.com/u/6121480...h_204_nodes.png. Тут правда броадкастов нет, все юникастом шлют данные на координатора. С броадкастами я проверял на сетях до 50 устройств, потерь не видел ни разу. Из такой массы хоть один да будет принят всеми. Заранее извиняюсь за глупый возможно вопрос, но обязательно ли наличие координатора в сети? В моей системе подразумевается что любой узел может посылать пакеты любому и нет главного.... Ведь координатор он то одновременно и синхронизирует работу сети, а у меня фактически получается нет синхронизации в сети. Так может мне нужно идти по другому какому-то пути... А WSNmonitor это программа специально разработанная именно для железа Atmel или она более-менее универсальна и ее можно использовать с другим железом? Просто по картинке, которую Вы прислали, видна очень информативная картинка всей сети...очень удобно для отладки, настройки когда видна вся структура сети.
|
|
|
|
|
Jul 27 2013, 20:54
|

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

|
В ZigBee - да, в LwMesh - нет.
Тут демо приложение повторят сценарий и протокол аналогичного приложения из ZigBee стека, чтобы можно было PC софтину рисующую структуру сети заново не писать.
В данном случае координатор - это такое же устройство, единственное чем он отличается - это то, что по логике приложения на него все шлют данные, а он их пересылает в UART. С точки зрения стека между ними нет никакой разницы.
WSNmonitor - это из состава ZigBee стека Atmel (BitCloud), но в принципе я не вижу проблем использовать ее в своих целях. Единственное ограничение - это нужно соблюдать протокол и архитектура сети - все шлют информацию одному. Так что в вашеи случае, где все шлют всем, она не поможет скорее всего.
Сообщение отредактировал Taradov Alexander - Jul 27 2013, 20:56
|
|
|
|
Сообщений в этой теме
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      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 Добрый вечер!
Возник такой вопрос связанный с ... Aug 5 2013, 18:06 Taradov Alexander QUOTE (Pasha_a13 @ Aug 5 2013, 11:06) Одн... Aug 5 2013, 18:17  Pasha_a13 Цитата(Taradov Alexander @ Aug 5 2013, 21... Aug 5 2013, 18:51   Taradov Alexander QUOTE (Pasha_a13 @ Aug 5 2013, 11:49) Узе... Aug 5 2013, 18:59    Pasha_a13 Я делал так что узел 0 шлет RREQ: (NWKsrc=0, MACsr... Aug 5 2013, 19:22     Taradov Alexander QUOTE (Pasha_a13 @ Aug 5 2013, 12:22) Але... Aug 5 2013, 19:55      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 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|