Talaan ng mga Nilalaman:

Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder: 4 na Hakbang
Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder: 4 na Hakbang

Video: Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder: 4 na Hakbang

Video: Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder: 4 na Hakbang
Video: Controlling 32 Servo motors with PCA9685 and ESP32 - V4 2024, Hulyo
Anonim
Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder
Random DC Motor PWM Mga Eksperimento + Pag-troubleshoot ng Encoder

Mayroong madalas na mga oras kung saan ang basura ng isang tao ay kayamanan ng iba, at ito ang isa sa mga sandaling iyon para sa akin.

Kung sinusundan mo ako, malamang na alam mo na kumuha ako ng isang malaking proyekto upang lumikha ng aking sariling 3D printer na CNC mula sa scrap. Ang mga piraso ay ginawa mula sa mga lumang bahagi ng printer at iba't ibang mga stepper motor.

Ang karwahe ng printer na ito ay nagmula sa isang Texas Instruments dot matrix printer mula 1980's. Sa kasamaang palad hindi ko naalala kung ano ang modelo ngunit mayroon akong numero ng motor, 994206-0001. Ang DC motor na ito ay nilagyan din ng isang encoder, na magiging kapaki-pakinabang upang magamit para sa mga modernong application. Sa aking pagmamadali upang makuha ang pagpupulong na ito, tinanggal ko lamang ito at kumuha ng larawan kung saan ito nakakonekta.

Sa Instructable na ito, susubukan kong makita kung talagang gumagana ang motor at encoder at kung para saan ang mga pin-out.

Mga Pantustos:

DC motor na may Encoder

Arduino UNO, NANO

L298N H-tulay

DC Buck Converter

Ang suplay ng kuryente na may kakayahang maiugnay ang (mga) boltahe na maaaring kailanganin mo (ang isang lumang PC ATX ay maaaring isang mabubuting pagpipilian)

Mga kable

PC na may arduino IDE

Multimeter

Kuwaderno!!

Hakbang 1: Isang Mabilis na Pagtingin sa Assembly

Isang Mabilis na Pagtingin sa Assembly
Isang Mabilis na Pagtingin sa Assembly
Isang Mabilis na Pagtingin sa Assembly
Isang Mabilis na Pagtingin sa Assembly
Isang Mabilis na Pagtingin sa Assembly
Isang Mabilis na Pagtingin sa Assembly

Ipinapakita ng larawan 1 ang pangunahing kalahati ng karwahe. Nilagyan ito ng pagpupulong, ang motor na may encoder, at ang mga track para sa lumang feed ng tuldok na tuldok. Inalis ko ang mga track at bahagi ng ilalim ng pagpupulong. Ang ilalim na piraso na tinanggal ko ay ang steel bar ng suporta, na kung saan ay medyo mabigat, talaga (tila hindi nila ginawan ang mga ito ngayon).

Ipinapakita ng dalawang larawan kung saan ang J8 (ang encoder konektor) at at J6 (ang motor konektor) ay inalis mula sa control board. Kinunan ko ito ng larawan sa paaralan sa aking sarili sa mga bakas at IC mula sa "ina board."

Sa mga larawan 3 at 4, maaari mong makita ang mga konektor ng motor at encoder, ayon sa pagkakabanggit.

Matapos ang pagmamapa ng mga bakas sa encoder at muling gawin ang eskematiko, nakagawa ako ng aking sariling diagram na madali kong magagamit. Ang encoder pin out ay ang pinakamahalagang bagay para sa akin upang matukoy at ang pokus ng itinuturo na ito para sa pag-troubleshoot. Makikita natin ito sa susunod na seksyon.

Hakbang 2: Pag-unawa sa Encoder Pin-out

Pag-unawa sa Encoder Pin-out
Pag-unawa sa Encoder Pin-out
Pag-unawa sa Encoder Pin-out
Pag-unawa sa Encoder Pin-out
Pag-unawa sa Encoder Pin-out
Pag-unawa sa Encoder Pin-out

Ngayon, kailangan kong malaman kung ano ang pin-out sa encoder. Arbitrary kong minarkahan ang mga pin 1 hanggang 8 at inilalarawan ko ang mga ito sa huling larawan. Ang ipinapalagay ko, mula sa pagtingin sa control board at mga bakas sa mismong encoder, ay ang pin 1 & 6 na ground & 5 ay Vcc (power, 5V). Ang koneksyon para sa 2 ay blangko upang walang silbi at ang 3, 4, 7, & 8 ang mga output para sa diode array. BABALA: Gumagawa ako ng isang naka-bold na palagay sa aking pagsubok! Ikinonekta ko ang lupa sa lupa sa aking mapagkukunan ng kuryente ngunit pagkatapos ay ikonekta ko ang 5 V sa encoder nang direkta. Simula sa taas na ito ang isang boltahe ay maaaring masira ang iyong encoder kung hindi mo alam kung ano ang boltahe na kailangan nito (tulad ng kung paano ko hindi alam). Kaya baka gusto mong magsimula sa isang mas mababang boltahe tulad ng 3.3 V. Matapos ikonekta ang aking mapagkukunang 5 V na kuryente sa encoder pin 5 at ground sa pin 1, idikit ko ang aking multimeter ground upang i-pin ang 1 at i-pin ang 5 upang matiyak na ang lakas ay naroroon, larawan 2. Pagkatapos ay sinisimulan ko ang pagsubok ng pin 3, na kung saan ay ipinapalagay ko na isa sa mga arrode ng diode ng larawan, mga larawan 3-5. Tulad ng nakikita mo ang mga siklo ng boltahe mula malapit sa 0 V hanggang malapit sa 5 V habang paikutin ko ang motor shaft. Iyon ay isang magandang tanda upang patunayan na ang aking teorya ay tama! Ginawa ko ang pareho para sa mga pin 4, 7, & 8, at nakakuha ng parehong mga resulta. Kaya ngayon, natutukoy ko kung ano ang mga output pin para sa aking encoder.

Maaari mong gawin ang pareho sa anumang optikal na sensor na hinihila mo mula sa isang printer na maaari mong mai-salvaging mga bahagi mula dahil ang karamihan ay hindi nagmumula sa mga konektor na 8-pin. Para sa mga modernong printer sa bahay, tila sila ay 3 o 4-pin na uri. Ang HomoFaciens ay may mahusay na video sa YouTube kung paano matukoy ang isang hindi kilalang pag-pin para sa mga optikong sensor.

Hakbang 3: Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth

Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth
Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth
Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth
Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth
Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth
Simpleng Arduino Sketch para sa Paglipat ng Motor Back & Forth

Ngayon na mayroon akong data para sa encoder ng motor, oras na upang makita kung paano tatakbo ang motor mismo. Upang gawin ito, nagsulat ako ng isang napaka-pangunahing sketch para sa Arduino, mga larawan 3 - 5. Tinutukoy ko ang aking input para sa Pulse Width Modulation mula sa L298N bilang 'enB.' Para sa mga pin 3 & 4, itinakda ko ito upang paganahin ang motor na magpalit ng mga direksyon, kung kinakailangan. Ito ay

A. Buksan ang motor

B. Lumipat sa isang direksyon sa loob ng 2 segundo

C. Ipagpalit ang direksyon ng 2 segundo, at

D. Ulitin

Gusto ko lamang subukan ang pag-set up at pag-andar at napatunayan na matagumpay ito (pagkatapos baguhin ang pulso mula 50 hanggang 100, tingnan ang larawan sa itaas).

Susunod na paglalagay ng sketch ang pagpabilis, mga larawan 6 - 8. Sinimulan ko ang PWM mula sa 100 (tulad ng tinukoy mula sa unang run ng sketch) at mapabilis sa 255. Ito ay

A. Mapabilis ang pin 3 (direksyon ng CW) mula 100 hanggang 255 sa PWM sa loob ng 0.1 segundo

B. Bawasan ang bilis mula 255 hanggang 100 para sa 0.1 segundo

C. Pagpalit ng direksyon, pin 4 (CCW)

D. Mapabilis / Mabilis, katulad ng pin 3

E. Ulitin

Ang prosesong ito ay (uri ng) nakikita sa huling larawan ngunit mag-refer sa video para sa isang mas mahusay na visual.

Ang mga pangunahing sketch na ito ay maaaring iakma sa iyong DC motor din. Naniniwala akong maraming tao ang gumagamit ng ganitong uri ng sketch para sa pagkontrol sa mga robot o ilang iba pang uri ng rolling aparador. Nais ko lamang i-verify ang pagpapatakbo at makakuha ng isang mas mahusay na pag-unawa para sa aking sarili kung tatakbo o hindi ang motor na ito.

Hakbang 4: Pangwakas na Mga Saloobin (para Ngayon)

Dito ko masasabi na, Phase 1, ay kumpleto.

Alam kong gumagana ang encoder at tatakbo ang motor kasama ang PWM sa Arduino.

Susunod na bagay para sa aking panghuli na aplikasyon ay ang:

1. Tukuyin ang pulso bawat rebolusyon (PPR) ng encoder para sa A & B path, Top & Bottom. Sigurado ako na may isang sketch sa isang lugar kung saan maaari kong patakbuhin ang aking PWM kasama ang isang counter para sa mga pulso ng encoder, CW & CCW, ngunit wala pa akong mahahanap. (Anumang mga komento kung saan makahanap ng isang Arduino sketch ay lubos na pahalagahan!)

2. Tukuyin kung paano patakbuhin ang DC motor / Encoder na ito sa GRBL at hindi maiwasang mai-calibrate ang mga palakol. (Muli, mangyaring magkomento kung alam mo kahit saan) Gusto kong gawin ito sa isang Microsoft run laptop. Natagpuan ko ang ilan gamit ang Linux ngunit hindi iyon makakatulong sa akin.

3. Idisenyo ang makina upang mapatakbo bilang bahagi ng isang buong CNC.

Anumang mga saloobin para sa layuning ito ay tiyak na inirerekomenda kung nais mong iwanan ang mga ito sa seksyon ng mga komento. Salamat sa pagtingin at inaasahan kong makakatulong / magbigay inspirasyon ito sa isang tao.

Inirerekumendang: