Аналоговый термометр (Troyka-модуль)

Тема в разделе "Arduino & Shields", создана пользователем Daemon2017, 12 мар 2014.

  1. Nitro77rus

    Nitro77rus Гик

    Может кому пригодиться :)
    Моя формула датчика от Амперки
    Код (Text):
      float voltage = reading * 4.55;
      voltage /= 1024.0;

      float temperatureC = (voltage - 0.5) * 100 ;
     
  2. Nitro77rus

    Nitro77rus Гик

    Сегодня продолжил возиться с датчиком и...
    ...Ардуина, от разных источников питания, выдаёт разное напряжение на пине 5v! От сюда и разные показания :( Соответственно возник вопрос: может ли сама ардуина замерить вольтаж? Если "да", то как?

    Есть мысль учесть этот момент в коде, что бы она сама рассчитывала float voltage = reading * 4.55;
     
  3. Unixon

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

    Обратите внимание на характеристики датчика:
    Разница в 2-3 градуса может быть уже из-за погрешности измерения.
     
  4. Nitro77rus

    Nitro77rus Гик

    Попалась информация, что для получения корректных данных с аналоговых датчиков можно использовать пин AREF. Вот только как не нашёл :( Кто ни будь может рассказать как?
     
  5. Mech

    Mech Нуб

    Помогите, пытаюсь заставить работать аналоговый термометр.
    Датчик подключен к аналоговому пину А5.

    скетч для ардуино.
    Код (Text):
    void setup()
    {
      Serial.begin(9600);  
    }

    void loop()
    {
      int reading = analogRead(A5);

      float voltage = reading * 5.0;
      voltage /= 1024.0;

      Serial.print(voltage);
      Serial.println(" volts");
     
      float temperatureC = (voltage - 0.5) * 100 ;
                                                   
      Serial.print(temperatureC);
      Serial.println(" degrees C");
    }
    лог вывода:
    Код (Text):
    0.11 volts
    -39.26 degrees C
    1.70 volts
    120.41 degrees C
    5.00 volts
    449.51 degrees C
    0.00 volts
    -50.00 degrees C
    5.00 volts
    449.51 degrees C
    0.00 volts
    -50.00 degrees C
    5.00 volts
    449.51 degrees C
    1.80 volts
    130.18 degrees C
    0.67 volts
    17.38 degrees C
    4.95 volts
    444.63 degrees C
    0.00 volts
    -50.00 degrees C
    Т.е. получается, что напряжение на пине скачет непонятным для меня образом, и получить корректную температуру не получается.
     
  6. Nitro77rus

    Nitro77rus Гик

    проверь соединения, у меня была такая проблема с макеткой (контакты были не надежные).
    И ещё попробуй сменить источник питания.
     
  7. Mech

    Mech Нуб

    Спасибо.
    Дело действительно было в макетке. Подключил напрямую к ардуино - заработало.