Не понимаю как доставать данные из полученного радиосообщения
- Войдите на сайт для отправки комментариев
Сб, 01/03/2014 - 22:43
Использую такое железо:
И библиотеку VirtualWire 1.15
Отправляю
'5','6','7','.','d','k',' ','t','e','s','t','#'
Получаю нечто такого вида:
Подскажите пожалуйста куда копать что бы понять эти кракозябры?
Отправляю побайтно. Принимаю по 5 кракозябр.
Пробовал отправлять один единственный символ. Приёмник принимал опять же разные кракозябры.
Подскажите пожалуйста куда копать что бы понять эти кракозябры?
Отправляю побайтно. Принимаю по 5 кракозябр.
Пробовал отправлять один единственный символ. Приёмник принимал опять же разные кракозябры.
Скорость передачи и приема в мониторе выставлена одинаковая ?
Еще похожий был вопрос, где все было настроено правильно, но проблему с "греческим" так и не удалось решить.
Можно и кусок кода отправки данных выложить...
denis64,а код передающий и код принимающий покажете ?
Да скорость одинаковая. Примеры из библиотеки (я их не менял):
Передатчик:
Да, не имея устройства не поймешь... Че хоть за модуль, 315/433 RF link kit?
Какая схема сейчас собрана? МК1 --- Передатчик --- Приемник --- МК2 --- ПК (для дебага в мониторе).
1) Для начала сделайте меньше скорость серийника
Serial
.begin(115200); Протестируйте отдельно. В мониторе тоже не забыть поменять. В передатчике в комент это -
Serial
.println(msg);
2) Подозрительная строка:
vw_set_ptt_inverted(
true
);
// Required for DR3100
комент на нее. Проверить отдельно.3) С пинами transmit_pin и receive_pin и transmit_en_pin в обоих программах все правильно? (хз зачем их столько, вроде по 1 пину общение идет!?)
4) vw_setup(2000); в обоих скетчах на 2400, потом на 4800, пробуйте. Проверить отдельно.
5) Попробовать этот пример, похож на ваш, но без мусора. Интересный пример по подключению к Serial пинам, без либы VirtualWire. Примеры в книге. Дока по VirtualWire.
0) да, такая схема
1) уменьшил до 9600
2) да, непонятная строка, закоментил
3) тоже непонимаю так как общение одностороннее, одного пина должно хватать, но трогать не стал
4) ничего из вышеперечисленного не помогло, а вот 4 вопрос: сделал наоборот - поставил
vw_setup(1000);
// Bits per sec
и всё заработало!4) ничего из вышеперечисленного не помогло, а вот 4 вопрос: сделал наоборот - поставил
vw_setup(1000);
// Bits per sec
и всё заработало!Это конечно хорошо!
Но все передают на большей скорости, а вы на меньшей. Я бы на вашем месте разобрался с этим моментом. И свой серийник поднимите обратно повыше, хот на 38400, 57600, ...
Да меня совершенно прикладная задача интересует, передать нажатие кнопки на пульте. И такие скорости вполне устраивают. А серийник я вообще из проекта исключу, он сейчас просто для отладки.
Ээээ..?? Радиопульт на ардуине ? Проще взять что-то типа этого http://www.ebay.com/itm/281037024484 и сопряч с арудиной..
Этот вариант рассматривался но он не подходит так как обязательно нужно 6 каналов и ударопрочный водонепроницаемый корпус большого размера. Пульт управления кранбалкой в довольно большом цеху.
Замучились уже с проводом свисающим с потолка. Он то перекручивается то не с той стороны груза висит.
дубль
Эти пульты есть и на большее количество кнопок .Сама микросхема в них поддерживает больше кнопок,чем выведено(как раз до 6)..
Можно использовать плату от этих пультов.
А на ардуино,нужно городить будет спящий режим с пробуждением по прерыванию,иначе замучаетесь батарейки менять.
ЛЮЮЮЮЮДИИИИИИИ!
Весь на измене я! Макните мою пустую голову в то место где можно зачерпнуть мозгов.
ВСЁ с этими кодами выше работает. Но только когда приёмник (с arduino nano) получает питание от USB компьютера.
Почему приёмник отказывается принимать сигнал (будучи запитанным от +5 c arduino nano) в то время как она запитана от питания +5,17 V приходящего от USB зарядного блока? Так же отказывается работать когда дуина запитана через VIN от батареек.
И вообще сколько я конфигураций питания перепробывал - ни одна не работает кроме как от компа с юсб.
Передатчик работает от батареек.
А на ардуино,нужно городить будет спящий режим с пробуждением по прерыванию,иначе замучаетесь батарейки менять.
denis64,
>> И вообще сколько я конфигураций питания перепробывал - ни одна не работает кроме как от компа с юсб.
вероятно, оно работает только когда есть активный serial порт.
Но почему так? Удалил из приёмника всё что касается сериалпорт (и вообще почти всё) и всё равно работает только от компьютера.
Вот код приемника:
denis64, для начала нужно взять тестер, и убедиться что питание есть на всех важных точках. Питаете от USB зарядки? Значит проверяйте на usb разъёме, на диоде шоттки, на пине +5 вольт.
denis64, для начала нужно взять тестер, и убедиться что питание есть на всех важных точках. Питаете от USB зарядки? Значит проверяйте на usb разъёме, на диоде шоттки, на пине +5 вольт.
От этой же зарядки запитаны релейные модули которыми планировалось управлять. Они работают нормально.
denis64, ну чудес-то не бывает. В скетче компорт не упоминается -значит проблема в питании. Нужно семь раз всё перемерить. На модуль приёмника питание приходит, когда запитываете от внешнего источника? Сфотографируйте наконец, всем миром посмотрим что вы там насоединяли :)
если релейные модули отключить тоже не работает?
если релейные модули отключить тоже не работает?
передатчик в кадр не попал но он работает нормально, когда его выключаешь - приём прекращается
(речь о приёме при запитке от юсб компа конечно)
вот это рабочая конфигурация (питание отключено пока, но в работе 13 пин как и положено по скетчу активен и через него светится белый диод)
если этот штекер вытащить и воткнуть от юсб зарядного устройства то приём прекращается
напряжение на выходе с зарядки нормальное 5 в, мощности с головой хватает
если туда вообще ничего не совать а подключить положительные 6 вольт от батареек на vin ардуины и землю на gnd то ардуина с приёмником работают, на приёмнике питание есть, диоды на плате как положено горят
но приёма нет
пробовал другой мк в качестве приёмника а так же менял местами эти - не помогло
вот такие модули - крайне капризные (иногда пару вообще не удается запустить - у меня несколько пар таких валяются, не работают, а выкинуть вроде жаль).
С дальностью работы - тоже не все так хорошо, как хотелось бы.
Боюсь, что у вас в реальных условиях работы (цех, насколько я понял) будет еще хуже, чем на макетке - добавятся проблемы.
Кстати, что будет, если вдруг какая-то из релюх, управляющих кран-балкой включится и не получит вовремя команду на выключение?
denis64, да, визуально всё в норме. Попробуйте другой БП на 5 вольт и ток не менее 0,5 ампера, или подайте на вход Vin напряжение не менее 8 вольт тоже помощней. Высокочастотная техника капризна к питанию..
стати, что будет, если вдруг какая-то из релюх, управляющих кран-балкой включится и не получит вовремя команду на выключение?