8 (800) 550-13-29
Заказать звонок
Связь с директором
  • Контакты
  • Доставка
  • Оплата
  • База знаний
  • Блог
  • Акции
  • Видео
  • О 3DiY
  • Гос. закупки
  • ...
    3DIY
    3D принтеры
    Всё для 3D принтеров
    • Электроника
      Электроника
    • Механика
      Механика
    • Экструдеры
      Экструдеры
    • Пластик
      Пластик
    • 3D принтеры
      3D принтеры
    • 3D ручки
      3D ручки
    • Сопутствующие
      Сопутствующие
    Arduino/робототехника
    • Arduino
      Arduino
    • Raspberry Pi
      Raspberry Pi
    • Orange Pi
      Orange Pi
    • Одноплатники
      Одноплатники
    • Модули (Shield)
      Модули (Shield)
    • Датчики / Сенсоры
      Датчики / Сенсоры
    • Дисплеи
      Дисплеи
    • Механика
      Механика
    • Макетные платы (Breadboard)
      Макетные платы (Breadboard)
    • Светодиоды
      Светодиоды
    • Провода и кабели
      Провода и кабели
    • Источники питания
      Источники питания
    • Радиодетали
      Радиодетали
    ЧПУ
    • Электроника
      Электроника
    • Электротехника
      Электротехника
    • Электропривод
      Электропривод
    • Направляющие
      Направляющие
    • Передачи
      Передачи
    • Механика
      Механика
    • Конструкционный профиль
      Конструкционный профиль
    • Лазерная резка и аксессуары
      Лазерная резка и аксессуары
    Услуги
    • 3D печать
    • Ремонт 3D принтеров
    Ещё
      3DIY
      3D принтеры
      Каталог
      • 3D принтеры и комплектующие
        3D принтеры и комплектующие
        • Электроника
        • Механика
        • Экструдеры
        • Пластик
        • 3D принтеры
        • 3D ручки
        • Сопутствующие
      • Arduino и робототехника
        Arduino и робототехника
        • Arduino
        • Raspberry Pi
        • Orange Pi
        • Одноплатники
        • Модули (Shield)
        • Датчики / Сенсоры
        • Дисплеи
        • Механика
        • Макетные платы (Breadboard)
        • Светодиоды
        • Провода и кабели
        • Источники питания
        • Радиодетали
      • ЧПУ комплектующие
        ЧПУ комплектующие
        • Электроника
        • Электротехника
        • Электропривод
        • Направляющие
        • Передачи
        • Механика
        • Конструкционный профиль
        • Лазерная резка и аксессуары
      Услуги
      • 3D печать
      • Ремонт 3D принтеров
      Блог
      • 3D-печать
      • 3D-принтеры
      База знаний
      • Датчики
      • Модули
      • Платы
      • 3D-принтеры
      • Дисплеи
      • Механика
      • Сопутствующие
      • ЧПУ
      • Проекты
      • Компоненты
      Информация
      • Акции и Скидки
      • Условия доставки
      • Условия оплаты
      • Сashback
      • О нас
        • Наши партнеры
        • Наши клиенты
        • Вакансии
      • Гос. закупки
      Контакты
      • Как до нас добраться
      Ещё
        3DIY
        • 3D принтеры
        • Каталог
          • Назад
          • Каталог
          • 3D принтеры и комплектующие
            • Назад
            • 3D принтеры и комплектующие
            • Электроника
            • Механика
            • Экструдеры
            • Пластик
            • 3D принтеры
            • 3D ручки
            • Сопутствующие
          • Arduino и робототехника
            • Назад
            • Arduino и робототехника
            • Arduino
            • Raspberry Pi
            • Orange Pi
            • Одноплатники
            • Модули (Shield)
            • Датчики / Сенсоры
            • Дисплеи
            • Механика
            • Макетные платы (Breadboard)
            • Светодиоды
            • Провода и кабели
            • Источники питания
            • Радиодетали
          • ЧПУ комплектующие
            • Назад
            • ЧПУ комплектующие
            • Электроника
            • Электротехника
            • Электропривод
            • Направляющие
            • Передачи
            • Механика
            • Конструкционный профиль
            • Лазерная резка и аксессуары
        • Услуги
          • Назад
          • Услуги
          • 3D печать
          • Ремонт 3D принтеров
        • Блог
          • Назад
          • Блог
          • 3D-печать
          • 3D-принтеры
        • База знаний
          • Назад
          • База знаний
          • Датчики
          • Модули
          • Платы
          • 3D-принтеры
          • Дисплеи
          • Механика
          • Сопутствующие
          • ЧПУ
          • Проекты
          • Компоненты
        • Информация
          • Назад
          • Информация
          • Акции и Скидки
          • Условия доставки
          • Условия оплаты
          • Сashback
          • О нас
            • Назад
            • О нас
            • Наши партнеры
            • Наши клиенты
            • Вакансии
          • Гос. закупки
        • Контакты
          • Назад
          • Контакты
          • Как до нас добраться
        • 8 (800) 550-13-29
        Контактная информация
        Москва, Духовской пер. 17с3   |  Пн-Пт 11.00-19.00 | Сб-Вс Выходные
        info@3d-diy.ru
        • Facebook
        • Вконтакте
        • Instagram
        • YouTube

        Радио модуль SI4432

        База знаний
        -
        Модули
        -
        Беспроводная связь
        -Радио модуль SI4432
        Поделиться
        • Радио модуль SI4432
        Товары
          • Радио модуль SI4432
            Быстрый просмотр
            Радио модуль SI4432
            Достаточно
            416 руб./шт
            Подробнее

          Содержание

          • Обзор
          • Технические характеристики
          • Подключение к Arduino
          • Пример использования
          • Часто задаваемые вопросы

          Обзор радио модуля SI4432

          Модули трансивера SI4432 (рисунок 1) на основе микросхемы SI4432 позволяют реализовать устойчивую двустороннюю радиосвязь в диапазоне частот от 240 до 930 МГц на расстоянии до 1 км на открытой местности и 100 - 300м в помещении. Скорость  передачи данных 0.123-256 kbps, виды модуляции  - FSK, GFSK, OOK. Мощность передатчика до +20 dBm. Модули имеют малый размер.

          module-transivera-SI4432-01.jpg

          Рисунок 1. Радиомодуль SI4432.


          Характеристики модуля SI4432

          • Частотный диапазон: 240 –930 МГц;

          • Чувствительность приемника: до 121 дБм;

          • Модуляция сигнала: FSK (ЧМн), GFSK (ГЧМн), OOK (АМн);

          • Максимальная выходная мощность: 20 дБм;

          • Скорость передачи данных: 0.123-256 Кбит/с;

          • Напряжение питания: 1.8-3.6 В;

          • Рабочая температура: от -20 до 60 °C.


          Назначение выводов

          module-transivera-SI4432-02.jpg

          Рисунок 2. Назначение выводов радиомодуля SI4432.

          • VDD — питание модуля;

          • GND — общий;

          • NSEL — вывод разрешения интерфейса SPI;

          • SCLK — вывод синхронизации интерфейса SPI;

          • SDI — вывод получения данных интерфейса SPI;

          • SDO — вывод отправки данных интерфейса SPI;

          • NIRQ — вывод прерываний по получению данных;

          • SDN — вывод перехода в режим энергосбережения (HIGH); 

          • GPIO0, GPIO1, GPIO2 — программируемые порты ввода/вывода.


          Подключение к плате Arduino

          Модули работают по протоколу SPI. Для Подключение к плате Arduino согласно таблице 1. При этом обязательно согласование уровней 3.3 В → 5 В, необходимо использовать конвертер уровня!!! Для питания модулей желательно использовать внешний источник питания 3.3 В (при передаче на небольшое расстояние возможно брать питание с вывода 3.3 В платы Arduino).

          SI4432

          Arduino UNO

          Arduino Mega

          GND

          GND

          GND

          SDN

          GND

          GND

          NIRQ

          D2

          D2

          NSEL

          D10

          D53

          SCLK

          D13

          D52

          SDI

          D11

          D51

          SDO

          D12

          D50

          Схема соединений показана на рис. 3.

          module-transivera-SI4432-03.jpg

          Рисунок 3. Схема соединений для подключения радиомодуля SI4432

          Для программирования модуля используем библиотеку RF22. Загружаем на одну плату пример из библиотеки rf22_client, на вторую – rf22_server.

          module-transivera-SI4432-04.jpg

          Рисунок 4. Примеры библиотеки RF22

          Открываем монитор последовательного порта для каждой платы Arduino. Rf22_client (рисунок 5) периодически отправляет данные (Hello world) и в течении 500 мсек ждет ответа от сервера. И выводит сообщение о получении ответа или его отсутствии.

          module-transivera-SI4432-05.jpg

          Рисунок 5. Результат работы fr_client

          Rf22_server (рисунок 6) постоянно ждет данные по радиоканалу, при получении – отправляет ответ.

          module-transivera-SI4432-06.jpg

          Рисунок 6. Результат работы fr_server 


          Пример использования SI4432

          Создадим проект отправки данных датчика влажности и температуры с платы Arduino по запросу на другую плату Arduino по радиоканалу.

          Нам потребуются следующие компоненты:

          • Плата Arduino Uno – 2;

          • Плата прототипирования – 2;

          • Модуль трансивера SI4432 – 2;

          • Конвертер уровня – 2;

          • Модуль GY21 (датчик SHT21) – 1;

          • Провода.

          Схема соединения элементов показана на рис. 7 и 8. 

          module-transivera-SI4432-07.jpg

          Рисунок 7. Схема соединений для подключения радио модуля SI4432 – клиент

          module-transivera-SI4432-08.jpg

          Рисунок 8. Схема соединений для подключения радиомодуля SI4432 - сервер

          Клиент раз в 3 секунды посылает по радиоканалу сообщение tempSH21 (или humiditySH21) и ждет ответа. По получении ответа выводит данные в монитор последовательного порта. Содержимое скетча показано в листинге 1.

          Листинг 1

          #include <SPI.h>

          #include <RF22.h>  

          // создание объекта RF

          RF22 si4432client;

          // для выбора влажность/температура

          int choice=0;  

          void setup()

          {

          Serial.begin(9600);

          if (!si4432client.init())

              Serial.println("si4432 no init");

          }

          void loop()

          {

              Serial.println("Send request");

              // отправить запрос на server

              if(choice==0) {

                   uint8_t senddata[] = "tempSH21";

                   si4432client.send(senddata, sizeof(senddata));

              }

              else {

                  uint8_t senddata [] = "humiditySH21";

                  si4432client.send(senddata, sizeof(senddata));

              }  

              si4432client.waitPacketSent();

              // ожидание ответа

              uint8_t getdata [RF22_MAX_MESSAGE_LEN];

              uint8_t length1 = sizeof(getdata);  

              if (si4432client.waitAvailableTimeout(1000))

              {

                // полученное сообщение  

                if (si4432client.recv(getdata, &length1))

                {

                  Serial.print("got reply: ");

                  if(choice==0)

                     Serial.print(" tempSH21=");

                  else

                     Serial.print(" humiditySH21=");

                  Serial.println((char*) getdata);

                }

              }

              choice=1-choice;

              delay(3000);

          }

          Сервер, получая запрос tempSH21 (или humiditySH21) получает необходимые данные с датчика SHT21 и отправляет в ответ значение запрошенного параметра. Содержимое скетча показано в листинге 2.

          Листинг 2

          #include <SPI.h>

          #include <RF22.h>

          #include <Wire.h>

          #include <SHT2x.h>  

          // создание объекта RF

          RF22 si4432server;  

          void setup()

          {

          Wire.begin();

          Serial.begin(9600);

          if (!si4432server.init())

              Serial.println("si4432 init no");

          }

           

          void loop()

          {

              si4432server.waitAvailable();

              // полученное сообщение

              uint8_t getdata [RF22_MAX_MESSAGE_LEN];

              uint8_t length1 = sizeof(getdata);

              if (si4432server.recv(getdata, &length1))

              {

                Serial.print("get request: ");

                Serial.println((char*) getdata);

                char senddata[] = "             ";

                if(StrContains((char*) getdata,"tempSH21")!=0)

                  {

                  dtostrf(SHT2x.GetTemperature(),10,2,senddata);

                  }

                else if(StrContains((char*)buf,"humiditySH21")!=0)

                  {

                  dtostrf(SHT2x.GetHumidity(),10,2,sendata);

                  }

                else

                  {

                  Serial.println("error");

                  dtostrf(999,10,0,data);

                  }

                si4432server.send((uint8_t*)datasend, sizeof(datasend));

                si4432server.waitPacketSent();

                Serial.println("Sent a reply");

              }

          }

          Загружаем скетчи на платы Arduino и смотрим данные в мониторе последовательного порта для клиента (рис. 9) и сервера (рис. 10).

          module-transivera-SI4432-09.jpg

          Рисунок 9. Отправка и получение данных для клиента.

          module-transivera-SI4432-10.jpg

          Рисунок 10. Отправка и получение данных для сервера.

          module-transivera-SI4432-11.jpg

          Рисунок 11. Схема в сборе.


          Часто задаваемые вопросы

          1. Отсутствует передача данных между модулями

          • Проверьте подано ли питание на модуль.

          • Проверьте, достаточное ли питание подано на модуль.

          • Проверьте правильность подключения модуля к плате Arduino.

          • Проверьте совпадение параметров частоты, скорости передачи и типа модуляции на модулях SI4432.



          Документы
          Listing_01.ino 886 байт
          Listing_02.ino 919 байт
          RF22 96,9 кб
          SHT2x 3,6 кб

          Товары
            • Радио модуль SI4432
              Быстрый просмотр
              Радио модуль SI4432
              Достаточно
              Подробнее

            Назад к списку Следующий проект
            Компания
            О компании
            Политика
            Услуги
            Партнеры
            Клиенты
            Информация
            Акции и скидки
            Условия оплаты
            Условия доставки
            Гарантия на товар
            Кэшбэк
            Как купить
            Вопрос-ответ
            Блог
            База знаний
            Производители
            Будьте всегда в курсе!
            Узнавайте о скидках и акциях первым
            Оставайтесь на связи
            • Вконтакте
            • Facebook
            • Instagram
            • YouTube
            Наши контакты
            8 (800) 550-13-29
            info@3d-diy.ru
            Москва, Духовской пер. 17с3   |  Пн-Пт 11.00-19.00 | Сб-Вс Выходные
            2021 © 3DiY (Тридиай) - интернет-магазин комплектующих для 3D принтеров, ЧПУ станков и робототехники