MECCANICA e DINTORNI
http://meccanicaedintorni.morpel.it/phpbb/

Campionamento ADC e routine di retroazione corrente
http://meccanicaedintorni.morpel.it/phpbb/viewtopic.php?f=77&t=4217
Pagina 1 di 1

Autore:  Raban [ dom ago 08, 2010 15:53 ]
Oggetto del messaggio:  Campionamento ADC e routine di retroazione corrente

Sto giocando con i canali ADC del pic 18f4431 per mettere a punto la routine di retroazione e correzione corrente .
Per ora per fare delle prove sto utilizzando un petenzionetro per variare la tensione sulla porta adc
acquisire i valori e poi effettuare i vari calcoli di retroazione .
Non so se qualcuno mi puo' aiutare , ma ho un po' di difficolta' nello scegliere il PARAMETRO TAD .
Quanto deve durare il tempo di campionamento ?
Tutto il resto viene poi di conseguenza .
I primi test per ora non sono soddisfacenti , l'inseguimento del duty cycle rispetto al canale adc
funziona pero' la routine di campionamento, conversione e correzione duty cycle dura la bellezza
di 3 millisecondi , che mi pare un'enormita' .
Con McMax si pensava di campionare il segnale ad ogni periodo del pwm sul primario , quindi a 40 kilo Hz
Io con la mia routine sono a 330 HZ , siamo 2 ordini di grandezza distanti ...
C'e' da dire che la routine di correzione pwm e' abbastanza corposa perche' prevede la correzione di un pwm alla volta e quindi ad ogni ciclo c'e' da verificare quale dei due pwm sia da correggere
e cio' dipende anche dal verso della correzione :

- se devo diminuire devo diminuire il maggiore dei due
- se devo aumentare devo aumentare il minore dei due

Autore:  Raban [ lun ago 09, 2010 08:51 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

rettifico . avevo un delay che mi falsava la routine , ora sono intorno ai 10 khz tra campionamento conversione e retroazione ...
speriamo basti , meglio non si puo' fare ...

Autore:  Bit79 [ mar ago 10, 2010 21:09 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

10 Khz per fare cosa?
A 40 Mhz di clock sono 1000 cicli di istruzione, e se l'adc lo gestisci in interrupt non ti porta nemmeno via tanto tempo.
Io ho fatto calcoli a queste frequenze (in realtà sono intorno a 15 Khz), ma su 4 canali contemporaneamente...

Autore:  Raban [ mer ago 11, 2010 10:27 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

Infatti , quasi sicuramente hai ragione tu , devo provare a gestirlo da interrupt e vedere come si comporta .
McMax suggeriva di usare il buffer fifo e fare la media di 2 o 4 campionamenti
prima di fare la correzione , non capisco pero' come accedere ai risultati una volta che sono nel buffer .

P.S. ho messo in moto il dspic33, cavoli nelle opzioni pwm ha pure l'opzione
push-pull che e' proprio quello che serve a noi , per non parlare dell'adc , 2 mega sample/secondo per ciascuna delle due SAR...
In compenso ha tanti di quei registri da impostare che fa paura ....

Autore:  Raban [ gio ago 12, 2010 13:43 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

Dunque ho rivisto il settaggio dei registri ADC ed effettivamente la velocita' di campionamento e' molto piu' alta .
Sono arrivato a 176 KHz su singolo canale .
Ho fatto anche delle prove di retroazione , e possiamo arrivare tranquillamente a 44 khz come frequenza di retroazione usando
una media di 4 campioni presi dal registro fifo dell'ADC il tutto
impegnando la potenza di calcolo del pic per il 25 % circa ...

Ora il mio dubbio e' il seguente , ovvero con che tempistiche realizzare la retroazione ...

Ipotesi 1 : l'adc gira di continuo ed ogni 4 campioni effettuo
la retroazione ( retroazione asincrona rispetto al pwm)
ipotesi 2 : l'adc gira di continuo ed ogni due campioni effettuo
la retroazione (retroazione asincrona rispetto al pwm)
Ipotesi 3 : adc siconcrono al pwm utilizzando lo special event trigger e correzione ad ogni lettura ADC
ipotesi 4: adc gira di continuo ed effettuo una correzione sincrona rispetto al pwm utilizzando lo special event trigger .

Accetto suggerimenti , io farei la prima che e' la piu' facile da
implementare ...

Autore:  Blanko70 [ gio ago 12, 2010 14:26 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

Io sceglierei senza dubbio l'opzione 3 in quanto l'ADC deve misurare sempre nello stesso istante rispetto all'istante di commutazione del PWM in modo da non venire condizionato dalle dinamiche della commutazione del PWM che non puoi controllare.

Autore:  Bit79 [ dom ago 15, 2010 08:15 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

Sono d'accordo con blanko. Sicuramente adc rigorosamente sincrono con il pwm, e a frequenza rigorosamente costante.

Autore:  Raban [ dom mag 01, 2011 15:50 ]
Oggetto del messaggio:  Re: Campionamento ADC e routine di retroazione corrente

Aggiornamento :
Prima bozza di retroazione 8 bit 20 khz pronta e funzionante
Ora posso programmare le rampe di salita , discesa e pulsazione

Pagina 1 di 1 Tutti gli orari sono UTC +1 ora
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/