Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Onda Triangolare da PWM per microcontrollore

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteIsidoroKZ, Foto UtenteBrunoValente

0
voti

[11] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtenteRoswell1947 » 2 mar 2021, 11:53

Per PWM a 255 livelli intendi che l'ampiezza dell'onda PWM è codificata ad 8bit?
Avatar utente
Foto UtenteRoswell1947
25 5
New entry
New entry
 
Messaggi: 98
Iscritto il: 10 feb 2020, 16:39

0
voti

[12] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtentePietroBaima » 2 mar 2021, 12:04

No, intendo che il duty cycle può variare su 8 bit, cioè è discretizzato in 255 valori.
Il duty cycle (D) può variare fra 0 e 1, ma questo per un microcontrollore non ha senso, per cui l’intervallo 0-1 viene discretizzato in un numero a 8 bit, 16 bit, 32 bit ecc...
In un microcontrollore il PWM viene implementato con un contatore e un comparatore di uguaglianza, che resetta il contatore (in modo sincrono) quando si ha un “compare match”, cioè in pratica quando il contatore raggiunge il valore impostato sul comparatore. (poi in realtà viene portato fuori il bit “<“ del comparatore, per avere l’uscita negata e quindi il vero PWM, ma questo è un dettaglio).
Se imposti 0 sul comparatore avrai un bit che è zero sempre, perché il contatore sarà sempre in reset.
Se imposti per esempio 2A (su 8 bit) avrai un D=2A/FF cioè D=16.5% circa. Se imposti FF avrai D=100%, cioè il contatore resterà sempre ad uno.
E’ facendo variare D con un interrupt periodico che generi la tua onda triangolare.
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex
Avatar utente
Foto UtentePietroBaima
82,6k 7 12 13
G.Master EY
G.Master EY
 
Messaggi: 10609
Iscritto il: 12 ago 2012, 1:20
Località: Londra

0
voti

[13] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtentePietroBaima » 2 mar 2021, 12:11

Per esempio, prendi a pag.74 e seguenti del datasheet dell’ATMEGA328, che è il primo micro che mi è venuto in mente.
Lì c’è la descrizione di come funziona un GPTCM.
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex
Avatar utente
Foto UtentePietroBaima
82,6k 7 12 13
G.Master EY
G.Master EY
 
Messaggi: 10609
Iscritto il: 12 ago 2012, 1:20
Località: Londra

2
voti

[14] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtentePietroBaima » 2 mar 2021, 12:18

Prova a guardare anche questa immagine:
C8B7E9E7-9EDE-4180-A32E-2FBB943C8B66.jpeg

dalla quale puoi vedere come viene fuori un PWM per una sinusoide.
A destra hai anche come deve essere progettata la banda passante del filtro (lì progettano un passa basso, anche se io tendo quasi sempre a progettare un passa banda per essere più chiuso rispetto al rumore).
Per l’onda triangolare il filtro è più complesso perché non hai un unico contributo armonico (la sinusoide) ma una banda, per cui diventa importante l’ondulazione in banda e la ampiezza di banda stessa. In ogni caso per l’onda triangolare non puoi evitare che la coda spettrale vada a finire sulla banda del PWM, per cui succederà che, anche se il tutto è ben progettato, avrai le armoniche più elevate della tua onda triangolare che finiranno in banda attenuata. Nel dominio del tempo questo di traduce ad avere gli “spigoli” superiore ed inferiore stondati, cosa che potrebbe non piacerti.
Il modo per ridurre il tutto è quello di aumentare la frequenza del PWM, che però ha molti svantaggi, in primis l’impegno di calcolo richiesto al microcontrollore.

Presa da questa fonte.
Diversamente da così non saprei spiegartelo, devi studiare il datasheet e la teoria del PWM.

EDIT: scorrendo il sito dal quale ho preso l’immagine c’è una foto fatta all’oscilloscopio di come viene fuori l’onda triangolare. Avevo ottenuto risultati simili. Per me che sono nato in epoca analogica e ho fatto il mio primo oscillatore onda quadra/triangolare con due operazionali quell’affare mi sembrava tutto tranne che un’onda triangolare :mrgreen:
Questa è un’onda triangolare:
0D8BFABF-E923-46DF-ACE3-80C39C413EC0.png
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex
Avatar utente
Foto UtentePietroBaima
82,6k 7 12 13
G.Master EY
G.Master EY
 
Messaggi: 10609
Iscritto il: 12 ago 2012, 1:20
Località: Londra

1
voti

[15] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto Utentedimaios » 2 mar 2021, 12:52

PietroBaima ha scritto:Esistono dei Programmable Gain Amplifier integrati controllabili in SPI o in IIC.


Mi permetto di aggiungere che ci sono anche dei microcontrollori con gli amplificatori operazionali e PGA integrati.
Per esempio gli STM32G4come spiegato nell' application note AN5306 ( Operational Amplifier (OPAMP) usage in STM32G4 Series ) offrono questa interessante possibilità.
Ovviamente deve essere accuratamente valutato se le caratteristiche dell'OPAMP sono idonee all'applicazione.
Ingegneria : alternativa intelligente alla droga.
Avatar utente
Foto Utentedimaios
29,7k 7 10 12
G.Master EY
G.Master EY
 
Messaggi: 3315
Iscritto il: 24 ago 2010, 14:12
Località: Behind the scenes

0
voti

[16] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtenteRoswell1947 » 2 mar 2021, 13:02

Ma io in un microcontrollore oltre ad impostare il D (duty cicle) posso anche impostare il periodo T=Ton+Toff del segnale PWM?
Avatar utente
Foto UtenteRoswell1947
25 5
New entry
New entry
 
Messaggi: 98
Iscritto il: 10 feb 2020, 16:39

1
voti

[17] Re: Onda Triangolare da PWM per microcontrollore

Messaggioda Foto UtenteEcoTan » 2 mar 2021, 13:35

Certo, gioca la frequenza di clock, l'eventuale prescaling e il periodo impostato per il modulo PWM o per il timer capace di PWM.
Avatar utente
Foto UtenteEcoTan
6.029 4 10 13
Expert EY
Expert EY
 
Messaggi: 3951
Iscritto il: 29 gen 2014, 8:54

Precedente

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Nessuno e 67 ospiti