Владимир, в EEPROMе хранятся два коэффициента, для коррекции-калибровки. SUHOI корректирует для минимальной ёмкости. KOEFF корректирует наклон зависимости "ёмкость/показания", т.е. для максимальной ёмкости.
А работает ли EEPROM в протеусе, я не знаю. Похоже, нет. Если я подменяю две строчки из работающей в железе программы SUHOI_EE->SUHOI KOEFF_EE->KOEFF на прямой ввод чисел 340->SUHOI 89->KOEFF то схемка работает и в протеусе. В свойствах модели тиньки есть Initial Contents Of Data EEPROM. Но там почему то он просит Binary Image Files, а не hex. Слабоват я в протеусе.
А ёмкость меряется таймером1. Пуск счётчика, включение заряда ёмкости (датчика), срабатывание компаратора - захват значения счётчика. Дальше математика.
Не понятно .На графике ты считаешь коэффициент для реальной емкости 500л . Но нам не важно какая емкость- берем ее за 100%.Тогда коэффициент будет равен K=6,4 . А уровень в %= X - min / K , где X-текущее хначение датчика .Правильно ? То есть в епром мы запысываем в данном случае SUHOI=360 и KOEFF=6,4 ,точнее эти значения записываются при калибровке MIN и MAX.
Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России.
На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.
Про датчик я тебе уже писал- повторюсь: Датчик я сделал из дюралевой трубки и вставленной в нее провода в полиэтиленовой изоляции от эл кабеля сечением 25 квадратов с центрирующими вставками .Емкость начальная без кабеля -280 пф и максимальная -1100 пф . Сегодня я даже попробовал его в работе .Но выяснил кое-какие проблемы - как делать не надо.Об этом мы поговорим позже. Сейчас при настройке я сделал своего рода эмулятор датчика -взял пин-переключачель на 8 позиций с какой то сетевой платы.Напаял конденсаторы - начиная со сто пик через сто пик- шестой пин получился 600пф, седьмой 800пф и восьмой 1000пф .Очень удобно и быстро выставляется любой номинал. Ты не спроста спросил про датчик .Его конструкция на начальный запуск не влияет . Такое ощущение измеритель просто стоит .По этой причине я попробовал погонять прогу в отладчике .Она реально останавливается на п/п min и ждет нажатия на кнопку min . Посмотри этот момент .Потому что не выключать его по жизни очень неудобно . Я сегодня в полной мере ощутил это когда подключал реальный датчик . Пиши на мыло или здесь - первое быстрей получается .
Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO
подробнее>>
PANYTA
Заголовок сообщения: Re: Указатель уровня воды с ёмкостным датчиком.
Я гонял в симуляторе билдера .После продолжительных танцев с бубном запустил схему . Сейчас нет крякозябров при запуске и хорошо сохраняется епром при вкл/выкл . Но не могу одолеть такую вещь - при калибровке MAX запоминает это значение как 50 % и показывает 50,0 . При применении эмулятора датчика - я выставлял половину максимального значения и все дальше работает нормально .С реальным датчиком этот фокус не пройдет . Если я правильно понимаю при калибровке MAX должен по логике писать 99,9 . Ошибка в арифметике ? Прошивку менял не помогает . Твои предложения ?
А как переделать для другого максимального объема, скажем 200л.? Чего то пока не пойму.
Надо при расчёте коэффициента делить разницу между максимальным и минимальным отсчётами таймера не на 500, как у меня, а на 200. Это подпрограмма MAX. Только в программе для упрощения всей математики коэффициент умножен на сто, и поэтому деление в MAX происходит не на 500 (для моего варианта), а на 5. Поменяйте 5 на 2:
Кстати и в Протеусе всё заработало. В настройках "Опции среды / Общие" установил "Binary" и вот тебе bin файл для Протеуса.
Дима привет !Пару недель отсутствовал.Нормально что тема развивается и ты здесь . А я сразу и недопер что ты индицируешь сразу в литрах ,хотя в начале темы ты этот момент четко обозначил .Что то я уперся в проценты .Но это хорошо что непонятные вопросы проясняются . Себе с твоей подсказки я попробую теперь зашить прошивку для емкости в 200 л , но в процентах мне кажется тоже будет востребована ,при применении емкости с не круглым числом .Датчик я закончил , начальная емкость получилась порядка 200 пик с кабелем .Максимальную посмотрю завтра . Для стабильной работы при включении , я немного затянул сигнал RESET и после включения адаптера питания с сеть указатель включаю отдельным тумблером и нет ни каких сбоев . Указатель существует уже полностью в железе .При случае сниму указатель в сборе и датчик.
Надо при расчёте коэффициента делить разницу между максимальным и минимальным отсчётами таймера не на 500, как у меня, а на 200.
Кстати и в Протеусе всё заработало. В настройках "Опции среды / Общие" установил "Binary" и вот тебе bin файл для Протеуса.
Спасибо. Попробую. А вобще, для универсальности, я бы ввел еще одну уставку "объем", и было бы совсем здорово. Можно так же еще и предусмотреть перемычку конфигурации на плате, индикация в процентах и или в литрах. Ну это просто отвлечение от темы... Попробовал в протеусе. Уже не виснет! А вот мах. емкость только до 800 пф. выше высвечивает ЕЕЕ. А Вы пишете что у Вас мах. емкость 1000пф.
Тут можно увеличить "лимит" для ЕЕЕ. Сейчас стоит 1023.
Если честно, я не понял, почему не виснет... Добавил проверку флага переполнения таймера (TOV1) в цикле ожидания захвата, но переполнения то не происходит. То ли я глючу, то ли протеус...
А по поводу проценты/литры можно подумать. Только как организовать переключение/настройку без перепрограммирования ? Надо как то манипулировать кнопками.
Для расширения диапазона максимальных емкостей нужно подбирать резистор заряда . У меня максимальная емкость датчика 1500пф с резистором 27ком . Датчик получился 225пф-790пф , больше резистор я не менял . Менять единицы измерения было бы шикарно ,но на практике указатель собирается для определенной цели и тут можно определиться с единицами измерения - литры или проценты . Дима а возможно сделать максимальное значение не 200л , а 220л ? Шаг в 100л все таки великоват . Многие хотели бы мерять начиная с 30-50л и выше.Это как пожелание . Я зашил пока прошивку под 200л и очень доволен работой аппарата в целом. Да кстати , в последней прошивке не работает звуковая сигнализация переполнения.
Твои изменения проги по борьбе с глюками -меньше MIN и больше MAX, мне понравились, В первом случае теперь три прочерка вместо крякозябров ,а во втором случае продолжается нормальный счет дальше,если есть запас времени заряда датчика.
Не понял. Почему "Шаг в 100л" ? Шаг - 1л. Ну иногда больше (может 2 или 3,4) из за примитивности математики. Сделать 220 или др., думаю, можно но опять же - усложнение расчётов.
Звуковая сигнализация: не переполнения, а приближения к максимуму. Чтобы вода с потолка не бежала Для 200л измени на 180 например.
Да, звонок выключается только выключением питания всего девайса.
Согласен - шаг измерения 1л,я имел в виду шаг выбора емкостей - 100л.А изменение его в меньшую сторону чревато с переходом на арифметику с плавающей точкой . Ты- автор, решай до какой степени ты готов доводить свой указатель . А уж в пожеланиях недостатка не будет . А со звукой сигнализацией понятно -вот почему она не работала - настроена на уровень 490л.
Подправил арифметику. Теперь внизу таблицы есть параметр V. Меняя его при компиляции можно выбирать максимальное показание. От 100 до 999. POROG выставляется автоматически.
Попробовал сделать ввод V кнопками. Чёт манипуляций кнопками получается больше, чем просто подправить таблицу. Оставил так...
Сейчас этот форум просматривают: MOHCTEP и гости: 23
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения