Indholdsfortegnelse:

Pwm2pwm: 4 trin
Pwm2pwm: 4 trin

Video: Pwm2pwm: 4 trin

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

Skift input PWM signal til et andet PWM signal output med en Encoder.

Dette projekt blev født, da jeg købte min første laserskærer. Det er ikke let at indstille PWM -effekten i første omgang i henhold til det materiale, du vil skære. Så jeg vil oprette en lille enhed til at ændre strømmen under udførelsen.

Trin 1: Lister over komponenter

Komponenter lister
Komponenter lister

Til dette projekt har du brug for:

  • 1 x Oled display, i mit tilfælde I2C
  • 1 x Arduino, i mit tilfælde arduino mini pro til den lille dimension.
  • 1 x Trimmer med knap.
  • 3 x 10k modstand, 2 til pull-up af trimmeren og en til pull-down.

På billedet af dette trin ser du en anden Arduino mini pro, kaldet laser, fordi jeg simulerede laser controllerens færdigheder (pwm i signal) med denne Arduino.

Trin 2: Forbindelser

Forbindelser
Forbindelser
Forbindelser
Forbindelser

Husk at forbinde de 3 modstande, pull-up og pull-down, i denne skematiske.

For første gang anbefaler jeg dig at tilslutte den anden Arduino (kaldet laser i trin før) for at teste, om koden og forbindelsen også fungerer sammen.

Hvis du er mere fortrolig med den skematiske visning, skal du åbne pwmTOpwm.svg.

Trin 3: Arduino Sketch

Arduino Skitse
Arduino Skitse
Arduino Skitse
Arduino Skitse

Du kan nemt kopiere min kode fra GitHub -siden:

Hovedfærdighederne i denne kode er integrationen af kommandoen "pulseIn", mere info:

Når du prøver at måle et PWM -signal går ind til mikrokontrolleren, skal du tælle, hvor længe signalet forbliver oppe (eller ned) i perioden. Du kan bruge kommandoen "pulseIn".

Hvis du prøver at plotte pulseIn -signalet, kan du se noget ustabilt.

For at løse dette problem skal vi bruge et medianfilter, i mit tilfælde eksponentielt glidende gennemsnit (EMA).

Du kan prøve dette fede og lette filter med dette eksempel:

Bare rolig, filteret er allerede integreret i koden: s.

Hvis du bruger den anden Arduino (laser), kan du uploade dette eksempel i denne arduino:

Trin 4: PCB

PCB
PCB

Jeg vil gerne kasse et printkort til dette projekt med KiCad og dele det.

Hvis jeg foretager ændringer i printkortet, vil jeg dele dem på GitHub -siden.

Anbefalede: