• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
raspberrypi2 acquisizione grafici mcp3008 e matplotlib analogica

acquisizione analogica e grafici
#1
Buonasera . Sono un nuovo utilizzatore di Python. Ho scritto un programma che "dovrebbe" acquisire dati da un analizzatore di spettro  e "dovrebbe" plottarli su raspberryPi2. L'analizzatore alza un bit all'inizio della scansione  (pen UP / down) e fa uscire le rispettive tensioni in Volts (x , Y ). Il DOVREBBE è d'obligo......Ho usato l' SPI e un MCP3008. Nessun problema per l' acquisizione...ma il grafico non compare se non arresto il prg con ctrl+c   o aggiungo un BREAK alla fine del While (TRUE). Dove sbaglio ? Allego un condensato senza fronzoli del prg sperando in chiarimenti che possano essere utili a me ed ad altri che vogliano cimentarsi nell'uso di queste librerie. Grazie per l'ospitalità.
Adriano IZ1PSS. Smile  
.txt   adc3008_3.py.txt (Dimensione: 1.37 KB / Download: 5)
Risposta
#2
Chiaramente si tratta di un errore di logica del programma.
Così da cellulare, mi pare di poter dire che non si verifichi mai la condizione del secondo if.
Prova a usare thorny come IDE per Python : è incluso nelle ultime versioni di Raspbian, e lo puoi scaricare anche per Windows o Mac. Ha i a comoda funzione di debug che ti consente di eseguire il programma passo passo e vi vedere come ciano le variabili e come procede il flusso di esecuzione del programma.
Risposta
#3
E' doveroso ringraziarti per la risposta. seguirò il tuo consiglio e proverò ad usare thorny come ide. .Il tuo "chiaramente" mi sembra azzardato. Ti assicuro che il prg entra nel secondo if. Se richiesto (print x,y) stampa gli array , e con un control+c o un break mi mostra il grafico. Cosa non accettabile poichè non posso più acqisire altro, se non riavviando ... Grazie Adriano.
Risposta
#4
"chiaramente" per il tipo di malfunzionamento, nel senso che non è un errore di sintassi o una eccezione. Il programma funziona senza errori, ma non fa quello che vuoi che faccia (errore di semantica, se preferisci).
Hai ragione, entra nel secondo if, ma così com'è, il fa il grafico solo se j ha valore 0 (e k ha valore 1) cioè solo quando smette di acquisire (tipo quando interrompi il programma) .. E' corretto? Non dovrebbe plottare quando c'è un valore in ingresso (e quindi j è = a 1) ??
Risposta
#5
Forse devo fare alcune precisazioni: Il programma di acquisizione lo avevo scritto tempo fa in VisualC6 usando alcune librerie (IOCOMP) molto potenti ricevendo i dati via seriale da un Pic che provvedeva a convertirli. Avevo poi usato Arduino al posto del Pic ottenendo gli stessi risultati eliminando il problema della seriale,usando la usb a bordo di Arduino. Effettivamente il prg in VC6 si comportava come dici giustamente Tu: acquisiva e scriveva. Mi son detto: perchè non usare Raspberry che ha tutto quello che mi serve a bordo ? Quindi girovgando sul web e non conoscendo NULLLLLAAAA del mondo python ho provato diverse librerie ed ho letto un pò del manuale di MATPLOTLIB( 3000 pagine.) . Sono rimasto malissimo dalla mancanza di un debug ma grazie al tuo aiuto ora lo ho istallato. Non è un errore, ma è espressamente voluto scrivere il grafico alla fine. Mi sembra e dico mi sembra che la libreria PyPlot, voglia così. Sono andato lungo ma mi sembrava doveroso.... Adriano
Risposta
#6
(25/09/2017, 10:34)adriano51it Ha scritto: ..............
Effettivamente il prg in VC6 si comportava come dici giustamente Tu: acquisiva e scriveva.  .....Non è un errore, ma è espressamente voluto scrivere il grafico alla fine.
.....Mi sembra e dico mi sembra che la libreria PyPlot,  voglia così.

Oggi ho provato ad istallare THONNY anche su raspberry senza peraltro riuscirci.
sudo apt-get update
........Err :http//mirrordirector.raspian.org
sudo apt-get dist-upgrade
.......impossibile iniziare la connessione a mirrordirector.raspian.org
sudo apt-get install python3-thonny
.........impossibile trovare il pacchetto python3-thonny. Angry  Dodgy
Ho provato a scrivere i dati appena letti sul grafico senza risultati. Ho usato il debugger di IPython eseguendo riga per riga. Arrivato a plt.show la salta e torna a While(True). Terminando il programma (ctrl+c) il grafico compare. Non so proprio risolvere il problema.
Grazie Adriano
Risposta
#7
(26/09/2017, 20:09)adriano51it Ha scritto: [quote='adriano51it' pid='14125' dateline='1506332044']
..............
Effettivamente il prg in VC6 si comportava come dici giustamente Tu: acquisiva e scriveva.  .....Non è un errore, ma è espressamente voluto scrivere il grafico alla fine.
.....Mi sembra e dico mi sembra che la libreria PyPlot,  voglia così.

Oggi ho provato ad istallare THONNY anche su raspberry senza peraltro riuscirci.

................................................

Ciao a tutti. Dopo una giornata di "Cordiali " discussioni con il mio provider, in cui sono stato accusato di aver contratto chissà quali infezioni informatiche, ieri sera con una mail sono stato informato di essre finito nella black list degli ip di navigazione (?????) .Tutto così si è risolto. Istallato Thonny e le relative librerie.
Qualche idea su matplotlib e i grafici ? Grazie Adiano
Risposta
  


Vai al forum:


Navigazione:
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect