Domanda:
Devo considerare l'utilizzo di RS-485 per il mio prossimo progetto
jdiaz
2009-12-04 12:26:07 UTC
view on stackexchange narkive permalink

Sto pianificando un progetto di automazione che utilizzerà diversi sensori diversi, inclusi ma non limitati a: temperatura, pressione barometrica, flusso d'aria, umidità, ecc.

Mentre parlavo con qualcuno hanno menzionato che dovrei esaminare RS-485 come mezzo per collegare i miei sensori al mio controller. Poi alla fine al PC.

Dopo una rapida ricerca ho raccolto alcune informazioni su RS-485 ma ora mi chiedo se sia finita o se sia usata anche adesso?

Non potrei semplicemente usare un microcontrollore che abbia abbastanza ingressi e interfaccia con il PC tramite USB?

Pensieri?

EDIT: Ok se la distanza dal controller e dall'ambiente (nel mio caso un'applicazione industriale) allora RS485 potrebbe essere utile. Esistono altre alternative al bus che potrebbero essere più utili?

* Ci sono altre alternative agli autobus? *: Considera [CAN] (http://en.wikipedia.org/wiki/CAN_bus).Ordina cose come collisioni, arbitraggio del bus, checksum e indirizzamento che devi fare tu stesso su RS-485.La maggior parte dei micro oltre $ 1,50 ora hanno almeno una porta e anche i ricetrasmettitori sono economici a circa $ 0,60.(Il prezzo è per 1K volumi, YMMV).
Sette risposte:
thisismyrobot
2009-12-04 13:11:13 UTC
view on stackexchange narkive permalink

Ho utilizzato RS485 per collegare più data logger insieme su distanze fino a 100 m. In questa applicazione ha funzionato perfettamente.

Non ho usato RS485 per collegare i sensori direttamente a un controller, ma se hai sensori con uscite RS485 + un controller che supporta RS485 e hai più di 10 sensori o i sensori devono essere più di un a poca distanza dal controller utilizzerei sicuramente RS485 al posto del cablaggio analogico. Ho scoperto che quando aggiungi sempre più sensori analogici a un controller (nel mio caso, un registratore di dati) piccoli problemi con il rumore dell'alimentatore, l'impedenza dei cavi e le interferenze ambientali diventano improvvisamente grandi problemi.

D'accordo, se hai un'applicazione con portata sui sensori, dovresti probabilmente trovare un modo più intelligente di trasferimento dei dati.
J. Polfer
2009-12-05 03:09:56 UTC
view on stackexchange narkive permalink

Penso che la grande differenza abbia a che fare con quanto sono lontani i tuoi sensori sulla tua rete.

Se sono vicini e probabilmente non sono influenzati dal rumore elettrico, allora no penso che importi troppo. USB, RS-232, SPI, I2C, parallela, Bluetooth ... tutte sarebbero buone opzioni.

Se sono lontane e probabilmente si trovano intorno a rumore elettrico , un sistema che utilizza uno schema di comunicazione differenziale (come CAN, RS-485, Ethernet ) è probabilmente una strada migliore da percorrere.

jkopel
2009-12-04 13:04:36 UTC
view on stackexchange narkive permalink

Direi che la risposta breve è sensori-> microcontrollore-> USBMa non ci dai molti dettagli sull'ambiente in cui lavorerai o su quanto deve essere robusto l'intero sistema. Se hai un ambiente rumoroso, lunghe distanze tra i sensori o un requisito per un'elevata affidabilità, potresti voler guardare attrezzature costruite professionalmente e qualcosa come RS-485. Se vuoi monitorare il microclima intorno ai tuoi pomodori, allora alcuni sensori e un arduino potrebbero essere tutto ciò di cui hai bisogno.

Ho dimenticato di inviare la mia risposta, quindi aggiungerò un commento per evitare confusione. jkopel ha ragione qui, stai meglio con sensor-> uC-> USB, ma l'ambiente è fondamentale. Se hai bisogno di più pin, puoi ottenere moduli ADC esterni e interfacciarli tramite il protocollo SPI o I2C piuttosto facilmente.
Axeman
2009-12-04 17:19:58 UTC
view on stackexchange narkive permalink

Se i tuoi sensori sono vicini al PC, l'USB potrebbe essere OK, ma non è sempre così. Ho un contatore di energia nel seminterrato della mia casa e il computer che legge i valori energetici è nel mio appartamento (4 ° piano) ... Nessun problema con RS485 (o un bus CAN), ma prova con USB :-)

o wireless in quella situazione.
mba7
2009-12-04 22:46:58 UTC
view on stackexchange narkive permalink

RS485 è l'equivalente di I2C ma su scala più ampia, entrambi hanno un'architettura bus con indirizzi di nodo:

  • RS-485 è eccellente fino a 4000+ piedi di cavo del sensore. Puoi implementarlo per qualsiasi cosa utilizzeresti I2C. Ha un'ampia varietà di EMF e opzioni di isolamento ottico. RS-485 necessita di un adattatore di segnale per funzionare
  • I2C è più veloce non adatto per lunghe distanze, non ha bisogno di un driver di linea per funzionare e quindi consuma meno

i spero che sia più chiaro ora

russ_hensel
2009-12-04 23:27:38 UTC
view on stackexchange narkive permalink

Che ne dici di Dallas One Wire? Penso che abbiano molti sensori e che la rete sia abbastanza lunga. Non l'ho mai usato ma ho sempre pensato che fosse interessante. Se hai già i tuoi sensori, questo non ha molto senso.

Michael Kohne
2009-12-04 17:28:15 UTC
view on stackexchange narkive permalink

RS-485 è molto utile in situazioni in cui i dispositivi (sensori nel tuo caso) devono essere lontani dal controller. In generale viene utilizzato dove il dispositivo ha il proprio cervello (cioè un microcontrollore a bordo) e sta riportando a un PC. Puoi ottenere da 232 a 485 adattatori che permetteranno al tuo PC di parlare RS-485.

Se riesci a mettere i sensori nella stessa scatola del microcontrollore, puoi usare 485 per parlare al PC. Non è ad alta velocità, ma è molto robusto e ben compreso in molte situazioni e consente abbastanza facilmente dispositivi aggiuntivi. Se hai solo un dispositivo, 232 andrà benissimo.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 2.0 con cui è distribuito.
Loading...