Мазмуну:

Ардуино менен топурактын нымдуулук сенсору: 4 кадам
Ардуино менен топурактын нымдуулук сенсору: 4 кадам

Video: Ардуино менен топурактын нымдуулук сенсору: 4 кадам

Video: Ардуино менен топурактын нымдуулук сенсору: 4 кадам
Video: Diseña el cultivo de tus alimentos en espacios cerrados usando programación de código abierto 2024, Ноябрь
Anonim
Топурактын нымдуулук сенсору Arduino менен
Топурактын нымдуулук сенсору Arduino менен

Салам балдар, бул көрсөтмөлөрдө биз топурактын ным сенсорун Arduino менен кантип колдонууну үйрөнөбүз.

Аталышынан көрүнүп тургандай, топурактын ным сенсору, бул топурактагы нымдуулукту аныктайт. Бул топурактын ичиндеги суунун курамы жөнүндө айтып берет, андыктан бул сенсор өсүмдүктөр, дыйканчылык ж.

1 -кадам: Сизге керектүү нерселер

Сиз керек
Сиз керек
Сиз керек
Сиз керек

ошондуктан бул долбоор үчүн сизге төмөнкүлөр керек болот:

1x Arduino Uno (же башка эквиваленти)

1x топурактын ным сенсору

Аз секиргендер

2 -кадам: Райондук диаграмма жана жумушчу теориясы

Райондук диаграмма жана жумушчу теориясы
Райондук диаграмма жана жумушчу теориясы

Ошентип, схема абдан оңой, берилген схеманы аткарыңыз жана ага ылайык баарын туташтырыңыз.

Топурактын нымдуулугун процент менен өлчөө.

Бул жерде топурактын ным сенсорунун аналогдук чыгышы ADCдин жардамы менен иштетилет. Пайыздык нымдуулук сериялык монитордо көрсөтүлөт.

Топурактын ным сенсорунун чыгышы ADCдин диапазонунда 0дөн 1023кө чейин өзгөрөт.

Бул төмөндөгү формуланы колдонуу менен нымдуулуктун мааниси катары көрсөтүлүшү мүмкүн.

Аналогдук чыгаруу = ADC Value /1023

Нымдуулук пайыз менен = 100 - (Аналогдук чыгаруу * 100)

Нөл ным үчүн, биз 10-бит ADC максималдуу маанини, башкача айтканда, 1023. Бул, өз кезегинде, 0% нымдуулукту берет.

3 -кадам: Код

Code
Code

төмөнкү кодду көчүрүп, ардуиного жүктөңүз:

const int sensor_pin = A1; / * Топурактын нымдуулук сенсору O/P пин */

жараксыз орнотуу () {

Serial.begin (9600); / * Сериялык байланыш үчүн бердин ылдамдыгын аныктаңыз */

}

void loop () {

float moist_percentage;

int sensor_analog;

sensor_analog = analogRead (sensor_pin);

нымдуулуктун пайызы = (100 - ((sensor_analog/1023.00) * 100));

Serial.print ("Нымдуулук пайызы =");

Serial.print (нымдуулуктун пайызы);

Serial.print ("%\ n / n");

кечигүү (1000);

}

4 -кадам: Тестирлөө

Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө

Бардык туташуулардан жана коддоодон кийин, сиз идишти же чаканы алышыңыз керек, андан кийин ага бир топурак салып, сенсорду ошол топуракка салып, сериялык мониторду ачыңыз, ал топурактагы нымдуулуктун пайызын көрсөтөт (бул көз каранды топурагыңызда канча суу бар экени жөнүндө), анан ага бир аз суу куюңуз, топурактын нымдуулугу меникиндей сериалдык монитордо өзгөрөт. Менин чыгармамды көрүү үчүн тиркелген сүрөттөрүмө кайрылыңыз.

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