Автоматика и аппаратура связи Дистанционное и непосредственное управление исполнительными механизмами, сотовая, а также радиосвязь. |
29.06.2015, 17:27
|
|
Прописка
Регистрация: 21.01.2010
Сообщений: 292
Сказал спасибо: 191
Сказали Спасибо 231 раз(а) в 112 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Сообщение от CRjnzhf
|
Я брал. Похоже там в натуре SE8R01.
|
Спасибо, я что то такое и предполагал. А то долблюсь в него, модуль что то отвечает но с даташитом на nRF24 никак не сходится,
Сообщение от CRjnzhf
|
Мои исходники выкладывать стыдно Но, если обещаете не смеяться...
|
Можете кинуть в личку я смеяться точно не буду, а буду очень благодарен.
PS. погуглив на тему SE8R01 увидел и эти самые модули и даташит
http://www.avrfreaks.net/sites/defau...F%E6%9C%AC.pdf
http://robotics.nethouse.ru/static/0...b03fde8183.pdf
Так что еще раз спасибо. пошел курить даташит.
Последний раз редактировалось lytnev; 29.06.2015 в 17:51.
|
|
|
|
30.06.2015, 11:06
|
|
Частый гость
Регистрация: 07.05.2008
Сообщений: 10
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Выложу только модуль, где происходит инициализация. Уж извиняйте - остальным только мозг забивать. Тем более, что там интересны только значения, записываемые в регистры модуля, да, возможно их последовательность.
Краткий комментарий - SE8R01_init вызывается сразу после инициализации мп, после нее идет инициализация модуля по даташиту от Нордика. Без SE8R01_init обмена нет, с SE8R01_init - есть.
Что хреново - если по именам регистров еще можно както догадаться об их назначении, то понять, что туда пишется и зачем... Я не смог! Потому и говорю, что полного даташита найти не удалось
Так что бооольшая просьба - если удастся наковырять, что там и зачем, - дать знать.
|
|
|
Сказали "Спасибо" CRjnzhf
|
|
|
03.07.2015, 21:42
|
|
Прописка
Регистрация: 09.08.2006
Адрес: Нижний Новгород
Сообщений: 148
Сказал спасибо: 98
Сказали Спасибо 48 раз(а) в 27 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Сообщение от OKF
|
Павел, извините за наглость, не могли бы вы выложить какой-нибудь рабочий проект, желательно на AVR? Просто хотелось бы как-то запустить, а потом уже экспериментировать. Сейчас же лыжи совсем не едут.
|
Могу предложить свои проекты, где связь точно работает. Для меги8. ТХ - передатчик, RX-приёмник. Есть комментарии. Но на вопросы могу не ответить, так как уже позабыл много
Вложения:
|
m8.zip (176.0 Кб, 177 просмотров) |
|
|
|
Эти 2 пользователя(ей) сказали Спасибо Den05 за это сообщение:
|
|
|
17.07.2015, 00:21
|
|
Частый гость
Регистрация: 17.07.2015
Сообщений: 18
Сказал спасибо: 4
Сказали Спасибо 18 раз(а) в 5 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Доброго уважаемые знатоки и не очень. NRF24L01+
Нарисовался вопрос по работе с трубами, не просто приёмник - передатчик, а использование всех 6 труб.
Согласно красивой картинке по даташиту мастеру присвоены адреса соответственно, на ней же стрелочки в обе стороны, значит должно работать в обе стороны и приём и передача, и авто подтверждения передачи:
Цитата:
|
uint8_t ADDR_NULL_SLAVE1[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE1 };
uint8_t ADDR_NULL_SLAVE2[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE2 };
uint8_t ADDR_NULL_SLAVE3[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE3 };
uint8_t ADDR_NULL_SLAVE4[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE4 };
uint8_t ADDR_NULL_SLAVE5[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE5 };
uint8_t ADDR_NULL_SLAVE6[] = { 0xE7, 0xE6, 0xE5, 0xE4, 0xE6 };
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P0, ADDR_NULL_SLAVE1, 5);
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P1, ADDR_NULL_SLAVE2, 5);
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P2, ADDR_NULL_SLAVE3,5);
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P3, ADDR_NULL_SLAVE4,5);
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P4, ADDR_NULL_SLAVE5,5);
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P5, ADDR_NULL_SLAVE6,5);
radio_module-›nrf24l01SetTxAddress(ADDR_NULL_SLAVE1);
// В ФУНКЦИИ nrf24l01SetRxAddress всё выше RG_RX_ADDR_P1 пишется только последний байт
|
Прописано автоподтверждение получения рпакета с обоих сторон и на мастере и на слейвах.
Собственно инициализация одинаковая по всем регистрам.
На приёмники адрес автоматически отправляется и присваивается в его
RX P0 и TX адреса:
Допустим жмакаем на кнопафку 2 на пульте и приёмнику который сейчас слухает отправляется адрес SLAVE2, он у себя прописывает его в RX P0 и TX:
Цитата:
|
radio_module-›nrf24l01SetRxAddress(RG_RX_ADDR_P0, ADDR_NULL_SLAVE2, 5);
radio_module-›nrf24l01SetTxAddress( ADDR_NULL_SLAVE2);
|
и начинает обмениваться уже с этим адресом. Ну и соответственно другие 5 кнопок так же отрабатывают.
Так вот собственно в чём проблема, жмём кнопку 2 и у нас в обе стороны всё работает, мастер слейву шлёт и слейв мастеру без проблем, всё стабильно срабатывает ни потерь не проблем.
А вот на всех остальных 1, 3-6 такой финт ушами не проходит. Мастер подтверждения получает при отправке слейву, а вот слейв если что то отправляет то пакеты доходят один из 20 или вообще не получает, на пропавших пакетах пакетах пишет превышено время ожидания подтверждения 1E.
Подскажите по адресации что я не верно делаю?? По даташиту по картинке получается правильно, но вот только с подтверждениями косяк какой то, или только слейвы подтверждения отправлять должны в таком случае? Или слейвы должны слать на адрес мастера P0? Что то я уже второй день эксперементирую не могу понять это дело, но самое странное, что P1 всё прекрасно пашет в обе стороны.
Чего нужно добиться:
Мастер шлёт запросы слейвам по очереди "типа онлайн?"
если есть авто подтверждение то считается что такой то слейв онлайн
слейвы шлют свои данные
и проверяет по автоподтверждению приняты ли данные.
Если использовать просто приёмник - передатчик с одинаковыми адресами всё работает, как только включаешь трубы начинается засада.
P.S› Готовые библиотеки использовать не могу, всё это на XMega запихивается, а под них не нашёл ни чего работающего, пришлось своё всё писать. Дошёл до 62 страницы данного топика, пока ни чего не нашёл.
Вопрос снят, БАЙТЫ АДРЕСА ЗАПИСЫВАЮТСЯ ОТ МЛАДШЕГО К СТАРШЕМУ!!!!
То есть должно быть примерно так:
Цитата:
|
uint8_t ADDR_NULL_SLAVE1[] = { 0xE0, 0xE6, 0xE5, 0xE4, 0xE7 };
uint8_t ADDR_NULL_SLAVE2[] = { 0xE1, 0xE6, 0xE5, 0xE4, 0xE7 };
uint8_t ADDR_NULL_SLAVE3[] = { 0xE2, 0xE6, 0xE5, 0xE4, 0xE7 };
uint8_t ADDR_NULL_SLAVE4[] = { 0xE3, 0xE6, 0xE5, 0xE4, 0xE7 };
uint8_t ADDR_NULL_SLAVE5[] = { 0xE4, 0xE6, 0xE5, 0xE4, 0xE7 };
uint8_t ADDR_NULL_SLAVE6[] = { 0xE5, 0xE6, 0xE5, 0xE4, 0xE7 };
|
Последний раз редактировалось gavru; 18.07.2015 в 03:26.
|
|
|
|
02.08.2015, 03:27
|
|
Прохожий
Регистрация: 31.07.2015
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Здравствуйте, уважаемые!
Я прочел всю тему.
Спасибо всем кто принимал участие - в ряде постов были весьма важные и полезные мелочи, которые самостоятельно узнавать можно было бы очень долго.
Я работаю с СТМ32ф103, сейчас в текущем проекте использую 24л01+
Уже есть готовый прототип с, в целом, удовлетворяющими меня характеристиками.
В конечном некоем устройстве имеются ограничения по стоимости, объему железа в корпусе и потреблению питания.
Засим был выбран смд модуль нрф уже распаянный, из Китая. Также интересовался "черными соплями" похожими на нрф24л01 (уже была фото в этой теме). По описанию оказалось что они действительно только похожи на нфр24, но не совместимы. И не было уже готовой версии для мощной передачи (+lna + power amplifigher). Но все равно настораживают отсутствие компонентов на плате, где под них вытравлены и пропаяны пяточки.
Описание системы:
Устройства могут как общаться между собой, так и принимать централизованные команды от пульта. Среднее время нерпрерывной работы устройства - 2 часа. Далее - идет на подзарядку. За это время возможно несколько комманд по радио.
Единица работы - 0.03 сек. все что больше - не имеет значения.
т.е. если комманда не смогла передаться за 30 мсек то дальнейшее ее получение уже не имеет смысла.
Наилучшее решение - при инициировании комманды передатчик активно срет в эфир комманду на протяжении 30 мсек, в каждом приемнике присутствует таймаут от предыдущей передачи. принятая с промежутком меньше 0.03 сек не будет учтена.
30 мсек это некое относительное значение для реакции человека
Команды осуществляются сознательно, по воле человека.
Никаких подтверждений, ретрансмитов. В окончательной версии - все отрабатывается в промежутке 0.03 сек (повторениями с засиранием эфира). в разработческой - все тестируется одиночными пакетами (отсылаем один раз - наблюдем надежность).
Сейчас идет доипиливание разработческой версии.
Скорость СПИ 9 мгц. Объем данных неизменен. 8 байт.
"Устройство-устройство". Имеет передачу данных по некоторому признаку. Связь односторонняя без подтверждения. Модули - китайская разводка нрф24 в смд форм факторе (очень удобно запаять на уже существующу печатку), с вытравленной антенной на плате. В сборке и комплектации дают результативной дальности 3-4 метра. (Хотелось бы понимать как дальность можно увеличить). Проводочки... Или фильтры по питанию...
"Пульт-устройства". Имеет 9 кнопочный пульт для различных команд.
Пульт имеет нрф с усилителем (тот который по утверждениями дает 1100 мэ) и в данном проекте предназначен для односторонней связи пульт - устройства. Все устроства. Т.е. идет бродкаст на все и вся. Сигнал повторяется несколько раз (для надежности). На каждом приемнике присутствуют функции исключения повторных сигналов в течении некоего периода времени.
Казус1: были куплены для передачи "пульт-устройства" смд модули с PA + LNA. С антенной на вайфай. В процессе тестирования с антенной дало 40 метров на открытом пространстве... Но затем при тестировании в доме (‹ 10 метров) были выявлены неоднозначности приема при различном повороте вайфайной антенны. Даже в 5 метрах при некотором повороте удавалось получить вероятность прихода сигнала лишь 1 из 10. При некоторых же иных - давало много лучшую надежность.
Но затем, при откручивании антенны (полном исключении из контура), было получено значительное улучшение качества сигнала от передатчика (ПА+ЛНА) к приемнику (НРФ на плате). С лучшими характеристиками в замкнутом пространстве (комнате).
Вопрос: почему исключение антенны может давать боле устойчивый сигнал от приемника?
UPD1: сигнал без антенный действительно более устойчив но на большом расстоянии.
255 кбитс дало 10 метров "устройство" - "устройство" на открытой местности. целевое устройство на асфальте, передающее - в руках. и 45 и ее чуть чуть метров "пульт" - "устройство" при тех же условиях.
1 мбитс дало 8 метров и 38 соответственно. Также менее выражен эффект неустойчивого сигнала с антенной на небольшом расстоянии.
Пакеты передавались на максимальной мощности, однократно без подтверждения.
Последний раз редактировалось Zyx_ua; 02.08.2015 в 19:12.
Причина: добавлен UPD1
|
|
|
|
19.09.2015, 10:49
|
|
Частый гость
Регистрация: 13.05.2011
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Сообщение от Den05
|
Могу предложить свои проекты, где связь точно работает. Для меги8. ТХ - передатчик, RX-приёмник. Есть комментарии. Но на вопросы могу не ответить, так как уже позабыл много
|
Здравствуйте -меня заинтересовал ваш проект -есть возможность скинуть схему если есть видео работы его .Да у меня проблема с фьюзами постоянно - если не трудно укажите какие установки .Большое спасибо вам.
|
|
|
|
19.09.2015, 11:32
|
|
Частый гость
Регистрация: 13.05.2011
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Здравствуйте Творцы- Вот уже просто рою в Инете боле 2 недель о работе блока NRF024L01 и просто в "0". А ищу вот в что. Нужна работа этих блоков в тренировочных стартах - то есть 1 блок на старте 2 на финише , 3 на дисплее или секундомере. 1-Старт сигнал через кнопку передается на секундомер, Финиш- сигнал передается на секундомер и на старт о с работке финиша , а секундомер принимает все минимум 2 команды с работке кнопок. Или проще минимум 3 блока передают по три команды кнопок и все эти 3 блока принимают все три команды кнопок . Вот и мучаюсь. Нарыл это http://davidegironi.blogspot.ru/2012...l#.Vf0OqfntlBc но тут 1 кнопка только а мне минимум 2 но 3 блока - 3 принимающий все команды.Спасибо за терпение к таким как мы. Мы просто воплощаем ваши творение - ТВОРЦЫ. Надеюсь в помощи . Прошиваю Тритоном. приобрел даже Ардуино для этого. Помогите проектом. Да и проблема у меня с установками фьюзов всегда - просто беда. Буду рад и от видео ,картинок.
|
|
|
|
19.09.2015, 11:47
|
|
Частый гость
Регистрация: 13.05.2011
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Думаю самый простой вариант блок с минимум 2 кнопками и 2мя индикацией о с работке кнопок. Клонируем хоть 5 шт - все передают минимум 2 кнопки и все принимают минимум эти 2 кнопки. Это устраивает.
|
|
|
|
19.09.2015, 11:50
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
tikaru, у вас три варианта решения задачи:
1. Сделать все самостоятельно
2. Заплатить разработчику
3. Заинтересовать разработчика настолько, что он сам все бросит и займется вашим проектом за идею
Последний вариант очень даже возможен на этом форуме. Тут есть Eddy, который пишет за еду. Есть Скайнет, которого легко взять "на слабо". Дерзайте.
|
|
|
|
19.09.2015, 12:06
|
|
Частый гость
Регистрация: 13.05.2011
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Кто-нибудь работал с RF модулями nRF2401A?
Сообщение от Easyrider83
|
tikaru, у вас три варианта решения задачи:
1. Сделать все самостоятельно
2. Заплатить разработчику
3. Заинтересовать разработчика настолько, что он сам все бросит и займется вашим проектом за идею
Последний вариант очень даже возможен на этом форуме. Тут есть Eddy, который пишет за еду. Есть Скайнет, которого легко взять "на слабо". Дерзайте.
|
Да а слабо сотворить такое! Да чтобы пасылки команд четкие мин 50мс и приема индикации о с работке тоже 50мс.
Что есть такие?
А если честно но очень нуждаюсь помогите.
Мы просто воплощаем ваши творение - ТВОРЦЫ-где ВЫ?
Последний раз редактировалось tikaru; 19.09.2015 в 12:12.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:57.
|
|