Перейти к содержанию

We Are

Members
  • Постов

    138
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные We Are

  1. On 4/1/2024 at 2:18 PM, Artik said:

    1. Куда подключать внешнее питание для такой платы как в первом сообщении и каков диапазон питающего напряжения?

    Писать что-то типа "Тебя что в google забанили" не надо, нашел информацию, что нужно подавать питание от 5-14В по-моему на пин VIN и GND, подал ничего не заработало. Может плата слишком Китайская.

    2. Как правильно подключить катушку реле: через транзисторный ключ, или можно напрямую PIN-GND, на какое напряжение нужно реле?

    1. Видимо, забанили.
    Питание самой ESP 3.3 вольта, но на этой плате стоит линейный преобразователь - если посмотреть на нее глазами а потом вбить в гугле то, что на нем написано.
    И входное питание надо подавать именно на этот преобразователь - посмотрев куда именно от него идут провода.
    При этом учитывать что там есть еще порт USB, от которого на этот самый преобразователь подается 5В, а значит подав туда в обход USB 14В есть вероятность что-нибудь выжечь.
    Это при условии что VIN идет на преобразователь, а не на какой-нибудь вход ESP - тогда выжечь можно уже ее саму.

    Конечно, потому что плата китайская, как же иначе...

    2. Если ESP работает от 3.3В, и на выводах дает 3.3В максимум, да еще с очень небольшим током - на какое напряжение и ток нужно реле? Скорее всего такого вы не найдете.
    Тогда придется использовать транзисторный ключ, а с учетом максимального тока по выходу - на вход ключа ставить сопротивление, чтобы не пожечь ESP.

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

    Как-то так...

  2. On 3/17/2024 at 7:30 PM, OlegOleg said:

    И реализовывать хотите на Ардуино? Или можете свободно на С++ сделать?

    Вот мне всегда было интересно, когда человек противопоставляет ардуино и C++ - он точно знает что именно противопоставляет? Или "программы написанные в MS Visual Studio работают лучше чем написанные в Блокноте"?

    А по сути темы: не стоит класть все яйца в одну корзину, особенно если опыта изготовления данных изделий нет.

  3. On 2/21/2024 at 11:44 AM, Borodach said:

    Надо как нибудь попробовать..

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

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

  4. 29 minutes ago, Геннадий said:

    Уже нет возможности проверить напряжение БП на соответствие аппарату? Читать разучились? Или мозги пропали?

    Автор, тут люди интересуются, что у тебя с мозгами? :rolleyes:

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

    40 minutes ago, bigmanlav said:

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

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

    Что касательно тока - всё еще проще: как правило (в подавляющем большинстве случаев) современные 5-вольтовые устройства рассчитаны на питание от 5-вольтовых адаптеров типа "USB-зарядка", а у тех, в свою очередь, типичный ток в районе 0.5А, редко больше, максимум 3А.

    Вот такой блок, размерами 10х20 мм:

    image.png.93117a334ab592822bef0a75117a0ad5.png

    при входном напряжении до 30В имеет настраиваемое выходное, в т.ч. 5В, и ток до 3А. Впаять его туда и забыть про проблемы разных адаптеров.

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

     

  5. Ключевое слово когда-то.

    А сейчас, если уж колхозить что-то внутрь - то не защиту, а обычный DC-DC понижатель до 5В, и не забивать себе голову какой там адаптер.

    Как уже посоветовали ранее...

  6. 3 hours ago, Alek_von_German said:

    invalid conversion from 'int' to 't_backlighPol'

    это не "ошибка в arduino IDE", это сообщение компилятора C/C++ о несоответствии типов переменных. Там еще должен быть указан номер строки и файл, в котором это встречается.

    Исправить можно двумя способами:

    1 - разобраться, почему вместо переменной с типом t_backlighPol передается переменная с типом int, возможно просто поменять тип этой переменной.

    2 - понадеяться на то, что int тоже должен подходить, и просто указать в программе явное преобразование типов, как обычно в С:
    вместо какого-нибудь "= var" указать "= (t_backlighPol) var"

  7. Есть такое понятие "радиоактивный фон". То есть, события абсолютно случайные, но происходят они в некоторой вероятностью: если вы стоите посреди чиста поля - это одно, если в гранитном мавзолее - это другое, а если на соседней АЭС "ничего не происходит, незачем волноваться" - это третье.
    И во всех случаях фон будет разный, но требуется его оценивать, и возможно, принимать какие-то меры.

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

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

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

     

  8. Все зависит от целей и задач.

    Тестирование аккумулятора - это одно. Там нагрузка, заряд, разряд, всё должно быть в приемлемые сроки. Можно себе позволить молотить по 256 измерений в секунду, не вопрос. Самый простой вариант.

    Работа оборудования на аккумуляторе - это совсем другое. Если расчетное время работы несколько месяцев - то любое лишнее шевеление - расход энергии впустую и сокращение периодов обслуживания. С другой стороны - и 1000 минут будет приемлемо, за это время существенных изменений быть не должно.
    Или наоборот, если емкость аккумулятора несколько сотен Ач - там 1000 секунд вообще ни о чем, при этом нагрузка может быть нестабильна, и напряжение тоже.
    Так-то у меня есть задачи и такие и такие.

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

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

     

  9. 1 hour ago, Starichok said:

    как часто ты производишь измерения? или иначе - сколько времени уходит на 50 измерений для твоего фильтра?

    В данном конкретном случае это было просто наглядное тестирование разных алгоритмов, одно измерение в 20 секунд, процесс разряда батареи (с тем же успехом можно брать данные по температуре - она тоже меняется плавно). Смысл в том, что все три варианта дают практически одинаковые результаты, кое-кто этому не верил, типа "вот так правильно, а вот так неправильно".
    По горизонтали - количество замеров.

    Подобных измерений много - автоматика.

  10. Напомнили в соседней теме:

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

  11. Вот такое прямо на плату на штырьках припаять (шаг 2.5): Arduino Pro Mini

    image.png.cf05914fa2ea9ec88fbf279b71d0d5c3.png

    Всё что А0-А5 - умеет считывать аналоговые сигналы, т.е. напряжение на токовом шунте.

    Или такое: ESP12F

    image.png.2d17f870d8b4a0b128b408759ab64970.png

    паяется как SMD, шаг все тот же. Аналоговый вход один, и точность похуже, но зато с WiFi. При желании можно хоть веб-сервер на нем запустить, чтобы с компьютера на страничке всё видеть, сколько куда чего.

    Измеряемое напряжение 0-1000 мВ. Если на шунте меньше - ОУ в помощь.

    Это поначалу может показаться сложным, на самом деле оно сделано максимально просто, даже проще чем надо бы.

  12. 1 hour ago, ТоптуновПотапов said:

    Предположу, что необходимо "умножить" численное значение тока (АЦП на базе КР572ПВ2 с одновременной индикацией текущего (мгновенного значения) и на время измерения (часы с тактовой частотой 1с/1мин) например на 176ИЕ18 и "сложить" с предыдущим значением.

    Легких путей не ищем мы...

    Зря не хотите "строго контроллеры". Именно для этого придумали ардуину: всё уже разведено, распаяно, настроено, и даже загрузчик прошит, остается написать  простейшую программу типа 

    X = I * t

    и нажать пару кнопок.

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

    А то выглядит как "хочу ложку, железную не предлагать - варить сталь из руды не умею, поэтому научите как выточить из дерева". Ложки-то продаются уже в наше время.

  13. У стрелок есть большой минус - их надо видеть.

    А цифры - их давно в коридор значений загоняют и оценивают "в норме" - "не в норме". Еще и меры принимаются автоматически, с учетом тенденций и скорости их нарастания.

    Графики просто для контроля адекватности намерянных цифр физической сущности явления.

  14. 12 minutes ago, Алексей Еремеев said:

    Поставьте к = 0.05, например, будет похоже на скользящее по 1/0.05 = 20 точкам, зато без буфера

    да, такое соотношение

    12 minutes ago, Алексей Еремеев said:

    Ну, калманом здесь и не пахнет, конечно...

    ну, как называли ))

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

    Например, простое усреднение не умеет работать с "выбросами" - но медиана уже умеет, а кто-то просто обрезает всё что не укладывается в +-10% - и это тоже работает

     

  15. 17 minutes ago, IMXO said:

    очень хреновая штука.... особенно в целочисленной математике,  потому как (1-alpha) определяет порог нечувствительности фильтра

    Это вот как раз тот третий вариант, который "упрощенный фильтр Калмана".

    По графикам - сходятся данные, т.е. результат тот же самый.

    1068142689_Screenshotfrom2024-02-1115-36-05.png.4e44b7dbefa4f6b505f049e19a3ebaf5.png

  16. 5 minutes ago, donec said:

    Вот кто-то и возьмет, а потом будет голову ломать почему раз в сутки глюк происходит

    Классика же: "я использовал код из примера в ардуине, а через 49 дней она зависла! Ууу, китайское качество!"

    Просто millis() перешел через 0 , а суть примера была в работе с чипом, а не в обучении работе с байтами

  17. Just now, donec said:

    Каждый вызов функции F , будет увеличивать cnt на единицу, в конце концов произойдет переполнение числа int и cnt станет нулем, и начнется все заново

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

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

    Это, кстати, к вопросу "взять чужой код не думая"

×
×
  • Создать...