Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AVR, связь на по ИК-каналу
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Br.Misha
Привет!
НУжно сделать 2 девайса и как то связать их по беспроводном каналу. Наиболее дешевый получается вариант с ИК связью, я хочу сделать так: на обеих устройствах поставить TSOP1736 и NE555 + несколько ИК-светодиодов. Таймер чтобы генерировать частоту 36 кгц и несколько передатчиков для более мощного излучения ИК-сигнала.
Тут все ок, но:
Передача будет идти через USART, то есть, ножка Tx будет подключена выводу RESET таймера, когда будет передаваться бит 1, то таймер будет активироваться и генерировать частоту 36 Кгц, когда 0 - частота генерироваться не будет. Приемник будет деактивироваться по время приема и активироваться во время передачи. Передача будет типа "запрос от главного - ответ от подчиненного", соотвестсвенно будет проверяться CRC16. Скорость не более 9600 бод.
Дальность будет до 50 метров, стоять будет в помещении где есть ЛДС.
Хотеось бы узнать, кто то использовал этот метод связи? У меня посто времени мало и как то наперед хотелось знать, использовать ИК, или сразу, чтобы не бучаться взять что то типа ZigBee.

Thanks!!!!!
kovigor
Цитата(Br.Misha @ Feb 27 2011, 14:56) *
НУжно сделать 2 девайса и как то связать их по беспроводном каналу.


Не нужен там никакой таймер NE555, все можно реализовать средствами самого МК. Но я думаю, что такое решение нормально работать не будет. Любая дистанционка, например, будет валить такой канал связи в два счета. Или придется делать специальный протокол, а это не самая простая задача. Дальше. Я очень сомневаюсь, что на 50 метрах это реализуемо. Слишком далеко. И почти наверняка понадобится прямая видимость. Связь будет пропадать при появлении на пути луча посторонних предметов или людей. Я бы сразу делал на чем-то вроде CC1100 от Texas Instruments, или даже на Telecontrolli. Или вот еще одно интересное решение (и недорогое):

http://www.1slon.ru/viewpage.php?page_id=2

А если надо быстро, и нужно промышленное решение, прошедшее сертификацию, то купите радиомодем, тот же "Невод".

Резюмирую. Мое мнение - только радиоканал ...
forever_student
Цитата(Br.Misha @ Feb 27 2011, 13:56) *
Привет!
...Наиболее дешевый получается вариант с ИК связью...Дальность будет до 50 метров...

В окончательном варианте вряд ли он будет наиболее дешевым. Тем более на таких расстояниях.

Цитата(kovigor @ Feb 27 2011, 14:42) *
...только радиоканал ...

+1
bekor
Цитата(Br.Misha @ Feb 27 2011, 14:56) *
Хотеось бы узнать, кто то использовал этот метод связи?

я использовал, и вот что скажу!
скорости 9600 ты скорей всего не получиш так как частота несушей 36КГц слишком мала, у меня максимум было 600 ну или 1200 бод.
Использовал 3 ИК диода последовательно и 9вольт
про 50 метров не знаю но в доме(в закрытом помешении) совсем необязательно иметь прямую видемость
и ловиться независимо от угла и предметов между приемником и передатчиком
Br.Misha
Понял, ИК откидаю.
Теперь хочу сделать радиосвязь. Почти идеально подошли бы ZigBee (например MRF24J40MA), но проблема в том, что он SPI, на одном устройстве это не проблема, а вот на втором его уже не получится поставить. Дело в том, что там будет 2 мастера и 1 слейв, долго рассказывать почему так, но в общем SPI отпадает. Можно правда сделать аппаратный, но на это уйдет время, которого очень мало, да и не люблю я юзать софтовые интерфейсы.

Может есть какой то надежный модуль типа удлинителя юарта и обязательно двуйсторонний? Я личном много таких знаю, но все они китайские и, ну ооооочень дибильные, в байтах разный мусор и т.д. Тут на первом месте вопрос не в цене а в надежности.
SKov
Поделюсь своим опытом.
Максимальная скорость - не более 2400, но устойчивая связь, пожалуй, начинается с 1200 и ниже. Между пакетами данных (старт+8бит+стоп) надо вставлять пассивные промежутки длительностью хотя бы 3 бита. Дело в том, что время активности и пассивности передатчика должно быть примерно как 1 к 2, иначе приемник не будет четко работать.
Помехоустойчивость достаточно высокая. Лампы дневного света не должны сильно мешать. 50 метров - легко при организации направленного излучения (отражатель, линза). Прямая видимость обязательна на таком расстоянии, хотя конечно все зависит от мощности излучения. Если у вас на передатчике киловаттный лазер, то в принципе можно и в отраженном свете работать. Например, от облаков wink.gif
Есть трехногие приемные модули с повышенной частотой модуляции входного излучения. Сейчас нет под рукой даташита, но на память могу сказать, что достигается 20кбит скорость передачи. Поищите в и-нете, если такой вариант вам интересен.

Ну вот, пока писал, уже тема отпала wink.gif
kovigor
Цитата(Br.Misha @ Feb 27 2011, 16:57) *
Может есть какой то надежный модуль типа удлинителя юарта и обязательно двуйсторонний?


"Удлинитель юарта" - это, например, BlueTooth - модули вроде этих:

http://www.sena.com/download/datasheet/ds_promi_esd.pdf

А вообще их довольно много. Опять же, может, лучше радиомодем купить ? Это ведь тоже "Удлинитель юарта" ...

Кстати, можно взять любой модуль вроде CC1100, и с помощью МК сконвертировать его интерфейс в I2C, который, в свою очередь, поддерживает мультимастерный режим.

Ну и последнее. Если нет крайней необходимости, мультимастерный режим лучше не использовать ...
Леонид Иванович
Использовал модули YS-1100U (433 МГц), это фактически удлинитель UART. На скорости 9600 бод дальность получается больше 300 метров.

Что касается ИК, то делал софтовый приемник и передатчик кода RC-5 на ATmega48. Но расстояние 50 м - это на пределе, да и скорость там порядка 600 бод.
kovigor
Цитата(Леонид Иванович @ Feb 27 2011, 18:26) *
Использовал модули YS-1100U (433 МГц), это фактически удлинитель UART. На скорости 9600 бод дальность получается больше 300 метров.


Это при прямой видимости ? В обычной городской многоэтажке не пробовали ? Просто интересно ...
Br.Misha
Люди, я тут малек тупонул и ошибся с расщетами, дальность будет не 50 метров а 5 сантиметров, ну максимум 10 см. Как на счет использования ИК приемопередатчиков, которые стоят в мобилках? Я так понял, что ик сигнал от мобилки тоже модулированый. Какая там частота? есть ли приемопередатчики, которые можно было бы подключить к юатру напрямую, чтобы не приходилось дополнительно генерировать частоту(тоесть чтобы в приемопередатчике бл встроен генератор)?
kovigor
Цитата(Br.Misha @ Feb 27 2011, 18:38) *
дальность будет не 50 метров а 5 сантиметров, ну максимум 10 см.


Тогда и беспроводной канал, скорее всего, не нужен. Зачем он вам ? Можно подробнее ? Может, хватит обычной гальванической развязки на оптроне ?
Br.Misha
Между девайсами будет преградка из прозрачного пластика, и их будет несколько. Пользователь должен подойти к каждой и с помощью портативного девайса быстро считать данные
kovigor
Цитата(Br.Misha @ Feb 27 2011, 19:22) *
Между девайсами будет преградка из прозрачного пластика, и их будет несколько. Пользователь должен подойти к каждой и с помощью портативного девайса быстро считать данные


Тогда трансивер вроде TFDU5307 …
нечитатель
Цитата(Br.Misha @ Feb 27 2011, 17:38) *
подключить к юатру напрямую, чтобы не приходилось дополнительно генерировать частоту(тоесть чтобы в приемопередатчике бл встроен генератор)?
1. Что мешает генерировать частоту той же микросхемой, которая название раздела? *
2. Чем не устроил бы вариант размещения темы, например, в разделе Пайка, монтаж, отладка, ремонт?

* уже выше про это намекалось.
Леонид Иванович
Цитата(kovigor @ Feb 27 2011, 18:34) *
Это при прямой видимости ? В обычной городской многоэтажке не пробовали ? Просто интересно ...


В условиях города проверял только на скорости 1200 бод. Одно устройство находилось на 3-м этаже внутри дома, второе - в руках на улице. Прямой видимости не было. Связь была устойчивой примерно 500 метров.
rx3apf
Цитата(Br.Misha @ Feb 27 2011, 17:38) *
Люди, я тут малек тупонул и ошибся с расщетами, дальность будет не 50 метров а 5 сантиметров, ну максимум 10 см. Как на счет использования ИК приемопередатчиков, которые стоят в мобилках? Я так понял, что ик сигнал от мобилки тоже модулированый. Какая там частота?

Немодулированный. Читать описание низкоскоростного стандарта IrDA. Если скорости небольшие, то вполне можно обойтись и модулями приемников дистанционного управления и ширпотребными ИК-светодиодами (трансиверы IrDA дороже и менее дальнобойные). А при сантиметровых дальностях можно воспользоваться принципом RFID - ВЧ-накачка со стороны считывателя и модуляция демпфированием со стороны абонента. Через любую диэлектрическую перегородку - без проблем.
Br.Misha
в украине нашел только TFDU4100, скорость 155,2 кбит. С ним кто нить работал?
rezident
Цитата(Br.Misha @ Feb 28 2011, 01:37) *
в украине нашел только TFDU4100, скорость 155,2 кбит. С ним кто нить работал?
Лет пять назад делал проект (который не пошел в серию), где применялись эти трансиверы. На скорости 38400 в пределах комнаты даже на отраженном (от листа белой бумаги, например) сигнале работали.
kovigor
Цитата(Br.Misha @ Feb 27 2011, 23:37) *
в украине нашел только TFDU4100


А это ?

http://www.imrad.kiev.ua/search.shtml?qs=tfdu&query=any
EugenyAM
Цитата(Леонид Иванович @ Feb 27 2011, 20:26) *
Использовал модули YS-1100U (433 МГц), это фактически удлинитель UART. На скорости 9600 бод дальность получается больше 300 метров.

Что касается ИК, то делал софтовый приемник и передатчик кода RC-5 на ATmega48. Но расстояние 50 м - это на пределе, да и скорость там порядка 600 бод.


А что можно применить на скорости 250 Кбод?
Расстояния до 50-80м, закрытое помещение, гарантированная прямая видимость, передача в одну сторону.
На ИК не получится? Как могут влиять отопительные приборы и лампы? Просто видел нечто подобное в системах синхронного перевода - излучающая панель примерно формата A4 - тремя панелями покрывается примерно треть футбольного поля. Мне достаточно зоны приема на противоположной стене примерно 2x2 м (чтоб долго не прицеливаться).
В помещении может быть много мобильников, точка Wi-Fi, трубки DECT, микрофонные радиосистемы диапазона 800 МГц.

SKov
Цитата(EugenyAM @ Mar 16 2011, 08:32) *
А что можно применить на скорости 250 Кбод?
Расстояния до 50-80м, закрытое помещение, гарантированная прямая видимость, передача в одну сторону.
На ИК не получится?

Можно использовать IRDA приемник с приличной входной линзой и отдельным передатчиком.
Или что-то типа фидолинка:
http://s-kov.narod.ru/optolink/M1/index.htm
http://s-kov.narod.ru/optolink/index.htm
EugenyAM
Цитата(SKov @ Mar 16 2011, 13:00) *


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

Цитата(SKov @ Mar 16 2011, 13:00) *
Можно использовать IRDA приемник с приличной входной линзой и отдельным передатчиком.


а если с линзой на передающей стороне поиграться? например 1W ИК-диод серии emitter с линзой 15 градусов?
а на приемной просто IrDA модуль?
SKov
Цитата(EugenyAM @ Mar 16 2011, 10:38) *
Это уже лазер, не хочется связываться с юстировкой при инсталляции. Хочется повесить две коробки одна напротив другой, чтобы все работало и смещение в процессе на пару сантиметров никому не мешало.

Там лазер только в названии wink.gif
Если вам не надо 1км, то на 100м отлично работает светодиод.

Цитата
а если с линзой на передающей стороне поиграться? например 1W ИК-диод серии emitter с линзой 15 градусов?
а на приемной просто IrDA модуль?

Светодиод тем и хорошо, что у него уже есть линзочка. wink.gif
В принципе, можно поставить доп линзочку мм15-20, как это сделано на фотках. Но лучше линзу на приемнике.
А лучше всего - и там и там.
Br.Misha
Купил я TFDU4101. Спаял 2 девайса, ниже схема одного с них. Установил SD в 0, а TXD в 1, должен был загореться светодиод на TFDU4101. Чтобы проверить, я посмотрел на модель через камеру, но ИК-передатчик не горел, я пробовал еще устанавливать SD в 1, но ничего не изменилось. Подскажите плиз в чем косяк.
Да, и еще: в даташите на третей странице чертеж модуля выполнен излучателем вперед? Просто если наоборот, тогда у меня плата неправильно разведена.
defunct
Цитата(Br.Misha @ Apr 10 2011, 03:36) *
Установил SD в 0, а TXD в 1, должен был загореться светодиод

"An on-chip protection circuit disables the LED driver if the TXD pin is
asserted for longer than 50 μs"
Подавайте на TXD импульсы длительностью не более 50mks.
Второй момент это если мне не изменяет память активный уровень TXD не "1", а "0".
Br.Misha
С передачей вроде как разобрался, теперь начались проблемы с приемом.
Когда передатчик отправляет байт по ИК на приемник, то на приемнике должен загореться светодиод (в прерывании RXC) но он не загорается, потом я просто подключил провод от ТХ передатчика к RX приемника - светодиод загорелся, значит проблема в ИК связи. Потом я отключил юарт и написал в бесконечном цикле if (!CheckBit(PIND, 0)) UART_LED_TX_ON; тоесть если на ноге RXD низкий уровень, то включить светодиод, а через пол секунды он тушится по таймеру. Когда подал питание, то светодиод не горел, включил питание девайса с предатчиком - светодиод загорелся, также загорается когда я нажимаю кнопку на ПДУ или включаю ЛДС. Далее я подключил выход модуля на приемнике к компу (через переходник на CP2102) но в терминале ничего небыло, даже мусора!!
Я не могу понять в чем проблема, особенно непонятно, почему когда подключил модуль к ТТЛ преобразователю на компе, то даже мусора небыло(когда коснулся провода передатика то в терминале был мусор, значет преобразваель работает).

Возможно, проблема в том, что я поставил 2 резистора по 68 Ом(в моем прошлом посте схема), а по ДШ и схемам ИК трансиверов в интернете там нужно ставить 14 Ом и 47 Ом, но у меня таких сейчас нету. Купить их смогу не раньше среды, поэтому, чтобы не терять в пустую время, хотелось бы знать, проблема в этих резисторах или в чем то другом?
defunct
Цитата(Br.Misha @ Apr 10 2011, 18:14) *
проблема в этих резисторах или в чем то другом?

Сомневаюсь что проблема в этих резисторах. Хотя можете поэкспериментировать, тот который подключен к VCC можно заменить нулёвкой (перемычкой), второй влияет на мощность передатчика (т.е. дальность).

Когда подключаете модуль к компу, попробуйте переключить COM порт в IrDA режим. На мамке как правило есть специальный разъем для подключения IR модуля, вот к нему и подключите.

Цитата
Когда передатчик отправляет байт по ИК на приемник, то на приемнике должен загореться светодиод (в прерывании RXC) но он не загорается,

Приемник модуля не принимает сигнал собственного передатчика, точнее он его то принимает, но отбрасывает.
Br.Misha
Седня опять мучался с модулем. Поставил резисторы 47ом и 15ом. Теперь мообще приколько получается:
На обоих модулях выставленна скорость 100000 бод.
На передатчике передаются байты, на приемнике в прерывании по приему юарта загорается светодиод и через пол сек по таймеру тушится. Но светодиод на приемнике не загорается, даже если расстояние пол см. но если напрявляю обох (и приемник и передатчик) на ЛДС (11ватт), то светодиод загорается когда передатчик что нить передает. Когда отключаю ЛДС - не горит. Думал из-за лампы, но когда передатчик выключен, то на приемнике лед не горит (всмысле когда ЛДС направлена на приемник).
Думал что ИК приемнику нужна модуляция, и ЛДС ее добавляет. Взял ПДУ, понажимал кнопочки - приемник никак не реагирует.

Поставил скорость 9600. на ПДУ опять не реагирует, но когда направляю на ЛДС, то загорается даже когда выключен передатчик.

В чем тепе может быть проблема?
Marian
Цитата(Br.Misha @ Apr 16 2011, 01:36) *
Седня опять мучался с модулем. Поставил резисторы 47ом и 15ом. Теперь мообще приколько получается:
На обоих модулях выставленна скорость 100000 бод.
На передатчике передаются байты, на приемнике в прерывании по приему юарта загорается светодиод и через пол сек по таймеру тушится. Но светодиод на приемнике не загорается, даже если расстояние пол см. но если напрявляю обох (и приемник и передатчик) на ЛДС (11ватт), то светодиод загорается когда передатчик что нить передает. Когда отключаю ЛДС - не горит. Думал из-за лампы, но когда передатчик выключен, то на приемнике лед не горит (всмысле когда ЛДС направлена на приемник).
Думал что ИК приемнику нужна модуляция, и ЛДС ее добавляет. Взял ПДУ, понажимал кнопочки - приемник никак не реагирует.

Поставил скорость 9600. на ПДУ опять не реагирует, но когда направляю на ЛДС, то загорается даже когда выключен передатчик.

В чем тепе может быть проблема?

Попробуйте так, ваш проц запустите на постоянную передачу данных.
Ко второму приемнику(я надеюсь их у вас два) подключите светодиод(через 470 ом на общий) и опишите что видите.
Во время передачи на SD подаете?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.