Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

Использование GSM GPS WiFi Bluetooth NRF. ESP, LAN и др. модулей и обсуждение пользовательских блоков к ним
Ответить
alexzh
Рядовой
Сообщения: 6
Зарегистрирован: 18.09.2015{, 12:45}
Репутация: 0
Откуда: Москва

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#1

Сообщение alexzh » 18.09.2015{, 13:56}

Прошу автора уделить большее внимание радиомодулям  FS1000A / XY-MK-5V433Mhz TX/RX Module  и nRF24L01+.  модули дешевые, библиотек для них достаточно,но в Flprog никак не использовать. (Если я ошибаюсь выложите пример передачи данных с термодатчиков).  По сути в Flprog реализована поддержка достаточно сложных радиомодулей  WI-FI, bluetooth, интерфейс RS-485  для «продвинутых проектов». Но, для популяризации проекта Flprog среди начинающих непрограммистов, считаю необходимым поддержку Вашей программой, распространенных и дешевых радиомодулей.
Тем более в«хотелках» пользователей эта задача висит давно.
Последний раз редактировалось alexzh 18.09.2015{, 14:05}, всего редактировалось 1 раз.

Ruskat
Рядовой
Сообщения: 41
Зарегистрирован: 13.01.2017{, 12:43}
Репутация: 0
Откуда: Біла Церква

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#2

Сообщение Ruskat » 13.02.2017{, 11:52}

Хочу поинтересоваться, как проходит прогресс по сдруживанию программы с упомянутыми модулями, а то даже знатные люди в этой теме не могут нормально обьяснить, как управлять радио-модулем с пульта, по принципу как и с ИК пульта.

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 33
Откуда: Коломна
Имя: Станислав
Контактная информация:

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#3

Сообщение Boroda » 13.02.2017{, 12:23}

Ruskat, с nRF24 еще более менее понятно, помоему блоки на форуме есть. Но эта гадость бьет только по квартире и то не везде и раз-два в сутки виснет, раз в минуту ее инициализировать надо (с питанием все в порядке: индуктивности, кондеры и т.д.).

С приемниками, аля 20 рублей за ведро, все намного сложнее. Декодером надо постоянно и очень быстро опрашивать выход приемника (период порядка 50-80 микросекунд), Но это в стиле FLProg сделать не удается, потому как народ лепит по принципу: все в кучу на одной плате (иногда период цикла достигает десятка секунд). Если приемник повесить на вход прерывания Ардуины, то программа там зависнет навсегда, потому как шум с приемника бешенный. Я делал блоки для микросхем 2262 - работает пока не поставишь на плату что-нибудь тяжелое. Попытался сделать опрос на прерывании от таймера - работало очень нестабильно и пока это дело забросил (дома ремонт, некогда возиться).

Добавлено (13.02.2017, 12:23)
---------------------------------------------
Передавать/принимать данные неибходимо с помощью ШИМ (единица - импульс 1500мкс, ноль - импульс 500мкс, пауза - 500мкс). Прием/передача по USART - бред, потому как от большой разницы в длине импульсов у приемника срывается синхронизация и он начинает шуметь.

П.С. длина импульсов примерная.
Последний раз редактировалось Boroda 13.02.2017{, 12:33}, всего редактировалось 1 раз.

Ruskat
Рядовой
Сообщения: 41
Зарегистрирован: 13.01.2017{, 12:43}
Репутация: 0
Откуда: Біла Церква

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#4

Сообщение Ruskat » 15.02.2017{, 08:49}

Boroda,  Ну так с готовыми же релейными радио-модулями все нормально...
Тем более, что на Ардуино, в отличии от готового модуля можно детально скорректировать все.
Что принимать, что слушать, что игнорировать...
Последний раз редактировалось Ruskat 15.02.2017{, 08:50}, всего редактировалось 1 раз.

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 33
Откуда: Коломна
Имя: Станислав
Контактная информация:

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#5

Сообщение Boroda » 15.02.2017{, 11:00}

Ruskat, эти вещи сравнивать нельзя. У готового радиомодуля нет панели Nextion, модбаса, логики, кнопок и т.д. Он заточен только под прием и расшифровку. Еще раз напишу:
Boroda писал(а):Я делал блоки для микросхем 2262 - работает пока не поставишь на плату что-нибудь тяжелое
Функция приема сигнала RF работает? Работает! Поставишь Модбас - и перестает работать! А потому как у Модбаса в коде стоит Delay(5) перед передачей и после передачи.
Люди брали мои блоки и радовались: "стреляет посылками как из пулемета". А потом ставили на плату экран графический и расстраивались. Программа должа писаться под задачи. FBD - это автоматика, простые и сложные Логические схемы. А вот все эти плюшки (типа экранов, RF, IR, WEB, DS18Bxx) просто не укладываются в саму концепцию FBD и в данном случае пользователь извращается как может.

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

Добавлено (15.02.2017, 09:46)
---------------------------------------------
Если программу писать кодом под определенные задачи, то можно хоть что делать. Я в двух килобайтах памяти реализовывал динамическую индикацию с регулировкой яркости длительностью засвечивания сегментов индикатора, DS18B20, прием/расшифровку сигналов с десяти радиодатчиков с шифровкой сообщений (динамический код), опрос кнопок, внутренние часы реального времени с коррекцией хода, меню из 15 пунктов. И все это прекрасно работало. Вся конструкция состояла из PIC16F628, приемника 433МГц, индикатора и кнопок. Резервное питание 4,5В 0,7мА. Кварц на 4МГц стоял, значит частота процессора 1МГц. У ардуины частота процессора 16МГц.

Добавлено (15.02.2017, 11:00)
---------------------------------------------
Только из-за этого я попросил Автора FLProg Сергея сделать Условия на выполнение плат. Спасибо ему огромное за реализацию. Основной цикл крутится очень быстро (100-200 микросекунд) и в нем можно выполнять какие-то действия, требующие незамедлительной реакции. А все экраны, датчики, сложные с точки зрения контроллера преобразования и т.д. выполнять только тогда, когда это необходимо.
Вот Вы считали датчик и сразу сделали деление на 10 в формате Float, которое занимает очень много времени. Если Вы это деление просто поставите на плату, оно будет выполняться каждый цикл, а зачем? Ведь считывание датчика происходит каждые две секунды. Контроллер сделает 500 делений за секунду одного и того же числа бесполезно, а его ведь можно сделать один раз после чтения датчика. И таких бесполезных действий море.
Вот и получается, что я свой блок 2262 смогу использовать с дисплеем 1602 и модбасом, потому как я правильно распределил нагрузку процессора, а другой пользователь скажет, что блок нерабочий, потому как без понимания подошел к реализации программы.

П.С. в модбасе эти задержки Delay(5) можно вообще выкинуть, потому как переключение MAX485 прием/передача занимает пару десятков наносекунд. А команда DigitalWrite занимает 4 микросекунды.
Последний раз редактировалось Boroda 15.02.2017{, 11:25}, всего редактировалось 1 раз.

Ruskat
Рядовой
Сообщения: 41
Зарегистрирован: 13.01.2017{, 12:43}
Репутация: 0
Откуда: Біла Церква

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#6

Сообщение Ruskat » 17.02.2017{, 10:50}

Boroda, Благодарен за Ваши пояснения, но объясню по проще...
Я хочу с помощью FLprog но на Ардуино собрать систему похожую на такую:
СпойлерПоказать
Поэтому и интересуюсь, как кнопки пульта привязать к соответствующим реле.

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 33
Откуда: Коломна
Имя: Станислав
Контактная информация:

Радиомодули FS1000A / XY-MK-5V 433Mhz TX/RX и nRF24L01+

#7

Сообщение Boroda » 01.03.2017{, 23:49}

Ruskat, если ничего не добавлять, то вполне реализуемо, даже можно какие-либо выходы сделать с таймерами. Пульт лучше взять стандартный, потому как с корпусами проблема всегда возникает. Просто надо пульт расковырять и посмотреть, что внутри стоит или коды кнопок с помощью приемника и компа прочитать. Можно конечно и пульт на Ардуине сделать, но тогда с питанием проблемы будут, кучу диодов от кнопок ставить придется и дальность упадет из-за низкого напряжения.

Добавлено (01.03.2017, 23:49)
---------------------------------------------
Добавил блоки приема/передачи посредством дешевых модулей RF433. Блоки приема работают на прерываниях
независимо от текущей программы, блоки передачи вносят задержку на
выполнение программы, во время передачи.

Ответить

Вернуться в «Беспроводная, проводная связь»