Указатель уровня воды с ёмкостным датчиком.

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

http://radiokot.ru/circuit/digital/security/18/

Владимир, в EEPROMе хранятся два коэффициента, для коррекции-калибровки.
SUHOI корректирует для минимальной ёмкости.
KOEFF корректирует наклон зависимости "ёмкость/показания", т.е. для максимальной ёмкости.
Изображение

А работает ли EEPROM в протеусе, я не знаю. Похоже, нет.
Если я подменяю две строчки из работающей в железе программы
SUHOI_EE->SUHOI
KOEFF_EE->KOEFF
на прямой ввод чисел
340->SUHOI
89->KOEFF
то схемка работает и в протеусе.
В свойствах модели тиньки есть Initial Contents Of Data EEPROM.
Изображение
Но там почему то он просит Binary Image Files, а не hex.
Слабоват я в протеусе.

А ёмкость меряется таймером1.
Пуск счётчика, включение заряда ёмкости (датчика), срабатывание компаратора - захват значения счётчика.
Дальше математика.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Ну я так примерно себе и представлял .
А почему значение KOEFF =89 ?
Если SUHOI = 340 .
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Ну это мои (и только мои) цифры. Для моего датчика.
Для другого датчика будут свои.
Всё зависит от ёмкости датчика при пустом баке и при полном.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Не понятно .На графике ты считаешь коэффициент для реальной емкости 500л . Но
нам не важно какая емкость- берем ее за 100%.Тогда коэффициент будет равен K=6,4 .
А уровень в %= X - min / K , где X-текущее хначение датчика .Правильно ?
То есть в епром мы запысываем в данном случае SUHOI=360 и KOEFF=6,4 ,точнее
эти значения записываются при калибровке MIN и MAX.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Про датчик я тебе уже писал- повторюсь: Датчик я сделал из дюралевой трубки и вставленной в нее провода в полиэтиленовой изоляции от эл кабеля сечением 25 квадратов с центрирующими вставками .Емкость начальная без кабеля -280 пф и максимальная -1100 пф .
Сегодня я даже попробовал его в работе .Но выяснил кое-какие проблемы - как делать не
надо.Об этом мы поговорим позже. Сейчас при настройке я сделал своего рода эмулятор
датчика -взял пин-переключачель на 8 позиций с какой то сетевой платы.Напаял конденсаторы - начиная со сто пик через сто пик- шестой пин получился 600пф, седьмой
800пф и восьмой 1000пф .Очень удобно и быстро выставляется любой номинал.
Ты не спроста спросил про датчик .Его конструкция на начальный запуск не влияет .
Такое ощущение измеритель просто стоит .По этой причине я попробовал погонять прогу в отладчике .Она реально останавливается на п/п min и ждет нажатия на кнопку min .
Посмотри этот момент .Потому что не выключать его по жизни очень неудобно . Я
сегодня в полной мере ощутил это когда подключал реальный датчик .
Пиши на мыло или здесь - первое быстрей получается .
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Ты в каком отладчике гонял, в протеусе или симуляторе билдера ?
В min попадает только при нажатии кнопки.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Я гонял в симуляторе билдера .После продолжительных танцев с бубном запустил
схему . Сейчас нет крякозябров при запуске и хорошо сохраняется епром при вкл/выкл .
Но не могу одолеть такую вещь - при калибровке MAX запоминает это значение как 50 % и показывает 50,0 .
При применении эмулятора датчика - я выставлял половину максимального значения и все
дальше работает нормально .С реальным датчиком этот фокус не пройдет . Если я правильно понимаю при калибровке MAX должен по логике писать 99,9 .
Ошибка в арифметике ? Прошивку менял не помогает .
Твои предложения ?
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Не не. Моя арифметика для 500. Для max именно 500.
А тебе надо от 0 до 100% ? Давай переделаем.

Ваапчето говоря... :)
Ты открыл мне глаза на кучу багов в программе.
К примеру глюк при уменьшении ёмкости датчика меньше min.

Займусь, когда сбацаю себе COM порт. Новая материнка (мать его - прогресс) имеет аж два видеовыхода и PCIE.
А COMа для моего STK500 нет.
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Убрал глюки при малой и большой ёмкости датчика.
Вроде постабильней работает.
Вложения
LW_AB.zip
(23.15 КБ) 753 скачивания
Аватара пользователя
Pavel_v
Прорезались зубы
Сообщения: 205
Зарегистрирован: Пн янв 28, 2013 03:05:18
Откуда: ЯНАО г.Надым

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение Pavel_v »

А как переделать для другого максимального объема, скажем 200л.? Чего то пока не пойму.
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Pavel_v писал(а):А как переделать для другого максимального объема, скажем 200л.? Чего то пока не пойму.

Надо при расчёте коэффициента делить разницу между максимальным и минимальным отсчётами таймера не на 500, как у меня, а на 200.
Это подпрограмма MAX. Только в программе для упрощения всей математики коэффициент умножен на сто,
и поэтому деление в MAX происходит не на 500 (для моего варианта), а на 5. Поменяйте 5 на 2:
Изображение Изображение

Кстати и в Протеусе всё заработало. В настройках "Опции среды / Общие" установил "Binary" и вот тебе bin файл для Протеуса.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Дима привет !Пару недель отсутствовал.Нормально что тема развивается и ты здесь .
А я сразу и недопер что ты индицируешь сразу в литрах ,хотя в начале темы ты этот
момент четко обозначил .Что то я уперся в проценты .Но это хорошо что непонятные вопросы проясняются .
Себе с твоей подсказки я попробую теперь зашить прошивку для емкости в 200 л ,
но в процентах мне кажется тоже будет востребована ,при применении емкости с
не круглым числом .Датчик я закончил , начальная емкость получилась порядка
200 пик с кабелем .Максимальную посмотрю завтра .
Для стабильной работы при включении , я немного затянул сигнал RESET и после включения
адаптера питания с сеть указатель включаю отдельным тумблером и нет ни каких сбоев .
Указатель существует уже полностью в железе .При случае сниму указатель в сборе и датчик.
Аватара пользователя
Pavel_v
Прорезались зубы
Сообщения: 205
Зарегистрирован: Пн янв 28, 2013 03:05:18
Откуда: ЯНАО г.Надым

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение Pavel_v »

PANYTA писал(а):Надо при расчёте коэффициента делить разницу между максимальным и минимальным отсчётами таймера не на 500, как у меня, а на 200.

Кстати и в Протеусе всё заработало. В настройках "Опции среды / Общие" установил "Binary" и вот тебе bin файл для Протеуса.

Спасибо. Попробую. А вобще, для универсальности, я бы ввел еще одну уставку "объем", и было бы совсем здорово. Можно так же еще и предусмотреть перемычку конфигурации на плате, индикация в процентах и или в литрах. Ну это просто отвлечение от темы... :)
Попробовал в протеусе. Уже не виснет! А вот мах. емкость только до 800 пф. выше высвечивает ЕЕЕ. А Вы пишете что у Вас мах. емкость 1000пф. :o
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Тут
Изображение
можно увеличить "лимит" для ЕЕЕ.
Сейчас стоит 1023.

Если честно, я не понял, почему не виснет...
Добавил проверку флага переполнения таймера (TOV1) в цикле ожидания захвата, но переполнения то не происходит.
То ли я глючу, то ли протеус... :)


А по поводу проценты/литры можно подумать. Только как организовать переключение/настройку без перепрограммирования ?
Надо как то манипулировать кнопками.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Для расширения диапазона максимальных емкостей нужно подбирать резистор заряда .
У меня максимальная емкость датчика 1500пф с резистором 27ком .
Датчик получился 225пф-790пф , больше резистор я не менял .
Менять единицы измерения было бы шикарно ,но на практике указатель собирается
для определенной цели и тут можно определиться с единицами измерения - литры или проценты .
Дима а возможно сделать максимальное значение не 200л , а 220л ? Шаг в 100л все таки великоват .
Многие хотели бы мерять начиная с 30-50л и выше.Это как пожелание .
Я зашил пока прошивку под 200л и очень доволен работой аппарата в целом.
Да кстати , в последней прошивке не работает звуковая сигнализация переполнения.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Твои изменения проги по борьбе с глюками -меньше MIN и больше MAX, мне понравились,
В первом случае теперь три прочерка вместо крякозябров ,а во втором случае продолжается
нормальный счет дальше,если есть запас времени заряда датчика.
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Не понял. Почему "Шаг в 100л" ?
Шаг - 1л. Ну иногда больше (может 2 или 3,4) из за примитивности математики.
Сделать 220 или др., думаю, можно но опять же - усложнение расчётов.

Звуковая сигнализация:
Изображение
не переполнения, а приближения к максимуму.
Чтобы вода с потолка не бежала :)
Для 200л измени на 180 например.

Да, звонок выключается только выключением питания всего девайса.
7vlad1
Родился
Сообщения: 15
Зарегистрирован: Чт июн 13, 2013 16:47:41

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение 7vlad1 »

Согласен - шаг измерения 1л,я имел в виду шаг выбора емкостей - 100л.А изменение его в меньшую
сторону чревато с переходом на арифметику с плавающей точкой .
Ты- автор, решай до какой степени ты готов доводить свой указатель . А уж в пожеланиях
недостатка не будет .
А со звукой сигнализацией понятно -вот почему она не работала - настроена на уровень 490л.
Аватара пользователя
PANYTA
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение PANYTA »

Подправил арифметику.
Теперь внизу таблицы есть параметр V. Меняя его при компиляции можно выбирать максимальное показание.
От 100 до 999.
Изображение
POROG выставляется автоматически.

Попробовал сделать ввод V кнопками. Чёт манипуляций кнопками получается больше, чем просто подправить таблицу.
Оставил так...
LW_AB_2.zip
(23.36 КБ) 685 скачиваний
Аватара пользователя
Pavel_v
Прорезались зубы
Сообщения: 205
Зарегистрирован: Пн янв 28, 2013 03:05:18
Откуда: ЯНАО г.Надым

Re: Указатель уровня воды с ёмкостным датчиком.

Сообщение Pavel_v »

PANYTA писал(а):Звуковая сигнализация:
Изображение
не переполнения, а приближения к максимуму.
Чтобы вода с потолка не бежала :)
Для 200л измени на 180 например.

Да, звонок выключается только выключением питания всего девайса.

А можно сделать не по переполнению а по приближению к минимуму?
Ответить

Вернуться в «Статьи»