Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Автоматика и аппаратура связи Дистанционное и непосредственное управление исполнительными механизмами, сотовая, а также радиосвязь.

Ответ
Опции темы
Непрочитано 11.12.2014, 12:44   #1101
dmalashe
Частый гость
 
Регистрация: 08.12.2014
Сообщений: 18
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
dmalashe на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

niXto где то выше вы писали что nff24L01+ из режима передачи сам выходит в режим приема. Это получается что бит PRIM_RX сам в 1 после передачи устанавливается? Или я что то не так понял?
Реклама:
dmalashe вне форума   Ответить с цитированием
Непрочитано 11.12.2014, 15:34   #1102
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Ничего не устанавливается, это автоматическое переключение
После приёма-неприёма подтверждения можно не меняя никаких настроек передавать следующий пакет
niXto вне форума   Ответить с цитированием
Непрочитано 11.12.2014, 16:43   #1103
dmalashe
Частый гость
 
Регистрация: 08.12.2014
Сообщений: 18
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
dmalashe на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Какие быты надо выставить чтобы включить режим Enhanced ShockBurst? (nrf24L01+)
dmalashe вне форума   Ответить с цитированием
Непрочитано 22.12.2014, 23:08   #1104
onivan
Прохожий
 
Регистрация: 24.02.2009
Адрес: Ровно
Сообщений: 6
Сказал спасибо: 12
Сказали Спасибо 8 раз(а) в 1 сообщении
onivan на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Здравствуйте!

У меня задача построить на nrf24l01p двухстороннюю связь между базой и четырьмя ведомыми блоками. Это нужно, чтобы сделать беспроводной вариант вот этой системы: описание http://www.radiokot.ru/circuit/digital/game/40/, видео логики работы системы
Видео:


Код (для проводного варианта) https://bitbucket.org/onivan/brags/s...in.c?at=master

Все блоки управляются МК Atmega8.

Сейчас продумываю оптимальный алгоритм связи между блоками.
Практически мне достаточно передавать 1 байт, мне главное скорость, но намного больше -- надежность.
Передавать мне нужно всего 1-2 бита:
- от центрального блока какой светодиод зажечь - красный или зеленый (одновременно по игре они не включаются).
- от блоков команд только состояние одной кнопки.

Железную часть я уже изготовил, теперь занялся разработкой прошивки, поэтому изучаю все библиотеки для этого радиомодуля, смотрю, как лучше его использовать. Предварительно, для проверки работоспособности, в каждый блок залил тестовые прошивки. Вроде бы все блоки передают и принимают. Как везде советуют, припаял конденсаторы (47мФ) прямо к + и - модулей (на фотке еще их нету).

Сначала я думал построить систему так:
- база PRX ESB + ack with payload.
- все блоки команд в режиме PTX
- с постоянной частотой все PTX передают свое состояние и в ответ с пейлоадом получают команды.
Но потом понял, что наверное, так не получится: слишком сложно, и пакеты от разных блоков могут теряться, невозможность работы такой системы с большой частотой для достижения быстрой реакции системы.

В проводном варианте МК просто следит не изменилось ли состояние на любом из 4-х входах одного порта (PORTD). И затем уже выделяет на каком именно (ссылка на соотв. строку кода: https://bitbucket.org/onivan/brags/s...=master#cl-478).
В беспроводном варианте я хочу просто заменить регистр порта переменной, оставив всю остальную логику неизменной. Перед каждым игровым циклом подсистема радио будет заполнять эту переменную состоянием кнопок от всех блоков, как если бы они были подключены по проводам к 4-м пинам МК.

Сейчас я думаю о такой схеме:
- все блоки работают в режиме PRX
- не знаю, что лучше: включать или нет w_ack_payload ?
- все работают на одной трубе, а номер комманды кодировать в передаваемых пакетах.
- или для каждой команды своя труба?

Каждый блок переходит в режим PTX в следующих случаях:
- как только какая-то команда жмет на кнопку, база, по прерыванию на полученный от этого блока пакет, переходит в режим PTX и передает всем блокам сменить состояние светодиодов.
- на базе ведущий игры меняет режим игры и также передает всем блокам сменить состояние светодиодов соответственно.
- номер команды, нажавшей кнопку первой, закодирован в пакете (или в номере трубы, если использовать разные трубы).

Главное, что может быть плохо, это если несколько комманд нажмут кнопки почти одновременно, то пакет от первой команды может не дойти или дойти позже. Правда, это не критично если разница будет в несколько миллисикунд. Но, если задержки будут более заметными, то для этой команды красный светодиод засветится з видимой задержкой, что вызовет законную претензию, что система нечестно определила кто первый нажал.

Как это разрулить? Об этом я сейчас и думаю.
Вариант 1:
База в режиме PTX по очереди передает пакеты с кодами о состоянии светодиодов на все блоки команд с подтверждением, а все блоки в режиме PRX в ответ отсылают свое состояние кнопок. Если какой-то блок не отзывается, он помечается как неучавстующий в игре (такое может быть, что игра проводится между 2-мя или 3-мя командами). Или предусмотреть возможность настройки перед игрой количества команд. Но если получится, что связь с одними блоками будет лучше, чем с другими и от них пакеты будут приходить реже?
Еще проблемы этого варианта:
- нажатия фиксируются не одновременно для всех.
- может произойти, что в одно и то же время база передает запрос о состоянии и один из блоков также передает.

Вариант 2:
- все блоки (и база, и блоки кнопок) ожидают в режиме PRX
- как только какая-то команда нажимает кнопку, она посылает всем блокам и базе (все работают на одной трубе) пакет о том, что произошло нажатие кнопки. Остальные блоки, получив этот пакет не могут перейти в режим передачи до тех пор, пока от базы не поступит пакет с кодом соответствующей комманды разрешающей это. При этом база получив этот же пакет посылает пакет о том, какие светодиоды зажечь.
Здесь, в принципе, та же проблема: не все боки могут принять этотпакет.

Во всем этом меня волнует надежность. Как сделать чтобы гарантированно был обмен закодированными инструкциями в нужной (честной) последовательности с достаточно большой скоростью реакции?

Я думаю, что нужно также подумать о том, чтобы периодически (раз в секудну или чаще?) база пинговала все блоки и соответственно зажигала красный светодиод у себя, если какой-то блок не откликается.

Пожалуйста, поделитесь опытом работы с этими радимодулями применительно к этой задаче. По какому пути мне пойти?

Я так понимаю, что нужно время от времени перезапускать модули или загружать в них конфигурацию, которая может слететь, например от наводок.

Просмотрел эту тему на сколько смог (в режиме 40 постов на страницу). Если пропустил, где подобное обсуждалось, прошу ткнуть носом.

Или может есть подобный проект, в котором можно подсмотреть код такого обмена? Я на разых опенсорс репах типа github и bitbucket просмотрел много проектов, но подходящего не увидел. Может пропустил.

Фотки базового блока и блоков команд:
Миниатюры:
Нажмите на изображение для увеличения
Название: IMG_0236.jpg
Просмотров: 56
Размер:	490.0 Кб
ID:	73587   Нажмите на изображение для увеличения
Название: IMG_0241.JPG
Просмотров: 49
Размер:	596.8 Кб
ID:	73588   Нажмите на изображение для увеличения
Название: IMG_0123.JPG
Просмотров: 69
Размер:	714.0 Кб
ID:	73589  

Нажмите на изображение для увеличения
Название: IMG_0134.JPG
Просмотров: 43
Размер:	442.0 Кб
ID:	73590   Нажмите на изображение для увеличения
Название: IMG_0235.JPG
Просмотров: 40
Размер:	367.0 Кб
ID:	73591  

Последний раз редактировалось onivan; 22.12.2014 в 23:12.
onivan вне форума   Ответить с цитированием
Непрочитано 23.12.2014, 13:19   #1105
wlad773
Прописка
 
Аватар для wlad773
 
Регистрация: 06.05.2008
Адрес: Пятигорск
Сообщений: 222
Сказал спасибо: 11
Сказали Спасибо 17 раз(а) в 13 сообщении(ях)
wlad773 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Для хорошей связи в комнате подойдут 30м блоки, если на улице, то надо ставит 1км. В условиях плотной ЖБ застройки 100-150м обеспечат, в поле обещают 1,1км. Для каждого блока лучше использовать свой поток, иначе придется бороться с коллизиями. Можно сканировать каждую кнопку. При 250кБ/с на отправку 1 короткого пакета уходит 1-3мСек, а на кнопку более 10 раз в Сек. не нажмешь. АСК конечно лучше использовать, хотя многие и без него как-то обходятся.
wlad773 вне форума   Ответить с цитированием
Сказали "Спасибо" wlad773
onivan (23.12.2014)
Непрочитано 24.12.2014, 12:24   #1106
onivan
Прохожий
 
Регистрация: 24.02.2009
Адрес: Ровно
Сообщений: 6
Сказал спасибо: 12
Сказали Спасибо 8 раз(а) в 1 сообщении
onivan на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Спасибо за советы. Работать блоки будут в пределах одного в помещения. Буду что-то пробовать.
onivan вне форума   Ответить с цитированием
Непрочитано 25.12.2014, 19:31   #1107
wlad773
Прописка
 
Аватар для wlad773
 
Регистрация: 06.05.2008
Адрес: Пятигорск
Сообщений: 222
Сказал спасибо: 11
Сказали Спасибо 17 раз(а) в 13 сообщении(ях)
wlad773 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Все чаще стали появляться модули с керамическими антеннами. http://www.ebay.com/itm/1Pcs-2-4G-NR...item4189c47e8e
Кто знает как они по сравнению с SMA антеннами.
wlad773 вне форума   Ответить с цитированием
Непрочитано 28.12.2014, 23:13   #1108
Ubludogg
Прохожий
 
Регистрация: 04.05.2008
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Ubludogg на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Привет всем!
помогите бестолковому нужна помощь
есть три модуля, два передатчика один приемник у одно передатчика адрес "1" у второго "2"
приемник настроил записал "1" в 0А, "2" в 0В количество байт "Х" в 11 и 12
канал есно у всех трех одинаковый скорости и прочие (включено "доставка")
КАК ПРОЧИТАТЬ то что прилетело от второго передатчика в приемник по адресу "2"
какая последовательность команд?
алгоритм следующий. приемник настроен ждет прерывания по приему, пришел какойто пакет сработало прерывание, потом проверка статуса и сброс его, прочитали увидели что в регистре 07 бит 1=0 прочитали буфер адреса "1" командой 61 если бит 1=1 то надо прочитать буфер адреса "2" какие команды надо писать????
Ubludogg вне форума   Ответить с цитированием
Непрочитано 28.12.2014, 23:14   #1109
Ubludogg
Прохожий
 
Регистрация: 04.05.2008
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Ubludogg на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от wlad773 Посмотреть сообщение
Все чаще стали появляться модули с керамическими антеннами. http://www.ebay.com/itm/1Pcs-2-4G-NR...item4189c47e8e
Кто знает как они по сравнению с SMA антеннами.
нормально пользую уже пару недель, полет нормальный
Ubludogg вне форума   Ответить с цитированием
Непрочитано 30.12.2014, 09:49   #1110
wlad773
Прописка
 
Аватар для wlad773
 
Регистрация: 06.05.2008
Адрес: Пятигорск
Сообщений: 222
Сказал спасибо: 11
Сказали Спасибо 17 раз(а) в 13 сообщении(ях)
wlad773 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Ubludogg, ИМХО. При чтении статуса биты3:1 указывают № потока от которого приняты данные их и читаешь. Опять проверяешь статус 3:1 будет указан другой № потока. Если пакеты длинные и не помещаются в 32 байта, то пожалуй будут теряться, пока не освободишь буфер.

Сообщение от Ubludogg Посмотреть сообщение
нормально пользую уже пару недель, полет нормальный
Я не сомневаюсь что все нормально. Расскажи в каких условиях какую дальность обеспечивают. Влияет ли расположение антенны на дальность, Обеспечит ли 1100м по прямой?
wlad773 вне форума   Ответить с цитированием
Ответ

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто работал с драйвером DM132? sdsrem Микроконтроллеры, АЦП, память и т.д 0 06.07.2010 21:37
Кто нибудь имеет описание, как обращаться к KEELOQовскому регистру в PIC12F635/PIC16F636? Make_Pic Микроконтроллеры, АЦП, память и т.д 1 07.05.2010 12:53
Кто нибудь работал с MUST II System ? trilobit Производственное оборудование 0 28.04.2010 11:51
Кто нибудь имел дело со шрифтами? Djakovskij Микроконтроллеры, АЦП, память и т.д 8 18.02.2010 20:35
Кто работал с Ad7714? ALEKSEY188 Микроконтроллеры, АЦП, память и т.д 18 11.02.2010 03:54


Часовой пояс GMT +4, время: 03:25.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot