Как передавать данные радиомодулями LoRa

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 มี.ค. 2018
  • или как гонять структуру с данными через радиомодули которые использую библиотеку RadioHead на примере беспроводного датчика для метеостанции, а для примера используются LORA модули sx1278, по такому принципу будут работать и похожие радиомодули вроде SI4432 или CC1101.
    код из видео
    arduinolab.pw/index.php/2018/0...
    ссылки на железки:
    Wemos® TTGO - goo.gl/H3MdEA
    SX1278 - www.icstation.com/433mhz-wirel...
    HTU21D+BMP180+BH1750FVI - www.icstation.com/htu21dbmp180...
    Возможность поблагодарить автора рублем.
    www.donationalerts.ru/r/arduin...
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 38

  • @user-rr6cp2ik4d
    @user-rr6cp2ik4d 6 ปีที่แล้ว +1

    Спасибо за безкорыстный труд.

  • @StatistPL
    @StatistPL 6 ปีที่แล้ว +7

    Не понял что значит в твоем понимании «что-то большее»? Ты пытаешься ему задать 16 битную разрядность переменной для каждого элемента массива. Зачем? Если ты все равно передаешь 8-битные данные? Не не перепутал размер массива и разрядность элементов массива? Если у тебя есть переменная 16бит, то передавай ее как 8битных значения. И вообще.. модули то хоть поддерживают 16-битные данные?

  • @user-qj8gu2lg9q
    @user-qj8gu2lg9q 5 ปีที่แล้ว +1

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

  • @electricianvalera
    @electricianvalera 6 ปีที่แล้ว +2

    Спасибо, можно делать погодную станцию

  • @user-oq3tv1br9r
    @user-oq3tv1br9r 6 ปีที่แล้ว +1

    Вот!!!
    Это супер. Программные хитрые решения не менее интересны, чем хардновинки.
    Спасибо.

    • @user-oq3tv1br9r
      @user-oq3tv1br9r 6 ปีที่แล้ว

      Flexo Alex
      Спасибо.
      Но как бы то не называлось, это очень помогает решать подобные проблемы.

    • @user-gq5tr2qk9v
      @user-gq5tr2qk9v 6 ปีที่แล้ว +3

      Александр Сановский учите язык , никакие это не хитрости это азы

  • @alextrezvy6889
    @alextrezvy6889 10 หลายเดือนก่อน

    01:10: Мне представляется, что данный пример пригоден только для проверки работоспособности модулей. В "боевом" варианте как минимум необходимо:
    1) допускать, что вызов метода recv вернёт не весь пакет, а только его часть. При этом последующие части пакета могут быть возвращены последующими вызовами recv;
    2) допускать, что данные могут прийти от постороннего устройства;
    3) пакет может быть повреждён.

    • @tree-service
      @tree-service 5 หลายเดือนก่อน

      1 - нууууу, сайз оф.
      2 - это реалиуется внутри какие-нить пипес как в нрф
      3 - он тогда не будет получен - по идее, но можно поиграться с црц

  • @nurekengoi
    @nurekengoi 6 ปีที่แล้ว

    У меня вопрос насчёт поддержки LoRa. Как я понял из форумов радиомодули RF69 основаны на чипе SX1231H. А данный чип в описании, в поле модуляции не имеет LoRa. Выходит что в данном случае лору программно реализует библиотека ?

  • @SaleyAlexey
    @SaleyAlexey 6 ปีที่แล้ว +1

    Какая дальность? Какая скорость?

  • @marsmiks5506
    @marsmiks5506 4 ปีที่แล้ว

    Модуль соединяется к чему ? Вы программировали сам модуль или как ?

  • @MrProgrammer74
    @MrProgrammer74 6 ปีที่แล้ว +6

    Это называется привести указатель к другому типу

    • @Al.Sy.
      @Al.Sy. 6 ปีที่แล้ว +1

      Верно. В данном примере массив символов передаётся как строка.

  • @tree-service
    @tree-service 5 หลายเดือนก่อน

    так а переведите в байты - это же не сложно.
    на 1:11 в принт лн передается начало массива указанное как указатель на первый элемент массива,
    поскольку это массив у него в конце будет \0
    принтлн выведет все с переданного указателя до первого символа \0
    т.е. напечатает массив.

  • @krepton85you
    @krepton85you 6 ปีที่แล้ว

    Я так понял что передатчик включается только когда передаются данные? Но все равно это не стабильно будет работать т.к. если однавременно сработают 2 передатчика то будут глушить др. др. Можно конечно сделать ответ подтверждения приема пакета данных и если не доставлен, то передатчик отправит еще раз этот пакет.

  • @CadmiumUA
    @CadmiumUA 6 ปีที่แล้ว

    (char*)buf переводит uint8_t в char чтобы println выводил символы а не коды символов. Тип элемента массива uint8_t потому что у ардуинки spi 8bit, ну и один символ это тоже 8бит, что то большее это надо количество элементов массива увеличивать

  • @Sotovikon
    @Sotovikon 6 ปีที่แล้ว

    Расскажите как перехватить и расшифровать данные с метеостанции работающей на частоте 433 МГц у меня к примеру Hama 2000 но подружит ее с компом через перехват не могу не понимаю как.

  • @_ich8599
    @_ich8599 5 ปีที่แล้ว

    С какого количества передатчиков можно собирать данные на одном приемнике?

    • @butylkus
      @butylkus 5 ปีที่แล้ว

      С любого. Ограничение на количество сигналов определяется формулой Tc/Nc, где в числителе приемлемый интервал получения данных, в знаменателе время передачи одного сигнала. Скажем, если одно сообщение принимается 10 секунд, а мы хотим получать данные каждую минуту, то максимум датчиков это 60/10, или шесть штук. С учётом лага, помех и прочего, лучше запас на 20%, итого уже 4-5. За час можно опросить до 260-300 =) Чтобы не путать, от кого сейчас принят сигнал, достаточно первым делом представиться - первые биты должны содержать имя устройства. Но лучше двустороннее рукопожатие: передача "0х13, ты тут?" приём "0х13 тут" передача "0х13 К" приём "0х13 0001010100101010100010101 END"

  • @Dimoven
    @Dimoven 6 ปีที่แล้ว

    Как реализовать sdr приемник?

    • @arduinoLab
      @arduinoLab  6 ปีที่แล้ว

      th-cam.com/video/a1xQmmngzX8/w-d-xo.html

  • @romansokolov
    @romansokolov 6 ปีที่แล้ว

    подскажите, почему в коде приемника uint8_t len = sizeof(buf); , а не uint8_t len = sizeof(mydata);

    • @arduinoLab
      @arduinoLab  6 ปีที่แล้ว

      поправил.

    • @romansokolov
      @romansokolov 6 ปีที่แล้ว

      возможна ситуация, когда ошибочно прилетит пакет, размером большим чем mydata. как бы защититься.

  • @tree-service
    @tree-service 5 หลายเดือนก่อน

    голос похож на Косицына Артема

  • @semiodua
    @semiodua 6 ปีที่แล้ว

    Если есть у вас возможность, то подключите к arduino(приемнику) по шине SPI еще LCD экран для отображения данных.
    Будет ли работать два устройства на одной шине SPI. Вот задачка.

    • @nurekengoi
      @nurekengoi 6 ปีที่แล้ว

      semiodua если линии cs - crystal select раздельны, должно работать

    • @semiodua
      @semiodua 6 ปีที่แล้ว

      Я вот проверял на практике и не получилось 100% до конца заставить работать правильно. Подвисает сам контроллер, когда я на приемник передаю данные, плюс подключенный жк экран для отображения данных. Использую библиотеку LowPowerlab и adafruit st7735

    • @nurekengoi
      @nurekengoi 6 ปีที่แล้ว

      semiodua хмм. Наверное они по разному инициализируют. У вас ардуино? Если stm32 я бы сказал просто переключится ра другой spi. У них их несколько))

  • @R2AUK
    @R2AUK 6 ปีที่แล้ว +1

    Не обижайтесь, но слабоват материал. То, что вы описали, есть в любой книжке по языку C на условной 30-й странице.

    • @arduinoLab
      @arduinoLab  6 ปีที่แล้ว +1

      кругом одни специалисты.

    • @R2AUK
      @R2AUK 6 ปีที่แล้ว

      Не стоит так остро реагировать на вполне конструктинвую как мне кажется критику. Другие ваши видео я нахожу весьма интересными. Но знание С явно можно и подтянуть. Могу порекомендовать книжку "Язык программирования C" авторы Керниган и Ритчи. Это классика, и всего страниц 200.

    • @romansokolov
      @romansokolov 6 ปีที่แล้ว

      александр, многим это полезно ) не нравится - не смотрите. а может у вас свой канал имеется познавательный и можно подписаться?

    • @R2AUK
      @R2AUK 6 ปีที่แล้ว

      Мне очень странна ваша реакция на критику - "не нравится не смотрите". Критика - это хорошо. Благодаря критике (конструктивной) люди понимают свои ошибки и совершенствуются. Если только хвалить, ничего путного из этого не выйдет. Канала у меня нет, но есть другие проекты - eax.me/ и devzen.ru/

    • @arduinoLab
      @arduinoLab  6 ปีที่แล้ว

      как реагировать и где тут критика? это личное мнение о том, что вам это давно и так известно, это мнение видимо должно быть очень важным.
      я не программист и мне это известно не было, тем кто приходит с поиска это тоже не всегда известно, иначе бы не растаскивали мои кривые примеры о работе с nRF24L01.