Проблема с питанием.

Тема в разделе "Arduino & Shields", создана пользователем s1984i, 24 ноя 2020.

  1. s1984i

    s1984i Нерд

    Добрый вечер.Подскажите в чём дело.
    есть arduino uno, arduino rele,всё это соединяется через терминальную плату расширения.
    Код простой, мерим температуру и если температура меньше заданной, включаем 2 реле.
    Если подключено к компьютеру, все работает. если запитываю через блок питания 5в 2а
    срабатывает 1 реле,а должно два. если запитываю через блок питания 8.4в 1а ,то срабатывает 2 реле , но как то хаотично.(не по коду) не понимаю. а подключаю его и к блоку питания и к компу. переключается питание на комп.(как я понял) и всё начинает работать
    блок питания подключаю к плате через , штекер, 2.10 х 5.50,
    Код (C++):
        // библиотека для работы с протоколом 1-Wire
        #include <OneWire.h>
        // библиотека для работы с датчиком DS18B20
        #include <DallasTemperature.h>
       
        // сигнальный провод датчика
        #define ONE_WIRE_BUS 10
         const int ledPin =  7;
         const int ledPin1 =  8;
        // создаём объект для работы с библиотекой OneWire
        OneWire oneWire(ONE_WIRE_BUS);

        // создадим объект для работы с библиотекой DallasTemperature
        DallasTemperature sensor(&oneWire);
       
        void setup(){
          // инициализируем работу Serial-порта
          Serial.begin(9600);
          // начинаем работу с датчиком
          sensor.begin();
          // устанавливаем разрешение датчика от 9 до 12 бит
          sensor.setResolution(12);
          pinMode(ledPin, OUTPUT);
          pinMode(ledPin1, OUTPUT);
       
        }
       
        void loop(){
          // переменная для хранения температуры
          float temperature;
          // отправляем запрос на измерение температуры
          sensor.requestTemperatures();
          // считываем данные из регистра датчика
          temperature = sensor.getTempCByIndex(0);
          // выводим температуру в Serial-порт
          Serial.print("Temp C: ");
          Serial.println(temperature);
          if(temperature<30){Serial.println("Start") ;}
          if(temperature<30){digitalWrite(ledPin, HIGH);digitalWrite(ledPin1, HIGH);}
          else {if(temperature>33){Serial.println("Stop");}
          if(temperature>33){ digitalWrite(ledPin, LOW);digitalWrite(ledPin1, LOW);}
          }
          // ждём одну секунду
          delay(1000);
        }

     
     
  2. a1000

    a1000 Гуру

    На разъём
    5 вольт не подают. Вот что пишут в описании
     
  3. Рокки1945

    Рокки1945 Гуру

    видимо необходимо привести схему коммутации и входящие в состав схемы устройства
     
  4. s1984i

    s1984i Нерд

    почему не работает. от блока питания. что не так? как мне кажется делаю все правильно. может допускаю какую то ошибку, но не могу её увидеть.
     
  5. parovoZZ

    parovoZZ Гуру

    Что не так - ответит осциллограф. Также необходимо проверить, не сбрасывает ли BOD МК?
     
  6. KindMan

    KindMan Гуру

    Покажите схему соединения. Опишите тип соединения проводов.
     
  7. s1984i

    s1984i Нерд

    ок, почитаю об этом!
     
  8. s1984i

    s1984i Нерд

    ардуино и реле соединены через терминальную плату (как бутерброд) https://aliexpress.ru/item/32839587...earchweb0_0,searchweb201602_,searchweb201603_
    В данный момент питаю от блока питания 5в 2а, через разьём type b (всё работает, сутки. но меня не устраивает так как провод занят. он нужен для других дел. хочу питать от блока питания разьём 2.10 х 5.50)
     
  9. parovoZZ

    parovoZZ Гуру

    5 вольт можно подать на плату через контакты разъема (5v, GND).
     
  10. KindMan

    KindMan Гуру

    Если так, то либо вы подали 5 вольт на Vin, либо сопли|непропай в соединениях.
     
  11. SergeiL

    SergeiL Оракул Модератор

    Так в ответе #2 уже все расписано. Почему не работает, и как нужно.
    Разъем 2.10 х 5.50 это вход стабилизатора на 5В.
    Напряжение на данном разъеме должно быть от 7В.
    При напряжении выше 12В, на данном разъеме, будет сильно греться стабилизатор.
    Да 12В многовато - 10В максимум.
     
    Рокки1945 нравится это.
  12. b707

    b707 Гуру

    Можно и так, но в этот разъем надо подключать БП не менее 7в, читайте описание платы внимательнее
     
  13. Рокки1945

    Рокки1945 Гуру

    верно - линейник - падение - все вытекающие при преобразовании - нагрев при большом потреблении не избежен - пять вольт малова-то будет
     
  14. s1984i

    s1984i Нерд

    Я извиняюсь. Вы действительно дочитали до конца #1? 8,4В подключал, тоже не работает.
    В общем всё решилось куда проще, замена на др. блок питания 7.5в 1а = работает. Кстати почему изначально питал 5в, так работало же. данная сборка отработала всё лето. сейчас просто понадобилось, что бы ещё 1 насос запускался. добавил (digitalWrite(ledPin1, HIGH) и перестало работать.
    уно и sim900 тоже работали безупречно от 5в. #2 #11 учту не знал. Всем спасибо, за внимание.
     
  15. b707

    b707 Гуру

    то что вы включали дохлый БП и от него не работало - никак не отменяет того, что написал я.
    Изначально ваша ошибка в том, что в круглый разъем нельзя включать 5в. С этим будете спорить?