Fotografie bezkartáčového regulátoru stejnosměrného motoru ve spojení s Arduinem a lineárním aktuátorem

Plynulé vysouvání a zasouvání zdvihu aktuátoru pomocí bezkartáčového stejnosměrného motoru

Guninder Malhi
Guninder Malhi
PA Engineer

Tento tutoriál vám pomůže pochopit ovládání bezkartáčového regulátoru stejnosměrného motoru ve spojení s Arduinem a lineárním aktuátorem. Tento program lze použít k plynulému vysouvání a zasouvání zdvihu aktuátoru.

Než začneme, pojďme si projít komponenty, které budeme v tomto tutoriálu používat:

  1. Arduino Mega (lze použít i Arduino Uno).
  2. LC-241.
  3. PA-14 s bezkartáčovým motorem.
  4. Napájecí zdroj PS-13-12.
  5. Startovací vodiče.

 Arduino Coding

Z lineárního aktuátoru vycházejí 2 sady vodičů, jedna sada je pro motor a druhá sada pro koncové spínače. Schéma na obrázku výše ukazuje, jak zapojit jednotlivé komponenty dohromady.

KÓD PRO NASTAVENÍ PINU

int out_lim = 45; // pin vnějšího koncového spínače

int in_lim = 53; // vnitřní pin koncového spínače

int run_f = 25; // spuštění pinu na kontroleru
int run_r = 30; // obrácení pinu na kontroléru

Tato část kódu se stará o inicializaci pinů, které budou použity pro příjem a odesílání dat. V tomto případě byly použity všechny digitální piny, ale lze použít i analogové.

KÓD NASTAVENÍ SMYČKY

void setup() {

  Serial.begin(9600); // inicializace sériové komunikace rychlostí 9600 bitů za sekundu
pinMode(out_lim, INPUT_PULLUP); // konfiguruje pin 45 jako vstupní pin
pinMode(in_lim, INPUT_PULLUP); // konfiguruje pin 53 jako vstupní pin
pinMode(run_f, OUTPUT); // konfiguruje pin 25 jako výstupní pin
pinMode(run_r, OUTPUT); // konfiguruje pin 30 jako výstupní pin

 

retract(); // zatáhne tah při spuštění

  zpoždění(500);
}


Smyčka „setup“ konfiguruje, které piny budou použity pro výstup a které pro vstup. Jak je vidět v kódu, piny připojené k koncovým spínačům budou použity ke čtení stavů koncových spínačů a piny připojené k „RUN“ a „REV“ na LC-241 budou použity k zápisu do něj. Zpočátku kód také spustí funkci zasunutí, která zasune součástku úplně dovnitř před spuštěním.

KÓD DEFINICE FUNKCÍ

void extend() // tato funkce umožňuje spuštění motoru

{
 digitalWrite(run_f, LOW);
 digitalWrite(run_r, HIGH);

 }

void retract() // tato funkce obrací směr otáčení motoru
{
digitalWrite(run_f, LOW);
digitalWrite(run_r, LOW);
}

void run_stop() // tato funkce deaktivuje motor
{
digitalWrite(run_f, HIGH);
digitalWrite(run_r, HIGH);
}


Tato část vysvětluje funkce používané k řízení výkonu a směru motoru. Motor budeme aktivovat nebo deaktivovat zapsáním „0“ nebo „1“ na pin „RUN“ a poté stejnými příkazy na pin „REV“ pro změnu směru otáčení motoru.

KÓD HLAVNÍ SMYČKY

Neplatná smyčka() {

  int out_lim_state = digitalRead(out_lim); // načte koncové spínače a uloží jejich hodnotu
int in_lim_state = digitalRead(in_lim);

  Serial.print("hodnota vnějšího koncového spínače"), Serial.println(out_lim_state); // 0 -> koncový spínač je stisknut
  Serial.print("hodnota vnitřního koncového spínače"), Serial.println(in_lim_state); // 1 -> koncový spínač není stisknutý

if (out_lim_state == 0 && in_lim_state == 1) // pokud je stisknut vnější koncový spínač a vnitřní ne (vysunutý úplně)
  {
retract(); // zasunutí tahu
  }

  else if (out_lim_state == 1 && in_lim_state == 0) // pokud je stisknut vnitřní koncový spínač a vnější ne (úplně zasunut)
{
extend(); // prodloužení tahu
}

 

Smyčka „smyčky“ v podstatě pouze čte vstupy z koncových spínačů, aby zkontrolovala, zda jsou spínače stisknuté, a na základě toho změní směr otáčení motoru.

Většina lineárních aktuátorů na trhu je dodávána s kartáčovým stejnosměrným motorem, takže pracovní cyklus tohoto motoru do jisté míry znemožňuje nepřetržitý provoz jednotky. Ve společnosti Progressive Automations dáváme našim zákazníkům možnost zvolit si pro náš model PA-14 bezkartáčový stejnosměrný motor, což jim dává ještě více možností pro jejich projekty.