nRF24L01+ пользовательский блока на Си

Создаем свой блок. Вопросы, помощь знатоков.
ARDO
Рядовой
Сообщения: 2
Зарегистрирован: 10.03.2017{, 00:22}
Репутация: 0

nRF24L01+ пользовательский блока на Си

#341

Сообщение ARDO » 31.03.2017{, 23:20}

sser,
Здравствуйте.  Можно пример вашего проекта? Много времени потратил и ничего неполучается.
Немогу понять что не так делаю. Заранее спасибо.
Последний раз редактировалось ARDO 31.03.2017{, 23:23}, всего редактировалось 1 раз.

Гость

nRF24L01+ пользовательский блока на Си

#342

Сообщение Гость » 02.04.2017{, 22:35}

У меня тоже не получалось запаял конденсаторы по питанию 3,3В прямо на каждый модуль  220мкФ и 0.1 мкФ и всё заработало с пол пинка, примеры сам брал в блоках пользователей.
http://flprog.ru/load....-1-0-76
Последний раз редактировалось Гость 02.04.2017{, 22:37}, всего редактировалось 1 раз.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#343

Сообщение Oleg_UA » 03.04.2017{, 00:36}

Слимпер подскажите почему Вы отказались от использования встроенной в библиотеку функции подтверждения доставки пакета

bool ok =radio.write( &clientnf, sizeof(clientnf) );

Были проблемы?

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

nRF24L01+ пользовательский блока на Си

#344

Сообщение Слимпер » 03.04.2017{, 18:03}

Oleg_UA писал(а):Слимпер подскажите почему Вы отказались от использования встроенной в библиотеку функции подтверждения доставки пакета bool ok =radio.write( &clientnf, sizeof(clientnf) );

Были проблемы?
Давно это было, точно не помню.
Но по моему дело было в том, что когда в схемы больше 2 двух устройств, становится не понятно кто из них получил пакет. А значит уже нет смыла это использовать.
Все выше описано касается первой версии блоков, в версии RF24Network все несколько по другому.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#345

Сообщение Oleg_UA » 03.04.2017{, 20:27}

Слимпер писал(а):Но по моему дело было в том, что когда в схемы больше 2 двух устройств, становится не понятно кто из них получил пакет. А значит уже нет смыла это использовать.
Если есть возможность попробуйте с изменённым блоком, у меня нет сейчас этих модулей.
Один блок как передатчик и как приёмник для связи с пятью модулями одновременно.Обмен между модулями идёт по своему идентификатору что гарантирует точность доставки указанному клиенту и вывод результата на выход Tx_OK.
Network тяжела для слабых контролеров а master то что нужно когда ресурсы ограничены  .
Гляньте блок может принцип понравится и поможет в дальнейших улучшениях, надеюсь не умрёт библиотека master.
Вложения
Test_nrf.rar
(165.47 КБ) 65 скачиваний
Последний раз редактировалось Oleg_UA 04.04.2017{, 19:13}, всего редактировалось 1 раз.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#346

Сообщение Oleg_UA » 03.04.2017{, 21:47}

ARDO писал(а):Может у кого та  есть пример как подключить кнопку  к клиенту и реле к серверу? Несколько дней пробую и не получаетса. в тестовых режимах модули работают хорошо
В примере три кнопки и три реле, распиновка модуля написана для nano
Заодно и протестите изменённый блок
Вложения
4303643.rar
(404.04 КБ) 66 скачиваний
Последний раз редактировалось Oleg_UA 04.04.2017{, 13:48}, всего редактировалось 1 раз.

ashil
Рядовой
Сообщения: 2
Зарегистрирован: 07.09.2016{, 12:24}
Репутация: 0

nRF24L01+ пользовательский блока на Си

#347

Сообщение ashil » 19.05.2017{, 18:00}

Протестил эти блоки. Все работает, когда 2 модуля. У меня задача, две кнопки на разных модулях и модуль приемника. В этом случае прав Слимпер -
 Но по моему дело было в том, что когда в схемы больше 2 двух      устройств, становится не понятно кто из них получил пакет. А значит  уже нет смыла это использовать.

Выключаю модуль приемника, жму кнопку CD на 6 светится, выключаю второй передающий модуль, CD гаснет. Т.е. контролируется связь с любым модулем.
Ну а если не проверять связь то все работоспособно в моем случае.
Спасибо за блоки, пригодились.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#348

Сообщение Oleg_UA » 19.05.2017{, 18:43}

ashil писал(а):В этом случае прав Слимпер - Но по моему дело было в том, что когда в схемы больше 2 двух      устройств, становится не понятно кто из них получил пакет. А значит  уже нет смыла это использовать.
В блоках от Слимпера передача и приём идут по одному ID поэтому и не понятно, в моих блоках для связи с каждым модулем используется свой ID, в этом случае отправка идёт конкретному модулю а не всем сразу.

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

Если есть желание поковырять могу выложить свои блоки.
У меня сделано: один основной блок с настройками ID и отдельные блоки для связи с каждым модулем,  в котором через параметр выбирается номер удалённого модуля с которым этот блок связан.

ashil
Рядовой
Сообщения: 2
Зарегистрирован: 07.09.2016{, 12:24}
Репутация: 0

nRF24L01+ пользовательский блока на Си

#349

Сообщение ashil » 19.05.2017{, 18:56}

Oleg_UA писал(а):Если есть желание поковырять могу выложить свои блоки.У меня сделано: один основной блок с настройками ID и отдельные блоки для связи с каждым модулем,  в котором через параметр выбирается номер удалённого модуля с которым этот блок связан.
У меня опыта мало по блокам. Но желание есть.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#350

Сообщение Oleg_UA » 19.05.2017{, 18:58}

ashil писал(а):Но желание есть.
Тогда добавлю максимум комментариев и выложу

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#351

Сообщение Oleg_UA » 19.05.2017{, 20:53}

В архиве блоки и четыре примера в которых настроил блоки для связи между собой, в блоках добавил описание.
Вложения
NRF.rar
(213.45 КБ) 84 скачивания

Oleg1345140
Лейтенант
Сообщения: 539
Зарегистрирован: 06.09.2015{, 07:09}
Репутация: 1
Откуда: Курган

nRF24L01+ пользовательский блока на Си

#352

Сообщение Oleg1345140 » 21.05.2017{, 14:22}

Добрый день, проблема в следующем при попытке скомпилировать проект с любым из данных пользовательских блоков получаю сообщение о том что "неудалось выгрузить библиотеку <<RF24-master>>"  и следующее сообщение "не найдены следующие библиотеки RF24.hnRF24L01.h" данные сообщения выдает  FLProg. Библиотека добавлена.

Добавлено (21.05.2017, 14:22)
---------------------------------------------
Проблема не актуальна, если у кого возникнет, папку с библиотекой нужно добавлять путям копирования а не через ИДЕ ардуины.

Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 59
Откуда: Гондурас

nRF24L01+ пользовательский блока на Си

#353

Сообщение Dev1 » 21.05.2017{, 15:08}

Oleg1345140 писал(а):Проблема не актуальна, если у кого возникнет, папку с библиотекой нужно добавлять путям копирования а не через ИДЕ ардуины.
В настройках IDE поставьте свой путь. По умолчанию она кидает ...\Documents\Arduino\libraries\
Вообще плохая идея использовать стороннюю программу внутри другой.
Win10-64 FLProg v7.5.2 Portable :fie:

jet-belan
Рядовой
Сообщения: 75
Зарегистрирован: 17.04.2016{, 10:09}
Репутация: 0

nRF24L01+ пользовательский блока на Си

#354

Сообщение jet-belan » 21.05.2017{, 23:34}

Oleg1345140 писал(а):Проблема не актуальна, если у кого возникнет, папку с библиотекой нужно добавлять путям копирования а не через ИДЕ ардуины.
спасибо! Как раз была эта проблема, всё исправилось)))

Аватара пользователя
СЛОН0077
Рядовой
Сообщения: 16
Зарегистрирован: 07.02.2016{, 22:30}
Репутация: 0
Откуда: ГОМЕЛЬ

nRF24L01+ пользовательский блока на Си

#355

Сообщение СЛОН0077 » 29.05.2017{, 18:12}

Олег подключил твой блок NRF.rar(213Kb). В ПЕРЕДАТЧИКЕ УСТАНОВИЛ ГЕНЕРАТОР С ЧАСТОТОЙ ИМПУЛЬСОВ 1 СЕК,СЧЕТЧИК. С ПРИЕМНИКА ВЫВЕЛ ЗНАЧЕНИЕ НА ДИСПЛЕЙ.В СРЕДНЕМ СВЯЗЬ ДЛИТСЯ СЕКУНД 120 ЗАТЕМ СВЯЗЬ ПРОПАДАЕТ.ЕСЛИ ПЕРЕЗАГРУЗИТЬ ПЕРЕДАТЧИК НИЧЕГО НЕ МЕНЯЕТСЯ.
ЕСЛИ ПЕРЕЗАГРУЗИТЬ ПРИЕМНИК СВЯЗЬ ВОССТАНАВЛИВАЕТСЯ НА СЕКУНД 120.РАЗНИЦЫ РАБОТЫ ИЗ- ЗА РАССТОЯНИЯ МЕЖДУ ПРИЕМНИКОМ И ПЕРЕДАТЧИКАМ НЕ ЗАМЕТИЛ
Юрий.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#356

Сообщение Oleg_UA » 29.05.2017{, 20:27}

СЛОН0077, попробовал на двух модулях:один без усилителя, второй с усилителем и антенной, таймер в блоке (timer_send) установил 1000, на расстояние  около метра.
15 минут без единой потери или сбоя.
Единственная проблема это перегрев AMS 1117 питающая модуль с усилителем.
Проверьте питание и наличие кондёра после стабилезатора обязательно.

Аватара пользователя
СЛОН0077
Рядовой
Сообщения: 16
Зарегистрирован: 07.02.2016{, 22:30}
Репутация: 0
Откуда: ГОМЕЛЬ

nRF24L01+ пользовательский блока на Си

#357

Сообщение СЛОН0077 » 29.05.2017{, 23:57}

Олег,по железу все правильно подключено тестил на нем твои блоки из примера три кнопки три реле 2 недели никаких проблем не было.у меня тоже один модуль с усилителем  другой без,только когда  подключал sd карту при подключении контакта miso соединение разрывалось, если знаешь причину подскажи.
описываю, как я подключал твои блоки,может в этом проблема:
в пояснении ты пишешь ,что настроил блоки для связи между собой.
я часа два пытался что то передать,принять ничего не получилось,тогда я скопировал NRF MASTER  с твоими настройками,и установил его в передатчик и приемник,в новом проекте.
P.S пока писал письмо, приемник произвольно включился и уже работает 6 минут,может все наладилось.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#358

Сообщение Oleg_UA » 30.05.2017{, 01:57}

СЛОН0077, Настройка заключается в выборе идентификаторов в блоке NRF MASTER
//Идентифекаторы (ID) труб для связи с 5-ю. модулями
const uint64_t pipe_1=0xF0F0F0F0**LL;
const uint64_t pipe_2=0xF0F0F0F0**LL;
const uint64_t pipe_3=0xF0F0F0F0**LL;
const uint64_t pipe_4=0xF0F0F0F0**LL;
const uint64_t pipe_5=0xF0F0F0F0**LL;
Отличатся должны только последними значениями, в примере я вписал ID так что все блоки имеют только одним совпадающий ID у каждого свой.

В блоках клиентов нужно в параметре выбрать (N_pipe номер трубы) с которым этот блок работает, для каждого удалённого модуля свой отдельный блок.
Не придумал способ как упростить настройку мастера для общего применения а писать инструкции я совсем не мастак
СЛОН0077 писал(а):тогда я скопировал NRF MASTER  с твоими настройками,и установил его в передатчик и приемник,в новом проекте.
Копировать можно если использовать только два модуля, если больше тогда будут сбои с доставкой пакетов (не понятно от кого пришло и кому отправлено).

На SPI можно садить много устройств разница только в том что они не должны работать одновременно для чего и нужны пины: "slave select" отвечает за выбор ведомого а "serial clock" за тактирование. 
Теоретически sd ридер без команды от мастера не должен слать что либо, возможно проблема  в подтягивающих резисторах которые садят линию или скорее всего не согласован режим тактирования.
У меня нет опыта работы с SD, поэтому не смогу подсказать точнее.

Аватара пользователя
СЛОН0077
Рядовой
Сообщения: 16
Зарегистрирован: 07.02.2016{, 22:30}
Репутация: 0
Откуда: ГОМЕЛЬ

nRF24L01+ пользовательский блока на Си

#359

Сообщение СЛОН0077 » 30.05.2017{, 18:53}

Олег,по железу все правильно подключено тестил на нем твои блоки из примера три кнопки три реле 2недели никаких проблем небыло.у меня тоже один модуль с усилителем  другтой без,только когда  подключал sd карту при подключении контакта miso соединение разрывалось, если знаеш причину подскажи.
описываю, как я подключал твои блоки может в этом проблема:

Добавлено (30.05.2017, 16:03)
---------------------------------------------
Утром выпаял nrf c усилителем,и заменил на простую nrf,все отлично работает,
это уже вторая nrf c усилителем которая вышла из строя,первая отработала несколько минут.
Олег,спасибо за блоки и за объяснения.

Добавлено (30.05.2017, 18:53)
---------------------------------------------
Утром выпаял nrf c усилителем,и заменил на простую nrf,все отлично работает,
это уже вторая nrf c усилителем которая вышла из строя,первая отработала несколько минут.
Олег,спасибо за блоки и за объяснения.

Аватара пользователя
Oleg_UA
Сержант
Сообщения: 115
Зарегистрирован: 07.01.2017{, 23:30}
Репутация: 6
Откуда: Днепр
Имя: Олег

nRF24L01+ пользовательский блока на Си

#360

Сообщение Oleg_UA » 30.05.2017{, 22:06}

СЛОН0077, чем смог, тем помог

Ответить

Вернуться в «Разработка пользовательских блоков»