nRF24L01+ через USB

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

MaksMS82
Сообщения: 422
Зарегистрирован: Ср сен 05, 2012 7:30 am
Откуда: Киров
Благодарил (а): 0
Поблагодарили: 70 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение MaksMS82 » Ср дек 25, 2013 12:08 pm

Да тут никто секретные данные не собирается передавать ,а для расшифровки переданных данных и их ложной отправки врят ли кто захочет заниматься..
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: nRF24L01+ через USB

Сообщение dmw » Ср дек 25, 2013 4:21 pm

Это называется паранойя. Если вас всеже она накрыла:
1) померьте радиус доступности к вашей сети
2) проанализируйте своих соседей на возможность осуществления описанной вами зловредности
если совсем плохо:
3) передавать нужно структурированные данные (сами придумайте структуру), которые описываются примерно так:

Код: Выделить всё

typedef struct faq {
  char type; //тип сообщения: 'a'-аналоговый пин, 'd'-цифровой пин
  int Pin; //номер пина
  int val; //Состояние пина
};
faq message;

//далее делать с переменной message что угодно, хоть zip-ом сжать и передать
на приеме анализ и действие:

Код: Выделить всё

//раскодировать message
if (message.type=='a') {
  //любые действия
}
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am
Благодарил (а): 4 раза
Поблагодарили: 43 раза

Re: nRF24L01+ через USB

Сообщение ser009 » Ср дек 25, 2013 11:49 pm

Вот что касается беспроводной сети можете глянуть тут (просто нет желания плодить одинаковые форумы)
Модули применяем такие же.
Может свежие идейки подбросите.
Проект так же подстраиваю и под MDM
MaksMS82
Сообщения: 422
Зарегистрирован: Ср сен 05, 2012 7:30 am
Откуда: Киров
Благодарил (а): 0
Поблагодарили: 70 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение MaksMS82 » Чт дек 26, 2013 7:25 am

ser009 писал(а):Вот что касается беспроводной сети можете глянуть тут (просто нет желания плодить одинаковые форумы)
Модули применяем такие же.
Может свежие идейки подбросите.
Проект так же подстраиваю и под MDM
А где ссылка ? :)

Вчера разобрался с косяками потери данных ,сейчас должно работать все идеально ,сегодня проведу ещё тест..

Думаю связка nRF24L01++ USB используя V-USB библиотеку имеет право на жизнь,хотя тут имеются трудности :)

Для небольшого количества ,до 5 беспроводных устройств думаю будет отличное решение..

Есть идея,чтобы добавить возможность ещё 5 устройств путём переключения каналов,но это буду добавлять после полного теста с 5 радио модулями..Пока не уверен будет ли работать так
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am
Благодарил (а): 4 раза
Поблагодарили: 43 раза

Re: nRF24L01+ через USB

Сообщение ser009 » Чт дек 26, 2013 11:46 am

MaksMS82
Сообщения: 422
Зарегистрирован: Ср сен 05, 2012 7:30 am
Откуда: Киров
Благодарил (а): 0
Поблагодарили: 70 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение MaksMS82 » Чт дек 26, 2013 12:19 pm

Да-да ,бываю там иногда .

Кстати, Так как пришлось сильно вникать в работу nRF24L01 выяснил что основная разница nRF24L01 и nRF24L01+ это в отсутствии у nRF24L01 скорости 250кб/с.
По крайней мере на этом основан анализ используемого приемника: при попытке установить скорость 250кб сравниваются данные из регистра с данными,которые были установлены,если они отличаются ,то это модель nRF24L01 без плюса
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение sergejey » Чт дек 26, 2013 12:54 pm

MaksMS82, я что-то всё равно не могу понять ограничение по количеству устройств :) Если устройство передаёт пакет с сообщением, то какая разница сколько устройств эти пакеты генерирует? Или там предусмотрена маршрутизация и устройства передают данные между собой по маршруту? Тогда я могу понять, т.к. пройденный маршрут должен будет храниться в пакете. Опять же, это имеет смысл, если устройства расположены так далеко от центрального сборщика информации, что он не может их "услышать" без промежуточных ретрансляторов.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
MaksMS82
Сообщения: 422
Зарегистрирован: Ср сен 05, 2012 7:30 am
Откуда: Киров
Благодарил (а): 0
Поблагодарили: 70 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение MaksMS82 » Чт дек 26, 2013 1:06 pm

Аппаратно поддерживается 6 "труб" -насколько я понял для этих 6 "труб" в радиомодуле имеют свои буфера обмена .Более 6 соединений нельзя организовать идеально,чтобы данные не потерялись.
Можно на одну трубу посадить не одно,а например два устройства,но надежность думаю будет не очень хорошая..

Есть идея,что 2 клиента могут иметь одинаковые настройки,но например в структуре данных у них будут разные идентификаторы,то работать это будет,если клиенты будут связываться с сервером в разное время ,например раз в минуту..
Возможно такой эксперимент позже проведу.

Хотя даже при обычном режиме работы с 5 клиентами,если клиенты в цикле постоянно долбят сервер данными,то сервер начинает терять принятые данные и теряются данные для отправки,если клиентов больше одного..
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение sergejey » Чт дек 26, 2013 2:37 pm

MaksMS82 писал(а):Аппаратно поддерживается 6 "труб" -насколько я понял для этих 6 "труб" в радиомодуле имеют свои буфера обмена .Более 6 соединений нельзя организовать идеально,чтобы данные не потерялись.
Можно на одну трубу посадить не одно,а например два устройства,но надежность думаю будет не очень хорошая..

Есть идея,что 2 клиента могут иметь одинаковые настройки,но например в структуре данных у них будут разные идентификаторы,то работать это будет,если клиенты будут связываться с сервером в разное время ,например раз в минуту..
Возможно такой эксперимент позже проведу.

Хотя даже при обычном режиме работы с 5 клиентами,если клиенты в цикле постоянно долбят сервер данными,то сервер начинает терять принятые данные и теряются данные для отправки,если клиентов больше одного..
Мне кажется, что это всё можно порешать на уровне протокола. Эти ж модули работают как трансиверы, т.е. можно отправлять пакет и ждать в ответ пакет с подтверждением о получении ну и "долбить" повторно через указанный промежуток, если подтверждение не получено и не итекло "время жизни" оригинального пакета -- так решается проблема надёжности. А в самом пакете да, передавать идентификатор устройства. Тогда на один канал можно хоть тыщу устройств настраивать. Проблема только в интенсивности передачи будет -- если они посылают данные постоянно, то чем меньше устройств, тем меньше коллизий. Я у себя делают на 433Mhz передатчиках, так вообще не парюсь особо -- посылаю пакеты раз в несколько минут с разных устройств, но мне не критично, чтобы каждый пакет дошёл (хоть потери и крайне редки), так что даже насчёт обратной связи и подтверждения не заморачиваюсь.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
MaksMS82
Сообщения: 422
Зарегистрирован: Ср сен 05, 2012 7:30 am
Откуда: Киров
Благодарил (а): 0
Поблагодарили: 70 раз
Контактная информация:

Re: nRF24L01+ через USB

Сообщение MaksMS82 » Чт дек 26, 2013 2:44 pm

В 100 % реальном времени работает идеально только при одном клиенте-сервере на моих опытах
Но чтение датчиков не нужно в реальном времени, даже 1 раза 1 секунду хватит.Только вот реакция на отправленную команду будет заметнее.Есть один вариант,что сделать можно,чтобы слушал клиент постоянно,а отправлял раз в секунду или реже..
Все таки тут круче ,чем 433 мгц,которые я тоже освоил по своему :) Тут - полноценный двухсторонний обмен..
Ответить