Сервапрывод: як карыстацца серварухавіком з Arduino

сервопривод, серварухавік

Калі вы хочаце выкарыстоўваць серварухавік, альбо сервопривод, з Arduino, у гэтым артыкуле вы даведаецеся, што вам трэба для пачатку. У іншых артыкулах мы ўжо бачылі, што неабходна выкарыстоўваць электрарухавікі, крокавыя рухавікі, а таксама іншыя паняцці, неабходныя для разумення працы прылад гэтага тыпу, напрыклад, артыкул пра PWM.

Цяпер вы можаце дадаць яшчэ адзін новы электронны кампанент спіс прылад прааналізавалі і што вы можаце пайсці інтэграцыя вашых самаробных праектаў каб дадаць новую функцыянальнасць.

Што такое сервопривод?

сервопривод

Un серварухавік, альбо проста сервопрывод, - гэта электронны рухавік, падобны на звычайны рухавік пастаяннага току, але з некаторымі элементамі, якія робяць іх асаблівымі. У гэтым выпадку ён мае магчымасць утрымліваць указаную пазіцыю, чаго не дазваляюць электрарухавікі.

З іншага боку, сервопрывод таксама можа менавіта кантроль хуткасць кручэння дзякуючы шэрагу ўнутраных перадач і сістэме, якая дазваляе значна лепш кіраваць, чым гэта можна было зрабіць у іншых тыпах рухавікоў.

Гэтыя асаблівасці робяць гэта асабліва цікавым для прыкладанняў робататэхнікі альбо для іншых прылад, дзе трэба кіраваць рухам і становішчам, напрыклад, прынтара ці аўтамабіля з дыстанцыйным кіраваннем. У гэтым тыпе радыёкіраванага аўтамабіля ёсць звычайны рухавік для кіравання аўтамабілем і сервопрывод для рулявога кіравання, з дапамогай якога можна дакладна кантраляваць паварот.

Розніца паміж крокавым рухавіком і серварухавіком

Няма 17

Калі вам цікава розніца паміж серварухавіком і крокавым рухавіком, праўда ў тым, што іх можна пераблытаць, паколькі ў крокавым рухавіку, альбо ў крокавым, кручэннем таксама можна кіраваць досыць дакладна, і дадаткі вельмі падобныя на сервопривод. Замест гэтага ёсць некаторыя адрозненні.

І гэта тое, што звычайна выкарыстоўваюць серварухавікі рэдказямельныя магніты, у той час як крокавыя рухавікі выкарыстоўваюць больш танныя і звычайныя магніты. Такім чынам, сервапрывод можа дасягнуць больш высокага крутоўнага моманту, нягледзячы на ​​захаванне кампактнасці. Такім чынам, сіла павароту будзе вельмі высокай.

Тэхнічныя характарыстыкі

Кожны раз, калі вы купляеце сервапрывод, вам варта звярнуцца да яго тэхнічнага аркуша альбо ў тэхнічны аркуш. Такім чынам, вы забяспечыце тэхнічныя характарыстыкі ён мае, але таксама межы, да якіх вы можаце падвергнуць гэта, такія як напружанне, інтэнсіўнасць, максімальная нагрузка, крутоўны момант і г.д. Памятаеце, што кожная мадэль можа быць зусім рознай.

Напрыклад, калі вы паглядзіце на адзін з самых папулярных, Micro Servo 9G SG90 ад вядомая фірма Tower Pro, тады ў вас будуць вельмі своеасаблівыя характарыстыкі, хоць праграмаванне і падключэнне мадэляў больш-менш аднолькавыя, і ўсё сказанае тут карысна для ўсіх.

У выпадку з гэтай мадэллю гэта высакаякасны рухавік з вуглом павароту, які дазваляе разгортка паміж -90 і 90º, гэта значыць, агульны паварот на 180º. Дазвол, якога вы можаце дасягнуць, вельмі высокі, таму вы зможаце паступова прасоўвацца наперад. Напрыклад, з абмежаваннямі ШІМ-сігналу Arduino UNO, вы нават маглі б атрымаць аванс ад класа да класа.

Сапраўды гэтак жа сігнал ШІМ таксама накладзе яшчэ адзін ліміт, і гэта колькасць разоў, калі кожная пазіцыя можа змяняцца за адзінку часу. Напрыклад, паколькі імпульсы працуюць з 1 да 2 мс і з Перыяды 20 мс (50 Гц), тады сервопрывод можа рухацца адзін раз у 20 мс.

Акрамя таго, ён будзе мець вагу 9 грамаў, і, нягледзячы на ​​гэты вага і кампактны памер, ён можа развіць крутоўны момант альбо крутоўны момант 1.8 кг / см з 4.8v. Гэта дзякуючы набору перадач POM.

Нарэшце, вы ўжо ведаеце, што ў залежнасці ад таго, чаго вы хочаце дасягнуць, вам трэба будзе выбраць тую ці іншую мадэль, каб яна мела функцыі, неабходныя для вашага праекта. Гэта значыць, гэта не тое, што вы хочаце, каб рухавік перамяшчаў груз X, чым той, які патрэбен для XX ...

Дзе купіць сервопривод

серварухавік

Калі вы хочаце пачаць выкарыстоўваць гэты тып серварухавікоў, вы можаце знайсці яго ў многіх спецыялізаваных крамах, а таксама атрымаць яго ў сетцы Інтэрнэт на Amazon. Напрыклад, вось некалькі прыкладаў рэкамендуемыя прадукты што можа вас зацікавіць:

Усе яны маюць даволі добры кут павароту, але ў асноўным ён адрозніваецца крутоўным момантам, які кожны можа пераносіць. Я ўключыў тры розныя мадэлі. Першага і больш таннага можа быць дастаткова для большасці прыкладанняў. Але калі вам патрэбен адзін з большай трываласцю для іншых прыкладанняў, у вас ёсць 25 і 35, якія ўжо даволі выдатныя ...

Інтэграцыя з Arduino

серво ардуіна
Як вы можаце бачыць на малюнку вышэй, сервапрывод падключаецца вельмі лёгка да Ардуіна. У яго ёсць толькі тры кабелі, якія вы можаце падключыць такім чынам:

  • Чырвоны з 5В
  • Чорны з GND
  • Жоўты з ШІМ-шыпай Arduino, у дадзеным выпадку з -9.

Для таго, каб запраграмаваць эскіз, каб пачаць выкарыстоўваць гэтыя тыпы рухавікоў, у вас ёсць некалькі варыянтаў. Але, перш за ўсё, каб пачаць, трэба дадаць бібліятэку IDE Arduino для кіравання гэтым тыпам серварухавікоў:

  1. Адкрыйце IDE Arduino.
  2. Перайдзіце да праграмы.
  3. Затым уключыце бібліятэку.
  4. Сервопривод

Адносна код эскіза, гэта можа быць так проста, калі сервопрывод будзе праходзіць праз свае пазіцыі, спыняючыся на 0º, 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. Правы: у любы час вы можаце абмежаваць, аднавіць і выдаліць сваю інфармацыю.