Преобразователь интерфейса RS485 - TTL
Преобразователь интерфейса rs 485 в уровень TTL разработан для работы с микроконтроллерами через универсальный асинхронный приёмопередатчик (UART) или другими устройствами поддерживающими TTL уровень, совместим преобразователь конечно и с arduino.
За основу я специально взял не очень популярную микросхему среди радиолюбителей (иначе не интересно)
Завалялись у меня парочка микросхем SH65HVD22 фирмы Texas Instruments , в любительских кругах она практически не встречается,информации в интернете кроме Dataheet на нее не нашлось, схем с ее применением и подавно, зато микросхема встречается в промышленных системах ОПС (сигнализация), вот и попала она ко мне из сгоревшего блока АСПТ (пожаротушение) фирмы Bolid.
Кодовая маркировка микросхемы VP22 из-за сложности найти расшифровку множество форумов по ОПС забиты вопросами что за микросхема VP22, знают про нее в основном те кто занимается ремонтом систем ОПС
Для внесения ясности я и решил собрать rs-485 преобразователь на ней, а не на популярных max485 хотя можно ставить и ее без изменения схемы.
Основу схемы я взял с "датащита" микросхемы SH65HVD22, некоторые элементы подсмотрел в той же аппаратуре автоматического пожаротушения (болид), что то добавил от себя.
Схема преобразователя интерфейса RS 485 до TTL уровня показана на рис.1
Входной защитный и согласующий узел практически полностью взят со схемы С2000-АСПТ Bolid изм.22 ver.3.06
Преимущество такой входной цепи в том что не нужно подбирать согласующее сопротивление и сопротивление защитного смещения относительно количества устройств в линии интерфейса.
Есть лишь один Jamper (перемычка) включающая в линию согласующий резистор 620 Ом если это первое или последнее устройство в линии.
Предохранители применены SMD на 375 mA
Микросхема как уже говорилось SH65HVD22 с smd кодом VP22 (VP - не опечатка)
но с успехом можно так же применить распространенную max485 . о которой уже говорилось, у этих микросхем выводы идентичные.
Также подойдут SH65HVD21, SH65HVD22, SH65HVD23, SH65HVD24. и др. фирм.
VD1, VD3, VD4, VD5 применил smd в корпусе sod80, честно - поставил первые что под руку попались.
Вот с VD2, VD6 не все так просто, и VD2 и VD6 - защитный диод или как его еще называют подавитель выбросов, фирмы Jinan Gude Electronic Device .
VD2 - SMAJ 6.5 A smd код диода HK ( может быть и с цифрами, пример - HK 1425)
параметр диода Uвкл. - 11,2 v In - 33.3 A
VD6 - SMAJ 10 A smd код диода HX ( тоже может быть с цифрами, пример - HX 1428)
параметр диода Uвкл. - 17,0 v In - 22 A
Параметры привел специально что б можно было подобрать аналоги.
bc846, bc546 smd код - 1BW или другой n-p-n общего назначения.
Светодиоды конечно можно не ставить, так как я использую плату с тестовыми устройствами, мне удобно наблюдать за работой устройства.
Так же можно обойтись и без транзистора, просто подавать на выводы микросхемы RE и DE (2 и 3) логический ноль для передачи и единицу на прием.
В моем устройстве на фото позже был заменен транзистор на p-n-p структуру для управления низким уровнем, предполагалась также немного другая входная цепь - от сюда и лишние детали на плате (не обращайте внимания)
Первая плата не удалась - банально забыл отзеркалить при печати и понял лишь когда протравил.
зато опробовал на <<бракованной>> плате шелкографию при помощи ЛУД технологии.
Получились не плохо на твердую четверку.
Рабочая плата как обычно получается не такой красивой:
К тому же рисунок не совпал и его пришлось стереть ацетоном, повторно мучится не стал и сел паять модуль.
Для тех кто планирует по связывать различные устройства на больших расстояниях желательно выравнять потенциалы как на рисунке ниже:
Если у вас возникли проблемы с поиском диодов, можно собрать простое согласующее устройство без защиты, правда в этом случае резисторы защитного смещения R2 и R3 желательно подобрать из расчета количества устройств в линии. Схема приведена ниже:
Приемники большенства микросхем RS485 имеют пороговый диапазон распознавания сигнала на входах A-B составляющий ±200мВ. Если напряжение на А,В меньше порогового (около 0), то на выходе RO (приемник) могут появляться произвольные логические уровни из-за несинфазной помехи в линии. Такое может случиться либо при отсоединении приемника от линии, либо при отсутствии в линии активных передатчиков, когда никто не задает уровень. Чтобы в таких ситуациях избежать выдачи ошибочных сигналов на приемник UART, необходимо на входной линии A-B гарантировать разность потенциалов Uab > +200мВ. Это смещение при отсутствии входных сигналов обеспечивает на выходе приемника логическую "1", поддерживая, таким образом, уровень стопового бита.
Резисторы R2 и R3 рекомендуется подбирать чтобы суммарное сопротивление между линиями А,В и питанием с массой 650 Ом но традиционно ставят 560 Ом.
То есть при двух приемниках R2 и R3 равны примерно 1,2 кОм
при трех примерно 1,8 кОм
при десяти 5.6 - 6.2 кОм и так далее.
Кто хочет более детально проработать эту тему советую почитать:
- Интерфейс RS 485 - наука и искусство !
- Описание стандарта EIA485 (RS485)
- RS-485 для чайников
Своими успехами делитесь на нашем форуме и комментариях.
|