Самый безопасный способ подключения Raspberry Pi к Arduino Uno R3

13

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

Я хочу знать, как наиболее безопасно подключить мой Raspberry Pi к Arduino, без огромного риска падения напряжения в любом случае.

Я посмотрел на использование i2c и Serial, согласно этим страницам: http://blog.oscarliang.net/raspberry-pi-arduino-connected-i2c/ & http://blog.oscarliang.net/connect-raspberry-pi- и-Arduino-USB-кабель / . Я еще не посмотрел USB. Причина, по которой я задаю этот вопрос, заключается в том, что в сообщении i2c сказано, что я должен следить за разницей напряжения:

Как это работает? Это безопасно?

Raspberry Pi работает на 3,3 Вольт, а Arduino работает на 5 Вольт. Существуют учебные пособия, предлагающие использовать преобразователь уровня для связи I2C. Это НЕ нужно, если Raspberry Pi работает как «ведущий», а Arduino работает как «ведомый».

Как я могу безопасно подключить RPi в качестве мастера и Arduino в качестве раба.

RPiAwesomeness
источник
2
Просто подключите через USB. Чтобы выключить Arduino, вы можете просто добавить (NPN) транзистор к одному из портов GPIO, который будет тянуть вывод сброса arduino на землю, поддерживая arduino в состоянии «выключения» до восстановления линии сброса.
Гербен

Ответы:

5

Абсолютным безопасным будет последовательный Bluetooth. С поддерживаемым USB-ключом на Raspberry Pi и чем-то вроде Bluefruit EZ-Link на Arduino вы можете программировать и управлять Arduino с Raspberry Pi без физического подключения.

Следующий, скорее всего, будет через USB. Существует «стандартный» протокол ( Firmata ) для взаимодействия с Arduino и сенсорами, но он не может быть идеальным для робототехники.

scruss
источник
Hoo! 22 доллара, не совсем дешево, но хорошо! Посмотрим на это!
RPiAwesomeness
2
Попробуйте ebay для более дешевых альтернатив, если стоимость является фактором
Jervelund
Когда вы говорите, серийный Bluetooth, это будет работать? foxytronics.com/products/…
RPiAwesomeness
Да, JY-MCU, скорее всего, сработает после долгих поворотов. Более дорогой, с которым я связался, обрабатывает все сложные этапы установки. Это стоит разницы в ценах для меня.
scruss
Хорошо отлично Мне нравится возиться, а этот дешевле, а обслуживание отличное, так что думаю, я пойду с этим. Благодарность!
RPiAwesomeness
11

Краткий ответ на ваш вопрос, как безопасно подключить RPi к Arduino, действительно дан по первой ссылке, которую вы разместили: http://blog.oscarliang.net/raspberry-pi-arduino-connected-i2c/ . Я использовал метод, приведенный там, с большим успехом и без повреждения каких-либо компонентов.

Но ваш вопрос говорит о том, что вы не доверяете этому методу, и я думаю, что ключом к доверию является понимание того, почему он безопасен. Это объясняется в абзаце после того, что вы упомянули, но, возможно, слишком подробно. Ключевым моментом является отсутствие «подтягивающего» резистора на 5V Arduino. Без него единственным источником напряжения является напряжение 3.3 В RPi, что, к счастью, достаточно высоко для распознавания Arduino.

Lauren
источник
7

Если вы не хотите сэкономить свой порт USB вашего Rpi, вы можете использовать GPIO Serial для связи с вашим Arduino. Конор О'Нил предлагает отличное руководство по подключению Rpi к Arduino Pro Mini. Процедура такая же, как и у вашего Arduino Uno.

Все, что вам нужно, это LLC (Logic Level Converter), чтобы иметь возможность соединить эти два устройства. Как вы уже упоминали, эти устройства работают на разных уровнях напряжения.

bcan
источник