Dettagli sul protocollo CANBUS

10 Anni 9 Mesi fa #1 da automatizzando
Dettagli sul protocollo CANBUS è stato creato da automatizzando
Ciao,
Sono approdato su questo forum facendo una ricerca sul protocollo Canbus.
Ho letto con interesse il tutorial reperito qui, e vorrei approfittarne per colmare alcune mie lacune in merito a questo protocollo.
Non ho ben compreso come vengono (riconosciuti) dai vari dispositivi i messaggi inviati dai vari oggetti della rete.

Mi spiego meglio:
Ho letto che il protocollo CAN è orientato ai messaggi (message oriented) e non agli indirizzi (address oriented).
Pertanto quando un oggetto sul bus, riceve un messaggio, come fa ad identificare da quale dispositivo è stato inviato?
Inoltre, quando vengono estrapolati i dati ricevuti, come si associano quei dati ad un eventuale evento, ad esempio ricevo da un dispositivo un valore, come faccio a sapere che quel valore sia un valore di temperatura e non di pressione, in quanto il medesimo dispositivo potrebbe essere abilitato ad inviare anche un valore di una pressione.
Tanto per fare un esempio con un altro protocollo, nel modbus, esistono i registri da interrogare,(oltre l'ID dell'oggetto), e quindi si associa al valore contenuto in quel registro un determinato significato.

Non sono certo di essere riuscito ad esprimere chiaramente il concetto, e per tale motivo me ne scuso, ma vi ringrazio anticipatamente dell'aiuto.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • automatizzando
  • New Member
  • New Member
Di più
10 Anni 9 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Dettagli sul protocollo CANBUS
Ciao,

nel protocollo CAN hay molta flessibilita' e alle tue domande puoi avere risposte diverse.

Da un lato il fatto che sia message oriented significa che non specifici gli indirizzi.

L'identificatore potrebbe per esempio identificare un messaggio temperatura. Per cui tutti i nodi ricevono il messaggio. Il legame temperatura identificatore e' pero' nota a priori per cui si sa che la temeratura e' per esempio del motore e non dell'ambiente esterno.
Per l'ambiente esterno si potrebbe usare un altro identificatore a priorita' inferiore.

Dall'altro lato l'identificatore potrebbe identificare la centrale, e tutti gli altri nodi sanno quando ricevono il messaggio dalla centrale. Andando a vedere i dati poi potrebbero trovare info sulla temperatura o sulla pressione.

Quindi due grandezze diverse potrebbero usare due identificatori diversi oppure uno stesso identificatore e scoprire il resto dal valore del contenuto dei dati, in cui potrebbe essere presente anche un indirizzo.

Il protocollo CANOpen formatta ulteriormente i dati e si hanno direttamente piu' informazioni.

...ma in ogni modo hai identificatore e dati, il resto e' solo questione di regole sul come organizzare il tutto.

Saluti

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
10 Anni 2 Mesi fa #3 da bassfender
Risposta da bassfender al topic Dettagli sul protocollo CANBUS
Ciao Mauro, riguardo al can oltre al tutorial teorico hai fatto qualche progetto di esempio di comunicazione ?

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • bassfender
  • Senior Member
  • Senior Member
Di più
10 Anni 2 Mesi fa #4 da StefA
Risposta da StefA al topic Dettagli sul protocollo CANBUS
mi sembra di no.

Ste

..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • StefA
  • Avatar di StefA
  • Moderator
  • Moderator
Di più
10 Anni 2 Mesi fa #5 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Dettagli sul protocollo CANBUS
Alla domanda hai fatto altri esempi, risponderei di si.
L'esempio e' il bridge RS232 CAN.

...ma per l'esempio non ho pubblicato il codice! :)
...quindi la risposta potrebbe anche essere no.

Cosa hai in mente con il protocollo CAN?

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro LaurentiStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login