Лабараторная работа №9 Использовать термометр и 7 сегментовая дисплей в Arduino Mega2560 Arduino Mega 2560


Ардуино термометр на основе датчика температуры DS18B20


Download 158.83 Kb.
bet3/4
Sana28.12.2022
Hajmi158.83 Kb.
#1017297
1   2   3   4
Bog'liq
2 5348476323637494329




Ардуино термометр на основе датчика температуры DS18B20

Один раз мы уже реализовали проект термометра на основе датчика температуры DS18B20. Сегодня мы сделаем термометр на основе этого датчика другим способом, разберемся с DS18B20 и используем несколько дополнительных библиотек.


Мы сделаем LCD-термометр или, как вариант, Serial-термометр (напечатает данные о температуре на последовательном мониторе Arduino IDE) на основе микроконтроллера Ардуино и цифрового датчика DS18B20, макетов, перемычек. Таким образом, вы сможете измерять температуру воздуха, жидкости, например, воды и температуру земли.

Информация о сенсоре DS18B20



DS18B20 - это цифровой температурный датчик с интерфейсом 1-Wire от Maxim IC. На выходе мы получаем информацию в Цельсиях с точностью от 9 до 12 бит, от -55 до 125 (+/- 0,5). Каждый датчик имеет уникальный 64-разрядный серийный номер, что позволяет использовать огромное количество датчиков на одной шине данных.




  • Термометр через последовательный монитор



  • Чтобы отобразить данные на последовательном мониторе, подключите датчик DS18B20 к Arduino, используя перемычки и макет, и не забудьте подключить или припаять резистор 4.7k между контактом 2 и 3 датчика.

  • Затем скачайте, откройте и загрузите файл .ino, который называется - DS18B20_Serial, ниже.

  • Если все в порядке, вы должны увидеть измеренную температуру на серийном мониторе Arduino IDE.



  • #include

  • #include


  • // Провод данных подключен к контакту 2 на Arduino

  • #define ONE_WIRE_BUS 2


  • // Настройка oneWire для связи с любыми устройствами OneWire

  • // (не только Maxim/Dallas температурные IC)

  • OneWire oneWire(ONE_WIRE_BUS);


  • DallasTemperature sensors(&oneWire);


  • void setup(void)

  • {

  • // Старт серийного порта

  • Serial.begin(9600);

  • Serial.println("Dallas Temperature IC демо");


  • // Запуск библиотеки

  • sensors.begin();

  • }


  • void loop(void)

  • {

  • // запрашиваем sensor.requestTemperatures() для получения глобальной температуры

  • // запрос всех устройств на шине

  • Serial.print(" Запрашиваем температуру...");

  • sensors.requestTemperatures(); // Отправляем команды для получения температуры

  • Serial.println("DONE");


  • Serial.print("Температура: ");

  • Serial.print(sensors.getTempCByIndex(0)); // Почему "byIndex"?

  • // У вас может быть несколько IC на одной шине.

  • // 0 относится к первой IC

  • delay(1000);

  • }

Download 158.83 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling