C2000-LaunchPad - Realizzare un voltmetro true rms
8 Anni 5 Mesi fa #6
da Mauro Laurenti
Risposta da Mauro Laurenti al topic C2000-TMS320F28377S LaunchPad
Progetto piuttosto interessante.
Ho avvisato gli utenti nell'ultima email di aggiornamento del sito.
Saluti,
Mauro
Ho avvisato gli utenti nell'ultima email di aggiornamento del sito.
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Mauro Laurenti
- Moderator
Riduci
Di più
8 Anni 5 Mesi fa #7
da paoletto
Risposta da paoletto al topic C2000-TMS320F28377S LaunchPad
Ciao, si diciamo che sto cercando di capire questo dispositivo non solo studiando la documentazione ma anche realizzando qualcosa di utile: è vero che ora uno strumento a vero valore efficace lo compri bello e fatto ma è senz'altro interessante provare a realizzarlo con questi dispositivi perché si applica la teoria e si impara tanto.
Però mi da che sarà un dialogo fra te e me visto che nessuno scrive niente ..
Proverei a fare lo stesso esercizio ma passando per la FFT, in questo modo lo facciamo anche funzionare da frequenzimetro!
Il problema è che si deve adeguare la frequenza di campionamento al buffer che è fisso(come del resto è così nei comuni DSO) affinché contenga un periodo del nostro segnale. Ora se il segnale è "canonico" come può esserlo una sinusoide, onda triangolare, onda quadra allora con i passaggi per lo zero te la cavi(basta contarne 3) per avere un periodo, ma se è "strano" (ancorché periodico), è molto difficile individuarne un periodo.
Allora magari andando nel dominio della frequenza dovrebbe essere più semplice (tanto per cominciare avremmo una stima del periodo della prima armonica) e poi o continuare l'analisi nel dominio del tempo oppure tutto in frequenza.
Ciao
Paolo.
Paolo.
Però mi da che sarà un dialogo fra te e me visto che nessuno scrive niente ..
Proverei a fare lo stesso esercizio ma passando per la FFT, in questo modo lo facciamo anche funzionare da frequenzimetro!
Il problema è che si deve adeguare la frequenza di campionamento al buffer che è fisso(come del resto è così nei comuni DSO) affinché contenga un periodo del nostro segnale. Ora se il segnale è "canonico" come può esserlo una sinusoide, onda triangolare, onda quadra allora con i passaggi per lo zero te la cavi(basta contarne 3) per avere un periodo, ma se è "strano" (ancorché periodico), è molto difficile individuarne un periodo.
Allora magari andando nel dominio della frequenza dovrebbe essere più semplice (tanto per cominciare avremmo una stima del periodo della prima armonica) e poi o continuare l'analisi nel dominio del tempo oppure tutto in frequenza.
Ciao
Paolo.
Paolo.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- paoletto
- Autore della discussione
- Elite Member
Riduci
Di più
- Messaggi: 186
- Ringraziamenti ricevuti 3
8 Anni 5 Mesi fa #8
da Mauro Laurenti
Risposta da Mauro Laurenti al topic C2000-TMS320F28377S LaunchPad
...l'interesse porta spesso a meditare.
Quando si medita si sta in silenzio, per cui se nessuno risponde vuol dire che stanno tutti meditando!
Quando fai la FFT se costretto a troncare il segnale in base alla tua base dei tempi.
Normalmente hai piu' periodi nella tua base dei tempi, ma teoricamente ne basta uno.
Se hai piu' periodi e ne tronchi uno, questo determina la presenza di armoniche ad alta frequenza che il realta' il segnale potrebbe non contenere. L'utilizzo delle maschere/filtri porta a ridurre questi effetti collaterali.
Saluti,
Mauro
Quando si medita si sta in silenzio, per cui se nessuno risponde vuol dire che stanno tutti meditando!
Quando fai la FFT se costretto a troncare il segnale in base alla tua base dei tempi.
Normalmente hai piu' periodi nella tua base dei tempi, ma teoricamente ne basta uno.
Se hai piu' periodi e ne tronchi uno, questo determina la presenza di armoniche ad alta frequenza che il realta' il segnale potrebbe non contenere. L'utilizzo delle maschere/filtri porta a ridurre questi effetti collaterali.
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
8 Anni 5 Mesi fa #9
da paoletto
Risposta da paoletto al topic C2000-TMS320F28377S LaunchPad
Ok, aspettiamo pazientemente la loro meditazione :d
Allora già ho notato delle stranezze sul periodo di acquisizione(il programma è quello d'esempio della controlsuite): non vedo esattamente un periodo del mio segnale ma ne vedo di più. Se sto campionando a 50kHz (buffer di 500 campioni) e acquisisco una sinusoide a 100Hz dovrei avere un periodo esatto, invece ne ho di più, quindi la frequenza è più bassa. Devo guardarci bene e capire come controllare questa frequenza di campionamento!
Ho provato ad usare la FFT, (fixed point dsp library). Il buffer di destinazione contiene dei numeri, ma finché non ho capito quanto vale effettivamente la frequenza di campionamento e come controllarla, sono numeri privi di senso: non posso creare la scala delle frequenze!
Ciao
Paolo.
Allora già ho notato delle stranezze sul periodo di acquisizione(il programma è quello d'esempio della controlsuite): non vedo esattamente un periodo del mio segnale ma ne vedo di più. Se sto campionando a 50kHz (buffer di 500 campioni) e acquisisco una sinusoide a 100Hz dovrei avere un periodo esatto, invece ne ho di più, quindi la frequenza è più bassa. Devo guardarci bene e capire come controllare questa frequenza di campionamento!
Ho provato ad usare la FFT, (fixed point dsp library). Il buffer di destinazione contiene dei numeri, ma finché non ho capito quanto vale effettivamente la frequenza di campionamento e come controllarla, sono numeri privi di senso: non posso creare la scala delle frequenze!
Ciao
Paolo.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- paoletto
- Autore della discussione
- Elite Member
Riduci
Di più
- Messaggi: 186
- Ringraziamenti ricevuti 3
8 Anni 5 Mesi fa #10
da paoletto
Risposta da paoletto al topic C2000-TMS320F28377S LaunchPad
Ciao, sono andato un poco avanti e ho capito come settare la frequenza di campionamento usando il modulo ePWM.
Devo ammettere che non ho mai visto un modulo PWM più complesso di questo, una logica veramente sofisticata, ma penso che sia decisamente buono per farci applicazioni di controllo spinte, oppure giocare con l'elettronica di potenza.
Ho provato ad usare la FFT fatta sul segnale acquisito (5 periodi di una onda quadra a 100 Hz memorizzati in un buffer di 128 campioni--> Fsample = 2560 Hz, risoluzione spettrale Df = 20Hz).
Si vede qualcosa, ma non mi convince.
Inoltre rifacendo varie acquisizioni lo spettro cambia vistosamente e anzi spesso assume valori negativi.
Ho usato la fixed point library, e sul forum della TI dicono che sia piena di bug, ma io non ci credo!
Mi da dei warnings in compilazione:
warning #10247-D: creating output section "FFTipcbsrc" without a SECTIONS
specification
warning #10247-D: creating output section "FFTmag" without a SECTIONS
specification
warning #10247-D: creating output section "FFTipcb" without a SECTIONS
specification
warning #10247-D: creating output section "FFTtf" without a SECTIONS
specification
Ho usato le direttive pragma come suggerito dalla libreria per l'allineamento della memoria ma a quanto pare non va tutto ok.
Mauro, hai esperienza in merito?
Paoletto.
Devo ammettere che non ho mai visto un modulo PWM più complesso di questo, una logica veramente sofisticata, ma penso che sia decisamente buono per farci applicazioni di controllo spinte, oppure giocare con l'elettronica di potenza.
Ho provato ad usare la FFT fatta sul segnale acquisito (5 periodi di una onda quadra a 100 Hz memorizzati in un buffer di 128 campioni--> Fsample = 2560 Hz, risoluzione spettrale Df = 20Hz).
Si vede qualcosa, ma non mi convince.
Inoltre rifacendo varie acquisizioni lo spettro cambia vistosamente e anzi spesso assume valori negativi.
Ho usato la fixed point library, e sul forum della TI dicono che sia piena di bug, ma io non ci credo!
Mi da dei warnings in compilazione:
warning #10247-D: creating output section "FFTipcbsrc" without a SECTIONS
specification
warning #10247-D: creating output section "FFTmag" without a SECTIONS
specification
warning #10247-D: creating output section "FFTipcb" without a SECTIONS
specification
warning #10247-D: creating output section "FFTtf" without a SECTIONS
specification
Ho usato le direttive pragma come suggerito dalla libreria per l'allineamento della memoria ma a quanto pare non va tutto ok.
Mauro, hai esperienza in merito?
Paoletto.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- paoletto
- Autore della discussione
- Elite Member
Riduci
Di più
- Messaggi: 186
- Ringraziamenti ricevuti 3
Moderatori: Mauro Laurenti, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.