Home
Accesso / Registrazione
 di 

Protocolli di trasmissione

7 risposte [Ultimo post]
ritratto di l.andry88
Offline
Titolo: User
Utente
Ultima visita:
1 anno 2 settimane fa
Utente dal: 16/11/2012
Messaggi: 7

Ciao mi chiamo Andrea e sono un appassionato di tecnologia.

Vorrei reperire delle informazioni circa comnicazioni tra vari mcu.
Pensavo a Arduino ma non disdegnerei anche i pic come slave Mentre vorrei usare come master un pc minimale Linux ad esempio Raspberry pi.
Come protocollo fisico candiderei il buon rs485 quindi escluderei il canbus per il momento.

Ad esempio
Esistono varie librerie python modbus per il alto server ma mi chiedevo se queste fossero compatibili, de facto uno standard, con le librerie disponibili per Arduino
vedi ModbusSlave.h oppure SimpleModbusSlave

Grazie a quanti mi daranno una mano

Andrea

ritratto di aloisius
Offline
Ultima visita:
2 settimane 6 giorni fa
Utente dal: 14/02/2010
Messaggi: 1
Se posso dire la mia... PIC

Se posso dire la mia...

PIC (o altro microcontrollore) -> RS232 -> MAX232 -> PC
ormai praticamente tutti i microcontrollori montano a bordo un modulo RS232 in logica TTL (0 - 5V) , mentre i PC (retaggi storici) il vecchio RS232 (-12V +12V ) , per risolvere il problema puoi usare il famosissimo integrato MAX232 , che appunto non è altro che un convertitore di logica,
non necessita di alimentazione esterna a +-12 , ma sempre 5V.
I PC 'nuovi' solitamente non hanno questa porta , essendo di fatto superata da piu' moderni standard seriali (vedi USB) , puoi risolvere il problema con un convertitore USB-RS232 , o eventualmente (per computer desktop) una scheda PCI con questa porta , e con la scusa ti fai anche la PPT (parallela).

per quanto riguarda RS485(uno standard pensato per uso industriale) differisce dal 232 per le tensioni -7V +12V , le velocita' in termini di BoudRate e sopratutto per le distanze (35 Mbit/s fino a 10 m e 100 kbit/s a 1.200 m).
Anche per questo standard esiste il suo convertitore RS485-TTL , appunto il max485.

in generale non si parla di master/slave in quanto la comunicazione è implementabile in modalita' FULL-DUPLEX.

prima di pensare ad una qualsiasi forma di comunicazione bisognerebbe valutare dunque , velocita' richieste da progetto , tipo di comunicazione (seriale/parallelo ,duplex half/full , sincrona/asincrona etc.) e distanza tra apparati in comunicazione, a quel punto si puo' cominciare a fare una cernita su i vari standard che si potrebbero usare.

ritratto di Emanuele
Offline
Titolo: Moderator
Moderatore
Ultima visita:
3 ore 33 min fa
Utente dal: 28/07/2007
Messaggi: 1009
Utente PREMIUM
Specifiche di progetto

Ci sono varie soluzioni per far comunicare 2 mcu. Dipende dalle specifiche di progetto.... insomma perche devono comunicare e... cosa si devono dire? :)

ritratto di l.andry88
Offline
Titolo: User
Utente
Ultima visita:
1 anno 2 settimane fa
Utente dal: 16/11/2012
Messaggi: 7
comunicazioni tra + mcu

Grazie per le risposte!

Il mio progetto prevederebbe il controllo di parametri come: temperatura, umidità e quantità di luce in varie stanze diciamo 3/4, questi dati dovrebbero essere visualizzati da almeno due display lcd in tempo reale.
Gli stessi dati dovrebbero anche essere memorizzati in un database.
Per questo pensavo ad un protocollo già fatto, che mettesse in comunicazione sia Arduino (rilevazione dati e lcd) che Python (per caricare i dati su mysql).
La mia domanda era: quale protocollo è per certo uno standard?
e/o dove reperire le giuste librerie compatibili visto i diversi dispositivi impiegati?

Grazie

Andrea

ritratto di aloisius_1
Offline
Titolo: User
Utente
Ultima visita:
1 anno 10 settimane fa
Utente dal: 21/11/2012
Messaggi: 3
..Bhe MCU->lcd = dipende

..Bhe

MCU->lcd = dipende dall'lcd
MCU->sensori = dipende dai sensori
MCU->pc = forse potresti pensare ad un collegamento ethernet

ritratto di l.andry88
Offline
Titolo: User
Utente
Ultima visita:
1 anno 2 settimane fa
Utente dal: 16/11/2012
Messaggi: 7
Ciao, nel caso di Arduino Lcd

Ciao,

nel caso di Arduino
Lcd => #include

sensori => #include oppure analogRead(Pinx)

ethernet => forse troppo dispendioso in termini di risorse e denaro (ma da tenere in seria considerazione)

Grazie

ritratto di l.andry88
Offline
Titolo: User
Utente
Ultima visita:
1 anno 2 settimane fa
Utente dal: 16/11/2012
Messaggi: 7
ciao, Lcd => #include

ciao,

Lcd => #include LiquidCrystal.h

sensori => #include OneWire.h oppure analogRead(Pinx)

ethernet => forse troppo dispendioso in termini di risorse e denaro (ma da tenere in seria considerazione)
Grazie

ritratto di l.andry88
Offline
Titolo: User
Utente
Ultima visita:
1 anno 2 settimane fa
Utente dal: 16/11/2012
Messaggi: 7
trovate librerie

Ciao

Per ora ho trovato queste librerie che potrebbero essere interessanti come Master

Java:

- Jamod

- Modbus4J ( Mango )

Python:

- Pymodbus

- MinimalModbus

Ma la compatibilità con slave su MCU è da verificare

p.s.
Cortesemente cancellate il mio post #5 io non riesco

 

 

Visita il sito EOS-Book con centinaia di progetti ed articoli!

Visita il nuovo sito di EOS-Book
Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 1 utente e 23 visitatori collegati.

Utenti online

Ultimi Commenti