Кратко о модуле MAX485
Модуль MAX485 преобразует сигналы UART с TTL-уровнями в двухпроводной дифференциальный интерфейс RS485 и обратно. Он рассчитан на питание 5 В, работает в полудуплексном режиме и требует управления направлением через входы DE и RE.
Ключевые характеристики
- Функция
- UART TTL ↔ RS485
- Микросхема
- MAX485
- Питание
- 5 В; рабочий диапазон MAX485 — 4,75–5,25 В[1]
- Логические уровни
- 5 В; для контроллера с логикой 3,3 В необходимо проверить допустимые уровни и при необходимости согласовать их
- Режим шины
- двухпроводной, полудуплексный[1]
- Предельная скорость
- до 2,5 Мбит/с для трансивера MAX485; практическая скорость зависит от длины и параметров линии[1]
- Нагрузка шины
- до 32 стандартных единичных нагрузок; фактическое количество узлов зависит от всех трансиверов и цепей смещения[1]
- Управляющие контакты
- DI, DE, RE, RO
- Линия RS485
- A и B, винтовой клеммник и контактные площадки
- Терминация
- номинал 120 Ом; наличие и способ отключения резистора необходимо проверить на полученной плате
- Рабочая температура
- 0…+70 °C
- Размеры модуля
- 44 × 14,7 × 20 мм
- Гальваническая развязка
- нет
Подробное описание и особенности
Что делает MAX485
MAX485 содержит один передатчик и один приёмник. Вход DI принимает данные от TX контроллера, а выход RO передаёт принятые данные на его RX. Линии A и B передают дифференциальный сигнал, поэтому витая пара лучше противостоит синфазным помехам, чем обычный TTL-UART на длинном проводе.[1][2]
RS485 не преобразует скорость, адрес или структуру кадра. Скорость, количество битов, чётность и стоп-биты должны совпадать на всех узлах, а прикладной протокол формирует программа контроллера.
Управление полудуплексом
DE активирует передатчик высоким уровнем, а RE активирует приёмник низким уровнем.[1] Для управления одним GPIO эти входы можно соединить: HIGH включает передачу, LOW — приём. После отправки последнего бита программа должна дождаться фактического завершения передачи UART и только затем вернуть модуль в режим приёма.
Одна пара A/B поочерёдно используется в обоих направлениях. Программа сети не должна допускать одновременную передачу несколькими узлами, иначе возникает конфликт драйверов шины.[2]
Длина, скорость и топология
Скорость 2,5 Мбит/с и длина около 1200 м не являются одновременным режимом. Длинная линия возможна только при значительно меньшей скорости, с соответствующей витой парой, правильной терминацией, короткими ответвлениями и приемлемым уровнем помех.[1][2]
Сеть прокладывают как линейную шину. Кабель с волновым сопротивлением 120 Ом терминируют резисторами 120 Ом на двух физических концах магистрали, а промежуточные узлы оставляют без терминации. Перед монтажом проверьте сопротивление между A и B на обесточенном модуле: способ установки или отключения терминатора может потребовать перемычки либо работы с резистором на плате.[2]
Подойдёт / не подойдёт
Подойдёт
- для добавления двухпроводного RS485 к 5-вольтовому микроконтроллеру с UART;
- для обмена между контроллером и датчиком, счётчиком, приводом или панелью с совместимым RS485;
- для Modbus RTU, если протокол реализован в прошивке и параметры порта совпадают;
- для макетов и систем автоматики, где направлением DE/RE можно управлять программно.
Не подойдёт
- для прямого подключения к USB или RS232;
- для четырёхпроводного полнодуплексного обмена;
- для 3,3-вольтового контроллера без проверки и согласования логических уровней;
- для линий, где обязательна гальваническая развязка или специализированная грозозащита;
- для гарантированной связи на 1200 м или 2,5 Мбит/с без расчёта и проверки кабельной системы.
Примеры применения
Связь между двумя 5-вольтовыми контроллерами
По одному модулю устанавливают на каждом конце витой пары. Контроллеры передают UART-данные через DI/RO и программно переключают DE/RE, а терминаторы оставляют на двух концах линии.
Шлюз Modbus RTU
Контроллер формирует запросы Modbus RTU через UART, а MAX485 преобразует их в сигналы RS485 для совместимого счётчика, датчика или привода. Адрес, скорость, чётность и стоп-биты настраивают в соответствии с документацией конечного устройства.
Распределённый сбор данных
Несколько узлов можно объединить линейной шиной для поочерёдного опроса. Протокол должен обеспечивать адресацию и не допускать одновременной передачи двумя устройствами.
Подключение
Проверьте питание и логику
Отключите питание. Подавайте на VCC стабилизированные 5 В и подключите GND к земле контроллера. Если UART контроллера работает на 3,3 В, согласуйте уровень сигнала RO перед подключением к его RX и проверьте допустимые уровни других GPIO.
Соедините UART
TX контроллера подключите к DI, а RO — к RX контроллера. DE и RE подключите к управляющим GPIO или соедините вместе для управления одним выходом.
Подключите A и B
Проложите A и B одной витой парой и соедините одноимённые контакты узлов. Если связи нет, сначала сверьте обозначение полярности в документации второго устройства, поскольку на практике маркировка A/B у разного оборудования может отличаться.
Настройте терминацию
Обесточьте линию и проверьте наличие резистора между A и B. Оставьте терминирование только на двух физических концах магистрали; не подключайте 120 Ом на каждом промежуточном узле.
Начните с короткой линии
Проверьте обмен между двумя узлами на коротком кабеле и невысокой скорости. Затем увеличивайте длину, контролируя настройки UART, момент переключения DE/RE, топологию и отсутствие конфликта передатчиков.
Ограничения и безопасность
Питание модуля — 5 В
Не питайте модуль от 3,3 В и не превышайте 5,25 В. Для контроллера с 3,3-вольтовыми входами не подключайте RO напрямую, пока не подтверждена устойчивость входа к 5 В или не установлен преобразователь уровня.
Гальванической развязки нет
Модуль не защищает контроллер от опасной разности потенциалов между удалёнными узлами. Для кабеля между зданиями, рядом с силовым оборудованием или в системе с разными контурами заземления используйте изолированный RS485-интерфейс и соответствующую защиту линии.[2]
Не допускайте конфликта передатчиков
В полудуплексной сети одновременно должен передавать только один узел. Неправильная логика DE/RE вызывает искажение данных и дополнительную нагрузку на драйверы.
Дальность определяет вся линия
Кабель, скорость, терминация, длина ответвлений, количество узлов и помехи определяют практическую дальность. Перед окончательным монтажом проверьте связь в реальных условиях с требуемой скоростью и длиной.
FAQ
Можно ли питать модуль от 3,3 В?
Нет. Для MAX485 требуется питание 5 В в пределах 4,75–5,25 В. Для системы с 3,3-вольтовым контроллером используйте согласование логических уровней или трансивер, рассчитанный на 3,3 В.
Поддерживает ли модуль Modbus RTU?
Модуль обеспечивает физический интерфейс RS485. Modbus RTU будет работать, если его реализует программа контроллера, а адрес и параметры последовательного порта соответствуют конечному устройству.
Можно ли одновременно получить 2,5 Мбит/с и 1200 м?
Нет. Предельная скорость относится к короткой подходящей линии, а длина около 1200 м возможна только при значительно меньшей скорости и правильно спроектированной кабельной сети.
Нужен ли резистор 120 Ом?
Терминатор необходим на двух физических концах магистрали, если его номинал соответствует волновому сопротивлению кабеля. Промежуточные узлы не следует дополнительно нагружать терминаторами.
Что проверить, если обмен не работает?
Проверьте питание 5 В, общий GND, соединения TX→DI и RO→RX, полярность A/B, одинаковые параметры UART, управление DE/RE и терминацию. Первый тест выполняйте на коротком кабеле с двумя узлами.
Совместимый контроллер и альтернатива
Контроллер с логикой 5 В
Nano V3.0 ATmega328P Type-C имеет 5-вольтовую UART-логику и может управлять DI, DE и RE без преобразования уровней.
Автоматическое переключение направления и питание 3,3–5 В
Если отдельное управление DE/RE нежелательно или требуется прямая работа с 3,3-вольтовой UART-логикой, рассмотрите HW-0519 с автоматическим переключением направления.
Документы и источники
- Analog Devices / Maxim Integrated, MAX481/MAX483/MAX485/MAX487–MAX491/MAX1487 Datasheet, Rev. 10, 09/2014 — питание MAX485, полудуплексный режим, скорость, нагрузка шины и назначение контактов.
- Texas Instruments, The RS-485 Design Guide, SLLA272D, revised May 2021 — физический уровень RS485, топология, кабель, терминация, зависимость длины от скорости и гальваническая развязка.