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

 

Фотография

Самодельный датчик влажности почвы


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 842

#261 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 24 Июль 2013 - 14:51

Всем доброго времени суток.

Небольшой доклад о проделанной работе.

Благодаря подсказкам и пинкам уважаемого участника данной ветки dimmich, получилось добавить в датчик влажности и температуры возможность работы по RS485 с поддержкой стандартных функций Modbus. Датчик теперь выглядит вот так
Прикрепленный файл  hm_485_stm_front.jpg   63,87К   47 Количество загрузок: Прикрепленный файл  hm_485_stm_back.jpg   50,83К   44 Количество загрузок:.

На борту имеет стабилизатор напряжения LD1117V33, измерительную цепь влажности, MK STM8L152K6T6, драйвер RS485 ADM3485, силовой ключ средней мощности на транзисторе SD882 с защитным диодом. Разъемы для питания, сенсора влажности и сенсора температуры DS1820, интерфейс RS485, интерфейc программирования SWIM и разъем для подключения исполнительного реле.

С точки зрения программирования в среде Modbus, содержит два 16-ти битных регистра: 30001 - влажность, 30002 - температура. И два coil (битовых регистра): 000001 - флаг готовности датчика, 000002 - флаг управления силовым ключом.

В данный момент датчик проходит настольные испытания (подключен к компьютеру при помощи переходника USB - RS485). Для окончательной доводки датчика, необходимо проделать еще немного работы. В частности выполнить корректировку нелинейной зависимости показаний измерительной цепи от влажности. После полевых испытаний, датчик будет опубликован и доступен для повторения.

Вопросы и пожелания приветствуются.

#262 nikr

nikr

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

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

Отправлено 07 Август 2013 - 12:25

Всем доброго времени суток.

Небольшой доклад о проделанной работе.

Благодаря подсказкам и пинкам уважаемого участника данной ветки dimmich, получилось добавить в датчик влажности и температуры возможность работы по RS485 с поддержкой стандартных функций Modbus. Датчик теперь выглядит вот так
Прикрепленный файл  hm_485_stm_front.jpg   63,87К   47 Количество загрузок: Прикрепленный файл  hm_485_stm_back.jpg   50,83К   44 Количество загрузок:.

На борту имеет стабилизатор напряжения LD1117V33, измерительную цепь влажности, MK STM8L152K6T6, драйвер RS485 ADM3485, силовой ключ средней мощности на транзисторе SD882 с защитным диодом. Разъемы для питания, сенсора влажности и сенсора температуры DS1820, интерфейс RS485, интерфейc программирования SWIM и разъем для подключения исполнительного реле.

С точки зрения программирования в среде Modbus, содержит два 16-ти битных регистра: 30001 - влажность, 30002 - температура. И два coil (битовых регистра): 000001 - флаг готовности датчика, 000002 - флаг управления силовым ключом.

В данный момент датчик проходит настольные испытания (подключен к компьютеру при помощи переходника USB - RS485). Для окончательной доводки датчика, необходимо проделать еще немного работы. В частности выполнить корректировку нелинейной зависимости показаний измерительной цепи от влажности. После полевых испытаний, датчик будет опубликован и доступен для повторения.

Вопросы и пожелания приветствуются.

Игорь, сенсор из поста 249 используете? Я, все таки, советую емкостной с изолированными электродами. RS485 вещь хорошая - далеко протянуть можно. Наверно и я на нем остановлюсь. Надо будет по регистрам так же как у вас сделать для взаимозаменяемости. С битовыми регистрами вы не указали значения. True(000001) - готов? True(000002) - ключ включен? Только необходимость сенсора температуры внушает сомнения - почва довольно инерционная штука.

#263 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 07 Август 2013 - 15:36

Добрый день, Николай.

Да, использую тот сенсор. Пока полет нормальный. По поводу емкостного датчика, я как-то не вижу особой разницы. Использую измерительную цепь из поста #247, только изменил номиналы R1=2K2, C1=1000n для сдвига линейной характеристики в сторону меньших сопротивлений и заменил диоды на германиевые Д9Б. После длительных испытаний, убедился в эффективности данного решения.

Во-первых просто, а во вторых, можно очень точно рассчитать эквивалентное сопротивление почвы в данный момент времени. Я так и делаю. Принимая во внимание, что емкость 1Мф имеет сопротивление на частоте 1КГц = 160Ом и зная напряжение на выходе измерительной цепи, после несложных вычислений получим значение эквивалентного сопротивления почвы.

Для калибровки датчика, заливаю почву водой до тех пор, пока показания ADC падают. Минимальное значение соотношу со 100%-ой влажностью. Допустим на этот момент сопротивление почвы = 200 Ом, тогда 400 Ом - будет 50%, а 800 Ом - 25%. Кстати, перелить невозможно, после определенного количества воды, сопротивление будет опять увеличиваться.

Коррекцию температуры тоже делаю. Так как сенсор температуры находится под землей, внутри измерительного электрода, то вопрос инерционности отпадает сам собой. Формулу корректировки подобрал эмпирическим путем. Т.е. вносил поправки в расчетные коэффициенты, пока не добился практически линейного графика просыхания почвы в течении нескольких суток. При этом температура почвы изменялась в течении суток более чем на 6 градусов. Без корректировки, получал прыжки в 15% влажности.

По поводу битовых регистров вы правы True(000001) - готов, True(000002) - ключ включен.

Регистры 30001 и 30002 содержат данные АЦП и DS18B20 как они есть. В моем случае регистр 30001 может содержать значения от 300 до 3400. Для получения реальной температуры, значение регистра 30002 надо разделить на 16.

Всю обработку данных делаю на основном компьютере. Накидал тестовую програмку.
Прикрепленный файл  GC.jpg   90,08К   27 Количество загрузок:

Сейчас делаю "нормальный" вариант. Если есть какие вопросы - добро пожаловать :)

#264 nikr

nikr

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

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

Отправлено 07 Август 2013 - 23:53

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

Игорь, вы график суточного изменения температуры с вашего датчика в реальных условиях снимали? У меня большие сомнения, что она сильно изменяется. Именно поэтому я говорил про инерционность.
Кстати, подумал что надо предусмотреть возможность автономной работы датчика. Для этого надо будет забить пару регистров на уставки влажности и битовый на выбор режима работы (автономный/ ведомый). И еще бы я ввел до кучи регистр под названием alarm или error. Можно будет быстрый опрос сделать для обнаружения тревог в системе.
Активные сенсоры использовать безусловно можно, но они менее стабильны и подвержены окислению. К измерительной цепи, которую вы используете можно подключить и конденсаторный датчик - реактивное сопротивление никто не отменял. Правда чувствительность его на низких частотах будет совсем никакая. А вот если поднять частоту накачки все будет не так уж и плохо. Кстати, конструкцию сенсора можно сделать независящую от температуры. Дело в том, что температурный коэффициент у емкости и индуктивности имеют разный знак, а эквивалентная схема сенсора имеет емкостную и индуктивную составляющую и зависит от геометрии сенсора.

#265 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 08 Август 2013 - 08:30

Игорь, вы график суточного изменения температуры с вашего датчика в реальных условиях снимали? У меня большие сомнения, что она сильно изменяется. Именно поэтому я говорил про инерционность.

Да Николай, снимал. У меня дом в предгорьях. Сейчас днем +36..+38, а по ночам +15..+18. В течении суток температура почвы меняется в пределах 4..6 градусов, но бывают пасмурные дни, когда дневная температура падает и тогда почва за ночь остывает еще сильнее. В итоге колебания в течении 2х-3х дней могут составить до 8 градусов. Еще надо заметить, что у меня "высокие" грядки с рыхлой землей, т.е. почва в грядках подвержена более сильным колебаниям.

По поводу автономной работы. Идея хорошая, только вычислений на датчик придется навешать много. Я пока не могу, придется все на C переписывать или искать библиотеки плавающей арифметики под ассемблер.

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

Мне вот интересно, а как вы свой датчик калибруете? Каким образом превращаете показания АЦП во влажность, получается ли линейная характеристика? Я никак не могу себе это представить :)

#266 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 08 Август 2013 - 13:59

Да, забыл, вот формула коррекции для температуры.

RX = RT / (1 + A * DT)

где

DT = Tnow - Tbase

RX: реальное сопротивление почвы
RT: измеренное сопротивление почвы
Tnow: текущая температура почвы
Tbase: базовая температура почвы (при которой датчик калибровался на 100%)
A: 0.029 некий средний коэффициент. Взято из научных трудов. Правда у меня экспериментально немного меньше получилось, да не суть важно.

#267 nikr

nikr

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

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

Отправлено 08 Август 2013 - 19:49

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


Конструкцию сенсора я предлагаю делать на одной пластине фольгированного стеклотекстолита по типу печатной платы. Если использовать технологию ЛУТ или ЛЛТ конфигурацию электродов можно создать в графическом редакторе. Повторяемость сенсоров при этом будет 100%.
От почвы термокомпенсация практически не зависит так как с температурой изменяется диэлектрическая проницаемость только одного компонента - воды.


Мне вот интересно, а как вы свой датчик калибруете? Каким образом превращаете показания АЦП во влажность, получается ли линейная характеристика? Я никак не могу себе это представить :)


Для калибровки датчика используются граничные значения АЦП сухой и влагонасыщенной почвы. Этот диапазон считается рабочим от 0 до 100% влажности. Дальше простая арифметика.

Графики я к сожалению не строил. Времени на все это не хватает.

#268 nikr

nikr

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

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

Отправлено 08 Август 2013 - 21:19

В 244 посту Сергей предлагал за основу датчика взять платформу Arduino. Берем измерительную цепь Игоря из поста 247, вешаем на неё емкостной сенсор, как опять же предлагал Сергей и подключаем к Arduino Nano, С ножки D2 подаем переменку на вход измерительной цепи( резистор 20к ). Сигнал с выхода измерительной цепи подаем на ножку A0. Да еще понижаем опорное напряжение АЦП - подаем с ножки 3V3 через резистор 5к на ножку REF. При этом с учетом внутренних сопротивлений контроллера опорное напряжение получается около 2,8В.
Прикрепленный файл  sensor.jpg   125,66К   42 Количество загрузок:

Конструкция сенсора: Из одностороннего фольгированного текстолита вырезаем полоску 110х12мм, заостряем с одной стороны, вдоль всей полоски по центру делаем надрез фольги, получая 2 электрода. к ним подпаиваем 2 проводочка МГТФ и изолируем всю эту конструкцию. Я пробовал окунание в лак - сенсор получился довольно чувствительный, но нестабильный. В конечном итоге остановился на ламинировании сенсора.( чем тоньше пленка, тем чувствительнее сенсор.)
Измерения делаем в "попугаях" ( значениях АЦП).

Алгоритм измерения такой: накачка 100000 циклов, считывание АЦП, разрядка измерительного конденсатора 10 сек.

При самой толстой пленке изоляции 175мкм получаем:
При 10кГц на воздухе 770, в воде 25град 757 - диапазон очень маленький.
при 100кГц на воздухе 729 в воде 25град 661 в воде 50град 665
при 500кГц на воздухе 655 в воде 25град 556 в воде 50град 561

При тонкой пленке изоляции 75мкм получаем:
при 500кГц на воздухе 655 в воде 25град 470 в воде 50град 476

в последнем случае диапазон измерений получился 200 едениц - уже боле менее, при этом температурный уход 6 едениц на 25 град. и это в чистой воде.

Скетч для теста - http://yadi.sk/d/j14Jp-E27hdci

В скетче забиты частоты 1кГц, 10кГц, 100кГц, 500кГц. Переключать раскоментировав соответствующее значение переменной Del (по умолчанию стоит 500кГц).
Выше поднять частоту накачки обычными средствами Arduino не получается. (это можно будет сделать управляя регистрами атмеги напрямую.)

Может кто нибудь соблазниться поэкспериментировать с разными геометриями электродов и графики показани АЦП от влажности почвы было бы не плохо составить. Вобщем статистику надо набирать.

#269 nikr

nikr

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

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

Отправлено 09 Август 2013 - 01:05

В предыдущем посту заявленные частоты 100 и 500кГц были очень далеки от истины. Дело в том что стандартные процедуры записи в выходной порт занимают порядка 4мкс - так что вместо 100 получается 55кГц, а вместо 500 как раз 100кГц.
Переделал скетч на прямую запись в порт и увеличил количество циклов накачки до 500000 - http://yadi.sk/d/G8ZZl8Ih7i7p4

Теперь результат получился такой:

При тонкой пленке изоляции 75мкм:

при 500кГц на воздухе 520 в воде 25град 99 в воде 50град 103

#270 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 09 Август 2013 - 11:24

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

RX = (RC - K * (R1 + RC)) / (K - 1)
где K = ADC/Umax

ADC: показания АЦП на текущий момент
R1: значение R1 в омах
RC: сопротивление конденсатора C1 на заданной частоте в омах
Umax: значение АЦП при сухом сенсоре

В моем случае кривая зависимости RX от показаний АЦП выглядит вот так
Прикрепленный файл  ur_curve.jpg   26,4К   6 Количество загрузок:

Как видно, формула задает весьма нелинейную кривую. Для пересчета в проценты, надо найти R100 (значение при 100% влажности) и RX. Из их соотношения получаем текущее значение влажности.

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

Кстати, в измерительной схеме рекомендую использовать только германиевые диоды, Д9Б например. График зависимости станет "правильным" и увеличится динамический диапазон.

По поводу ламинирования. Может я ошибаюсь, но уж очень нежным датчик получается. При повреждении пленки он превратится в точный аналог моего сенсора :)

Для выдачи высокочастотного сигнала не загружая процессор можно ведь ЦАП использовать. Или на МК нет такого девайса?

#271 oduvan

oduvan

    Участник

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

Отправлено 09 Август 2013 - 12:09

Шикарные результаты!!! Попробую другие формы датчика сообщю о результатах!

Сообщение отредактировал oduvan: 09 Август 2013 - 12:16


#272 nikr

nikr

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

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

Отправлено 09 Август 2013 - 16:46

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

Работает однако. В основном на датчик влияет слой среды со стороны фольги. Да, изготавливается за 5 минут вместе с ламинированием.

Кстати, в измерительной схеме рекомендую использовать только германиевые диоды, Д9Б например. График зависимости станет "правильным" и увеличится динамический диапазон.

Пока измерительную цепь не оптимизировал, использовал что под рукой было. Диоды кд521а.

По поводу ламинирования. Может я ошибаюсь, но уж очень нежным датчик получается. При повреждении пленки он превратится в точный аналог моего сенсора :)


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

Для выдачи высокочастотного сигнала не загружая процессор можно ведь ЦАП использовать. Или на МК нет такого девайса?


ЦАП есть, но логичней просто таймер использовать. Нам ведь синус без надобности. Надо будет на таймер накачку нагрузить, правда все таймеры стандартно к чему то в ардуине приспособлены. Пока написал в цикле. Посмотрел накачку на осцилографе - вылезли лишние 2мкс по нулям. Их занимает организация цикла. Так что частота опять получилась меньше заявленной 500кГц.


Игорь, вопросик возник. Вы направлением 485 приемопередатчика программно управляете или к Tx UARTa привязались?

#273 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 10 Август 2013 - 07:01

Николай, конструкция сенсора мне понравилась на самом деле. Если вырезать отверстие где нибудь посередине, то и датчик температуры туда можно впаять, только дорожки дополнительные нарезать.

Теперь немного про грабли на которые я уже наступал.

Первые грабли. Кремниевые диоды в измерительной цепи. Следует иметь в виду, что они создают весьма ощутимую ступеньку в районе низких напряжений АЦП. Т.е. пока сигнал не достигнет 0.5 - 0.6В такой диод не откроется. Как следствие, высокие показатели влажности выпадут из диапазона измерений (если по русски, то влажность меняется, а показания нет :)

Еще одни грабли. Обратили внимание на график зависимости? Нельзя использовать простую арифметику по принципу 100% в воде, а 0% на воздухе. Это все равно, что соединить прямой начало и конец графика, а затем выполнять пересчет на основе той прямой. Я уже так делал. Полная ерунда получилась. Если верить таким показаниям, земля будет сохнуть нереальным образом.

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

RS485. Переключаю направление программно. Ноги RE/ DE соединил и к МК. Ох уж этот USART! Там тоже своих граблей хватает. Например не забыть включить подтягивающий резистор для TX, поднимать ногу TX при приеме данных. Сразу все и не вспомню :)

А вот температурный сенсор все-таки желателен. Хотя бы возможность подключения, а там кому надо кому не надо пусть решают. По мне, так он нужен. Для обоснования попробую подготовить пару графиков, с коррекцией и без. Сейчас нет под рукой.

Кстати, если датчик будет совместимым, то поделюсь управляющим приложением. А для пересчета показаний АЦП в сопротивление, можно добавить коэффициенты в настройки датчика (на стороне управляющего приложения) или скрипт какой нибудь.

PS: вчера китайцы звонили, у которых я МК заказывал. Интересовались, использую ли я их, доволен ли я продукцией ST, не задумал ли я случайно бренд поменять. В общем опрос делали. Ох, чую, цену хотят поднять :)

.......чуть не забыл, на сайте ST можно заказать пробную партию МК бесплатно.

Сообщение отредактировал UL7AAjr: 10 Август 2013 - 07:06


#274 nikr

nikr

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

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

Отправлено 11 Август 2013 - 01:04

Николай,конструкция нсор мне понраилась на самом деле. Если вырезать отверстие где нибудь посередине, то и датчик температуры туда можно впать, только дорожки дополнительные нарезать.

Сегодня наткнулся на похожую конструкцию сенсора у DfRobot. Правда они особо не заморачивались и остановились на запитке постоянным током.

Первые грабли. Кремниевые диоды в измерительной цепи. Следует иметь в виду, что они создают весьма ощутимую ступеньку в районе низких напряжений АЦП. Т.е. пока сигнал не достигнет 0.5 - 0.6В такой диод не откроется. Как следствие, высокие показатели влажности выпадут из диапазона измерений (если по русски, то влажность меняется, а показания нет

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

Еще одни грабли. Обратили внимание на график зависимости? Нельзя использовать простую арифметику по принципу 100% в воде, а 0% на воздухе. Это все равно, что соединить прямой начало и конец графика, а затем выполнять пересчет на основе той прямой. Я уже так делал. Полная ерунда получилась. Если верить таким показаниям, земля будет сохнуть нереальным образом.

График для конденсаторного сенсора может отличаться от вашего. Надо набирать статистику и строить свою зависимость.

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

Здесь полностью согласен. В реальной конструкции переделаю.

Кстати, если датчик будет совместимым, то поделюсь управляющим приложением. А для пересчета показаний АЦП в сопротивление, можно добавить коэффициенты в настройки датчика (на стороне управляющего приложения) или скрипт какой нибудь.


Конечно будет совместим. Вроде уже с адресами регистров определились.

#275 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 11 Август 2013 - 08:15

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


Да уж, точно, германиевых в smd не бывает. Попробую тоже шоттки впаять на пробу, посмотрим, что изменится. Если честно, германиевые всем хороши кроме температурных коэффициентов.

График для конденсаторного сенсора может отличаться от вашего. Надо набирать статистику и строить свою зависимость.


Не должен особо отличаться, конденсатор просто как шунт работает. Не могли бы вы проделать небольшой эксперимент? Нанести линейную шкалу на сенсор и постепенно опускать его в воду, снимая показания АЦП? Я бы сам сделал, но моя "лаборатория" пока вне досягаемости.

Здесь полностью согласен. В реальной конструкции переделаю.


Я тут подумал, что ничего страшного, если измерения производить один раз в десять секунд, а само измерение займет одну-две секунды. Ну не ответит датчик пару раз, да и ладно. Особой спешки в этом деле нету.

Конечно будет совместим. Вроде уже с адресами регистров определились.


Тогда еще вопрос назрел. Управление насосом тоже как датчик оформляем? Я планирую подключать насос к такому-же датчику, только показания АЦП у него будут либо от датчика дождя, либо от наличия воды для полива. На выбор пользователя, смотря куда он сенсор разместит и что в настройках пропишет. Ну и температуру будет показывать, можно воздуха, а можно насоса.

Еще вот заметил, что герметичные разъемы для RJ45 очень не дешево стоят. Если на один датчик ставить четыре штуки (вход, выход, сенсор и реле), то стоимость разъемов выйдет дороже стоимости датчика. Вроде как решение можно использовать герметичные боксы, как в системе наружного видеонаблюдения.

#276 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 12 Август 2013 - 08:30

Николай, я тут поразмышлял над конструкцией вашего сенсора. Возможно я не прав, но полагаю, что эквивалентная схема сенсора такая:
Прикрепленный файл  sens_eq.jpg   24,73К   3 Количество загрузок:

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

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

#277 nikr

nikr

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

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

Отправлено 12 Август 2013 - 14:53

Не могли бы вы проделать небольшой эксперимент? Нанести линейную шкалу на сенсор и постепенно опускать его в воду, снимая показания АЦП? Я бы сам сделал, но моя "лаборатория" пока вне досягаемости.


Эксперимент провел.

Сенсор закреплен над ведерком полоской пенопласта.
Результат - http://yadi.sk/d/fqS1pzln7ozXZ
Начальный загиб кривой из за заостренного конца сенсора.


Я тут подумал, что ничего страшного, если измерения производить один раз в десять секунд, а само измерение займет одну-две секунды. Ну не ответит датчик пару раз, да и ладно. Особой спешки в этом деле нету.

Раз в 10 секунд есть смысл замерять только во время полива, а в промежутках и раз в час достаточно будет.

Тогда еще вопрос назрел. Управление насосом тоже как датчик оформляем? Я планирую подключать насос к такому-же датчику, только показания АЦП у него будут либо от датчика дождя, либо от наличия воды для полива. На выбор пользователя, смотря куда он сенсор разместит и что в настройках пропишет. Ну и температуру будет показывать, можно воздуха, а можно насоса.

Это зависит от конструкции конкретной установки. Наверное логично управление насосом поручить головному контроллеру, у него имеется информация о потребности полива от всех датчиков. Можно сделать адресный блок реле на той же шине, а что туда цеплять: насос, досветку, вентилятор, приводы форточек... - это уже детали.

Еще вот заметил, что герметичные разъемы для RJ45 очень не дешево стоят. Если на один датчик ставить четыре штуки (вход, выход, сенсор и реле), то стоимость разъемов выйдет дороже стоимости датчика. Вроде как решение можно использовать герметичные боксы, как в системе наружного видеонаблюдения.


Ага, 5-и контактный разъем под винты, сенсор заодно с платой и все это в пластиковую коробку с гермовводами

#278 nikr

nikr

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

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

Отправлено 12 Август 2013 - 15:42

Николай, я тут поразмышлял над конструкцией вашего сенсора. Возможно я не прав, но полагаю, что эквивалентная схема сенсора такая:
Прикрепленный файл  sens_eq.jpg   24,73К   3 Количество загрузок:

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

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


Тут я с вами не согласен. Сенсор данной конструкции относится к так называемым асимметричным конденсаторам ( на них еще электролеты делают). Эквивалентная схема скорей всего будет составлять переменную емкость с последовательными индуктивностями каждого электрода. Ну и последовательно паралельные сопротивления ( утечки всякие, сопротивления заряду электрода и.т.д) - вобщем сложная схема получается.
Я пробовал опускать сенсор в дистиллированную воду, где практически нет свободных ионов и активное сопротивление должно быть огромное. Сенсор исправно работает.

#279 UL7AAjr

UL7AAjr

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

  • Пользователи
  • PipPipPipPipPip
  • 255 сообщений
  • Меня зовут:Игорь
  • Пол:
  • Город:Алма-Ата

Отправлено 12 Август 2013 - 16:20

Николай, отличный график! Поздравляю :) Никак не ожидал такой линейности. Беру свои сомнения обратно.

Раз в 10 секунд есть смысл замерять только во время полива, а в промежутках и раз в час достаточно будет.


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

Это зависит от конструкции конкретной установки. Наверное логично управление насосом поручить головному контроллеру, у него имеется информация о потребности полива от всех датчиков. Можно сделать адресный блок реле на той же шине, а что туда цеплять: насос, досветку, вентилятор, приводы форточек... - это уже детали.


Так я примерно про это и говорю. Насосом управляет главное приложение. А датчик имеет ту-же конструкцию, только реле включает насос. В управляющем приложении устанавливаем признак, что это не простой датчик, а управление насосом. Дальше все по сценарию. Если в списке датчиков есть насос, то перед открытием реле простого датчика, включить насос.

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

PS: По поводу гермобокса. Начал переразводить PCB для установки четырех разъемов RJ45. Размер сильно увеличился, зато с монтажом, надеюсь, проблемы исчезнут.

#280 oduvan

oduvan

    Участник

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

Отправлено 12 Август 2013 - 16:29

Возник вопрос - как и чем так круто заламинировать датчик???
и еще посоветуйте диоды плз, скоро буду в чип дипе - куплю какие надо, а то я слабо понимаю какие лучше :embarassed:


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

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


    Ahrefs (1)
Copyright © 2014 homecitrus.ru