Обсуждаем цифровые устройства...
Сб ноя 20, 2021 21:50:42
Злой ты какой-то...
Пн ноя 22, 2021 17:45:10
Вопрос к залу . А вот не замечаете ли Вы такую тенденцию , что после доработки , 110 вольтовому ТЭНу обязательно приходит пиздец конец ? Причём не у одного - двух человек, а у большинства.
Пн ноя 22, 2021 17:56:08
Всех приветствую.
Поставил через stlink v2 прошивку с предыдущих страниц, т.к. поменял жало с 110-вольтового на 220-е. Паяльник греется и никак не реагирует на выставленную температуру. Потребляет примерно 50-60Вт, и так до температуры 500 градусов и ошибки Er3. Как заставить видеть выставленную температуру?
Сначала пробовал write_flash-for_left-handed, потом write_flash-disable_sleep. Все одно, нагреватель красный и потихому ползет нагрев до 500.
Ничего не дорабатывал, ни датчик наклона, ни звонок.
Пн ноя 22, 2021 20:41:58
Never not try, думаю все заметили. Почему так приходит я хз. Возможно что-то надо допиливать, а возможно нарушается принцип "работает - не трогай". Но те кто заменил нагреватель на 220-вольтовый не меняют его каждый месяц.
Если дело в прошивке, то можно было бы исправить, но что?
Equeise, проверяй транзисторы, резисторы в обвязке этих транзисторов. Схемотехника странная, если от МК не приходит сигнал, то силовой транзистор всегда открыт. зайди в меню и проверь есть ли нагрев, если есть значит точно беда на плате.
Пн ноя 22, 2021 23:59:30
Never not try,
Если дело в прошивке, то можно было бы исправить, но что?
Equeise,
У холодного тена сопротивление намного меньше, чем при рабочей температуре. Поэтому начинать холодный разогрев надо "медленно" практически от 0% ШИМа, а у горячего как обычно.
У кого ни будь осталась китайская прошивка?? посмотрите как он холодный начинает разогрев????
Вт ноя 23, 2021 21:36:30
Господа,а как убрать пульсации дисплея. Не критично,в принципе,но всё же.
Добавлено after 1 hour 32 minutes 45 seconds:Never not try,
Если дело в прошивке, то можно было бы исправить, но что?
Equeise,
У холодного тена сопротивление намного меньше, чем при рабочей температуре. Поэтому начинать холодный разогрев надо "медленно" практически от 0% ШИМа, а у горячего как обычно.
У кого ни будь осталась китайская прошивка?? посмотрите как он холодный начинает разогрев????
Глянул мультиком на постоянке на ТЭНе - при старте выдаёт 40 вольт и быстро поднимается до 130. По крайней мере у меня так. Ничего не прошивал. Версия паяльника CXG.EJCV7.
Ср ноя 24, 2021 08:52:34
Вот код сейчас отвеча отвечает нагрев(в main.c), не считая самой функции ШИМ 125Гц(pwm.c)
- Код:
// Setup heater
int16_t pwmValMax = (adcUIn >= 200 && _eepromData.heaterVoltage == 110) ? PWM_MAX_110_220V : (adcUIn >= 200 && _eepromData.heaterVoltage == 220) ? PWM_MAX_220_220V : (adcUIn < 200 && _eepromData.heaterVoltage == 110) ? PWM_MAX_110_110V : (adcUIn < 200 && _eepromData.heaterVoltage == 220) ? PWM_MAX_220_110V : PWM_MAX_110_220V;
// если нагреватель на 110в, а в на пине PB1 более 976мВ, тогда скважность ШИМ 45%
// если нагреватель на 220в, а в на пине PB1 более 976мВ, тогда скважность ШИМ 85%
// если нагреватель на 110в, а в на пине PB1 менее 976мВ, тогда скважность ШИМ 85%
// если нагреватель на 220в, а в на пине PB1 менее 976мВ, тогда скважность ШИМ 100%
// 976мВ * коэф. делителя 138 = 134 вольта в розетке порог изменения скважности
// 50 degrees before the heatPoint we start to slow down the heater
// before that we keep the heater at xx%
// if the diff is negative, we'll stop the heater
int16_t diff = targetHeatPoint - currentDegrees;
int16_t pwmVal = (diff < 0) ? PWM_POWER_OFF : (diff > 50) ? pwmValMax : 75 - diff;
pwmVal = (pwmVal < pwmValMax) ? pwmValMax : pwmVal;
// замедление нагрева если осталось менее 50 градусов до установленной температуры
тут пока я не совсем понял что происходит???
// Soft start heating
int16_t pwmValSoftHeating = 100 - pwmVal;
static uint8_t flagSoftHeating = 0;
if (!flagSoftHeating)
{
pwmVal = (localCnt < REAL_SECOND) ? (pwmVal + ((pwmValSoftHeating / 2) + 15)) : ((localCnt >= REAL_SECOND) && (localCnt < (REAL_SECOND * 2))) ? (pwmVal + (pwmValSoftHeating / 3)) : ((localCnt >= (REAL_SECOND * 2)) && (localCnt < (REAL_SECOND * 3))) ? (pwmVal + (pwmValSoftHeating / 4)) : 85;
flagSoftHeating = (localCnt == (REAL_SECOND * 3)) ? 1 : 0;
}
// моя попытка сделать плавный нагрев при первом включении паяльника
сам нагородил, черт ногу сломит. смысл в том, что первые 3 секунды нагрева каждую следующую секунду скважность ШИМ постепенно поднимается до максимальной устанвленной ранее.
// Heat
PWM_duty(PWM_CH1, pwmVal);
// непосредственно сам нагрев
Как вариант убрать зависимость от напряжения в розетке, т.е. чтобы макс.скважность всегда была 45% для 110вольтового нагревателя и 85% для 220вольтового нагревателя.
Возможно стоит увеличить максимальную скважность ШИМ для 220в нагревателя?
Кто знает более правильный алгоритм постепенного увеличения скважности ШИМ с учетом текущей температуры нагревателя?
Ср ноя 24, 2021 14:03:07
Ну что тут сказать. Дело в том, что для контроля температуры нагревателя ШИМ сам по себе ,в принципе, не нужен вообще . В этой прошивке ШИМ , не зависимо от скважности, в любой момент времени открывает ПТ. А в этот же момент времени, в сети может быть максимум амплитуды сетевого напряжения. При таком совпадении, на холодный ТЭН подаётся кратковременно максимальное напряжение - около 315 В амплитудного. Вот в этом месте 110-Вольтовый ТЭН и склеивает ласты.
Кстати , нихромовый ТЭН такие издевательства может пережить, а вот керамический сильно нежный. Сгорает не от перегрева , а от большого тока, ибо как правильно было замечено ранееWalera_kur, сопротивление холодного ТЭНа мало.
Что можно сделать.
Отказаться от ШИМ и поменять алгоритм полностью.
Думаю, что у китайцев в оригинале , ШИМа там ни какого нет. Было бы не плохо посмотреть на не переделанном паяльнике двух лучевым осциллографом что там творится.
Одним лучом стать на высоковольтное питание или в точку двух резисторов, где измеряются 976 мВ , засинхронизироваться от него.
Вторым лучом - на выходе МК , т.к. два транзистора инвертируют два раза сигнал. ОБЯЗАТЕЛЬНО ПРИМЕНЯТЬ РАЗВЯЗЫВАЮЩИЙ СЕТЕВОЙ ТРАНСФОРМАТОР кто захочет проделать. Только после снятия осциллограмм будет полное понимание что там происходит . Однолучевой не даст полной картины. У меня нет подходящего оборудования для этого. Запитать паяльник от программатора для безопасности ничего не даст, ибо нужен сам нагрев - петля авторегулирования должна быть замкнута. Вместе с ней нужно и смотреть.
А алгоритм мне видится такой :
- Нужно ловить нулевую амплитуду напряжения после диодного моста, и именно в этот момент открывать ПТ (без всякого ШИМ ).
При этом амплитуда напряжения ПЛАВНО нарастает до максимума, затем также плавно спадает. Одну полуволну подали на ТЭН , закрыли ПТ, пять полуволн пропустили. Потом снова , но на две полуволны открыли ПТ ,три последующие закрыли. И т. д. пока ТЭН плавно не разогреется. Затем можно подавать полное напряжение, но для 110-Вольтового ТЭНа одну полуволну не подавать вообще.
А дальше просто сравнивать температуру нагревателя с установленной. Достигла заданной - нагрев прекратить, подостыло - включить. Дельту подобрать экспериментально.
Т. е. ПТ нужно просто открывать- закрывать синхронно с изменениями сетевого напряжения и всё.
Само собой плавный разогрев ,как описал выше, определение напряжения в сети , плюс все сервисные функции должны остаться.
Извиняюсь за такое длинное сообщение .
Ср ноя 24, 2021 15:34:10
Вот и мне интересно было бы увидеть осциллограмму на входе PB1 и на выходе PD4, только два года назад.
ШИМ в прошивке появился только из-за 110в нагревателя, стоял бы на 220в сразу не было бы головняка.
Разработкой прошивки занимались "полтора землекопа". И себя я считаю за "половину". С STM работал только в рамках данного паяльника. Не было опыта "отслеживания нуля"на данном МК и как его лучше реализовать надо будет разбираться.
И опять же по алгоритму: может есть где готовый чтобы подсмотреть? я, например, не представляю сколько полуволн правильно пропускать. А тренироваться тут нельзя, надо один раз и конкретно делать.
Но как по мне - поставил нагреватель на 220в и пользуешься. По итогу такой подход наверно неправильный, но проще в реализации. Да и за пару лет энтузиазм в этом проекте угас.
Ср ноя 24, 2021 16:11:18
Ну , с другим "землекопом" ,я знаком лично. Очень грамотный специалист. Особенно в программировании. Мне до него далеко.
Да, кстати, с отслеживанием нуля не будет помех в сети и в эфире от работы паяльника. А с ШИМом сетевой фильтр не помешал бы. На производстве, устройство с таким уровнем электромагнитных помех не прошло бы по стандартам электромагнитной совместимости. При этом, паяльник " глобал версия " продаётся в разные страны , в том числе и в те , где стандарты эти довольно жесткие. Что косвенно говорит мне о том, что в оригинальной китайской прошивке ШИМа нет.
Ср ноя 24, 2021 18:28:10
Equeise, проверяй транзисторы, резисторы в обвязке этих транзисторов. Схемотехника странная, если от МК не приходит сигнал, то силовой транзистор всегда открыт. зайди в меню и проверь есть ли нагрев, если есть значит точно беда на плате.
Вчера паяльник заработал, но я ничего не трогал более.
Сегодня пришел с работы, включил. Он дошел до 320 градусов (как задано), чуток задержался на этой температуре (секунды 2-3) и продолжил ползти до 500гр. Выключил его, т.к. он даже с Er3 продолжает потреблять 50Вт, т.е. нагрев не прекращается. Подождал полного остывания. Снова включил. Паяльник дошел до 320гр. и далее не убегал.... Что ж искать на плате? То перегревается, то нет... Как ему вздумается.
Ср ноя 24, 2021 19:17:16
Прежде всего внешний осмотр. Цепи : PD4 МК (pin 29 ), R13,R18,R17, Q1, R12, Q2. Желательно микроскопом на предмет микротрещин и плохой пайки. Прозвонка этих цепей. Следы флюса и грязи в объвязке этих цепей.
Отсутствие +5V на R18 , а так же неисправность самого R18 будет приводить к описанным выше симптомам.
Чт ноя 25, 2021 10:31:58
Пример для размышления. Работаю в ремонте мед техники. В инкубаторе для новорожденных есть два Тэна. Один воздух греет, другой воду испаряет для влажности. В сервис мануале нарисован алгоритм регулирования. Все включения во время перехода через 0. Разогрев в Два этапа, первый с 10% шим, второй 30% В обеих режимах время фиксировано, по прошествии этого времени начинает опрашиваться датчик температуры и начинается обычное ПИД регулирование. Уверен, сделано для радостной жизни нагревателя.
Нафига сделали два этапа не понятно, я бы сделал плавно , каждый переход через ноль увеличивает время открытия ключа . Полагаю 1 сек хватило бы нам, из за очень маленькой теплоемкости (массы).
Добавлено after 4 minutes 10 seconds:
ООО!!! открыл схему а там порт РВ1 получает инфу от "0" фазы! вернее от выше 5вольт. И опять по Китайски. в качестве ограничения по напряжению порта использованы диоды на входе МК к плюсу и минусу питания! не далайте так ни когда!!!
У нас разве эта инфа не используется для открытия ключа ТЭНа????????
Чт ноя 25, 2021 15:05:44
Привет.Заказал такой паяльник
https://aliexpress.ru/item/100500127279 ... 1620208810 . До этого купил этот
https://aliexpress.ru/item/100500127779 ... 167e1kVysh и доработал поставил бипер и ртутный датчик(прошил согласно рекомендациям в ветке).Это я к тому что думаю в новом теже потроха и сделаю те же доработки. P.S. нагреватель в первом паяльнике стоял на 110 вольт долго не прожил!Поменял на 220 вольт.
Чт ноя 25, 2021 18:02:48
капец!! как этот паяльник работает??? смотрю на РВ1. Напряжения с делителя 470/3.3 ком= 142 (раза) При напряжении после моста (кондеров нет) 220/142 = 1.5 Вольта. Как это работает??? или номиналы другие стоят??? Хотел ток по входу посчитать, а его нет совсем!!!! Как определяется переход через "0" ?? при каком напряжении сети МК поймет логический 0 ???? А если его воткнуть в 110 вольт??? Он что вообще не сработает???
Или там, что диссертация написана? Порт аналоговый и измеряет милливольты, и программно вычисляется наименьшее значение для разного питающего напряжения???
Надо то было резистор 220 ком и стабилитрон 4.7 вольта, был бы ток 1 ма на максимуме амплитуды, резистора хватило бы 0.125, лучше два по 470к параллельно.
Народ!! кто ни будь понимает как эта херь работает????
Чт ноя 25, 2021 20:51:42
Если быть точным то : (220*1,41)/142=2,18 В. Действительно, половина шкалы АЦП просто не используется. Тем не менее все работает. Не трудно подсчитать почему.
10 бит АЦП даёт 1024 значений, при опорном напряжении 5V : 5 / 1024 = 0,0048 . Т. е. младший бит способен фиксировать 4,88 мВ , что вполне достаточно , хотя и близко к шумовой полке. Там ,скорее всего, опорное 2,5V . Нужно даташит посмотреть на данный микроконтроллер, можно ли там задавать величину опорного напряжения АЦП ?
При опорном 2,5V , шкала преобразования используется правильно.
Стабилитрону там не место. Кроме фиксации нуля, нужно ещё определять от какого напряжения запитан паяльник 220 или 110 Вольт.
Пт ноя 26, 2021 07:56:19
АВТОР!!! ТЫ Тут?????
Есть идея как разогревать ТЭН.
Попробуй такую фигню:
В сетапе пропиши РВ1 как вход.
В основном Лупе - если РВ1=1 , то порт бузер=1, Если РВ1=0 - то бузер=0
Включить послушать! если динамик затрещит 100 Гц то Ура! можно просто добавить две строчки и будет плавный разогрев!!!
Если конечно не лень тебе еще этой фигней заниматься!!!
Пт ноя 26, 2021 20:43:48
Never not try - все правильно!! Тоже думаешь, что РВ1 аналоговый! А не знаешь то, что мы прошили как то этот вход используется????
Сб ноя 27, 2021 12:38:18
Естественно аналоговый, это же вход АЦП.
Как используется - не знаю , не смотрел код. Но можно спросить у тех, кто писал этот код , в этой ветке. Они то уж точно знают.
Думаю там просто измеряется сетевое напряжение , всего два значения - 220 или 110 В , нужно знать сколько подано на паяльник. Это нужно для задания нужной скважности ШИМ.
Попробуй такую фигню:
В сетапе пропиши РВ1 как вход.
В основном Лупе - если РВ1=1 , то порт бузер=1, Если РВ1=0 - то бузер=0
Включить послушать! если динамик затрещит 100 Гц то Ура! можно просто добавить две строчки и будет плавный разогрев!!!
Так не делают обычно. В МК есть UART . На время отладки можно его задействовать и на системный монитор выводить значения АЦП.
Добавлено after 18 minutes 44 seconds:Выше пост
pav13, посмотрел фрагмент кода. Так и есть. Функция adcUIn измеряет напряжение на PB1. А далее ,в зависимости от значения в EEPROM, какой ТЭН в паяльнике установлен ( 110 или 220 V ) выбирается нужная скважность ШИМ.
Сб ноя 27, 2021 12:45:43
Never not try, да, так и есть.
Возможно у китайцев этот пин сначала измеряет амплитуду напряжения в розетке, а потом проводится в цифровой вход и ловит переходы через 0. Можно ли так не помню, нужно даташит смотреть.
Возможно стоит вообще убрать измерение напряжения в розетке. Все равно у всех пользователей, как я понял 220в в сети. Может МК измеряет напряжение в тот момент когда амплитуда меньше 134в и включает повышенный ШИМ на 110в нагреватель.
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.