Close

barak

Vytvořené odpovědi

Aktuálně jsou na stránce zobrazeny 2 příspěvky - 1. až 2. (celkem z 2)
  • Autor
    Příspěvky
  • odpověď na: Které Arduino #5914
    barak
    Účastník
    odpověď na: Dotaz od začátečníka – podmínka if #5913
    barak
    Účastník

    Mozna od temy ale take podminka IF.
    Chtel jsem pouzit IF. Sledoval jsem hodnotu y AO a potom dal IF, ale zacyklovalo se, stale cetlo posledni hodnotu. Taj sem to vyresil nize. Da se to vyresit aby se necyklovalo

    const int lamdaSig = A0; // Analogový vstup je nastaven na pi A0 pre lambdu sondu
    int napatie = 0; // Proměná pro hodnotu přečtenou z A0
    int led2 = 2;
    int led3 = 3;
    int led12=12;
    const int sensorPin = A1;
    const float baseLineTemp = 20;
    int t;

    void setup() {
    // Nastaví rychlost komunika na sériovám portu na 9600 bps:
    Serial.begin(9600);
    pinMode(led2, OUTPUT);
    pinMode(led3, OUTPUT);
    pinMode(led12, OUTPUT);
    }

    void loop() {

    int sensorVal = analogRead(sensorPin);

    napatie = analogRead(lamdaSig); // přečte hodnotu z A0 z lambda sondy
    napatie = ((napatie * 500.0) / 0.1) / 1024; //vysledok v mV
    // aby jsme videli vysledek, hodnotu odešleme přes sériový port
    Serial.print(“ napatie = “ ); // zapiše text hodnota =
    Serial.println(napatie); // zapiše proměnou hodnotu/napatie

    float teplota = ((sensorVal*5000.0)/30) /1024;
    Serial.print(“ teplota = „);

    Serial.println(teplota);
    delay(1000); // čekej 1000ms

    t=constrain(teplota, 20, 200); //ked je teplota mensi ako nastavene tak vrati 25,
    Serial.print(„upravene = „);
    Serial.println(t);

    switch(t){
    case 20:
    digitalWrite(led12, HIGH); //blika ked nie je teplota
    delay(1000);
    digitalWrite(led12, LOW);
    digitalWrite(led3,HIGH); //teplota mensi nez pozadovana otvari sa klapka1
    break;

    default: //ked je teplota v roymeyi nastavene par contrain
    digitalWrite(led3, LOW); //zatvori klapku1
    if (napatie < 200) { //mensi tak otvara klapku
    digitalWrite(led2, HIGH);
    delay(500);
    digitalWrite(led2, LOW); //klapka sa otvara len urcity cas pak zatvori
    }

    if (napatie > 200) { //vetsi zatvara klapku
    digitalWrite(led2, LOW);
    }

    if (napatie > 500) { //vetsi zatvara klapku
    digitalWrite(led3, HIGH);
    delay(500);
    digitalWrite(led3, LOW); //cas delay otvorena klapka pak zatvori
    }
    if (napatie < 500) {
    digitalWrite(led3, LOW);
    }

    delay(1000); //nacha reagovat po delay pak nove meranie

    break;

    }

Aktuálně jsou na stránce zobrazeny 2 příspěvky - 1. až 2. (celkem z 2)