• Micro servo Dspower

Notizia

Cos'è la modulazione di larghezza di impulso? Lascia che te lo spieghi!

Modulazione di larghezza di impulso (PWM) è un termine sofisticato per un tipo di segnale digitale. I PWM sono utilizzati in una varietà di applicazioni, inclusi circuiti di controllo complessi. Un modo comune in cui li utilizziamo a SparkFun è per attenuare un LED RGB o controllare la direzione di un servo. Possiamo ottenere una gamma di risultati in entrambe queste applicazioni perché la modulazione di larghezza di impulso (PWM) ci consente di variare la quantità di tempo in cui un segnale è alto in modo analogico. Mentre un segnale può essere solo alto (solitamente 5 V) o basso (massa) in un dato momento, possiamo variare la proporzione di tempo in cui il segnale è alto rispetto a basso in un intervallo di tempo costante.

Servocomando per braccio roboticoCiclo di lavoro

Quando un segnale è alto, lo chiamiamo "on time". Per descrivere la quantità di "on time", utilizziamo il concetto di duty cycle. Il duty cycle è misurato in percentuale. La percentuale di duty cycle descrive specificamente la percentuale di tempo in cui un segnale digitale è attivo all'interno di un intervallo o periodo. Il periodo è l'inverso della frequenza della forma d'onda. Se un segnale digitale è attivo per metà del tempo e spento per l'altra metà, diciamo che il segnale digitale ha un duty cycle del 50%, simile a un'onda quadra ideale. Se la percentuale è superiore al 50%, il segnale digitale trascorre più tempo nello stato alto che in quello basso, e viceversa se il duty cycle è inferiore al 50%. Il diagramma seguente illustra questi tre casi:

Servocomandi industriali

Un duty cycle del 100% equivale a impostare la tensione a 5 volt (alta). Un duty cycle dello 0% equivale a collegare il segnale a terra.

esempio

È possibile controllare la luminosità del LED regolando il ciclo di lavoro.

PWM viene utilizzato per controllare la luminosità dei LED

Con i LED RGB (rosso, verde e blu) è possibile controllare la quantità di ciascuno dei tre colori miscelati, attenuandoli in modo diverso.

Le basi della miscelazione dei colori

Se tutti e tre vengono accesi in egual misura, il risultato sarà una luce bianca di diverse tonalità. La stessa miscela di blu e verde creerà un colore verde-bluastro. Per un esempio leggermente più complesso, prova ad accendere completamente il rosso, a spegnere completamente il verde al 50% del ciclo di lavoro e a spegnere completamente il blu per creare un colore arancione.

PWM può essere utilizzato per miscelare i colori RGB

Quando si controllano i LED, la frequenza dell'onda quadra deve essere sufficientemente elevata per ottenere un effetto dimmer adeguato. Un'onda con duty cycle del 20% a 1 Hz mostrerà chiaramente l'accensione e lo spegnimento, mentre un duty cycle del 100% a 20 Hz o superiore apparirà più debole rispetto all'accensione completa. In sostanza, se l'obiettivo è ottenere un effetto dimmer con i LED, il periodo non può essere troppo lungo. È anche possibile utilizzare la modulazione di larghezza di impulso per controllare l'angolo di un servomotore collegato a un dispositivo meccanico come un braccio robotico. Un servomotore ha un albero che ruota in una posizione specifica in base alla sua linea di controllo. I nostri servomotori hanno un raggio di circa 180 gradi.

La frequenza/periodo è specifica per il controllo di un particolare servo. Un tipico servomotore prevede un aggiornamento ogni 20 ms, con un impulso compreso tra 1 ms e 2 ms, ovvero un duty cycle compreso tra il 5% e il 10% su una forma d'onda a 50 Hz. Con un impulso di 1,5 ms, il servomotore si troverà nella sua posizione naturale di 90 gradi. Con un impulso di 1 ms, il servo si troverà a 0 gradi e con un impulso di 2 ms, il servo si troverà a 180 gradi. È possibile ottenere l'intervallo di movimento completo aggiornando il servo a valori intermedi.

Servocomando giunto robot

La modulazione di larghezza di impulso viene utilizzata in una varietà di applicazioni, in particolare nel controllo. Ora che sai che può essere utilizzata per regolare l'intensità dei LED e controllare l'angolazione dei servomotori, puoi iniziare a esplorare altri possibili utilizzi. Se ti senti perso, dai un'occhiata allo SparkFun Inventor's Kit, che include esempi di utilizzo della modulazione di larghezza di impulso. Se sei pronto a iniziare subito a programmare e hai un Arduino, dai un'occhiata agli esempi di programmazione PWM qui.


Data di pubblicazione: 31-lug-2025