ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ шагового двигатСля ΠΊ Arduino: ΠΎΡ‚ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΊ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ шагового двигатСля Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности для создания ΠΏΡ€Π΅Ρ†ΠΈΠ·ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм позиционирования. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΌΠΎΡ‚ΠΎΡ€ΠΎΠ² постоянного Ρ‚ΠΎΠΊΠ°, здСсь ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ ΡƒΠ³Π»ΠΎΠΌ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°, Ρ‡Ρ‚ΠΎ критичСски Π²Π°ΠΆΠ½ΠΎ для 3D-ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€ΠΎΠ², ЧПУ станков ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ.

Однако Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² часто ΠΏΡƒΠ³Π°Π΅Ρ‚ каТущаяся ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ схСмы: Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ расчСта Ρ‚ΠΎΠΊΠΎΠ² ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ. На самом Π΄Π΅Π»Π΅, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ шагового двигатСля ΠΊ Arduino базируСтся Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… простых ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ΠœΡ‹ рассмотрим Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ схСму соСдинСния, Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΆΠ΅Π»Π΅Π·ΠΎ останСтся ΠΌΠ΅Ρ€Ρ‚Π²Ρ‹ΠΌ Π³Ρ€ΡƒΠ·ΠΎΠΌ. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ распространСнных ошибок, Π²Π΅Π΄ΡƒΡ‰ΠΈΡ… ΠΊ ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π²Ρƒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ управлСния для вашСй Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ Π²Ρ‹Π±ΠΎΡ€ Ρ‚ΠΈΠΏΠ° двигатСля

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒΡΡ Π·Π° паяльник, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, с ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ устройством Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ Π΄Π΅Π»ΠΎ. Π¨Π°Π³ΠΎΠ²Ρ‹Π΅ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΠΈ дСлятся Π½Π° униполярныС ΠΈ биполярныС, ΠΈ схСма ΠΈΡ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΏΠ»Π°Ρ‚Π΅ Arduino ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ различаСтся. УниполярныС ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π²ΠΎΠ΄ ΠΎΡ‚ сСрСдины ΠΎΠ±ΠΌΠΎΡ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠΊΠ°, Π½ΠΎ сниТаСт крутящий ΠΌΠΎΠΌΠ΅Π½Ρ‚.

БиполярныС Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ популярныС ΠΌΠΎΠ΄Π΅Π»ΠΈ сСрии NEMA 17, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ измСнСния полярности Ρ‚ΠΎΠΊΠ° Π² ΠΎΠ±ΠΌΠΎΡ‚ΠΊΠ°Ρ… для ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ шага. ИмСнно ΠΎΠ½ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСны Π² соврСмСнном DIY-сСгмСнтС благодаря высокой ΡƒΠ΄Π΅Π»ΡŒΠ½ΠΎΠΉ мощности. Для управлСния ΠΈΠΌΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ потрСбуСтся Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π½Π΅ способны Π²Ρ‹Π΄Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Ρ‚ΠΎΠΊ.

Π’Π°ΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠΌΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊ ΠΈ сопротивлСниС ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ. Если Π²Ρ‹ ΠΏΠΎΠ΄Π°Π΄ΠΈΡ‚Π΅ слишком высокий Ρ‚ΠΎΠΊ, Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π²Π°Ρ‚ΡŒΡΡ, Π° Ссли слишком Π½ΠΈΠ·ΠΊΠΈΠΉ β€” потСряСт ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈ пропустит шаги. РасчСт питания являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ этапом проСктирования любой систСмы Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ двигатСля ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€Π°. ΠŸΡ€ΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹: Ссли Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΎΠ±Ρ‰ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ сопротивлСниСм Π΄ΠΎ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ², ΠΏΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ униполярный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚. Π’ биполярном Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»Π΅ Π²Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚Π΅ Π΄Π²Π΅ нСзависимыС ΠΏΠ°Ρ€Ρ‹ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ².

Π’Ρ‹Π±ΠΎΡ€ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для управлСния шаговиком

ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ ΠΊ ΠΏΠΎΡ€Ρ‚Π°ΠΌ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° катСгоричСски Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ. Π’ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΏΠΈΠ½ Arduino, составляСт всСго 20-40 мА, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŽ трСбуСтся ΠΎΡ‚ 0.5 Π΄ΠΎ 2 АмпСр. Для согласования ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ ΠΈ управлСния Ρ‚ΠΎΠΊΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹.

Π‘Π°ΠΌΡ‹ΠΌ популярным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… являСтся ΠΌΠΎΠ΄ΡƒΠ»ΡŒ A4988. Он ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½, дСшСв ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ микроступСнчатый Ρ€Π΅ΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ Π²ΠΈΠ±Ρ€Π°Ρ†ΠΈΡŽ ΠΈ ΡˆΡƒΠΌ ΠΌΠΎΡ‚ΠΎΡ€Π°. Для Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Π³Π΄Π΅ Ρ‚ΠΎΠΊΠΈ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‚ 2 АмпСра, Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ сСрии DRV8825 ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° TB6600.

  • πŸ”Ή A4988 β€” ΠΈΠ΄Π΅Π°Π»Π΅Π½ для ΠΌΠ°Π»Ρ‹Ρ… Ρ‚ΠΎΠΊΠΎΠ² Π΄ΠΎ 1.5А, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€Π°Π΄ΠΈΠ°Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅.
  • πŸ”Ή DRV8825 β€” ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ большиС Ρ‚ΠΎΠΊΠΈ Π΄ΠΎ 2.5А, ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ высокий ΠΏΠΎΡ€ΠΎΠ³ напряТСния.
  • πŸ”Ή L298N β€” ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для Π΄Π²ΡƒΡ… Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½ΠΎ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ высоким ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ΠΌ напряТСния.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ напряТСниС питания. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 8 Π΄ΠΎ 35 Π’ΠΎΠ»ΡŒΡ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ логичСский ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ управлСния остаСтся стандартным для Arduino β€” 5 Π’ΠΎΠ»ΡŒΡ‚. Π­Ρ‚ΠΎ позволяСт Π»Π΅Π³ΠΊΠΎ ΡΡ‚Ρ‹ΠΊΠΎΠ²Π°Ρ‚ΡŒ устройства Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΠΈ Π½Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° двигатСля ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ ΠΏΠΈΡ‚Π°Π½ΠΈΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°. Π˜Π½Π΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ выброс напряТСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ вывСсти микросхСму ΠΈΠ· строя.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ нСобходимости установки Ρ€Π°Π΄ΠΈΠ°Ρ‚ΠΎΡ€Π° охлаТдСния. Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² холостом Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Π³Ρ€Π΅Π²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ критичСских Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€, особСнно Ссли ΠΎΠ½ΠΈ настроСны Π½Π° высокий Ρ‚ΠΎΠΊ. Π’Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄ β€” это Π½Π΅ опция, Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

πŸ“Š Какой Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
A4988
DRV8825
L298N
TB6600
Π”Ρ€ΡƒΠ³ΠΎΠΉ

НСобходимыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ инструмСнты

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ сборки Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ схСмы Π²Π°ΠΌ потрСбуСтся ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ оборудования. Основа систСмы β€” ΠΏΠ»Π°Ρ‚Π° Arduino Uno ΠΈΠ»ΠΈ Nano, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ достаточным количСством ΠΏΠΎΡ€Ρ‚ΠΎΠ² для управлСния ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ линиями. Π’Π°ΠΊΠΆΠ΅ понадобится источник питания, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΎΠ»ΡŒΡ‚Π°ΠΆΡƒ вашСго двигатСля.

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°Ρ…. Для ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π΄ΡŽΠΉΠΌΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠΈ, Π½ΠΎ для ΠΏΠΎΠ΄Π°Ρ‡ΠΈ питания Π½Π° Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° сСчСниСм Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 0.5 ΠΌΠΌΒ². Π’ΠΎΠ½ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ сопротивлСниС ΠΈ привСсти ΠΊ падСнию напряТСния ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ НазначСниС Π’Π°ΠΆΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹
Arduino Uno/Nano Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ НапряТСниС Π»ΠΎΠ³ΠΈΠΊΠΈ 5Π’
Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ A4988 УсилСниС Ρ‚ΠΎΠΊΠ° ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π’ΠΎΠΊ Π΄ΠΎ 1.5А, Vmot 8-35Π’
Π¨Π°Π³ΠΎΠ²Ρ‹ΠΉ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Биполярный, 1.7А/Ρ„Π°Π·Π°
Π‘Π»ΠΎΠΊ питания ЭнСргоснабТСниС 12Π’, ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 2А
ΠšΠΎΠ½Π΄Π΅Π½ΡΠ°Ρ‚ΠΎΡ€ Π‘Π³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΡƒΠ»ΡŒΡΠ°Ρ†ΠΈΠΉ 100ΠΌΠΊΠ€, 25Π’ (ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ)

Для настройки Ρ‚ΠΎΠΊΠ° отсСчки Π½Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ Π²Π°ΠΌ понадобится малСнькая ΠΎΡ‚Π²Π΅Ρ€Ρ‚ΠΊΠ° ΠΈ, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€. Вочная настройка ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ эффСктивно ΠΈ Π½Π΅ сгорит ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ.

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ сборкС

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Arduino Uno

Рассмотрим ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ схСму ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ биполярного двигатСля Ρ‡Π΅Ρ€Π΅Π· Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ A4988 ΠΊ ΠΏΠ»Π°Ρ‚Π΅ Arduino. Π‘ΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° (STEP, DIR, ENABLE) ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π° силовая Ρ‡Π°ΡΡ‚ΡŒ запитываСтся ΠΎΡ‚ внСшнСго источника.

ΠŸΠΈΠ½Ρ‹ управлСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π²Ρ‹Π²ΠΎΠ΄ STEP (шаг) соСдиняСтся с ΠΏΠΈΠ½ΠΎΠΌ D2, DIR (Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅) с ΠΏΠΈΠ½ΠΎΠΌ D3, Π° ENABLE (Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅) ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ D4. ЗСмля Arduino ΠΈ зСмля Π±Π»ΠΎΠΊΠ° питания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ соСдинСны ΠΌΠ΅ΠΆΠ΄Ρƒ собой, ΠΈΠ½Π°Ρ‡Π΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

Π‘Ρ…Π΅ΠΌΠ° соСдинСний:

A4988 Pin -> Arduino Pin

STEP -> Digital 2

DIR -> Digital 3

ENABLE -> Digital 4 (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ)

GND -> GND (Arduino)

Vmot -> +12V (Π‘Π»ΠΎΠΊ питания)

GND -> GND (Π‘Π»ΠΎΠΊ питания)

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»ΠΈΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ двигатСля ΠΊ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° 1A, 1B, 2A, 2B. ΠŸΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π² ΠΏΠ°Ρ€Ρ‹, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠ΅ Π΄Π΅Ρ€Π³Π°Π½ΡŒΠ΅ Π²Π°Π»Π° вмСсто вращСния. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ°Ρ€Ρ‹ ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ кондСнсатор ΠΌΠ΅ΠΆΠ΄Ρƒ VMOT ΠΈ GND?

ΠšΠΎΠ½Π΄Π΅Π½ΡΠ°Ρ‚ΠΎΡ€ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 100ΠΌΠΊΠ€) слуТит Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ энСргии. ΠŸΡ€ΠΈ Ρ€Π΅Π·ΠΊΠΎΠΌ стартС двигатСля Ρ‚ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡΠΈΡ‚ΡŒ возмоТности Π±Π»ΠΎΠΊΠ° питания, вызывая просадку напряТСния. ΠšΠΎΠ½Π΄Π΅Π½ΡΠ°Ρ‚ΠΎΡ€ сглаТиваСт эти ΠΏΠΈΠΊΠΈ, защищая Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΎΡ‚ Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ L298N, схСма Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΈΠ½ΠΎΠ² для управлСния Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ снятия ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡Π΅ΠΊ, Ссли Π²Ρ‹ Π·Π°ΠΏΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΎΡ‚ внСшнСго источника. Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ модуля.

Настройка Ρ‚ΠΎΠΊΠ° ΠΈ ΠΊΠ°Π»ΠΈΠ±Ρ€ΠΎΠ²ΠΊΠ° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°

Одной ΠΈΠ· самых Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ являСтся установка Ρ‚ΠΎΠΊΠ° отсСчки (Vref). ЗаводскиС настройки Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² часто выставлСны Π½Π° максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π²Ρƒ двигатСля ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ запуска. Для расчСта ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρƒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Ρ‡ΠΈΠΏΡƒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

Для A4988 Ρ„ΠΎΡ€ΠΌΡƒΠ»Π° выглядит ΠΊΠ°ΠΊ Vref = I_max 8 R_sense, Π³Π΄Π΅ R_sense β€” сопротивлСниС рСзисторов токоизмСрСния (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 0.05 Ом). Однако ΠΏΡ€ΠΎΡ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, прСдоставлСнныС производитСлями ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

  • πŸ”Έ ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΎΡ‚ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° ΠΏΠ΅Ρ€Π΅Π΄ настройкой.
  • πŸ”Έ ΠŸΠΎΠ΄Π°ΠΉΡ‚Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ (VMOT).
  • πŸ”Έ ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ ΠΊ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Ρƒ ΠΈ ΠΏΠ»Π°Ρ‚Π΅ (GND ΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄).
  • πŸ”Έ Плавно Π²Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ ΠΎΡ‚Π²Π΅Ρ€Ρ‚ΠΊΠΎΠΉ, контролируя Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ напряТСния.

ПослС установки Π½ΠΎΠΌΠΈΠ½Π°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π°Π³Ρ€Π΅Π² послС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΌΠΈΠ½ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Если корпус горячий Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΠ°Π»Π΅Ρ†, Ρ‚ΠΎΠΊ слСдуСт ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π°Ρ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π° β€” ΠΎΠΊΠΎΠ»ΠΎ 50-60 градусов ЦСльсия.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НС ΠΊΡ€ΡƒΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ мСталличСской ΠΎΡ‚Π²Π΅Ρ€Ρ‚ΠΊΠΎΠΉ ΠΏΠΎΠ΄ напряТСниСм. ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Π·Π°ΠΌΡ‹ΠΊΠ°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄ΠΎΡ€ΠΎΠΆΠΊΠ°ΠΌΠΈ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ вывСсти Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΈΠ· строя ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊ, потрСбляСмый ΠΎΡ‚ источника питания, всСгда мСньшС Ρ‚ΠΎΠΊΠ°, ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°ΡŽΡ‰Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΠΌΠΎΡ‚ΠΊΠΈ двигатСля, ΠΈΠ·-Π·Π° особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ шагового Ρ€Π΅ΠΆΠΈΠΌΠ°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° расчСтноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Vref, Π° Π½Π΅ Π½Π° показания Π°ΠΌΠΏΠ΅Ρ€ΠΌΠ΅Ρ‚Ρ€Π° Π² Ρ†Π΅ΠΏΠΈ питания.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС: Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° AccelStepper

Для управлСния Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, манипулируя ΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ, Π½ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ эффСктивнСС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° AccelStepper являСтся стандартом Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для Arduino, прСдоставляя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ускорСния, тормоТСния ΠΈ управлСния ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Stepper, AccelStepper Π½Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡ Π² Ρ†ΠΈΠΊΠ»Π΅ loop(), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. Π­Ρ‚ΠΎ позволяСт ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ дисплСй ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΌΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Π΅Π· Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

#include 

// ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ Ρ‚ΠΈΠΏ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° ΠΈ ΠΏΠΈΠ½Ρ‹

AccelStepper stepper(1, 2, 3); // 1 - Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€, 2 - STEP, 3 - DIR

void setup() {

stepper.setMaxSpeed(1000.0);

stepper.setAcceleration(500.0);

stepper.setSpeed(500);

}

void loop() {

stepper.runSpeed();

}

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ двигатСля, Π·Π°Π΄Π°Π΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ ускорСниС. Ѐункция runSpeed() Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π°Ρ‰Π΅. Для пСрСмСщСния Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство шагов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ moveTo() Π² связкС с run().

ΠŸΡ€ΠΈ написании ΠΊΠΎΠ²Π° Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ физичСскоС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ скорости вашСго двигатСля. Если Π·Π°Π΄Π°Ρ‚ΡŒ слишком высокоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² setMaxSpeed, Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ просто Π½Π΅ успССт Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ ΠΈ встанСт. ЭкспСримСнтируйтС с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°.

Диагностика ΠΈ устранСниС нСисправностСй

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ сборкС ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π”Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π³ΡƒΠ΄Π΅Ρ‚ΡŒ, Π½ΠΎ Π½Π΅ Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ, ΠΈΠ»ΠΈ Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Ρ€Ρ‹Π²ΠΊΠ°ΠΌΠΈ. Π§Π°Ρ‰Π΅ всСго это ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ„Π°Π·ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΎΠ±ΠΌΠΎΡ‚ΠΎΠΊ ΠΈΠ»ΠΈ нСдостаточный Ρ‚ΠΎΠΊ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ соотвСтствиС ΠΏΠ°Ρ€ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” потСря шагов ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ. Π­Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° инСрция ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ крутящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ двигатСля Π½Π° Π΄Π°Π½Π½ΠΎΠΉ скорости. РСшСниС Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² сниТСнии скорости пСрСмСщСния ΠΈΠ»ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ Ρ‚ΠΎΠΊΠ° (Ссли позволяСт запас двигатСля).

Если Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ сильно грССтся Π² статикС (ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ просто Π΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ), Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‚ΠΎΠΊ отсСчки выставлСн слишком высоко ΠΈΠ»ΠΈ Π½Π΅ настроСн Ρ€Π΅ΠΆΠΈΠΌ сна. МногиС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠ½ΠΈΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠΊ удСрТания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄Π»Π΅Π²Π°Π΅Ρ‚ Тизнь ΠΌΠ΅Ρ…Π°Π½ΠΈΠΊΠ΅.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ·Π΄Π°Π΅Ρ‚ высокий писк ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅?

Высокочастотный писк ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π·Π²Π°Π½ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ микроступов ΠΈΠ»ΠΈ рСзонансом мСханичСской систСмы. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ дСлСния шага (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с 1/16 Π½Π° 1/8) ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π΅ΠΌΠΏΡ„ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ ΠΌΡƒΡ„Ρ‚Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π°Π»ΠΎΠΌ двигатСля ΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

МоТно Π»ΠΈ Π·Π°ΠΏΠΈΡ‚Π°Ρ‚ΡŒ Arduino ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π±Π»ΠΎΠΊΠ° 12Π’?

Π”Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ 12Π’ Π½Π° Ρ€Π°Π·ΡŠΠ΅ΠΌ VIN ΠΈΠ»ΠΈ Barrel Jack ΠΏΠ»Π°Ρ‚Ρ‹ Arduino. ВстроСнный стабилизатор ΠΏΠΎΠ½ΠΈΠ·ΠΈΡ‚ напряТСниС Π΄ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… 5Π’. Однако ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ питания ΠΈΠΌΠ΅Π΅Ρ‚ достаточный запас ΠΏΠΎ Ρ‚ΠΎΠΊΡƒ для всСй систСмы.

Как ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вращСния Π² ΠΊΠΎΠ΄Π΅?

Для измСнСния направлСния достаточно ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ логичСский ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π½Π° ΠΏΠΈΠ½Π΅ DIR. Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ AccelStepper это дСлаСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ stepper.setSpeed(-500) (ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΈΠ½Π°.

Π’Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ диагностика Π½Π° этапС сборки сэкономит Π²Π°ΠΌ врСмя ΠΈ Π½Π΅Ρ€Π²Ρ‹ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ соСдинСниС, измСряйтС напряТСния ΠΈ слСдитС Π·Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Π“Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎ собранный ΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ способСн Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π³ΠΎΠ΄Π°ΠΌΠΈ Π±Π΅Π· обслуТивания.