Как подключить два датчика влажности почвы?

Тема в разделе "Arduino & Shields", создана пользователем ArtSmm, 10 июл 2016.

  1. ArtSmm

    ArtSmm Нерд

    Всем доброго дня
    Как подключить два датчика влажности почвы, чтобы брать показания с двух цветов?

    Первый датчик задан командой:

    int sensorPin = A0;
    int sensorValue = 0;

    Serial.begin(9600);
    pinMode(A0, INPUT);
    pinMode(13, OUTPUT); //Это можно не писать, для наглядности

    Соответственно для него прописал код:

    //Код для датчика почвы (1й датчик на A0)
    int s = analogRead(A0);
    Serial.print(s);
    Serial.print(" - ");
    if(s > 400) {
    Serial.println("Sensor not in soil");
    digitalWrite(13,HIGH);
    digitalWrite(Relay, LOW);
    }
    if(s <= 400 && s >= 220 ) {
    Serial.println("Soil is dry");
    digitalWrite(13,LOW);
    digitalWrite(Relay, HIGH);
    delay(10000);
    digitalWrite(Relay, LOW);
    wait = millis() + 3*60000; //Ждем 3 минуты
    }
    if(s < 220 ) {
    Serial.println ("Soil watered");
    digitalWrite(13,LOW);
    digitalWrite(Relay, LOW);
    }

    Хотел повесить второй датчик на A2, но вышла ошибка, что датчик уже инициализирован
    Может его стоит подключить через цифровой вход или как лучше решить такую задачку?
    Всем спасибо)
     
  2. alex-prog

    alex-prog Гик

    А можете саму ошибку скопировать и вставить сюда?

    По идее, продублировав все команды с пином A0, заменив на A2, и всё будет работать...

    P. S. Цифровой вывод здесь не поможет.
     
    SuperArduino и Tomasina нравится это.
  3. ArtSmm

    ArtSmm Нерд

    пишет, что уже есть такая команда int sensorPin(A2); На A2 внимание он не обратил
    Прикрепил сам скетч
     

    Вложения:

    • Polivalka2.ino
      Размер файла:
      3 КБ
      Просмотров:
      472
  4. alex-prog

    alex-prog Гик

    int sensorPin2 = A2;

    И соответственно, скопировать все, заменив в новом коде sensorPin на sensorPin2...
     
  5. ArtSmm

    ArtSmm Нерд

    Полный код ошибки:

    Polivalka2:13: error: redefinition of 'int sensorPin'
    Polivalka2:10: error: 'int sensorPin' previously defined here
     
  6. alex-prog

    alex-prog Гик

    Вы int sensorPin2 = A2; пробовали?
     
  7. ArtSmm

    ArtSmm Нерд

    не заметил "2", вроде компилируется, спасибо
     
  8. alex-prog

    alex-prog Гик

    Так вы смотрите, потом нужно копировать строки с sensorPin, и менять на sensorPin2.

    Плюс, следите, какая логика должна выполняться. Я так понимаю, полив двух растений?
     
  9. ArtSmm

    ArtSmm Нерд

    да, хочу поливать 2 цветка на автомате)
     
  10. alex-prog

    alex-prog Гик

    Хорошо.

    Тогда у Вас должно быть два реле, и два насоса, по идее...
     
  11. ArtSmm

    ArtSmm Нерд

    Да, насоса два, но одна помпа на 12в, вторая на 5в, соответственно 1я через реле, вторая в макетку воткнута и в порт.
    Как вариант можно оставить одну помпу и сделать раздачу воды с помощью серво привода, но это уже другая история)
     
  12. alex-prog

    alex-prog Гик

    Ну тогда хорошо, единственное - управлять через транзистор будете?
     
  13. ArtSmm

    ArtSmm Нерд

    Честно, не изучал пока )) не могу сказать. Пока только идея
     
  14. alex-prog

    alex-prog Гик

    У вас с порта выход всего несколько десятков мА. Потребление помпы, думаю явно больше будет. Если до 500 мА, то можно через транзистор полевой, если больше, ставьте батарейки, а то можете плату перегрузить...

    Сколько потребляет насос на 5 Вольт найти нужно обязательно!
     
  15. ArtSmm

    ArtSmm Нерд

    На 12в помпу у меня свое питание стоит - 3 батарейки 18650 (аккумуляторы), питание ардуины от Usb порта. Что такое полевой транзистор? Вы можете ссылку с алиэкспересс на него скинуть?
     
  16. alex-prog

    alex-prog Гик

  17. ArtSmm

    ArtSmm Нерд

  18. alex-prog

    alex-prog Гик

    Смотрите в магазинах IRF530N они более мощные. Но, в начале, нужно знать сколько у Вас Ампер потребляет помпа. А то, перегрузите еще...
     
  19. REm

    REm Гик

    По поводу транзистора 530, штука очень капризная как и другие мосфеты, мой паяльник их сжигал, пока не додумался выключать его из сети во время касания с ножкой транзистора. Ножки в свою очередь замыкал между собой проволочкой.
     
  20. alex-prog

    alex-prog Гик

    Не думаю, что автор темы будет паять, скорее сборка на макетной плате. Вообще, можно и без транзистора, тоже реле добавить, но это излишество получится, хотя, кому как удобнее...