Мастер сети RS-485 для USART
Предназначен для обслуживания сети клиентских устройств по линии RS-485. Для подключения к микрокомпьютеру использует интерфейс USART.
Контроль питания клиентов
Предельное значение тока, передаваемого в линию устройств, по умолчанию установлено в 1А и может быть изменено записью в регистр памяти 2. Режим отработки "предохранителя" задается в регистре 3 и имеет следующие варианты: 0 - средневзвешенное значение (за 256 проходов измерения), 1 - по мгновенному значению тока.
Амперметр возвращает (и устанавливается) значения с коэффициэнтом приблизительно 10 мА на единицу.
Прибор так же контролирует напряжение питания линии клиентов.
Порт расширения
Дополнительный порт расширения и программирования имеет следующие контакты:
- общий провод;
- +5В для питания плат расширения;
- сигнал принудительного сброса микроконтроллера;
- pin/output #3;
- pin/output #2;
- pin/output #1.
Настройка назначения (вход/выход) контактов порта расширения задается в регистре 0 одним байтом имеющим следующую битовую маску:
- направление pin 1 (0 - вход, 1 - выход);
- направление pin 2 (0 - вход, 1 - выход);
- направление pin 3 (0 - вход, 1 - выход).
Та же маска задает инверсию входов/выходов в регистре 1 (0 - без инверсии, 1 - инверсно).
Остальные биты игнорируются. Бит #0 всегда выход без инверсии и управляет подачей питания в линию клиентов. При включении или сбросе микроконтроллера, после измерения значения датчика тока, соответствующего нулю, микропрограмма производит попытку подачи питания в линию.
Как и остальные логические выходы, порт управления питанием может управляться программно, путем передачи в нужный номер порта длительности его включения в секундах (2 байта) или 0 для выключения.
Индикация
Плата имеет два светодиодных индикатора работы. Светодиод, расположеный рядом с колодкой линии, имеет следующее назначение цветов:
- синий - передача данных в линию (включая служебный трафик);
- зеленый - ответ клиентского устройства;
- красный - ошибка в обмене с клиентом.
Постоянное свечение красного сигнализирует об отсутствии связи с клиентскими устройствами.
Индикаторы обмена с микрокомпьютером так же имеет три цвета, обозначающих:
- синий - передача данных в компьютер;
- зеленый - прием данных от компьютера;
- красный - ошибка в обмене (компьютер передает неверные сигналы управления или передача ведется с неправильной скоростью потока).
Индикация так же настраиваема и содержит два байта: первый - разрешение, второй - яркость свечения. Их битовые маски:
- передача в линию устройств;
- ответ клиента;
- ошибка в линии RS-485;
- передача компьютеру;
- прием данных от компьютера;
- ошибка обмена с компьютером.
Остальные биты игнорируются.
Питание
Само устройство (его процессор и датчики) получает +5В стабилизированного напряжения от питания микрокомпьютера.
Питание линии устройств (от 9 до 16 вольт постоянного тока) подводится на дополнительную колодку.
Рекомендуемый источник питания - 12В 1А, для передачи до 1А в линию устройств.
Сводная таблица команд
Протокол обмена данными с устройством.
Запросы | ||
команда | данные | описание |
---|---|---|
R | Полная перезагрузка устройства. | |
r | Сброс портов, перезагрузка базового значения амперметра и питания линии. | |
S | Сброс дополнительных портов в неактивное состояние (с учетом инверсии). | |
i | Запрос модели устройства. | |
p | Запрос состояния логических входов/выходов. | |
a | Запрос значения тока в линии клиентских устройств. | |
v | Запрос значения напряжения в линии клиентских устройств. | |
d | Запрос списка активных устройств. | |
o |
#вывода + 2 байта длительности или 4х2 байта для всех портов |
Изменение состояния вывода (включение) на длительность в секундах.
Если длительность больше 65000, постоянное включение (до сброса или следующего изменения). Порядок следования байт длительности - от старшего. Порядок следования портов (для управления одним пакетом) - от 0 до 3, без указания номера порта. |
M | #регистра + значение |
Запись настроек в EEPROM. 0 - направление выводов + 1 байт маски. 1 - инверсия выводов + 1 байт маски. 2 - максимальная величина тока в линии + 2 байта - значение. 3 - метод замера тока для "предохранителя" + 1 байт (0 - средневзвешенное значение, 1 - мгновенное). 4 - версия протокола + 1 байт. 5 - длительность в мс игнорирования превышения тока при подаче питания в линию устройств + 2 байта - значение. |
l |
1 байт маски или 1 байт маски + 1 байт маски яркости |
Настройка индикации. |
Ответы | ||
команда | данные | описание |
A | Подтверждение успешного приема команды. | |
E | Ошибка в команде. | |
U | Команда не поддерживается | |
L | Неправильная длина принятых данных (не соответствует протоколу). | |
u | 1 байт адреса | Устройство активно (вышло на связь). |
N | 1 байт адреса | Устройство не отвечает (выключено или отсутствует). |
i | LINE MASTER | Ответ названия (типа) устройства. |
p |
1 байт - количество изменений [1 байт - номер +1 байт - состояние] |
Состояния изменений в логических входах/выходах. При старте или по запросу - текущее состояние всех контактов. |
a |
1 байт - количество изменений = 1 1 байт - индекс = 0 2 байта - значение |
Значение датчика тока в линии клиентских устройств. |
v |
1 байт - количество изменений = 1 1 байт - индекс = 0 2 байта - значение |
Значение датчика напряжения в линии клиентских устройств. |
Геометрические размеры
56х48х16 мм.