Страница 3 из 23

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

Добавлено: 07.02.2016{, 22:37}
Слимпер
Skull писал(а):Конечно ))))
Если честно заканчиваются идеи. Разве, что где то аппаратная неисправность.
Пришлите фото подключения обоих плат.

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

Добавлено: 07.02.2016{, 23:15}
Skull
Вот. Нет вспышки в телефоне ) Пришлось фонариком светить

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

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

Добавлено: 08.02.2016{, 06:15}
Max
Skull писал(а):Нет вспышки в телефоне ) Пришлось фонариком светить
Вот, что значит тяга к знаниям! Работаем при фонарике и при свечах, как Михаил Васильевич Ломоносов!

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

Добавлено: 08.02.2016{, 09:53}
Сергей
Проверил блоки. У меня все запустилось с пол тычка. Сервак - МЕГА и 2 клиента УНО.
Вообще в проекте планируется 15 клиентов и 1 сервер. 
Слимпер, спасибо за работу! И сразу вопрос: не понял как от сервера строку передать? Режим - 1.

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

Добавлено: 08.02.2016{, 10:33}
Kocтик
Skull, А конденсаторы вы подпаяли?
NRF куплены у одного продавца?

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

Добавлено: 08.02.2016{, 11:18}
Слимпер
Сергей писал(а):И сразу вопрос: не понял как от сервера строку передать? Режим - 1.
Сейчас одновременно с запросом данных с клиента, на клиент отправляются данные находящиеся на входе блока сервер.

Кстати на всякий случай, вмести могут работать только блоки с одним типом данных, т.е. блок int и string  несовместимы

Не знаю, может  лучше сделать два разных входа для запроса данных и для передачи.
Но это позже, завтра я на 4 дня в командировку уезжаю.

Добавлено (08.02.2016, 11:18)
---------------------------------------------
Kocтик писал(а):, А конденсаторы вы подпаяли?
Skull,Может и правда стоит попробовать впаять конденсатор.
Я в первом посте писал рекомендацию про них.

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

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

Добавлено: 08.02.2016{, 12:25}
Skull
Да, кондеры на другой стороне плат, танталы по 22 мкф
Да, у одного 

Народ, вопрос- а может кто сможет  сотворить  модбас сквозь NRFки ??

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

Добавлено: 08.02.2016{, 17:55}
Evgesha
подскажите пожалуйста, если на одну ардуину подключен датчик температуры,нажатия каких либо кнопок, и радио модуль, а на другой стороне ардуино, дисплей, и радиомодуль и выходные реле, то нужен блок с инт и строки вместе ?

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

Добавлено: 09.02.2016{, 09:34}
Max
Evgesha писал(а):подскажите пожалуйста, если на одну ардуину подключен датчик температуры,нажатия каких либо кнопок, и радио модуль, а на другой стороне ардуино, дисплей, и радиомодуль и выходные реле, то нужен блок с инт и строки вместе ?
Автор блока NRF уже выкладывал блоки с массивом, можно так сказать, для передачи команд. Можно и напрямую к входам INT значения посылать и принимать, легко. Можно булеановские значения в INT преобразовывать и посылать, так же легко...

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

Добавлено: 10.02.2016{, 00:21}
Kocтик
Skull писал(а):Сканер- работает
 Э.... Судя по всему не работает. Начиная с четвёртой строчки, кроме нулей должны изредка появляться единицы, двойки. И строчек этих с нулями и всем остальным должно быть много.
У меня такая ерунда была когда перепутал выводы 9 и 10.
А примеры от Слимпер,  действительно рабочие. Спасибо ему.

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

Добавлено: 10.02.2016{, 12:03}
Слимпер
Skull писал(а):Народ, вопрос- а может кто сможет  сотворить  модбас сквозь NRFки ??
Не совсем понял, что вы хотите.
Что то вроде описанного в этой статье? Беспроводной контроллер бытового кондиционера в OpenHAB по Modbus через RF24Network

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

Добавлено: 10.02.2016{, 15:36}
Skull
Слимпер писал(а):Что то вроде описанного в этой статье
Изображение Ага  :hands:
Ну и было бы крайне неплохо иметь беспроводный прозрачный  удлинитель MODBUS.

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

Добавлено: 10.02.2016{, 18:07}
Слимпер
Skull писал(а):Ага  :hands:Ну и было бы крайне неплохо иметь беспроводный прозрачный  удлинитель MODBUS.
Самому идея нравится, но боюсь моих знаний не хватит ее реализовать. Изображение

А использовать код из статьи не получится. Там библиотека Modbus переделанная используется и код рассчитан под arduino ide 1.6.5, а у нас пока 1.6.3.

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

Добавлено: 07.03.2016{, 08:43}
Siberian
Слимпер писал(а):Там библиотека Modbus переделанная используется и код рассчитан под arduino ide 1.6.5, а у нас пока 1.6.3.
Можете попробовать http://forum.flprogwiki.ru/viewtopic.php?f=18&t=666
Я пользуюсь, работает.
Извлечь из архива папку ide и вставить с заменой в установленную Вашу программу FLProg.

Добавлено (07.03.2016, 08:43)
---------------------------------------------
Сегодня залил новую версию.

ЗДЕСЬ

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

Добавлено: 11.03.2016{, 20:24}
VirSpy
Пожалуйста, объясните, в ваших примерах (клиент-сервер).
Если я переведу Клиент в режим отправки по сигналу ( например нажатие кнопки), то чтоСервер, при принятии данный, в этот же момент будет отправлять данные на отправку, либо будет ждать цикл. Плюс к тому-же как поведут себя регистры после приема-передачи данных.
Спасибо.

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

Добавлено: 13.03.2016{, 12:32}
Слимпер
VirSpy писал(а):Пожалуйста, объясните, в ваших примерах (клиент-сервер).Если я переведу Клиент в режим отправки по сигналу ( например нажатие кнопки), то чтоСервер, при принятии данный, в этот же момент будет отправлять данные на отправку, либо будет ждать цикл. Плюс к тому-же как поведут себя регистры после приема-передачи данных.
Тут такое дело, я не особо разбирался в технической стороне вопроса. Нашёл в интернете  несколько пример проанализировал и сделал блоки, проверил, работает и ладно.
Но, в описанной вами ситуации скорей всего данные будут потеряны. Хотя  возможность совпадений есть, но  если данных оправляются не постоянно, не велика.

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

Добавлено (13.03.2016, 12:32)
---------------------------------------------
Если действительно надо будет, могу попробовать переделать блок для более надеждой связи, но тогда он точно будет тяжелее и будет дольше исполняется.

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

Добавлено: 18.03.2016{, 23:01}
VirSpy
Правильно ли сделал выход по принятию нового пакета на сервере:

if ( query ) {
if (_trgrt1I) { pulse_request = 0;}
else {  pulse_request = 1; _trgrt1I = 1;}
}

else {  pulse_request = 0; _trgrt1I = 0;};

if( pulse_request ){
servernf.identifier= Clients ;
servernf.blok_data=Nomer_I ;
servernf.in_1= in1 ;
servernf.in_2= in2 ;
servernf.in_3= in3 ;
servernf.in_4= in4 ;
servernf.in_5= in5 ;
servernf.in_6= in6 ;
if (servernf.count <=2147483646)  servernf.count++;      // счетчик передач для контроля качества канала
else servernf.count =0;
radio.stopListening();
bool ok =radio.write( &servernf, sizeof(servernf) );
radio.startListening();
}
else{
if ( radio.available() ) {
NewD = 1;
 radio.read( &clientnf,sizeof(clientnf) );
Client = clientnf.identifier;
Nomer_O =clientnf.blok_data;
out1 = clientnf.in_1;
out2 = clientnf.in_2;
out3 = clientnf.in_3;
out4 = clientnf.in_4;
out5 = clientnf.in_5;
out6 = clientnf.in_6;
NTransfer = clientnf.count;
}
else{
NewD = 0;
}
}

ну и соответственно новый выход boolean NewD.
(сильно ногами не бейте - первые буквы на Си)

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

Добавлено: 19.03.2016{, 08:03}
Слимпер
Ну да все вроде так как надо. При получении новых данных, на один цикл поднимется единица на выходе  NewD.

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

Добавлено: 24.03.2016{, 17:25}
Evgesha
Слимпер, скажите пожалуйста, если включен только сервер, а клиент не включен, ну или отключили клиента или нет сним связи, на выходе сервера на out1-6 должны быть какието числа ? или у меня что то с нрфкой?
еще вопросик. про мини atmega 328, 3.3v- работает с нрфкой, поддерживает spi интерфейс?

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

Добавлено: 24.03.2016{, 19:53}
Слимпер
Evgesha писал(а):Слимпер, скажите пожалуйста, если включен только сервер, а клиент не включен, ну или отключили клиента или нет сним связи, на выходе сервера на out1-6 должны быть какието числа ? или у меня что то с нрфкой?
Если последним был включен сервер, т.е. после включения сервера не был включен клиент, то на выходах  out1-6 должны быть нули.
Если клиент хоть раз передал данные, то на выходах  out1-6 будут последние значения.
Evgesha писал(а):про мини atmega 328, 3.3v- работает с нрфкой, поддерживает spi интерфейс?
У меня нет 3.3V платы, но по идеи все должно работа нормально.