IP-камера и USB-передача данных по кабелю Ethernet

В настоящее время я работаю над проектом, который требует подключения Arduino и IP-камеры по одному кабелю Ethernet к ноутбуку и дополнительному питанию робота.

Цель состоит в том, чтобы передавать видео с камеры и обмениваться данными с платой Arduino.

  • Для камеры требуется 4 провода от кабеля Ethernet.
  • Для питания нужно 2 провода.
  • Это оставляет мне 2 запасных провода для подключения USB Rx / Tx, но не осталось проводов для заземления USB.

Мой вопрос: нужно ли мне прокладывать отдельный провод GND для подключения USB? Или GND будет совместно использоваться через разъем IP-камеры RJ45? И безопасно ли работать?

Я не уверен, как работает передача данных камеры, но логично предположить, что камера и ноутбук имеют общую землю.

схематический

смоделируйте эту схему - схема, созданная с помощью CircuitLab

Ответы (3)

Вы действительно не должны пытаться использовать USB на нетривиальном расстоянии или с альтернативной проводкой — но, к счастью, вам это не нужно для проекта Arduino. Вместо этого переключитесь на RS232 — это то, что было в оригинальной Arduino, сегодня вам понадобится дополнительный переключатель уровня — а затем используйте последовательный USB-адаптер (т. Е. С разъемом DE9) на компьютере.

Ethernet не обеспечивает заземление; но если вы подаете питание постоянного тока, вы должны обеспечить там заземление. Уровни напряжения RS232 должны дать вам некоторый запас по шуму.

Для еще лучшего решения используйте дифференциальную сигнализацию RS485 с приемопередатчиками и программный протокол, который позволяет как для данных устройства, так и для данных устройства использовать одну и ту же дифференциальную пару.

Другим вариантом было бы разместить больше «компьютера» на конце робота, который мультиплексировал бы данные Arduino через Ethernet; Недостатком является то, что многие такие решения в конечном итоге имеют деликатное состояние файловой системы , которое трудно надежно поддерживать, если ваш робот может неожиданно потерять питание. Потребляемая мощность также, вероятно, увеличится. Но что-то вроде платы MT7688, которая имеет два отдельных порта Ethernet (один для IP-камеры, один для транзитного соединения), может быть вариантом. Или один Ethernet, и используйте USB или специальную камеру на встроенном компьютере, а не полноценную IP-камеру.

Да, я согласен с Крисом в том, что переход на уровни RS232 для вашего последовательного порта Arduino будет лучше, чем USB. Мой опыт показывает, что 12 Мбит (полная скорость), вероятно, будет работать, но может вызвать проблемы, а 480 Мбит (высокая скорость), скорее всего, не будет работать при такой проводке.

USB-кабель уже имеет заземление, поэтому может возникнуть контур заземления, который может создавать помехи. Если это проблема, то вы можете рассмотреть возможность изоляции 12 В.

USB не следует прокладывать по кабелям, которые не имеют надлежащего импеданса линии передачи. Кабели USB должны иметь сопротивление 90 Ом и витую пару. В противном случае частота ошибок может значительно возрасти. USB должен быть подключен к собственному экранированному кабелю, а не к другим сигналам, которые могут вызвать перекрестные помехи.

Вам не нужна отдельная земля для Arduino и IP-камеры. Вы можете использовать один заземляющий провод.

С точки зрения целостности сигнала ваша установка может быть подозрительной и может иметь ошибки данных USB. Но я подозреваю, что если длина у вас не слишком велика, и вы используете 12-мегабитный USB (в отличие от высокоскоростных 480-мегабитных), то, скорее всего, это сработает. Обязательно используйте витые пары в кабеле надлежащим образом: используйте одну пару для питания/земли, а другую пару для USB Dp/Dn*.

* Для уточнения, линии USB не передают и не принимают, как вы описываете, а представляют собой дифференциальную пару (+/-), которая используется для двунаправленной связи.