[OT] Plot "live" da arduino su PC windows 7

Jan 09, 2024 Last reply: 2 years ago 9 Replies

pcf ansiagorod snipped-for-privacy@libero.it ha scritto:

formatting link

Ciao, buon anno



Scusate l'OT ma non so più dove sbattere la testa. Vorrei 'solo' avere il grafico in tempo reale di dati provenienti da arduino (ma non solo, ora che conosco l'EPS32). Avrei voluto le classiche finestrelle senza barre, menu, bordi e simili, un semplice rettangolo, ma pare non sia possibile.



Oggi tutte le soluzioni che ho trovato sono su browser. Ho 'scoperto' grafana ma non sono riuscito a creare un grafico, è una delle cose più complesse in cui mi sia imbattuto. A quanto capisco servono ben tre server, una cosa che si chiama MTTQ, un'altra che si chiama prometheus, poi finalmente grafana e poi ancora il browser in funzione. Centinaia di MB di RAM e un carico notevole rispetto alla funzione che vorrei, ma pare che oggi questo sia l'approccio.



Orbene, prometheus ha una caterva di dipendenze; si appoggia su decine di librerie e a quanto capisco se pure nascosto nell'eseguibile sta pure girando il linguaggio 'go'. Il tutto stando ad alcuni tutorial richiede anche docker, ovvero una macchina virtuale e tre servers sotto forma di servizio di sistema per dei banalissimi grafici.



Non solo, ma prometheus non gira sotto win7, cosa non documentata. L'ho fatto partire in win10 e gira perfettamente.



Dopo tutto questo pare servano anche degli script python per collegare i pezzi.



Credo sia follia pura.



So che potrei usare il monitor seriale ma ha un sacco di limiti. Anche i vari plotters seriali non hanno funzionato per un motivo o per l'altro.



Domanda: c'è un modo di fare quello che vorrei? Prendere dei dati da arduino e farci un grafico mobile un po' come quelli di emule per chi lo ricorda.



Al limite, basterebbe un qualche sostituto per prometheus che possa girare sotto winm 7 perché il resto di questo delirio gira, pur impattando la macchina in misura avvertibile. E soprattutto un buon tutorial: come sempre tutti scrivono dando per scontato che il lettore sappia già tutto, viene spiegato l'ovvio e sottinteso quello che uno vorrebbe sapere.



Forse sono un po' irritato ma è da stamattina che ci sto provando. Grazie per eventuali notizie utili :)


pcf ansiagorod snipped-for-privacy@libero.it wrote in news:unk6s7 $24ebq$ snipped-for-privacy@dont-email.me:

node.js?

formatting link
Esempio:

formatting link

-- ObiWan snipped-for-privacy@mvps.org wrote in news: snipped-for-privacy@mvps.org: ma evidentemente qualcuno qui pensa che il tempo che gli altri dedicano a rispondergli non abbia valore mentre il suo ne ha.

Message-ID: <pan$91027$7e88083$34e36d0$ snipped-for-privacy@carotone.net Come disse un mio amico, a certe persone si fa prima a metterglielo nel c**o che nel capo

Il 09/01/2024 20:30, pcf ansiagorod ha scritto:

Se vuoi visualizzare tipo grafico, prova Processing E' abbastanza semplice da usare, e si trovano in rete molti esempi in abbinamento a flussi dati che arrivano dalle porte seriali

formatting link
formatting link

Il 09/01/2024 20:30, pcf ansiagorod ha scritto:

formatting link

comunque puoi gestirlo anche via lan se intendi usare il wifi

Il 10/01/2024 18:43, Franco Af ha scritto:

poi esistono varie lib per gestire i grafici.

Il 09/01/2024 20:30, pcf ansiagorod ha scritto:

Ma questo[1] non va bene?

[1]
formatting link

"pozz" ha scritto nel messaggio news:uno98h$2tm58$ snipped-for-privacy@dont-email.me...

Fantastico!!! l'ho testato con uno sketch che invia 1000 volte al secondo le 8 word degli ingressi analogici di un arduino nano , e il programma non fa una piega, la visualizzazione e' corretta, mentre non e' corretto il timestamp nel file salvato, ma e' un non problema perche' la visualizzazione non ne tiene conto, i sample vengono visualizzati con delta t fisso.

Il 11/01/2024 21:35, alfio ha scritto:

Sono contento che ti sia servito.

1000 volte al secondo sono 1ms. Questi tempi non sono ben misurabili da Windows. Probabilmente i valori ricevuti sulla seriale vengono bufferizzati e messi a disposizione dell'applicazione a blocchi e i timestamp, messi dall'applicazione, risultano non in linea con quelli reali on-the-wire.

Per fortuna nel tuo caso sono comunque equidistanziati, quindi il plottaggio a deltaT fisso ti va bene comunque.

Grazie mille a tutti. Il programma per il plottaggio sembra fantastico.

Nel frattempo sono riuscito a far funzionare quella 'perversa' catena di processi per collegare un arduino a grafana. O meglio, partono e girano ma non riesco ancora a farli parlare tra loro. Siccome l'impatto per la macchina sembra minimo (senza docker: con, non lo so) penso che sarà una soluzione da indagare.

Grazie anche per tutti gli altri suggerimenti :)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required