Satura rādītājs:
Video: Pwm2pwm: 4 soļi
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-10 13:47
Mainiet ievades PWM signālu uz citu PWM signāla izeju, izmantojot kodētāju.
Šis projekts radās, kad es nopirku savu pirmo lāzera griezēju. Pirmajā reizē nav viegli iestatīt PWM jaudu atbilstoši materiālam, kuru vēlaties griezt. Tāpēc es vēlos izveidot nelielu ierīci, lai izpildes laikā mainītu jaudu.
1. darbība: komponentu saraksti
Šim projektam jums ir nepieciešams:
- 1 x Oled displejs, manā gadījumā I2C
- 1 x Arduino, manā gadījumā arduino mini pro mazajam izmēram.
- 1 x trimmeris ar pogu.
- 3 x 10k rezistors, 2 trimmera uzvilkšanai un viens nolaišanai.
Šī soļa attēlā jūs redzat citu Arduino mini pro, ko sauc par lāzeru, jo ar šo Arduino es simulēju lāzera kontrollera prasmes (pwm signālā).
2. darbība. Savienojumi
Atcerieties, ka šajā shēmā ir jāpievieno 3 rezistori-uzvilkšana un nolaišana.
Pirmo reizi es iesaku jums savienot otro Arduino (iepriekšējā solī to sauca par lāzeru), lai pārbaudītu, vai kods un savienojums darbojas arī kopā.
Ja esat vairāk iepazinies ar shematisko skatu, atveriet pwmTOpwm.svg.
3. darbība: Arduino skice
Jūs varat viegli nokopēt manu kodu no GitHub lapas:
Šī koda galvenās prasmes ir komandas "pulseIn" integrācija, vairāk informācijas:
Mēģinot izmērīt PWM signālu, kas nonāk mikrokontrollerī, jums ir jāaprēķina, cik ilgi signāls šajā periodā ir uz augšu (vai uz leju). Jūs varat izmantot komandu "pulseIn".
Mēģinot uzzīmēt pulseIn signālu, jūs varat redzēt kaut ko nestabilu.
Lai atrisinātu šo problēmu, mums jāizmanto vidējais filtrs, manā gadījumā - eksponenciālais slīdošais vidējais (EMA).
Jūs varat izmēģināt šo foršo un vienkāršo filtru, izmantojot šo piemēru:
Neuztraucieties, filtrs jau ir integrēts kodā: lpp.
Ja izmantojat otro Arduino (lāzeru), varat augšupielādēt šajā arduino šajā piemērā:
4. solis: PCB
Es vēlos šim projektam kopā ar KiCad izveidot PCB un dalīties tajā.
Ja es izdarīšu izmaiņas PCB, es tās kopīgošu GitHub lapā.