Il modo più sicuro per connettere Raspberry Pi ad Arduino Uno R3


13

Sto lavorando su un robot con un Arduino Uno R3 e volevo avere la possibilità di controllare Arduino in modalità wireless, come interrompere Arduino senza dover staccare la spina ogni volta.

Voglio sapere il modo più sicuro per collegare il mio Raspberry Pi all'Arduino, senza un enorme rischio che la tensione vada male in entrambi i modi.

Ho esaminato l'utilizzo di i2c e Serial, come in queste pagine: http://blog.oscarliang.net/raspberry-pi-arduino-connected-i2c/ & http://blog.oscarliang.net/connect-raspberry-pi- e-arduino-usb-cable / . Devo ancora cercare USB. Il motivo per cui sto ponendo questa domanda è che sul post i2c diceva che avrei dovuto cercare la differenza di tensione:

Come funziona? È sicuro?

Il Raspberry Pi funziona a 3,3 Volt mentre l'Arduino funziona a 5 Volt. Esistono tutorial che suggeriscono di utilizzare un convertitore di livello per la comunicazione I2C. Questo NON è necessario se Raspberry Pi è in esecuzione come "master" e Arduino è in esecuzione come "slave".

Come posso connettere in modo sicuro RPi come master e Arduino come slave.


2
Basta collegarsi tramite USB. Per spegnere arduino, è possibile aggiungere un transistor (NPN) a una delle porte GPIO che tirerà a terra il pin di ripristino di arduino, mantenendo l'arduino in uno stato di "arresto" fino al ripristino della linea di ripristino.
Gerben,

Risposte:


5

Il più sicuro sarebbe il seriale Bluetooth. Con un dongle USB supportato su Raspberry Pi e qualcosa come un Bluefruit EZ-Link su Arduino, è possibile programmare e controllare Arduino da Raspberry Pi senza alcuna connessione fisica.

Il prossimo sarebbe probabilmente tramite USB. Esiste un protocollo "standard" ( Firmata ) per l'interazione con Arduino e i sensori, ma potrebbe non essere l'ideale per la robotica.


Hoo! $ 22, non esattamente economico, ma va bene! Guarderò in questo!
RPiAwesomeness

2
Prova eBay per alternative più economiche se il costo è un fattore
Jervelund

Quando dici seriale Bluetooth, funzionerebbe? foxytronics.com/products/…
RPiAwesomeness

Sì, quello JY-MCU probabilmente funzionerebbe dopo un sacco di giochetti. Il più costoso a cui ho collegato gestisce tutte le fasi di installazione complesse. Vale la differenza di prezzo per me.
scruss

Va bene. Mi piace giocherellare e questo è più economico, e il servizio è ottimo, quindi penso che andrò con questo. Grazie!
RPiAwesomeness

11

La breve risposta alla tua domanda, come collegare in sicurezza l'RPi ad un Arduino, è in effetti fornita al primo link che hai pubblicato: http://blog.oscarliang.net/raspberry-pi-arduino-connected-i2c/ . Ho usato il metodo indicato con grande successo e senza danneggiare alcun componente.

Ma la tua domanda suggerisce che non ti fidi di quel metodo, e penso che la chiave per fidarti sia nel capire perché sia sicuro. Questo è spiegato nel paragrafo dopo quello che hai citato, ma forse con troppi dettagli. La chiave è la mancanza di una resistenza "pull-up" sull'Arduino 5V. Senza di essa, l'unica alimentazione di tensione proviene dall'RPi da 3,3 V, che fortunatamente è abbastanza alto da essere riconosciuto dall'Arduino.


7

Se non vuoi risparmiare la tua porta USB del tuo Rpi, puoi usare GPIO Serial per comunicare con il tuo Arduino. Esiste un ottimo tutorial di Conor O'Neill per il collegamento di Rpi con un Arduino Pro Mini. La procedura è la stessa con Arduino Uno.

Tutto ciò che serve è un LLC (Logic Level Converter) per poter connettere questi due dispositivi. Come già accennato, questi dispositivi funzionano a diversi livelli di tensione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.