Мазмуну:

Arduino + Температура + Нымдуулук: 4 кадам
Arduino + Температура + Нымдуулук: 4 кадам

Video: Arduino + Температура + Нымдуулук: 4 кадам

Video: Arduino + Температура + Нымдуулук: 4 кадам
Video: Arduino Tutorial 28 - DHT11 Temperature Sensor with LCD | SunFounder's ESP32 IoT Learnig kit 2024, Ноябрь
Anonim
Arduino + Температура + Нымдуулук
Arduino + Температура + Нымдуулук
Arduino + Температура + Нымдуулук
Arduino + Температура + Нымдуулук
Arduino + Температура + Нымдуулук
Arduino + Температура + Нымдуулук

Жөнөкөй температура сенсору бир LM35 Precision Temperature Sensor, Humidity Sensor жана Arduino колдонуп, келечектеги долбоорлоруңузга кошула аласыз. Район температура жана нымдуулук жөнүндө сериялык маалыматты жөнөтөт, андыктан сиз аны компьютериңизде колдоно аласыз. Мен компостумдан маалыматтарды алдым. Долбоор учурдагы продуктунун күнүмдүк таштандысына байланыштуу, анын жардамы менен ашканадагы таштандыларды үйдөгү компостко айландырууга болот. Продукт жөнүндө көбүрөөк маалымат алуу үчүн https://www.dailydump.org/content/ дарегине өтүңүз. Digicompost таштанды ичинде болуп жаткан өзгөрүүлөрдү (температуранын, нымдуулуктун өзгөрүшүн) көрсөтөт

1 -кадам: материалдар

Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар

- Arduino (Сиз башка микроконтроллерди колдоно аласыз, бирок анда кодду алмаштырышыңыз керек болот.)- LM35 Precision Centigrade Temperature Sensor, сиз каалаган электрондук дүкөндөн ала аласыз. Бул жерде DATA SHEET.- BreadBoard.- Nem Sensor.- Wires.

2 -кадам: Arduino + Температураны орнотуу

Arduino + Температураны орнотуу
Arduino + Температураны орнотуу
Arduino + Температураны орнотуу
Arduino + Температураны орнотуу
Arduino + Температураны орнотуу
Arduino + Температураны орнотуу

Arduino-ийкемдүү, колдонууга оңой аппараттык жана программалык камсыздоолорго негизделген ачык булактын электроникалык прототиптештирүү платформасы. Бул сүрөтчүлөргө, дизайнерлерге, хоббистерге жана интерактивдүү объекттерди же чөйрөлөрдү түзүүгө кызыккандарга арналган. Көбүрөөк маалымат алуу үчүн кирүү (https://www.arduino.cc) Температура сенсорун туташтыруу: LM35тин үч буту бар жана транзисторго окшош. Эки сырткы буту+5v жана Ground, ал эми ортоңку буту үлгү чыңалуусун иштеп чыгат. Digital Converter (ADC) аналогу аналогдук баалуулуктарды санариптик жакындаштырууга айлантат. Ошентип, +5 вольтерференциясы менен, санариптик жакындатуу = киргизүү чыңалуусу * 205 болот. (Ex. 2.5v * 205 = 512.5) LM35 - бул 10мв Цельсий градусына жеткирүүчү так сызыктуу температура сенсору. Бул 15 градус Цельсийде, Бул көрсөткүчтү биздин ADC конверсияга киргизүү (.15v * 205 = 30.75).150v же 150 милливольт көрсөткүчтөрүн чыгарат, эгерде санариптик киргизүү санын 2.ге бөлүү аркылуу Цельсий температурасынын жакындыгын алсак болот. башка маалымдама чыңалуусу (9v же 12v), биз башка айландыруу ыкмасын колдонушубуз керек. Бул схема үчүн 2ге бөлүү жакшы иштейт.

3 -кадам: нымдуулук сенсорун туташтыруу

Нымдуулук сенсорун туташтыруу
Нымдуулук сенсорун туташтыруу
Нымдуулук сенсорун туташтыруу
Нымдуулук сенсорун туташтыруу

Нымдуулук сенсорунун эки казыгы бар, бири жер үчүн, экинчиси pin 3 боюнча ардуино үчүн. Мен нымдуулукту/ нымдуулукту текшерүү үчүн жергиликтүү жасалган сенсорду колдондум, бирок температурасы жана нымдуулугу бар SHT15ке барууга болот.

4 -кадам: кодду орнотуу !

Код орнотулууда !!!
Код орнотулууда !!!

Ардуинону компьютерге туташтырып, тиркемени ачып, тиешелүү портту жана моделдин номерин тандаңыз. кандайдыр бир коддоону баштоодон мурун. Баары бүткөндөн кийин, кодду төмөндө көрсөтүлгөндөй жазыңыз: int pin = 5; // аналогдук пининт putPin = 3; // moistint tempc = 0, tempf = 0; // үлгүлөрдөгү температуранын өзгөрмөлөрү [8]; // жакшыраак тактык үчүн өзгөрмөлөр maxi = -100, mini = 100; // max/min температурасын баштоо үчүн i; float humi = 0; float prehum = 0; float humconst = 0; float truehum = 0; float pretruehum = 0; long pretruehumconst = 0; long valb = 0; void setup () {Serial.begin (9600); // сериялык байланышты баштоо} void loop () {for (i = 0; i <= 7; i ++) {sample = (5.0 * analogRead (pin) * 100.0) / 1024.0; tempc = tempc + үлгүлөр ; кечигүү (1000);} tempc = tempc/8.0; tempf = (tempc * 9)/ 5 + 32; valb = analogRead (putPin); // нымдуулукту эсептөө = (valb/5); humconst = (0.16/0.0062); humi = prehum - humconst; pretruehumconst = 0.00216*tempc; pretruehum = 1.0546 -pretruehumconst; truehum = humi/pretruehum; кечигүү (1000); Сериялык. басып чыгаруу (tempc, DEC); Serial.print ("Цельсий",); Serial.print ("Нымдуулук:"); Serial.print ((узун) truehum); Serial.println ("%"); tempc = 0; кечигүү (1000); // кечиктирүүдөн мурун} Баары бүткөндөн кийин, жүктөө үчүн бир аз убакыт талап кылынган жүктөө баскычын чыкылдатыңыз жана жүктөө бүткөндө сенсордон көрсөткүчтөрдү алуу үчүн Сериялык байланышты чыкылдатыңыз !!!

Сунушталууда: