Питание Arduino через компьютер, но подключение к внешней цепи

Я объясню, чего я пытаюсь достичь в первую очередь. В основном я хочу управлять 4-колесным роботом через Arduino, но мне нужен Arduino для получения команд с компьютера. Я уже настроил схему управления двигателями робота (H-мосты, энкодеры и т. д.), и мне просто нужно отправить сигналы GPIO в эту схему. Поскольку мне нужно получить инструкции от ноутбука, мне нужно подключить Arduino через USB-соединение. Теперь вот где возникает проблема.

Если Arduino получает питание от ноутбука, но нуждается в связи с внешней цепью, что происходит с землей? Я почти уверен, что Arduino должен иметь общую землю с источником питания внешней цепи, чтобы это работало. Меня беспокоит то, что произойдет, если батарея пошлет скачок тока через заземление и поджарит Arduino (я слышал, что это может произойти). Есть ли способ защитить Arduino от этого или это какое-то лучшее решение, которое мне здесь не хватает?

Я бы сказал, поставить TVS-диод на 5,5 В, чтобы подавить всплеск. Arduino просто перезагрузится в таком случае.

Ответы (1)

Основания, как правило, должны быть общими.

Тем не менее, если сторона двигателя имеет собственный источник питания, можно изолировать часть системы ПК/Arduino от части системы, состоящей из двигателя, подключив все сигналы управления двигателем через оптопары. Это позволит отделить заземление подсистемы двигателя. Обратите внимание, что действительно дешевые оптопары могут ограничивать полосу пропускания сигналов, поступающих на двигатели, поэтому, если вы используете высокочастотные элементы управления PMW, обязательно оцените и выберите компоненты соответственно.

Итак, если я использую оптопару между сигналами Arduino и остальной частью схемы, часть Arduino/ПК должна быть изолирована от остальной части схемы. Если я добавлю изолятор между землей Arduino и землей внешней батареи, это сработает? Кроме того, будут ли оптопары использоваться в одном направлении для входных и выходных сигналов?
Если ответвитель будет помещен между двумя основаниями, не будет ли это означать, что основания больше не являются общими? Если это так, то это сведет на нет всю цель, не так ли?
Вы не ставите оптопары между основаниями. Это даже не летает с точки зрения функциональности. Вы используете оптопары на сигнальных линиях, которые связаны либо с источником питания, либо с землей на соответствующих сторонах. Для сигналов, поступающих на контроллеры двигателей, Arduino управляет светодиодной стороной соединителя, а сторона выходного фоточувствительного устройства соединителя используется для подачи сигнала двигателя к его точке нагрузки. Для сигналов, которые могут возвращаться от контроллера двигателя обратно к Arduino, вы переворачиваете оптопары в другую сторону, чтобы светодиод управлялся со стороны двигателя.