Я подключил три устройства параллельно к системе шины CAN. Каждое устройство имеет резистор, встроенный в цепь. Я использую две пары витых кабелей каждый для связи. Не повлияет ли это на общение?
Вам нужно иметь резистор 120 Ом в начале цепочки и в конце цепочки. Если один отсутствует, это не сработает (поверьте мне!). Если у вас их слишком много, это может (МОГУТ) сработать, но вы напрашиваетесь на неприятности. CAN представляет собой линейную цепочку с согласующими резисторами на каждом конце.
Лучше всего найти способ избавиться от среднего согласующего резистора. Иногда это просто перемычка, но при необходимости вы можете ее отпаять или закрепить.
Если предположить, что приемники данных способны работать с более слабым сигналом (а я уверен, что так и есть), единственным аспектом, который может вызвать проблемы, являются отражения сигнала.
Учитывая, что скорость передачи данных составляет 19 600 бит/с, если бы вы сказали, что это прямоугольная волна с частотой 10 кГц, я бы рассмотрел длину волны 7-й гармоники, чтобы обосновать, что длина кабеля в порядке.
7-я гармоника имеет частоту 70 кГц и длину волны 4,3 км. Общее эмпирическое правило заключается в том, что кабель с плохой оконечной нагрузкой подойдет, если длина кабеля меньше одной десятой максимальной длины волны, а это явно так.
Дополнительная литература: Почему в шине CAN в качестве согласующего резистора используется резистор 120 Ом, а не какое-либо другое значение?
Чем больше у вас резисторов, тем больше нагрузка на трансивер, пытающийся управлять шиной. Если, например, у вас есть десять резисторов по 120 Ом, каждый трансивер должен будет выдавать ток, в 5 раз превышающий нормальный. Это заставит их нагреваться, лишит их возможности выполнять правильные переходы или и то, и другое.
Три резистора вместо двух не могут быть концом света. Но это по-прежнему излишне нагружает приемопередатчики.
Энди ака
Венигалла Правин