Sommario:

Pwm2pwm: 4 passaggi
Pwm2pwm: 4 passaggi

Video: Pwm2pwm: 4 passaggi

Video: Pwm2pwm: 4 passaggi
Video: (2) PWM Limited FLIP FLOP DC - AC Inverter 2024, Ottobre
Anonim
Pwm2pwm
Pwm2pwm

Modificare il segnale PWM in ingresso in un altro segnale PWM in uscita con un Encoder.

Questo progetto è nato quando ho acquistato il mio primo laser cutter. Non è facile impostare la potenza PWM, la prima volta, in base al materiale che si vuole tagliare. Quindi voglio creare un piccolo dispositivo per cambiare la potenza durante l'esecuzione.

Passaggio 1: elenchi dei componenti

Elenchi dei componenti
Elenchi dei componenti

Per questo progetto hai bisogno di:

  • 1 x display Oled, nel mio caso I2C
  • 1 x Arduino, nel mio caso arduino mini pro per le piccole dimensioni.
  • 1 x Trimmer con un pulsante.
  • Resistenze 3 x 10k, 2 per il pull-up del trimmer e una per il pull-down.

Nella foto di questo passaggio si vede un altro Arduino mini pro, chiamato laser, perché ho simulato le abilità del controller laser (pwm in signal) con questo Arduino.

Passaggio 2: connessioni

Connessioni
Connessioni
Connessioni
Connessioni

Ricordati di collegare i 3 resistori, pull-up e pull-down, in questo schema.

Per la prima volta, ti consiglio di collegare il secondo Arduino (chiamato laser nel passaggio precedente) per verificare se anche il codice e la connessione funzionano insieme.

Se hai più familiarità con la vista schematica, apri il pwmTOpwm.svg.

Passaggio 3: schizzo Arduino

Arduino Sketch
Arduino Sketch
Arduino Sketch
Arduino Sketch

Puoi facilmente copiare il mio codice dalla pagina GitHub:

La principale competenza di questo codice è l'integrazione del comando "pulseIn", maggiori info:

Quando provi a misurare un segnale PWM che entra nel microcontrollore, devi contare per quanto tempo il segnale rimane alto (o basso) nel periodo. Puoi usare il comando "pulseIn".

Se provi a tracciare il segnale pulseIn puoi vedere qualcosa di instabile.

Per risolvere questo problema dobbiamo utilizzare un filtro mediano, nel mio caso la media mobile esponenziale (EMA).

Puoi provare questo fantastico e facile filtro con questo esempio:

Niente paura, il filtro è già integrato nel codice:p.

Se stai usando il secondo Arduino (laser) puoi caricare in quell'arduino questo esempio:

Passaggio 4: PCB

PCB
PCB

Vorrei creare un PCB per questo progetto, con KiCad, e condividerlo.

Se apporto modifiche al PCB, le condividerò sulla pagina GitHub.

Consigliato: