Цифровая паяльная станция своими руками.(V 2.0)
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Цифровая паяльная станция своими руками.(V 2.0)
Ухода в максимальный нагрев быть не должно. Могут быть колебания, может быть перерегулирование (выброс, иногда длительный), но в среднем должны быть колебания вокруг уставки. Возможно, где-то есть переполнение переменных, или еще что-то.
-
altais
- Первый раз сказал Мяу!
- Сообщения: 20
- Зарегистрирован: Вс фев 09, 2014 21:14:00
- Откуда: Харьков
Re: Цифровая паяльная станция своими руками.(V 2.0)
Если чуть подробнее описать процесс, то получается что станция вроде как при нагреве замедляется около уставки, а потом резко идет вверх. Уходит в насыщение или нет зависит от разницы начальной температуры и уставки, т.е. если сбросить станцию около уставки - она стабилизируется. Еще это все как-то очень резко зависело от коэффициента, например, при D=8 все ок, а при D=10 уже нет. Но все это с 100n конденсаторами на входе ОУ и ADC, при 22n лучше.
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Цифровая паяльная станция своими руками.(V 2.0)
То, что возле уставки скорость роста температуры снижается - это нормально. А вот то, что дальше идет резкий рост - это неправильно. Нужно анализировать программу. Я в подобных спорных случаях или вывожу на график все интересующие внутренние переменные, или вообще временно реализую регулятор на компьютере, который по интерфейсу читает температуру датчика станции и возвращает нужную мощность нагревателя. Тогда можно в процессе нагрева наблюдать за всеми переменными. График нагрева паяльника у меня выглядит так:

Спойлер

-
altais
- Первый раз сказал Мяу!
- Сообщения: 20
- Зарегистрирован: Вс фев 09, 2014 21:14:00
- Откуда: Харьков
Re: Цифровая паяльная станция своими руками.(V 2.0)
Анализировать то собственно нечего
, я описал поведение прошивки 1.42b авторства Victor_P на своем железе. Поэтому и бросил ссылку на ту статью, думал натолкнет на какие-нибудь мысли. Да и не стоит вопрос остро, работает же, просто диапазон доступных коэффициентов реально меньше, чем можно выбрать.
- Victor_P.
- Поставщик валерьянки для Кота
- Сообщения: 2168
- Зарегистрирован: Сб окт 10, 2009 10:34:07
- Откуда: Україна, Хорол
Re: Цифровая паяльная станция своими руками.(V 2.0)
Видимо что-то с железом не то, потому что такого поведения никто не отмечал из собравиших станцию. Да и я такого ни разу не видел, а уж эксперименты со своей станцией я какие только не проводил. Да и коэффициенты у Вас подозрительные какие-то, у меня сейчас стоят П62 И64 Д00 и ничего нигде не прыгает и не летает.altais писал(а):....описал поведение прошивки 1.42b авторства Victor_P на своем железе...
- imon220
- Потрогал лапой паяльник
- Сообщения: 326
- Зарегистрирован: Сб июл 27, 2013 03:46:14
- Откуда: Р Крым
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P скажите пожалуйста, у вас есть схема для фена(я какую то нашел но видимо она старая, там еще на кнопках)
У вас ведь уже все на энкодерах.Вроде уже весь форум пролистал а так нечего не нашел...
Если есть то скиньте пожалуйста
У вас ведь уже все на энкодерах.Вроде уже весь форум пролистал а так нечего не нашел...
Если есть то скиньте пожалуйста
Re: Цифровая паяльная станция своими руками.(V 2.0)
Леонид Иванович писал(а):Сейчас нет технической цензуры, поэтому ничуть не удивляет появление таких бредовых статей.
А что не так со статьей?
- Victor_P.
- Поставщик валерьянки для Кота
- Сообщения: 2168
- Зарегистрирован: Сб окт 10, 2009 10:34:07
- Откуда: Україна, Хорол
Re: Цифровая паяльная станция своими руками.(V 2.0)
imon220, нету. Это к Леониду Ивановичу viewtopic.php?f=2&t=61075
-
altais
- Первый раз сказал Мяу!
- Сообщения: 20
- Зарегистрирован: Вс фев 09, 2014 21:14:00
- Откуда: Харьков
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P. писал(а): ....Да и коэффициенты у Вас подозрительные какие-то, у меня сейчас стоят П62 И64 Д00 и ничего нигде не прыгает и не летает.
Записал 2 видео работы, в обоих выбрал ваши коэффициенты. В первом старт с разогретым где-то до 130 паяльником - все хорошо. В втором холодный старт и видна проблема. Не похоже на железо.
Заполнение выбрано максимальным, блок питания MeanWell NES-100-24 100Вт тянет нормально.
https://dl.dropboxusercontent.com/u/40018460/1.mp4
https://dl.dropboxusercontent.com/u/40018460/2.mp4
Как раз кто-то просил здесь видео с демонстрацией, первое неплохо подходит.
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P. писал(а):Хм, это идея, но вродь пока тких помех не было, чтоб срабатывание кнопок из-за них было.
В небезызвестном "A Guide to Debouncing" описывается прецедент, когда "симпатичная красная кнопочка" давала искрение в течении 157 миллисекунд. Ваш алгоритм сработал бы пять раз на нее.
В вышеупомянутом гайде описывается шикарный по логике действий и простейший в части реализации алгоритм дибаунса, основанный на операции сдвига. Смысл в том, что в переменную отображающую состояние нажато/отпущено загоняется в качестве младшего бита текущее состояние кнопки. При следующем опросе кнопки, содержимое переменной сдвигается на один разряд влево, а в младший разряд опять записывается текущее состояние. Подразумевая, что цикл этот бесконечен, можно больше не вспоминать о дребезге, а только смотреть на значение этой переменной. Когда все биты встали в единицу, значит мы имеем одно положение кнопки очищенное от дребезга, если все в нулях, то другое.
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Цифровая паяльная станция своими руками.(V 2.0)
a5021 писал(а):А что не так со статьей?
Все не так. Переход к разностной схеме ничего не меняет, физического смысла коэффициентов в том числе. Математически схемы эквивалентны - сначала продифференцировали формулу ПИД, затем проинтегрировали, просуммировав воздействие. Зато появляется дополнительный плюс - простой и понятный критерий ограничения по максимальному воздействию. В прямой схеме интегральную составляющую тоже нужно ограничивать, но нет четких критериев, на каком именно уровне. В результате система имеет медленное восстановление после перегрузок, а иногда приходится прибегать даже к грубому вмешательству в виде сброса интегральной составляющей. Поэтому вывод №1 в статье неверный, всё как раз наоборот - ограничивать нужно обязательно, в этом и состоит основной плюс разностной схемы. А странный эффект, описанный в статье, мог быть связан с ошибкой в реализации. Вывод №2 не имеет отношения к ПИД, эта общая рекомендация при программировании вообще. Надо сказать, что в разностной схеме благодаря ограничению воздействия очень просто контролировать диапазоны значений каждой переменной. Вывод №3 вообще относится к какой-то ошибочной реализации, нет такой ошибки в реальности. Вывод №4 по абсурдности чемпион: "схему следует переинициализировать, как только создалось впечатление, что схема вернулась в нормальное состояние". Ну и заключительный совет, что не стоит использовать разностную схему, весьма спорный. Многие производители промышленных контроллеров почему-то этого совета не придерживаются.
- Victor_P.
- Поставщик валерьянки для Кота
- Сообщения: 2168
- Зарегистрирован: Сб окт 10, 2009 10:34:07
- Откуда: Україна, Хорол
Re: Цифровая паяльная станция своими руками.(V 2.0)
altais, второе видео очень похоже на описание проблемы BV-Dial с П-канальным полевиком. После 130 градусов температура очень резко вырастает и не управляется. Это очень похоже на то, что полевик полностью открывается и закрыть его получается только выключением станции.
a5021, да, решение интересное, но замедляет в 8 раз скорость опроса кнопок, которую можно конечно и поднять предварительно, но только зачем если и так отлично работает. В любом случае спасибо, если и не сейчас, то когда-то может пригодится.
a5021, да, решение интересное, но замедляет в 8 раз скорость опроса кнопок, которую можно конечно и поднять предварительно, но только зачем если и так отлично работает. В любом случае спасибо, если и не сейчас, то когда-то может пригодится.
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P. писал(а):но замедляет в 8 раз скорость опроса кнопок, которую можно конечно и поднять предварительно
У меня оно висит на таймере, ответственном за динамическую индикацию. Обработчик вызывается каждые 2 миллисекунды, что при восьмибитной переменной дает очищенное состояние через 16 мс после последнего проявления дребезга. Все удовольствие -- три строчки в обработчике.
-
altais
- Первый раз сказал Мяу!
- Сообщения: 20
- Зарегистрирован: Вс фев 09, 2014 21:14:00
- Откуда: Харьков
Re: Цифровая паяльная станция своими руками.(V 2.0)
Полевик IRFR5505 55V 18A, в работе холодный. Драйвер Л.И. больше 12-13В на затвор дать не может. В теории все хорошо. Попробовать его заменить? Почему эффект наблюдается только при определенных коэффициентах? Если руки дойдут, осциллографом гляну.
- Victor_P.
- Поставщик валерьянки для Кота
- Сообщения: 2168
- Зарегистрирован: Сб окт 10, 2009 10:34:07
- Откуда: Україна, Хорол
Re: Цифровая паяльная станция своими руками.(V 2.0)
a5021, а не может получиться "обратного эффекта" при высокой скорости опроса и "медленной" кнопке? Т.е. варианта, когда один импульс дребезга поместится в 8 измерений?
altais, я не утверждаю что это полевик, но это первое что пришло в голову при просмотре видео.
altais, я не утверждаю что это полевик, но это первое что пришло в голову при просмотре видео.
-
altais
- Первый раз сказал Мяу!
- Сообщения: 20
- Зарегистрирован: Вс фев 09, 2014 21:14:00
- Откуда: Харьков
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P, спасибо за советы. Проблема, получается, индивидуальная. Буду разбираться.
Re: Цифровая паяльная станция своими руками.(V 2.0)
Victor_P. писал(а):a5021, а не может получиться "обратного эффекта" при высокой скорости опроса и "медленной" кнопке? Т.е. варианта, когда один импульс дребезга поместится в 8 измерений?
Так может получиться, если частота дребезга вдруг окажется ниже 31,5 герца. Контакт, наверное, должен быть толщиной с рельсу.
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Цифровая паяльная станция своими руками.(V 2.0)
altais писал(а):В втором холодный старт и видна проблема.
Очень подозрительно. На 16 - 17 секунде видео температура за секунду повышается от 153 до 297 градусов. Разве такое физически возможно?
a5021 писал(а):шикарный по логике действий и простейший в части реализации алгоритм дибаунса
Он простой, конечно, но неудобный. Время дебаунса жестко привязано к периоду опроса и разрядности переменной. Лучше прямо в миллисекундах задавать интервал дебаунса. Признаком окончания дребезга является совпадение всех результатов опроса кнопок на этом интервале. Если внутри интервала обнаружено несовпадение - перезапуск интервала. Интервал для распространенных кнопок можно выбрать порядка 20 - 50 мс. Вот кусок исходника источника питания PSL-3604:
Спойлер
Код: Выделить всё
void TKeyboard::Execute(void)
{
if(TSysTimer::Tick) //каждый системный тик (чаще не нужно)
{
char Key = Scan(); //сканирование клавиатуры
if(Key != Prev_Key) //код отличается
{
DebounceTimer->Start(DEBOUNCE_TM); //запуск Debounce таймера
Prev_Key = Key; //сохранение нового кода
}
else //код совпадает
{
if(DebounceTimer->Over()) //если интервал истек,
Message = Key; //генерация сообщения
}
}
}
Re: Цифровая паяльная станция своими руками.(V 2.0)
Леонид Иванович писал(а):Время дебаунса жестко привязано к периоду опроса и разрядности переменной. Лучше прямо в миллисекундах задавать интервал дебаунса. Признаком окончания дребезга является совпадение всех результатов опроса кнопок на этом интервале. Если внутри интервала обнаружено несовпадение - перезапуск интервала. Интервал для распространенных кнопок можно выбрать порядка 20 - 50 мс.
Берем переменную подходящей ширины и по маске отслеживаем нужное количество бит. Меняя значение маски можно задавать время дибаунса с шагом 2мс в любой момент. Не надо никаких перезапусков.
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Цифровая паяльная станция своими руками.(V 2.0)
Можно. Но так придется делать для каждой кнопки отдельно. Выгоднее завести один программный таймер и отслеживать сразу весь скан-код клавиатуры. В похожем стиле делается автоповтор и отслеживание удержания кнопки. Впрочем, решений может быть множество, дело личных пристрастий.