Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Kilalanin ang aming System
- Hakbang 2: Pag-hack ng Motor
- Hakbang 3: Pagtatakda ng Driver
- Hakbang 4: Pagkontrol sa Motor
Video: 28BYJ-48 5V Stepper Motor at A4988 Driver: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Nais mo bang makakuha ng isang robot upang lumiko sa isang tumpak na anggulo, gamit lamang ang ilang mga output ng iyong Arduino o micro: bit? Lahat ng ito para sa murang? Ang itinuturo para sa iyo! Sa itinuturo na ito makikita natin kung paano magmaneho ng isang napaka murang stepper motor na gumagamit lamang ng 2 output ng aming controller at nangangailangan lamang ng isang 5V power supply!
Ginawa kong turuan ito pagkatapos medyo nagpumiglas upang makolekta ang impormasyon, kung minsan ay nadapa sa maling impormasyon, at nais kong i-save ang iba mula sa pagdaan ng parehong proseso.
Ngunit bago simulan, bakit ganoong pagpigil?
- Bakit 5V: dahil nais kong isama ito sa isang mobile robot na tatakbo lamang sa isang 3.7 lithium na baterya na makukuha ko ang 5V sa isang booster.
- Bakit ginagamit ang A4988 at hindi ang ULN2003 na madalas na kasama ng 28BYJ motor? Dahil, una, nangangailangan ito ng 4 na input. Samakatuwid ang paggamit ng A4988 ay gumagawa sa amin makatipid ng 2 ng aming mahalagang output ng controller (at kung nais mo ang pagtatrabaho sa micro: kagaya ng ginagawa ko pagkatapos ay ang mga output ay mahalaga …)! Ngunit may higit pa! Ang kakayahang magmaneho ng motor sa pamamagitan lamang ng pagbibigay ng mga hakbang bilang mataas na impulses, ay nagbibigay sa amin ng posibilidad na himukin ang motor na may isang simpleng PWM. Sa pamamagitan ng pag-aayos ng cycle ng tungkulin sa 50%, ang pagbabago ng dalas ng PWM ay magbabago sa bilis ng pag-ikot ng motor. Bakit ang galing Dahil kung nais mong itakda ang bilis ng aking motor at pagkatapos ay magpatuloy sa pagkontrol ng iba pang mga bagay gamit ang aking Arduino o micro: bit, pagkatapos ay maaari mong itakda ang aking PWM at kalimutan ito, na kung saan ay mas mababasa ang iyong code at ang iyong buhay. mas madali (halimbawa kung nais mong bumuo ng isang robot tulad nito).
Kaya't magsimula tayo!
Mga gamit
Narito ang kakailanganin mo para sa pagtuturo na ito:
- 1x 28BYJ stepper motor
- 1x A4988 driver
- 1x breadboard o prototyping board, isang kapasitor at ilang mga wire
- Micro: bit at extension board o Arduino
- 5V power supply (+ 3.3V kung gumagamit ka ng Micro: bit). Para sa mga ito gumamit ako ng isang 18650 na baterya ng lithium at isang kalasag ng baterya.
- 1x multimeter
Hakbang 1: Kilalanin ang aming System
Ang unang bagay na inirerekumenda kong magsimula, ay upang malaman ang higit pa tungkol sa mga stepper motor at sa driver ng A4988. Hoy, ngunit bakit kailangan natin ang driver na ito? Maaari ba nating makontrol ang isang stepper motor na walang driver? Ang sagot ay hindi. Ang mga board tulad ng Micro: bit at Arduino ay mahusay sa pagproseso ng impormasyon ngunit hindi sa pagbibigay ng maraming kasalukuyang, at kailangan mo ng kasalukuyang upang makagawa ng isang stepper motor na lumipat. Upang matuto nang higit pa tungkol sa kung paano gumagana ang parehong motor at driver na ito ang sanggunian na inirerekumenda ko. Ito ay gawa ng tao ngunit naglalaman din ng karamihan ng impormasyong kakailanganin mo para sa mga kable.
Ngunit maghintay bago subukan ang wire anumang! Ang 28BYJ ay inangkop sa A4988? Kung gumawa ka ng isang mabilis na paghahanap, makikita mo na ang motor na ito ay bihirang dumating sa A4988 bilang isang driver. Kung basahin mo nang lubusan ang nakaraang sanggunian maaari mong makita kung bakit: ang aming stepper ay isang unipolar motor habang ang A4988 ay idinisenyo upang magmaneho ng mga bipolar motor, kaya't kailangan naming i-hack nang kaunti ang aming motor!
Hakbang 2: Pag-hack ng Motor
Upang gawing katugma ang iyong mga motor sa driver ng motor kunin ang pulang kawad sa puting konektor. Upang gawin ang pagputol ng konektor upang alisin ang pulang kawad at putulin ang pulang kawad ng motor. Pagkatapos ay ipagpalit ang dilaw at kulay-rosas na kable sa konektor. Panatilihin ang pulang kawad at konektor para sa susunod na hakbang!
Upang makakuha ng isang cable mula sa konektor itulak ang kawad na nais mong alisin sa konektor at pagkatapos ay itulak ang nakikitang metal na bit sa konektor gamit ang isang matalim na tool (sa itaas ay isang larawan kung saan ko ito ginagawa sa aking paboritong kutsilyo, ang opinionel!), at sa wakas ay hilahin at kalaunan ang buong bagay ay dapat na lumabas tulad ng nasa larawan sa itaas. Ipinapakita ng huling larawan kung ano ang dapat magmukhang ang konektor sa dulo ng mga pagbabago: ang pagkakasunud-sunod ng cable sa konektor ay dapat na kulay kahel / rosas / dilaw / asul.
(PS: online makakahanap ka ng ilang mga tutorial na nagpapahiwatig na kailangan mong sirain ang pulang kawad mula sa motor at pagkatapos ay i-gasgas ang PCB, kalimutan mo na, hindi ito kinakailangan. Walang silbi?)
Hakbang 3: Pagtatakda ng Driver
Ngayon … oras upang himukin ang motor na ito kasama ang driver? Hindi pa paumanhin! Nakita mo ang tornilyo sa A4988 board? Sa gayon kailangan nating pakisamahan ito. Ang tornilyo na ito ay karaniwang pinapayagan kang itakda kung magkano ang kasalukuyang dumadaan sa mga coil ng iyong motor. Sa aming kaso, habang ang aming supply ng kuryente ay nagbibigay sa 5V at ang aming mga coil sa motor ay may paglaban ng 50 Ohms, ang aming kasalukuyang hindi hihigit sa 100mA, na dapat suportahan ng motor upang sa huli ay maaari mong laktawan ang hakbang na ito. Gayunpaman kung katulad mo ako at nais mong mag-motor ka lamang kumuha ng kasalukuyang kasalukuyang kinakailangan nito pagkatapos ay sumunod.
Kaya upang maitakda ang driver, sundin ang Paraan 2 ng artikulong ito sa mga adaptasyon na iyon (tulad ng ipinakita sa larawan sa itaas)
- Gamitin ang 5V mula sa kalasag ng baterya para sa parehong lohika at input ng lakas ng motor (sinabi ng VMOT na nangangailangan ng higit sa 8V ngunit gumagana ang 5V!). Ang 2 GND na pin sa board ay konektado, kaya hindi na kailangang ikonekta ang pareho sa ground ng baterya.
- Ikonekta ang mga STEP at DIR pin sa 5V din (hindi sa Arduino tulad ng ipinakita sa isinangguni na artikulo)
- Kapag itinatakda ang multimeter, itinakda ko ang kasalukuyang sa 50mA na sapat upang himukin ang aking mga motor gamit ang mga half-step (higit pa sa susunod na hakbang). Upang ikonekta ang aking multimeter upang masukat ang kasalukuyang sa likaw ng motor, tulad ng nakikita mo sa imahe sa itaas, na-unplug ko ang dilaw na kawad mula sa konektor at inilagay ang pulang kawad, upang mailagay ko ang aking multimeter mula sa pula hanggang sa ang dilaw na kawad upang masukat ang kasalukuyang.
Hakbang 4: Pagkontrol sa Motor
Iyon lang, halos handa na kaming paikutin ang aming motor. Ang mga bagay na dapat gawin ay:
- upang alisin ang aming multimeter mula sa aming system kung hindi pa nagagawa,
- ikonekta ang MS1 sa 5V kung saan gagamitin ang drayber ng kalahating hakbang (Nagkaroon ako ng problema sa pagkuha ng robot na may ganap na mga hakbang sa 5V. Ngunit bilang isang bahagi ng aking layunin na gawin ang lahat na tumakbo sa 5V tinanggap ko upang isakripisyo ang isang bit ng bilis at upang makakuha ng ilang katumpakan),
- ibigay ang mga STEP at DIR pin na kung ano ang gusto namin mula sa aming controller.
Pagkatapos: kung nais mong kontrolin ang motor gamit ang Arduino, sundin lamang ang artikulo dito kung saan makakahanap ka ng isang sample code. Kung nais mong kontrolin ito sa micro: kaunti pagkatapos ay manatili ka sa akin nang medyo mas mahaba.
Micro: bit, bilang Arduino, ay may kasamang mga GPIO. Samakatuwid, sa sandaling mapagana natin ito (na may 3.3V!), Pagkatapos ay mai-program natin ito upang mag-output ng STEP at DIR. Habang mukhang maraming mga input at output, binalaan na talagang marami sa kanila ay nakalaan na para sa ilang ibang mga layunin. Maaari kang matuto nang higit pa tungkol sa na sa artikulong ito. Makikita mo sa artikulong ito na talagang marami sa mga input / output ang ibinabahagi sa display, at samakatuwid, kung nais mong gamitin ang mga iyon, kailangan mong patayin ang display. Ngunit huwag nating patayin ang display! Kaya kung aling mga pin ang maaari nating magamit? Gagamitin ko ang mga pin 2 at 8 dahil hindi ko gagamitin ang mga pad (pin 2).
I-plug ang pin 2 ng micro: bit sa STEP, i-pin ang 8 sa DIR, i-upload ang program na nakakabit gamit ang iyong paboritong micro: python editor (Gumamit ako ng mu-editor). Karaniwang nagtatakda ang program na ito ng isang PWM sa pin 2 na may isang panahon ng 1 millisecond (at isang 50% na cycle ng tungkulin), at dapat umiikot ang iyong motor. Itakda ang pin 8 sa 0 o 1 upang gawin itong lumiko sa isang paraan o sa iba pa at baguhin ang panahon upang gawin itong bilis na gusto mo (hangga't hindi mo nais na ito ay masyadong mabilis … para sa akin ang isang pulso bawat millisecond ay malapit sa maximum na bilis na maabot ko).
Upang gawing mas compact ang mga bagay at madali itong maisakay sa isang mobile robot ay gumawa ako ng isang maliit na board. Ang board ay ipinakita sa larawan sa itaas. Sa imahe mayroong isang lilang kawad na pupunta mula sa VMOT hanggang VDD na nagtatago sa anino. Gayundin, ang dilaw na kawad na papunta sa SLP patungong RST ay talagang hindi na-solder, inilagay ko lang ito doon upang kumatawan sa solder na inilagay ko sa likuran ng board upang ikonekta ang 2 mga pin na iyon. Pangungusap: ang heat sink ay karaniwang hindi kinakailangan sa gayong sistema, habang gumuhit kami ng higit, mas mababa sa 1A.
Iyon lang, inaasahan kong makakatulong ito na makakatulong sa marami sa iyo na masiyahan sa lakas ng stepper motor sa iyong mga proyekto.
Inirerekumendang:
Paano Gumamit ng 28BYJ-48 Stepper Motor Na May 3 Mga Push Button: 5 Hakbang
Paano Gumamit ng 28BYJ-48 Stepper Motor Na May 3 Push Buttons: Nais mo bang makontrol ang iyong stepper motor gamit ang mga push button? Maaari itong gawin Clockwise, Counter Clockwise at pagkatapos ay Itigil ang pagpapaandar? Pagkatapos ang video na ito ay para sa iyo
Kinokontrol ng Stepper Motor na Stepper Motor Nang Walang Microcontroller !: 6 Mga Hakbang
Kinokontrol ng Stepper Motor na Stepper Motor Nang Walang Microcontroller !: Sa mabilis na Ituturo na ito, gagawa kami ng isang simpleng stepper motor Controller gamit ang isang stepper motor. Ang proyektong ito ay hindi nangangailangan ng kumplikadong circuitry o isang microcontroller. Kaya nang walang karagdagang pagtatalo, magsimula na tayo
Kinokontrol ng Stepper Motor na Stepper Motor Nang Walang Microcontroller (V2): 9 Mga Hakbang (na may Mga Larawan)
Kinokontrol ng Stepper Motor na Stepper Motor Nang Walang Microcontroller (V2): Sa isa sa aking mga nakaraang Instructable, ipinakita ko sa iyo kung paano makontrol ang isang stepper motor na gumagamit ng isang stepper motor na walang microcontroller. Ito ay isang mabilis at nakakatuwang proyekto ngunit dumating ito kasama ang dalawang mga problema na malulutas sa Instructable na ito. Kaya, wit
Kinokontrol na Modelong Stepper Motor ng Stepper - Stepper Motor Bilang isang Rotary Encoder: 11 Hakbang (na may Mga Larawan)
Kinokontrol na Modelong Stepper Motor ng Stepper | Stepper Motor Bilang isang Rotary Encoder: Sa isa sa mga nakaraang Instructable, natutunan namin kung paano gamitin ang isang stepper motor bilang isang rotary encoder. Sa proyektong ito, gagamitin namin ngayon ang stepper motor na naka-rotary encoder upang makontrol ang isang modelo ng lokomotip gamit ang isang Arduino microcontroller. Kaya, nang walang fu
Kinokontrol ng Stepper Motor na Stepper Motor - Stepper Motor Bilang isang Rotary Encoder: 11 Hakbang (na may Mga Larawan)
Kinokontrol ng Stepper Motor na Stepper Motor | Stepper Motor Bilang isang Rotary Encoder: Magkaroon ng isang pares ng mga stepper motor na nakahiga at nais na gumawa ng isang bagay? Sa Instructable na ito, gumamit tayo ng isang stepper motor bilang isang rotary encoder upang makontrol ang posisyon ng isa pang stepper motor gamit ang isang Arduino microcontroller. Kaya't nang walang pag-aalinlangan, ge