Dima1060 0 2 сентября, 2015 Опубликовано 2 сентября, 2015 · Жалоба Здравствуйте! Мне нужно соединить два STM32F1 5-ти метровым кабелем. При этом один из МК будет подключен к USB, питаться тоже все будет от USB и предполагается гальваническая развязка по USB. В итоге по 5-ти метровому проводу будут передаваться данные (скорость 1 Mbps) и питание. Предполагается, что кабель должен быть максимально помехозащищен и желательно, чтобы под влиянием помех как минимум не вылетало USB. Собственно предполагаю использовать RS-485 и исходя из этого есть вопросы: 1. Какой приемопередатчик RS-485 лучше выбрать? Видел много всяких типа MAX485, ST485, ADM485 и остальные 2. Нужна ли гальваническая развязка? При условии, что питание и земля все равно будут общими. 3. Во многих приемопередатчиков пишут, что есть встроенная защита, надо ли ставить дополнительно TVS-диоды? 4. Поскольку питание от USB, можно ли как то прикинуть ток потребляемый RS-485? Например так можно I=q/t=q*f=C*U*f ? 5. На что надо обратить внимание, какие есть тонкости при организации такой линии связи? Впервые сталкиваюсь с этим, поэтому извиняюсь за, может быть, глупые или детские вопросы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
skripach 6 2 сентября, 2015 Опубликовано 2 сентября, 2015 · Жалоба 1 Какой вам больше нравится, соответствующий вашей скорости передачи. 2 Нет. 3 Встроенная защита и TVS бывают разные, не известно от чего вы хотите защититься. Ёмкость мощных TVS может быть проблемой на Мбитных скоростях. 4 Ток зависит от "растяжек", терминаторов, длины линии, выбранных драйверов... Я думаю стоит ориентироваться на пру десятков мА. 5 Ёмкость линии, терминаторы. 1 Мбит не так уж много, 5м не так уж далеко. :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 2 2 сентября, 2015 Опубликовано 2 сентября, 2015 · Жалоба ок зависит от "растяжек", терминаторов, длины линии, выбранных драйверов... Я думаю стоит ориентироваться на пру десятков мА. Пару десятков, говорите? Драйвера (только передатчики) с 5V питанием, на короткую линию согласованную 100 омами, только в линию будут гнать до 100mA, не считая всего остального. Ну а ток при коротком замыкании линии обычен под 200mA. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dima1060 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 (изменено) · Жалоба 1 Какой вам больше нравится, соответствующий вашей скорости передачи. 2 Нет. 3 Встроенная защита и TVS бывают разные, не известно от чего вы хотите защититься. Ёмкость мощных TVS может быть проблемой на Мбитных скоростях. 4 Ток зависит от "растяжек", терминаторов, длины линии, выбранных драйверов... Я думаю стоит ориентироваться на пру десятков мА. 5 Ёмкость линии, терминаторы. 1 Мбит не так уж много, 5м не так уж далеко. :rolleyes: 1. Я видел, существуют трансиверы с питанием 3,3 вольта. Это как то снижает помехозащищенность? Еще нашел статью, в которой описывают "полностью защищенные трансиверы" MAX13443E. По скорости мне подходит и защита радует, но цена...в 5-10 раз обычных. Стоит оно того? 2. Точно не надо? На форуме писали, что без развязки может сбиваться процессор или вообще сгореть. Изменено 3 сентября, 2015 пользователем Atlantis- Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
skripach 6 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба 1. Я видел, существуют трансиверы с питанием 3,3 вольта. Это как то снижает помехозащищенность? 2. Точно не надо? На форуме писали, что без развязки может сбиваться процессор или вообще сгореть. 1. Я бы использовал именно 3.3в драйверы, в 5вольтовых нет никакой нужды. На помехозащищенность думаю если и влияет, то не значительно. К тому же с учетом замечания zltigo применение 3.3в драйверов позволит снизить общее потребление. 2. Объясните как по-вашему влияет гальваническая изоляция на "горючесть" процессора? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 83 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба 1. Я видел, существуют трансиверы с питанием 3,3 вольта. Это как то снижает помехозащищенность? Никак не меняют. Уровни по стандарту RS-485 в любом случае одинаковы Еще нашел статью, в которой описывают "полностью защищенные трансиверы" MAX13443E. По скорости мне подходит и защита радует, но цена...в 5-10 раз обычных. Стоит оно того? Та защита имеет смысл на длинных линиях в сотни-тысячи метров, у вас всего 5 метров. 2. Точно не надо? На форуме писали, что без развязки может сбиваться процессор или вообще сгореть. Может, если связанные процессоры питаются от разных источников не имеющих гальваническую связь. Вы уж определите список помех от которых хотите защищаться. а потом подбирайте приемопередатчики. Если у вас 5 метров в лабораторных условиях - подойдет любой подходящий по скорости. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dima1060 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Вы уж определите список помех от которых хотите защищаться. а потом подбирайте приемопередатчики. Если у вас 5 метров в лабораторных условиях - подойдет любой подходящий по скорости. Условия операционной и работа электрокоагулятора. Например USB вылетает в таких условиях, поэтому помехи, думаю, серьезные и хотелось бы защититься максимально возможно. 1. Я бы использовал именно 3.3в драйверы, в 5вольтовых нет никакой нужды. На помехозащищенность думаю если и влияет, то не значительно. К тому же с учетом замечания zltigo применение 3.3в драйверов позволит снизить общее потребление. Да дело еще в том, что у меня все питается от 3,3 и не хотелось бы городить дополнительные преобразователи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=AK= 18 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба желательно, чтобы под влиянием помех как минимум не вылетало USB. Это самое сложное. USB время от времени может вылетать сам по себе, безо всяких помех, просто от багов в софте Виндовс. Худо-бедно можно использовать WinUSB, при этом очень желательно подстраховаться самодельным вочдогом, который сделает детач-аттач при потере связи по USB. У меня в лаборатории на столе лежит некое устройство, которое верещит, когда обнаруживает, что в USB потерялись 8 или более SOF-ов подряд. Как известно, спецификация USB допускает потерю до 5 SOF-ов. Так вот, в среднем несколько раз в неделю это устройство верещит, иногда несколько раз в день. Без каких бы то ни было помех. Ну а как там виндовс на такие потери и прочие глюки USB реагирует - это можно только догадываться. Виндовый СDС класс драйвер - это полное дерьмо, он накрывается медным тазом в среднем примерно раз в месяц, COM порт исчезает, а детач-аттач не помогает, надо физически передергивать кабель. 1. Какой приемопередатчик RS-485 лучше выбрать? Видел много всяких типа MAX485, ST485, ADM485 и остальные Лучше выбрать тот, у которого минимальная приемлемая скорость, от него помех будет меньше. 2. Нужна ли гальваническая развязка? При условии, что питание и земля все равно будут общими. Развязка крайне желательна. В том числе по земле и питанию. Без развязки USB будет вылетать намного чаще. Кроме того желательно погуглить и использовать USB карту с хорошим чипом. Некоторые USB хосты и хабы имеют баги на уровне кремния, при их использовании сбои и зависания возрастают на порядки. 3. Во многих приемопередатчиков пишут, что есть встроенная защита, надо ли ставить дополнительно TVS-диоды? На 5 м - не надо. 4. Поскольку питание от USB, можно ли как то прикинуть ток потребляемый RS-485? Например так можно I=q/t=q*f=C*U*f ? При работе на линию с терминаторами с обоих сторон куча тока уйдет в терминаторы. Пример: размах сигнала 2.5В, линия с волновым сопротивлением 120 Ом, два терминатора по 120 Ом - нагрузка 60 Ом, 2.5/60 = 41 мА на одни только терминаторы. 5. На что надо обратить внимание, какие есть тонкости при организации такой линии связи? Впервые сталкиваюсь с этим, поэтому извиняюсь за, может быть, глупые или детские вопросы. Чтобы обеспечить хороший уровень помехоустойчивости обмена по RS485, необходимо использовать соответствующий протокол, например, Modbus RTU. С самопальным протоколом, который "надеется" на одни только растягивающие резисторы, помехоустойчивость будет хуже в сотни раз. Впрочем, даже такой уровень помехоустойчивости, сам по себе достаточно вшивый, скорей всего окажется на порядок или на два лучше, чем помехоустойчивость USB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dima1060 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Развязка крайне желательна. В том числе по земле и питанию. Без развязки USB будет вылетать намного чаще. Развязка по USB есть - ADUM4160 и по питанию - трансформатор, я спрашивал нужна ли еще дополнительно развязка по RS-485 при условии, что питание все равно будет передаваться по тому же кабелю. Чтобы обеспечить приемлемый уровень помехоустойчивости обмена по RS485, необходимо использовать соответствующий протокол, например, Modbus. С самопальным протоколом, который "надеется" на одни только растягивающие резисторы, помехоустойчивость будет хуже в сотни раз. Впрочем, даже такой, достаточно вшивый, уровень помехоустойчивости может оказаться на порядок или на два лучше, чем помехоустойчивость USB. Предполагается постоянная передача данных с датчиков и потеря данных или порча не страшна - вычисляется по контрольной сумме и просто отбрасывается испорченный пакет. Главное чтобы эти потери не были систематическими и помехи не выводили устройство из строя. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=AK= 18 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба чтобы эти потери не были систематическими и помехи не выводили устройство из строя. Я вам об этом и толкую. Вшивые самопальные протоколы RS-485 не обеспечивают доставку данных в условиях сильных помех, у них вообще все пакеты будут "битыми" и окажутся отброшенными. А Modbus RTU в таких условиях будет работать как ни в чем ни бывало. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dima1060 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Я вам об этом и толкую. Вшивые самопальные протоколы RS-485 не обеспечивают доставку данных в условиях сильных помех, у них вообще все пакеты будут "битыми" и окажутся отброшенными. А Modbus RTU в таких условиях будет работать как ни в чем ни бывало. Не совсем понял. Если пройдет помеха и данные исказятся, то не сойдется контрольная сумма и пакет будет отброшен в любом случае. Как это будет работать как ни в чем ни бывало? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=AK= 18 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Не совсем понял. Если пройдет помеха и данные исказятся, то не сойдется контрольная сумма и пакет будет отброшен в любом случае. Как это будет работать как ни в чем ни бывало? Не диво, этого не понимают большинство создателей самопала для RS-485. На шине RS-485 есть два состояния: 1) когда все передатчики выключены (бОльшую часть времени шина находится именно в этом состоянии) 2) когда один из передатчиков включен. В первом состоянии, для того, чтобы создать ложный сигнал, помеха должна пересилить резисторы подтяжки. Во втором состоянии помеха должна пересилить сигнал работающего передатчика RS-485, а он в сотню-другую раз мощнее, чем резисторы подтяжки. Создатели самопальных протоколов чаще всего не различают эти два состояния. Поэтому их протоколы как правило таковы, что помехи, наведенные в первом состоянии, вызывают порчу и отбрасывание пакета. В условиях сильных помех это приводит к тому, что отбрасывается практически каждый пакет. У cоздателей Modbus RTU было достаточно мозгов, чтобы создать протокол, на который вообще никак не действуют помехи в первом состоянии. В нем, чтобы испортить пакет данных, помеха должна пересилить включенный передатчик. Помехоустойчивость RS-485 c Modbus RTU сравнима с помехоустойчивостью RS-422 и даже превышает ее, поскольку передатчики RS-485 мощнее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dima1060 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба На шине RS-485 есть два состояния: 1) когда все передатчики выключены (бОльшую часть времени шина находится именно в этом состоянии) 2) когда один из передатчиков включен. В первом состоянии, для того, чтобы создать ложный сигнал, помеха должна пересилить резисторы подтяжки. Во втором состоянии помеха должна пересилить сигнал работающего передатчика RS-485, а он в сотню-другую раз мощнее, чем резисторы подтяжки. Так можно в самопальном протоколе один из передатчиков всегда держать включенным? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=AK= 18 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Так можно в самопальном протоколе один из передатчиков всегда держать включенным? Это называется RS-422, у него передатчики вообще не переводятся в третье состояние, они всегда включены. Для него можно любой протокол использовать, он изначально помехоустойчивый. Но это обмен точка-точка, с раздельными витыми парами, одна - на прием, другая - на передачу, дуплекс. А вы вроде как RS-485, то есть шину, многоточку, полудуплекс, собирались использовать? В полудуплексе вам поневоле придется выключать передатчик, иначе будете слышать только себя. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 2 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Чтобы обеспечить хороший уровень помехоустойчивости обмена по RS485, необходимо использовать соответствующий протокол Помехоустойчивость канала связи и протокол это все-же разные вещи. , например, Modbus RTU. Как человек почти вся жизнь занимающийся всевозможными связными потоколами могу точно сказать, что Modbus RTU есть натуральное дерьмо. Это, конечно, не означает, что хуже "изобрести" нельзя, но на профессионально рожденный пртокол он ни как не тянет. Ну и протоколах - автор не говорил, ни то, что у него пакетный обмен ни то, что master-slave. Так что о протоколе разговор отдельный. Ну и на "5 метров" дуплексный RS422 почти наверняка будет предпочтительный. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться