Перейти к содержимому

 

Фотография

Самодельный датчик влажности почвы. Часть 1 (до сентября 2014)

приборы

  • Закрытая тема Тема закрыта
Сообщений в теме: 743

#581 osetroff

osetroff

    Участник

  • Пользователи
  • PipPipPip
  • 36 сообщений
  • Меня зовут:Андрей

Отправлено 17 March 2014 - 21:01

обычное электрическое заземление в одной точке

Все-таки в голове не укладывается: на одном конце участка заземление, все минусовые выведены на него,

а в грядках по участку только плюсовые электроды от датчиков?

Не верится, грунты ведь разные на участке.

 

А про общее заземление есть негативный опыт. В Самаре поставляли дорогие компьютеры в геодезию.

Они их заземлили на общую шину в здании. Была гроза - и все компы погорели.

 

Стараюсь делать раздельное заземление.

купил модульную систему на 6м. 4 1,5м омедненных штыря

Здо'рово! Не знал, что такие бывают.

Буду думать. У меня колодец 6м, вот в него бы трос из нержавейки - то заземление будет.



#582 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 17 March 2014 - 21:05

Продолжаю эксперементы с вашим датчиком возник вопрос - как в этой схеме расчитывается частота генератора?

 f=1/2R1C1? - не похоже((

Подскажите, пожалуйста.

post-55851-0-78218800-1389685486.jpg



#583 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 18 March 2014 - 00:33

Частота такого генератора зависит не только от внешних цепей, но и от быстродействия логического элемента. Так что для каждого вида микросхемы коэффициент в формуле будет свой. Видимо это схема Игоря - он с такими времязадающими работает. На моем сенсоре период колебаний генератора получается 180нС это где то 5.5мГц (замерено по осциллографу). Резистор там 4к7 а вот конденсатор не помню или 15 или 22пФ. А вам принципиальна именно частота генератора? У меня при меньшей частоте дельта от 1,2в до 3мВ. Правда там и другие элементы различаются R2 например 10к.

#584 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 18 March 2014 - 13:08

Про быстродействие инвертора понятно.

У датчик сейчас собран на вашей схеме

Изображение

Конструкция - 2 текстолитовых электрода.

Тестирую его в горшке уже пару месяцев.

 

Первый вариант был с лаком для ногтей - при постоянном контакте лака с водой он размягчаетя и закончилось все тем что один из электродов начал контачить с землей и под лаком в месте прорыва появилась корозия

 

Второй вариант был с эпоксидным клеем и нетканным материалом - история повторилась - через некоторое время разгерметизировался - эпоксидка тоже размягчалась при длительном замачивании.

 

Третий вариант - электроды запаяны в термоусадочный кембрик

 

Все хорошо да вот только из за его толщины чувствительност сильно просела.

 

Вот у меня и появился вопрос как поднят частоту - но не до 16мгц а поэкспериментировать.

 

Спасибо.



#585 Vell65

Vell65

    Участник

  • Пользователи
  • PipPipPip
  • 80 сообщений
  • Меня зовут:Валерий
  • Пол:
  • Город:Биробиджан

Отправлено 18 March 2014 - 13:41

Игорь, получилось запустить http://mondo-technology.com/plant.htm просто писали, что хотите поиграться с этой схемой. У меня не пошло, отсутствует генерация с выхода GP5 МК. И ещё вопросик. Если частотные датчики, что Вы с Николаем используете подключить к схеме с версией PIC12F675 будет мерить или необходимо изменять прошивку?



#586 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 18 March 2014 - 21:55

Тестирую его в горшке уже пару месяцев.   Первый вариант был с лаком для ногтей - при постоянном контакте лака с водой он размягчаетя и закончилось все тем что один из электродов начал контачить с землей и под лаком в месте прорыва появилась корозия   Второй вариант был с эпоксидным клеем и нетканным материалом - история повторилась - через некоторое время разгерметизировался - эпоксидка тоже размягчалась при длительном замачивании.   Третий вариант - электроды запаяны в термоусадочный кембрик   Все хорошо да вот только из за его толщины чувствительност сильно просела.   Вот у меня и появился вопрос как поднят частоту - но не до 16мгц а поэкспериментировать.   Спасибо.

Лак я сразу отбросил. Текстолитовые электроды ламинировал - вроде не пробивает. Но более технологично оказалось 1мм одножильный провод в родной изоляции. Изоляцию сдвигаю и припаиваю к плате. Обратный край обрезаю, чтобы был небольшой напуск изоляции 1-2мм и заливаю термоклеем. Плату с припаянным 4жильным проводом тоже заливаю термоклеем. Для горшков использую укороченный до 3см сдвоенный генераторный электрод в виде рогатки. Земляной оставил одинарный 6см. В принципе, понимаете правильно. Частоту повышать уменьшая R1. Еще на чувствительность влияет R2, так как получается делитель R2 c реактивным сопротивлением С3 и С4. Реактивное сопротивление зависит от частоты... Для примера нашел данные некоторых экспериментов с R1 и R2. 1е значение на воздухе, 2е касание воды 3е 1см в воде 2см и.т.д 4к7 4к7 1,9в 1,84 1,5 1,2 0,95 0,76 0,5 4к7 6к8 1,8в 1,77 1,37 1,0 0,8 0,6 0,4 4к7 10к 1,32в 1,12 0,74 0,4 0,195 0,066 0,006 4к7 12к 1,09в 0,9 0,45 0,165 0,033 0,009 0,003 3к3 8к2 1,22в 1,1 0,56 0,248 0,065 0,010 0,001 2к7 6к8 1,3в 1,18 0,7 0,39 0,132 0,034 0,0065 Как видите для моих электродов оказалось оптимально 4к7 10к.

#587 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 18 March 2014 - 23:15

У меня было: R1 10К R2 2,4К  дельта напряжений 300мв, поставил R1 3.3к - дельта стала 1,6в

 

Спасибо большое! продолжу эксперименты) :good:



#588 osetroff

osetroff

    Участник

  • Пользователи
  • PipPipPip
  • 36 сообщений
  • Меня зовут:Андрей

Отправлено 19 March 2014 - 19:28

Мне рассказали как проверяют достаточно ли влаги на апельсиновой ферме.

Это не я придумал, не подумайте.

В ствол воткнуты два электрода, контроллер что-то измеряет и отправляет оповещение о необходимости полива.

 

Я к чему: а может не в почве влагу измерять?

А в стволе или на веточке?

Только не варварски, втыкая электроды, а, например, бесконтактно?



#589 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 19 March 2014 - 22:13

Не втыкая, наверное не получается, а то бы бесконтактный сенсор давно придумали бы. Получается очень слабая измерительная эффективность сокопроводящий слой тонкий и под внешней корой....

#590 osetroff

osetroff

    Участник

  • Пользователи
  • PipPipPip
  • 36 сообщений
  • Меня зовут:Андрей

Отправлено 20 March 2014 - 10:33

слой тонкий и под внешней корой

То есть, идея-то рабочая, но должно хватать чувствительности бесконтактного датчика.

В следующем году планирую автоматизировать полив сада, обязательно попробую бесконтактные датчики на стволах комбинировать с датчиками в приствольном круге..



#591 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 20 March 2014 - 23:12

Подключил к ардуине LCD вывожу на него значения ацп и влажность в процентах появился вопрос который  даже и не знаю как задать гуглу)) значения ацп у меня высчитываются так:

 

long sensorValue = 0;   for (int i=0; i<100; ++i) {   sensorValue = sensorValue + analogRead(analogInPin);   }   sensorValue = sensorValue/100;

 

и значения влажности

  sensorValue = constrain(sensorValue, 80, 850);   sensorValue = map(sensorValue, 80, 850, 0, 100);   sensorValue =100-sensorValue;

 

Все хорошо только в пограничных областях даже при усреднении значения постоянно дергаются туда сюда пока не закрепится то или иное значение (предположим ацп= 255, но уже собирается становится 256 и дергается туда сюда).

 

Подскажите как програмно от этого избавится или что искать?



#592 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 21 March 2014 - 02:48

sensorValue = (1-Kf)*sensorValue + Kf*analogRead(analogInPin); - будет меньше прыгать. Kf коэфициент фильтрации. Я бы поставил Kf=0.2 Ну и в цикл измерений не мешало бы задержку поставить. Где нибудь так: unsigned long currentMillis = millis(); // получаем текущее время if(ReadOff) { ReadMillis = currentMillis; // сохранили последнее время ReadOff=0; // выключаем блокировку } if(currentMillis - ReadMillis > ReadOn) // пора выполнять { ReadMillis = currentMillis; // сохранили последнее время ReadADC(); // читаем АЦП } можно и delay использовать если больше ничего выполнять во время задержки не надо

 

Спасибо! Вечером попробую!


#593 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 21 March 2014 - 19:30

как ни странно стало только хуже)

 

вот кусок кода:

 

float Kf = 0.2;

      long sensorValue = 0;    for (int i=0; i<1000; ++i) {        sensorValue = sensorValue + analogRead(analogInPin);    }    sensorValue = sensorValue/1000;    sensorValue = (1-Kf)*sensorValue + Kf*analogRead(analogInPin);

Вот что приходит с сенсора без усреднений и фильтрации:

 

31b53f69eaaf639c54ab129da483ee38.jpg

 

Я извиняюсь за молчание. Меня не теряйте, я в отпуске. Вернусь в начале апреля:)


#594 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 21 March 2014 - 20:10

болтается у вас до 30 едениц - многовато... А тестером смотрели выход? При 1.1в ИОН колебание напряжения 0.13в, при 3.3в еще в 3 раза больше.... Если действительно так прыгает, смотрите стабилизатор питания сенсора- может С2 увеличить или на танталовый заменить. Если заметно не прыгает, то дело в ардуине. Усреднение + фильтрация это перебор. У меня при фильтрации с Kf=0.2 показания колеблются только на 1 еденицу.

#595 GFDTK

GFDTK

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 494 сообщений
  • Меня зовут:Павел
  • Пол:
  • Город:Москва
  • Коллекция:посмотреть

Отправлено 22 March 2014 - 04:00

Николай, Игорь, вы такую тему разработали! Я впечатлен. Все круто. Прочитал всю тему с большим удовольствием.



#596 osetroff

osetroff

    Участник

  • Пользователи
  • PipPipPip
  • 36 сообщений
  • Меня зовут:Андрей

Отправлено 22 March 2014 - 13:39

Завершил эксперимент с DHT22 в мембране.

Земля засохла, а DHT22 все равно показывал 99.9%

Температуру отображает корректно.

Достал из мембраны - а он мокрый (это при сухой земле).

Т.е. при обильном поливе влага проникает в мембрану и конденсируется на сенсоре,

а обратно в землю не уходит (или очень медленно уходит).

 

Делаю вывод: в первом приближении, датчики влажности DHT11 и DHT22 в мембране под землей не работают.

 

Дальнейшим развитием было бы проветривание датчика или нагрев.

Но при этом слегка изменятся и параметры почвы, окружающие мембрану.

 

Так что, окончательно перешел на бесконтактные датчики.



#597 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 13 April 2014 - 13:16

Продолжаю горшечное тестирование датчика из 3х проводов и вот что выходит.

 

Поставил переменное сопротивление R1=10к, в результате чувствительность регулируется от низкой до высокой.

Если проводить испытания в воде то при высокой чувствительности все выглядит идеально - на воздухе 880 в воде 0, в горшке же при просыхании прочвы диапахон ацп весьма узкий. 

Все это при опорном напряжении 3,3в.

Думаю попробовать снизить опорное напряжение до 1 в и понизить чувствительность.

 

Проблема №2. Поставил на ардуино мини динамик и при пороге в 20% от заданного диапазона ацп он исполняет мелодию))  все хорошо но где-то раз в 2 дня одно измерение оказывается глючным и ардуино замеряет оч. высокий ацп что приравнивается к влажности ниже пороговой, что в рабочей ситуации приведет к ложному поливу.

Понимаю что с этим можно боротьсся програмно - первая идея - при постоянном повышении порога в течении заданного t вкл полив, второе при превышении порога N раз подряд вкл полив.

 

Может есть идеи лучше?

 

Попробую втолковать свою идею адрдуине))))



#598 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 13 April 2014 - 22:35

Диапазон в земле действительно меньше, чем вода- воздух. Если у меня вода воздух 10 -1023, то в земле 20- 450. Причем при 450 авокадо уже тугор теряет. Так что поливаю уже при 350-400. Со второй проблемой надо понять отчего это происходит. У меня предположение такое, что кратковременно теряется контакт между сенсором и АЦП - другого пока на ум не приходит. Можно попробовать на стороне Ардуины подтянуть ногу к земле через резистор 200к. при этом при потере контакта с сенсором АЦП будет показывать 0 что к поливу приводить не будет. Наоборот при 0 Ардуину можно заставить просгналить вам, что надо проверить контакт.....



#599 oduvan

oduvan

    Участник

  • Пользователи
  • PipPipPip
  • 55 сообщений
  • Меня зовут:Сергей

Отправлено 14 April 2014 - 15:20

Попробую подтянуть.

 

Пока написал чтобы полив наступал после 500 циклов измерений удовлетворяющих условию полива)

На один цикл измерения уходит примерно 1000 мс  соответственно после реального подсыхания через 500 сек наступит полив.



#600 nikr

nikr

    Активный участник

  • Пользователи
  • PipPipPipPipPip
  • 529 сообщений
  • Меня зовут:Николай
  • Пол:
  • Город:Москва

Отправлено 15 April 2014 - 00:15

    Переделал плату управляющего контроллера, теперь там Atmega 2560. На борту: RTC ds1307, 2 светодиода, LCD 16x2, подсветка, клавиатура 3х4, MicroSD, датчик давления MPX4115, датчик температуры( как обычно LM35), датчик освещенности от 0 до 50000лк на фд263-01, канал измерения входного напряжения питания, 10 - аналоговых и 8 цифровых входов (на всякий случай). Шины: UART(для синезуба), Rs485(ModBus), i2c. Все в том же корпусе.

 

Прикрепленный файл  GygroMaster2l-T.jpg   136.55К   13 Количество загрузок:

 

Прикрепленный файл  GygroMaster2-F.jpg   78.77К   7 Количество загрузок:

 

Контроллер уже научился устанавливать время и дату, общаться с SD, показывать на экране: давление, температуру, освещенность, входное напряжение. 

 

Теперь надо разработать простенький язык скриптов и интерпретатор для него..... и чтобы на atmege крутилось.





Темы с аналогичным тегами приборы

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей

Copyright © 2024 homecitrus.ru
 

Яндекс цитирования