Volevi dire il contrario?
Si potrebbe dire che la tensione va a scatti (digit) mentre i tempi variano con continuità..
Conversione digitale analogica
Moderatore:
Paolino
29 messaggi
• Pagina 3 di 3 • 1, 2, 3
0
voti
non ho pensato di chiamarlo come dite voi,inizierò a far accendere il led e poi vado avanti grazie a tutti
1
voti
Il segnale PWM può essere o non essere digitale, dipende se viene generato quantizzando una tensione oppure no. Con un comparatore ed un'onda triangolare si ottiene un PWM analogico.

0
voti
volevo dire che avendo un segnale onda quadra con periodo 20ms e con duty variabile tra 1 e 2 ms ampiezza 5 v volevo ricavare la componente continua variabile alla variazione del duty
0
voti
Quindi non è nemmeno necessario leggere il valore del duty cicle del segnale, ma basterebbe leggere l'ampiezza del periodo Ton del segnale. Questo semplifica un po' la procedura ed il metodo del modulo CCP resta valido.
Leggendo quel segnale con un PIC che lavora con una frequenza di clock a 20MHz, riesci a discriminare variazioni di Ton di:

Questo significa che tra i due impulsi di 1ms e 2ms potresti teoricamente rilevare

Livelli distinti di durata di Ton
Adesso si tratta di convertire questo numero compreso tra 0 e 5000 in tensione.
Senza tirare in ballo di nuovo il modulo CCP che è impegnato a rilevare il tempo Ton, puoi usare questo numero in un contatore che va da 0 a 5000. Fino a che il contatore è < del numero letto imposti lo stato di un pin ad 1, altrimenti lo imposti a 0 e quello che ottieni in uscita dal pin è un valore PWM convertito in una modulazione da 0 a 100% di quello che avevi letto che aveva una modulazione da 10 a 20%.
Questo nuovo PWM, con un filtro passa basso, fornisce un valore da 0 alla tensione di alimentazione, con una quantizzazione a 5000 livelli.
Adesso, mettiamo che il PIC a fare un decremento, una comparazione e impostare lo stato del pin impieghi 10 cicli macchina, non lo so di preciso sto facendo un'ipotesi. Per contare da 0 a 5000 e generare un periodo del segnale PWM impiegherà 50000 cicli macchina che a 20MHz (e senza contare il tempo perso nella routine di interrupt) dura

Che equivale ad una frequenza PWM di

Se lo vuoi aumentare e non ti interezza una precisione di 5000 livelli, puoi dividere quel 5000 ed il contatore ad esempio per 20 e quindi ottenere una precisione di 250 livelli ed una frequenza PWM di 2KHz
Tutto questo, in via teorica, e se non ho insultato la matematica con qualche errore grossolano.
Leggendo quel segnale con un PIC che lavora con una frequenza di clock a 20MHz, riesci a discriminare variazioni di Ton di:

Questo significa che tra i due impulsi di 1ms e 2ms potresti teoricamente rilevare

Livelli distinti di durata di Ton
Adesso si tratta di convertire questo numero compreso tra 0 e 5000 in tensione.
Senza tirare in ballo di nuovo il modulo CCP che è impegnato a rilevare il tempo Ton, puoi usare questo numero in un contatore che va da 0 a 5000. Fino a che il contatore è < del numero letto imposti lo stato di un pin ad 1, altrimenti lo imposti a 0 e quello che ottieni in uscita dal pin è un valore PWM convertito in una modulazione da 0 a 100% di quello che avevi letto che aveva una modulazione da 10 a 20%.
Questo nuovo PWM, con un filtro passa basso, fornisce un valore da 0 alla tensione di alimentazione, con una quantizzazione a 5000 livelli.
Adesso, mettiamo che il PIC a fare un decremento, una comparazione e impostare lo stato del pin impieghi 10 cicli macchina, non lo so di preciso sto facendo un'ipotesi. Per contare da 0 a 5000 e generare un periodo del segnale PWM impiegherà 50000 cicli macchina che a 20MHz (e senza contare il tempo perso nella routine di interrupt) dura

Che equivale ad una frequenza PWM di

Se lo vuoi aumentare e non ti interezza una precisione di 5000 livelli, puoi dividere quel 5000 ed il contatore ad esempio per 20 e quindi ottenere una precisione di 250 livelli ed una frequenza PWM di 2KHz
Tutto questo, in via teorica, e se non ho insultato la matematica con qualche errore grossolano.

0
voti
non sarebbe meglio che il duty variasse fra 0 e 20 ms ossia fra 0 e 100 % ?neofita ha scritto:...onda quadra con periodo 20ms e con duty variabile tra 1 e 2 ms ampiezza 5 v ...
se varia a passi di 1 ms hai una risoluzione del 100/20 = 5 %.
Poi si chiama modulazione a larghezza di impulso (PWM).
0
voti
ciao
quindi devo salvare i valori letti in una variabile e faccio agire un contatore,il nuovo PWM ottenuto serve ad avere una definizione migliore dei livelli del segnale.il filtro passa basso mi darà poi la tensione continua variabile.è giusto?
grazie
quindi devo salvare i valori letti in una variabile e faccio agire un contatore,il nuovo PWM ottenuto serve ad avere una definizione migliore dei livelli del segnale.il filtro passa basso mi darà poi la tensione continua variabile.è giusto?
grazie
0
voti
Si, quando il periodo Ton del segnale che leggi varrà 1ms, il contatore si fermerà a 0, la PWM avrà un duty dello 0% e la tensione dopo il filtro sarà 0V
Con Ton 1,2 ms, contatore 1000, PWM 20% e tensione 1V
Con Ton 1,5 ms, contatore 2500, PWM 50% e tensione 2,5V
Ecc...
Con quel numero nel tuo progetto con il modellino puoi inventarti tutto quello che vuoi, far brillare di più o di meno i led, accenderne di più o di meno, accelerare o rallentare una certa sequenza ecc...
Con Ton 1,2 ms, contatore 1000, PWM 20% e tensione 1V
Con Ton 1,5 ms, contatore 2500, PWM 50% e tensione 2,5V
Ecc...
Con quel numero nel tuo progetto con il modellino puoi inventarti tutto quello che vuoi, far brillare di più o di meno i led, accenderne di più o di meno, accelerare o rallentare una certa sequenza ecc...

29 messaggi
• Pagina 3 di 3 • 1, 2, 3
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 11 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)





