Калибровка емкостного датчика влажности/содержания воды для гидропоники – Наука в гидропонике

связанныйrssYouTubeинстаграм

Как я уже неоднократно упоминал в своем блоге, определение влажности является одним из наиболее важных измерений в гидропонной культуре, использующей значительное количество среды. Это позволяет правильно рассчитать время полива и избежать чрезмерного или недостаточного полива растений. Емкостные датчики — это самый недорогой первоначальный подход к адекватному мониторингу влажности вашего носителя. В этом посте мы узнаем, как использовать Arduino с гравитационным щитом и недорогим емкостным датчиком влажности, чтобы точно контролировать насыщение водой нашего носителя.

Калибровка емкостного датчика влажности/содержания воды для гидропоники – Наука в гидропонике
Емкостной датчик, подключенный к экрану ЖК-дисплея, и Arduino UNO. Измерения очень легко отслеживать с помощью этой установки.

Аналоговый емкостный датчик влажности, подобный этому, не подвергает никакие металлические части воздействию среды и может использоваться для контроля содержания влаги. Этот датчик питается от 3,5-5 В и выдает сигнал напряжения, пропорциональный диэлектрической проницаемости среды, в которой он находится. Поскольку диэлектрическая проницаемость среды изменяется в присутствии воды, меняется и сигнал датчика. Однако никакое конкретное напряжение не соответствует конкретному измерению содержания воды по определению, поэтому нам необходимо откалибровать датчик, чтобы интерпретировать значения напряжения, которые мы считываем с него. Чтобы получить показания с этого датчика, я использую Arduino UNO, указанный выше емкостный датчик и ЖК-экран от dfrobot, который я могу использовать для легкого получения показаний устройства. Код Arduino, используемый для этого устройства, также приведен ниже.

#include <U8glib.h>

#define XCOL_SET 0
#define XCOL_SET_UNITS 50

U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); 
float capacitance;

void draw() {

  u8g.setFont(u8g_font_helvB10); 
  
  u8g.drawStr(0,21,"M_SENSOR:");
  u8g.setPrintPos(XCOL_SET,51);
  u8g.print(capacitance);
  u8g.drawStr( XCOL_SET_UNITS,51,"mV" );
  
}

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(4, OUTPUT);
  Serial.begin(115200);
  analogReference(DEFAULT); 
  Serial.println("MOISTURE");

  u8g.setContrast(0);
  u8g.setRot180();
}

void loop() {

  draw();
  capacitance = analogRead(1);
  Serial.println(capacitance);

  u8g.firstPage();
    do  {
      draw();
    } 
      while( u8g.nextPage() );   

  delay(1000);
  
}

Калибровка датчика влажности обычно требует создания того, что почвоведы называют кривой «удержания воды», которая представляет собой кривую, на которой сигнал датчика отображается как функция фиксированного объема или веса воды, добавляемой в среду. Однако этот подход включает использование множества различных контейнеров и добавление воды в среду с последующими этапами сушки в печи, чтобы точно определить, сколько влаги фактически было в среде для каждого проведенного измерения.

Чтобы сделать эту процедуру проще, потеряв как можно меньше точности, я создал процедуру калибровки, которая использует естественную сушку и требует только одного этапа сушки в печи. Процедура следующая:

  1. Нагрейте среду, которая будет использоваться для эксперимента, в печи при температуре 110°C (это вытеснит всю воду).
  2. Подождите, пока носитель остынет до комнатной температуры.
  3. Заполните контейнер, который будет использоваться для теста (он может быть пластиковым, но должен иметь отверстия на дне). Поместите датчик в носитель, убедитесь, что датчик вставлен в носитель, пока не будет достигнута верхняя линия.
  4. Возьмите показания, это показания «абсолютно сухого» носителя.
  5. Отсоедините датчик от Arduino.
  6. Взвесьте контейнер+носитель+сенсор. Это будет «сухой вес».
  7. Выньте датчик.
  8. Добавляйте воду в среду до тех пор, пока со дна не будет выходить достаточный сток.
  9. Подождите, пока больше не будет стекать сток.
  10. Поместите датчик в носитель, убедившись, что вы вбиваете его до верхней линии. Датчик не будет выниматься до конца эксперимента.
  11. Подсоедините датчик и снимите показания. Обратите внимание на это значение.
  12. Отсоедините датчик.
  13. Взвесьте контейнер+носитель+сенсор. Обратите внимание на это значение. Первое показание, которое вы берете, — это вес «максимального насыщения».
  14. Повторяйте шаги с 11 по 13 каждые 1–6 часов (время не имеет большого значения, если вы соберете достаточное количество точек данных), пока не приблизитесь к сухому весу. Это может занять несколько дней в зависимости от используемого носителя. Чем больше точек вы измерите, тем точнее будет ваша кривая.

После выполнения этой процедуры вы можете создать кривую, подобную той, что показана ниже. Вы можете использовать разницу между каждым весом и сухим весом, разделенную на разницу между весом при максимальном насыщении и сухим весом, чтобы рассчитать процент насыщения водой. Как видите, кривые для этих датчиков достаточно линейны в диапазоне влажности 40-100% для протестированных мною сред, тогда как ниже 40% режим меняется и измерение увеличивается экспоненциально, пока не достигнет значения датчика «сухой вес». Вся кривая может быть описана степенным уравнением. Это поведение не будет одинаковым для всех протестированных носителей, поэтому для вас очень важно откалибровать датчик для конкретного носителя, который вы хотите использовать.

Калибровка емкостного датчика влажности/содержания воды для гидропоники – Наука в гидропонике
Калибровочная кривая для емкостного датчика влажности. В данном случае среда представляла собой смесь 50 % речного песка и 50 % рисовой шелухи.

После калибровки сенсора вы можете узнать, что означает измерение в мВ с точки зрения водонасыщенности для данного типа среды. Это позволяет вам эффективно планировать время полива при заданном % водонасыщенности. Какой процент водонасыщенности может быть лучше, зависит от свойств вашей среды и от того, как изменяется водный потенциал в зависимости от водонасыщенности. Тем не менее, это позволяет вам экспериментировать с поливами при различных значениях % водонасыщения и выяснить, где именно вам нужно поливать, чтобы ваши растения не были переувлажнены.

Также стоит отметить, что описанный выше датчик, вероятно, недостаточно прочен для использования в гидропонной установке без дополнительной закалки. Чтобы использовать эти датчики в практических приложениях, вы должны нанести конформное покрытие на электронику в верхней части датчика, а затем использовать термоусадочную трубку, чтобы полностью защитить эту электронику от элементов.

Фейсбуктвиттерреддитпинтерестсвязанный