Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

I2C Bus Extender

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto Utentecarloc, Foto UtenteIsidoroKZ

0
voti

[11] Re: I2C Bus Extender

Messaggioda Foto Utentetheking0 » 25 lug 2024, 21:54

boiler ha scritto:
Cosa ne pensate ?

Che conosco l'applicazione troppo poco per poder dare giudizi definitivi, ma non mi ispira fiducia (...)

Quando ho letto cosa vuoi fare, i miei primi pensieri sono stati:
- ci vuole (...)

Da come la vedevo io era molto più semplice, ma effettivamente avete esposto delle problematiche che non consideravo o consideravo in minoranza. :roll:

(...) ...
Se vuoi continuare su questa strada, ti elenco un paio di strategie che potrebbero mitigare il problema: (...)


Alcune cose che hai scritto non saprei come farle su due piedi, dovrei documentarmi un po', ma da quello che capisco sarebbe preferibile una lettura degli accelerometri e dell'encoder tramite un micro dedicato e poi inviare al raspberry per il calcoli e la visualizzazione ?

P.S. avrei trovato questi accelerometri analogici, ma poi mi resta il dubbio sulla gestione del segnale, pensate che un segnale analogico su un tratto da 3 metri di cavo schermato sia un problema ?

Grazie a tutti per le dritte che mi state dando O_/
Ultima modifica di Foto UtenteWALTERmwp il 25 lug 2024, 23:23, modificato 1 volta in totale.
Motivazione: Ridotta citazione
Avatar utente
Foto Utentetheking0
832 1 5 11
Master
Master
 
Messaggi: 321
Iscritto il: 11 feb 2012, 22:37

0
voti

[12] Re: I2C Bus Extender

Messaggioda Foto Utenteboiler » 25 lug 2024, 22:22

theking0 ha scritto:Alcune cose che hai scritto non saprei come farle su due piedi, dovrei documentarmi un po', ma da quello che capisco sarebbe preferibile una lettura degli accelerometri e dell'encoder tramite un micro dedicato e poi inviare al raspberry per il calcoli e la visualizzazione ?

Sarebbe possibile, ma devi sincronizzarli bene!
Oppure, visto quello che costa un raspberry pi, potresti scialacquare e metterne uno per ogni periferica e sincronizzarli via PTP.

Ma quanto grande è questa macchina di cui parli? Serve davvero un sistema distribuito?

Se dovessi realizzare qualcosa del genere, probabilmente userei questi:
https://www.analog.com/media/en/technic ... DXL325.pdf
In uscita ci faccio un buffer con questi, che sono veloci e sono in grado di pilotare comodamente una linea a 50 ohm:
https://www.ti.com/lit/ds/symlink/opa354.pdf
Da lì, cavo coassiale fino alla scheda con il microcontroller.

Sulla scheda con il micro ci mettiamo un altro buffer per adattare i livelli e fornire un drive solido all'ingresso dell'ADC.

Usiamo l'ADC del microcontroller, collegando un accelerometro per canale in ingresso. Molti microcontoller hanno la possibilità di impostare uno scan sul mux dell'ADC che, con un sampling rate di 1 MSPS, ci porta ad uno scarto tra il campionamento dei due accelerometri di 1 us, probabilmente accettabile.

Ci resta l'incognita dell'encoder. Qui ci sono due strategie: o avvii il campionamento dell'ADC a intervalli regolari e leggi in quel momento la posizione dell'albero o scegli a quale posizione vuoi leggere e aspetti l'interrupt relativo.

Boiler
Avatar utente
Foto Utenteboiler
23,8k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 4964
Iscritto il: 9 nov 2011, 12:27

0
voti

[13] Re: I2C Bus Extender

Messaggioda Foto Utenteboiler » 25 lug 2024, 22:39

Stavo guardando cosa c'è sul mercato per implementare quello che scrivevo sopra.
Vista la diffusione delle schede STM32-Nucleo ne ho scelta una a caso con prestazioni medie.

https://www.st.com/en/evaluation-tools/ ... 533re.html
La trovi per una quindicina di euro e monta questo microcontroller:
https://www.st.com/en/microcontrollers- ... 533re.html

https://www.st.com/resource/en/referenc ... ronics.pdf

Pagina 1091: hai la possibilità di usare i due ADC interni in modo sincrono, quindi fai il campionamento dei due accelerometri veramente allo stesso istante. Gli ADC hanno 12 bit e arrivano a 5 MSPS.

Pagina 1588: timer/counter da 32 bit con decodifica per encoder. Puoi usarlo per generare un interrupt che avvia il campionamento degli ADC.

Ovviamente c'è supporto DMA.

Non ti posso dare garanzie, ma secondo me sarebbe una buona opzione. Se dovessi realizzare una macchina del genere, probabilmente andrei in questa direzione.

Boiler
Avatar utente
Foto Utenteboiler
23,8k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 4964
Iscritto il: 9 nov 2011, 12:27

0
voti

[14] Re: I2C Bus Extender

Messaggioda Foto Utentetheking0 » 25 lug 2024, 22:43

boiler ha scritto:...
Ma quanto grande è questa macchina di cui parli? Serve davvero un sistema distribuito?


diciamo che tra un supporto e l'atro ci può stare un rotore da 2 metri con un diametro dia anche mezzo metro.

Se dovessi realizzare qualcosa del genere, probabilmente userei questi:
https://www.analog.com/media/en/technic ... DXL325.pdf
In uscita ci faccio un buffer con questi, che sono veloci e sono in grado di pilotare comodamente una linea a 50 ohm:
https://www.ti.com/lit/ds/symlink/opa354.pdf
Da lì, cavo coassiale fino alla scheda con il microcontroller.

Sulla scheda con il micro ci mettiamo un altro buffer per adattare i livelli e fornire un drive solido all'ingresso dell'ADC.

Usiamo l'ADC del microcontroller, collegando un accelerometro per canale in ingresso. Molti microcontoller hanno la possibilità di impostare uno scan sul mux dell'ADC che, con un sampling rate di 1 MSPS, ci porta ad uno scarto tra il campionamento dei due accelerometri di 1 us, probabilmente accettabile.

Ci resta l'incognita dell'encoder. Qui ci sono due strategie: o avvii il campionamento dell'ADC a intervalli regolari e leggi in quel momento la posizione dell'albero o scegli a quale posizione vuoi leggere e aspetti l'interrupt relativo.

Boiler


Cercando un po' in rete ho trovato questa azienda che produce un kit in valigetta praticamente uguale a quello che voglio fare io:

?????????-scaled.jpg (1).jpg


sbirciando un po il loro sito ho visto che nei sensori utilizzano proprio la EVAL-ADXL335Z basata sul ADXL335.
In questa pagina si vede bene il sensore e il suo connettore e secondo me non hanno manco fatto un buffer di uscita come hai suggerito tu, semplicemente hanno preso le EVAL-ADXL335Z incapsulate e con un magnete per fissare al volo dove serve.
Quindi ti direi che quella tipologia di accelerometro che hai anche suggerito tu potrebbe fare al caso mio.
Avatar utente
Foto Utentetheking0
832 1 5 11
Master
Master
 
Messaggi: 321
Iscritto il: 11 feb 2012, 22:37

0
voti

[15] Re: I2C Bus Extender

Messaggioda Foto Utentetheking0 » 25 lug 2024, 22:52

boiler ha scritto:Stavo guardando cosa c'è sul mercato per implementare quello che scrivevo sopra.
Vista la diffusione delle schede STM32-Nucleo ne ho scelta una a caso con prestazioni medie (...)


Si si si .. mi piace .. con le Nucleo non ci ho mai smanettato, sarebbe l'occasione ideale per farci qualcosa =D>

poi per l'interfacciamento con il raspberry per interpretare e visualizzare i dati uso un bus seriale ?
Ultima modifica di Foto UtenteWALTERmwp il 25 lug 2024, 23:20, modificato 1 volta in totale.
Motivazione: Ridotta citazione
Avatar utente
Foto Utentetheking0
832 1 5 11
Master
Master
 
Messaggi: 321
Iscritto il: 11 feb 2012, 22:37

0
voti

[16] Re: I2C Bus Extender

Messaggioda Foto Utenteboiler » 25 lug 2024, 23:18

theking0 ha scritto:diciamo che tra un supporto e l'atro ci può stare un rotore da 2 metri con un diametro dia anche mezzo metro.

Ah però, stic... [-o<

si vede bene il sensore e il suo connettore e secondo me non hanno manco fatto un buffer di uscita come hai suggerito tu, semplicemente hanno preso le EVAL-ADXL335Z incapsulate e con un magnete per fissare al volo dove serve.

Dove vedi che hanno preso le evalboard?
Comunque, quell'accelerometro ha un'impedenza d'uscita di 32k.
Vuol dire che senza buffer, il cavo diventa parte integrante della limitazione di banda. Inoltre serve un ricevitore ad alta impedenza, cosa che diventa facilmente una magnifica antenna. E per finire, se hai fronti ripidi sul segnale avrai riflessioni. Se fossi io, il buffer ce lo metterei, per quello che costa. Però si può anche provare senza e aggiungerlo se si dimostra necessario.

poi per l'interfacciamento con il raspberry per interpretare e visualizzare i dati uso un bus seriale ?

Sì, per esempio. O vai direttamente sull'USB. Qui dipende da quale periferica ti risulta piú comoda (dovrai evidentemente scrivere del software).

Boiler
Avatar utente
Foto Utenteboiler
23,8k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 4964
Iscritto il: 9 nov 2011, 12:27

0
voti

[17] Re: I2C Bus Extender

Messaggioda Foto UtenteWALTERmwp » 25 lug 2024, 23:19

Foto Utentetheking0, dalla prossima, riduci per cortesia le citazioni altrimenti la discussione perde in leggibilità, grazie.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
29,5k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8742
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[18] Re: I2C Bus Extender

Messaggioda Foto Utentetheking0 » 25 lug 2024, 23:32

Foto Utenteboiler:
Lo hanno scritto loro nella pagina del sensore:
Codice: Seleziona tutto
The vibration sensor is based on the ADXL 335 board, featuring a standard cable length of 4.5 meters, with the possibility of extension upon request.

... Se fossi io, il buffer ce lo metterei, per quello che costa. Però si può anche provare senza e aggiungerlo se si dimostra necessario.

se dici che ci vuole lo mettiamo.

Loro usano la versione da +-3G, ma secondo me per la mia aplicazione e' meglio quella che hai proposto te da +-5G ho più margine di misura.

Foto UtenteWALTERmwp: chiedo scusa, e' sempre stata una mia brutta abitudine sui forum :D
Avatar utente
Foto Utentetheking0
832 1 5 11
Master
Master
 
Messaggi: 321
Iscritto il: 11 feb 2012, 22:37

0
voti

[19] Re: I2C Bus Extender

Messaggioda Foto Utenteluxinterior » 26 lug 2024, 8:52

Leggo a "spizzichi e mozzichi" quindi perdonate l'intrevento a gamba tesa
Ormai un ESP32 costa meno di un cavo cablato con connettori.
Io metterei
ESP32 sull'encoder con funzione mista access point/station
ESP32 su ogni accelerometro con funzione staiton che si collega all'access point di cui sopra.
Nessun cavo e libertà assoluta di installazione.

Ogi ESP32 periferico (in realtà non lui ma per semplicità facciamo sia lui) ha un counter che porta avanti per conto suo e che viene sincronizzato da un messaggio inviato broadcast da ESP32 collegato all'encoder sul segnale di zero.
Ogni ESP32 collegato all'accelerometro mette via ogni volta misura e valore del suo counter
A fine prova download dei dati verso raspberry o chi per lui per elaborazione e visualizzazione.
Avatar utente
Foto Utenteluxinterior
4.042 3 4 9
Master
Master
 
Messaggi: 2557
Iscritto il: 6 gen 2016, 17:48

0
voti

[20] Re: I2C Bus Extender

Messaggioda Foto Utentetheking0 » 26 lug 2024, 13:02

Foto Utenteluxinterior: non so mi sembra un po' machiavellica come soluzione, dovrei comunque cablare per alimentare le varie schede e sensori ...
Preferisco rimanere sulla idea di Foto Utenteboiler che mi sembra una soluzione più robusta e veloce da realizzare.

Ora sto vedendo per prendere la Nucleo ma la versione NUCLEO-H533RE sembra sia "out of stock" su tutti i siti europei, devo cercarne una che abbia le caratteristiche richieste e che sia disponibile qui in EU.

Per gli accelerometri devo buttare giù uno schema con l'operazionale e vedere se riescono a farmi l'assemblaggio direttamente in jlcpcb, perché da quel che vedo sul datasheet servono delle rampe e temperature per stabilite per saldare ADXL325, cosa che io faticherei a rispettare con la mia stazione saldante ad aria.
Avatar utente
Foto Utentetheking0
832 1 5 11
Master
Master
 
Messaggi: 321
Iscritto il: 11 feb 2012, 22:37

PrecedenteProssimo

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Google [Bot] e 81 ospiti