Передача данных по 433.
- Войдите на сайт для отправки комментариев
Сб, 24/10/2015 - 13:23
Добрый день. в интернете очень много примеров как передать данные по 433, но ниодного примера как передать большие данные. больше чем 35 байт за раз. можно ли как то увеличить объем передачи данных
например мне нужно передать строку по радиоканалу такую:
4400 4400 500 1700 450 1750 500 1700 500 600 500 600 500 650 450 650 450 600 500 1700 550 1650 550 1700 500 600 500 600 500 600 500 600 500 650 450 1700 500 1700 500 1750 450 600 500 650 450 700 450 600 450 650 500 600 500 600 500 600 550 1700 450 1700 500 1750 450 1750 450 1700
куда и в каком направлении двигаться. что делать?
Двигайтесь в направлении разбивки длинной строки на части и передачи по частям.
Что-то типа
маркер начала передачи - часть1 - часть2 ... - частьпоследняя - маркер окончания передачи.
Туда же можно прицепить длину строки, количество частей, контрольную сумму и прочие навороты для надежности и достоверности.
IMHO, 433 мГц - не самый лучший канал для обмена сколько-нибудь длинными данными.
Попробуйте использовать библиотеку EasyTransferVirtualWire
Вот пример на основе датчика DHL11->
https://www.youtube.com/watch?v=gPGOPkj9sSQ&feature=youtu.be
Я лично этот пакет еще не использовал, но как понял с мануала, там создается структура и в ней можно задать какое количество переменных вы хотите передать (как насчет ограничения не в курсе), думаю для вашего случая пойдет...
EasyTransferVirtualWire
Там написано что структура не может превышать 26 байт
EasyTransferVirtualWire
Там написано что структура не может превышать 26 байт
Пардон не увидел, тогда действительно надо разбивать на разные пакеты с разными ID и так передавать...
это очень печально
Чего ж тут печального? Тем более "очень печального".
Совершенно стандартная практика.
Возможно, Вы будете удивлены, но вся информация в компьютере хранится в секторах дисков с обычным размером 512 байт. И больше в один сектор не впихнуть никаким способом. Тем не менее, ничто не мешает спокойно работать с многомегабайтными файлами даже при том, что сектора, относящиеся к файлу, могут располагаться в совершенно различных частях диска. А в некотороых случаях даже на разных дисках.
это все понятно. так много библиотек и нет реализации в передачи данных в ногу со временем
Это 433 мГц с модуляцией ASK/ООК - в ногу со временем ??
Не делайте мне смешно.
В ногу со временем берите модуль esp8266, это wifi
Инициализируйт tcp/ip соединение и шлите столько данных сколько заблагорассудится. Можно два модуля связать через домашнюю точку доступа или напрямую
стоит модуль кстати сопоставимо с вашим
esp8266 вроде как не стабилен
esp8266 вроде как не стабилен
Недавно пару дней назад разберался с ПО модулей SI4432, заказал себе две штуки, так вот там буфер может быть 255 байт, но реально заданно в библиотеке 50байт, думаю ввм как раз подойдет, это модули приемо-передатчика(модем433мГц) бьют вроде очень далеко, библиотека RF22(как-то так, по памяти пишу с мобилы) ищите примеры на ютубе у дмитрия осипова.
ImaSoft - ты супер!)
мне такой способ подходит. и число байт нормальное по длине
и я умещаюсь в числа от 0 до 255 потому что все мои числа кратны всегда 50 и максимальное число одним байтом я могу передать 12750. т.е. сначала разделить на 50 а когда придет умножить на 50
4400 4400 500 1700 450 1750 500 1700 500 600 500 600 500 650 450 650 450 600 500 1700 550 1650 550 1700 500 600 500 600 500 600 500 600 500 650 450 1700 500 1700 500 1750 450 600 500 650 450 700 450 600 450 650 500 600 500 600 500 600 550 1700 450 1700 500 1750 450 1750 450 1700