Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

r433a с бесплатной доставкой на AliExpress

Горячие предложения в r433a: лучшие онлайн-предложения и скидки с реальными отзывами клиентов.

Отличная новость! Если вы решили приобрести товар по запросу r433a, то вы находитесь в нужном месте. AliExpress — это платформа для онлайн-шопинга, где для вас представлены тысячи товаров самых разных категорий. С AliExpress вы всегда можете быть уверены, что найдете нужные вам вещи, будь то дорогостоящие изделия или небольшие покупки. Наша база пополняется каждый день, поэтому мы предлагаем широкий выбор продукции самых разных категорий. Наши поставщики — как известные торговые марки, так и независимые продавцы — гарантируют быструю доставку и надежность, а также удобные и безопасные способы оплаты.

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

Иногда выбрать товар среди всех возможных предложений оказывается непросто. Мы позаботились о вашем удобстве и создали удобную систему сравнения. С AliExpress вы легко можете сопоставить цены и воспользоваться наиболее выгодным предложением. Мы также будем рады сообщить вам о начале специальных акций, а также о купонах на скидку. Если у вас возникнут сомнения, вы всегда можете ознакомиться с отзывами покупателей и сравнить рейтинг магазинов. Мы высоко ценим мнение клиентов, поэтому под каждым товаром вы найдете комментарии тех, кто уже сделал покупку. Одним словом, вам больше не нужно слепо доверять — вы можете просто положиться на опыт других покупателей.

Для новичков в AliExpress мы раскроем секрет, как получить самые выгодные предложения на нашем сайте. Перед тем как нажать кнопку “Купить сейчас”, проверьте наличие купонов на скидку. Это могут быть купоны AliExpress или же купоны магазинов-сотрудников. Также вы можете получить купоны, выигрывая в нашей игре в приложении AliExpress app. Вместе с бесплатной доставкой, которую предлагают большинство продавцов на нашем сайте, вы сможете приобрести r433a по самой выгодной цене.

AliExpress — это передовые технологии, новейшие тенденции и самые обсуждаемые бренды, а также отличное качество, цена и сервис. Онлайн-покупки стало делать еще проще и надежней. Экономьте время и деньги без ущерба качеству.

ru.aliexpress.com

Радиомодули HopeRF HM-R433 и HM-T433. Проблемы и решения

При первоначальных испытаниях сея железка показала себя с лучшей стороны, но вот на практике вылезли не просто баги, а прям гигантские тараканы убийцы. Казалось бы, чему там работать не так? А, как оказалось, есть чему. Точнее это не баги, а особенности, о которых производитель самым подлым образом умолчал в даташитах. Знай я о них я бы еще подумал стоит ли их покупать. Итак:

Несущая
Приемник ловит изменение несущей, которую генерирует передатчик. А если не будет передатчика, что будет ловить приемник? По идее не должен ловить ничего, а что на практике? А на практике дикий срач!!! Натурально белый шум по всему диапазону от 0 до 255. Фигасе бага, да? Но ладно, хрен с этим белым шумом, его, в конце концов, можно фильтровать, отслеживать в нем наличие чего либо разумного и лишь после начинать прием.

Ждущий режим
У передатчика, к моему, а также ряда внимательных читателей, удивлению нет входа Enable. У приемника то есть. Редкостный бред, особенно ввиду того, что спустя 70mS простоя на линии DATA передатчик впадает в спячку и… правильно, отрубает несущую — на выходе приемника начинается в этот момент жуткий срач. Так что либо шли данные непрерывным потоком, либо перед каждой посылкой шли идентификационный пакет. А еще не забыв предупредить приемник о том, что передача закончена и дальше ловить нечего.

Совместная работа
Тут все просто, два передатчика одновременно работать не могут. От слова совсем. Либо по отдельности, либо никак. Это было ожидаемо и это надо учитывать.

Баги при передаче
Но что меня больше всего добило, так это баги. Если с первые три пункта можно учитывать и обрабатывать программно без лишних заморочек, то со последним уже все гораздо веселей.

Ок, раз несущая у нас пропадает, попробую я финт ушами — буду слать управляющие команды не по одному байту, а пачками. Среди мусора десять повторяющихся байт будут очень заметны и передающая сторона без труда их вычленит из этого шума. Сказано сделано. Думаете работает? А вот хрен там! Нет, 10 то одинаковых байт передаются отлично, вот только это каждый раз разные 10 байт. С передающего контроллера всегда уходит 10 единичек (код 0х31), а из приемника может вылезти «что угодно» *10, например, 10 букв «А» или десять закорючек и прочее. Нет, 10 единичек тоже вылазят, примерно в 30%. Но это же писец какой то, а не передача.

И тут я опять почесал репу. Как же так? Ведь пила (байты от 0 до 255) передается на ура, без помех и искажений. Осмысленный кусок текста, передаваемый по UART, тоже приходит отлично, без опечаток вообще, словно по проводу. А десять одинаковых байт превращаются во что угодно. Такое ощущение, словно несущая восстанавливается абы как и настраивается уже по ходу передачи символов. Послал в UART текстовое послание, и точно — первые 3 символа превратились в кашу, а остальные идут молодцом. Гхм. Ладно, перед нашей посылкой делаю отправку небольшого слова — «PREVED», а потом 10 единичек. Гляжу в терминал… PREVED??? Ага, ЩАЗ! МЕДВЕД! На выходе явно какое то слово, но оно, словно сдвинуто по таблице символов на какую то константу. Причем в тех же 30% передача идет нормально. Гхм. Засада какая. Выходит отправляешь один и тот же символ — не работает, посылаешь слово — не работает. Ладно бы ваще не работало, а почему когда гонишь абзац текста, то месит только три первых символа, а остальное идет нормально? Мистика да и только.

Решил попробовать сделать свою несущую, чтобы передатчик не замолкал ни на миг стал по прерыванию от UART слать в канал символ, а как полезная передача, то отрубаю прерывания и шлю вручную. Гхм. Символ то шлется, вот только на выходе то он, то какой то другой символ. Опять не айс. Тут, думаю, раз уж ты, зараза такая, не можешь отстроить канал на одном символе, пошлю ка я тебе пилу в качестве несущей. Послал — заработало все без ошибок. В Idle режиме у нас тупо гонится пила, а как надо передать данные — пила без проблем прерывается и пакет данных уходит бит в бит. Тока не нравится мне, что у меня под пила постоянно гонится — на детектирование пакета нужно дополнительные телодвижения совершать и я стал экспериментировать дальше. Логика и шестое чувство, расположенное в пятой точке, подсказывало мне, что тут дело в каком то хитром байте, на котором канал встает нормально и дальше работает без проблем. Стал проверять какой же символ лучше всего инициализирует работу канала.

Нашел — если отправить 255, то канал поднимается сразу же и шлет дальше данные без ошибок вообще.

З.Ы.
Я их еще на дальность не тестировал. Ждите, скоро будет.

easyelectronics.ru

Радиомодули HopeRF HM-R433 и HM-T433. Тест на дальность

Такс, в порядке работы над коммерческим проектом (и не спрашивайте о каком — не скажу), который сожрал все мое свободное время огромной зазубренной ложкой, раскурил до самого пепла радиомодули HopeRF HM-R433/HM-T433. Сегодня собрал полудуплексную схему на четырех модулях и провел сеанс дальнобойной приемо-передачи.

Итак, что из себя представляла установка:

Блок А:

  • Передатчик: HM-T433
  • Приемник: HM-R433
  • Антенна передатчика: Кусок провода МГТФ длинной 17см (1/4 от длины волны 433Мгц сигнала) загнутый абы как.
  • Антенна приемника: та же херня.
  • Расположение модулей: параллельно друг другу, на расстоянии 2см, усики антенн разбросаны в разные стороны, на манер тараканьих.
  • Расположение блока: 5 этаж, на столе. У северной стены.
  • Питание: 5 вольт.
  • Скорость передачи: 4800 бод.
  • Длина пакета данных: 10 байт.

Блок Б:
  • Передатчик: HM-T433
  • Приемник: HM-R433
  • Антенна передатчика: Кусок провода МГТФ длинной 17см (1/4 от длины волны 433Мгц сигнала) загнутый абы как.
  • Антенна приемника: та же херня.
  • Расположение модулей: параллельно друг другу, на расстоянии 2см, усики антенн разбросаны в разные стороны, на манер тараканьих.
  • Расположение блока: У меня в руках, на земле. С южной стороны дома (смотри схему)
  • Питание: 5 вольт.
  • Скорость передачи: 4800 бод.
  • Длина пакета данных: 10 байт.
Условие передачи:
 Блок Б дает десятибайтный пакет блоку А, тот, убедившись, что пакет принят без искажений, шлет подтверждение обратно на блок Б, те же десять байт. Блок Б, получив подтверждение зажигает зеленый диод. Передача идет с обрывом несущей. Т.е. после отправки пакета передатчик вырубается полностью.
Проведение опыта:

 Щелкая кнопкой передачи и фтыкая в зеленую лампочку, я начал спускаться по лестнице. К моей радости, даже когда я спустился на первый этаж зеленая лампочка бодро сигнализировала о том, что передача идет без помех, несмотря на то, что меня от другого блока отделяло как минимум 5 бетонных плит перекрытий, не считая кирпичных стен. После я вышел из подъезда и подорвался к противоположному углу дома. Примерно на 50 метрах от подъезда связь прервалась и ответа не было. Тогда я начал возвращаться обратно. Связь восстановилась лишь когда я подошел почти вплотную к своему подъезду. Поначалу мне казалось, что наверху тупо зависла софтина, оказалось все ок. В чем была причина не знаю. Возможно, стоящее в тот момент возле подъезда, такси имело у себя на борту 433МГц передатчик и насрало мне в эфир. Так как следующий отход на другой конец здания подтвердил дальность и качество приема. Это при том, что на прямой видимости, между мной и другим концом был практически весь кирпичный дом, продольно.

Алгоритм работы с двумя приемниками и двумя передатчиками:
Итак, что мы имеем:

  • У нас два приемника и два передатчика.
  • Приемник можно заглушить выходом Enable, так что он не будет принимать.
  • А вот передатчик передает всегда когда на входе есть активность. Засыпает он спустя 70ms бездействия.
  • А еще мы знаем, что два передатчика одновременно фурычить не могут — несущие у них разные, а значит приемники посылают в пешее эротическое путешествие обоих. Ну или того чей сигнал слабее.

 Чтобы организовать в таких мерзких условиях дуплекс приходится извращаться.
Для передачи нужно во-первых инициализировать несущую. Проблема в том, что когда несущей нет, то приемник ловит всякую муть, а входящая линия UART принимающего контроллера захлебывается от дерьма. Так что тут, в целях экономии ресурсов проца, имеет смысл выставить минимальную скорость приема 600бод, чтобы его реже дергало прерыванием от UART RX. Сразу слать байт нельзя — так как у нас на входе мусор, а протокол RS232 отличается тем, что конец байта практически не отличим от середины, то если тупо взять и послать, то с вероятностью в 90% у нас произойдет смешение части байта из окружающего мусора и нахлынувшими данными из вдруг образовавшегося канала. Получится рассинхронизация и на выходе будет полная ахинея.
 Так что вначале надо поднять несущую и синхронизировать протокол. Несущая у нас встает как только меняется состояние линии DATA, а вот с протоколом хитрее. Вспомним пост про UART — видите, спокойное состояние UART’a — высокий уровень. Так что после подъема несущей нужно выставить DATA в High, дольше чем на один байт по текущей скорости протокола, но не дольше чем на 70ms — иначе у нас передатчик опять заснет. При этом на выходе DATA приемника тоже выставится High и UART, спокойно прожевав очередную порцию дерьма из эфира, успокоится и приготовится к приему нормального корма. Дальше можно слать данные.
Чтобы не заморачиваться с дрыганьем ножкой и вычислением задержек ,можно просто послать раза три число 255 — это фактически сплошной высокий уровень, с небольшим провалом в виде старт бита. Но на одном из байтов таки произойдет синхронизация и дальше можно слать данные. И повышать скорость передачи (помните я чуть выше говорил про понижение до минимума), после взаимной договоренности сторон.

 На прием тоже есть пара хитростей. Сразу же после передачи нам нужно дождаться А) Когда байт таки отправится до конца Б) когда наш собственный передатчик заснет от бездействия. Т.е. это 70ms + время на передачу байта. Чтобы не словить сигнал от своего же передатчика. Как только наш передатчик отвалится можно врубать приемник и начинать ждать несущей от вражеской станции. Отличить полезный сигнал от дерьма очень просто — достаточно за начало передачи взять 10 одинаковых байт. Как только пришло 10 одинаковых байт — опа, есть коннект. Вероятность появления 10 одинаковых байт в мусоре эфира микроскопическая. Особенно если это байты численно близкие к нулю. (в среднем, шум, по значениям, колеблется от 50 до 255, крайне редко проваливаясь ниже 20)

Организация сети:
А если нам нужно не два, а больше приемо передатчиков? Как быть? А тут рулит эстафета aka Token Ring — когда передатчик по очереди передает служебный байт-эстафетную палочку. Получив этот пакет передатчик имеет право вещать. Если же ему вещать нечего, то он отсылает это право другому и так по кругу. Разумеется делается это все программно.

Приколы с контроллером:
При отладке этого девайса у меня сдохли три (!!!) ATTiny2313. В первой убился порт PB4 — там висела кнопка и она стала самопроизвольно срабатывать. Замеряю напряжение подтяжки (внутренней) — 0.5 вольта вместо положенных 4.5. Вот засада :/ Заменил (точнее перепаял, т.к. была в SOIC — фен рулит! 🙂 ). Это к вопросу о внешней подтяжке резисторами. Внешняя подтяжка рулит, что бы там не бубнили любители минимализма на плате! Зажал я пару резисторов и, в итоге, просрал три контроллера, а так, может быть, даже и не заметил бы пробоя ноги.

Потом опять сдохла ножка PB4, попутно унеся в могилу еще и ногу RXD. Да что за засада??? Неужели статика? Сколько десятков ATTiny2313 пустил в оборот — ни одна от статики не сдохла, а тут уже вторая. Что то тут нечисто. Ладно, хрен с ней, у меня еще в палке этих ATTiny2313 штук 70 лежит. Перепаял. Фен воистину рулит!!!

Когда на третьей микросхеме сдохла нога PB4 я стал искать где же собака порылась… Статика… не статика это как авиабомба — дважды в одну и ту же воронку не падает. Схемотехника? Да не, откуда там пробои — пассивка одна вокруг… И тут я вспомнил когда пробивало ногу — когда я антенну передатчика сворачивал в этакое колечко вокруг платы и закрывал в коробочку, а после жал на передачу… Гляжу — точка запайки антенны передатчика в аккурат над ногой процессора, а потом антенна идет с другой стороны платы вдоль дорожки от этой злосчастной ноги. Дорожка длинная, сантиметра три-четыре. Вот сижу и чешу репу — неужели наводка с антенны модуля столь мощная была, что пробивала нафиг транзистор в МК? На всякий случай между антенной и платой проложил кусок фольгированного текстолита и заземлил его на массу. Выглядит как броня, зато теперь ножки не дохнут. От так!

З.Ы.
На этом тему модулей HopeRF HM-R433/HM-T433 считаю закрытой.
Разве что библиотечку кода под обработку этого барахла потом предоставлю, когда отлажу и вычищу все баги. Вопросы в комменты.

easyelectronics.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *