Power Electronics
http://valvol.ru/

Цифровое управление сварочными источниками
http://valvol.ru/topic50.html
Страница 9 из 17

Автор:  sam_soft [ 11-04, 14:24 ]
Заголовок сообщения: 

MasterCat
Да не ввязывайся ты в эти дебаты. Тебе они лично ничего не дадут. Делай свое дело и все. Я как то с полгода назад тоже спорил с Чукчей - нафига нужны мелкопроцеи в сварники. Спорил до упора. А потом всетаки решил попробовать. И в самом деле оказалось, что даже такие простые функционалы , как контроль темрературы , реле , вентилятор сделать проще, лучше и меньше деталек. Ну есно умение трохе програмить требуется, иначе никак. Вот если с этим проблема или лень разбираться -тогда другой вопрос.
Кстати допер таки как тактировать UC с процика, как всегда дело не в бобине, а в прокладке :). Попробовал вчера - все замечательно идет.
Код есно подправил. Посвободнею трохе на работе - попробую ШИМить-ЧИМимить ну и конечно поджиг отрывом. Для ТИГ полезно будет. Если все как следует сделать, то возможно и без осцилятора ТИГ нармальный попрет. И опять таки, ну никакой пайки не нада. :)

Автор:  MasterCat [ 11-04, 15:48 ]
Заголовок сообщения: 

sam_soft писал(а):
Кстати допер таки как тактировать

как тактировать - в книжке описано, пробовал давненько, китайцев синхронизовал. если уж UC**, то бери UCC25701 - куда лучше. проверено. синхронизуется - просто песня.
на меге чим выше 20кгц не получится. пробовал. может криво пробовал.
на PWMке - просто песня. только что заставил 4 канала синхронно шевелиться. это мне для объединенного косого. к сожалению предыдущий пример стер, блин. теперь отключалку имульса заново придется делать. пробовал на лету переключаться (период) , получилось от 1гц до 150000гц. только шибко аккуратно надо.
PWM РЕКОМЕНДУЮ(последний AVRstudio и IAR ее держат.). bezobraznik точно выскажет одобрямс. пробуй. вопросы будут подскажу(жем). схемку набросал, получилолсь PWM+IXDD409 для нижнего плеча и HCPL3180+IXDD409+DCDC для верхнего. PWMка позволяет выбрать активный уровень выхода, так что без дополнительных элементов.
защита и компаратор внешние. посмотрел на UC39432BD ($5зараза).
короший компаратор. но времен не знаю. дана только крутизна х-ки.

---
если не влом, покажи кусочек текста, коим рулить изволишь
:scenic:

Автор:  sam_soft [ 11-04, 16:09 ]
Заголовок сообщения: 

MasterCat
2845 тоже отлично синхронизиться. Синхронизил от 16 битового таймера М8. Думаю что в любом случае лучше будет чем RC генератор , даже если ничего делать не надо другого, а только для настройки. Любое заполнение , любую частоту с достаточно большой точностью можно поставить. И никакой перепайки деталек, которая в конце концов курочит дорожки через пару иттераций.

Доберусь и до PWM если точно буду знать что без нее никак. gcc тоже ее поддерживает. Так что проблема только с програматором. У меня бесплатный и совсем простой - 3 диода и пять резисторов :)
Но тем неменее спасибо еще раз автору
http://www.avr.nikolaew.org

MasterCat писал(а):
если не влом, покажи кусочек текста, коим рулить изволишь

А что конкретно интересует ? На мастер сити я скидывал зип со всеми исходниками для того сварника. Там все написано.

В новой версии кое чего добавлю, есть еще мысли.

Автор:  MasterCat [ 11-04, 16:56 ]
Заголовок сообщения: 

sam_soft писал(а):
Так что проблема только с програматором

проблемы никакой. вышлю и схему и зашивку. поником ее не взять.
sam_soft писал(а):
А что конкретно интересует ? Н

ну как-то не получается 50 кгц с таймера м8. тем более с любым заполением и т.д.
даже вот в таком варианте на 25мгцах хлопотно.
void Timer0_ISR (void) interrupt 1
//чатота периода
{
// if(echch ==1){ //если оба значения изменены- презаряд
TL0 = Tim0_L;
TH0 = Tim0_H;
echch =0;
// }
//дальше задежка 1 мкс для смены состояния ключей
TL1 = 0xf9;
TH1 = 0xFF;
// SD=1; //запрет драйвера
Hi=0;
Lo=0;
_Hi_Lo_ = ~_Hi_Lo_ ;
if(ERR==0) TR1=1; //запуск таймера 1
// TF0=0; //clear overflov indicator
}

//------------------------------------------------------
void Timer1_ISR (void) interrupt 3
//delay
{
// HiLo =~HiLo; //смена состояния ключей драйвера
if(_Hi_Lo_==0) { Lo=0;
_long_nop_();
Hi=1;
}

else { Hi=0;
_long_nop_();
Lo=1;
}


TR1=0; //запрет самого себя, любимого
}
т.е. на фиксированных значениях жить можно, но плавной динамики ни какой. для чима не годится.
PWMка динамику дает. ЧИМ relf c lj,hjv/
sam_soft писал(а):
частоту с
и
достаточно большой точностью можно поставить

весьма.... весьма... :nono:

Автор:  sam_soft [ 11-04, 17:26 ]
Заголовок сообщения: 

Чета мне кажется что мы про разное говорим.
Я не ловлю никаких прерываний таймера которым тактируеся UC. И не понимаю нафига это нада, для моих целей конечно. :)
Он аппаратно генерит все что нада для тактирования UC, код не учавствует в этом совсем ( пока не учавствует )
// init mode 14
TCCR1A = ( 1 << WGM11 ) | ( 1 << COM1A1 ) | ( 1 << COM1A0 );
TCCR1B = ( 1 << WGM13 ) | ( 1 << WGM12 );

ICR1 = TIMER_COUNTER;
OCR1A = DUTY_MAX;
// result : f = 30 khz, duty = 0.46

// set output PWM bit in DDR
DDRB |= ( 1<< PWM_CLC );
// start counter
TCCR1B |= ( 1<< CS10 );

// start PWM
PWM_DDR |= _BV( PWM );
START_PWM;
Далее , OCR1A имеет двойной буфер. Так что его безопасно можно менять в динамике, главное что он всегда был чуть менее TOP. Тогда заполнение всегда будет менее 50%. И не вижу никаких проблем чтоб менять его в динамике, что мне и требуется для поджига отрывом.
С ICR1 , который в 14 режиме как TOP таймера и задает частоту , чуть сложнее, надо аккуратным быть. Пока ничего не пробовал менять в динамике , но попробую, чуть позднее

И еще, я пытался делать програмную эммуляцию ШИМа. Наверно как у тебя - тоглить некий бит в обработчиках прерываний таймера. В итоге выкинул это все. Выход подергивался и силовой трансик подпевал в такт. А происходило это все скорее всего потому что обработчик прер. вызывается только когда команда полностью завершиться. А она может быть 1 или 2 такта. И это непредсказуемо.
Может оно и ничего, но мне непонравилось и я выкинул это все..

Автор:  MasterCat [ 11-04, 18:56 ]
Заголовок сообщения: 

sam_soft писал(а):
И еще, я пытался делать програмную эммуляцию ШИМа. Наверно как у тебя

этот пример для 51-го накидал на лету. дабы продемонстрировать следующее.
при эмуляции проц не успевает .
дальше. на частоте 16мгц без предделителя если делаем PWM то 8ми разрядный даст около 30 кгц
10ти разрядный что-то около 8ми кгц.
если говорим о ЧИМ, то шаг частоты в лучшем случае будет больше сотни-другой герц. многовато.
16ти разрядный PWM на 25мгц получается максимум на 24кгца.
-
вывод. (субъективный)
на фиксированной частоте, с грубым шагом для синхронизации кого-либо годится, даже очень. синхронизую 701е.
для самостоятельного управления предпочтительно 64мгца 32разряда и главное - вход смены состояния выхода помимо всего. тупая логика.
в PWMке это есть. ну и шаг в 25 гц.
если смотреть si8250, то там вообще туши свет. время реакции что-то около 10нан. нижний предел частоты 100кгц, правда.

Автор:  MasterCat [ 11-04, 18:58 ]
Заголовок сообщения: 

MasterCat писал(а):
трансик подпевал в такт. А происходило это все скорее всего потому что обработчик прер. вызывается только когда команда полностью завершиться

приведенный кусочек будет как вкопаный.
у silabs есть приоритеты прерываний

Автор:  sam_soft [ 11-04, 19:11 ]
Заголовок сообщения: 

MasterCat
А причем тут приоритеты прерываний ? Прерывание таймера может вылезти откуда угодно где длинны команд непредсказумы. В этом и есть причина дрожания. Фатально это или нет судить не берусь, но дрожать будет.

А чим мне будет нужет только для того чтоб на ХХ и при малой нагрузке держать частоту повыше а при нагрузке скинуть ее. Так возможно режим трансика заоптимизится и заодно и габариты дросселя. Думаю что мне вполне хватит движения от 30 до 40 кГц и обратно.
Но это все чисто теоретически. Может нишыша и не выйдет с этого дергания частоты.

Автор:  MasterCat [ 11-04, 20:01 ]
Заголовок сообщения: 

sam_soft писал(а):
Может нишыша и не выйдет с этого дергания частоты

а может не бороться, а последовать за мной.
я тоже не так давно косо смотрел на PWMку. bezobraznik утверждал, что сурьезный девайс. и прада серьезный.
теперь, если хочется остаться а мегой, то думаю можно обйтись так.
без UCшки. компаратор, триггер взводимый компаратором. триггер на входINT.
стартуешь свои 43%, триггером по И рубишь выход на драйвер, а т.к. в паузе время есть, отработаешь int , но после совпадения счетчика.
в итоге получится аналог UC. там же в паузе раешение на следующую частоту и скважность примешь.
зыбко конечно, но я так делал. опасная тропа. бздынь ненароком бывает.

Автор:  MasterCat [ 11-04, 20:02 ]
Заголовок сообщения: 

sam_soft писал(а):
А причем тут приоритеты прерываний ? Прерывание таймера может вылезти откуда угодно где длинны команд непредсказумы.

не не может.
там кросс.

Автор:  sam_soft [ 12-04, 10:41 ]
Заголовок сообщения: 

MasterCat писал(а):
тоже не так давно косо смотрел на PWMку

Да не, косо я не смотрю, чип весьма достойный. По крайней мере первое чтение мануала оставило у меня положительное мнение про него. Вопрос в другом - нада ли он мне для моих задач. Когда высосу все что можно из меги, и когда пойму что далее никак, вот тогда переползу на него. Похоже что из ширпотреба он в тройку сильнейших входит ( для сварочных задач имеется ввиду).
MasterCat писал(а):
теперь, если хочется остаться а мегой, то думаю можно обйтись так.
без UCшки. компаратор, триггер взводимый компаратором. триггер на входINT.
стартуешь свои 43%, триггером по И рубишь выход на драйвер, а т.к. в паузе время есть, отработаешь int , но после совпадения счетчика.

Делал я похожее. Ну во первых, програмная реализация поцикловки тока по INT или еще как, приводила к большому току КЗ. Потом сделал внешнее, чисто аппратное ограничение тока - компаратор и RS триггер. Ток КЗ нормализовался и вся эта байда варила и ниче не взрывалось.
Но, чисто субективно , сварочник на обычной UC лучше варил, мягче как то, стабильнее. В общем лучше. После этих экспериментов я решил не связаваться с самотужными поцикловками. К тому же если посчитать по детальками, то для такого варианта нада Мега+ дип8 + дип14 + повторитель на раскачку. А для варианта с UC , только Мега и UC. Детелек меньше, а варит лучше :). Вот потому на сим варианте и остановался пока. Ну а когда есть возможность тактировать UC, менять частоту и заполнение програмно, то вообще не вижу смысла его выкидывать. Выкидывать ради того чтоб выкинуть ?

MasterCat писал(а):
там кросс.

А это че такое ?

Автор:  MasterCat [ 12-04, 13:54 ]
Заголовок сообщения: 

Эх...
Вот так всегда.. Опять придется в гордом одиночестве большой ложкой ...хлебать. :smoon: а говорил
sam_soft писал(а):
чип весьма достойный

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

ладно, сооружу пару цевицев (один истоник на 12V другой поварить) доложусь.
еду читаю вывеску - сто мат олог? (слово стоматолог?наверное)

Автор:  MasterCat [ 17-04, 21:59 ]
Заголовок сообщения: 

на основе увиденной смодели однотранзисторного.(красивая моделька) решил соорудить источник на посотни ампер.
Изображение
что скажете , соучастники?

Автор:  oleg70 [ 24-07, 13:19 ]
Заголовок сообщения: 

MasterCat
тема заглохла , а жалко.
а я приделал пик 16ф690, работает хорошо.

Автор:  valvol [ 24-07, 14:15 ]
Заголовок сообщения: 

oleg70 писал(а):
тема заглохла , а жалко.

Тема не заглохла, а ждёт своих продолжателей! ;)

Страница 9 из 17 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/