Предлагаю сообществу датчик малых ёмкостей, работающий почти от 0 пФ. Можно использовать в любительской электронике, роботостроении.
Разрабатывая хобби-электронику, мне понадобился какой-нибудь простой датчик расстояния на ёмкостном эффекте. Поискав в Интернете, нашёл только датчики касания, но они имеют малое расстояние срабатывания и дискретный выход. Другие же датчики слишком сложные или с долгой настройкой. Нужен был очень простой и дешёвый, работающий от микроконтроллера. Что получилось — под катом…
После нескольких экспериментов появилась схема, на рис. 1.
![image](https://habrastorage.org/r/w1560/webt/pl/ck/n4/plckn4ewvlpav7mqtomvgpc0dig.png)
Рис. 1. Схема. MicroCap10
Принцип действия основан на измерении заряда, который накопился на обкладке конденсатора при зарядке. Вторая обкладка – это объект, подносимый к датчику. Для моделирования она показана подключённой к «земле», но это не принципиально.
Обкладка конденсатора подключена к выводу микроконтроллера, который настроен на выдачу меандра частотой 120 — 180 кГц, на схеме это источник напряжения V2. Также, обкладка подключена к базе транзистора Q1. Эмиттер подключён к тому же генератору. Так как выход МК комплементарный, это означает что вывод попеременно подключён то к «+» источнику питания, то к «0». Что происходит в эти полупериоды:
Диод D1 и конденсатор С2 образуют амплитудный детектор – на R5 создаётся напряжение, пропорциональное ёмкости С1. Транзистор Q2 нужен для согласования сопротивлений с АЦП МК. Выходное напряжение снимается с R6.
Результаты моделирования (рис. 2) при номиналах, показанных на схеме. Линейная зависимость примерно сохраняется до 10 пФ.
![](https://habrastorage.org/r/w1560/webt/cp/ff/cx/cpffcxh8r_mkcutiaoq-y82jrjm.png)
Рис. 2. График ёмкость — напряжение
При снижении R3 до 2 кОм, увеличивается чувствительность и снижается линейный участок примерно до 0…4 пФ.
![](https://habrastorage.org/r/w1560/webt/gz/cu/bf/gzcubfza-kkw7dhkypthokqcpa8.png)
Рис. 3. График ёмкость — напряжение
Примечание: подъём графика около 0 пФ – ошибки моделирования, там на самом деле продолжается линейность. Проверено в «железе».
Приведённая схема отличается от других (с диодной развязкой или мостами и неизменным включением БЭ транзистора) тем, что пропорция ёмкость/напряжение имеется почти с 0 пФ, без мёртвой зоны. Также, в схеме задействована только одна обкладка конденсатора.
При выполнении на плате собственная ёмкость схемы намного меньше ёмкости одной обкладки — пластины в 20 см2. Чувствительность датчика: для поднесённой руки примерно на 50 мм к пластине — изменение выходного сигнала более 10%. Расчётное изменение ёмкости около 2 пФ. На сетевые помехи, ЭМП и GSM датчик не реагирует.
Кто реализует и применит в своих поделках — отпишитесь, интересно.
В комментариях под статьёй обсуждается применение в качестве датчика влажности почвы. Решил проверить, возможно ли.
Сенсорную пластину взял 40х60 мм, хорошо замотав в 4 слоя сантехнического скотча (допустим, герметизировал). Собственная ёмкость возросла, пришлось поменять номиналы в схеме, снизив чувствительность до уровня 15 пФ. Новая схема здесь :
![image](https://habrastorage.org/r/w1560/webt/d1/yy/_w/d1yy_wc3znzrt2pafsy74zhno3s.png)
Рис. 4. Схема для датчика влажности почвы.
Плоской земли у меня нет, есть песок, который я насыпал в банку объёмом примерно 300 мл. Доливал воды каждый раз примерно по 15...20 мл.
Сухой песок. Собственная ёмкость сенсора.
![image](https://habrastorage.org/r/w780q1/webt/d-/jw/ox/d-jwoxuuaegks_jav6ccxivrgkc.jpeg)
Песок +20мл воды.
![image](https://habrastorage.org/r/w780q1/webt/j9/ff/mp/j9ffmpxwq8ddb9zvhrycajedgee.jpeg)
Ещё долил воды и немного утрамбовал.
![image](https://habrastorage.org/r/w780q1/webt/yl/hu/7o/ylhu7odvxfoov_enbchztx1spke.jpeg)
… и ещё воды.
![image](https://habrastorage.org/r/w780q1/webt/o9/bs/ct/o9bsctqlgprpigxpncmgw4s4ice.jpeg)
… и ещё воды.
![image](https://habrastorage.org/r/w780q1/webt/f8/ap/nd/f8apndhsm_2hcwn6t70u6qdkt4a.jpeg)
… и ещё воды.
![image](https://habrastorage.org/r/w780q1/webt/aa/2x/r-/aa2xr-nbsbln4gtxvpuomxfnyv0.jpeg)
… и ещё воды. Стало совсем тропически сыро.
Напряжение снимал с R5, поэтому при увеличении ёмкости напряжение увеличивается.
Видно, что ёмкость возрастает при каждом доливе. Однако, то ли песок такой, то ли я не знаю что, но показания увеличиваются сразу при доливе. Я ожидал более плавное изменение U при пропитывании песка водой.
Да, я знаю о сенсорных датчиках для Ардуино с Али. Но мне хотелось разобраться самому и сделать с заданными параметрами.
Разрабатывая хобби-электронику, мне понадобился какой-нибудь простой датчик расстояния на ёмкостном эффекте. Поискав в Интернете, нашёл только датчики касания, но они имеют малое расстояние срабатывания и дискретный выход. Другие же датчики слишком сложные или с долгой настройкой. Нужен был очень простой и дешёвый, работающий от микроконтроллера. Что получилось — под катом…
Схема
После нескольких экспериментов появилась схема, на рис. 1.
![image](https://habrastorage.org/webt/pl/ck/n4/plckn4ewvlpav7mqtomvgpc0dig.png)
Рис. 1. Схема. MicroCap10
Как работает
Принцип действия основан на измерении заряда, который накопился на обкладке конденсатора при зарядке. Вторая обкладка – это объект, подносимый к датчику. Для моделирования она показана подключённой к «земле», но это не принципиально.
Обкладка конденсатора подключена к выводу микроконтроллера, который настроен на выдачу меандра частотой 120 — 180 кГц, на схеме это источник напряжения V2. Также, обкладка подключена к базе транзистора Q1. Эмиттер подключён к тому же генератору. Так как выход МК комплементарный, это означает что вывод попеременно подключён то к «+» источнику питания, то к «0». Что происходит в эти полупериоды:
- На выходе МК лог. 1: Конденсатор быстро заряжается через R1, R2. Так как ёмкость очень мала, можно обойтись без диодного разделения, сопротивление R2 достаточно для полного заряда, и нет паразитной ёмкости диодов. Транзистор закрыт, так как включён в обратном направлении UБЭ<0.
- На выходе МК лог. 0: Конденсатор С1 разряжается через R3, переход БЭ Q1 и выход МК. Так как эмиттер через вывод МК подключился к «0V», то ток разряда на очень короткое время открывает транзистор. Создаётся ток коллектора на короткое время, определяемое зарядом конденсатора С1.
комплементарный выход![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/0d5/6c1/20a/0d56c120a2bb8f1e69c40143786bf385.jpg)
![image](https://habrastorage.org/getpro/habr/post_images/0d5/6c1/20a/0d56c120a2bb8f1e69c40143786bf385.jpg)
Диод D1 и конденсатор С2 образуют амплитудный детектор – на R5 создаётся напряжение, пропорциональное ёмкости С1. Транзистор Q2 нужен для согласования сопротивлений с АЦП МК. Выходное напряжение снимается с R6.
Результаты моделирования (рис. 2) при номиналах, показанных на схеме. Линейная зависимость примерно сохраняется до 10 пФ.
![](https://habrastorage.org/webt/cp/ff/cx/cpffcxh8r_mkcutiaoq-y82jrjm.png)
Рис. 2. График ёмкость — напряжение
При снижении R3 до 2 кОм, увеличивается чувствительность и снижается линейный участок примерно до 0…4 пФ.
![](https://habrastorage.org/webt/gz/cu/bf/gzcubfza-kkw7dhkypthokqcpa8.png)
Рис. 3. График ёмкость — напряжение
Примечание: подъём графика около 0 пФ – ошибки моделирования, там на самом деле продолжается линейность. Проверено в «железе».
Приведённая схема отличается от других (с диодной развязкой или мостами и неизменным включением БЭ транзистора) тем, что пропорция ёмкость/напряжение имеется почти с 0 пФ, без мёртвой зоны. Также, в схеме задействована только одна обкладка конденсатора.
При выполнении на плате собственная ёмкость схемы намного меньше ёмкости одной обкладки — пластины в 20 см2. Чувствительность датчика: для поднесённой руки примерно на 50 мм к пластине — изменение выходного сигнала более 10%. Расчётное изменение ёмкости около 2 пФ. На сетевые помехи, ЭМП и GSM датчик не реагирует.
Уточнения для реализации
- Транзисторы должны быть с рабочей частотой от 100 МГц, и минимальной ёмкостью базы (здесь 2 пФ).
- Диод D1 – высокочастотный типа BAV99, ёмкость единицы пФ.
- С2 в диапазоне 10 – 30 нФ, больше не надо, растёт ток вывода МК. Для сглаживания импульсов можно поставить конденсатор параллельно R6
- Резистор R1 в 100 Ом ограничивает ток вывода МК, импульсный 5мА, средний 0,2 мА.
- Микроконтроллер в данной схеме – Atmega8A, выход меандр 166 кГц, АЦП его же. Увеличение частоты выше 300 кГц не рекомендуется, из-за влияния паразитных ёмкостей.
Кто реализует и применит в своих поделках — отпишитесь, интересно.
Альтернативное применение.
В комментариях под статьёй обсуждается применение в качестве датчика влажности почвы. Решил проверить, возможно ли.
Сенсорную пластину взял 40х60 мм, хорошо замотав в 4 слоя сантехнического скотча (допустим, герметизировал). Собственная ёмкость возросла, пришлось поменять номиналы в схеме, снизив чувствительность до уровня 15 пФ. Новая схема здесь :
![image](https://habrastorage.org/webt/d1/yy/_w/d1yy_wc3znzrt2pafsy74zhno3s.png)
Рис. 4. Схема для датчика влажности почвы.
Эксперименты:
![image1](https://habrastorage.org/webt/2r/ad/vn/2radvnrp-95qx2jucr3vo7o959e.jpeg)
Сухой песок. Собственная ёмкость сенсора.
![image](https://habrastorage.org/webt/d-/jw/ox/d-jwoxuuaegks_jav6ccxivrgkc.jpeg)
Песок +20мл воды.
![image](https://habrastorage.org/webt/j9/ff/mp/j9ffmpxwq8ddb9zvhrycajedgee.jpeg)
Ещё долил воды и немного утрамбовал.
![image](https://habrastorage.org/webt/yl/hu/7o/ylhu7odvxfoov_enbchztx1spke.jpeg)
… и ещё воды.
![image](https://habrastorage.org/webt/o9/bs/ct/o9bsctqlgprpigxpncmgw4s4ice.jpeg)
… и ещё воды.
![image](https://habrastorage.org/webt/f8/ap/nd/f8apndhsm_2hcwn6t70u6qdkt4a.jpeg)
… и ещё воды.
![image](https://habrastorage.org/webt/aa/2x/r-/aa2xr-nbsbln4gtxvpuomxfnyv0.jpeg)
… и ещё воды. Стало совсем тропически сыро.
Напряжение снимал с R5, поэтому при увеличении ёмкости напряжение увеличивается.
Видно, что ёмкость возрастает при каждом доливе. Однако, то ли песок такой, то ли я не знаю что, но показания увеличиваются сразу при доливе. Я ожидал более плавное изменение U при пропитывании песка водой.
Да, я знаю о сенсорных датчиках для Ардуино с Али. Но мне хотелось разобраться самому и сделать с заданными параметрами.