Motorizovaný kulový ventil CR05


Motorizovaný kulový ventil. Má široké uplatnění v různých průmyslových a obytných instalacích. Může být integrován do automatických systémů řízení, kde je možné ovládat průtok dálkově nebo automatizovaně podle předem nastavených podmínek.

Motorizované kulové vently s obvodem CR01, CR02, CR03 nebo CR04 je poměrně jednoduché po elektrické stránce správně zapojit.
U ventilu s obvodem CR05 je tomu ale trochu jinak - ventil si sám nehlídá krajní polohy otevření, nebo zavření. Z toho důvodu vznikl tento článek, ukazující některé výhody, použití a především správné zapojení ventilu s obvodem CR05.

Uplatnění CR05:

Hlavním rozdílem mezi CR01~04 a CR05 je možnost kontroly stavu, zdali byl ventil plně otevřen, nebo zadli byl zavřen. CR05 má koncové spínače, které ovšem neřeší chod motoru ventilu, ale poskytují zpětnou vazbu případné řídící jednotce. Jednotka tak vždy pozná, zdali byl kohout otevřen/zavřen, nebo zdali došlo k závadě. To je pro některé aplikace důležité. Můžete tak například pustit čerpadlo až za předpokladu, že je ventil plně otevřen, nebo signalizovat, že došlo k jeho zavření.

Obvod CR05 má 5 barevných vývodů:

  • Žlutý - připojený k motoru ventilu, pro otevření ventilu je zapotřebí přivést na vodič kladné napětí (+), pro zavření napětí záporné (-)
  • Modrý - připojený k motoru ventilu, pro otevření ventilu je zapotřebí přivést na vodič záporné napětí (+), pro zavření napětí kladné (-)
  • Želený - je výstupem při plně otevřeném ventilu. Při plném otevření lze naměřit napětí posílané na černý vodič
  • Červený - je výstupem při plně zavřeném ventilu. Při plném zavření lze naměřit napětí posílané na černý vodič
  • Černý - je bezpotenciálovým vstupem pro zpětnovazební koncové spínače, napětí přivedené na tento vodič se projevý na červeném nebo zeleném vodiči dle platných podminek.

Příklady zapojení:

Zapojení bez mikrokontroleru:

Jako příklad jsem použil ventil na 12V. K dispozici jsou ale i jiné napěťové varianty, pro ně nutné zaměnit přívodní napětí obvodu a relé modul na odpovídající hodnoty.

Zapojení ventilu CR05 je nejlepší s ŘJ nebo mikrokontrolerem, v našem případě to bude Arduino. Nic méně CR05 je možné zapojit i bez nutnosti mikrokontroleru a znalosti programování. Jeden z příkladů jak toho dosáhnou je tento obvod využívající dvoukanálový relé modul jako přepínacího prvku ploarity (H-můstku) pro ovládání motoru. Poloha ventilu se ovládá jedním přepínačem, vyznačeným v obvodu.

Rezistor 10kΩ udržuje na vstupech relé modulu IN1 a IN2 (dle polohy přepínače) kladné napětí, které aktivuje relé. Po dosažení krajní polohy ventilu se na vstupní svorku dostane napětí záporné přes odpovídající zpětnovazební koncový spínač. Napětí záporné "přetlačí" napětí kladné tekoucí přes rezistor 10kΩ a relé se deaktivuje.

Tímto způsobem je zajištěna ochrana motoru ve chvíli kdy ventil dojede do koncové polohy.

Zapojení s mikrokontrolerem Arduino UNO:

Dalším příkladem je již provoz ventilu zpojeného na mikrokontroler Arduino UNO. Mikrokontroler nemůže spínat přímo výkonový prvek jakým je motor ventilu, z toho důvodu relé modul ponecháme. Jeho alternativou by byl případně H-můstek.

Nyní jsou zpětnovazební koncové spínače zavedeny do arduina, celá logika ovládání ventilu je předmětem programu mikrokontroleru. Program reaguje na podněty ze spínačů a zastavuje motor v krajních polohách ventilu. Po úspěšném otevření/zavření ventilu vypíšeme po sériové lince do monitoru hlášku o provedené akci. Příklad kódu otevírá a zavírá ventil ve smyčce po cca 1s.

Kód pro Arduino:

// Definice pinů
const int pinClose = 2;         // Pin pro zavření ventilu
const int pinOpen = 4;          // Pin pro otevření ventilu
const int pinClosedSwitch = 7;  // Pin pro spínač indikující zavřený ventil
const int pinOpenedSwitch = 8;  // Pin pro spínač indikující otevřený ventil

void setup() {
  // Nastavení pinů jako výstupy a vstupy
  pinMode(pinClose, OUTPUT);
  pinMode(pinOpen, OUTPUT);
  pinMode(pinClosedSwitch, INPUT_PULLUP);
  pinMode(pinOpenedSwitch, INPUT_PULLUP);

  // Začínáme se seriovým portem pro debugování
  Serial.begin(9600);
}

void loop() {
  // Otevření ventilu
  Serial.println("Otevírám ventil...");
  digitalWrite(pinOpen, HIGH);  // Aktivace motoru pro otevření
  digitalWrite(pinClose, LOW);
  while (digitalRead(pinOpenedSwitch) == HIGH) {
    // Čekáme, dokud se nepotvrdí plně otevřený stav
    Serial.print(".");
    delay(50);
  }
  digitalWrite(pinOpen, LOW);  // Deaktivace motoru
  Serial.println("");
  Serial.println("Ventil je plně otevřený.");

  delay(1000);  // Pauza 1 sekunda

  // Zavření ventilu
  Serial.println("Zavírám ventil...");
  digitalWrite(pinClose, HIGH);  // Aktivace motoru pro zavření
  digitalWrite(pinOpen, LOW);
  while (digitalRead(pinClosedSwitch) == HIGH) {
    // Čekáme, dokud se nepotvrdí plně zavřený stav
    Serial.print(".");
    delay(50);
  }
  digitalWrite(pinClose, LOW);  // Deaktivace motoru
  Serial.println("");
  Serial.println("Ventil je plně zavřený.");

  delay(1000);  // Pauza 1 sekunda
}

Použité komponenty:

Další podobné články