Servo: Arduino менен серво моторду кантип колдонсо болот

серво, серво мотор

Эгер колдонууну кааласаңыз servo мотор, же servoменен Ардуино, бул макалада сиз баштоо керек болгон нерсени билип аласыз. Эмнени колдонуу керектигин буга чейин башка макалалардан көргөнбүз электр кыймылдаткычтары, stepper моторлору, ошондой эле ушул сыяктуу шаймандардын иштешин түшүнүү үчүн зарыл болгон башка түшүнүктөр, мисалы, макалада Сеул.

Эми, сиз дагы бир жаңы электрондук компонентти кошо аласыз түзмөктөрдүн тизмеси талданган жана сиз бара аласыз DIY долбоорлоруңузду интеграциялоо жаңы функцияларды кошуу.

Серво деген эмне?

жүрөгүндө өз

Un сервомотор, же жөн гана серво - кадимки туруктуу ток кыймылдаткычтарына окшоштуктары бар, бирок аларды өзгөчө кылган айрым элементтери бар электрондук кыймылдаткыч. Бул учурда, ал электр кыймылдаткычтары жол бербеген нерсени көрсөткөн абалды кармоо мүмкүнчүлүгүнө ээ.

Башка жагынан алганда, серво да мүмкүн так башкаруу бир катар ички тиштүү дөңгөлөктөрдүн жана кыймылдаткычтын башка түрлөрүндө аткарылгандан кыйла жакшы башкарууга мүмкүндүк берген тутумдун жардамы менен айлануу ылдамдыгы.

Бул өзгөчөлүктөр аны өзгөчө кызыктуу кылат өтүнмөлөр робототехника, же кыймылын жана абалын көзөмөлдөө зарыл болгон башка шаймандар үчүн, мисалы принтер, же пульт башкарган унаа. Радио башкарылуучу унаанын бул түрүндө кадимки кыймылдаткыч кыймылдаткыч жана бурулушту так көзөмөлдөөчү руль үчүн серво бар.

Stepper мотору менен servo моторунун айырмасы

Нема 17

Эгер сиз суроо servo мотор менен stepper мотордун айырмасы, Чындыгында, аларды чаташтырууга болот, анткени степер мотордо же степерде айланууну да так башкарууга болот жана тиркемелер сервого абдан окшош. Анын ордуна, айрым айырмачылыктар бар.

Адатта, сервомоторлор колдонушат сейрек кездешүүчү жер магниттери, Степпер моторлору арзан жана кадимки магниттерди колдонушат. Демек, серво тыгыздыгына карабастан, жогорку моменттин өнүгүшүнө жетише алат. Демек, бурулуш күчү абдан жогору болот.

Техникалык мүнөздөмөлөрү

Серво сатып алган сайын, анын техникалык баракчасына же маалымат баракчасына кайрылышыңыз керек. Ошентип, сиз камсыз кылат техникалык мүнөздөмөлөр анын чеги бар, бирок чыңалуу, интенсивдүүлүк, максималдуу жүктөө, момент ж.б.у.с. Ар бир модель такыр башкача болушу мүмкүн экендигин унутпаңыз.

Мисалы, эң популярдуу бирөөсүн карасаңыз, Micro Servo 9G SG90 from белгилүү Tower Pro фирмасы, анда сизде өзгөчө өзгөчөлүктөр болот, бирок моделдердин программаланышы жана туташуусу аздыр-көптүр бирдей жана бул жерде айтылгандардын бардыгы пайдалуу.

Бул моделдин учурда, ал жогорку сапаттагы кыймылдаткычы болуп саналат, бурулуш бурч менен -90 менен 90º ортосунда тазалоо, башкача айтканда, жалпы бурулуш 180º. Сиз жетише турган резолюция абдан жогору, андыктан акырындык менен алдыга жыла аласыз. Мисалы, PWM сигналынын чектөөлөрү менен Arduino UNO, ал тургай класстан класска аванс алса болот.

Ошо сыяктуу эле, PWM сигналы дагы бир чектөө киргизет жана бул убакыт бирдигинде ар бир позициянын канча жолу өзгөрүшү мүмкүн. Мисалы, импульстар 1ден 2 мсге чейин жана 20 мс мезгил (50Гц), андан кийин серво 20 мс бир жолу жыла алат.

Мындан тышкары, анын салмагы 9 грамм болот жана салмагы жана чакан көлөмүнө карабастан, а момент же момент 1.8 кг / с4.8v менен м Бул анын POM тиштүү топтомунун жардамы менен.

Акыры, сиз эмнеге жетүүнү көздөп жатканыңызга жараша, тигил же бул моделди тандап алышыңыз керектигин, буга ээ болгонун билесиз сиздин долбоор үчүн зарыл болгон өзгөчөлүктөр. Башкача айтканда, мотордун X жүктү жылдырышын каалаганыңыз бирдей эмес, XXге караганда ...

Сервону кайдан сатып алууга болот

сервомотор

Эгерде сиз сервомотордун ушул түрүн колдонууну кааласаңыз, анда аны көптөгөн адистештирилген дүкөндөрдөн арзан таба аласыз, ошондой эле Amazon аркылуу онлайн режиминде таба аласыз. Мисалы, айрым мисалдар келтирилген сунушталган өнүмдөр бул сизди кызыктырышы мүмкүн:

Алардын бардыгынын бурулуу бурчу абдан жакшы, бирок ал негизинен ар бири көтөрө алган моментте айырмаланат. Мен кирген үч башка модель. Мурунку жана арзаныраак, көпчүлүк колдонмолор үчүн жетиштүү болушу мүмкүн. Бирок сизге башка колдонмолор үчүн чоңураак күч керек болсо, анда сизде 25 жана 35 бар, алар буга чейин абдан сонун ...

Arduino менен интеграциялоо

arduino servo
Жогорудагы сүрөттө көрүнүп тургандай, servo абдан оңой туташат Ардуино. Анын үч кабели гана бар, аларды сиз ушинтип туташтыра аласыз:

  • 5V менен кызыл
  • GND менен кара
  • Arduino PWM пин менен сары, бул учурда -9.

Ушул түрдөгү кыймылдаткычтарды колдонууну баштоо үчүн эскизди программалоо үчүн, сизде бир нече вариант бар. Бирок, биринчиден, баштоо керек Arduino IDE китепканасын кошуу серво кыймылдаткычтарынын ушул түрүн башкаруу үчүн:

  1. Arduino IDE ачуу.
  2. Программага өтүңүз.
  3. Андан кийин Китепкананы кошуңуз.
  4. жүрөгүндө өз

карата абал боюнча эскиз кодуБул жөнөкөй болушу мүмкүн, анда серво 0 positions, 90º жана 180º токтоп, өз позицияларын басып өтөт:

//Incluir la biblioteca del servo
#include <Servo.h>
 
//Declarar la variable para el servo
Servo servoMotor;
 
void setup() {
  // Iniciar el monitor serie
  Serial.begin(9600);
 
  // Iniciar el servo para que use el pin 9 al que conectamos
  servoMotor.attach(9);
}
 
void loop() {
  
  // Desplazar a la posición 0º
  servoMotor.write(0);
  // Esperar 1 segundo
  delay(1000);
  
  // Desplazar a la posición 90º
  servoMotor.write(90);
  // Esperar 1 segundo
  delay(1000);
  
  // Desplazamos a la posición 180º
  servoMotor.write(180);
  // Esperar 1 segundo
  delay(1000);
}

Эми сиз кааласаңыз аны даражадан даражага жылдыруу, анда мындай болмок:

// Incluir la biblioteca servo
#include <Servo.h>
 
// Declarar la variable para el servo
Servo servoMotor;
 
void setup() {
  // Iniciar la velocidad de serie
  Serial.begin(9600);
 
  // Poner el servo en el pin 9
  servoMotor.attach(9);
 
  // Iniciar el servo en 0º
  servoMotor.write(0);
}
 
void loop() {
 
  // Los bucles serán positivos o negativos, en función el sentido del giro
  // Positivo
  for (int i = 0; i <= 180; i++)
  {
    // Desplazar ángulo correspondiente
    servoMotor.write(i);
    // Pausa de 25 ms
    delay(25);
  }
 
  // Negativo
  for (int i = 179; i > 0; i--)
  {
    // Desplazar el ángulo correspondiente
    servoMotor.write(i);
    // Pausa e 25 ms
    delay(25);
  }
}


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

Комментарий биринчи болуп

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.