Відмінності між версіями «Аналоговий датчик вологості грунту»

(Зчитування данних з датчика)
Рядок 28: Рядок 28:
 
Якщо датчик підключений до постійного харчування (тип підключення 1), то рядки з символом *, можна видалити.
 
Якщо датчик підключений до постійного харчування (тип підключення 1), то рядки з символом *, можна видалити.
  
const uint8_t  pinSensor  = A2;             
+
  const uint8_t  pinSensor  = A2;             
const uint8_t  pinVcc      = A1;    *       
+
  const uint8_t  pinVcc      = A1;    *       
const uint8_t  pinGND      = A0;    *       
+
  const uint8_t  pinGND      = A0;    *       
 
   Serial.begin(9600);                       
 
   Serial.begin(9600);                       
 
   pinMode    (pinVcc,    OUTPUT);  *     
 
   pinMode    (pinVcc,    OUTPUT);  *     
Рядок 36: Рядок 36:
 
   digitalWrite(pinVcc,    LOW  );  *       
 
   digitalWrite(pinVcc,    LOW  );  *       
 
   digitalWrite(pinGND,    LOW  );  *       
 
   digitalWrite(pinGND,    LOW  );  *       
}
+
  }
void loop(){
+
  void loop(){
 
   digitalWrite(pinVcc,    HIGH  );  *       
 
   digitalWrite(pinVcc,    HIGH  );  *       
 
   Serial.println(analogRead(pinSensor));     
 
   Serial.println(analogRead(pinSensor));     
 
   digitalWrite(pinVcc,    LOW  );  *       
 
   digitalWrite(pinVcc,    LOW  );  *       
 
   delay(5000);                             
 
   delay(5000);                             
}
+
  }
  
 
Для компенсації впливу флуктуацій електропровідності грунту, можна зчитувати середні показання датчика.
 
Для компенсації впливу флуктуацій електропровідності грунту, можна зчитувати середні показання датчика.
  
const uint8_t  pinSensor  = A0;   
+
  const uint8_t  pinSensor  = A0;   
 
       uint16_t arrMoisture[10];           
 
       uint16_t arrMoisture[10];           
 
       uint16_t valMoisture;           
 
       uint16_t valMoisture;           
void setup(){
+
  void setup(){
 
   Serial.begin(9600);       
 
   Serial.begin(9600);       
}
+
  }
void loop(){
+
  void loop(){
 
   valMoisture=0;                       
 
   valMoisture=0;                       
 
   for(int i=0; i< 9; i++){           
 
   for(int i=0; i< 9; i++){           
Рядок 61: Рядок 61:
 
   } valMoisture/=10;                 
 
   } valMoisture/=10;                 
 
   Serial.println(valMoisture);       
 
   Serial.println(valMoisture);       
}
+
  }
 
 
  
 
=='''Специфікація'''==
 
=='''Специфікація'''==

Версія за 13:34, 7 червня 2017

19fb0e049acc9a3287dbfee215ac1607.jpg


Аналоговий датчик вологості грунту підходить для створення систем автоматичного поливу рослин - незамінний помічник, як для догляду за кімнатними рослинами, так і на городі.

Загальні відомості

Чим вище вологість грунту, тим вище її електропровідність. Датчик занурюється в грунт на відстань до 45 мм і вимірює електропровідність грунту між своїми контактами. Напруга на виході датчика прямопропорційна рівню виміряної електропровідності. Чим вище вологість грунту, тим вище рівень сигналу на виході датчика.

54123855921ebbf4ededa9e0f2d79851.jpg

З графіка видно, що електропровідність грунту, а отже і вихідний сигнал датчика має флуктуації (хаотичні відхилення від середнього значення). Рівень сигналу на виході датчика лежить в діапазоні від 0 В до 4,5 В.

Підключення

Вихід датчика підключається до будь-якого аналогового входу Arduino.

Живлення

Вхідна напруга живлення 5В або 3,3В постійного струму, подається на виходи Vcc (V) і GND (G) датчика. Датчик можна підключити до постійного живлення (тип підключення 1), а можна управляти живленням датчика (тип підключення 2) якщо подавати живлення на датчик з будь-якого інформаційного виведення, тоді функцією digitalWrite () можна включати або вимикати датчик. Живлення датчика від інформаційного виведення (тип підключення 2) можливий завдяки низькому енергоспоживанню датчика (споживаний струм <4,5мА), що в рази менше ніж у аналогічних датчиків вологості грунту.

93467a83ca9c0380eb4b622d6062e44d.jpg

Зчитування данних з датчика

Показання датчика зчитуються викликом функції analogRead (номер_виходу); яка повертає число від 0 до 1023 (див. графік).

Приклад зчитування показань датчика з керованим харчуванням (тип підключення 2), датчик живиться від висновків A0 і A1. Якщо датчик підключений до постійного харчування (тип підключення 1), то рядки з символом *, можна видалити.

 const uint8_t  pinSensor   = A2;             
 const uint8_t  pinVcc      = A1;    *       
 const uint8_t  pinGND      = A0;    *       
 Serial.begin(9600);                       
 pinMode     (pinVcc,    OUTPUT);  *    
 pinMode     (pinGND,    OUTPUT);  *       
 digitalWrite(pinVcc,    LOW   );  *      
 digitalWrite(pinGND,    LOW   );  *      
 }
 void loop(){
 digitalWrite(pinVcc,    HIGH  );  *       
 Serial.println(analogRead(pinSensor));    
 digitalWrite(pinVcc,    LOW   );  *       
 delay(5000);                             
 }

Для компенсації впливу флуктуацій електропровідності грунту, можна зчитувати середні показання датчика.

 const uint8_t  pinSensor   = A0;   
     uint16_t arrMoisture[10];           
     uint16_t valMoisture;           
 void setup(){
 Serial.begin(9600);      
 }
 void loop(){
 valMoisture=0;                       
 for(int i=0; i< 9; i++){           
   arrMoisture[i]=arrMoisture[i+1];  
 } arrMoisture[9]=analogRead(pinSensor); 
 for(int i=0; i<=9; i++){            
   valMoisture+=arrMoisture[i];     
 } valMoisture/=10;                
 Serial.println(valMoisture);       
 }

Специфікація

• Напруга живлення Vcc: 5В або 3,3В • Напруга на виході датчика: 0 ... 4,5В • Максимальний споживаний струм: <4,5 мА, при Vcc = 5В і датчик занурений в грунтову воду. • Струм: I = Us / 1000, де Us - напруга на виході Signal (S) датчика • Глибина занурення в грунт: 45 мм • Робоча температура: 4 ... 85 ° С • Габарити: 65х22х7 мм (з врахуванням колодки виходів) • Вага: 1 г

Примітка

На показання датчика впливають такі чинники:

• ступінь занурення датчика в грунт (чим глибше занурений датчик, тим вище показання датчика) • тип ґрунту, його хімічні і фізичні властивості (чим щільніше грунт, тим вище показання датчика) • наявність і кількість домішок у воді, якою поливається грунт.