Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Софт:обсуждение программного обеспечения для умного дома

ТЕМА: Конструктор беспроводного клиента на nRF24LE1

Re: Конструктор беспроводного клиента на nRF24LE1 28 Дек 2014 08:35 #577

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7156
  • Спасибо получено: 1112
  • Репутация: 193
curat0r пишет:
Спасибо, я в курсе, мне нужен скетч просто для приема данных от nRF24LE1 с DHT22, без W5100

Такой скетч смогу написать только при наличии времени, которого пока нет- занят пока другим проектом.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Re: Конструктор беспроводного клиента на nRF24LE1 28 Дек 2014 09:19 #582

  • curat0r
  • curat0r аватар
  • Не в сети
  • Осваиваюсь на форуме
  • Сообщений: 23
  • Репутация: 1
OK, я думал просто из скетча для шлюза просто убрать все, относящееся к Webserver'у, а полученные данные вывести в serial monitor ...
Администратор запретил публиковать записи гостям.

Re: Конструктор беспроводного клиента на nRF24LE1 28 Дек 2014 21:53 #625

  • binladin
  • binladin аватар
  • Не в сети
  • Новый участник
  • Сообщений: 3
  • Репутация: 1
Максим, сложно ли адаптировать исходники под работу NRF24LE1 как клиента MySensors ?
Многие форумчане с МДМ (и не только) сказали бы спасибо.
Администратор запретил публиковать записи гостям.

Re: Конструктор беспроводного клиента на nRF24LE1 29 Дек 2014 06:48 #628

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7156
  • Спасибо получено: 1112
  • Репутация: 193
Я не знаком с проектом MySensors и с его протоколом, если есть где-то его описание (желательно на русском), то можно посмотреть..
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.
Спасибо сказали: Timur

Re: Конструктор беспроводного клиента на nRF24LE1 29 Дек 2014 20:11 #649

  • binladin
  • binladin аватар
  • Не в сети
  • Новый участник
  • Сообщений: 3
  • Репутация: 1
Adminhs пишет:
Я не знаком с проектом MySensors и с его протоколом, если есть где-то его описание (желательно на русском), то можно посмотреть..
Проект строится поверх библиотеки NRF24 (для дуины). Посредником между высокоуровневым контроллером и сетью NRF является Serial, Ethernet или MQTT-шлюз (ардуинка с nrf24l01+ подключенная по usb к контроллеру в версии serial, либо через эзернет-шилд во втором или третьем случае). Этот шлюз обеспечивает адресацию и роутинг пакетов в радиосети. Сенсорные узлы сети - ноды представляют собой ардуинку с тем же nrf24l01+ и являются клиентами шлюза напрямую, либо посредством ретрансляции пакетов через другие ноды.

Все сообщения отсылаемые нодой, как я понимаю формируются следующим кодом из MySensor.cpp
// Inline function and macros
inline MyMessage& build (MyMessage &msg, uint8_t sender, uint8_t destination, uint8_t sensor, uint8_t command, uint8_t type, bool enableAck) {
	msg.sender = sender;
	msg.destination = destination;
	msg.sensor = sensor;
	msg.type = type;
	mSetCommand(msg,command);
	mSetRequestAck(msg,enableAck);
	mSetAck(msg,false);
	return msg;
}

Характерный скетч для ноды с датчиком DHT - здесь.

Включаем библиотеку Mysensors
#include <MySensor.h>
Инициализируем класс
MySensor gw;
Задаем типы сообщений от ноды (как в MyMessage.h, для обработки на шлюзе)
MyMessage msgHum(CHILD_ID_HUM, V_HUM);
MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP);

Далее Void setup, где инитим радиомодуль ( коллбэк-функция для входящего сообщения, id, режим ретрансляции, родителская нода, скорость, уровень мощности, канал)
gw.begin();
Шлём на шлюз инфу о ноде (для отправки используется та же структура build, что указана выше)
// Send the Sketch Version Information to the Gateway
  gw.sendSketchInfo("Humidity", "1.0");
Презентуем шлюзу номенклатуру того, что есть на ноде
// Register all sensors to gw (they will be created as child devices)
  gw.present(CHILD_ID_HUM, S_HUM);
  gw.present(CHILD_ID_TEMP, S_TEMP);
Получаем, в какой системе единиц работаем
metric = gw.getConfig().isMetric;

Далее в цикле читаем температуру и влажность и шлём на шлюз (всё тот же build)
gw.send(msgTemp.set(temperature, 1));
gw.send(msgHum.set(humidity, 1));
Ну и как водится, немного спим
gw.sleep(SLEEP_TIME); //sleep a bit

Готов перевести, что необходимо.
Администратор запретил публиковать записи гостям.

Re: Конструктор беспроводного клиента на nRF24LE1 29 Дек 2014 21:03 #653

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7156
  • Спасибо получено: 1112
  • Репутация: 193
Сути не уловил тут, но библиотеку посмотрел и её вполне можно импортировать в ле1 даже вслепую.

Как я понимаю ещё тут интерес чтобы и конструктор работал с ним ?

Ещё тут проблемы выявляются со спящим режимом..

Даже не знаю когда я смогу заняться всем этим.. но это вполне реально.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter, Dolfik
Время создания страницы: 0.148 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.